diff --git a/.github/scripts/install_noble_dependencies.sh b/.github/scripts/install_noble_dependencies.sh new file mode 100755 index 00000000000..98e42720dba --- /dev/null +++ b/.github/scripts/install_noble_dependencies.sh @@ -0,0 +1,67 @@ +#!/usr/bin/env bash + +sudo apt update + +sudo apt install -y \ + autoconf \ + automake \ + bash \ + bison \ + binutils \ + binutils-gold \ + build-essential \ + capnproto \ + exuberant-ctags \ + curl \ + doxygen \ + flex \ + fontconfig \ + gdb \ + git \ + gperf \ + libcairo2-dev \ + libcapnp-dev \ + libgtk-3-dev \ + libevent-dev \ + libfontconfig1-dev \ + liblist-moreutils-perl \ + libncurses5-dev \ + libx11-dev \ + libxft-dev \ + libxml2-utils \ + libxml++2.6-dev \ + libreadline-dev \ + tcllib \ + tcl8.6-dev \ + libffi-dev \ + perl \ + pkg-config \ + texinfo \ + time \ + valgrind \ + zip \ + qtbase5-dev \ + uuid-dev \ + default-jdk \ + g++-9 \ + gcc-9 \ + g++-10 \ + gcc-10 \ + g++-11 \ + gcc-11 \ + g++-12 \ + gcc-12 \ + g++-13 \ + gcc-13 \ + clang-14 \ + clang-18 \ + clang-format-14 \ + libtbb-dev + +pip install -r requirements.txt + +git clone https://github.com/capnproto/capnproto-java.git $GITHUB_WORKSPACE/env/capnproto-java +pushd $GITHUB_WORKSPACE/env/capnproto-java +make +sudo make install +popd diff --git a/.github/workflows/containers.yml b/.github/workflows/containers.yml index 405593c692d..4cc24013f19 100644 --- a/.github/workflows/containers.yml +++ b/.github/workflows/containers.yml @@ -1,12 +1,34 @@ name: Containers on: + # We want to run the CI when anything is pushed to master. + # Since master is a protected branch this only happens when a PR is merged. + # This is a double check in case the PR was stale and had some issues. push: + branches: + - master + paths-ignore: # Prevents from running if only docs are updated + - 'doc/**' + - '**/*README*' + - '**.md' + - '**.rst' pull_request: + paths-ignore: # Prevents from running if only docs are updated + - 'doc/**' + - '**/*README*' + - '**.md' + - '**.rst' workflow_dispatch: schedule: - cron: '0 0 * * 0' # weekly +# We want to cancel previous runs for a given PR or branch / ref if another CI +# run is requested. +# See: https://docs.github.com/en/actions/using-jobs/using-concurrency +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + jobs: Image: @@ -16,7 +38,7 @@ jobs: steps: - name: 🧰 Repository Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: submodules: 'true' @@ -24,7 +46,7 @@ jobs: id: generate run: | REPO='${{ github.repository }}' - echo "::set-output name=image::ghcr.io/${REPO,,}/ubuntu/focal/build" + echo "image=ghcr.io/${REPO,,}/ubuntu/focal/build" >> $GITHUB_OUTPUT - name: ⛴️ Build container image run: docker build -t ${{ steps.generate.outputs.image }} -f Dockerfile . diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml index 77c1faabeb3..0b0d3d9eb02 100644 --- a/.github/workflows/labeler.yml +++ b/.github/workflows/labeler.yml @@ -6,7 +6,7 @@ jobs: triage: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: actions/labeler@master with: repo-token: "${{ secrets.GITHUB_TOKEN }}" diff --git a/.github/workflows/noble.yml b/.github/workflows/noble.yml new file mode 100644 index 00000000000..5f13b764da1 --- /dev/null +++ b/.github/workflows/noble.yml @@ -0,0 +1,51 @@ +# This workflow is designed to test that VTR can run on Ubuntu 24.04. Since +# the Ubuntu 24.04 GitHub runners are still in Beta, this is left as a workflow +# that must be dispatched manually. In the future this workflow should be +# removed and made the default (integrated into test.yml). +name: Noble + +on: + workflow_dispatch: + schedule: + - cron: '0 0 * * *' # daily + +# We want to cancel previous runs for a given PR or branch / ref if another CI +# run is requested. +# See: https://docs.github.com/en/actions/using-jobs/using-concurrency +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +env: + MATRIX_EVAL: "CC=gcc-13 && CXX=g++-13" + +jobs: + FutureCompatibility: + runs-on: ubuntu-24.04 + strategy: + fail-fast: false + matrix: + include: + - { name: 'GCC 13 (Ubuntu Noble - 24.04)', eval: 'CC=gcc-13 && CXX=g++-13', } + - { name: 'Clang 18 (Ubuntu Noble - 24.04)', eval: 'CC=clang-18 && CXX=clang++-18', } + name: 'B: ${{ matrix.name }}' + steps: + - uses: actions/setup-python@v5 + with: + python-version: 3.12.3 + - uses: actions/checkout@v4 + with: + submodules: 'true' + - run: ./.github/scripts/install_noble_dependencies.sh + + - uses: hendrikmuhs/ccache-action@v1.2 + + - name: Test + env: + CMAKE_PARAMS: "-DVTR_ASSERT_LEVEL=3 -DVTR_IPO_BUILD=off" + MATRIX_EVAL: ${{ matrix.eval }} + BUILD_TYPE: release + run: | + export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" + ./.github/scripts/build.sh + diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index cc5fffb4b55..748d19b80c9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,12 +1,34 @@ name: Test on: + # We want to run the CI when anything is pushed to master. + # Since master is a protected branch this only happens when a PR is merged. + # This is a double check in case the PR was stale and had some issues. push: + branches: + - master + paths-ignore: # Prevents from running if only docs are updated + - 'doc/**' + - '**/*README*' + - '**.md' + - '**.rst' pull_request: + paths-ignore: # Prevents from running if only docs are updated + - 'doc/**' + - '**/*README*' + - '**.md' + - '**.rst' workflow_dispatch: schedule: - cron: '0 0 * * *' # daily +# We want to cancel previous runs for a given PR or branch / ref if another CI +# run is requested. +# See: https://docs.github.com/en/actions/using-jobs/using-concurrency +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + env: # default compiler for all non-compatibility tests MATRIX_EVAL: "CC=gcc-11 && CXX=g++-11" @@ -51,6 +73,8 @@ jobs: steps: + # TODO: This runnner is running on a self-hosted CPU. In order to upgrade + # to v4, need to upgrade the machine to support node20. - uses: actions/checkout@v3 with: submodules: 'true' @@ -71,9 +95,16 @@ jobs: VTR_CMAKE_PARAMS: ${{ matrix.cmake }} NUM_CORES: ${{ matrix.cores }} - - uses: actions/upload-artifact@v3 - if: ${{ always() }} + - name: Upload test results + # If the job was not cancelled, we want to save the result (this includes + # when the job fails). See warning here: + # https://docs.github.com/en/actions/learn-github-actions/expressions#always + if: ${{ !cancelled() }} + # TODO: This runnner is running on a self-hosted CPU. In order to upgrade + # to v4, need to upgrade the machine to support node20. + uses: actions/upload-artifact@v3 with: + name: ${{matrix.test}}_test_results path: | **/results*.gz **/plot_*.svg @@ -92,10 +123,10 @@ jobs: - { build_type: 'debug', verbose: '1' } steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'true' - run: ./.github/scripts/install_dependencies.sh @@ -122,10 +153,10 @@ jobs: name: 'F: ${{ matrix.name }}' steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: ./.github/scripts/install_dependencies.sh - name: Test @@ -137,10 +168,10 @@ jobs: runs-on: ubuntu-22.04 steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'true' - run: ./.github/scripts/install_dependencies.sh @@ -156,10 +187,10 @@ jobs: runs-on: ubuntu-22.04 steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'true' - run: ./.github/scripts/install_dependencies.sh @@ -184,57 +215,62 @@ jobs: include: [ { name: 'Basic', - params: '-DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on', + params: '-DCMAKE_COMPILE_WARNING_AS_ERROR=on -DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on', suite: 'vtr_reg_basic' }, { name: 'Basic_odin', - params: '-DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DWITH_PARMYS=OFF -DWITH_ODIN=on', + params: '-DCMAKE_COMPILE_WARNING_AS_ERROR=on -DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DWITH_PARMYS=OFF -DWITH_ODIN=on', suite: 'vtr_reg_basic_odin' }, { name: 'Basic with NO_GRAPHICS', - params: '-DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DVPR_USE_EZGL=off', + params: '-DCMAKE_COMPILE_WARNING_AS_ERROR=on -DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DVPR_USE_EZGL=off', + suite: 'vtr_reg_basic' + }, + { + name: 'Basic with NO_SERVER', + params: '-DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DVPR_USE_EZGL=on -DVPR_USE_SERVER=off', suite: 'vtr_reg_basic' }, { name: 'Basic with CAPNPROTO disabled', - params: '-DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DVTR_ENABLE_CAPNPROTO=off', + params: '-DCMAKE_COMPILE_WARNING_AS_ERROR=on -DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DVTR_ENABLE_CAPNPROTO=off', suite: 'vtr_reg_basic' }, { name: 'Basic with VTR_ENABLE_DEBUG_LOGGING', - params: '-DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DVTR_ENABLE_DEBUG_LOGGING=on', + params: '-DCMAKE_COMPILE_WARNING_AS_ERROR=on -DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DVTR_ENABLE_DEBUG_LOGGING=on', suite: 'vtr_reg_basic' }, { name: 'Basic_odin with VTR_ENABLE_DEBUG_LOGGING', - params: '-DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DVTR_ENABLE_DEBUG_LOGGING=on -DWITH_PARMYS=OFF -DWITH_ODIN=on', + params: '-DCMAKE_COMPILE_WARNING_AS_ERROR=on -DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DVTR_ENABLE_DEBUG_LOGGING=on -DWITH_PARMYS=OFF -DWITH_ODIN=on', suite: 'vtr_reg_basic_odin' }, { name: 'Strong', - params: '-DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on', + params: '-DCMAKE_COMPILE_WARNING_AS_ERROR=on -DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on', suite: 'vtr_reg_strong' }, { name: 'Strong_odin', - params: '-DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DWITH_PARMYS=OFF -DWITH_ODIN=on', + params: '-DCMAKE_COMPILE_WARNING_AS_ERROR=on -DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DWITH_PARMYS=OFF -DWITH_ODIN=on', suite: 'vtr_reg_strong_odin' }, { name: 'Valgrind Memory', - params: '-DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DWITH_ODIN=on', + params: '-DCMAKE_COMPILE_WARNING_AS_ERROR=on -DVTR_ASSERT_LEVEL=3 -DWITH_BLIFEXPLORER=on -DWITH_ODIN=on', suite: 'vtr_reg_valgrind_small' } ] name: 'R: ${{ matrix.name }}' steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'true' - run: ./.github/scripts/install_dependencies.sh @@ -250,18 +286,20 @@ jobs: ./run_reg_test.py ${{ matrix.suite }} -show_failures -j2 - name: Upload regression run files - uses: actions/upload-artifact@v3 + if: ${{ !cancelled() }} + uses: actions/upload-artifact@v4 with: name: ${{matrix.name}}_run_files path: | vtr_flow/**/*.out - vtr_flow/**/*.blif + # vtr_flow/**/*.blif # Removed since it was taking too much space and was hardly used. vtr_flow/**/*.p vtr_flow/**/*.net vtr_flow/**/*.r - name: Upload regression results - uses: actions/upload-artifact@v3 + if: ${{ !cancelled() }} + uses: actions/upload-artifact@v4 with: name: ${{matrix.name}}_results path: | @@ -286,10 +324,10 @@ jobs: name: 'S: ${{ matrix.name }}' steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'true' @@ -320,10 +358,10 @@ jobs: runs-on: ubuntu-22.04 steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'true' - run: ./.github/scripts/install_dependencies.sh @@ -345,10 +383,10 @@ jobs: runs-on: ubuntu-22.04 steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'true' - run: ./.github/scripts/install_dependencies.sh @@ -371,10 +409,10 @@ jobs: runs-on: ubuntu-22.04 steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'true' - run: ./.github/scripts/install_dependencies.sh @@ -396,9 +434,9 @@ jobs: matrix: include: - { name: 'GCC 9 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-9 && CXX=g++-9', } - - { name: 'GCC 10 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-10 && CXX=g++-10', } - - { name: 'GCC 11 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-11 && CXX=g++-11', } - - { name: 'GCC 12 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-12 && CXX=g++-12', } + - { name: 'GCC 10 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-10 && CXX=g++-10', } + - { name: 'GCC 11 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-11 && CXX=g++-11', } + - { name: 'GCC 12 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-12 && CXX=g++-12', } - { name: 'Clang 11 (Ubuntu Jammy - 22.04)', eval: 'CC=clang-11 && CXX=clang++-11', } - { name: 'Clang 12 (Ubuntu Jammy - 22.04)', eval: 'CC=clang-12 && CXX=clang++-12', } - { name: 'Clang 13 (Ubuntu Jammy - 22.04)', eval: 'CC=clang-13 && CXX=clang++-13', } @@ -406,10 +444,10 @@ jobs: name: 'B: ${{ matrix.name }}' steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'true' - run: ./.github/scripts/install_dependencies.sh @@ -425,7 +463,6 @@ jobs: export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" ./.github/scripts/build.sh - Coverity: name: 'Coverity Scan' needs: @@ -442,10 +479,10 @@ jobs: runs-on: ubuntu-22.04 steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: 3.10.10 - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'true' - run: ./.github/scripts/install_dependencies.sh diff --git a/.gitmodules b/.gitmodules index 08b907e160b..d8738f84253 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "libs/EXTERNAL/libcatch2"] path = libs/EXTERNAL/libcatch2 url = https://github.com/catchorg/Catch2.git +[submodule "libs/EXTERNAL/sockpp"] + path = libs/EXTERNAL/sockpp + url = https://github.com/w0lek/sockpp.git # fork where in branch v1.0.0_no_complication_warnings there are compilation warnings fixes for upstream tag v1.0.0 of sockpp diff --git a/CMakeLists.txt b/CMakeLists.txt index 68b75573347..1aca81ff30a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -40,10 +40,14 @@ set(VPR_USE_EZGL "auto" CACHE STRING "Specify whether vpr uses the graphics libr set_property(CACHE VPR_USE_EZGL PROPERTY STRINGS auto off on) option(VTR_ENABLE_CAPNPROTO "Enable capnproto binary serialization support in VPR." ON) +#Allow the user to decide whether to compile the server module +option(VPR_USE_SERVER "Specify whether vpr enables the server mode" ON) + #Allow the user to enable/disable VPR analytic placement #VPR option --enable_analytic_placer is also required for Analytic Placement option(VPR_ANALYTIC_PLACE "Enable analytic placement in VPR." ON) option(VPR_ENABLE_INTERCHANGE "Enable FPGA interchange." ON) +option(VPR_ENABLE_NOC_SAT_ROUTING "Enable NoC SAT routing." OFF) option(WITH_BLIFEXPLORER "Enable build with blifexplorer" OFF) @@ -218,12 +222,12 @@ endforeach() set(FLEX_BISON_WARN_SUPPRESS_FLAGS "") set(FLEX_BISON_WARN_SUPPRESS_FLAGS_TO_CHECK "-Wno-redundant-decls" #Flex/bison generate code with redundant declarations - "-Wno-switch-default" #Flex/bison generate switch statments w/o default cases + "-Wno-switch-default" #Flex/bison generate switch statements w/o default cases "-Wno-unused-parameter" #Flex produces functions with unused params in re-entrant mode "-Wno-missing-declarations" #Flex misses some declarations in re-entrant mode "-Wimplicit-fallthrough=0" #Bison produces some cases with explicit "-Wno-sign-compare" #Flex generates code which performs some signed/unsigned comparison - "-Wno-null-dereference" #Bison produces some cases with potenetial null derefs + "-Wno-null-dereference" #Bison produces some cases with potential null derefs ) foreach(flag ${FLEX_BISON_WARN_SUPPRESS_FLAGS_TO_CHECK}) CHECK_CXX_COMPILER_FLAG(${flag} CXX_COMPILER_SUPPORTS_${flag}) diff --git a/Dockerfile b/Dockerfile index 95304df8971..71f5129301a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:20.04 +FROM ubuntu:22.04 ARG DEBIAN_FRONTEND=noninteractive # set out workspace ENV WORKSPACE=/workspace @@ -19,6 +19,7 @@ RUN apt-get update -qq \ libtbb-dev \ python3-pip \ git \ + time \ # Install python packages && pip install -r requirements.txt \ # Cleanup diff --git a/README.developers.md b/README.developers.md index 411c8653d90..71cd222f81d 100644 --- a/README.developers.md +++ b/README.developers.md @@ -344,11 +344,70 @@ and should be used when making changes to Odin. ## Unit Tests VTR also has a limited set of unit tests, which can be run with: + ```shell #From the VTR root directory $ make && make test ``` +This will run `test_vtrutil`, `test_vpr`, `test_fasm`, and `test_archfpga`. Each test suite is added in their CMake +files. + +### Running Individual Testers + +To run one of the four testers listed above on its own, navigate to the appropriate folder: + +| Test | Directory | +|-----------------|------------------------------------| +| `test_archfpga` | `$VTR_ROOT/build/libs/libarchfpga` | +| `test_vtrutil` | `$VTR_ROOT/build/libs/libvtrutil` | +| `test_fasm` | `$VTR_ROOT/build/utils/fasm` | +| `test_vpr` | `$VTR_ROOT/build/vpr` | + +To see tester options, run it with `-h`: + +```shell +# Using test_vpr as an example +# From $VTR_ROOT/build/vpr +$ ./test_vpr -h +``` + +To see the names of each unit test, use `--list-tests`: + +```shell +# From $VTR_ROOT/build/vpr +$ ./test_vpr --list-tests +``` + +The output should look similar to this: + +```shell +All available test cases: + test_route_flow + [vpr_noc_bfs_routing] + test_find_block_with_matching_name + [vpr_clustered_netlist] + connection_router + [vpr] + binary_heap + [vpr] + edge_groups_create_sets + [vpr] + read_interchange_models + [vpr] + +... # many more test cases + +52 test cases +``` + +To run specific unit tests, pass them as arguments. For example: + +```shell +# From $VTR_ROOT/build/vpr +$ ./test_vpr test_route_flow connection_router +``` + # Evaluating Quality of Result (QoR) Changes VTR uses highly tuned and optimized algorithms and data structures. Changes which effect these can have significant impacts on the quality of VTR's design implementations (timing, area etc.) and VTR's run-time/memory usage. @@ -972,9 +1031,73 @@ This describes adding a test to `vtr_reg_strong`, but the process is similar for $ git commit ``` +## Creating Unit Tests + +You can find the source code for the unit tests in their respective directories. New unit tests must also be created in +these directories. + +| Test | Directory | +|-----------------|-----------------------------------| +| `test_archfpga` | `$VTR_ROOT/libs/libarchfpga/test` | +| `test_vtrutil` | `$VTR_ROOT/libs/libvtrutil/test` | +| `test_fasm` | `$VTR_ROOT/utils/fasm/test` | +| `test_vpr` | `$VTR_ROOT/vpr/test` | + +VTR uses [Catch2](https://github.com/catchorg/Catch2) for its unit testing framework. For a full tutorial of how to use +the framework, see `$VTR_ROOT/libs/EXTERNAL/libcatch2/docs/Readme.md`. + +### Example: Creating and Running a VPR Test Case + +Navigate to `$VTR_ROOT/vpr/test`. + +```shell +$ cd $VTR_ROOT/vpr/test +``` + +From here, let's create and open a new file `test_new_vpr.cpp` (begin the file name with `test_`). Be sure to `#include "catch2/catch_test_macros.hpp"`. +Introduce a test case using the `TEST_CASE` macro, and include a name and a tag. For boolean assertions, use `REQUIRE`. + +```shell +#include "catch2/catch_test_macros.hpp" + +// To choose a tag (written with square brackets "[tag]"), see examples from when you run ./test_vpr +// --list-tests in the tester exectuable directory, as shown earlier. A good default tag name is the name +// of the tester: in this case, [vpr]. +TEST_CASE("a_vpr_test_name", "[vpr]") { + int x = 0; + REQUIRE(x == 0); +} +``` + +To run our test case, we must navigate back to `$VTR_ROOT/build/vpr` (from the table +under [Running Individual Testers](#running-individual-testers)). Since we created a test, we need to rebuild the +tester. Then, we can run our test. + +```shell +$ cd $VTR_ROOT/build/vpr +$ make // rebuild tester +$ ./test_vpr a_vpr_test_name // run new unit test +``` + +Output: + +```shell +Filters: "a_vpr_test_name" +Randomness seeded to: 2089861684 +=============================================================================== +All tests passed (1 assertion in 1 test case) +``` + + # Debugging Aids VTR has support for several additional tools/features to aid debugging. +## Basic +To build vpr with make in debug mode, simply add `BUILD_TYPE=debug` at the end of your make command. +```shell +$ make vpr BUILD_TYPE=debug +``` + ## Sanitizers VTR can be compiled using *sanitizers* which will detect invalid memory accesses, memory leaks and undefined behaviour (supported by both GCC and LLVM): ```shell @@ -1209,13 +1332,51 @@ Code included in VTR by subtrees should *not be modified within the VTR source t Instead changes should be made in the relevant up-stream repository, and then synced into the VTR tree. ## Updating an existing Subtree + +The following are instructions on how to pull in external changes from an +existing subtree. Which instructions to follow depend on if you are changing +the external ref or not. + +### External Ref Does Not Change + +These instructions are for if the subtree is tracking a ref of a repo which has +changes we want to pull in. For example, if the subtree is tracking main/master. + 1. From the VTR root run: `./dev/external_subtrees.py $SUBTREE_NAME`, where `$SUBTREE_NAME` is the name of an existing subtree. For example to update the `libtatum` subtree: ```shell - ./dev/external_subtrees.py --update libtatum + ./dev/external_subtrees.py --update libtatum -m "commit message describing why component is being updated" ``` +### External Ref Changes + +These instructions are for if you want to change the ref that a subtree is +tracking. For example, if you want to change the version of a subtree (which +exists on a different branch). + +1. Update `./dev/subtree_config.xml` with the new external ref. + +2. Run `git log ` and take note of any local changes to the + subtree. It is bad practice to have local changes to subtrees you cannot + modify; however, some changes must be made to allow the library to work in + VTR. The next step will clear all these changes, and they may be important + and need to be recreated. + +3. Delete the subtree folder (the internal path) entirely and commit it to git. + The issue is that changing the external ref basically creates a new subtree, + so the regular way of updating the subtree does not work. You need to + completely wipe all of the code from the old subtree. NOTE: This will remove + all changes locally made to the subtree. + +4. Run `./dev/external_subtrees.py --update $SUBTREE_NAME`. This will pull in + the most recent version of the subtree, squash the changes, and raise a + commit. + +5. Recreate the local changes from step 2 above, such that the library builds + without issue; preferrably in a concise way such that the library can be + easily updated in the future. + ## Adding a new Subtree To add a new external subtree to VTR do the following: @@ -1255,8 +1416,66 @@ To add a new external subtree to VTR do the following: This will create two commits to the repository. The first will squash all the upstream changes, the second will merge those changes into the current branch. +## Pushing VTR Changes Back to Upstream Subtree + +If there are changes in the VTR repo in a subtree that should be merged back +into the source repo of the subtree, the changes can be pushed back manually. + +The instructions above used a Python script to simplify updating subtrees in +VTR. This is fine for pulling in changes from a remote repo; however, it is not +good for pushing changes back. This is because these changes need to be pushed +somewhere, and it is not a good idea to just push it back to the master branch +directly. Instead, it should be pushed to a temporary branch. Then a PR can be +made to bring the changes into the target repo. + +To push changes VTR made to a subtree do the following: + +1. Create a fork of the target repo. Optionally you can create a branch to be + the target of the push, or you can just use master. + +2. Run: + ```shell + cd $VTR_ROOT + git subtree push --prefix= + ``` + The prefix is the internal path to the subtree, as written in + `dev/subtree_config.xml`. + +3. Create a PR from your forked repo to the main repo, sharing the amazing + changes with the world. + +## Tutorial: Syncing Tatum with VTR + +This tutorial will show you how to synchronize `libtatum` in VTR and +[Tatum](https://github.com/verilog-to-routing/tatum); however, similar steps +can be done to synchronize any subtree in VTR. + +First, we will pull in (update) any changes in Tatum that are not in VTR yet. +On a clean branch (based off master), execute the following: +```shell +cd $VTR_ROOT +./dev/external_subtrees.py --update libtatum -m "Pulling in changes from Tatum." +``` +If the output in the terminal says `Subtree is already at commit `, +then there is nothing to pull in. If it says changes were pulled in, a commit +would have already been made for you. Push these changes to your branch and +raise a PR on VTR to merge these changes in. + +After pulling in all the changes from Tatum, without changing branches, we will +push our VTR changes to Tatum. This is a bit more complicated since, as stated +in the section on pushing to subtrees, the changes cannot just be pushed to +master. + +Create a fork of Tatum and make sure the master branch of that fork is +synchronized with Tatum's master branch. Then execute the following: +```shell +cd $VTR_ROOT +git subtree push --prefix=libs/EXTERNAL/libtatum master +``` +After that command finishes, raise a PR from your forked repo onto the Tatum +repo for the changes to be reviewed and merged in. -## Subtree Rational +## Subtree Rationale VTR uses subtrees to allow easy tracking of upstream dependencies. diff --git a/dev/DOCKER_DEPLOY.md b/dev/DOCKER_DEPLOY.md index b3c80fbe741..14eab8cf018 100644 --- a/dev/DOCKER_DEPLOY.md +++ b/dev/DOCKER_DEPLOY.md @@ -1,52 +1,62 @@ -Overview -======== +# Building VTR on Docker +## Overview Docker creates an isolated container on your system so you know that VTR will run without further configurations nor affecting any other work. Our Docker file sets up this enviroment by installing all necessary Linux packages and applications as well as Perl modules. -Additionally, Cloud9 is installed, which enables the remote management of your container through browser. With Cloud9, VTR can be started easier (and even modified and recompiled) without the need to logging into a terminal. If the Cloud9 endpoint is published outside your LAN, you can also execute VTR remotely or share your screen with other users. +## Setup +1. Install docker (Community Edition is free and sufficient for VTR): https://docs.docker.com/engine/install/ -Setup -===== +2. Clone the VTR project: -Install docker (Community Edition is free and sufficient for VTR): https://docs.docker.com/engine/installation/ + ``` + git clone https://github.com/verilog-to-routing/vtr-verilog-to-routing + ``` -Clone the VTR project: +3. CD to the VTR folder and build the docker image: -`git clone https://github.com/verilog-to-routing/vtr-verilog-to-routing` + ``` + docker build . -t vtrimg + ``` -CD to the VTR folder and build the docker image: +4. Start docker with the new image: -`docker build . -t vtrimg` + ``` + docker run -it -d --name vtr vtrimg + ``` -Start docker with the new image and connect the current volume with the workspace volume of the container: -`sudo docker run -it -d -p :8080 -v :/workspace vtrimg` +## Running +1. Attach to the Docker container. Attaching will open a shell on the `/workspace` directory within the container. +The project root directory from the docker build process is copied and placed in the `/workspace` directory. -Running -======= + ```sh + # from host computer + docker exec -it vtr /bin/bash + ``` -Open a browser (Google Chrome for example) and navigate to your host's url at the port you opened up. For example: -http://192.168.1.30:8080 +1. Verfiy that VTR has been installed correctly: -First, use one of the terminals and compile VTR: -make && make installation/ + ```sh + # in container + ./vtr_flow/scripts/run_vtr_task.py regression_tests/vtr_reg_basic/basic_timing + ``` -Second, ensure that a basic regression test passes: -./run_reg_test.py vtr_reg_basic + The expected output is: -Third, run and/or modify VTR in the usual way. + ``` + k6_N10_mem32K_40nm/single_ff OK + k6_N10_mem32K_40nm/single_ff OK + k6_N10_mem32K_40nm/single_wire OK + k6_N10_mem32K_40nm/single_wire OK + k6_N10_mem32K_40nm/diffeq1 OK + k6_N10_mem32K_40nm/diffeq1 OK + k6_N10_mem32K_40nm/ch_intrinsics OK + k6_N10_mem32K_40nm/ch_intrinsics OK + ``` -Developpement Debugging -======================= -the container already comes with clang as the default compiler and with scan-build the do statistical analysis on the build -set to `debug` in makefile - -run `scan-build make -j4` from the root VTR directory. -to output the html analysis to a specific folder, run `scan-build make -j4 -o /some/folder` - -the output is html and viewable in any browser. +2. Run and/or modify VTR in the usual way. diff --git a/dev/pylint_check.py b/dev/pylint_check.py index 6e0987a7f84..96e78a2393d 100755 --- a/dev/pylint_check.py +++ b/dev/pylint_check.py @@ -60,6 +60,7 @@ repo_path / "doc/_exts/rrgraphdomain/__init__.py", repo_path / "doc/_exts/sdcdomain/__init__.py", repo_path / "doc/_exts/archdomain/__init__.py", + repo_path / "doc/_exts/constraintsdomain/__init__.py", repo_path / "vpr/scripts/compare_timing_reports.py", repo_path / "vpr/scripts/profile/util.py", repo_path / "vpr/scripts/profile/parse_and_plot_detailed.py", diff --git a/dev/subtree_config.xml b/dev/subtree_config.xml index 3d230120ed7..d2e97bcbd9e 100644 --- a/dev/subtree_config.xml +++ b/dev/subtree_config.xml @@ -33,7 +33,7 @@ name="capnproto" internal_path="libs/EXTERNAL/capnproto" external_url="https://github.com/capnproto/capnproto.git" - default_external_ref="v0.9.1"/> + default_external_ref="v1.0.2"/> `` tag consists of a group of ```` tags. The ```` tag and its contents are described below. -.. arch:tag:: content +.. arch:tag:: content :opt_param axis: @@ -1975,6 +1975,10 @@ The ```` tag and its contents are described below. .. note:: ``longline`` is only supported on with ``bidir`` routing + :opt_param res_type: + Specifies whether the segment belongs to the general or a clock routing network. If this tag is not specified, the resource type for + the segment is considered to be GENERAL (i.e. regular routing). + :req_param freq: The supply of routing tracks composed of this type of segment. VPR automatically determines the percentage of tracks for each segment type by taking the frequency for the type specified and dividing with the sum of all frequencies. @@ -2026,7 +2030,7 @@ The ```` tag and its contents are described below. .. arch:tag:: - :req_param name: Name of the mux switch type used to drive this type of segment. + :req_param name: Name of the mux switch type used to drive this type of segment by default, from both block outputs and other wires. This information is used during rr-graph construction, and a custom switch block can override this switch type for specific connections if desired. .. note:: For UNIDIRECTIONAL only. @@ -2034,7 +2038,7 @@ The ```` tag and its contents are described below. .. arch:tag:: - :req_param name: Name of the switch type used by other wires to drive this type of segment. + :req_param name: Name of the switch type used by other wires to drive this type of segment by default. This information is used during rr-graph construction, and a custom switch block can override this switch type for specific connections if desired. .. note:: For BIDIRECTIONAL only. @@ -2092,6 +2096,7 @@ Specifing a Clock Architecture The element ```` contains three sub-elements that collectively describe the clock architecture: the wiring parameters ````, the clock distribution ````, and the clock connectivity ````. + .. note:: The clock network architecture defined in this structure is assigned the fixed default name ``"clock_network"``. When the user wants to specify a net to be routed through the defined clock architecture using a :ref:`global routing constraints file `, the network name attribute in the constraint tag must be set to ``"clock_network"``. .. _clock_arch_example: diff --git a/doc/src/conf.py b/doc/src/conf.py index 99458f6e3f4..fe2fc79f5b1 100644 --- a/doc/src/conf.py +++ b/doc/src/conf.py @@ -45,6 +45,7 @@ "sphinx_markdown_tables", "sdcdomain", "archdomain", + "constraintsdomain", "rrgraphdomain", "myst_parser", "sphinx.ext.autodoc", diff --git a/doc/src/vpr/command_line_usage.rst b/doc/src/vpr/command_line_usage.rst index 7a9a3306487..fcd1d342e17 100644 --- a/doc/src/vpr/command_line_usage.rst +++ b/doc/src/vpr/command_line_usage.rst @@ -360,11 +360,11 @@ Use the options below to override this default naming behaviour. .. option:: --read_vpr_constraints ::...: - Reads the :ref:`floorplanning constraints ` that packing and placement must respect from the specified XML file; and/or reads the :ref:`global route constraints ` that router must respect from the specified XML file. Multiple files are allowed and should be seperated with a colomn char. + Reads the :ref:`VPR constraints ` that the flow must respect from the specified XML file. .. option:: --write_vpr_constraints - Writes out new :ref:`floorplanning constraints ` based on current placement to the specified XML file; and/or writes out new :ref:`global route constraints ` based on current global routecounstraints to the specified XML file. Note that a single combined file is written to even there are multiple input constraint files read in. + Writes out new :ref:`floorplanning constraints ` based on the current placement to the specified XML file. .. option:: --read_router_lookahead @@ -1163,6 +1163,14 @@ VPR uses a negotiated congestion algorithm (based on Pathfinder) to perform rout **Default:** ``1.3`` +.. option:: --max_pres_fac + + Sets the maximum present overuse penalty factor that can ever result during routing. Should always be less than 1e25 or so to prevent overflow. + Smaller values may help prevent circuitous routing in difficult routing problems, but may increase + the number of routing iterations needed and hence runtime. + + **Default:** ``1000.0`` + .. option:: --acc_fac Specifies the accumulated overuse factor (historical congestion cost factor). @@ -1816,6 +1824,27 @@ The following options are used to enable power estimation in VPR. Instructions on generating this file are provided in :ref:`power_estimation`. +Server Mode Options +^^^^^^^^^^^^^^^^^^^^^^^^ + +If VPR is in server mode, it listens on a socket for commands from a client. Currently, this is used to enable interactive timing analysis and visualization of timing paths in the VPR UI under the control of a separate client. + +The following options are used to enable server mode in VPR. + +.. seealso:: :ref:`server_mode` for more details. + +.. option:: --server + + Run in server mode. Accept single client application connection and respond to client requests + + **Default:** ``off`` + +.. option:: --port PORT + + Server port number. + + **Default:** ``60555`` + Command-line Auto Completion ---------------------------- diff --git a/doc/src/vpr/global_routing_constraints.rst b/doc/src/vpr/global_routing_constraints.rst new file mode 100644 index 00000000000..2024524b85d --- /dev/null +++ b/doc/src/vpr/global_routing_constraints.rst @@ -0,0 +1,108 @@ +Global Routing Constraints +========================== +.. _global_routing_constraints: + +VPR allows users to designate specific nets in the input netlist as global and define the routing model for the global nets by utilizing a VPR constraints XML file. These routing constraints for global nets are specified inside the VPR constraints file in XML format, as described in the following section. + +A Global Routing Constraints File Example +------------------------------------------ + +.. code-block:: xml + :caption: An example of a global routing constraints file in XML format. + :linenos: + + + + + + + + +Global Routing Constraints File Format +--------------------------------------- +.. _global_routing_constraints_file_format: + +.. vpr_constraints:tag:: content + + Content inside this tag contains a group of ```` tags that specify the global nets and their assigned routing methods. + +.. vpr_constraints:tag:: + + :req_param name: The name of the net to be assigned as global. Regular expressions are also accepted. + :req_param route_model: The route model for the specified net. + + * ``ideal``: The net is not routed. There would be no delay for the global net. + + * ``route``: The net is routed similarly to other nets using generic routing resources. + + * ``dedicated_network``: The net will be routed through a dedicated clock network. + + :req_param network_name: The name of the clock network through which the net is routed. This parameter is required when ``route_model="dedicated_network"``. + + +Dedicated Clock Networks +-------------------------- + +Users can define a clock architecture in two ways. First, through the architecture description outlined in section :ref:`Clocks `. By using the ```` tag, users can establish a single clock architecture with the fixed default name "clock_network". When routing a net through the dedicated network described with this tag, the network name must be set to ``"clock_network"``. + +Alternatively, users can define a custom clock network architecture by inputting a custom resource routing graph. In this approach, users can specify various clock routing networks, such as a global clock network and multiple regional clock networks. There are three main considerations for defining a clock network through a custom RR graph definition, as described in the following sections. + +Virtual Sinks Definition for Clock Networks +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +For VPR to route global nets within defined clock networks, there needs to be a virtual sink node defined in the RR graph per each clock network. This virtual sink, which is of the type ``"SINK"``, must have incoming edges from all drive points of the clock network. The two-stage router used for global net routing will initially route to the virtual sink (which serves as the entry point of the clock network) in the first stage and then from the entry point to the actual sink of the net in the second stage. + +To indicate that a node represents a clock network virtual sink, users can utilize the ``"clk_res_type"`` attribute on a node setting it to ``"VIRTUAL_SINK"``. + +Distinguishing Between Clock Networks +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Given the support for multiple clock networks, VPR needs a way to distinguish between different virtual sinks belonging to various clock networks. This is achieved through the optional ``"name"`` attribute for the rr_node, accepting a string used as the clock network name. Therefore, when the ``"clk_res_type"`` is set to ``"VIRTUAL_SINK"``, the attribute ``"name"`` becomes a requried parameter to enable VPR to determine which clock network the virtual sink belongs to. + +When specifying the network_name in a global routing constraints file for routing a global net through a desired clock network, as described in the :ref:`above ` section, the name defined as an attribute in the virtual sink of the clock network should be used to reference that clock network. + +Segment Definition for Clock Networks +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +The node types ``"CHANX"`` and ``"CHANY"`` can construct the clock routing architecture, similar to a generic routing network. However, to identify nodes that are part of a clock network, one can define unique segments for clock networks. To indicate that a segment defined is a clock network resource, users can use the optional attribute ``res_type="GCLK"``. Therefore, nodes with a segment ID of this defined segment are considered to be part of a clock network. + +While VPR currently does not leverage this distinction of clock network resources, it is recommended to use the ``res_type="GCLK"`` attribute, as this preparation ensures compatibility for future support. + + +Example of RR Graph Definition for Clock Networks +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Below are snapshots of a sample RR graph that illustrate how to define a clock network. This example demonstrates the definition of a virtual sink node, a clock network segment, and a CHANY node that is part of the clock network. + +For the node with ``id="12746"``, the ``res_type="VIRTUAL_SINK"`` attribute marks it as the virtual sink node of a clock network named ``"global_network"``, as specified by the ``name`` attribute. + +For the segment with ``id="1"``, the ``res_type="GCLK"`` attribute indicates that this segment is a clock network resource. + +The ``"CHANY"`` node with the ``id="12746"`` has ``segment_id="1"``, which means this resource belongs to the clock network. + +.. code-block:: xml + :caption: Example snippets from an RR graph describing part of a clock network. + :linenos: + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/doc/src/vpr/index.rst b/doc/src/vpr/index.rst index 763ac3459be..61d60030bdb 100644 --- a/doc/src/vpr/index.rst +++ b/doc/src/vpr/index.rst @@ -55,7 +55,7 @@ The purpose of VPR is to make the packing, placement, and routing stages of the graphics timing_constraints - placement_constraints + vpr_constraints sdc_commands file_formats diff --git a/doc/src/vpr/placement_constraints.rst b/doc/src/vpr/placement_constraints.rst index f2cb8cfcab1..cbc0642ec48 100644 --- a/doc/src/vpr/placement_constraints.rst +++ b/doc/src/vpr/placement_constraints.rst @@ -1,39 +1,40 @@ -VPR Placement Constraints -========================= -.. _vpr_constraints_file: +Placement Constraints +====================== +.. _placement_constraints: + VPR supports running flows with placement constraints. Placement constraints are set on primitives to lock them down to specified regions on the FPGA chip. For example, a user may use placement constraints to lock down pins to specific locations on the chip. Also, groups of primitives may be locked down to regions on the chip in CAD flows that use floorplanning or modular design, or to hand-place a timing critical piece. The placement constraints should be specified by the user using an XML constraints file format, as described in the section below. When VPR is run with placement constraints, both the packing and placement flows are performed in such a way that the constraints are respected. The packing stage does not pack any primitives together that have conflicting floorplan constraints. The placement stage considers the floorplan constraints when choosing a location for each clustered block during initial placement, and does not move any block outside of its constraint boundaries during place moves. -A Constraints File Example --------------------------- +A Placement Constraints File Example +------------------------------------ .. code-block:: xml :caption: An example of a placement constraints file in XML format. :linenos: - - - - - - - - - - - - - - + + + + + + + + + + + + + + .. _end: -Constraints File Format ------------------------ +Placement Constraints File Format +--------------------------------- VPR has a specific XML format which must be used when creating a placement constraints file. The purpose of this constraints file is to specify @@ -42,9 +43,7 @@ VPR has a specific XML format which must be used when creating a placement const The file is passed as an input to VPR when running with placement constraints. When the file is read in, its information is used during the packing and placement stages of VPR. The hierarchy of the file is set up as follows. -.. note:: Use the VPR option :vpr:option:`--read_vpr_constraints` to specify the VPR placement constraints file that is to be loaded. - -The top level tag is the ```` tag. This tag contains one ```` tag. The ```` tag can be made up of an unbounded number of ```` tags. The ```` tags contains all of the detailed information of the placement constraints, and is described in detail below. +The top level tag is the ```` tag. This tag can contain one ```` tag. The ```` tag can be made up of an unbounded number of ```` tags. The ```` tags contains all of the detailed information of the placement constraints, and is described in detail below. Partitions, Atoms, and Regions ------------------------------ diff --git a/doc/src/vpr/vpr_constraints.rst b/doc/src/vpr/vpr_constraints.rst new file mode 100644 index 00000000000..a56fecf358b --- /dev/null +++ b/doc/src/vpr/vpr_constraints.rst @@ -0,0 +1,32 @@ +VPR Constraints +========================= +.. _vpr_constraints: + +VPR allows users to run the flow with placement constraints that enable primitives to be locked down to a specific region on the chip and global routing constraints that facilitate the routing of global nets through clock networks. + +Users can specify these constraints through a constraints file in XML format, as shown in the format below. + +.. code-block:: xml + :caption: The overall format of a VPR constraints file + :linenos: + + + + + + + + + + +.. note:: Use the VPR option :option:`vpr --read_vpr_constraints` to specify the VPR constraints file that is to be loaded. + +The top-level tag is the ```` tag. This tag can contain ```` and ```` tags. The ```` tag contains information related to placement constraints, while ```` contains information about global routing constraints. The details for each of these constraints are given in the respective sections :ref:`Placement Constraints ` and :ref:`Global Route Constraints `. + +.. toctree:: + :maxdepth: 2 + + placement_constraints + global_routing_constraints + + diff --git a/doc/src/vtr/index.rst b/doc/src/vtr/index.rst index 4978bc440bf..4b02b7fe432 100644 --- a/doc/src/vtr/index.rst +++ b/doc/src/vtr/index.rst @@ -43,6 +43,7 @@ VTR also includes a set of benchmark designs known to work with the design flow. running_vtr benchmarks power_estimation/index.rst + server_mode/index.rst tasks run_vtr_flow run_vtr_task diff --git a/doc/src/vtr/server_mode/comm_telegram_body_structure.odg b/doc/src/vtr/server_mode/comm_telegram_body_structure.odg new file mode 100755 index 00000000000..9f10c8e7b5b Binary files /dev/null and b/doc/src/vtr/server_mode/comm_telegram_body_structure.odg differ diff --git a/doc/src/vtr/server_mode/comm_telegram_body_structure.svg b/doc/src/vtr/server_mode/comm_telegram_body_structure.svg new file mode 100644 index 00000000000..7b2897b1088 --- /dev/null +++ b/doc/src/vtr/server_mode/comm_telegram_body_structure.svg @@ -0,0 +1,293 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + JOB_ID: int + + + + + + + + CMD: int + + + + + + + + OPTIONS: string + + + + + + + + STATUS: bool + + + + + + + + DATA: string + + + + + + + + {option_data_type} + + + + + + + + {option_name} + + + + + + + + {option_value} + + + + + + + + : + + + + + + + + {option_data_type} + + + + + + + + : + + + + + + + + {option_data_type} + + + + + + + + option_element2 + + + + + + + + ; + + + + + + + + option_element1 + + + + + + + + ; + + + + + + + + ... + + + + + + + + option_element_n + + + + + + + + OPTIONS + + + + + + + + n + + + + + + + + OPTION ELEMENT + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/src/vtr/server_mode/comm_telegram_structure.odg b/doc/src/vtr/server_mode/comm_telegram_structure.odg new file mode 100755 index 00000000000..68d2872aa12 Binary files /dev/null and b/doc/src/vtr/server_mode/comm_telegram_structure.odg differ diff --git a/doc/src/vtr/server_mode/comm_telegram_structure.svg b/doc/src/vtr/server_mode/comm_telegram_structure.svg new file mode 100755 index 00000000000..25e7602152d --- /dev/null +++ b/doc/src/vtr/server_mode/comm_telegram_structure.svg @@ -0,0 +1,584 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + I + + + + + + + + P + + + + + + + + A + + + + + + + + \0 + + + + + + + + + + + + + + + ? + + + + + + + + ? + + + + + + + + ? + + + + + + + + ? + + + + + + + + + + + + + + + ? + + + + + + + + ? + + + + + + + + ? + + + + + + + + ? + + + + + + + + + + + + + + + ? + + + + + + + + BODY LENGTH + + + + + + + + BODY CHECKSUM + + + + + + + + COMPRESSOR_ID + + + + + + + + 0 + + + + + + + + 1 + + + + + + + + 2 + + + + + + + + 3 + + + + + + + + 4 + + + + + + + + 5 + + + + + + + + 6 + + + + + + + + 7 + + + + + + + + 8 + + + + + + + + 9 + + + + + + + + 10 + + + + + + + + 11 + + + + + + + + 12 + + + + + + + + TELEGRAM HEADER + + + + + + + + + + + + + + + ? + + + + + + + + ? + + + + + + + + ? + + + + + + + + ? + + + + + + + + ? + + + + + + + + ? + + + + + + + + + + + + + + + + 13 + + + + + + + + 14 + + + + + + + + 15 + + + + + + + + 15+n + + + + + + + + 16+n + + + + + + + + 17+n + + + + + + + + n + + + + + + + + TELEGRAM BODY + + + + + + + + HEADER + + + + + + + + BODY + + + + + + + + TELEGRAM + + + + + + + + SIGNATURE + + + + + + + + + + + + + + + + + + + + + + + + + 4 bytes + + + + + + + + + + + 4 bytes + + + + + + + + + + + 4 bytes + + + + + + + + + + + 1 byte + + + + diff --git a/doc/src/vtr/server_mode/index.rst b/doc/src/vtr/server_mode/index.rst new file mode 100644 index 00000000000..66972681241 --- /dev/null +++ b/doc/src/vtr/server_mode/index.rst @@ -0,0 +1,208 @@ +.. _server_mode: + +Server Mode +================ + +If VPR is in server mode, it listens on a socket for commands from a client. Currently, this is used to enable interactive timing analysis and visualization of timing paths in the VPR UI under the control of a separate client. +VPR provides the ability to run in server mode using the following command-line arguments. + +.. code-block:: none + + --server --port_num 60555 + +Server mode may only accept a single client application connection and respond to two types of requests: **get critical path report** and **highlight selected critical path elements**. + +Communication telegram +------------------------- + +Telegram consists of two parts: a fixed-size **telegram header** and a variable-size **telegram body**. +The telegram header contains helper information required to properly extract the telegram body sequence from the data flow. + +.. _fig_comm_telegram_structure: + +.. figure:: comm_telegram_structure.* + + Communication telegram structure. + +.. note:: The telegram body itself could be compressed with zlib to minimize the amount of data transferred over the socket. + This compression is applied to the response of the 'get critical path report' request. The compressor ID byte in the telegram header signals whether the telegram body is compressed. + When the compressor ID is null, the telegram body is not compressed. If the compressor ID is 'z', it means the body is compressed with zlib. + +.. note:: The checksum field contains the telegram body checksum. This checksum is used to validate the consistency of the telegram body during the dispatching phase. + If checksums are mismatched, the telegram is considered invalid and is skipped in processing. + + +.. _fig_comm_telegram_body_structure: + +.. figure:: comm_telegram_body_structure.* + + Communication telegram body structure. + + **telegram body** is a flat **JSON** structure. + + **CMD** could have following integer values: + + - 0 - command id for **get critical path** + - 1 - command id for **highlight selected path elements** + + JOB_ID is a unique ID for a task. It is used to associate the request with the response by matching the same JOB_ID. Each new client request should increment the JOB_ID value; otherwise, it will not be clear which request the current response belongs to. + + +Get critical path timing report example +--------------------------------------- + + Let's take a look at an example of a request timing report telegram body with the following options: + + - path_num = 1 + - path_type = "setup" + - details_level = "netlist" + - is_flat_routing = false + + .. code-block:: json + :caption: telegram body **REQUEST** example + :linenos: + + { + "JOB_ID": "1", + "CMD": "0", + "OPTIONS": "int:path_num:1;string:path_type:setup;string:details_level:netlist;bool:is_flat_routing:0" + } + + **path_type** could have following string values: + + - "setup" + - "hold" + + **details_level** could have following string values: + + - "netlist" + - "aggregated" + - "detailed" + - "debug" + + Response will look like: + + .. code-block:: json + :caption: telegram body **RESPONSE** example + :linenos: + + { + "JOB_ID": "1", + "CMD": "0", + "OPTIONS": "int:path_num:1;string:path_type:setup;string:details_level:netlist;bool:is_flat_routing:0", + "DATA": " + #Timing report of worst 1 path(s) + # Unit scale: 1e-09 seconds + # Output precision: 3 + + #Path 1 + Startpoint: count[1].Q[0] (dffsre clocked by clk) + Endpoint : count[13].D[0] (dffsre clocked by clk) + Path Type : setup + + Point Incr Path + ------------------------------------------------------------------------------------------ + clock clk (rise edge) 0.000 0.000 + clock source latency 0.000 0.000 + clk.inpad[0] (.input) 0.000 0.000 + count[1].C[0] (dffsre) 0.715 0.715 + count[1].Q[0] (dffsre) [clock-to-output] 0.286 1.001 + count_adder_carry_p_cout[2].p[0] (adder_carry) 0.573 1.574 + count_adder_carry_p_cout[2].cout[0] (adder_carry) 0.068 1.642 + count_adder_carry_p_cout[3].cin[0] (adder_carry) 0.043 1.685 + count_adder_carry_p_cout[3].cout[0] (adder_carry) 0.070 1.755 + count_adder_carry_p_cout[4].cin[0] (adder_carry) 0.053 1.808 + count_adder_carry_p_cout[4].cout[0] (adder_carry) 0.070 1.877 + count_adder_carry_p_cout[5].cin[0] (adder_carry) 0.043 1.921 + count_adder_carry_p_cout[5].cout[0] (adder_carry) 0.070 1.990 + count_adder_carry_p_cout[6].cin[0] (adder_carry) 0.053 2.043 + count_adder_carry_p_cout[6].cout[0] (adder_carry) 0.070 2.113 + count_adder_carry_p_cout[7].cin[0] (adder_carry) 0.043 2.156 + count_adder_carry_p_cout[7].cout[0] (adder_carry) 0.070 2.226 + count_adder_carry_p_cout[8].cin[0] (adder_carry) 0.053 2.279 + count_adder_carry_p_cout[8].cout[0] (adder_carry) 0.070 2.348 + count_adder_carry_p_cout[9].cin[0] (adder_carry) 0.043 2.391 + count_adder_carry_p_cout[9].cout[0] (adder_carry) 0.070 2.461 + count_adder_carry_p_cout[10].cin[0] (adder_carry) 0.053 2.514 + count_adder_carry_p_cout[10].cout[0] (adder_carry) 0.070 2.584 + count_adder_carry_p_cout[11].cin[0] (adder_carry) 0.043 2.627 + count_adder_carry_p_cout[11].cout[0] (adder_carry) 0.070 2.696 + count_adder_carry_p_cout[12].cin[0] (adder_carry) 0.053 2.749 + count_adder_carry_p_cout[12].cout[0] (adder_carry) 0.070 2.819 + count_adder_carry_p_cout[13].cin[0] (adder_carry) 0.043 2.862 + count_adder_carry_p_cout[13].cout[0] (adder_carry) 0.070 2.932 + count_adder_carry_p_cout[14].cin[0] (adder_carry) 0.053 2.985 + count_adder_carry_p_cout[14].sumout[0] (adder_carry) 0.040 3.025 + count_dffsre_Q_D[13].in[0] (.names) 0.564 3.589 + count_dffsre_Q_D[13].out[0] (.names) 0.228 3.818 + count[13].D[0] (dffsre) 0.000 3.818 + data arrival time 3.818 + + clock clk (rise edge) 0.000 0.000 + clock source latency 0.000 0.000 + clk.inpad[0] (.input) 0.000 0.000 + count[13].C[0] (dffsre) 0.715 0.715 + clock uncertainty 0.000 0.715 + cell setup time -0.057 0.659 + data required time 0.659 + ------------------------------------------------------------------------------------------ + data required time 0.659 + data arrival time -3.818 + ------------------------------------------------------------------------------------------ + slack (VIOLATED) -3.159 + + + #End of timing report + #RPT METADATA: + path_index/clock_launch_path_elements_num/arrival_path_elements_num + 0/2/30 + ", + "STATUS": "1" + } + +Draw selected critical path elements example +-------------------------------------------- + + Let's take a look at an example of a request timing report telegram body with the following options: + + - path_elements = path 0 and it's sub-elements 10,11,12,13,14,15,20,21,22,23,24,25 + - high_light_mode = "crit path flylines delays" + - draw_path_contour = 1 + + .. code-block:: json + :caption: telegram body **REQUEST** example + :linenos: + + { + "JOB_ID": "2", + "CMD": "1", + "OPTIONS": "string:path_elements:0#10,11,12,13,14,15,20,21,22,23,24,25;string:high_light_mode:crit path flylines delays;bool:draw_path_contour:1" + } + + **high_light_mode** could have following string values: + + - "crit path flylines" + - "crit path flylines delays" + - "crit path routing" + - "crit path routing delays" + + Response will look like: + + .. code-block:: json + :caption: telegram body **RESPONSE** example + :linenos: + + { + "JOB_ID": "2", + "CMD": "1", + "OPTIONS": "string:path_elements:0#10,11,12,13,14,15,20,21,22,23,24,25;string:high_light_mode:crit path flylines delays;bool:draw_path_contour:1", + "DATA": "", + "STATUS": "1" + } + + .. note:: If status is not 1, the field ***DATA*** contains error string. + + + + + diff --git a/libs/EXTERNAL/CMakeLists.txt b/libs/EXTERNAL/CMakeLists.txt index 0cb127387ab..a60c48958eb 100644 --- a/libs/EXTERNAL/CMakeLists.txt +++ b/libs/EXTERNAL/CMakeLists.txt @@ -11,6 +11,14 @@ add_subdirectory(libtatum) add_subdirectory(libcatch2) #add_subdirectory(parmys) +#VPR_USE_SERVER is initialized in the root CMakeLists +#compile sockpp only if server mode is enabled +if (VPR_USE_SERVER) + set(SOCKPP_BUILD_SHARED OFF CACHE BOOL "Override default value" FORCE) + set(SOCKPP_BUILD_STATIC ON CACHE BOOL "Override default value" FORCE) + add_subdirectory(sockpp) +endif() + #VPR_USE_EZGL is initialized in the root CMakeLists. #compile libezgl only if the user asks for or has its dependencies installed. if (VPR_USE_EZGL STREQUAL "on") @@ -132,3 +140,12 @@ target_include_directories(Catch2 $ ) +# Some sockpp headers generate warnings, so treat them as system headers to suppress warnings +if (VPR_USE_SERVER) + target_include_directories(sockpp-static + SYSTEM + PUBLIC + $ + $ + ) +endif() \ No newline at end of file diff --git a/libs/EXTERNAL/capnproto/.cirrus.yml b/libs/EXTERNAL/capnproto/.cirrus.yml new file mode 100644 index 00000000000..c055e33e0bb --- /dev/null +++ b/libs/EXTERNAL/capnproto/.cirrus.yml @@ -0,0 +1,34 @@ +env: + CIRRUS_CLONE_DEPTH: 1 + +freebsd_task: + matrix: + - name: FreeBSD 13.0 (GCC 10 from packages) + # RunCatchingExceptionsOtherException fails on 13.0 with system Clang + # 11.0 and ports Clang 10/11 as well, so GCC 10 is used instead. + freebsd_instance: + image_family: freebsd-13-0 + preinstall_script: + # Stock clang11 fails some exception unit tests + pkg install -y gcc10 + env: + CC: gcc10 + CXX: g++10 + - name: FreeBSD 12.2 (System Clang 10) + freebsd_instance: + image_family: freebsd-12-2 + - name: FreeBSD 11.4 (System Clang 10) + freebsd_instance: + image_family: freebsd-11-4 + install_script: + pkg install -y automake autoconf libtool + compiler_version_script: + ${CXX:-"c++"} --version + autoreconf_script: + - cd c++ && autoreconf -i + configure_script: + - cd c++ && ./configure + build_script: + - make -C c++ + test_script: + - make -C c++ check diff --git a/libs/EXTERNAL/capnproto/.github/workflows/quick-test.yml b/libs/EXTERNAL/capnproto/.github/workflows/quick-test.yml index c18ef6a607f..b543ac5882c 100644 --- a/libs/EXTERNAL/capnproto/.github/workflows/quick-test.yml +++ b/libs/EXTERNAL/capnproto/.github/workflows/quick-test.yml @@ -10,12 +10,36 @@ on: - 'release-*' jobs: + Linux-musl: + runs-on: ubuntu-20.04 + container: alpine:3.16.3 + steps: + - uses: actions/checkout@v2 + - name: install dependencies + run: apk add autoconf automake bash build-base cmake libtool libucontext-dev linux-headers openssl-dev + - name: super-test + run: ./super-test.sh quick + Linux-old: + runs-on: ubuntu-20.04 + strategy: + fail-fast: false + matrix: + compiler: [g++-7, clang-6.0] + steps: + - uses: actions/checkout@v2 + - name: install dependencies + run: | + export DEBIAN_FRONTEND=noninteractive + sudo apt-get install -y build-essential git zlib1g-dev cmake libssl-dev ${{ matrix.compiler }} + - name: super-test + run: | + ./super-test.sh quick ${{ matrix.compiler }} Linux: runs-on: ubuntu-latest strategy: fail-fast: false matrix: - compiler: [g++-7, g++-10, clang-6.0, clang-10] + compiler: [g++-12, clang-14] steps: - uses: actions/checkout@v2 - name: install dependencies @@ -26,7 +50,7 @@ jobs: run: | ./super-test.sh quick ${{ matrix.compiler }} Linux-lock-tracking: - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: @@ -42,6 +66,24 @@ jobs: run: | # librt is used for timer_create in the unit tests for lock tracking (mutex-test.c++). ./super-test.sh quick ${{ matrix.compiler }} cpp-features "${{matrix.features}}" extra-libs "-lrt" + ManyLinux: + runs-on: ubuntu-20.04 + strategy: + fail-fast: false + matrix: + include: + - cross-compiler: manylinux2014-x64 + - cross-compiler: manylinux2014-x86 + docker-run-args: --platform linux/386 + steps: + - uses: actions/checkout@v2 + - name: install dockcross + run: | + docker run ${{ matrix.docker-run-args }} --rm dockcross/${{ matrix.cross-compiler }} > ./dockcross + chmod +x ./dockcross + - name: super-test + run: | + ./dockcross ./super-test.sh quick g++ MacOS: runs-on: macos-latest strategy: @@ -59,13 +101,13 @@ jobs: strategy: fail-fast: false matrix: - os: ['windows-2016', 'windows-latest'] + os: ['windows-2019', 'windows-latest'] include: - - os: windows-2016 - target: 'Visual Studio 15 2017' + - os: windows-2019 + target: 'Visual Studio 16 2019' arch: -A x64 - os: windows-latest - target: 'Visual Studio 16 2019' + target: 'Visual Studio 17 2022' arch: -A x64 steps: - uses: actions/checkout@v2 @@ -104,7 +146,7 @@ jobs: rmdir /s /q C:\PROGRA~1\POSTGR~1 echo "Building Cap'n Proto with MinGW" - cmake -Hc++ -Bbuild-output -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=debug -DCMAKE_INSTALL_PREFIX=%CD%\capnproto-c++-install -DCMAKE_SH="CMAKE_SH-NOTFOUND" + cmake -Hc++ -Bbuild-output -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=debug -DCMAKE_INSTALL_PREFIX=%CD%\capnproto-c++-install -DCMAKE_SH="CMAKE_SH-NOTFOUND" -DCMAKE_CXX_STANDARD_LIBRARIES="-static-libgcc -static-libstdc++" cmake --build build-output --target install -- -j2 echo "Building Cap'n Proto samples with MinGW" @@ -113,27 +155,49 @@ jobs: cd build-output\src ctest -V -C debug - Cygwin: - runs-on: windows-latest + # Cygwin: + # runs-on: windows-latest + # strategy: + # fail-fast: false + # steps: + # - run: git config --global core.autocrlf false + # - uses: actions/checkout@v2 + # # TODO(someday): If we could cache the Cygwin installation we wouldn't have to spend three + # # minutes installing it for every build. Unfortuntaley, actions/cache@v1 does not preserve + # # DOS file attributes, which corrupts the Cygwin install. In particular, Cygwin marks + # # symlinks with the "DOS SYSTEM" attribute. We could cache just the downloaded packages, + # # but it turns out that only saves a couple seconds; most of the time is spend unpacking. + # - name: Install Cygwin + # run: | + # choco config get cacheLocation + # choco install --no-progress cygwin + # - name: Install Cygwin additional packages + # shell: cmd + # run: | + # C:\tools\cygwin\cygwinsetup.exe -qgnNdO -R C:/tools/cygwin -l C:/tools/cygwin/packages -s http://mirrors.kernel.org/sourceware/cygwin/ -P autoconf,automake,libtool,gcc,gcc-g++,binutils,libssl-devel,make,zlib-devel,pkg-config,cmake,xxd + # - name: Build and test + # shell: cmd + # run: | + # C:\tools\cygwin\bin\bash -lc 'export PATH=/usr/local/bin:/usr/bin:/bin; cd /cygdrive/d/a/capnproto/capnproto; ./super-test.sh quick' + Linux-bazel-clang: + runs-on: ubuntu-20.04 strategy: fail-fast: false + matrix: + clang_version: [16] steps: - - run: git config --global core.autocrlf false - - uses: actions/checkout@v2 - # TODO(someday): If we could cache the Cygwin installation we wouldn't have to spend three - # minutes installing it for every build. Unfortuntaley, actions/cache@v1 does not preserve - # DOS file attributes, which corrupts the Cygwin install. In particular, Cygwin marks - # symlinks with the "DOS SYSTEM" attribute. We could cache just the downloaded packages, - # but it turns out that only saves a couple seconds; most of the time is spend unpacking. - - name: Install Cygwin - run: | - choco config get cacheLocation - choco install --no-progress cygwin - - name: Install Cygwin additional packages - shell: cmd + - uses: actions/checkout@v3 + - uses: bazelbuild/setup-bazelisk@v2 + - name: install dependencies run: | - C:\tools\cygwin\cygwinsetup.exe -qgnNdO -R C:/tools/cygwin -l C:/tools/cygwin/packages -s http://mirrors.kernel.org/sourceware/cygwin/ -P autoconf,automake,libtool,gcc,gcc-g++,binutils,libssl-devel,make,zlib-devel,pkg-config,cmake,xxd - - name: Build and test - shell: cmd + export DEBIAN_FRONTEND=noninteractive + sudo apt-get install -y build-essential git + # todo: replace with apt-get when clang-16 is part of ubuntu lts + - name: install clang + uses: egor-tensin/setup-clang@v1 + with: + version: ${{ matrix.clang_version }} + - name: super-test run: | - C:\tools\cygwin\bin\bash -lc 'export PATH=/usr/local/bin:/usr/bin:/bin; cd /cygdrive/d/a/capnproto/capnproto; ./super-test.sh quick' + cd c++ + bazel test --verbose_failures --test_output=errors //... diff --git a/libs/EXTERNAL/capnproto/.github/workflows/release-test.yml b/libs/EXTERNAL/capnproto/.github/workflows/release-test.yml index cdcedfaf73e..bd30a934222 100644 --- a/libs/EXTERNAL/capnproto/.github/workflows/release-test.yml +++ b/libs/EXTERNAL/capnproto/.github/workflows/release-test.yml @@ -9,12 +9,12 @@ on: jobs: Linux: - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 strategy: fail-fast: false matrix: # We can only run extended tests with the default version of g++, because it has to match - # the verison of g++-multilib for 32-bit cross-compilation, and alternate versions of + # the version of g++-multilib for 32-bit cross-compilation, and alternate versions of # g++-multilib generally aren't available. Clang is more lenient, but we might as well be # consistent. The quick tests should be able to catch issues with older and newer compiler # versions. @@ -42,11 +42,21 @@ jobs: run: | ./super-test.sh MinGW-Wine: - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 strategy: fail-fast: false steps: - uses: actions/checkout@v2 + # See: https://github.com/actions/virtual-environments/issues/4589#issuecomment-1100899313 + # GitHub's Ubuntu image installs all kinds of stuff from non-Ubuntu repositories which cause + # conflicts with Ubuntu packages ultimately preventing installation of wine32. Let's try to + # fix that... + - name: remove unwanted packages and repositories + run: | + sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list + sudo apt-get update -qq + sudo apt-get install -yqq --allow-downgrades libgd3/focal libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal + sudo apt-get purge -yqq libmono* moby* mono* php* libgdiplus libpcre2-posix3 libzip4 - name: install dependencies run: | export DEBIAN_FRONTEND=noninteractive @@ -61,7 +71,7 @@ jobs: run: | ./super-test.sh mingw i686-w64-mingw32 cmake-packaging: - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 strategy: fail-fast: false steps: @@ -83,7 +93,7 @@ jobs: run: | ./super-test.sh cmake-package cmake-static Android: - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 strategy: fail-fast: false steps: diff --git a/libs/EXTERNAL/capnproto/.gitignore b/libs/EXTERNAL/capnproto/.gitignore index 812d709b4df..5714e8c2f7a 100644 --- a/libs/EXTERNAL/capnproto/.gitignore +++ b/libs/EXTERNAL/capnproto/.gitignore @@ -21,6 +21,7 @@ # Ekam build artifacts. /c++/tmp/ /c++/bin/ +/c++/deps/ # setup-ekam.sh /c++/.ekam @@ -71,6 +72,13 @@ /c++/m4/ltversion.m4 /c++/m4/lt~obsolete.m4 /c++/samples/addressbook +/c++/.cache/ # editor artefacts *~ + +# cross-compiling / glibc testing +/dockcross + +# bazel output +bazel-* diff --git a/libs/EXTERNAL/capnproto/CMakeLists.txt b/libs/EXTERNAL/capnproto/CMakeLists.txt index 17f12819f94..e1c7145abf7 100644 --- a/libs/EXTERNAL/capnproto/CMakeLists.txt +++ b/libs/EXTERNAL/capnproto/CMakeLists.txt @@ -1,3 +1,5 @@ -cmake_minimum_required(VERSION 3.4...3.13) # ! This line is edited to get rid of a CMake deprecation error +cmake_minimum_required(VERSION 3.16) project("Cap'n Proto Root" CXX) +include(CTest) + add_subdirectory(c++) diff --git a/libs/EXTERNAL/capnproto/c++/.bazelignore b/libs/EXTERNAL/capnproto/c++/.bazelignore new file mode 100644 index 00000000000..b67bdf49d4c --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/.bazelignore @@ -0,0 +1 @@ +ekam-provider \ No newline at end of file diff --git a/libs/EXTERNAL/capnproto/c++/.bazelrc b/libs/EXTERNAL/capnproto/c++/.bazelrc new file mode 100644 index 00000000000..cab5c8c13cb --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/.bazelrc @@ -0,0 +1,26 @@ +common --enable_platform_specific_config + +build:unix --cxxopt='-std=c++14' --host_cxxopt='-std=c++14' --force_pic --verbose_failures +build:unix --cxxopt='-Wall' --host_cxxopt='-Wall' +build:unix --cxxopt='-Wextra' --host_cxxopt='-Wextra' +build:unix --cxxopt='-Wno-strict-aliasing' --host_cxxopt='-Wno-strict-aliasing' +build:unix --cxxopt='-Wno-sign-compare' --host_cxxopt='-Wno-sign-compare' +build:unix --cxxopt='-Wno-unused-parameter' --host_cxxopt='-Wno-unused-parameter' + +build:linux --config=unix +build:macos --config=unix + +# See https://bazel.build/configure/windows#symlink +startup --windows_enable_symlinks +# We use LLVM's MSVC-compatible compiler driver to compile our code on Windows +# under Bazel. MSVC is natively supported when using CMake builds. +build:windows --compiler=clang-cl + +build:windows --cxxopt='/std:c++14' --host_cxxopt='/std:c++14' --verbose_failures +build:windows --cxxopt='/wo4503' --host_cxxopt='/wo4503' +# The `/std:c++14` argument is unused during boringssl compilation and we don't +# want a warning when compiling each file. +build:windows --cxxopt='-Wno-unused-command-line-argument' --host_cxxopt='-Wno-unused-command-line-argument' + +# build with ssl, zlib and bazel by default +build --//src/kj:openssl=True --//src/kj:zlib=True --//src/kj:brotli=True diff --git a/libs/EXTERNAL/capnproto/c++/.bazelversion b/libs/EXTERNAL/capnproto/c++/.bazelversion new file mode 100644 index 00000000000..5e3254243a3 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/.bazelversion @@ -0,0 +1 @@ +6.1.2 diff --git a/libs/EXTERNAL/capnproto/c++/BUILD.bazel b/libs/EXTERNAL/capnproto/c++/BUILD.bazel new file mode 100644 index 00000000000..e69de29bb2d diff --git a/libs/EXTERNAL/capnproto/c++/CMakeLists.txt b/libs/EXTERNAL/capnproto/c++/CMakeLists.txt index 2acc7811582..1cc53b90ce8 100644 --- a/libs/EXTERNAL/capnproto/c++/CMakeLists.txt +++ b/libs/EXTERNAL/capnproto/c++/CMakeLists.txt @@ -1,9 +1,10 @@ -cmake_minimum_required(VERSION 3.4...3.13) # ! This line is edited to get rid of a CMake deprecation error +cmake_minimum_required(VERSION 3.16) project("Cap'n Proto" CXX) -set(VERSION 0.9.1) +set(VERSION 1.0.2) list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") +include(CTest) include(CheckIncludeFileCXX) include(GNUInstallDirs) if(MSVC) @@ -25,7 +26,6 @@ set(INSTALL_TARGETS_DEFAULT_ARGS # Options ====================================================================== -option(BUILD_TESTING "Build unit tests and enable CTest 'check' target." ON) option(EXTERNAL_CAPNP "Use the system capnp binary, or the one specified in $CAPNP, instead of using the compiled one." OFF) option(CAPNP_LITE "Compile Cap'n Proto in 'lite mode', in which all reflection APIs (schema.h, dynamic.h, etc.) are not included. Produces a smaller library at the cost of features. All programs built against the library must be compiled with -DCAPNP_LITE. Requires EXTERNAL_CAPNP." OFF) @@ -46,6 +46,10 @@ set(WITH_OPENSSL "AUTO" CACHE STRING # define list of values GUI will offer for the variable set_property(CACHE WITH_OPENSSL PROPERTY STRINGS AUTO ON OFF) +set(WITH_ZLIB "AUTO" CACHE STRING + "Whether or not to build libkj-gzip by linking against zlib") +set_property(CACHE WITH_ZLIB PROPERTY STRINGS AUTO ON OFF) + # shadow cache variable original value with ON/OFF, # so from now on OpenSSL-specific code just has to check: # if (WITH_OPENSSL) @@ -64,6 +68,68 @@ elseif (WITH_OPENSSL) find_package(OpenSSL REQUIRED COMPONENTS Crypto SSL) endif() +# shadow cache variable original value with ON/OFF, +# so from now on ZLIB-specific code just has to check: +# if (WITH_ZLIB) +# ... +# endif() +if(CAPNP_LITE) + set(WITH_ZLIB OFF) +elseif (WITH_ZLIB STREQUAL "AUTO") + find_package(ZLIB) + if(ZLIB_FOUND) + set(WITH_ZLIB ON) + else() + set(WITH_ZLIB OFF) + endif() +elseif (WITH_ZLIB) + find_package(ZLIB REQUIRED) +endif() + +set(WITH_FIBERS "AUTO" CACHE STRING + "Whether or not to build libkj-async with fibers") +# define list of values GUI will offer for the variable +set_property(CACHE WITH_FIBERS PROPERTY STRINGS AUTO ON OFF) + +# CapnProtoConfig.cmake.in needs this variable. +set(_WITH_LIBUCONTEXT OFF) + +if (WITH_FIBERS OR WITH_FIBERS STREQUAL "AUTO") + set(_capnp_fibers_found OFF) + if (WIN32 OR CYGWIN) + set(_capnp_fibers_found ON) + else() + # Fibers need makecontext, setcontext, getcontext, swapcontext that may be in libc, + # or in libucontext (e.g. for musl). + # We assume that makecontext implies that the others are present. + include(CheckLibraryExists) + check_library_exists(c makecontext "" HAVE_UCONTEXT_LIBC) + if (HAVE_UCONTEXT_LIBC) + set(_capnp_fibers_found ON) + else() + # Try with libucontext + find_package(PkgConfig) + if (PKG_CONFIG_FOUND) + pkg_check_modules(libucontext IMPORTED_TARGET libucontext) + if (libucontext_FOUND) + set(_WITH_LIBUCONTEXT ON) + set(_capnp_fibers_found ON) + endif() + else() + set(_capnp_fibers_found OFF) + endif() + endif() + endif() + + if (_capnp_fibers_found) + set(WITH_FIBERS ON) + elseif(WITH_FIBERS STREQUAL "AUTO") + set(WITH_FIBERS OFF) + else() + message(FATAL_ERROR "Missing 'makecontext', 'getcontext', 'setcontext' or 'swapcontext' symbol in libc and no libucontext found: KJ won't be able to build with fibers. Disable fibers (-DWITH_FIBERS=OFF).") + endif() +endif() + if(MSVC) # TODO(cleanup): Enable higher warning level in MSVC, but make sure to test # build with that warning level and clean out false positives. diff --git a/libs/EXTERNAL/capnproto/c++/Makefile.am b/libs/EXTERNAL/capnproto/c++/Makefile.am index 1e3fd8e948f..1567491d4d5 100644 --- a/libs/EXTERNAL/capnproto/c++/Makefile.am +++ b/libs/EXTERNAL/capnproto/c++/Makefile.am @@ -27,6 +27,7 @@ EXTRA_DIST = \ src/capnp/testdata/segmented-packed \ src/capnp/testdata/errors.capnp.nobuild \ src/capnp/testdata/errors2.capnp.nobuild \ + src/capnp/testdata/no-file-id.capnp.nobuild \ src/capnp/testdata/short.txt \ src/capnp/testdata/flat \ src/capnp/testdata/binary \ @@ -174,9 +175,11 @@ includekj_HEADERS = \ src/kj/async-unix.h \ src/kj/async-win32.h \ src/kj/async-io.h \ + src/kj/cidr.h \ src/kj/async-queue.h \ src/kj/main.h \ src/kj/test.h \ + src/kj/win32-api-version.h \ src/kj/windows-sanity.h includekjparse_HEADERS = \ @@ -263,6 +266,7 @@ endif libkj_la_LIBADD = $(PTHREAD_LIBS) libkj_la_LDFLAGS = -release $(SO_VERSION) -no-undefined libkj_la_SOURCES= \ + src/kj/cidr.c++ \ src/kj/common.c++ \ src/kj/units.c++ \ src/kj/memory.c++ \ @@ -305,11 +309,19 @@ libkj_async_la_SOURCES= \ src/kj/async-io-win32.c++ \ src/kj/timer.c++ +if BUILD_KJ_GZIP +libkj_http_la_LIBADD = libkj-async.la libkj.la -lz $(ASYNC_LIBS) $(PTHREAD_LIBS) +libkj_http_la_LDFLAGS = -release $(SO_VERSION) -no-undefined +libkj_http_la_SOURCES= \ + src/kj/compat/url.c++ \ + src/kj/compat/http.c++ +else libkj_http_la_LIBADD = libkj-async.la libkj.la $(ASYNC_LIBS) $(PTHREAD_LIBS) libkj_http_la_LDFLAGS = -release $(SO_VERSION) -no-undefined libkj_http_la_SOURCES= \ src/kj/compat/url.c++ \ src/kj/compat/http.c++ +endif libkj_tls_la_LIBADD = libkj-async.la libkj.la -lssl -lcrypto $(ASYNC_LIBS) $(PTHREAD_LIBS) libkj_tls_la_LDFLAGS = -release $(SO_VERSION) -no-undefined @@ -504,6 +516,7 @@ endif heavy_tests = \ src/kj/async-test.c++ \ src/kj/async-xthread-test.c++ \ + src/kj/async-coroutine-test.c++ \ src/kj/async-unix-test.c++ \ src/kj/async-unix-xthread-test.c++ \ src/kj/async-win32-test.c++ \ diff --git a/libs/EXTERNAL/capnproto/c++/WORKSPACE b/libs/EXTERNAL/capnproto/c++/WORKSPACE new file mode 100644 index 00000000000..d94a279ef31 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/WORKSPACE @@ -0,0 +1,54 @@ +workspace(name = "capnp-cpp") + +load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") +load("//:build/load_br.bzl", "load_brotli") + +http_archive( + name = "bazel_skylib", + sha256 = "f7be3474d42aae265405a592bb7da8e171919d74c16f082a5457840f06054728", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.2.1/bazel-skylib-1.2.1.tar.gz", + "https://github.com/bazelbuild/bazel-skylib/releases/download/1.2.1/bazel-skylib-1.2.1.tar.gz", + ], +) + +load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") + +bazel_skylib_workspace() + +http_archive( + name = "ssl", + sha256 = "873ec711658f65192e9c58554ce058d1cfa4e57e13ab5366ee16f76d1c757efc", + strip_prefix = "google-boringssl-ed2e74e", + type = "tgz", + # from master-with-bazel branch + urls = ["https://github.com/google/boringssl/tarball/ed2e74e737dc802ed9baad1af62c1514430a70d6"], +) + +# Based on https://github.com/bazelbuild/bazel/blob/master/third_party/zlib/BUILD. +_zlib_build = """ +cc_library( + name = "zlib", + srcs = glob(["*.c"]), + hdrs = glob(["*.h"]), + # Temporary workaround for zlib warnings and mac compilation, should no longer be needed with next release https://github.com/madler/zlib/issues/633 + copts = [ + "-w", + "-Dverbose=-1", + ] + select({ + "@platforms//os:macos": [ "-std=c90" ], + "//conditions:default": [], + }), + visibility = ["//visibility:public"], +) +""" + +http_archive( + name = "zlib", + build_file_content = _zlib_build, + sha256 = "d14c38e313afc35a9a8760dadf26042f51ea0f5d154b0630a31da0540107fb98", + strip_prefix = "zlib-1.2.13", + urls = ["https://zlib.net/zlib-1.2.13.tar.xz"], +) + +load_brotli() diff --git a/libs/EXTERNAL/capnproto/c++/build/configure.bzl b/libs/EXTERNAL/capnproto/c++/build/configure.bzl new file mode 100644 index 00000000000..bafee637ebb --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/build/configure.bzl @@ -0,0 +1,103 @@ +load("@bazel_skylib//rules:common_settings.bzl", "bool_flag", "int_flag") + +def kj_configure(): + """Generates set of flag, settings for kj configuration. + + Creates kj-defines cc_library with all necessary preprocessor defines. + """ + + # Flags to configure KJ library build. + bool_flag( + name = "openssl", + build_setting_default = False, + ) + + bool_flag( + name = "zlib", + build_setting_default = False, + ) + + bool_flag( + name = "brotli", + build_setting_default = False, + ) + + bool_flag( + name = "libdl", + build_setting_default = False, + ) + + bool_flag( + name = "save_acquired_lock_info", + build_setting_default = False, + ) + + bool_flag( + name = "track_lock_blocking", + build_setting_default = False, + ) + + bool_flag( + name = "coroutines", + build_setting_default = False, + ) + + # Settings to use in select() expressions + native.config_setting( + name = "use_openssl", + flag_values = {"openssl": "True"}, + visibility = ["//visibility:public"], + ) + + native.config_setting( + name = "use_zlib", + flag_values = {"zlib": "True"}, + ) + + native.config_setting( + name = "use_brotli", + flag_values = {"brotli": "True"}, + ) + + native.config_setting( + name = "use_libdl", + flag_values = {"libdl": "True"}, + ) + + native.config_setting( + name = "use_coroutines", + flag_values = {"coroutines": "True"}, + ) + + native.config_setting( + name = "use_save_acquired_lock_info", + flag_values = {"save_acquired_lock_info": "True"}, + ) + + native.config_setting( + name = "use_track_lock_blocking", + flag_values = {"track_lock_blocking": "True"}, + ) + + native.cc_library( + name = "kj-defines", + defines = select({ + "//src/kj:use_openssl": ["KJ_HAS_OPENSSL"], + "//conditions:default": [], + }) + select({ + "//src/kj:use_zlib": ["KJ_HAS_ZLIB"], + "//conditions:default": [], + }) + select({ + "//src/kj:use_brotli": ["KJ_HAS_BROTLI"], + "//conditions:default": [], + }) + select({ + "//src/kj:use_libdl": ["KJ_HAS_LIBDL"], + "//conditions:default": [], + }) + select({ + "//src/kj:use_save_acquired_lock_info": ["KJ_SAVE_ACQUIRED_LOCK_INFO=1"], + "//conditions:default": ["KJ_SAVE_ACQUIRED_LOCK_INFO=0"], + }) + select({ + "//src/kj:use_track_lock_blocking": ["KJ_TRACK_LOCK_BLOCKING=1"], + "//conditions:default": ["KJ_TRACK_LOCK_BLOCKING=0"], + }), + ) diff --git a/libs/EXTERNAL/capnproto/c++/build/load_br.bzl b/libs/EXTERNAL/capnproto/c++/build/load_br.bzl new file mode 100644 index 00000000000..fe6fdfedd6b --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/build/load_br.bzl @@ -0,0 +1,12 @@ +load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") + +# Defined in a bzl file to allow dependents to pull in brotli via capnproto. Using latest brotli +# commit due to macOS compile issues with v1.0.9, switch to a release version later +def load_brotli(): + http_archive( + name = "brotli", + sha256 = "e33f397d86aaa7f3e786bdf01a7b5cff4101cfb20041c04b313b149d34332f64", + strip_prefix = "google-brotli-ed1995b", + type = "tgz", + urls = ["https://github.com/google/brotli/tarball/ed1995b6bda19244070ab5d331111f16f67c8054"], + ) diff --git a/libs/EXTERNAL/capnproto/c++/cmake/CapnProtoConfig.cmake.in b/libs/EXTERNAL/capnproto/c++/cmake/CapnProtoConfig.cmake.in index 667f502fb55..4b8ac96db4d 100644 --- a/libs/EXTERNAL/capnproto/c++/cmake/CapnProtoConfig.cmake.in +++ b/libs/EXTERNAL/capnproto/c++/cmake/CapnProtoConfig.cmake.in @@ -49,7 +49,7 @@ if(NOT _IMPORT_PREFIX) set(_IMPORT_PREFIX ${PACKAGE_PREFIX_DIR}) endif() -if (@WITH_OPENSSL@) # WITH_OPENSSL +if (@WITH_OPENSSL@) # WITH_OPENSSL include(CMakeFindDependencyMacro) if (CMAKE_VERSION VERSION_LESS 3.9) # find_dependency() did not support COMPONENTS until CMake 3.9 @@ -62,6 +62,43 @@ if (@WITH_OPENSSL@) # WITH_OPENSSL endif() endif() +if (@WITH_ZLIB@) # WITH_ZLIB + include(CMakeFindDependencyMacro) + find_dependency(ZLIB) +endif() + +if (@_WITH_LIBUCONTEXT@) # _WITH_LIBUCONTEXT + set(forwarded_config_flags) + if(CapnProto_FIND_QUIETLY) + list(APPEND forwarded_config_flags QUIET) + endif() + if(CapnProto_FIND_REQUIRED) + list(APPEND forwarded_config_flags REQUIRED) + endif() + # If the consuming project called find_package(CapnProto) with the QUIET or REQUIRED flags, forward + # them to calls to find_package(PkgConfig) and pkg_check_modules(). Note that find_dependency() + # would do this for us in the former case, but there is no such forwarding wrapper for + # pkg_check_modules(). + + find_package(PkgConfig ${forwarded_config_flags}) + if(NOT ${PkgConfig_FOUND}) + # If we're here, the REQUIRED flag must not have been passed, else we would have had a fatal + # error. Nevertheless, a diagnostic for this case is probably nice. + if(NOT CapnProto_FIND_QUIETLY) + message(WARNING "pkg-config cannot be found") + endif() + set(CapnProto_FOUND OFF) + return() + endif() + + if (CMAKE_VERSION VERSION_LESS 3.6) + # CMake >= 3.6 required due to the use of IMPORTED_TARGET + message(SEND_ERROR "libucontext support requires CMake >= 3.6.") + endif() + + pkg_check_modules(libucontext IMPORTED_TARGET ${forwarded_config_flags} libucontext) +endif() + include("${CMAKE_CURRENT_LIST_DIR}/CapnProtoTargets.cmake") include("${CMAKE_CURRENT_LIST_DIR}/CapnProtoMacros.cmake") diff --git a/libs/EXTERNAL/capnproto/c++/compile_flags.txt b/libs/EXTERNAL/capnproto/c++/compile_flags.txt new file mode 100644 index 00000000000..a9e8a51665d --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/compile_flags.txt @@ -0,0 +1,15 @@ +-std=c++20 +-Isrc +-Itmp +-isystem/usr/local/include +-isystem/usr/include/x86_64-linux-gnu +-isystem/usr/include +-DKJ_HEADER_WARNINGS +-DCAPNP_HEADER_WARNINGS +-DCAPNP_DEBUG_TYPES +-DKJ_HAS_OPENSSL +-DKJ_HAS_LIBDL +-DKJ_HAS_ZLIB +-DKJ_HAS_BROTLI +-DKJ_BENCHMARK_MALLOC +-xc++ diff --git a/libs/EXTERNAL/capnproto/c++/configure.ac b/libs/EXTERNAL/capnproto/c++/configure.ac index 72fe8456f19..ba4b4038d12 100644 --- a/libs/EXTERNAL/capnproto/c++/configure.ac +++ b/libs/EXTERNAL/capnproto/c++/configure.ac @@ -1,6 +1,6 @@ ## Process this file with autoconf to produce configure. -AC_INIT([Capn Proto],[0.9.1],[capnproto@googlegroups.com],[capnproto-c++]) +AC_INIT([Capn Proto],[1.0.2],[capnproto@googlegroups.com],[capnproto-c++]) AC_CONFIG_SRCDIR([src/capnp/layout.c++]) AC_CONFIG_AUX_DIR([build-aux]) @@ -32,6 +32,11 @@ AC_ARG_WITH([openssl], [build libkj-tls by linking against openssl @<:@default=check@:>@])], [],[with_openssl=check]) +AC_ARG_WITH([fibers], + [AS_HELP_STRING([--with-fibers], + [build libkj-async with fibers @<:@default=check@:>@])], + [],[with_fibers=check]) + AC_ARG_ENABLE([reflection], [ AS_HELP_STRING([--disable-reflection], [ compile Cap'n Proto in "lite mode", in which all reflection APIs (schema.h, dynamic.h, etc.) @@ -195,8 +200,71 @@ AS_IF([test "$with_openssl" != no], [ ]) AM_CONDITIONAL([BUILD_KJ_TLS], [test "$with_openssl" != no]) -# CapnProtoConfig.cmake.in needs this variable. -AC_SUBST(WITH_OPENSSL, $with_openssl) +# Fibers don't work if exceptions are disabled, so default off in that case. +AS_IF([test "$with_fibers" != no], [ + AC_MSG_CHECKING([if exceptions are enabled]) + AC_COMPILE_IFELSE([void foo() { throw 1; }], [ + AC_MSG_RESULT([yes]) + ], [ + AS_IF([test "$with_fibers" = check], [ + AC_MSG_RESULT([no -- therefore, disabling fibers]) + with_fibers=no + ], [ + AC_MSG_RESULT([no]) + AC_MSG_ERROR([Fibers require exceptions, but your compiler flags disable exceptions. Please either enable exceptions or disable fibers (--without-fibers).]) + ]) + ]) +]) + +# Check for library support necessary for fibers. +AS_IF([test "$with_fibers" != no], [ + case "${host_os}" in + cygwin* | mingw* ) + # Fibers always work on Windows, where there's an explicit API for them. + with_fibers=yes + ;; + * ) + # Fibers need the symbols getcontext, setcontext, swapcontext and makecontext. + # We assume that makecontext implies the rest. + libc_supports_fibers=yes + AC_SEARCH_LIBS([makecontext], [], [], [ + libc_supports_fibers=no + ]) + + AS_IF([test "$libc_supports_fibers" = yes], [ + with_fibers=yes + ], [ + # If getcontext does not exist in libc, try with libucontext + ucontext_supports_fibers=yes + AC_CHECK_LIB(ucontext, [makecontext], [], [ + ucontext_supports_fibers=no + ]) + AS_IF([test "$ucontext_supports_fibers" = yes], [ + ASYNC_LIBS="$ASYNC_LIBS -lucontext" + with_fibers=yes + ], [ + AS_IF([test "$with_fibers" = yes], [ + AC_MSG_ERROR([Missing symbols required for fibers (makecontext, setcontext, ...). Disable fibers (--without-fibers) or install libucontext]) + ], [ + AC_MSG_WARN([could not find required symbols (makecontext, setcontext, ...) -- won't build with fibers]) + with_fibers=no + ]) + ]) + ]) + ;; + esac +]) +AS_IF([test "$with_fibers" = yes], [ + CXXFLAGS="$CXXFLAGS -DKJ_USE_FIBERS" +], [ + CXXFLAGS="$CXXFLAGS -DKJ_USE_FIBERS=0" +]) + +# CapnProtoConfig.cmake.in needs these variables, +# we force them to NO because we don't need the CMake dependency for them, +# the dependencies are provided by the .pc files. +AC_SUBST(WITH_OPENSSL, NO) +AC_SUBST(_WITH_LIBUCONTEXT, NO) AM_CONDITIONAL([HAS_FUZZING_ENGINE], [test "x$LIB_FUZZING_ENGINE" != "x"]) diff --git a/libs/EXTERNAL/capnproto/c++/ekam-build.sh b/libs/EXTERNAL/capnproto/c++/ekam-build.sh new file mode 100755 index 00000000000..eff565a44c9 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/ekam-build.sh @@ -0,0 +1,70 @@ +#! /bin/bash +# +# This file builds Cap'n Proto using Ekam. + +set -euo pipefail + +NPROC=$(nproc) + +if [ ! -e deps/ekam ]; then + mkdir -p deps + git clone https://github.com/capnproto/ekam.git deps/ekam +fi + +if [ ! -e deps/ekam/deps/capnproto ]; then + mkdir -p deps/ekam/deps + ln -s ../../../.. deps/ekam/deps/capnproto +fi + +if [ ! -e deps/ekam/ekam ]; then + (cd deps/ekam && make -j$NPROC) +fi + +OPT_CXXFLAGS= +EXTRA_LIBS= +EKAM_FLAGS= + +while [ $# -gt 0 ]; do + case $1 in + dbg | debug ) + OPT_CXXFLAGS="-g -DCAPNP_DEBUG_TYPES " + ;; + opt | release ) + OPT_CXXFLAGS="-DNDEBUG -O2 -g" + ;; + prof | profile ) + OPT_CXXFLAGS="-DNDEBUG -O2 -g" + EXTRA_LIBS="$EXTRA_LIBS -lprofiler" + ;; + tcmalloc ) + EXTRA_LIBS="$EXTRA_LIBS -ltcmalloc" + ;; + continuous ) + EKAM_FLAGS="-c -n :41315" + ;; + * ) + echo "Unknown option: $1" >&2 + exit 1 + ;; + esac + shift +done + +CLANG_CXXFLAGS="-std=c++20 -stdlib=libc++ -pthread -Wall -Wextra -Werror -Wno-strict-aliasing -Wno-sign-compare -Wno-unused-parameter -Wimplicit-fallthrough -Wno-error=unused-command-line-argument -Wno-missing-field-initializers -DKJ_HEADER_WARNINGS -DCAPNP_HEADER_WARNINGS -DKJ_HAS_OPENSSL -DKJ_HAS_LIBDL -DKJ_HAS_ZLIB -DKJ_BENCHMARK_MALLOC" + +export CXX=${CXX:-clang++} +export CC=${CC:-clang} +export LIBS="-lz -ldl -lcrypto -lssl -stdlib=libc++ $EXTRA_LIBS -pthread" +export CXXFLAGS=${CXXFLAGS:-$OPT_CXXFLAGS $CLANG_CXXFLAGS} + +# TODO(someday): Get the protobuf benchmarks working. For now these settings will prevent build +# errors in the benchmarks directory. Note that it's tricky to link against an installed copy +# of libprotobuf because we have to use compatible C++ standard libraries. We either need to +# build libprotobuf from source using libc++, or we need to switch back to libstdc++ when +# enabling libprotobuf. Arguably building from source would be more fair so we can match compiler +# flags for performance comparison purposes, but we'll have to see if ekam is still able to build +# libprotobuf these days... +CXXFLAGS="$CXXFLAGS -DCAPNP_NO_PROTOBUF_BENCHMARK" +export PROTOC=/bin/true + +exec deps/ekam/bin/ekam $EKAM_FLAGS -j$NPROC diff --git a/libs/EXTERNAL/capnproto/c++/samples/CMakeLists.txt b/libs/EXTERNAL/capnproto/c++/samples/CMakeLists.txt index 6a36b175204..d80b5303c0d 100644 --- a/libs/EXTERNAL/capnproto/c++/samples/CMakeLists.txt +++ b/libs/EXTERNAL/capnproto/c++/samples/CMakeLists.txt @@ -17,7 +17,7 @@ # cmake --build . project("Cap'n Proto Samples" CXX) -cmake_minimum_required(VERSION 3.1) +cmake_minimum_required(VERSION 3.16) find_package(CapnProto CONFIG REQUIRED) diff --git a/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-carsales.c++ b/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-carsales.c++ index 40477097abe..7190251a0f7 100644 --- a/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-carsales.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-carsales.c++ @@ -19,6 +19,8 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. +#if !CAPNP_NO_PROTOBUF_BENCHMARK + #include "carsales.pb.h" #include "protobuf-common.h" @@ -139,3 +141,5 @@ int main(int argc, char* argv[]) { capnp::benchmark::protobuf::BenchmarkTypes, capnp::benchmark::protobuf::CarSalesTestCase>(argc, argv); } + +#endif // !CAPNP_NO_PROTOBUF_BENCHMARK diff --git a/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-catrank.c++ b/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-catrank.c++ index a3036b237d4..648bdb7cd4a 100644 --- a/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-catrank.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-catrank.c++ @@ -19,6 +19,8 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. +#if !CAPNP_NO_PROTOBUF_BENCHMARK + #include "catrank.pb.h" #include "protobuf-common.h" @@ -128,3 +130,5 @@ int main(int argc, char* argv[]) { capnp::benchmark::protobuf::BenchmarkTypes, capnp::benchmark::protobuf::CatRankTestCase>(argc, argv); } + +#endif // !CAPNP_NO_PROTOBUF_BENCHMARK diff --git a/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-eval.c++ b/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-eval.c++ index db27b7378a2..b197a0ea719 100644 --- a/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-eval.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/benchmark/protobuf-eval.c++ @@ -19,6 +19,8 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. +#if !CAPNP_NO_PROTOBUF_BENCHMARK + #include "eval.pb.h" #include "protobuf-common.h" @@ -116,3 +118,5 @@ int main(int argc, char* argv[]) { capnp::benchmark::protobuf::BenchmarkTypes, capnp::benchmark::protobuf::ExpressionTestCase>(argc, argv); } + +#endif // !CAPNP_NO_PROTOBUF_BENCHMARK diff --git a/libs/EXTERNAL/capnproto/c++/src/benchmark/runner.c++ b/libs/EXTERNAL/capnproto/c++/src/benchmark/runner.c++ index 5ff07567d11..155324921a7 100644 --- a/libs/EXTERNAL/capnproto/c++/src/benchmark/runner.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/benchmark/runner.c++ @@ -186,7 +186,7 @@ TestResult runTest(Product product, TestCase testCase, Mode mode, Reuse reuse, } char itersStr[64]; - sprintf(itersStr, "%llu", (long long unsigned int)iters); + snprintf(itersStr, sizeof(itersStr), "%llu", (long long unsigned int)iters); argv[4] = itersStr; argv[5] = nullptr; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/BUILD.bazel b/libs/EXTERNAL/capnproto/c++/src/capnp/BUILD.bazel new file mode 100644 index 00000000000..f11a7a24aa2 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/BUILD.bazel @@ -0,0 +1,278 @@ +load("@capnp-cpp//src/capnp:cc_capnp_library.bzl", "cc_capnp_library") + +cc_library( + name = "capnp", + srcs = [ + "any.c++", + "arena.c++", + "blob.c++", + "c++.capnp.c++", + "dynamic.c++", + "layout.c++", + "list.c++", + "message.c++", + "schema.c++", + "schema.capnp.c++", + "schema-loader.c++", + "serialize.c++", + "serialize-packed.c++", + "stream.capnp.c++", + "stringify.c++", + ], + hdrs = [ + "any.h", + "arena.h", + "blob.h", + "c++.capnp.h", + "capability.h", + "common.h", + "dynamic.h", + "endian.h", + "generated-header-support.h", + "layout.h", + "list.h", + "membrane.h", + "message.h", + "orphan.h", + "pointer-helpers.h", + "pretty-print.h", + "raw-schema.h", + "schema.capnp.h", + "schema.h", + "schema-lite.h", + "schema-loader.h", + "schema-parser.h", + "serialize.h", + "serialize-async.h", + "serialize-packed.h", + "serialize-text.h", + "stream.capnp.h", + ], + include_prefix = "capnp", + visibility = ["//visibility:public"], + deps = [ + "//src/kj:kj-async", + ], +) + +cc_library( + name = "capnp-rpc", + srcs = [ + "capability.c++", + "dynamic-capability.c++", + "ez-rpc.c++", + "membrane.c++", + "persistent.capnp.c++", + "reconnect.c++", + "rpc.c++", + "rpc.capnp.c++", + "rpc-twoparty.c++", + "rpc-twoparty.capnp.c++", + "serialize-async.c++", + ], + hdrs = [ + "ez-rpc.h", + "persistent.capnp.h", + "reconnect.h", + "rpc.capnp.h", + "rpc.h", + "rpc-prelude.h", + "rpc-twoparty.capnp.h", + "rpc-twoparty.h", + ], + include_prefix = "capnp", + visibility = ["//visibility:public"], + deps = [ + ":capnp", + ], +) + +cc_library( + name = "capnpc", + srcs = [ + "compiler/compiler.c++", + "compiler/error-reporter.c++", + "compiler/generics.c++", + "compiler/grammar.capnp.c++", + "compiler/lexer.c++", + "compiler/lexer.capnp.c++", + "compiler/node-translator.c++", + "compiler/parser.c++", + "compiler/type-id.c++", + "schema-parser.c++", + "serialize-text.c++", + ], + hdrs = [ + "compiler/compiler.h", + "compiler/error-reporter.h", + "compiler/generics.h", + "compiler/grammar.capnp.h", + "compiler/lexer.capnp.h", + "compiler/lexer.h", + "compiler/module-loader.h", + "compiler/node-translator.h", + "compiler/parser.h", + "compiler/resolver.h", + "compiler/type-id.h", + ], + include_prefix = "capnp", + visibility = ["//visibility:public"], + deps = [ + ":capnp", + ], +) + +cc_binary( + name = "capnp_tool", + srcs = [ + "compiler/capnp.c++", + "compiler/module-loader.c++", + ], + visibility = ["//visibility:public"], + deps = [ + ":capnpc", + "//src/capnp/compat:json", + ], +) + +cc_binary( + name = "capnpc-c++", + srcs = [ + "compiler/capnpc-c++.c++", + ], + visibility = ["//visibility:public"], + deps = [ + ":capnpc", + ], +) + +cc_binary( + name = "capnpc-capnp", + srcs = [ + "compiler/capnpc-capnp.c++", + ], + visibility = ["//visibility:public"], + deps = [ + ":capnpc", + ], +) + +# capnp files that are implicitly available for import to any .capnp. +filegroup( + name = "capnp_system_library", + srcs = [ + "c++.capnp", + "schema.capnp", + "stream.capnp", + "//src/capnp/compat:json.capnp", + ], + visibility = ["//visibility:public"], +) + +# library to link with every cc_capnp_library +cc_library( + name = "capnp_runtime", + visibility = ["//visibility:public"], + # include json since it is not exposed as cc_capnp_library + deps = [ + ":capnp", + "//src/capnp/compat:json", + ], +) + +filegroup( + name = "testdata", + srcs = glob(["testdata/**/*"]), +) + +cc_capnp_library( + name = "capnp_test", + srcs = [ + "test.capnp", + "test-import.capnp", + "test-import2.capnp", + ], + data = [ + "c++.capnp", + "schema.capnp", + "stream.capnp", + ":testdata", + ], + include_prefix = "capnp", + src_prefix = "src", +) + +cc_library( + name = "capnp-test", + srcs = ["test-util.c++"], + hdrs = ["test-util.h"], + deps = [ + ":capnp-rpc", + ":capnp_test", + ":capnpc", + "//src/kj:kj-test", + ], + visibility = [":__subpackages__" ] +) + +[cc_test( + name = f.removesuffix(".c++"), + srcs = [f], + deps = [":capnp-test"], +) for f in [ + "any-test.c++", + "blob-test.c++", + "canonicalize-test.c++", + "common-test.c++", + "capability-test.c++", + "compiler/lexer-test.c++", + "compiler/type-id-test.c++", + "dynamic-test.c++", + "encoding-test.c++", + "endian-test.c++", + "ez-rpc-test.c++", + "layout-test.c++", + "membrane-test.c++", + "message-test.c++", + "orphan-test.c++", + "reconnect-test.c++", + "rpc-test.c++", + "rpc-twoparty-test.c++", + "schema-test.c++", + "schema-loader-test.c++", + "schema-parser-test.c++", + "serialize-async-test.c++", + "serialize-packed-test.c++", + "serialize-test.c++", + "serialize-text-test.c++", + "stringify-test.c++", +]] + +cc_test( + name = "endian-reverse-test", + srcs = ["endian-reverse-test.c++"], + deps = [":capnp-test"], + target_compatible_with = select({ + "@platforms//os:windows": ["@platforms//:incompatible"], + "//conditions:default": [], + }), +) + +cc_library( + name = "endian-test-base", + hdrs = ["endian-test.c++"], + deps = [":capnp-test"], +) + +cc_test( + name = "endian-fallback-test", + srcs = ["endian-fallback-test.c++"], + deps = [":endian-test-base"], +) + +cc_test( + name = "fuzz-test", + size = "large", + srcs = ["fuzz-test.c++"], + deps = [":capnp-test"], +) diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/CMakeLists.txt b/libs/EXTERNAL/capnproto/c++/src/capnp/CMakeLists.txt index 3b515507604..9980fde617f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/CMakeLists.txt +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/CMakeLists.txt @@ -66,8 +66,9 @@ add_library(capnp ${capnp_sources}) add_library(CapnProto::capnp ALIAS capnp) target_link_libraries(capnp PUBLIC kj) #make sure external consumers don't need to manually set the include dirs +get_filename_component(PARENT_DIR ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY) target_include_directories(capnp INTERFACE - $ + $ $ ) # Ensure the library has a version set to match autotools build @@ -212,7 +213,7 @@ if(NOT CAPNP_LITE) install(TARGETS capnp_tool capnpc_cpp capnpc_capnp ${INSTALL_TARGETS_DEFAULT_ARGS}) if(WIN32) - # On Windows platforms symlinks are not guranteed to support. Also differnt version of CMake handle create_symlink in a different way. + # On Windows platforms symlinks are not guaranteed to support. Also different version of CMake handle create_symlink in a different way. # The most portable way in this case just copy the file. install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E copy \"\$ENV{DESTDIR}${CMAKE_INSTALL_FULL_BINDIR}/capnp${CMAKE_EXECUTABLE_SUFFIX}\" \"\$ENV{DESTDIR}${CMAKE_INSTALL_FULL_BINDIR}/capnpc${CMAKE_EXECUTABLE_SUFFIX}\")") else() diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/arena.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/arena.c++ index 58dd07faf5a..77061db1d7f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/arena.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/arena.c++ @@ -104,7 +104,7 @@ ReaderArena::~ReaderArena() noexcept(false) {} size_t ReaderArena::sizeInWords() { size_t total = segment0.getArray().size(); - for (uint i = 0; ; i++) { + for (uint i = 1; ; i++) { SegmentReader* segment = tryGetSegment(SegmentId(i)); if (segment == nullptr) return total; total += unboundAs(segment->getSize() / WORDS); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/arena.h b/libs/EXTERNAL/capnproto/c++/src/capnp/arena.h index be4785c90c4..aeaff8448d0 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/arena.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/arena.h @@ -99,7 +99,7 @@ class ReadLimiter { // alignas(8) is the default on 64-bit systems, but needed on 32-bit to avoid an expensive // unaligned atomic operation. - KJ_DISALLOW_COPY(ReadLimiter); + KJ_DISALLOW_COPY_AND_MOVE(ReadLimiter); KJ_ALWAYS_INLINE(void setLimit(uint64_t newLimit)) { #if defined(__GNUC__) || defined(__clang__) @@ -174,7 +174,7 @@ class SegmentReader { kj::ArrayPtr ptr; // size guaranteed to fit in SEGMENT_WORD_COUNT_BITS bits ReadLimiter* readLimiter; - KJ_DISALLOW_COPY(SegmentReader); + KJ_DISALLOW_COPY_AND_MOVE(SegmentReader); friend class SegmentBuilder; @@ -226,7 +226,7 @@ class SegmentBuilder: public SegmentReader { [[noreturn]] void throwNotWritable(); - KJ_DISALLOW_COPY(SegmentBuilder); + KJ_DISALLOW_COPY_AND_MOVE(SegmentBuilder); }; class Arena { @@ -246,7 +246,7 @@ class ReaderArena final: public Arena { public: explicit ReaderArena(MessageReader* message); ~ReaderArena() noexcept(false); - KJ_DISALLOW_COPY(ReaderArena); + KJ_DISALLOW_COPY_AND_MOVE(ReaderArena); size_t sizeInWords(); @@ -282,7 +282,7 @@ class BuilderArena final: public Arena { explicit BuilderArena(MessageBuilder* message); BuilderArena(MessageBuilder* message, kj::ArrayPtr segments); ~BuilderArena() noexcept(false); - KJ_DISALLOW_COPY(BuilderArena); + KJ_DISALLOW_COPY_AND_MOVE(BuilderArena); size_t sizeInWords(); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/blob.h b/libs/EXTERNAL/capnproto/c++/src/capnp/blob.h index 7e24e18cea5..451e443dc43 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/blob.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/blob.h @@ -173,8 +173,8 @@ inline kj::StringPtr KJ_STRINGIFY(Text::Builder builder) { return builder.asString(); } -inline bool operator==(const char* a, const Text::Builder& b) { return a == b.asString(); } -inline bool operator!=(const char* a, const Text::Builder& b) { return a != b.asString(); } +inline bool operator==(const char* a, const Text::Builder& b) { return b.asString() == a; } +inline bool operator!=(const char* a, const Text::Builder& b) { return b.asString() != a; } inline Text::Builder::operator kj::StringPtr() const { return kj::StringPtr(content.begin(), content.size() - 1); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp b/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp index 2bda5471792..9eaff6d1d28 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp @@ -24,3 +24,25 @@ $namespace("capnp::annotations"); annotation namespace(file): Text; annotation name(field, enumerant, struct, enum, interface, method, param, group, union): Text; + +annotation allowCancellation(interface, method, file) :Void; +# Indicates that the server-side implementation of a method is allowed to be canceled when the +# client requests cancellation. Without this annotation, once a method call has been delivered to +# the server-side application code, any requests by the client to cancel it will be ignored, and +# the method will run to completion anyway. This applies even for local in-process calls. +# +# This behavior applies specifically to implementations that inherit from the C++ `Foo::Server` +# interface. The annotation won't affect DynamicCapability::Server implementations; they must set +# the cancellation mode at runtime. +# +# When applied to an interface rather than an individual method, the annotation applies to all +# methods in the interface. When applied to a file, it applies to all methods defined in the file. +# +# It's generally recommended that this annotation be applied to all methods. However, when doing +# so, it is important that the server implementation use cancellation-safe code. See: +# +# https://github.com/capnproto/capnproto/blob/master/kjdoc/tour.md#cancellation +# +# If your code is not cancellation-safe, then allowing cancellation might give a malicious client +# an easy way to induce use-after-free or other bugs in your server, by requesting cancellation +# when not expected. diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp.c++ index 576d733b23d..02378a9c889 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp.c++ @@ -32,7 +32,7 @@ static const ::capnp::_::AlignedData<21> b_b9c6f99ebf805f2c = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_b9c6f99ebf805f2c = { 0xb9c6f99ebf805f2c, b_b9c6f99ebf805f2c.words, 21, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_b9c6f99ebf805f2c, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_b9c6f99ebf805f2c, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<20> b_f264a779fef191ce = { @@ -61,7 +61,38 @@ static const ::capnp::_::AlignedData<20> b_f264a779fef191ce = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_f264a779fef191ce = { 0xf264a779fef191ce, b_f264a779fef191ce.words, 20, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_f264a779fef191ce, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_f264a779fef191ce, nullptr, nullptr, 0, 0, nullptr }, false +}; +#endif // !CAPNP_LITE +static const ::capnp::_::AlignedData<22> b_ac7096ff8cfc9dce = { + { 0, 0, 0, 0, 5, 0, 6, 0, + 206, 157, 252, 140, 255, 150, 112, 172, + 16, 0, 0, 0, 5, 0, 1, 3, + 129, 78, 48, 184, 123, 125, 248, 189, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 21, 0, 0, 0, 18, 1, 0, 0, + 37, 0, 0, 0, 7, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 32, 0, 0, 0, 3, 0, 1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 99, 97, 112, 110, 112, 47, 99, 43, + 43, 46, 99, 97, 112, 110, 112, 58, + 97, 108, 108, 111, 119, 67, 97, 110, + 99, 101, 108, 108, 97, 116, 105, 111, + 110, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, 1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, } +}; +::capnp::word const* const bp_ac7096ff8cfc9dce = b_ac7096ff8cfc9dce.words; +#if !CAPNP_LITE +const ::capnp::_::RawSchema s_ac7096ff8cfc9dce = { + 0xac7096ff8cfc9dce, b_ac7096ff8cfc9dce.words, 22, nullptr, nullptr, + 0, 0, nullptr, nullptr, nullptr, { &s_ac7096ff8cfc9dce, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE } // namespace schemas diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp.h b/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp.h index 73d35cad904..6fc28fb69a6 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/c++.capnp.h @@ -6,7 +6,9 @@ #include #include -#if CAPNP_VERSION != 9001 +#ifndef CAPNP_VERSION +#error "CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?" +#elif CAPNP_VERSION != 1000002 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." #endif @@ -18,6 +20,7 @@ namespace schemas { CAPNP_DECLARE_SCHEMA(b9c6f99ebf805f2c); CAPNP_DECLARE_SCHEMA(f264a779fef191ce); +CAPNP_DECLARE_SCHEMA(ac7096ff8cfc9dce); } // namespace schemas } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/capability-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/capability-test.c++ index 6a934a94c83..a645abce40b 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/capability-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/capability-test.c++ @@ -280,7 +280,7 @@ TEST(Capability, TailCall) { } TEST(Capability, AsyncCancelation) { - // Tests allowCancellation(). + // Tests cancellation. kj::EventLoop loop; kj::WaitScope waitScope(loop); @@ -1304,10 +1304,8 @@ KJ_TEST("Streaming calls can be canceled") { auto promise4 = cap.finishStreamRequest().send(); - // Cancel the streaming calls. - promise1 = nullptr; + // Cancel the doStreamJ() request. promise2 = nullptr; - promise3 = nullptr; KJ_EXPECT(server.iSum == 0); KJ_EXPECT(server.jSum == 0); @@ -1321,10 +1319,9 @@ KJ_TEST("Streaming calls can be canceled") { KJ_EXPECT(!promise4.poll(waitScope)); - // The call to doStreamJ() opted into cancellation so the next call to doStreamI() happens - // immediately. + // The call to doStreamJ() was canceled, so the next call to doStreamI() happens immediately. KJ_EXPECT(server.iSum == 579); - KJ_EXPECT(server.jSum == 321); + KJ_EXPECT(server.jSum == 0); KJ_ASSERT_NONNULL(server.fulfiller)->fulfill(); @@ -1332,7 +1329,7 @@ KJ_TEST("Streaming calls can be canceled") { auto result = promise4.wait(waitScope); KJ_EXPECT(result.getTotalI() == 579); - KJ_EXPECT(result.getTotalJ() == 321); + KJ_EXPECT(result.getTotalJ() == 0); } KJ_TEST("Streaming call throwing cascades to following calls") { @@ -1393,6 +1390,35 @@ KJ_TEST("Streaming call throwing cascades to following calls") { KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("throw requested", promise4.ignoreResult().wait(waitScope)); } +KJ_TEST("RevocableServer") { + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + + class ServerImpl: public test::TestMembrane::Server { + public: + kj::Promise waitForever(WaitForeverContext context) override { + return kj::NEVER_DONE; + } + }; + + ServerImpl server; + + RevocableServer revocable(server); + + auto promise = revocable.getClient().waitForeverRequest().send(); + KJ_EXPECT(!promise.poll(waitScope)); + + revocable.revoke(); + + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE( + "capability was revoked", + promise.ignoreResult().wait(waitScope)); + + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE( + "capability was revoked", + revocable.getClient().waitForeverRequest().send().ignoreResult().wait(waitScope)); +} + } // namespace } // namespace _ } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/capability.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/capability.c++ index dc5f7f2e3bf..9462c6c218e 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/capability.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/capability.c++ @@ -91,7 +91,7 @@ Capability::Server::DispatchCallResult Capability::Server::internalUnimplemented return { KJ_EXCEPTION(UNIMPLEMENTED, "Requested interface not implemented.", actualInterfaceName, requestedTypeId), - false + false, true }; } @@ -99,7 +99,7 @@ Capability::Server::DispatchCallResult Capability::Server::internalUnimplemented const char* interfaceName, uint64_t typeId, uint16_t methodId) { return { KJ_EXCEPTION(UNIMPLEMENTED, "Method not implemented.", interfaceName, typeId, methodId), - false + false, true }; } @@ -135,7 +135,7 @@ static inline uint firstSegmentSize(kj::Maybe sizeHint) { } } -class LocalResponse final: public ResponseHook, public kj::Refcounted { +class LocalResponse final: public ResponseHook { public: LocalResponse(kj::Maybe sizeHint) : message(firstSegmentSize(sizeHint)) {} @@ -146,9 +146,9 @@ public: class LocalCallContext final: public CallContextHook, public ResponseHook, public kj::Refcounted { public: LocalCallContext(kj::Own&& request, kj::Own clientRef, - kj::Own> cancelAllowedFulfiller) - : request(kj::mv(request)), clientRef(kj::mv(clientRef)), - cancelAllowedFulfiller(kj::mv(cancelAllowedFulfiller)) {} + ClientHook::CallHints hints, bool isStreaming) + : request(kj::mv(request)), clientRef(kj::mv(clientRef)), hints(hints), + isStreaming(isStreaming) {} AnyPointer::Reader getParams() override { KJ_IF_MAYBE(r, request) { @@ -162,7 +162,7 @@ public: } AnyPointer::Builder getResults(kj::Maybe sizeHint) override { if (response == nullptr) { - auto localResponse = kj::refcounted(sizeHint); + auto localResponse = kj::heap(sizeHint); responseBuilder = localResponse->message.getRoot(); response = Response(responseBuilder.asReader(), kj::mv(localResponse)); } @@ -183,22 +183,31 @@ public: ClientHook::VoidPromiseAndPipeline directTailCall(kj::Own&& request) override { KJ_REQUIRE(response == nullptr, "Can't call tailCall() after initializing the results struct."); - auto promise = request->send(); + if (hints.onlyPromisePipeline) { + return { + kj::NEVER_DONE, + PipelineHook::from(request->sendForPipeline()) + }; + } - auto voidPromise = promise.then([this](Response&& tailResponse) { - response = kj::mv(tailResponse); - }); + if (isStreaming) { + auto promise = request->sendStreaming(); + return { kj::mv(promise), getDisabledPipeline() }; + } else { + auto promise = request->send(); - return { kj::mv(voidPromise), PipelineHook::from(kj::mv(promise)) }; + auto voidPromise = promise.then([this](Response&& tailResponse) { + response = kj::mv(tailResponse); + }); + + return { kj::mv(voidPromise), PipelineHook::from(kj::mv(promise)) }; + } } kj::Promise onTailCall() override { auto paf = kj::newPromiseAndFulfiller(); tailCallPipelineFulfiller = kj::mv(paf.fulfiller); return kj::mv(paf.promise); } - void allowCancellation() override { - cancelAllowedFulfiller->fulfill(); - } kj::Own addRef() override { return kj::addRef(*this); } @@ -208,39 +217,63 @@ public: AnyPointer::Builder responseBuilder = nullptr; // only valid if `response` is non-null kj::Own clientRef; kj::Maybe>> tailCallPipelineFulfiller; - kj::Own> cancelAllowedFulfiller; + ClientHook::CallHints hints; + bool isStreaming; }; class LocalRequest final: public RequestHook { public: inline LocalRequest(uint64_t interfaceId, uint16_t methodId, - kj::Maybe sizeHint, kj::Own client) + kj::Maybe sizeHint, ClientHook::CallHints hints, + kj::Own client) : message(kj::heap(firstSegmentSize(sizeHint))), - interfaceId(interfaceId), methodId(methodId), client(kj::mv(client)) {} + interfaceId(interfaceId), methodId(methodId), hints(hints), client(kj::mv(client)) {} RemotePromise send() override { - KJ_REQUIRE(message.get() != nullptr, "Already called send() on this request."); + bool isStreaming = false; + return sendImpl(isStreaming); + } - auto cancelPaf = kj::newPromiseAndFulfiller(); + kj::Promise sendStreaming() override { + // We don't do any special handling of streaming in RequestHook for local requests, because + // there is no latency to compensate for between the client and server in this case. However, + // we record whether the call was streaming, so that it can be preserved as a streaming call + // if the local capability later resolves to a remote capability. + bool isStreaming = true; + return sendImpl(isStreaming).ignoreResult(); + } + AnyPointer::Pipeline sendForPipeline() override { + KJ_REQUIRE(message.get() != nullptr, "Already called send() on this request."); + + hints.onlyPromisePipeline = true; + bool isStreaming = false; auto context = kj::refcounted( - kj::mv(message), client->addRef(), kj::mv(cancelPaf.fulfiller)); - auto promiseAndPipeline = client->call(interfaceId, methodId, kj::addRef(*context)); + kj::mv(message), client->addRef(), hints, isStreaming); + auto vpap = client->call(interfaceId, methodId, kj::addRef(*context), hints); + return AnyPointer::Pipeline(kj::mv(vpap.pipeline)); + } + + const void* getBrand() override { + return nullptr; + } - // We have to make sure the call is not canceled unless permitted. We need to fork the promise - // so that if the client drops their copy, the promise isn't necessarily canceled. - auto forked = promiseAndPipeline.promise.fork(); + kj::Own message; - // We daemonize one branch, but only after joining it with the promise that fires if - // cancellation is allowed. - forked.addBranch() - .attach(kj::addRef(*context)) - .exclusiveJoin(kj::mv(cancelPaf.promise)) - .detach([](kj::Exception&&) {}); // ignore exceptions +private: + uint64_t interfaceId; + uint16_t methodId; + ClientHook::CallHints hints; + kj::Own client; + + RemotePromise sendImpl(bool isStreaming) { + KJ_REQUIRE(message.get() != nullptr, "Already called send() on this request."); + + auto context = kj::refcounted(kj::mv(message), client->addRef(), hints, isStreaming); + auto promiseAndPipeline = client->call(interfaceId, methodId, kj::addRef(*context), hints); // Now the other branch returns the response from the context. - auto promise = forked.addBranch().then(kj::mvCapture(context, - [](kj::Own&& context) { + auto promise = promiseAndPipeline.promise.then([context=kj::mv(context)]() mutable { // force response allocation auto reader = context->getResults(MessageSize { 0, 0 }).asReader(); @@ -258,29 +291,12 @@ public: } else { return kj::mv(KJ_ASSERT_NONNULL(context->response)); } - })); + }); // We return the other branch. return RemotePromise( kj::mv(promise), AnyPointer::Pipeline(kj::mv(promiseAndPipeline.pipeline))); } - - kj::Promise sendStreaming() override { - // We don't do any special handling of streaming in RequestHook for local requests, because - // there is no latency to compensate for between the client and server in this case. - return send().ignoreResult(); - } - - const void* getBrand() override { - return nullptr; - } - - kj::Own message; - -private: - uint64_t interfaceId; - uint16_t methodId; - kj::Own client; }; // ======================================================================================= @@ -385,65 +401,47 @@ public: promiseForClientResolution(promise.addBranch().fork()) {} Request newCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) override { + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, + CallHints hints) override { auto hook = kj::heap( - interfaceId, methodId, sizeHint, kj::addRef(*this)); + interfaceId, methodId, sizeHint, hints, kj::addRef(*this)); auto root = hook->message->getRoot(); return Request(root, kj::mv(hook)); } VoidPromiseAndPipeline call(uint64_t interfaceId, uint16_t methodId, - kj::Own&& context) override { - // This is a bit complicated. We need to initiate this call later on. When we initiate the - // call, we'll get a void promise for its completion and a pipeline object. Right now, we have - // to produce a similar void promise and pipeline that will eventually be chained to those. - // The problem is, these are two independent objects, but they both depend on the result of - // one future call. - // - // So, we need to set up a continuation that will initiate the call later, then we need to - // fork the promise for that continuation in order to send the completion promise and the - // pipeline to their respective places. - // - // TODO(perf): Too much reference counting? Can we do better? Maybe a way to fork - // Promise> into Tuple, Promise>? - - struct CallResultHolder: public kj::Refcounted { - // Essentially acts as a refcounted \VoidPromiseAndPipeline, so that we can create a promise - // for it and fork that promise. - - VoidPromiseAndPipeline content; - // One branch of the fork will use content.promise, the other branch will use - // content.pipeline. Neither branch will touch the other's piece. - - inline CallResultHolder(VoidPromiseAndPipeline&& content): content(kj::mv(content)) {} - - kj::Own addRef() { return kj::addRef(*this); } - }; - - // Create a promise for the call initiation. - kj::ForkedPromise> callResultPromise = - promiseForCallForwarding.addBranch().then(kj::mvCapture(context, - [=](kj::Own&& context, kj::Own&& client){ - return kj::refcounted( - client->call(interfaceId, methodId, kj::mv(context))); - })).fork(); - - // Create a promise that extracts the pipeline from the call initiation, and construct our - // QueuedPipeline to chain to it. - auto pipelinePromise = callResultPromise.addBranch().then( - [](kj::Own&& callResult){ - return kj::mv(callResult->content.pipeline); - }); - auto pipeline = kj::refcounted(kj::mv(pipelinePromise)); + kj::Own&& context, CallHints hints) override { + if (hints.noPromisePipelining) { + // Optimize for no pipelining. + auto promise = promiseForCallForwarding.addBranch() + .then([=,context=kj::mv(context)](kj::Own&& client) mutable { + return client->call(interfaceId, methodId, kj::mv(context), hints).promise; + }); + return VoidPromiseAndPipeline { kj::mv(promise), getDisabledPipeline() }; + } else if (hints.onlyPromisePipeline) { + auto pipelinePromise = promiseForCallForwarding.addBranch() + .then([=,context=kj::mv(context)](kj::Own&& client) mutable { + return client->call(interfaceId, methodId, kj::mv(context), hints).pipeline; + }); + return VoidPromiseAndPipeline { + kj::NEVER_DONE, + kj::refcounted(kj::mv(pipelinePromise)) + }; + } else { + auto split = promiseForCallForwarding.addBranch() + .then([=,context=kj::mv(context)](kj::Own&& client) mutable { + auto vpap = client->call(interfaceId, methodId, kj::mv(context), hints); + return kj::tuple(kj::mv(vpap.promise), kj::mv(vpap.pipeline)); + }).split(); - // Create a promise that simply chains to the void promise produced by the call initiation. - auto completionPromise = callResultPromise.addBranch().then( - [](kj::Own&& callResult){ - return kj::mv(callResult->content.promise); - }); + kj::Promise completionPromise = kj::mv(kj::get<0>(split)); + kj::Promise> pipelinePromise = kj::mv(kj::get<1>(split)); - // OK, now we can actually return our thing. - return VoidPromiseAndPipeline { kj::mv(completionPromise), kj::mv(pipeline) }; + auto pipeline = kj::refcounted(kj::mv(pipelinePromise)); + + // OK, now we can actually return our thing. + return VoidPromiseAndPipeline { kj::mv(completionPromise), kj::mv(pipeline) }; + } } kj::Maybe getResolved() override { @@ -542,46 +540,62 @@ private: class LocalClient final: public ClientHook, public kj::Refcounted { public: - LocalClient(kj::Own&& serverParam) - : server(kj::mv(serverParam)) { - server->thisHook = this; - startResolveTask(); + LocalClient(kj::Own&& serverParam, bool revocable = false) { + auto& serverRef = *server.emplace(kj::mv(serverParam)); + serverRef.thisHook = this; + if (revocable) revoker.emplace(); + startResolveTask(serverRef); } LocalClient(kj::Own&& serverParam, - _::CapabilityServerSetBase& capServerSet, void* ptr) - : server(kj::mv(serverParam)), capServerSet(&capServerSet), ptr(ptr) { - server->thisHook = this; - startResolveTask(); + _::CapabilityServerSetBase& capServerSet, void* ptr, + bool revocable = false) + : capServerSet(&capServerSet), ptr(ptr) { + auto& serverRef = *server.emplace(kj::mv(serverParam)); + serverRef.thisHook = this; + if (revocable) revoker.emplace(); + startResolveTask(serverRef); } ~LocalClient() noexcept(false) { - server->thisHook = nullptr; + KJ_IF_MAYBE(s, server) { + s->get()->thisHook = nullptr; + } + } + + void revoke(kj::Exception&& e) { + KJ_IF_MAYBE(s, server) { + KJ_ASSERT_NONNULL(revoker).cancel(e); + brokenException = kj::mv(e); + s->get()->thisHook = nullptr; + server = nullptr; + } } Request newCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) override { + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, + CallHints hints) override { KJ_IF_MAYBE(r, resolved) { // We resolved to a shortened path. New calls MUST go directly to the replacement capability // so that their ordering is consistent with callers who call getResolved() to get direct // access to the new capability. In particular it's important that we don't place these calls // in our streaming queue. - return r->get()->newCall(interfaceId, methodId, sizeHint); + return r->get()->newCall(interfaceId, methodId, sizeHint, hints); } auto hook = kj::heap( - interfaceId, methodId, sizeHint, kj::addRef(*this)); + interfaceId, methodId, sizeHint, hints, kj::addRef(*this)); auto root = hook->message->getRoot(); return Request(root, kj::mv(hook)); } VoidPromiseAndPipeline call(uint64_t interfaceId, uint16_t methodId, - kj::Own&& context) override { + kj::Own&& context, CallHints hints) override { KJ_IF_MAYBE(r, resolved) { // We resolved to a shortened path. New calls MUST go directly to the replacement capability // so that their ordering is consistent with callers who call getResolved() to get direct // access to the new capability. In particular it's important that we don't place these calls // in our streaming queue. - return r->get()->call(interfaceId, methodId, kj::mv(context)); + return r->get()->call(interfaceId, methodId, kj::mv(context), hints); } auto contextPtr = context.get(); @@ -603,23 +617,50 @@ public: } }).attach(kj::addRef(*this)); - // We have to fork this promise for the pipeline to receive a copy of the answer. - auto forked = promise.fork(); + if (hints.noPromisePipelining) { + // No need to set up pipelining.. + + // Make sure we release the params on return, since we would on the normal pipelining path. + // TODO(perf): Experiment with whether this is actually useful. It seems likely the params + // will be released soon anyway, so maybe this is a waste? + promise = promise.then([context=kj::mv(context)]() mutable { + context->releaseParams(); + }); + + // When we do apply pipelining, the use of `.fork()` has the side effect of eagerly + // evaluating the promise. To match the behavior here, we use `.eagerlyEvaluate()`. + // TODO(perf): Maybe we don't need to match behavior? It did break some tests but arguably + // those tests are weird and not what a real program would do... + promise = promise.eagerlyEvaluate(nullptr); + return VoidPromiseAndPipeline { kj::mv(promise), getDisabledPipeline() }; + } + + kj::Promise completionPromise = nullptr; + kj::Promise pipelineBranch = nullptr; + + if (hints.onlyPromisePipeline) { + pipelineBranch = kj::mv(promise); + completionPromise = kj::NEVER_DONE; + } else { + // We have to fork this promise for the pipeline to receive a copy of the answer. + auto forked = promise.fork(); + pipelineBranch = forked.addBranch(); + completionPromise = forked.addBranch().attach(context->addRef()); + } - auto pipelinePromise = forked.addBranch().then(kj::mvCapture(context->addRef(), - [=](kj::Own&& context) -> kj::Own { + auto pipelinePromise = pipelineBranch + .then([=,context=context->addRef()]() mutable -> kj::Own { context->releaseParams(); return kj::refcounted(kj::mv(context)); - })); + }); - auto tailPipelinePromise = context->onTailCall().then([](AnyPointer::Pipeline&& pipeline) { + auto tailPipelinePromise = context->onTailCall() + .then([context = context->addRef()](AnyPointer::Pipeline&& pipeline) { return kj::mv(pipeline.hook); }); pipelinePromise = pipelinePromise.exclusiveJoin(kj::mv(tailPipelinePromise)); - auto completionPromise = forked.addBranch().attach(kj::mv(context)); - return VoidPromiseAndPipeline { kj::mv(completionPromise), kj::refcounted(kj::mv(pipelinePromise)) }; } @@ -688,19 +729,30 @@ public: } kj::Maybe getFd() override { - return server->getFd(); + KJ_IF_MAYBE(s, server) { + return s->get()->getFd(); + } else { + return nullptr; + } } private: - kj::Own server; + kj::Maybe> server; _::CapabilityServerSetBase* capServerSet = nullptr; void* ptr = nullptr; kj::Maybe> resolveTask; kj::Maybe> resolved; - void startResolveTask() { - resolveTask = server->shortenPath().map([this](kj::Promise promise) { + kj::Maybe revoker; + // If non-null, all promises must be wrapped in this revoker. + + void startResolveTask(Capability::Server& serverRef) { + resolveTask = serverRef.shortenPath().map([this](kj::Promise promise) { + KJ_IF_MAYBE(r, revoker) { + promise = r->wrap(kj::mv(promise)); + } + return promise.then([this](Capability::Client&& cap) { auto hook = ClientHook::from(kj::mv(cap)); @@ -816,8 +868,24 @@ private: return kj::cp(*e); } - auto result = server->dispatchCall(interfaceId, methodId, + // `server` can't be null here since `brokenException` is null. + auto result = KJ_ASSERT_NONNULL(server)->dispatchCall(interfaceId, methodId, CallContext(context)); + + KJ_IF_MAYBE(r, revoker) { + result.promise = r->wrap(kj::mv(result.promise)); + } + + if (!result.allowCancellation) { + // Make sure this call cannot be canceled by forking the promise and detaching one branch. + auto fork = result.promise.attach(kj::addRef(*this), context.addRef()).fork(); + result.promise = fork.addBranch(); + fork.addBranch().detach([](kj::Exception&&) { + // Exception from canceled call is silently discarded. The caller should have waited for + // it if they cared. + }); + } + if (result.isStreaming) { return result.promise .catch_([this](kj::Exception&& e) { @@ -836,6 +904,19 @@ kj::Own Capability::Client::makeLocalClient(kj::Own(kj::mv(server)); } +kj::Own Capability::Client::makeRevocableLocalClient(Capability::Server& server) { + auto result = kj::refcounted( + kj::Own(&server, kj::NullDisposer::instance), true /* revocable */); + return result; +} +void Capability::Client::revokeLocalClient(ClientHook& hook) { + revokeLocalClient(hook, KJ_EXCEPTION(FAILED, + "capability was revoked (RevocableServer was destroyed)")); +} +void Capability::Client::revokeLocalClient(ClientHook& hook, kj::Exception&& e) { + kj::downcast(hook).revoke(kj::mv(e)); +} + kj::Own newLocalPromiseClient(kj::Promise>&& promise) { return kj::refcounted(kj::mv(promise)); } @@ -906,6 +987,10 @@ public: return kj::cp(exception); } + AnyPointer::Pipeline sendForPipeline() override { + return AnyPointer::Pipeline(kj::refcounted(exception)); + } + const void* getBrand() override { return nullptr; } @@ -923,12 +1008,13 @@ public: resolved(resolved), brand(brand) {} Request newCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) override { + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, + CallHints hints) override { return newBrokenRequest(kj::cp(exception), sizeHint); } VoidPromiseAndPipeline call(uint64_t interfaceId, uint16_t methodId, - kj::Own&& context) override { + kj::Own&& context, CallHints hints) override { return VoidPromiseAndPipeline { kj::cp(exception), kj::refcounted(exception) }; } @@ -993,6 +1079,27 @@ Request newBrokenRequest( return Request(root, kj::mv(hook)); } +kj::Own getDisabledPipeline() { + class DisabledPipelineHook final: public PipelineHook { + public: + kj::Own addRef() override { + return kj::Own(this, kj::NullDisposer::instance); + } + + kj::Own getPipelinedCap(kj::ArrayPtr ops) override { + return newBrokenCap(KJ_EXCEPTION(FAILED, + "caller specified noPromisePipelining hint, but then tried to pipeline")); + } + + kj::Own getPipelinedCap(kj::Array&& ops) override { + return newBrokenCap(KJ_EXCEPTION(FAILED, + "caller specified noPromisePipelining hint, but then tried to pipeline")); + } + }; + static DisabledPipelineHook instance; + return instance.addRef(); +} + // ======================================================================================= ReaderCapabilityTable::ReaderCapabilityTable( diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/capability.h b/libs/EXTERNAL/capnproto/c++/src/capnp/capability.h index 125d2ccf252..1e71840ac5c 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/capability.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/capability.h @@ -101,6 +101,8 @@ class RequestHook; class ResponseHook; class PipelineHook; class ClientHook; +template +class RevocableServer; template class Request: public Params::Builder { @@ -119,6 +121,24 @@ class Request: public Params::Builder { RemotePromise send() KJ_WARN_UNUSED_RESULT; // Send the call and return a promise for the results. + typename Results::Pipeline sendForPipeline(); + // Send the call in pipeline-only mode. The returned object can be used to make pipelined calls, + // but there is no way to wait for the completion of the original call. This allows some + // bookkeeping to be skipped under the hood, saving some time. + // + // Generally, this method should only be used when the caller will immediately make one or more + // pipelined calls on the result, and then throw away the pipeline and all pipelined + // capabilities. Other uses may run into caveats, such as: + // - Normally, calling `whenResolved()` on a pipelined capability would wait for the original RPC + // to complete (and possibly other things, if that RPC itself returned a promise capability), + // but when using `sendPipelineOnly()`, `whenResolved()` may complete immediately, or never, or + // at an arbitrary time. Do not rely on it. + // - Normal path shortening may not work with these capabilities. For exmaple, if the caller + // forwards a pipelined capability back to the callee's vat, calls made by the callee to that + // capability may continue to proxy through the caller. Conversely, if the callee ends up + // returning a capability that points back to the caller's vat, calls on the pipelined + // capability may continue to proxy through the callee. + private: kj::Own hook; @@ -225,9 +245,25 @@ class Capability::Client { // where no calls are being made. There is no reason to wait for this before making calls; if // the capability does not resolve, the call results will propagate the error. + struct CallHints { + bool noPromisePipelining = false; + // Hints that the pipeline part of the VoidPromiseAndPipeline won't be used, so it can be + // a bogus object. + + bool onlyPromisePipeline = false; + // Hints that the promise part of the VoidPromiseAndPipeline won't be used, so it can be a + // bogus promise. + // + // This hint is primarily intended to be passed to `ClientHook::call()`. When using + // `ClientHook::newCall()`, you would instead indicate the hint by calling the `ResponseHook`'s + // `sendForPipeline()` method. The effect of setting `onlyPromisePipeline = true` when invoking + // `ClientHook::newCall()` is unspecified; it might cause the returned `Request` to support + // only pipelining even when `send()` is called, or it might not. + }; + Request typelessRequest( uint64_t interfaceId, uint16_t methodId, - kj::Maybe sizeHint); + kj::Maybe sizeHint, CallHints hints); // Make a request without knowing the types of the params or results. You specify the type ID // and method number manually. @@ -251,15 +287,18 @@ class Capability::Client { template Request newCall(uint64_t interfaceId, uint16_t methodId, - kj::Maybe sizeHint); + kj::Maybe sizeHint, CallHints hints); template StreamingRequest newStreamingCall(uint64_t interfaceId, uint16_t methodId, - kj::Maybe sizeHint); + kj::Maybe sizeHint, CallHints hints); private: kj::Own hook; static kj::Own makeLocalClient(kj::Own&& server); + static kj::Own makeRevocableLocalClient(Capability::Server& server); + static void revokeLocalClient(ClientHook& hook); + static void revokeLocalClient(ClientHook& hook, kj::Exception&& reason); template friend struct _::PointerHelpers; @@ -271,6 +310,8 @@ class Capability::Client { friend struct List; friend class _::CapabilityServerSetBase; friend class ClientHook; + template + friend class RevocableServer; }; // ======================================================================================= @@ -366,6 +407,11 @@ class CallContext: public kj::DisallowConstCopy { // Note: This method has an overload that takes an lvalue reference for convenience. This // overload increments the refcount on the underlying PipelineHook -- it does not keep the // reference. + // + // Note: Capabilities returned by the replacement pipeline MUST either be exactly the same + // capabilities as in the final response, or eventually resolve to exactly the same + // capabilities, where "exactly the same" means the underlying `ClientHook` object is exactly + // the same object by identity. Resolving to some "equivalent" capability is not good enough. template kj::Promise tailCall(Request&& tailRequest); @@ -380,33 +426,20 @@ class CallContext: public kj::DisallowConstCopy { // In general, this should be the last thing a method implementation calls, and the promise // returned from `tailCall()` should then be returned by the method implementation. - void allowCancellation(); - // Indicate that it is OK for the RPC system to discard its Promise for this call's result if - // the caller cancels the call, thereby transitively canceling any asynchronous operations the - // call implementation was performing. This is not done by default because it could represent a - // security risk: applications must be carefully written to ensure that they do not end up in - // a bad state if an operation is canceled at an arbitrary point. However, for long-running - // method calls that hold significant resources, prompt cancellation is often useful. - // - // Keep in mind that asynchronous cancellation cannot occur while the method is synchronously - // executing on a local thread. The method must perform an asynchronous operation or call - // `EventLoop::current().evalLater()` to yield control. - // - // Note: You might think that we should offer `onCancel()` and/or `isCanceled()` methods that - // provide notification when the caller cancels the request without forcefully killing off the - // promise chain. Unfortunately, this composes poorly with promise forking: the canceled - // path may be just one branch of a fork of the result promise. The other branches still want - // the call to continue. Promise forking is used within the Cap'n Proto implementation -- in - // particular each pipelined call forks the result promise. So, if a caller made a pipelined - // call and then dropped the original object, the call should not be canceled, but it would be - // excessively complicated for the framework to avoid notififying of cancellation as long as - // pipelined calls still exist. + void allowCancellation() + KJ_UNAVAILABLE( + "As of Cap'n Proto 1.0, allowCancellation must be applied statically using an " + "annotation in the schema. See annotations defined in /capnp/c++.capnp. For " + "DynamicCapability::Server, use the constructor option (the annotation does not apply " + "to DynamicCapability). This change was made to gain a significant performance boost -- " + "dynamically allowing cancellation required excessive bookkeeping."); private: CallContextHook* hook; friend class Capability::Server; friend struct DynamicCapability; + friend class CallContextHook; }; template @@ -424,13 +457,20 @@ class StreamingCallContext: public kj::DisallowConstCopy { // - It wouldn't be particularly useful since streaming calls don't return anything, and they // already compensate for latency. - void allowCancellation(); + void allowCancellation() + KJ_UNAVAILABLE( + "As of Cap'n Proto 1.0, allowCancellation must be applied statically using an " + "annotation in the schema. See annotations defined in /capnp/c++.capnp. For " + "DynamicCapability::Server, use the constructor option (the annotation does not apply " + "to DynamicCapability). This change was made to gain a significant performance boost -- " + "dynamically allowing cancellation required excessive bookkeeping."); private: CallContextHook* hook; friend class Capability::Server; friend struct DynamicCapability; + friend class CallContextHook; }; class Capability::Server { @@ -449,13 +489,20 @@ class Capability::Server { // If true, this method was declared as `-> stream;`. No other calls should be permitted until // this call finishes, and if this call throws an exception, all future calls will throw the // same exception. + + bool allowCancellation = false; + // If true, the call can be canceled normally. If false, the immediate caller is responsible + // for ensuring that cancellation is prevented and that `context` remains valid until the + // call completes normally. + // + // See the `allowCancellation` annotation defined in `c++.capnp`. }; virtual DispatchCallResult dispatchCall(uint64_t interfaceId, uint16_t methodId, CallContext context) = 0; // Call the given method. `params` is the input struct, and should be released as soon as it - // is no longer needed. `context` may be used to allocate the output struct and deal with - // cancellation. + // is no longer needed. `context` may be used to allocate the output struct and other call + // logistics. virtual kj::Maybe getFd() { return nullptr; } // If this capability is backed by a file descriptor that is safe to directly expose to clients, @@ -491,6 +538,7 @@ class Capability::Server { // the server's constructor.) // - The capability client pointing at this object has been destroyed. (This is always the case // in the server's destructor.) + // - The capability client pointing at this object has been revoked using RevocableServer. // - Multiple capability clients have been created around the same server (possible if the server // is refcounted, which is not recommended since the client itself provides refcounting). @@ -512,6 +560,39 @@ class Capability::Server { friend class LocalClient; }; +template +class RevocableServer { + // Allows you to create a capability client pointing to a capability server without taking + // ownership of the server. When `RevocableServer` is destroyed, all clients created through it + // will become broken. All outstanding RPCs via those clients will be canceled and all future + // RPCs will immediately throw. Hence, once the `RevocableServer` is destroyed, it is safe + // to destroy the server object it referenced. + // + // This is particularly useful when you want to create a capability server that points to an + // object that you do not own, and thus cannot keep alive beyond some defined lifetime. Since + // you cannot force the client to respect lifetime rules, you should use a RevocableServer to + // revoke access before the lifetime ends. + // + // The RevocableServer object can be moved (as long as the server outlives it). + +public: + RevocableServer(typename T::Server& server); + RevocableServer(RevocableServer&&) = default; + RevocableServer& operator=(RevocableServer&&) = default; + ~RevocableServer() noexcept(false); + KJ_DISALLOW_COPY(RevocableServer); + + typename T::Client getClient(); + + void revoke(); + void revoke(kj::Exception&& reason); + // Revokes the capability immediately, rather than waiting for the destructor. This can also + // be used to specify a custom exception to use when revoking. + +private: + kj::Own hook; +}; + // ======================================================================================= template @@ -558,7 +639,7 @@ class ReaderCapabilityTable: private _::CapTableReader { public: explicit ReaderCapabilityTable(kj::Array>> table); - KJ_DISALLOW_COPY(ReaderCapabilityTable); + KJ_DISALLOW_COPY_AND_MOVE(ReaderCapabilityTable); template T imbue(T reader); @@ -579,7 +660,7 @@ class BuilderCapabilityTable: private _::CapTableBuilder { public: BuilderCapabilityTable(); - KJ_DISALLOW_COPY(BuilderCapabilityTable); + KJ_DISALLOW_COPY_AND_MOVE(BuilderCapabilityTable); inline kj::ArrayPtr>> getTable() { return table; } @@ -624,7 +705,7 @@ class CapabilityServerSet: private _::CapabilityServerSetBase { public: CapabilityServerSet() = default; - KJ_DISALLOW_COPY(CapabilityServerSet); + KJ_DISALLOW_COPY_AND_MOVE(CapabilityServerSet); typename T::Client add(kj::Own&& server); // Create a new capability Client for the given Server and also add this server to the set. @@ -651,6 +732,9 @@ class RequestHook { virtual kj::Promise sendStreaming() = 0; // Send a streaming call. + virtual AnyPointer::Pipeline sendForPipeline() = 0; + // Send a call for pipelining purposes only. + virtual const void* getBrand() = 0; // Returns a void* that identifies who made this request. This can be used by an RPC adapter to // discover when tail call is going to be sent over its own connection and therefore can be @@ -684,8 +768,11 @@ class ClientHook { public: ClientHook(); + using CallHints = Capability::Client::CallHints; + virtual Request newCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) = 0; + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, + CallHints hints) = 0; // Start a new call, allowing the client to allocate request/response objects as it sees fit. // This version is used when calls are made from application code in the local process. @@ -695,17 +782,13 @@ class ClientHook { }; virtual VoidPromiseAndPipeline call(uint64_t interfaceId, uint16_t methodId, - kj::Own&& context) = 0; + kj::Own&& context, CallHints hints) = 0; // Call the object, but the caller controls allocation of the request/response objects. If the // callee insists on allocating these objects itself, it must make a copy. This version is used // when calls come in over the network via an RPC system. Note that even if the returned // `Promise` is discarded, the call may continue executing if any pipelined calls are // waiting for it. // - // Since the caller of this method chooses the CallContext implementation, it is the caller's - // responsibility to ensure that the returned promise is not canceled unless allowed via - // the context's `allowCancellation()`. - // // The call must not begin synchronously; the callee must arrange for the call to begin in a // later turn of the event loop. Otherwise, application code may call back and affect the // callee's state in an unexpected way. @@ -715,12 +798,22 @@ class ClientHook { // of the capability. The caller may permanently replace this client with the resolved one if // desired. Returns null if the client isn't a promise or hasn't resolved yet -- use // `whenMoreResolved()` to distinguish between them. + // + // Once a particular ClientHook's `getResolved()` returns non-null, it must permanently return + // exactly the same resolution. This is why `getResolved()` returns a reference -- it is assumed + // this object must have a strong reference to the resolution which it intends to keep + // permanently, therefore the returned reference will live at least as long as this `ClientHook`. + // This "only one resolution" policy is necessary for the RPC system to implement embargoes + // properly. virtual kj::Maybe>> whenMoreResolved() = 0; // If this client is a settled reference (not a promise), return nullptr. Otherwise, return a // promise that eventually resolves to a new client that is closer to being the final, settled // client (i.e. the value eventually returned by `getResolved()`). Calling this repeatedly // should eventually produce a settled client. + // + // Once the promise resolves, `getResolved()` must return exactly the same `ClientHook` as the + // one this Promise resolved to. kj::Promise whenResolved(); // Repeatedly calls whenMoreResolved() until it returns nullptr. @@ -751,6 +844,12 @@ class ClientHook { static kj::Own from(Capability::Client client) { return kj::mv(client.hook); } }; +class RevocableClientHook: public ClientHook { +public: + virtual void revoke() = 0; + virtual void revoke(kj::Exception&& reason) = 0; +}; + class CallContextHook { // Hook interface implemented by RPC system to manage a call on the server side. See // CallContext. @@ -760,7 +859,6 @@ class CallContextHook { virtual void releaseParams() = 0; virtual AnyPointer::Builder getResults(kj::Maybe sizeHint) = 0; virtual kj::Promise tailCall(kj::Own&& request) = 0; - virtual void allowCancellation() = 0; virtual void setPipeline(kj::Own&& pipeline) = 0; @@ -774,6 +872,11 @@ class CallContextHook { // promise fulfiller for onTailCall() with the returned pipeline. virtual kj::Own addRef() = 0; + + template + static CallContextHook& from(CallContext& context) { return *context.hook; } + template + static CallContextHook& from(StreamingCallContext& context) { return *context.hook; } }; kj::Own newLocalPromiseClient(kj::Promise>&& promise); @@ -796,6 +899,11 @@ Request newBrokenRequest( kj::Exception&& reason, kj::Maybe sizeHint); // Helper function that creates a Request object that simply throws exceptions when sent. +kj::Own getDisabledPipeline(); +// Gets a PipelineHook appropriate to use when CallHints::noPromisePipelining is true. This will +// throw from all calls. This does not actually allocate the object; a static global object is +// returned with a null disposer. + // ======================================================================================= // Extend PointerHelpers for interfaces @@ -964,6 +1072,13 @@ RemotePromise Request::send() { return RemotePromise(kj::mv(typedPromise), kj::mv(typedPipeline)); } +template +typename Results::Pipeline Request::sendForPipeline() { + auto typelessPipeline = hook->sendForPipeline(); + hook = nullptr; // prevent reuse + return typename Results::Pipeline(kj::mv(typelessPipeline)); +} + template kj::Promise StreamingRequest::send() { auto promise = hook->sendStreaming(); @@ -989,19 +1104,19 @@ inline typename T::Client Capability::Client::castAs() { } inline Request Capability::Client::typelessRequest( uint64_t interfaceId, uint16_t methodId, - kj::Maybe sizeHint) { - return newCall(interfaceId, methodId, sizeHint); + kj::Maybe sizeHint, CallHints hints) { + return newCall(interfaceId, methodId, sizeHint, hints); } template inline Request Capability::Client::newCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) { - auto typeless = hook->newCall(interfaceId, methodId, sizeHint); + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, CallHints hints) { + auto typeless = hook->newCall(interfaceId, methodId, sizeHint, hints); return Request(typeless.template getAs(), kj::mv(typeless.hook)); } template inline StreamingRequest Capability::Client::newStreamingCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) { - auto typeless = hook->newCall(interfaceId, methodId, sizeHint); + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, CallHints hints) { + auto typeless = hook->newCall(interfaceId, methodId, sizeHint, hints); return StreamingRequest(typeless.template getAs(), kj::mv(typeless.hook)); } @@ -1064,14 +1179,6 @@ inline kj::Promise CallContext::tailCall( Request&& tailRequest) { return hook->tailCall(kj::mv(tailRequest.hook)); } -template -inline void CallContext::allowCancellation() { - hook->allowCancellation(); -} -template -inline void StreamingCallContext::allowCancellation() { - hook->allowCancellation(); -} template CallContext Capability::Server::internalGetTypedContext( @@ -1089,6 +1196,31 @@ Capability::Client Capability::Server::thisCap() { return Client(thisHook->addRef()); } +template +RevocableServer::RevocableServer(typename T::Server& server) + : hook(Capability::Client::makeRevocableLocalClient(server)) {} +template +RevocableServer::~RevocableServer() noexcept(false) { + // Check if moved away. + if (hook.get() != nullptr) { + Capability::Client::revokeLocalClient(*hook); + } +} + +template +typename T::Client RevocableServer::getClient() { + return typename T::Client(hook->addRef()); +} + +template +void RevocableServer::revoke() { + Capability::Client::revokeLocalClient(*hook); +} +template +void RevocableServer::revoke(kj::Exception&& exception) { + Capability::Client::revokeLocalClient(*hook, kj::mv(exception)); +} + namespace _ { // private struct PipelineBuilderPair { diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/cc_capnp_library.bzl b/libs/EXTERNAL/capnproto/c++/src/capnp/cc_capnp_library.bzl new file mode 100644 index 00000000000..9e4acd35b9b --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/cc_capnp_library.bzl @@ -0,0 +1,128 @@ +"""Bazel rule to compile .capnp files into c++.""" + +capnp_provider = provider("Capnproto Provider", fields = { + "includes": "includes for this target (transitive)", + "inputs": "src + data for the target", + "src_prefix": "src_prefix of the target", +}) + +def _workspace_path(label, path): + if label.workspace_root == "": + return path + return label.workspace_root + "/" + path + +def _capnp_gen_impl(ctx): + label = ctx.label + src_prefix = _workspace_path(label, ctx.attr.src_prefix) if ctx.attr.src_prefix != "" else "" + includes = [] + + inputs = ctx.files.srcs + ctx.files.data + for dep_target in ctx.attr.deps: + includes += dep_target[capnp_provider].includes + inputs += dep_target[capnp_provider].inputs + + if src_prefix != "": + includes.append(src_prefix) + + system_include = ctx.files._capnp_system[0].dirname.removesuffix("/capnp") + + gen_dir = ctx.var["GENDIR"] + out_dir = gen_dir + if src_prefix != "": + out_dir = out_dir + "/" + src_prefix + + cc_out = "-o%s:%s" % (ctx.executable._capnpc_cxx.path, out_dir) + args = ctx.actions.args() + args.add_all(["compile", "--verbose", cc_out]) + args.add_all(["-I" + inc for inc in includes]) + args.add_all(["-I", system_include]) + + if src_prefix == "": + # guess src_prefix for generated files + for src in ctx.files.srcs: + if src.path.startswith(gen_dir): + src_prefix = gen_dir + break + + if src_prefix != "": + args.add_all(["--src-prefix", src_prefix]) + + args.add_all([s for s in ctx.files.srcs]) + + ctx.actions.run( + inputs = inputs + ctx.files._capnpc_cxx + ctx.files._capnpc_capnp + ctx.files._capnp_system, + outputs = ctx.outputs.outs, + executable = ctx.executable._capnpc, + arguments = [args], + mnemonic = "GenCapnp", + ) + + return [ + capnp_provider( + includes = includes, + inputs = inputs, + src_prefix = src_prefix, + ), + ] + +_capnp_gen = rule( + attrs = { + "srcs": attr.label_list(allow_files = True), + "deps": attr.label_list(providers = [capnp_provider]), + "data": attr.label_list(allow_files = True), + "outs": attr.output_list(), + "src_prefix": attr.string(), + "_capnpc": attr.label(executable = True, allow_single_file = True, cfg = "exec", default = "@capnp-cpp//src/capnp:capnp_tool"), + "_capnpc_cxx": attr.label(executable = True, allow_single_file = True, cfg = "exec", default = "@capnp-cpp//src/capnp:capnpc-c++"), + "_capnpc_capnp": attr.label(executable = True, allow_single_file = True, cfg = "exec", default = "@capnp-cpp//src/capnp:capnpc-capnp"), + "_capnp_system": attr.label(default = "@capnp-cpp//src/capnp:capnp_system_library"), + }, + output_to_genfiles = True, + implementation = _capnp_gen_impl, +) + +def cc_capnp_library( + name, + srcs = [], + data = [], + deps = [], + src_prefix = "", + visibility = None, + target_compatible_with = None, + **kwargs): + """Bazel rule to create a C++ capnproto library from capnp source files + + Args: + name: library name + srcs: list of files to compile + data: additional files to provide to the compiler - data files and includes that need not to + be compiled + deps: other cc_capnp_library rules to depend on + src_prefix: src_prefix for capnp compiler to the source root + visibility: rule visibility + target_compatible_with: target compatibility + **kwargs: rest of the arguments to cc_library rule + """ + + hdrs = [s + ".h" for s in srcs] + srcs_cpp = [s + ".c++" for s in srcs] + + _capnp_gen( + name = name + "_gen", + srcs = srcs, + deps = [s + "_gen" for s in deps], + data = data, + outs = hdrs + srcs_cpp, + src_prefix = src_prefix, + visibility = visibility, + target_compatible_with = target_compatible_with, + ) + native.cc_library( + name = name, + srcs = srcs_cpp, + hdrs = hdrs, + deps = deps + ["@capnp-cpp//src/capnp:capnp_runtime"], + visibility = visibility, + target_compatible_with = target_compatible_with, + **kwargs + ) diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/common.h b/libs/EXTERNAL/capnproto/c++/src/capnp/common.h index aece4e51808..77f0cb58ef8 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/common.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/common.h @@ -46,9 +46,9 @@ CAPNP_BEGIN_HEADER namespace capnp { -#define CAPNP_VERSION_MAJOR 0 -#define CAPNP_VERSION_MINOR 9 -#define CAPNP_VERSION_MICRO 1 +#define CAPNP_VERSION_MAJOR 1 +#define CAPNP_VERSION_MINOR 0 +#define CAPNP_VERSION_MICRO 2 #define CAPNP_VERSION \ (CAPNP_VERSION_MAJOR * 1000000 + CAPNP_VERSION_MINOR * 1000 + CAPNP_VERSION_MICRO) @@ -361,7 +361,7 @@ class word { // the copy constructor. We don't want to disable the warning because it's a useful warning and // we'd have to disable it for all applications that include this header. Instead we allow `word` // to be copyable on GCC. - KJ_DISALLOW_COPY(word); + KJ_DISALLOW_COPY_AND_MOVE(word); #endif }; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/BUILD.bazel b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/BUILD.bazel new file mode 100644 index 00000000000..fcaecfa3fa1 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/BUILD.bazel @@ -0,0 +1,98 @@ +load("@capnp-cpp//src/capnp:cc_capnp_library.bzl", "cc_capnp_library") + +exports_files([ + "json.capnp", +]) + +# because git contains generated artifacts (which are used to bootstrap the compiler) +# we can't have cc_capnp_library for json.capnp. Expose it as cc library and a file. +cc_library( + name = "json", + srcs = [ + "json.c++", + "json.capnp.c++", + ], + hdrs = [ + "json.capnp.h", + "json.h", + ], + include_prefix = "capnp/compat", + visibility = ["//visibility:public"], + deps = [ + "//src/capnp", + ], +) + +cc_capnp_library( + name = "http-over-capnp_capnp", + srcs = [ + "byte-stream.capnp", + "http-over-capnp.capnp", + ], + include_prefix = "capnp/compat", + src_prefix = "src", + visibility = ["//visibility:public"], +) + +cc_library( + name = "http-over-capnp", + srcs = [ + "byte-stream.c++", + "http-over-capnp.c++", + ], + hdrs = [ + "byte-stream.h", + "http-over-capnp.h", + ], + include_prefix = "capnp/compat", + visibility = ["//visibility:public"], + deps = [ + ":http-over-capnp_capnp", + "//src/kj/compat:kj-http", + ], +) + +cc_library( + name = "websocket-rpc", + srcs = [ + "websocket-rpc.c++", + ], + hdrs = [ + "websocket-rpc.h", + ], + include_prefix = "capnp/compat", + visibility = ["//visibility:public"], + deps = [ + "//src/capnp", + "//src/kj/compat:kj-http", + ], +) + +[cc_test( + name = f.removesuffix(".c++"), + srcs = [f], + deps = [ + ":websocket-rpc", + ":http-over-capnp", + "//src/capnp:capnp-test" + ], +) for f in [ + "byte-stream-test.c++", + "http-over-capnp-test.c++", + "websocket-rpc-test.c++", +]] + +cc_library( + name = "http-over-capnp-test-as-header", + hdrs = ["http-over-capnp-test.c++"], +) + +cc_test( + name = "http-over-capnp-old-test", + srcs = ["http-over-capnp-old-test.c++"], + deps = [ + ":http-over-capnp-test-as-header", + ":http-over-capnp", + "//src/capnp:capnp-test" + ], +) diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream-test.c++ index 297165a63cf..49fede1fec0 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream-test.c++ @@ -33,7 +33,7 @@ kj::Promise expectRead(kj::AsyncInputStream& in, kj::StringPtr expected) { auto buffer = kj::heapArray(expected.size()); auto promise = in.tryRead(buffer.begin(), 1, buffer.size()); - return promise.then(kj::mvCapture(buffer, [&in,expected](kj::Array buffer, size_t amount) { + return promise.then([&in,expected,buffer=kj::mv(buffer)](size_t amount) { if (amount == 0) { KJ_FAIL_ASSERT("expected data never sent", expected); } @@ -44,7 +44,7 @@ kj::Promise expectRead(kj::AsyncInputStream& in, kj::StringPtr expected) { } return expectRead(in, expected.slice(amount)); - })); + }); } kj::String makeString(size_t size) { @@ -307,7 +307,7 @@ KJ_TEST("KJ -> ByteStream RPC -> KJ pipe -> ByteStream RPC -> KJ with shortening rpc::twoparty::Side::CLIENT); capnp::TwoPartyClient server(*rpcConnection.ends[1], serverFactory.kjToCapnp(kj::mv(middlePipe.out)), - rpc::twoparty::Side::CLIENT); + rpc::twoparty::Side::SERVER); auto backWrapped = serverFactory.capnpToKj(server.bootstrap().castAs()); auto midPumpPormise = middlePipe.in->pumpTo(*backWrapped, 3); @@ -377,7 +377,7 @@ KJ_TEST("KJ -> ByteStream RPC -> KJ pipe -> ByteStream RPC -> KJ with concurrent rpc::twoparty::Side::CLIENT); capnp::TwoPartyClient server(*rpcConnection.ends[1], serverFactory.kjToCapnp(kj::mv(middlePipe.out)), - rpc::twoparty::Side::CLIENT); + rpc::twoparty::Side::SERVER); auto backWrapped = serverFactory.capnpToKj(server.bootstrap().castAs()); auto midPumpPormise = middlePipe.in->pumpTo(*backWrapped); @@ -448,7 +448,7 @@ KJ_TEST("KJ -> KJ pipe -> ByteStream RPC -> KJ pipe -> ByteStream RPC -> KJ with rpc::twoparty::Side::CLIENT); capnp::TwoPartyClient server(*rpcConnection.ends[1], serverFactory.kjToCapnp(kj::mv(middlePipe.out)), - rpc::twoparty::Side::CLIENT); + rpc::twoparty::Side::SERVER); auto backWrapped = serverFactory.capnpToKj(server.bootstrap().castAs()); auto midPumpPormise = middlePipe.in->pumpTo(*backWrapped); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.c++ index c7b709dc54f..2602b4a9c52 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.c++ @@ -59,6 +59,9 @@ public: // the same ByteStreamFactory. Since destruction of a KJ stream signals EOF, we need to propagate // that by destroying our underlying stream. // TODO(cleanup): When KJ streams evolve an end() method, this can go away. + + virtual kj::Promise directExplicitEnd() = 0; + // Like directEnd() but used in cases where an explicit end() call actually was made. }; class ByteStreamFactory::SubstreamImpl final: public StreamServerBase { @@ -69,9 +72,10 @@ public: kj::AsyncOutputStream& stream, capnp::ByteStream::SubstreamCallback::Client callback, uint64_t limit, + kj::Maybe> tlsStarter, kj::PromiseFulfillerPair paf = kj::newPromiseAndFulfiller()) : factory(factory), - state(Streaming {parent, kj::mv(ownParent), stream, kj::mv(callback)}), + state(Streaming {parent, kj::mv(ownParent), stream, kj::mv(callback), kj::mv(tlsStarter)}), limit(limit), resolveFulfiller(kj::mv(paf.fulfiller)), resolvePromise(paf.promise.fork()) {} @@ -133,6 +137,32 @@ public: } } + kj::Promise directExplicitEnd() override { + KJ_SWITCH_ONEOF(state) { + KJ_CASE_ONEOF(redirected, Redirected) { + // Ugh I guess we need to send a real end() request here. + return redirected.replacement.endRequest(MessageSize {2, 0}).send().ignoreResult(); + } + KJ_CASE_ONEOF(e, Ended) { + // whatever + return kj::READY_NOW; + } + KJ_CASE_ONEOF(b, Borrowed) { + // ... whatever. + return kj::READY_NOW; + } + KJ_CASE_ONEOF(streaming, Streaming) { + auto req = streaming.callback.endedRequest(MessageSize {4, 0}); + req.setByteCount(completed); + auto promise = req.send().ignoreResult(); + streaming.parent.returnStream(completed); + state = Ended(); + return promise; + } + } + KJ_UNREACHABLE; + } + // --------------------------------------------------------------------------- // implements ByteStream::Server RPC interface @@ -200,6 +230,10 @@ public: KJ_FAIL_REQUIRE("can't call other methods while stream is borrowed"); } KJ_CASE_ONEOF(streaming, Streaming) { + // Revoke the TLS starter when stream is ended. This will ensure any startTls calls + // cannot be falsely invoked after the stream is destroyed. + auto drop = kj::mv(streaming.tlsStarter); + auto req = streaming.callback.endedRequest(MessageSize {4, 0}); req.setByteCount(completed); auto result = req.send().ignoreResult(); @@ -211,6 +245,10 @@ public: KJ_UNREACHABLE; } + kj::Promise startTls(StartTlsContext context) override { + KJ_UNIMPLEMENTED("A substream does not support TLS initiation"); + } + kj::Promise getSubstream(GetSubstreamContext context) override { KJ_SWITCH_ONEOF(state) { KJ_CASE_ONEOF(redirected, Redirected) { @@ -233,7 +271,8 @@ public: context.releaseParams(); auto results = context.getResults(MessageSize { 2, 1 }); results.setSubstream(factory.streamSet.add(kj::heap( - factory, *this, thisCap(), streaming.stream, kj::mv(callback), kj::mv(limit)))); + factory, *this, thisCap(), streaming.stream, kj::mv(callback), kj::mv(limit), + kj::mv(streaming.tlsStarter)))); state = Borrowed { kj::mv(streaming) }; return kj::READY_NOW; } @@ -249,6 +288,7 @@ private: capnp::ByteStream::Client ownParent; kj::AsyncOutputStream& stream; capnp::ByteStream::SubstreamCallback::Client callback; + kj::Maybe> tlsStarter; }; struct Borrowed { Streaming originalState; @@ -295,6 +335,15 @@ public: state.get>()->startProbing(); } + CapnpToKjStreamAdapter(ByteStreamFactory& factory, + kj::Own inner, + kj::Maybe> starter) + : factory(factory), + tlsStarter(kj::mv(starter)), + state(kj::heap(*this, kj::mv(inner))) { + state.get>()->startProbing(); + } + CapnpToKjStreamAdapter(ByteStreamFactory& factory, kj::Own pathProber) : factory(factory), @@ -360,6 +409,32 @@ public: } } + kj::Promise directExplicitEnd() override { + KJ_SWITCH_ONEOF(state) { + KJ_CASE_ONEOF(prober, kj::Own) { + state = Ended(); + return kj::READY_NOW; + } + KJ_CASE_ONEOF(kjStream, kj::Own) { + state = Ended(); + return kj::READY_NOW; + } + KJ_CASE_ONEOF(capnpStream, capnp::ByteStream::Client) { + // Ugh I guess we need to send a real end() request here. + return capnpStream.endRequest(MessageSize {2, 0}).send().ignoreResult(); + } + KJ_CASE_ONEOF(b, Borrowed) { + // Fine, ignore. + return kj::READY_NOW; + } + KJ_CASE_ONEOF(e, Ended) { + // Fine, ignore. + return kj::READY_NOW; + } + } + KJ_UNREACHABLE; + } + // --------------------------------------------------------------------------- // PathProber @@ -418,7 +493,7 @@ public: // We already completed a path-shortening. Probably SubstreamCallbackImpl::ended() was // eventually called, meaning the substream was ended without redirecting back to us. So, // we're at EOF. - return uint64_t(0); + return kj::constPromise(); } } @@ -430,7 +505,7 @@ public: // works because pumps do not propagate EOF -- the destination can still receive further // writes and pumps. Basically our probing pump becomes a no-op, and then we revert to having // each write() RPC directly call write() on the inner stream. - return size_t(0); + return kj::constPromise(); } kj::Promise pumpTo(kj::AsyncOutputStream& output, uint64_t amount) override { @@ -442,7 +517,7 @@ public: return kj::mv(*promise); } else { // There is no shorter path. As with tryRead(), we pretend we get immediate EOF. - return uint64_t(0); + return kj::constPromise(); } } @@ -552,6 +627,10 @@ protected: } kj::Promise end(EndContext context) override { + // Revoke the TLS starter when stream is ended. This will ensure any startTls calls + // cannot be falsely invoked after the stream is destroyed. + auto drop = kj::mv(tlsStarter); + KJ_SWITCH_ONEOF(state) { KJ_CASE_ONEOF(prober, kj::Own) { return prober->whenReady().then([this, context]() mutable { @@ -582,6 +661,30 @@ protected: KJ_UNREACHABLE; } + kj::Promise startTls(StartTlsContext context) override { + auto params = context.getParams(); + KJ_IF_MAYBE(s, tlsStarter) { + KJ_SWITCH_ONEOF(state) { + KJ_CASE_ONEOF(prober, kj::Own) { + return KJ_ASSERT_NONNULL(*s->get())(params.getExpectedServerHostname()); + } + KJ_CASE_ONEOF(kjStream, kj::Own) { + return KJ_ASSERT_NONNULL(*s->get())(params.getExpectedServerHostname()); + } + KJ_CASE_ONEOF(capnpStream, capnp::ByteStream::Client) { + return KJ_ASSERT_NONNULL(*s->get())(params.getExpectedServerHostname()); + } + KJ_CASE_ONEOF(e, Ended) { + KJ_FAIL_REQUIRE("cannot call startTls on a bytestream that was ended"); + } + KJ_CASE_ONEOF(b, Borrowed) { + KJ_FAIL_REQUIRE("can't call startTls while stream is borrowed"); + } + } + } + KJ_UNREACHABLE; + } + kj::Promise getSubstream(GetSubstreamContext context) override { KJ_SWITCH_ONEOF(state) { KJ_CASE_ONEOF(prober, kj::Own) { @@ -598,7 +701,8 @@ protected: auto results = context.initResults(MessageSize {2, 1}); results.setSubstream(factory.streamSet.add(kj::heap( - factory, *this, thisCap(), *kjStream, kj::mv(callback), kj::mv(limit)))); + factory, *this, thisCap(), *kjStream, kj::mv(callback), kj::mv(limit), + kj::mv(tlsStarter)))); state = Borrowed { kj::mv(kjStream) }; return kj::READY_NOW; } @@ -623,6 +727,7 @@ protected: private: ByteStreamFactory& factory; + kj::Maybe> tlsStarter; struct Borrowed { kj::Own stream; }; struct Ended {}; @@ -690,22 +795,36 @@ private: // ======================================================================================= -class ByteStreamFactory::KjToCapnpStreamAdapter final: public kj::AsyncOutputStream { +class ByteStreamFactory::KjToCapnpStreamAdapter final: public ExplicitEndOutputStream { public: - KjToCapnpStreamAdapter(ByteStreamFactory& factory, capnp::ByteStream::Client innerParam) + KjToCapnpStreamAdapter(ByteStreamFactory& factory, capnp::ByteStream::Client innerParam, + bool explicitEnd) : factory(factory), inner(kj::mv(innerParam)), - findShorterPathTask(findShorterPath(inner).fork()) {} + findShorterPathTask(findShorterPath(inner).fork()), + explicitEnd(explicitEnd) {} ~KjToCapnpStreamAdapter() noexcept(false) { - // HACK: KJ streams are implicitly ended on destruction, but the RPC stream needs a call. We - // use a detached promise for now, which is probably OK since capabilities are refcounted and - // asynchronously destroyed anyway. - // TODO(cleanup): Fix this when KJ streads add an explicit end() method. + if (!explicitEnd) { + // HACK: KJ streams are implicitly ended on destruction, but the RPC stream needs a call. We + // use a detached promise for now, which is probably OK since capabilities are refcounted and + // asynchronously destroyed anyway. + // TODO(cleanup): Fix this when KJ streads add an explicit end() method. + KJ_IF_MAYBE(o, optimized) { + o->directEnd(); + } else { + inner.endRequest(MessageSize {2, 0}).send().detach([](kj::Exception&&){}); + } + } + } + + kj::Promise end() override { + KJ_REQUIRE(explicitEnd, "not expecting explicit end"); + KJ_IF_MAYBE(o, optimized) { - o->directEnd(); + return o->directExplicitEnd(); } else { - inner.endRequest(MessageSize {2, 0}).send().detach([](kj::Exception&&){}); + return inner.endRequest(MessageSize {2, 0}).send().ignoreResult(); } } @@ -832,6 +951,9 @@ private: // possible. // 2. Implements whenWriteDisconnected(). + bool explicitEnd; + // Did the creator promise to explicitly call end()? + kj::Promise findShorterPath(capnp::ByteStream::Client& capnpClient) { // If the capnp stream turns out to resolve back to this process, shorten the path. // Also, implement whenWriteDisconnected() based on this. @@ -938,7 +1060,7 @@ private: } } KJ_CASE_ONEOF(capnpStream, capnp::ByteStream::Client*) { - // Pumping from some other kind of steram. Optimize the pump by reading from the input + // Pumping from some other kind of stream. Optimize the pump by reading from the input // directly into outgoing RPC messages. size_t size = kj::min(remaining, 8192); auto req = capnpStream->writeRequest(MessageSize { 8 + size / sizeof(word) }); @@ -1022,8 +1144,19 @@ capnp::ByteStream::Client ByteStreamFactory::kjToCapnp(kj::Own(*this, kj::mv(kjStream))); } +capnp::ByteStream::Client ByteStreamFactory::kjToCapnp( + kj::Own kjStream, kj::Maybe> tlsStarter) { + return streamSet.add( + kj::heap(*this, kj::mv(kjStream), kj::mv(tlsStarter))); +} + kj::Own ByteStreamFactory::capnpToKj(capnp::ByteStream::Client capnpStream) { - return kj::heap(*this, kj::mv(capnpStream)); + return kj::heap(*this, kj::mv(capnpStream), false); +} + +kj::Own ByteStreamFactory::capnpToKjExplicitEnd( + capnp::ByteStream::Client capnpStream) { + return kj::heap(*this, kj::mv(capnpStream), true); } } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.capnp b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.capnp index b98d85e9fb2..3298c06f485 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.capnp +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.capnp @@ -1,6 +1,8 @@ @0x8f5d14e1c273738d; -$import "/capnp/c++.capnp".namespace("capnp"); +using Cxx = import "/capnp/c++.capnp"; +$Cxx.namespace("capnp"); +$Cxx.allowCancellation; interface ByteStream { write @0 (bytes :Data) -> stream; @@ -23,6 +25,10 @@ interface ByteStream { # While a substream is active, it is an error to call write() on the original stream. Doing so # may throw an exception or may arbitrarily interleave bytes with the substream's writes. + startTls @3 (expectedServerHostname :Text) -> stream; + # Client calls this method when it wants to initiate TLS. This ByteStream is not terminated, + # the caller should reuse it. + interface SubstreamCallback { ended @0 (byteCount :UInt64); # `end()` was called on the substream after writing `byteCount` bytes. The `end()` call was diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.h index 545e6e592b7..b34aa3f521a 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/byte-stream.h @@ -24,17 +24,43 @@ #include #include +#include + +CAPNP_BEGIN_HEADER namespace capnp { +class ExplicitEndOutputStream: public kj::AsyncOutputStream { + // HACK: KJ's AsyncOutputStream has a known serious design flaw in that EOF is signaled by + // destroying the stream object rather than by calling an explicit `end()` method. This causes + // some serious problems when signaling EOF requires doing additional I/O, such as when + // wrapping a capnp ByteStream where `end()` is an RPC call. + // + // When it really must, the ByteStream implementation will honor the KJ convention by starting + // the RPC in its destructor and detach()ing the promise. But, this has lots of negative side + // effects, especially in the case where the stream is really meant to be aborted abruptly. + // + // In lieu of an actual deep refactoring of KJ, ByteStreamFactory allows its caller to + // explicily specify when it is able to promise that it will make an explicit `end()` call. + // capnpToKjExplicitEnd() returns an ExplicitEndOutputStream, which expect to receive an + // `end()` call on clean EOF, and treats destruction without `end()` as an abort. This is used + // in particular within http-over-capnp to improve behavior somewhat. +public: + virtual kj::Promise end() = 0; +}; + class ByteStreamFactory { // In order to allow path-shortening through KJ, a common factory must be used for converting // between RPC ByteStreams and KJ streams. public: capnp::ByteStream::Client kjToCapnp(kj::Own kjStream); + capnp::ByteStream::Client kjToCapnp( + kj::Own kjStream, kj::Maybe> tlsStarter); kj::Own capnpToKj(capnp::ByteStream::Client capnpStream); + kj::Own capnpToKjExplicitEnd(capnp::ByteStream::Client capnpStream); + private: CapabilityServerSet streamSet; @@ -45,3 +71,5 @@ class ByteStreamFactory { }; } // namespace capnp + +CAPNP_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp-old-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp-old-test.c++ new file mode 100644 index 00000000000..9a5aea9b135 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp-old-test.c++ @@ -0,0 +1,2 @@ +#define TEST_PEER_OPTIMIZATION_LEVEL HttpOverCapnpFactory::LEVEL_1 +#include "http-over-capnp-test.c++" diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp-perf-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp-perf-test.c++ new file mode 100644 index 00000000000..20ba63840b6 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp-perf-test.c++ @@ -0,0 +1,446 @@ +// Copyright (c) 2022 Cloudflare, Inc. and contributors +// Licensed under the MIT License: +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#include "http-over-capnp.h" +#include +#include +#include +#include +#include +#if KJ_BENCHMARK_MALLOC +#include +#endif + +#if KJ_HAS_COROUTINE + +namespace capnp { +namespace { + +// ======================================================================================= +// Metrics-gathering +// +// TODO(cleanup): Generalize for other benchmarks? + +static size_t globalMallocCount = 0; +static size_t globalMallocBytes = 0; + +#if KJ_BENCHMARK_MALLOC +// If KJ_BENCHMARK_MALLOC is defined then we are instructed to override malloc() in order to +// measure total allocations. We are careful only to define this when the build is set up in a +// way that this won't cause build failures (e.g., we must not be statically linking a malloc +// implementation). + +extern "C" { + +void* malloc(size_t size) { + typedef void* Malloc(size_t); + static Malloc* realMalloc = reinterpret_cast(dlsym(RTLD_NEXT, "malloc")); + + ++globalMallocCount; + globalMallocBytes += size; + return realMalloc(size); +} + +} // extern "C" + +#endif // KJ_BENCHMARK_MALLOC + +class Metrics { +public: + Metrics() + : startMallocCount(globalMallocCount), startMallocBytes(globalMallocBytes), + upBandwidth(0), downBandwidth(0), + clientReadCount(0), clientWriteCount(0), + serverReadCount(0), serverWriteCount(0) {} + ~Metrics() noexcept(false) { + #if KJ_BENCHMARK_MALLOC + size_t mallocCount = globalMallocCount - startMallocCount; + size_t mallocBytes = globalMallocBytes - startMallocBytes; + KJ_LOG(WARNING, mallocCount, mallocBytes); + #endif + + if (hadStreamPair) { + KJ_LOG(WARNING, upBandwidth, downBandwidth, + clientReadCount, clientWriteCount, serverReadCount, serverWriteCount); + } + } + + enum Side { CLIENT, SERVER }; + + class StreamWrapper final: public kj::AsyncIoStream { + // Wrap a stream and count metrics. + + public: + StreamWrapper(Metrics& metrics, kj::AsyncIoStream& inner, Side side) + : metrics(metrics), inner(inner), side(side) {} + + ~StreamWrapper() noexcept(false) { + switch (side) { + case CLIENT: + metrics.clientReadCount += readCount; + metrics.clientWriteCount += writeCount; + metrics.upBandwidth += writeBytes; + metrics.downBandwidth += readBytes; + break; + case SERVER: + metrics.serverReadCount += readCount; + metrics.serverWriteCount += writeCount; + break; + } + } + + kj::Promise read(void* buffer, size_t minBytes, size_t maxBytes) override { + return inner.read(buffer, minBytes, maxBytes) + .then([this](size_t n) { + ++readCount; + readBytes += n; + return n; + }); + } + kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + return inner.tryRead(buffer, minBytes, maxBytes) + .then([this](size_t n) { + ++readCount; + readBytes += n; + return n; + }); + } + + kj::Maybe tryGetLength() override { + return inner.tryGetLength(); + } + + kj::Promise write(const void* buffer, size_t size) override { + ++writeCount; + writeBytes += size; + return inner.write(buffer, size); + } + kj::Promise write(kj::ArrayPtr> pieces) override { + ++writeCount; + for (auto& piece: pieces) { + writeBytes += piece.size(); + } + return inner.write(pieces); + } + + kj::Promise pumpTo( + kj::AsyncOutputStream& output, uint64_t amount = kj::maxValue) override { + // Our benchmarks don't depend on this currently. If they do we need to think about how to + // apply it. + KJ_UNIMPLEMENTED("pump metrics"); + } + kj::Maybe> tryPumpFrom( + AsyncInputStream& input, uint64_t amount = kj::maxValue) override { + // Our benchmarks don't depend on this currently. If they do we need to think about how to + // apply it. + KJ_UNIMPLEMENTED("pump metrics"); + } + + kj::Promise whenWriteDisconnected() override { + return inner.whenWriteDisconnected(); + } + + void shutdownWrite() override { + inner.shutdownWrite(); + } + void abortRead() override { + inner.abortRead(); + } + + private: + Metrics& metrics; + kj::AsyncIoStream& inner; + Side side; + + size_t readCount = 0; + size_t readBytes = 0; + size_t writeCount = 0; + size_t writeBytes = 0; + }; + + struct StreamPair { + kj::TwoWayPipe pipe; + StreamWrapper client; + StreamWrapper server; + + StreamPair(Metrics& metrics) + : pipe(kj::newTwoWayPipe()), + client(metrics, *pipe.ends[0], CLIENT), + server(metrics, *pipe.ends[1], SERVER) { + metrics.hadStreamPair = true; + } + }; + +private: + size_t startMallocCount KJ_UNUSED; + size_t startMallocBytes KJ_UNUSED; + size_t upBandwidth; + size_t downBandwidth; + size_t clientReadCount; + size_t clientWriteCount; + size_t serverReadCount; + size_t serverWriteCount; + + bool hadStreamPair = false; +}; + +// ======================================================================================= + +static constexpr auto HELLO_WORLD = "Hello, world!"_kj; + +class NullInputStream final: public kj::AsyncInputStream { +public: + NullInputStream(kj::Maybe expectedLength = size_t(0)) + : expectedLength(expectedLength) {} + + kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + return size_t(0); + } + + kj::Maybe tryGetLength() override { + return expectedLength; + } + + kj::Promise pumpTo(kj::AsyncOutputStream& output, uint64_t amount) override { + return uint64_t(0); + } + +private: + kj::Maybe expectedLength; +}; + +class VectorOutputStream: public kj::AsyncOutputStream { +public: + kj::String consume() { + chars.add('\0'); + return kj::String(chars.releaseAsArray()); + } + + kj::Promise write(const void* buffer, size_t size) override { + chars.addAll(kj::arrayPtr(reinterpret_cast(buffer), size)); + return kj::READY_NOW; + } + + kj::Promise write(kj::ArrayPtr> pieces) override { + for (auto piece: pieces) { + chars.addAll(piece.asChars()); + } + return kj::READY_NOW; + } + + kj::Promise whenWriteDisconnected() override { + return kj::NEVER_DONE; + } + +private: + kj::Vector chars; +}; + +class MockService: public kj::HttpService { +public: + MockService(kj::HttpHeaderTable::Builder& headerTableBuilder) + : headerTable(headerTableBuilder.getFutureTable()), + customHeaderId(headerTableBuilder.add("X-Custom-Header")) {} + + kj::Promise request( + kj::HttpMethod method, kj::StringPtr url, const kj::HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + KJ_ASSERT(method == kj::HttpMethod::GET); + KJ_ASSERT(url == "http://foo"_kj); + KJ_ASSERT(headers.get(customHeaderId) == "corge"_kj); + + kj::HttpHeaders responseHeaders(headerTable); + responseHeaders.set(kj::HttpHeaderId::CONTENT_TYPE, "text/plain"); + responseHeaders.set(customHeaderId, "foobar"_kj); + auto stream = response.send(200, "OK", responseHeaders); + auto promise = stream->write(HELLO_WORLD.begin(), HELLO_WORLD.size()); + return promise.attach(kj::mv(stream)); + } + +private: + const kj::HttpHeaderTable& headerTable; + kj::HttpHeaderId customHeaderId; +}; + +class MockSender: private kj::HttpService::Response { +public: + MockSender(kj::HttpHeaderTable::Builder& headerTableBuilder) + : headerTable(headerTableBuilder.getFutureTable()), + customHeaderId(headerTableBuilder.add("X-Custom-Header")) {} + + kj::Promise sendRequest(kj::HttpClient& client) { + kj::HttpHeaders headers(headerTable); + headers.set(customHeaderId, "corge"_kj); + auto req = client.request(kj::HttpMethod::GET, "http://foo"_kj, headers); + req.body = nullptr; + auto resp = co_await req.response; + KJ_ASSERT(resp.statusCode == 200); + KJ_ASSERT(resp.statusText == "OK"_kj); + KJ_ASSERT(resp.headers->get(customHeaderId) == "foobar"_kj); + + auto body = co_await resp.body->readAllText(); + KJ_ASSERT(body == HELLO_WORLD); + } + + kj::Promise sendRequest(kj::HttpService& service) { + kj::HttpHeaders headers(headerTable); + headers.set(customHeaderId, "corge"_kj); + NullInputStream requestBody; + co_await service.request(kj::HttpMethod::GET, "http://foo"_kj, headers, requestBody, *this); + KJ_ASSERT(responseBody.consume() == HELLO_WORLD); + } + +private: + const kj::HttpHeaderTable& headerTable; + kj::HttpHeaderId customHeaderId; + + VectorOutputStream responseBody; + + kj::Own send( + uint statusCode, kj::StringPtr statusText, const kj::HttpHeaders& headers, + kj::Maybe expectedBodySize = nullptr) override { + KJ_ASSERT(statusCode == 200); + KJ_ASSERT(statusText == "OK"_kj); + KJ_ASSERT(headers.get(customHeaderId) == "foobar"_kj); + + return kj::attachRef(responseBody); + } + + kj::Own acceptWebSocket(const kj::HttpHeaders& headers) override { + KJ_UNIMPLEMENTED("no WebSockets here"); + } +}; + +KJ_TEST("Benchmark baseline") { + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + Metrics metrics; + + kj::HttpHeaderTable::Builder headerTableBuilder; + MockService service(headerTableBuilder); + MockSender sender(headerTableBuilder); + auto headerTable = headerTableBuilder.build(); + + doBenchmark([&]() { + sender.sendRequest(service).wait(waitScope); + }); +} + +KJ_TEST("Benchmark KJ HTTP client wrapper") { + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + Metrics metrics; + + kj::HttpHeaderTable::Builder headerTableBuilder; + MockService service(headerTableBuilder); + MockSender sender(headerTableBuilder); + auto headerTable = headerTableBuilder.build(); + + auto client = kj::newHttpClient(service); + + doBenchmark([&]() { + sender.sendRequest(*client).wait(waitScope); + }); +} + +KJ_TEST("Benchmark KJ HTTP full protocol") { + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + Metrics metrics; + Metrics::StreamPair pair(metrics); + kj::TimerImpl timer(kj::origin()); + + kj::HttpHeaderTable::Builder headerTableBuilder; + MockService service(headerTableBuilder); + MockSender sender(headerTableBuilder); + auto headerTable = headerTableBuilder.build(); + + kj::HttpServer server(timer, *headerTable, service); + auto listenLoop = server.listenHttp({&pair.server, kj::NullDisposer::instance}) + .eagerlyEvaluate([](kj::Exception&& e) noexcept { kj::throwFatalException(kj::mv(e)); }); + auto client = kj::newHttpClient(*headerTable, pair.client); + + doBenchmark([&]() { + sender.sendRequest(*client).wait(waitScope); + }); +} + +KJ_TEST("Benchmark HTTP-over-capnp local call") { + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + Metrics metrics; + + kj::HttpHeaderTable::Builder headerTableBuilder; + MockService service(headerTableBuilder); + MockSender sender(headerTableBuilder); + HttpOverCapnpFactory::HeaderIdBundle headerIds(headerTableBuilder); + auto headerTable = headerTableBuilder.build(); + + // Client and server use different HttpOverCapnpFactory instances to block path-shortening. + ByteStreamFactory bsFactory; + HttpOverCapnpFactory hocFactory(bsFactory, headerIds.clone(), HttpOverCapnpFactory::LEVEL_2); + ByteStreamFactory bsFactory2; + HttpOverCapnpFactory hocFactory2(bsFactory2, kj::mv(headerIds), HttpOverCapnpFactory::LEVEL_2); + + auto cap = hocFactory.kjToCapnp(kj::attachRef(service)); + auto roundTrip = hocFactory2.capnpToKj(kj::mv(cap)); + + doBenchmark([&]() { + sender.sendRequest(*roundTrip).wait(waitScope); + }); +} + +KJ_TEST("Benchmark HTTP-over-capnp full RPC") { + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + Metrics metrics; + Metrics::StreamPair pair(metrics); + + kj::HttpHeaderTable::Builder headerTableBuilder; + MockService service(headerTableBuilder); + MockSender sender(headerTableBuilder); + HttpOverCapnpFactory::HeaderIdBundle headerIds(headerTableBuilder); + auto headerTable = headerTableBuilder.build(); + + // Client and server use different HttpOverCapnpFactory instances to block path-shortening. + ByteStreamFactory bsFactory; + HttpOverCapnpFactory hocFactory(bsFactory, headerIds.clone(), HttpOverCapnpFactory::LEVEL_2); + ByteStreamFactory bsFactory2; + HttpOverCapnpFactory hocFactory2(bsFactory2, kj::mv(headerIds), HttpOverCapnpFactory::LEVEL_2); + + TwoPartyServer server(hocFactory.kjToCapnp(kj::attachRef(service))); + + auto pipe = kj::newTwoWayPipe(); + auto listenLoop = server.accept(pair.server); + + TwoPartyClient client(pair.client); + + auto roundTrip = hocFactory2.capnpToKj(client.bootstrap().castAs()); + + doBenchmark([&]() { + sender.sendRequest(*roundTrip).wait(waitScope); + }); +} + +} // namespace +} // namespace capnp + +#endif // KJ_HAS_COROUTINE diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp-test.c++ index 771e25a9e0b..425014cabbb 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp-test.c++ @@ -22,6 +22,10 @@ #include "http-over-capnp.h" #include +#ifndef TEST_PEER_OPTIMIZATION_LEVEL +#define TEST_PEER_OPTIMIZATION_LEVEL HttpOverCapnpFactory::LEVEL_2 +#endif + namespace capnp { namespace { @@ -42,7 +46,7 @@ kj::Promise expectRead(kj::AsyncInputStream& in, kj::StringPtr expected) { auto buffer = kj::heapArray(expected.size()); auto promise = in.tryRead(buffer.begin(), 1, buffer.size()); - return promise.then(kj::mvCapture(buffer, [&in,expected](kj::Array buffer, size_t amount) { + return promise.then([&in,expected,buffer=kj::mv(buffer)](size_t amount) { if (amount == 0) { KJ_FAIL_ASSERT("expected data never sent", expected); } @@ -53,7 +57,7 @@ kj::Promise expectRead(kj::AsyncInputStream& in, kj::StringPtr expected) { } return expectRead(in, expected.slice(amount)); - })); + }); } enum Direction { @@ -402,8 +406,8 @@ KJ_TEST("HTTP-over-Cap'n-Proto E2E, no path shortening") { ByteStreamFactory streamFactory1; ByteStreamFactory streamFactory2; kj::HttpHeaderTable::Builder tableBuilder; - HttpOverCapnpFactory factory1(streamFactory1, tableBuilder); - HttpOverCapnpFactory factory2(streamFactory2, tableBuilder); + HttpOverCapnpFactory factory1(streamFactory1, tableBuilder, TEST_PEER_OPTIMIZATION_LEVEL); + HttpOverCapnpFactory factory2(streamFactory2, tableBuilder, TEST_PEER_OPTIMIZATION_LEVEL); auto headerTable = tableBuilder.build(); runEndToEndTests(timer, *headerTable, factory1, factory2, waitScope); @@ -416,7 +420,7 @@ KJ_TEST("HTTP-over-Cap'n-Proto E2E, with path shortening") { ByteStreamFactory streamFactory; kj::HttpHeaderTable::Builder tableBuilder; - HttpOverCapnpFactory factory(streamFactory, tableBuilder); + HttpOverCapnpFactory factory(streamFactory, tableBuilder, TEST_PEER_OPTIMIZATION_LEVEL); auto headerTable = tableBuilder.build(); runEndToEndTests(timer, *headerTable, factory, factory, waitScope); @@ -438,7 +442,7 @@ KJ_TEST("HTTP-over-Cap'n-Proto 205 bug with HttpClientAdapter") { ByteStreamFactory streamFactory; kj::HttpHeaderTable::Builder tableBuilder; - HttpOverCapnpFactory factory(streamFactory, tableBuilder); + HttpOverCapnpFactory factory(streamFactory, tableBuilder, TEST_PEER_OPTIMIZATION_LEVEL); auto headerTable = tableBuilder.build(); auto pipe = kj::newTwoWayPipe(); @@ -511,45 +515,29 @@ private: kj::Promise done; }; -void runWebSocketTests(kj::HttpHeaderTable& headerTable, - HttpOverCapnpFactory& clientFactory, HttpOverCapnpFactory& serverFactory, - kj::WaitScope& waitScope) { - // We take a different approach here, because writing out raw WebSocket frames is a pain. - // It's easier to test WebSockets at the KJ API level. - - auto wsPaf = kj::newPromiseAndFulfiller>(); - auto donePaf = kj::newPromiseAndFulfiller(); - - auto back = serverFactory.kjToCapnp(kj::heap( - headerTable, kj::mv(wsPaf.fulfiller), kj::mv(donePaf.promise))); - auto front = clientFactory.capnpToKj(back); - auto client = kj::newHttpClient(*front); - - auto resp = client->openWebSocket("/ws", kj::HttpHeaders(headerTable)).wait(waitScope); - KJ_ASSERT(resp.webSocketOrBody.is>()); - - auto clientWs = kj::mv(resp.webSocketOrBody.get>()); - auto serverWs = wsPaf.promise.wait(waitScope); +void runWebSocketBasicTestCase( + kj::WebSocket& clientWs, kj::WebSocket& serverWs, kj::WaitScope& waitScope) { + // Called by `runWebSocketTests()`. { - auto promise = clientWs->send("foo"_kj); - auto message = serverWs->receive().wait(waitScope); + auto promise = clientWs.send("foo"_kj); + auto message = serverWs.receive().wait(waitScope); promise.wait(waitScope); KJ_ASSERT(message.is()); KJ_EXPECT(message.get() == "foo"); } { - auto promise = serverWs->send("bar"_kj.asBytes()); - auto message = clientWs->receive().wait(waitScope); + auto promise = serverWs.send("bar"_kj.asBytes()); + auto message = clientWs.receive().wait(waitScope); promise.wait(waitScope); KJ_ASSERT(message.is>()); KJ_EXPECT(kj::str(message.get>().asChars()) == "bar"); } { - auto promise = clientWs->close(1234, "baz"_kj); - auto message = serverWs->receive().wait(waitScope); + auto promise = clientWs.close(1234, "baz"_kj); + auto message = serverWs.receive().wait(waitScope); promise.wait(waitScope); KJ_ASSERT(message.is()); KJ_EXPECT(message.get().code == 1234); @@ -557,14 +545,53 @@ void runWebSocketTests(kj::HttpHeaderTable& headerTable, } { - auto promise = serverWs->disconnect(); - auto receivePromise = clientWs->receive(); + auto promise = serverWs.disconnect(); + auto receivePromise = clientWs.receive(); KJ_EXPECT(receivePromise.poll(waitScope)); KJ_EXPECT_THROW(DISCONNECTED, receivePromise.wait(waitScope)); promise.wait(waitScope); } } +void runWebSocketAbortTestCase( + kj::WebSocket& clientWs, kj::WebSocket& serverWs, kj::WaitScope& waitScope) { + auto onAbort = serverWs.whenAborted(); + KJ_EXPECT(!onAbort.poll(waitScope)); + clientWs.abort(); + + // At one time, this promise hung forever. + KJ_EXPECT(onAbort.poll(waitScope)); + onAbort.wait(waitScope); +} + +void runWebSocketTests(kj::HttpHeaderTable& headerTable, + HttpOverCapnpFactory& clientFactory, HttpOverCapnpFactory& serverFactory, + kj::WaitScope& waitScope) { + // We take a different approach here, because writing out raw WebSocket frames is a pain. + // It's easier to test WebSockets at the KJ API level. + + for (auto testCase: { + runWebSocketBasicTestCase, + runWebSocketAbortTestCase, + }) { + auto wsPaf = kj::newPromiseAndFulfiller>(); + auto donePaf = kj::newPromiseAndFulfiller(); + + auto back = serverFactory.kjToCapnp(kj::heap( + headerTable, kj::mv(wsPaf.fulfiller), kj::mv(donePaf.promise))); + auto front = clientFactory.capnpToKj(back); + auto client = kj::newHttpClient(*front); + + auto resp = client->openWebSocket("/ws", kj::HttpHeaders(headerTable)).wait(waitScope); + KJ_ASSERT(resp.webSocketOrBody.is>()); + + auto clientWs = kj::mv(resp.webSocketOrBody.get>()); + auto serverWs = wsPaf.promise.wait(waitScope); + + testCase(*clientWs, *serverWs, waitScope); + } +} + KJ_TEST("HTTP-over-Cap'n Proto WebSocket, no path shortening") { kj::EventLoop eventLoop; kj::WaitScope waitScope(eventLoop); @@ -572,8 +599,8 @@ KJ_TEST("HTTP-over-Cap'n Proto WebSocket, no path shortening") { ByteStreamFactory streamFactory1; ByteStreamFactory streamFactory2; kj::HttpHeaderTable::Builder tableBuilder; - HttpOverCapnpFactory factory1(streamFactory1, tableBuilder); - HttpOverCapnpFactory factory2(streamFactory2, tableBuilder); + HttpOverCapnpFactory factory1(streamFactory1, tableBuilder, TEST_PEER_OPTIMIZATION_LEVEL); + HttpOverCapnpFactory factory2(streamFactory2, tableBuilder, TEST_PEER_OPTIMIZATION_LEVEL); auto headerTable = tableBuilder.build(); runWebSocketTests(*headerTable, factory1, factory2, waitScope); @@ -585,7 +612,7 @@ KJ_TEST("HTTP-over-Cap'n Proto WebSocket, with path shortening") { ByteStreamFactory streamFactory; kj::HttpHeaderTable::Builder tableBuilder; - HttpOverCapnpFactory factory(streamFactory, tableBuilder); + HttpOverCapnpFactory factory(streamFactory, tableBuilder, TEST_PEER_OPTIMIZATION_LEVEL); auto headerTable = tableBuilder.build(); runWebSocketTests(*headerTable, factory, factory, waitScope); @@ -620,7 +647,7 @@ KJ_TEST("HttpService isn't destroyed while call outstanding") { ByteStreamFactory streamFactory; kj::HttpHeaderTable::Builder tableBuilder; - HttpOverCapnpFactory factory(streamFactory, tableBuilder); + HttpOverCapnpFactory factory(streamFactory, tableBuilder, TEST_PEER_OPTIMIZATION_LEVEL); auto headerTable = tableBuilder.build(); bool called = false; @@ -644,5 +671,319 @@ KJ_TEST("HttpService isn't destroyed while call outstanding") { KJ_EXPECT(!destroyed); } + +class ConnectWriteCloseService final: public kj::HttpService { + // A simple CONNECT server that will accept a connection, write some data and close the + // connection. +public: + ConnectWriteCloseService(kj::HttpHeaderTable& headerTable) + : headerTable(headerTable) {} + + kj::Promise request( + kj::HttpMethod method, kj::StringPtr url, const kj::HttpHeaders& headers, + kj::AsyncInputStream& requestBody, kj::HttpService::Response& response) override { + KJ_UNIMPLEMENTED("Regular HTTP requests are not implemented here."); + } + + kj::Promise connect( + kj::StringPtr host, const kj::HttpHeaders& headers, kj::AsyncIoStream& io, + kj::HttpService::ConnectResponse& response, + kj::HttpConnectSettings settings) override { + response.accept(200, "OK", kj::HttpHeaders(headerTable)); + return io.write("test", 4).then([&io]() mutable { + io.shutdownWrite(); + }); + } + +private: + kj::HttpHeaderTable& headerTable; +}; + +class ConnectWriteRespService final: public kj::HttpService { +public: + ConnectWriteRespService(kj::HttpHeaderTable& headerTable) + : headerTable(headerTable) {} + + kj::Promise request( + kj::HttpMethod method, kj::StringPtr url, const kj::HttpHeaders& headers, + kj::AsyncInputStream& requestBody, kj::HttpService::Response& response) override { + KJ_UNIMPLEMENTED("Regular HTTP requests are not implemented here."); + } + + kj::Promise connect( + kj::StringPtr host, const kj::HttpHeaders& headers, kj::AsyncIoStream& io, + kj::HttpService::ConnectResponse& response, + kj::HttpConnectSettings settings) override { + response.accept(200, "OK", kj::HttpHeaders(headerTable)); + // TODO(later): `io.pumpTo(io).ignoreResult;` doesn't work here, + // it causes startTls to come back in a loop. The below avoids this. + auto buffer = kj::heapArray(4096); + return manualPumpLoop(buffer, io).attach(kj::mv(buffer)); + } + + kj::Promise manualPumpLoop(kj::ArrayPtr buffer, kj::AsyncIoStream& io) { + return io.tryRead(buffer.begin(), 1, buffer.size()).then( + [this,&io,buffer](size_t amount) mutable -> kj::Promise { + if (amount == 0) { return kj::READY_NOW; } + return io.write(buffer.begin(), amount).then([this,&io,buffer]() mutable -> kj::Promise { + return manualPumpLoop(buffer, io); + }); + }); + } + +private: + kj::HttpHeaderTable& headerTable; +}; + +class ConnectRejectService final: public kj::HttpService { + // A simple CONNECT server that will reject a connection. +public: + ConnectRejectService(kj::HttpHeaderTable& headerTable) + : headerTable(headerTable) {} + + kj::Promise request( + kj::HttpMethod method, kj::StringPtr url, const kj::HttpHeaders& headers, + kj::AsyncInputStream& requestBody, kj::HttpService::Response& response) override { + KJ_UNIMPLEMENTED("Regular HTTP requests are not implemented here."); + } + + kj::Promise connect( + kj::StringPtr host, const kj::HttpHeaders& headers, kj::AsyncIoStream& io, + kj::HttpService::ConnectResponse& response, + kj::HttpConnectSettings settings) override { + auto body = response.reject(500, "Internal Server Error", kj::HttpHeaders(headerTable), 5); + return body->write("Error", 5).attach(kj::mv(body)); + } + +private: + kj::HttpHeaderTable& headerTable; +}; + +KJ_TEST("HTTP-over-Cap'n-Proto Connect with close") { + kj::EventLoop eventLoop; + kj::WaitScope waitScope(eventLoop); + + auto pipe = kj::newTwoWayPipe(); + + kj::TimerImpl timer(kj::origin()); + + ByteStreamFactory streamFactory; + kj::HttpHeaderTable::Builder tableBuilder; + HttpOverCapnpFactory factory(streamFactory, tableBuilder); + kj::Own table = tableBuilder.build(); + ConnectWriteCloseService service(*table); + kj::HttpServer server(timer, *table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + auto client = newHttpClient(*table, *pipe.ends[1]); + + capnp::HttpService::Client httpService = factory.kjToCapnp(newHttpService(*client)); + auto frontCapnpHttpService = factory.capnpToKj(httpService); + + struct ResponseImpl final: public kj::HttpService::ConnectResponse { + kj::Own> fulfiller; + ResponseImpl(kj::Own> fulfiller) + : fulfiller(kj::mv(fulfiller)) {} + void accept(uint statusCode, kj::StringPtr statusText, const kj::HttpHeaders& headers) override { + KJ_REQUIRE(statusCode >= 200 && statusCode < 300, "the statusCode must be 2xx for accept"); + fulfiller->fulfill( + kj::HttpClient::ConnectRequest::Status( + statusCode, + kj::str(statusText), + kj::heap(headers.clone()), + nullptr + ) + ); + } + + kj::Own reject( + uint statusCode, + kj::StringPtr statusText, + const kj::HttpHeaders& headers, + kj::Maybe expectedBodySize) override { + KJ_UNREACHABLE; + } + }; + + auto clientPipe = kj::newTwoWayPipe(); + auto paf = kj::newPromiseAndFulfiller(); + ResponseImpl response(kj::mv(paf.fulfiller)); + + auto promise = frontCapnpHttpService->connect( + "https://example.org"_kj, kj::HttpHeaders(*table), *clientPipe.ends[0], + response, {}).attach(kj::mv(clientPipe.ends[0])); + + paf.promise.then( + [io = kj::mv(clientPipe.ends[1])](auto status) mutable { + KJ_ASSERT(status.statusCode == 200); + KJ_ASSERT(status.statusText == "OK"_kj); + + auto buf = kj::heapArray(4); + return io->tryRead(buf.begin(), 4, 4).then( + [buf = kj::mv(buf), io = kj::mv(io)](size_t count) mutable { + KJ_ASSERT(count == 4, "Expecting the stream to read 4 chars."); + return io->tryRead(buf.begin(), 1, 1).then( + [buf = kj::mv(buf)](size_t count) mutable { + KJ_ASSERT(count == 0, "Expecting the stream to get disconnected."); + }).attach(kj::mv(io)); + }); + }).wait(waitScope); + + listenTask.wait(waitScope); +} + + +KJ_TEST("HTTP-over-Cap'n-Proto Connect Reject") { + kj::EventLoop eventLoop; + kj::WaitScope waitScope(eventLoop); + + auto pipe = kj::newTwoWayPipe(); + + kj::TimerImpl timer(kj::origin()); + + ByteStreamFactory streamFactory; + kj::HttpHeaderTable::Builder tableBuilder; + HttpOverCapnpFactory factory(streamFactory, tableBuilder); + kj::Own table = tableBuilder.build(); + ConnectRejectService service(*table); + kj::HttpServer server(timer, *table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + auto client = newHttpClient(*table, *pipe.ends[1]); + + capnp::HttpService::Client httpService = factory.kjToCapnp(newHttpService(*client)); + auto frontCapnpHttpService = factory.capnpToKj(httpService); + + struct ResponseImpl final: public kj::HttpService::ConnectResponse { + kj::Own>> fulfiller; + ResponseImpl(kj::Own>> fulfiller) + : fulfiller(kj::mv(fulfiller)) {} + void accept(uint statusCode, kj::StringPtr statusText, const kj::HttpHeaders& headers) override { + KJ_UNREACHABLE; + } + + kj::Own reject( + uint statusCode, + kj::StringPtr statusText, + const kj::HttpHeaders& headers, + kj::Maybe expectedBodySize) override { + KJ_ASSERT(statusCode == 500); + KJ_ASSERT(statusText == "Internal Server Error"); + KJ_ASSERT(expectedBodySize.orDefault(5)); + auto pipe = kj::newOneWayPipe(); + fulfiller->fulfill(kj::mv(pipe.in)); + return kj::mv(pipe.out); + } + }; + + auto clientPipe = kj::newTwoWayPipe(); + auto paf = kj::newPromiseAndFulfiller>(); + ResponseImpl response(kj::mv(paf.fulfiller)); + + auto promise = frontCapnpHttpService->connect( + "https://example.org"_kj, kj::HttpHeaders(*table), *clientPipe.ends[0], + response, {}).attach(kj::mv(clientPipe.ends[0])); + + paf.promise.then( + [](auto body) mutable { + auto buf = kj::heapArray(5); + return body->tryRead(buf.begin(), 5, 5).then( + [buf = kj::mv(buf), body = kj::mv(body)](size_t count) mutable { + KJ_ASSERT(count == 5, "Expecting the stream to read 5 chars."); + }); + }).attach(kj::mv(promise)).wait(waitScope); + + listenTask.wait(waitScope); +} + +kj::Promise expectEnd(kj::AsyncInputStream& in) { + static char buffer; + + auto promise = in.tryRead(&buffer, 1, 1); + return promise.then([](size_t amount) { + KJ_ASSERT(amount == 0, "expected EOF"); + }); +} + +KJ_TEST("HTTP-over-Cap'n-Proto Connect with startTls") { + kj::EventLoop eventLoop; + kj::WaitScope waitScope(eventLoop); + + auto pipe = kj::newTwoWayPipe(); + + kj::TimerImpl timer(kj::origin()); + + ByteStreamFactory streamFactory; + kj::HttpHeaderTable::Builder tableBuilder; + HttpOverCapnpFactory factory(streamFactory, tableBuilder); + kj::Own table = tableBuilder.build(); + ConnectWriteRespService service(*table); + kj::HttpServer server(timer, *table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + auto client = newHttpClient(*table, *pipe.ends[1]); + + class WrapperHttpClient final: public kj::HttpClient { + public: + kj::HttpClient& inner; + + WrapperHttpClient(kj::HttpClient& client) : inner(client) {}; + + kj::Promise openWebSocket( + kj::StringPtr url, const kj::HttpHeaders& headers) override { KJ_UNREACHABLE; } + Request request(kj::HttpMethod method, kj::StringPtr url, const kj::HttpHeaders& headers, + kj::Maybe expectedBodySize = nullptr) override { KJ_UNREACHABLE; } + + ConnectRequest connect(kj::StringPtr host, const kj::HttpHeaders& headers, + kj::HttpConnectSettings settings) override { + KJ_IF_MAYBE(starter, settings.tlsStarter) { + *starter = [](kj::StringPtr) { + return kj::READY_NOW; + }; + } + + return inner.connect(host, headers, settings); + } + }; + + // Only need this wrapper to define a dummy tlsStarter. + auto wrappedClient = kj::heap(*client); + capnp::HttpService::Client httpService = factory.kjToCapnp(newHttpService(*wrappedClient)); + auto frontCapnpHttpService = factory.capnpToKj(httpService); + + auto frontCapnpHttpClient = kj::newHttpClient(*frontCapnpHttpService); + + kj::Own tlsStarter = kj::heap(); + kj::HttpConnectSettings settings = { .useTls = false }; + settings.tlsStarter = tlsStarter; + + auto request = frontCapnpHttpClient->connect( + "https://example.org"_kj, kj::HttpHeaders(*table), settings); + + KJ_ASSERT_NONNULL(*tlsStarter); + + request.status.then( + [io=kj::mv(request.connection), &tlsStarter](auto status) mutable { + KJ_ASSERT(status.statusCode == 200); + KJ_ASSERT(status.statusText == "OK"_kj); + + return KJ_ASSERT_NONNULL(*tlsStarter)("example.com").then([io = kj::mv(io)]() mutable { + return io->write("hello", 5).then([io = kj::mv(io)]() mutable { + auto buffer = kj::heapArray(5); + return io->tryRead(buffer.begin(), 5, 5).then( + [io = kj::mv(io), buffer = kj::mv(buffer)](size_t) mutable { + io->shutdownWrite(); + return expectEnd(*io).attach(kj::mv(io)); + }); + }); + }); + }).wait(waitScope); + + listenTask.wait(waitScope); +} + } // namespace } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.c++ index f76e309f69c..a92e7c59d1a 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.c++ @@ -22,6 +22,7 @@ #include "http-over-capnp.h" #include #include +#include namespace capnp { @@ -119,7 +120,11 @@ public: } kj::Maybe> shortenPath() override { - return kj::mv(shorteningPromise); + auto onAbort = webSocket.whenAborted() + .then([]() -> kj::Promise { + return KJ_EXCEPTION(DISCONNECTED, "WebSocket was aborted"); + }); + return shorteningPromise.exclusiveJoin(kj::mv(onAbort)); } kj::Promise sendText(SendTextContext context) override { @@ -322,15 +327,72 @@ private: // Must check state->assertNotCanceled() before using this. }; +class HttpOverCapnpFactory::ConnectClientRequestContextImpl final + : public capnp::HttpService::ConnectClientRequestContext::Server { +public: + ConnectClientRequestContextImpl(HttpOverCapnpFactory& factory, + kj::HttpService::ConnectResponse& connResponse) + : factory(factory), connResponse(connResponse) {} + + kj::Promise startConnect(StartConnectContext context) override { + KJ_REQUIRE(!sent, "already called startConnect() or startError()"); + sent = true; + + auto params = context.getParams(); + auto resp = params.getResponse(); + + auto headers = factory.headersToKj(resp.getHeaders()); + connResponse.accept(resp.getStatusCode(), resp.getStatusText(), headers); + + return kj::READY_NOW; + } + + kj::Promise startError(StartErrorContext context) override { + KJ_REQUIRE(!sent, "already called startConnect() or startError()"); + sent = true; + + auto params = context.getParams(); + auto resp = params.getResponse(); + + auto headers = factory.headersToKj(resp.getHeaders()); + + auto bodySize = resp.getBodySize(); + kj::Maybe expectedSize; + if (bodySize.isFixed()) { + expectedSize = bodySize.getFixed(); + } + + auto stream = connResponse.reject( + resp.getStatusCode(), resp.getStatusText(), headers, expectedSize); + + context.initResults().setBody(factory.streamFactory.kjToCapnp(kj::mv(stream))); + + return kj::READY_NOW; + } + +private: + HttpOverCapnpFactory& factory; + bool sent = false; + + kj::HttpService::ConnectResponse& connResponse; +}; + class HttpOverCapnpFactory::KjToCapnpHttpServiceAdapter final: public kj::HttpService { public: KjToCapnpHttpServiceAdapter(HttpOverCapnpFactory& factory, capnp::HttpService::Client inner) : factory(factory), inner(kj::mv(inner)) {} - kj::Promise request( + template + kj::Promise requestImpl( + Request rpcRequest, kj::HttpMethod method, kj::StringPtr url, const kj::HttpHeaders& headers, - kj::AsyncInputStream& requestBody, kj::HttpService::Response& kjResponse) override { - auto rpcRequest = inner.startRequestRequest(); + kj::AsyncInputStream& requestBody, kj::HttpService::Response& kjResponse, + AwaitCompletionFunc&& awaitCompletion) { + // Common implementation calling request() or startRequest(). awaitCompletion() waits for + // final completion in a method-specific way. + // + // TODO(cleanup): When we move to C++17 or newer we can use `if constexpr` instead of a + // callback. auto metadata = rpcRequest.initRequest(); metadata.setMethod(static_cast(method)); @@ -369,9 +431,12 @@ public: // Pump upstream -- unless we don't expect a request body. kj::Maybe> pumpRequestTask; KJ_IF_MAYBE(rb, maybeRequestBody) { - auto bodyOut = factory.streamFactory.capnpToKj(pipeline.getRequestBody()); - pumpRequestTask = rb->pumpTo(*bodyOut).attach(kj::mv(bodyOut)).ignoreResult() - .eagerlyEvaluate([state = kj::addRef(*state)](kj::Exception&& e) mutable { + auto bodyOut = factory.streamFactory.capnpToKjExplicitEnd(pipeline.getRequestBody()); + pumpRequestTask = rb->pumpTo(*bodyOut) + .then([&bodyOut = *bodyOut](uint64_t) mutable { + return bodyOut.end(); + }).eagerlyEvaluate([state = kj::addRef(*state), bodyOut = kj::mv(bodyOut)] + (kj::Exception&& e) mutable { // A DISCONNECTED exception probably means the server decided not to read the whole request // before responding. In that case we simply want the pump to end, so that on this end it // also appears that the service simply didn't read everything. So we don't propagate the @@ -383,10 +448,10 @@ public: }); } - // Wait for the ServerRequestContext to resolve, which indicates completion. Meanwhile, if the - // promise is canceled from the client side, we drop the ServerRequestContext naturally, and we + // Wait for the server to indicate completion. Meanwhile, if the + // promise is canceled from the client side, we propagate cancellation naturally, and we // also call state->cancel(). - return pipeline.getContext().whenResolved() + return awaitCompletion(pipeline) // Once the server indicates it is done, then we can cancel pumping the request, because // obviously the server won't use it. We should not cancel pumping the response since there // could be data in-flight still. @@ -396,6 +461,76 @@ public: .attach(kj::mv(deferredCancel)); } + kj::Promise request( + kj::HttpMethod method, kj::StringPtr url, const kj::HttpHeaders& headers, + kj::AsyncInputStream& requestBody, kj::HttpService::Response& kjResponse) override { + if (factory.peerOptimizationLevel < LEVEL_2) { + return requestImpl(inner.startRequestRequest(), method, url, headers, requestBody, kjResponse, + [](auto& pipeline) { return pipeline.getContext().whenResolved(); }); + } else { + return requestImpl(inner.requestRequest(), method, url, headers, requestBody, kjResponse, + [](auto& pipeline) { return pipeline.ignoreResult(); }); + } + } + + kj::Promise connect( + kj::StringPtr host, const kj::HttpHeaders& headers, kj::AsyncIoStream& connection, + ConnectResponse& tunnel, kj::HttpConnectSettings settings) override { + auto rpcRequest = inner.connectRequest(); + auto downPipe = kj::newOneWayPipe(); + rpcRequest.setHost(host); + rpcRequest.setDown(factory.streamFactory.kjToCapnp(kj::mv(downPipe.out))); + rpcRequest.initSettings().setUseTls(settings.useTls); + + auto context = kj::heap(factory, tunnel); + RevocableServer revocableContext(*context); + + auto builder = capnp::Request< + capnp::HttpService::ConnectParams, + capnp::HttpService::ConnectResults>::Builder(rpcRequest); + rpcRequest.adoptHeaders(factory.headersToCapnp(headers, + Orphanage::getForMessageContaining(builder))); + rpcRequest.setContext(revocableContext.getClient()); + RemotePromise pipeline = rpcRequest.send(); + + // We read from `downPipe` (the other side writes into it.) + auto downPumpTask = downPipe.in->pumpTo(connection) + .then([&connection, down = kj::mv(downPipe.in)](uint64_t) -> kj::Promise { + connection.shutdownWrite(); + return kj::NEVER_DONE; + }); + // We write to `up` (the other side reads from it). + auto up = pipeline.getUp(); + + // We need to create a tlsStarter callback which sends a startTls request to the capnp server. + KJ_IF_MAYBE(tlsStarter, settings.tlsStarter) { + kj::Function(kj::StringPtr)> cb = + [upForStartTls = kj::cp(up)] + (kj::StringPtr expectedServerHostname) + mutable -> kj::Promise { + auto startTlsRpcRequest = upForStartTls.startTlsRequest(); + startTlsRpcRequest.setExpectedServerHostname(expectedServerHostname); + return startTlsRpcRequest.send(); + }; + *tlsStarter = kj::mv(cb); + } + + auto upStream = factory.streamFactory.capnpToKjExplicitEnd(up); + auto upPumpTask = connection.pumpTo(*upStream) + .then([&upStream = *upStream](uint64_t) mutable { + return upStream.end(); + }).then([up = kj::mv(up), upStream = kj::mv(upStream)]() mutable + -> kj::Promise { + return kj::NEVER_DONE; + }); + + return pipeline.ignoreResult() + .attach(kj::mv(downPumpTask), kj::mv(upPumpTask), kj::mv(revocableContext)) + // Separate attach to make sure `revocableContext` is destroyed before `context`. + .attach(kj::mv(context)); + } + + private: HttpOverCapnpFactory& factory; capnp::HttpService::Client inner; @@ -415,7 +550,7 @@ class NullInputStream final: public kj::AsyncInputStream { public: kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { - return size_t(0); + return kj::constPromise(); } kj::Maybe tryGetLength() override { @@ -423,7 +558,7 @@ public: } kj::Promise pumpTo(kj::AsyncOutputStream& output, uint64_t amount) override { - return uint64_t(0); + return kj::constPromise(); } }; @@ -452,38 +587,17 @@ public: } // namespace -class HttpOverCapnpFactory::ServerRequestContextImpl final - : public capnp::HttpService::ServerRequestContext::Server, - public kj::HttpService::Response { +class HttpOverCapnpFactory::HttpServiceResponseImpl + : public kj::HttpService::Response { public: - ServerRequestContextImpl(HttpOverCapnpFactory& factory, - HttpService::Client serviceCap, - capnp::HttpRequest::Reader request, - capnp::HttpService::ClientRequestContext::Client clientContext, - kj::Own requestBodyIn, - kj::HttpService& kjService) - : factory(factory), serviceCap(kj::mv(serviceCap)), + HttpServiceResponseImpl(HttpOverCapnpFactory& factory, + capnp::HttpRequest::Reader request, + capnp::HttpService::ClientRequestContext::Client clientContext) + : factory(factory), method(validateMethod(request.getMethod())), - url(kj::str(request.getUrl())), - headers(factory.headersToKj(request.getHeaders()).clone()), - clientContext(kj::mv(clientContext)), - // Note we attach `requestBodyIn` to `task` so that we will implicitly cancel reading - // the request body as soon as the service returns. This is important in particular when - // the request body is not fully consumed, in order to propagate cancellation. - task(kjService.request(method, url, headers, *requestBodyIn, *this) - .attach(kj::mv(requestBodyIn))) {} - - KJ_DISALLOW_COPY(ServerRequestContextImpl); - - kj::Maybe> shortenPath() override { - return task.then([]() -> Capability::Client { - // If all went well, resolve to a settled capability. - // TODO(perf): Could save a message by resolving to a capability hosted by the client, or - // some special "null" capability that isn't an error but is still transmitted by value. - // Otherwise we need a Release message from client -> server just to drop this... - return kj::heap(); - }); - } + url(request.getUrl()), + headers(factory.headersToKj(request.getHeaders())), + clientContext(kj::mv(clientContext)) {} kj::Own send( uint statusCode, kj::StringPtr statusText, const kj::HttpHeaders& headers, @@ -508,19 +622,16 @@ public: hasBody = *s > 0; } + auto logError = [hasBody](kj::Exception&& e) { + KJ_LOG(INFO, "HTTP-over-RPC startResponse() failed", hasBody, e); + }; if (hasBody) { auto pipeline = req.send(); auto result = factory.streamFactory.capnpToKj(pipeline.getBody()); - replyTask = pipeline.ignoreResult() - .eagerlyEvaluate([](kj::Exception&& e) { - KJ_LOG(ERROR, "HTTP-over-RPC startResponse() failed", e); - }); + replyTask = pipeline.ignoreResult().eagerlyEvaluate(kj::mv(logError)); return result; } else { - replyTask = req.send().ignoreResult() - .eagerlyEvaluate([](kj::Exception&& e) { - KJ_LOG(ERROR, "HTTP-over-RPC startResponse() failed", e); - }); + replyTask = req.send().ignoreResult().eagerlyEvaluate(kj::mv(logError)); return kj::heap(); } @@ -560,21 +671,18 @@ public: // since it holds a reference to `downSocket`. replyTask = pipeline.ignoreResult() .eagerlyEvaluate([](kj::Exception&& e) { - KJ_LOG(ERROR, "HTTP-over-RPC startWebSocketRequest() failed", e); + KJ_LOG(INFO, "HTTP-over-RPC startWebSocketRequest() failed", e); }); return result; } -private: HttpOverCapnpFactory& factory; - HttpService::Client serviceCap; // ensures the inner kj::HttpService isn't destroyed kj::HttpMethod method; - kj::String url; + kj::StringPtr url; kj::HttpHeaders headers; capnp::HttpService::ClientRequestContext::Client clientContext; kj::Maybe> replyTask; - kj::Promise task; static kj::HttpMethod validateMethod(capnp::HttpMethod method) { KJ_REQUIRE(method <= capnp::HttpMethod::UNSUBSCRIBE, "unknown method", method); @@ -582,12 +690,116 @@ private: } }; +class HttpOverCapnpFactory::HttpOverCapnpConnectResponseImpl final : + public kj::HttpService::ConnectResponse { +public: + HttpOverCapnpConnectResponseImpl( + HttpOverCapnpFactory& factory, + capnp::HttpService::ConnectClientRequestContext::Client context) : + context(context), factory(factory) {} + + void accept(uint statusCode, kj::StringPtr statusText, const kj::HttpHeaders& headers) override { + KJ_REQUIRE(replyTask == nullptr, "already called accept() or reject()"); + + auto req = context.startConnectRequest(); + auto rpcResponse = req.initResponse(); + rpcResponse.setStatusCode(statusCode); + rpcResponse.setStatusText(statusText); + rpcResponse.adoptHeaders(factory.headersToCapnp( + headers, Orphanage::getForMessageContaining(rpcResponse))); + + replyTask = req.send().ignoreResult(); + } + + kj::Own reject( + uint statusCode, + kj::StringPtr statusText, + const kj::HttpHeaders& headers, + kj::Maybe expectedBodySize = nullptr) override { + KJ_REQUIRE(replyTask == nullptr, "already called accept() or reject()"); + auto pipe = kj::newOneWayPipe(expectedBodySize); + + auto req = context.startErrorRequest(); + auto rpcResponse = req.initResponse(); + rpcResponse.setStatusCode(statusCode); + rpcResponse.setStatusText(statusText); + rpcResponse.adoptHeaders(factory.headersToCapnp( + headers, Orphanage::getForMessageContaining(rpcResponse))); + + auto errorBody = kj::mv(pipe.in); + // Set the body size if the error body exists. + KJ_IF_MAYBE(size, errorBody->tryGetLength()) { + rpcResponse.getBodySize().setFixed(*size); + } + + replyTask = req.send().then( + [this, errorBody = kj::mv(errorBody)](auto resp) mutable -> kj::Promise { + auto body = factory.streamFactory.capnpToKjExplicitEnd(resp.getBody()); + return errorBody->pumpTo(*body) + .then([&body = *body](uint64_t) mutable { + return body.end(); + }).attach(kj::mv(errorBody), kj::mv(body)); + }); + + return kj::mv(pipe.out); + } + + capnp::HttpService::ConnectClientRequestContext::Client context; + capnp::HttpOverCapnpFactory& factory; + kj::Maybe> replyTask; +}; + + +class HttpOverCapnpFactory::ServerRequestContextImpl final + : public capnp::HttpService::ServerRequestContext::Server, + public HttpServiceResponseImpl { +public: + ServerRequestContextImpl(HttpOverCapnpFactory& factory, + HttpService::Client serviceCap, + kj::Own request, + capnp::HttpService::ClientRequestContext::Client clientContext, + kj::Own requestBodyIn, + kj::HttpService& kjService) + : HttpServiceResponseImpl(factory, *request, kj::mv(clientContext)), + request(kj::mv(request)), + serviceCap(kj::mv(serviceCap)), + // Note we attach `requestBodyIn` to `task` so that we will implicitly cancel reading + // the request body as soon as the service returns. This is important in particular when + // the request body is not fully consumed, in order to propagate cancellation. + task(kjService.request(method, url, headers, *requestBodyIn, *this) + .attach(kj::mv(requestBodyIn))) {} + + kj::Maybe> shortenPath() override { + return task.then([]() -> Capability::Client { + // If all went well, resolve to a settled capability. + // TODO(perf): Could save a message by resolving to a capability hosted by the client, or + // some special "null" capability that isn't an error but is still transmitted by value. + // Otherwise we need a Release message from client -> server just to drop this... + return kj::heap(); + }); + } + + KJ_DISALLOW_COPY_AND_MOVE(ServerRequestContextImpl); + +private: + kj::Own request; + HttpService::Client serviceCap; // ensures the inner kj::HttpService isn't destroyed + kj::Promise task; +}; + class HttpOverCapnpFactory::CapnpToKjHttpServiceAdapter final: public capnp::HttpService::Server { public: CapnpToKjHttpServiceAdapter(HttpOverCapnpFactory& factory, kj::Own inner) : factory(factory), inner(kj::mv(inner)) {} - kj::Promise startRequest(StartRequestContext context) override { + template + kj::Promise requestImpl(CallContext context, Callback&& callback) { + // Common implementation of request() and startRequest(). callback() performs the + // method-specific stuff at the end. + // + // TODO(cleanup): When we move to C++17 or newer we can use `if constexpr` instead of a + // callback. + auto params = context.getParams(); auto metadata = params.getRequest(); @@ -604,15 +816,118 @@ public: kj::Own requestBody; if (hasBody) { auto pipe = kj::newOneWayPipe(expectedSize); - results.setRequestBody(factory.streamFactory.kjToCapnp(kj::mv(pipe.out))); + auto requestBodyCap = factory.streamFactory.kjToCapnp(kj::mv(pipe.out)); + + if (kj::isSameType()) { + // For request(), use context.setPipeline() to enable pipelined calls to the request body + // stream before this RPC completes. (We don't bother when using startRequest() because + // it returns immediately anyway, so this would just waste effort.) + PipelineBuilder pipeline; + pipeline.setRequestBody(kj::cp(requestBodyCap)); + context.setPipeline(pipeline.build()); + } + + results.setRequestBody(kj::mv(requestBodyCap)); requestBody = kj::mv(pipe.in); } else { requestBody = kj::heap(); } - results.setContext(kj::heap( - factory, thisCap(), metadata, params.getContext(), kj::mv(requestBody), *inner)); - return kj::READY_NOW; + return callback(results, metadata, params, requestBody); + } + + kj::Promise request(RequestContext context) override { + return requestImpl(kj::mv(context), + [&](auto& results, auto& metadata, auto& params, auto& requestBody) { + class FinalHttpServiceResponseImpl final: public HttpServiceResponseImpl { + public: + using HttpServiceResponseImpl::HttpServiceResponseImpl; + }; + auto impl = kj::heap(factory, metadata, params.getContext()); + auto promise = inner->request(impl->method, impl->url, impl->headers, *requestBody, *impl); + return promise.attach(kj::mv(requestBody), kj::mv(impl)); + }); + } + + kj::Promise startRequest(StartRequestContext context) override { + return requestImpl(kj::mv(context), + [&](auto& results, auto& metadata, auto& params, auto& requestBody) { + results.setContext(kj::heap( + factory, thisCap(), capnp::clone(metadata), params.getContext(), kj::mv(requestBody), + *inner)); + + return kj::READY_NOW; + }); + } + + kj::Promise connect(ConnectContext context) override { + auto params = context.getParams(); + auto host = params.getHost(); + kj::Own tlsStarter = kj::heap(); + kj::HttpConnectSettings settings = { .useTls = params.getSettings().getUseTls()}; + settings.tlsStarter = tlsStarter; + auto headers = factory.headersToKj(params.getHeaders()); + auto pipe = kj::newTwoWayPipe(); + + class EofDetector final: public kj::AsyncOutputStream { + public: + EofDetector(kj::Own inner) + : inner(kj::mv(inner)) {} + ~EofDetector() { + inner->shutdownWrite(); + } + + kj::Maybe> tryPumpFrom( + kj::AsyncInputStream& input, uint64_t amount = kj::maxValue) override { + return inner->tryPumpFrom(input, amount); + } + + kj::Promise write(const void* buffer, size_t size) override { + return inner->write(buffer, size); + } + + kj::Promise write(kj::ArrayPtr> pieces) override { + return inner->write(pieces); + } + + kj::Promise whenWriteDisconnected() override { + return inner->whenWriteDisconnected(); + } + private: + kj::Own inner; + }; + + auto stream = factory.streamFactory.capnpToKjExplicitEnd(context.getParams().getDown()); + + // We want to keep the stream alive even after EofDetector is destroyed, so we need to create + // a refcounted AsyncIoStream. + auto refcounted = kj::refcountedWrapper(kj::mv(pipe.ends[1])); + kj::Own ref1 = refcounted->addWrappedRef(); + kj::Own ref2 = refcounted->addWrappedRef(); + + // We write to the `down` pipe. + auto pumpTask = ref1->pumpTo(*stream) + .then([&stream = *stream](uint64_t) mutable { + return stream.end(); + }).then([httpProxyStream = kj::mv(ref1), stream = kj::mv(stream)]() mutable + -> kj::Promise { + return kj::NEVER_DONE; + }); + + PipelineBuilder pb; + auto eofWrapper = kj::heap(kj::mv(ref2)); + auto up = factory.streamFactory.kjToCapnp(kj::mv(eofWrapper), kj::mv(tlsStarter)); + pb.setUp(kj::cp(up)); + + context.setPipeline(pb.build()); + context.initResults(capnp::MessageSize { 4, 1 }).setUp(kj::mv(up)); + + auto response = kj::heap( + factory, context.getParams().getContext()); + + return inner->connect(host, headers, *pipe.ends[0], *response, settings).attach( + kj::mv(host), kj::mv(headers), kj::mv(response), kj::mv(pipe)) + .exclusiveJoin(kj::mv(pumpTask)); } private: @@ -658,8 +973,10 @@ HttpOverCapnpFactory::HeaderIdBundle HttpOverCapnpFactory::HeaderIdBundle::clone } HttpOverCapnpFactory::HttpOverCapnpFactory(ByteStreamFactory& streamFactory, - HeaderIdBundle headerIds) + HeaderIdBundle headerIds, + OptimizationLevel peerOptimizationLevel) : streamFactory(streamFactory), headerTable(headerIds.table), + peerOptimizationLevel(peerOptimizationLevel), nameCapnpToKj(kj::mv(headerIds.nameCapnpToKj)) { auto commonHeaderNames = Schema::from().getEnumerants(); nameKjToCapnp = kj::heapArray(headerIds.maxHeaderId + 1); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.capnp b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.capnp index eb8578de696..8b4afba0433 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.capnp +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.capnp @@ -24,16 +24,50 @@ using import "byte-stream.capnp".ByteStream; -$import "/capnp/c++.capnp".namespace("capnp"); +using Cxx = import "/capnp/c++.capnp"; +$Cxx.namespace("capnp"); +$Cxx.allowCancellation; interface HttpService { - startRequest @0 (request :HttpRequest, context :ClientRequestContext) - -> (requestBody :ByteStream, context :ServerRequestContext); - # Begin an HTTP request. + request @1 (request :HttpRequest, context :ClientRequestContext) + -> (requestBody :ByteStream); + # Perform an HTTP request. # # The client sends the request method/url/headers. The server responds with a `ByteStream` where # the client can make calls to stream up the request body. `requestBody` will be null in the case # that request.bodySize.fixed == 0. + # + # The server will send a response by invoking a method on `callback`. + # + # `request()` does not return until the server is completely done processing the request, + # including sending the response. The client therefore must use promise pipelining to send the + # request body. The client may request cancellation of the HTTP request by canceling the + # `request()` call itself. + + startRequest @0 (request :HttpRequest, context :ClientRequestContext) + -> (requestBody :ByteStream, context :ServerRequestContext); + # DEPRECATED: Older form of `request()`. In this version, the server immediately returns a + # `ServerRequestContext` before it begins processing the request. This version was designed + # before `CallContext::setPipeline()` was introduced. At that time, it was impossible for the + # server to receive data sent to the `requestBody` stream until `startRequest()` had returned + # a stream capability to use, hence the ongoing call on the server side had to be represented + # using a separate capability. Now that we have `CallContext::setPipeline()`, the server can + # begin receiving the request body without returning from the top-level RPC, so we can now use + # `request()` instead of `startRequest()`. The new approach is more intuitive and avoids some + # unnecessary bookkeeping. + # + # `HttpOverCapnpFactory` will continue to support both methods. Use the `peerOptimizationLevel` + # constructor parameter to specify which method to use, for backwards-compatibiltiy purposes. + + connect @2 (host :Text, headers :List(HttpHeader), down :ByteStream, + context :ConnectClientRequestContext, settings :ConnectSettings) + -> (up :ByteStream); + # Setup an HTTP CONNECT proxy tunnel. + # + # The client sends the request host/headers together with a `down` ByteStream that will be used + # for communication across the tunnel. The server will respond with the other side of that + # ByteStream for two-way communication. The `context` includes callbacks which are used to + # supply the client with headers. interface ClientRequestContext { # Provides callbacks for the server to send the response. @@ -52,7 +86,20 @@ interface HttpService { # Server -> Client will be sent as calls to `downSocket`. } + interface ConnectClientRequestContext { + # Provides callbacks for the server to send the response. + + startConnect @0 (response :HttpResponse); + # Server calls this method to let the client know that the CONNECT request has been + # accepted. It also includes status code and header information. + + startError @1 (response :HttpResponse) -> (body :ByteStream); + # Server calls this method to let the client know that the CONNECT request has been rejected. + } + interface ServerRequestContext { + # DEPRECATED: Used only with startRequest(); see comments there. + # # Represents execution of a particular request on the server side. # # Dropping this object before the request completes will cancel the request. @@ -65,6 +112,10 @@ interface HttpService { } } +struct ConnectSettings { + useTls @0 :Bool; +} + interface WebSocket { sendText @0 (text :Text) -> stream; sendData @1 (data :Data) -> stream; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.h index aedd6f0d835..6b16749118b 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/http-over-capnp.h @@ -27,6 +27,8 @@ #include #include "byte-stream.h" +CAPNP_BEGIN_HEADER + namespace capnp { class HttpOverCapnpFactory { @@ -50,7 +52,21 @@ class HttpOverCapnpFactory { friend class HttpOverCapnpFactory; }; - HttpOverCapnpFactory(ByteStreamFactory& streamFactory, HeaderIdBundle headerIds); + enum OptimizationLevel { + // Specifies the protocol optimization level supported by the remote peer. Setting this higher + // will improve efficiency but breaks compatibility with older peers that don't implement newer + // levels. + + LEVEL_1, + // Use startRequest(), the original version of the protocol. + + LEVEL_2 + // Use request(). This is more efficient than startRequest() but won't work with old peers that + // only implement startRequest(). + }; + + HttpOverCapnpFactory(ByteStreamFactory& streamFactory, HeaderIdBundle headerIds, + OptimizationLevel peerOptimizationLevel = LEVEL_1); kj::Own capnpToKj(capnp::HttpService::Client rpcService); capnp::HttpService::Client kjToCapnp(kj::Own service); @@ -58,6 +74,7 @@ class HttpOverCapnpFactory { private: ByteStreamFactory& streamFactory; const kj::HttpHeaderTable& headerTable; + OptimizationLevel peerOptimizationLevel; kj::Array nameKjToCapnp; kj::Array nameCapnpToKj; kj::Array valueCapnpToKj; @@ -69,8 +86,11 @@ class HttpOverCapnpFactory { class KjToCapnpWebSocketAdapter; class ClientRequestContextImpl; + class ConnectClientRequestContextImpl; class KjToCapnpHttpServiceAdapter; + class HttpServiceResponseImpl; + class HttpOverCapnpConnectResponseImpl; class ServerRequestContextImpl; class CapnpToKjHttpServiceAdapter; @@ -82,3 +102,5 @@ class HttpOverCapnpFactory { }; } // namespace capnp + +CAPNP_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json-rpc.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json-rpc.h index 6954c644ede..c4d3b997001 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json-rpc.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json-rpc.h @@ -26,6 +26,8 @@ #include #include +CAPNP_BEGIN_HEADER + namespace kj { class HttpInputStream; } namespace capnp { @@ -42,7 +44,7 @@ class JsonRpc: private kj::TaskSet::ErrorHandler { class ContentLengthTransport; JsonRpc(Transport& transport, DynamicCapability::Client interface = {}); - KJ_DISALLOW_COPY(JsonRpc); + KJ_DISALLOW_COPY_AND_MOVE(JsonRpc); DynamicCapability::Client getPeer(InterfaceSchema schema); @@ -98,7 +100,7 @@ class JsonRpc::ContentLengthTransport: public Transport { public: explicit ContentLengthTransport(kj::AsyncIoStream& stream); ~ContentLengthTransport() noexcept(false); - KJ_DISALLOW_COPY(ContentLengthTransport); + KJ_DISALLOW_COPY_AND_MOVE(ContentLengthTransport); kj::Promise send(kj::StringPtr text) override; kj::Promise receive() override; @@ -110,3 +112,5 @@ class JsonRpc::ContentLengthTransport: public Transport { }; } // namespace capnp + +CAPNP_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json-test.c++ index 7a632ebab83..550ecafa7d2 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json-test.c++ @@ -50,6 +50,17 @@ KJ_TEST("basic json encoding") { KJ_EXPECT(json.encode(Data::Reader(bytes, 3)) == "[12, 34, 56]"); } +KJ_TEST("raw encoding") { + JsonCodec json; + + auto text = kj::str("{\"field\":\"value\"}"); + MallocMessageBuilder message; + auto value = message.initRoot(); + value.setRaw(text); + + KJ_EXPECT(json.encodeRaw(value) == text); +} + const char ALL_TYPES_JSON[] = "{ \"voidField\": null,\n" " \"boolField\": true,\n" @@ -606,6 +617,17 @@ KJ_TEST("basic json decoding") { KJ_EXPECT_THROW_MESSAGE("Unexpected input", json.decodeRaw("\f{}", root)); KJ_EXPECT_THROW_MESSAGE("Unexpected input", json.decodeRaw("{\v}", root)); } + + { + MallocMessageBuilder message; + auto root = message.initRoot(); + + json.decodeRaw(R"("\u007f")", root); + KJ_EXPECT(root.which() == JsonValue::STRING); + + char utf_buffer[] = {127, 0}; + KJ_EXPECT(kj::str(utf_buffer) == root.getString()); + } } KJ_TEST("maximum nesting depth") { diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.c++ index dd8b07b0e12..83a522f4ee6 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.c++ @@ -93,6 +93,10 @@ struct JsonCodec::Impl { return kj::strTree(call.getFunction(), '(', encodeList( kj::mv(encodedElements), childMultiline, indent, multiline, true), ')'); } + + case JsonValue::RAW: { + return kj::strTree(value.getRaw()); + } } KJ_FAIL_ASSERT("unknown JsonValue type", static_cast(value.which())); @@ -741,7 +745,7 @@ public: private: kj::String consumeQuotedString() { input.consume('"'); - // TODO(perf): Avoid copy / alloc if no escapes encoutered. + // TODO(perf): Avoid copy / alloc if no escapes encountered. // TODO(perf): Get statistics on string size and preallocate? kj::Vector decoded; @@ -819,9 +823,9 @@ private: if ('0' <= c && c <= '9') { codePoint |= c - '0'; } else if ('a' <= c && c <= 'f') { - codePoint |= c - 'a'; + codePoint |= c - 'a' + 10; } else if ('A' <= c && c <= 'F') { - codePoint |= c - 'A'; + codePoint |= c - 'A' + 10; } else { KJ_FAIL_REQUIRE("Invalid hex digit in unicode escape.", c); } @@ -1324,7 +1328,7 @@ private: const void* getUnionInstanceIdentifier(DynamicStruct::Builder obj) const { // Gets a value uniquely identifying an instance of a union. - // HACK: We return a poniter to the union's discriminant within the underlying buffer. + // HACK: We return a pointer to the union's discriminant within the underlying buffer. return reinterpret_cast( AnyStruct::Reader(obj.asReader()).getDataSection().begin()) + discriminantOffset; } diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp index ca8a8f3ebac..e5d1870c00f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp @@ -44,6 +44,18 @@ struct Value { # "binary" and "date" types in text, since JSON has no analog of these. This is basically the # reason this extension exists. We do NOT recommend using `call` unless you specifically need # to be compatible with some silly format that uses this syntax. + + raw @7 :Text; + # Used to indicate that the text should be written directly to the output without + # modifications. Use this if you have an already serialized JSON value and don't want + # to feel the cost of deserializing the value just to serialize it again. + # + # The parser will never produce a `raw` value -- this is only useful for serialization. + # + # WARNING: You MUST ensure that the value is valid stand-alone JSOn. It will not be verified. + # Invalid JSON could mjake the whole message unparsable. Worse, a malicious raw value could + # perform JSON injection attacks. Make sure that the value was produced by a trustworthy JSON + # encoder. } struct Field { diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp.c++ index 3556247666f..faf41e50660 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp.c++ @@ -5,17 +5,17 @@ namespace capnp { namespace schemas { -static const ::capnp::_::AlignedData<137> b_a3fa7845f919dd83 = { +static const ::capnp::_::AlignedData<152> b_a3fa7845f919dd83 = { { 0, 0, 0, 0, 5, 0, 6, 0, 131, 221, 25, 249, 69, 120, 250, 163, 24, 0, 0, 0, 1, 0, 2, 0, 52, 94, 58, 164, 151, 146, 249, 142, - 1, 0, 7, 0, 0, 0, 7, 0, + 1, 0, 7, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 242, 0, 0, 0, 33, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 53, 0, 0, 0, 143, 1, 0, 0, + 53, 0, 0, 0, 199, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 97, 112, 110, 112, 47, 99, 111, @@ -29,56 +29,63 @@ static const ::capnp::_::AlignedData<137> b_a3fa7845f919dd83 = { 5, 0, 0, 0, 42, 0, 0, 0, 70, 105, 101, 108, 100, 0, 0, 0, 67, 97, 108, 108, 0, 0, 0, 0, - 28, 0, 0, 0, 3, 0, 4, 0, + 32, 0, 0, 0, 3, 0, 4, 0, 0, 0, 255, 255, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 181, 0, 0, 0, 42, 0, 0, 0, + 209, 0, 0, 0, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 176, 0, 0, 0, 3, 0, 1, 0, - 188, 0, 0, 0, 2, 0, 1, 0, + 204, 0, 0, 0, 3, 0, 1, 0, + 216, 0, 0, 0, 2, 0, 1, 0, 1, 0, 254, 255, 16, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 185, 0, 0, 0, 66, 0, 0, 0, + 213, 0, 0, 0, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 180, 0, 0, 0, 3, 0, 1, 0, - 192, 0, 0, 0, 2, 0, 1, 0, + 208, 0, 0, 0, 3, 0, 1, 0, + 220, 0, 0, 0, 2, 0, 1, 0, 2, 0, 253, 255, 1, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 189, 0, 0, 0, 58, 0, 0, 0, + 217, 0, 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 184, 0, 0, 0, 3, 0, 1, 0, - 196, 0, 0, 0, 2, 0, 1, 0, + 212, 0, 0, 0, 3, 0, 1, 0, + 224, 0, 0, 0, 2, 0, 1, 0, 3, 0, 252, 255, 0, 0, 0, 0, 0, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 193, 0, 0, 0, 58, 0, 0, 0, + 221, 0, 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 188, 0, 0, 0, 3, 0, 1, 0, - 200, 0, 0, 0, 2, 0, 1, 0, + 216, 0, 0, 0, 3, 0, 1, 0, + 228, 0, 0, 0, 2, 0, 1, 0, 4, 0, 251, 255, 0, 0, 0, 0, 0, 0, 1, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 197, 0, 0, 0, 50, 0, 0, 0, + 225, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 192, 0, 0, 0, 3, 0, 1, 0, - 220, 0, 0, 0, 2, 0, 1, 0, + 220, 0, 0, 0, 3, 0, 1, 0, + 248, 0, 0, 0, 2, 0, 1, 0, 5, 0, 250, 255, 0, 0, 0, 0, 0, 0, 1, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 217, 0, 0, 0, 58, 0, 0, 0, + 245, 0, 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 212, 0, 0, 0, 3, 0, 1, 0, - 240, 0, 0, 0, 2, 0, 1, 0, + 240, 0, 0, 0, 3, 0, 1, 0, + 12, 1, 0, 0, 2, 0, 1, 0, 6, 0, 249, 255, 0, 0, 0, 0, 0, 0, 1, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 237, 0, 0, 0, 42, 0, 0, 0, + 9, 1, 0, 0, 42, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 4, 1, 0, 0, 3, 0, 1, 0, + 16, 1, 0, 0, 2, 0, 1, 0, + 7, 0, 248, 255, 0, 0, 0, 0, + 0, 0, 1, 0, 7, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 13, 1, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 232, 0, 0, 0, 3, 0, 1, 0, - 244, 0, 0, 0, 2, 0, 1, 0, + 8, 1, 0, 0, 3, 0, 1, 0, + 20, 1, 0, 0, 2, 0, 1, 0, 110, 117, 108, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -141,6 +148,14 @@ static const ::capnp::_::AlignedData<137> b_a3fa7845f919dd83 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 114, 97, 119, 0, 0, 0, 0, 0, + 12, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, } }; @@ -151,11 +166,11 @@ static const ::capnp::_::RawSchema* const d_a3fa7845f919dd83[] = { &s_a3fa7845f919dd83, &s_e31026e735d69ddf, }; -static const uint16_t m_a3fa7845f919dd83[] = {4, 1, 6, 0, 2, 5, 3}; -static const uint16_t i_a3fa7845f919dd83[] = {0, 1, 2, 3, 4, 5, 6}; +static const uint16_t m_a3fa7845f919dd83[] = {4, 1, 6, 0, 2, 5, 7, 3}; +static const uint16_t i_a3fa7845f919dd83[] = {0, 1, 2, 3, 4, 5, 6, 7}; const ::capnp::_::RawSchema s_a3fa7845f919dd83 = { - 0xa3fa7845f919dd83, b_a3fa7845f919dd83.words, 137, d_a3fa7845f919dd83, m_a3fa7845f919dd83, - 3, 7, i_a3fa7845f919dd83, nullptr, nullptr, { &s_a3fa7845f919dd83, nullptr, nullptr, 0, 0, nullptr } + 0xa3fa7845f919dd83, b_a3fa7845f919dd83.words, 152, d_a3fa7845f919dd83, m_a3fa7845f919dd83, + 3, 8, i_a3fa7845f919dd83, nullptr, nullptr, { &s_a3fa7845f919dd83, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<49> b_e31026e735d69ddf = { @@ -218,7 +233,7 @@ static const uint16_t m_e31026e735d69ddf[] = {0, 1}; static const uint16_t i_e31026e735d69ddf[] = {0, 1}; const ::capnp::_::RawSchema s_e31026e735d69ddf = { 0xe31026e735d69ddf, b_e31026e735d69ddf.words, 49, d_e31026e735d69ddf, m_e31026e735d69ddf, - 1, 2, i_e31026e735d69ddf, nullptr, nullptr, { &s_e31026e735d69ddf, nullptr, nullptr, 0, 0, nullptr } + 1, 2, i_e31026e735d69ddf, nullptr, nullptr, { &s_e31026e735d69ddf, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<54> b_a0d9f6eca1c93d48 = { @@ -286,7 +301,7 @@ static const uint16_t m_a0d9f6eca1c93d48[] = {0, 1}; static const uint16_t i_a0d9f6eca1c93d48[] = {0, 1}; const ::capnp::_::RawSchema s_a0d9f6eca1c93d48 = { 0xa0d9f6eca1c93d48, b_a0d9f6eca1c93d48.words, 54, d_a0d9f6eca1c93d48, m_a0d9f6eca1c93d48, - 1, 2, i_a0d9f6eca1c93d48, nullptr, nullptr, { &s_a0d9f6eca1c93d48, nullptr, nullptr, 0, 0, nullptr } + 1, 2, i_a0d9f6eca1c93d48, nullptr, nullptr, { &s_a0d9f6eca1c93d48, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<21> b_fa5b1fd61c2e7c3d = { @@ -316,7 +331,7 @@ static const ::capnp::_::AlignedData<21> b_fa5b1fd61c2e7c3d = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_fa5b1fd61c2e7c3d = { 0xfa5b1fd61c2e7c3d, b_fa5b1fd61c2e7c3d.words, 21, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_fa5b1fd61c2e7c3d, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_fa5b1fd61c2e7c3d, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<21> b_82d3e852af0336bf = { @@ -346,7 +361,7 @@ static const ::capnp::_::AlignedData<21> b_82d3e852af0336bf = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_82d3e852af0336bf = { 0x82d3e852af0336bf, b_82d3e852af0336bf.words, 21, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_82d3e852af0336bf, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_82d3e852af0336bf, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<35> b_c4df13257bc2ea61 = { @@ -392,7 +407,7 @@ static const uint16_t m_c4df13257bc2ea61[] = {0}; static const uint16_t i_c4df13257bc2ea61[] = {0}; const ::capnp::_::RawSchema s_c4df13257bc2ea61 = { 0xc4df13257bc2ea61, b_c4df13257bc2ea61.words, 35, nullptr, m_c4df13257bc2ea61, - 0, 1, i_c4df13257bc2ea61, nullptr, nullptr, { &s_c4df13257bc2ea61, nullptr, nullptr, 0, 0, nullptr } + 0, 1, i_c4df13257bc2ea61, nullptr, nullptr, { &s_c4df13257bc2ea61, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<22> b_cfa794e8d19a0162 = { @@ -423,7 +438,7 @@ static const ::capnp::_::AlignedData<22> b_cfa794e8d19a0162 = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_cfa794e8d19a0162 = { 0xcfa794e8d19a0162, b_cfa794e8d19a0162.words, 22, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_cfa794e8d19a0162, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_cfa794e8d19a0162, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<51> b_c2f8c20c293e5319 = { @@ -485,7 +500,7 @@ static const uint16_t m_c2f8c20c293e5319[] = {0, 1}; static const uint16_t i_c2f8c20c293e5319[] = {0, 1}; const ::capnp::_::RawSchema s_c2f8c20c293e5319 = { 0xc2f8c20c293e5319, b_c2f8c20c293e5319.words, 51, nullptr, m_c2f8c20c293e5319, - 0, 2, i_c2f8c20c293e5319, nullptr, nullptr, { &s_c2f8c20c293e5319, nullptr, nullptr, 0, 0, nullptr } + 0, 2, i_c2f8c20c293e5319, nullptr, nullptr, { &s_c2f8c20c293e5319, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<21> b_d7d879450a253e4b = { @@ -515,7 +530,7 @@ static const ::capnp::_::AlignedData<21> b_d7d879450a253e4b = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_d7d879450a253e4b = { 0xd7d879450a253e4b, b_d7d879450a253e4b.words, 21, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_d7d879450a253e4b, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_d7d879450a253e4b, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<21> b_f061e22f0ae5c7b5 = { @@ -545,7 +560,7 @@ static const ::capnp::_::AlignedData<21> b_f061e22f0ae5c7b5 = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_f061e22f0ae5c7b5 = { 0xf061e22f0ae5c7b5, b_f061e22f0ae5c7b5.words, 21, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_f061e22f0ae5c7b5, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_f061e22f0ae5c7b5, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<22> b_a0a054dea32fd98c = { @@ -576,7 +591,7 @@ static const ::capnp::_::AlignedData<22> b_a0a054dea32fd98c = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_a0a054dea32fd98c = { 0xa0a054dea32fd98c, b_a0a054dea32fd98c.words, 22, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_a0a054dea32fd98c, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_a0a054dea32fd98c, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE } // namespace schemas @@ -588,43 +603,63 @@ namespace capnp { namespace json { // Value +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Value::_capnpPrivate::dataWordSize; constexpr uint16_t Value::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Value::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Value::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Value::Field +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Value::Field::_capnpPrivate::dataWordSize; constexpr uint16_t Value::Field::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Value::Field::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Value::Field::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Value::Call +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Value::Call::_capnpPrivate::dataWordSize; constexpr uint16_t Value::Call::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Value::Call::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Value::Call::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // FlattenOptions +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t FlattenOptions::_capnpPrivate::dataWordSize; constexpr uint16_t FlattenOptions::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind FlattenOptions::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* FlattenOptions::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // DiscriminatorOptions +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t DiscriminatorOptions::_capnpPrivate::dataWordSize; constexpr uint16_t DiscriminatorOptions::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind DiscriminatorOptions::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* DiscriminatorOptions::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp.h index 1454e3e6494..35a218ce5bb 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.capnp.h @@ -9,7 +9,9 @@ #include #endif // !CAPNP_LITE -#if CAPNP_VERSION != 9001 +#ifndef CAPNP_VERSION +#error "CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?" +#elif CAPNP_VERSION != 1000002 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." #endif @@ -51,6 +53,7 @@ struct Value { ARRAY, OBJECT, CALL, + RAW, }; struct Field; struct Call; @@ -168,6 +171,10 @@ class Value::Reader { inline bool hasCall() const; inline ::capnp::json::Value::Call::Reader getCall() const; + inline bool isRaw() const; + inline bool hasRaw() const; + inline ::capnp::Text::Reader getRaw() const; + private: ::capnp::_::StructReader _reader; template @@ -241,6 +248,14 @@ class Value::Builder { inline void adoptCall(::capnp::Orphan< ::capnp::json::Value::Call>&& value); inline ::capnp::Orphan< ::capnp::json::Value::Call> disownCall(); + inline bool isRaw(); + inline bool hasRaw(); + inline ::capnp::Text::Builder getRaw(); + inline void setRaw( ::capnp::Text::Reader value); + inline ::capnp::Text::Builder initRaw(unsigned int size); + inline void adoptRaw(::capnp::Orphan< ::capnp::Text>&& value); + inline ::capnp::Orphan< ::capnp::Text> disownRaw(); + private: ::capnp::_::StructBuilder _builder; template @@ -927,6 +942,60 @@ inline ::capnp::Orphan< ::capnp::json::Value::Call> Value::Builder::disownCall() ::capnp::bounded<0>() * ::capnp::POINTERS)); } +inline bool Value::Reader::isRaw() const { + return which() == Value::RAW; +} +inline bool Value::Builder::isRaw() { + return which() == Value::RAW; +} +inline bool Value::Reader::hasRaw() const { + if (which() != Value::RAW) return false; + return !_reader.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); +} +inline bool Value::Builder::hasRaw() { + if (which() != Value::RAW) return false; + return !_builder.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); +} +inline ::capnp::Text::Reader Value::Reader::getRaw() const { + KJ_IREQUIRE((which() == Value::RAW), + "Must check which() before get()ing a union member."); + return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_reader.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS)); +} +inline ::capnp::Text::Builder Value::Builder::getRaw() { + KJ_IREQUIRE((which() == Value::RAW), + "Must check which() before get()ing a union member."); + return ::capnp::_::PointerHelpers< ::capnp::Text>::get(_builder.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS)); +} +inline void Value::Builder::setRaw( ::capnp::Text::Reader value) { + _builder.setDataField( + ::capnp::bounded<0>() * ::capnp::ELEMENTS, Value::RAW); + ::capnp::_::PointerHelpers< ::capnp::Text>::set(_builder.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS), value); +} +inline ::capnp::Text::Builder Value::Builder::initRaw(unsigned int size) { + _builder.setDataField( + ::capnp::bounded<0>() * ::capnp::ELEMENTS, Value::RAW); + return ::capnp::_::PointerHelpers< ::capnp::Text>::init(_builder.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS), size); +} +inline void Value::Builder::adoptRaw( + ::capnp::Orphan< ::capnp::Text>&& value) { + _builder.setDataField( + ::capnp::bounded<0>() * ::capnp::ELEMENTS, Value::RAW); + ::capnp::_::PointerHelpers< ::capnp::Text>::adopt(_builder.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value)); +} +inline ::capnp::Orphan< ::capnp::Text> Value::Builder::disownRaw() { + KJ_IREQUIRE((which() == Value::RAW), + "Must check which() before get()ing a union member."); + return ::capnp::_::PointerHelpers< ::capnp::Text>::disown(_builder.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS)); +} + inline bool Value::Field::Reader::hasName() const { return !_reader.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.h index f5dbf38b423..8ce477ed377 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/json.h @@ -25,6 +25,8 @@ #include #include +CAPNP_BEGIN_HEADER + namespace capnp { typedef json::Value JsonValue; @@ -523,3 +525,5 @@ void JsonCodec::handleByAnnotation() { } } // namespace capnp + +CAPNP_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/std-iterator.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/std-iterator.h index 1e6d7b947a0..aac249d7b10 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/std-iterator.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/std-iterator.h @@ -29,11 +29,19 @@ #include "../list.h" #include +CAPNP_BEGIN_HEADER + namespace std { template -struct iterator_traits> - : public std::iterator {}; +struct iterator_traits> { + using iterator_category = std::random_access_iterator_tag; + using value_type = Element; + using difference_type = int; + using pointer = Element*; + using reference = Element; +}; } // namespace std +CAPNP_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/websocket-rpc.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/websocket-rpc.h index a94b27adc24..80c8ae25373 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compat/websocket-rpc.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compat/websocket-rpc.h @@ -24,6 +24,8 @@ #include #include +CAPNP_BEGIN_HEADER + namespace capnp { class WebSocketMessageStream final : public MessageStream { @@ -51,3 +53,5 @@ class WebSocketMessageStream final : public MessageStream { }; } // namespace capnp + +CAPNP_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnp-test.sh b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnp-test.sh index b35e5072e3e..c435a3d3a88 100755 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnp-test.sh +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnp-test.sh @@ -119,6 +119,9 @@ test_eval 'TestListDefaults.lists.int32ListList[2][0]' 12341234 test "x`$CAPNP eval $SCHEMA -ojson globalPrintableStruct | tr -d '\r'`" = "x{\"someText\": \"foo\"}" || fail eval json "globalPrintableStruct == {someText = \"foo\"}" +$CAPNP eval $TESTDATA/no-file-id.capnp.nobuild foo >/dev/null || fail eval "file without file ID can be parsed" +test "x`$CAPNP eval $TESTDATA/no-file-id.capnp.nobuild foo | tr -d '\r'`" = 'x"bar"' || fail eval "file without file ID parsed correctly" + $CAPNP compile --no-standard-import --src-prefix="$PREFIX" -ofoo $TESTDATA/errors.capnp.nobuild 2>&1 | sed -e "s,^.*errors[.]capnp[.]nobuild:,file:,g" | tr -d '\r' | diff -u $TESTDATA/errors.txt - || fail error output diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnp.c++ index 79569546dac..b00b41ddc5d 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnp.c++ @@ -23,6 +23,11 @@ #define _GNU_SOURCE #endif +#ifndef _FILE_OFFSET_BITS +#define _FILE_OFFSET_BITS 64 +// Request 64-bit off_t and ino_t, otherwise this code will break when either value exceeds 2^32. +#endif + #if _WIN32 #include #endif @@ -249,6 +254,12 @@ public: // Default convert to text unless -o is given. convertTo = Format::TEXT; + // When using `capnp eval`, type IDs don't really matter, because `eval` won't actually use + // them for anything. When using Cap'n Proto an a config format -- the common use case for + // `capnp eval` -- the exercise of adding a file ID to every file is pointless busy work. So, + // we don't require it. + loader.setFileIdsRequired(false); + kj::MainBuilder builder(context, VERSION_STRING, "Prints (or encodes) the value of , which must be defined in . " " must refer to a const declaration, a field of a struct type (prints the default " diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnpc-c++.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnpc-c++.c++ index 853375f4267..a60d4770e36 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnpc-c++.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/capnpc-c++.c++ @@ -64,6 +64,7 @@ namespace { static constexpr uint64_t NAMESPACE_ANNOTATION_ID = 0xb9c6f99ebf805f2cull; static constexpr uint64_t NAME_ANNOTATION_ID = 0xf264a779fef191ceull; +static constexpr uint64_t ALLOW_CANCELLATION_ANNOTATION_ID = 0xac7096ff8cfc9dceull; bool hasDiscriminantValue(const schema::Field::Reader& reader) { return reader.getDiscriminantValue() != schema::Field::NO_DISCRIMINANT; @@ -430,7 +431,7 @@ private: #if 0 // Figure out exactly how many params are not bound to AnyPointer. - // TODO(msvc): In a few obscure cases, MSVC does not like empty template pramater lists, + // TODO(msvc): In a few obscure cases, MSVC does not like empty template parameter lists, // even if all parameters have defaults. So, we give in and explicitly list all // parameters in our generated code for now. Try again later. uint paramCount = 0; @@ -2045,11 +2046,15 @@ private: kj::StringTree defineText = kj::strTree( "// ", fullName, "\n", + "#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL\n", templates, "constexpr uint16_t ", fullName, "::_capnpPrivate::dataWordSize;\n", - templates, "constexpr uint16_t ", fullName, "::_capnpPrivate::pointerCount;\n" + templates, "constexpr uint16_t ", fullName, "::_capnpPrivate::pointerCount;\n", + "#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL\n", "#if !CAPNP_LITE\n", + "#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL\n", templates, "constexpr ::capnp::Kind ", fullName, "::_capnpPrivate::kind;\n", - templates, "constexpr ::capnp::_::RawSchema const* ", fullName, "::_capnpPrivate::schema;\n"); + templates, "constexpr ::capnp::_::RawSchema const* ", fullName, "::_capnpPrivate::schema;\n", + "#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL\n"); if (templateContext.isGeneric()) { auto brandInitializers = makeBrandInitializers(templateContext, schema); @@ -2236,6 +2241,8 @@ private: // the `CAPNP_AUTO_IF_MSVC()` hackery in the return type declarations below. We're depending on // the fact that that this function has an inline implementation for the deduction to work. + bool noPromisePipelining = !resultSchema.mayContainCapabilities(); + auto requestMethodImpl = kj::strTree( templateContext.allDecls(), implicitParamsTemplateDecl, @@ -2247,9 +2254,24 @@ private: isStreaming ? kj::strTree(" return newStreamingCall<", paramType, ">(\n") : kj::strTree(" return newCall<", paramType, ", ", resultType, ">(\n"), - " 0x", interfaceIdHex, "ull, ", methodId, ", sizeHint);\n" + " 0x", interfaceIdHex, "ull, ", methodId, ", sizeHint, {", noPromisePipelining, "});\n" "}\n"); + bool allowCancellation = false; + if (annotationValue(proto, ALLOW_CANCELLATION_ANNOTATION_ID) != nullptr) { + allowCancellation = true; + } else if (annotationValue(interfaceProto, ALLOW_CANCELLATION_ANNOTATION_ID) != nullptr) { + allowCancellation = true; + } else { + schema::Node::Reader node = interfaceProto; + while (!node.isFile()) { + node = schemaLoader.get(node.getScopeId()).getProto(); + } + if (annotationValue(node, ALLOW_CANCELLATION_ANNOTATION_ID) != nullptr) { + allowCancellation = true; + } + } + return MethodText { kj::strTree( implicitParamsTemplateDecl.size() == 0 ? "" : " ", implicitParamsTemplateDecl, @@ -2297,7 +2319,8 @@ private: " return ", identifierName, "(::capnp::Capability::Server::internalGetTypedStreamingContext<\n" " ", genericParamType, ">(context));\n" " }),\n" - " true\n" + " true,\n" + " ", allowCancellation, "\n" " };\n") : kj::strTree( // For non-streaming calls we let exceptions just flow through for a little more @@ -2305,7 +2328,8 @@ private: " return {\n" " ", identifierName, "(::capnp::Capability::Server::internalGetTypedContext<\n" " ", genericParamType, ", ", genericResultType, ">(context)),\n" - " false\n" + " false,\n" + " ", allowCancellation, "\n" " };\n")) }; } @@ -2372,8 +2396,10 @@ private: kj::StringTree defineText = kj::strTree( "// ", fullName, "\n", "#if !CAPNP_LITE\n", + "#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL\n", templates, "constexpr ::capnp::Kind ", fullName, "::_capnpPrivate::kind;\n", - templates, "constexpr ::capnp::_::RawSchema const* ", fullName, "::_capnpPrivate::schema;\n"); + templates, "constexpr ::capnp::_::RawSchema const* ", fullName, "::_capnpPrivate::schema;\n" + "#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL\n"); if (templateContext.isGeneric()) { auto brandInitializers = makeBrandInitializers(templateContext, schema); @@ -2583,9 +2609,7 @@ private: kj::strTree("static constexpr ", typeName_, ' ', upperCase, " = ", literalValue(schema.getType(), constProto.getValue()), ";\n"), scope.size() == 0 ? kj::strTree() : kj::strTree( - // TODO(msvc): MSVC doesn't like definitions of constexprs, but other compilers and - // the standard require them. - "#if !defined(_MSC_VER) || defined(__clang__)\n" + "#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL\n" "constexpr ", typeName_, ' ', scope, upperCase, ";\n" "#endif\n") }; @@ -2771,6 +2795,8 @@ private: auto brandDeps = makeBrandDepInitializers( makeBrandDepMap(templateContext, schema.getGeneric())); + bool mayContainCapabilities = proto.isStruct() && schema.asStruct().mayContainCapabilities(); + auto schemaDef = kj::strTree( "static const ::capnp::_::AlignedData<", rawSchema.size(), "> b_", hexId, " = {\n" " {", kj::mv(schemaLiteral), " }\n" @@ -2803,7 +2829,7 @@ private: ", nullptr, nullptr, { &s_", hexId, ", nullptr, ", brandDeps.size() == 0 ? kj::strTree("nullptr, 0, 0") : kj::strTree( "bd_", hexId, ", 0, " "sizeof(bd_", hexId, ") / sizeof(bd_", hexId, "[0])"), - ", nullptr }\n" + ", nullptr }, ", mayContainCapabilities, "\n" "};\n" "#endif // !CAPNP_LITE\n"); @@ -3042,7 +3068,9 @@ private: "#endif // !CAPNP_LITE\n" ) : kj::strTree(), "\n" - "#if CAPNP_VERSION != ", CAPNP_VERSION, "\n" + "#ifndef CAPNP_VERSION\n" + "#error \"CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?\"\n" + "#elif CAPNP_VERSION != ", CAPNP_VERSION, "\n" "#error \"Version mismatch between generated code and library headers. You must " "use the same version of the Cap'n Proto compiler and library.\"\n" "#endif\n" @@ -3152,6 +3180,8 @@ private: schemaLoader.load(node); } + schemaLoader.computeOptimizationHints(); + for (auto requestedFile: request.getRequestedFiles()) { auto schema = schemaLoader.get(requestedFile.getId()); auto fileText = makeFileText(schema, requestedFile); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/compiler.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/compiler.h index 36c5dca5f52..375bf59d43b 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/compiler.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/compiler.h @@ -76,7 +76,7 @@ class Compiler final: private SchemaLoader::LazyLoadCallback { explicit Compiler(AnnotationFlag annotationFlag = COMPILE_ANNOTATIONS); ~Compiler() noexcept(false); - KJ_DISALLOW_COPY(Compiler); + KJ_DISALLOW_COPY_AND_MOVE(Compiler); class CompiledType { // Represents a compiled type expression, from which you can traverse to nested types, apply @@ -197,11 +197,11 @@ class Compiler final: private SchemaLoader::LazyLoadCallback { // dependencies. PARENTS = 1 << 1, - // Eagerly compile all lexical parents of the requested node. Only meaningful in conjuction + // Eagerly compile all lexical parents of the requested node. Only meaningful in conjunction // with NODE. CHILDREN = 1 << 2, - // Eagerly compile all of the node's lexically nested nodes. Only meaningful in conjuction + // Eagerly compile all of the node's lexically nested nodes. Only meaningful in conjunction // with NODE. DEPENDENCIES = NODE << 15, diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/error-reporter.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/error-reporter.h index e3bf6acf6ff..1fc66c52cdb 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/error-reporter.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/error-reporter.h @@ -21,7 +21,7 @@ #pragma once -#include "../common.h" +#include #include #include #include diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/evolution-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/evolution-test.c++ index 48fe66bf534..964105a6129 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/evolution-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/evolution-test.c++ @@ -872,7 +872,7 @@ public: } kj::MainBuilder::Validity run() { - // https://github.com/sandstorm-io/capnproto/issues/344 describes an obscure bug in the layout + // https://github.com/capnproto/capnproto/issues/344 describes an obscure bug in the layout // algorithm, the fix for which breaks backwards-compatibility for any schema triggering the // bug. In order to avoid silently breaking protocols, we are temporarily throwing an exception // in cases where this bug would have occurred, so that people can decide what to do. diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/grammar.capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/grammar.capnp.c++ index 65b20e9bf96..f433a1cf14f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/grammar.capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/grammar.capnp.c++ @@ -79,7 +79,7 @@ static const uint16_t m_e75816b56529d464[] = {2, 1, 0}; static const uint16_t i_e75816b56529d464[] = {0, 1, 2}; const ::capnp::_::RawSchema s_e75816b56529d464 = { 0xe75816b56529d464, b_e75816b56529d464.words, 66, nullptr, m_e75816b56529d464, - 0, 3, i_e75816b56529d464, nullptr, nullptr, { &s_e75816b56529d464, nullptr, nullptr, 0, 0, nullptr } + 0, 3, i_e75816b56529d464, nullptr, nullptr, { &s_e75816b56529d464, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<66> b_991c7a3693d62cf2 = { @@ -156,7 +156,7 @@ static const uint16_t m_991c7a3693d62cf2[] = {2, 1, 0}; static const uint16_t i_991c7a3693d62cf2[] = {0, 1, 2}; const ::capnp::_::RawSchema s_991c7a3693d62cf2 = { 0x991c7a3693d62cf2, b_991c7a3693d62cf2.words, 66, nullptr, m_991c7a3693d62cf2, - 0, 3, i_991c7a3693d62cf2, nullptr, nullptr, { &s_991c7a3693d62cf2, nullptr, nullptr, 0, 0, nullptr } + 0, 3, i_991c7a3693d62cf2, nullptr, nullptr, { &s_991c7a3693d62cf2, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<66> b_90f2a60678fd2367 = { @@ -233,7 +233,7 @@ static const uint16_t m_90f2a60678fd2367[] = {2, 1, 0}; static const uint16_t i_90f2a60678fd2367[] = {0, 1, 2}; const ::capnp::_::RawSchema s_90f2a60678fd2367 = { 0x90f2a60678fd2367, b_90f2a60678fd2367.words, 66, nullptr, m_90f2a60678fd2367, - 0, 3, i_90f2a60678fd2367, nullptr, nullptr, { &s_90f2a60678fd2367, nullptr, nullptr, 0, 0, nullptr } + 0, 3, i_90f2a60678fd2367, nullptr, nullptr, { &s_90f2a60678fd2367, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<262> b_8e207d4dfe54d0de = { @@ -513,7 +513,7 @@ static const uint16_t m_8e207d4dfe54d0de[] = {13, 11, 10, 15, 9, 3, 14, 6, 12, 2 static const uint16_t i_8e207d4dfe54d0de[] = {0, 1, 2, 3, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 8, 9}; const ::capnp::_::RawSchema s_8e207d4dfe54d0de = { 0x8e207d4dfe54d0de, b_8e207d4dfe54d0de.words, 262, d_8e207d4dfe54d0de, m_8e207d4dfe54d0de, - 5, 16, i_8e207d4dfe54d0de, nullptr, nullptr, { &s_8e207d4dfe54d0de, nullptr, nullptr, 0, 0, nullptr } + 5, 16, i_8e207d4dfe54d0de, nullptr, nullptr, { &s_8e207d4dfe54d0de, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<65> b_c90246b71adedbaa = { @@ -593,7 +593,7 @@ static const uint16_t m_c90246b71adedbaa[] = {1, 0, 2}; static const uint16_t i_c90246b71adedbaa[] = {0, 1, 2}; const ::capnp::_::RawSchema s_c90246b71adedbaa = { 0xc90246b71adedbaa, b_c90246b71adedbaa.words, 65, d_c90246b71adedbaa, m_c90246b71adedbaa, - 2, 3, i_c90246b71adedbaa, nullptr, nullptr, { &s_c90246b71adedbaa, nullptr, nullptr, 0, 0, nullptr } + 2, 3, i_c90246b71adedbaa, nullptr, nullptr, { &s_c90246b71adedbaa, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<55> b_aee8397040b0df7a = { @@ -663,7 +663,7 @@ static const uint16_t m_aee8397040b0df7a[] = {0, 1}; static const uint16_t i_aee8397040b0df7a[] = {0, 1}; const ::capnp::_::RawSchema s_aee8397040b0df7a = { 0xaee8397040b0df7a, b_aee8397040b0df7a.words, 55, d_aee8397040b0df7a, m_aee8397040b0df7a, - 2, 2, i_aee8397040b0df7a, nullptr, nullptr, { &s_aee8397040b0df7a, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_aee8397040b0df7a, nullptr, nullptr, { &s_aee8397040b0df7a, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<49> b_aa28e1400d793359 = { @@ -727,7 +727,7 @@ static const uint16_t m_aa28e1400d793359[] = {1, 0}; static const uint16_t i_aa28e1400d793359[] = {0, 1}; const ::capnp::_::RawSchema s_aa28e1400d793359 = { 0xaa28e1400d793359, b_aa28e1400d793359.words, 49, d_aa28e1400d793359, m_aa28e1400d793359, - 2, 2, i_aa28e1400d793359, nullptr, nullptr, { &s_aa28e1400d793359, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_aa28e1400d793359, nullptr, nullptr, { &s_aa28e1400d793359, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<677> b_96efe787c17e83bb = { @@ -1429,7 +1429,7 @@ static const uint16_t m_96efe787c17e83bb[] = {18, 3, 40, 37, 39, 22, 41, 34, 31, static const uint16_t i_96efe787c17e83bb[] = {7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 0, 1, 2, 3, 4, 5, 6, 38}; const ::capnp::_::RawSchema s_96efe787c17e83bb = { 0x96efe787c17e83bb, b_96efe787c17e83bb.words, 677, d_96efe787c17e83bb, m_96efe787c17e83bb, - 12, 42, i_96efe787c17e83bb, nullptr, nullptr, { &s_96efe787c17e83bb, nullptr, nullptr, 0, 0, nullptr } + 12, 42, i_96efe787c17e83bb, nullptr, nullptr, { &s_96efe787c17e83bb, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<67> b_d5e71144af1ce175 = { @@ -1507,7 +1507,7 @@ static const uint16_t m_d5e71144af1ce175[] = {2, 0, 1}; static const uint16_t i_d5e71144af1ce175[] = {0, 1, 2}; const ::capnp::_::RawSchema s_d5e71144af1ce175 = { 0xd5e71144af1ce175, b_d5e71144af1ce175.words, 67, nullptr, m_d5e71144af1ce175, - 0, 3, i_d5e71144af1ce175, nullptr, nullptr, { &s_d5e71144af1ce175, nullptr, nullptr, 0, 0, nullptr } + 0, 3, i_d5e71144af1ce175, nullptr, nullptr, { &s_d5e71144af1ce175, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<45> b_d00489d473826290 = { @@ -1567,7 +1567,7 @@ static const uint16_t m_d00489d473826290[] = {0, 1}; static const uint16_t i_d00489d473826290[] = {0, 1}; const ::capnp::_::RawSchema s_d00489d473826290 = { 0xd00489d473826290, b_d00489d473826290.words, 45, d_d00489d473826290, m_d00489d473826290, - 2, 2, i_d00489d473826290, nullptr, nullptr, { &s_d00489d473826290, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_d00489d473826290, nullptr, nullptr, { &s_d00489d473826290, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<53> b_fb5aeed95cdf6af9 = { @@ -1635,7 +1635,7 @@ static const uint16_t m_fb5aeed95cdf6af9[] = {1, 0}; static const uint16_t i_fb5aeed95cdf6af9[] = {0, 1}; const ::capnp::_::RawSchema s_fb5aeed95cdf6af9 = { 0xfb5aeed95cdf6af9, b_fb5aeed95cdf6af9.words, 53, d_fb5aeed95cdf6af9, m_fb5aeed95cdf6af9, - 2, 2, i_fb5aeed95cdf6af9, nullptr, nullptr, { &s_fb5aeed95cdf6af9, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_fb5aeed95cdf6af9, nullptr, nullptr, { &s_fb5aeed95cdf6af9, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<28> b_94099c3f9eb32d6b = { @@ -1672,7 +1672,7 @@ static const ::capnp::_::AlignedData<28> b_94099c3f9eb32d6b = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_94099c3f9eb32d6b = { 0x94099c3f9eb32d6b, b_94099c3f9eb32d6b.words, 28, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_94099c3f9eb32d6b, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_94099c3f9eb32d6b, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<102> b_b3f66e7a79d81bcd = { @@ -1789,7 +1789,7 @@ static const uint16_t m_b3f66e7a79d81bcd[] = {3, 0, 2, 4, 1}; static const uint16_t i_b3f66e7a79d81bcd[] = {0, 1, 4, 2, 3}; const ::capnp::_::RawSchema s_b3f66e7a79d81bcd = { 0xb3f66e7a79d81bcd, b_b3f66e7a79d81bcd.words, 102, d_b3f66e7a79d81bcd, m_b3f66e7a79d81bcd, - 2, 5, i_b3f66e7a79d81bcd, nullptr, nullptr, { &s_b3f66e7a79d81bcd, nullptr, nullptr, 0, 0, nullptr } + 2, 5, i_b3f66e7a79d81bcd, nullptr, nullptr, { &s_b3f66e7a79d81bcd, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<110> b_fffe08a9a697d2a5 = { @@ -1916,7 +1916,7 @@ static const uint16_t m_fffe08a9a697d2a5[] = {2, 3, 5, 0, 4, 1}; static const uint16_t i_fffe08a9a697d2a5[] = {0, 1, 2, 3, 4, 5}; const ::capnp::_::RawSchema s_fffe08a9a697d2a5 = { 0xfffe08a9a697d2a5, b_fffe08a9a697d2a5.words, 110, d_fffe08a9a697d2a5, m_fffe08a9a697d2a5, - 4, 6, i_fffe08a9a697d2a5, nullptr, nullptr, { &s_fffe08a9a697d2a5, nullptr, nullptr, 0, 0, nullptr } + 4, 6, i_fffe08a9a697d2a5, nullptr, nullptr, { &s_fffe08a9a697d2a5, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<51> b_e5104515fd88ea47 = { @@ -1982,7 +1982,7 @@ static const uint16_t m_e5104515fd88ea47[] = {0, 1}; static const uint16_t i_e5104515fd88ea47[] = {0, 1}; const ::capnp::_::RawSchema s_e5104515fd88ea47 = { 0xe5104515fd88ea47, b_e5104515fd88ea47.words, 51, d_e5104515fd88ea47, m_e5104515fd88ea47, - 2, 2, i_e5104515fd88ea47, nullptr, nullptr, { &s_e5104515fd88ea47, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_e5104515fd88ea47, nullptr, nullptr, { &s_e5104515fd88ea47, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<65> b_89f0c973c103ae96 = { @@ -2062,7 +2062,7 @@ static const uint16_t m_89f0c973c103ae96[] = {2, 1, 0}; static const uint16_t i_89f0c973c103ae96[] = {0, 1, 2}; const ::capnp::_::RawSchema s_89f0c973c103ae96 = { 0x89f0c973c103ae96, b_89f0c973c103ae96.words, 65, d_89f0c973c103ae96, m_89f0c973c103ae96, - 2, 3, i_89f0c973c103ae96, nullptr, nullptr, { &s_89f0c973c103ae96, nullptr, nullptr, 0, 0, nullptr } + 2, 3, i_89f0c973c103ae96, nullptr, nullptr, { &s_89f0c973c103ae96, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<34> b_e93164a80bfe2ccf = { @@ -2111,7 +2111,7 @@ static const uint16_t m_e93164a80bfe2ccf[] = {0}; static const uint16_t i_e93164a80bfe2ccf[] = {0}; const ::capnp::_::RawSchema s_e93164a80bfe2ccf = { 0xe93164a80bfe2ccf, b_e93164a80bfe2ccf.words, 34, d_e93164a80bfe2ccf, m_e93164a80bfe2ccf, - 2, 1, i_e93164a80bfe2ccf, nullptr, nullptr, { &s_e93164a80bfe2ccf, nullptr, nullptr, 0, 0, nullptr } + 2, 1, i_e93164a80bfe2ccf, nullptr, nullptr, { &s_e93164a80bfe2ccf, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<49> b_b348322a8dcf0d0c = { @@ -2175,7 +2175,7 @@ static const uint16_t m_b348322a8dcf0d0c[] = {0, 1}; static const uint16_t i_b348322a8dcf0d0c[] = {0, 1}; const ::capnp::_::RawSchema s_b348322a8dcf0d0c = { 0xb348322a8dcf0d0c, b_b348322a8dcf0d0c.words, 49, d_b348322a8dcf0d0c, m_b348322a8dcf0d0c, - 2, 2, i_b348322a8dcf0d0c, nullptr, nullptr, { &s_b348322a8dcf0d0c, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_b348322a8dcf0d0c, nullptr, nullptr, { &s_b348322a8dcf0d0c, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<43> b_8f2622208fb358c8 = { @@ -2234,7 +2234,7 @@ static const uint16_t m_8f2622208fb358c8[] = {1, 0}; static const uint16_t i_8f2622208fb358c8[] = {0, 1}; const ::capnp::_::RawSchema s_8f2622208fb358c8 = { 0x8f2622208fb358c8, b_8f2622208fb358c8.words, 43, d_8f2622208fb358c8, m_8f2622208fb358c8, - 3, 2, i_8f2622208fb358c8, nullptr, nullptr, { &s_8f2622208fb358c8, nullptr, nullptr, 0, 0, nullptr } + 3, 2, i_8f2622208fb358c8, nullptr, nullptr, { &s_8f2622208fb358c8, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<51> b_d0d1a21de617951f = { @@ -2300,7 +2300,7 @@ static const uint16_t m_d0d1a21de617951f[] = {0, 1}; static const uint16_t i_d0d1a21de617951f[] = {0, 1}; const ::capnp::_::RawSchema s_d0d1a21de617951f = { 0xd0d1a21de617951f, b_d0d1a21de617951f.words, 51, d_d0d1a21de617951f, m_d0d1a21de617951f, - 2, 2, i_d0d1a21de617951f, nullptr, nullptr, { &s_d0d1a21de617951f, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_d0d1a21de617951f, nullptr, nullptr, { &s_d0d1a21de617951f, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<40> b_992a90eaf30235d3 = { @@ -2355,7 +2355,7 @@ static const uint16_t m_992a90eaf30235d3[] = {0}; static const uint16_t i_992a90eaf30235d3[] = {0}; const ::capnp::_::RawSchema s_992a90eaf30235d3 = { 0x992a90eaf30235d3, b_992a90eaf30235d3.words, 40, d_992a90eaf30235d3, m_992a90eaf30235d3, - 2, 1, i_992a90eaf30235d3, nullptr, nullptr, { &s_992a90eaf30235d3, nullptr, nullptr, 0, 0, nullptr } + 2, 1, i_992a90eaf30235d3, nullptr, nullptr, { &s_992a90eaf30235d3, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<42> b_eb971847d617c0b9 = { @@ -2413,7 +2413,7 @@ static const uint16_t m_eb971847d617c0b9[] = {0, 1}; static const uint16_t i_eb971847d617c0b9[] = {0, 1}; const ::capnp::_::RawSchema s_eb971847d617c0b9 = { 0xeb971847d617c0b9, b_eb971847d617c0b9.words, 42, d_eb971847d617c0b9, m_eb971847d617c0b9, - 3, 2, i_eb971847d617c0b9, nullptr, nullptr, { &s_eb971847d617c0b9, nullptr, nullptr, 0, 0, nullptr } + 3, 2, i_eb971847d617c0b9, nullptr, nullptr, { &s_eb971847d617c0b9, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<51> b_c6238c7d62d65173 = { @@ -2479,7 +2479,7 @@ static const uint16_t m_c6238c7d62d65173[] = {1, 0}; static const uint16_t i_c6238c7d62d65173[] = {0, 1}; const ::capnp::_::RawSchema s_c6238c7d62d65173 = { 0xc6238c7d62d65173, b_c6238c7d62d65173.words, 51, d_c6238c7d62d65173, m_c6238c7d62d65173, - 2, 2, i_c6238c7d62d65173, nullptr, nullptr, { &s_c6238c7d62d65173, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_c6238c7d62d65173, nullptr, nullptr, { &s_c6238c7d62d65173, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<230> b_9cb9e86e3198037f = { @@ -2724,7 +2724,7 @@ static const uint16_t m_9cb9e86e3198037f[] = {12, 2, 3, 4, 6, 1, 8, 9, 10, 11, 5 static const uint16_t i_9cb9e86e3198037f[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}; const ::capnp::_::RawSchema s_9cb9e86e3198037f = { 0x9cb9e86e3198037f, b_9cb9e86e3198037f.words, 230, d_9cb9e86e3198037f, m_9cb9e86e3198037f, - 2, 13, i_9cb9e86e3198037f, nullptr, nullptr, { &s_9cb9e86e3198037f, nullptr, nullptr, 0, 0, nullptr } + 2, 13, i_9cb9e86e3198037f, nullptr, nullptr, { &s_9cb9e86e3198037f, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<34> b_84e4f3f5a807605c = { @@ -2772,7 +2772,7 @@ static const uint16_t m_84e4f3f5a807605c[] = {0}; static const uint16_t i_84e4f3f5a807605c[] = {0}; const ::capnp::_::RawSchema s_84e4f3f5a807605c = { 0x84e4f3f5a807605c, b_84e4f3f5a807605c.words, 34, d_84e4f3f5a807605c, m_84e4f3f5a807605c, - 1, 1, i_84e4f3f5a807605c, nullptr, nullptr, { &s_84e4f3f5a807605c, nullptr, nullptr, 0, 0, nullptr } + 1, 1, i_84e4f3f5a807605c, nullptr, nullptr, { &s_84e4f3f5a807605c, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE } // namespace schemas @@ -2784,195 +2784,291 @@ namespace capnp { namespace compiler { // LocatedText +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t LocatedText::_capnpPrivate::dataWordSize; constexpr uint16_t LocatedText::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind LocatedText::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* LocatedText::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // LocatedInteger +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t LocatedInteger::_capnpPrivate::dataWordSize; constexpr uint16_t LocatedInteger::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind LocatedInteger::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* LocatedInteger::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // LocatedFloat +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t LocatedFloat::_capnpPrivate::dataWordSize; constexpr uint16_t LocatedFloat::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind LocatedFloat::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* LocatedFloat::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Expression +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Expression::_capnpPrivate::dataWordSize; constexpr uint16_t Expression::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Expression::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Expression::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Expression::Param +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Expression::Param::_capnpPrivate::dataWordSize; constexpr uint16_t Expression::Param::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Expression::Param::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Expression::Param::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Expression::Application +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Expression::Application::_capnpPrivate::dataWordSize; constexpr uint16_t Expression::Application::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Expression::Application::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Expression::Application::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Expression::Member +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Expression::Member::_capnpPrivate::dataWordSize; constexpr uint16_t Expression::Member::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Expression::Member::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Expression::Member::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::BrandParameter +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::BrandParameter::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::BrandParameter::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::BrandParameter::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::BrandParameter::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::AnnotationApplication +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::AnnotationApplication::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::AnnotationApplication::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::AnnotationApplication::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::AnnotationApplication::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::AnnotationApplication::Value +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::AnnotationApplication::Value::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::AnnotationApplication::Value::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::AnnotationApplication::Value::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::AnnotationApplication::Value::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::ParamList +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::ParamList::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::ParamList::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::ParamList::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::ParamList::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Param +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Param::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Param::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Param::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Param::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Param::DefaultValue +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Param::DefaultValue::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Param::DefaultValue::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Param::DefaultValue::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Param::DefaultValue::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Id +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Id::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Id::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Id::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Id::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Using +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Using::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Using::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Using::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Using::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Const +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Const::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Const::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Const::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Const::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Field +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Field::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Field::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Field::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Field::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Field::DefaultValue +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Field::DefaultValue::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Field::DefaultValue::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Field::DefaultValue::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Field::DefaultValue::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Interface +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Interface::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Interface::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Interface::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Interface::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Method +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Method::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Method::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Method::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Method::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Method::Results +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Method::Results::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Method::Results::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Method::Results::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Method::Results::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Declaration::Annotation +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Declaration::Annotation::_capnpPrivate::dataWordSize; constexpr uint16_t Declaration::Annotation::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Declaration::Annotation::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Declaration::Annotation::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // ParsedFile +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t ParsedFile::_capnpPrivate::dataWordSize; constexpr uint16_t ParsedFile::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind ParsedFile::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* ParsedFile::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/grammar.capnp.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/grammar.capnp.h index 34825b31c2b..fcb7f2d12aa 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/grammar.capnp.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/grammar.capnp.h @@ -6,7 +6,9 @@ #include #include -#if CAPNP_VERSION != 9001 +#ifndef CAPNP_VERSION +#error "CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?" +#elif CAPNP_VERSION != 1000002 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." #endif diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.c++ index 02a1dab5725..22bd04d66df 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.c++ @@ -186,6 +186,20 @@ Lexer::Lexer(Orphanage orphanageParam, ErrorReporter& errorReporter) initTok(t, loc).setStringLiteral(text); return t; }), + p::transformWithLocation( + sequence(p::exactChar<'`'>(), p::many(p::anyOfChars("\r\n").invert())), + [this](Location loc, kj::Array text) -> Orphan { + // Backtick-quoted line. Note that we assume either `\r` or `\n` is a valid line + // ending (to cover all known line ending formats) but we replace the line ending + // with `\n`. This way, changing the line endings of your source code doesn't affect + // the compiled code. + auto t = orphanage.newOrphan(); + // Append '\n' to the text. + auto out = initTok(t, loc).initStringLiteral(text.size() + 1); + memcpy(out.begin(), text.begin(), text.size()); + out[out.size() - 1] = '\n'; + return t; + }), p::transformWithLocation(p::doubleQuotedHexBinary, [this](Location loc, kj::Array data) -> Orphan { auto t = orphanage.newOrphan(); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.capnp.c++ index 7cad320e270..316255fc91c 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.capnp.c++ @@ -211,7 +211,7 @@ static const uint16_t m_91cc55cd57de5419[] = {9, 6, 8, 3, 0, 2, 4, 5, 7, 1}; static const uint16_t i_91cc55cd57de5419[] = {0, 1, 2, 3, 4, 5, 6, 9, 7, 8}; const ::capnp::_::RawSchema s_91cc55cd57de5419 = { 0x91cc55cd57de5419, b_91cc55cd57de5419.words, 195, d_91cc55cd57de5419, m_91cc55cd57de5419, - 1, 10, i_91cc55cd57de5419, nullptr, nullptr, { &s_91cc55cd57de5419, nullptr, nullptr, 0, 0, nullptr } + 1, 10, i_91cc55cd57de5419, nullptr, nullptr, { &s_91cc55cd57de5419, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<119> b_c6725e678d60fa37 = { @@ -345,7 +345,7 @@ static const uint16_t m_c6725e678d60fa37[] = {2, 3, 5, 1, 4, 0}; static const uint16_t i_c6725e678d60fa37[] = {1, 2, 0, 3, 4, 5}; const ::capnp::_::RawSchema s_c6725e678d60fa37 = { 0xc6725e678d60fa37, b_c6725e678d60fa37.words, 119, d_c6725e678d60fa37, m_c6725e678d60fa37, - 2, 6, i_c6725e678d60fa37, nullptr, nullptr, { &s_c6725e678d60fa37, nullptr, nullptr, 0, 0, nullptr } + 2, 6, i_c6725e678d60fa37, nullptr, nullptr, { &s_c6725e678d60fa37, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<38> b_9e69a92512b19d18 = { @@ -397,7 +397,7 @@ static const uint16_t m_9e69a92512b19d18[] = {0}; static const uint16_t i_9e69a92512b19d18[] = {0}; const ::capnp::_::RawSchema s_9e69a92512b19d18 = { 0x9e69a92512b19d18, b_9e69a92512b19d18.words, 38, d_9e69a92512b19d18, m_9e69a92512b19d18, - 1, 1, i_9e69a92512b19d18, nullptr, nullptr, { &s_9e69a92512b19d18, nullptr, nullptr, 0, 0, nullptr } + 1, 1, i_9e69a92512b19d18, nullptr, nullptr, { &s_9e69a92512b19d18, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<40> b_a11f97b9d6c73dd4 = { @@ -451,7 +451,7 @@ static const uint16_t m_a11f97b9d6c73dd4[] = {0}; static const uint16_t i_a11f97b9d6c73dd4[] = {0}; const ::capnp::_::RawSchema s_a11f97b9d6c73dd4 = { 0xa11f97b9d6c73dd4, b_a11f97b9d6c73dd4.words, 40, d_a11f97b9d6c73dd4, m_a11f97b9d6c73dd4, - 1, 1, i_a11f97b9d6c73dd4, nullptr, nullptr, { &s_a11f97b9d6c73dd4, nullptr, nullptr, 0, 0, nullptr } + 1, 1, i_a11f97b9d6c73dd4, nullptr, nullptr, { &s_a11f97b9d6c73dd4, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE } // namespace schemas @@ -463,35 +463,51 @@ namespace capnp { namespace compiler { // Token +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Token::_capnpPrivate::dataWordSize; constexpr uint16_t Token::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Token::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Token::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Statement +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Statement::_capnpPrivate::dataWordSize; constexpr uint16_t Statement::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Statement::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Statement::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // LexedTokens +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t LexedTokens::_capnpPrivate::dataWordSize; constexpr uint16_t LexedTokens::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind LexedTokens::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* LexedTokens::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // LexedStatements +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t LexedStatements::_capnpPrivate::dataWordSize; constexpr uint16_t LexedStatements::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind LexedStatements::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* LexedStatements::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.capnp.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.capnp.h index a93065a2c29..83930163898 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.capnp.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/lexer.capnp.h @@ -6,7 +6,9 @@ #include #include -#if CAPNP_VERSION != 9001 +#ifndef CAPNP_VERSION +#error "CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?" +#elif CAPNP_VERSION != 1000002 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." #endif diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/module-loader.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/module-loader.c++ index 803d39238ed..d72b0fce0c7 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/module-loader.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/module-loader.c++ @@ -137,10 +137,14 @@ public: kj::Maybe> readEmbedFromSearchPath(kj::PathPtr path); GlobalErrorReporter& getErrorReporter() { return errorReporter; } + void setFileIdsRequired(bool value) { fileIdsRequired = value; } + bool areFileIdsRequired() { return fileIdsRequired; } + private: GlobalErrorReporter& errorReporter; kj::Vector searchPath; std::unordered_map, FileKeyHash> modules; + bool fileIdsRequired = true; }; class ModuleLoader::ModuleImpl final: public Module { @@ -171,7 +175,7 @@ public: lex(content, statements, *this); auto parsed = orphanage.newOrphan(); - parseFile(statements.getStatements(), parsed.get(), *this); + parseFile(statements.getStatements(), parsed.get(), *this, loader.areFileIdsRequired()); return parsed; } @@ -282,5 +286,9 @@ kj::Maybe ModuleLoader::loadModule(const kj::ReadableDirectory& dir, kj return impl->loadModule(dir, path); } +void ModuleLoader::setFileIdsRequired(bool value) { + return impl->setFileIdsRequired(value); +} + } // namespace compiler } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/module-loader.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/module-loader.h index 5e51ac488b5..da0d6daf298 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/module-loader.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/module-loader.h @@ -38,7 +38,7 @@ class ModuleLoader { explicit ModuleLoader(GlobalErrorReporter& errorReporter); // Create a ModuleLoader that reports error messages to the given reporter. - KJ_DISALLOW_COPY(ModuleLoader); + KJ_DISALLOW_COPY_AND_MOVE(ModuleLoader); ~ModuleLoader() noexcept(false); @@ -49,6 +49,10 @@ class ModuleLoader { // Tries to load a module with the given path inside the given directory. Returns nullptr if the // file doesn't exist. + void setFileIdsRequired(bool value); + // Same as SchemaParser::setFileIdsRequired(). If set false, files will not be required to have + // a top-level file ID; if missing a random one will be assigned. + private: class Impl; kj::Own impl; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/node-translator.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/node-translator.c++ index d7227386fd1..fd2577eb007 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/node-translator.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/node-translator.c++ @@ -110,7 +110,7 @@ public: // from the given offset. The idea is that you just allocated an lgSize-sized field from // an limitLgSize-sized space, such as a newly-added word on the end of the data segment. - KJ_DREQUIRE(limitLgSize <= kj::size(holes)); + KJ_ASSUME(limitLgSize <= kj::size(holes)); while (lgSize < limitLgSize) { KJ_DREQUIRE(holes[lgSize] == 0); @@ -217,7 +217,7 @@ public: } Top() = default; - KJ_DISALLOW_COPY(Top); + KJ_DISALLOW_COPY_AND_MOVE(Top); }; struct Union { @@ -245,7 +245,7 @@ public: kj::Vector pointerLocations; inline Union(StructOrGroup& parent): parent(parent) {} - KJ_DISALLOW_COPY(Union); + KJ_DISALLOW_COPY_AND_MOVE(Union); uint addNewDataLocation(uint lgSize) { // Add a whole new data location to the union with the given size. @@ -433,7 +433,7 @@ public: // exception to alert developers of the problem. // // TODO(cleanup): Once sufficient time has elapsed, remove this assert. - KJ_FAIL_ASSERT("Bad news: Cap'n Proto 0.5.x and previous contained a bug which would cause this schema to be compiled incorrectly. Please see: https://github.com/sandstorm-io/capnproto/issues/344"); + KJ_FAIL_ASSERT("Bad news: Cap'n Proto 0.5.x and previous contained a bug which would cause this schema to be compiled incorrectly. Please see: https://github.com/capnproto/capnproto/issues/344"); } lgSizeUsed = desiredUsage; return true; @@ -452,7 +452,7 @@ public: bool hasMembers = false; inline Group(Union& parent): parent(parent) {} - KJ_DISALLOW_COPY(Group); + KJ_DISALLOW_COPY_AND_MOVE(Group); void addMember() { if (!hasMembers) { @@ -559,7 +559,7 @@ public: bool result = usage.tryExpand( *this, location, oldLgSize, localOldOffset, expansionFactor); if (mustFail && result) { - KJ_FAIL_ASSERT("Bad news: Cap'n Proto 0.5.x and previous contained a bug which would cause this schema to be compiled incorrectly. Please see: https://github.com/sandstorm-io/capnproto/issues/344"); + KJ_FAIL_ASSERT("Bad news: Cap'n Proto 0.5.x and previous contained a bug which would cause this schema to be compiled incorrectly. Please see: https://github.com/capnproto/capnproto/issues/344"); } return result; } @@ -955,7 +955,7 @@ public: explicit StructTranslator(NodeTranslator& translator, ImplicitParams implicitMethodParams) : translator(translator), errorReporter(translator.errorReporter), implicitMethodParams(implicitMethodParams) {} - KJ_DISALLOW_COPY(StructTranslator); + KJ_DISALLOW_COPY_AND_MOVE(StructTranslator); void translate(Void decl, List::Reader members, schema::Node::Builder builder, schema::Node::SourceInfo::Builder sourceInfo) { @@ -1370,7 +1370,7 @@ private: MemberInfo& member = *entry.second; // Make sure the exceptions added relating to - // https://github.com/sandstorm-io/capnproto/issues/344 identify the affected field. + // https://github.com/capnproto/capnproto/issues/344 identify the affected field. KJ_CONTEXT(member.name); if (member.declId.isOrdinal()) { @@ -1841,31 +1841,52 @@ kj::Maybe> ValueTranslator::compileValue(Expression::Reader Orphan result = compileValueInner(src, type); + if (result.getType() == DynamicValue::UNKNOWN) { + // Error already reported. + return nullptr; + } else if (matchesType(src, type, result)) { + return kj::mv(result); + } else { + // If the expected type is a struct, we try matching its first field. + if (type.isStruct()) { + auto structType = type.asStruct(); + auto fields = structType.getFields(); + if (fields.size() > 0) { + auto field = fields[0]; + if (matchesType(src, field.getType(), result)) { + // Success. Wrap in a struct. + auto outer = orphanage.newOrphan(type.asStruct()); + outer.get().adopt(field, kj::mv(result)); + return Orphan(kj::mv(outer)); + } + } + } + + // That didn't work, so this is just a type mismatch. + errorReporter.addErrorOn(src, kj::str("Type mismatch; expected ", makeTypeName(type), ".")); + return nullptr; + } +} + +bool ValueTranslator::matchesType(Expression::Reader src, Type type, Orphan& result) { // compileValueInner() evaluated `src` and only used `type` as a hint in interpreting `src` if // `src`'s type wasn't already obvious. So, now we need to check that the resulting value // actually matches `type`. switch (result.getType()) { case DynamicValue::UNKNOWN: - // Error already reported. - return nullptr; + KJ_UNREACHABLE; case DynamicValue::VOID: - if (type.isVoid()) { - return kj::mv(result); - } - break; + return type.isVoid(); case DynamicValue::BOOL: - if (type.isBool()) { - return kj::mv(result); - } - break; + return type.isBool(); case DynamicValue::INT: { int64_t value = result.getReader().as(); if (value < 0) { - int64_t minValue = 1; + int64_t minValue; switch (type.which()) { case schema::Type::INT8: minValue = (int8_t)kj::minValue; break; case schema::Type::INT16: minValue = (int16_t)kj::minValue; break; @@ -1882,21 +1903,20 @@ kj::Maybe> ValueTranslator::compileValue(Expression::Reader minValue = (int64_t)kj::minValue; break; - default: break; + default: return false; } - if (minValue == 1) break; if (value < minValue) { errorReporter.addErrorOn(src, "Integer value out of range."); result = minValue; } - return kj::mv(result); + return true; } } KJ_FALLTHROUGH; // value is positive, so we can just go on to the uint case below. case DynamicValue::UINT: { - uint64_t maxValue = 0; + uint64_t maxValue; switch (type.which()) { case schema::Type::INT8: maxValue = (int8_t)kj::maxValue; break; case schema::Type::INT16: maxValue = (int16_t)kj::maxValue; break; @@ -1913,76 +1933,62 @@ kj::Maybe> ValueTranslator::compileValue(Expression::Reader maxValue = (uint64_t)kj::maxValue; break; - default: break; + default: return false; } - if (maxValue == 0) break; if (result.getReader().as() > maxValue) { errorReporter.addErrorOn(src, "Integer value out of range."); result = maxValue; } - return kj::mv(result); + return true; } case DynamicValue::FLOAT: - if (type.isFloat32() || type.isFloat64()) { - return kj::mv(result); - } - break; + return type.isFloat32() || type.isFloat64(); case DynamicValue::TEXT: - if (type.isText()) { - return kj::mv(result); - } - break; + return type.isText(); case DynamicValue::DATA: - if (type.isData()) { - return kj::mv(result); - } - break; + return type.isData(); case DynamicValue::LIST: if (type.isList()) { - if (result.getReader().as().getSchema() == type.asList()) { - return kj::mv(result); - } + return result.getReader().as().getSchema() == type.asList(); } else if (type.isAnyPointer()) { switch (type.whichAnyPointerKind()) { case schema::Type::AnyPointer::Unconstrained::ANY_KIND: case schema::Type::AnyPointer::Unconstrained::LIST: - return kj::mv(result); + return true; case schema::Type::AnyPointer::Unconstrained::STRUCT: case schema::Type::AnyPointer::Unconstrained::CAPABILITY: - break; + return false; } + KJ_UNREACHABLE; + } else { + return false; } - break; case DynamicValue::ENUM: - if (type.isEnum()) { - if (result.getReader().as().getSchema() == type.asEnum()) { - return kj::mv(result); - } - } - break; + return type.isEnum() && + result.getReader().as().getSchema() == type.asEnum(); case DynamicValue::STRUCT: if (type.isStruct()) { - if (result.getReader().as().getSchema() == type.asStruct()) { - return kj::mv(result); - } + return result.getReader().as().getSchema() == type.asStruct(); } else if (type.isAnyPointer()) { switch (type.whichAnyPointerKind()) { case schema::Type::AnyPointer::Unconstrained::ANY_KIND: case schema::Type::AnyPointer::Unconstrained::STRUCT: - return kj::mv(result); + return true; case schema::Type::AnyPointer::Unconstrained::LIST: case schema::Type::AnyPointer::Unconstrained::CAPABILITY: - break; + return false; } + KJ_UNREACHABLE; + } else { + return false; } - break; case DynamicValue::CAPABILITY: KJ_FAIL_ASSERT("Interfaces can't have literal values."); @@ -1991,8 +1997,7 @@ kj::Maybe> ValueTranslator::compileValue(Expression::Reader KJ_FAIL_ASSERT("AnyPointers can't have literal values."); } - errorReporter.addErrorOn(src, kj::str("Type mismatch; expected ", makeTypeName(type), ".")); - return nullptr; + KJ_UNREACHABLE; } Orphan ValueTranslator::compileValueInner(Expression::Reader src, Type type) { @@ -2183,9 +2188,26 @@ void ValueTranslator::fillStructValue(DynamicStruct::Builder builder, break; case schema::Field::GROUP: + auto groupBuilder = builder.init(*field).as(); if (value.isTuple()) { - fillStructValue(builder.init(*field).as(), value.getTuple()); + fillStructValue(groupBuilder, value.getTuple()); } else { + auto groupFields = groupBuilder.getSchema().getFields(); + if (groupFields.size() > 0) { + auto groupField = groupFields[0]; + + // Call compileValueInner() using the group's type as `type`. Since we already + // established `value` is not a tuple, this will only return a valid result if + // the value has unambiguous type. + auto result = compileValueInner(value, field->getType()); + + // Does it match the first field? + if (matchesType(value, groupField.getType(), result)) { + groupBuilder.adopt(groupField, kj::mv(result)); + break; + } + } + errorReporter.addErrorOn(value, "Type mismatch; expected group."); } break; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/node-translator.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/node-translator.h index 6365fa005ea..7562b086373 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/node-translator.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/node-translator.h @@ -169,7 +169,7 @@ class NodeTranslator { void compileBootstrapValue( Expression::Reader source, schema::Type::Reader type, schema::Value::Builder target, kj::Maybe typeScope = nullptr); - // Calls compileValue() if this value should be interpreted at bootstrap time. Otheriwse, + // Calls compileValue() if this value should be interpreted at bootstrap time. Otherwise, // adds the value to `unfinishedValues` for later evaluation. // // If `type` comes from some other node, `typeScope` is the schema for that node. Otherwise the @@ -215,7 +215,8 @@ class ValueTranslator { Orphanage orphanage; Orphan compileValueInner(Expression::Reader src, Type type); - // Helper for compileValue(). + bool matchesType(Expression::Reader src, Type type, Orphan& result); + // Helpers for compileValue(). kj::String makeNodeName(Schema node); kj::String makeTypeName(Type type); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/parser.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/parser.c++ index eadb279577f..91a8c5cf4c0 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/parser.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/parser.c++ @@ -59,6 +59,7 @@ uint64_t generateRandomId() { #else int fd; KJ_SYSCALL(fd = open("/dev/urandom", O_RDONLY)); + KJ_DEFER(close(fd)); ssize_t n; KJ_SYSCALL(n = read(fd, &result, sizeof(result)), "/dev/urandom"); @@ -69,7 +70,7 @@ uint64_t generateRandomId() { } void parseFile(List::Reader statements, ParsedFile::Builder result, - ErrorReporter& errorReporter) { + ErrorReporter& errorReporter, bool requiresId) { CapnpParser parser(Orphanage::getForMessageContaining(result), errorReporter); kj::Vector> decls(statements.size()); @@ -110,7 +111,7 @@ void parseFile(List::Reader statements, ParsedFile::Builder result, // Don't report missing ID if there was a parse error, because quite often the parse error // prevents us from parsing the ID even though it is actually there. - if (!errorReporter.hadErrors()) { + if (requiresId && !errorReporter.hadErrors()) { errorReporter.addError(0, 0, kj::str("File does not declare an ID. I've generated one for you. Add this line to " "your file: @0x", kj::hex(id), ";")); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/parser.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/parser.h index f881a0d9345..7c798b2742c 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/parser.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/parser.h @@ -33,7 +33,7 @@ namespace capnp { namespace compiler { void parseFile(List::Reader statements, ParsedFile::Builder result, - ErrorReporter& errorReporter); + ErrorReporter& errorReporter, bool requiresId); // Parse a list of statements to build a ParsedFile. // // If any errors are reported, then the output is not usable. However, it may be passed on through @@ -64,7 +64,7 @@ class CapnpParser { ~CapnpParser() noexcept(false); - KJ_DISALLOW_COPY(CapnpParser); + KJ_DISALLOW_COPY_AND_MOVE(CapnpParser); using ParserInput = kj::parse::IteratorInput::Reader::Iterator>; struct DeclParserResult; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/type-id.h b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/type-id.h index a450524551f..5968a1762d9 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/type-id.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/compiler/type-id.h @@ -25,6 +25,8 @@ #include #include +CAPNP_BEGIN_HEADER + namespace capnp { namespace compiler { @@ -40,3 +42,5 @@ uint64_t generateMethodParamsId(uint64_t parentId, uint16_t methodOrdinal, bool } // namespace compiler } // namespace capnp + +CAPNP_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic-capability.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic-capability.c++ index 5a5cb3570ba..81a4ed3540f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic-capability.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic-capability.c++ @@ -40,8 +40,11 @@ Request DynamicCapability::Client::newRequest( auto paramType = method.getParamType(); auto resultType = method.getResultType(); + CallHints hints; + hints.noPromisePipelining = !resultType.mayContainCapabilities(); + auto typeless = hook->newCall( - methodInterface.getProto().getId(), method.getIndex(), sizeHint); + methodInterface.getProto().getId(), method.getIndex(), sizeHint, hints); return Request( typeless.getAs(paramType), kj::mv(typeless.hook), resultType); @@ -63,7 +66,8 @@ Capability::Server::DispatchCallResult DynamicCapability::Server::dispatchCall( return { call(method, CallContext(*context.hook, method.getParamType(), resultType)), - resultType.isStreamResult() + resultType.isStreamResult(), + options.allowCancellation }; } else { return internalUnimplemented( diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic.c++ index 5983db47b1c..59e5d1268fb 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic.c++ @@ -180,7 +180,7 @@ DynamicValue::Reader DynamicStruct::Reader::get(StructSchema::Field field) const case schema::Field::SLOT: { auto slot = proto.getSlot(); - // Note that the default value might be "anyPointer" even if the type is some poniter type + // Note that the default value might be "anyPointer" even if the type is some pointer type // *other than* anyPointer. This happens with generics -- the field is actually a generic // parameter that has been bound, but the default value was of course compiled without any // binding available. @@ -272,7 +272,7 @@ DynamicValue::Builder DynamicStruct::Builder::get(StructSchema::Field field) { case schema::Field::SLOT: { auto slot = proto.getSlot(); - // Note that the default value might be "anyPointer" even if the type is some poniter type + // Note that the default value might be "anyPointer" even if the type is some pointer type // *other than* anyPointer. This happens with generics -- the field is actually a generic // parameter that has been bound, but the default value was of course compiled without any // binding available. @@ -1573,12 +1573,12 @@ DynamicValue::Builder::Builder(Builder& other) { // Unfortunately canMemcpy() doesn't work on these types due to the use of // DisallowConstCopy, but __has_trivial_destructor should detect if any of these types // become non-trivial. - static_assert(__has_trivial_destructor(Text::Builder) && - __has_trivial_destructor(Data::Builder) && - __has_trivial_destructor(DynamicList::Builder) && - __has_trivial_destructor(DynamicEnum) && - __has_trivial_destructor(DynamicStruct::Builder) && - __has_trivial_destructor(AnyPointer::Builder), + static_assert(KJ_HAS_TRIVIAL_DESTRUCTOR(Text::Builder) && + KJ_HAS_TRIVIAL_DESTRUCTOR(Data::Builder) && + KJ_HAS_TRIVIAL_DESTRUCTOR(DynamicList::Builder) && + KJ_HAS_TRIVIAL_DESTRUCTOR(DynamicEnum) && + KJ_HAS_TRIVIAL_DESTRUCTOR(DynamicStruct::Builder) && + KJ_HAS_TRIVIAL_DESTRUCTOR(AnyPointer::Builder), "Assumptions here don't hold."); break; @@ -1607,12 +1607,12 @@ DynamicValue::Builder::Builder(Builder&& other) noexcept { // Unfortunately __has_trivial_copy doesn't work on these types due to the use of // DisallowConstCopy, but __has_trivial_destructor should detect if any of these types // become non-trivial. - static_assert(__has_trivial_destructor(Text::Builder) && - __has_trivial_destructor(Data::Builder) && - __has_trivial_destructor(DynamicList::Builder) && - __has_trivial_destructor(DynamicEnum) && - __has_trivial_destructor(DynamicStruct::Builder) && - __has_trivial_destructor(AnyPointer::Builder), + static_assert(KJ_HAS_TRIVIAL_DESTRUCTOR(Text::Builder) && + KJ_HAS_TRIVIAL_DESTRUCTOR(Data::Builder) && + KJ_HAS_TRIVIAL_DESTRUCTOR(DynamicList::Builder) && + KJ_HAS_TRIVIAL_DESTRUCTOR(DynamicEnum) && + KJ_HAS_TRIVIAL_DESTRUCTOR(DynamicStruct::Builder) && + KJ_HAS_TRIVIAL_DESTRUCTOR(AnyPointer::Builder), "Assumptions here don't hold."); break; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic.h b/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic.h index 3fd6cf2d76f..8aab1f7ad98 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/dynamic.h @@ -524,7 +524,16 @@ class DynamicCapability::Server: public Capability::Server { public: typedef DynamicCapability Serves; + struct Options { + bool allowCancellation = false; + // See the `allowCancellation` annotation defined in `c++.capnp`. + // + // This option applies to all calls made to this server object. The annotation in the schema + // is NOT used for dynamic servers. + }; + Server(InterfaceSchema schema): schema(schema) {} + Server(InterfaceSchema schema, Options options): schema(schema), options(options) {} virtual kj::Promise call(InterfaceSchema::Method method, CallContext context) = 0; @@ -536,6 +545,7 @@ class DynamicCapability::Server: public Capability::Server { private: InterfaceSchema schema; + Options options; }; template <> @@ -584,7 +594,6 @@ class CallContext: public kj::DisallowConstCopy { Orphanage getResultsOrphanage(kj::Maybe sizeHint = nullptr); template kj::Promise tailCall(Request&& tailRequest); - void allowCancellation(); StructSchema getParamsType() const { return paramType; } StructSchema getResultsType() const { return resultType; } @@ -1658,9 +1667,6 @@ inline kj::Promise CallContext::tailCall( Request&& tailRequest) { return hook->tailCall(kj::mv(tailRequest.hook)); } -inline void CallContext::allowCancellation() { - hook->allowCancellation(); -} template <> inline DynamicCapability::Client Capability::Client::castAs( @@ -1668,6 +1674,14 @@ inline DynamicCapability::Client Capability::Client::castAs( return DynamicCapability::Client(schema, hook->addRef()); } +template <> +inline DynamicCapability::Client CapabilityServerSet::add( + kj::Own&& server) { + void* ptr = reinterpret_cast(server.get()); + auto schema = server->getSchema(); + return addInternal(kj::mv(server), ptr).castAs(schema); +} + // ------------------------------------------------------------------- template diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/encoding-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/encoding-test.c++ index 6b71c5e1c22..84875015050 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/encoding-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/encoding-test.c++ @@ -1738,6 +1738,14 @@ TEST(Encoding, GlobalConstants) { EXPECT_EQ("structlist 2", listReader[1].getTextField()); EXPECT_EQ("structlist 3", listReader[2].getTextField()); } + + kj::StringPtr expected = + "foo bar baz\n" + "\"qux\" `corge` \'grault\'\n" + "regular\"quoted\"line" + "garply\\nwaldo\\tfred\\\"plugh\\\"xyzzy\\\'thud\n"; + + EXPECT_EQ(expected, test::BLOCK_TEXT); } TEST(Encoding, Embeds) { @@ -2019,6 +2027,81 @@ KJ_TEST("list.setWithCaveats(i, list[i]) doesn't corrupt contents") { checkTestMessage(list[1]); } +KJ_TEST("Downgrade pointer-list from struct-list") { + // Test that downgrading a list-of-structs to a list-of-pointers (where the relevant pointer is + // the struct's first pointer) works as advertised. + + MallocMessageBuilder builder; + auto root = builder.initRoot(); + + { + auto list = root.getAnyPointerField().initAs>(2); + initTestMessage(list[0]); + list[1].setTextField("hello"); + } + + { + auto list = root.asReader().getAnyPointerField().getAs>(); + KJ_ASSERT(list.size() == 2); + KJ_EXPECT(list[0] == "foo"); + KJ_EXPECT(list[1] == "hello"); + } +} + +KJ_TEST("Copying ListList downgraded from ListStruct does not get corrupted") { + // Test written by David Renshaw to demonstrate CVE-??? + + AlignedData<10> data = {{ + // struct, 1 pointer + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, + + // list, inline composite. 4 words. + 0x01, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00, + + // one element, 3 data words, 1 pointer. + 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01, 0x00, + + 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, // data section + 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, // data section + 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, // data section + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // null struct pointer + + // bad bytes that shouldn't be visible from the root of the message + 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, + 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, + + // bug can cause this word to be read as the list element struct pointer + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + }}; + + kj::ArrayPtr segments[1] = { + // Only take the first 7 words. The last three words above should not be accessible + // from these segments. + kj::arrayPtr(data.words, 7) + }; + + SegmentArrayMessageReader reader(kj::arrayPtr(segments, 1)); + auto readerRoot = reader.getRoot(); + auto listList = readerRoot.getAnyPointerField().getAs>>(); + EXPECT_EQ(listList.size(), 1); + + MallocMessageBuilder builder; + auto root = builder.initRoot(); + + root.getAnyPointerField().setAs>>(listList); + + auto outputSegments = builder.getSegmentsForOutput(); + ASSERT_EQ(outputSegments.size(), 1); + + auto inputBytes = segments[0].asBytes(); + auto outputBytes = outputSegments[0].asBytes(); + + ASSERT_EQ(outputBytes, inputBytes); + // Should be equal. Instead, we see that outputBytes includes the (copied) + // out-of-bounds 0xbb bytes from `data` above, which should be impossible. +} + } // namespace } // namespace _ (private) } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/ez-rpc.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/ez-rpc.c++ index ed402d4fb66..5871c77bf4c 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/ez-rpc.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/ez-rpc.c++ @@ -177,10 +177,10 @@ Capability::Client EzRpcClient::importCap(kj::StringPtr name) { KJ_IF_MAYBE(client, impl->clientContext) { return client->get()->restore(name); } else { - return impl->setupPromise.addBranch().then(kj::mvCapture(kj::heapString(name), - [this](kj::String&& name) { + return impl->setupPromise.addBranch().then( + [this,name=kj::heapString(name)]() { return KJ_ASSERT_NONNULL(impl->clientContext)->restore(name); - })); + }); } } @@ -260,13 +260,11 @@ struct EzRpcServer::Impl final: public SturdyRefRestorer, portPromise = paf.promise.fork(); tasks.add(context->getIoProvider().getNetwork().parseAddress(bindAddress, defaultPort) - .then(kj::mvCapture(paf.fulfiller, - [this, readerOpts](kj::Own>&& portFulfiller, - kj::Own&& addr) { + .then([this, portFulfiller=kj::mv(paf.fulfiller), readerOpts](kj::Own&& addr) mutable { auto listener = addr->listen(); portFulfiller->fulfill(listener->getPort()); acceptLoop(kj::mv(listener), readerOpts); - }))); + })); } Impl(Capability::Client mainInterface, struct sockaddr* bindAddress, uint addrSize, @@ -290,9 +288,7 @@ struct EzRpcServer::Impl final: public SturdyRefRestorer, void acceptLoop(kj::Own&& listener, ReaderOptions readerOpts) { auto ptr = listener.get(); - tasks.add(ptr->accept().then(kj::mvCapture(kj::mv(listener), - [this, readerOpts](kj::Own&& listener, - kj::Own&& connection) { + tasks.add(ptr->accept().then([this, listener=kj::mv(listener), readerOpts](kj::Own&& connection) mutable { acceptLoop(kj::mv(listener), readerOpts); auto server = kj::heap(kj::mv(connection), *this, readerOpts); @@ -300,7 +296,7 @@ struct EzRpcServer::Impl final: public SturdyRefRestorer, // Arrange to destroy the server context when all references are gone, or when the // EzRpcServer is destroyed (which will destroy the TaskSet). tasks.add(server->network.onDisconnect().attach(kj::mv(server))); - }))); + })); } Capability::Client restore(AnyPointer::Reader objectId) override { diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/generated-header-support.h b/libs/EXTERNAL/capnproto/c++/src/capnp/generated-header-support.h index 21f73126e7a..3c5b65665d5 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/generated-header-support.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/generated-header-support.h @@ -137,7 +137,7 @@ struct BrandBindingFor_, Kind::LIST> { template struct BrandBindingFor_ { static constexpr RawBrandedSchema::Binding get(uint16_t listDepth) { - return { 15, listDepth, nullptr }; + return { 15, listDepth, &rawSchema().defaultBrand }; } }; @@ -209,7 +209,7 @@ template class ConstStruct { public: ConstStruct() = delete; - KJ_DISALLOW_COPY(ConstStruct); + KJ_DISALLOW_COPY_AND_MOVE(ConstStruct); inline explicit constexpr ConstStruct(const word* ptr): ptr(ptr) {} inline typename T::Reader get() const { @@ -228,7 +228,7 @@ template class ConstList { public: ConstList() = delete; - KJ_DISALLOW_COPY(ConstList); + KJ_DISALLOW_COPY_AND_MOVE(ConstList); inline explicit constexpr ConstList(const word* ptr): ptr(ptr) {} inline typename List::Reader get() const { @@ -247,7 +247,7 @@ template class ConstText { public: ConstText() = delete; - KJ_DISALLOW_COPY(ConstText); + KJ_DISALLOW_COPY_AND_MOVE(ConstText); inline explicit constexpr ConstText(const word* ptr): ptr(ptr) {} inline Text::Reader get() const { @@ -275,7 +275,7 @@ template class ConstData { public: ConstData() = delete; - KJ_DISALLOW_COPY(ConstData); + KJ_DISALLOW_COPY_AND_MOVE(ConstData); inline explicit constexpr ConstData(const word* ptr): ptr(ptr) {} inline Data::Reader get() const { @@ -334,6 +334,13 @@ inline constexpr uint sizeInWords() { #define CAPNP_AUTO_IF_MSVC(...) __VA_ARGS__ #endif +// TODO(msvc): MSVC does not even expect constexprs to have definitions below C++17. +#if (KJ_CPP_STD < 201703L) && !(defined(_MSC_VER) && !defined(__clang__)) +#define CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL 1 +#else +#define CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL 0 +#endif + #if CAPNP_LITE #define CAPNP_DECLARE_SCHEMA(id) \ @@ -349,12 +356,11 @@ inline constexpr uint sizeInWords() { static inline ::capnp::word const* encodedSchema() { return bp_##id; } \ } -#if _MSC_VER && !defined(__clang__) -// TODO(msvc): MSVC doesn't expect constexprs to have definitions. -#define CAPNP_DEFINE_ENUM(type, id) -#else +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #define CAPNP_DEFINE_ENUM(type, id) \ constexpr uint64_t EnumInfo::typeId +#else +#define CAPNP_DEFINE_ENUM(type, id) #endif #define CAPNP_DECLARE_STRUCT_HEADER(id, dataWordSize_, pointerCount_) \ @@ -380,9 +386,14 @@ inline constexpr uint sizeInWords() { static inline ::capnp::word const* encodedSchema() { return bp_##id; } \ static constexpr ::capnp::_::RawSchema const* schema = &s_##id; \ } + +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #define CAPNP_DEFINE_ENUM(type, id) \ constexpr uint64_t EnumInfo::typeId; \ constexpr ::capnp::_::RawSchema const* EnumInfo::schema +#else +#define CAPNP_DEFINE_ENUM(type, id) +#endif #define CAPNP_DECLARE_STRUCT_HEADER(id, dataWordSize_, pointerCount_) \ struct IsStruct; \ diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/layout.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/layout.c++ index 7fa5b4e85f2..e2fa84df64c 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/layout.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/layout.c++ @@ -321,6 +321,13 @@ static_assert(unboundAs(POINTERS * BITS_PER_POINTER / BITS_PER_BYTE / BY sizeof(WirePointer), "BITS_PER_POINTER is wrong."); +#define OUT_OF_BOUNDS_ERROR_DETAIL \ + "This usually indicates that " \ + "the input data was corrupted, used a different encoding than specified (e.g. " \ + "packed vs. non-packed), or was not a Cap'n Proto message to begin with. Note " \ + "that this error is NOT due to a schema mismatch; the input is invalid " \ + "regardless of schema." + namespace { static const union { @@ -484,6 +491,7 @@ struct WireHelpers { return reinterpret_cast(ref); } + KJ_ASSUME(segment != nullptr); word* ptr = segment->allocate(amount); if (ptr == nullptr) { @@ -577,7 +585,8 @@ struct WireHelpers { const word* ptr = ref->farTarget(segment); auto padWords = (ONE + bounded(ref->isDoubleFar())) * POINTER_SIZE_IN_WORDS; KJ_REQUIRE(boundsCheck(segment, ptr, padWords), - "Message contains out-of-bounds far pointer.") { + "Message contains out-of-bounds far pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { return nullptr; } @@ -789,7 +798,8 @@ struct WireHelpers { switch (ref->kind()) { case WirePointer::STRUCT: { KJ_REQUIRE(boundsCheck(segment, ptr, ref->structRef.wordSize()), - "Message contained out-of-bounds struct pointer.") { + "Message contained out-of-bounds struct pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { return result; } result.addWords(ref->structRef.wordSize()); @@ -815,7 +825,8 @@ struct WireHelpers { upgradeBound(ref->listRef.elementCount()) * dataBitsPerElement(ref->listRef.elementSize())); KJ_REQUIRE(boundsCheck(segment, ptr, totalWords), - "Message contained out-of-bounds list pointer.") { + "Message contained out-of-bounds list pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { return result; } result.addWords(totalWords); @@ -825,7 +836,8 @@ struct WireHelpers { auto count = ref->listRef.elementCount() * (POINTERS / ELEMENTS); KJ_REQUIRE(boundsCheck(segment, ptr, count * WORDS_PER_POINTER), - "Message contained out-of-bounds list pointer.") { + "Message contained out-of-bounds list pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { return result; } @@ -840,7 +852,8 @@ struct WireHelpers { case ElementSize::INLINE_COMPOSITE: { auto wordCount = ref->listRef.inlineCompositeWordCount(); KJ_REQUIRE(boundsCheck(segment, ptr, wordCount + POINTER_SIZE_IN_WORDS), - "Message contained out-of-bounds list pointer.") { + "Message contained out-of-bounds list pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { return result; } @@ -855,7 +868,8 @@ struct WireHelpers { auto actualSize = elementTag->structRef.wordSize() / ELEMENTS * upgradeBound(count); KJ_REQUIRE(actualSize <= wordCount, - "Struct list pointer's elements overran size.") { + "Struct list pointer's elements overran size. " + OUT_OF_BOUNDS_ERROR_DETAIL) { return result; } @@ -1130,7 +1144,7 @@ struct WireHelpers { word* oldPtr = followFars(oldRef, refTarget, oldSegment); KJ_REQUIRE(oldRef->kind() == WirePointer::STRUCT, - "Message contains non-struct pointer where struct pointer was expected.") { + "Schema mismatch: Message contains non-struct pointer where struct pointer was expected.") { goto useDefault; } @@ -1272,7 +1286,7 @@ struct WireHelpers { word* ptr = followFars(ref, origRefTarget, segment); KJ_REQUIRE(ref->kind() == WirePointer::LIST, - "Called getWritableListPointer() but existing pointer is not a list.") { + "Schema mismatch: Called getWritableListPointer() but existing pointer is not a list.") { goto useDefault; } @@ -1300,8 +1314,8 @@ struct WireHelpers { case ElementSize::BIT: KJ_FAIL_REQUIRE( - "Found struct list where bit list was expected; upgrading boolean lists to structs " - "is no longer supported.") { + "Schema mismatch: Found struct list where bit list was expected; upgrading boolean " + "lists to structs is no longer supported.") { goto useDefault; } break; @@ -1311,14 +1325,14 @@ struct WireHelpers { case ElementSize::FOUR_BYTES: case ElementSize::EIGHT_BYTES: KJ_REQUIRE(dataSize >= ONE * WORDS, - "Existing list value is incompatible with expected type.") { + "Schema mismatch: Existing list value is incompatible with expected type.") { goto useDefault; } break; case ElementSize::POINTER: KJ_REQUIRE(pointerCount >= ONE * POINTERS, - "Existing list value is incompatible with expected type.") { + "Schema mismatch: Existing list value is incompatible with expected type.") { goto useDefault; } // Adjust the pointer to point at the reference segment. @@ -1341,20 +1355,20 @@ struct WireHelpers { if (elementSize == ElementSize::BIT) { KJ_REQUIRE(oldSize == ElementSize::BIT, - "Found non-bit list where bit list was expected.") { + "Schema mismatch: Found non-bit list where bit list was expected.") { goto useDefault; } } else { KJ_REQUIRE(oldSize != ElementSize::BIT, - "Found bit list where non-bit list was expected.") { + "Schema mismatch: Found bit list where non-bit list was expected.") { goto useDefault; } KJ_REQUIRE(dataSize >= dataBitsPerElement(elementSize) * ELEMENTS, - "Existing list value is incompatible with expected type.") { + "Schema mismatch: Existing list value is incompatible with expected type.") { goto useDefault; } KJ_REQUIRE(pointerCount >= pointersPerElement(elementSize) * ELEMENTS, - "Existing list value is incompatible with expected type.") { + "Schema mismatch: Existing list value is incompatible with expected type.") { goto useDefault; } } @@ -1392,7 +1406,8 @@ struct WireHelpers { word* ptr = followFars(ref, origRefTarget, segment); KJ_REQUIRE(ref->kind() == WirePointer::LIST, - "Called getWritableListPointerAnySize() but existing pointer is not a list.") { + "Schema mismatch: Called getWritableListPointerAnySize() but existing pointer is not a " + "list.") { goto useDefault; } @@ -1448,7 +1463,8 @@ struct WireHelpers { word* oldPtr = followFars(oldRef, origRefTarget, oldSegment); KJ_REQUIRE(oldRef->kind() == WirePointer::LIST, - "Called getList{Field,Element}() but existing pointer is not a list.") { + "Schema mismatch: Called getList{Field,Element}() but existing pointer is not a " + "list.") { goto useDefault; } @@ -1543,8 +1559,8 @@ struct WireHelpers { // Upgrading to an inline composite list. KJ_REQUIRE(oldSize != ElementSize::BIT, - "Found bit list where struct list was expected; upgrading boolean lists to structs " - "is no longer supported.") { + "Schema mismatch: Found bit list where struct list was expected; upgrading boolean " + "lists to structs is no longer supported.") { goto useDefault; } @@ -1662,11 +1678,12 @@ struct WireHelpers { byte* bptr = reinterpret_cast(ptr); KJ_REQUIRE(ref->kind() == WirePointer::LIST, - "Called getText{Field,Element}() but existing pointer is not a list.") { + "Schema mismatch: Called getText{Field,Element}() but existing pointer is not a list.") { goto useDefault; } KJ_REQUIRE(ref->listRef.elementSize() == ElementSize::BYTE, - "Called getText{Field,Element}() but existing list pointer is not byte-sized.") { + "Schema mismatch: Called getText{Field,Element}() but existing list pointer is not " + "byte-sized.") { goto useDefault; } @@ -1733,11 +1750,12 @@ struct WireHelpers { word* ptr = followFars(ref, refTarget, segment); KJ_REQUIRE(ref->kind() == WirePointer::LIST, - "Called getData{Field,Element}() but existing pointer is not a list.") { + "Schema mismatch: Called getData{Field,Element}() but existing pointer is not a list.") { goto useDefault; } KJ_REQUIRE(ref->listRef.elementSize() == ElementSize::BYTE, - "Called getData{Field,Element}() but existing list pointer is not byte-sized.") { + "Schema mismatch: Called getData{Field,Element}() but existing list pointer is not " + "byte-sized.") { goto useDefault; } @@ -1964,7 +1982,8 @@ struct WireHelpers { } KJ_REQUIRE(boundsCheck(srcSegment, ptr, src->structRef.wordSize()), - "Message contained out-of-bounds struct pointer.") { + "Message contained out-of-bounds struct pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { goto useDefault; } return setStructPointer(dstSegment, dstCapTable, dst, @@ -1988,7 +2007,8 @@ struct WireHelpers { const WirePointer* tag = reinterpret_cast(ptr); KJ_REQUIRE(boundsCheck(srcSegment, ptr, wordCount + POINTER_SIZE_IN_WORDS), - "Message contains out-of-bounds list pointer.") { + "Message contains out-of-bounds list pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { goto useDefault; } @@ -2031,7 +2051,8 @@ struct WireHelpers { auto wordCount = roundBitsUpToWords(upgradeBound(elementCount) * step); KJ_REQUIRE(boundsCheck(srcSegment, ptr, wordCount), - "Message contains out-of-bounds list pointer.") { + "Message contains out-of-bounds list pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { goto useDefault; } @@ -2175,12 +2196,14 @@ struct WireHelpers { } KJ_REQUIRE(ref->kind() == WirePointer::STRUCT, - "Message contains non-struct pointer where struct pointer was expected.") { + "Schema mismatch: Message contains non-struct pointer where struct pointer" + "was expected.") { goto useDefault; } KJ_REQUIRE(boundsCheck(segment, ptr, ref->structRef.wordSize()), - "Message contained out-of-bounds struct pointer.") { + "Message contained out-of-bounds struct pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { goto useDefault; } @@ -2209,7 +2232,8 @@ struct WireHelpers { return brokenCapFactory->newNullCap(); } else if (!ref->isCapability()) { KJ_FAIL_REQUIRE( - "Message contains non-capability pointer where capability pointer was expected.") { + "Schema mismatch: Message contains non-capability pointer where capability pointer was " + "expected.") { break; } return brokenCapFactory->newBrokenCap( @@ -2263,7 +2287,8 @@ struct WireHelpers { } KJ_REQUIRE(ref->kind() == WirePointer::LIST, - "Message contains non-list pointer where list pointer was expected.") { + "Schema mismatch: Message contains non-list pointer where list pointer was " + "expected.") { goto useDefault; } @@ -2275,7 +2300,8 @@ struct WireHelpers { const WirePointer* tag = reinterpret_cast(ptr); KJ_REQUIRE(boundsCheck(segment, ptr, wordCount + POINTER_SIZE_IN_WORDS), - "Message contains out-of-bounds list pointer.") { + "Message contains out-of-bounds list pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { goto useDefault; } @@ -2327,18 +2353,16 @@ struct WireHelpers { case ElementSize::FOUR_BYTES: case ElementSize::EIGHT_BYTES: KJ_REQUIRE(tag->structRef.dataSize.get() > ZERO * WORDS, - "Expected a primitive list, but got a list of pointer-only structs.") { + "Schema mismatch: Expected a primitive list, but got a list of pointer-only " + "structs.") { goto useDefault; } break; case ElementSize::POINTER: - // We expected a list of pointers but got a list of structs. Assuming the first field - // in the struct is the pointer we were looking for, we want to munge the pointer to - // point at the first element's pointer section. - ptr += tag->structRef.dataSize.get(); KJ_REQUIRE(tag->structRef.ptrCount.get() > ZERO * POINTERS, - "Expected a pointer list, but got a list of data-only structs.") { + "Schema mismatch: Expected a pointer list, but got a list of data-only " + "structs.") { goto useDefault; } break; @@ -2364,7 +2388,8 @@ struct WireHelpers { auto wordCount = roundBitsUpToWords(upgradeBound(elementCount) * step); KJ_REQUIRE(boundsCheck(segment, ptr, wordCount), - "Message contains out-of-bounds list pointer.") { + "Message contains out-of-bounds list pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { goto useDefault; } @@ -2397,11 +2422,11 @@ struct WireHelpers { pointersPerElement(expectedElementSize) * ELEMENTS; KJ_REQUIRE(expectedDataBitsPerElement <= dataSize, - "Message contained list with incompatible element type.") { + "Schema mismatch: Message contained list with incompatible element type.") { goto useDefault; } KJ_REQUIRE(expectedPointersPerElement <= pointerCount, - "Message contained list with incompatible element type.") { + "Schema mismatch: Message contained list with incompatible element type.") { goto useDefault; } } @@ -2436,17 +2461,19 @@ struct WireHelpers { auto size = ref->listRef.elementCount() * (ONE * BYTES / ELEMENTS); KJ_REQUIRE(ref->kind() == WirePointer::LIST, - "Message contains non-list pointer where text was expected.") { + "Schema mismatch: Message contains non-list pointer where text was expected.") { goto useDefault; } KJ_REQUIRE(ref->listRef.elementSize() == ElementSize::BYTE, - "Message contains list pointer of non-bytes where text was expected.") { + "Schema mismatch: Message contains list pointer of non-bytes where text was " + "expected.") { goto useDefault; } KJ_REQUIRE(boundsCheck(segment, ptr, roundBytesUpToWords(size)), - "Message contained out-of-bounds text pointer.") { + "Message contained out-of-bounds text pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { goto useDefault; } @@ -2494,17 +2521,19 @@ struct WireHelpers { auto size = ref->listRef.elementCount() * (ONE * BYTES / ELEMENTS); KJ_REQUIRE(ref->kind() == WirePointer::LIST, - "Message contains non-list pointer where data was expected.") { + "Schema mismatch: Message contains non-list pointer where data was expected.") { goto useDefault; } KJ_REQUIRE(ref->listRef.elementSize() == ElementSize::BYTE, - "Message contains list pointer of non-bytes where data was expected.") { + "Schema mismatch: Message contains list pointer of non-bytes where data was " + "expected.") { goto useDefault; } KJ_REQUIRE(boundsCheck(segment, ptr, roundBytesUpToWords(size)), - "Message contained out-of-bounds data pointer.") { + "Message contained out-of-bounds data pointer. " + OUT_OF_BOUNDS_ERROR_DETAIL) { goto useDefault; } @@ -3092,7 +3121,7 @@ ListBuilder ListBuilder::imbue(CapTableBuilder* capTable) { Text::Reader ListReader::asText() { KJ_REQUIRE(structDataSize == G(8) * BITS && structPointerCount == ZERO * POINTERS, - "Expected Text, got list of non-bytes.") { + "Schema mismatch: Expected Text, got list of non-bytes.") { return Text::Reader(); } @@ -3114,7 +3143,7 @@ Text::Reader ListReader::asText() { Data::Reader ListReader::asData() { KJ_REQUIRE(structDataSize == G(8) * BITS && structPointerCount == ZERO * POINTERS, - "Expected Text, got list of non-bytes.") { + "Schema mismatch: Expected Text, got list of non-bytes.") { return Data::Reader(); } @@ -3123,7 +3152,7 @@ Data::Reader ListReader::asData() { kj::ArrayPtr ListReader::asRawBytes() const { KJ_REQUIRE(structPointerCount == ZERO * POINTERS, - "Expected data only, got pointers.") { + "Schema mismatch: Expected data only, got pointers.") { return kj::ArrayPtr(); } @@ -3661,7 +3690,7 @@ bool OrphanBuilder::truncate(ElementCount uncheckedSize, bool isText) { return size == ZERO * ELEMENTS; } - KJ_REQUIRE(ref->kind() == WirePointer::LIST, "Can't truncate non-list.") { + KJ_REQUIRE(ref->kind() == WirePointer::LIST, "Schema mismatch: Can't truncate non-list.") { return false; } diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/layout.h b/libs/EXTERNAL/capnproto/c++/src/capnp/layout.h index c8d533cff1b..7a27f68a1f8 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/layout.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/layout.h @@ -1227,8 +1227,12 @@ inline Void ListReader::getDataElement(ElementCount index) const { } inline PointerReader ListReader::getPointerElement(ElementCount index) const { + // If the list elements have data sections we need to skip those. Note that for pointers to be + // present at all (which already must be true if we get here), then `structDataSize` must be a + // whole number of words, so we don't have to worry about unaligned reads here. + auto offset = structDataSize / BITS_PER_BYTE; return PointerReader(segment, capTable, reinterpret_cast( - ptr + upgradeBound(index) * step / BITS_PER_BYTE), nestingLimit); + ptr + offset + upgradeBound(index) * step / BITS_PER_BYTE), nestingLimit); } // ------------------------------------------------------------------- diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/membrane-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/membrane-test.c++ index 4fa928e45eb..9f3bc215836 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/membrane-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/membrane-test.c++ @@ -90,7 +90,6 @@ protected: } kj::Promise waitForever(WaitForeverContext context) override { - context.allowCancellation(); return kj::NEVER_DONE; } }; @@ -129,6 +128,8 @@ public: }); } + bool shouldResolveBeforeRedirecting() override { return true; } + private: kj::Maybe> revokePromise; }; @@ -276,6 +277,33 @@ KJ_TEST("apply membrane using copyOutOfMembrane() on AnyPointer") { }, "inside", "inbound", "inside", "inside"); } +KJ_TEST("MembraneHook::whenMoreResolved returns same value even when called concurrently.") { + TestEnv env; + + auto paf = kj::newPromiseAndFulfiller(); + test::TestMembrane::Client promCap(kj::mv(paf.promise)); + + auto prom = promCap.whenResolved(); + prom = prom.then([promCap = kj::mv(promCap), &env]() mutable { + auto membraned = membrane(kj::mv(promCap), env.policy->addRef()); + auto hook = ClientHook::from(membraned); + + auto arr = kj::heapArrayBuilder>>(2); + arr.add(KJ_ASSERT_NONNULL(hook->whenMoreResolved())); + arr.add(KJ_ASSERT_NONNULL(hook->whenMoreResolved())); + + return kj::joinPromises(arr.finish()).attach(kj::mv(hook)); + }).then([](kj::Vector> hooks) { + auto first = hooks[0].get(); + auto second = hooks[1].get(); + KJ_ASSERT(first == second); + }).eagerlyEvaluate(nullptr); + + auto newClient = kj::heap(); + paf.fulfiller->fulfill(kj::mv(newClient)); + prom.wait(env.waitScope); +} + struct TestRpcEnv { kj::EventLoop loop; kj::WaitScope waitScope; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/membrane.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/membrane.c++ index 732f062fd9b..845ff954894 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/membrane.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/membrane.c++ @@ -201,14 +201,14 @@ public: auto onRevoked = policy->onRevoked(); bool reverse = this->reverse; // for capture - auto newPromise = promise.then(kj::mvCapture(policy, - [reverse](kj::Own&& policy, Response&& response) { + auto newPromise = promise.then( + [reverse,policy=kj::mv(policy)](Response&& response) mutable { AnyPointer::Reader reader = response; auto newRespHook = kj::heap( ResponseHook::from(kj::mv(response)), policy->addRef(), reverse); reader = newRespHook->imbue(reader); return Response(reader, kj::mv(newRespHook)); - })); + }); KJ_IF_MAYBE(r, kj::mv(onRevoked)) { newPromise = newPromise.exclusiveJoin(r->then([]() -> Response { @@ -231,6 +231,11 @@ public: return promise; } + AnyPointer::Pipeline sendForPipeline() override { + return AnyPointer::Pipeline(kj::refcounted( + PipelineHook::from(inner->sendForPipeline()), policy->addRef(), reverse)); + } + const void* getBrand() override { return MEMBRANE_BRAND; } @@ -286,10 +291,6 @@ public: return inner->tailCall(MembraneRequestHook::wrap(kj::mv(request), *policy, !reverse)); } - void allowCancellation() override { - inner->allowCancellation(); - } - kj::Promise onTailCall() override { return inner->onTailCall().then([this](AnyPointer::Pipeline&& innerPipeline) { return AnyPointer::Pipeline(kj::refcounted( @@ -324,6 +325,8 @@ private: kj::Maybe results; }; +} // namespace + class MembraneHook final: public ClientHook, public kj::Refcounted { public: MembraneHook(kj::Own&& inner, kj::Own&& policyParam, bool reverse) @@ -335,6 +338,11 @@ public: } } + ~MembraneHook() noexcept(false) { + auto& map = reverse ? policy->reverseWrappers : policy->wrappers; + map.erase(inner.get()); + } + static kj::Own wrap(ClientHook& cap, MembranePolicy& policy, bool reverse) { if (cap.getBrand() == MEMBRANE_BRAND) { auto& otherMembrane = kj::downcast(cap); @@ -350,9 +358,19 @@ public: } } - return ClientHook::from( - reverse ? policy.importExternal(Capability::Client(cap.addRef())) - : policy.exportInternal(Capability::Client(cap.addRef()))); + auto& map = reverse ? policy.reverseWrappers : policy.wrappers; + ClientHook*& slot = map.findOrCreate(&cap, [&]() -> kj::Decay::Entry { + return { &cap, nullptr }; + }); + if (slot == nullptr) { + auto result = ClientHook::from( + reverse ? policy.importExternal(Capability::Client(cap.addRef())) + : policy.exportInternal(Capability::Client(cap.addRef()))); + slot = result; + return result; + } else { + return slot->addRef(); + } } static kj::Own wrap(kj::Own cap, MembranePolicy& policy, bool reverse) { @@ -370,15 +388,26 @@ public: } } - return ClientHook::from( - reverse ? policy.importExternal(Capability::Client(kj::mv(cap))) - : policy.exportInternal(Capability::Client(kj::mv(cap)))); + auto& map = reverse ? policy.reverseWrappers : policy.wrappers; + ClientHook*& slot = map.findOrCreate(cap.get(), [&]() -> kj::Decay::Entry { + return { cap.get(), nullptr }; + }); + if (slot == nullptr) { + auto result = ClientHook::from( + reverse ? policy.importExternal(Capability::Client(kj::mv(cap))) + : policy.exportInternal(Capability::Client(kj::mv(cap)))); + slot = result; + return result; + } else { + return slot->addRef(); + } } Request newCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) override { + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, + CallHints hints) override { KJ_IF_MAYBE(r, resolved) { - return r->get()->newCall(interfaceId, methodId, sizeHint); + return r->get()->newCall(interfaceId, methodId, sizeHint, hints); } auto redirect = reverse @@ -392,23 +421,24 @@ public: // otherwise behavior will differ depending on whether the promise is resolved. KJ_IF_MAYBE(p, whenMoreResolved()) { return newLocalPromiseClient(p->attach(addRef())) - ->newCall(interfaceId, methodId, sizeHint); + ->newCall(interfaceId, methodId, sizeHint, hints); } } - return ClientHook::from(kj::mv(*r))->newCall(interfaceId, methodId, sizeHint); + return ClientHook::from(kj::mv(*r))->newCall(interfaceId, methodId, sizeHint, hints); } else { // For pass-through calls, we don't worry about promises, because if the capability resolves // to something outside the membrane, then the call will pass back out of the membrane too. return MembraneRequestHook::wrap( - inner->newCall(interfaceId, methodId, sizeHint), *policy, reverse); + inner->newCall(interfaceId, methodId, sizeHint, hints), *policy, reverse); } } VoidPromiseAndPipeline call(uint64_t interfaceId, uint16_t methodId, - kj::Own&& context) override { + kj::Own&& context, + CallHints hints) override { KJ_IF_MAYBE(r, resolved) { - return r->get()->call(interfaceId, methodId, kj::mv(context)); + return r->get()->call(interfaceId, methodId, kj::mv(context), hints); } auto redirect = reverse @@ -422,17 +452,21 @@ public: // otherwise behavior will differ depending on whether the promise is resolved. KJ_IF_MAYBE(p, whenMoreResolved()) { return newLocalPromiseClient(p->attach(addRef())) - ->call(interfaceId, methodId, kj::mv(context)); + ->call(interfaceId, methodId, kj::mv(context), hints); } } - return ClientHook::from(kj::mv(*r))->call(interfaceId, methodId, kj::mv(context)); + return ClientHook::from(kj::mv(*r))->call(interfaceId, methodId, kj::mv(context), hints); } else { // !reverse because calls to the CallContext go in the opposite direction. auto result = inner->call(interfaceId, methodId, - kj::refcounted(kj::mv(context), policy->addRef(), !reverse)); + kj::refcounted(kj::mv(context), policy->addRef(), !reverse), + hints); - KJ_IF_MAYBE(r, policy->onRevoked()) { + if (hints.onlyPromisePipeline) { + // Just in case the called capability returned a valid promise, replace it here. + result.promise = kj::NEVER_DONE; + } else KJ_IF_MAYBE(r, policy->onRevoked()) { result.promise = result.promise.exclusiveJoin(kj::mv(*r)); } @@ -471,11 +505,14 @@ public: } return promise->then([this](kj::Own&& newInner) { - kj::Own newResolved = wrap(*newInner, *policy, reverse); - if (resolved == nullptr) { - resolved = newResolved->addRef(); + // There's a chance resolved was set by getResolved() or a concurrent whenMoreResolved() + // while we yielded the event loop. If the inner ClientHook is maintaining the contract, + // then resolved would already be set to newInner after wrapping in a MembraneHook. + KJ_IF_MAYBE(r, resolved) { + return (*r)->addRef(); + } else { + return resolved.emplace(wrap(*newInner, *policy, reverse))->addRef(); } - return newResolved; }); } else { return nullptr; @@ -491,9 +528,11 @@ public: } kj::Maybe getFd() override { - // We can't let FDs pass over membranes because we have no way to enforce the membrane policy - // on them. If the MembranePolicy wishes to explicitly permit certain FDs to pass, it can - // always do so by overriding the appropriate policy methods. + KJ_IF_MAYBE(f, inner->getFd()) { + if (policy->allowFdPassthrough()) { + return *f; + } + } return nullptr; } @@ -505,6 +544,8 @@ private: kj::Promise revocationTask = nullptr; }; +namespace { + kj::Own membrane(kj::Own inner, MembranePolicy& policy, bool reverse) { return MembraneHook::wrap(kj::mv(inner), policy, reverse); } diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/membrane.h b/libs/EXTERNAL/capnproto/c++/src/capnp/membrane.h index d51e2308585..60629cb4ddf 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/membrane.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/membrane.h @@ -48,6 +48,9 @@ // Mark Miller on membranes: http://www.eros-os.org/pipermail/e-lang/2003-January/008434.html #include "capability.h" +#include + +CAPNP_BEGIN_HEADER namespace capnp { @@ -114,7 +117,7 @@ class MembranePolicy { // invoked for new calls, but the `target` passed to them will be a capability that always // rethrows the revocation exception. - virtual bool shouldResolveBeforeRedirecting() { return true; } + virtual bool shouldResolveBeforeRedirecting() { return false; } // If this returns true, then when inboundCall() or outboundCall() returns a redirect, but the // original target is a promise, then the membrane will discard the redirect and instead wait // for the promise to become more resolved and try again. @@ -126,12 +129,20 @@ class MembranePolicy { // capability without applying the policy at all. // // However, some membranes don't need this behavior, and may be negatively impacted by the - // unnecessary waiting. Such membranes should override this to return false. + // unnecessary waiting. Such membranes can keep this disabled. // // TODO(cleanup): Consider a backwards-incompatible revamp of the MembranePolicy API with a // better design here. Maybe we should more carefully distinguish between MembranePolicies // which are reversible vs. those which are one-way? + virtual bool allowFdPassthrough() { return false; } + // Should file descriptors be allowed to pass through this membrane? + // + // A MembranePolicy obviously cannot mediate nor revoke access to a file descriptor once it has + // passed through, so this must be used with caution. If you only want to allow file descriptors + // on certain methods, you could do so by implementing inboundCall()/outboundCall() to + // special-case those methods. + // --------------------------------------------------------------------------- // Control over importing and exporting. // @@ -181,6 +192,15 @@ class MembranePolicy { // capability passed into the membrane and then back out. // // The default implementation simply returns `external`. + +private: + kj::HashMap wrappers; + kj::HashMap reverseWrappers; + // Tracks capabilities that already have wrappers instantiated. The maps map from pointer to + // inner capability to pointer to wrapper. When a wrapper is destroyed it removes itself from + // the map. + + friend class MembraneHook; }; Capability::Client membrane(Capability::Client inner, kj::Own policy); @@ -275,3 +295,5 @@ Orphan::Reads> copyOutOfMembrane( } } // namespace capnp + +CAPNP_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/message-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/message-test.c++ index 4d7362e3ff6..6545b17a6fb 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/message-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/message-test.c++ @@ -192,6 +192,27 @@ KJ_TEST("disallow unaligned") { } #endif +KJ_TEST("MessageBuilder::sizeInWords()") { + capnp::MallocMessageBuilder builder; + auto root = builder.initRoot(); + initTestMessage(root); + + size_t expected = root.totalSize().wordCount + 1; + + KJ_EXPECT(builder.sizeInWords() == expected); + + auto segments = builder.getSegmentsForOutput(); + size_t total = 0; + for (auto& segment: segments) { + total += segment.size(); + } + KJ_EXPECT(total == expected); + + capnp::SegmentArrayMessageReader reader(segments); + checkTestMessage(reader.getRoot()); + KJ_EXPECT(reader.sizeInWords() == expected); +} + // TODO(test): More tests. } // namespace diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/message.h b/libs/EXTERNAL/capnproto/c++/src/capnp/message.h index 55a8b2e98d2..af87aec819f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/message.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/message.h @@ -127,7 +127,7 @@ class MessageReader { private: ReaderOptions options; -#if defined(__EMSCRIPTEN__) +#if defined(__EMSCRIPTEN__) || (defined(__APPLE__) && defined(__ppc__)) static constexpr size_t arenaSpacePadding = 19; #else static constexpr size_t arenaSpacePadding = 18; @@ -159,7 +159,7 @@ class MessageBuilder { public: MessageBuilder(); virtual ~MessageBuilder() noexcept(false); - KJ_DISALLOW_COPY(MessageBuilder); + KJ_DISALLOW_COPY_AND_MOVE(MessageBuilder); struct SegmentInit { kj::ArrayPtr space; @@ -343,7 +343,7 @@ class SegmentArrayMessageReader: public MessageReader { // Creates a message pointing at the given segment array, without taking ownership of the // segments. All arrays passed in must remain valid until the MessageReader is destroyed. - KJ_DISALLOW_COPY(SegmentArrayMessageReader); + KJ_DISALLOW_COPY_AND_MOVE(SegmentArrayMessageReader); ~SegmentArrayMessageReader() noexcept(false); virtual kj::ArrayPtr getSegment(uint id) override; @@ -400,7 +400,7 @@ class MallocMessageBuilder: public MessageBuilder { // firstSegment MUST be zero-initialized. MallocMessageBuilder's destructor will write new zeros // over any space that was used so that it can be reused. - KJ_DISALLOW_COPY(MallocMessageBuilder); + KJ_DISALLOW_COPY_AND_MOVE(MallocMessageBuilder); virtual ~MallocMessageBuilder() noexcept(false); virtual kj::ArrayPtr allocateSegment(uint minimumSize) override; @@ -431,7 +431,7 @@ class FlatMessageBuilder: public MessageBuilder { public: explicit FlatMessageBuilder(kj::ArrayPtr array); - KJ_DISALLOW_COPY(FlatMessageBuilder); + KJ_DISALLOW_COPY_AND_MOVE(FlatMessageBuilder); virtual ~FlatMessageBuilder() noexcept(false); void requireFilled(); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/orphan.h b/libs/EXTERNAL/capnproto/c++/src/capnp/orphan.h index ab226500db8..0ef4a671c8d 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/orphan.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/orphan.h @@ -71,7 +71,7 @@ class Orphan { // If the new size is less than the original, the remaining elements will be discarded. The // list is never moved in this case. If the list happens to be located at the end of its segment // (which is always true if the list was the last thing allocated), the removed memory will be - // reclaimed (reducing the messag size), otherwise it is simply zeroed. The reclaiming behavior + // reclaimed (reducing the message size), otherwise it is simply zeroed. The reclaiming behavior // is particularly useful for allocating buffer space when you aren't sure how much space you // actually need: you can pre-allocate, say, a 4k byte array, read() from a file into it, and // then truncate it back to the amount of space actually used. diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/persistent.capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/persistent.capnp.c++ index 17ee6f45101..195c71549b3 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/persistent.capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/persistent.capnp.c++ @@ -74,7 +74,7 @@ KJ_CONSTEXPR(const) ::capnp::_::RawBrandedSchema::Dependency bd_c8cb212fcd9f5691 }; const ::capnp::_::RawSchema s_c8cb212fcd9f5691 = { 0xc8cb212fcd9f5691, b_c8cb212fcd9f5691.words, 54, d_c8cb212fcd9f5691, m_c8cb212fcd9f5691, - 2, 1, nullptr, nullptr, nullptr, { &s_c8cb212fcd9f5691, nullptr, bd_c8cb212fcd9f5691, 0, sizeof(bd_c8cb212fcd9f5691) / sizeof(bd_c8cb212fcd9f5691[0]), nullptr } + 2, 1, nullptr, nullptr, nullptr, { &s_c8cb212fcd9f5691, nullptr, bd_c8cb212fcd9f5691, 0, sizeof(bd_c8cb212fcd9f5691) / sizeof(bd_c8cb212fcd9f5691[0]), nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<35> b_f76fba59183073a5 = { @@ -120,7 +120,7 @@ static const uint16_t m_f76fba59183073a5[] = {0}; static const uint16_t i_f76fba59183073a5[] = {0}; const ::capnp::_::RawSchema s_f76fba59183073a5 = { 0xf76fba59183073a5, b_f76fba59183073a5.words, 35, nullptr, m_f76fba59183073a5, - 0, 1, i_f76fba59183073a5, nullptr, nullptr, { &s_f76fba59183073a5, nullptr, nullptr, 0, 0, nullptr } + 0, 1, i_f76fba59183073a5, nullptr, nullptr, { &s_f76fba59183073a5, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<36> b_b76848c18c40efbf = { @@ -167,7 +167,7 @@ static const uint16_t m_b76848c18c40efbf[] = {0}; static const uint16_t i_b76848c18c40efbf[] = {0}; const ::capnp::_::RawSchema s_b76848c18c40efbf = { 0xb76848c18c40efbf, b_b76848c18c40efbf.words, 36, nullptr, m_b76848c18c40efbf, - 0, 1, i_b76848c18c40efbf, nullptr, nullptr, { &s_b76848c18c40efbf, nullptr, nullptr, 0, 0, nullptr } + 0, 1, i_b76848c18c40efbf, nullptr, nullptr, { &s_b76848c18c40efbf, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<22> b_f622595091cafb67 = { @@ -198,7 +198,7 @@ static const ::capnp::_::AlignedData<22> b_f622595091cafb67 = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_f622595091cafb67 = { 0xf622595091cafb67, b_f622595091cafb67.words, 22, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_f622595091cafb67, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_f622595091cafb67, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE } // namespace schemas diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/persistent.capnp.h b/libs/EXTERNAL/capnproto/c++/src/capnp/persistent.capnp.h index 60ea65b24fe..ee0abb37f1a 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/persistent.capnp.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/persistent.capnp.h @@ -9,7 +9,9 @@ #include #endif // !CAPNP_LITE -#if CAPNP_VERSION != 9001 +#ifndef CAPNP_VERSION +#error "CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?" +#elif CAPNP_VERSION != 1000002 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." #endif @@ -430,15 +432,19 @@ inline ::capnp::Orphan Persistent::SaveParams::Builder: } // Persistent::SaveParams +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL template constexpr uint16_t Persistent::SaveParams::_capnpPrivate::dataWordSize; template constexpr uint16_t Persistent::SaveParams::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL template constexpr ::capnp::Kind Persistent::SaveParams::_capnpPrivate::kind; template constexpr ::capnp::_::RawSchema const* Persistent::SaveParams::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL template const ::capnp::_::RawBrandedSchema::Scope Persistent::SaveParams::_capnpPrivate::brandScopes[] = { { 0xc8cb212fcd9f5691, brandBindings + 0, 2, false}, @@ -509,15 +515,19 @@ inline ::capnp::Orphan Persistent::SaveResults::Bui } // Persistent::SaveResults +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL template constexpr uint16_t Persistent::SaveResults::_capnpPrivate::dataWordSize; template constexpr uint16_t Persistent::SaveResults::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL template constexpr ::capnp::Kind Persistent::SaveResults::_capnpPrivate::kind; template constexpr ::capnp::_::RawSchema const* Persistent::SaveResults::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL template const ::capnp::_::RawBrandedSchema::Scope Persistent::SaveResults::_capnpPrivate::brandScopes[] = { { 0xc8cb212fcd9f5691, brandBindings + 0, 2, false}, @@ -539,7 +549,7 @@ template CAPNP_AUTO_IF_MSVC(::capnp::Request::SaveParams, typename ::capnp::Persistent::SaveResults>) Persistent::Client::saveRequest(::kj::Maybe< ::capnp::MessageSize> sizeHint) { return newCall::SaveParams, typename ::capnp::Persistent::SaveResults>( - 0xc8cb212fcd9f5691ull, 0, sizeHint); + 0xc8cb212fcd9f5691ull, 0, sizeHint, {false}); } template ::kj::Promise Persistent::Server::save(SaveContext) { @@ -567,6 +577,7 @@ ::capnp::Capability::Server::DispatchCallResult Persistent::Se return { save(::capnp::Capability::Server::internalGetTypedContext< typename ::capnp::Persistent::SaveParams, typename ::capnp::Persistent::SaveResults>(context)), + false, false }; default: @@ -580,10 +591,12 @@ ::capnp::Capability::Server::DispatchCallResult Persistent::Se // Persistent #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL template constexpr ::capnp::Kind Persistent::_capnpPrivate::kind; template constexpr ::capnp::_::RawSchema const* Persistent::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL template const ::capnp::_::RawBrandedSchema::Scope Persistent::_capnpPrivate::brandScopes[] = { { 0xc8cb212fcd9f5691, brandBindings + 0, 2, false}, diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/raw-schema.h b/libs/EXTERNAL/capnproto/c++/src/capnp/raw-schema.h index 88101692a20..44b696c5ca1 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/raw-schema.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/raw-schema.h @@ -226,6 +226,9 @@ struct RawSchema { // Specifies the brand to use for this schema if no generic parameters have been bound to // anything. Generally, in the default brand, all generic parameters are treated as if they were // bound to `AnyPointer`. + + bool mayContainCapabilities = true; + // See StructSchema::mayContainCapabilities. }; inline bool RawBrandedSchema::isUnbound() const { diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect-test.c++ index 492f5489be3..12ef59333d1 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect-test.c++ @@ -85,7 +85,8 @@ void doAutoReconnectTest(kj::WaitScope& ws, KJ_EXPECT(test(123, true) == "123 true 0"); currentServer->setError(KJ_EXCEPTION(DISCONNECTED, "test1 disconnect")); - KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("test1 disconnect", test(456, true)); + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("test1 disconnect", + testPromise(456, true).ignoreResult().wait(ws)); KJ_EXPECT(test(789, false) == "789 false 1"); KJ_EXPECT(test(21, true) == "21 true 1"); @@ -99,8 +100,8 @@ void doAutoReconnectTest(kj::WaitScope& ws, KJ_EXPECT(!promise1.poll(ws)); KJ_EXPECT(!promise2.poll(ws)); fulfiller->reject(KJ_EXCEPTION(DISCONNECTED, "test2 disconnect")); - KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("test2 disconnect", promise1.wait(ws)); - KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("test2 disconnect", promise2.wait(ws)); + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("test2 disconnect", promise1.ignoreResult().wait(ws)); + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("test2 disconnect", promise2.ignoreResult().wait(ws)); } KJ_EXPECT(test(43, false) == "43 false 2"); @@ -127,7 +128,7 @@ void doAutoReconnectTest(kj::WaitScope& ws, client = nullptr; // Everything we initiated should still finish. - KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("test3 disconnect", promise4.wait(ws)); + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("test3 disconnect", promise4.ignoreResult().wait(ws)); // Send the request which we created before the disconnect. There are two behaviors we accept // as correct here: it may throw the disconnect exception, or it may automatically redirect to @@ -195,6 +196,12 @@ KJ_TEST("lazyAutoReconnect() initialies lazily") { req.setJ(j); return kj::str(req.send().wait(ws).getX()); }; + auto testIgnoreResult = [&](uint i, bool j) { + auto req = client.fooRequest(); + req.setI(i); + req.setJ(j); + req.send().ignoreResult().wait(ws); + }; KJ_EXPECT(connectCount == 1); KJ_EXPECT(test(123, true) == "123 true 0"); @@ -208,7 +215,7 @@ KJ_TEST("lazyAutoReconnect() initialies lazily") { KJ_EXPECT(connectCount == 2); currentServer->setError(KJ_EXCEPTION(DISCONNECTED, "test1 disconnect")); - KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("test1 disconnect", test(345, true)); + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("test1 disconnect", testIgnoreResult(345, true)); // lazyAutoReconnect is only lazy on the first request, not on reconnects. KJ_EXPECT(connectCount == 3); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect.c++ index fe2bd07f8dc..2a8c67f6c23 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect.c++ @@ -32,17 +32,26 @@ public: current(lazy ? kj::Maybe>() : ClientHook::from(connect())) {} Request newCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) override { - auto result = getCurrent().newCall(interfaceId, methodId, sizeHint); + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, + CallHints hints) override { + auto result = getCurrent().newCall(interfaceId, methodId, sizeHint, hints); AnyPointer::Builder builder = result; auto hook = kj::heap(kj::addRef(*this), RequestHook::from(kj::mv(result))); return { builder, kj::mv(hook) }; } VoidPromiseAndPipeline call(uint64_t interfaceId, uint16_t methodId, - kj::Own&& context) override { - auto result = getCurrent().call(interfaceId, methodId, kj::mv(context)); - wrap(result.promise); + kj::Own&& context, CallHints hints) override { + auto result = getCurrent().call(interfaceId, methodId, kj::mv(context), hints); + if (hints.onlyPromisePipeline) { + // Just in case the callee didn't implement the hint, replace its promise. + result.promise = kj::NEVER_DONE; + + // TODO(bug): In this case we won't detect cancellation. This is essentially the same + // bug as described in `RequestImpl::send()` below, and will need the same solution. + } else { + wrap(result.promise); + } return result; } @@ -109,6 +118,12 @@ private: RemotePromise send() override { auto result = inner->send(); + // TODO(bug): If the returned promise is dropped, e.g. because the caller only cares about + // pipelining, then the DISCONNECTED exception will not be noticed. I suppose we have to + // split the promise and hold one branch, but we don't want to prevent cancellation, so + // we only want to hold that branch as long as the PipelineHook or some pipelined + // capability obtained through it lives. So we need a bunch of custom wrappers for that. + // Ugh. parent->wrap(result); return result; } @@ -119,6 +134,11 @@ private: return result; } + AnyPointer::Pipeline sendForPipeline() override { + // TODO(bug): This definitely fails to detect disconnects; see comment in send(). + return inner->sendForPipeline(); + } + const void* getBrand() override { return nullptr; } diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect.h b/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect.h index 6f7d3d62d0d..4e430951e92 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/reconnect.h @@ -21,7 +21,7 @@ #pragma once -#include "capability.h" +#include #include CAPNP_BEGIN_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-prelude.h b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-prelude.h index c6165d13233..742aa868c98 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-prelude.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-prelude.h @@ -24,7 +24,7 @@ #pragma once -#include "capability.h" +#include #include "persistent.capnp.h" CAPNP_BEGIN_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-test.c++ index 6211d7e3649..da0d7abcbc7 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-test.c++ @@ -288,8 +288,8 @@ public: auto incomingMessage = kj::heap(messageToFlatArray(message)); auto connectionPtr = &connection; - connection.tasks->add(kj::evalLater(kj::mvCapture(incomingMessage, - [connectionPtr](kj::Own&& message) { + connection.tasks->add(kj::evalLater( + [connectionPtr,message=kj::mv(incomingMessage)]() mutable { KJ_IF_MAYBE(p, connectionPtr->partner) { if (p->fulfillers.empty()) { p->messages.push(kj::mv(message)); @@ -300,7 +300,7 @@ public: p->fulfillers.pop(); } } - }))); + })); } size_t sizeInWords() override { @@ -566,6 +566,42 @@ TEST(Rpc, Pipelining) { EXPECT_EQ(1, chainedCallCount); } +KJ_TEST("RPC sendForPipeline()") { + TestContext context; + + auto client = context.connect(test::TestSturdyRefObjectId::Tag::TEST_PIPELINE) + .castAs(); + + int chainedCallCount = 0; + + auto request = client.getCapRequest(); + request.setN(234); + request.setInCap(kj::heap(chainedCallCount)); + + auto pipeline = request.sendForPipeline(); + + auto pipelineRequest = pipeline.getOutBox().getCap().fooRequest(); + pipelineRequest.setI(321); + auto pipelinePromise = pipelineRequest.send(); + + auto pipelineRequest2 = pipeline.getOutBox().getCap().castAs().graultRequest(); + auto pipelinePromise2 = pipelineRequest2.send(); + + pipeline = nullptr; // Just to be annoying, drop the original pipeline. + + EXPECT_EQ(0, context.restorer.callCount); + EXPECT_EQ(0, chainedCallCount); + + auto response = pipelinePromise.wait(context.waitScope); + EXPECT_EQ("bar", response.getX()); + + auto response2 = pipelinePromise2.wait(context.waitScope); + checkTestMessage(response2); + + EXPECT_EQ(3, context.restorer.callCount); + EXPECT_EQ(1, chainedCallCount); +} + KJ_TEST("RPC context.setPipeline") { TestContext context; @@ -703,7 +739,6 @@ public: : callCount(callCount), cancelCount(cancelCount) {} kj::Promise foo(FooContext context) override { - context.allowCancellation(); ++callCount; return kj::Promise(kj::NEVER_DONE) .attach(kj::defer([&cancelCount = cancelCount]() { ++cancelCount; })); @@ -798,8 +833,8 @@ TEST(Rpc, TailCallCancelRace) { KJ_ASSERT(cancelCount == 1); } -TEST(Rpc, Cancelation) { - // Tests allowCancellation(). +TEST(Rpc, Cancellation) { + // Tests cancellation. TestContext context; @@ -1305,6 +1340,23 @@ KJ_TEST("method throws exception") { KJ_EXPECT(exception.getRemoteTrace() == nullptr); } +KJ_TEST("method throws exception won't redundantly add remote exception prefix") { + TestContext context; + + auto client = context.connect(test::TestSturdyRefObjectId::Tag::TEST_MORE_STUFF) + .castAs(); + + kj::Maybe maybeException; + client.throwRemoteExceptionRequest().send().ignoreResult() + .catch_([&](kj::Exception&& e) { + maybeException = kj::mv(e); + }).wait(context.waitScope); + + auto exception = KJ_ASSERT_NONNULL(maybeException); + KJ_EXPECT(exception.getDescription() == "remote exception: test exception"); + KJ_EXPECT(exception.getRemoteTrace() == nullptr); +} + KJ_TEST("method throws exception with trace encoder") { TestContext context; @@ -1510,7 +1562,7 @@ KJ_TEST("export the same promise twice") { KJ_EXPECT(interceptCount == 3); // Now try sending a non-promise cap. We'll send all these requests at once before waiting on - // any of them since these will acutally complete.k + // any of them since these will actually complete. exportIsPromise = false; expectedExportNumber = 2; auto promise4 = sendReq(normalCap); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty-test.c++ index a3e5749c7c0..5bf2215de52 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty-test.c++ @@ -147,6 +147,7 @@ TEST(TwoPartyNetwork, Basic) { clock.increment(1 * kj::SECONDS); KJ_EXPECT(network.getCurrentQueueCount() == 1); + KJ_EXPECT(network.getCurrentQueueSize() % sizeof(word) == 0); KJ_EXPECT(network.getCurrentQueueSize() > 0); KJ_EXPECT(network.getOutgoingMessageWaitTime() == 1 * kj::SECONDS); size_t oldSize = network.getCurrentQueueSize(); @@ -158,6 +159,7 @@ TEST(TwoPartyNetwork, Basic) { auto promise1 = request1.send(); KJ_EXPECT(network.getCurrentQueueCount() == 2); + KJ_EXPECT(network.getCurrentQueueSize() % sizeof(word) == 0); KJ_EXPECT(network.getCurrentQueueSize() > oldSize); KJ_EXPECT(network.getOutgoingMessageWaitTime() == 1 * kj::SECONDS); oldSize = network.getCurrentQueueSize(); @@ -167,6 +169,7 @@ TEST(TwoPartyNetwork, Basic) { auto promise2 = request2.send(); KJ_EXPECT(network.getCurrentQueueCount() == 3); + KJ_EXPECT(network.getCurrentQueueSize() % sizeof(word) == 0); KJ_EXPECT(network.getCurrentQueueSize() > oldSize); oldSize = network.getCurrentQueueSize(); @@ -184,6 +187,7 @@ TEST(TwoPartyNetwork, Basic) { EXPECT_EQ(0, callCount); KJ_EXPECT(network.getCurrentQueueCount() == 4); + KJ_EXPECT(network.getCurrentQueueSize() % sizeof(word) == 0); KJ_EXPECT(network.getCurrentQueueSize() > oldSize); // Oldest message is now 2 seconds old KJ_EXPECT(network.getOutgoingMessageWaitTime() == 2 * kj::SECONDS); @@ -213,6 +217,18 @@ TEST(TwoPartyNetwork, Basic) { // Now nothing is queued. KJ_EXPECT(network.getCurrentQueueCount() == 0); KJ_EXPECT(network.getCurrentQueueSize() == 0); + + // Ensure that sending a message after not sending one for some time + // doesn't return incorrect waitTime statistics. + clock.increment(10 * kj::SECONDS); + + auto request4 = client.fooRequest(); + request4.setI(123); + request4.setJ(true); + auto promise4 = request4.send(); + + KJ_EXPECT(network.getCurrentQueueCount() == 1); + KJ_EXPECT(network.getOutgoingMessageWaitTime() == 0 * kj::SECONDS); } TEST(TwoPartyNetwork, Pipelining) { @@ -390,8 +406,10 @@ TEST(TwoPartyNetwork, Abort) { msg->send(); } - auto reply = KJ_ASSERT_NONNULL(conn->receiveIncomingMessage().wait(ioContext.waitScope)); - EXPECT_EQ(rpc::Message::ABORT, reply->getBody().getAs().which()); + { + auto reply = KJ_ASSERT_NONNULL(conn->receiveIncomingMessage().wait(ioContext.waitScope)); + EXPECT_EQ(rpc::Message::ABORT, reply->getBody().getAs().which()); + } EXPECT_TRUE(conn->receiveIncomingMessage().wait(ioContext.waitScope) == nullptr); } @@ -720,6 +738,85 @@ KJ_TEST("Streaming over RPC") { } } +KJ_TEST("Streaming over a chain of local and remote RPC calls") { + // This test verifies that a local RPC call that eventually resolves to a remote RPC call will + // still support streaming calls over the remote connection. + + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + + // Set up a local server that will eventually delegate requests to a remote server. + auto localPaf = kj::newPromiseAndFulfiller(); + test::TestStreaming::Client promisedClient(kj::mv(localPaf.promise)); + + uint count = 0; + auto req = promisedClient.doStreamIRequest(); + req.setI(++count); + auto promise = req.send(); + + // Expect streaming request to be blocked on promised client. + KJ_EXPECT(!promise.poll(waitScope)); + + // Set up a remote server with a flow control window for streaming. + auto pipe = kj::newTwoWayPipe(); + + size_t window = 1024; + size_t clientWritten = 0; + size_t serverWritten = 0; + + pipe.ends[0] = kj::heap(kj::mv(pipe.ends[0]), window, clientWritten); + pipe.ends[1] = kj::heap(kj::mv(pipe.ends[1]), window, serverWritten); + + auto remotePaf = kj::newPromiseAndFulfiller(); + test::TestStreaming::Client serverCap(kj::mv(remotePaf.promise)); + + TwoPartyClient tpClient(*pipe.ends[0]); + TwoPartyClient tpServer(*pipe.ends[1], kj::mv(serverCap), rpc::twoparty::Side::SERVER); + + auto clientCap = tpClient.bootstrap().castAs(); + + // Expect streaming request to be unblocked by fulfilling promised client with remote server. + localPaf.fulfiller->fulfill(kj::mv(clientCap)); + KJ_EXPECT(promise.poll(waitScope)); + + // Send stream requests until we can't anymore. + while (promise.poll(waitScope)) { + promise.wait(waitScope); + + auto req = promisedClient.doStreamIRequest(); + req.setI(++count); + promise = req.send(); + KJ_ASSERT(count < 1000); + } + + // Expect several stream requests to have fit in the flow control window. + KJ_EXPECT(count > 5); + + auto finishReq = promisedClient.finishStreamRequest(); + auto finishPromise = finishReq.send(); + KJ_EXPECT(!finishPromise.poll(waitScope)); + + // Finish calls on server + auto ownServer = kj::heap(); + auto& server = *ownServer; + remotePaf.fulfiller->fulfill(kj::mv(ownServer)); + KJ_EXPECT(!promise.poll(waitScope)); + + uint countReceived = 0; + for (uint i = 0; i < count; i++) { + KJ_EXPECT(server.iSum == ++countReceived); + server.iSum = 0; + KJ_ASSERT_NONNULL(server.fulfiller)->fulfill(); + + if (i < count - 1) { + KJ_EXPECT(!finishPromise.poll(waitScope)); + } + } + + KJ_EXPECT(finishPromise.poll(waitScope)); + finishPromise.wait(waitScope); +} + KJ_TEST("Streaming over RPC then unwrap with CapabilitySet") { kj::EventLoop loop; kj::WaitScope waitScope(loop); @@ -891,6 +988,284 @@ KJ_TEST("write error propagates to read error") { } } +class TestStreamingCancellationBug final: public test::TestStreaming::Server { +public: + uint iSum = 0; + kj::Maybe>> fulfiller; + + kj::Promise doStreamI(DoStreamIContext context) override { + auto paf = kj::newPromiseAndFulfiller(); + fulfiller = kj::mv(paf.fulfiller); + return paf.promise.then([this,context]() mutable { + // Don't count the sum until here so we actually detect if the call is canceled. + iSum += context.getParams().getI(); + }); + } + + kj::Promise finishStream(FinishStreamContext context) override { + auto results = context.getResults(); + results.setTotalI(iSum); + return kj::READY_NOW; + } +}; + +KJ_TEST("Streaming over RPC no premature cancellation when client dropped") { + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + + auto pipe = kj::newTwoWayPipe(); + + auto ownServer = kj::heap(); + auto& server = *ownServer; + test::TestStreaming::Client serverCap = kj::mv(ownServer); + + TwoPartyClient tpClient(*pipe.ends[0]); + TwoPartyClient tpServer(*pipe.ends[1], kj::mv(serverCap), rpc::twoparty::Side::SERVER); + + auto client = tpClient.bootstrap().castAs(); + + kj::Promise promise1 = nullptr, promise2 = nullptr; + + { + auto req = client.doStreamIRequest(); + req.setI(123); + promise1 = req.send(); + } + { + auto req = client.doStreamIRequest(); + req.setI(456); + promise2 = req.send(); + } + + auto finishPromise = client.finishStreamRequest().send(); + + KJ_EXPECT(server.iSum == 0); + + // Drop the client. This shouldn't cause a problem for the already-running RPCs. + { auto drop = kj::mv(client); } + + while (!finishPromise.poll(waitScope)) { + KJ_ASSERT_NONNULL(server.fulfiller)->fulfill(); + } + + finishPromise.wait(waitScope); + KJ_EXPECT(server.iSum == 579); +} + +KJ_TEST("Dropping capability during call doesn't destroy server") { + class TestInterfaceImpl final: public test::TestInterface::Server { + // An object which increments a count in the constructor and decrements it in the destructor, + // to detect when it is destroyed. The object's foo() method also sets a fulfiller to use to + // cause the method to complete. + public: + TestInterfaceImpl(uint& count, kj::Maybe>>& fulfillerSlot) + : count(count), fulfillerSlot(fulfillerSlot) { ++count; } + ~TestInterfaceImpl() noexcept(false) { --count; } + + kj::Promise foo(FooContext context) override { + auto paf = kj::newPromiseAndFulfiller(); + fulfillerSlot = kj::mv(paf.fulfiller); + return kj::mv(paf.promise); + } + + private: + uint& count; + kj::Maybe>>& fulfillerSlot; + }; + + class TestBootstrapImpl final: public test::TestMoreStuff::Server { + // Bootstrap object which just vends instances of `TestInterfaceImpl`. + public: + TestBootstrapImpl(uint& count, kj::Maybe>>& fulfillerSlot) + : count(count), fulfillerSlot(fulfillerSlot) {} + + kj::Promise getHeld(GetHeldContext context) override { + context.initResults().setCap(kj::heap(count, fulfillerSlot)); + return kj::READY_NOW; + } + + private: + uint& count; + kj::Maybe>>& fulfillerSlot; + }; + + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + auto pipe = kj::newTwoWayPipe(); + + uint count = 0; + kj::Maybe>> fulfillerSlot; + test::TestMoreStuff::Client bootstrap = kj::heap(count, fulfillerSlot); + + TwoPartyClient tpClient(*pipe.ends[0]); + TwoPartyClient tpServer(*pipe.ends[1], kj::mv(bootstrap), rpc::twoparty::Side::SERVER); + + auto cap = tpClient.bootstrap().castAs().getHeldRequest().send().getCap(); + + waitScope.poll(); + auto promise = cap.fooRequest().send(); + KJ_EXPECT(!promise.poll(waitScope)); + KJ_EXPECT(count == 1); + KJ_EXPECT(fulfillerSlot != nullptr); + + // Dropping the capability should not destroy the server as long as the call is still + // outstanding. + {auto drop = kj::mv(cap);} + + KJ_EXPECT(!promise.poll(waitScope)); + KJ_EXPECT(count == 1); + + // Cancelling the call still should not destroy the server because the call is not marked to + // allow cancellation. So the call should keep running. + {auto drop = kj::mv(promise);} + + waitScope.poll(); + KJ_EXPECT(count == 1); + + // When the call completes, only then should the server be dropped. + KJ_ASSERT_NONNULL(fulfillerSlot)->fulfill(); + + waitScope.poll(); + KJ_EXPECT(count == 0); +} + +RemotePromise getCallSequence( + test::TestCallOrder::Client& client, uint expected) { + auto req = client.getCallSequenceRequest(); + req.setExpected(expected); + return req.send(); +} + +KJ_TEST("Two-hop embargo") { + // Copied from `TEST(Rpc, Embargo)` in `rpc-test.c++`, adapted to involve a two-hop path through + // a proxy. This tests what happens when disembargoes on multiple hops are happening in parallel. + + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + + int callCount = 0, handleCount = 0; + + // Set up two two-party RPC connections in series. The middle node just proxies requests through. + auto frontPipe = kj::newTwoWayPipe(); + auto backPipe = kj::newTwoWayPipe(); + TwoPartyClient tpClient(*frontPipe.ends[0]); + TwoPartyClient proxyBack(*backPipe.ends[0]); + TwoPartyClient proxyFront(*frontPipe.ends[1], proxyBack.bootstrap(), rpc::twoparty::Side::SERVER); + TwoPartyClient tpServer(*backPipe.ends[1], kj::heap(callCount, handleCount), + rpc::twoparty::Side::SERVER); + + // Perform some logic that does a bunch of promise pipelining, including passing a capability + // from the client to the server and back to the client, and making promise-pipelined calls on + // that capability. This should exercise the promise resolution and disembargo code. + auto client = tpClient.bootstrap().castAs(); + + auto cap = test::TestCallOrder::Client(kj::heap()); + + auto earlyCall = client.getCallSequenceRequest().send(); + + auto echoRequest = client.echoRequest(); + echoRequest.setCap(cap); + auto echo = echoRequest.send(); + + auto pipeline = echo.getCap(); + + auto call0 = getCallSequence(pipeline, 0); + auto call1 = getCallSequence(pipeline, 1); + + earlyCall.wait(waitScope); + + auto call2 = getCallSequence(pipeline, 2); + + auto resolved = echo.wait(waitScope).getCap(); + + auto call3 = getCallSequence(pipeline, 3); + auto call4 = getCallSequence(pipeline, 4); + auto call5 = getCallSequence(pipeline, 5); + + EXPECT_EQ(0, call0.wait(waitScope).getN()); + EXPECT_EQ(1, call1.wait(waitScope).getN()); + EXPECT_EQ(2, call2.wait(waitScope).getN()); + EXPECT_EQ(3, call3.wait(waitScope).getN()); + EXPECT_EQ(4, call4.wait(waitScope).getN()); + EXPECT_EQ(5, call5.wait(waitScope).getN()); +} + +class TestCallOrderImplAsPromise final: public test::TestCallOrder::Server { + // This is an implementation of TestCallOrder that presents itself as a promise by implementing + // `shortenPath()`, although it never resolves to anything (`shortenPath()` never completes). + // This tests deeper code paths in promise resolution and embargo code. +public: + template + TestCallOrderImplAsPromise(Params&&... params): inner(kj::fwd(params)...) {} + + kj::Promise getCallSequence(GetCallSequenceContext context) override { + return inner.getCallSequence(context); + } + + kj::Maybe> shortenPath() override { + // Make this object appear to be a promise. + return kj::Promise(kj::NEVER_DONE); + } + +private: + TestCallOrderImpl inner; +}; + +KJ_TEST("Two-hop embargo") { + // Same as above, but the eventual resolution is itself a promise. This verifies that + // handleDisembargo() only waits for the target to resolve back to the capability that the + // disembargo should reflect to, but not beyond that. + + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + + int callCount = 0, handleCount = 0; + + // Set up two two-party RPC connections in series. The middle node just proxies requests through. + auto frontPipe = kj::newTwoWayPipe(); + auto backPipe = kj::newTwoWayPipe(); + TwoPartyClient tpClient(*frontPipe.ends[0]); + TwoPartyClient proxyBack(*backPipe.ends[0]); + TwoPartyClient proxyFront(*frontPipe.ends[1], proxyBack.bootstrap(), rpc::twoparty::Side::SERVER); + TwoPartyClient tpServer(*backPipe.ends[1], kj::heap(callCount, handleCount), + rpc::twoparty::Side::SERVER); + + // Perform some logic that does a bunch of promise pipelining, including passing a capability + // from the client to the server and back to the client, and making promise-pipelined calls on + // that capability. This should exercise the promise resolution and disembargo code. + auto client = tpClient.bootstrap().castAs(); + + auto cap = test::TestCallOrder::Client(kj::heap()); + + auto earlyCall = client.getCallSequenceRequest().send(); + + auto echoRequest = client.echoRequest(); + echoRequest.setCap(cap); + auto echo = echoRequest.send(); + + auto pipeline = echo.getCap(); + + auto call0 = getCallSequence(pipeline, 0); + auto call1 = getCallSequence(pipeline, 1); + + earlyCall.wait(waitScope); + + auto call2 = getCallSequence(pipeline, 2); + + auto resolved = echo.wait(waitScope).getCap(); + + auto call3 = getCallSequence(pipeline, 3); + auto call4 = getCallSequence(pipeline, 4); + auto call5 = getCallSequence(pipeline, 5); + + EXPECT_EQ(0, call0.wait(waitScope).getN()); + EXPECT_EQ(1, call1.wait(waitScope).getN()); + EXPECT_EQ(2, call2.wait(waitScope).getN()); + EXPECT_EQ(3, call3.wait(waitScope).getN()); + EXPECT_EQ(4, call4.wait(waitScope).getN()); + EXPECT_EQ(5, call5.wait(waitScope).getN()); +} + } // namespace } // namespace _ } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.c++ index f1bede8cb8a..09c84bbb55d 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.c++ @@ -66,14 +66,20 @@ TwoPartyVatNetwork::TwoPartyVatNetwork( TwoPartyVatNetwork::TwoPartyVatNetwork(kj::AsyncIoStream& stream, rpc::twoparty::Side side, ReaderOptions receiveOptions, const kj::MonotonicClock& clock) - : TwoPartyVatNetwork(kj::Own(kj::heap(stream)), - 0, side, receiveOptions, clock) {} + : TwoPartyVatNetwork( + kj::Own(kj::heap( + stream, IncomingRpcMessage::getShortLivedCallback())), + 0, side, receiveOptions, clock) {} TwoPartyVatNetwork::TwoPartyVatNetwork(kj::AsyncCapabilityStream& stream, uint maxFdsPerMessage, rpc::twoparty::Side side, ReaderOptions receiveOptions, const kj::MonotonicClock& clock) - : TwoPartyVatNetwork(kj::Own(kj::heap(stream)), - maxFdsPerMessage, side, receiveOptions, clock) {} + : TwoPartyVatNetwork( + kj::Own(kj::heap( + stream, IncomingRpcMessage::getShortLivedCallback())), + maxFdsPerMessage, side, receiveOptions, clock) {} + +TwoPartyVatNetwork::~TwoPartyVatNetwork() noexcept(false) {}; MessageStream& TwoPartyVatNetwork::getStream() { KJ_SWITCH_ONEOF(stream) { @@ -148,19 +154,44 @@ public: return; } - network.currentQueueSize += size * sizeof(capnp::word); - ++network.currentQueueCount; - auto deferredSizeUpdate = kj::defer([&network = network, size]() mutable { - network.currentQueueSize -= size * sizeof(capnp::word); - --network.currentQueueCount; - }); - auto sendTime = network.clock.now(); - network.previousWrite = KJ_ASSERT_NONNULL(network.previousWrite, "already shut down") - .then([this, sendTime]() { - return kj::evalNow([&]() { + if (network.queuedMessages.size() == 0) { + // Optimistically set sendTime when there's no messages in the queue. Without this, sending + // a message after a long delay could cause getOutgoingMessageWaitTime() to return excessively + // long wait times if it is called during the time period after send() is called, + // but before the write occurs, as we increment currentQueueCount synchronously, but + // asynchronously update currentOutgoingMessageSendTime. + network.currentOutgoingMessageSendTime = sendTime; + } + + // Instead of sending each new message as soon as possible, we attempt to batch together small + // messages by delaying when we send them using evalLast. This allows us to group together + // related small messages, reducing the number of syscalls we make. + auto& previousWrite = KJ_ASSERT_NONNULL(network.previousWrite, "already shut down"); + bool alreadyPendingSend = !network.queuedMessages.empty(); + network.currentQueueSize += message.sizeInWords() * sizeof(word); + network.queuedMessages.add(kj::addRef(*this)); + if (alreadyPendingSend) { + // The first send sets up an evalLast that will clear out pendingMessages when it's sent. + // If pendingMessages is non-empty, then there must already be a callback waiting to send + // them. + return; + } + + // On the other hand, if pendingMessages was empty, then we should set up the delayed write. + network.previousWrite = previousWrite.then([this, sendTime]() { + return kj::evalLast([this, sendTime]() -> kj::Promise { network.currentOutgoingMessageSendTime = sendTime; - return network.getStream().writeMessage(fds, message); + // Swap out the connection's pending messages and write all of them together. + auto ownMessages = kj::mv(network.queuedMessages); + network.currentQueueSize = 0; + auto messages = + kj::heapArray(ownMessages.size()); + for (int i = 0; i < messages.size(); ++i) { + messages[i].segments = ownMessages[i]->message.getSegmentsForOutput(); + messages[i].fds = ownMessages[i]->fds; + } + return network.getStream().writeMessages(messages).attach(kj::mv(ownMessages), kj::mv(messages)); }).catch_([this](kj::Exception&& e) { // Since no one checks write failures, we need to propagate them into read failures, // otherwise we might get stuck sending all messages into a black hole and wondering why @@ -171,7 +202,7 @@ public: } kj::throwRecoverableException(kj::mv(e)); }); - }).attach(kj::addRef(*this), kj::mv(deferredSizeUpdate)) + }).attach(kj::addRef(*this)) // Note that it's important that the eagerlyEvaluate() come *after* the attach() because // otherwise the message (and any capabilities in it) will not be released until a new // message is written! (Kenton once spent all afternoon tracking this down...) @@ -189,7 +220,7 @@ private: }; kj::Duration TwoPartyVatNetwork::getOutgoingMessageWaitTime() { - if (currentQueueCount > 0) { + if (queuedMessages.size() > 0) { return clock.now() - currentOutgoingMessageSendTime; } else { return 0 * kj::SECONDS; @@ -310,31 +341,46 @@ kj::Promise TwoPartyVatNetwork::shutdown() { // ======================================================================================= -TwoPartyServer::TwoPartyServer(Capability::Client bootstrapInterface) - : bootstrapInterface(kj::mv(bootstrapInterface)), tasks(*this) {} +TwoPartyServer::TwoPartyServer(Capability::Client bootstrapInterface, + kj::Maybe> traceEncoder) + : bootstrapInterface(kj::mv(bootstrapInterface)), + traceEncoder(kj::mv(traceEncoder)), + tasks(*this) {} struct TwoPartyServer::AcceptedConnection { kj::Own connection; TwoPartyVatNetwork network; RpcSystem rpcSystem; - explicit AcceptedConnection(Capability::Client bootstrapInterface, + explicit AcceptedConnection(TwoPartyServer& parent, kj::Own&& connectionParam) : connection(kj::mv(connectionParam)), network(*connection, rpc::twoparty::Side::SERVER), - rpcSystem(makeRpcServer(network, kj::mv(bootstrapInterface))) {} + rpcSystem(makeRpcServer(network, kj::cp(parent.bootstrapInterface))) { + init(parent); + } - explicit AcceptedConnection(Capability::Client bootstrapInterface, + explicit AcceptedConnection(TwoPartyServer& parent, kj::Own&& connectionParam, uint maxFdsPerMessage) : connection(kj::mv(connectionParam)), network(kj::downcast(*connection), maxFdsPerMessage, rpc::twoparty::Side::SERVER), - rpcSystem(makeRpcServer(network, kj::mv(bootstrapInterface))) {} + rpcSystem(makeRpcServer(network, kj::cp(parent.bootstrapInterface))) { + init(parent); + } + + void init(TwoPartyServer& parent) { + KJ_IF_MAYBE(t, parent.traceEncoder) { + rpcSystem.setTraceEncoder([&func = *t](const kj::Exception& e) { + return func(e); + }); + } + } }; void TwoPartyServer::accept(kj::Own&& connection) { - auto connectionState = kj::heap(bootstrapInterface, kj::mv(connection)); + auto connectionState = kj::heap(*this, kj::mv(connection)); // Run the connection until disconnect. auto promise = connectionState->network.onDisconnect(); @@ -344,7 +390,7 @@ void TwoPartyServer::accept(kj::Own&& connection) { void TwoPartyServer::accept( kj::Own&& connection, uint maxFdsPerMessage) { auto connectionState = kj::heap( - bootstrapInterface, kj::mv(connection), maxFdsPerMessage); + *this, kj::mv(connection), maxFdsPerMessage); // Run the connection until disconnect. auto promise = connectionState->network.onDisconnect(); @@ -352,7 +398,7 @@ void TwoPartyServer::accept( } kj::Promise TwoPartyServer::accept(kj::AsyncIoStream& connection) { - auto connectionState = kj::heap(bootstrapInterface, + auto connectionState = kj::heap(*this, kj::Own(&connection, kj::NullDisposer::instance)); // Run the connection until disconnect. @@ -362,7 +408,7 @@ kj::Promise TwoPartyServer::accept(kj::AsyncIoStream& connection) { kj::Promise TwoPartyServer::accept( kj::AsyncCapabilityStream& connection, uint maxFdsPerMessage) { - auto connectionState = kj::heap(bootstrapInterface, + auto connectionState = kj::heap(*this, kj::Own(&connection, kj::NullDisposer::instance), maxFdsPerMessage); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp index 0b670e8ac3f..5f0e2150e7f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp @@ -162,8 +162,6 @@ struct JoinResult { # implements the join by waiting for all the `JoinKeyParts` and then performing its own join on # them, then going back and answering all the join requests afterwards. - cap @2 :AnyPointer; + cap @2 :Capability; # One of the JoinResults will have a non-null `cap` which is the joined capability. - # - # TODO(cleanup): Change `AnyPointer` to `Capability` when that is supported. } diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp.c++ index 64ae32bf2e5..6809cebcf42 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp.c++ @@ -38,7 +38,7 @@ static const ::capnp::_::AlignedData<26> b_9fd69ebc87b9719c = { static const uint16_t m_9fd69ebc87b9719c[] = {1, 0}; const ::capnp::_::RawSchema s_9fd69ebc87b9719c = { 0x9fd69ebc87b9719c, b_9fd69ebc87b9719c.words, 26, nullptr, m_9fd69ebc87b9719c, - 0, 2, nullptr, nullptr, nullptr, { &s_9fd69ebc87b9719c, nullptr, nullptr, 0, 0, nullptr } + 0, 2, nullptr, nullptr, nullptr, { &s_9fd69ebc87b9719c, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE CAPNP_DEFINE_ENUM(Side_9fd69ebc87b9719c, 9fd69ebc87b9719c); @@ -86,7 +86,7 @@ static const uint16_t m_d20b909fee733a8e[] = {0}; static const uint16_t i_d20b909fee733a8e[] = {0}; const ::capnp::_::RawSchema s_d20b909fee733a8e = { 0xd20b909fee733a8e, b_d20b909fee733a8e.words, 33, d_d20b909fee733a8e, m_d20b909fee733a8e, - 1, 1, i_d20b909fee733a8e, nullptr, nullptr, { &s_d20b909fee733a8e, nullptr, nullptr, 0, 0, nullptr } + 1, 1, i_d20b909fee733a8e, nullptr, nullptr, { &s_d20b909fee733a8e, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<34> b_b88d09a9c5f39817 = { @@ -131,7 +131,7 @@ static const uint16_t m_b88d09a9c5f39817[] = {0}; static const uint16_t i_b88d09a9c5f39817[] = {0}; const ::capnp::_::RawSchema s_b88d09a9c5f39817 = { 0xb88d09a9c5f39817, b_b88d09a9c5f39817.words, 34, nullptr, m_b88d09a9c5f39817, - 0, 1, i_b88d09a9c5f39817, nullptr, nullptr, { &s_b88d09a9c5f39817, nullptr, nullptr, 0, 0, nullptr } + 0, 1, i_b88d09a9c5f39817, nullptr, nullptr, { &s_b88d09a9c5f39817, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<18> b_89f389b6fd4082c1 = { @@ -158,7 +158,7 @@ static const ::capnp::_::AlignedData<18> b_89f389b6fd4082c1 = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_89f389b6fd4082c1 = { 0x89f389b6fd4082c1, b_89f389b6fd4082c1.words, 18, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_89f389b6fd4082c1, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_89f389b6fd4082c1, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<19> b_b47f4979672cb59d = { @@ -186,7 +186,7 @@ static const ::capnp::_::AlignedData<19> b_b47f4979672cb59d = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_b47f4979672cb59d = { 0xb47f4979672cb59d, b_b47f4979672cb59d.words, 19, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_b47f4979672cb59d, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_b47f4979672cb59d, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<65> b_95b29059097fca83 = { @@ -262,7 +262,7 @@ static const uint16_t m_95b29059097fca83[] = {0, 1, 2}; static const uint16_t i_95b29059097fca83[] = {0, 1, 2}; const ::capnp::_::RawSchema s_95b29059097fca83 = { 0x95b29059097fca83, b_95b29059097fca83.words, 65, nullptr, m_95b29059097fca83, - 0, 3, i_95b29059097fca83, nullptr, nullptr, { &s_95b29059097fca83, nullptr, nullptr, 0, 0, nullptr } + 0, 3, i_95b29059097fca83, nullptr, nullptr, { &s_95b29059097fca83, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<65> b_9d263a3630b7ebee = { @@ -325,7 +325,7 @@ static const ::capnp::_::AlignedData<65> b_9d263a3630b7ebee = { 0, 0, 0, 0, 0, 0, 0, 0, 99, 97, 112, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, @@ -338,7 +338,7 @@ static const uint16_t m_9d263a3630b7ebee[] = {2, 0, 1}; static const uint16_t i_9d263a3630b7ebee[] = {0, 1, 2}; const ::capnp::_::RawSchema s_9d263a3630b7ebee = { 0x9d263a3630b7ebee, b_9d263a3630b7ebee.words, 65, nullptr, m_9d263a3630b7ebee, - 0, 3, i_9d263a3630b7ebee, nullptr, nullptr, { &s_9d263a3630b7ebee, nullptr, nullptr, 0, 0, nullptr } + 0, 3, i_9d263a3630b7ebee, nullptr, nullptr, { &s_9d263a3630b7ebee, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE } // namespace schemas @@ -351,51 +351,75 @@ namespace rpc { namespace twoparty { // VatId +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t VatId::_capnpPrivate::dataWordSize; constexpr uint16_t VatId::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind VatId::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* VatId::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // ProvisionId +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t ProvisionId::_capnpPrivate::dataWordSize; constexpr uint16_t ProvisionId::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind ProvisionId::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* ProvisionId::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // RecipientId +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t RecipientId::_capnpPrivate::dataWordSize; constexpr uint16_t RecipientId::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind RecipientId::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* RecipientId::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // ThirdPartyCapId +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t ThirdPartyCapId::_capnpPrivate::dataWordSize; constexpr uint16_t ThirdPartyCapId::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind ThirdPartyCapId::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* ThirdPartyCapId::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // JoinKeyPart +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t JoinKeyPart::_capnpPrivate::dataWordSize; constexpr uint16_t JoinKeyPart::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind JoinKeyPart::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* JoinKeyPart::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // JoinResult +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t JoinResult::_capnpPrivate::dataWordSize; constexpr uint16_t JoinResult::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind JoinResult::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* JoinResult::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp.h b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp.h index d447706c922..d3d8153a8b7 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.capnp.h @@ -5,8 +5,13 @@ #include #include +#if !CAPNP_LITE +#include +#endif // !CAPNP_LITE -#if CAPNP_VERSION != 9001 +#ifndef CAPNP_VERSION +#error "CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?" +#elif CAPNP_VERSION != 1000002 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." #endif @@ -532,7 +537,9 @@ class JoinResult::Reader { inline bool getSucceeded() const; inline bool hasCap() const; - inline ::capnp::AnyPointer::Reader getCap() const; +#if !CAPNP_LITE + inline ::capnp::Capability::Client getCap() const; +#endif // !CAPNP_LITE private: ::capnp::_::StructReader _reader; @@ -569,8 +576,13 @@ class JoinResult::Builder { inline void setSucceeded(bool value); inline bool hasCap(); - inline ::capnp::AnyPointer::Builder getCap(); - inline ::capnp::AnyPointer::Builder initCap(); +#if !CAPNP_LITE + inline ::capnp::Capability::Client getCap(); + inline void setCap( ::capnp::Capability::Client&& value); + inline void setCap( ::capnp::Capability::Client& value); + inline void adoptCap(::capnp::Orphan< ::capnp::Capability>&& value); + inline ::capnp::Orphan< ::capnp::Capability> disownCap(); +#endif // !CAPNP_LITE private: ::capnp::_::StructBuilder _builder; @@ -590,6 +602,7 @@ class JoinResult::Pipeline { inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless) : _typeless(kj::mv(typeless)) {} + inline ::capnp::Capability::Client getCap(); private: ::capnp::AnyPointer::Pipeline _typeless; friend class ::capnp::PipelineHook; @@ -706,20 +719,36 @@ inline bool JoinResult::Builder::hasCap() { return !_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); } -inline ::capnp::AnyPointer::Reader JoinResult::Reader::getCap() const { - return ::capnp::AnyPointer::Reader(_reader.getPointerField( +#if !CAPNP_LITE +inline ::capnp::Capability::Client JoinResult::Reader::getCap() const { + return ::capnp::_::PointerHelpers< ::capnp::Capability>::get(_reader.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } -inline ::capnp::AnyPointer::Builder JoinResult::Builder::getCap() { - return ::capnp::AnyPointer::Builder(_builder.getPointerField( +inline ::capnp::Capability::Client JoinResult::Builder::getCap() { + return ::capnp::_::PointerHelpers< ::capnp::Capability>::get(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } -inline ::capnp::AnyPointer::Builder JoinResult::Builder::initCap() { - auto result = ::capnp::AnyPointer::Builder(_builder.getPointerField( +inline ::capnp::Capability::Client JoinResult::Pipeline::getCap() { + return ::capnp::Capability::Client(_typeless.getPointerField(0).asCap()); +} +inline void JoinResult::Builder::setCap( ::capnp::Capability::Client&& cap) { + ::capnp::_::PointerHelpers< ::capnp::Capability>::set(_builder.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(cap)); +} +inline void JoinResult::Builder::setCap( ::capnp::Capability::Client& cap) { + ::capnp::_::PointerHelpers< ::capnp::Capability>::set(_builder.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS), cap); +} +inline void JoinResult::Builder::adoptCap( + ::capnp::Orphan< ::capnp::Capability>&& value) { + ::capnp::_::PointerHelpers< ::capnp::Capability>::adopt(_builder.getPointerField( + ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value)); +} +inline ::capnp::Orphan< ::capnp::Capability> JoinResult::Builder::disownCap() { + return ::capnp::_::PointerHelpers< ::capnp::Capability>::disown(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); - result.clear(); - return result; } +#endif // !CAPNP_LITE } // namespace } // namespace diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.h b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.h index 58fed747615..c280e62d401 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc-twoparty.h @@ -22,7 +22,7 @@ #pragma once #include "rpc.h" -#include "message.h" +#include #include #include #include @@ -79,7 +79,8 @@ class TwoPartyVatNetwork: public TwoPartyVatNetworkBase, // clock is used for calculating the oldest queued message age, which is a useful metric for // detecting queue overload - KJ_DISALLOW_COPY(TwoPartyVatNetwork); + ~TwoPartyVatNetwork() noexcept(false); + KJ_DISALLOW_COPY_AND_MOVE(TwoPartyVatNetwork); kj::Promise onDisconnect() { return disconnectPromise.addBranch(); } // Returns a promise that resolves when the peer disconnects. @@ -90,7 +91,7 @@ class TwoPartyVatNetwork: public TwoPartyVatNetworkBase, // Get the number of bytes worth of outgoing messages that are currently queued in memory waiting // to be sent on this connection. This may be useful for backpressure. - size_t getCurrentQueueCount() { return currentQueueCount; } + size_t getCurrentQueueCount() { return queuedMessages.size(); } // Get the count of outgoing messages that are currently queued in memory waiting // to be sent on this connection. This may be useful for backpressure. @@ -135,8 +136,8 @@ class TwoPartyVatNetwork: public TwoPartyVatNetworkBase, kj::ForkedPromise disconnectPromise = nullptr; + kj::Vector> queuedMessages; size_t currentQueueSize = 0; - size_t currentQueueCount = 0; const kj::MonotonicClock& clock; kj::TimePoint currentOutgoingMessageSendTime; @@ -183,10 +184,12 @@ class TwoPartyVatNetwork: public TwoPartyVatNetworkBase, class TwoPartyServer: private kj::TaskSet::ErrorHandler { // Convenience class which implements a simple server which accepts connections on a listener - // socket and serices them as two-party connections. + // socket and services them as two-party connections. public: - explicit TwoPartyServer(Capability::Client bootstrapInterface); + explicit TwoPartyServer(Capability::Client bootstrapInterface, + kj::Maybe> traceEncoder = nullptr); + // `traceEncoder`, if provided, will be passed on to `rpcSystem.setTraceEncoder()`. void accept(kj::Own&& connection); void accept(kj::Own&& connection, uint maxFdsPerMessage); @@ -220,6 +223,7 @@ class TwoPartyServer: private kj::TaskSet::ErrorHandler { private: Capability::Client bootstrapInterface; + kj::Maybe> traceEncoder; kj::TaskSet tasks; struct AcceptedConnection; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.c++ index a75fd72199e..6118e3166de 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.c++ @@ -112,8 +112,16 @@ Orphan> fromPipelineOps( } kj::Exception toException(const rpc::Exception::Reader& exception) { + auto reason = [&]() { + if (exception.getReason().startsWith("remote exception: ")) { + return kj::str(exception.getReason()); + } else { + return kj::str("remote exception: ", exception.getReason()); + } + }(); + kj::Exception result(static_cast(exception.getType()), - "(remote)", 0, kj::str("remote exception: ", exception.getReason())); + "(remote)", 0, kj::mv(reason)); if (exception.hasTrace()) { result.setRemoteTrace(kj::str(exception.getTrace())); } @@ -157,15 +165,33 @@ uint exceptionSizeHint(const kj::Exception& exception) { return sizeInWords() + exception.getDescription().size() / sizeof(word) + 1; } +ClientHook::CallHints callHintsFromReader(rpc::Call::Reader reader) { + ClientHook::CallHints hints; + hints.noPromisePipelining = reader.getNoPromisePipelining(); + hints.onlyPromisePipeline = reader.getOnlyPromisePipeline(); + return hints; +} + // ======================================================================================= +template +static constexpr Id highBit() { + return 1u << (sizeof(Id) * 8 - 1); +} + template class ExportTable { // Table mapping integers to T, where the integers are chosen locally. public: + bool isHigh(Id& id) { + return (id & highBit()) != 0; + } + kj::Maybe find(Id id) { - if (id < slots.size() && slots[id] != nullptr) { + if (isHigh(id)) { + return highSlots.find(id); + } else if (id < slots.size() && slots[id] != nullptr) { return slots[id]; } else { return nullptr; @@ -178,16 +204,23 @@ public: // `entry` is a reference to the entry being released -- we require this in order to prove // that the caller has already done a find() to check that this entry exists. We can't check // ourselves because the caller may have nullified the entry in the meantime. - KJ_DREQUIRE(&entry == &slots[id]); - T toRelease = kj::mv(slots[id]); - slots[id] = T(); - freeIds.push(id); - return toRelease; + + if (isHigh(id)) { + auto& slot = KJ_REQUIRE_NONNULL(highSlots.findEntry(id)); + return highSlots.release(slot).value; + } else { + KJ_DREQUIRE(&entry == &slots[id]); + T toRelease = kj::mv(slots[id]); + slots[id] = T(); + freeIds.push(id); + return toRelease; + } } T& next(Id& id) { if (freeIds.empty()) { id = slots.size(); + KJ_ASSERT(!isHigh(id), "2^31 concurrent questions?!!?!"); return slots.add(); } else { id = freeIds.top(); @@ -196,6 +229,25 @@ public: } } + T& nextHigh(Id& id) { + // Choose an ID with the top bit set in round-robin fashion, but don't choose an ID that + // is still in use. + + KJ_ASSERT(highSlots.size() < Id(kj::maxValue) / 2); // avoid infinite loop below. + + bool created = false; + T* slot; + while (!created) { + id = highCounter++ | highBit(); + slot = &highSlots.findOrCreate(id, [&]() { + created = true; + return typename kj::HashMap::Entry { id, T() }; + }); + } + + return *slot; + } + template void forEach(Func&& func) { for (Id i = 0; i < slots.size(); i++) { @@ -203,11 +255,24 @@ public: func(i, slots[i]); } } + for (auto& slot: highSlots) { + func(slot.key, slot.value); + } + } + + void release() { + // Release memory backing the table. + { auto drop = kj::mv(slots); } + { auto drop = kj::mv(freeIds); } + { auto drop = kj::mv(highSlots); } } private: kj::Vector slots; std::priority_queue, std::greater> freeIds; + + kj::HashMap highSlots; + Id highCounter = 0; }; template @@ -325,6 +390,12 @@ public: } void disconnect(kj::Exception&& exception) { + // Shut down the connection with the given error. + // + // This will cancel `tasks`, so cannot be called from inside a task in `tasks`. Instead, use + // `tasks.add(exception)` to schedule a shutdown, since any error thrown by a task will be + // passed to `disconnect()` later. + // After disconnect(), the RpcSystem could be destroyed, making `traceEncoder` a dangling // reference, so null it out before we return from here. We don't need it anymore once // disconnected anyway. @@ -350,33 +421,47 @@ public: // all future calls on this connection. networkException.addTraceHere(); + // Set our connection state to Disconnected now so that no one tries to write any messages to + // it in their destructors. + auto dyingConnection = kj::mv(connection.get()); + connection.init(kj::cp(networkException)); + KJ_IF_MAYBE(newException, kj::runCatchingExceptions([&]() { // Carefully pull all the objects out of the tables prior to releasing them because their // destructors could come back and mess with the tables. kj::Vector> pipelinesToRelease; kj::Vector> clientsToRelease; - kj::Vector>> tailCallsToRelease; + kj::Vector tasksToRelease; kj::Vector> resolveOpsToRelease; + KJ_DEFER(tasks.clear()); // All current questions complete with exceptions. questions.forEach([&](QuestionId id, Question& question) { KJ_IF_MAYBE(questionRef, question.selfRef) { // QuestionRef still present. questionRef->reject(kj::cp(networkException)); + + // We need to fully disconnect each QuestionRef otherwise it holds a reference back to + // the connection state. Meanwhile `tasks` may hold streaming calls that end up holding + // these QuestionRefs. Technically this is a cyclic reference, but as long as the cycle + // is broken on disconnect (which happens when the RpcSystem itself is destroyed), then + // we're OK. + questionRef->disconnect(); } }); + // Since we've disconnected the QuestionRefs, they won't clean up the questions table for + // us, so do that here. + questions.release(); answers.forEach([&](AnswerId id, Answer& answer) { KJ_IF_MAYBE(p, answer.pipeline) { pipelinesToRelease.add(kj::mv(*p)); } - KJ_IF_MAYBE(promise, answer.redirectedResults) { - tailCallsToRelease.add(kj::mv(*promise)); - } + tasksToRelease.add(kj::mv(answer.task)); KJ_IF_MAYBE(context, answer.callContext) { - context->requestCancel(); + context->finish(); } }); @@ -408,31 +493,35 @@ public: // Send an abort message, but ignore failure. kj::runCatchingExceptions([&]() { - auto message = connection.get()->newOutgoingMessage( + auto message = dyingConnection->newOutgoingMessage( messageSizeHint() + exceptionSizeHint(exception)); fromException(exception, message->getBody().getAs().initAbort()); message->send(); }); // Indicate disconnect. - auto shutdownPromise = connection.get()->shutdown() - .attach(kj::mv(connection.get())) + auto shutdownPromise = dyingConnection->shutdown() + .attach(kj::mv(dyingConnection)) .then([]() -> kj::Promise { return kj::READY_NOW; }, - [origException = kj::mv(exception)](kj::Exception&& e) -> kj::Promise { + [this, origException = kj::mv(exception)](kj::Exception&& shutdownException) -> kj::Promise { // Don't report disconnects as an error. - if (e.getType() == kj::Exception::Type::DISCONNECTED) { + if (shutdownException.getType() == kj::Exception::Type::DISCONNECTED) { return kj::READY_NOW; } // If the error is just what was passed in to disconnect(), don't report it back out // since it shouldn't be anything the caller doesn't already know about. - if (e.getType() == origException.getType() && - e.getDescription() == origException.getDescription()) { + if (shutdownException.getType() == origException.getType() && + shutdownException.getDescription() == origException.getDescription()) { return kj::READY_NOW; } - return kj::mv(e); + // We are shutting down after receive error, ignore shutdown exception since underlying + // transport is probably broken. + if (receiveIncomingMessageError) { + return kj::READY_NOW; + } + return kj::mv(shutdownException); }); disconnectFulfiller->fulfill(DisconnectInfo { kj::mv(shutdownPromise) }); - connection.init(kj::mv(networkException)); canceler.cancel(networkException); } @@ -486,6 +575,11 @@ private: bool skipFinish = false; // If true, don't send a Finish message. + // + // This is used in two cases: + // * The `Return` message had the `noFinishNeeded` hint. + // * Our attempt to send the `Call` threw an exception, therefore the peer never even received + // the call in the first place and would not expect a `Finish`. inline bool operator==(decltype(nullptr)) const { return !isAwaitingReturn && selfRef == nullptr; @@ -507,7 +601,17 @@ private: kj::Maybe> pipeline; // Send pipelined calls here. Becomes null as soon as a `Finish` is received. - kj::Maybe>> redirectedResults; + using Running = kj::Promise; + struct Finished {}; + using Redirected = kj::Promise>; + + kj::OneOf task; + // While the RPC is running locally, `task` is a `Promise` representing the task to execute + // the RPC. + // + // When `Finish` is received (and results are not redirected), `task` becomes `Finished`, which + // cancels it if it's still running. + // // For locally-redirected calls (Call.sendResultsTo.yourself), this is a promise for the call // result, to be picked up by a subsequent `Return`. @@ -609,6 +713,19 @@ private: kj::TaskSet tasks; + bool gotReturnForHighQuestionId = false; + // Becomes true if we ever get a `Return` message for a high question ID (with top bit set), + // which we use in cases where we've hinted to the peer that we don't want a `Return`. If the + // peer sends us one anyway then it seemingly doesn't not implement our hints. We need to stop + // using the hints in this case before the high question ID space wraps around since otherwise + // we might reuse an ID that the peer thinks is still in use. + + bool sentCapabilitiesInPipelineOnlyCall = false; + // Becomes true if `sendPipelineOnly()` is ever called with parameters that include capabilities. + + bool receiveIncomingMessageError = false; + // Becomes true when receiveIncomingMessage resulted in exception. + // ===================================================================================== // ClientHook implementations @@ -617,6 +734,13 @@ private: RpcClient(RpcConnectionState& connectionState) : connectionState(kj::addRef(connectionState)) {} + ~RpcClient() noexcept(false) { + KJ_IF_MAYBE(f, this->flowController) { + // Destroying the client should not cancel outstanding streaming calls. + connectionState->tasks.add(f->get()->waitAllAcked().attach(kj::mv(*f))); + } + } + virtual kj::Maybe writeDescriptor(rpc::CapDescriptor::Builder descriptor, kj::Vector& fds) = 0; // Writes a CapDescriptor referencing this client. The CapDescriptor must be sent as part of @@ -663,12 +787,14 @@ private: // implements ClientHook ----------------------------------------- Request newCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) override { - return newCallNoIntercept(interfaceId, methodId, sizeHint); + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, + CallHints hints) override { + return newCallNoIntercept(interfaceId, methodId, sizeHint, hints); } Request newCallNoIntercept( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) { + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, + CallHints hints) { if (!connectionState->connection.is()) { return newBrokenRequest(kj::cp(connectionState->connection.get()), sizeHint); } @@ -680,29 +806,28 @@ private: callBuilder.setInterfaceId(interfaceId); callBuilder.setMethodId(methodId); + callBuilder.setNoPromisePipelining(hints.noPromisePipelining); + callBuilder.setOnlyPromisePipeline(hints.onlyPromisePipeline); auto root = request->getRoot(); return Request(root, kj::mv(request)); } VoidPromiseAndPipeline call(uint64_t interfaceId, uint16_t methodId, - kj::Own&& context) override { - return callNoIntercept(interfaceId, methodId, kj::mv(context)); + kj::Own&& context, CallHints hints) override { + return callNoIntercept(interfaceId, methodId, kj::mv(context), hints); } VoidPromiseAndPipeline callNoIntercept(uint64_t interfaceId, uint16_t methodId, - kj::Own&& context) { + kj::Own&& context, CallHints hints) { // Implement call() by copying params and results messages. auto params = context->getParams(); - auto request = newCallNoIntercept(interfaceId, methodId, params.targetSize()); + auto request = newCallNoIntercept(interfaceId, methodId, params.targetSize(), hints); request.set(params); context->releaseParams(); - // We can and should propagate cancellation. - context->allowCancellation(); - return context->directTailCall(RequestHook::from(kj::mv(request))); } @@ -923,19 +1048,20 @@ private: // implements ClientHook ----------------------------------------- Request newCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) override { + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, + CallHints hints) override { receivedCall = true; // IMPORTANT: We must call our superclass's version of newCall(), NOT cap->newCall(), because // the Request object we create needs to check at send() time whether the promise has // resolved and, if so, redirect to the new target. - return RpcClient::newCall(interfaceId, methodId, sizeHint); + return RpcClient::newCall(interfaceId, methodId, sizeHint, hints); } VoidPromiseAndPipeline call(uint64_t interfaceId, uint16_t methodId, - kj::Own&& context) override { + kj::Own&& context, CallHints hints) override { receivedCall = true; - return cap->call(interfaceId, methodId, kj::mv(context)); + return cap->call(interfaceId, methodId, kj::mv(context), hints); } kj::Maybe getResolved() override { @@ -1029,7 +1155,7 @@ private: if (other->isResolved()) { // The other capability resolved already. If it determined that it resolved as - // relfected, then we determine the same. + // reflected, then we determine the same. resolutionType = other->resolutionType; } else { // The other capability hasn't resolved yet, so we can safely merge with it and do a @@ -1379,7 +1505,7 @@ private: // // 2. The `Resolve` message contained a `CapDescriptor` of type `receiverHosted`, naming an // entry in the receiver's export table. That entry just happened to contain an - // `ImportClient` refering back to the sender. This specifically happens when the entry + // `ImportClient` referring back to the sender. This specifically happens when the entry // in question had previously itself referred to a promise, and that promise has since // resolved to a remote capability, at which point the export table entry was replaced by // the appropriate `ImportClient` representing that. Presumably, the peer *did not yet know* @@ -1416,12 +1542,13 @@ private: TribbleRaceBlocker(kj::Own inner): inner(kj::mv(inner)) {} Request newCall( - uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint) override { - return inner->newCall(interfaceId, methodId, sizeHint); + uint64_t interfaceId, uint16_t methodId, kj::Maybe sizeHint, + CallHints hints) override { + return inner->newCall(interfaceId, methodId, sizeHint, hints); } VoidPromiseAndPipeline call(uint64_t interfaceId, uint16_t methodId, - kj::Own&& context) override { - return inner->call(interfaceId, methodId, kj::mv(context)); + kj::Own&& context, CallHints hints) override { + return inner->call(interfaceId, methodId, kj::mv(context), hints); } kj::Maybe getResolved() override { // We always wrap either PipelineClient or ImportClient, both of which return null for this @@ -1526,7 +1653,7 @@ private: public: inline QuestionRef( RpcConnectionState& connectionState, QuestionId id, - kj::Own>>> fulfiller) + kj::Maybe>>>> fulfiller) : connectionState(kj::addRef(connectionState)), id(id), fulfiller(kj::mv(fulfiller)) {} ~QuestionRef() noexcept { @@ -1534,57 +1661,75 @@ private: // throws (without being caught) we're probably in pretty bad shape and going to be crashing // later anyway. Better to abort now. - auto& question = KJ_ASSERT_NONNULL( - connectionState->questions.find(id), "Question ID no longer on table?"); + KJ_IF_MAYBE(c, connectionState) { + auto& connectionState = *c; - // Send the "Finish" message (if the connection is not already broken). - if (connectionState->connection.is() && !question.skipFinish) { - KJ_IF_MAYBE(e, kj::runCatchingExceptions([&]() { - auto message = connectionState->connection.get()->newOutgoingMessage( - messageSizeHint()); - auto builder = message->getBody().getAs().initFinish(); - builder.setQuestionId(id); - // If we're still awaiting a return, then this request is being canceled, and we're going - // to ignore any capabilities in the return message, so set releaseResultCaps true. If we - // already received the return, then we've already built local proxies for the caps and - // will send Release messages when those are destroyed. - builder.setReleaseResultCaps(question.isAwaitingReturn); - message->send(); - })) { - connectionState->disconnect(kj::mv(*e)); + auto& question = KJ_ASSERT_NONNULL( + connectionState->questions.find(id), "Question ID no longer on table?"); + + // Send the "Finish" message (if the connection is not already broken). + if (connectionState->connection.is() && !question.skipFinish) { + KJ_IF_MAYBE(e, kj::runCatchingExceptions([&]() { + auto message = connectionState->connection.get()->newOutgoingMessage( + messageSizeHint()); + auto builder = message->getBody().getAs().initFinish(); + builder.setQuestionId(id); + // If we're still awaiting a return, then this request is being canceled, and we're going + // to ignore any capabilities in the return message, so set releaseResultCaps true. If we + // already received the return, then we've already built local proxies for the caps and + // will send Release messages when those are destroyed. + builder.setReleaseResultCaps(question.isAwaitingReturn); + + // Let the peer know we don't have the early cancellation bug. + builder.setRequireEarlyCancellationWorkaround(false); + + message->send(); + })) { + connectionState->tasks.add(kj::mv(*e)); + } } - } - // Check if the question has returned and, if so, remove it from the table. - // Remove question ID from the table. Must do this *after* sending `Finish` to ensure that - // the ID is not re-allocated before the `Finish` message can be sent. - if (question.isAwaitingReturn) { - // Still waiting for return, so just remove the QuestionRef pointer from the table. - question.selfRef = nullptr; - } else { - // Call has already returned, so we can now remove it from the table. - connectionState->questions.erase(id, question); + // Check if the question has returned and, if so, remove it from the table. + // Remove question ID from the table. Must do this *after* sending `Finish` to ensure that + // the ID is not re-allocated before the `Finish` message can be sent. + if (question.isAwaitingReturn) { + // Still waiting for return, so just remove the QuestionRef pointer from the table. + question.selfRef = nullptr; + } else { + // Call has already returned, so we can now remove it from the table. + connectionState->questions.erase(id, question); + } } } inline QuestionId getId() const { return id; } void fulfill(kj::Own&& response) { - fulfiller->fulfill(kj::mv(response)); + KJ_IF_MAYBE(f, fulfiller) { + f->get()->fulfill(kj::mv(response)); + } } void fulfill(kj::Promise>&& promise) { - fulfiller->fulfill(kj::mv(promise)); + KJ_IF_MAYBE(f, fulfiller) { + f->get()->fulfill(kj::mv(promise)); + } } void reject(kj::Exception&& exception) { - fulfiller->reject(kj::mv(exception)); + KJ_IF_MAYBE(f, fulfiller) { + f->get()->reject(kj::mv(exception)); + } + } + + void disconnect() { + connectionState = nullptr; } private: - kj::Own connectionState; + kj::Maybe> connectionState; QuestionId id; - kj::Own>>> fulfiller; + kj::Maybe>>>> fulfiller; }; class RpcRequest final: public RequestHook { @@ -1609,6 +1754,7 @@ private: RemotePromise send() override { if (!connectionState->connection.is()) { // Connection is broken. + // TODO(bug): Seems like we should check for redirect before this? const kj::Exception& e = connectionState->connection.get(); return RemotePromise( kj::Promise>(kj::cp(e)), @@ -1620,19 +1766,29 @@ private: // We'll have to make a new request and do a copy. Ick. auto replacement = redirect->get()->newCall( - callBuilder.getInterfaceId(), callBuilder.getMethodId(), paramsBuilder.targetSize()); + callBuilder.getInterfaceId(), callBuilder.getMethodId(), paramsBuilder.targetSize(), + callHintsFromReader(callBuilder)); replacement.set(paramsBuilder); return replacement.send(); } else { + bool noPromisePipelining = callBuilder.getNoPromisePipelining(); + auto sendResult = sendInternal(false); - auto forkedPromise = sendResult.promise.fork(); + kj::Own pipeline; + if (noPromisePipelining) { + pipeline = getDisabledPipeline(); + } else { + auto forkedPromise = sendResult.promise.fork(); - // The pipeline must get notified of resolution before the app does to maintain ordering. - auto pipeline = kj::refcounted( - *connectionState, kj::mv(sendResult.questionRef), forkedPromise.addBranch()); + // The pipeline must get notified of resolution before the app does to maintain ordering. + pipeline = kj::refcounted( + *connectionState, kj::mv(sendResult.questionRef), forkedPromise.addBranch()); - auto appPromise = forkedPromise.addBranch().then( + sendResult.promise = forkedPromise.addBranch(); + } + + auto appPromise = sendResult.promise.then( [=](kj::Own&& response) { auto reader = response->getResults(); return Response(reader, kj::mv(response)); @@ -1647,6 +1803,7 @@ private: kj::Promise sendStreaming() override { if (!connectionState->connection.is()) { // Connection is broken. + // TODO(bug): Seems like we should check for redirect before this? return kj::cp(connectionState->connection.get()); } @@ -1655,7 +1812,8 @@ private: // We'll have to make a new request and do a copy. Ick. auto replacement = redirect->get()->newCall( - callBuilder.getInterfaceId(), callBuilder.getMethodId(), paramsBuilder.targetSize()); + callBuilder.getInterfaceId(), callBuilder.getMethodId(), paramsBuilder.targetSize(), + callHintsFromReader(callBuilder)); replacement.set(paramsBuilder); return RequestHook::from(kj::mv(replacement))->sendStreaming(); } else { @@ -1663,6 +1821,34 @@ private: } } + AnyPointer::Pipeline sendForPipeline() override { + if (!connectionState->connection.is()) { + // Connection is broken. + // TODO(bug): Seems like we should check for redirect before this? + const kj::Exception& e = connectionState->connection.get(); + return AnyPointer::Pipeline(newBrokenPipeline(kj::cp(e))); + } + + KJ_IF_MAYBE(redirect, target->writeTarget(callBuilder.getTarget())) { + // Whoops, this capability has been redirected while we were building the request! + // We'll have to make a new request and do a copy. Ick. + + auto replacement = redirect->get()->newCall( + callBuilder.getInterfaceId(), callBuilder.getMethodId(), paramsBuilder.targetSize(), + callHintsFromReader(callBuilder)); + replacement.set(paramsBuilder); + return replacement.sendForPipeline(); + } else if (connectionState->gotReturnForHighQuestionId) { + // Peer doesn't implement our hints. Fall back to a regular send(). + return send(); + } else { + auto questionRef = sendForPipelineInternal(); + kj::Own pipeline = kj::refcounted( + *connectionState, kj::mv(questionRef)); + return AnyPointer::Pipeline(kj::mv(pipeline)); + } + } + struct TailInfo { QuestionId questionId; kj::Promise promise; @@ -1697,7 +1883,13 @@ private: QuestionId questionId = sendResult.questionRef->getId(); - auto pipeline = kj::refcounted(*connectionState, kj::mv(sendResult.questionRef)); + kj::Own pipeline; + bool noPromisePipelining = callBuilder.getNoPromisePipelining(); + if (noPromisePipelining) { + pipeline = getDisabledPipeline(); + } else { + pipeline = kj::refcounted(*connectionState, kj::mv(sendResult.questionRef)); + } return TailInfo { questionId, kj::mv(promise), kj::mv(pipeline) }; } @@ -1769,6 +1961,9 @@ private: })) { // We can't safely throw the exception from here since we've already modified the question // table state. We'll have to reject the promise instead. + // TODO(bug): Attempts to use the pipeline will end up sending a request referencing a + // bogus question ID. Can we rethrow after doing the appropriate cleanup, so the pipeline + // is never created? See the approach in sendForPipelineInternal() below. result.question.isAwaitingReturn = false; result.question.skipFinish = true; connectionState->releaseExports(result.question.paramExports); @@ -1810,6 +2005,47 @@ private: return kj::mv(flowPromise); } + + kj::Own sendForPipelineInternal() { + // Since must of setupSend() is subtly different for this case, we don't reuse it. + + // Build the cap table. + kj::Vector fds; + auto exports = connectionState->writeDescriptors( + capTable.getTable(), callBuilder.getParams(), fds); + message->setFds(fds.releaseAsArray()); + + if (exports.size() > 0) { + connectionState->sentCapabilitiesInPipelineOnlyCall = true; + } + + // Init the question table. Do this after writing descriptors to avoid interference. + QuestionId questionId; + auto& question = connectionState->questions.nextHigh(questionId); + question.isAwaitingReturn = false; // No Return needed + question.paramExports = kj::mv(exports); + question.isTailCall = false; + + // Make the QuentionRef and result promise. + auto questionRef = kj::refcounted(*connectionState, questionId, nullptr); + question.selfRef = *questionRef; + + // If sending throws, we'll need to fix up the state a little... + KJ_ON_SCOPE_FAILURE({ + question.skipFinish = true; + connectionState->releaseExports(question.paramExports); + }); + + // Finish and send. + callBuilder.setQuestionId(questionId); + callBuilder.setOnlyPromisePipeline(true); + + KJ_CONTEXT("sending RPC call", + callBuilder.getInterfaceId(), callBuilder.getMethodId()); + message->send(); + + return kj::mv(questionRef); + } }; class RpcPipeline final: public PipelineHook, public kj::Refcounted { @@ -1978,6 +2214,10 @@ private: return capTable.imbue(payload.getContent()); } + inline bool hasCapabilities() { + return capTable.getTable().size() > 0; + } + kj::Maybe> send() { // Send the response and return the export list. Returns nullptr if there were no caps. // (Could return a non-null empty array if there were caps but none of them were exports.) @@ -1988,14 +2228,16 @@ private: auto exports = connectionState.writeDescriptors(capTable, payload, fds); message->setFds(fds.releaseAsArray()); - // Capabilities that we are returning are subject to embargos. See `Disembargo` in rpc.capnp. - // As explained there, in order to deal with the Tribble 4-way race condition, we need to - // make sure that if we're returning any remote promises, that we ignore any subsequent - // resolution of those promises for the purpose of pipelined requests on this answer. Luckily, - // we can modify the cap table in-place. + // Populate `resolutionsAtReturnTime`. for (auto& slot: capTable) { KJ_IF_MAYBE(cap, slot) { - slot = connectionState.getInnermostClient(**cap); + auto inner = connectionState.getInnermostClient(**cap); + if (inner.get() != cap->get()) { + resolutionsAtReturnTime.upsert(cap->get(), kj::mv(inner), + [&](kj::Own& existing, kj::Own&& replacement) { + KJ_ASSERT(existing.get() == replacement.get()); + }); + } } } @@ -2007,11 +2249,40 @@ private: } } + struct Resolution { + kj::Own returnedCap; + // The capabiilty that appeared in the response message in this slot. + + kj::Own unwrapped; + // Exactly what `getInnermostClient(returnedCap)` produced at the time that the return + // message was encoded. + }; + + Resolution getResolutionAtReturnTime(kj::ArrayPtr ops) { + auto returnedCap = getResultsBuilder().asReader().getPipelinedCap(ops); + kj::Own unwrapped; + KJ_IF_MAYBE(u, resolutionsAtReturnTime.find(returnedCap.get())) { + unwrapped = u->get()->addRef(); + } else { + unwrapped = returnedCap->addRef(); + } + return { kj::mv(returnedCap), kj::mv(unwrapped) }; + } + private: RpcConnectionState& connectionState; kj::Own message; BuilderCapabilityTable capTable; rpc::Payload::Builder payload; + + kj::HashMap> resolutionsAtReturnTime; + // For each capability in `capTable` as of the time when the call returned, this map stores + // the result of calling `getInnermostClient()` on that capability. This is needed in order + // to solve the Tribble 4-way race condition described in the documentation for `Disembargo` + // in `rpc.capnp`. `PostReturnRpcPipeline`, below, uses this. + // + // As an optimization, if the innermost client is exactly the same object then nothing is + // stored in the map. }; class LocallyRedirectedRpcResponse final @@ -2037,16 +2308,87 @@ private: MallocMessageBuilder message; }; + class PostReturnRpcPipeline final: public PipelineHook, public kj::Refcounted { + // Once an incoming call has returned, we may need to replace the `PipelineHook` with one that + // correctly handles the Tribble 4-way race condition. Namely, we must ensure that if the + // response contained any capabilities pointing back out to the network, then any further + // pipelined calls received targetting those capabilities (as well as any Disembargo messages) + // will resolve to the same network capability forever, *even if* that network capability is + // itself a promise which later resolves to somewhere else. + public: + PostReturnRpcPipeline(kj::Own inner, + RpcServerResponseImpl& response, + kj::Own context) + : inner(kj::mv(inner)), response(response), context(kj::mv(context)) {} + + kj::Own addRef() override { + return kj::addRef(*this); + } + + kj::Own getPipelinedCap(kj::ArrayPtr ops) override { + auto resolved = response.getResolutionAtReturnTime(ops); + auto original = inner->getPipelinedCap(ops); + return getResolutionAtReturnTime(kj::mv(original), kj::mv(resolved)); + } + + kj::Own getPipelinedCap(kj::Array&& ops) override { + auto resolved = response.getResolutionAtReturnTime(ops); + auto original = inner->getPipelinedCap(kj::mv(ops)); + return getResolutionAtReturnTime(kj::mv(original), kj::mv(resolved)); + } + + private: + kj::Own inner; + RpcServerResponseImpl& response; + kj::Own context; // owns `response` + + kj::Own getResolutionAtReturnTime( + kj::Own original, RpcServerResponseImpl::Resolution resolution) { + // Wait for `original` to resolve to `resolution.returnedCap`, then return + // `resolution.unwrapped`. + + ClientHook* ptr = original.get(); + for (;;) { + if (ptr == resolution.returnedCap.get()) { + return kj::mv(resolution.unwrapped); + } else KJ_IF_MAYBE(r, ptr->getResolved()) { + ptr = r; + } else { + break; + } + } + + KJ_IF_MAYBE(p, ptr->whenMoreResolved()) { + return newLocalPromiseClient(p->then( + [this, original = kj::mv(original), resolution = kj::mv(resolution)] + (kj::Own r) mutable { + return getResolutionAtReturnTime(kj::mv(r), kj::mv(resolution)); + })); + } else if (ptr->isError() || ptr->isNull()) { + // This is already a broken capability, the error probably explains what went wrong. In + // any case, message ordering is irrelevant here since all calls will throw anyway. + return ptr->addRef(); + } else { + return newBrokenCap( + "An RPC call's capnp::PipelineHook object resolved a pipelined capability to a " + "different final object than what was returned in the actual response. This could " + "be a bug in Cap'n Proto, or could be due to a use of context.setPipeline() that " + "was inconsistent with the later results."); + } + } + }; + class RpcCallContext final: public CallContextHook, public kj::Refcounted { public: RpcCallContext(RpcConnectionState& connectionState, AnswerId answerId, kj::Own&& request, kj::Array>> capTableArray, const AnyPointer::Reader& params, - bool redirectResults, kj::Own>&& cancelFulfiller, - uint64_t interfaceId, uint16_t methodId) + bool redirectResults, uint64_t interfaceId, uint16_t methodId, + ClientHook::CallHints hints) : connectionState(kj::addRef(connectionState)), answerId(answerId), + hints(hints), interfaceId(interfaceId), methodId(methodId), requestSize(request->sizeInWords()), @@ -2054,8 +2396,7 @@ private: paramsCapTable(kj::mv(capTableArray)), params(paramsCapTable.imbue(params)), returnMessage(nullptr), - redirectResults(redirectResults), - cancelFulfiller(kj::mv(cancelFulfiller)) { + redirectResults(redirectResults) { connectionState.callWordsInFlight += requestSize; } @@ -2063,9 +2404,10 @@ private: if (isFirstResponder()) { // We haven't sent a return yet, so we must have been canceled. Send a cancellation return. unwindDetector.catchExceptionsIfUnwinding([&]() { - // Don't send anything if the connection is broken. + // Don't send anything if the connection is broken, or if the onlyPromisePipeline hint + // was used (in which case the caller doesn't care to receive a `Return`). bool shouldFreePipeline = true; - if (connectionState->connection.is()) { + if (connectionState->connection.is() && !hints.onlyPromisePipeline) { auto message = connectionState->connection.get()->newOutgoingMessage( messageSizeHint() + sizeInWords()); auto builder = message->getBody().initAs().initReturn(); @@ -2104,10 +2446,11 @@ private: void sendReturn() { KJ_ASSERT(!redirectResults); + KJ_ASSERT(!hints.onlyPromisePipeline); // Avoid sending results if canceled so that we don't have to figure out whether or not // `releaseResultCaps` was set in the already-received `Finish`. - if (!(cancellationFlags & CANCEL_REQUESTED) && isFirstResponder()) { + if (!receivedFinish && isFirstResponder()) { KJ_ASSERT(connectionState->connection.is(), "Cancellation should have been requested on disconnect.") { return; @@ -2118,17 +2461,43 @@ private: returnMessage.setAnswerId(answerId); returnMessage.setReleaseParamCaps(false); + auto& responseImpl = kj::downcast(*KJ_ASSERT_NONNULL(response)); + if (!responseImpl.hasCapabilities()) { + returnMessage.setNoFinishNeeded(true); + + // Tell ourselves that a finsih was already received, so that `cleanupAnswerTable()` + // removes the answer table entry. + receivedFinish = true; + + // HACK: The answer table's `task` is the thing which is calling `sendReturn()`. We can't + // cancel ourselves. However, we know calling `sendReturn()` is the last thing it does, + // so we can safely detach() it. + auto& answer = KJ_ASSERT_NONNULL(connectionState->answers.find(answerId)); + auto& selfPromise = KJ_ASSERT_NONNULL(answer.task.tryGet()); + selfPromise.detach([](kj::Exception&&) {}); + } + kj::Maybe> exports; KJ_IF_MAYBE(exception, kj::runCatchingExceptions([&]() { - // Debug info incase send() fails due to overside message. + // Debug info in case send() fails due to overside message. KJ_CONTEXT("returning from RPC call", interfaceId, methodId); - exports = kj::downcast(*KJ_ASSERT_NONNULL(response)).send(); + exports = responseImpl.send(); })) { responseSent = false; sendErrorReturn(kj::mv(*exception)); return; } + if (responseImpl.hasCapabilities()) { + auto& answer = KJ_ASSERT_NONNULL(connectionState->answers.find(answerId)); + // Swap out the `pipeline` in the answer table for one that will return capabilities + // consistent with whatever the result caps resolved to as of the time the return was sent. + answer.pipeline = answer.pipeline.map([&](kj::Own& inner) { + return kj::refcounted( + kj::mv(inner), responseImpl, kj::addRef(*this)); + }); + } + KJ_IF_MAYBE(e, exports) { // Caps were returned, so we can't free the pipeline yet. cleanupAnswerTable(kj::mv(*e), false); @@ -2140,6 +2509,7 @@ private: } void sendErrorReturn(kj::Exception&& exception) { KJ_ASSERT(!redirectResults); + KJ_ASSERT(!hints.onlyPromisePipeline); if (isFirstResponder()) { if (connectionState->connection.is()) { auto message = connectionState->connection.get()->newOutgoingMessage( @@ -2150,6 +2520,12 @@ private: builder.setReleaseParamCaps(false); connectionState->fromException(exception, builder.initException()); + // Note that even though the response contains no capabilities, we don't want to set + // `noFinishNeeded` here because if any pipelined calls were made, we want them to + // fail with the correct exception. (Perhaps if the request had `noPromisePipelining`, + // then we could set `noFinishNeeded`, but optimizing the error case doesn't seem that + // important.) + message->send(); } @@ -2160,6 +2536,7 @@ private: } void sendRedirectReturn() { KJ_ASSERT(redirectResults); + KJ_ASSERT(!hints.onlyPromisePipeline); if (isFirstResponder()) { auto message = connectionState->connection.get()->newOutgoingMessage( @@ -2170,27 +2547,20 @@ private: builder.setReleaseParamCaps(false); builder.setResultsSentElsewhere(); + // TODO(perf): Could `noFinishNeeded` be used here? The `Finish` messages are pretty + // redundant after a redirect, but as this case is less common and more complicated I + // don't want to fully think through the implications right now. + message->send(); cleanupAnswerTable(nullptr, false); } } - void requestCancel() { - // Hints that the caller wishes to cancel this call. At the next time when cancellation is - // deemed safe, the RpcCallContext shall send a canceled Return -- or if it never becomes - // safe, the RpcCallContext will send a normal return when the call completes. Either way - // the RpcCallContext is now responsible for cleaning up the entry in the answer table, since - // a Finish message was already received. + void finish() { + // Called when a `Finish` message is received while this object still exists. - bool previouslyAllowedButNotRequested = cancellationFlags == CANCEL_ALLOWED; - cancellationFlags |= CANCEL_REQUESTED; - - if (previouslyAllowedButNotRequested) { - // We just set CANCEL_REQUESTED, and CANCEL_ALLOWED was already set previously. Initiate - // the cancellation. - cancelFulfiller->fulfill(); - } + receivedFinish = true; } // implements CallContextHook ------------------------------------ @@ -2240,9 +2610,13 @@ private: KJ_REQUIRE(response == nullptr, "Can't call tailCall() after initializing the results struct."); - if (request->getBrand() == connectionState.get() && !redirectResults) { + if (request->getBrand() == connectionState.get() && + !redirectResults && !hints.noPromisePipelining) { // The tail call is headed towards the peer that called us in the first place, so we can // optimize out the return trip. + // + // If the noPromisePipelining hint was sent, we skip this trick since the caller will + // ignore the `Return` message anyway. KJ_IF_MAYBE(tailInfo, kj::downcast(*request).tailSend()) { if (isFirstResponder()) { @@ -2267,6 +2641,14 @@ private: } // Just forwarding to another local call. + + if (hints.onlyPromisePipeline) { + return { + kj::NEVER_DONE, + PipelineHook::from(request->sendForPipeline()) + }; + } + auto promise = request->send(); // Wait for response. @@ -2284,16 +2666,6 @@ private: tailCallPipelineFulfiller = kj::mv(paf.fulfiller); return kj::mv(paf.promise); } - void allowCancellation() override { - bool previouslyRequestedButNotAllowed = cancellationFlags == CANCEL_REQUESTED; - cancellationFlags |= CANCEL_ALLOWED; - - if (previouslyRequestedButNotAllowed) { - // We just set CANCEL_ALLOWED, and CANCEL_REQUESTED was already set previously. Initiate - // the cancellation. - cancelFulfiller->fulfill(); - } - } kj::Own addRef() override { return kj::addRef(*this); } @@ -2302,6 +2674,8 @@ private: kj::Own connectionState; AnswerId answerId; + ClientHook::CallHints hints; + uint64_t interfaceId; uint16_t methodId; // For debugging. @@ -2323,18 +2697,9 @@ private: // Cancellation state ---------------------------------- - enum CancellationFlags { - CANCEL_REQUESTED = 1, - CANCEL_ALLOWED = 2 - }; - - uint8_t cancellationFlags = 0; - // When both flags are set, the cancellation process will begin. - - kj::Own> cancelFulfiller; - // Fulfilled when cancellation has been both requested and permitted. The fulfilled promise is - // exclusive-joined with the outermost promise waiting on the call return, so fulfilling it - // cancels that promise. + bool receivedFinish = false; + // True if a `Finish` message has been recevied OR we sent a `Return` with `noFinishNedeed`. + // In either case, it is our responsibility to clean up the answer table. kj::UnwindDetector unwindDetector; @@ -2354,7 +2719,7 @@ private: // answer table. Or we might even be responsible for removing the entire answer table // entry. - if (cancellationFlags & CANCEL_REQUESTED) { + if (receivedFinish) { // Already received `Finish` so it's our job to erase the table entry. We shouldn't have // sent results if canceled, so we shouldn't have an export list to deal with. KJ_ASSERT(resultExports.size() == 0); @@ -2410,9 +2775,13 @@ private: handleMessage(kj::mv(*m)); return true; } else { - disconnect(KJ_EXCEPTION(DISCONNECTED, "Peer disconnected.")); + tasks.add(KJ_EXCEPTION(DISCONNECTED, "Peer disconnected.")); return false; } + }, [this](kj::Exception&& exception) { + receiveIncomingMessageError = true; + kj::throwRecoverableException(kj::mv(exception)); + return false; }).then([this](bool keepGoing) { // No exceptions; continue loop. // @@ -2421,13 +2790,13 @@ private: // // TODO(perf): We add an evalLater() here so that anything we needed to do in reaction to // the previous message has a chance to complete before the next message is handled. In - // paticular, without this, I observed an ordering problem: I saw a case where a `Return` + // particular, without this, I observed an ordering problem: I saw a case where a `Return` // message was followed by a `Resolve` message, but the `PromiseClient` associated with the // `Resolve` had its `resolve()` method invoked _before_ any `PromiseClient`s associated // with pipelined capabilities resolved by the `Return`. This could lead to an // incorrectly-ordered interaction between `PromiseClient`s when they resolve to each // other. This is probably really a bug in the way `Return`s are handled -- apparently, - // resolution of `PromiseClient`s based on returned capabilites does not occur in a + // resolution of `PromiseClient`s based on returned capabilities does not occur in a // depth-first way, when it should. If we could fix that then we can probably remove this // `evalLater()`. However, the `evalLater()` is not that bad and solves the problem... if (keepGoing) tasks.add(kj::evalLater([this]() { return messageLoop(); })); @@ -2598,7 +2967,14 @@ private: kj::Vector fds; resultExports = writeDescriptors(capTableArray, payload, fds); response->setFds(fds.releaseAsArray()); - capHook = KJ_ASSERT_NONNULL(capTableArray[0])->addRef(); + + // If we're returning a capability that turns out to be an PromiseClient pointing back on + // this same network, it's important we remove the `PromiseClient` layer and use the inner + // capability instead. This achieves the same effect that `PostReturnRpcPipeline` does for + // regular call returns. + // + // This single line of code represents two hours of my life. + capHook = getInnermostClient(*KJ_ASSERT_NONNULL(capTableArray[0])); })) { fromException(*exception, ret.initException()); capHook = newBrokenCap(kj::mv(*exception)); @@ -2643,14 +3019,18 @@ private: auto payload = call.getParams(); auto capTableArray = receiveCaps(payload.getCapTable(), message->getAttachedFds()); - auto cancelPaf = kj::newPromiseAndFulfiller(); AnswerId answerId = call.getQuestionId(); + auto hints = callHintsFromReader(call); + + // Don't honor onlyPromisePipeline if results are redirected, because this situation isn't + // useful in practice and would be complicated to handle "correctly". + if (redirectResults) hints.onlyPromisePipeline = false; + auto context = kj::refcounted( *this, answerId, kj::mv(message), kj::mv(capTableArray), payload.getContent(), - redirectResults, kj::mv(cancelPaf.fulfiller), - call.getInterfaceId(), call.getMethodId()); + redirectResults, call.getInterfaceId(), call.getMethodId(), hints); // No more using `call` after this point, as it now belongs to the context. @@ -2666,7 +3046,7 @@ private: } auto promiseAndPipeline = startCall( - call.getInterfaceId(), call.getMethodId(), kj::mv(capability), context->addRef()); + call.getInterfaceId(), call.getMethodId(), kj::mv(capability), context->addRef(), hints); // Things may have changed -- in particular if startCall() immediately called // context->directTailCall(). @@ -2677,45 +3057,38 @@ private: answer.pipeline = kj::mv(promiseAndPipeline.pipeline); if (redirectResults) { - auto resultsPromise = promiseAndPipeline.promise.then( - kj::mvCapture(context, [](kj::Own&& context) { + answer.task = promiseAndPipeline.promise.then( + [context=kj::mv(context)]() mutable { return context->consumeRedirectedResponse(); - })); - - // If the call that later picks up `redirectedResults` decides to discard it, we need to - // make sure our call is not itself canceled unless it has called allowCancellation(). - // So we fork the promise and join one branch with the cancellation promise, in order to - // hold on to it. - auto forked = resultsPromise.fork(); - answer.redirectedResults = forked.addBranch(); - - cancelPaf.promise - .exclusiveJoin(forked.addBranch().then([](kj::Own&&){})) - .detach([](kj::Exception&&) {}); + }); + } else if (hints.onlyPromisePipeline) { + // The promise is probably fake anyway, so don't bother adding a .then(). We do, however, + // have to attach `context` to this, since we destroy `task` upon receiving a `Finish` + // message, and we want `RpcCallContext` to be destroyed no earlier than that. + answer.task = promiseAndPipeline.promise.attach(kj::mv(context)); } else { // Hack: Both the success and error continuations need to use the context. We could // refcount, but both will be destroyed at the same time anyway. - RpcCallContext* contextPtr = context; - - promiseAndPipeline.promise.then( - [contextPtr]() { - contextPtr->sendReturn(); - }, [contextPtr](kj::Exception&& exception) { - contextPtr->sendErrorReturn(kj::mv(exception)); - }).catch_([&](kj::Exception&& exception) { + RpcCallContext& contextRef = *context; + + answer.task = promiseAndPipeline.promise.then( + [context = kj::mv(context)]() mutable { + context->sendReturn(); + }, [&contextRef](kj::Exception&& exception) { + contextRef.sendErrorReturn(kj::mv(exception)); + }).eagerlyEvaluate([&](kj::Exception&& exception) { // Handle exceptions that occur in sendReturn()/sendErrorReturn(). taskFailed(kj::mv(exception)); - }).attach(kj::mv(context)) - .exclusiveJoin(kj::mv(cancelPaf.promise)) - .detach([](kj::Exception&&) {}); + }); } } } ClientHook::VoidPromiseAndPipeline startCall( uint64_t interfaceId, uint64_t methodId, - kj::Own&& capability, kj::Own&& context) { - return capability->call(interfaceId, methodId, kj::mv(context)); + kj::Own&& capability, kj::Own&& context, + ClientHook::CallHints hints) { + return capability->call(interfaceId, methodId, kj::mv(context), hints); } kj::Maybe> getMessageTarget(const rpc::MessageTarget::Reader& target) { @@ -2735,13 +3108,14 @@ private: auto promisedAnswer = target.getPromisedAnswer(); kj::Own pipeline; - auto& base = answers[promisedAnswer.getQuestionId()]; - KJ_REQUIRE(base.active, "PromisedAnswer.questionId is not a current question.") { - return nullptr; + KJ_IF_MAYBE(answer, answers.find(promisedAnswer.getQuestionId())) { + if (answer->active) { + KJ_IF_MAYBE(p, answer->pipeline) { + pipeline = p->get()->addRef(); + } + } } - KJ_IF_MAYBE(p, base.pipeline) { - pipeline = p->get()->addRef(); - } else { + if (pipeline.get() == nullptr) { pipeline = newBrokenPipeline(KJ_EXCEPTION(FAILED, "Pipeline call on a request that returned no capabilities or was already closed.")); } @@ -2768,9 +3142,41 @@ private: // pointer into it, so make sure these destructors run later. kj::Array exportsToRelease; KJ_DEFER(releaseExports(exportsToRelease)); - kj::Maybe>> promiseToRelease; + kj::Maybe promiseToRelease; + + QuestionId questionId = ret.getAnswerId(); + if (questions.isHigh(questionId)) { + // We sent hints with this question saying we didn't want a `Return` but we got one anyway. + // We cannot even look up the question on the question table because it's (remotely) possible + // that we already removed it and re-allocated the ID to something else. So, we should ignore + // the `Return`. But we might want to make note to stop using these hints, to protect against + // the (again, remote) possibility of our ID space wrapping around and leading to confusion. + if (ret.getReleaseParamCaps() && sentCapabilitiesInPipelineOnlyCall) { + // Oh no, it appears the peer wants us to release any capabilities in the params, something + // which only a level 0 peer would request (no version of the C++ RPC system has ever done + // this). And it appears we did send capabilities in at least one pipeline-only call + // previously. But we have no record of which capabilities were sent in *this* call, so + // we cannot release them. Log an error about the leak. + // + // This scenario is unlikely to happen in practice, because sendForPipeline() is not useful + // when talking to a peer that doesn't support capability-passing -- they couldn't possibly + // return a capability to pipeline on! So, I'm not going to spend time to find a solution + // for this corner case. We will log an error, though, just in case someone hits this + // somehow. + KJ_LOG(ERROR, + "sendForPipeline() was used when sending an RPC to a peer, the parameters of that " + "RPC included capabilities, but the peer seems to implement Cap'n Proto at level 0, " + "meaning it does not support capability passing (or, at least, it sent a `Return` " + "with `releaseParamCaps = true`). The capabilities that were sent may have been " + "leaked (they won't be dropped until the connection closes)."); + + sentCapabilitiesInPipelineOnlyCall = false; // don't log again + } + gotReturnForHighQuestionId = true; + return; + } - KJ_IF_MAYBE(question, questions.find(ret.getAnswerId())) { + KJ_IF_MAYBE(question, questions.find(questionId)) { KJ_REQUIRE(question->isAwaitingReturn, "Duplicate Return.") { return; } question->isAwaitingReturn = false; @@ -2780,6 +3186,10 @@ private: question->paramExports = nullptr; } + if (ret.getNoFinishNeeded()) { + question->skipFinish = true; + } + KJ_IF_MAYBE(questionRef, question->selfRef) { switch (ret.which()) { case rpc::Return::RESULTS: { @@ -2821,24 +3231,14 @@ private: case rpc::Return::TAKE_FROM_OTHER_QUESTION: KJ_IF_MAYBE(answer, answers.find(ret.getTakeFromOtherQuestion())) { - KJ_IF_MAYBE(response, answer->redirectedResults) { + KJ_IF_MAYBE(response, answer->task.tryGet()) { questionRef->fulfill(kj::mv(*response)); - answer->redirectedResults = nullptr; + answer->task = Answer::Finished(); KJ_IF_MAYBE(context, answer->callContext) { // Send the `Return` message for the call of which we're taking ownership, so // that the peer knows it can now tear down the call state. context->sendRedirectReturn(); - - // There are three conditions, all of which must be true, before a call is - // canceled: - // 1. The RPC opts in by calling context->allowCancellation(). - // 2. We request cancellation with context->requestCancel(). - // 3. The final response promise -- which we passed to questionRef->fulfill() - // above -- must be dropped. - // - // We would like #3 to imply #2. So... we can just make #2 be true. - context->requestCancel(); } } else { KJ_FAIL_REQUIRE("`Return.takeFromOtherQuestion` referenced a call that did not " @@ -2864,16 +3264,12 @@ private: // Indeed, it does still exist. // Throw away the result promise. - promiseToRelease = kj::mv(answer->redirectedResults); + promiseToRelease = kj::mv(answer->task); KJ_IF_MAYBE(context, answer->callContext) { // Send the `Return` message for the call of which we're taking ownership, so // that the peer knows it can now tear down the call state. context->sendRedirectReturn(); - - // Since the caller has been canceled, make sure the callee that we're tailing to - // gets canceled. - context->requestCancel(); } } } @@ -2896,9 +3292,13 @@ private: KJ_DEFER(releaseExports(exportsToRelease)); Answer answerToRelease; kj::Maybe> pipelineToRelease; + kj::Maybe promiseToRelease; KJ_IF_MAYBE(answer, answers.find(finish.getQuestionId())) { - KJ_REQUIRE(answer->active, "'Finish' for invalid question ID.") { return; } + if (!answer->active) { + // Treat the same as if the answer wasn't in the table; see comment below. + return; + } if (finish.getReleaseResultCaps()) { exportsToRelease = kj::mv(answer->resultExports); @@ -2908,15 +3308,54 @@ private: pipelineToRelease = kj::mv(answer->pipeline); - // If the call isn't actually done yet, cancel it. Otherwise, we can go ahead and erase the - // question from the table. KJ_IF_MAYBE(context, answer->callContext) { - context->requestCancel(); + // Destroying answer->task will probably destroy the call context, but we can't prove that + // since it's refcounted. Instead, inform the call context that it is now its job to + // clean up the answer table. Then, cancel the task. + promiseToRelease = kj::mv(answer->task); + answer->task = Answer::Finished(); + context->finish(); } else { + // The call context is already gone so we can tear down the Answer here. answerToRelease = answers.erase(finish.getQuestionId()); } } else { - KJ_FAIL_REQUIRE("'Finish' for invalid question ID.") { return; } + // The `Finish` message targets a qusetion ID that isn't present in our answer table. + // Probably, we send a `Return` with `noFinishNeeded = true`, but the other side didn't + // recognize this hint and sent a `Finish` anyway, or the `Finish` was already in-flight at + // the time we sent the `Return`. We can silently ignore this. + // + // It would be nice to detect invalid finishes somehow, but to do so we would have to + // remember past answer IDs somewhere even when we said `noFinishNeeded`. Assuming the other + // side respects the hint and doesn't send a `Finish`, we'd only be able to clean up these + // records when the other end reuses the question ID, which might never happen. + } + + if (finish.getRequireEarlyCancellationWorkaround()) { + // Defer actual cancellation of the call until the end of the event loop queue. + // + // This is needed for compatibility with older versions of Cap'n Proto (0.10 and prior) in + // which the default was to prohibit cancellation until it was explicitly allowed. In newer + // versions (1.0 and later) cancellation is allowed until explicitly prohibited, that is, if + // we haven't actually delivered the call yet, it can be canceled. This requires less + // bookkeeping and so improved performance. + // + // However, old clients might be inadvertently relying on the old behavior. For example, if + // someone using and old version called `.send()` on a message and then promptly dropped the + // returned Promise, the message would often be delivered. This was not intended to work, but + // did, and could be relied upon by accident. Moreover, the original implementation of + // streaming included a bug where streaming calls *always* sent an immediate Finish. + // + // By deferring cancellation until after a turn of the event loop, we provide an opportunity + // for any `Call` messages we've received to actually be delivered, so that they can opt out + // of cancellation if desired. + KJ_IF_MAYBE(task, promiseToRelease) { + KJ_IF_MAYBE(running, task->tryGet()) { + tasks.add(kj::evalLast([running = kj::mv(*running)]() { + // Just drop `running` here to cancel the call. + })); + } + } } } @@ -3006,26 +3445,40 @@ private: return; } - for (;;) { - KJ_IF_MAYBE(r, target->getResolved()) { - target = r->addRef(); - } else { - break; - } - } + EmbargoId embargoId = context.getSenderLoopback(); - KJ_REQUIRE(target->getBrand() == this, - "'Disembargo' of type 'senderLoopback' sent to an object that does not point " - "back to the sender.") { - return; - } + // It's possible that `target` is a promise capability that hasn't resolved yet, in which + // case we must wait for the resolution. In particular this can happen in the case where + // we have Alice -> Bob -> Carol, Alice makes a call that proxies from Bob to Carol, and + // Carol returns a capability from this call that points all the way back though Bob to + // Alice. When this return capability passes through Bob, Bob will resolve the previous + // promise-pipeline capability to it. However, Bob has to send a Disembargo to Carol before + // completing this resolution. In the meantime, though, Bob returns the final repsonse to + // Alice. Alice then *also* sends a Disembargo to Bob. The Alice -> Bob Disembargo might + // arrive at Bob before the Bob -> Carol Disembargo has resolved, in which case the + // Disembargo is delivered to a promise capability. + auto promise = target->whenResolved() + .then([]() { + // We also need to insert an evalLast() here to make sure that any pending calls towards + // this cap have had time to find their way through the event loop. + return kj::evalLast([]() {}); + }); - EmbargoId embargoId = context.getSenderLoopback(); + tasks.add(promise.then([this, embargoId, target = kj::mv(target)]() mutable { + for (;;) { + KJ_IF_MAYBE(r, target->getResolved()) { + target = r->addRef(); + } else { + break; + } + } + + KJ_REQUIRE(target->getBrand() == this, + "'Disembargo' of type 'senderLoopback' sent to an object that does not point " + "back to the sender.") { + return; + } - // We need to insert an evalLast() here to make sure that any pending calls towards this - // cap have had time to find their way through the event loop. - tasks.add(canceler.wrap(kj::evalLast(kj::mvCapture( - target, [this,embargoId](kj::Own&& target) { if (!connection.is()) { return; } @@ -3045,8 +3498,8 @@ private: // any promise with a direct node in order to solve the Tribble 4-way race condition. // See the documentation of Disembargo in rpc.capnp for more. KJ_REQUIRE(redirect == nullptr, - "'Disembargo' of type 'senderLoopback' sent to an object that does not " - "appear to have been the subject of a previous 'Resolve' message.") { + "'Disembargo' of type 'senderLoopback' sent to an object that does not " + "appear to have been the subject of a previous 'Resolve' message.") { return; } } @@ -3054,7 +3507,7 @@ private: builder.getContext().setReceiverLoopback(embargoId); message->send(); - })))); + })); break; } @@ -3104,7 +3557,7 @@ public: // disassemble it. if (!connections.empty()) { kj::Vector> deleteMe(connections.size()); - kj::Exception shutdownException = KJ_EXCEPTION(FAILED, "RpcSystem was destroyed."); + kj::Exception shutdownException = KJ_EXCEPTION(DISCONNECTED, "RpcSystem was destroyed."); for (auto& entry: connections) { entry.second->disconnect(kj::cp(shutdownException)); deleteMe.add(kj::mv(entry.second)); @@ -3388,4 +3841,20 @@ kj::Own RpcFlowController::newVariableWindowController(Window return kj::heap(getter); } +bool IncomingRpcMessage::isShortLivedRpcMessage(AnyPointer::Reader body) { + switch (body.getAs().which()) { + case rpc::Message::CALL: + case rpc::Message::RETURN: + return false; + default: + return true; + } +} + +kj::Function IncomingRpcMessage::getShortLivedCallback() { + return [](MessageReader& reader) { + return IncomingRpcMessage::isShortLivedRpcMessage(reader.getRoot()); + }; +} + } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp index 50aa496369b..0e718d5bf22 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp @@ -316,7 +316,7 @@ struct Bootstrap { # A Vat may export multiple bootstrap interfaces. In this case, `deprecatedObjectId` specifies # which one to return. If this pointer is null, then the default bootstrap interface is returned. # - # As of verison 0.5, use of this field is deprecated. If a service wants to export multiple + # As of version 0.5, use of this field is deprecated. If a service wants to export multiple # bootstrap interfaces, it should instead define a single bootstrap interface that has methods # that return each of the other interfaces. # @@ -352,7 +352,7 @@ struct Bootstrap { # - Overloading "Restore" also had a security problem: Often, "main" or "well-known" # capabilities exported by a vat are in fact not public: they are intended to be accessed only # by clients who are capable of forming a connection to the vat. This can lead to trouble if - # the client itself has other clients and wishes to foward some `Restore` requests from those + # the client itself has other clients and wishes to forward some `Restore` requests from those # external clients -- it has to be very careful not to allow through `Restore` requests # addressing the default capability. # @@ -415,6 +415,30 @@ struct Call { # `acceptFromThirdParty`. Level 3 implementations should set this true. Otherwise, the callee # will have to proxy the return in the case of a tail call to a third-party vat. + noPromisePipelining @9 :Bool = false; + # If true, the sender promises that it won't make any promise-pipelined calls on the results of + # this call. If it breaks this promise, the receiver may throw an arbitrary error from such + # calls. + # + # The receiver may use this as an optimization, by skipping the bookkeeping needed for pipelining + # when no pipelined calls are expected. The sender typically sets this to false when the method's + # schema does not specify any return capabilities. + + onlyPromisePipeline @10 :Bool = false; + # If true, the sender only plans to use this call to make pipelined calls. The receiver need not + # send a `Return` message (but is still allowed to do so). + # + # Since the sender does not know whether a `Return` will be sent, it must release all state + # related to the call when it sends `Finish`. However, in the case that the callee does not + # recognize this hint and chooses to send a `Return`, then technically the caller is not allowed + # to reuse the question ID until it receives said `Return`. This creates a conundrum: How does + # the caller decide when it's OK to reuse the ID? To sidestep the problem, the C++ implementation + # uses high-numbered IDs (with the high-order bit set) for such calls, and cycles through the + # IDs in order. If all 2^31 IDs in this space are used without ever seeing a `Return`, then the + # implementation assumes that the other end is in fact honoring the hint, and the ID counter is + # allowed to loop around. If a `Return` is ever seen when `onlyPromisePipeline` was set, then + # the implementation stops using this hint. + params @4 :Payload; # The call parameters. `params.content` is a struct whose fields correspond to the parameters of # the method. @@ -496,6 +520,13 @@ struct Return { # The receiver should act as if the sender had sent a release message with count=1 for each # CapDescriptor in the original Call message. + noFinishNeeded @8 :Bool = false; + # If true, the sender does not need the receiver to send a `Finish` message; its answer table + # entry has already been cleaned up. This implies that the results do not contain any + # capabilities, since the `Finish` message would normally release those capabilities from + # promise pipelining responsibility. The caller may still send a `Finish` message if it wants, + # which will be silently ignored by the callee. + union { results @2 :Payload; # The result. @@ -564,6 +595,20 @@ struct Finish { # should always set this true. This defaults true because if level 0 implementations forget to # set it they'll never notice (just silently leak caps), but if level >=1 implementations forget # set it false they'll quickly get errors. + + requireEarlyCancellationWorkaround @2 :Bool = true; + # If true, if the RPC system receives this Finish message before the original call has even been + # delivered, it should defer cancellation util after delivery. In particular, this gives the + # destination object a chance to opt out of cancellation, e.g. as controlled by the + # `allowCancellation` annotation defined in `c++.capnp`. + # + # This is a work-around. Versions 1.0 and up of Cap'n Proto always set this to false. However, + # older versions of Cap'n Proto unintentionally exhibited this errant behavior by default, and + # as a result programs built with older versions could be inadvertently relying on their peers + # to implement the behavior. The purpose of this flag is to let newer versions know when the + # peer is an older version, so that it can attempt to work around the issue. + # + # See also comments in handleFinish() in rpc.c++ for more details. } # Level 1 message types ---------------------------------------------- @@ -707,6 +752,10 @@ struct Disembargo { # is expected that people sending messages to P will shortly start sending them to R instead and # drop P. P is at end-of-life anyway, so it doesn't matter if it ignores chances to further # optimize its path. + # + # Note well: the Tribble 4-way race condition does not require each vat to be *distinct*; as long + # as each resolution crosses a network boundary the race can occur -- so this concerns even level + # 1 implementations, not just level 3 implementations. target @0 :MessageTarget; # What is to be disembargoed. diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp.c++ index 553e72d6991..4927995f474 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp.c++ @@ -259,7 +259,7 @@ static const uint16_t m_91b79f1f808db032[] = {1, 11, 8, 2, 13, 4, 12, 9, 7, 10, static const uint16_t i_91b79f1f808db032[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; const ::capnp::_::RawSchema s_91b79f1f808db032 = { 0x91b79f1f808db032, b_91b79f1f808db032.words, 232, d_91b79f1f808db032, m_91b79f1f808db032, - 12, 14, i_91b79f1f808db032, nullptr, nullptr, { &s_91b79f1f808db032, nullptr, nullptr, 0, 0, nullptr } + 12, 14, i_91b79f1f808db032, nullptr, nullptr, { &s_91b79f1f808db032, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<51> b_e94ccf8031176ec4 = { @@ -321,10 +321,10 @@ static const uint16_t m_e94ccf8031176ec4[] = {1, 0}; static const uint16_t i_e94ccf8031176ec4[] = {0, 1}; const ::capnp::_::RawSchema s_e94ccf8031176ec4 = { 0xe94ccf8031176ec4, b_e94ccf8031176ec4.words, 51, nullptr, m_e94ccf8031176ec4, - 0, 2, i_e94ccf8031176ec4, nullptr, nullptr, { &s_e94ccf8031176ec4, nullptr, nullptr, 0, 0, nullptr } + 0, 2, i_e94ccf8031176ec4, nullptr, nullptr, { &s_e94ccf8031176ec4, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE -static const ::capnp::_::AlignedData<121> b_836a53ce789d4cd4 = { +static const ::capnp::_::AlignedData<155> b_836a53ce789d4cd4 = { { 0, 0, 0, 0, 5, 0, 6, 0, 212, 76, 157, 120, 206, 83, 106, 131, 16, 0, 0, 0, 1, 0, 3, 0, @@ -334,63 +334,77 @@ static const ::capnp::_::AlignedData<121> b_836a53ce789d4cd4 = { 21, 0, 0, 0, 170, 0, 0, 0, 29, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 25, 0, 0, 0, 143, 1, 0, 0, + 25, 0, 0, 0, 255, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 97, 112, 110, 112, 47, 114, 112, 99, 46, 99, 97, 112, 110, 112, 58, 67, 97, 108, 108, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, - 28, 0, 0, 0, 3, 0, 4, 0, + 36, 0, 0, 0, 3, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 181, 0, 0, 0, 90, 0, 0, 0, + 237, 0, 0, 0, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 180, 0, 0, 0, 3, 0, 1, 0, - 192, 0, 0, 0, 2, 0, 1, 0, + 236, 0, 0, 0, 3, 0, 1, 0, + 248, 0, 0, 0, 2, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 189, 0, 0, 0, 58, 0, 0, 0, + 245, 0, 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 184, 0, 0, 0, 3, 0, 1, 0, - 196, 0, 0, 0, 2, 0, 1, 0, + 240, 0, 0, 0, 3, 0, 1, 0, + 252, 0, 0, 0, 2, 0, 1, 0, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 193, 0, 0, 0, 98, 0, 0, 0, + 249, 0, 0, 0, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 192, 0, 0, 0, 3, 0, 1, 0, - 204, 0, 0, 0, 2, 0, 1, 0, + 248, 0, 0, 0, 3, 0, 1, 0, + 4, 1, 0, 0, 2, 0, 1, 0, 3, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 201, 0, 0, 0, 74, 0, 0, 0, + 1, 1, 0, 0, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 200, 0, 0, 0, 3, 0, 1, 0, - 212, 0, 0, 0, 2, 0, 1, 0, - 5, 0, 0, 0, 1, 0, 0, 0, + 0, 1, 0, 0, 3, 0, 1, 0, + 12, 1, 0, 0, 2, 0, 1, 0, + 7, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 209, 0, 0, 0, 58, 0, 0, 0, + 9, 1, 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 204, 0, 0, 0, 3, 0, 1, 0, - 216, 0, 0, 0, 2, 0, 1, 0, - 6, 0, 0, 0, 0, 0, 0, 0, + 4, 1, 0, 0, 3, 0, 1, 0, + 16, 1, 0, 0, 2, 0, 1, 0, + 8, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 153, 95, 171, 26, 246, 176, 232, 218, - 213, 0, 0, 0, 114, 0, 0, 0, + 13, 1, 0, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 128, 0, 0, 0, 0, 0, 1, 0, 8, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, - 193, 0, 0, 0, 194, 0, 0, 0, + 249, 0, 0, 0, 194, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 196, 0, 0, 0, 3, 0, 1, 0, - 208, 0, 0, 0, 2, 0, 1, 0, + 252, 0, 0, 0, 3, 0, 1, 0, + 8, 1, 0, 0, 2, 0, 1, 0, + 5, 0, 0, 0, 129, 0, 0, 0, + 0, 0, 1, 0, 9, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 5, 1, 0, 0, 162, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 8, 1, 0, 0, 3, 0, 1, 0, + 20, 1, 0, 0, 2, 0, 1, 0, + 6, 0, 0, 0, 130, 0, 0, 0, + 0, 0, 1, 0, 10, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 17, 1, 0, 0, 162, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 20, 1, 0, 0, 3, 0, 1, 0, + 32, 1, 0, 0, 2, 0, 1, 0, 113, 117, 101, 115, 116, 105, 111, 110, 73, 100, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, @@ -439,6 +453,26 @@ static const ::capnp::_::AlignedData<121> b_836a53ce789d4cd4 = { 97, 108, 108, 111, 119, 84, 104, 105, 114, 100, 80, 97, 114, 116, 121, 84, 97, 105, 108, 67, 97, 108, 108, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 110, 111, 80, 114, 111, 109, 105, 115, + 101, 80, 105, 112, 101, 108, 105, 110, + 105, 110, 103, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 111, 110, 108, 121, 80, 114, 111, 109, + 105, 115, 101, 80, 105, 112, 101, 108, + 105, 110, 101, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -454,11 +488,11 @@ static const ::capnp::_::RawSchema* const d_836a53ce789d4cd4[] = { &s_9a0e61223d96743b, &s_dae8b0f61aab5f99, }; -static const uint16_t m_836a53ce789d4cd4[] = {6, 2, 3, 4, 0, 5, 1}; -static const uint16_t i_836a53ce789d4cd4[] = {0, 1, 2, 3, 4, 5, 6}; +static const uint16_t m_836a53ce789d4cd4[] = {6, 2, 3, 7, 8, 4, 0, 5, 1}; +static const uint16_t i_836a53ce789d4cd4[] = {0, 1, 2, 3, 4, 5, 6, 7, 8}; const ::capnp::_::RawSchema s_836a53ce789d4cd4 = { - 0x836a53ce789d4cd4, b_836a53ce789d4cd4.words, 121, d_836a53ce789d4cd4, m_836a53ce789d4cd4, - 3, 7, i_836a53ce789d4cd4, nullptr, nullptr, { &s_836a53ce789d4cd4, nullptr, nullptr, 0, 0, nullptr } + 0x836a53ce789d4cd4, b_836a53ce789d4cd4.words, 155, d_836a53ce789d4cd4, m_836a53ce789d4cd4, + 3, 9, i_836a53ce789d4cd4, nullptr, nullptr, { &s_836a53ce789d4cd4, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<65> b_dae8b0f61aab5f99 = { @@ -537,10 +571,10 @@ static const uint16_t m_dae8b0f61aab5f99[] = {0, 2, 1}; static const uint16_t i_dae8b0f61aab5f99[] = {0, 1, 2}; const ::capnp::_::RawSchema s_dae8b0f61aab5f99 = { 0xdae8b0f61aab5f99, b_dae8b0f61aab5f99.words, 65, d_dae8b0f61aab5f99, m_dae8b0f61aab5f99, - 1, 3, i_dae8b0f61aab5f99, nullptr, nullptr, { &s_dae8b0f61aab5f99, nullptr, nullptr, 0, 0, nullptr } + 1, 3, i_dae8b0f61aab5f99, nullptr, nullptr, { &s_dae8b0f61aab5f99, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE -static const ::capnp::_::AlignedData<148> b_9e19b28d3db3573a = { +static const ::capnp::_::AlignedData<164> b_9e19b28d3db3573a = { { 0, 0, 0, 0, 5, 0, 6, 0, 58, 87, 179, 61, 141, 178, 25, 158, 16, 0, 0, 0, 1, 0, 2, 0, @@ -550,70 +584,77 @@ static const ::capnp::_::AlignedData<148> b_9e19b28d3db3573a = { 21, 0, 0, 0, 186, 0, 0, 0, 29, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 25, 0, 0, 0, 199, 1, 0, 0, + 25, 0, 0, 0, 255, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 97, 112, 110, 112, 47, 114, 112, 99, 46, 99, 97, 112, 110, 112, 58, 82, 101, 116, 117, 114, 110, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, - 32, 0, 0, 0, 3, 0, 4, 0, + 36, 0, 0, 0, 3, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 209, 0, 0, 0, 74, 0, 0, 0, + 237, 0, 0, 0, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 208, 0, 0, 0, 3, 0, 1, 0, - 220, 0, 0, 0, 2, 0, 1, 0, + 236, 0, 0, 0, 3, 0, 1, 0, + 248, 0, 0, 0, 2, 0, 1, 0, 1, 0, 0, 0, 32, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, - 217, 0, 0, 0, 138, 0, 0, 0, + 245, 0, 0, 0, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 220, 0, 0, 0, 3, 0, 1, 0, - 232, 0, 0, 0, 2, 0, 1, 0, - 2, 0, 255, 255, 0, 0, 0, 0, + 248, 0, 0, 0, 3, 0, 1, 0, + 4, 1, 0, 0, 2, 0, 1, 0, + 3, 0, 255, 255, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 229, 0, 0, 0, 66, 0, 0, 0, + 1, 1, 0, 0, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 224, 0, 0, 0, 3, 0, 1, 0, - 236, 0, 0, 0, 2, 0, 1, 0, - 3, 0, 254, 255, 0, 0, 0, 0, + 252, 0, 0, 0, 3, 0, 1, 0, + 8, 1, 0, 0, 2, 0, 1, 0, + 4, 0, 254, 255, 0, 0, 0, 0, 0, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 233, 0, 0, 0, 82, 0, 0, 0, + 5, 1, 0, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 232, 0, 0, 0, 3, 0, 1, 0, - 244, 0, 0, 0, 2, 0, 1, 0, - 4, 0, 253, 255, 0, 0, 0, 0, + 4, 1, 0, 0, 3, 0, 1, 0, + 16, 1, 0, 0, 2, 0, 1, 0, + 5, 0, 253, 255, 0, 0, 0, 0, 0, 0, 1, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 241, 0, 0, 0, 74, 0, 0, 0, + 13, 1, 0, 0, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 240, 0, 0, 0, 3, 0, 1, 0, - 252, 0, 0, 0, 2, 0, 1, 0, - 5, 0, 252, 255, 0, 0, 0, 0, + 12, 1, 0, 0, 3, 0, 1, 0, + 24, 1, 0, 0, 2, 0, 1, 0, + 6, 0, 252, 255, 0, 0, 0, 0, 0, 0, 1, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 249, 0, 0, 0, 170, 0, 0, 0, + 21, 1, 0, 0, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 252, 0, 0, 0, 3, 0, 1, 0, - 8, 1, 0, 0, 2, 0, 1, 0, - 6, 0, 251, 255, 2, 0, 0, 0, + 24, 1, 0, 0, 3, 0, 1, 0, + 36, 1, 0, 0, 2, 0, 1, 0, + 7, 0, 251, 255, 2, 0, 0, 0, 0, 0, 1, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 5, 1, 0, 0, 178, 0, 0, 0, + 33, 1, 0, 0, 178, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 8, 1, 0, 0, 3, 0, 1, 0, - 20, 1, 0, 0, 2, 0, 1, 0, - 7, 0, 250, 255, 0, 0, 0, 0, + 36, 1, 0, 0, 3, 0, 1, 0, + 48, 1, 0, 0, 2, 0, 1, 0, + 8, 0, 250, 255, 0, 0, 0, 0, 0, 0, 1, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 17, 1, 0, 0, 170, 0, 0, 0, + 45, 1, 0, 0, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 20, 1, 0, 0, 3, 0, 1, 0, - 32, 1, 0, 0, 2, 0, 1, 0, + 48, 1, 0, 0, 3, 0, 1, 0, + 60, 1, 0, 0, 2, 0, 1, 0, + 2, 0, 0, 0, 33, 0, 0, 0, + 0, 0, 1, 0, 8, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 57, 1, 0, 0, 122, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 56, 1, 0, 0, 3, 0, 1, 0, + 68, 1, 0, 0, 2, 0, 1, 0, 97, 110, 115, 119, 101, 114, 73, 100, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, @@ -687,6 +728,15 @@ static const ::capnp::_::AlignedData<148> b_9e19b28d3db3573a = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 110, 111, 70, 105, 110, 105, 115, 104, + 78, 101, 101, 100, 101, 100, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, } }; @@ -696,14 +746,14 @@ static const ::capnp::_::RawSchema* const d_9e19b28d3db3573a[] = { &s_9a0e61223d96743b, &s_d625b7063acf691a, }; -static const uint16_t m_9e19b28d3db3573a[] = {7, 0, 4, 3, 1, 2, 5, 6}; -static const uint16_t i_9e19b28d3db3573a[] = {2, 3, 4, 5, 6, 7, 0, 1}; +static const uint16_t m_9e19b28d3db3573a[] = {7, 0, 4, 3, 8, 1, 2, 5, 6}; +static const uint16_t i_9e19b28d3db3573a[] = {2, 3, 4, 5, 6, 7, 0, 1, 8}; const ::capnp::_::RawSchema s_9e19b28d3db3573a = { - 0x9e19b28d3db3573a, b_9e19b28d3db3573a.words, 148, d_9e19b28d3db3573a, m_9e19b28d3db3573a, - 2, 8, i_9e19b28d3db3573a, nullptr, nullptr, { &s_9e19b28d3db3573a, nullptr, nullptr, 0, 0, nullptr } + 0x9e19b28d3db3573a, b_9e19b28d3db3573a.words, 164, d_9e19b28d3db3573a, m_9e19b28d3db3573a, + 2, 9, i_9e19b28d3db3573a, nullptr, nullptr, { &s_9e19b28d3db3573a, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE -static const ::capnp::_::AlignedData<50> b_d37d2eb2c2f80e63 = { +static const ::capnp::_::AlignedData<69> b_d37d2eb2c2f80e63 = { { 0, 0, 0, 0, 5, 0, 6, 0, 99, 14, 248, 194, 178, 46, 125, 211, 16, 0, 0, 0, 1, 0, 1, 0, @@ -713,28 +763,35 @@ static const ::capnp::_::AlignedData<50> b_d37d2eb2c2f80e63 = { 21, 0, 0, 0, 186, 0, 0, 0, 29, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 25, 0, 0, 0, 119, 0, 0, 0, + 25, 0, 0, 0, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 97, 112, 110, 112, 47, 114, 112, 99, 46, 99, 97, 112, 110, 112, 58, 70, 105, 110, 105, 115, 104, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, - 8, 0, 0, 0, 3, 0, 4, 0, + 12, 0, 0, 0, 3, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 41, 0, 0, 0, 90, 0, 0, 0, + 69, 0, 0, 0, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 40, 0, 0, 0, 3, 0, 1, 0, - 52, 0, 0, 0, 2, 0, 1, 0, + 68, 0, 0, 0, 3, 0, 1, 0, + 80, 0, 0, 0, 2, 0, 1, 0, 1, 0, 0, 0, 32, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, - 49, 0, 0, 0, 146, 0, 0, 0, + 77, 0, 0, 0, 146, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 52, 0, 0, 0, 3, 0, 1, 0, - 64, 0, 0, 0, 2, 0, 1, 0, + 80, 0, 0, 0, 3, 0, 1, 0, + 92, 0, 0, 0, 2, 0, 1, 0, + 2, 0, 0, 0, 33, 0, 0, 0, + 0, 0, 1, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 89, 0, 0, 0, 26, 1, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 100, 0, 0, 0, 3, 0, 1, 0, + 112, 0, 0, 0, 2, 0, 1, 0, 113, 117, 101, 115, 116, 105, 111, 110, 73, 100, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, @@ -747,6 +804,18 @@ static const ::capnp::_::AlignedData<50> b_d37d2eb2c2f80e63 = { 114, 101, 108, 101, 97, 115, 101, 82, 101, 115, 117, 108, 116, 67, 97, 112, 115, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 114, 101, 113, 117, 105, 114, 101, 69, + 97, 114, 108, 121, 67, 97, 110, 99, + 101, 108, 108, 97, 116, 105, 111, 110, + 87, 111, 114, 107, 97, 114, 111, 117, + 110, 100, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -757,11 +826,11 @@ static const ::capnp::_::AlignedData<50> b_d37d2eb2c2f80e63 = { }; ::capnp::word const* const bp_d37d2eb2c2f80e63 = b_d37d2eb2c2f80e63.words; #if !CAPNP_LITE -static const uint16_t m_d37d2eb2c2f80e63[] = {0, 1}; -static const uint16_t i_d37d2eb2c2f80e63[] = {0, 1}; +static const uint16_t m_d37d2eb2c2f80e63[] = {0, 1, 2}; +static const uint16_t i_d37d2eb2c2f80e63[] = {0, 1, 2}; const ::capnp::_::RawSchema s_d37d2eb2c2f80e63 = { - 0xd37d2eb2c2f80e63, b_d37d2eb2c2f80e63.words, 50, nullptr, m_d37d2eb2c2f80e63, - 0, 2, i_d37d2eb2c2f80e63, nullptr, nullptr, { &s_d37d2eb2c2f80e63, nullptr, nullptr, 0, 0, nullptr } + 0xd37d2eb2c2f80e63, b_d37d2eb2c2f80e63.words, 69, nullptr, m_d37d2eb2c2f80e63, + 0, 3, i_d37d2eb2c2f80e63, nullptr, nullptr, { &s_d37d2eb2c2f80e63, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<64> b_bbc29655fa89086e = { @@ -840,7 +909,7 @@ static const uint16_t m_bbc29655fa89086e[] = {1, 2, 0}; static const uint16_t i_bbc29655fa89086e[] = {1, 2, 0}; const ::capnp::_::RawSchema s_bbc29655fa89086e = { 0xbbc29655fa89086e, b_bbc29655fa89086e.words, 64, d_bbc29655fa89086e, m_bbc29655fa89086e, - 2, 3, i_bbc29655fa89086e, nullptr, nullptr, { &s_bbc29655fa89086e, nullptr, nullptr, 0, 0, nullptr } + 2, 3, i_bbc29655fa89086e, nullptr, nullptr, { &s_bbc29655fa89086e, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<48> b_ad1a6c0d7dd07497 = { @@ -899,7 +968,7 @@ static const uint16_t m_ad1a6c0d7dd07497[] = {0, 1}; static const uint16_t i_ad1a6c0d7dd07497[] = {0, 1}; const ::capnp::_::RawSchema s_ad1a6c0d7dd07497 = { 0xad1a6c0d7dd07497, b_ad1a6c0d7dd07497.words, 48, nullptr, m_ad1a6c0d7dd07497, - 0, 2, i_ad1a6c0d7dd07497, nullptr, nullptr, { &s_ad1a6c0d7dd07497, nullptr, nullptr, 0, 0, nullptr } + 0, 2, i_ad1a6c0d7dd07497, nullptr, nullptr, { &s_ad1a6c0d7dd07497, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<41> b_f964368b0fbd3711 = { @@ -955,7 +1024,7 @@ static const uint16_t m_f964368b0fbd3711[] = {1, 0}; static const uint16_t i_f964368b0fbd3711[] = {0, 1}; const ::capnp::_::RawSchema s_f964368b0fbd3711 = { 0xf964368b0fbd3711, b_f964368b0fbd3711.words, 41, d_f964368b0fbd3711, m_f964368b0fbd3711, - 2, 2, i_f964368b0fbd3711, nullptr, nullptr, { &s_f964368b0fbd3711, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_f964368b0fbd3711, nullptr, nullptr, { &s_f964368b0fbd3711, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<81> b_d562b4df655bdd4d = { @@ -1050,7 +1119,7 @@ static const uint16_t m_d562b4df655bdd4d[] = {2, 3, 1, 0}; static const uint16_t i_d562b4df655bdd4d[] = {0, 1, 2, 3}; const ::capnp::_::RawSchema s_d562b4df655bdd4d = { 0xd562b4df655bdd4d, b_d562b4df655bdd4d.words, 81, d_d562b4df655bdd4d, m_d562b4df655bdd4d, - 1, 4, i_d562b4df655bdd4d, nullptr, nullptr, { &s_d562b4df655bdd4d, nullptr, nullptr, 0, 0, nullptr } + 1, 4, i_d562b4df655bdd4d, nullptr, nullptr, { &s_d562b4df655bdd4d, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<64> b_9c6a046bfbc1ac5a = { @@ -1128,7 +1197,7 @@ static const uint16_t m_9c6a046bfbc1ac5a[] = {0, 2, 1}; static const uint16_t i_9c6a046bfbc1ac5a[] = {0, 1, 2}; const ::capnp::_::RawSchema s_9c6a046bfbc1ac5a = { 0x9c6a046bfbc1ac5a, b_9c6a046bfbc1ac5a.words, 64, d_9c6a046bfbc1ac5a, m_9c6a046bfbc1ac5a, - 1, 3, i_9c6a046bfbc1ac5a, nullptr, nullptr, { &s_9c6a046bfbc1ac5a, nullptr, nullptr, 0, 0, nullptr } + 1, 3, i_9c6a046bfbc1ac5a, nullptr, nullptr, { &s_9c6a046bfbc1ac5a, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<64> b_d4c9b56290554016 = { @@ -1203,7 +1272,7 @@ static const uint16_t m_d4c9b56290554016[] = {2, 1, 0}; static const uint16_t i_d4c9b56290554016[] = {0, 1, 2}; const ::capnp::_::RawSchema s_d4c9b56290554016 = { 0xd4c9b56290554016, b_d4c9b56290554016.words, 64, nullptr, m_d4c9b56290554016, - 0, 3, i_d4c9b56290554016, nullptr, nullptr, { &s_d4c9b56290554016, nullptr, nullptr, 0, 0, nullptr } + 0, 3, i_d4c9b56290554016, nullptr, nullptr, { &s_d4c9b56290554016, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<63> b_fbe1980490e001af = { @@ -1280,7 +1349,7 @@ static const uint16_t m_fbe1980490e001af[] = {2, 0, 1}; static const uint16_t i_fbe1980490e001af[] = {0, 1, 2}; const ::capnp::_::RawSchema s_fbe1980490e001af = { 0xfbe1980490e001af, b_fbe1980490e001af.words, 63, d_fbe1980490e001af, m_fbe1980490e001af, - 1, 3, i_fbe1980490e001af, nullptr, nullptr, { &s_fbe1980490e001af, nullptr, nullptr, 0, 0, nullptr } + 1, 3, i_fbe1980490e001af, nullptr, nullptr, { &s_fbe1980490e001af, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<50> b_95bc14545813fbc1 = { @@ -1344,7 +1413,7 @@ static const uint16_t m_95bc14545813fbc1[] = {0, 1}; static const uint16_t i_95bc14545813fbc1[] = {0, 1}; const ::capnp::_::RawSchema s_95bc14545813fbc1 = { 0x95bc14545813fbc1, b_95bc14545813fbc1.words, 50, d_95bc14545813fbc1, m_95bc14545813fbc1, - 1, 2, i_95bc14545813fbc1, nullptr, nullptr, { &s_95bc14545813fbc1, nullptr, nullptr, 0, 0, nullptr } + 1, 2, i_95bc14545813fbc1, nullptr, nullptr, { &s_95bc14545813fbc1, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<52> b_9a0e61223d96743b = { @@ -1410,7 +1479,7 @@ static const uint16_t m_9a0e61223d96743b[] = {1, 0}; static const uint16_t i_9a0e61223d96743b[] = {0, 1}; const ::capnp::_::RawSchema s_9a0e61223d96743b = { 0x9a0e61223d96743b, b_9a0e61223d96743b.words, 52, d_9a0e61223d96743b, m_9a0e61223d96743b, - 1, 2, i_9a0e61223d96743b, nullptr, nullptr, { &s_9a0e61223d96743b, nullptr, nullptr, 0, 0, nullptr } + 1, 2, i_9a0e61223d96743b, nullptr, nullptr, { &s_9a0e61223d96743b, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<130> b_8523ddc40b86b8b0 = { @@ -1555,7 +1624,7 @@ static const uint16_t m_8523ddc40b86b8b0[] = {6, 0, 4, 3, 1, 2, 5}; static const uint16_t i_8523ddc40b86b8b0[] = {0, 1, 2, 3, 4, 5, 6}; const ::capnp::_::RawSchema s_8523ddc40b86b8b0 = { 0x8523ddc40b86b8b0, b_8523ddc40b86b8b0.words, 130, d_8523ddc40b86b8b0, m_8523ddc40b86b8b0, - 2, 7, i_8523ddc40b86b8b0, nullptr, nullptr, { &s_8523ddc40b86b8b0, nullptr, nullptr, 0, 0, nullptr } + 2, 7, i_8523ddc40b86b8b0, nullptr, nullptr, { &s_8523ddc40b86b8b0, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<57> b_d800b1d6cd6f1ca0 = { @@ -1626,7 +1695,7 @@ static const uint16_t m_d800b1d6cd6f1ca0[] = {0, 1}; static const uint16_t i_d800b1d6cd6f1ca0[] = {0, 1}; const ::capnp::_::RawSchema s_d800b1d6cd6f1ca0 = { 0xd800b1d6cd6f1ca0, b_d800b1d6cd6f1ca0.words, 57, d_d800b1d6cd6f1ca0, m_d800b1d6cd6f1ca0, - 1, 2, i_d800b1d6cd6f1ca0, nullptr, nullptr, { &s_d800b1d6cd6f1ca0, nullptr, nullptr, 0, 0, nullptr } + 1, 2, i_d800b1d6cd6f1ca0, nullptr, nullptr, { &s_d800b1d6cd6f1ca0, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<50> b_f316944415569081 = { @@ -1687,7 +1756,7 @@ static const uint16_t m_f316944415569081[] = {1, 0}; static const uint16_t i_f316944415569081[] = {0, 1}; const ::capnp::_::RawSchema s_f316944415569081 = { 0xf316944415569081, b_f316944415569081.words, 50, nullptr, m_f316944415569081, - 0, 2, i_f316944415569081, nullptr, nullptr, { &s_f316944415569081, nullptr, nullptr, 0, 0, nullptr } + 0, 2, i_f316944415569081, nullptr, nullptr, { &s_f316944415569081, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<49> b_d37007fde1f0027d = { @@ -1747,7 +1816,7 @@ static const uint16_t m_d37007fde1f0027d[] = {0, 1}; static const uint16_t i_d37007fde1f0027d[] = {0, 1}; const ::capnp::_::RawSchema s_d37007fde1f0027d = { 0xd37007fde1f0027d, b_d37007fde1f0027d.words, 49, nullptr, m_d37007fde1f0027d, - 0, 2, i_d37007fde1f0027d, nullptr, nullptr, { &s_d37007fde1f0027d, nullptr, nullptr, 0, 0, nullptr } + 0, 2, i_d37007fde1f0027d, nullptr, nullptr, { &s_d37007fde1f0027d, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<100> b_d625b7063acf691a = { @@ -1861,7 +1930,7 @@ static const uint16_t m_d625b7063acf691a[] = {2, 1, 0, 4, 3}; static const uint16_t i_d625b7063acf691a[] = {0, 1, 2, 3, 4}; const ::capnp::_::RawSchema s_d625b7063acf691a = { 0xd625b7063acf691a, b_d625b7063acf691a.words, 100, d_d625b7063acf691a, m_d625b7063acf691a, - 1, 5, i_d625b7063acf691a, nullptr, nullptr, { &s_d625b7063acf691a, nullptr, nullptr, 0, 0, nullptr } + 1, 5, i_d625b7063acf691a, nullptr, nullptr, { &s_d625b7063acf691a, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<37> b_b28c96e23f4cbd58 = { @@ -1908,7 +1977,7 @@ static const ::capnp::_::AlignedData<37> b_b28c96e23f4cbd58 = { static const uint16_t m_b28c96e23f4cbd58[] = {2, 0, 1, 3}; const ::capnp::_::RawSchema s_b28c96e23f4cbd58 = { 0xb28c96e23f4cbd58, b_b28c96e23f4cbd58.words, 37, nullptr, m_b28c96e23f4cbd58, - 0, 4, nullptr, nullptr, nullptr, { &s_b28c96e23f4cbd58, nullptr, nullptr, 0, 0, nullptr } + 0, 4, nullptr, nullptr, nullptr, { &s_b28c96e23f4cbd58, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE CAPNP_DEFINE_ENUM(Type_b28c96e23f4cbd58, b28c96e23f4cbd58); @@ -1921,163 +1990,243 @@ namespace capnp { namespace rpc { // Message +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Message::_capnpPrivate::dataWordSize; constexpr uint16_t Message::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Message::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Message::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Bootstrap +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Bootstrap::_capnpPrivate::dataWordSize; constexpr uint16_t Bootstrap::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Bootstrap::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Bootstrap::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Call +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Call::_capnpPrivate::dataWordSize; constexpr uint16_t Call::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Call::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Call::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Call::SendResultsTo +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Call::SendResultsTo::_capnpPrivate::dataWordSize; constexpr uint16_t Call::SendResultsTo::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Call::SendResultsTo::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Call::SendResultsTo::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Return +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Return::_capnpPrivate::dataWordSize; constexpr uint16_t Return::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Return::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Return::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Finish +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Finish::_capnpPrivate::dataWordSize; constexpr uint16_t Finish::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Finish::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Finish::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Resolve +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Resolve::_capnpPrivate::dataWordSize; constexpr uint16_t Resolve::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Resolve::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Resolve::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Release +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Release::_capnpPrivate::dataWordSize; constexpr uint16_t Release::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Release::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Release::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Disembargo +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Disembargo::_capnpPrivate::dataWordSize; constexpr uint16_t Disembargo::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Disembargo::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Disembargo::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Disembargo::Context +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Disembargo::Context::_capnpPrivate::dataWordSize; constexpr uint16_t Disembargo::Context::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Disembargo::Context::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Disembargo::Context::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Provide +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Provide::_capnpPrivate::dataWordSize; constexpr uint16_t Provide::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Provide::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Provide::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Accept +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Accept::_capnpPrivate::dataWordSize; constexpr uint16_t Accept::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Accept::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Accept::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Join +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Join::_capnpPrivate::dataWordSize; constexpr uint16_t Join::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Join::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Join::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // MessageTarget +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t MessageTarget::_capnpPrivate::dataWordSize; constexpr uint16_t MessageTarget::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind MessageTarget::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* MessageTarget::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Payload +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Payload::_capnpPrivate::dataWordSize; constexpr uint16_t Payload::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Payload::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Payload::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // CapDescriptor +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t CapDescriptor::_capnpPrivate::dataWordSize; constexpr uint16_t CapDescriptor::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind CapDescriptor::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* CapDescriptor::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // PromisedAnswer +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t PromisedAnswer::_capnpPrivate::dataWordSize; constexpr uint16_t PromisedAnswer::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind PromisedAnswer::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* PromisedAnswer::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // PromisedAnswer::Op +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t PromisedAnswer::Op::_capnpPrivate::dataWordSize; constexpr uint16_t PromisedAnswer::Op::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind PromisedAnswer::Op::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* PromisedAnswer::Op::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // ThirdPartyCapDescriptor +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t ThirdPartyCapDescriptor::_capnpPrivate::dataWordSize; constexpr uint16_t ThirdPartyCapDescriptor::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind ThirdPartyCapDescriptor::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* ThirdPartyCapDescriptor::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Exception +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Exception::_capnpPrivate::dataWordSize; constexpr uint16_t Exception::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Exception::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Exception::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp.h b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp.h index 58eb6a2dd38..ead290923f8 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.capnp.h @@ -6,7 +6,9 @@ #include #include -#if CAPNP_VERSION != 9001 +#ifndef CAPNP_VERSION +#error "CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?" +#elif CAPNP_VERSION != 1000002 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." #endif @@ -764,6 +766,10 @@ class Call::Reader { inline bool getAllowThirdPartyTailCall() const; + inline bool getNoPromisePipelining() const; + + inline bool getOnlyPromisePipeline() const; + private: ::capnp::_::StructReader _reader; template @@ -821,6 +827,12 @@ class Call::Builder { inline bool getAllowThirdPartyTailCall(); inline void setAllowThirdPartyTailCall(bool value); + inline bool getNoPromisePipelining(); + inline void setNoPromisePipelining(bool value); + + inline bool getOnlyPromisePipeline(); + inline void setOnlyPromisePipeline(bool value); + private: ::capnp::_::StructBuilder _builder; template @@ -989,6 +1001,8 @@ class Return::Reader { inline bool hasAcceptFromThirdParty() const; inline ::capnp::AnyPointer::Reader getAcceptFromThirdParty() const; + inline bool getNoFinishNeeded() const; + private: ::capnp::_::StructReader _reader; template @@ -1057,6 +1071,9 @@ class Return::Builder { inline ::capnp::AnyPointer::Builder getAcceptFromThirdParty(); inline ::capnp::AnyPointer::Builder initAcceptFromThirdParty(); + inline bool getNoFinishNeeded(); + inline void setNoFinishNeeded(bool value); + private: ::capnp::_::StructBuilder _builder; template @@ -1104,6 +1121,8 @@ class Finish::Reader { inline bool getReleaseResultCaps() const; + inline bool getRequireEarlyCancellationWorkaround() const; + private: ::capnp::_::StructReader _reader; template @@ -1138,6 +1157,9 @@ class Finish::Builder { inline bool getReleaseResultCaps(); inline void setReleaseResultCaps(bool value); + inline bool getRequireEarlyCancellationWorkaround(); + inline void setRequireEarlyCancellationWorkaround(bool value); + private: ::capnp::_::StructBuilder _builder; template @@ -3404,6 +3426,34 @@ inline void Call::Builder::setAllowThirdPartyTailCall(bool value) { ::capnp::bounded<128>() * ::capnp::ELEMENTS, value); } +inline bool Call::Reader::getNoPromisePipelining() const { + return _reader.getDataField( + ::capnp::bounded<129>() * ::capnp::ELEMENTS); +} + +inline bool Call::Builder::getNoPromisePipelining() { + return _builder.getDataField( + ::capnp::bounded<129>() * ::capnp::ELEMENTS); +} +inline void Call::Builder::setNoPromisePipelining(bool value) { + _builder.setDataField( + ::capnp::bounded<129>() * ::capnp::ELEMENTS, value); +} + +inline bool Call::Reader::getOnlyPromisePipeline() const { + return _reader.getDataField( + ::capnp::bounded<130>() * ::capnp::ELEMENTS); +} + +inline bool Call::Builder::getOnlyPromisePipeline() { + return _builder.getDataField( + ::capnp::bounded<130>() * ::capnp::ELEMENTS); +} +inline void Call::Builder::setOnlyPromisePipeline(bool value) { + _builder.setDataField( + ::capnp::bounded<130>() * ::capnp::ELEMENTS, value); +} + inline ::capnp::rpc::Call::SendResultsTo::Which Call::SendResultsTo::Reader::which() const { return _reader.getDataField( ::capnp::bounded<3>() * ::capnp::ELEMENTS); @@ -3762,6 +3812,20 @@ inline ::capnp::AnyPointer::Builder Return::Builder::initAcceptFromThirdParty() return result; } +inline bool Return::Reader::getNoFinishNeeded() const { + return _reader.getDataField( + ::capnp::bounded<33>() * ::capnp::ELEMENTS); +} + +inline bool Return::Builder::getNoFinishNeeded() { + return _builder.getDataField( + ::capnp::bounded<33>() * ::capnp::ELEMENTS); +} +inline void Return::Builder::setNoFinishNeeded(bool value) { + _builder.setDataField( + ::capnp::bounded<33>() * ::capnp::ELEMENTS, value); +} + inline ::uint32_t Finish::Reader::getQuestionId() const { return _reader.getDataField< ::uint32_t>( ::capnp::bounded<0>() * ::capnp::ELEMENTS); @@ -3790,6 +3854,20 @@ inline void Finish::Builder::setReleaseResultCaps(bool value) { ::capnp::bounded<32>() * ::capnp::ELEMENTS, value, true); } +inline bool Finish::Reader::getRequireEarlyCancellationWorkaround() const { + return _reader.getDataField( + ::capnp::bounded<33>() * ::capnp::ELEMENTS, true); +} + +inline bool Finish::Builder::getRequireEarlyCancellationWorkaround() { + return _builder.getDataField( + ::capnp::bounded<33>() * ::capnp::ELEMENTS, true); +} +inline void Finish::Builder::setRequireEarlyCancellationWorkaround(bool value) { + _builder.setDataField( + ::capnp::bounded<33>() * ::capnp::ELEMENTS, value, true); +} + inline ::capnp::rpc::Resolve::Which Resolve::Reader::which() const { return _reader.getDataField( ::capnp::bounded<2>() * ::capnp::ELEMENTS); diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.h b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.h index 8a0dede4985..c4df2f04e2e 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/rpc.h @@ -21,7 +21,7 @@ #pragma once -#include "capability.h" +#include #include "rpc-prelude.h" CAPNP_BEGIN_HEADER @@ -36,6 +36,8 @@ class VatNetwork; template class SturdyRefRestorer; +class MessageReader; + template class BootstrapFactory: public _::BootstrapFactoryBase { // Interface that constructs per-client bootstrap interfaces. Use this if you want each client @@ -293,6 +295,16 @@ class IncomingRpcMessage { // Get the total size of the message, for flow control purposes. Although the caller could // also call getBody().targetSize(), doing that would walk the message tree, whereas typical // implementations can compute the size more cheaply by summing segment sizes. + + static bool isShortLivedRpcMessage(AnyPointer::Reader body); + // Helper function which computes whether the standard RpcSystem implementation would consider + // the given message body to be short-lived, meaning it will be dropped before the next message + // is read. This is useful to implement BufferedMessageStream::IsShortLivedCallback. + + static kj::Function getShortLivedCallback(); + // Returns a function that wraps isShortLivedRpcMessage(). The returned function type matches + // `BufferedMessageStream::IsShortLivedCallback` (defined in serialize-async.h), but we don't + // include that header here. }; class RpcFlowController { diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader-test.c++ index 8e7c2d749c9..c2b2651bf96 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader-test.c++ @@ -400,6 +400,36 @@ TEST(SchemaLoader, LoadStreaming) { KJ_EXPECT(results.getShortDisplayName() == "StreamResult", results.getShortDisplayName()); } +KJ_TEST("SchemaLoader placeholders are assumed to have caps") { + // Load TestCycle*NoCaps, but don't load its dependency TestAllTypes, so the loader has to assume + // there may be caps. + { + SchemaLoader loader; + Schema schemaA = loader.load(Schema::from().getProto()); + Schema schemaB = loader.load(Schema::from().getProto()); + loader.computeOptimizationHints(); + + KJ_EXPECT(schemaA.asStruct().mayContainCapabilities()); + KJ_EXPECT(schemaB.asStruct().mayContainCapabilities()); + } + + // Try again, but actually load TestAllTypes. Now we recognize there's no caps. + { + SchemaLoader loader; + Schema schemaA = loader.load(Schema::from().getProto()); + Schema schemaB = loader.load(Schema::from().getProto()); + loader.load(Schema::from().getProto()); + loader.computeOptimizationHints(); + + KJ_EXPECT(!schemaA.asStruct().mayContainCapabilities()); + KJ_EXPECT(!schemaB.asStruct().mayContainCapabilities()); + } + + // NOTE: computeOptimizationHints() is also tested in `schema-test.c++` where we test that + // various compiled types have the correct hints, which relies on the code generator having + // computed the hints. +} + } // namespace } // namespace _ (private) } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader.c++ index 154f37de0ca..7c056c50417 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader.c++ @@ -114,6 +114,8 @@ public: kj::Array getAllLoaded() const; + void computeOptimizationHints(); + void requireStructSize(uint64_t id, uint dataWordCount, uint pointerCount); // Require any struct nodes loaded with this ID -- in the past and in the future -- to have at // least the given sizes. Struct nodes that don't comply will simply be rewritten to comply. @@ -1827,6 +1829,175 @@ kj::Array SchemaLoader::Impl::getAllLoaded() const { return result; } +void SchemaLoader::Impl::computeOptimizationHints() { + kj::HashMap<_::RawSchema*, kj::Vector<_::RawSchema*>> undecided; + // This map contains schemas for which we haven't yet decided if they might have capabilities. + // They at least do not directly contain capabilities, but they can't be fully decided until + // the dependents are decided. + // + // Each entry maps to a list of other schemas whose decisions depend on this schema. When a + // schema in the map is discovered to contain capabilities, then all these dependents must also + // be presumed to contain capabilities. + + // First pass: Decide on the easy cases and populate the `undecided` map with hard cases. + for (auto& entry: schemas) { + _::RawSchema* schema = entry.value; + + // Default to assuming everything could contain caps. + schema->mayContainCapabilities = true; + + if (schema->lazyInitializer != nullptr) { + // Not initialized yet, so we have to be conservative and assume there could be capabilities. + continue; + } + + auto node = readMessageUnchecked(schema->encodedNode); + + if (!node.isStruct()) { + // Non-structs are irrelevant. + continue; + } + + auto structSchema = node.getStruct(); + + bool foundAnyCaps = false; + bool foundAnyStructs = false; + for (auto field: structSchema.getFields()) { + switch (field.which()) { + case schema::Field::GROUP: + foundAnyStructs = true; + break; + case schema::Field::SLOT: { + auto type = field.getSlot().getType(); + while (type.isList()) { + type = type.getList().getElementType(); + } + + switch (type.which()) { + case schema::Type::VOID: + case schema::Type::BOOL: + case schema::Type::INT8: + case schema::Type::INT16: + case schema::Type::INT32: + case schema::Type::INT64: + case schema::Type::UINT8: + case schema::Type::UINT16: + case schema::Type::UINT32: + case schema::Type::UINT64: + case schema::Type::FLOAT32: + case schema::Type::FLOAT64: + case schema::Type::TEXT: + case schema::Type::DATA: + case schema::Type::ENUM: + // Not a capability. + break; + + case schema::Type::STRUCT: + foundAnyStructs = true; + break; + + case schema::Type::ANY_POINTER: // could be a capability, or transitively contain one + case schema::Type::INTERFACE: // definitely a capability + foundAnyCaps = true; + break; + + case schema::Type::LIST: + KJ_UNREACHABLE; // handled above + } + break; + } + } + + if (foundAnyCaps) break; // no point continuing + } + + if (foundAnyCaps) { + // Definitely has capabilities, don't add to `undecided`. + } else if (!foundAnyStructs) { + // Definitely does NOT have capabilities. Go ahead and set the hint and don't add to + // `undecided`. + schema->mayContainCapabilities = false; + } else { + // Don't know yet. Mark as no-capabilities for now, but place in `undecided` set to review + // later. + schema->mayContainCapabilities = false; + undecided.insert(schema, {}); + } + } + + // Second pass: For all undecided schemas, check dependencies and register as dependents where + // needed. + kj::Vector<_::RawSchema*> decisions; // Schemas that have become decided. + for (auto& entry: undecided) { + auto schema = entry.key; + + auto node = readMessageUnchecked(schema->encodedNode).getStruct(); + + for (auto field: node.getFields()) { + kj::Maybe depId; + + switch (field.which()) { + case schema::Field::GROUP: + depId = field.getGroup().getTypeId(); + break; + case schema::Field::SLOT: { + auto type = field.getSlot().getType(); + while (type.isList()) { + type = type.getList().getElementType(); + } + if (type.isStruct()) { + depId = type.getStruct().getTypeId(); + } + break; + } + } + + KJ_IF_MAYBE(d, depId) { + _::RawSchema* dep = KJ_ASSERT_NONNULL(schemas.find(*d)); + + if (dep->mayContainCapabilities) { + // Oops, this dependency is already known to have capabilities. So that means the current + // schema also has capabilities, transitively. Mark it as such. + schema->mayContainCapabilities = true; + + // Schedule this schema for removal later. + decisions.add(schema); + + // Might as well end the loop early. + break; + } else KJ_IF_MAYBE(undecidedEntry, undecided.find(dep)) { + // This dependency is in the undecided set. Register interest in it. + undecidedEntry->add(schema); + } else { + // This dependency is decided, and the decision is that it has no capabilities. So it + // has no impact on the dependent. + } + } + } + } + + // Third pass: For each decision we made, remove it and propagate to its dependents. + while (!decisions.empty()) { + _::RawSchema* decision = decisions.back(); + decisions.removeLast(); + + auto& entry = KJ_ASSERT_NONNULL(undecided.findEntry(decision)); + for (auto& dependent: entry.value) { + if (!dependent->mayContainCapabilities) { + // The dependent was not previously decided. But, we now know it has a dependency which has + // capabilities, therefore we can decide the dependent. + dependent->mayContainCapabilities = true; + decisions.add(dependent); + } + } + undecided.erase(entry); + } + + // Everything that is left in `undecided` must only be waiting on other undecided schemas. We + // can therefore decide that none of them have any capabilities. We marked them as such + // earlier so now we're all done. +} + void SchemaLoader::Impl::requireStructSize(uint64_t id, uint dataWordCount, uint pointerCount) { structSizeRequirements.upsert(id, { uint16_t(dataWordCount), uint16_t(pointerCount) }, [&](RequiredSize& existingValue, RequiredSize&& newValue) { @@ -2086,6 +2257,10 @@ kj::Array SchemaLoader::getAllLoaded() const { return impl.lockShared()->get()->getAllLoaded(); } +void SchemaLoader::computeOptimizationHints() { + impl.lockExclusive()->get()->computeOptimizationHints(); +} + void SchemaLoader::loadNative(const _::RawSchema* nativeSchema) { impl.lockExclusive()->get()->loadNative(nativeSchema); } diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader.h b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader.h index 90533158eb9..5db8364c428 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-loader.h @@ -64,7 +64,7 @@ class SchemaLoader { // that isn't already loaded. ~SchemaLoader() noexcept(false); - KJ_DISALLOW_COPY(SchemaLoader); + KJ_DISALLOW_COPY_AND_MOVE(SchemaLoader); Schema get(uint64_t id, schema::Brand::Reader brand = schema::Brand::Reader(), Schema scope = Schema()) const; @@ -149,6 +149,19 @@ class SchemaLoader { // loadCompiledTypeAndDependencies() in order to get a flat list of all of T's transitive // dependencies. + void computeOptimizationHints(); + // Call after all interesting schemas have been loaded to compute optimization hints. In + // particular, this initializes `hasNoCapabilities` for every struct type. Before this is called, + // that value is initialized to false for all types (which ensures correct behavior but does not + // allow the optimization). + // + // If any loaded struct types contain fields of types for which no schema has been loaded, they + // will be presumed to possibly contain capabilities. `LazyLoadCallback` will NOT be invoked to + // load any types that haven't been loaded yet. + // + // TODO(someday): Perhaps we could dynamically initialize the hints on-demand, but it would be + // much more work to implement. + private: class Validator; class CompatibilityChecker; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser-test.c++ index c9435943ffd..5bc618859c7 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser-test.c++ @@ -272,5 +272,27 @@ TEST(SchemaParser, SourceInfo) { expectSourceInfo(thud.getSourceInfo(), 0xcca9972702b730b4, "post-comment\n", {}); } +TEST(SchemaParser, SetFileIdsRequired) { + FakeFileReader reader; + reader.add("no-file-id.capnp", + "const foo :Int32 = 123;\n"); + + { + SchemaParser parser; + parser.setDiskFilesystem(reader); + + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("File does not declare an ID.", + parser.parseDiskFile("no-file-id.capnp", "no-file-id.capnp", nullptr)); + } + { + SchemaParser parser; + parser.setDiskFilesystem(reader); + parser.setFileIdsRequired(false); + + auto fileSchema = parser.parseDiskFile("no-file-id.capnp", "no-file-id.capnp", nullptr); + KJ_EXPECT(fileSchema.getNested("foo").asConst().as() == 123); + } +} + } // namespace } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser.c++ index 909be25cc8b..b5aeec12dae 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser.c++ @@ -88,7 +88,7 @@ public: compiler::lex(content, statements, *this); auto parsed = orphanage.newOrphan(); - compiler::parseFile(statements.getStatements(), parsed.get(), *this); + compiler::parseFile(statements.getStatements(), parsed.get(), *this, parser.fileIdsRequired); return parsed; } @@ -148,7 +148,7 @@ private: namespace { struct SchemaFileHash { - inline bool operator()(const SchemaFile* f) const { + inline size_t operator()(const SchemaFile* f) const { return f->hashCode(); } }; @@ -313,6 +313,10 @@ SchemaLoader& SchemaParser::getLoader() { return impl->compiler.getLoader(); } +const SchemaLoader& SchemaParser::getLoader() const { + return impl->compiler.getLoader(); +} + kj::Maybe ParsedSchema::findNested(kj::StringPtr name) const { // TODO(someday): lookup() doesn't handle generics correctly. Use the ModuleScope/CompiledType // interface instead. We can also add an applybrand() method to ParsedSchema using those diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser.h b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser.h index 283b8cea638..6c48763771f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-parser.h @@ -141,14 +141,35 @@ class SchemaParser { getLoader().loadCompiledTypeAndDependencies(); } + kj::Array getAllLoaded() const { + // Gets an array of all schema nodes that have been parsed so far. + return getLoader().getAllLoaded(); + } + + void setFileIdsRequired(bool value) { fileIdsRequired = value; } + // By befault, capnp files must declare a file-level type ID (like `@0xbe702824338d3f7f;`). + // Use `setFileIdsReqired(false)` to lift this requirement. + // + // If no ID is specified, a random one will be assigned. This will cause all types declared in + // the file to have randomized IDs as well (unless they declare an ID explicitly), which means + // that parsing the same file twice will appear to to produce a totally new, incompatible set of + // types. In particular, this means that you will not be able to use any interface types in the + // file for RPC, since the RPC protocol uses type IDs to identify methods. + // + // Setting this false is particularly useful when using Cap'n Proto as a config format. Typically + // type IDs are irrelevant for config files, and the requirement to specify one is cumbersome. + // For this reason, `capnp eval` does not require type ID to be present. + private: struct Impl; struct DiskFileCompat; class ModuleImpl; kj::Own impl; mutable bool hadErrors = false; + bool fileIdsRequired = true; ModuleImpl& getModuleImpl(kj::Own&& file) const; + const SchemaLoader& getLoader() const; SchemaLoader& getLoader(); friend class ParsedSchema; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-test.c++ index f33152e2c52..94b3c9a470e 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema-test.c++ @@ -371,6 +371,43 @@ TEST(Schema, Generics) { } } +KJ_TEST("StructSchema::hasNoCapabilites()") { + // At present, TestAllTypes doesn't actually cover interfaces or AnyPointer. + KJ_EXPECT(!Schema::from().mayContainCapabilities()); + + KJ_EXPECT(!Schema::from().mayContainCapabilities()); + + KJ_EXPECT(Schema::from().mayContainCapabilities()); + KJ_EXPECT(Schema::from().mayContainCapabilities()); + + KJ_EXPECT(!Schema::from().mayContainCapabilities()); + KJ_EXPECT(!Schema::from().mayContainCapabilities()); + + KJ_EXPECT(!Schema::from().mayContainCapabilities()); + + // Generic arguments could be capabilities. + KJ_EXPECT(Schema::from::Inner>().mayContainCapabilities()); + + KJ_EXPECT(!Schema::from().mayContainCapabilities()); + KJ_EXPECT(!Schema::from().mayContainCapabilities()); + + KJ_EXPECT(Schema::from().mayContainCapabilities()); + KJ_EXPECT(Schema::from().mayContainCapabilities()); +} + +KJ_TEST("list-of-enum as generic type parameter has working schema") { + // Tests for a bug where when a list-of-enum type was used as a type parameter to a generic, + // the schema would be constructed wrong. + auto field = Schema::from() + .getFieldByName("bindEnumList").getType().asStruct() + .getFieldByName("foo"); + auto type = field.getType(); + KJ_ASSERT(type.isList()); + auto elementType = type.asList().getElementType(); + KJ_ASSERT(elementType.isEnum()); + KJ_ASSERT(elementType.asEnum() == Schema::from()); +} + } // namespace } // namespace _ (private) } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema.c++ index 8df65313a62..9ec5df62eae 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema.c++ @@ -265,6 +265,19 @@ Schema::BrandArgumentList Schema::getBrandArgumentsAtScope(uint64_t scopeId) con return BrandArgumentList(scopeId, raw->isUnbound()); } +kj::Array Schema::getGenericScopeIds() const { + if (!getProto().getIsGeneric()) + return nullptr; + + auto result = kj::heapArray(raw->scopeCount); + for (auto iScope: kj::indices(result)) { + result[iScope] = raw->scopes[iScope].typeId; + } + + return result; +} + + StructSchema Schema::asStruct() const { KJ_REQUIRE(getProto().isStruct(), "Tried to use non-struct schema as a struct.", getProto().getDisplayName()) { diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema.capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema.capnp.c++ index efe699fd067..1b7c7c2ef87 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema.capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema.capnp.c++ @@ -248,7 +248,7 @@ static const uint16_t m_e682ab4cf923a417[] = {11, 5, 10, 1, 2, 8, 6, 0, 9, 13, 4 static const uint16_t i_e682ab4cf923a417[] = {6, 7, 8, 9, 10, 11, 0, 1, 2, 3, 4, 5, 12, 13}; const ::capnp::_::RawSchema s_e682ab4cf923a417 = { 0xe682ab4cf923a417, b_e682ab4cf923a417.words, 225, d_e682ab4cf923a417, m_e682ab4cf923a417, - 8, 14, i_e682ab4cf923a417, nullptr, nullptr, { &s_e682ab4cf923a417, nullptr, nullptr, 0, 0, nullptr } + 8, 14, i_e682ab4cf923a417, nullptr, nullptr, { &s_e682ab4cf923a417, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<34> b_b9521bccf10fa3b1 = { @@ -293,7 +293,7 @@ static const uint16_t m_b9521bccf10fa3b1[] = {0}; static const uint16_t i_b9521bccf10fa3b1[] = {0}; const ::capnp::_::RawSchema s_b9521bccf10fa3b1 = { 0xb9521bccf10fa3b1, b_b9521bccf10fa3b1.words, 34, nullptr, m_b9521bccf10fa3b1, - 0, 1, i_b9521bccf10fa3b1, nullptr, nullptr, { &s_b9521bccf10fa3b1, nullptr, nullptr, 0, 0, nullptr } + 0, 1, i_b9521bccf10fa3b1, nullptr, nullptr, { &s_b9521bccf10fa3b1, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<49> b_debf55bbfa0fc242 = { @@ -353,7 +353,7 @@ static const uint16_t m_debf55bbfa0fc242[] = {1, 0}; static const uint16_t i_debf55bbfa0fc242[] = {0, 1}; const ::capnp::_::RawSchema s_debf55bbfa0fc242 = { 0xdebf55bbfa0fc242, b_debf55bbfa0fc242.words, 49, nullptr, m_debf55bbfa0fc242, - 0, 2, i_debf55bbfa0fc242, nullptr, nullptr, { &s_debf55bbfa0fc242, nullptr, nullptr, 0, 0, nullptr } + 0, 2, i_debf55bbfa0fc242, nullptr, nullptr, { &s_debf55bbfa0fc242, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<72> b_f38e1de3041357ae = { @@ -439,7 +439,7 @@ static const uint16_t m_f38e1de3041357ae[] = {1, 0, 2}; static const uint16_t i_f38e1de3041357ae[] = {0, 1, 2}; const ::capnp::_::RawSchema s_f38e1de3041357ae = { 0xf38e1de3041357ae, b_f38e1de3041357ae.words, 72, d_f38e1de3041357ae, m_f38e1de3041357ae, - 1, 3, i_f38e1de3041357ae, nullptr, nullptr, { &s_f38e1de3041357ae, nullptr, nullptr, 0, 0, nullptr } + 1, 3, i_f38e1de3041357ae, nullptr, nullptr, { &s_f38e1de3041357ae, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<36> b_c2ba9038898e1fa2 = { @@ -486,7 +486,7 @@ static const uint16_t m_c2ba9038898e1fa2[] = {0}; static const uint16_t i_c2ba9038898e1fa2[] = {0}; const ::capnp::_::RawSchema s_c2ba9038898e1fa2 = { 0xc2ba9038898e1fa2, b_c2ba9038898e1fa2.words, 36, nullptr, m_c2ba9038898e1fa2, - 0, 1, i_c2ba9038898e1fa2, nullptr, nullptr, { &s_c2ba9038898e1fa2, nullptr, nullptr, 0, 0, nullptr } + 0, 1, i_c2ba9038898e1fa2, nullptr, nullptr, { &s_c2ba9038898e1fa2, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<134> b_9ea0b19b37fb4435 = { @@ -636,7 +636,7 @@ static const uint16_t m_9ea0b19b37fb4435[] = {0, 4, 5, 6, 3, 1, 2}; static const uint16_t i_9ea0b19b37fb4435[] = {0, 1, 2, 3, 4, 5, 6}; const ::capnp::_::RawSchema s_9ea0b19b37fb4435 = { 0x9ea0b19b37fb4435, b_9ea0b19b37fb4435.words, 134, d_9ea0b19b37fb4435, m_9ea0b19b37fb4435, - 3, 7, i_9ea0b19b37fb4435, nullptr, nullptr, { &s_9ea0b19b37fb4435, nullptr, nullptr, 0, 0, nullptr } + 3, 7, i_9ea0b19b37fb4435, nullptr, nullptr, { &s_9ea0b19b37fb4435, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<37> b_b54ab3364333f598 = { @@ -688,7 +688,7 @@ static const uint16_t m_b54ab3364333f598[] = {0}; static const uint16_t i_b54ab3364333f598[] = {0}; const ::capnp::_::RawSchema s_b54ab3364333f598 = { 0xb54ab3364333f598, b_b54ab3364333f598.words, 37, d_b54ab3364333f598, m_b54ab3364333f598, - 2, 1, i_b54ab3364333f598, nullptr, nullptr, { &s_b54ab3364333f598, nullptr, nullptr, 0, 0, nullptr } + 2, 1, i_b54ab3364333f598, nullptr, nullptr, { &s_b54ab3364333f598, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<57> b_e82753cff0c2218f = { @@ -761,7 +761,7 @@ static const uint16_t m_e82753cff0c2218f[] = {0, 1}; static const uint16_t i_e82753cff0c2218f[] = {0, 1}; const ::capnp::_::RawSchema s_e82753cff0c2218f = { 0xe82753cff0c2218f, b_e82753cff0c2218f.words, 57, d_e82753cff0c2218f, m_e82753cff0c2218f, - 3, 2, i_e82753cff0c2218f, nullptr, nullptr, { &s_e82753cff0c2218f, nullptr, nullptr, 0, 0, nullptr } + 3, 2, i_e82753cff0c2218f, nullptr, nullptr, { &s_e82753cff0c2218f, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<47> b_b18aa5ac7a0d9420 = { @@ -824,7 +824,7 @@ static const uint16_t m_b18aa5ac7a0d9420[] = {0, 1}; static const uint16_t i_b18aa5ac7a0d9420[] = {0, 1}; const ::capnp::_::RawSchema s_b18aa5ac7a0d9420 = { 0xb18aa5ac7a0d9420, b_b18aa5ac7a0d9420.words, 47, d_b18aa5ac7a0d9420, m_b18aa5ac7a0d9420, - 3, 2, i_b18aa5ac7a0d9420, nullptr, nullptr, { &s_b18aa5ac7a0d9420, nullptr, nullptr, 0, 0, nullptr } + 3, 2, i_b18aa5ac7a0d9420, nullptr, nullptr, { &s_b18aa5ac7a0d9420, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<228> b_ec1619d4400a0290 = { @@ -1067,7 +1067,7 @@ static const uint16_t m_ec1619d4400a0290[] = {12, 2, 3, 4, 6, 1, 8, 9, 10, 11, 5 static const uint16_t i_ec1619d4400a0290[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}; const ::capnp::_::RawSchema s_ec1619d4400a0290 = { 0xec1619d4400a0290, b_ec1619d4400a0290.words, 228, d_ec1619d4400a0290, m_ec1619d4400a0290, - 2, 13, i_ec1619d4400a0290, nullptr, nullptr, { &s_ec1619d4400a0290, nullptr, nullptr, 0, 0, nullptr } + 2, 13, i_ec1619d4400a0290, nullptr, nullptr, { &s_ec1619d4400a0290, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<114> b_9aad50a41f4af45f = { @@ -1198,7 +1198,7 @@ static const uint16_t m_9aad50a41f4af45f[] = {2, 1, 3, 5, 0, 6, 4}; static const uint16_t i_9aad50a41f4af45f[] = {4, 5, 0, 1, 2, 3, 6}; const ::capnp::_::RawSchema s_9aad50a41f4af45f = { 0x9aad50a41f4af45f, b_9aad50a41f4af45f.words, 114, d_9aad50a41f4af45f, m_9aad50a41f4af45f, - 4, 7, i_9aad50a41f4af45f, nullptr, nullptr, { &s_9aad50a41f4af45f, nullptr, nullptr, 0, 0, nullptr } + 4, 7, i_9aad50a41f4af45f, nullptr, nullptr, { &s_9aad50a41f4af45f, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<25> b_97b14cbe7cfec712 = { @@ -1232,7 +1232,7 @@ static const ::capnp::_::AlignedData<25> b_97b14cbe7cfec712 = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_97b14cbe7cfec712 = { 0x97b14cbe7cfec712, b_97b14cbe7cfec712.words, 25, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_97b14cbe7cfec712, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_97b14cbe7cfec712, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<80> b_c42305476bb4746f = { @@ -1328,7 +1328,7 @@ static const uint16_t m_c42305476bb4746f[] = {2, 3, 0, 1}; static const uint16_t i_c42305476bb4746f[] = {0, 1, 2, 3}; const ::capnp::_::RawSchema s_c42305476bb4746f = { 0xc42305476bb4746f, b_c42305476bb4746f.words, 80, d_c42305476bb4746f, m_c42305476bb4746f, - 3, 4, i_c42305476bb4746f, nullptr, nullptr, { &s_c42305476bb4746f, nullptr, nullptr, 0, 0, nullptr } + 3, 4, i_c42305476bb4746f, nullptr, nullptr, { &s_c42305476bb4746f, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<32> b_cafccddb68db1d11 = { @@ -1374,7 +1374,7 @@ static const uint16_t m_cafccddb68db1d11[] = {0}; static const uint16_t i_cafccddb68db1d11[] = {0}; const ::capnp::_::RawSchema s_cafccddb68db1d11 = { 0xcafccddb68db1d11, b_cafccddb68db1d11.words, 32, d_cafccddb68db1d11, m_cafccddb68db1d11, - 1, 1, i_cafccddb68db1d11, nullptr, nullptr, { &s_cafccddb68db1d11, nullptr, nullptr, 0, 0, nullptr } + 1, 1, i_cafccddb68db1d11, nullptr, nullptr, { &s_cafccddb68db1d11, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<50> b_bb90d5c287870be6 = { @@ -1438,7 +1438,7 @@ static const uint16_t m_bb90d5c287870be6[] = {1, 0}; static const uint16_t i_bb90d5c287870be6[] = {0, 1}; const ::capnp::_::RawSchema s_bb90d5c287870be6 = { 0xbb90d5c287870be6, b_bb90d5c287870be6.words, 50, d_bb90d5c287870be6, m_bb90d5c287870be6, - 1, 2, i_bb90d5c287870be6, nullptr, nullptr, { &s_bb90d5c287870be6, nullptr, nullptr, 0, 0, nullptr } + 1, 2, i_bb90d5c287870be6, nullptr, nullptr, { &s_bb90d5c287870be6, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<69> b_978a7cebdc549a4d = { @@ -1521,7 +1521,7 @@ static const uint16_t m_978a7cebdc549a4d[] = {2, 1, 0}; static const uint16_t i_978a7cebdc549a4d[] = {0, 1, 2}; const ::capnp::_::RawSchema s_978a7cebdc549a4d = { 0x978a7cebdc549a4d, b_978a7cebdc549a4d.words, 69, d_978a7cebdc549a4d, m_978a7cebdc549a4d, - 1, 3, i_978a7cebdc549a4d, nullptr, nullptr, { &s_978a7cebdc549a4d, nullptr, nullptr, 0, 0, nullptr } + 1, 3, i_978a7cebdc549a4d, nullptr, nullptr, { &s_978a7cebdc549a4d, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<48> b_a9962a9ed0a4d7f8 = { @@ -1583,7 +1583,7 @@ static const uint16_t m_a9962a9ed0a4d7f8[] = {1, 0}; static const uint16_t i_a9962a9ed0a4d7f8[] = {0, 1}; const ::capnp::_::RawSchema s_a9962a9ed0a4d7f8 = { 0xa9962a9ed0a4d7f8, b_a9962a9ed0a4d7f8.words, 48, d_a9962a9ed0a4d7f8, m_a9962a9ed0a4d7f8, - 1, 2, i_a9962a9ed0a4d7f8, nullptr, nullptr, { &s_a9962a9ed0a4d7f8, nullptr, nullptr, 0, 0, nullptr } + 1, 2, i_a9962a9ed0a4d7f8, nullptr, nullptr, { &s_a9962a9ed0a4d7f8, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<155> b_9500cce23b334d80 = { @@ -1754,7 +1754,7 @@ static const uint16_t m_9500cce23b334d80[] = {4, 1, 7, 0, 5, 2, 6, 3}; static const uint16_t i_9500cce23b334d80[] = {0, 1, 2, 3, 4, 5, 6, 7}; const ::capnp::_::RawSchema s_9500cce23b334d80 = { 0x9500cce23b334d80, b_9500cce23b334d80.words, 155, d_9500cce23b334d80, m_9500cce23b334d80, - 3, 8, i_9500cce23b334d80, nullptr, nullptr, { &s_9500cce23b334d80, nullptr, nullptr, 0, 0, nullptr } + 3, 8, i_9500cce23b334d80, nullptr, nullptr, { &s_9500cce23b334d80, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<269> b_d07378ede1f9cc60 = { @@ -2041,7 +2041,7 @@ static const uint16_t m_d07378ede1f9cc60[] = {18, 1, 13, 15, 10, 11, 3, 4, 5, 2, static const uint16_t i_d07378ede1f9cc60[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18}; const ::capnp::_::RawSchema s_d07378ede1f9cc60 = { 0xd07378ede1f9cc60, b_d07378ede1f9cc60.words, 269, d_d07378ede1f9cc60, m_d07378ede1f9cc60, - 5, 19, i_d07378ede1f9cc60, nullptr, nullptr, { &s_d07378ede1f9cc60, nullptr, nullptr, 0, 0, nullptr } + 5, 19, i_d07378ede1f9cc60, nullptr, nullptr, { &s_d07378ede1f9cc60, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<33> b_87e739250a60ea97 = { @@ -2088,7 +2088,7 @@ static const uint16_t m_87e739250a60ea97[] = {0}; static const uint16_t i_87e739250a60ea97[] = {0}; const ::capnp::_::RawSchema s_87e739250a60ea97 = { 0x87e739250a60ea97, b_87e739250a60ea97.words, 33, d_87e739250a60ea97, m_87e739250a60ea97, - 1, 1, i_87e739250a60ea97, nullptr, nullptr, { &s_87e739250a60ea97, nullptr, nullptr, 0, 0, nullptr } + 1, 1, i_87e739250a60ea97, nullptr, nullptr, { &s_87e739250a60ea97, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<47> b_9e0e78711a7f87a9 = { @@ -2150,7 +2150,7 @@ static const uint16_t m_9e0e78711a7f87a9[] = {1, 0}; static const uint16_t i_9e0e78711a7f87a9[] = {0, 1}; const ::capnp::_::RawSchema s_9e0e78711a7f87a9 = { 0x9e0e78711a7f87a9, b_9e0e78711a7f87a9.words, 47, d_9e0e78711a7f87a9, m_9e0e78711a7f87a9, - 2, 2, i_9e0e78711a7f87a9, nullptr, nullptr, { &s_9e0e78711a7f87a9, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_9e0e78711a7f87a9, nullptr, nullptr, { &s_9e0e78711a7f87a9, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<47> b_ac3a6f60ef4cc6d3 = { @@ -2212,7 +2212,7 @@ static const uint16_t m_ac3a6f60ef4cc6d3[] = {1, 0}; static const uint16_t i_ac3a6f60ef4cc6d3[] = {0, 1}; const ::capnp::_::RawSchema s_ac3a6f60ef4cc6d3 = { 0xac3a6f60ef4cc6d3, b_ac3a6f60ef4cc6d3.words, 47, d_ac3a6f60ef4cc6d3, m_ac3a6f60ef4cc6d3, - 2, 2, i_ac3a6f60ef4cc6d3, nullptr, nullptr, { &s_ac3a6f60ef4cc6d3, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_ac3a6f60ef4cc6d3, nullptr, nullptr, { &s_ac3a6f60ef4cc6d3, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<48> b_ed8bca69f7fb0cbf = { @@ -2275,7 +2275,7 @@ static const uint16_t m_ed8bca69f7fb0cbf[] = {1, 0}; static const uint16_t i_ed8bca69f7fb0cbf[] = {0, 1}; const ::capnp::_::RawSchema s_ed8bca69f7fb0cbf = { 0xed8bca69f7fb0cbf, b_ed8bca69f7fb0cbf.words, 48, d_ed8bca69f7fb0cbf, m_ed8bca69f7fb0cbf, - 2, 2, i_ed8bca69f7fb0cbf, nullptr, nullptr, { &s_ed8bca69f7fb0cbf, nullptr, nullptr, 0, 0, nullptr } + 2, 2, i_ed8bca69f7fb0cbf, nullptr, nullptr, { &s_ed8bca69f7fb0cbf, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<46> b_c2573fe8a23e49f1 = { @@ -2338,7 +2338,7 @@ static const uint16_t m_c2573fe8a23e49f1[] = {2, 1, 0}; static const uint16_t i_c2573fe8a23e49f1[] = {0, 1, 2}; const ::capnp::_::RawSchema s_c2573fe8a23e49f1 = { 0xc2573fe8a23e49f1, b_c2573fe8a23e49f1.words, 46, d_c2573fe8a23e49f1, m_c2573fe8a23e49f1, - 4, 3, i_c2573fe8a23e49f1, nullptr, nullptr, { &s_c2573fe8a23e49f1, nullptr, nullptr, 0, 0, nullptr } + 4, 3, i_c2573fe8a23e49f1, nullptr, nullptr, { &s_c2573fe8a23e49f1, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<81> b_8e3b5f79fe593656 = { @@ -2433,7 +2433,7 @@ static const uint16_t m_8e3b5f79fe593656[] = {0, 3, 2, 1}; static const uint16_t i_8e3b5f79fe593656[] = {0, 1, 2, 3}; const ::capnp::_::RawSchema s_8e3b5f79fe593656 = { 0x8e3b5f79fe593656, b_8e3b5f79fe593656.words, 81, d_8e3b5f79fe593656, m_8e3b5f79fe593656, - 1, 4, i_8e3b5f79fe593656, nullptr, nullptr, { &s_8e3b5f79fe593656, nullptr, nullptr, 0, 0, nullptr } + 1, 4, i_8e3b5f79fe593656, nullptr, nullptr, { &s_8e3b5f79fe593656, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<50> b_9dd1f724f4614a85 = { @@ -2497,7 +2497,7 @@ static const uint16_t m_9dd1f724f4614a85[] = {1, 0}; static const uint16_t i_9dd1f724f4614a85[] = {0, 1}; const ::capnp::_::RawSchema s_9dd1f724f4614a85 = { 0x9dd1f724f4614a85, b_9dd1f724f4614a85.words, 50, d_9dd1f724f4614a85, m_9dd1f724f4614a85, - 1, 2, i_9dd1f724f4614a85, nullptr, nullptr, { &s_9dd1f724f4614a85, nullptr, nullptr, 0, 0, nullptr } + 1, 2, i_9dd1f724f4614a85, nullptr, nullptr, { &s_9dd1f724f4614a85, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<37> b_baefc9120c56e274 = { @@ -2548,7 +2548,7 @@ static const uint16_t m_baefc9120c56e274[] = {0}; static const uint16_t i_baefc9120c56e274[] = {0}; const ::capnp::_::RawSchema s_baefc9120c56e274 = { 0xbaefc9120c56e274, b_baefc9120c56e274.words, 37, d_baefc9120c56e274, m_baefc9120c56e274, - 1, 1, i_baefc9120c56e274, nullptr, nullptr, { &s_baefc9120c56e274, nullptr, nullptr, 0, 0, nullptr } + 1, 1, i_baefc9120c56e274, nullptr, nullptr, { &s_baefc9120c56e274, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<43> b_903455f06065422b = { @@ -2605,7 +2605,7 @@ static const uint16_t m_903455f06065422b[] = {0}; static const uint16_t i_903455f06065422b[] = {0}; const ::capnp::_::RawSchema s_903455f06065422b = { 0x903455f06065422b, b_903455f06065422b.words, 43, d_903455f06065422b, m_903455f06065422b, - 1, 1, i_903455f06065422b, nullptr, nullptr, { &s_903455f06065422b, nullptr, nullptr, 0, 0, nullptr } + 1, 1, i_903455f06065422b, nullptr, nullptr, { &s_903455f06065422b, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<67> b_abd73485a9636bc9 = { @@ -2686,7 +2686,7 @@ static const uint16_t m_abd73485a9636bc9[] = {1, 2, 0}; static const uint16_t i_abd73485a9636bc9[] = {1, 2, 0}; const ::capnp::_::RawSchema s_abd73485a9636bc9 = { 0xabd73485a9636bc9, b_abd73485a9636bc9.words, 67, d_abd73485a9636bc9, m_abd73485a9636bc9, - 1, 3, i_abd73485a9636bc9, nullptr, nullptr, { &s_abd73485a9636bc9, nullptr, nullptr, 0, 0, nullptr } + 1, 3, i_abd73485a9636bc9, nullptr, nullptr, { &s_abd73485a9636bc9, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<49> b_c863cd16969ee7fc = { @@ -2749,7 +2749,7 @@ static const uint16_t m_c863cd16969ee7fc[] = {1, 0}; static const uint16_t i_c863cd16969ee7fc[] = {0, 1}; const ::capnp::_::RawSchema s_c863cd16969ee7fc = { 0xc863cd16969ee7fc, b_c863cd16969ee7fc.words, 49, d_c863cd16969ee7fc, m_c863cd16969ee7fc, - 1, 2, i_c863cd16969ee7fc, nullptr, nullptr, { &s_c863cd16969ee7fc, nullptr, nullptr, 0, 0, nullptr } + 1, 2, i_c863cd16969ee7fc, nullptr, nullptr, { &s_c863cd16969ee7fc, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<305> b_ce23dcd2d7b00c9b = { @@ -3065,7 +3065,7 @@ static const uint16_t m_ce23dcd2d7b00c9b[] = {18, 1, 13, 15, 10, 11, 3, 4, 5, 2, static const uint16_t i_ce23dcd2d7b00c9b[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18}; const ::capnp::_::RawSchema s_ce23dcd2d7b00c9b = { 0xce23dcd2d7b00c9b, b_ce23dcd2d7b00c9b.words, 305, nullptr, m_ce23dcd2d7b00c9b, - 0, 19, i_ce23dcd2d7b00c9b, nullptr, nullptr, { &s_ce23dcd2d7b00c9b, nullptr, nullptr, 0, 0, nullptr } + 0, 19, i_ce23dcd2d7b00c9b, nullptr, nullptr, { &s_ce23dcd2d7b00c9b, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<63> b_f1c8950dab257542 = { @@ -3143,7 +3143,7 @@ static const uint16_t m_f1c8950dab257542[] = {2, 0, 1}; static const uint16_t i_f1c8950dab257542[] = {0, 1, 2}; const ::capnp::_::RawSchema s_f1c8950dab257542 = { 0xf1c8950dab257542, b_f1c8950dab257542.words, 63, d_f1c8950dab257542, m_f1c8950dab257542, - 2, 3, i_f1c8950dab257542, nullptr, nullptr, { &s_f1c8950dab257542, nullptr, nullptr, 0, 0, nullptr } + 2, 3, i_f1c8950dab257542, nullptr, nullptr, { &s_f1c8950dab257542, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<54> b_d1958f7dba521926 = { @@ -3207,7 +3207,7 @@ static const ::capnp::_::AlignedData<54> b_d1958f7dba521926 = { static const uint16_t m_d1958f7dba521926[] = {1, 2, 5, 0, 4, 7, 6, 3}; const ::capnp::_::RawSchema s_d1958f7dba521926 = { 0xd1958f7dba521926, b_d1958f7dba521926.words, 54, nullptr, m_d1958f7dba521926, - 0, 8, nullptr, nullptr, nullptr, { &s_d1958f7dba521926, nullptr, nullptr, 0, 0, nullptr } + 0, 8, nullptr, nullptr, nullptr, { &s_d1958f7dba521926, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE CAPNP_DEFINE_ENUM(ElementSize_d1958f7dba521926, d1958f7dba521926); @@ -3282,7 +3282,7 @@ static const uint16_t m_d85d305b7d839963[] = {0, 2, 1}; static const uint16_t i_d85d305b7d839963[] = {0, 1, 2}; const ::capnp::_::RawSchema s_d85d305b7d839963 = { 0xd85d305b7d839963, b_d85d305b7d839963.words, 63, nullptr, m_d85d305b7d839963, - 0, 3, i_d85d305b7d839963, nullptr, nullptr, { &s_d85d305b7d839963, nullptr, nullptr, 0, 0, nullptr } + 0, 3, i_d85d305b7d839963, nullptr, nullptr, { &s_d85d305b7d839963, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<98> b_bfc546f6210ad7ce = { @@ -3397,7 +3397,7 @@ static const uint16_t m_bfc546f6210ad7ce[] = {2, 0, 1, 3}; static const uint16_t i_bfc546f6210ad7ce[] = {0, 1, 2, 3}; const ::capnp::_::RawSchema s_bfc546f6210ad7ce = { 0xbfc546f6210ad7ce, b_bfc546f6210ad7ce.words, 98, d_bfc546f6210ad7ce, m_bfc546f6210ad7ce, - 4, 4, i_bfc546f6210ad7ce, nullptr, nullptr, { &s_bfc546f6210ad7ce, nullptr, nullptr, 0, 0, nullptr } + 4, 4, i_bfc546f6210ad7ce, nullptr, nullptr, { &s_bfc546f6210ad7ce, nullptr, nullptr, 0, 0, nullptr }, true }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<74> b_cfea0eb02e810062 = { @@ -3485,7 +3485,7 @@ static const uint16_t m_cfea0eb02e810062[] = {1, 0, 2}; static const uint16_t i_cfea0eb02e810062[] = {0, 1, 2}; const ::capnp::_::RawSchema s_cfea0eb02e810062 = { 0xcfea0eb02e810062, b_cfea0eb02e810062.words, 74, d_cfea0eb02e810062, m_cfea0eb02e810062, - 1, 3, i_cfea0eb02e810062, nullptr, nullptr, { &s_cfea0eb02e810062, nullptr, nullptr, 0, 0, nullptr } + 1, 3, i_cfea0eb02e810062, nullptr, nullptr, { &s_cfea0eb02e810062, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE static const ::capnp::_::AlignedData<52> b_ae504193122357e5 = { @@ -3548,7 +3548,7 @@ static const uint16_t m_ae504193122357e5[] = {0, 1}; static const uint16_t i_ae504193122357e5[] = {0, 1}; const ::capnp::_::RawSchema s_ae504193122357e5 = { 0xae504193122357e5, b_ae504193122357e5.words, 52, nullptr, m_ae504193122357e5, - 0, 2, i_ae504193122357e5, nullptr, nullptr, { &s_ae504193122357e5, nullptr, nullptr, 0, 0, nullptr } + 0, 2, i_ae504193122357e5, nullptr, nullptr, { &s_ae504193122357e5, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE } // namespace schemas @@ -3560,286 +3560,426 @@ namespace capnp { namespace schema { // Node +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Node::_capnpPrivate::dataWordSize; constexpr uint16_t Node::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Node::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Node::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Node::Parameter +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Node::Parameter::_capnpPrivate::dataWordSize; constexpr uint16_t Node::Parameter::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Node::Parameter::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Node::Parameter::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Node::NestedNode +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Node::NestedNode::_capnpPrivate::dataWordSize; constexpr uint16_t Node::NestedNode::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Node::NestedNode::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Node::NestedNode::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Node::SourceInfo +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Node::SourceInfo::_capnpPrivate::dataWordSize; constexpr uint16_t Node::SourceInfo::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Node::SourceInfo::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Node::SourceInfo::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Node::SourceInfo::Member +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Node::SourceInfo::Member::_capnpPrivate::dataWordSize; constexpr uint16_t Node::SourceInfo::Member::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Node::SourceInfo::Member::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Node::SourceInfo::Member::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Node::Struct +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Node::Struct::_capnpPrivate::dataWordSize; constexpr uint16_t Node::Struct::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Node::Struct::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Node::Struct::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Node::Enum +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Node::Enum::_capnpPrivate::dataWordSize; constexpr uint16_t Node::Enum::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Node::Enum::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Node::Enum::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Node::Interface +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Node::Interface::_capnpPrivate::dataWordSize; constexpr uint16_t Node::Interface::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Node::Interface::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Node::Interface::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Node::Const +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Node::Const::_capnpPrivate::dataWordSize; constexpr uint16_t Node::Const::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Node::Const::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Node::Const::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Node::Annotation +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Node::Annotation::_capnpPrivate::dataWordSize; constexpr uint16_t Node::Annotation::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Node::Annotation::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Node::Annotation::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Field +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Field::_capnpPrivate::dataWordSize; constexpr uint16_t Field::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Field::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Field::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE -#if !defined(_MSC_VER) || defined(__clang__) +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::uint16_t Field::NO_DISCRIMINANT; #endif // Field::Slot +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Field::Slot::_capnpPrivate::dataWordSize; constexpr uint16_t Field::Slot::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Field::Slot::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Field::Slot::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Field::Group +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Field::Group::_capnpPrivate::dataWordSize; constexpr uint16_t Field::Group::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Field::Group::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Field::Group::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Field::Ordinal +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Field::Ordinal::_capnpPrivate::dataWordSize; constexpr uint16_t Field::Ordinal::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Field::Ordinal::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Field::Ordinal::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Enumerant +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Enumerant::_capnpPrivate::dataWordSize; constexpr uint16_t Enumerant::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Enumerant::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Enumerant::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Superclass +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Superclass::_capnpPrivate::dataWordSize; constexpr uint16_t Superclass::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Superclass::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Superclass::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Method +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Method::_capnpPrivate::dataWordSize; constexpr uint16_t Method::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Method::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Method::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Type +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Type::_capnpPrivate::dataWordSize; constexpr uint16_t Type::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Type::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Type::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Type::List +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Type::List::_capnpPrivate::dataWordSize; constexpr uint16_t Type::List::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Type::List::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Type::List::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Type::Enum +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Type::Enum::_capnpPrivate::dataWordSize; constexpr uint16_t Type::Enum::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Type::Enum::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Type::Enum::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Type::Struct +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Type::Struct::_capnpPrivate::dataWordSize; constexpr uint16_t Type::Struct::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Type::Struct::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Type::Struct::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Type::Interface +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Type::Interface::_capnpPrivate::dataWordSize; constexpr uint16_t Type::Interface::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Type::Interface::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Type::Interface::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Type::AnyPointer +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Type::AnyPointer::_capnpPrivate::dataWordSize; constexpr uint16_t Type::AnyPointer::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Type::AnyPointer::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Type::AnyPointer::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Type::AnyPointer::Unconstrained +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Type::AnyPointer::Unconstrained::_capnpPrivate::dataWordSize; constexpr uint16_t Type::AnyPointer::Unconstrained::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Type::AnyPointer::Unconstrained::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Type::AnyPointer::Unconstrained::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Type::AnyPointer::Parameter +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Type::AnyPointer::Parameter::_capnpPrivate::dataWordSize; constexpr uint16_t Type::AnyPointer::Parameter::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Type::AnyPointer::Parameter::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Type::AnyPointer::Parameter::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Type::AnyPointer::ImplicitMethodParameter +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Type::AnyPointer::ImplicitMethodParameter::_capnpPrivate::dataWordSize; constexpr uint16_t Type::AnyPointer::ImplicitMethodParameter::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Type::AnyPointer::ImplicitMethodParameter::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Type::AnyPointer::ImplicitMethodParameter::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Brand +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Brand::_capnpPrivate::dataWordSize; constexpr uint16_t Brand::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Brand::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Brand::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Brand::Scope +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Brand::Scope::_capnpPrivate::dataWordSize; constexpr uint16_t Brand::Scope::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Brand::Scope::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Brand::Scope::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Brand::Binding +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Brand::Binding::_capnpPrivate::dataWordSize; constexpr uint16_t Brand::Binding::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Brand::Binding::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Brand::Binding::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Value +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Value::_capnpPrivate::dataWordSize; constexpr uint16_t Value::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Value::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Value::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // Annotation +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t Annotation::_capnpPrivate::dataWordSize; constexpr uint16_t Annotation::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind Annotation::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* Annotation::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // CapnpVersion +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t CapnpVersion::_capnpPrivate::dataWordSize; constexpr uint16_t CapnpVersion::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind CapnpVersion::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* CapnpVersion::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // CodeGeneratorRequest +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t CodeGeneratorRequest::_capnpPrivate::dataWordSize; constexpr uint16_t CodeGeneratorRequest::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind CodeGeneratorRequest::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* CodeGeneratorRequest::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // CodeGeneratorRequest::RequestedFile +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t CodeGeneratorRequest::RequestedFile::_capnpPrivate::dataWordSize; constexpr uint16_t CodeGeneratorRequest::RequestedFile::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind CodeGeneratorRequest::RequestedFile::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* CodeGeneratorRequest::RequestedFile::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE // CodeGeneratorRequest::RequestedFile::Import +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t CodeGeneratorRequest::RequestedFile::Import::_capnpPrivate::dataWordSize; constexpr uint16_t CodeGeneratorRequest::RequestedFile::Import::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind CodeGeneratorRequest::RequestedFile::Import::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* CodeGeneratorRequest::RequestedFile::Import::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema.capnp.h b/libs/EXTERNAL/capnproto/c++/src/capnp/schema.capnp.h index 114d83af05f..9bdc7e70c8e 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema.capnp.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema.capnp.h @@ -6,7 +6,9 @@ #include #include -#if CAPNP_VERSION != 9001 +#ifndef CAPNP_VERSION +#error "CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?" +#elif CAPNP_VERSION != 1000002 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." #endif diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/schema.h b/libs/EXTERNAL/capnproto/c++/src/capnp/schema.h index 5cc20b5e2ea..5eebacba28c 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/schema.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/schema.h @@ -126,6 +126,10 @@ class Schema { BrandArgumentList getBrandArgumentsAtScope(uint64_t scopeId) const; // Gets the values bound to the brand parameters at the given scope. + kj::Array getGenericScopeIds() const; + // Returns the type IDs of all parent scopes that have generic parameters, to which this type is + // subject. + StructSchema asStruct() const; EnumSchema asEnum() const; InterfaceSchema asInterface() const; @@ -275,6 +279,25 @@ class StructSchema: public Schema { bool isStreamResult() const; // Convenience method to check if this is the result type of a streaming RPC method. + bool mayContainCapabilities() const { return raw->generic->mayContainCapabilities; } + // Returns true if a struct of this type may transitively contain any capabilities. I.e., are + // any of the fields an interface type, or a struct type that may in turn contain capabilities? + // + // This is meant for optimizations where various bookkeeping can possibly be skipped if it is + // known in advance that there are no capabilities. Note that this may conservatively return true + // spuriously, e.g. if it would be inconvenient to compute the correct answer. A false positive + // should never cause incorrect behavior, just potentially hurt performance. + // + // It's important to keep in mind that even if a schema has no capability-typed fields today, + // they could always be added in future versions of the schema. So, just because the schema + // doesn't contain capabilities does NOT necessarily mean that an instance of the struct can't + // contain capabilities. However, it is a pretty good hint that the application won't plan to + // use such capabilities -- for example, if there are no caps in an RPC call's response type + // according to the client's version of the schema, then the client clearly isn't going to try + // to make any pipelined calls. The server could be operating with a new version of the schema + // and could actually return capabilities, but for the client to make a pipelined call, the + // client would have to know in advance that capabilities could be returned. + private: StructSchema(Schema base): Schema(base) {} template static inline StructSchema fromImpl() { diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async-test.c++ index 380b142a067..dcae6b060fb 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async-test.c++ @@ -35,6 +35,7 @@ #include #include "test-util.h" #include +#include #if _WIN32 #include @@ -382,6 +383,183 @@ TEST(SerializeAsyncTest, WriteMultipleMessagesAsync) { writeMessages(*output, msgs).wait(ioContext.waitScope); } +void writeSmallMessage(kj::OutputStream& output, kj::StringPtr text) { + capnp::MallocMessageBuilder message; + message.getRoot().getAnyPointerField().setAs(text); + writeMessage(output, message); +} + +void expectSmallMessage(MessageStream& stream, kj::StringPtr text, kj::WaitScope& waitScope) { + auto msg = stream.readMessage().wait(waitScope); + KJ_EXPECT(msg->getRoot().getAnyPointerField().getAs() == text); +} + +void writeBigMessage(kj::OutputStream& output) { + capnp::MallocMessageBuilder message(4); // first segment is small + initTestMessage(message.getRoot()); + writeMessage(output, message); +} + +void expectBigMessage(MessageStream& stream, kj::WaitScope& waitScope) { + auto msg = stream.readMessage().wait(waitScope); + checkTestMessage(msg->getRoot()); +} + +KJ_TEST("BufferedMessageStream basics") { + // Encode input data. + kj::VectorOutputStream data; + + writeSmallMessage(data, "foo"); + + KJ_EXPECT(data.getArray().size() / sizeof(word) == 4); + + // A big message (more than half a buffer) + writeBigMessage(data); + + KJ_EXPECT(data.getArray().size() / sizeof(word) > 16); + + writeSmallMessage(data, "bar"); + writeSmallMessage(data, "baz"); + writeSmallMessage(data, "qux"); + + // Run the test. + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + + auto pipe = kj::newTwoWayPipe(); + auto writePromise = pipe.ends[1]->write(data.getArray().begin(), data.getArray().size()); + + uint callbackCallCount = 0; + auto callback = [&](MessageReader& reader) { + ++callbackCallCount; + return false; + }; + + BufferedMessageStream stream(*pipe.ends[0], callback, 16); + expectSmallMessage(stream, "foo", waitScope); + KJ_EXPECT(callbackCallCount == 1); + + KJ_EXPECT(!writePromise.poll(waitScope)); + + expectBigMessage(stream, waitScope); + KJ_EXPECT(callbackCallCount == 1); // no callback on big message + + KJ_EXPECT(!writePromise.poll(waitScope)); + + expectSmallMessage(stream, "bar", waitScope); + KJ_EXPECT(callbackCallCount == 2); + + // All data is now in the buffer, so this part is done. + KJ_EXPECT(writePromise.poll(waitScope)); + + expectSmallMessage(stream, "baz", waitScope); + expectSmallMessage(stream, "qux", waitScope); + KJ_EXPECT(callbackCallCount == 4); + + auto eofPromise = stream.MessageStream::tryReadMessage(); + KJ_EXPECT(!eofPromise.poll(waitScope)); + + pipe.ends[1]->shutdownWrite(); + KJ_EXPECT(eofPromise.wait(waitScope) == nullptr); +} + +KJ_TEST("BufferedMessageStream fragmented reads") { + // Encode input data. + kj::VectorOutputStream data; + writeBigMessage(data); + + // Run the test. + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + + auto pipe = kj::newTwoWayPipe(); + auto callback = [&](MessageReader& reader) { + return false; + }; + BufferedMessageStream stream(*pipe.ends[0], callback, 16); + + // Arrange to read a big message. + auto readPromise = stream.MessageStream::tryReadMessage(); + KJ_EXPECT(!readPromise.poll(waitScope)); + + auto remainingData = data.getArray(); + + // Write 5 bytes. This won't even fulfill the first read's minBytes. + pipe.ends[1]->write(remainingData.begin(), 5).wait(waitScope); + remainingData = remainingData.slice(5, remainingData.size()); + KJ_EXPECT(!readPromise.poll(waitScope)); + + // Write 4 more. Now the MessageStream will only see the first word which contains the first + // segment size. This size is small so the MessageStream won't yet fall back to + // readEntireMessage(). + pipe.ends[1]->write(remainingData.begin(), 4).wait(waitScope); + remainingData = remainingData.slice(4, remainingData.size()); + KJ_EXPECT(!readPromise.poll(waitScope)); + + // Drip 10 more bytes. Now the MessageStream will realize that it needs to try + // readEntireMessage(). + pipe.ends[1]->write(remainingData.begin(), 10).wait(waitScope); + remainingData = remainingData.slice(10, remainingData.size()); + KJ_EXPECT(!readPromise.poll(waitScope)); + + // Give it all except the last byte. + pipe.ends[1]->write(remainingData.begin(), remainingData.size() - 1).wait(waitScope); + remainingData = remainingData.slice(remainingData.size() - 1, remainingData.size()); + KJ_EXPECT(!readPromise.poll(waitScope)); + + // Finish it off. + pipe.ends[1]->write(remainingData.begin(), 1).wait(waitScope); + KJ_ASSERT(readPromise.poll(waitScope)); + + auto msg = readPromise.wait(waitScope); + checkTestMessage(KJ_ASSERT_NONNULL(msg)->getRoot()); +} + +KJ_TEST("BufferedMessageStream many small messages") { + // Encode input data. + kj::VectorOutputStream data; + + for (auto i: kj::zeroTo(16)) { + // Intentionally make these 5 words each so they cross buffer boundaries. + writeSmallMessage(data, kj::str("12345678-", i)); + KJ_EXPECT(data.getArray().size() / sizeof(word) == (i+1) * 5); + } + + // Run the test. + kj::EventLoop loop; + kj::WaitScope waitScope(loop); + + auto pipe = kj::newTwoWayPipe(); + auto writePromise = pipe.ends[1]->write(data.getArray().begin(), data.getArray().size()) + .then([&]() { + // Write some garbage at the end. + return pipe.ends[1]->write("bogus", 5); + }).then([&]() { + // EOF. + return pipe.ends[1]->shutdownWrite(); + }).eagerlyEvaluate(nullptr); + + uint callbackCallCount = 0; + auto callback = [&](MessageReader& reader) { + ++callbackCallCount; + return false; + }; + + BufferedMessageStream stream(*pipe.ends[0], callback, 16); + + for (auto i: kj::zeroTo(16)) { + // Intentionally make these 5 words each so they cross buffer boundaries. + expectSmallMessage(stream, kj::str("12345678-", i), waitScope); + KJ_EXPECT(callbackCallCount == i + 1); + } + + KJ_EXPECT_THROW(DISCONNECTED, stream.MessageStream::tryReadMessage().wait(waitScope)); + KJ_EXPECT(callbackCallCount == 16); +} + +// TODO(test): We should probably test BufferedMessageStream's FD handling here... but really it +// gets tested well enough by rpc-twoparty-test. + } // namespace } // namespace _ (private) } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async.c++ index 53b30e9ac0f..45eb1846aec 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async.c++ @@ -31,6 +31,7 @@ #endif #include "serialize-async.h" +#include "serialize.h" #include #include @@ -295,7 +296,7 @@ kj::Promise writeMessageImpl(kj::ArrayPtr> auto promise = writeFunc(arrays.pieces); // Make sure the arrays aren't freed until the write completes. - return promise.then(kj::mvCapture(arrays, [](WriteArrays&&) {})); + return promise.then([arrays=kj::mv(arrays)]() {}); } template @@ -315,7 +316,7 @@ kj::Promise writeMessagesImpl( size_t tableValsWritten = 0; size_t piecesWritten = 0; - for (int i = 0; i < messages.size(); ++i) { + for (auto i : kj::indices(messages)) { const size_t tableValsToWrite = tableSizeForSegments(messages[i].size()); const size_t piecesToWrite = messages[i].size() + 1; fillWriteArraysWithMessage( @@ -360,15 +361,54 @@ kj::Promise writeMessages( kj::Promise writeMessages( kj::AsyncOutputStream& output, kj::ArrayPtr builders) { auto messages = kj::heapArray>>(builders.size()); - for (int i = 0; i < builders.size(); ++i) { + for (auto i : kj::indices(builders)) { messages[i] = builders[i]->getSegmentsForOutput(); } return writeMessages(output, messages); } +kj::Promise MessageStream::writeMessages(kj::ArrayPtr messages) { + if (messages.size() == 0) return kj::READY_NOW; + kj::ArrayPtr remainingMessages; + + auto writeProm = [&]() { + if (messages[0].fds.size() > 0) { + // We have a message with FDs attached. We need to write any bare messages we've accumulated, + // if any, then write the message with FDs, then continue on with any remaining messages. + + if (messages.size() > 1) { + remainingMessages = messages.slice(1, messages.size()); + } + + return writeMessage(messages[0].fds, messages[0].segments); + } else { + kj::Vector>> bareMessages(messages.size()); + for(auto i : kj::zeroTo(messages.size())) { + if (messages[i].fds.size() > 0) { + break; + } + bareMessages.add(messages[i].segments); + } + + if (messages.size() > bareMessages.size()) { + remainingMessages = messages.slice(bareMessages.size(), messages.size()); + } + return writeMessages(bareMessages.asPtr()).attach(kj::mv(bareMessages)); + } + }(); + + if (remainingMessages.size() > 0) { + return writeProm.then([this, remainingMessages]() mutable { + return writeMessages(remainingMessages); + }); + } else { + return writeProm; + } +} + kj::Promise MessageStream::writeMessages(kj::ArrayPtr builders) { auto messages = kj::heapArray>>(builders.size()); - for (int i = 0; i < builders.size(); ++i) { + for (auto i : kj::indices(builders)) { messages[i] = builders[i]->getSegmentsForOutput(); } return writeMessages(messages); @@ -502,4 +542,301 @@ kj::Promise MessageStream::readMessage( }); } +// ======================================================================================= + +class BufferedMessageStream::MessageReaderImpl: public FlatArrayMessageReader { +public: + MessageReaderImpl(BufferedMessageStream& parent, kj::ArrayPtr data, + ReaderOptions options) + : FlatArrayMessageReader(data, options), state(&parent) { + KJ_DASSERT(!parent.hasOutstandingShortLivedMessage); + parent.hasOutstandingShortLivedMessage = true; + } + MessageReaderImpl(kj::Array&& ownBuffer, ReaderOptions options) + : FlatArrayMessageReader(ownBuffer, options), state(kj::mv(ownBuffer)) {} + MessageReaderImpl(kj::ArrayPtr scratchBuffer, ReaderOptions options) + : FlatArrayMessageReader(scratchBuffer, options) {} + + ~MessageReaderImpl() noexcept(false) { + KJ_IF_MAYBE(parent, state.tryGet()) { + (*parent)->hasOutstandingShortLivedMessage = false; + } + } + +private: + kj::OneOf> state; + // * BufferedMessageStream* if this reader aliases the original buffer. + // * kj::Array if this reader owns its own backing buffer. +}; + +BufferedMessageStream::BufferedMessageStream( + kj::AsyncIoStream& stream, IsShortLivedCallback isShortLivedCallback, + size_t bufferSizeInWords) + : stream(stream), isShortLivedCallback(kj::mv(isShortLivedCallback)), + buffer(kj::heapArray(bufferSizeInWords)), + beginData(buffer.begin()), beginAvailable(buffer.asBytes().begin()) {} + +BufferedMessageStream::BufferedMessageStream( + kj::AsyncCapabilityStream& stream, IsShortLivedCallback isShortLivedCallback, + size_t bufferSizeInWords) + : stream(stream), capStream(stream), isShortLivedCallback(kj::mv(isShortLivedCallback)), + buffer(kj::heapArray(bufferSizeInWords)), + beginData(buffer.begin()), beginAvailable(buffer.asBytes().begin()) {} + +kj::Promise> BufferedMessageStream::tryReadMessage( + kj::ArrayPtr fdSpace, ReaderOptions options, kj::ArrayPtr scratchSpace) { + return tryReadMessageImpl(fdSpace, 0, options, scratchSpace); +} + +kj::Promise BufferedMessageStream::writeMessage( + kj::ArrayPtr fds, + kj::ArrayPtr> segments) { + KJ_IF_MAYBE(cs, capStream) { + return capnp::writeMessage(*cs, fds, segments); + } else { + return capnp::writeMessage(stream, segments); + } +} + +kj::Promise BufferedMessageStream::writeMessages( + kj::ArrayPtr>> messages) { + return capnp::writeMessages(stream, messages); +} + +kj::Maybe BufferedMessageStream::getSendBufferSize() { + return capnp::getSendBufferSize(stream); +} + +kj::Promise BufferedMessageStream::end() { + stream.shutdownWrite(); + return kj::READY_NOW; +} + +kj::Promise> BufferedMessageStream::tryReadMessageImpl( + kj::ArrayPtr fdSpace, size_t fdsSoFar, + ReaderOptions options, kj::ArrayPtr scratchSpace) { + KJ_REQUIRE(!hasOutstandingShortLivedMessage, + "can't read another message while the previous short-lived message still exists"); + + kj::byte* beginDataBytes = reinterpret_cast(beginData); + size_t dataByteSize = beginAvailable - beginDataBytes; + kj::ArrayPtr data = kj::arrayPtr(beginData, dataByteSize / sizeof(word)); + + size_t expected = expectedSizeInWordsFromPrefix(data); + + if (!leftoverFds.empty() && expected * sizeof(word) == dataByteSize) { + // We're about to return a message that consumes the rest of the data in the buffer, and + // `leftoverFds` is non-empty. Those FDs are considered attached to whatever message contains + // the last byte in the buffer. That's us! Let's consume them. + + // `fdsSoFar` must be empty here because we shouldn't have performed any reads while + // `leftoverFds` was non-empty, so there shouldn't have been any other chance to add FDs to + // `fdSpace`. + KJ_ASSERT(fdsSoFar == 0); + + fdsSoFar = kj::min(leftoverFds.size(), fdSpace.size()); + for (auto i: kj::zeroTo(fdsSoFar)) { + fdSpace[i] = kj::mv(leftoverFds[i]); + } + leftoverFds.clear(); + } + + if (expected <= data.size()) { + // The buffer contains at least one whole message, which we can just return without reading + // any more data. + + auto msgData = kj::arrayPtr(beginData, expected); + auto reader = kj::heap(*this, msgData, options); + if (!isShortLivedCallback(*reader)) { + // This message is long-lived, so we must make a copy to get it out of our buffer. + if (msgData.size() <= scratchSpace.size()) { + // Oh hey, we can use the provided scratch space. + memcpy(scratchSpace.begin(), msgData.begin(), msgData.asBytes().size()); + reader = kj::heap(scratchSpace, options); + } else { + auto ownMsgData = kj::heapArray(msgData.size()); + memcpy(ownMsgData.begin(), msgData.begin(), msgData.asBytes().size()); + reader = kj::heap(kj::mv(ownMsgData), options); + } + } + + beginData += expected; + if (reinterpret_cast(beginData) == beginAvailable) { + // The buffer is empty. Let's opportunistically reset the pointers. + beginData = buffer.begin(); + beginAvailable = buffer.asBytes().begin(); + } else if (fdsSoFar > 0) { + // The buffer is NOT empty, and we received FDs when we were filling it. These FDs must + // actually belong to the last message in the buffer, because when the OS returns FDs + // attached to a read, it will make sure the read does not extend past the last byte to + // which those FDs were attached. + // + // So, we must set these FDs aside for the moment. + for (auto i: kj::zeroTo(fdsSoFar)) { + leftoverFds.add(kj::mv(fdSpace[i])); + } + fdsSoFar = 0; + } + + return kj::Maybe(MessageReaderAndFds { + kj::mv(reader), + fdSpace.slice(0, fdsSoFar) + }); + } + + // At this point, the buffer doesn't contain a complete message. We are going to need to perform + // a read. + + if (expected > buffer.size() / 2 || fdsSoFar > 0) { + // Read this message into its own separately-allocated buffer. We do this for: + // - Big messages, because they might not fit in the buffer and because big messages are + // almost certainly going to be long-lived and so would require a copy later anyway. + // - Messages where we've already received some FDs, because these are also almost certainly + // long-lived, and we want to avoid accidentally reading into the next message since we + // could end up receiving FDs that were intended for that one. + // + // Optimization note: You might argue that if the expected size is more than half the buffer, + // but still less than the *whole* buffer, then we should still try to read into the buffer + // first. However, keep in mind that in the RPC system, all short-lived messages are + // relatively small, and hence we can assume that since this is a large message, it will + // end up being long-lived. Long-lived messages need to be copied out into their own buffer + // at some point anyway. So we might as well go ahead and allocate that separate buffer + // now, and read directly into it, rather than try to use the shared buffer. We choose to + // use buffer.size() / 2 as the cutoff because that ensures that we won't try to move the + // bytes of a known-large message to the beginning of the buffer (see next if() after this + // one). + + auto prefix = kj::arrayPtr(beginDataBytes, dataByteSize); + + // We are consuming everything in the buffer here, so we can reset the pointers so the + // buffer appears empty on the next message read after this. + beginData = buffer.begin(); + beginAvailable = buffer.asBytes().begin(); + + return readEntireMessage(prefix, expected, fdSpace, fdsSoFar, options); + } + + // Set minBytes to at least complete the current message. + size_t minBytes = expected * sizeof(word) - dataByteSize; + + // minBytes must be less than half the buffer otherwise we would have taken the + // readEntireMessage() branch above. + KJ_DASSERT(minBytes <= buffer.asBytes().size() / 2); + + // Set maxBytes to the space we have available in the buffer. + size_t maxBytes = buffer.asBytes().end() - beginAvailable; + + if (maxBytes < buffer.asBytes().size() / 2) { + // We have less than half the buffer remaining to read into. Move the buffered data to the + // beginning of the buffer to make more space. + memmove(buffer.begin(), beginData, dataByteSize); + beginData = buffer.begin(); + beginDataBytes = buffer.asBytes().begin(); + beginAvailable = beginDataBytes + dataByteSize; + + maxBytes = buffer.asBytes().end() - beginAvailable; + } + + // maxBytes must now be more than half the buffer, because if it weren't we would have moved + // the existing data above, and the existing data cannot be more than half the buffer because + // if it were we would have taken the readEntireMesage() path earlier. + KJ_DASSERT(maxBytes >= buffer.asBytes().size() / 2); + + // Since minBytes is less that half the buffer and maxBytes is more then half, minBytes is + // definitely less than maxBytes. + KJ_DASSERT(minBytes <= maxBytes); + + // Read from underlying stream. + return tryReadWithFds(beginAvailable, minBytes, maxBytes, + fdSpace.begin() + fdsSoFar, fdSpace.size() - fdsSoFar) + .then([this,minBytes,fdSpace,fdsSoFar,options,scratchSpace] + (kj::AsyncCapabilityStream::ReadResult result) mutable + -> kj::Promise> { + // Account for new data received in the buffer. + beginAvailable += result.byteCount; + + if (result.byteCount < minBytes) { + // Didn't reach minBytes, so we must have hit EOF. That's legal as long as it happened on + // a clean message boundray. + if (beginAvailable > reinterpret_cast(beginData)) { + // We had received a partial message before EOF, so this should be considered an error. + kj::throwRecoverableException(KJ_EXCEPTION(DISCONNECTED, + "stream disconnected prematurely")); + } + return kj::Maybe(nullptr); + } + + // Loop! + return tryReadMessageImpl(fdSpace, fdsSoFar + result.capCount, options, scratchSpace); + }); +} + +kj::Promise> BufferedMessageStream::readEntireMessage( + kj::ArrayPtr prefix, size_t expectedSizeInWords, + kj::ArrayPtr fdSpace, size_t fdsSoFar, + ReaderOptions options) { + KJ_REQUIRE(expectedSizeInWords <= options.traversalLimitInWords, + "incoming RPC message exceeds size limit"); + + auto msgBuffer = kj::heapArray(expectedSizeInWords); + + memcpy(msgBuffer.asBytes().begin(), prefix.begin(), prefix.size()); + + size_t bytesRemaining = msgBuffer.asBytes().size() - prefix.size(); + + // TODO(perf): If we had scatter-read API support, we could optimistically try to read additional + // bytes into the shared buffer, to save syscalls when a big message is immediately followed + // by small messages. + auto promise = tryReadWithFds( + msgBuffer.asBytes().begin() + prefix.size(), bytesRemaining, bytesRemaining, + fdSpace.begin() + fdsSoFar, fdSpace.size() - fdsSoFar); + return promise + .then([this, msgBuffer = kj::mv(msgBuffer), fdSpace, fdsSoFar, options, bytesRemaining] + (kj::AsyncCapabilityStream::ReadResult result) mutable + -> kj::Promise> { + fdsSoFar += result.capCount; + + if (result.byteCount < bytesRemaining) { + // Received EOF during message. + kj::throwRecoverableException(KJ_EXCEPTION(DISCONNECTED, "stream disconnected prematurely")); + return kj::Maybe(nullptr); + } + + size_t newExpectedSize = expectedSizeInWordsFromPrefix(msgBuffer); + if (newExpectedSize > msgBuffer.size()) { + // Unfortunately, the predicted size increased. This can happen if the segment table had + // not been fully received when we generated the first prediction. This should be rare + // (most segment tables are small and should be received all at once), but in this case we + // will need to make a whole new copy of the message. + // + // We recurse here, but this should never recurse more than once, since we should always + // have the entire segment table by this point and therefore the expected size is now final. + // + // TODO(perf): Technically it's guaranteed that the original expectation should have stopped + // at the boundary between two segments, so with a clever MesnsageReader implementation + // we could actually read the rest of the message into a second buffer, avoiding the copy. + // Unclear if it's worth the effort to implement this. + return readEntireMessage(msgBuffer.asBytes(), newExpectedSize, fdSpace, fdsSoFar, options); + } + + return kj::Maybe(MessageReaderAndFds { + kj::heap(kj::mv(msgBuffer), options), + fdSpace.slice(0, fdsSoFar) + }); + }); +} + +kj::Promise BufferedMessageStream::tryReadWithFds( + void* buffer, size_t minBytes, size_t maxBytes, kj::AutoCloseFd* fdBuffer, size_t maxFds) { + KJ_IF_MAYBE(cs, capStream) { + return cs->tryReadWithFds(buffer, minBytes, maxBytes, fdBuffer, maxFds); + } else { + // Regular byte stream, no FDs. + return stream.tryRead(buffer, minBytes, maxBytes) + .then([](size_t amount) mutable -> kj::AsyncCapabilityStream::ReadResult { + return { amount, 0 }; + }); + } +} + } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async.h b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async.h index 9bee9ce4c3c..cd661d78091 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-async.h @@ -22,6 +22,7 @@ #pragma once #include +#include #include "message.h" CAPNP_BEGIN_HEADER @@ -33,6 +34,11 @@ struct MessageReaderAndFds { kj::ArrayPtr fds; }; +struct MessageAndFds { + kj::ArrayPtr> segments; + kj::ArrayPtr fds; +}; + class MessageStream { // Interface over which messages can be sent and received; virtualizes // the functionality above. @@ -76,6 +82,9 @@ class MessageStream { KJ_WARN_UNUSED_RESULT; // Equivalent to the above with fds = nullptr. + kj::Promise writeMessages( + kj::ArrayPtr messages) + KJ_WARN_UNUSED_RESULT; virtual kj::Promise writeMessages( kj::ArrayPtr>> messages) KJ_WARN_UNUSED_RESULT = 0; @@ -115,6 +124,10 @@ class AsyncIoMessageStream final: public MessageStream { kj::Maybe getSendBufferSize() override; kj::Promise end() override; + + // Make sure the overridden virtual methods don't hide the non-virtual methods. + using MessageStream::tryReadMessage; + using MessageStream::writeMessage; private: kj::AsyncIoStream& stream; }; @@ -135,10 +148,92 @@ class AsyncCapabilityMessageStream final: public MessageStream { kj::ArrayPtr>> messages) override; kj::Maybe getSendBufferSize() override; kj::Promise end() override; + + // Make sure the overridden virtual methods don't hide the non-virtual methods. + using MessageStream::tryReadMessage; + using MessageStream::writeMessage; private: kj::AsyncCapabilityStream& stream; }; +class BufferedMessageStream final: public MessageStream { + // A MessageStream that reads into a buffer in the hopes of receiving multiple messages in a + // single system call. Compared to the other implementations, this implementation is expected + // to be faster when reading from an OS stream (but probably not when reading from an in-memory + // async pipe). It has the down sides of using more memory (for the buffer) and requiring extra + // copies. + +public: + using IsShortLivedCallback = kj::Function; + // Callback function which decides whether a message will be "short-lived", meaning that it is + // guaranteed to be dropped before the next message is read. The stream uses this as an + // optimization to decide whether it can return a MessageReader pointing into the buffer, which + // will be reused for future reads. For long-lived messages, the stream must copy the content + // into a separate buffer. + + explicit BufferedMessageStream( + kj::AsyncIoStream& stream, IsShortLivedCallback isShortLivedCallback, + size_t bufferSizeInWords = 8192); + explicit BufferedMessageStream( + kj::AsyncCapabilityStream& stream, IsShortLivedCallback isShortLivedCallback, + size_t bufferSizeInWords = 8192); + + // Implements MessageStream + kj::Promise> tryReadMessage( + kj::ArrayPtr fdSpace, + ReaderOptions options = ReaderOptions(), kj::ArrayPtr scratchSpace = nullptr) override; + kj::Promise writeMessage( + kj::ArrayPtr fds, + kj::ArrayPtr> segments) override; + kj::Promise writeMessages( + kj::ArrayPtr>> messages) override; + kj::Maybe getSendBufferSize() override; + kj::Promise end() override; + + // Make sure the overridden virtual methods don't hide the non-virtual methods. + using MessageStream::tryReadMessage; + using MessageStream::writeMessage; + +private: + kj::AsyncIoStream& stream; + kj::Maybe capStream; + IsShortLivedCallback isShortLivedCallback; + + kj::Array buffer; + + word* beginData; + // Pointer to location in `buffer` where the next message starts. This is always on a word + // boundray since messages are always a whole number of words. + + kj::byte* beginAvailable; + // Pointer to the location in `buffer` where unused buffer space begins, i.e. immediately after + // the last byte read. + + kj::Vector leftoverFds; + // FDs which were accidentally read too early. These are always connected to the last message + // in the buffer, since the OS would not have allowed us to read past that point. + + bool hasOutstandingShortLivedMessage = false; + + kj::Promise> tryReadMessageImpl( + kj::ArrayPtr fdSpace, size_t fdsSoFar, + ReaderOptions options, kj::ArrayPtr scratchSpace); + + kj::Promise> readEntireMessage( + kj::ArrayPtr prefix, size_t expectedSizeInWords, + kj::ArrayPtr fdSpace, size_t fdsSoFar, + ReaderOptions options); + // Given a message prefix and expected size of the whole message, read the entire message into + // a single array and return it. + + kj::Promise tryReadWithFds( + void* buffer, size_t minBytes, size_t maxBytes, kj::AutoCloseFd* fdBuffer, size_t maxFds); + // Executes AsyncCapabilityStream::tryReadWithFds() on the underlying stream, or falls back to + // AsyncIoStream::tryRead() if it's not a capability stream. + + class MessageReaderImpl; +}; + // ----------------------------------------------------------------------------- // Stand-alone functions for reading & writing messages on AsyncInput/AsyncOutputStreams. // diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-packed.h b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-packed.h index 99131f4e8fb..a0329b1300e 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-packed.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-packed.h @@ -35,7 +35,7 @@ class PackedInputStream: public kj::InputStream { public: explicit PackedInputStream(kj::BufferedInputStream& inner); - KJ_DISALLOW_COPY(PackedInputStream); + KJ_DISALLOW_COPY_AND_MOVE(PackedInputStream); ~PackedInputStream() noexcept(false); // implements InputStream ------------------------------------------ @@ -50,7 +50,7 @@ class PackedOutputStream: public kj::OutputStream { // An output stream that packs data. Buffers passed to `write()` must be word-aligned. public: explicit PackedOutputStream(kj::BufferedOutputStream& inner); - KJ_DISALLOW_COPY(PackedOutputStream); + KJ_DISALLOW_COPY_AND_MOVE(PackedOutputStream); ~PackedOutputStream() noexcept(false); // implements OutputStream ----------------------------------------- @@ -66,7 +66,7 @@ class PackedMessageReader: private _::PackedInputStream, public InputStreamMessa public: PackedMessageReader(kj::BufferedInputStream& inputStream, ReaderOptions options = ReaderOptions(), kj::ArrayPtr scratchSpace = nullptr); - KJ_DISALLOW_COPY(PackedMessageReader); + KJ_DISALLOW_COPY_AND_MOVE(PackedMessageReader); ~PackedMessageReader() noexcept(false); }; @@ -83,7 +83,7 @@ class PackedFdMessageReader: private kj::FdInputStream, private kj::BufferedInpu kj::ArrayPtr scratchSpace = nullptr); // Read a message from a file descriptor, taking ownership of the descriptor. - KJ_DISALLOW_COPY(PackedFdMessageReader); + KJ_DISALLOW_COPY_AND_MOVE(PackedFdMessageReader); ~PackedFdMessageReader() noexcept(false); }; diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-text-test.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-text-test.c++ index c92838c2ffd..8ac42858446 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-text-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize-text-test.c++ @@ -142,6 +142,50 @@ KJ_TEST("TextCodec parse error") { exception.getDescription()); } +KJ_TEST("text format implicitly coerces struct value from first field type") { + // We don't actually use TextCodec here, but rather check how the compiler handled some constants + // defined in test.capnp. It's the same parser code either way but this is easier. + + { + auto s = test::TestImpliedFirstField::Reader().getTextStruct(); + KJ_EXPECT(s.getText() == "foo"); + KJ_EXPECT(s.getI() == 321); + } + + { + auto s = test::TEST_IMPLIED_FIRST_FIELD->getTextStruct(); + KJ_EXPECT(s.getText() == "bar"); + KJ_EXPECT(s.getI() == 321); + } + +#if __GNUC__ && !__clang__ +// GCC generates a spurious warning here... +#pragma GCC diagnostic ignored "-Wmisleading-indentation" +#endif + + { + auto l = test::TEST_IMPLIED_FIRST_FIELD->getTextStructList(); + KJ_ASSERT(l.size() == 2); + + { + auto s = l[0]; + KJ_EXPECT(s.getText() == "baz"); + KJ_EXPECT(s.getI() == 321); + } + { + auto s = l[1]; + KJ_EXPECT(s.getText() == "qux"); + KJ_EXPECT(s.getI() == 123); + } + } + + { + auto s = test::TEST_IMPLIED_FIRST_FIELD->getIntGroup(); + KJ_EXPECT(s.getI() == 123); + KJ_EXPECT(s.getStr() == "corge"); + } +} + } // namespace } // namespace _ (private) } // namespace capnp diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize.c++ index df7e45e0304..abb34f7998b 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/serialize.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/serialize.c++ @@ -23,6 +23,10 @@ #include "layout.h" #include #include +#ifdef _WIN32 +#include +#include +#endif namespace capnp { @@ -301,6 +305,15 @@ void writeMessage(kj::OutputStream& output, kj::ArrayPtr> segments) { +#ifdef _WIN32 + auto oldMode = _setmode(fd, _O_BINARY); + if (oldMode != _O_BINARY) { + _setmode(fd, oldMode); + KJ_FAIL_REQUIRE("Tried to write a message to a file descriptor that is in text mode. Set the " + "file descriptor to binary mode by calling the _setmode Windows CRT function, or passing " + "_O_BINARY to _open()."); + } +#endif kj::FdOutputStream stream(fd); writeMessage(stream, segments); } diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/stream.capnp.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/stream.capnp.c++ index a5937b2557d..098f26a5b8e 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/stream.capnp.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/stream.capnp.c++ @@ -28,7 +28,7 @@ static const ::capnp::_::AlignedData<17> b_995f9a3377c0b16e = { #if !CAPNP_LITE const ::capnp::_::RawSchema s_995f9a3377c0b16e = { 0x995f9a3377c0b16e, b_995f9a3377c0b16e.words, 17, nullptr, nullptr, - 0, 0, nullptr, nullptr, nullptr, { &s_995f9a3377c0b16e, nullptr, nullptr, 0, 0, nullptr } + 0, 0, nullptr, nullptr, nullptr, { &s_995f9a3377c0b16e, nullptr, nullptr, 0, 0, nullptr }, false }; #endif // !CAPNP_LITE } // namespace schemas @@ -39,11 +39,15 @@ const ::capnp::_::RawSchema s_995f9a3377c0b16e = { namespace capnp { // StreamResult +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr uint16_t StreamResult::_capnpPrivate::dataWordSize; constexpr uint16_t StreamResult::_capnpPrivate::pointerCount; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #if !CAPNP_LITE +#if CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL constexpr ::capnp::Kind StreamResult::_capnpPrivate::kind; constexpr ::capnp::_::RawSchema const* StreamResult::_capnpPrivate::schema; +#endif // !CAPNP_NEED_REDUNDANT_CONSTEXPR_DECL #endif // !CAPNP_LITE diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/stream.capnp.h b/libs/EXTERNAL/capnproto/c++/src/capnp/stream.capnp.h index 4ac41404d4b..91ebcb315d2 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/stream.capnp.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/stream.capnp.h @@ -6,7 +6,9 @@ #include #include -#if CAPNP_VERSION != 9001 +#ifndef CAPNP_VERSION +#error "CAPNP_VERSION is not defined, is capnp/generated-header-support.h missing?" +#elif CAPNP_VERSION != 1000002 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." #endif diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/test-util.c++ b/libs/EXTERNAL/capnproto/c++/src/capnp/test-util.c++ index d16d955e950..41fc08e072d 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/test-util.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/test-util.c++ @@ -1076,7 +1076,6 @@ kj::Promise TestMoreStuffImpl::neverReturn(NeverReturnContext context) { // Also attach `cap` to the result struct to make sure that is released. context.getResults().setCapCopy(context.getParams().getCap()); - context.allowCancellation(); return kj::mv(promise); } @@ -1119,7 +1118,6 @@ kj::Promise TestMoreStuffImpl::echo(EchoContext context) { kj::Promise TestMoreStuffImpl::expectCancel(ExpectCancelContext context) { auto cap = context.getParams().getCap(); - context.allowCancellation(); return loop(0, cap, context); } @@ -1129,7 +1127,7 @@ kj::Promise TestMoreStuffImpl::loop(uint depth, test::TestInterface::Clien ADD_FAILURE() << "Looped too long, giving up."; return kj::READY_NOW; } else { - return kj::evalLater([this,depth,KJ_CPCAP(cap),KJ_CPCAP(context)]() mutable { + return kj::evalLast([this,depth,KJ_CPCAP(cap),KJ_CPCAP(context)]() mutable { return loop(depth + 1, cap, context); }); } @@ -1190,6 +1188,10 @@ kj::Promise TestMoreStuffImpl::throwException(ThrowExceptionContext contex return KJ_EXCEPTION(FAILED, "test exception"); } +kj::Promise TestMoreStuffImpl::throwRemoteException(ThrowRemoteExceptionContext context) { + return KJ_EXCEPTION(FAILED, "remote exception: test exception"); +} + #endif // !CAPNP_LITE } // namespace _ (private) diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/test-util.h b/libs/EXTERNAL/capnproto/c++/src/capnp/test-util.h index 2cf47cb8465..38b445718a0 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/test-util.h +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/test-util.h @@ -280,6 +280,8 @@ class TestMoreStuffImpl final: public test::TestMoreStuff::Server { kj::Promise throwException(ThrowExceptionContext context) override; + kj::Promise throwRemoteException(ThrowRemoteExceptionContext context) override; + private: int& callCount; int& handleCount; @@ -336,7 +338,6 @@ class TestStreamingImpl final: public test::TestStreaming::Server { } kj::Promise doStreamJ(DoStreamJContext context) override { - context.allowCancellation(); jSum += context.getParams().getJ(); if (jShouldThrow) { diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/test.capnp b/libs/EXTERNAL/capnproto/c++/src/capnp/test.capnp index 7efe6aee447..11b52f6c312 100644 --- a/libs/EXTERNAL/capnproto/c++/src/capnp/test.capnp +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/test.capnp @@ -653,6 +653,8 @@ struct TestUseGenerics $TestGenerics(Text, Data).ann("foo") { inner2Bind = (baz = "text", innerBound = (foo = (int16Field = 123))), inner2Text = (baz = "text", innerBound = (foo = (int16Field = 123))), revFoo = [12, 34, 56]); + + bindEnumList @20 :TestGenerics(List(TestEnum), Text); } struct TestEmptyStruct {} @@ -758,6 +760,13 @@ const embeddedStruct :TestAllTypes = embed "testdata/binary"; const nonAsciiText :Text = "♫ é ✓"; +const blockText :Text = + `foo bar baz + `"qux" `corge` 'grault' + "regular\"quoted\"line" + `garply\nwaldo\tfred\"plugh\"xyzzy\'thud + ; + struct TestAnyPointerConstants { anyKindAsStruct @0 :AnyPointer; anyStructAsStruct @1 :AnyStruct; @@ -774,7 +783,7 @@ const anyPointerConstants :TestAnyPointerConstants = ( struct TestListOfAny { capList @0 :List(Capability); - #listList @1 :List(AnyList); # TODO(0.10): Make List(AnyList) work correctly in C++ generated code. + #listList @1 :List(AnyList); # TODO(someday): Make List(AnyList) work correctly in C++ generated code. } interface TestInterface { @@ -814,7 +823,7 @@ interface TestCallOrder { # The input `expected` is ignored but useful for disambiguating debug logs. } -interface TestTailCallee { +interface TestTailCallee $Cxx.allowCancellation { struct TailResult { i @0 :UInt32; t @1 :Text; @@ -828,7 +837,7 @@ interface TestTailCaller { foo @0 (i :Int32, callee :TestTailCallee) -> TestTailCallee.TailResult; } -interface TestStreaming { +interface TestStreaming $Cxx.allowCancellation { doStreamI @0 (i :UInt32) -> stream; doStreamJ @1 (j :UInt32) -> stream; finishStream @2 () -> (totalI :UInt32, totalJ :UInt32); @@ -846,7 +855,7 @@ interface TestMoreStuff extends(TestCallOrder) { callFooWhenResolved @1 (cap :TestInterface) -> (s: Text); # Like callFoo but waits for `cap` to resolve first. - neverReturn @2 (cap :TestInterface) -> (capCopy :TestInterface); + neverReturn @2 (cap :TestInterface) -> (capCopy :TestInterface) $Cxx.allowCancellation; # Doesn't return. You should cancel it. hold @3 (cap :TestInterface) -> (); @@ -861,7 +870,7 @@ interface TestMoreStuff extends(TestCallOrder) { echo @6 (cap :TestCallOrder) -> (cap :TestCallOrder); # Just returns the input cap. - expectCancel @7 (cap :TestInterface) -> (); + expectCancel @7 (cap :TestInterface) -> () $Cxx.allowCancellation; # evalLater()-loops forever, holding `cap`. Must be canceled. methodWithDefaults @8 (a :Text, b :UInt32 = 123, c :Text = "foo") -> (d :Text, e :Text = "bar"); @@ -884,6 +893,7 @@ interface TestMoreStuff extends(TestCallOrder) { # the second. Also creates a socketpair, writes "baz" to one end, and returns the other end. throwException @14 (); + throwRemoteException @15 (); } interface TestMembrane { @@ -892,7 +902,7 @@ interface TestMembrane { callIntercept @2 (thing :Thing, tailCall :Bool) -> Result; loopback @3 (thing :Thing) -> (thing :Thing); - waitForever @4 (); + waitForever @4 () $Cxx.allowCancellation; interface Thing { passThrough @0 () -> Result; @@ -991,3 +1001,42 @@ struct TestNameAnnotation $Cxx.name("RenamedStruct") { interface TestNameAnnotationInterface $Cxx.name("RenamedInterface") { badlyNamedMethod @0 (badlyNamedParam :UInt8 $Cxx.name("renamedParam")) $Cxx.name("renamedMethod"); } + +struct TestImpliedFirstField { + struct TextStruct { + text @0 :Text; + i @1 :UInt32 = 321; + } + + textStruct @0 :TextStruct = "foo"; + textStructList @1 :List(TextStruct); + + intGroup :group { + i @2 :UInt32; + str @3 :Text = "corge"; + } +} + +const testImpliedFirstField :TestImpliedFirstField = ( + textStruct = "bar", + textStructList = ["baz", (text = "qux", i = 123)], + intGroup = 123 +); + +struct TestCycleANoCaps { + foo @0 :TestCycleBNoCaps; +} + +struct TestCycleBNoCaps { + foo @0 :List(TestCycleANoCaps); + bar @1 :TestAllTypes; +} + +struct TestCycleAWithCaps { + foo @0 :TestCycleBWithCaps; +} + +struct TestCycleBWithCaps { + foo @0 :List(TestCycleAWithCaps); + bar @1 :TestInterface; +} diff --git a/libs/EXTERNAL/capnproto/c++/src/capnp/testdata/no-file-id.capnp.nobuild b/libs/EXTERNAL/capnproto/c++/src/capnp/testdata/no-file-id.capnp.nobuild new file mode 100644 index 00000000000..98c92e29245 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/capnp/testdata/no-file-id.capnp.nobuild @@ -0,0 +1 @@ +const foo :Text = "bar"; diff --git a/libs/EXTERNAL/capnproto/c++/src/ekam-rules b/libs/EXTERNAL/capnproto/c++/src/ekam-rules new file mode 120000 index 00000000000..ff5b3b4f985 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/ekam-rules @@ -0,0 +1 @@ +../deps/ekam/src/ekam/rules \ No newline at end of file diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/BUILD.bazel b/libs/EXTERNAL/capnproto/c++/src/kj/BUILD.bazel new file mode 100644 index 00000000000..f5527bea95c --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/kj/BUILD.bazel @@ -0,0 +1,261 @@ +load("//:build/configure.bzl", "kj_configure") + +kj_configure() + +cc_library( + name = "kj", + srcs = [ + "arena.c++", + "array.c++", + "cidr.c++", + "common.c++", + "debug.c++", + "encoding.c++", + "exception.c++", + "filesystem.c++", + "filesystem-disk-unix.c++", + "filesystem-disk-win32.c++", + "hash.c++", + "io.c++", + "list.c++", + "main.c++", + "memory.c++", + "mutex.c++", + "parse/char.c++", + "refcount.c++", + "source-location.c++", + "string.c++", + "string-tree.c++", + "table.c++", + "test-helpers.c++", + "thread.c++", + "time.c++", + "units.c++", + ], + hdrs = [ + "arena.h", + "array.h", + "cidr.h", + "common.h", + "debug.h", + "encoding.h", + "exception.h", + "filesystem.h", + "function.h", + "hash.h", + "io.h", + "list.h", + "main.h", + "map.h", + "memory.h", + "miniposix.h", + "mutex.h", + "one-of.h", + "parse/char.h", + "parse/common.h", + "refcount.h", + "source-location.h", + "std/iostream.h", + "string.h", + "string-tree.h", + "table.h", + "test.h", + "thread.h", + "threadlocal.h", + "time.h", + "tuple.h", + "units.h", + "vector.h", + "win32-api-version.h", + "windows-sanity.h", + ], + include_prefix = "kj", + linkopts = select({ + "@platforms//os:windows": [], + ":use_libdl": [ + "-lpthread", + "-ldl", + ], + "//conditions:default": ["-lpthread"], + }), + visibility = ["//visibility:public"], + deps = [":kj-defines"], +) + +cc_library( + name = "kj-async", + srcs = [ + "async.c++", + "async-io.c++", + "async-io-unix.c++", + "async-io-win32.c++", + "async-unix.c++", + "async-win32.c++", + "timer.c++", + ], + hdrs = [ + "async.h", + "async-inl.h", + "async-io.h", + "async-io-internal.h", + "async-prelude.h", + "async-queue.h", + "async-unix.h", + "async-win32.h", + "timer.h", + ], + include_prefix = "kj", + linkopts = select({ + "@platforms//os:windows": [ + "Ws2_32.lib", + "Advapi32.lib", + ], + "//conditions:default": [], + }), + visibility = ["//visibility:public"], + deps = [":kj"], +) + +cc_library( + name = "kj-test", + srcs = [ + "test.c++", + ], + include_prefix = "kj", + visibility = ["//visibility:public"], + deps = [ + ":kj", + "//src/kj/compat:gtest", + ], +) + +[cc_test( + name = f.removesuffix(".c++"), + srcs = [f], + deps = [ + ":kj", + ":kj-async", + ":kj-test", + ], +) for f in [ + "arena-test.c++", + "array-test.c++", + "async-io-test.c++", + "async-queue-test.c++", + "async-test.c++", + "async-xthread-test.c++", + "common-test.c++", + "debug-test.c++", + "encoding-test.c++", + "exception-test.c++", + "filesystem-disk-test.c++", + "filesystem-test.c++", + "function-test.c++", + "io-test.c++", + "list-test.c++", + "map-test.c++", + "memory-test.c++", + "mutex-test.c++", + "one-of-test.c++", + "parse/char-test.c++", + "refcount-test.c++", + "std/iostream-test.c++", + "string-test.c++", + "string-tree-test.c++", + "table-test.c++", + "test-test.c++", + "threadlocal-test.c++", + "thread-test.c++", + "time-test.c++", + "tuple-test.c++", + "units-test.c++", +]] + +cc_test( + name = "async-coroutine-test", + srcs = ["async-coroutine-test.c++"], + target_compatible_with = select({ + ":use_coroutines": [], + "//conditions:default": ["@platforms//:incompatible"], + }), + deps = [ + ":kj-test", + "//src/kj/compat:kj-http", + ], +) + +cc_library( + name = "filesystem-disk-test-base", + hdrs = [ + "filesystem-disk-test.c++", + "filesystem-disk-unix.c++", + ], +) + +cc_test( + name = "filesystem-disk-generic-test", + srcs = ["filesystem-disk-generic-test.c++"], + deps = [ + ":filesystem-disk-test-base", + ":kj-test", + ], + target_compatible_with = [ + "@platforms//os:linux", + ], +) + +cc_test( + name = "filesystem-disk-old-kernel-test", + srcs = ["filesystem-disk-old-kernel-test.c++"], + deps = [ + ":filesystem-disk-test-base", + ":kj-test", + ], + target_compatible_with = [ + "@platforms//os:linux", + ], +) + +cc_test( + name = "async-os-test", + srcs = select({ + "@platforms//os:windows": ["async-win32-test.c++"], + "//conditions:default": ["async-unix-test.c++"], + }), + deps = [ + ":kj", + ":kj-async", + ":kj-test", + ], +) + +cc_library( + name = "async-os-xthread-test-base", + hdrs = ["async-xthread-test.c++"], +) + +cc_test( + name = "async-os-xthread-test", + srcs = select({ + "@platforms//os:windows": ["async-win32-xthread-test.c++"], + "//conditions:default": ["async-unix-xthread-test.c++"], + }), + deps = [ + ":async-os-xthread-test-base", + ":kj-async", + ":kj-test", + ], +) + +cc_test( + name = "exception-override-symbolizer-test", + srcs = ["exception-override-symbolizer-test.c++"], + deps = [ + ":kj", + ":kj-test", + ], + linkstatic = True, + target_compatible_with = [ + "@platforms//os:linux", + ], +) diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/CMakeLists.txt b/libs/EXTERNAL/capnproto/c++/src/kj/CMakeLists.txt index 813fac4deed..980c53e34c8 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/CMakeLists.txt +++ b/libs/EXTERNAL/capnproto/c++/src/kj/CMakeLists.txt @@ -3,6 +3,7 @@ set(kj_sources_lite array.c++ + cidr.c++ list.c++ common.c++ debug.c++ @@ -37,6 +38,7 @@ else() endif() set(kj_headers + cidr.h common.h units.h memory.h @@ -64,6 +66,7 @@ set(kj_headers filesystem.h time.h main.h + win32-api-version.h windows-sanity.h ) set(kj-parse_headers @@ -84,8 +87,9 @@ endif() #make sure the lite flag propagates to all users (internal + external) of this library target_compile_definitions(kj PUBLIC ${CAPNP_LITE_FLAG}) #make sure external consumers don't need to manually set the include dirs -target_include_directories(kj INTERFACE - $ +get_filename_component(PARENT_DIR ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY) +target_include_directories(kj PUBLIC + $ $ ) # Ensure the library has a version set to match autotools build @@ -130,12 +134,22 @@ set(kj-async_headers async-win32.h async-io.h async-queue.h + cidr.h timer.h ) if(NOT CAPNP_LITE) add_library(kj-async ${kj-async_sources}) add_library(CapnProto::kj-async ALIAS kj-async) target_link_libraries(kj-async PUBLIC kj) + if(WITH_FIBERS) + target_compile_definitions(kj-async PUBLIC KJ_USE_FIBERS) + if(_WITH_LIBUCONTEXT) + target_link_libraries(kj-async PUBLIC PkgConfig::libucontext) + endif() + else() + target_compile_definitions(kj-async PUBLIC KJ_USE_FIBERS=0) + endif() + if(UNIX) # external clients of this library need to link to pthreads target_compile_options(kj-async INTERFACE "-pthread") @@ -161,7 +175,12 @@ set(kj-http_headers if(NOT CAPNP_LITE) add_library(kj-http ${kj-http_sources}) add_library(CapnProto::kj-http ALIAS kj-http) - target_link_libraries(kj-http PUBLIC kj-async kj) + if(WITH_ZLIB) + target_compile_definitions(kj-http PRIVATE KJ_HAS_ZLIB) + target_link_libraries(kj-http PUBLIC kj-async kj ZLIB::ZLIB) + else() + target_link_libraries(kj-http PUBLIC kj-async kj) + endif() # Ensure the library has a version set to match autotools build set_target_properties(kj-http PROPERTIES VERSION ${VERSION}) install(TARGETS kj-http ${INSTALL_TARGETS_DEFAULT_ARGS}) @@ -169,51 +188,51 @@ if(NOT CAPNP_LITE) endif() # kj-tls ====================================================================== -set(kj-tls_sources - compat/readiness-io.c++ - compat/tls.c++ -) -set(kj-tls_headers - compat/readiness-io.h - compat/tls.h -) -if(NOT CAPNP_LITE) - add_library(kj-tls ${kj-tls_sources}) - add_library(CapnProto::kj-tls ALIAS kj-tls) - target_link_libraries(kj-tls PUBLIC kj-async) - if (WITH_OPENSSL) +if(WITH_OPENSSL) + set(kj-tls_sources + compat/readiness-io.c++ + compat/tls.c++ + ) + set(kj-tls_headers + compat/readiness-io.h + compat/tls.h + ) + if(NOT CAPNP_LITE) + add_library(kj-tls ${kj-tls_sources}) + add_library(CapnProto::kj-tls ALIAS kj-tls) + target_link_libraries(kj-tls PUBLIC kj-async) + target_compile_definitions(kj-tls PRIVATE KJ_HAS_OPENSSL) target_link_libraries(kj-tls PRIVATE OpenSSL::SSL OpenSSL::Crypto) + + # Ensure the library has a version set to match autotools build + set_target_properties(kj-tls PROPERTIES VERSION ${VERSION}) + install(TARGETS kj-tls ${INSTALL_TARGETS_DEFAULT_ARGS}) + install(FILES ${kj-tls_headers} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/kj/compat") endif() - # Ensure the library has a version set to match autotools build - set_target_properties(kj-tls PROPERTIES VERSION ${VERSION}) - install(TARGETS kj-tls ${INSTALL_TARGETS_DEFAULT_ARGS}) - install(FILES ${kj-tls_headers} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/kj/compat") endif() # kj-gzip ====================================================================== -set(kj-gzip_sources - compat/gzip.c++ -) -set(kj-gzip_headers - compat/gzip.h -) -if(NOT CAPNP_LITE) - add_library(kj-gzip ${kj-gzip_sources}) - add_library(CapnProto::kj-gzip ALIAS kj-gzip) +if(WITH_ZLIB) + set(kj-gzip_sources + compat/gzip.c++ + ) + set(kj-gzip_headers + compat/gzip.h + ) + if(NOT CAPNP_LITE) + add_library(kj-gzip ${kj-gzip_sources}) + add_library(CapnProto::kj-gzip ALIAS kj-gzip) - find_package(ZLIB) - if(ZLIB_FOUND) - add_definitions(-D KJ_HAS_ZLIB=1) - include_directories(${ZLIB_INCLUDE_DIRS}) - target_link_libraries(kj-gzip PUBLIC kj-async kj ${ZLIB_LIBRARIES}) - endif() + target_compile_definitions(kj-gzip PRIVATE KJ_HAS_ZLIB) + target_link_libraries(kj-gzip PUBLIC kj-async kj ZLIB::ZLIB) - # Ensure the library has a version set to match autotools build - set_target_properties(kj-gzip PROPERTIES VERSION ${VERSION}) - install(TARGETS kj-gzip ${INSTALL_TARGETS_DEFAULT_ARGS}) - install(FILES ${kj-gzip_headers} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/kj/compat") + # Ensure the library has a version set to match autotools build + set_target_properties(kj-gzip PROPERTIES VERSION ${VERSION}) + install(TARGETS kj-gzip ${INSTALL_TARGETS_DEFAULT_ARGS}) + install(FILES ${kj-gzip_headers} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/kj/compat") + endif() endif() # Tests ======================================================================== @@ -228,6 +247,8 @@ if(BUILD_TESTING) table-test.c++ map-test.c++ exception-test.c++ + # this test overrides symbolizer and has to be linked separately + # exception-override-symbolizer-test.c++ debug-test.c++ io-test.c++ mutex-test.c++ @@ -245,6 +266,7 @@ if(BUILD_TESTING) add_executable(kj-heavy-tests async-test.c++ async-xthread-test.c++ + async-coroutine-test.c++ async-unix-test.c++ async-unix-xthread-test.c++ async-win32-test.c++ @@ -268,11 +290,22 @@ if(BUILD_TESTING) compat/gzip-test.c++ compat/tls-test.c++ ) - target_link_libraries(kj-heavy-tests kj-http kj-gzip kj-tls kj-async kj-test kj) - if (WITH_OPENSSL) - set_source_files_properties(compat/tls-test.c++ - PROPERTIES - COMPILE_DEFINITIONS KJ_HAS_OPENSSL + target_link_libraries(kj-heavy-tests kj-http kj-async kj-test kj) + if(WITH_OPENSSL) + target_link_libraries(kj-heavy-tests kj-tls) + # tls-test.c++ needs to use OpenSSL directly. + target_link_libraries(kj-heavy-tests OpenSSL::SSL OpenSSL::Crypto) + target_compile_definitions(kj-heavy-tests PRIVATE KJ_HAS_OPENSSL) + set_property( + SOURCE compat/tls-test.c++ + APPEND PROPERTY COMPILE_DEFINITIONS KJ_HAS_OPENSSL + ) + endif() + if(WITH_ZLIB) + target_link_libraries(kj-heavy-tests kj-gzip) + set_property( + SOURCE compat/gzip-test.c++ + APPEND PROPERTY COMPILE_DEFINITIONS KJ_HAS_ZLIB ) endif() add_dependencies(check kj-heavy-tests) diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/arena.h b/libs/EXTERNAL/capnproto/c++/src/kj/arena.h index 63e0e31ed03..a16b2911216 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/arena.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/arena.h @@ -47,7 +47,7 @@ class Arena { explicit Arena(ArrayPtr scratch); // Allocates from the given scratch space first, only resorting to the heap when it runs out. - KJ_DISALLOW_COPY(Arena); + KJ_DISALLOW_COPY_AND_MOVE(Arena); ~Arena() noexcept(false); template @@ -134,11 +134,11 @@ class Arena { template T& Arena::allocate(Params&&... params) { T& result = *reinterpret_cast(allocateBytes( - sizeof(T), alignof(T), !__has_trivial_destructor(T))); - if (!__has_trivial_constructor(T) || sizeof...(Params) > 0) { + sizeof(T), alignof(T), !KJ_HAS_TRIVIAL_DESTRUCTOR(T))); + if (!KJ_HAS_TRIVIAL_CONSTRUCTOR(T) || sizeof...(Params) > 0) { ctor(result, kj::fwd(params)...); } - if (!__has_trivial_destructor(T)) { + if (!KJ_HAS_TRIVIAL_DESTRUCTOR(T)) { setDestructor(&result, &destroyObject); } return result; @@ -146,11 +146,11 @@ T& Arena::allocate(Params&&... params) { template ArrayPtr Arena::allocateArray(size_t size) { - if (__has_trivial_destructor(T)) { + if (KJ_HAS_TRIVIAL_DESTRUCTOR(T)) { ArrayPtr result = arrayPtr(reinterpret_cast(allocateBytes( sizeof(T) * size, alignof(T), false)), size); - if (!__has_trivial_constructor(T)) { + if (!KJ_HAS_TRIVIAL_CONSTRUCTOR(T)) { for (size_t i = 0; i < size; i++) { ctor(result[i]); } @@ -165,7 +165,7 @@ ArrayPtr Arena::allocateArray(size_t size) { arrayPtr(reinterpret_cast(reinterpret_cast(base) + prefixSize), size); setDestructor(base, &destroyArray); - if (__has_trivial_constructor(T)) { + if (KJ_HAS_TRIVIAL_CONSTRUCTOR(T)) { tag = size; } else { // In case of constructor exceptions, we need the tag to end up storing the number of objects @@ -183,7 +183,7 @@ ArrayPtr Arena::allocateArray(size_t size) { template Own Arena::allocateOwn(Params&&... params) { T& result = *reinterpret_cast(allocateBytes(sizeof(T), alignof(T), false)); - if (!__has_trivial_constructor(T) || sizeof...(Params) > 0) { + if (!KJ_HAS_TRIVIAL_CONSTRUCTOR(T) || sizeof...(Params) > 0) { ctor(result, kj::fwd(params)...); } return Own(&result, DestructorOnlyDisposer::instance); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/array-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/array-test.c++ index d361b65cab1..24e9d748dc8 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/array-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/array-test.c++ @@ -378,7 +378,7 @@ TEST(Array, ReleaseAsBytesOrChars) { } } -#if __cplusplus > 201402L +#if KJ_CPP_STD > 201402L KJ_TEST("kj::arr()") { kj::Array array = kj::arr(kj::str("foo"), kj::str(123)); KJ_EXPECT(array == kj::ArrayPtr({"foo", "123"})); @@ -386,7 +386,7 @@ KJ_TEST("kj::arr()") { struct ImmovableInt { ImmovableInt(int i): i(i) {} - KJ_DISALLOW_COPY(ImmovableInt); + KJ_DISALLOW_COPY_AND_MOVE(ImmovableInt); int i; }; diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/array.h b/libs/EXTERNAL/capnproto/c++/src/kj/array.h index fdd7d4cf504..3932f9f4f3e 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/array.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/array.h @@ -56,7 +56,7 @@ class ArrayDisposer { // an exception. private: - template + template struct Dispose_; }; @@ -74,7 +74,7 @@ class ExceptionSafeArrayUtil { : pos(reinterpret_cast(ptr) + elementSize * constructedElementCount), elementSize(elementSize), constructedElementCount(constructedElementCount), destroyElement(destroyElement) {} - KJ_DISALLOW_COPY(ExceptionSafeArrayUtil); + KJ_DISALLOW_COPY_AND_MOVE(ExceptionSafeArrayUtil); inline ~ExceptionSafeArrayUtil() noexcept(false) { if (constructedElementCount > 0) destroyAll(); @@ -285,8 +285,8 @@ class HeapArrayDisposer final: public ArrayDisposer { virtual void disposeImpl(void* firstElement, size_t elementSize, size_t elementCount, size_t capacity, void (*destroyElement)(void*)) const override; - template + template struct Allocate_; }; @@ -417,7 +417,7 @@ class ArrayBuilder { KJ_IREQUIRE(size <= this->size(), "can't use truncate() to expand"); T* target = ptr + size; - if (__has_trivial_destructor(T)) { + if (KJ_HAS_TRIVIAL_DESTRUCTOR(T)) { pos = target; } else { while (pos > target) { @@ -427,7 +427,7 @@ class ArrayBuilder { } void clear() { - if (__has_trivial_destructor(T)) { + if (KJ_HAS_TRIVIAL_DESTRUCTOR(T)) { pos = ptr; } else { while (pos > ptr) { @@ -442,7 +442,7 @@ class ArrayBuilder { T* target = ptr + size; if (target > pos) { // expand - if (__has_trivial_constructor(T)) { + if (KJ_HAS_TRIVIAL_CONSTRUCTOR(T)) { pos = target; } else { while (pos < target) { @@ -451,7 +451,7 @@ class ArrayBuilder { } } else { // truncate - if (__has_trivial_destructor(T)) { + if (KJ_HAS_TRIVIAL_DESTRUCTOR(T)) { pos = target; } else { while (pos > target) { @@ -848,7 +848,7 @@ inline Array heapArray(std::initializer_list init) { return heapArray(init.begin(), init.end()); } -#if __cplusplus > 201402L +#if KJ_CPP_STD > 201402L template inline Array> arr(T&& param1, Params&&... params) { ArrayBuilder> builder = heapArrayBuilder>(sizeof...(params) + 1); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-coroutine-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-coroutine-test.c++ new file mode 100644 index 00000000000..de767eca0cb --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-coroutine-test.c++ @@ -0,0 +1,578 @@ +// Copyright (c) 2020 Cloudflare, Inc. and contributors +// Licensed under the MIT License: +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#include +#include +#include +#include +#include + +namespace kj { +namespace { + +#ifdef KJ_HAS_COROUTINE + +template +Promise> identity(T&& value) { + co_return kj::fwd(value); +} +// Work around a bonkers MSVC ICE with a separate overload. +Promise identity(const char* value) { + co_return value; +} + +KJ_TEST("Identity coroutine") { + EventLoop loop; + WaitScope waitScope(loop); + + KJ_EXPECT(identity(123).wait(waitScope) == 123); + KJ_EXPECT(*identity(kj::heap(456)).wait(waitScope) == 456); + + { + auto p = identity("we can cancel the coroutine"); + } +} + +template +Promise simpleCoroutine(kj::Promise result, kj::Promise dontThrow = true) { + KJ_ASSERT(co_await dontThrow); + co_return co_await result; +} + +KJ_TEST("Simple coroutine test") { + EventLoop loop; + WaitScope waitScope(loop); + + simpleCoroutine(kj::Promise(kj::READY_NOW)).wait(waitScope); + + KJ_EXPECT(simpleCoroutine(kj::Promise(123)).wait(waitScope) == 123); +} + +struct Counter { + size_t& wind; + size_t& unwind; + Counter(size_t& wind, size_t& unwind): wind(wind), unwind(unwind) { ++wind; } + ~Counter() { ++unwind; } + KJ_DISALLOW_COPY_AND_MOVE(Counter); +}; + +kj::Promise countAroundAwait(size_t& wind, size_t& unwind, kj::Promise promise) { + Counter counter1(wind, unwind); + co_await promise; + Counter counter2(wind, unwind); + co_return; +}; + +KJ_TEST("co_awaiting initial immediate promises suspends even if event loop is empty and running") { + // The coroutine PromiseNode implementation contains an optimization which allows us to avoid + // suspending the coroutine and instead immediately call PromiseNode::get() and proceed with + // execution, but only if the coroutine has suspended at least once. This test verifies that the + // optimization is disabled for this initial suspension. + + EventLoop loop; + WaitScope waitScope(loop); + + // The immediate-execution optimization is only enabled when the event loop is running, so use an + // eagerly-evaluated evalLater() to perform the test from within the event loop. (If we didn't + // eagerly-evaluate the promise, the result would be extracted after the loop finished, which + // would disable the optimization anyway.) + kj::evalLater([&]() { + size_t wind = 0, unwind = 0; + + auto promise = kj::Promise(kj::READY_NOW); + auto coroPromise = countAroundAwait(wind, unwind, kj::READY_NOW); + + // `coro` has not completed. + KJ_EXPECT(wind == 1); + KJ_EXPECT(unwind == 0); + }).eagerlyEvaluate(nullptr).wait(waitScope); + + kj::evalLater([&]() { + // If there are no background tasks in the queue, coroutines execute through an evalLater() + // without suspending. + + size_t wind = 0, unwind = 0; + bool evalLaterRan = false; + + auto promise = kj::evalLater([&]() { evalLaterRan = true; }); + auto coroPromise = countAroundAwait(wind, unwind, kj::mv(promise)); + + KJ_EXPECT(evalLaterRan == false); + KJ_EXPECT(wind == 1); + KJ_EXPECT(unwind == 0); + }).eagerlyEvaluate(nullptr).wait(waitScope); +} + +KJ_TEST("co_awaiting an immediate promise suspends if the event loop is not running") { + // We only want to enable the immediate-execution optimization if the event loop is running, or + // else a whole bunch of RPC tests break, because some .then()s get evaluated on promise + // construction, before any .wait() call. + + EventLoop loop; + WaitScope waitScope(loop); + + size_t wind = 0, unwind = 0; + + auto promise = kj::Promise(kj::READY_NOW); + auto coroPromise = countAroundAwait(wind, unwind, kj::READY_NOW); + + // In the previous test, this exact same code executed immediately because the event loop was + // running. + KJ_EXPECT(wind == 1); + KJ_EXPECT(unwind == 0); +} + +KJ_TEST("co_awaiting immediate promises suspends if the event loop is not empty") { + // We want to make sure that we can still return to the event loop when we need to. + + EventLoop loop; + WaitScope waitScope(loop); + + // The immediate-execution optimization is only enabled when the event loop is running, so use an + // eagerly-evaluated evalLater() to perform the test from within the event loop. (If we didn't + // eagerly-evaluate the promise, the result would be extracted after the loop finished.) + kj::evalLater([&]() { + size_t wind = 0, unwind = 0; + + // We need to enqueue an Event on the event loop to inhibit the immediate-execution + // optimization. Creating and then immediately fulfilling an EagerPromiseNode is a convenient + // way to do so. + auto paf = newPromiseAndFulfiller(); + paf.promise = paf.promise.eagerlyEvaluate(nullptr); + paf.fulfiller->fulfill(); + + auto promise = kj::Promise(kj::READY_NOW); + auto coroPromise = countAroundAwait(wind, unwind, kj::READY_NOW); + + // We didn't immediately extract the READY_NOW. + KJ_EXPECT(wind == 1); + KJ_EXPECT(unwind == 0); + }).eagerlyEvaluate(nullptr).wait(waitScope); + + kj::evalLater([&]() { + size_t wind = 0, unwind = 0; + bool evalLaterRan = false; + + // We need to enqueue an Event on the event loop to inhibit the immediate-execution + // optimization. Creating and then immediately fulfilling an EagerPromiseNode is a convenient + // way to do so. + auto paf = newPromiseAndFulfiller(); + paf.promise = paf.promise.eagerlyEvaluate(nullptr); + paf.fulfiller->fulfill(); + + auto promise = kj::evalLater([&]() { evalLaterRan = true; }); + auto coroPromise = countAroundAwait(wind, unwind, kj::mv(promise)); + + // We didn't continue through the evalLater() promise, because the background promise's + // continuation was next in the event loop's queue. + KJ_EXPECT(evalLaterRan == false); + // No Counter destructor has run. + KJ_EXPECT(wind == 1); + KJ_EXPECT(unwind == 0); + }).eagerlyEvaluate(nullptr).wait(waitScope); +} + +KJ_TEST("Exceptions propagate through layered coroutines") { + EventLoop loop; + WaitScope waitScope(loop); + + auto throwy = simpleCoroutine(kj::Promise(kj::NEVER_DONE), false); + + KJ_EXPECT_THROW_RECOVERABLE(FAILED, simpleCoroutine(kj::mv(throwy)).wait(waitScope)); +} + +KJ_TEST("Exceptions before the first co_await don't escape, but reject the promise") { + EventLoop loop; + WaitScope waitScope(loop); + + auto throwEarly = []() -> Promise { + KJ_FAIL_ASSERT("test exception"); +#ifdef __GNUC__ +// Yes, this `co_return` is unreachable. But without it, this function is no longer a coroutine. +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunreachable-code" +#endif // __GNUC__ + co_return; +#ifdef __GNUC__ +#pragma GCC diagnostic pop +#endif // __GNUC__ + }; + + auto throwy = throwEarly(); + + KJ_EXPECT_THROW_RECOVERABLE(FAILED, throwy.wait(waitScope)); +} + +KJ_TEST("Coroutines can catch exceptions from co_await") { + EventLoop loop; + WaitScope waitScope(loop); + + kj::String description; + + auto tryCatch = [&](kj::Promise promise) -> kj::Promise { + try { + co_await promise; + } catch (const kj::Exception& exception) { + co_return kj::str(exception.getDescription()); + } + KJ_FAIL_EXPECT("should have thrown"); + KJ_UNREACHABLE; + }; + + { + // Immediately ready case. + auto promise = kj::Promise(KJ_EXCEPTION(FAILED, "catch me")); + KJ_EXPECT(tryCatch(kj::mv(promise)).wait(waitScope) == "catch me"); + } + + { + // Ready later case. + auto promise = kj::evalLater([]() -> kj::Promise { + return KJ_EXCEPTION(FAILED, "catch me"); + }); + KJ_EXPECT(tryCatch(kj::mv(promise)).wait(waitScope) == "catch me"); + } +} + +KJ_TEST("Coroutines can be canceled while suspended") { + EventLoop loop; + WaitScope waitScope(loop); + + size_t wind = 0, unwind = 0; + + auto coro = [&](kj::Promise promise) -> kj::Promise { + Counter counter1(wind, unwind); + co_await kj::evalLater([](){}); + Counter counter2(wind, unwind); + co_await promise; + }; + + { + auto neverDone = kj::Promise(kj::NEVER_DONE); + neverDone = neverDone.attach(kj::heap(wind, unwind)); + auto promise = coro(kj::mv(neverDone)); + KJ_EXPECT(!promise.poll(waitScope)); + } + + // Stack variables on both sides of a co_await, plus coroutine arguments are destroyed. + KJ_EXPECT(wind == 3); + KJ_EXPECT(unwind == 3); +} + +kj::Promise deferredThrowCoroutine(kj::Promise awaitMe) { + KJ_DEFER(kj::throwFatalException(KJ_EXCEPTION(FAILED, "thrown during unwind"))); + co_await awaitMe; + co_return; +}; + +KJ_TEST("Exceptions during suspended coroutine frame-unwind propagate via destructor") { + EventLoop loop; + WaitScope waitScope(loop); + + auto exception = KJ_ASSERT_NONNULL(kj::runCatchingExceptions([&]() { + deferredThrowCoroutine(kj::NEVER_DONE); + })); + + KJ_EXPECT(exception.getDescription() == "thrown during unwind"); +}; + +KJ_TEST("Exceptions during suspended coroutine frame-unwind do not cause a memory leak") { + EventLoop loop; + WaitScope waitScope(loop); + + // We can't easily test for memory leaks without hooking operator new and delete. However, we can + // arrange for the test to crash on failure, by having the coroutine suspend at a promise that we + // later fulfill, thus arming the Coroutine's Event. If we fail to destroy the coroutine in this + // state, EventLoop will throw on destruction because it can still see the Event in its list. + + auto exception = KJ_ASSERT_NONNULL(kj::runCatchingExceptions([&]() { + auto paf = kj::newPromiseAndFulfiller(); + + auto coroPromise = deferredThrowCoroutine(kj::mv(paf.promise)); + + // Arm the Coroutine's Event. + paf.fulfiller->fulfill(); + + // If destroying `coroPromise` does not run ~Event(), then ~EventLoop() will crash later. + })); + + KJ_EXPECT(exception.getDescription() == "thrown during unwind"); +}; + +KJ_TEST("Exceptions during completed coroutine frame-unwind propagate via returned Promise") { + EventLoop loop; + WaitScope waitScope(loop); + + { + // First, prove that exceptions don't escape the destructor of a completed coroutine. + auto promise = deferredThrowCoroutine(kj::READY_NOW); + KJ_EXPECT(promise.poll(waitScope)); + } + + { + // Next, prove that they show up via the returned Promise. + auto promise = deferredThrowCoroutine(kj::READY_NOW); + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("thrown during unwind", promise.wait(waitScope)); + } +} + +KJ_TEST("Coroutine destruction exceptions are ignored if there is another exception in flight") { + EventLoop loop; + WaitScope waitScope(loop); + + auto exception = KJ_ASSERT_NONNULL(kj::runCatchingExceptions([&]() { + auto promise = deferredThrowCoroutine(kj::NEVER_DONE); + kj::throwFatalException(KJ_EXCEPTION(FAILED, "thrown before destroying throwy promise")); + })); + + KJ_EXPECT(exception.getDescription() == "thrown before destroying throwy promise"); +} + +KJ_TEST("co_await only sees coroutine destruction exceptions if promise was not rejected") { + EventLoop loop; + WaitScope waitScope(loop); + + // throwyDtorPromise is an immediate void promise that will throw when it's destroyed, which + // we expect to be able to catch from a coroutine which co_awaits it. + auto throwyDtorPromise = kj::Promise(kj::READY_NOW) + .attach(kj::defer([]() { + kj::throwFatalException(KJ_EXCEPTION(FAILED, "thrown during unwind")); + })); + + // rejectedThrowyDtorPromise is a rejected promise. When co_awaited in a coroutine, + // Awaiter::await_resume() will throw that exception for us to catch, but before we can catch it, + // the temporary promise will be destroyed. The exception it throws during unwind will be ignored, + // and the caller of the coroutine will see only the "thrown during execution" exception. + auto rejectedThrowyDtorPromise = kj::evalNow([&]() -> kj::Promise { + kj::throwFatalException(KJ_EXCEPTION(FAILED, "thrown during execution")); + }).attach(kj::defer([]() { + kj::throwFatalException(KJ_EXCEPTION(FAILED, "thrown during unwind")); + })); + + auto awaitPromise = [](kj::Promise promise) -> kj::Promise { + co_await promise; + }; + + KJ_EXPECT_THROW_MESSAGE("thrown during unwind", + awaitPromise(kj::mv(throwyDtorPromise)).wait(waitScope)); + + KJ_EXPECT_THROW_MESSAGE("thrown during execution", + awaitPromise(kj::mv(rejectedThrowyDtorPromise)).wait(waitScope)); +} + +#if !_MSC_VER && !__aarch64__ +uint countLines(StringPtr s) { + uint lines = 0; + for (char c: s) { + lines += c == '\n'; + } + return lines; +} + +// TODO(msvc): This test relies on GetFunctorStartAddress, which is not supported on MSVC currently, +// so skip the test. +// TODO(someday): Test is flakey on arm64, depending on how it's compiled. I haven't had a chance to +// investigate much, but noticed that it failed in a debug build, but passed in a local opt build. +KJ_TEST("Can trace through coroutines") { + // This verifies that async traces, generated either from promises or from events, can see through + // coroutines. + // + // This test may be a bit brittle because it depends on specific trace counts. + + // Enable stack traces, even in release mode. + class EnableFullStackTrace: public ExceptionCallback { + public: + StackTraceMode stackTraceMode() override { return StackTraceMode::FULL; } + }; + EnableFullStackTrace exceptionCallback; + + EventLoop loop; + WaitScope waitScope(loop); + + auto paf = newPromiseAndFulfiller(); + + // Get an async trace when the promise is fulfilled. We eagerlyEvaluate() to make sure the + // continuation executes while the event loop is running. + paf.promise = paf.promise.then([]() { + auto trace = getAsyncTrace(); + // We expect one entry for waitImpl(), one for the coroutine, and one for this continuation. + // When building in debug mode with CMake, I observed this count can be 2. The missing frame is + // probably this continuation. Let's just expect a range. + auto count = countLines(trace); + KJ_EXPECT(0 < count && count <= 3); + }).eagerlyEvaluate(nullptr); + + auto coroPromise = [&]() -> kj::Promise { + co_await paf.promise; + }(); + + { + auto trace = coroPromise.trace(); + // One for the Coroutine PromiseNode, one for paf.promise. + KJ_EXPECT(countLines(trace) >= 2); + } + + paf.fulfiller->fulfill(); + + coroPromise.wait(waitScope); +} +#endif // !_MSC_VER || defined(__clang__) + +Promise sendData(Promise> addressPromise) { + auto address = co_await addressPromise; + auto client = co_await address->connect(); + co_await client->write("foo", 3); +} + +Promise receiveDataCoroutine(Own listener) { + auto server = co_await listener->accept(); + char buffer[4]; + auto n = co_await server->read(buffer, 3, 4); + KJ_EXPECT(3u == n); + co_return heapString(buffer, n); +} + +KJ_TEST("Simple network test with coroutine") { + auto io = setupAsyncIo(); + auto& network = io.provider->getNetwork(); + + Own serverAddress = network.parseAddress("*", 0).wait(io.waitScope); + Own listener = serverAddress->listen(); + + sendData(network.parseAddress("localhost", listener->getPort())) + .detach([](Exception&& exception) { + KJ_FAIL_EXPECT(exception); + }); + + String result = receiveDataCoroutine(kj::mv(listener)).wait(io.waitScope); + + KJ_EXPECT("foo" == result); +} + +Promise> httpClientConnect(AsyncIoContext& io) { + auto addr = co_await io.provider->getNetwork().parseAddress("capnproto.org", 80); + co_return co_await addr->connect(); +} + +Promise httpClient(Own connection) { + // Borrowed and rewritten from compat/http-test.c++. + + HttpHeaderTable table; + auto client = newHttpClient(table, *connection); + + HttpHeaders headers(table); + headers.set(HttpHeaderId::HOST, "capnproto.org"); + + auto response = co_await client->request(HttpMethod::GET, "/", headers).response; + KJ_EXPECT(response.statusCode / 100 == 3); + auto location = KJ_ASSERT_NONNULL(response.headers->get(HttpHeaderId::LOCATION)); + KJ_EXPECT(location == "https://capnproto.org/"); + + auto body = co_await response.body->readAllText(); +} + +KJ_TEST("HttpClient to capnproto.org with a coroutine") { + auto io = setupAsyncIo(); + + auto promise = httpClientConnect(io).then([](Own connection) { + return httpClient(kj::mv(connection)); + }, [](Exception&&) { + KJ_LOG(WARNING, "skipping test because couldn't connect to capnproto.org"); + }); + + promise.wait(io.waitScope); +} + +// ======================================================================================= +// coCapture() tests + +KJ_TEST("Verify coCapture() functors can only be run once") { + auto io = kj::setupAsyncIo(); + + auto functor = coCapture([](kj::Timer& timer) -> kj::Promise { + co_await timer.afterDelay(1 * kj::MILLISECONDS); + }); + + auto promise = functor(io.lowLevelProvider->getTimer()); + KJ_EXPECT_THROW(FAILED, functor(io.lowLevelProvider->getTimer())); + + promise.wait(io.waitScope); +} + +auto makeDelayedIntegerFunctor(size_t i) { + return [i](kj::Timer& timer) -> kj::Promise { + co_await timer.afterDelay(1 * kj::MILLISECONDS); + co_return i; + }; +} + +KJ_TEST("Verify coCapture() with local scoped functors") { + auto io = kj::setupAsyncIo(); + + constexpr size_t COUNT = 100; + kj::Vector> promises; + for (size_t i = 0; i < COUNT; ++i) { + auto functor = coCapture(makeDelayedIntegerFunctor(i)); + promises.add(functor(io.lowLevelProvider->getTimer())); + } + + for (size_t i = COUNT; i > 0 ; --i) { + auto j = i-1; + auto result = promises[j].wait(io.waitScope); + KJ_REQUIRE(result == j); + } +} + +auto makeCheckThenDelayedIntegerFunctor(kj::Timer& timer, size_t i) { + return [&timer, i](size_t val) -> kj::Promise { + KJ_REQUIRE(val == i); + co_await timer.afterDelay(1 * kj::MILLISECONDS); + co_return i; + }; +} + +KJ_TEST("Verify coCapture() with continuation functors") { + // This test usually works locally without `coCapture()()`. It does however, fail in + // ASAN. + auto io = kj::setupAsyncIo(); + + constexpr size_t COUNT = 100; + kj::Vector> promises; + for (size_t i = 0; i < COUNT; ++i) { + auto promise = io.lowLevelProvider->getTimer().afterDelay(1 * kj::MILLISECONDS).then([i]() { + return i; + }); + promise = promise.then(coCapture( + makeCheckThenDelayedIntegerFunctor(io.lowLevelProvider->getTimer(), i))); + promises.add(kj::mv(promise)); + } + + for (size_t i = COUNT; i > 0 ; --i) { + auto j = i-1; + auto result = promises[j].wait(io.waitScope); + KJ_REQUIRE(result == j); + } +} + +#endif // KJ_HAS_COROUTINE + +} // namespace +} // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-inl.h b/libs/EXTERNAL/capnproto/c++/src/kj/async-inl.h index 55ab97a335a..fc8a9813244 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-inl.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-inl.h @@ -31,9 +31,13 @@ #include "async.h" // help IDE parse this file #endif -KJ_BEGIN_HEADER +#if _MSC_VER && KJ_HAS_COROUTINE +#include +#endif + +#include -#include "list.h" +KJ_BEGIN_HEADER namespace kj { namespace _ { // private @@ -134,15 +138,20 @@ class TraceBuilder { void** limit; }; -class Event { +struct alignas(void*) PromiseArena { + // Space in which a chain of promises may be allocated. See PromiseDisposer. + byte bytes[1024]; +}; + +class Event: private AsyncObject { // An event waiting to be executed. Not for direct use by applications -- promises use this // internally. public: - Event(); - Event(kj::EventLoop& loop); + Event(SourceLocation location); + Event(kj::EventLoop& loop, SourceLocation location); ~Event() noexcept(false); - KJ_DISALLOW_COPY(Event); + KJ_DISALLOW_COPY_AND_MOVE(Event); void armDepthFirst(); // Enqueue this event so that `fire()` will be called from the event loop soon. @@ -166,6 +175,18 @@ class Event { // Enqueues this event to happen after all other events have run to completion and there is // really nothing left to do except wait for I/O. + bool isNext(); + // True if the Event has been armed and is next in line to be fired. This can be used after + // calling PromiseNode::onReady(event) to determine if a promise being waited is immediately + // ready, in which case continuations may be optimistically run without returning to the event + // loop. Note that this optimization is only valid if we know that we would otherwise immediately + // return to the event loop without running more application code. So this turns out to be useful + // in fairly narrow circumstances, chiefly when a coroutine is about to suspend, but discovers it + // doesn't need to. + // + // Returns false if the event loop is not currently running. This ensures that promise + // continuations don't execute except under a call to .wait(). + void disarm(); // If the event is armed but hasn't fired, cancel it. (Destroying the event does this // implicitly.) @@ -194,9 +215,46 @@ class Event { Event* next; Event** prev; bool firing = false; + + static constexpr uint MAGIC_LIVE_VALUE = 0x1e366381u; + uint live = MAGIC_LIVE_VALUE; + SourceLocation location; +}; + +class PromiseArenaMember { + // An object that is allocated in a PromiseArena. `PromiseNode` inherits this, and most + // arena-allocated objects are `PromiseNode` subclasses, but `TaskSet::Task`, ForkHub, and + // potentially other objects that commonly live on the end of a promise chain can also leverage + // this. + +public: + virtual void destroy() = 0; + // Destroys and frees the node. + // + // If the node was allocated using allocPromise(), then destroy() must call + // freePromise(this). If it was allocated some other way, then it is `destroy()`'s + // responsibility to complete any necessary cleanup of memory, e.g. call `delete this`. + // + // We use this instead of a virtual destructor for two reasons: + // 1. Coroutine nodes are not independent objects, they have to call destroy() on the coroutine + // handle to delete themselves. + // 2. XThreadEvents sometimes leave it up to a different thread to actually delete the object. + +private: + PromiseArena* arena = nullptr; + // If non-null, then this PromiseNode is the last node allocated within the given arena, and + // therefore owns the arena. After this node is destroyed, the arena should be deleted. + // + // PromiseNodes are allocated within the arena starting from the end, and `PromiseNode`s + // allocated this way are required to have `PromiseNode` itself as their leftmost inherited type, + // so that the pointers match. Thus, the space in `arena` from its start to the location of the + // `PromiseNode` is known to be available for subsequent allocations (which should then take + // ownership of the arena). + + friend class PromiseDisposer; }; -class PromiseNode { +class PromiseNode: public PromiseArenaMember, private AsyncObject { // A Promise contains a chain of PromiseNodes tracking the pending transformations. // // To reduce generated code bloat, PromiseNode is not a template. Instead, it makes very hacky @@ -212,7 +270,7 @@ class PromiseNode { // never be armed, only the new one. If called again after the event was armed, the new event // will be armed immediately. Can be called with nullptr to un-register the existing event. - virtual void setSelfPointer(Own* selfPtr) noexcept; + virtual void setSelfPointer(OwnPromiseNode* selfPtr) noexcept; // Tells the node that `selfPtr` is the pointer that owns this node, and will continue to own // this node until it is destroyed or setSelfPointer() is called again. ChainPromiseNode uses // this to shorten redundant chains. The default implementation does nothing; only @@ -231,7 +289,7 @@ class PromiseNode { // // If `stopAtNextEvent` is true, then the trace should stop as soon as it hits a PromiseNode that // also implements Event, and should not trace that node or its children. This is used in - // conjuction with Event::traceEvent(). The chain of Events is often more sparse than the chain + // conjunction with Event::traceEvent(). The chain of Events is often more sparse than the chain // of PromiseNodes, because a TransformPromiseNode (which implements .then()) is not itself an // Event. TransformPromiseNode instead tells its child node to directly notify its *parent* node // when it is ready, and then TransformPromiseNode applies the .then() transformation during the @@ -246,7 +304,7 @@ class PromiseNode { // must not allocate nor take locks. template - static Own from(T&& promise) { + static OwnPromiseNode from(T&& promise) { // Given a Promise, extract the PromiseNode. return kj::mv(promise.node); } @@ -256,7 +314,7 @@ class PromiseNode { return *promise.node; } template - static T to(Own&& node) { + static T to(OwnPromiseNode&& node) { // Construct a Promise from a PromiseNode. (T should be a Promise type.) return T(false, kj::mv(node)); } @@ -282,8 +340,126 @@ class PromiseNode { }; }; +class PromiseDisposer { +public: + template + static constexpr bool canArenaAllocate() { + // We can only use arena allocation for types that fit in an arena and have pointer-size + // alignment. Anything else will need to be allocated as a separate heap object. + return sizeof(T) <= sizeof(PromiseArena) && alignof(T) <= alignof(void*); + } + + static void dispose(PromiseArenaMember* node) { + PromiseArena* arena = node->arena; + node->destroy(); + delete arena; // reminder: `delete` automatically ignores null pointers + } + + template + static kj::Own alloc(Params&&... params) noexcept { + // Implements allocPromise(). + T* ptr; + if (!canArenaAllocate()) { + // Node too big (or needs weird alignment), fall back to regular heap allocation. + ptr = new T(kj::fwd(params)...); + } else { + // Start a new arena. + // + // NOTE: As in append() (below), we don't implement exception-safety because it causes code + // bloat and these constructors probably don't throw. Instead this function is noexcept, so + // if a constructor does throw, it'll crash rather than leak memory. + auto* arena = new PromiseArena; + ptr = reinterpret_cast(arena + 1) - 1; + ctor(*ptr, kj::fwd(params)...); + ptr->arena = arena; + KJ_IREQUIRE(reinterpret_cast(ptr) == + reinterpret_cast(static_cast(ptr)), + "PromiseArenaMember must be the leftmost inherited type."); + } + return kj::Own(ptr); + } + + template + static kj::Own append( + OwnPromiseNode&& next, Params&&... params) noexcept { + // Implements appendPromise(). + + PromiseArena* arena = next->arena; + + if (!canArenaAllocate() || arena == nullptr || + reinterpret_cast(next.get()) - reinterpret_cast(arena) < sizeof(T)) { + // No arena available, or not enough space, or weird alignment needed. Start new arena. + return alloc(kj::mv(next), kj::fwd(params)...); + } else { + // Append to arena. + // + // NOTE: When we call ctor(), it takes ownership of `next`, so we shouldn't assume `next` + // still exists after it returns. So we have to remove ownership of the arena before that. + // In theory if we wanted this to be exception-safe, we'd also have to arrange to delete + // the arena if the constructor throws. However, in practice none of the PromiseNode + // constructors throw, so we just mark the whole method noexcept in order to avoid the + // code bloat to handle this case. + next->arena = nullptr; + T* ptr = reinterpret_cast(next.get()) - 1; + ctor(*ptr, kj::mv(next), kj::fwd(params)...); + ptr->arena = arena; + KJ_IREQUIRE(reinterpret_cast(ptr) == + reinterpret_cast(static_cast(ptr)), + "PromiseArenaMember must be the leftmost inherited type."); + return kj::Own(ptr); + } + } +}; + +template +static kj::Own allocPromise(Params&&... params) { + // Allocate a PromiseNode without appending it to any existing promise arena. Space for a new + // arena will be allocated. + return PromiseDisposer::alloc(kj::fwd(params)...); +} + +template ()> +struct FreePromiseNode; +template +struct FreePromiseNode { + static inline void free(T* ptr) { + // The object will have been allocated in an arena, so we only want to run the destructor. + // The arena's memory will be freed separately. + kj::dtor(*ptr); + } +}; +template +struct FreePromiseNode { + static inline void free(T* ptr) { + // The object will have been allocated separately on the heap. + return delete ptr; + } +}; + +template +static void freePromise(T* ptr) { + // Free a PromiseNode originally allocated using `allocPromise()`. The implementation of + // PromiseNode::destroy() must call this for any type that is allocated using allocPromise(). + FreePromiseNode::free(ptr); +} + +template +static kj::Own appendPromise(OwnPromiseNode&& next, Params&&... params) { + // Append a promise to the arena that currently ends with `next`. `next` is also still passed as + // the first parameter to the new object's constructor. + // + // This is semantically the same as `allocPromise()` except that it may avoid the underlying + // memory allocation. `next` must end up being destroyed before the new object (i.e. the new + // object must never transfer away ownership of `next`). + return PromiseDisposer::append(kj::mv(next), kj::fwd(params)...); +} + // ------------------------------------------------------------------- +inline ReadyNow::operator Promise() const { + return PromiseNode::to>(readyNow()); +} + template inline NeverDone::operator Promise() const { return PromiseNode::to>(neverDone()); @@ -306,6 +482,7 @@ class ImmediatePromiseNode final: public ImmediatePromiseNodeBase { public: ImmediatePromiseNode(ExceptionOr&& result): result(kj::mv(result)) {} + void destroy() override { freePromise(this); } void get(ExceptionOrValue& output) noexcept override { output.as() = kj::mv(result); @@ -318,6 +495,7 @@ class ImmediatePromiseNode final: public ImmediatePromiseNodeBase { class ImmediateBrokenPromiseNode final: public ImmediatePromiseNodeBase { public: ImmediateBrokenPromiseNode(Exception&& exception); + void destroy() override; void get(ExceptionOrValue& output) noexcept override; @@ -325,18 +503,27 @@ class ImmediateBrokenPromiseNode final: public ImmediatePromiseNodeBase { Exception exception; }; +template +class ConstPromiseNode: public ImmediatePromiseNodeBase { +public: + void destroy() override {} + void get(ExceptionOrValue& output) noexcept override { + output.as() = value; + } +}; + // ------------------------------------------------------------------- class AttachmentPromiseNodeBase: public PromiseNode { public: - AttachmentPromiseNodeBase(Own&& dependency); + AttachmentPromiseNodeBase(OwnPromiseNode&& dependency); void onReady(Event* event) noexcept override; void get(ExceptionOrValue& output) noexcept override; void tracePromise(TraceBuilder& builder, bool stopAtNextEvent) override; private: - Own dependency; + OwnPromiseNode dependency; void dropDependency(); @@ -350,9 +537,10 @@ class AttachmentPromiseNode final: public AttachmentPromiseNodeBase { // object) until the promise resolves. public: - AttachmentPromiseNode(Own&& dependency, Attachment&& attachment) + AttachmentPromiseNode(OwnPromiseNode&& dependency, Attachment&& attachment) : AttachmentPromiseNodeBase(kj::mv(dependency)), attachment(kj::mv(attachment)) {} + void destroy() override { freePromise(this); } ~AttachmentPromiseNode() noexcept(false) { // We need to make sure the dependency is deleted before we delete the attachment because the @@ -498,14 +686,14 @@ struct GetFunctorStartAddress: public GetFunctorStartAddress<> {}; class TransformPromiseNodeBase: public PromiseNode { public: - TransformPromiseNodeBase(Own&& dependency, void* continuationTracePtr); + TransformPromiseNodeBase(OwnPromiseNode&& dependency, void* continuationTracePtr); void onReady(Event* event) noexcept override; void get(ExceptionOrValue& output) noexcept override; void tracePromise(TraceBuilder& builder, bool stopAtNextEvent) override; private: - Own dependency; + OwnPromiseNode dependency; void* continuationTracePtr; void dropDependency(); @@ -523,10 +711,11 @@ class TransformPromiseNode final: public TransformPromiseNodeBase { // function (implements `then()`). public: - TransformPromiseNode(Own&& dependency, Func&& func, ErrorFunc&& errorHandler, + TransformPromiseNode(OwnPromiseNode&& dependency, Func&& func, ErrorFunc&& errorHandler, void* continuationTracePtr) : TransformPromiseNodeBase(kj::mv(dependency), continuationTracePtr), func(kj::fwd(func)), errorHandler(kj::fwd(errorHandler)) {} + void destroy() override { freePromise(this); } ~TransformPromiseNode() noexcept(false) { // We need to make sure the dependency is deleted before we delete the continuations because it @@ -562,10 +751,11 @@ class TransformPromiseNode final: public TransformPromiseNodeBase { // ------------------------------------------------------------------- class ForkHubBase; +using OwnForkHubBase = Own; class ForkBranchBase: public PromiseNode { public: - ForkBranchBase(Own&& hub); + ForkBranchBase(OwnForkHubBase&& hub); ~ForkBranchBase() noexcept(false); void hubReady() noexcept; @@ -584,7 +774,7 @@ class ForkBranchBase: public PromiseNode { private: OnReadyEvent onReadyEvent; - Own hub; + OwnForkHubBase hub; ForkBranchBase* next = nullptr; ForkBranchBase** prevPtr = nullptr; @@ -605,7 +795,8 @@ class ForkBranch final: public ForkBranchBase { // a const reference. public: - ForkBranch(Own&& hub): ForkBranchBase(kj::mv(hub)) {} + ForkBranch(OwnForkHubBase&& hub): ForkBranchBase(kj::mv(hub)) {} + void destroy() override { freePromise(this); } void get(ExceptionOrValue& output) noexcept override { ExceptionOr& hubResult = getHubResultRef().template as(); @@ -625,7 +816,8 @@ class SplitBranch final: public ForkBranchBase { // a const reference. public: - SplitBranch(Own&& hub): ForkBranchBase(kj::mv(hub)) {} + SplitBranch(OwnForkHubBase&& hub): ForkBranchBase(kj::mv(hub)) {} + void destroy() override { freePromise(this); } typedef kj::Decay(kj::instance()))> Element; @@ -643,14 +835,31 @@ class SplitBranch final: public ForkBranchBase { // ------------------------------------------------------------------- -class ForkHubBase: public Refcounted, protected Event { +class ForkHubBase: public PromiseArenaMember, protected Event { public: - ForkHubBase(Own&& inner, ExceptionOrValue& resultRef); + ForkHubBase(OwnPromiseNode&& inner, ExceptionOrValue& resultRef, SourceLocation location); inline ExceptionOrValue& getResultRef() { return resultRef; } + inline bool isShared() const { return refcount > 1; } + + Own addRef() { + ++refcount; + return Own(this); + } + + static void dispose(ForkHubBase* obj) { + if (--obj->refcount == 0) { + PromiseDisposer::dispose(obj); + } + } + private: - Own inner; + uint refcount = 1; + // We manually implement refcounting for ForkHubBase so that we can use it together with + // PromiseDisposer's arena allocation. + + OwnPromiseNode inner; ExceptionOrValue& resultRef; ForkBranchBase* headBranch = nullptr; @@ -670,29 +879,33 @@ class ForkHub final: public ForkHubBase { // possible). public: - ForkHub(Own&& inner): ForkHubBase(kj::mv(inner), result) {} + ForkHub(OwnPromiseNode&& inner, SourceLocation location) + : ForkHubBase(kj::mv(inner), result, location) {} + void destroy() override { freePromise(this); } Promise<_::UnfixVoid> addBranch() { - return _::PromiseNode::to>>(kj::heap>(addRef(*this))); + return _::PromiseNode::to>>( + allocPromise>(addRef())); } - _::SplitTuplePromise split() { - return splitImpl(MakeIndexes()>()); + _::SplitTuplePromise split(SourceLocation location) { + return splitImpl(MakeIndexes()>(), location); } private: ExceptionOr result; template - _::SplitTuplePromise splitImpl(Indexes) { - return kj::tuple(addSplit()...); + _::SplitTuplePromise splitImpl(Indexes, SourceLocation location) { + return kj::tuple(addSplit(location)...); } template - ReducePromises::Element> addSplit() { + ReducePromises::Element> addSplit(SourceLocation location) { return _::PromiseNode::to::Element>>( - maybeChain(kj::heap>(addRef(*this)), - implicitCast::Element*>(nullptr))); + maybeChain(allocPromise>(addRef()), + implicitCast::Element*>(nullptr), + location)); } }; @@ -709,11 +922,12 @@ class ChainPromiseNode final: public PromiseNode, public Event { // Own. Ugh, templates and private... public: - explicit ChainPromiseNode(Own inner); + explicit ChainPromiseNode(OwnPromiseNode inner, SourceLocation location); ~ChainPromiseNode() noexcept(false); + void destroy() override; void onReady(Event* event) noexcept override; - void setSelfPointer(Own* selfPtr) noexcept override; + void setSelfPointer(OwnPromiseNode* selfPtr) noexcept override; void get(ExceptionOrValue& output) noexcept override; void tracePromise(TraceBuilder& builder, bool stopAtNextEvent) override; @@ -725,24 +939,24 @@ class ChainPromiseNode final: public PromiseNode, public Event { State state; - Own inner; + OwnPromiseNode inner; // In STEP1, a PromiseNode for a Promise. // In STEP2, a PromiseNode for a T. Event* onReadyEvent = nullptr; - Own* selfPtr = nullptr; + OwnPromiseNode* selfPtr = nullptr; Maybe> fire() override; void traceEvent(TraceBuilder& builder) override; }; template -Own maybeChain(Own&& node, Promise*) { - return heap(kj::mv(node)); +OwnPromiseNode maybeChain(OwnPromiseNode&& node, Promise*, SourceLocation location) { + return appendPromise(kj::mv(node), location); } template -Own&& maybeChain(Own&& node, T*) { +OwnPromiseNode&& maybeChain(OwnPromiseNode&& node, T*, SourceLocation location) { return kj::mv(node); } @@ -760,8 +974,9 @@ inline Promise maybeReduce(Promise&& promise, ...) { class ExclusiveJoinPromiseNode final: public PromiseNode { public: - ExclusiveJoinPromiseNode(Own left, Own right); + ExclusiveJoinPromiseNode(OwnPromiseNode left, OwnPromiseNode right, SourceLocation location); ~ExclusiveJoinPromiseNode() noexcept(false); + void destroy() override; void onReady(Event* event) noexcept override; void get(ExceptionOrValue& output) noexcept override; @@ -770,7 +985,8 @@ class ExclusiveJoinPromiseNode final: public PromiseNode { private: class Branch: public Event { public: - Branch(ExclusiveJoinPromiseNode& joinNode, Own dependency); + Branch(ExclusiveJoinPromiseNode& joinNode, OwnPromiseNode dependency, + SourceLocation location); ~Branch() noexcept(false); bool get(ExceptionOrValue& output); @@ -781,7 +997,7 @@ class ExclusiveJoinPromiseNode final: public PromiseNode { private: ExclusiveJoinPromiseNode& joinNode; - Own dependency; + OwnPromiseNode dependency; friend class ExclusiveJoinPromiseNode; }; @@ -793,10 +1009,17 @@ class ExclusiveJoinPromiseNode final: public PromiseNode { // ------------------------------------------------------------------- +enum class ArrayJoinBehavior { + LAZY, + EAGER, +}; + class ArrayJoinPromiseNodeBase: public PromiseNode { public: - ArrayJoinPromiseNodeBase(Array> promises, - ExceptionOrValue* resultParts, size_t partSize); + ArrayJoinPromiseNodeBase(Array promises, + ExceptionOrValue* resultParts, size_t partSize, + SourceLocation location, + ArrayJoinBehavior joinBehavior); ~ArrayJoinPromiseNodeBase() noexcept(false); void onReady(Event* event) noexcept override final; @@ -808,24 +1031,24 @@ class ArrayJoinPromiseNodeBase: public PromiseNode { // Called to compile the result only in the case where there were no errors. private: + const ArrayJoinBehavior joinBehavior; + uint countLeft; OnReadyEvent onReadyEvent; + bool armed = false; class Branch final: public Event { public: - Branch(ArrayJoinPromiseNodeBase& joinNode, Own dependency, - ExceptionOrValue& output); + Branch(ArrayJoinPromiseNodeBase& joinNode, OwnPromiseNode dependency, + ExceptionOrValue& output, SourceLocation location); ~Branch() noexcept(false); Maybe> fire() override; void traceEvent(TraceBuilder& builder) override; - Maybe getPart(); - // Calls dependency->get(output). If there was an exception, return it. - private: ArrayJoinPromiseNodeBase& joinNode; - Own dependency; + OwnPromiseNode dependency; ExceptionOrValue& output; friend class ArrayJoinPromiseNodeBase; @@ -837,10 +1060,14 @@ class ArrayJoinPromiseNodeBase: public PromiseNode { template class ArrayJoinPromiseNode final: public ArrayJoinPromiseNodeBase { public: - ArrayJoinPromiseNode(Array> promises, - Array> resultParts) - : ArrayJoinPromiseNodeBase(kj::mv(promises), resultParts.begin(), sizeof(ExceptionOr)), + ArrayJoinPromiseNode(Array promises, + Array> resultParts, + SourceLocation location, + ArrayJoinBehavior joinBehavior) + : ArrayJoinPromiseNodeBase(kj::mv(promises), resultParts.begin(), sizeof(ExceptionOr), + location, joinBehavior), resultParts(kj::mv(resultParts)) {} + void destroy() override { freePromise(this); } protected: void getNoError(ExceptionOrValue& output) noexcept override { @@ -860,9 +1087,12 @@ class ArrayJoinPromiseNode final: public ArrayJoinPromiseNodeBase { template <> class ArrayJoinPromiseNode final: public ArrayJoinPromiseNodeBase { public: - ArrayJoinPromiseNode(Array> promises, - Array> resultParts); + ArrayJoinPromiseNode(Array promises, + Array> resultParts, + SourceLocation location, + ArrayJoinBehavior joinBehavior); ~ArrayJoinPromiseNode(); + void destroy() override; protected: void getNoError(ExceptionOrValue& output) noexcept override; @@ -878,13 +1108,14 @@ class EagerPromiseNodeBase: public PromiseNode, protected Event { // evaluate it. public: - EagerPromiseNodeBase(Own&& dependency, ExceptionOrValue& resultRef); + EagerPromiseNodeBase(OwnPromiseNode&& dependency, ExceptionOrValue& resultRef, + SourceLocation location); void onReady(Event* event) noexcept override; void tracePromise(TraceBuilder& builder, bool stopAtNextEvent) override; private: - Own dependency; + OwnPromiseNode dependency; OnReadyEvent onReadyEvent; ExceptionOrValue& resultRef; @@ -896,8 +1127,9 @@ class EagerPromiseNodeBase: public PromiseNode, protected Event { template class EagerPromiseNode final: public EagerPromiseNodeBase { public: - EagerPromiseNode(Own&& dependency) - : EagerPromiseNodeBase(kj::mv(dependency), result) {} + EagerPromiseNode(OwnPromiseNode&& dependency, SourceLocation location) + : EagerPromiseNodeBase(kj::mv(dependency), result, location) {} + void destroy() override { freePromise(this); } void get(ExceptionOrValue& output) noexcept override { output.as() = kj::mv(result); @@ -908,10 +1140,10 @@ class EagerPromiseNode final: public EagerPromiseNodeBase { }; template -Own spark(Own&& node) { +OwnPromiseNode spark(OwnPromiseNode&& node, SourceLocation location) { // Forces evaluation of the given node to begin as soon as possible, even if no one is waiting // on it. - return heap>(kj::mv(node)); + return appendPromise>(kj::mv(node), location); } // ------------------------------------------------------------------- @@ -939,6 +1171,7 @@ class AdapterPromiseNode final: public AdapterPromiseNodeBase, template AdapterPromiseNode(Params&&... params) : adapter(static_cast>&>(*this), kj::fwd(params)...) {} + void destroy() override { freePromise(this); } void get(ExceptionOrValue& output) noexcept override { KJ_IREQUIRE(!isWaiting()); @@ -977,8 +1210,8 @@ class FiberBase: public PromiseNode, private Event { // Base class for the outer PromiseNode representing a fiber. public: - explicit FiberBase(size_t stackSize, _::ExceptionOrValue& result); - explicit FiberBase(const FiberPool& pool, _::ExceptionOrValue& result); + explicit FiberBase(size_t stackSize, _::ExceptionOrValue& result, SourceLocation location); + explicit FiberBase(const FiberPool& pool, _::ExceptionOrValue& result, SourceLocation location); ~FiberBase() noexcept(false); void start() { armDepthFirst(); } @@ -991,7 +1224,7 @@ class FiberBase: public PromiseNode, private Event { protected: bool isFinished() { return state == FINISHED; } - void destroy(); + void cancel(); private: enum { WAITING, RUNNING, CANCELED, FINISHED } state; @@ -1009,17 +1242,20 @@ class FiberBase: public PromiseNode, private Event { // Implements Event. Each time the event is fired, switchToFiber() is called. friend class FiberStack; - friend void _::waitImpl(Own<_::PromiseNode>&& node, _::ExceptionOrValue& result, - WaitScope& waitScope); - friend bool _::pollImpl(_::PromiseNode& node, WaitScope& waitScope); + friend void _::waitImpl(_::OwnPromiseNode&& node, _::ExceptionOrValue& result, + WaitScope& waitScope, SourceLocation location); + friend bool _::pollImpl(_::PromiseNode& node, WaitScope& waitScope, SourceLocation location); }; template class Fiber final: public FiberBase { public: - explicit Fiber(size_t stackSize, Func&& func): FiberBase(stackSize, result), func(kj::fwd(func)) {} - explicit Fiber(const FiberPool& pool, Func&& func): FiberBase(pool, result), func(kj::fwd(func)) {} - ~Fiber() noexcept(false) { destroy(); } + explicit Fiber(size_t stackSize, Func&& func, SourceLocation location) + : FiberBase(stackSize, result, location), func(kj::fwd(func)) {} + explicit Fiber(const FiberPool& pool, Func&& func, SourceLocation location) + : FiberBase(pool, result, location), func(kj::fwd(func)) {} + ~Fiber() noexcept(false) { cancel(); } + void destroy() override { freePromise(this); } typedef FixVoid()(kj::instance()))> ResultType; @@ -1044,24 +1280,25 @@ class Fiber final: public FiberBase { template Promise::Promise(_::FixVoid value) - : PromiseBase(heap<_::ImmediatePromiseNode<_::FixVoid>>(kj::mv(value))) {} + : PromiseBase(_::allocPromise<_::ImmediatePromiseNode<_::FixVoid>>(kj::mv(value))) {} template Promise::Promise(kj::Exception&& exception) - : PromiseBase(heap<_::ImmediateBrokenPromiseNode>(kj::mv(exception))) {} + : PromiseBase(_::allocPromise<_::ImmediateBrokenPromiseNode>(kj::mv(exception))) {} template template -PromiseForResult Promise::then(Func&& func, ErrorFunc&& errorHandler) { +PromiseForResult Promise::then(Func&& func, ErrorFunc&& errorHandler, + SourceLocation location) { typedef _::FixVoid<_::ReturnType> ResultT; void* continuationTracePtr = _::GetFunctorStartAddress<_::FixVoid&&>::apply(func); - Own<_::PromiseNode> intermediate = - heap<_::TransformPromiseNode, Func, ErrorFunc>>( + _::OwnPromiseNode intermediate = + _::appendPromise<_::TransformPromiseNode, Func, ErrorFunc>>( kj::mv(node), kj::fwd(func), kj::fwd(errorHandler), continuationTracePtr); auto result = _::PromiseNode::to<_::ChainPromises<_::ReturnType>>( - _::maybeChain(kj::mv(intermediate), implicitCast(nullptr))); + _::maybeChain(kj::mv(intermediate), implicitCast(nullptr), location)); return _::maybeReduce(kj::mv(result), false); } @@ -1095,7 +1332,7 @@ struct IdentityFunc> { template template -Promise Promise::catch_(ErrorFunc&& errorHandler) { +Promise Promise::catch_(ErrorFunc&& errorHandler, SourceLocation location) { // then()'s ErrorFunc can only return a Promise if Func also returns a Promise. In this case, // Func is being filled in automatically. We want to make sure ErrorFunc can return a Promise, // but we don't want the extra overhead of promise chaining if ErrorFunc doesn't actually @@ -1106,29 +1343,30 @@ Promise Promise::catch_(ErrorFunc&& errorHandler) { // The reason catch_() isn't simply implemented in terms of then() is because we want the trace // pointer to be based on ErrorFunc rather than Func. void* continuationTracePtr = _::GetFunctorStartAddress::apply(errorHandler); - Own<_::PromiseNode> intermediate = - heap<_::TransformPromiseNode, Func, ErrorFunc>>( + _::OwnPromiseNode intermediate = + _::appendPromise<_::TransformPromiseNode, Func, ErrorFunc>>( kj::mv(node), Func(), kj::fwd(errorHandler), continuationTracePtr); auto result = _::PromiseNode::to<_::ChainPromises<_::ReturnType>>( - _::maybeChain(kj::mv(intermediate), implicitCast(nullptr))); + _::maybeChain(kj::mv(intermediate), implicitCast(nullptr), location)); return _::maybeReduce(kj::mv(result), false); } template -T Promise::wait(WaitScope& waitScope) { +T Promise::wait(WaitScope& waitScope, SourceLocation location) { _::ExceptionOr<_::FixVoid> result; - _::waitImpl(kj::mv(node), result, waitScope); + _::waitImpl(kj::mv(node), result, waitScope, location); return convertToReturn(kj::mv(result)); } template -bool Promise::poll(WaitScope& waitScope) { - return _::pollImpl(*node, waitScope); +bool Promise::poll(WaitScope& waitScope, SourceLocation location) { + return _::pollImpl(*node, waitScope, location); } template -ForkedPromise Promise::fork() { - return ForkedPromise(false, refcounted<_::ForkHub<_::FixVoid>>(kj::mv(node))); +ForkedPromise Promise::fork(SourceLocation location) { + return ForkedPromise(false, + _::PromiseDisposer::alloc<_::ForkHub<_::FixVoid>, _::ForkHubBase>(kj::mv(node), location)); } template @@ -1142,34 +1380,36 @@ bool ForkedPromise::hasBranches() { } template -_::SplitTuplePromise Promise::split() { - return refcounted<_::ForkHub<_::FixVoid>>(kj::mv(node))->split(); +_::SplitTuplePromise Promise::split(SourceLocation location) { + return _::PromiseDisposer::alloc<_::ForkHub<_::FixVoid>, _::ForkHubBase>( + kj::mv(node), location)->split(location); } template -Promise Promise::exclusiveJoin(Promise&& other) { - return Promise(false, heap<_::ExclusiveJoinPromiseNode>(kj::mv(node), kj::mv(other.node))); +Promise Promise::exclusiveJoin(Promise&& other, SourceLocation location) { + return Promise(false, _::appendPromise<_::ExclusiveJoinPromiseNode>( + kj::mv(node), kj::mv(other.node), location)); } template template Promise Promise::attach(Attachments&&... attachments) { - return Promise(false, kj::heap<_::AttachmentPromiseNode>>( + return Promise(false, _::appendPromise<_::AttachmentPromiseNode>>( kj::mv(node), kj::tuple(kj::fwd(attachments)...))); } template template -Promise Promise::eagerlyEvaluate(ErrorFunc&& errorHandler) { +Promise Promise::eagerlyEvaluate(ErrorFunc&& errorHandler, SourceLocation location) { // See catch_() for commentary. return Promise(false, _::spark<_::FixVoid>(then( _::IdentityFunc()))>(), - kj::fwd(errorHandler)).node)); + kj::fwd(errorHandler)).node, location)); } template -Promise Promise::eagerlyEvaluate(decltype(nullptr)) { - return Promise(false, _::spark<_::FixVoid>(kj::mv(node))); +Promise Promise::eagerlyEvaluate(decltype(nullptr), SourceLocation location) { + return Promise(false, _::spark<_::FixVoid>(kj::mv(node), location)); } template @@ -1177,6 +1417,12 @@ kj::String Promise::trace() { return PromiseBase::trace(); } +template +inline Promise constPromise() { + static _::ConstPromiseNode NODE; + return _::PromiseNode::to>(_::OwnPromiseNode(&NODE)); +} + template inline PromiseForResult evalLater(Func&& func) { return _::yield().then(kj::fwd(func), _::PropagateException()); @@ -1235,24 +1481,28 @@ inline PromiseForResult retryOnDisconnect(Func&& func) { } template -inline PromiseForResult startFiber(size_t stackSize, Func&& func) { +inline PromiseForResult startFiber( + size_t stackSize, Func&& func, SourceLocation location) { typedef _::FixVoid<_::ReturnType> ResultT; - Own<_::FiberBase> intermediate = kj::heap<_::Fiber>(stackSize, kj::fwd(func)); + auto intermediate = _::allocPromise<_::Fiber>( + stackSize, kj::fwd(func), location); intermediate->start(); auto result = _::PromiseNode::to<_::ChainPromises<_::ReturnType>>( - _::maybeChain(kj::mv(intermediate), implicitCast(nullptr))); + _::maybeChain(kj::mv(intermediate), implicitCast(nullptr), location)); return _::maybeReduce(kj::mv(result), false); } template -inline PromiseForResult FiberPool::startFiber(Func&& func) const { +inline PromiseForResult FiberPool::startFiber( + Func&& func, SourceLocation location) const { typedef _::FixVoid<_::ReturnType> ResultT; - Own<_::FiberBase> intermediate = kj::heap<_::Fiber>(*this, kj::fwd(func)); + auto intermediate = _::allocPromise<_::Fiber>( + *this, kj::fwd(func), location); intermediate->start(); auto result = _::PromiseNode::to<_::ChainPromises<_::ReturnType>>( - _::maybeChain(kj::mv(intermediate), implicitCast(nullptr))); + _::maybeChain(kj::mv(intermediate), implicitCast(nullptr), location)); return _::maybeReduce(kj::mv(result), false); } @@ -1269,10 +1519,19 @@ void Promise::detach(ErrorFunc&& errorHandler) { } template -Promise> joinPromises(Array>&& promises) { - return _::PromiseNode::to>>(kj::heap<_::ArrayJoinPromiseNode>( +Promise> joinPromises(Array>&& promises, SourceLocation location) { + return _::PromiseNode::to>>(_::allocPromise<_::ArrayJoinPromiseNode>( + KJ_MAP(p, promises) { return _::PromiseNode::from(kj::mv(p)); }, + heapArray<_::ExceptionOr>(promises.size()), location, + _::ArrayJoinBehavior::LAZY)); +} + +template +Promise> joinPromisesFailFast(Array>&& promises, SourceLocation location) { + return _::PromiseNode::to>>(_::allocPromise<_::ArrayJoinPromiseNode>( KJ_MAP(p, promises) { return _::PromiseNode::from(kj::mv(p)); }, - heapArray<_::ExceptionOr>(promises.size()))); + heapArray<_::ExceptionOr>(promises.size()), location, + _::ArrayJoinBehavior::EAGER)); } // ======================================================================================= @@ -1315,7 +1574,7 @@ class WeakFulfiller final: public PromiseFulfiller, public WeakFulfillerBase // fulfiller and detach() is called when the promise is destroyed. public: - KJ_DISALLOW_COPY(WeakFulfiller); + KJ_DISALLOW_COPY_AND_MOVE(WeakFulfiller); static kj::Own make() { WeakFulfiller* ptr = new WeakFulfiller; @@ -1399,21 +1658,23 @@ bool PromiseFulfiller::rejectIfThrows(Func&& func) { template _::ReducePromises newAdaptedPromise(Params&&... adapterConstructorParams) { - Own<_::PromiseNode> intermediate( - heap<_::AdapterPromiseNode<_::FixVoid, Adapter>>( + _::OwnPromiseNode intermediate( + _::allocPromise<_::AdapterPromiseNode<_::FixVoid, Adapter>>( kj::fwd(adapterConstructorParams)...)); + // We can't capture SourceLocation in this function's arguments since it is a vararg template. :( return _::PromiseNode::to<_::ReducePromises>( - _::maybeChain(kj::mv(intermediate), implicitCast(nullptr))); + _::maybeChain(kj::mv(intermediate), implicitCast(nullptr), SourceLocation())); } template -PromiseFulfillerPair newPromiseAndFulfiller() { +PromiseFulfillerPair newPromiseAndFulfiller(SourceLocation location) { auto wrapper = _::WeakFulfiller::make(); - Own<_::PromiseNode> intermediate( - heap<_::AdapterPromiseNode<_::FixVoid, _::PromiseAndFulfillerAdapter>>(*wrapper)); + _::OwnPromiseNode intermediate( + _::allocPromise<_::AdapterPromiseNode< + _::FixVoid, _::PromiseAndFulfillerAdapter>>(*wrapper)); auto promise = _::PromiseNode::to<_::ReducePromises>( - _::maybeChain(kj::mv(intermediate), implicitCast(nullptr))); + _::maybeChain(kj::mv(intermediate), implicitCast(nullptr), location)); return PromiseFulfillerPair { kj::mv(promise), kj::mv(wrapper) }; } @@ -1423,10 +1684,11 @@ PromiseFulfillerPair newPromiseAndFulfiller() { namespace _ { // (private) -class XThreadEvent: private Event, // it's an event in the target thread - public PromiseNode { // it's a PromiseNode in the requesting thread +class XThreadEvent: public PromiseNode, // it's a PromiseNode in the requesting thread + private Event { // it's an event in the target thread public: - XThreadEvent(ExceptionOrValue& result, const Executor& targetExecutor, void* funcTracePtr); + XThreadEvent(ExceptionOrValue& result, const Executor& targetExecutor, EventLoop& loop, + void* funcTracePtr, SourceLocation location); void tracePromise(TraceBuilder& builder, bool stopAtNextEvent) override; @@ -1436,7 +1698,7 @@ class XThreadEvent: private Event, // it's an event in the target thread // still being accessed by the other thread. (This can't be placed in ~XThreadEvent() because // that destructor doesn't run until the subclass has already been destroyed.) - virtual kj::Maybe> execute() = 0; + virtual kj::Maybe execute() = 0; // Run the function. If the function returns a promise, returns the inner PromiseNode, otherwise // returns null. @@ -1450,7 +1712,7 @@ class XThreadEvent: private Event, // it's an event in the target thread kj::Own targetExecutor; Maybe replyExecutor; // If executeAsync() was used. - kj::Maybe> promiseNode; + kj::Maybe promiseNode; // Accessed only in target thread. ListLink targetLink; @@ -1527,14 +1789,15 @@ template >> class XThreadEventImpl final: public XThreadEvent { // Implementation for a function that does not return a Promise. public: - XThreadEventImpl(Func&& func, const Executor& target) - : XThreadEvent(result, target, GetFunctorStartAddress<>::apply(func)), + XThreadEventImpl(Func&& func, const Executor& target, EventLoop& loop, SourceLocation location) + : XThreadEvent(result, target, loop, GetFunctorStartAddress<>::apply(func), location), func(kj::fwd(func)) {} ~XThreadEventImpl() noexcept(false) { ensureDoneOrCanceled(); } + void destroy() override { freePromise(this); } typedef _::FixVoid<_::ReturnType> ResultT; - kj::Maybe> execute() override { + kj::Maybe<_::OwnPromiseNode> execute() override { result.value = MaybeVoidCaller>::apply(func, Void()); return nullptr; } @@ -1554,14 +1817,15 @@ template class XThreadEventImpl> final: public XThreadEvent { // Implementation for a function that DOES return a Promise. public: - XThreadEventImpl(Func&& func, const Executor& target) - : XThreadEvent(result, target, GetFunctorStartAddress<>::apply(func)), + XThreadEventImpl(Func&& func, const Executor& target, EventLoop& loop, SourceLocation location) + : XThreadEvent(result, target, loop, GetFunctorStartAddress<>::apply(func), location), func(kj::fwd(func)) {} ~XThreadEventImpl() noexcept(false) { ensureDoneOrCanceled(); } + void destroy() override { freePromise(this); } typedef _::FixVoid<_::UnwrapPromise>> ResultT; - kj::Maybe> execute() override { + kj::Maybe<_::OwnPromiseNode> execute() override { auto result = _::PromiseNode::from(func()); KJ_IREQUIRE(result.get() != nullptr); return kj::mv(result); @@ -1581,15 +1845,19 @@ class XThreadEventImpl> final: public XThreadEvent { } // namespace _ (private) template -_::UnwrapPromise> Executor::executeSync(Func&& func) const { - _::XThreadEventImpl event(kj::fwd(func), *this); +_::UnwrapPromise> Executor::executeSync( + Func&& func, SourceLocation location) const { + _::XThreadEventImpl event(kj::fwd(func), *this, getLoop(), location); send(event, true); return convertToReturn(kj::mv(event.result)); } template -PromiseForResult Executor::executeAsync(Func&& func) const { - auto event = kj::heap<_::XThreadEventImpl>(kj::fwd(func), *this); +PromiseForResult Executor::executeAsync(Func&& func, SourceLocation location) const { + // HACK: We call getLoop() here, rather than have XThreadEvent's constructor do it, so that if it + // throws we don't crash due to `allocPromise()` being `noexcept`. + auto event = _::allocPromise<_::XThreadEventImpl>( + kj::fwd(func), *this, getLoop(), location); send(*event, false); return _::PromiseNode::to>(kj::mv(event)); } @@ -1605,12 +1873,7 @@ class XThreadPaf: public PromiseNode { public: XThreadPaf(); virtual ~XThreadPaf() noexcept(false); - - class Disposer: public kj::Disposer { - public: - void disposeImpl(void* pointer) const override; - }; - static const Disposer DISPOSER; + void destroy() override; // implements PromiseNode ---------------------------------------------------- void onReady(Event* event) noexcept override; @@ -1697,7 +1960,7 @@ class XThreadPaf::FulfillScope { ~FulfillScope() noexcept(false); - KJ_DISALLOW_COPY(FulfillScope); + KJ_DISALLOW_COPY_AND_MOVE(FulfillScope); bool shouldFulfill() { return obj != nullptr; } @@ -1761,11 +2024,322 @@ class XThreadFulfiller> { template PromiseCrossThreadFulfillerPair newPromiseAndCrossThreadFulfiller() { - kj::Own<_::XThreadPafImpl> node(new _::XThreadPafImpl, _::XThreadPaf::DISPOSER); + kj::Own<_::XThreadPafImpl, _::PromiseDisposer> node(new _::XThreadPafImpl); auto fulfiller = kj::heap<_::XThreadFulfiller>(node); return { _::PromiseNode::to<_::ReducePromises>(kj::mv(node)), kj::mv(fulfiller) }; } } // namespace kj +#if KJ_HAS_COROUTINE + +// ======================================================================================= +// Coroutines TS integration with kj::Promise. +// +// Here's a simple coroutine: +// +// Promise> connectToService(Network& n) { +// auto a = co_await n.parseAddress(IP, PORT); +// auto c = co_await a->connect(); +// co_return kj::mv(c); +// } +// +// The presence of the co_await and co_return keywords tell the compiler it is a coroutine. +// Although it looks similar to a function, it has a couple large differences. First, everything +// that would normally live in the stack frame lives instead in a heap-based coroutine frame. +// Second, the coroutine has the ability to return from its scope without deallocating this frame +// (to suspend, in other words), and the ability to resume from its last suspension point. +// +// In order to know how to suspend, resume, and return from a coroutine, the compiler looks up a +// coroutine implementation type via a traits class parameterized by the coroutine return and +// parameter types. We'll name our coroutine implementation `kj::_::Coroutine`, + +namespace kj::_ { template class Coroutine; } + +// Specializing the appropriate traits class tells the compiler about `kj::_::Coroutine`. + +namespace KJ_COROUTINE_STD_NAMESPACE { + +template +struct coroutine_traits, Args...> { + // `Args...` are the coroutine's parameter types. + + using promise_type = kj::_::Coroutine; + // The Coroutines TS calls this the "promise type". This makes sense when thinking of coroutines + // returning `std::future`, since the coroutine implementation would be a wrapper around + // a `std::promise`. It's extremely confusing from a KJ perspective, however, so I call it + // the "coroutine implementation type" instead. +}; + +} // namespace KJ_COROUTINE_STD_NAMESPACE + +// Now when the compiler sees our `connectToService()` coroutine above, it default-constructs a +// `coroutine_traits>, Network&>::promise_type`, or +// `kj::_::Coroutine>`. +// +// The implementation object lives in the heap-allocated coroutine frame. It gets destroyed and +// deallocated when the frame does. + +namespace kj::_ { + +namespace stdcoro = KJ_COROUTINE_STD_NAMESPACE; + +class CoroutineBase: public PromiseNode, + public Event { +public: + CoroutineBase(stdcoro::coroutine_handle<> coroutine, ExceptionOrValue& resultRef, + SourceLocation location); + ~CoroutineBase() noexcept(false); + KJ_DISALLOW_COPY_AND_MOVE(CoroutineBase); + void destroy() override; + + auto initial_suspend() { return stdcoro::suspend_never(); } + auto final_suspend() noexcept { +#if _MSC_VER && !defined(__clang__) + // See comment at `finalSuspendCalled`'s definition. + finalSuspendCalled = true; +#endif + return stdcoro::suspend_always(); + } + // These adjust the suspension behavior of coroutines immediately upon initiation, and immediately + // after completion. + // + // The initial suspension point could allow us to defer the initial synchronous execution of a + // coroutine -- everything before its first co_await, that is. + // + // The final suspension point is useful to delay deallocation of the coroutine frame to match the + // lifetime of the enclosing promise. + + void unhandled_exception(); + +protected: + class AwaiterBase; + + bool isWaiting() { return waiting; } + void scheduleResumption() { + onReadyEvent.arm(); + waiting = false; + } + +private: + // ------------------------------------------------------- + // PromiseNode implementation + + void onReady(Event* event) noexcept override; + void tracePromise(TraceBuilder& builder, bool stopAtNextEvent) override; + + // ------------------------------------------------------- + // Event implementation + + Maybe> fire() override; + void traceEvent(TraceBuilder& builder) override; + + stdcoro::coroutine_handle<> coroutine; + ExceptionOrValue& resultRef; + + OnReadyEvent onReadyEvent; + bool waiting = true; + + bool hasSuspendedAtLeastOnce = false; + +#if _MSC_VER && !defined(__clang__) + bool finalSuspendCalled = false; + // MSVC erroneously reports the coroutine as done (that is, `coroutine.done()` returns true) + // seemingly as soon as `return_value()`/`return_void()` are called. This matters in our + // implementation of `unhandled_exception()`, which must arrange to propagate exceptions during + // coroutine frame unwind via the returned promise, even if `return_value()`/`return_void()` have + // already been called. To prove that our assumptions are correct in that function, we want to be + // able to assert that `final_suspend()` has not yet been called. This boolean hack allows us to + // preserve that assertion. +#endif + + Maybe promiseNodeForTrace; + // Whenever this coroutine is suspended waiting on another promise, we keep a reference to that + // promise so tracePromise()/traceEvent() can trace into it. + + UnwindDetector unwindDetector; + + struct DisposalResults { + bool destructorRan = false; + Maybe exception; + }; + Maybe maybeDisposalResults; + // Only non-null during destruction. Before calling coroutine.destroy(), our disposer sets this + // to point to a DisposalResults on the stack so unhandled_exception() will have some place to + // store unwind exceptions. We can't store them in this Coroutine, because we'll be destroyed once + // coroutine.destroy() has returned. Our disposer then rethrows as needed. +}; + +template +class CoroutineMixin; +// CRTP mixin, covered later. + +template +class Coroutine final: public CoroutineBase, + public CoroutineMixin, T> { + // The standard calls this the `promise_type` object. We can call this the "coroutine + // implementation object" since the word promise means different things in KJ and std styles. This + // is where we implement how a `kj::Promise` is returned from a coroutine, and how that promise + // is later fulfilled. We also fill in a few lifetime-related details. + // + // The implementation object is also where we can customize memory allocation of coroutine frames, + // by implementing a member `operator new(size_t, Args...)` (same `Args...` as in + // coroutine_traits). + // + // We can also customize how await-expressions are transformed within `kj::Promise`-based + // coroutines by implementing an `await_transform(P)` member function, where `P` is some type for + // which we want to implement co_await support, e.g. `kj::Promise`. This feature allows us to + // provide an optimized `kj::EventLoop` integration when the coroutine's return type and the + // await-expression's type are both `kj::Promise` instantiations -- see further comments under + // `await_transform()`. + +public: + using Handle = stdcoro::coroutine_handle>; + + Coroutine(SourceLocation location = {}) + : CoroutineBase(Handle::from_promise(*this), result, location) {} + + Promise get_return_object() { + // Called after coroutine frame construction and before initial_suspend() to create the + // coroutine's return object. `this` itself lives inside the coroutine frame, and we arrange for + // the returned Promise to own `this` via a custom Disposer and by always leaving the + // coroutine in a suspended state. + return PromiseNode::to>(OwnPromiseNode(this)); + } + +public: + template + class Awaiter; + + template + Awaiter await_transform(kj::Promise& promise) { return Awaiter(kj::mv(promise)); } + template + Awaiter await_transform(kj::Promise&& promise) { return Awaiter(kj::mv(promise)); } + // Called when someone writes `co_await promise`, where `promise` is a kj::Promise. We return + // an Awaiter, which implements coroutine suspension and resumption in terms of the KJ async + // event system. + // + // There is another hook we could implement: an `operator co_await()` free function. However, a + // free function would be unaware of the type of the enclosing coroutine. Since Awaiter is a + // member class template of Coroutine, it is able to implement an + // `await_suspend(Coroutine::Handle)` override, providing it type-safe access to our enclosing + // coroutine's PromiseNode. An `operator co_await()` free function would have to implement + // a type-erased `await_suspend(stdcoro::coroutine_handle)` override, and implement + // suspension and resumption in terms of .then(). Yuck! + +private: + // ------------------------------------------------------- + // PromiseNode implementation + + void get(ExceptionOrValue& output) noexcept override { + output.as>() = kj::mv(result); + } + + void fulfill(FixVoid&& value) { + // Called by the return_value()/return_void() functions in our mixin class. + + if (isWaiting()) { + result = kj::mv(value); + scheduleResumption(); + } + } + + ExceptionOr> result; + + friend class CoroutineMixin, T>; +}; + +template +class CoroutineMixin { +public: + void return_value(T value) { + static_cast(this)->fulfill(kj::mv(value)); + } +}; +template +class CoroutineMixin { +public: + void return_void() { + static_cast(this)->fulfill(_::Void()); + } +}; +// The Coroutines spec has no `_::FixVoid` equivalent to unify valueful and valueless co_return +// statements, and programs are ill-formed if the coroutine implementation object (Coroutine) has +// both a `return_value()` and `return_void()`. No amount of EnableIffery can get around it, so +// these return_* functions live in a CRTP mixin. + +class CoroutineBase::AwaiterBase { +public: + explicit AwaiterBase(OwnPromiseNode node); + AwaiterBase(AwaiterBase&&); + ~AwaiterBase() noexcept(false); + KJ_DISALLOW_COPY(AwaiterBase); + + bool await_ready() const { return false; } + // This could return "`node->get()` is safe to call" instead, which would make suspension-less + // co_awaits possible for immediately-fulfilled promises. However, we need an Event to figure that + // out, and we won't have access to the Coroutine Event until await_suspend() is called. So, we + // must return false here. Fortunately, await_suspend() has a trick up its sleeve to enable + // suspension-less co_awaits. + +protected: + void getImpl(ExceptionOrValue& result, void* awaitedAt); + bool awaitSuspendImpl(CoroutineBase& coroutineEvent); + +private: + UnwindDetector unwindDetector; + OwnPromiseNode node; + + Maybe maybeCoroutineEvent; + // If we do suspend waiting for our wrapped promise, we store a reference to `node` in our + // enclosing Coroutine for tracing purposes. To guard against any edge cases where an async stack + // trace is generated when an Awaiter was destroyed without Coroutine::fire() having been called, + // we need our own reference to the enclosing Coroutine. (I struggle to think up any such + // scenarios, but perhaps they could occur when destroying a suspended coroutine.) +}; + +template +template +class Coroutine::Awaiter: public AwaiterBase { + // Wrapper around a co_await'ed promise and some storage space for the result of that promise. + // The compiler arranges to call our await_suspend() to suspend, which arranges to be woken up + // when the awaited promise is settled. Once that happens, the enclosing coroutine's Event + // implementation resumes the coroutine, which transitively calls await_resume() to unwrap the + // awaited promise result. + +public: + explicit Awaiter(Promise promise): AwaiterBase(PromiseNode::from(kj::mv(promise))) {} + + KJ_NOINLINE U await_resume() { + // This is marked noinline in order to ensure __builtin_return_address() is accurate for stack + // trace purposes. In my experimentation, this method was not inlined anyway even in opt + // builds, but I want to make sure it doesn't suddenly start being inlined later causing stack + // traces to break. (I also tried always-inline, but this did not appear to cause the compiler + // to inline the method -- perhaps a limitation of coroutines?) +#if __GNUC__ + getImpl(result, __builtin_return_address(0)); +#elif _MSC_VER + getImpl(result, _ReturnAddress()); +#else + #error "please implement for your compiler" +#endif + auto value = kj::_::readMaybe(result.value); + KJ_IASSERT(value != nullptr, "Neither exception nor value present."); + return U(kj::mv(*value)); + } + + bool await_suspend(Coroutine::Handle coroutine) { + return awaitSuspendImpl(coroutine.promise()); + } + +private: + ExceptionOr> result; +}; + +#undef KJ_COROUTINE_STD_NAMESPACE + +} // namespace kj::_ (private) + +#endif // KJ_HAS_COROUTINE + KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-io-internal.h b/libs/EXTERNAL/capnproto/c++/src/kj/async-io-internal.h index 9f4dd01331e..d030ad9577f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-io-internal.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-io-internal.h @@ -25,6 +25,10 @@ #include "vector.h" #include "async-io.h" #include +#include "one-of.h" +#include "cidr.h" + +KJ_BEGIN_HEADER struct sockaddr; struct sockaddr_un; @@ -40,32 +44,6 @@ kj::ArrayPtr safeUnixPath(const struct sockaddr_un* addr, uint addrl // paths MUST be read using this function. #endif -class CidrRange { -public: - CidrRange(StringPtr pattern); - - static CidrRange inet4(ArrayPtr bits, uint bitCount); - static CidrRange inet6(ArrayPtr prefix, ArrayPtr suffix, - uint bitCount); - // Zeros are inserted between `prefix` and `suffix` to extend the address to 128 bits. - - uint getSpecificity() const { return bitCount; } - - bool matches(const struct sockaddr* addr) const; - bool matchesFamily(int family) const; - - String toString() const; - -private: - int family; - byte bits[16]; - uint bitCount; // how many bits in `bits` need to match - - CidrRange(int family, ArrayPtr bits, uint bitCount); - - void zeroIrrelevantBits(); -}; - class NetworkFilter: public LowLevelAsyncIoProvider::NetworkFilter { public: NetworkFilter(); @@ -80,9 +58,13 @@ class NetworkFilter: public LowLevelAsyncIoProvider::NetworkFilter { Vector denyCidrs; bool allowUnix; bool allowAbstractUnix; + bool allowPublic = false; + bool allowNetwork = false; kj::Maybe next; }; } // namespace _ (private) } // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-io-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-io-test.c++ index dc454f4107a..e8892b79e67 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-io-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-io-test.c++ @@ -30,10 +30,12 @@ #include "async-io-internal.h" #include "debug.h" #include "io.h" +#include "cidr.h" #include "miniposix.h" #include #include #include +#include #if _WIN32 #include #include "windows-sanity.h" @@ -89,7 +91,7 @@ TEST(AsyncIo, SimpleNetwork) { EXPECT_EQ("foo", result); } -#if !_WIN32 // TODO(0.10): Implement NetworkPeerIdentity for Win32. +#if !_WIN32 // TODO(someday): Implement NetworkPeerIdentity for Win32. TEST(AsyncIo, SimpleNetworkAuthentication) { auto ioContext = setupAsyncIo(); auto& network = ioContext.provider->getNetwork(); @@ -373,9 +375,17 @@ bool systemSupportsAddress(StringPtr addr, StringPtr service = nullptr) { // Can getaddrinfo() parse this addresses? This is only true if the address family (e.g., ipv6) // is configured on at least one interface. (The loopback interface usually has both ipv4 and // ipv6 configured, but not always.) + struct addrinfo hints; + hints.ai_family = AF_UNSPEC; + hints.ai_socktype = 0; + hints.ai_flags = AI_V4MAPPED | AI_ADDRCONFIG; + hints.ai_protocol = 0; + hints.ai_canonname = nullptr; + hints.ai_addr = nullptr; + hints.ai_next = nullptr; struct addrinfo* list; int status = getaddrinfo( - addr.cStr(), service == nullptr ? nullptr : service.cStr(), nullptr, &list); + addr.cStr(), service == nullptr ? nullptr : service.cStr(), &hints, &list); if (status == 0) { freeaddrinfo(list); return true; @@ -1072,12 +1082,12 @@ TEST(AsyncIo, AbstractUnixSocket) { #endif // __linux__ KJ_TEST("CIDR parsing") { - KJ_EXPECT(_::CidrRange("1.2.3.4/16").toString() == "1.2.0.0/16"); - KJ_EXPECT(_::CidrRange("1.2.255.4/18").toString() == "1.2.192.0/18"); - KJ_EXPECT(_::CidrRange("1234::abcd:ffff:ffff/98").toString() == "1234::abcd:c000:0/98"); + KJ_EXPECT(CidrRange("1.2.3.4/16").toString() == "1.2.0.0/16"); + KJ_EXPECT(CidrRange("1.2.255.4/18").toString() == "1.2.192.0/18"); + KJ_EXPECT(CidrRange("1234::abcd:ffff:ffff/98").toString() == "1234::abcd:c000:0/98"); - KJ_EXPECT(_::CidrRange::inet4({1,2,255,4}, 18).toString() == "1.2.192.0/18"); - KJ_EXPECT(_::CidrRange::inet6({0x1234, 0x5678}, {0xabcd, 0xffff, 0xffff}, 98).toString() == + KJ_EXPECT(CidrRange::inet4({1,2,255,4}, 18).toString() == "1.2.192.0/18"); + KJ_EXPECT(CidrRange::inet6({0x1234, 0x5678}, {0xabcd, 0xffff, 0xffff}, 98).toString() == "1234:5678::abcd:c000:0/98"); union { @@ -1090,37 +1100,37 @@ KJ_TEST("CIDR parsing") { { addr4.sin_family = AF_INET; addr4.sin_addr.s_addr = htonl(0x0102dfff); - KJ_EXPECT(_::CidrRange("1.2.255.255/18").matches(&addr)); - KJ_EXPECT(!_::CidrRange("1.2.255.255/19").matches(&addr)); - KJ_EXPECT(_::CidrRange("1.2.0.0/16").matches(&addr)); - KJ_EXPECT(!_::CidrRange("1.3.0.0/16").matches(&addr)); - KJ_EXPECT(_::CidrRange("1.2.223.255/32").matches(&addr)); - KJ_EXPECT(_::CidrRange("0.0.0.0/0").matches(&addr)); - KJ_EXPECT(!_::CidrRange("::/0").matches(&addr)); + KJ_EXPECT(CidrRange("1.2.255.255/18").matches(&addr)); + KJ_EXPECT(!CidrRange("1.2.255.255/19").matches(&addr)); + KJ_EXPECT(CidrRange("1.2.0.0/16").matches(&addr)); + KJ_EXPECT(!CidrRange("1.3.0.0/16").matches(&addr)); + KJ_EXPECT(CidrRange("1.2.223.255/32").matches(&addr)); + KJ_EXPECT(CidrRange("0.0.0.0/0").matches(&addr)); + KJ_EXPECT(!CidrRange("::/0").matches(&addr)); } { addr4.sin_family = AF_INET6; byte bytes[16] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; memcpy(addr6.sin6_addr.s6_addr, bytes, 16); - KJ_EXPECT(_::CidrRange("0102:03ff::/24").matches(&addr)); - KJ_EXPECT(!_::CidrRange("0102:02ff::/24").matches(&addr)); - KJ_EXPECT(_::CidrRange("0102:02ff::/23").matches(&addr)); - KJ_EXPECT(_::CidrRange("0102:0304:0506:0708:090a:0b0c:0d0e:0f10/128").matches(&addr)); - KJ_EXPECT(_::CidrRange("::/0").matches(&addr)); - KJ_EXPECT(!_::CidrRange("0.0.0.0/0").matches(&addr)); + KJ_EXPECT(CidrRange("0102:03ff::/24").matches(&addr)); + KJ_EXPECT(!CidrRange("0102:02ff::/24").matches(&addr)); + KJ_EXPECT(CidrRange("0102:02ff::/23").matches(&addr)); + KJ_EXPECT(CidrRange("0102:0304:0506:0708:090a:0b0c:0d0e:0f10/128").matches(&addr)); + KJ_EXPECT(CidrRange("::/0").matches(&addr)); + KJ_EXPECT(!CidrRange("0.0.0.0/0").matches(&addr)); } { addr4.sin_family = AF_INET6; inet_pton(AF_INET6, "::ffff:1.2.223.255", &addr6.sin6_addr); - KJ_EXPECT(_::CidrRange("1.2.255.255/18").matches(&addr)); - KJ_EXPECT(!_::CidrRange("1.2.255.255/19").matches(&addr)); - KJ_EXPECT(_::CidrRange("1.2.0.0/16").matches(&addr)); - KJ_EXPECT(!_::CidrRange("1.3.0.0/16").matches(&addr)); - KJ_EXPECT(_::CidrRange("1.2.223.255/32").matches(&addr)); - KJ_EXPECT(_::CidrRange("0.0.0.0/0").matches(&addr)); - KJ_EXPECT(_::CidrRange("::/0").matches(&addr)); + KJ_EXPECT(CidrRange("1.2.255.255/18").matches(&addr)); + KJ_EXPECT(!CidrRange("1.2.255.255/19").matches(&addr)); + KJ_EXPECT(CidrRange("1.2.0.0/16").matches(&addr)); + KJ_EXPECT(!CidrRange("1.3.0.0/16").matches(&addr)); + KJ_EXPECT(CidrRange("1.2.223.255/32").matches(&addr)); + KJ_EXPECT(CidrRange("0.0.0.0/0").matches(&addr)); + KJ_EXPECT(CidrRange("::/0").matches(&addr)); } } @@ -1191,6 +1201,58 @@ KJ_TEST("NetworkFilter") { KJ_EXPECT(allowed4(filter, "1.2.3.1")); KJ_EXPECT(!allowed4(filter, "1.2.3.4")); } + + // Test combinations of public/private/network/local. At one point these were buggy. + { + _::NetworkFilter filter({"public", "private"}, {}, base); + + KJ_EXPECT(allowed4(filter, "8.8.8.8")); + KJ_EXPECT(!allowed4(filter, "240.1.2.3")); + + KJ_EXPECT(allowed4(filter, "192.168.0.1")); + KJ_EXPECT(allowed4(filter, "10.1.2.3")); + KJ_EXPECT(allowed4(filter, "127.0.0.1")); + KJ_EXPECT(allowed4(filter, "0.0.0.0")); + + KJ_EXPECT(allowed6(filter, "2400:cb00:2048:1::c629:d7a2")); + KJ_EXPECT(allowed6(filter, "fc00::1234")); + KJ_EXPECT(allowed6(filter, "::1")); + KJ_EXPECT(allowed6(filter, "::")); + } + + { + _::NetworkFilter filter({"network", "local"}, {}, base); + + KJ_EXPECT(allowed4(filter, "8.8.8.8")); + KJ_EXPECT(!allowed4(filter, "240.1.2.3")); + + KJ_EXPECT(allowed4(filter, "192.168.0.1")); + KJ_EXPECT(allowed4(filter, "10.1.2.3")); + KJ_EXPECT(allowed4(filter, "127.0.0.1")); + KJ_EXPECT(allowed4(filter, "0.0.0.0")); + + KJ_EXPECT(allowed6(filter, "2400:cb00:2048:1::c629:d7a2")); + KJ_EXPECT(allowed6(filter, "fc00::1234")); + KJ_EXPECT(allowed6(filter, "::1")); + KJ_EXPECT(allowed6(filter, "::")); + } + + { + _::NetworkFilter filter({"public", "local"}, {}, base); + + KJ_EXPECT(allowed4(filter, "8.8.8.8")); + KJ_EXPECT(!allowed4(filter, "240.1.2.3")); + + KJ_EXPECT(!allowed4(filter, "192.168.0.1")); + KJ_EXPECT(!allowed4(filter, "10.1.2.3")); + KJ_EXPECT(allowed4(filter, "127.0.0.1")); + KJ_EXPECT(allowed4(filter, "0.0.0.0")); + + KJ_EXPECT(allowed6(filter, "2400:cb00:2048:1::c629:d7a2")); + KJ_EXPECT(!allowed6(filter, "fc00::1234")); + KJ_EXPECT(allowed6(filter, "::1")); + KJ_EXPECT(allowed6(filter, "::")); + } } KJ_TEST("Network::restrictPeers()") { @@ -1226,7 +1288,7 @@ kj::Promise expectRead(kj::AsyncInputStream& in, kj::StringPtr expected) { auto buffer = kj::heapArray(expected.size()); auto promise = in.tryRead(buffer.begin(), 1, buffer.size()); - return promise.then(kj::mvCapture(buffer, [&in,expected](kj::Array buffer, size_t amount) { + return promise.then([&in,expected,buffer=kj::mv(buffer)](size_t amount) { if (amount == 0) { KJ_FAIL_ASSERT("expected data never sent", expected); } @@ -1237,7 +1299,7 @@ kj::Promise expectRead(kj::AsyncInputStream& in, kj::StringPtr expected) { } return expectRead(in, expected.slice(amount)); - })); + }); } class MockAsyncInputStream final: public AsyncInputStream { @@ -2075,6 +2137,39 @@ KJ_TEST("Userland tee") { expectRead(*right, "foobar").wait(ws); } +KJ_TEST("Userland nested tee") { + kj::EventLoop loop; + WaitScope ws(loop); + + auto pipe = newOneWayPipe(); + auto tee = newTee(kj::mv(pipe.in)); + auto left = kj::mv(tee.branches[0]); + auto right = kj::mv(tee.branches[1]); + + auto tee2 = newTee(kj::mv(right)); + auto rightLeft = kj::mv(tee2.branches[0]); + auto rightRight = kj::mv(tee2.branches[1]); + + auto writePromise = pipe.out->write("foobar", 6); + + expectRead(*left, "foobar").wait(ws); + writePromise.wait(ws); + expectRead(*rightLeft, "foobar").wait(ws); + expectRead(*rightRight, "foo").wait(ws); + + auto tee3 = newTee(kj::mv(rightRight)); + auto rightRightLeft = kj::mv(tee3.branches[0]); + auto rightRightRight = kj::mv(tee3.branches[1]); + expectRead(*rightRightLeft, "bar").wait(ws); + expectRead(*rightRightRight, "b").wait(ws); + + auto tee4 = newTee(kj::mv(rightRightRight)); + auto rightRightRightLeft = kj::mv(tee4.branches[0]); + auto rightRightRightRight = kj::mv(tee4.branches[1]); + expectRead(*rightRightRightLeft, "ar").wait(ws); + expectRead(*rightRightRightRight, "ar").wait(ws); +} + KJ_TEST("Userland tee concurrent read") { kj::EventLoop loop; WaitScope ws(loop); @@ -2690,7 +2785,7 @@ KJ_TEST("Userland tee pump cancellation implies write cancellation") { KJ_IF_MAYBE(exception, kj::runCatchingExceptions([&]() { leftPipe.out = nullptr; })) { - KJ_FAIL_EXPECT("write promises were not canceled", exception); + KJ_FAIL_EXPECT("write promises were not canceled", *exception); } } @@ -2885,5 +2980,447 @@ KJ_TEST("import socket FD that's already broken") { #endif // !__CYGWIN__ #endif // !_WIN32 +KJ_TEST("AggregateConnectionReceiver") { + EventLoop loop; + WaitScope ws(loop); + + auto pipe1 = newCapabilityPipe(); + auto pipe2 = newCapabilityPipe(); + + auto receiversBuilder = kj::heapArrayBuilder>(2); + receiversBuilder.add(kj::heap(*pipe1.ends[0])); + receiversBuilder.add(kj::heap(*pipe2.ends[0])); + + auto aggregate = newAggregateConnectionReceiver(receiversBuilder.finish()); + + CapabilityStreamNetworkAddress connector1(nullptr, *pipe1.ends[1]); + CapabilityStreamNetworkAddress connector2(nullptr, *pipe2.ends[1]); + + auto connectAndWrite = [&](NetworkAddress& addr, kj::StringPtr text) { + return addr.connect() + .then([text](Own stream) { + auto promise = stream->write(text.begin(), text.size()); + return promise.attach(kj::mv(stream)); + }).eagerlyEvaluate([](kj::Exception&& e) { + KJ_LOG(ERROR, e); + }); + }; + + auto acceptAndRead = [&](ConnectionReceiver& socket, kj::StringPtr expected) { + return socket + .accept().then([](Own stream) { + auto promise = stream->readAllText(); + return promise.attach(kj::mv(stream)); + }).then([expected](kj::String actual) { + KJ_EXPECT(actual == expected); + }).eagerlyEvaluate([](kj::Exception&& e) { + KJ_LOG(ERROR, e); + }); + }; + + auto connectPromise1 = connectAndWrite(connector1, "foo"); + KJ_EXPECT(!connectPromise1.poll(ws)); + auto connectPromise2 = connectAndWrite(connector2, "bar"); + KJ_EXPECT(!connectPromise2.poll(ws)); + + acceptAndRead(*aggregate, "foo").wait(ws); + + auto connectPromise3 = connectAndWrite(connector1, "baz"); + KJ_EXPECT(!connectPromise3.poll(ws)); + + acceptAndRead(*aggregate, "bar").wait(ws); + acceptAndRead(*aggregate, "baz").wait(ws); + + connectPromise1.wait(ws); + connectPromise2.wait(ws); + connectPromise3.wait(ws); + + auto acceptPromise1 = acceptAndRead(*aggregate, "qux"); + auto acceptPromise2 = acceptAndRead(*aggregate, "corge"); + auto acceptPromise3 = acceptAndRead(*aggregate, "grault"); + + KJ_EXPECT(!acceptPromise1.poll(ws)); + KJ_EXPECT(!acceptPromise2.poll(ws)); + KJ_EXPECT(!acceptPromise3.poll(ws)); + + // Cancel one of the acceptors... + { auto drop = kj::mv(acceptPromise2); } + + connectAndWrite(connector2, "qux").wait(ws); + connectAndWrite(connector1, "grault").wait(ws); + + acceptPromise1.wait(ws); + acceptPromise3.wait(ws); +} + +// ======================================================================================= +// Tests for optimized pumpTo() between OS handles. Note that this is only even optimized on +// some OSes (only Linux as of this writing), but the behavior should still be the same on all +// OSes, so we run the tests regardless. + +kj::String bigString(size_t size) { + auto result = kj::heapString(size); + for (auto i: kj::zeroTo(size)) { + result[i] = 'a' + i % 26; + } + return result; +} + +KJ_TEST("OS handle pumpTo") { + auto ioContext = setupAsyncIo(); + auto& ws = ioContext.waitScope; + + auto pipe1 = ioContext.provider->newTwoWayPipe(); + auto pipe2 = ioContext.provider->newTwoWayPipe(); + + auto pump = pipe1.ends[1]->pumpTo(*pipe2.ends[0]); + + { + auto readPromise = expectRead(*pipe2.ends[1], "foo"); + pipe1.ends[0]->write("foo", 3).wait(ws); + readPromise.wait(ws); + } + + { + auto readPromise = expectRead(*pipe2.ends[1], "bar"); + pipe1.ends[0]->write("bar", 3).wait(ws); + readPromise.wait(ws); + } + + auto two = bigString(2000); + auto four = bigString(4000); + auto eight = bigString(8000); + auto fiveHundred = bigString(500'000); + + { + auto readPromise = expectRead(*pipe2.ends[1], two); + pipe1.ends[0]->write(two.begin(), two.size()).wait(ws); + readPromise.wait(ws); + } + + { + auto readPromise = expectRead(*pipe2.ends[1], four); + pipe1.ends[0]->write(four.begin(), four.size()).wait(ws); + readPromise.wait(ws); + } + + { + auto readPromise = expectRead(*pipe2.ends[1], eight); + pipe1.ends[0]->write(eight.begin(), eight.size()).wait(ws); + readPromise.wait(ws); + } + + { + auto readPromise = expectRead(*pipe2.ends[1], fiveHundred); + pipe1.ends[0]->write(fiveHundred.begin(), fiveHundred.size()).wait(ws); + readPromise.wait(ws); + } + + KJ_EXPECT(!pump.poll(ws)) + pipe1.ends[0]->shutdownWrite(); + KJ_EXPECT(pump.wait(ws) == 6 + two.size() + four.size() + eight.size() + fiveHundred.size()); +} + +KJ_TEST("OS handle pumpTo small limit") { + auto ioContext = setupAsyncIo(); + auto& ws = ioContext.waitScope; + + auto pipe1 = ioContext.provider->newTwoWayPipe(); + auto pipe2 = ioContext.provider->newTwoWayPipe(); + + auto pump = pipe1.ends[1]->pumpTo(*pipe2.ends[0], 500); + + auto text = bigString(1000); + + auto expected = kj::str(text.slice(0, 500)); + + auto readPromise = expectRead(*pipe2.ends[1], expected); + pipe1.ends[0]->write(text.begin(), text.size()).wait(ws); + auto secondWritePromise = pipe1.ends[0]->write(text.begin(), text.size()); + readPromise.wait(ws); + KJ_EXPECT(pump.wait(ws) == 500); + + expectRead(*pipe1.ends[1], text.slice(500)).wait(ws); +} + +KJ_TEST("OS handle pumpTo small limit -- write first then read") { + auto ioContext = setupAsyncIo(); + auto& ws = ioContext.waitScope; + + auto pipe1 = ioContext.provider->newTwoWayPipe(); + auto pipe2 = ioContext.provider->newTwoWayPipe(); + + auto text = bigString(1000); + + auto expected = kj::str(text.slice(0, 500)); + + // Initiate the write first and let it put as much in the buffer as possible. + auto writePromise = pipe1.ends[0]->write(text.begin(), text.size()); + writePromise.poll(ws); + + // Now start the pump. + auto pump = pipe1.ends[1]->pumpTo(*pipe2.ends[0], 500); + + auto readPromise = expectRead(*pipe2.ends[1], expected); + writePromise.wait(ws); + auto secondWritePromise = pipe1.ends[0]->write(text.begin(), text.size()); + readPromise.wait(ws); + KJ_EXPECT(pump.wait(ws) == 500); + + expectRead(*pipe1.ends[1], text.slice(500)).wait(ws); +} + +KJ_TEST("OS handle pumpTo large limit") { + auto ioContext = setupAsyncIo(); + auto& ws = ioContext.waitScope; + + auto pipe1 = ioContext.provider->newTwoWayPipe(); + auto pipe2 = ioContext.provider->newTwoWayPipe(); + + auto pump = pipe1.ends[1]->pumpTo(*pipe2.ends[0], 750'000); + + auto text = bigString(500'000); + + auto expected = kj::str(text, text.slice(0, 250'000)); + + auto readPromise = expectRead(*pipe2.ends[1], expected); + pipe1.ends[0]->write(text.begin(), text.size()).wait(ws); + auto secondWritePromise = pipe1.ends[0]->write(text.begin(), text.size()); + readPromise.wait(ws); + KJ_EXPECT(pump.wait(ws) == 750'000); + + expectRead(*pipe1.ends[1], text.slice(250'000)).wait(ws); +} + +KJ_TEST("OS handle pumpTo large limit -- write first then read") { + auto ioContext = setupAsyncIo(); + auto& ws = ioContext.waitScope; + + auto pipe1 = ioContext.provider->newTwoWayPipe(); + auto pipe2 = ioContext.provider->newTwoWayPipe(); + + auto text = bigString(500'000); + + auto expected = kj::str(text, text.slice(0, 250'000)); + + // Initiate the write first and let it put as much in the buffer as possible. + auto writePromise = pipe1.ends[0]->write(text.begin(), text.size()); + writePromise.poll(ws); + + // Now start the pump. + auto pump = pipe1.ends[1]->pumpTo(*pipe2.ends[0], 750'000); + + auto readPromise = expectRead(*pipe2.ends[1], expected); + writePromise.wait(ws); + auto secondWritePromise = pipe1.ends[0]->write(text.begin(), text.size()); + readPromise.wait(ws); + KJ_EXPECT(pump.wait(ws) == 750'000); + + expectRead(*pipe1.ends[1], text.slice(250'000)).wait(ws); +} + +#if !_WIN32 +kj::String fillWriteBuffer(int fd) { + // Fill up the write buffer of the given FD and return the contents written. We need to use the + // raw syscalls to do this because KJ doesn't have a way to know how many bytes made it into the + // socket buffer. + auto huge = bigString(2'000'000); + + size_t pos = 0; + for (;;) { + KJ_ASSERT(pos < huge.size(), "whoa, big buffer"); + ssize_t n; + KJ_NONBLOCKING_SYSCALL(n = ::write(fd, huge.begin() + pos, huge.size() - pos)); + if (n < 0) break; + pos += n; + } + + return kj::str(huge.slice(0, pos)); +} + +KJ_TEST("OS handle pumpTo write buffer is full before pump") { + auto ioContext = setupAsyncIo(); + auto& ws = ioContext.waitScope; + + auto pipe1 = ioContext.provider->newTwoWayPipe(); + auto pipe2 = ioContext.provider->newTwoWayPipe(); + + auto bufferContent = fillWriteBuffer(KJ_ASSERT_NONNULL(pipe2.ends[0]->getFd())); + + // Also prime the input pipe with some buffered bytes. + auto writePromise = pipe1.ends[0]->write("foo", 3); + writePromise.poll(ws); + + // Start the pump and let it get blocked. + auto pump = pipe1.ends[1]->pumpTo(*pipe2.ends[0]); + KJ_EXPECT(!pump.poll(ws)); + + // Queue another write, even. + writePromise = writePromise + .then([&]() { return pipe1.ends[0]->write("bar", 3); }); + writePromise.poll(ws); + + // See it all go through. + expectRead(*pipe2.ends[1], bufferContent).wait(ws); + expectRead(*pipe2.ends[1], "foobar").wait(ws); + + writePromise.wait(ws); + + pipe1.ends[0]->shutdownWrite(); + KJ_EXPECT(pump.wait(ws) == 6); + pipe2.ends[0]->shutdownWrite(); + KJ_EXPECT(pipe2.ends[1]->readAllText().wait(ws) == ""); +} + +KJ_TEST("OS handle pumpTo write buffer is full before pump -- and pump ends early") { + auto ioContext = setupAsyncIo(); + auto& ws = ioContext.waitScope; + + auto pipe1 = ioContext.provider->newTwoWayPipe(); + auto pipe2 = ioContext.provider->newTwoWayPipe(); + + auto bufferContent = fillWriteBuffer(KJ_ASSERT_NONNULL(pipe2.ends[0]->getFd())); + + // Also prime the input pipe with some buffered bytes followed by EOF. + auto writePromise = pipe1.ends[0]->write("foo", 3) + .then([&]() { pipe1.ends[0]->shutdownWrite(); }); + writePromise.poll(ws); + + // Start the pump and let it get blocked. + auto pump = pipe1.ends[1]->pumpTo(*pipe2.ends[0]); + KJ_EXPECT(!pump.poll(ws)); + + // See it all go through. + expectRead(*pipe2.ends[1], bufferContent).wait(ws); + expectRead(*pipe2.ends[1], "foo").wait(ws); + + writePromise.wait(ws); + + KJ_EXPECT(pump.wait(ws) == 3); + pipe2.ends[0]->shutdownWrite(); + KJ_EXPECT(pipe2.ends[1]->readAllText().wait(ws) == ""); +} + +KJ_TEST("OS handle pumpTo write buffer is full before pump -- and pump hits limit early") { + auto ioContext = setupAsyncIo(); + auto& ws = ioContext.waitScope; + + auto pipe1 = ioContext.provider->newTwoWayPipe(); + auto pipe2 = ioContext.provider->newTwoWayPipe(); + + auto bufferContent = fillWriteBuffer(KJ_ASSERT_NONNULL(pipe2.ends[0]->getFd())); + + // Also prime the input pipe with some buffered bytes followed by EOF. + auto writePromise = pipe1.ends[0]->write("foo", 3); + writePromise.poll(ws); + + // Start the pump and let it get blocked. + auto pump = pipe1.ends[1]->pumpTo(*pipe2.ends[0], 3); + KJ_EXPECT(!pump.poll(ws)); + + // See it all go through. + expectRead(*pipe2.ends[1], bufferContent).wait(ws); + expectRead(*pipe2.ends[1], "foo").wait(ws); + + writePromise.wait(ws); + + KJ_EXPECT(pump.wait(ws) == 3); + pipe2.ends[0]->shutdownWrite(); + KJ_EXPECT(pipe2.ends[1]->readAllText().wait(ws) == ""); +} + +KJ_TEST("OS handle pumpTo write buffer is full before pump -- and a lot of data is pumped") { + auto ioContext = setupAsyncIo(); + auto& ws = ioContext.waitScope; + + auto pipe1 = ioContext.provider->newTwoWayPipe(); + auto pipe2 = ioContext.provider->newTwoWayPipe(); + + auto bufferContent = fillWriteBuffer(KJ_ASSERT_NONNULL(pipe2.ends[0]->getFd())); + + // Also prime the input pipe with some buffered bytes followed by EOF. + auto text = bigString(500'000); + auto writePromise = pipe1.ends[0]->write(text.begin(), text.size()); + writePromise.poll(ws); + + // Start the pump and let it get blocked. + auto pump = pipe1.ends[1]->pumpTo(*pipe2.ends[0]); + KJ_EXPECT(!pump.poll(ws)); + + // See it all go through. + expectRead(*pipe2.ends[1], bufferContent).wait(ws); + expectRead(*pipe2.ends[1], text).wait(ws); + + writePromise.wait(ws); + + pipe1.ends[0]->shutdownWrite(); + KJ_EXPECT(pump.wait(ws) == text.size()); + pipe2.ends[0]->shutdownWrite(); + KJ_EXPECT(pipe2.ends[1]->readAllText().wait(ws) == ""); +} +#endif + +KJ_TEST("pump file to socket") { + // Tests sendfile() optimization + + auto ioContext = setupAsyncIo(); + auto& ws = ioContext.waitScope; + + auto doTest = [&](kj::Own file) { + file->writeAll("foobar"_kj.asBytes()); + + { + FileInputStream input(*file); + auto pipe = ioContext.provider->newTwoWayPipe(); + auto readPromise = pipe.ends[1]->readAllText(); + input.pumpTo(*pipe.ends[0]).wait(ws); + pipe.ends[0]->shutdownWrite(); + KJ_EXPECT(readPromise.wait(ws) == "foobar"); + KJ_EXPECT(input.getOffset() == 6); + } + + { + FileInputStream input(*file); + auto pipe = ioContext.provider->newTwoWayPipe(); + auto readPromise = pipe.ends[1]->readAllText(); + input.pumpTo(*pipe.ends[0], 3).wait(ws); + pipe.ends[0]->shutdownWrite(); + KJ_EXPECT(readPromise.wait(ws) == "foo"); + KJ_EXPECT(input.getOffset() == 3); + } + + { + FileInputStream input(*file, 3); + auto pipe = ioContext.provider->newTwoWayPipe(); + auto readPromise = pipe.ends[1]->readAllText(); + input.pumpTo(*pipe.ends[0]).wait(ws); + pipe.ends[0]->shutdownWrite(); + KJ_EXPECT(readPromise.wait(ws) == "bar"); + KJ_EXPECT(input.getOffset() == 6); + } + + auto big = bigString(500'000); + file->writeAll(big); + + { + FileInputStream input(*file); + auto pipe = ioContext.provider->newTwoWayPipe(); + auto readPromise = pipe.ends[1]->readAllText(); + input.pumpTo(*pipe.ends[0]).wait(ws); + pipe.ends[0]->shutdownWrite(); + // Extra parens here so that we don't write the big string to the console on failure... + KJ_EXPECT((readPromise.wait(ws) == big)); + KJ_EXPECT(input.getOffset() == big.size()); + } + }; + + // Try with an in-memory file. No optimization is possible. + doTest(kj::newInMemoryFile(kj::nullClock())); + + // Try with a disk file. Should use sendfile(). + auto fs = kj::newDiskFilesystem(); + doTest(fs->getCurrent().createTemporary()); +} + } // namespace } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-io-unix.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-io-unix.c++ index 551f4c44449..62ce21323e8 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-io-unix.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-io-unix.c++ @@ -26,6 +26,12 @@ #define _GNU_SOURCE #endif +#ifndef _FILE_OFFSET_BITS +#define _FILE_OFFSET_BITS 64 +// Request 64-bit off_t for sendfile(). (The code will still work if we get 32-bit off_t as long +// as actual files are under 4GB.) +#endif + #include "async-io.h" #include "async-io-internal.h" #include "async-unix.h" @@ -50,13 +56,18 @@ #include #include #include +#include + +#if __linux__ +#include +#endif #if !defined(SO_PEERCRED) && defined(LOCAL_PEERCRED) #include #endif -#if !defined(SOL_LOCAL) && (__FreeBSD__ || __DragonflyBSD__) -// On DragonFly or FreeBSD < 12.2 you're supposed to use 0 for SOL_LOCAL. +#if !defined(SOL_LOCAL) && (__FreeBSD__ || __DragonflyBSD__ || __APPLE__) +// On DragonFly, FreeBSD < 12.2 and older Darwin you're supposed to use 0 for SOL_LOCAL. #define SOL_LOCAL 0 #endif @@ -137,10 +148,10 @@ private: class AsyncStreamFd: public OwnedFileDescriptor, public AsyncCapabilityStream { public: - AsyncStreamFd(UnixEventPort& eventPort, int fd, uint flags) + AsyncStreamFd(UnixEventPort& eventPort, int fd, uint flags, uint observerFlags) : OwnedFileDescriptor(fd, flags), eventPort(eventPort), - observer(eventPort, fd, UnixEventPort::FdObserver::OBSERVE_READ_WRITE) {} + observer(eventPort, fd, observerFlags) {} virtual ~AsyncStreamFd() noexcept(false) {} Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { @@ -163,7 +174,8 @@ public: (ReadResult result) mutable { for (auto i: kj::zeroTo(result.capCount)) { streamBuffer[i] = kj::heap(eventPort, fdBuffer[i].release(), - LowLevelAsyncIoProvider::TAKE_OWNERSHIP | LowLevelAsyncIoProvider::ALREADY_CLOEXEC); + LowLevelAsyncIoProvider::TAKE_OWNERSHIP | LowLevelAsyncIoProvider::ALREADY_CLOEXEC, + UnixEventPort::FdObserver::OBSERVE_READ_WRITE); } return result; }); @@ -228,6 +240,240 @@ public: return promise.attach(kj::mv(fds), kj::mv(streams)); } + Maybe> tryPumpFrom( + AsyncInputStream& input, uint64_t amount = kj::maxValue) override { +#if __linux__ && !__ANDROID__ + KJ_IF_MAYBE(sock, kj::dynamicDowncastIfAvailable(input)) { + return pumpFromOther(*sock, amount); + } +#endif + +#if __linux__ + KJ_IF_MAYBE(file, kj::dynamicDowncastIfAvailable(input)) { + KJ_IF_MAYBE(fd, file->getUnderlyingFile().getFd()) { + return pumpFromFile(*file, *fd, amount, 0); + } + } +#endif + + return nullptr; + } + +#if __linux__ + // TODO(someday): Support sendfile on other OS's... unfortunately, it works differently on + // different systems. + +private: + Promise pumpFromFile(FileInputStream& input, int fileFd, + uint64_t amount, uint64_t soFar) { + while (soFar < amount) { + off_t offset = input.getOffset(); + ssize_t n; + + // Although sendfile()'s last argument has type size_t, on Linux it seems to cause EINVAL + // if we pass an amount that is greater than UINT32_MAX, so make sure to clamp to that. In + // practice, of course, we'll be limited to the socket buffer size. + size_t requested = kj::min(amount - soFar, (uint32_t)kj::maxValue); + + KJ_SYSCALL_HANDLE_ERRORS(n = sendfile(fd, fileFd, &offset, requested)) { + case EINVAL: + case ENOSYS: + // Fall back to regular pump + return unoptimizedPumpTo(input, *this, amount, soFar); + + case EAGAIN: + return observer.whenBecomesWritable() + .then([this, &input, fileFd, amount, soFar]() { + return pumpFromFile(input, fileFd, amount, soFar); + }); + + default: + KJ_FAIL_SYSCALL("sendfile", error); + } + + if (n == 0) break; + + input.seek(offset); // NOTE: sendfile() updated `offset` in-place. + soFar += n; + } + + return soFar; + } + +public: +#endif // __linux__ + +#if __linux__ && !__ANDROID__ +// Linux's splice() syscall lets us optimize pumping of bytes between file descriptors. +// +// TODO(someday): splice()-based pumping hangs in unit tests on Android for some reason. We should +// figure out why, but for now I'm just disabling it... + +private: + Maybe> pumpFromOther(AsyncStreamFd& input, uint64_t amount) { + // The input is another AsyncStreamFd, so perhaps we can do an optimized pump with splice(). + + // Before we resort to a bunch of syscalls, let's try to see if the pump is small and able to + // be fully satisfied immediately. This optimizes for the case of small streams, e.g. a short + // HTTP body. + + byte buffer[4096]; + size_t pos = 0; + size_t initialAmount = kj::min(sizeof(buffer), amount); + + bool eof = false; + + // Read into the buffer until it's full or there are no bytes available. Note that we'd expect + // one call to read() will pull as much data out of the socket as possible (up to our buffer + // size), so you might think the loop is unnecessary. The reason we want to do a second read(), + // though, is to find out if we're at EOF or merely waiting for more data. In the EOF case, + // we can end the pump early without splicing. + while (pos < initialAmount) { + ssize_t n; + KJ_NONBLOCKING_SYSCALL(n = ::read(input.fd, buffer + pos, initialAmount - pos)); + if (n <= 0) { + eof = n == 0; + break; + } + pos += n; + } + + // Write the bytes that we just read back out to the output. + { + ssize_t n; + KJ_NONBLOCKING_SYSCALL(n = ::write(fd, buffer, pos)); + if (n < 0) n = 0; // treat EAGAIN as "zero bytes written" + if (size_t(n) < pos) { + // Oh crap, the output buffer is full. This should be rare. But, now we're going to have + // to copy the remaining bytes into the heap to do an async write. + auto leftover = kj::heapArray(buffer + n, pos - n); + auto promise = write(leftover.begin(), leftover.size()); + promise = promise.attach(kj::mv(leftover)); + if (eof || pos == amount) { + return promise.then([pos]() -> uint64_t { return pos; }); + } else { + return promise.then([&input, this, pos, amount]() { + return splicePumpFrom(input, pos, amount); + }); + } + } + } + + if (eof || pos == amount) { + // We finished the pump in one go, so don't splice. + return Promise(uint64_t(pos)); + } else { + // Use splice for the rest of the pump. + return splicePumpFrom(input, pos, amount); + } + } + + static constexpr size_t MAX_SPLICE_LEN = 1 << 20; + // Maximum value we'll pass for the `len` argument of `splice()`. Linux does not like it when we + // use `kj::maxValue` here so we clamp it. Note that the actual value of this constant is + // irrelevanta as long as it is more than the pipe buffer size (typically 64k) and less than + // whatever value makes Linux unhappy. All actual operations will be clamped to the buffer size. + // (And if the buffer size is for some reason larger than this, that's OK too, we just won't + // end up using the whole buffer.) + + Promise splicePumpFrom(AsyncStreamFd& input, uint64_t readSoFar, uint64_t limit) { + // splice() requires that either its input or its output is a pipe. But chances are neither + // `input.fd` nor `this->fd` is a pipe -- in most use cases they are sockets. In order to take + // advantage of splice(), then, we need to allocate a pipe to act as the middleman, so we can + // splice() from the input to the pipe, and then from the pipe to the output. + // + // You might wonder why this pipe middleman is required. Why can't splice() go directly from + // a socket to a socket? Linus Torvalds attempts to explain here: + // https://yarchive.net/comp/linux/splice.html + // + // The short version is that the pipe itself is equivalent to an in-memory buffer. In a naive + // pump implementation, we allocate a buffer, read() into it and write() out. With splice(), + // we allocate a kernelspace buffer by allocating a pipe, then we splice() into the pipe and + // splice() back out. + + // Linux normally allocates pipe buffers of 64k (16 pages of 4k each). However, when + // /proc/sys/fs/pipe-user-pages-soft is hit, then Linux will start allocating 4k (1 page) + // buffers instead, and will give an error if we try to increase it. + // + // The soft limit defaults to 16384 pages, which we'd hit after 1024 pipes -- totally possible + // in a big server. 64k is a nice buffer size, but even 4k is better than not using splice, so + // we'll live with whatever buffer size the kernel gives us. + // + // There is a second, "hard" limit, /proc/sys/fs/pipe-user-pages-hard, at which point Linux + // will start refusing to allocate pipes at all. In this case we fall back to an unoptimized + // pump. However, this limit defaults to unlimited, so this won't ever happen unless someone + // has manually changed the limit. That's probably dangerous since if the app allocates pipes + // anywhere else in its codebase, it probably doesn't have any fallbacks in those places, so + // things will break anyway... to avoid that we'd need to self-regulate the number of pipes + // we allocate here to avoid coming close to the hard limit, but that's a lot of effort so I'm + // not going to bother! + + int pipeFds[2]; + KJ_SYSCALL_HANDLE_ERRORS(pipe2(pipeFds, O_NONBLOCK | O_CLOEXEC)) { + case ENFILE: + // Probably hit the limit on pipe buffers, fall back to unoptimized pump. + return unoptimizedPumpTo(input, *this, limit, readSoFar); + default: + KJ_FAIL_SYSCALL("pipe2()", error); + } + + AutoCloseFd pipeIn(pipeFds[0]), pipeOut(pipeFds[1]); + + return splicePumpLoop(input, pipeFds[0], pipeFds[1], readSoFar, limit, 0) + .attach(kj::mv(pipeIn), kj::mv(pipeOut)); + } + + Promise splicePumpLoop(AsyncStreamFd& input, int pipeIn, int pipeOut, + uint64_t readSoFar, uint64_t limit, size_t bufferedAmount) { + for (;;) { + while (bufferedAmount > 0) { + // First flush out whatever is in the pipe buffer. + ssize_t n; + KJ_NONBLOCKING_SYSCALL(n = splice(pipeIn, nullptr, fd, nullptr, + MAX_SPLICE_LEN, SPLICE_F_MOVE | SPLICE_F_NONBLOCK)); + if (n > 0) { + KJ_ASSERT(n <= bufferedAmount, "splice pipe larger than bufferedAmount?"); + bufferedAmount -= n; + } else { + KJ_ASSERT(n < 0, "splice pipe empty before bufferedAmount reached?", bufferedAmount); + return observer.whenBecomesWritable() + .then([this, &input, pipeIn, pipeOut, readSoFar, limit, bufferedAmount]() { + return splicePumpLoop(input, pipeIn, pipeOut, readSoFar, limit, bufferedAmount); + }); + } + } + + // Now the pipe buffer is empty, so we can try to read some more. + { + if (readSoFar >= limit) { + // Hit the limit, we're done. + KJ_ASSERT(readSoFar == limit); + return readSoFar; + } + + ssize_t n; + KJ_NONBLOCKING_SYSCALL(n = splice(input.fd, nullptr, pipeOut, nullptr, + kj::min(limit - readSoFar, MAX_SPLICE_LEN), SPLICE_F_MOVE | SPLICE_F_NONBLOCK)); + if (n == 0) { + // EOF. + return readSoFar; + } else if (n < 0) { + // No data available, wait. + return input.observer.whenBecomesReadable() + .then([this, &input, pipeIn, pipeOut, readSoFar, limit]() { + return splicePumpLoop(input, pipeIn, pipeOut, readSoFar, limit, 0); + }); + } + + readSoFar += n; + bufferedAmount = n; + } + } + } + +public: +#endif // __linux__ && !__ANDROID__ + Promise whenWriteDisconnected() override { KJ_IF_MAYBE(p, writeDisconnectedPromise) { return p->addBranch(); @@ -634,6 +880,10 @@ private: } }; +#if __linux__ && !__ANDROID__ +constexpr size_t AsyncStreamFd::MAX_SPLICE_LEN; +#endif // __linux__ && !__ANDROID__ + // ======================================================================================= class SocketAddress { @@ -949,58 +1199,6 @@ private: } addr; struct LookupParams; - class LookupReader; -}; - -class SocketAddress::LookupReader { - // Reads SocketAddresses off of a pipe coming from another thread that is performing - // getaddrinfo. - -public: - LookupReader(kj::Own&& thread, kj::Own&& input, - _::NetworkFilter& filter) - : thread(kj::mv(thread)), input(kj::mv(input)), filter(filter) {} - - ~LookupReader() { - if (thread) thread->detach(); - } - - Promise> read() { - return input->tryRead(¤t, sizeof(current), sizeof(current)).then( - [this](size_t n) -> Promise> { - if (n < sizeof(current)) { - thread = nullptr; - // getaddrinfo()'s docs seem to say it will never return an empty list, but let's check - // anyway. - KJ_REQUIRE(addresses.size() > 0, "DNS lookup returned no permitted addresses.") { break; } - return addresses.releaseAsArray(); - } else { - // getaddrinfo() can return multiple copies of the same address for several reasons. - // A major one is that we don't give it a socket type (SOCK_STREAM vs. SOCK_DGRAM), so - // it may return two copies of the same address, one for each type, unless it explicitly - // knows that the service name given is specific to one type. But we can't tell it a type, - // because we don't actually know which one the user wants, and if we specify SOCK_STREAM - // while the user specified a UDP service name then they'll get a resolution error which - // is lame. (At least, I think that's how it works.) - // - // So we instead resort to de-duping results. - if (alreadySeen.insert(current).second) { - if (current.parseAllowedBy(filter)) { - addresses.add(current); - } - } - return read(); - } - }); - } - -private: - kj::Own thread; - kj::Own input; - _::NetworkFilter& filter; - SocketAddress current; - kj::Vector addresses; - std::set alreadySeen; }; struct SocketAddress::LookupParams { @@ -1018,84 +1216,97 @@ Promise> SocketAddress::lookupHost( // Maybe use the various platform-specific asynchronous DNS libraries? Please do not implement // a custom DNS resolver... - int fds[2]; -#if __linux__ && !__BIONIC__ - KJ_SYSCALL(pipe2(fds, O_NONBLOCK | O_CLOEXEC)); -#else - KJ_SYSCALL(pipe(fds)); -#endif - - auto input = lowLevel.wrapInputFd(fds[0], NEW_FD_FLAGS); - - int outFd = fds[1]; - + auto paf = newPromiseAndCrossThreadFulfiller>(); LookupParams params = { kj::mv(host), kj::mv(service) }; - auto thread = heap(kj::mvCapture(params, [outFd,portHint](LookupParams&& params) { - FdOutputStream output((AutoCloseFd(outFd))); - - struct addrinfo* list; - int status = getaddrinfo( - params.host == "*" ? nullptr : params.host.cStr(), - params.service == nullptr ? nullptr : params.service.cStr(), - nullptr, &list); - if (status == 0) { - KJ_DEFER(freeaddrinfo(list)); - - struct addrinfo* cur = list; - while (cur != nullptr) { - if (params.service == nullptr) { - switch (cur->ai_addr->sa_family) { - case AF_INET: - ((struct sockaddr_in*)cur->ai_addr)->sin_port = htons(portHint); - break; - case AF_INET6: - ((struct sockaddr_in6*)cur->ai_addr)->sin6_port = htons(portHint); - break; - default: - break; + auto thread = heap( + [fulfiller=kj::mv(paf.fulfiller),params=kj::mv(params),portHint]() mutable { + // getaddrinfo() can return multiple copies of the same address for several reasons. + // A major one is that we don't give it a socket type (SOCK_STREAM vs. SOCK_DGRAM), so + // it may return two copies of the same address, one for each type, unless it explicitly + // knows that the service name given is specific to one type. But we can't tell it a type, + // because we don't actually know which one the user wants, and if we specify SOCK_STREAM + // while the user specified a UDP service name then they'll get a resolution error which + // is lame. (At least, I think that's how it works.) + // + // So we instead resort to de-duping results. + std::set result; + + KJ_IF_MAYBE(exception, kj::runCatchingExceptions([&]() { + struct addrinfo hints; + memset(&hints, 0, sizeof(hints)); + hints.ai_family = AF_UNSPEC; +#if __BIONIC__ + // AI_V4MAPPED causes getaddrinfo() to fail on Bionic libc (Android). + hints.ai_flags = AI_ADDRCONFIG; +#else + hints.ai_flags = AI_V4MAPPED | AI_ADDRCONFIG; +#endif + struct addrinfo* list; + int status = getaddrinfo( + params.host == "*" ? nullptr : params.host.cStr(), + params.service == nullptr ? nullptr : params.service.cStr(), + &hints, &list); + if (status == 0) { + KJ_DEFER(freeaddrinfo(list)); + + struct addrinfo* cur = list; + while (cur != nullptr) { + if (params.service == nullptr) { + switch (cur->ai_addr->sa_family) { + case AF_INET: + ((struct sockaddr_in*)cur->ai_addr)->sin_port = htons(portHint); + break; + case AF_INET6: + ((struct sockaddr_in6*)cur->ai_addr)->sin6_port = htons(portHint); + break; + default: + break; + } } - } - SocketAddress addr; - if (params.host == "*") { - // Set up a wildcard SocketAddress. Only use the port number returned by getaddrinfo(). - addr.wildcard = true; - addr.addrlen = sizeof(addr.addr.inet6); - addr.addr.inet6.sin6_family = AF_INET6; - switch (cur->ai_addr->sa_family) { - case AF_INET: - addr.addr.inet6.sin6_port = ((struct sockaddr_in*)cur->ai_addr)->sin_port; - break; - case AF_INET6: - addr.addr.inet6.sin6_port = ((struct sockaddr_in6*)cur->ai_addr)->sin6_port; - break; - default: - addr.addr.inet6.sin6_port = portHint; - break; + SocketAddress addr; + if (params.host == "*") { + // Set up a wildcard SocketAddress. Only use the port number returned by getaddrinfo(). + addr.wildcard = true; + addr.addrlen = sizeof(addr.addr.inet6); + addr.addr.inet6.sin6_family = AF_INET6; + switch (cur->ai_addr->sa_family) { + case AF_INET: + addr.addr.inet6.sin6_port = ((struct sockaddr_in*)cur->ai_addr)->sin_port; + break; + case AF_INET6: + addr.addr.inet6.sin6_port = ((struct sockaddr_in6*)cur->ai_addr)->sin6_port; + break; + default: + addr.addr.inet6.sin6_port = portHint; + break; + } + } else { + addr.addrlen = cur->ai_addrlen; + memcpy(&addr.addr.generic, cur->ai_addr, cur->ai_addrlen); } - } else { - addr.addrlen = cur->ai_addrlen; - memcpy(&addr.addr.generic, cur->ai_addr, cur->ai_addrlen); + result.insert(addr); + cur = cur->ai_next; + } + } else if (status == EAI_SYSTEM) { + KJ_FAIL_SYSCALL("getaddrinfo", errno, params.host, params.service) { + return; + } + } else { + KJ_FAIL_REQUIRE("DNS lookup failed.", + params.host, params.service, gai_strerror(status)) { + return; } - KJ_ASSERT_CAN_MEMCPY(SocketAddress); - output.write(&addr, sizeof(addr)); - cur = cur->ai_next; - } - } else if (status == EAI_SYSTEM) { - KJ_FAIL_SYSCALL("getaddrinfo", errno, params.host, params.service) { - return; } + })) { + fulfiller->reject(kj::mv(*exception)); } else { - KJ_FAIL_REQUIRE("DNS lookup failed.", - params.host, params.service, gai_strerror(status)) { - return; - } + fulfiller->fulfill(KJ_MAP(addr, result) { return addr; }); } - })); + }); - auto reader = heap(kj::mv(thread), kj::mv(input), filter); - return reader->read().attach(kj::mv(reader)); + return kj::mv(paf.promise); } // ======================================================================================= @@ -1155,7 +1366,8 @@ public: } AuthenticatedStream result; - result.stream = heap(eventPort, ownFd.release(), NEW_FD_FLAGS); + result.stream = heap(eventPort, ownFd.release(), NEW_FD_FLAGS, + UnixEventPort::FdObserver::OBSERVE_READ_WRITE); if (authenticated) { result.peerIdentity = SocketAddress(reinterpret_cast(&addr), addrlen) .getIdentity(lowLevel, filter, *result.stream); @@ -1263,27 +1475,28 @@ public: class LowLevelAsyncIoProviderImpl final: public LowLevelAsyncIoProvider { public: LowLevelAsyncIoProviderImpl() - : eventLoop(eventPort), waitScope(eventLoop) {} + : eventPort(), eventLoop(eventPort), waitScope(eventLoop) {} inline WaitScope& getWaitScope() { return waitScope; } Own wrapInputFd(int fd, uint flags = 0) override { - return heap(eventPort, fd, flags); + return heap(eventPort, fd, flags, UnixEventPort::FdObserver::OBSERVE_READ); } Own wrapOutputFd(int fd, uint flags = 0) override { - return heap(eventPort, fd, flags); + return heap(eventPort, fd, flags, UnixEventPort::FdObserver::OBSERVE_WRITE); } Own wrapSocketFd(int fd, uint flags = 0) override { - return heap(eventPort, fd, flags); + return heap(eventPort, fd, flags, UnixEventPort::FdObserver::OBSERVE_READ_WRITE); } Own wrapUnixSocketFd(Fd fd, uint flags = 0) override { - return heap(eventPort, fd, flags); + return heap(eventPort, fd, flags, UnixEventPort::FdObserver::OBSERVE_READ_WRITE); } Promise> wrapConnectingSocketFd( int fd, const struct sockaddr* addr, uint addrlen, uint flags = 0) override { // It's important that we construct the AsyncStreamFd first, so that `flags` are honored, // especially setting nonblocking mode and taking ownership. - auto result = heap(eventPort, fd, flags); + auto result = heap(eventPort, fd, flags, + UnixEventPort::FdObserver::OBSERVE_READ_WRITE); // Unfortunately connect() doesn't fit the mold of KJ_NONBLOCKING_SYSCALL, since it indicates // non-blocking using EINPROGRESS. @@ -1294,7 +1507,8 @@ public: // Fine. break; } else if (error != EINTR) { - KJ_FAIL_SYSCALL("connect()", error) { break; } + auto address = SocketAddress(addr, addrlen).toString(); + KJ_FAIL_SYSCALL("connect()", error, address) { break; } return Own(); } } else { @@ -1304,7 +1518,7 @@ public: } auto connected = result->waitConnected(); - return connected.then(kj::mvCapture(result, [fd](Own&& stream) { + return connected.then([fd,stream=kj::mv(result)]() mutable -> Own { int err; socklen_t errlen = sizeof(err); KJ_SYSCALL(getsockopt(fd, SOL_SOCKET, SO_ERROR, &err, &errlen)); @@ -1312,7 +1526,7 @@ public: KJ_FAIL_SYSCALL("connect()", err) { break; } } return kj::mv(stream); - })); + }); } Own wrapListenSocketFd( int fd, NetworkFilter& filter, uint flags = 0) override { @@ -1356,29 +1570,31 @@ public: } Own listen() override { - if (addrs.size() > 1) { - KJ_LOG(WARNING, "Bind address resolved to multiple addresses. Only the first address will " - "be used. If this is incorrect, specify the address numerically. This may be fixed " - "in the future.", addrs[0].toString()); - } + auto makeReceiver = [&](SocketAddress& addr) { + int fd = addr.socket(SOCK_STREAM); - int fd = addrs[0].socket(SOCK_STREAM); + { + KJ_ON_SCOPE_FAILURE(close(fd)); - { - KJ_ON_SCOPE_FAILURE(close(fd)); + // We always enable SO_REUSEADDR because having to take your server down for five minutes + // before it can restart really sucks. + int optval = 1; + KJ_SYSCALL(setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(optval))); - // We always enable SO_REUSEADDR because having to take your server down for five minutes - // before it can restart really sucks. - int optval = 1; - KJ_SYSCALL(setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(optval))); + addr.bind(fd); - addrs[0].bind(fd); + // TODO(someday): Let queue size be specified explicitly in string addresses. + KJ_SYSCALL(::listen(fd, SOMAXCONN)); + } - // TODO(someday): Let queue size be specified explicitly in string addresses. - KJ_SYSCALL(::listen(fd, SOMAXCONN)); - } + return lowLevel.wrapListenSocketFd(fd, filter, NEW_FD_FLAGS); + }; - return lowLevel.wrapListenSocketFd(fd, filter, NEW_FD_FLAGS); + if (addrs.size() == 1) { + return makeReceiver(addrs[0]); + } else { + return newAggregateConnectionReceiver(KJ_MAP(addr, addrs) { return makeReceiver(addr); }); + } } Own bindDatagramPort() override { @@ -1530,9 +1746,9 @@ public: : lowLevel(parent.lowLevel), filter(allow, deny, parent.filter) {} Promise> parseAddress(StringPtr addr, uint portHint = 0) override { - return evalLater(mvCapture(heapString(addr), [this,portHint](String&& addr) { + return evalNow([&]() { return SocketAddress::parse(lowLevel, addr, portHint, filter); - })).then([this](Array addresses) -> Own { + }).then([this](Array addresses) -> Own { return heap(lowLevel, filter, kj::mv(addresses)); }); } @@ -1814,13 +2030,12 @@ public: auto pipe = lowLevel.wrapSocketFd(fds[0], NEW_FD_FLAGS); - auto thread = heap(kj::mvCapture(startFunc, - [threadFd](Function&& startFunc) { + auto thread = heap([threadFd,startFunc=kj::mv(startFunc)]() mutable { LowLevelAsyncIoProviderImpl lowLevel; auto stream = lowLevel.wrapSocketFd(threadFd, NEW_FD_FLAGS); AsyncIoProviderImpl ioProvider(lowLevel); startFunc(ioProvider, *stream, lowLevel.getWaitScope()); - })); + }); return { kj::mv(thread), kj::mv(pipe) }; } diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-io-win32.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-io-win32.c++ index aaa65a20d39..30a9230f86d 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-io-win32.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-io-win32.c++ @@ -23,7 +23,7 @@ // For Unix implementation, see async-io-unix.c++. // Request Vista-level APIs. -#include "win32-api-version.h" +#include #include "async-io.h" #include "async-io-internal.h" @@ -722,58 +722,6 @@ private: } addr; struct LookupParams; - class LookupReader; -}; - -class SocketAddress::LookupReader { - // Reads SocketAddresses off of a pipe coming from another thread that is performing - // getaddrinfo. - -public: - LookupReader(kj::Own&& thread, kj::Own&& input, - _::NetworkFilter& filter) - : thread(kj::mv(thread)), input(kj::mv(input)), filter(filter) {} - - ~LookupReader() { - if (thread) thread->detach(); - } - - Promise> read() { - return input->tryRead(¤t, sizeof(current), sizeof(current)).then( - [this](size_t n) -> Promise> { - if (n < sizeof(current)) { - thread = nullptr; - // getaddrinfo()'s docs seem to say it will never return an empty list, but let's check - // anyway. - KJ_REQUIRE(addresses.size() > 0, "DNS lookup returned no permitted addresses.") { break; } - return addresses.releaseAsArray(); - } else { - // getaddrinfo() can return multiple copies of the same address for several reasons. - // A major one is that we don't give it a socket type (SOCK_STREAM vs. SOCK_DGRAM), so - // it may return two copies of the same address, one for each type, unless it explicitly - // knows that the service name given is specific to one type. But we can't tell it a type, - // because we don't actually know which one the user wants, and if we specify SOCK_STREAM - // while the user specified a UDP service name then they'll get a resolution error which - // is lame. (At least, I think that's how it works.) - // - // So we instead resort to de-duping results. - if (alreadySeen.insert(current).second) { - if (current.parseAllowedBy(filter)) { - addresses.add(current); - } - } - return read(); - } - }); - } - -private: - kj::Own thread; - kj::Own input; - _::NetworkFilter& filter; - SocketAddress current; - kj::Vector addresses; - std::set alreadySeen; }; struct SocketAddress::LookupParams { @@ -796,85 +744,84 @@ Promise> SocketAddress::lookupHost( // - Requires Unicode, for some reason. Only GetAddrInfoExW() supports async, according to the // docs. Never mind that DNS itself is ASCII... - SOCKET fds[2]; - KJ_WINSOCK(_::win32Socketpair(fds)); - - auto input = lowLevel.wrapInputFd(fds[0], NEW_FD_FLAGS); - - int outFd = fds[1]; - + auto paf = newPromiseAndCrossThreadFulfiller>(); LookupParams params = { kj::mv(host), kj::mv(service) }; - auto thread = heap(kj::mvCapture(params, [outFd,portHint](LookupParams&& params) { - KJ_DEFER(closesocket(outFd)); - - struct addrinfo* list; - int status = getaddrinfo( - params.host == "*" ? nullptr : params.host.cStr(), - params.service == nullptr ? nullptr : params.service.cStr(), - nullptr, &list); - if (status == 0) { - KJ_DEFER(freeaddrinfo(list)); - - struct addrinfo* cur = list; - while (cur != nullptr) { - if (params.service == nullptr) { - switch (cur->ai_addr->sa_family) { - case AF_INET: - ((struct sockaddr_in*)cur->ai_addr)->sin_port = htons(portHint); - break; - case AF_INET6: - ((struct sockaddr_in6*)cur->ai_addr)->sin6_port = htons(portHint); - break; - default: - break; + auto thread = heap( + [fulfiller=kj::mv(paf.fulfiller),params=kj::mv(params),portHint]() mutable { + // getaddrinfo() can return multiple copies of the same address for several reasons. + // A major one is that we don't give it a socket type (SOCK_STREAM vs. SOCK_DGRAM), so + // it may return two copies of the same address, one for each type, unless it explicitly + // knows that the service name given is specific to one type. But we can't tell it a type, + // because we don't actually know which one the user wants, and if we specify SOCK_STREAM + // while the user specified a UDP service name then they'll get a resolution error which + // is lame. (At least, I think that's how it works.) + // + // So we instead resort to de-duping results. + std::set result; + + KJ_IF_MAYBE(exception, kj::runCatchingExceptions([&]() { + addrinfo* list; + int status = getaddrinfo( + params.host == "*" ? nullptr : params.host.cStr(), + params.service == nullptr ? nullptr : params.service.cStr(), + nullptr, &list); + if (status == 0) { + KJ_DEFER(freeaddrinfo(list)); + + addrinfo* cur = list; + while (cur != nullptr) { + if (params.service == nullptr) { + switch (cur->ai_addr->sa_family) { + case AF_INET: + ((struct sockaddr_in*)cur->ai_addr)->sin_port = htons(portHint); + break; + case AF_INET6: + ((struct sockaddr_in6*)cur->ai_addr)->sin6_port = htons(portHint); + break; + default: + break; + } } - } - SocketAddress addr; - memset(&addr, 0, sizeof(addr)); // mollify valgrind - if (params.host == "*") { - // Set up a wildcard SocketAddress. Only use the port number returned by getaddrinfo(). - addr.wildcard = true; - addr.addrlen = sizeof(addr.addr.inet6); - addr.addr.inet6.sin6_family = AF_INET6; - switch (cur->ai_addr->sa_family) { - case AF_INET: - addr.addr.inet6.sin6_port = ((struct sockaddr_in*)cur->ai_addr)->sin_port; - break; - case AF_INET6: - addr.addr.inet6.sin6_port = ((struct sockaddr_in6*)cur->ai_addr)->sin6_port; - break; - default: - addr.addr.inet6.sin6_port = portHint; - break; + SocketAddress addr; + memset(&addr, 0, sizeof(addr)); // mollify valgrind + if (params.host == "*") { + // Set up a wildcard SocketAddress. Only use the port number returned by getaddrinfo(). + addr.wildcard = true; + addr.addrlen = sizeof(addr.addr.inet6); + addr.addr.inet6.sin6_family = AF_INET6; + switch (cur->ai_addr->sa_family) { + case AF_INET: + addr.addr.inet6.sin6_port = ((struct sockaddr_in*)cur->ai_addr)->sin_port; + break; + case AF_INET6: + addr.addr.inet6.sin6_port = ((struct sockaddr_in6*)cur->ai_addr)->sin6_port; + break; + default: + addr.addr.inet6.sin6_port = portHint; + break; + } + } else { + addr.addrlen = cur->ai_addrlen; + memcpy(&addr.addr.generic, cur->ai_addr, cur->ai_addrlen); } - } else { - addr.addrlen = cur->ai_addrlen; - memcpy(&addr.addr.generic, cur->ai_addr, cur->ai_addrlen); + result.insert(addr); + cur = cur->ai_next; } - KJ_ASSERT_CAN_MEMCPY(SocketAddress); - - const char* data = reinterpret_cast(&addr); - size_t size = sizeof(addr); - while (size > 0) { - int n; - KJ_WINSOCK(n = send(outFd, data, size, 0)); - data += n; - size -= n; + } else { + KJ_FAIL_WIN32("getaddrinfo()", status, params.host, params.service) { + return; } - - cur = cur->ai_next; } + })) { + fulfiller->reject(kj::mv(*exception)); } else { - KJ_FAIL_WIN32("getaddrinfo()", status, params.host, params.service) { - return; - } + fulfiller->fulfill(KJ_MAP(addr, result) { return addr; }); } - })); + }); - auto reader = heap(kj::mv(thread), kj::mv(input), filter); - return reader->read().attach(kj::mv(reader)); + return kj::mv(paf.promise); } // ======================================================================================= @@ -914,9 +861,9 @@ public: } } - return op->onComplete().then(mvCapture(result, mvCapture(scratch, - [this,newFd] - (Array scratch, Own stream, Win32EventPort::IoResult ioResult) + return op->onComplete().then( + [this,newFd,stream=kj::mv(result),scratch=kj::mv(scratch)] + (Win32EventPort::IoResult ioResult) mutable -> Promise> { if (ioResult.errorCode != ERROR_SUCCESS) { KJ_FAIL_WIN32("AcceptEx()", ioResult.errorCode) { break; } @@ -933,11 +880,11 @@ public: // getpeername() to get the address. auto addr = SocketAddress::getPeerAddress(newFd); if (addr.allowedBy(filter)) { - return kj::mv(stream); + return Own(kj::mv(stream)); } else { return accept(); } - }))); + }); } uint getPort() override { @@ -994,9 +941,9 @@ public: SocketAddress::getWildcardForFamily(addr->sa_family).bind(fd); auto connected = result->connect(addr, addrlen); - return connected.then(kj::mvCapture(result, [](Own&& result) { - return kj::mv(result); - })); + return connected.then([result=kj::mv(result)]() mutable -> Own { + return Own(kj::mv(result)); + }); } Own wrapListenSocketFd( SOCKET fd, NetworkFilter& filter, uint flags = 0) override { @@ -1139,9 +1086,9 @@ public: : lowLevel(parent.lowLevel), filter(allow, deny, parent.filter) {} Promise> parseAddress(StringPtr addr, uint portHint = 0) override { - return evalLater(mvCapture(heapString(addr), [this,portHint](String&& addr) { + return evalNow([&]() { return SocketAddress::parse(lowLevel, addr, portHint, filter); - })).then([this](Array addresses) -> Own { + }).then([this](Array addresses) -> Own { return heap(lowLevel, filter, kj::mv(addresses)); }); } @@ -1203,13 +1150,12 @@ public: auto pipe = lowLevel.wrapSocketFd(fds[0], NEW_FD_FLAGS); - auto thread = heap(kj::mvCapture(startFunc, - [threadFd](Function&& startFunc) { + auto thread = heap([threadFd,startFunc=kj::mv(startFunc)]() mutable { LowLevelAsyncIoProviderImpl lowLevel; auto stream = lowLevel.wrapSocketFd(threadFd, NEW_FD_FLAGS); AsyncIoProviderImpl ioProvider(lowLevel); startFunc(ioProvider, *stream, lowLevel.getWaitScope()); - })); + }); return { kj::mv(thread), kj::mv(pipe) }; } diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-io.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-io.c++ index ec9fc9d71fb..5fea50d3862 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-io.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-io.c++ @@ -21,7 +21,7 @@ #if _WIN32 // Request Vista-level APIs. -#include "win32-api-version.h" +#include #endif #include "async-io.h" @@ -31,12 +31,13 @@ #include "io.h" #include "one-of.h" #include +#include #if _WIN32 #include #include #include -#include "windows-sanity.h" +#include #define inet_pton InetPtonA #define inet_ntop InetNtopA #include @@ -75,12 +76,16 @@ void AsyncInputStream::registerAncillaryMessageHandler( KJ_UNIMPLEMENTED("registerAncillaryMsgHandler is not implemented by this AsyncInputStream"); } +Maybe> AsyncInputStream::tryTee(uint64_t) { + return nullptr; +} + namespace { class AsyncPump { public: - AsyncPump(AsyncInputStream& input, AsyncOutputStream& output, uint64_t limit) - : input(input), output(output), limit(limit) {} + AsyncPump(AsyncInputStream& input, AsyncOutputStream& output, uint64_t limit, uint64_t doneSoFar) + : input(input), output(output), limit(limit), doneSoFar(doneSoFar) {} Promise pump() { // TODO(perf): This could be more efficient by reading half a buffer at a time and then @@ -104,12 +109,20 @@ private: AsyncInputStream& input; AsyncOutputStream& output; uint64_t limit; - uint64_t doneSoFar = 0; + uint64_t doneSoFar; byte buffer[4096]; }; } // namespace +Promise unoptimizedPumpTo( + AsyncInputStream& input, AsyncOutputStream& output, uint64_t amount, + uint64_t completedSoFar) { + auto pump = heap(input, output, amount, completedSoFar); + auto promise = pump->pump(); + return promise.attach(kj::mv(pump)); +} + Promise AsyncInputStream::pumpTo( AsyncOutputStream& output, uint64_t amount) { // See if output wants to dispatch on us. @@ -118,9 +131,7 @@ Promise AsyncInputStream::pumpTo( } // OK, fall back to naive approach. - auto pump = heap(*this, output, amount); - auto promise = pump->pump(); - return promise.attach(kj::mv(pump)); + return unoptimizedPumpTo(*this, output, amount); } namespace { @@ -210,7 +221,7 @@ public: Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { if (minBytes == 0) { - return size_t(0); + return constPromise(); } else KJ_IF_MAYBE(s, state) { return s->tryRead(buffer, minBytes, maxBytes); } else { @@ -249,7 +260,7 @@ public: Promise pumpTo(AsyncOutputStream& output, uint64_t amount) override { if (amount == 0) { - return uint64_t(0); + return constPromise(); } else KJ_IF_MAYBE(s, state) { return s->pumpTo(output, amount); } else { @@ -337,7 +348,7 @@ public: Maybe> tryPumpFrom( AsyncInputStream& input, uint64_t amount) override { if (amount == 0) { - return Promise(uint64_t(0)); + return constPromise(); } else KJ_IF_MAYBE(s, state) { return s->tryPumpFrom(input, amount); } else { @@ -1405,7 +1416,7 @@ private: if (input.tryGetLength().orDefault(1) == 0) { // Yeah a pump would pump nothing. - return Promise(uint64_t(0)); + return constPromise(); } else { // While we *could* just return nullptr here, it would probably then fall back to a normal // buffered pump, which would allocate a big old buffer just to find there's nothing to @@ -1438,7 +1449,7 @@ private: public: Promise tryRead(void* readBufferPtr, size_t minBytes, size_t maxBytes) override { - return size_t(0); + return constPromise(); } Promise tryReadWithFds(void* readBuffer, size_t minBytes, size_t maxBytes, AutoCloseFd* fdBuffer, size_t maxFds) override { @@ -1450,7 +1461,7 @@ private: return ReadResult { 0, 0 }; } Promise pumpTo(AsyncOutputStream& output, uint64_t amount) override { - return uint64_t(0); + return constPromise(); } void abortRead() override { // ignore @@ -1615,7 +1626,7 @@ public: } Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { - if (limit == 0) return size_t(0); + if (limit == 0) return constPromise(); return inner->tryRead(buffer, kj::min(minBytes, limit), kj::min(maxBytes, limit)) .then([this,minBytes](size_t actual) { decreaseLimit(actual, minBytes); @@ -1624,7 +1635,7 @@ public: } Promise pumpTo(AsyncOutputStream& output, uint64_t amount) override { - if (limit == 0) return uint64_t(0); + if (limit == 0) return constPromise(); auto requested = kj::min(amount, limit); return inner->pumpTo(output, requested) .then([this,requested](uint64_t actual) { @@ -1680,51 +1691,131 @@ CapabilityPipe newCapabilityPipe() { namespace { class AsyncTee final: public Refcounted { + class Buffer { + public: + Buffer() = default; + + uint64_t consume(ArrayPtr& readBuffer, size_t& minBytes); + // Consume as many bytes as possible, copying them into `readBuffer`. Return the number of bytes + // consumed. + // + // `readBuffer` and `minBytes` are both assigned appropriate new values, such that after any + // call to `consume()`, `readBuffer` will point to the remaining slice of unwritten space, and + // `minBytes` will have been decremented (clamped to zero) by the amount of bytes read. That is, + // the read can be considered fulfilled if `minBytes` is zero after a call to `consume()`. + + Array> asArray(uint64_t minBytes, uint64_t& amount); + // Consume the first `minBytes` of the buffer (or the entire buffer) and return it in an Array + // of ArrayPtrs, suitable for passing to AsyncOutputStream.write(). The outer Array + // owns the underlying data. + + void produce(Array bytes); + // Enqueue a byte array to the end of the buffer list. + + bool empty() const; + uint64_t size() const; + + Buffer clone() const { + size_t size = 0; + for (const auto& buf: bufferList) { + size += buf.size(); + } + auto builder = heapArrayBuilder(size); + for (const auto& buf: bufferList) { + builder.addAll(buf); + } + std::deque> deque; + deque.emplace_back(builder.finish()); + return Buffer{mv(deque)}; + } + + private: + Buffer(std::deque>&& buffer) : bufferList(mv(buffer)) {} + + std::deque> bufferList; + }; + + class Sink; + public: - using BranchId = uint; + class Branch final: public AsyncInputStream { + public: + Branch(Own teeArg): tee(mv(teeArg)) { + tee->branches.add(*this); + } - explicit AsyncTee(Own inner, uint64_t bufferSizeLimit) - : inner(mv(inner)), bufferSizeLimit(bufferSizeLimit), length(this->inner->tryGetLength()) {} - ~AsyncTee() noexcept(false) { - bool hasBranches = false; - for (auto& branch: branches) { - hasBranches = hasBranches || branch != nullptr; + Branch(Own teeArg, Branch& cloneFrom) + : tee(mv(teeArg)), buffer(cloneFrom.buffer.clone()) { + tee->branches.add(*this); } - KJ_ASSERT(!hasBranches, "destroying AsyncTee with branch still alive") { - // Don't std::terminate(). - break; + + ~Branch() noexcept(false) { + KJ_ASSERT(link.isLinked()) { + // Don't std::terminate(). + return; + } + tee->branches.remove(*this); + + KJ_REQUIRE(sink == nullptr, + "destroying tee branch with operation still in-progress; probably going to segfault") { + // Don't std::terminate(). + break; + } } - } - void addBranch(BranchId branch) { - KJ_REQUIRE(branches[branch] == nullptr, "branch already exists"); - branches[branch] = Branch(); - } + Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + return tee->tryRead(*this, buffer, minBytes, maxBytes); + } - void removeBranch(BranchId branch) { - auto& state = KJ_REQUIRE_NONNULL(branches[branch], "branch was already destroyed"); - KJ_REQUIRE(state.sink == nullptr, - "destroying tee branch with operation still in-progress; probably going to segfault") { + Promise pumpTo(AsyncOutputStream& output, uint64_t amount) override { + return tee->pumpTo(*this, output, amount); + } + + Maybe tryGetLength() override { + return tee->tryGetLength(*this); + } + + Maybe> tryTee(uint64_t limit) override { + if (tee->getBufferSizeLimit() != limit) { + // Cannot optimize this path as the limit has changed, so we need a new AsyncTee to manage + // the limit. + return nullptr; + } + + return kj::heap(addRef(*tee), *this); + } + + private: + Own tee; + ListLink link; + + Buffer buffer; + Maybe sink; + + friend class AsyncTee; + }; + + explicit AsyncTee(Own inner, uint64_t bufferSizeLimit) + : inner(mv(inner)), bufferSizeLimit(bufferSizeLimit), length(this->inner->tryGetLength()) {} + ~AsyncTee() noexcept(false) { + KJ_ASSERT(branches.size() == 0, "destroying AsyncTee with branch still alive") { // Don't std::terminate(). break; } - - branches[branch] = nullptr; } - Promise tryRead(BranchId branch, void* buffer, size_t minBytes, size_t maxBytes) { - auto& state = KJ_ASSERT_NONNULL(branches[branch]); - KJ_ASSERT(state.sink == nullptr); + Promise tryRead(Branch& branch, void* buffer, size_t minBytes, size_t maxBytes) { + KJ_ASSERT(branch.sink == nullptr); // If there is excess data in the buffer for us, slurp that up. auto readBuffer = arrayPtr(reinterpret_cast(buffer), maxBytes); - auto readSoFar = state.buffer.consume(readBuffer, minBytes); + auto readSoFar = branch.buffer.consume(readBuffer, minBytes); if (minBytes == 0) { return readSoFar; } - if (state.buffer.empty()) { + if (branch.buffer.empty()) { KJ_IF_MAYBE(reason, stoppage) { // Prefer a short read to an exception. The exception prevents the pull loop from adding any // data to the buffer, so `readSoFar` will be zero the next time someone calls `tryRead()`, @@ -1736,37 +1827,39 @@ public: } } - auto promise = newAdaptedPromise(state.sink, readBuffer, minBytes, readSoFar); + auto promise = newAdaptedPromise( + branch.sink, readBuffer, minBytes, readSoFar); ensurePulling(); return mv(promise); } - Maybe tryGetLength(BranchId branch) { - auto& state = KJ_ASSERT_NONNULL(branches[branch]); - - return length.map([&state](uint64_t amount) { - return amount + state.buffer.size(); + Maybe tryGetLength(Branch& branch) { + return length.map([&branch](uint64_t amount) { + return amount + branch.buffer.size(); }); } - Promise pumpTo(BranchId branch, AsyncOutputStream& output, uint64_t amount) { - auto& state = KJ_ASSERT_NONNULL(branches[branch]); - KJ_ASSERT(state.sink == nullptr); + uint64_t getBufferSizeLimit() const { + return bufferSizeLimit; + } + + Promise pumpTo(Branch& branch, AsyncOutputStream& output, uint64_t amount) { + KJ_ASSERT(branch.sink == nullptr); if (amount == 0) { return amount; } - if (state.buffer.empty()) { + if (branch.buffer.empty()) { KJ_IF_MAYBE(reason, stoppage) { if (reason->is()) { - return uint64_t(0); + return constPromise(); } return cp(reason->get()); } } - auto promise = newAdaptedPromise(state.sink, output, amount); + auto promise = newAdaptedPromise(branch.sink, output, amount); ensurePulling(); return mv(promise); } @@ -1775,32 +1868,6 @@ private: struct Eof {}; using Stoppage = OneOf; - class Buffer { - public: - uint64_t consume(ArrayPtr& readBuffer, size_t& minBytes); - // Consume as many bytes as possible, copying them into `readBuffer`. Return the number of bytes - // consumed. - // - // `readBuffer` and `minBytes` are both assigned appropriate new values, such that after any - // call to `consume()`, `readBuffer` will point to the remaining slice of unwritten space, and - // `minBytes` will have been decremented (clamped to zero) by the amount of bytes read. That is, - // the read can be considered fulfilled if `minBytes` is zero after a call to `consume()`. - - Array> asArray(uint64_t minBytes, uint64_t& amount); - // Consume the first `minBytes` of the buffer (or the entire buffer) and return it in an Array - // of ArrayPtrs, suitable for passing to AsyncOutputStream.write(). The outer Array - // owns the underlying data. - - void produce(Array bytes); - // Enqueue a byte array to the end of the buffer list. - - bool empty() const; - uint64_t size() const; - - private: - std::deque> bufferList; - }; - class Sink { public: struct Need { @@ -1843,7 +1910,7 @@ private: KJ_ASSERT(sinkLink == nullptr, "sink initiated with sink already in flight"); sinkLink = *this; } - KJ_DISALLOW_COPY(SinkBase); + KJ_DISALLOW_COPY_AND_MOVE(SinkBase); ~SinkBase() noexcept(false) { detach(); } void reject(Exception&& exception) override { @@ -1875,11 +1942,6 @@ private: Maybe& sinkLink; }; - struct Branch { - Buffer buffer; - Maybe sink; - }; - class ReadSink final: public SinkBase { public: explicit ReadSink(PromiseFulfiller& fulfiller, Maybe& registration, @@ -1999,18 +2061,14 @@ private: uint64_t minBytes = 0; uint64_t maxBytes = kj::maxValue; - uint nBranches = 0; uint nSinks = 0; - for (auto& state: branches) { - KJ_IF_MAYBE(s, state) { - ++nBranches; - KJ_IF_MAYBE(sink, s->sink) { - ++nSinks; - auto need = sink->need(); - minBytes = kj::max(minBytes, need.minBytes); - maxBytes = kj::min(maxBytes, need.maxBytes); - } + for (auto& branch: branches) { + KJ_IF_MAYBE(sink, branch.sink) { + ++nSinks; + auto need = sink->need(); + minBytes = kj::max(minBytes, need.minBytes); + maxBytes = kj::min(maxBytes, need.maxBytes); } } @@ -2041,11 +2099,9 @@ private: return pullLoop().eagerlyEvaluate([this](Exception&& exception) { // Exception from our loop, not from inner tryRead(). Something is broken; tell everybody! pulling = false; - for (auto& state: branches) { - KJ_IF_MAYBE(s, state) { - KJ_IF_MAYBE(sink, s->sink) { - sink->reject(KJ_EXCEPTION(FAILED, "Exception in tee loop", exception)); - } + for (auto& branch: branches) { + KJ_IF_MAYBE(sink, branch.sink) { + sink->reject(KJ_EXCEPTION(FAILED, "Exception in tee loop", exception)); } } }); @@ -2056,7 +2112,7 @@ private: Own inner; const uint64_t bufferSizeLimit = kj::maxValue; Maybe length; - Maybe branches[2]; + List branches; Maybe stoppage; Promise pullPromise = READY_NOW; bool pulling = false; @@ -2070,11 +2126,9 @@ private: Vector> promises; - for (auto& state: branches) { - KJ_IF_MAYBE(s, state) { - KJ_IF_MAYBE(sink, s->sink) { - promises.add(sink->fill(s->buffer, stoppage)); - } + for (auto& branch: branches) { + KJ_IF_MAYBE(sink, branch.sink) { + promises.add(sink->fill(branch.buffer, stoppage)); } } @@ -2108,13 +2162,11 @@ private: n.maxBytes = kj::min(n.maxBytes, MAX_BLOCK_SIZE); n.maxBytes = kj::min(n.maxBytes, bufferSizeLimit); n.maxBytes = kj::max(n.minBytes, n.maxBytes); - for (auto& state: branches) { - KJ_IF_MAYBE(s, state) { - // TODO(perf): buffer.size() is O(n) where n = # of individual heap-allocated byte arrays. - if (s->buffer.size() + n.maxBytes > bufferSizeLimit) { - stoppage = Stoppage(KJ_EXCEPTION(FAILED, "tee buffer size limit exceeded")); - return pullLoop(); - } + for (auto& branch: branches) { + // TODO(perf): buffer.size() is O(n) where n = # of individual heap-allocated byte arrays. + if (branch.buffer.size() + n.maxBytes > bufferSizeLimit) { + stoppage = Stoppage(KJ_EXCEPTION(FAILED, "tee buffer size limit exceeded")); + return pullLoop(); } } auto heapBuffer = heapArray(n.maxBytes); @@ -2142,19 +2194,17 @@ private: KJ_ASSERT(stoppage == nullptr); Maybe> bufferPtr = nullptr; - for (auto& state: branches) { - KJ_IF_MAYBE(s, state) { - // Prefer to move the buffer into the receiving branch's deque, rather than memcpy. - // - // TODO(perf): For the 2-branch case, this is fine, since the majority of the time - // only one buffer will be in use. If we generalize to the n-branch case, this would - // become memcpy-heavy. - KJ_IF_MAYBE(ptr, bufferPtr) { - s->buffer.produce(heapArray(*ptr)); - } else { - bufferPtr = ArrayPtr(heapBuffer); - s->buffer.produce(mv(heapBuffer)); - } + for (auto& branch: branches) { + // Prefer to move the buffer into the receiving branch's deque, rather than memcpy. + // + // TODO(perf): For the 2-branch case, this is fine, since the majority of the time + // only one buffer will be in use. If we generalize to the n-branch case, this would + // become memcpy-heavy. + KJ_IF_MAYBE(ptr, bufferPtr) { + branch.buffer.produce(heapArray(*ptr)); + } else { + bufferPtr = ArrayPtr(heapBuffer); + branch.buffer.produce(mv(heapBuffer)); } } @@ -2254,41 +2304,16 @@ uint64_t AsyncTee::Buffer::size() const { return result; } -class TeeBranch final: public AsyncInputStream { -public: - TeeBranch(Own tee, uint8_t branch): tee(mv(tee)), branch(branch) { - this->tee->addBranch(branch); - } - ~TeeBranch() noexcept(false) { - unwind.catchExceptionsIfUnwinding([&]() { - tee->removeBranch(branch); - }); - } - - Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { - return tee->tryRead(branch, buffer, minBytes, maxBytes); - } - - Promise pumpTo(AsyncOutputStream& output, uint64_t amount) override { - return tee->pumpTo(branch, output, amount); - } - - Maybe tryGetLength() override { - return tee->tryGetLength(branch); - } - -private: - Own tee; - const uint8_t branch; - UnwindDetector unwind; -}; - } // namespace Tee newTee(Own input, uint64_t limit) { + KJ_IF_MAYBE(t, input->tryTee(limit)) { + return { { mv(input), mv(*t) }}; + } + auto impl = refcounted(mv(input), limit); - Own branch1 = heap(addRef(*impl), 0); - Own branch2 = heap(mv(impl), 1); + Own branch1 = heap(addRef(*impl)); + Own branch2 = heap(mv(impl)); return { { mv(branch1), mv(branch2) } }; } @@ -2549,7 +2574,7 @@ kj::Promise>> AsyncCapabilityStream::tryReceive } KJ_REQUIRE(actual.capCount == 1, - "expected to receive a capability (e.g. file descirptor via SCM_RIGHTS), but didn't") { + "expected to receive a capability (e.g. file descriptor via SCM_RIGHTS), but didn't") { return nullptr; } @@ -2724,9 +2749,9 @@ Promise> CapabilityStreamNetworkAddress::connect() { } auto result = kj::mv(pipe.ends[0]); return inner.sendStream(kj::mv(pipe.ends[1])) - .then(kj::mvCapture(result, [](Own&& result) { - return kj::mv(result); - })); + .then([result=kj::mv(result)]() mutable { + return Own(kj::mv(result)); + }); } Promise CapabilityStreamNetworkAddress::connectAuthenticated() { return connect().then([](Own&& stream) { @@ -2744,160 +2769,197 @@ String CapabilityStreamNetworkAddress::toString() { return kj::str(""); } -// ======================================================================================= - -namespace _ { // private - -#if !_WIN32 +Promise FileInputStream::tryRead(void* buffer, size_t minBytes, size_t maxBytes) { + // Note that our contract with `minBytes` is that we should only return fewer than `minBytes` on + // EOF. A file read will only produce fewer than the requested number of bytes if EOF was reached. + // `minBytes` cannot be greater than `maxBytes`. So, this read satisfies the `minBytes` + // requirement. + size_t result = file.read(offset, arrayPtr(reinterpret_cast(buffer), maxBytes)); + offset += result; + return result; +} -kj::ArrayPtr safeUnixPath(const struct sockaddr_un* addr, uint addrlen) { - KJ_REQUIRE(addr->sun_family == AF_UNIX, "not a unix address"); - KJ_REQUIRE(addrlen >= offsetof(sockaddr_un, sun_path), "invalid unix address"); +Maybe FileInputStream::tryGetLength() { + uint64_t size = file.stat().size; + return offset < size ? size - offset : 0; +} - size_t maxPathlen = addrlen - offsetof(sockaddr_un, sun_path); +Promise FileOutputStream::write(const void* buffer, size_t size) { + file.write(offset, arrayPtr(reinterpret_cast(buffer), size)); + offset += size; + return kj::READY_NOW; +} - size_t pathlen; - if (maxPathlen > 0 && addr->sun_path[0] == '\0') { - // Linux "abstract" unix address - pathlen = strnlen(addr->sun_path + 1, maxPathlen - 1) + 1; - } else { - pathlen = strnlen(addr->sun_path, maxPathlen); +Promise FileOutputStream::write(ArrayPtr> pieces) { + // TODO(perf): Extend kj::File with an array-of-arrays write? + for (auto piece: pieces) { + file.write(offset, piece); + offset += piece.size(); } - return kj::arrayPtr(addr->sun_path, pathlen); + return kj::READY_NOW; } -#endif // !_WIN32 +Promise FileOutputStream::whenWriteDisconnected() { + return kj::NEVER_DONE; +} -CidrRange::CidrRange(StringPtr pattern) { - size_t slashPos = KJ_REQUIRE_NONNULL(pattern.findFirst('/'), "invalid CIDR", pattern); +// ======================================================================================= - bitCount = pattern.slice(slashPos + 1).parseAs(); +namespace { - KJ_STACK_ARRAY(char, addr, slashPos + 1, 128, 128); - memcpy(addr.begin(), pattern.begin(), slashPos); - addr[slashPos] = '\0'; +class AggregateConnectionReceiver final: public ConnectionReceiver { +public: + AggregateConnectionReceiver(Array> receiversParam) + : receivers(kj::mv(receiversParam)), + acceptTasks(kj::heapArray>>(receivers.size())) {} - if (pattern.findFirst(':') == nullptr) { - family = AF_INET; - KJ_REQUIRE(bitCount <= 32, "invalid CIDR", pattern); - } else { - family = AF_INET6; - KJ_REQUIRE(bitCount <= 128, "invalid CIDR", pattern); + Promise> accept() override { + return acceptAuthenticated().then([](AuthenticatedStream&& authenticated) { + return kj::mv(authenticated.stream); + }); } - KJ_ASSERT(inet_pton(family, addr.begin(), bits) > 0, "invalid CIDR", pattern); - zeroIrrelevantBits(); -} - -CidrRange::CidrRange(int family, ArrayPtr bits, uint bitCount) - : family(family), bitCount(bitCount) { - if (family == AF_INET) { - KJ_REQUIRE(bitCount <= 32); - } else { - KJ_REQUIRE(bitCount <= 128); + Promise acceptAuthenticated() override { + // Whenever our accept() is called, we want it to resolve to the first connection accepted by + // any of our child receivers. Naively, it may seem like we should call accept() on them all + // and exclusiveJoin() the results. Unfortunately, this might not work in a certain race + // condition: if two or more of our children receive connections simultaneously, both child + // accept() calls may return, but we'll only end up taking one and dropping the other. + // + // To avoid this problem, we must instead initiate `accept()` calls on all children, and even + // after one of them returns a result, we must allow the others to keep running. If we end up + // accepting any sockets from children when there is no outstanding accept() on the aggregate, + // we must put that socket into a backlog. We only restart accept() calls on children if the + // backlog is empty, and hence the maximum length of the backlog is the number of children + // minus 1. + + if (backlog.empty()) { + auto result = kj::newAdaptedPromise(*this); + ensureAllAccepting(); + return result; + } else { + auto result = kj::mv(backlog.front()); + backlog.pop_front(); + return result; + } } - KJ_REQUIRE(bits.size() * 8 >= bitCount); - size_t byteCount = (bitCount + 7) / 8; - memcpy(this->bits, bits.begin(), byteCount); - memset(this->bits + byteCount, 0, sizeof(this->bits) - byteCount); - - zeroIrrelevantBits(); -} -CidrRange CidrRange::inet4(ArrayPtr bits, uint bitCount) { - return CidrRange(AF_INET, bits, bitCount); -} -CidrRange CidrRange::inet6( - ArrayPtr prefix, ArrayPtr suffix, - uint bitCount) { - KJ_REQUIRE(prefix.size() + suffix.size() <= 8); - - byte bits[16] = { 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, }; - - for (size_t i: kj::indices(prefix)) { - bits[i * 2] = prefix[i] >> 8; - bits[i * 2 + 1] = prefix[i] & 0xff; + uint getPort() override { + return receivers[0]->getPort(); } - - byte* suffixBits = bits + (16 - suffix.size() * 2); - for (size_t i: kj::indices(suffix)) { - suffixBits[i * 2] = suffix[i] >> 8; - suffixBits[i * 2 + 1] = suffix[i] & 0xff; + void getsockopt(int level, int option, void* value, uint* length) override { + return receivers[0]->getsockopt(level, option, value, length); + } + void setsockopt(int level, int option, const void* value, uint length) override { + // Apply to all. + for (auto& r: receivers) { + r->setsockopt(level, option, value, length); + } + } + void getsockname(struct sockaddr* addr, uint* length) override { + return receivers[0]->getsockname(addr, length); } - return CidrRange(AF_INET6, bits, bitCount); -} - -bool CidrRange::matches(const struct sockaddr* addr) const { - const byte* otherBits; - - switch (family) { - case AF_INET: - if (addr->sa_family == AF_INET6) { - otherBits = reinterpret_cast(addr)->sin6_addr.s6_addr; - static constexpr byte V6MAPPED[12] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xff }; - if (memcmp(otherBits, V6MAPPED, sizeof(V6MAPPED)) == 0) { - // We're an ipv4 range and the address is ipv6, but it's a "v6 mapped" address, meaning - // it's equivalent to an ipv4 address. Try to match against the ipv4 part. - otherBits = otherBits + sizeof(V6MAPPED); - } else { - return false; - } - } else if (addr->sa_family == AF_INET) { - otherBits = reinterpret_cast( - &reinterpret_cast(addr)->sin_addr.s_addr); - } else { - return false; +private: + Array> receivers; + Array>> acceptTasks; + + struct Waiter { + Waiter(PromiseFulfiller& fulfiller, + AggregateConnectionReceiver& parent) + : fulfiller(fulfiller), parent(parent) { + parent.waiters.add(*this); + } + ~Waiter() noexcept(false) { + if (link.isLinked()) { + parent.waiters.remove(*this); } + } - break; + PromiseFulfiller& fulfiller; + AggregateConnectionReceiver& parent; + ListLink link; + }; - case AF_INET6: - if (addr->sa_family != AF_INET6) return false; + List waiters; + std::deque> backlog; + // At least one of `waiters` or `backlog` is always empty. - otherBits = reinterpret_cast(addr)->sin6_addr.s6_addr; - break; + void ensureAllAccepting() { + for (auto i: kj::indices(receivers)) { + if (acceptTasks[i] == nullptr) { + acceptTasks[i] = acceptLoop(i); + } + } + } - default: - KJ_UNREACHABLE; + Promise acceptLoop(size_t index) { + return kj::evalNow([&]() { return receivers[index]->acceptAuthenticated(); }) + .then([this](AuthenticatedStream&& as) { + if (waiters.empty()) { + backlog.push_back(kj::mv(as)); + } else { + auto& waiter = waiters.front(); + waiter.fulfiller.fulfill(kj::mv(as)); + waiters.remove(waiter); + } + }, [this](Exception&& e) { + if (waiters.empty()) { + backlog.push_back(kj::mv(e)); + } else { + auto& waiter = waiters.front(); + waiter.fulfiller.reject(kj::mv(e)); + waiters.remove(waiter); + } + }).then([this, index]() -> Promise { + if (waiters.empty()) { + // Don't keep accepting if there's no one waiting. + // HACK: We can't cancel ourselves, so detach the task so we can null out the slot. + // We know that the promise we're detaching here is exactly the promise that's currently + // executing and has no further `.then()`s on it, so no further callbacks will run in + // detached state... we're just using `detach()` as a tricky way to have the event loop + // dispose of this promise later after we've returned. + // TODO(cleanup): This pattern has come up several times, we need a better way to handle + // it. + KJ_ASSERT_NONNULL(acceptTasks[index]).detach([](auto&&) {}); + acceptTasks[index] = nullptr; + return READY_NOW; + } else { + return acceptLoop(index); + } + }); } +}; - if (memcmp(bits, otherBits, bitCount / 8) != 0) return false; +} // namespace - return bitCount == 128 || - bits[bitCount / 8] == (otherBits[bitCount / 8] & (0xff00 >> (bitCount % 8))); +Own newAggregateConnectionReceiver(Array> receivers) { + return kj::heap(kj::mv(receivers)); } -bool CidrRange::matchesFamily(int family) const { - switch (family) { - case AF_INET: - return this->family == AF_INET; - case AF_INET6: - // Even if we're a v4 CIDR, we can match v6 addresses in the v4-mapped range. - return true; - default: - return false; - } -} +// ----------------------------------------------------------------------------- -String CidrRange::toString() const { - char result[128]; - KJ_ASSERT(inet_ntop(family, (void*)bits, result, sizeof(result)) == result); - return kj::str(result, '/', bitCount); -} +namespace _ { // private + +#if !_WIN32 + +kj::ArrayPtr safeUnixPath(const struct sockaddr_un* addr, uint addrlen) { + KJ_REQUIRE(addr->sun_family == AF_UNIX, "not a unix address"); + KJ_REQUIRE(addrlen >= offsetof(sockaddr_un, sun_path), "invalid unix address"); -void CidrRange::zeroIrrelevantBits() { - // Mask out insignificant bits of partial byte. - if (bitCount < 128) { - bits[bitCount / 8] &= 0xff00 >> (bitCount % 8); + size_t maxPathlen = addrlen - offsetof(sockaddr_un, sun_path); - // Zero the remaining bytes. - size_t n = bitCount / 8 + 1; - memset(bits + n, 0, sizeof(bits) - n); + size_t pathlen; + if (maxPathlen > 0 && addr->sun_path[0] == '\0') { + // Linux "abstract" unix address + pathlen = strnlen(addr->sun_path + 1, maxPathlen - 1) + 1; + } else { + pathlen = strnlen(addr->sun_path, maxPathlen); } + return kj::arrayPtr(addr->sun_path, pathlen); } -// ----------------------------------------------------------------------------- +#endif // !_WIN32 ArrayPtr localCidrs() { static const CidrRange result[] = { @@ -2962,6 +3024,13 @@ ArrayPtr exampleAddresses() { return kj::arrayPtr(result, kj::size(result)); } +bool matchesAny(ArrayPtr cidrs, const struct sockaddr* addr) { + for (auto& cidr: cidrs) { + if (cidr.matches(addr)) return true; + } + return false; +} + NetworkFilter::NetworkFilter() : allowUnix(true), allowAbstractUnix(true) { allowCidrs.add(CidrRange::inet4({0,0,0,0}, 0)); @@ -2976,17 +3045,14 @@ NetworkFilter::NetworkFilter(ArrayPtr allow, ArrayPtrsa_family == AF_INET || addr->sa_family == AF_INET6) && + !matchesAny(privateCidrs(), addr) && !matchesAny(localCidrs(), addr)) { + allowed = true; + // Don't adjust allowSpecificity as this match has an effective specificity of zero. + } + } + + if (allowNetwork) { + if ((addr->sa_family == AF_INET || addr->sa_family == AF_INET6) && + !matchesAny(localCidrs(), addr)) { + allowed = true; + // Don't adjust allowSpecificity as this match has an effective specificity of zero. + } + } + for (auto& cidr: allowCidrs) { if (cidr.matches(addr)) { allowSpecificity = kj::max(allowSpecificity, cidr.getSpecificity()); @@ -3064,6 +3147,10 @@ bool NetworkFilter::shouldAllowParse(const struct sockaddr* addr, uint addrlen) } } else { #endif + if ((addr->sa_family == AF_INET || addr->sa_family == AF_INET6) && + (allowPublic || allowNetwork)) { + matched = true; + } for (auto& cidr: allowCidrs) { if (cidr.matchesFamily(addr->sa_family)) { matched = true; diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-io.h b/libs/EXTERNAL/capnproto/c++/src/kj/async-io.h index 3be72377a91..deff884bd22 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-io.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-io.h @@ -22,9 +22,9 @@ #pragma once #include "async.h" -#include "function.h" -#include "thread.h" -#include "timer.h" +#include +#include +#include KJ_BEGIN_HEADER @@ -45,10 +45,13 @@ class AsyncOutputStream; class AsyncIoStream; class AncillaryMessage; +class ReadableFile; +class File; + // ======================================================================================= // Streaming I/O -class AsyncInputStream { +class AsyncInputStream: private AsyncObject { // Asynchronous equivalent of InputStream (from io.h). public: @@ -91,9 +94,18 @@ class AsyncInputStream { // The provided callback will be called whenever any are encountered. The messages passed to // the function do not live beyond when function returns. // Only supported on Unix (the default impl throws UNIMPLEMENTED). Most apps will not use this. + + virtual Maybe> tryTee(uint64_t limit = kj::maxValue); + // Primarily intended as an optimization for the `tee` call. Returns an input stream whose state + // is independent from this one but which will return the exact same set of bytes read going + // forward. limit is a total limit on the amount of memory, in bytes, which a tee implementation + // may use to buffer stream data. An implementation must throw an exception if a read operation + // would cause the limit to be exceeded. If tryTee() can see that the new limit is impossible to + // satisfy, it should return nullptr so that the pessimized path is taken in newTee. This is + // likely to arise if tryTee() is called twice with different limits on the same stream. }; -class AsyncOutputStream { +class AsyncOutputStream: private AsyncObject { // Asynchronous equivalent of OutputStream (from io.h). public: @@ -159,6 +171,20 @@ class AsyncIoStream: public AsyncInputStream, public AsyncOutputStream { // isn't wrapping a file descriptor. }; +Promise unoptimizedPumpTo( + AsyncInputStream& input, AsyncOutputStream& output, uint64_t amount, + uint64_t completedSoFar = 0); +// Performs a pump using read() and write(), without calling the stream's pumpTo() nor +// tryPumpFrom() methods. This is intended to be used as a fallback by implementations of pumpTo() +// and tryPumpFrom() when they want to give up on optimization, but can't just call pumpTo() again +// because this would recursively retry the optimization. unoptimizedPumpTo() should only be called +// inside implementations of streams, never by the caller of a stream -- use the pumpTo() method +// instead. +// +// `completedSoFar` is the number of bytes out of `amount` that have already been pumped. This is +// provided for convenience for cases where the caller has already done some pumping before they +// give up. Otherwise, a `.then()` would need to be used to add the bytes to the final result. + class AsyncCapabilityStream: public AsyncIoStream { // An AsyncIoStream that also allows transmitting new stream objects and file descriptors // (capabilities, in the object-capability model sense), in addition to bytes. @@ -405,7 +431,7 @@ class UnknownPeerIdentity: public PeerIdentity { // ======================================================================================= // Accepting connections -class ConnectionReceiver { +class ConnectionReceiver: private AsyncObject { // Represents a server socket listening on a port. public: @@ -430,6 +456,10 @@ class ConnectionReceiver { // Same as the methods of AsyncIoStream. }; +Own newAggregateConnectionReceiver(Array> receivers); +// Create a ConnectionReceiver that listens on several other ConnectionReceivers and returns +// sockets from any of them. + // ======================================================================================= // Datagram I/O @@ -536,7 +566,7 @@ class DatagramPort { // ======================================================================================= // Networks -class NetworkAddress { +class NetworkAddress: private AsyncObject { // Represents a remote address to which the application can connect. public: @@ -972,6 +1002,68 @@ class CapabilityStreamNetworkAddress final: public NetworkAddress { AsyncCapabilityStream& inner; }; +class FileInputStream: public AsyncInputStream { + // InputStream that reads from a disk file -- and enables sendfile() optimization. + // + // Reads are performed synchronously -- no actual attempt is made to use asynchronous file I/O. + // True asynchronous file I/O is complicated and is mostly unnecessary in the presence of + // caching. Only certain niche programs can expect to benefit from it. For the rest, it's better + // to use regular syrchronous disk I/O, so that's what this class does. + // + // The real purpose of this class, aside from general convenience, is to enable sendfile() + // optimization. When you use this class's pumpTo() method, and the destination is a socket, + // the system will detect this and optimize to sendfile(), so that the file data never needs to + // be read into userspace. + // + // NOTE: As of this writing, sendfile() optimization is only implemented on Linux. + +public: + FileInputStream(const ReadableFile& file, uint64_t offset = 0) + : file(file), offset(offset) {} + + const ReadableFile& getUnderlyingFile() { return file; } + uint64_t getOffset() { return offset; } + void seek(uint64_t newOffset) { offset = newOffset; } + + Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes); + Maybe tryGetLength(); + + // (pumpTo() is not actually overridden here, but AsyncStreamFd's tryPumpFrom() will detect when + // the source is a file.) + +private: + const ReadableFile& file; + uint64_t offset; +}; + +class FileOutputStream: public AsyncOutputStream { + // OutputStream that writes to a disk file. + // + // As with FileInputStream, calls are not actually async. Async would be even less useful here + // because writes should usually land in cache anyway. + // + // sendfile() optimization does not apply when writing to a file, but on Linux, splice() can + // be used to achieve a similar effect. + // + // NOTE: As of this writing, splice() optimization is not implemented. + +public: + FileOutputStream(const File& file, uint64_t offset = 0) + : file(file), offset(offset) {} + + const File& getUnderlyingFile() { return file; } + uint64_t getOffset() { return offset; } + void seek(uint64_t newOffset) { offset = newOffset; } + + Promise write(const void* buffer, size_t size); + Promise write(ArrayPtr> pieces); + Promise whenWriteDisconnected(); + +private: + const File& file; + uint64_t offset; +}; + // ======================================================================================= // inline implementation details @@ -996,6 +1088,57 @@ inline ArrayPtr AncillaryMessage::asArray() const { return arrayPtr(reinterpret_cast(data.begin()), data.size() / sizeof(T)); } +class SecureNetworkWrapper { + // Abstract interface for a class which implements a "secure" network as a wrapper around an + // insecure one. "secure" means: + // * Connections to a server will only succeed if it can be verified that the requested hostname + // actually belongs to the responding server. + // * No man-in-the-middle attacker can potentially see the bytes sent and received. + // + // The typical implementation uses TLS. The object in this case could be configured to use cerain + // keys, certificates, etc. See kj/compat/tls.h for such an implementation. + // + // However, an implementation could use some other form of encryption, or might not need to use + // encryption at all. For example, imagine a kj::Network that exists only on a single machine, + // providing communications between various processes using unix sockets. Perhaps the "hostnames" + // are actually PIDs in this case. An implementation of such a network could verify the other + // side's identity using an `SCM_CREDENTIALS` auxiliary message, which cannot be forged. Once + // verified, there is no need to encrypt since unix sockets cannot be intercepted. + +public: + virtual kj::Promise> wrapServer(kj::Own stream) = 0; + // Act as the server side of a connection. The given stream is already connected to a client, but + // no authentication has occurred. The returned stream represents the secure transport once + // established. + + virtual kj::Promise> wrapClient( + kj::Own stream, kj::StringPtr expectedServerHostname) = 0; + // Act as the client side of a connection. The given stream is already connecetd to a server, but + // no authentication has occurred. This method will verify that the server actually is the given + // hostname, then return the stream representing a secure transport to that server. + + virtual kj::Promise wrapServer(kj::AuthenticatedStream stream) = 0; + virtual kj::Promise wrapClient( + kj::AuthenticatedStream stream, kj::StringPtr expectedServerHostname) = 0; + // Same as above, but implementing kj::AuthenticatedStream, which provides PeerIdentity objects + // with more details about the peer. The SecureNetworkWrapper will provide its own implementation + // of PeerIdentity with the specific details it is able to authenticate. + + virtual kj::Own wrapPort(kj::Own port) = 0; + // Wrap a connection listener. This is equivalent to calling wrapServer() on every connection + // received. + + virtual kj::Own wrapAddress( + kj::Own address, kj::StringPtr expectedServerHostname) = 0; + // Wrap a NetworkAddress. This is equivalent to calling `wrapClient()` on every connection + // formed by calling `connect()` on the address. + + virtual kj::Own wrapNetwork(kj::Network& network) = 0; + // Wrap a whole `kj::Network`. This automatically wraps everything constructed using the network. + // The network will only accept address strings that can be authenticated, and will automatically + // authenticate servers against those addresses when connecting to them. +}; + } // namespace kj KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-prelude.h b/libs/EXTERNAL/capnproto/c++/src/kj/async-prelude.h index c3fd4b19455..6289bf3fa05 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-prelude.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-prelude.h @@ -24,8 +24,28 @@ #pragma once -#include "exception.h" -#include "tuple.h" +#include +#include +#include + +// Detect whether or not we should enable kj::Promise coroutine integration. +// +// TODO(someday): Support coroutines with -fno-exceptions. +#if !KJ_NO_EXCEPTIONS +#ifdef __has_include +#if (__cpp_impl_coroutine >= 201902L) && __has_include() +// C++20 Coroutines detected. +#include +#define KJ_HAS_COROUTINE 1 +#define KJ_COROUTINE_STD_NAMESPACE std +#elif (__cpp_coroutines >= 201703L) && __has_include() +// Coroutines TS detected. +#include +#define KJ_HAS_COROUTINE 1 +#define KJ_COROUTINE_STD_NAMESPACE std::experimental +#endif +#endif +#endif KJ_BEGIN_HEADER @@ -37,9 +57,9 @@ class Promise; class WaitScope; class TaskSet; -template -Promise> joinPromises(Array>&& promises); -Promise joinPromises(Array>&& promises); +Promise joinPromises(Array>&& promises, SourceLocation location = {}); +Promise joinPromisesFailFast(Array>&& promises, SourceLocation location = {}); +// Out-of-line specialization of template function defined in async.h. namespace _ { // private @@ -195,16 +215,20 @@ class Event; class XThreadEvent; class XThreadPaf; +class PromiseDisposer; +using OwnPromiseNode = Own; +// PromiseNode uses a static disposer. + class PromiseBase { public: kj::String trace(); // Dump debug info about this promise. private: - Own node; + OwnPromiseNode node; PromiseBase() = default; - PromiseBase(Own&& node): node(kj::mv(node)) {} + PromiseBase(OwnPromiseNode&& node): node(kj::mv(node)) {} template friend class kj::Promise; @@ -212,18 +236,25 @@ class PromiseBase { }; void detach(kj::Promise&& promise); -void waitImpl(Own<_::PromiseNode>&& node, _::ExceptionOrValue& result, WaitScope& waitScope); -bool pollImpl(_::PromiseNode& node, WaitScope& waitScope); +void waitImpl(_::OwnPromiseNode&& node, _::ExceptionOrValue& result, WaitScope& waitScope, + SourceLocation location); +bool pollImpl(_::PromiseNode& node, WaitScope& waitScope, SourceLocation location); Promise yield(); Promise yieldHarder(); -Own neverDone(); +OwnPromiseNode readyNow(); +OwnPromiseNode neverDone(); + +class ReadyNow { +public: + operator Promise() const; +}; class NeverDone { public: template operator Promise() const; - KJ_NORETURN(void wait(WaitScope& waitScope) const); + KJ_NORETURN(void wait(WaitScope& waitScope, SourceLocation location = {}) const); }; } // namespace _ (private) diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-queue-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-queue-test.c++ index c82aadd6465..3d8c8dd8fdf 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-queue-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-queue-test.c++ @@ -82,23 +82,23 @@ KJ_TEST("ProducerConsumerQueue with various amounts of producers and consumers") producerCount, consumerCount, kItemCount); // Make a vector to track our entries. auto bits = Vector(kItemCount); - for (size_t i = 0; i < kItemCount; ++i) { + for (auto i KJ_UNUSED : kj::zeroTo(kItemCount)) { bits.add(false); } // Make enough producers. auto producers = Vector(); - for (size_t i = 0; i < producerCount; ++i) { + for (auto i KJ_UNUSED : kj::zeroTo(producerCount)) { producers.add(test); } // Make enough consumers. auto consumers = Vector(); - for (size_t i = 0; i < consumerCount; ++i) { + for (auto i KJ_UNUSED : kj::zeroTo(consumerCount)) { consumers.add(test); } - for (size_t i = 0; i < kItemCount; ++i) { + for (auto i : kj::zeroTo(kItemCount)) { // Use a producer and a consumer for each entry. auto& producer = producers[i % producerCount]; @@ -117,7 +117,7 @@ KJ_TEST("ProducerConsumerQueue with various amounts of producers and consumers") promises.add(kj::mv(consumer.promise)); } joinPromises(promises.releaseAsArray()).wait(test.io.waitScope); - for (auto i = 0; i < kItemCount; ++i) { + for (auto i : kj::zeroTo(kItemCount)) { KJ_ASSERT(bits[i], i); } } @@ -132,7 +132,7 @@ KJ_TEST("ProducerConsumerQueue with rejectAll()") { // Make enough consumers. auto promises = Vector>(); - for (size_t i = 0; i < consumerCount; ++i) { + for (auto i KJ_UNUSED : kj::zeroTo(consumerCount)) { promises.add(test.queue.pop().ignoreResult()); } @@ -148,4 +148,4 @@ KJ_TEST("ProducerConsumerQueue with rejectAll()") { } } // namespace -} // namespace kj \ No newline at end of file +} // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-queue.h b/libs/EXTERNAL/capnproto/c++/src/kj/async-queue.h index 8e6f84c11ae..7a815faa35e 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-queue.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-queue.h @@ -22,10 +22,10 @@ #pragma once #include "async.h" -#include "common.h" -#include "debug.h" -#include "list.h" -#include "memory.h" +#include +#include +#include +#include #include @@ -39,7 +39,7 @@ class WaiterQueue { // A WaiterQueue creates Nodes that blend newAdaptedPromise and List. WaiterQueue() = default; - KJ_DISALLOW_COPY(WaiterQueue); + KJ_DISALLOW_COPY_AND_MOVE(WaiterQueue); Promise wait() { return newAdaptedPromise(queue); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-test.c++ index fe11665de77..3ac6024cae2 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-test.c++ @@ -25,20 +25,55 @@ #include "mutex.h" #include "thread.h" -#if !KJ_USE_FIBERS +#if !KJ_USE_FIBERS && !_WIN32 #include #endif +#if KJ_USE_FIBERS && __linux__ +#include +#include +#endif + namespace kj { namespace { -#if !_MSC_VER || defined(__clang__) +#if !_MSC_VER // TODO(msvc): GetFunctorStartAddress is not supported on MSVC currently, so skip the test. TEST(Async, GetFunctorStartAddress) { EXPECT_TRUE(nullptr != _::GetFunctorStartAddress<>::apply([](){return 0;})); } #endif +#if KJ_USE_FIBERS +bool isLibcContextHandlingKnownBroken() { + // manylinux2014-x86's libc implements getcontext() to fail with ENOSYS. This is flagrantly + // against spec: getcontext() is not a syscall and is documented as never failing. Our configure + // script cannot detect this problem because it would require actually executing code to see + // what happens, which wouldn't work when cross-compiling. It would have been so much better if + // they had removed the symbol from libc entirely. But as a work-around, we will skip the tests + // when libc is broken. +#if __linux__ + static bool result = ([]() { + ucontext_t context; + if (getcontext(&context) < 0 && errno == ENOSYS) { + KJ_LOG(WARNING, + "This platform's libc is broken. Its getcontext() errors with ENOSYS. Fibers will not " + "work, so we'll skip the tests, but libkj was still built with fiber support, which " + "is broken. Please tell your libc maitnainer to remove the getcontext() function " + "entirely rather than provide an intentionally-broken version -- that way, the " + "configure script will detect that it should build libkj without fiber support."); + return true; + } else { + return false; + } + })(); + return result; +#else + return false; +#endif +} +#endif + TEST(Async, EvalVoid) { EventLoop loop; WaitScope waitScope(loop); @@ -192,9 +227,9 @@ TEST(Async, DeepChain) { // Create a ridiculous chain of promises. for (uint i = 0; i < 1000; i++) { - promise = evalLater(mvCapture(promise, [](Promise promise) { + promise = evalLater([promise=kj::mv(promise)]() mutable { return kj::mv(promise); - })); + }); } loop.run(); @@ -229,9 +264,9 @@ TEST(Async, DeepChain2) { // Create a ridiculous chain of promises. for (uint i = 0; i < 1000; i++) { - promise = evalLater(mvCapture(promise, [](Promise promise) { + promise = evalLater([promise=kj::mv(promise)]() mutable { return kj::mv(promise); - })); + }); } promise.wait(waitScope); @@ -268,9 +303,9 @@ TEST(Async, DeepChain3) { Promise makeChain2(uint i, Promise promise) { if (i > 0) { - return evalLater(mvCapture(promise, [i](Promise&& promise) -> Promise { + return evalLater([i, promise=kj::mv(promise)]() mutable -> Promise { return makeChain2(i - 1, kj::mv(promise)); - })); + }); } else { return kj::mv(promise); } @@ -632,36 +667,134 @@ TEST(Async, ExclusiveJoin) { } TEST(Async, ArrayJoin) { - EventLoop loop; - WaitScope waitScope(loop); + for (auto specificJoinPromisesOverload: { + +[](kj::Array> promises) { return joinPromises(kj::mv(promises)); }, + +[](kj::Array> promises) { return joinPromisesFailFast(kj::mv(promises)); } + }) { + EventLoop loop; + WaitScope waitScope(loop); - auto builder = heapArrayBuilder>(3); - builder.add(123); - builder.add(456); - builder.add(789); + auto builder = heapArrayBuilder>(3); + builder.add(123); + builder.add(456); + builder.add(789); - Promise> promise = joinPromises(builder.finish()); + Promise> promise = specificJoinPromisesOverload(builder.finish()); - auto result = promise.wait(waitScope); + auto result = promise.wait(waitScope); - ASSERT_EQ(3u, result.size()); - EXPECT_EQ(123, result[0]); - EXPECT_EQ(456, result[1]); - EXPECT_EQ(789, result[2]); + ASSERT_EQ(3u, result.size()); + EXPECT_EQ(123, result[0]); + EXPECT_EQ(456, result[1]); + EXPECT_EQ(789, result[2]); + } } TEST(Async, ArrayJoinVoid) { + for (auto specificJoinPromisesOverload: { + +[](kj::Array> promises) { return joinPromises(kj::mv(promises)); }, + +[](kj::Array> promises) { return joinPromisesFailFast(kj::mv(promises)); } + }) { + EventLoop loop; + WaitScope waitScope(loop); + + auto builder = heapArrayBuilder>(3); + builder.add(READY_NOW); + builder.add(READY_NOW); + builder.add(READY_NOW); + + Promise promise = specificJoinPromisesOverload(builder.finish()); + + promise.wait(waitScope); + } +} + +struct Pafs { + kj::Array> promises; + kj::Array>> fulfillers; +}; + +Pafs makeCompletionCountingPafs(uint count, uint& tasksCompleted) { + auto promisesBuilder = heapArrayBuilder>(count); + auto fulfillersBuilder = heapArrayBuilder>>(count); + + for (auto KJ_UNUSED value: zeroTo(count)) { + auto paf = newPromiseAndFulfiller(); + promisesBuilder.add(paf.promise.then([&tasksCompleted]() { + ++tasksCompleted; + })); + fulfillersBuilder.add(kj::mv(paf.fulfiller)); + } + + return { promisesBuilder.finish(), fulfillersBuilder.finish() }; +} + +TEST(Async, ArrayJoinException) { EventLoop loop; WaitScope waitScope(loop); - auto builder = heapArrayBuilder>(3); - builder.add(READY_NOW); - builder.add(READY_NOW); - builder.add(READY_NOW); + uint tasksCompleted = 0; + auto pafs = makeCompletionCountingPafs(5, tasksCompleted); + auto& fulfillers = pafs.fulfillers; + Promise promise = joinPromises(kj::mv(pafs.promises)); - Promise promise = joinPromises(builder.finish()); + { + uint i = 0; + KJ_EXPECT(tasksCompleted == 0); + + // Joined tasks are not completed early. + fulfillers[i++]->fulfill(); + KJ_EXPECT(!promise.poll(waitScope)); + KJ_EXPECT(tasksCompleted == 0); + + fulfillers[i++]->fulfill(); + KJ_EXPECT(!promise.poll(waitScope)); + KJ_EXPECT(tasksCompleted == 0); + + // Rejected tasks do not fail-fast. + fulfillers[i++]->reject(KJ_EXCEPTION(FAILED, "Test exception")); + KJ_EXPECT(!promise.poll(waitScope)); + KJ_EXPECT(tasksCompleted == 0); + + fulfillers[i++]->fulfill(); + KJ_EXPECT(!promise.poll(waitScope)); + KJ_EXPECT(tasksCompleted == 0); + + // The final fulfillment makes the promise ready. + fulfillers[i++]->fulfill(); + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("Test exception", promise.wait(waitScope)); + KJ_EXPECT(tasksCompleted == 4); + } +} - promise.wait(waitScope); +TEST(Async, ArrayJoinFailFastException) { + EventLoop loop; + WaitScope waitScope(loop); + + uint tasksCompleted = 0; + auto pafs = makeCompletionCountingPafs(5, tasksCompleted); + auto& fulfillers = pafs.fulfillers; + Promise promise = joinPromisesFailFast(kj::mv(pafs.promises)); + + { + uint i = 0; + KJ_EXPECT(tasksCompleted == 0); + + // Joined tasks are completed eagerly, not waiting until the join node is awaited. + fulfillers[i++]->fulfill(); + KJ_EXPECT(!promise.poll(waitScope)); + KJ_EXPECT(tasksCompleted == i); + + fulfillers[i++]->fulfill(); + KJ_EXPECT(!promise.poll(waitScope)); + KJ_EXPECT(tasksCompleted == i); + + fulfillers[i++]->reject(KJ_EXCEPTION(FAILED, "Test exception")); + + // The first rejection makes the promise ready. + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("Test exception", promise.wait(waitScope)); + KJ_EXPECT(tasksCompleted == i - 1); + } } TEST(Async, Canceler) { @@ -737,6 +870,10 @@ TEST(Async, TaskSet) { EXPECT_EQ(1u, errorHandler.exceptionCount); } +#if KJ_USE_FIBERS || !_WIN32 +// This test requires either fibers or pthreads in order to limit the stack size. Currently we +// don't have a version that works on Windows without fibers, so skip the test there. + TEST(Async, LargeTaskSetDestruction) { static constexpr size_t stackSize = 200 * 1024; @@ -751,6 +888,8 @@ TEST(Async, LargeTaskSetDestruction) { }; #if KJ_USE_FIBERS + if (isLibcContextHandlingKnownBroken()) return; + EventLoop loop; WaitScope waitScope(loop); @@ -776,6 +915,8 @@ TEST(Async, LargeTaskSetDestruction) { #endif } +#endif // KJ_USE_FIBERS || !_WIN32 + TEST(Async, TaskSet) { EventLoop loop; WaitScope waitScope(loop); @@ -830,6 +971,52 @@ TEST(Async, TaskSetOnEmpty) { promise.wait(waitScope); } +KJ_TEST("TaskSet::clear()") { + EventLoop loop; + WaitScope waitScope(loop); + + class ClearOnError: public TaskSet::ErrorHandler { + public: + TaskSet* tasks; + void taskFailed(kj::Exception&& exception) override { + KJ_EXPECT(exception.getDescription().endsWith("example TaskSet failure")); + tasks->clear(); + } + }; + + ClearOnError errorHandler; + TaskSet tasks(errorHandler); + errorHandler.tasks = &tasks; + + auto doTest = [&](auto&& causeClear) { + KJ_EXPECT(tasks.isEmpty()); + + uint count = 0; + tasks.add(kj::Promise(kj::READY_NOW).attach(kj::defer([&]() { ++count; }))); + tasks.add(kj::Promise(kj::NEVER_DONE).attach(kj::defer([&]() { ++count; }))); + tasks.add(kj::Promise(kj::NEVER_DONE).attach(kj::defer([&]() { ++count; }))); + + auto onEmpty = tasks.onEmpty(); + KJ_EXPECT(!onEmpty.poll(waitScope)); + KJ_EXPECT(count == 1); + KJ_EXPECT(!tasks.isEmpty()); + + causeClear(); + KJ_EXPECT(tasks.isEmpty()); + onEmpty.wait(waitScope); + KJ_EXPECT(count == 3); + }; + + // Try it where we just call clear() directly. + doTest([&]() { tasks.clear(); }); + + // Try causing clear() inside taskFailed(), ensuring that this is permitted. + doTest([&]() { + tasks.add(KJ_EXCEPTION(FAILED, "example TaskSet failure")); + waitScope.poll(); + }); +} + class DestructorDetector { public: DestructorDetector(bool& setTrue): setTrue(setTrue) {} @@ -972,6 +1159,46 @@ TEST(Async, Poll) { paf.promise.wait(waitScope); } +KJ_TEST("Maximum turn count during wait scope poll is enforced") { + EventLoop loop; + WaitScope waitScope(loop); + ErrorHandlerImpl errorHandler; + TaskSet tasks(errorHandler); + + auto evaluated1 = false; + tasks.add(evalLater([&]() { + evaluated1 = true; + })); + + auto evaluated2 = false; + tasks.add(evalLater([&]() { + evaluated2 = true; + })); + + auto evaluated3 = false; + tasks.add(evalLater([&]() { + evaluated3 = true; + })); + + uint count; + + // Check that only events up to a maximum are resolved: + count = waitScope.poll(2); + KJ_ASSERT(count == 2); + KJ_EXPECT(evaluated1); + KJ_EXPECT(evaluated2); + KJ_EXPECT(!evaluated3); + + // Get the last remaining event in the queue: + count = waitScope.poll(1); + KJ_ASSERT(count == 1); + KJ_EXPECT(evaluated3); + + // No more events: + count = waitScope.poll(1); + KJ_ASSERT(count == 0); +} + KJ_TEST("exclusiveJoin both events complete simultaneously") { // Previously, if both branches of an exclusiveJoin() completed simultaneously, then the parent // event could be armed twice. This is an error, but the exact results of this error depend on @@ -991,6 +1218,8 @@ KJ_TEST("exclusiveJoin both events complete simultaneously") { #if KJ_USE_FIBERS KJ_TEST("start a fiber") { + if (isLibcContextHandlingKnownBroken()) return; + EventLoop loop; WaitScope waitScope(loop); @@ -1012,6 +1241,8 @@ KJ_TEST("start a fiber") { } KJ_TEST("fiber promise chaining") { + if (isLibcContextHandlingKnownBroken()) return; + EventLoop loop; WaitScope waitScope(loop); @@ -1035,6 +1266,8 @@ KJ_TEST("fiber promise chaining") { } KJ_TEST("throw from a fiber") { + if (isLibcContextHandlingKnownBroken()) return; + EventLoop loop; WaitScope waitScope(loop); @@ -1058,6 +1291,8 @@ KJ_TEST("throw from a fiber") { // This test fails on MinGW 32-bit builds due to a compiler bug with exceptions + fibers: // https://sourceforge.net/p/mingw-w64/bugs/835/ KJ_TEST("cancel a fiber") { + if (isLibcContextHandlingKnownBroken()) return; + EventLoop loop; WaitScope waitScope(loop); @@ -1091,6 +1326,8 @@ KJ_TEST("cancel a fiber") { #endif KJ_TEST("fiber pool") { + if (isLibcContextHandlingKnownBroken()) return; + EventLoop loop; WaitScope waitScope(loop); FiberPool pool(65536); @@ -1109,7 +1346,12 @@ KJ_TEST("fiber pool") { if (i1_local == nullptr) { i1_local = &i; } else { +#if !KJ_HAS_COMPILER_FEATURE(address_sanitizer) + // Verify that the stack variable is in the exact same spot as before. + // May not work under ASAN as the instrumentation to detect stack-use-after-return can + // change the address. KJ_ASSERT(i1_local == &i); +#endif } return i; }); @@ -1120,7 +1362,9 @@ KJ_TEST("fiber pool") { if (i2_local == nullptr) { i2_local = &i; } else { +#if !KJ_HAS_COMPILER_FEATURE(address_sanitizer) KJ_ASSERT(i2_local == &i); +#endif } return i; }); @@ -1148,8 +1392,8 @@ KJ_TEST("fiber pool") { } }; run(); - KJ_ASSERT_NONNULL(i1_local); - KJ_ASSERT_NONNULL(i2_local); + KJ_ASSERT(i1_local != nullptr); + KJ_ASSERT(i2_local != nullptr); // run the same thing and reuse the fibers run(); } @@ -1157,12 +1401,29 @@ KJ_TEST("fiber pool") { bool onOurStack(char* p) { // If p points less than 64k away from a random stack variable, then it must be on the same // stack, since we never allocate stacks smaller than 64k. +#if KJ_HAS_COMPILER_FEATURE(address_sanitizer) + // The stack-use-after-return detection mechanism breaks our ability to check this, so don't. + return true; +#else char c; ptrdiff_t diff = p - &c; return diff < 65536 && diff > -65536; +#endif +} + +bool notOnOurStack(char* p) { + // Opposite of onOurStack(), except returns true if the check can't be performed. +#if KJ_HAS_COMPILER_FEATURE(address_sanitizer) + // The stack-use-after-return detection mechanism breaks our ability to check this, so don't. + return true; +#else + return !onOurStack(p); +#endif } KJ_TEST("fiber pool runSynchronously()") { + if (isLibcContextHandlingKnownBroken()) return; + FiberPool pool(65536); { @@ -1185,17 +1446,22 @@ KJ_TEST("fiber pool runSynchronously()") { }); KJ_ASSERT(ptr2 != nullptr); +#if !KJ_HAS_COMPILER_FEATURE(address_sanitizer) // Should have used the same stack both times, so local var would be in the same place. + // Under ASAN, the stack-use-after-return detection correctly fires on this, so we skip the check. KJ_EXPECT(ptr1 == ptr2); +#endif // Should have been on a different stack from the main stack. - KJ_EXPECT(!onOurStack(ptr1)); + KJ_EXPECT(notOnOurStack(ptr1)); KJ_EXPECT_THROW_MESSAGE("test exception", pool.runSynchronously([&]() { KJ_FAIL_ASSERT("test exception"); })); } KJ_TEST("fiber pool limit") { + if (isLibcContextHandlingKnownBroken()) return; + FiberPool pool(65536); pool.setMaxFreelist(1); @@ -1241,7 +1507,7 @@ KJ_TEST("fiber pool limit") { // is the one from the thread. pool.runSynchronously([&]() { KJ_EXPECT(onOurStack(ptr2)); - KJ_EXPECT(!onOurStack(ptr1)); + KJ_EXPECT(notOnOurStack(ptr1)); KJ_EXPECT(pool.getFreelistSize() == 0); }); @@ -1253,7 +1519,15 @@ KJ_TEST("fiber pool limit") { // likelihood that the new stack would be allocated in the same location. } +#if __GNUC__ >= 12 && !__clang__ +// The test below intentionally takes a pointer to a stack variable and stores it past the end +// of the function. This seems to trigger a warning in newer GCCs. +#pragma GCC diagnostic ignored "-Wdangling-pointer" +#endif + KJ_TEST("run event loop on freelisted stacks") { + if (isLibcContextHandlingKnownBroken()) return; + FiberPool pool(65536); class MockEventPort: public EventPort { @@ -1310,15 +1584,15 @@ KJ_TEST("run event loop on freelisted stacks") { // The event callbacks should have run on a different stack, but the wait should have been on // the main stack. - KJ_EXPECT(!onOurStack(ptr1)); - KJ_EXPECT(!onOurStack(ptr2)); + KJ_EXPECT(notOnOurStack(ptr1)); + KJ_EXPECT(notOnOurStack(ptr2)); KJ_EXPECT(onOurStack(port.waitStack)); pool.runSynchronously([&]() { // This should run on the same stack where the event callbacks ran. KJ_EXPECT(onOurStack(ptr1)); KJ_EXPECT(onOurStack(ptr2)); - KJ_EXPECT(!onOurStack(port.waitStack)); + KJ_EXPECT(notOnOurStack(port.waitStack)); }); } @@ -1351,8 +1625,8 @@ KJ_TEST("run event loop on freelisted stacks") { // The event callback should have run on a different stack, and poll() should have run on // a separate stack too. - KJ_EXPECT(!onOurStack(ptr1)); - KJ_EXPECT(!onOurStack(port.pollStack)); + KJ_EXPECT(notOnOurStack(ptr1)); + KJ_EXPECT(notOnOurStack(port.pollStack)); pool.runSynchronously([&]() { // This should run on the same stack where the event callbacks ran. @@ -1429,5 +1703,45 @@ KJ_TEST("retryOnDisconnect") { } } +#if (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 17) || (__MINGW32__ && !__MINGW64__) +// manylinux2014-x86 doesn't seem to respect `alignas(16)`. I am guessing this is a glibc issue +// but I don't really know. It uses glibc 2.17, so testing for that and skipping the test makes +// CI work. +// +// MinGW 32-bit also mysteriously fails this test but I am not going to spend time figuring out +// why. +#else +KJ_TEST("capture weird alignment in continuation") { + struct alignas(16) WeirdAlign { + ~WeirdAlign() { + KJ_EXPECT(reinterpret_cast(this) % 16 == 0); + } + int i; + }; + + EventLoop loop; + WaitScope waitScope(loop); + + kj::Promise p = kj::READY_NOW; + + WeirdAlign value = { 123 }; + WeirdAlign value2 = { 456 }; + auto p2 = p.then([value, value2]() -> WeirdAlign { + return { value.i + value2.i }; + }); + + KJ_EXPECT(p2.wait(waitScope).i == 579); +} +#endif + +KJ_TEST("constPromise") { + EventLoop loop; + WaitScope waitScope(loop); + + Promise p = constPromise(); + int i = p.wait(waitScope); + KJ_EXPECT(i == 123); +} + } // namespace } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-unix-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-unix-test.c++ index c8012e4ecb8..64190c430fa 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-unix-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-unix-test.c++ @@ -37,8 +37,17 @@ #include #include #include +#include #include "mutex.h" +#if KJ_USE_EPOLL +#include +#endif + +#if KJ_USE_KQUEUE +#include +#endif + #if __BIONIC__ // Android's Bionic defines SIGRTMIN but using it in sigaddset() throws EINVAL, which means we // definitely can't actually use RT signals. @@ -76,7 +85,67 @@ void captureSignals() { } } +#if KJ_USE_EPOLL +bool qemuBugTestSignalHandlerRan = false; +void qemuBugTestSignalHandler(int, siginfo_t* siginfo, void*) { + qemuBugTestSignalHandlerRan = true; +} + +bool checkForQemuEpollPwaitBug() { + // Under qemu-user, when a signal is delivered during epoll_pwait(), the signal successfully + // interrupts the wait, but the correct signal handler is not run. This ruins all our tests so + // we check for it and skip tests in this case. This does imply UnixEventPort won't be able to + // handle signals correctly under qemu-user. + + sigset_t mask; + sigset_t origMask; + KJ_SYSCALL(sigemptyset(&mask)); + KJ_SYSCALL(sigaddset(&mask, SIGURG)); + KJ_SYSCALL(pthread_sigmask(SIG_BLOCK, &mask, &origMask)); + KJ_DEFER(KJ_SYSCALL(pthread_sigmask(SIG_SETMASK, &origMask, nullptr))); + + struct sigaction action; + memset(&action, 0, sizeof(action)); + action.sa_sigaction = &qemuBugTestSignalHandler; + action.sa_flags = SA_SIGINFO; + + KJ_SYSCALL(sigfillset(&action.sa_mask)); + KJ_SYSCALL(sigdelset(&action.sa_mask, SIGBUS)); + KJ_SYSCALL(sigdelset(&action.sa_mask, SIGFPE)); + KJ_SYSCALL(sigdelset(&action.sa_mask, SIGILL)); + KJ_SYSCALL(sigdelset(&action.sa_mask, SIGSEGV)); + + KJ_SYSCALL(sigaction(SIGURG, &action, nullptr)); + + int efd; + KJ_SYSCALL(efd = epoll_create1(EPOLL_CLOEXEC)); + KJ_DEFER(close(efd)); + + kill(getpid(), SIGURG); + KJ_ASSERT(!qemuBugTestSignalHandlerRan); + + struct epoll_event event; + int n = epoll_pwait(efd, &event, 1, -1, &origMask); + KJ_ASSERT(n < 0); + KJ_ASSERT(errno == EINTR); + +#if !__aarch64__ + // qemu-user should only be used to execute aarch64 binaries so we should'nt see this bug + // elsewhere! + KJ_ASSERT(qemuBugTestSignalHandlerRan); +#endif + + return !qemuBugTestSignalHandlerRan; +} + +const bool BROKEN_QEMU = checkForQemuEpollPwaitBug(); +#else +const bool BROKEN_QEMU = false; +#endif + TEST(AsyncUnixTest, Signals) { + if (BROKEN_QEMU) return; + captureSignals(); UnixEventPort port; EventLoop loop(port); @@ -100,7 +169,9 @@ TEST(AsyncUnixTest, SignalWithValue) { // // Also, this test fails on Linux on mipsel. si_value comes back as zero. No one with a mips // machine wants to debug the problem but they demand a patch fixing it, so we disable the test. - // Sad. https://github.com/sandstorm-io/capnproto/issues/204 + // Sad. https://github.com/capnproto/capnproto/issues/204 + + if (BROKEN_QEMU) return; captureSignals(); UnixEventPort port; @@ -135,7 +206,9 @@ TEST(AsyncUnixTest, SignalWithPointerValue) { // // Also, this test fails on Linux on mipsel. si_value comes back as zero. No one with a mips // machine wants to debug the problem but they demand a patch fixing it, so we disable the test. - // Sad. https://github.com/sandstorm-io/capnproto/issues/204 + // Sad. https://github.com/capnproto/capnproto/issues/204 + + if (BROKEN_QEMU) return; captureSignals(); UnixEventPort port; @@ -162,6 +235,8 @@ TEST(AsyncUnixTest, SignalWithPointerValue) { #endif TEST(AsyncUnixTest, SignalsMultiListen) { + if (BROKEN_QEMU) return; + captureSignals(); UnixEventPort port; EventLoop loop(port); @@ -186,6 +261,8 @@ TEST(AsyncUnixTest, SignalsMultiListen) { // platform I'm assuming it's a Cygwin bug. TEST(AsyncUnixTest, SignalsMultiReceive) { + if (BROKEN_QEMU) return; + captureSignals(); UnixEventPort port; EventLoop loop(port); @@ -206,16 +283,24 @@ TEST(AsyncUnixTest, SignalsMultiReceive) { #endif // !__CYGWIN32__ TEST(AsyncUnixTest, SignalsAsync) { + if (BROKEN_QEMU) return; + captureSignals(); UnixEventPort port; EventLoop loop(port); WaitScope waitScope(loop); // Arrange for a signal to be sent from another thread. - pthread_t mainThread = pthread_self(); + pthread_t mainThread KJ_UNUSED = pthread_self(); Thread thread([&]() { delay(); +#if __APPLE__ && KJ_USE_KQUEUE + // MacOS kqueue only receives process-level signals and there's nothing much we can do about + // that. + kill(getpid(), SIGURG); +#else pthread_kill(mainThread, SIGURG); +#endif }); siginfo_t info = port.onSignal(SIGURG).wait(waitScope); @@ -366,6 +451,32 @@ TEST(AsyncUnixTest, ReadObserverMultiReceive) { promise2.wait(waitScope); } +TEST(AsyncUnixTest, ReadObserverAndSignals) { + // Get FD events while also waiting on a signal. This specifically exercises epoll_pwait() for + // FD events on Linux. + + captureSignals(); + UnixEventPort port; + EventLoop loop(port); + WaitScope waitScope(loop); + + auto signalPromise = port.onSignal(SIGIO); + + int pipefds[2]; + KJ_SYSCALL(pipe(pipefds)); + kj::AutoCloseFd infd(pipefds[0]), outfd(pipefds[1]); + + UnixEventPort::FdObserver observer(port, infd, UnixEventPort::FdObserver::OBSERVE_READ); + + KJ_SYSCALL(write(outfd, "foo", 3)); + + observer.whenBecomesReadable().wait(waitScope); + + KJ_EXPECT(!signalPromise.poll(waitScope)) + kill(getpid(), SIGIO); + KJ_EXPECT(signalPromise.poll(waitScope)) +} + TEST(AsyncUnixTest, ReadObserverAsync) { captureSignals(); UnixEventPort port; @@ -488,8 +599,9 @@ TEST(AsyncUnixTest, WriteObserver) { EXPECT_TRUE(writable); } -#if !__APPLE__ -// Disabled on macOS due to https://github.com/sandstorm-io/capnproto/issues/374. +#if !__APPLE__ && !(KJ_USE_KQUEUE && !defined(EVFILT_EXCEPT)) +// Disabled on macOS due to https://github.com/capnproto/capnproto/issues/374. +// Disabled on kqueue systems that lack EVFILT_EXCEPT because it doesn't work there. TEST(AsyncUnixTest, UrgentObserver) { // Verify that FdObserver correctly detects availability of out-of-band data. // Availability of out-of-band data is implementation-specific. @@ -773,14 +885,13 @@ struct TestChild { KJ_SYSCALL(::kill(KJ_REQUIRE_NONNULL(pid), signo)); } - KJ_DISALLOW_COPY(TestChild); + KJ_DISALLOW_COPY_AND_MOVE(TestChild); }; TEST(AsyncUnixTest, ChildProcess) { + if (BROKEN_QEMU) return; + captureSignals(); - UnixEventPort port; - EventLoop loop(port); - WaitScope waitScope(loop); // Block SIGTERM so that we can carefully un-block it in children. sigset_t sigs, oldsigs; @@ -789,6 +900,10 @@ TEST(AsyncUnixTest, ChildProcess) { KJ_SYSCALL(pthread_sigmask(SIG_BLOCK, &sigs, &oldsigs)); KJ_DEFER(KJ_SYSCALL(pthread_sigmask(SIG_SETMASK, &oldsigs, nullptr)) { break; }); + UnixEventPort port; + EventLoop loop(port); + WaitScope waitScope(loop); + TestChild child1(port, 123); KJ_EXPECT(!child1.promise.poll(waitScope)); @@ -904,8 +1019,8 @@ KJ_TEST("UnixEventPort poll for signals") { KJ_EXPECT(!promise1.poll(waitScope)); KJ_EXPECT(!promise2.poll(waitScope)); - KJ_SYSCALL(raise(SIGURG)); - KJ_SYSCALL(raise(SIGIO)); + KJ_SYSCALL(kill(getpid(), SIGURG)); + KJ_SYSCALL(kill(getpid(), SIGIO)); port.wake(); KJ_EXPECT(port.poll()); @@ -962,6 +1077,48 @@ KJ_TEST("UnixEventPort can receive multiple queued instances of an RT signal") { } #endif +#if !(__APPLE__ && KJ_USE_KQUEUE) +KJ_TEST("UnixEventPort thread-specific signals") { + // Verify a signal directed to a thread is only received on the intended thread. + // + // MacOS kqueue only receives process-level signals and there's nothing much we can do about + // that, so this test won't work there. + + if (BROKEN_QEMU) return; + + captureSignals(); + + Vector> threads; + std::atomic readyCount(0); + std::atomic doneCount(0); + for (auto i KJ_UNUSED: kj::zeroTo(16)) { + threads.add(kj::heap([&]() noexcept { + UnixEventPort port; + EventLoop loop(port); + WaitScope waitScope(loop); + + readyCount.fetch_add(1, std::memory_order_relaxed); + port.onSignal(SIGIO).wait(waitScope); + doneCount.fetch_add(1, std::memory_order_relaxed); + })); + } + + do { + usleep(1000); + } while (readyCount.load(std::memory_order_relaxed) < 16); + + KJ_ASSERT(doneCount.load(std::memory_order_relaxed) == 0); + + uint count = 0; + for (uint i: {5, 14, 4, 6, 7, 11, 1, 3, 8, 0, 12, 9, 10, 15, 2, 13}) { + threads[i]->sendSignal(SIGIO); + threads[i] = nullptr; // wait for that one thread to exit + usleep(1000); + KJ_ASSERT(doneCount.load(std::memory_order_relaxed) == ++count); + } +} +#endif + } // namespace } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-unix.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-unix.c++ index 796f629182e..a8179ea5ae8 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-unix.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-unix.c++ @@ -35,8 +35,15 @@ #if KJ_USE_EPOLL #include -#include #include +#elif KJ_USE_KQUEUE +#include +#include +#include +#if !__APPLE__ && !__OpenBSD__ +// MacOS and OpenBSD are missing this, which means we have to do ugly hacks instead on those. +#define KJ_HAS_SIGTIMEDWAIT 1 +#endif #else #include #include @@ -52,7 +59,69 @@ namespace { int reservedSignal = SIGUSR1; bool tooLateToSetReserved = false; bool capturedChildExit = false; + +#if !KJ_USE_KQUEUE bool threadClaimedChildExits = false; +#endif + +} // namespace + +#if KJ_USE_EPOLL + +namespace { + +KJ_THREADLOCAL_PTR(UnixEventPort) threadEventPort = nullptr; +// This is set to the current UnixEventPort just before epoll_pwait(), then back to null after it +// returns. + +} // namespace + +void UnixEventPort::signalHandler(int, siginfo_t* siginfo, void*) noexcept { + // Since this signal handler is *only* called during `epoll_pwait()`, we aren't subject to the + // usual signal-safety concerns. We can treat this more like a callback. So, we can just call + // gotSignal() directly, no biggy. + + // Note that, if somehow the signal hanlder is invoked when *not* running `epoll_pwait()`, then + // `threadEventPort` will be null. We silently ignore the signal in this case. This should never + // happen in normal execution, so you might argue we should assert-fail instead. However: + // - We obviously can't throw from here, so we'd have to crash instead. + // - The Cloudflare Workers runtime relies on this no-op behavior for a certain hack. The hack + // in question involves unblocking a signal from the signal mask and relying on it to interrupt + // certain blocking syscalls, causing them to fail with EINTR. The hack does not need the + // handler to do anything except return in this case. The hacky code makes sure to restore the + // signal mask before returning to the event loop. + + UnixEventPort* current = threadEventPort; + if (current != nullptr) { + current->gotSignal(*siginfo); + } +} + +#elif KJ_USE_KQUEUE + +#if !KJ_HAS_SIGTIMEDWAIT +KJ_THREADLOCAL_PTR(siginfo_t) threadCapture = nullptr; +#endif + +void UnixEventPort::signalHandler(int, siginfo_t* siginfo, void*) noexcept { +#if KJ_HAS_SIGTIMEDWAIT + // This is never called because we use sigtimedwait() to dequeue the signal while it is still + // blocked, without running the signal handler. However, if we don't register a handler at all, + // and the default behavior is SIG_IGN, then the signal will be discarded before sigtimedwait() + // can receive it. +#else + // When sigtimedwait() isn't available, we use sigsuspend() and wait for the siginfo_t to be + // delivered to the signal handler. + siginfo_t* capture = threadCapture; + if (capture != nullptr) { + *capture = *siginfo; + } +#endif +} + +#else + +namespace { struct SignalCapture { sigjmp_buf jumpTo; @@ -83,10 +152,11 @@ struct SignalCapture { #endif }; -#if !KJ_USE_EPOLL // on Linux we'll use signalfd KJ_THREADLOCAL_PTR(SignalCapture) threadCapture = nullptr; -void signalHandler(int, siginfo_t* siginfo, void*) { +} // namespace + +void UnixEventPort::signalHandler(int, siginfo_t* siginfo, void*) noexcept { SignalCapture* capture = threadCapture; if (capture != nullptr) { capture->siginfo = *siginfo; @@ -104,43 +174,64 @@ void signalHandler(int, siginfo_t* siginfo, void*) { #endif } } -#endif -void registerSignalHandler(int signum) { +#endif // !KJ_USE_EPOLL && !KJ_USE_KQUEUE + +void UnixEventPort::registerSignalHandler(int signum) { + KJ_REQUIRE(signum != SIGBUS && signum != SIGFPE && signum != SIGILL && signum != SIGSEGV, + "this signal is raised by erroneous code execution; you cannot capture it into the event " + "loop"); + tooLateToSetReserved = true; + // Block the signal from being delivered most of the time. We'll explicitly unblock it when we + // want to receive it. sigset_t mask; KJ_SYSCALL(sigemptyset(&mask)); KJ_SYSCALL(sigaddset(&mask, signum)); KJ_SYSCALL(pthread_sigmask(SIG_BLOCK, &mask, nullptr)); -#if !KJ_USE_EPOLL // on Linux we'll use signalfd + // Register the signal handler which should be invoked when we explicitly unblock the signal. struct sigaction action; memset(&action, 0, sizeof(action)); action.sa_sigaction = &signalHandler; - KJ_SYSCALL(sigfillset(&action.sa_mask)); action.sa_flags = SA_SIGINFO; + + // Set up the signal mask applied while the signal handler runs. We want to block all other + // signals from being raised during the handler, with the exception of the four "crash" signals, + // which realistically can't be blocked. + KJ_SYSCALL(sigfillset(&action.sa_mask)); + KJ_SYSCALL(sigdelset(&action.sa_mask, SIGBUS)); + KJ_SYSCALL(sigdelset(&action.sa_mask, SIGFPE)); + KJ_SYSCALL(sigdelset(&action.sa_mask, SIGILL)); + KJ_SYSCALL(sigdelset(&action.sa_mask, SIGSEGV)); + KJ_SYSCALL(sigaction(signum, &action, nullptr)); -#endif } -#if !KJ_USE_EPOLL && !KJ_USE_PIPE_FOR_WAKEUP -void registerReservedSignal() { +#if !KJ_USE_EPOLL && !KJ_USE_KQUEUE && !KJ_USE_PIPE_FOR_WAKEUP +void UnixEventPort::registerReservedSignal() { registerSignalHandler(reservedSignal); } #endif -void ignoreSigpipe() { +void UnixEventPort::ignoreSigpipe() { // We disable SIGPIPE because users of UnixEventPort almost certainly don't want it. - while (signal(SIGPIPE, SIG_IGN) == SIG_ERR) { - int error = errno; - if (error != EINTR) { - KJ_FAIL_SYSCALL("signal(SIGPIPE, SIG_IGN)", error); + // + // We've observed that when starting many threads at the same time, this can cause some + // contention on the kernel's signal handler table lock, so we try to run it only once. + static bool once KJ_UNUSED = []() { + while (signal(SIGPIPE, SIG_IGN) == SIG_ERR) { + int error = errno; + if (error != EINTR) { + KJ_FAIL_SYSCALL("signal(SIGPIPE, SIG_IGN)", error); + } } - } + return true; + }(); } -} // namespace +#if !KJ_USE_KQUEUE // kqueue systems handle child processes differently struct UnixEventPort::ChildSet { std::map waiters; @@ -264,6 +355,8 @@ Promise UnixEventPort::onSignal(int signum) { return newAdaptedPromise(*this, signum); } +#endif // !KJ_USE_KQUEUE + void UnixEventPort::captureSignal(int signum) { if (reservedSignal == SIGUSR1) { KJ_REQUIRE(signum != SIGUSR1, @@ -287,6 +380,8 @@ void UnixEventPort::setReservedSignal(int signum) { reservedSignal = signum; } +#if !KJ_USE_KQUEUE + void UnixEventPort::gotSignal(const siginfo_t& siginfo) { // If onChildExit() has been called and this is SIGCHLD, check for child exits. KJ_IF_MAYBE(cs, childSet) { @@ -308,39 +403,35 @@ void UnixEventPort::gotSignal(const siginfo_t& siginfo) { } } +#endif // !KJ_USE_KQUEUE + #if KJ_USE_EPOLL // ======================================================================================= // epoll FdObserver implementation UnixEventPort::UnixEventPort() : clock(systemPreciseMonotonicClock()), - timerImpl(clock.now()), - epollFd(-1), - signalFd(-1), - eventFd(-1) { + timerImpl(clock.now()) { ignoreSigpipe(); int fd; KJ_SYSCALL(fd = epoll_create1(EPOLL_CLOEXEC)); epollFd = AutoCloseFd(fd); - memset(&signalFdSigset, 0, sizeof(signalFdSigset)); - - KJ_SYSCALL(sigemptyset(&signalFdSigset)); - KJ_SYSCALL(fd = signalfd(-1, &signalFdSigset, SFD_NONBLOCK | SFD_CLOEXEC)); - signalFd = AutoCloseFd(fd); - KJ_SYSCALL(fd = eventfd(0, EFD_CLOEXEC | EFD_NONBLOCK)); eventFd = AutoCloseFd(fd); - struct epoll_event event; memset(&event, 0, sizeof(event)); event.events = EPOLLIN; event.data.u64 = 0; - KJ_SYSCALL(epoll_ctl(epollFd, EPOLL_CTL_ADD, signalFd, &event)); - event.data.u64 = 1; KJ_SYSCALL(epoll_ctl(epollFd, EPOLL_CTL_ADD, eventFd, &event)); + + // Get the current signal mask, from which we'll compute the appropriate mask to pass to + // epoll_pwait() on each loop. (We explicitly memset to 0 first to make sure we can compare + // this against another mask with memcmp() for debug purposes.) + memset(&originalMask, 0, sizeof(originalMask)); + KJ_SYSCALL(sigprocmask(0, nullptr, &originalMask)); } UnixEventPort::~UnixEventPort() noexcept(false) { @@ -443,208 +534,592 @@ Promise UnixEventPort::FdObserver::whenWriteDisconnected() { return kj::mv(paf.promise); } +void UnixEventPort::wake() const { + uint64_t one = 1; + ssize_t n; + KJ_NONBLOCKING_SYSCALL(n = write(eventFd, &one, sizeof(one))); + KJ_ASSERT(n < 0 || n == sizeof(one)); +} + bool UnixEventPort::wait() { - return doEpollWait( - timerImpl.timeoutToNextEvent(clock.now(), MILLISECONDS, int(maxValue)) +#ifdef KJ_DEBUG + // In debug mode, verify the current signal mask matches the original. + { + sigset_t currentMask; + memset(¤tMask, 0, sizeof(currentMask)); + KJ_SYSCALL(sigprocmask(0, nullptr, ¤tMask)); + if (memcmp(¤tMask, &originalMask, sizeof(currentMask)) != 0) { + kj::Vector changes; + for (int i = 0; i <= SIGRTMAX; i++) { + if (sigismember(¤tMask, i) && !sigismember(&originalMask, i)) { + changes.add(kj::str("signal #", i, " (", strsignal(i), ") was added")); + } else if (!sigismember(¤tMask, i) && sigismember(&originalMask, i)) { + changes.add(kj::str("signal #", i, " (", strsignal(i), ") was removed")); + } + } + + KJ_FAIL_REQUIRE( + "Signal mask has changed since UnixEventPort was constructed. You are required to " + "ensure that whenever control returns to the event loop, the signal mask is the same " + "as it was when UnixEventPort was created. In non-debug builds, this check is skipped, " + "and this situation may instead lead to unexpected results. In particular, while the " + "system is waiting for I/O events, the signal mask may be reverted to what it was at " + "construction time, ignoring your subsequent changes.", changes); + } + } +#endif + + int timeout = timerImpl.timeoutToNextEvent(clock.now(), MILLISECONDS, int(maxValue)) .map([](uint64_t t) -> int { return t; }) - .orDefault(-1)); + .orDefault(-1); + + struct epoll_event events[16]; + int n; + if (signalHead != nullptr || childSet != nullptr) { + // We are interested in some signals. Use epoll_pwait(). + // + // Note: Once upon a time, we used signalfd for this. However, this turned out to be more + // trouble than it was worth. Some problems with signalfd: + // - It required opening an additional file descriptor per thread. + // - If the set of interesting signals changed, the signalfd would have to be updated before + // calling epoll_wait(), which was an extra syscall. + // - When a signal arrives, it requires extra syscalls to read the signal info from the + // signalfd, as well as code to translate from signalfd_siginfo to siginfo_t, which are + // different for some reason. + // - signalfd suffers from surprising lock contention during epoll_wait or when the signalfd's + // mask is updated in programs with many threads. Because the lock is a spinlock, this + // could consume exorbitant CPU. + // - When a signalfd is in an epoll, it will be flagged readable based on signals which are + // pending in the process/thread which called epoll_ctl_add() to register the signalfd. + // This is mostly fine for our usage, except that it breaks one useful case that otherwise + // works: many servers are designed to "daemonize" themselves by fork()ing and then having + // the parent process exit while the child thread lives on. In this case, if a UnixEventPort + // had been created before daemonizing, signal handling would be forever broken in the child. + + sigset_t waitMask = originalMask; + + // Unblock the signals we care about. + { + auto ptr = signalHead; + while (ptr != nullptr) { + KJ_SYSCALL(sigdelset(&waitMask, ptr->signum)); + ptr = ptr->next; + } + if (childSet != nullptr) { + KJ_SYSCALL(sigdelset(&waitMask, SIGCHLD)); + } + } + + threadEventPort = this; + n = epoll_pwait(epollFd, events, kj::size(events), timeout, &waitMask); + threadEventPort = nullptr; + } else { + // Not waiting on any signals. Regular epoll_wait() will be fine. + n = epoll_wait(epollFd, events, kj::size(events), timeout); + } + + if (n < 0) { + int error = errno; + if (error == EINTR) { + // We received a singal. The signal handler may have queued an event to the event loop. Even + // if it didn't, we can't simply restart the epoll call because we need to recompute the + // timeout. Instead, we pretend epoll_wait() returned zero events. This will cause the event + // loop to spin once, decide it has nothing to do, recompute timeouts, then return to waiting. + n = 0; + } else { + KJ_FAIL_SYSCALL("epoll_pwait()", error); + } + } + + return processEpollEvents(events, n); +} + +bool UnixEventPort::processEpollEvents(struct epoll_event events[], int n) { + bool woken = false; + + for (int i = 0; i < n; i++) { + if (events[i].data.u64 == 0) { + // Someone called wake() from another thread. Consume the event. + uint64_t value; + ssize_t n; + KJ_NONBLOCKING_SYSCALL(n = read(eventFd, &value, sizeof(value))); + KJ_ASSERT(n < 0 || n == sizeof(value)); + + // We were woken. Need to return true. + woken = true; + } else { + FdObserver* observer = reinterpret_cast(events[i].data.ptr); + observer->fire(events[i].events); + } + } + + timerImpl.advanceTo(clock.now()); + + return woken; } bool UnixEventPort::poll() { - return doEpollWait(0); + // Unfortunately, epoll_pwait() with a timeout of zero will never deliver actually deliver any + // pending signals. Therefore, we need a completely different approach to poll for signals. We + // might as well use regular epoll_wait() in this case, too, to save the kernel some effort. + + if (signalHead != nullptr || childSet != nullptr) { + // Use sigtimedwait() to poll for signals. + + // Construct a sigset of all signals we are interested in. + sigset_t sigset; + KJ_SYSCALL(sigemptyset(&sigset)); + uint count = 0; + + { + auto ptr = signalHead; + while (ptr != nullptr) { + KJ_SYSCALL(sigaddset(&sigset, ptr->signum)); + ++count; + ptr = ptr->next; + } + if (childSet != nullptr) { + KJ_SYSCALL(sigaddset(&sigset, SIGCHLD)); + ++count; + } + } + + // While that set is non-empty, poll for signals. + while (count > 0) { + struct timespec timeout; + timeout.tv_sec = 0; + timeout.tv_nsec = 0; + + siginfo_t siginfo; + int n; + KJ_NONBLOCKING_SYSCALL(n = sigtimedwait(&sigset, &siginfo, &timeout)); + if (n < 0) break; // EAGAIN: no signals in set are raised + + KJ_ASSERT(n == siginfo.si_signo); + gotSignal(siginfo); + + // Remove that signal from the set so we don't receive it again, but keep checking for others + // if there are any. + KJ_SYSCALL(sigdelset(&sigset, n)); + --count; + } + } + + struct epoll_event events[16]; + int n; + KJ_SYSCALL(n = epoll_wait(epollFd, events, kj::size(events), 0)); + + return processEpollEvents(events, n); } -void UnixEventPort::wake() const { - uint64_t one = 1; - ssize_t n; - KJ_NONBLOCKING_SYSCALL(n = write(eventFd, &one, sizeof(one))); - KJ_ASSERT(n < 0 || n == sizeof(one)); +#elif KJ_USE_KQUEUE +// ======================================================================================= +// kqueue FdObserver implementation + +UnixEventPort::UnixEventPort() + : clock(systemPreciseMonotonicClock()), + timerImpl(clock.now()) { + ignoreSigpipe(); + + int fd; + KJ_SYSCALL(fd = kqueue()); + kqueueFd = AutoCloseFd(fd); + + // NetBSD has kqueue1() which can set CLOEXEC atomically, but FreeBSD, MacOS, and others don't + // have this... oh well. + KJ_SYSCALL(fcntl(kqueueFd, F_SETFD, FD_CLOEXEC)); + + // Register the EVFILT_USER event used by wake(). + struct kevent event; + EV_SET(&event, 0, EVFILT_USER, EV_ADD | EV_CLEAR, 0, 0, nullptr); + KJ_SYSCALL(kevent(kqueueFd, &event, 1, nullptr, 0, nullptr)); } -static siginfo_t toRegularSiginfo(const struct signalfd_siginfo& siginfo) { - // Unfortunately, siginfo_t is mostly a big union and the correct set of fields to fill in - // depends on the type of signal. OTOH, signalfd_siginfo is a flat struct that expands all - // siginfo_t's union fields out to be non-overlapping. We can't just copy all the fields over - // because of the unions; we have to carefully figure out which fields are appropriate to fill - // in for this signal. Ick. - - siginfo_t result; - memset(&result, 0, sizeof(result)); - - result.si_signo = siginfo.ssi_signo; - result.si_errno = siginfo.ssi_errno; - result.si_code = siginfo.ssi_code; - - if (siginfo.ssi_code > 0) { - // Signal originated from the kernel. The structure of the siginfo depends primarily on the - // signal number. - - switch (siginfo.ssi_signo) { - case SIGCHLD: - result.si_pid = siginfo.ssi_pid; - result.si_uid = siginfo.ssi_uid; - result.si_status = siginfo.ssi_status; - result.si_utime = siginfo.ssi_utime; - result.si_stime = siginfo.ssi_stime; - break; +UnixEventPort::~UnixEventPort() noexcept(false) {} + +UnixEventPort::FdObserver::FdObserver(UnixEventPort& eventPort, int fd, uint flags) + : eventPort(eventPort), fd(fd), flags(flags) { + struct kevent events[3]; + int nevents = 0; - case SIGILL: - case SIGFPE: - case SIGSEGV: - case SIGBUS: - case SIGTRAP: - result.si_addr = reinterpret_cast(static_cast(siginfo.ssi_addr)); -#ifdef si_trapno - result.si_trapno = siginfo.ssi_trapno; + if (flags & OBSERVE_URGENT) { +#ifdef EVFILT_EXCEPT + EV_SET(&events[nevents++], fd, EVFILT_EXCEPT, EV_ADD | EV_CLEAR, NOTE_OOB, 0, this); +#else + // TODO(someday): Can we support this without reverting to poll()? + // Related: https://sandstorm.io/news/2015-04-08-osx-security-bug + KJ_FAIL_ASSERT("kqueue() on this system doesn't support EVFILT_EXCEPT (for OBSERVE_URGENT). " + "If you really need to observe OOB events, compile KJ (and your application) with " + "-DKJ_USE_KQUEUE=0 to disable use of kqueue()."); #endif -#ifdef si_addr_lsb - // ssi_addr_lsb is defined as coming immediately after ssi_addr in the kernel headers but - // apparently the userspace headers were never updated. So we do a pointer hack. :( - result.si_addr_lsb = *reinterpret_cast(&siginfo.ssi_addr + 1); + } + if (flags & OBSERVE_READ) { + EV_SET(&events[nevents++], fd, EVFILT_READ, EV_ADD | EV_CLEAR, 0, 0, this); + } + if (flags & OBSERVE_WRITE) { + EV_SET(&events[nevents++], fd, EVFILT_WRITE, EV_ADD | EV_CLEAR, 0, 0, this); + } + + KJ_SYSCALL(kevent(eventPort.kqueueFd, events, nevents, nullptr, 0, nullptr)); +} + +UnixEventPort::FdObserver::~FdObserver() noexcept(false) { + struct kevent events[3]; + int nevents = 0; + + if (flags & OBSERVE_URGENT) { +#ifdef EVFILT_EXCEPT + EV_SET(&events[nevents++], fd, EVFILT_EXCEPT, EV_DELETE, 0, 0, nullptr); #endif + } + if (flags & OBSERVE_READ) { + EV_SET(&events[nevents++], fd, EVFILT_READ, EV_DELETE, 0, 0, nullptr); + } + if ((flags & OBSERVE_WRITE) || hupFulfiller != nullptr) { + EV_SET(&events[nevents++], fd, EVFILT_WRITE, EV_DELETE, 0, 0, nullptr); + } + + // TODO(perf): Should we delay unregistration of events until the next time kqueue() is invoked? + // We can't delay registrations since it could lead to missed events, but we could delay + // unregistration safely. However, we'd have to be very careful about the possibility that + // the same FD is re-registered later. + KJ_SYSCALL_HANDLE_ERRORS(kevent(eventPort.kqueueFd, events, nevents, nullptr, 0, nullptr)) { + case ENOENT: + // In the specific case of unnamed pipes, when read end of the pipe is destroyed, FreeBSD + // seems to unregister the events on the write end automatically. Subsequently trying to + // remove them then produces ENOENT. Let's ignore this. break; + default: + KJ_FAIL_SYSCALL("kevent(remove events)", error); + } +} - case SIGIO: - static_assert(SIGIO == SIGPOLL, "SIGIO != SIGPOLL?"); +void UnixEventPort::FdObserver::fire(struct kevent event) { + switch (event.filter) { + case EVFILT_READ: + if (event.flags & EV_EOF) { + atEnd = true; + } else { + atEnd = false; + } + + KJ_IF_MAYBE(f, readFulfiller) { + f->get()->fulfill(); + readFulfiller = nullptr; + } + break; - // Note: Technically, code can arrange for SIGIO signals to be delivered with a signal number - // other than SIGIO. AFAICT there is no way for us to detect this in the siginfo. Luckily - // SIGIO is totally obsoleted by epoll so it shouldn't come up. + case EVFILT_WRITE: + if (event.flags & EV_EOF) { + // EOF on write indicates disconnect. + KJ_IF_MAYBE(f, hupFulfiller) { + f->get()->fulfill(); + hupFulfiller = nullptr; + if (!(flags & OBSERVE_WRITE)) { + // We were only observing writes to get the disconnect event. Stop observing now. + struct kevent rmEvent; + EV_SET(&rmEvent, fd, EVFILT_WRITE, EV_DELETE, 0, 0, nullptr); + KJ_SYSCALL_HANDLE_ERRORS(kevent(eventPort.kqueueFd, &rmEvent, 1, nullptr, 0, nullptr)) { + case ENOENT: + // In the specific case of unnamed pipes, when read end of the pipe is destroyed, + // FreeBSD seems to unregister the events on the write end automatically. + // Subsequently trying to remove them then produces ENOENT. Let's ignore this. + break; + default: + KJ_FAIL_SYSCALL("kevent(remove events)", error); + } + } + } + } - result.si_band = siginfo.ssi_band; - result.si_fd = siginfo.ssi_fd; + KJ_IF_MAYBE(f, writeFulfiller) { + f->get()->fulfill(); + writeFulfiller = nullptr; + } break; - case SIGSYS: - // Apparently SIGSYS's fields are not available in signalfd_siginfo? +#ifdef EVFILT_EXCEPT + case EVFILT_EXCEPT: + KJ_IF_MAYBE(f, urgentFulfiller) { + f->get()->fulfill(); + urgentFulfiller = nullptr; + } break; - } +#endif + } +} - } else { - // Signal originated from userspace. The sender could specify whatever signal number they - // wanted. The structure of the signal is determined by the API they used, which is identified - // by SI_CODE. - - switch (siginfo.ssi_code) { - case SI_USER: - case SI_TKILL: - // kill(), tkill(), or tgkill(). - result.si_pid = siginfo.ssi_pid; - result.si_uid = siginfo.ssi_uid; - break; +Promise UnixEventPort::FdObserver::whenBecomesReadable() { + KJ_REQUIRE(flags & OBSERVE_READ, "FdObserver was not set to observe reads."); - case SI_QUEUE: - case SI_MESGQ: - case SI_ASYNCIO: - default: - result.si_pid = siginfo.ssi_pid; - result.si_uid = siginfo.ssi_uid; - - // This is awkward. In siginfo_t, si_ptr and si_int are in a union together. In - // signalfd_siginfo, they are not. We don't really know whether the app intended to send - // an int or a pointer. Presumably since the pointer is always larger than the int, if - // we write the pointer, we'll end up with the right value for the int? Presumably the - // two fields of signalfd_siginfo are actually extracted from one of these unions - // originally, so actually contain redundant data? Better write some tests... - // - // Making matters even stranger, siginfo.ssi_ptr is 64-bit even on 32-bit systems, and - // it appears that instead of doing the obvious thing by casting the pointer value to - // 64 bits, the kernel actually memcpy()s the 32-bit value into the 64-bit space. As - // a result, on big-endian 32-bit systems, the original pointer value ends up in the - // *upper* 32 bits of siginfo.ssi_ptr, which is totally weird. We play along and use - // a memcpy() on our end too, to get the right result on all platforms. - memcpy(&result.si_ptr, &siginfo.ssi_ptr, sizeof(result.si_ptr)); - break; + auto paf = newPromiseAndFulfiller(); + readFulfiller = kj::mv(paf.fulfiller); + return kj::mv(paf.promise); +} - case SI_TIMER: - result.si_timerid = siginfo.ssi_tid; - result.si_overrun = siginfo.ssi_overrun; +Promise UnixEventPort::FdObserver::whenBecomesWritable() { + KJ_REQUIRE(flags & OBSERVE_WRITE, "FdObserver was not set to observe writes."); - // Again with this weirdness... - result.si_ptr = reinterpret_cast(static_cast(siginfo.ssi_ptr)); - break; - } + auto paf = newPromiseAndFulfiller(); + writeFulfiller = kj::mv(paf.fulfiller); + return kj::mv(paf.promise); +} + +Promise UnixEventPort::FdObserver::whenUrgentDataAvailable() { + KJ_REQUIRE(flags & OBSERVE_URGENT, + "FdObserver was not set to observe availability of urgent data."); + + auto paf = newPromiseAndFulfiller(); + urgentFulfiller = kj::mv(paf.fulfiller); + return kj::mv(paf.promise); +} + +Promise UnixEventPort::FdObserver::whenWriteDisconnected() { + if (!(flags & OBSERVE_WRITE) && hupFulfiller == nullptr) { + // We aren't observing writes, but we need to if we want to detect disconnects. + struct kevent event; + EV_SET(&event, fd, EVFILT_WRITE, EV_ADD | EV_CLEAR, 0, 0, this); + KJ_SYSCALL(kevent(eventPort.kqueueFd, &event, 1, nullptr, 0, nullptr)); } - return result; + auto paf = newPromiseAndFulfiller(); + hupFulfiller = kj::mv(paf.fulfiller); + return kj::mv(paf.promise); } -bool UnixEventPort::doEpollWait(int timeout) { - sigset_t newMask; - memset(&newMask, 0, sizeof(newMask)); - sigemptyset(&newMask); +class UnixEventPort::SignalPromiseAdapter { +public: + inline SignalPromiseAdapter(PromiseFulfiller& fulfiller, + UnixEventPort& eventPort, int signum) + : eventPort(eventPort), signum(signum), fulfiller(fulfiller) { + struct kevent event; + EV_SET(&event, signum, EVFILT_SIGNAL, EV_ADD | EV_CLEAR, 0, 0, this); + KJ_SYSCALL(kevent(eventPort.kqueueFd, &event, 1, nullptr, 0, nullptr)); + + // We must check for the signal now in case it was delivered previously and is currently in + // the blocked set. See comment in tryConsumeSignal(). (To avoid the race condition, we must + // check *after* having registered the kevent!) + tryConsumeSignal(); + } - { - auto ptr = signalHead; - while (ptr != nullptr) { - sigaddset(&newMask, ptr->signum); - ptr = ptr->next; + ~SignalPromiseAdapter() noexcept(false) { + // Unregister the event. This is important because it contains a pointer to this object which + // we don't want to see again. + struct kevent event; + EV_SET(&event, signum, EVFILT_SIGNAL, EV_DELETE, 0, 0, nullptr); + KJ_SYSCALL(kevent(eventPort.kqueueFd, &event, 1, nullptr, 0, nullptr)); + } + + void tryConsumeSignal() { + // Unfortunately KJ's signal semantics are not a great fit for kqueue. In particular, KJ + // assumes that if no threads are waiting for a signal, it'll remain blocked until some + // thread actually calls `onSignal()` to receive it. kqueue, however, doesn't care if a signal + // is blocked -- the kqueue event will still be delivered. So, when `onSignal()` is called + // we will need to check if the signal is already queued; it's too late to ask kqueue() to + // tell us this. + // + // Alternatively we could maybe fix this by having every thread's kqueue wait on all captured + // signals all the time, but this would result in a thundering herd on any signal even if only + // one thread has actually registered interest. + // + // Another problem is per-thread signals, delivered with pthread_kill(). On FreeBSD, it appears + // a pthread_kill will wake up all kqueues in the process waiting on the particular signal, + // even if they are not associated with the target thread (kqueues don't really have any + // association with threads anyway). Worse, though, on MacOS, pthread_kill() doesn't wake + // kqueues at all. In fact, it appears they made it this way in 10.14, which broke stuff: + // https://github.com/libevent/libevent/issues/765 + // + // So, we have to: + // - Block signals normally. + // - Poll for a specific signal using sigtimedwait() or similar. + // - Use kqueue only as a hint to tell us when polling might be a good idea. + // - On MacOS, live with per-thread signals being broken I guess? + + // Anyway, this method here tries to have the signal delivered to this thread. + + if (fulfiller.isWaiting()) { +#if KJ_HAS_SIGTIMEDWAIT + sigset_t mask; + KJ_SYSCALL(sigemptyset(&mask)); + KJ_SYSCALL(sigaddset(&mask, signum)); + siginfo_t result; + struct timespec timeout; + memset(&timeout, 0, sizeof(timeout)); + + KJ_SYSCALL_HANDLE_ERRORS(sigtimedwait(&mask, &result, &timeout)) { + case EAGAIN: + // Signal was not queued. + return; + default: + KJ_FAIL_SYSCALL("sigtimedwait", error); + } + + fulfiller.fulfill(kj::mv(result)); +#else + // This platform doesn't appear to have sigtimedwait(). Ugh! We are forced to do two separate + // syscalls to see if the signal is pending, and then, if so, wait for it. There is an + // inherent race condition since the signal could be dequeued in another thread concurrently. + // We will try to work around that by locking a global mutex, so at least this code doesn't + // race against itself. + static pthread_mutex_t mut = PTHREAD_MUTEX_INITIALIZER; + pthread_mutex_lock(&mut); + KJ_DEFER(pthread_mutex_unlock(&mut)); + + sigset_t mask; + KJ_SYSCALL(sigpending(&mask)); + int isset; + KJ_SYSCALL(isset = sigismember(&mask, signum)); + if (isset) { + KJ_SYSCALL(sigfillset(&mask)); + KJ_SYSCALL(sigdelset(&mask, signum)); + siginfo_t info; + memset(&info, 0, sizeof(info)); + threadCapture = &info; + KJ_DEFER(threadCapture = nullptr); + int result = sigsuspend(&mask); + KJ_ASSERT(result < 0 && errno == EINTR, "sigsuspend() didn't EINTR?", result, errno); + KJ_ASSERT(info.si_signo == signum); + fulfiller.fulfill(kj::mv(info)); + } +#endif } - if (childSet != nullptr) { - sigaddset(&newMask, SIGCHLD); + } + + UnixEventPort& eventPort; + int signum; + PromiseFulfiller& fulfiller; +}; + +Promise UnixEventPort::onSignal(int signum) { + KJ_REQUIRE(signum != SIGCHLD || !capturedChildExit, + "can't call onSigal(SIGCHLD) when kj::UnixEventPort::captureChildExit() has been called"); + + return newAdaptedPromise(*this, signum); +} + +class UnixEventPort::ChildExitPromiseAdapter { +public: + inline ChildExitPromiseAdapter(PromiseFulfiller& fulfiller, + UnixEventPort& eventPort, Maybe& pid) + : eventPort(eventPort), pid(pid), fulfiller(fulfiller) { + pid_t p = KJ_ASSERT_NONNULL(pid); + + struct kevent event; + EV_SET(&event, p, EVFILT_PROC, EV_ADD | EV_CLEAR, NOTE_EXIT, 0, this); + KJ_SYSCALL(kevent(eventPort.kqueueFd, &event, 1, nullptr, 0, nullptr)); + + // Check for race where child had already exited before the event was waiting. + tryConsumeChild(); + } + + ~ChildExitPromiseAdapter() noexcept(false) { + KJ_IF_MAYBE(p, pid) { + // The process has not been reaped. The promise must have been canceled. So, we're still + // registered with the kqueue. We'd better unregister because the kevent points back to this + // object. + struct kevent event; + EV_SET(&event, *p, EVFILT_PROC, EV_DELETE, 0, 0, nullptr); + KJ_SYSCALL(kevent(eventPort.kqueueFd, &event, 1, nullptr, 0, nullptr)); + + // We leak the zombie process here. The caller is responsible for doing its own waitpid(). } } - if (memcmp(&newMask, &signalFdSigset, sizeof(newMask)) != 0) { - // Apparently we're not waiting on the same signals as last time. Need to update the signal - // FD's mask. - signalFdSigset = newMask; - KJ_SYSCALL(signalfd(signalFd, &signalFdSigset, SFD_NONBLOCK | SFD_CLOEXEC)); + void tryConsumeChild() { + // Even though kqueue delivers the exit status to us, we still need to wait on the pid to + // clear the zombie. We can't set SIGCHLD to SIG_IGN to ignore this because it creates a race + // condition. + + KJ_IF_MAYBE(p, pid) { + int status; + pid_t result; + KJ_SYSCALL(result = waitpid(*p, &status, WNOHANG)); + if (result != 0) { + KJ_ASSERT(result == *p); + + // NOTE: The proc is automatically unregsitered from the kqueue on exit, so we should NOT + // attempt to unregister it here. + + pid = nullptr; + fulfiller.fulfill(kj::mv(status)); + } + } } - struct epoll_event events[16]; - int n = epoll_wait(epollFd, events, kj::size(events), timeout); + UnixEventPort& eventPort; + Maybe& pid; + PromiseFulfiller& fulfiller; +}; + +Promise UnixEventPort::onChildExit(Maybe& pid) { + KJ_REQUIRE(capturedChildExit, + "must call UnixEventPort::captureChildExit() to use onChildExit()."); + + return kj::newAdaptedPromise(*this, pid); +} + +void UnixEventPort::captureChildExit() { + capturedChildExit = true; +} + +void UnixEventPort::wake() const { + // Trigger our user event. + struct kevent event; + EV_SET(&event, 0, EVFILT_USER, 0, NOTE_TRIGGER, 0, nullptr); + KJ_SYSCALL(kevent(kqueueFd, &event, 1, nullptr, 0, nullptr)); +} + +bool UnixEventPort::doKqueueWait(struct timespec* timeout) { + struct kevent events[16]; + int n = kevent(kqueueFd, nullptr, 0, events, kj::size(events), timeout); + if (n < 0) { int error = errno; if (error == EINTR) { - // We can't simply restart the epoll call because we need to recompute the timeout. Instead, - // we pretend epoll_wait() returned zero events. This will cause the event loop to spin once, - // decide it has nothing to do, recompute timeouts, then return to waiting. + // We received a singal. The signal handler may have queued an event to the event loop. Even + // if it didn't, we can't simply restart the kevent call because we need to recompute the + // timeout. Instead, we pretend kevent() returned zero events. This will cause the event + // loop to spin once, decide it has nothing to do, recompute timeouts, then return to waiting. n = 0; } else { - KJ_FAIL_SYSCALL("epoll_wait()", error); + KJ_FAIL_SYSCALL("kevent()", error); } } bool woken = false; for (int i = 0; i < n; i++) { - if (events[i].data.u64 == 0) { - for (;;) { - struct signalfd_siginfo siginfo; - ssize_t n; - KJ_NONBLOCKING_SYSCALL(n = read(signalFd, &siginfo, sizeof(siginfo))); - if (n < 0) break; // no more signals - - KJ_ASSERT(n == sizeof(siginfo)); - - gotSignal(toRegularSiginfo(siginfo)); - -#ifdef SIGRTMIN - if (siginfo.ssi_signo >= SIGRTMIN) { - // This is an RT signal. There could be multiple copies queued. We need to remove it from - // the signalfd's signal mask before we continue, to avoid accidentally reading and - // discarding the extra copies. - // TODO(perf): If high throughput of RT signals is desired then perhaps we should read - // them all into userspace and queue them here. Maybe we even need a better interface - // than onSignal() for receiving high-volume RT signals. - KJ_SYSCALL(sigdelset(&signalFdSigset, siginfo.ssi_signo)); - KJ_SYSCALL(signalfd(signalFd, &signalFdSigset, SFD_NONBLOCK | SFD_CLOEXEC)); - } + switch (events[i].filter) { +#ifdef EVFILT_EXCEPT + case EVFILT_EXCEPT: #endif + case EVFILT_READ: + case EVFILT_WRITE: { + FdObserver* observer = reinterpret_cast(events[i].udata); + observer->fire(events[i]); + break; } - } else if (events[i].data.u64 == 1) { - // Someone called wake() from another thread. Consume the event. - uint64_t value; - ssize_t n; - KJ_NONBLOCKING_SYSCALL(n = read(eventFd, &value, sizeof(value))); - KJ_ASSERT(n < 0 || n == sizeof(value)); - // We were woken. Need to return true. - woken = true; - } else { - FdObserver* observer = reinterpret_cast(events[i].data.ptr); - observer->fire(events[i].events); + case EVFILT_SIGNAL: { + SignalPromiseAdapter* observer = reinterpret_cast(events[i].udata); + observer->tryConsumeSignal(); + break; + } + + case EVFILT_PROC: { + ChildExitPromiseAdapter* observer = + reinterpret_cast(events[i].udata); + observer->tryConsumeChild(); + break; + } + + case EVFILT_USER: + // Someone called wake() from another thread. + woken = true; + break; + + default: + KJ_FAIL_ASSERT("unexpected EVFILT", events[i].filter); } } @@ -653,7 +1128,24 @@ bool UnixEventPort::doEpollWait(int timeout) { return woken; } -#else // KJ_USE_EPOLL +bool UnixEventPort::wait() { + KJ_IF_MAYBE(t, timerImpl.timeoutToNextEvent(clock.now(), NANOSECONDS, int(maxValue))) { + struct timespec timeout; + timeout.tv_sec = *t / 1'000'000'000; + timeout.tv_nsec = *t % 1'000'000'000; + return doKqueueWait(&timeout); + } else { + return doKqueueWait(nullptr); + } +} + +bool UnixEventPort::poll() { + struct timespec timeout; + memset(&timeout, 0, sizeof(timeout)); + return doKqueueWait(&timeout); +} + +#else // KJ_USE_EPOLL, else KJ_USE_KQUEUE // ======================================================================================= // Traditional poll() FdObserver implementation. @@ -1089,7 +1581,7 @@ void UnixEventPort::wake() const { #endif } -#endif // KJ_USE_EPOLL, else +#endif // KJ_USE_EPOLL, else KJ_USE_KQUEUE, else } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-unix.h b/libs/EXTERNAL/capnproto/c++/src/kj/async-unix.h index 63fe92790f0..665305ea70c 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-unix.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-unix.h @@ -27,15 +27,24 @@ #include "async.h" #include "timer.h" -#include "vector.h" -#include "io.h" +#include +#include #include KJ_BEGIN_HEADER -#if __linux__ && !__BIONIC__ && !defined(KJ_USE_EPOLL) -// Default to epoll on Linux, except on Bionic (Android) which doesn't have signalfd.h. +#if !defined(KJ_USE_EPOLL) && !defined(KJ_USE_KQUEUE) +#if __linux__ +// Default to epoll on Linux. #define KJ_USE_EPOLL 1 +#elif __APPLE__ || __FreeBSD__ || __OpenBSD__ || __NetBSD__ || __DragonFly__ +// MacOS and BSDs prefer kqueue() for event notification. +#define KJ_USE_KQUEUE 1 +#endif +#endif + +#if KJ_USE_EPOLL && KJ_USE_KQUEUE +#error "Both KJ_USE_EPOLL and KJ_USE_KQUEUE are set. Please choose only one of these." #endif #if __CYGWIN__ && !defined(KJ_USE_PIPE_FOR_WAKEUP) @@ -46,6 +55,13 @@ KJ_BEGIN_HEADER #define KJ_USE_PIPE_FOR_WAKEUP 1 #endif +#if KJ_USE_EPOLL +struct epoll_event; +#elif KJ_USE_KQUEUE +struct kevent; +struct timespec; +#endif + namespace kj { class UnixEventPort: public EventPort { @@ -55,20 +71,26 @@ class UnixEventPort: public EventPort { // The implementation uses `poll()` or possibly a platform-specific API (e.g. epoll, kqueue). // To also wait on signals without race conditions, the implementation may block signals until // just before `poll()` while using a signal handler which `siglongjmp()`s back to just before - // the signal was unblocked, or it may use a nicer platform-specific API like signalfd. + // the signal was unblocked, or it may use a nicer platform-specific API. // // The implementation reserves a signal for internal use. By default, it uses SIGUSR1. If you // need to use SIGUSR1 for something else, you must offer a different signal by calling - // setReservedSignal() at startup. + // setReservedSignal() at startup. (On Linux, no signal is reserved; eventfd is used instead.) // // WARNING: A UnixEventPort can only be used in the thread and process that created it. In // particular, note that after a fork(), a UnixEventPort created in the parent process will // not work correctly in the child, even if the parent ceases to use its copy. In particular // note that this means that server processes which daemonize themselves at startup must wait // until after daemonization to create a UnixEventPort. + // + // TODO(cleanup): The above warning is no longer accurate -- daemonizing after creating a + // UnixEventPort should now work since we no longer use signalfd. But do we want to commit to + // keeping it that way? Note it's still unsafe to fork() and then use UnixEventPort from both + // processes! public: UnixEventPort(); + ~UnixEventPort() noexcept(false); class FdObserver; @@ -84,6 +106,15 @@ class UnixEventPort: public EventPort { // process-wide signal by only calling `onSignal()` on that thread's event loop. // // The result of waiting on the same signal twice at once is undefined. + // + // WARNING: On MacOS and iOS, `onSignal()` will only see process-level signals, NOT + // thread-specific signals (i.e. not those sent with pthread_kill()). This is a limitation of + // Apple's implemnetation of kqueue() introduced in MacOS 10.14 which Apple says is not a bug. + // See: https://github.com/libevent/libevent/issues/765 Consider using kj::Executor or + // kj::newPromiseAndCrossThreadFulfiller() for cross-thread communications instead of signals. + // If you must have signals, build KJ and your app with `-DKJ_USE_KQUEUE=0`, which will cause + // KJ to fall back to a generic poll()-based implementation that is less efficient but handles + // thread-specific signals. static void captureSignal(int signum); // Arranges for the given signal to be captured and handled via UnixEventPort, so that you may @@ -119,6 +150,14 @@ class UnixEventPort: public EventPort { // .then() continuation may not run immediately, we need a more precise way, hence we null out // the Maybe. // + // The caller must NOT null out `pid` on its own unless it cancels the Promise first. If the + // caller decides to cancel the Promise, and `pid` is still non-null after this cancellation, + // then the caller is expected to `waitpid()` on it BEFORE returning to the event loop again. + // Probably, the caller should kill() the child before waiting to avoid a hang. If the caller + // fails to do its own waitpid() before returning to the event loop, the child may become a + // zombie, or may be reaped automatically, depending on the platform -- since the caller does not + // know, the caller cannot try to reap the zombie later. + // // You must call `kj::UnixEventPort::captureChildExit()` early in your program if you want to use // `onChildExit()`. // @@ -151,24 +190,25 @@ class UnixEventPort: public EventPort { const MonotonicClock& clock; TimerImpl timerImpl; +#if !KJ_USE_KQUEUE SignalPromiseAdapter* signalHead = nullptr; SignalPromiseAdapter** signalTail = &signalHead; void gotSignal(const siginfo_t& siginfo); +#endif friend class TimerPromiseAdapter; #if KJ_USE_EPOLL + sigset_t originalMask; AutoCloseFd epollFd; - AutoCloseFd signalFd; AutoCloseFd eventFd; // Used for cross-thread wakeups. - sigset_t signalFdSigset; - // Signal mask as currently set on the signalFd. Tracked so we can detect whether or not it - // needs updating. - - bool doEpollWait(int timeout); + bool processEpollEvents(struct epoll_event events[], int n); +#elif KJ_USE_KQUEUE + AutoCloseFd kqueueFd; + bool doKqueueWait(struct timespec* timeout); #else class PollContext; @@ -183,11 +223,20 @@ class UnixEventPort: public EventPort { #endif #endif +#if !KJ_USE_KQUEUE struct ChildSet; Maybe> childSet; +#endif + + static void signalHandler(int, siginfo_t* siginfo, void*) noexcept; + static void registerSignalHandler(int signum); +#if !KJ_USE_EPOLL && !KJ_USE_KQUEUE && !KJ_USE_PIPE_FOR_WAKEUP + static void registerReservedSignal(); +#endif + static void ignoreSigpipe(); }; -class UnixEventPort::FdObserver { +class UnixEventPort::FdObserver: private AsyncObject { // Object which watches a file descriptor to determine when it is readable or writable. // // For listen sockets, "readable" means that there is a connection to accept(). For everything @@ -216,7 +265,7 @@ class UnixEventPort::FdObserver { ~FdObserver() noexcept(false); - KJ_DISALLOW_COPY(FdObserver); + KJ_DISALLOW_COPY_AND_MOVE(FdObserver); Promise whenBecomesReadable(); // Resolves the next time the file descriptor transitions from having no data to read to having @@ -287,7 +336,7 @@ class UnixEventPort::FdObserver { // has not yet resolved. If you do this, the previous promise may throw an exception. // // WARNING: This has some known weird behavior on macOS. See - // https://github.com/sandstorm-io/capnproto/issues/374. + // https://github.com/capnproto/capnproto/issues/374. Promise whenWriteDisconnected(); // Resolves when poll() on the file descriptor reports POLLHUP or POLLERR. @@ -306,7 +355,11 @@ class UnixEventPort::FdObserver { Maybe atEnd; +#if KJ_USE_KQUEUE + void fire(struct kevent event); +#else void fire(short events); +#endif #if !KJ_USE_EPOLL FdObserver* next; diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-win32.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-win32.c++ index ba0ee88b8e2..ed82e552065 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-win32.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-win32.c++ @@ -22,7 +22,7 @@ #if _WIN32 // Request Vista-level APIs. -#include "win32-api-version.h" +#include #include "async-win32.h" #include "debug.h" @@ -158,6 +158,11 @@ Own Win32IocpEventPort::observeSignalState(HANDL } bool Win32IocpEventPort::wait() { + // It's possible that a wake event was received and discarded during ~IoPromiseAdapter. We + // need to check for that now. Otherwise, calling waitIocp may cause it to hang forever. + if (receivedWake()) { + return true; + } waitIocp(timerImpl.timeoutToNextEvent(clock.now(), MILLISECONDS, INFINITE - 1) .map([](uint64_t t) -> DWORD { return t; }) .orDefault(INFINITE)); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-win32.h b/libs/EXTERNAL/capnproto/c++/src/kj/async-win32.h index 2085118c792..ddf4987a7a5 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-win32.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-win32.h @@ -27,7 +27,7 @@ // Include windows.h as lean as possible. (If you need more of the Windows API for your app, // #include windows.h yourself before including this header.) -#include "win32-api-version.h" +#include #include "async.h" #include "timer.h" @@ -36,7 +36,9 @@ #include #include -#include "windows-sanity.h" +#include + +KJ_BEGIN_HEADER namespace kj { @@ -118,7 +120,7 @@ class Win32EventPort: public EventPort { // Returns a promise that completes the next time the handle enters the signaled state. // // Depending on the type of handle, the handle may automatically be reset to a non-signaled - // state before the promise resolves. The underlying implementaiton uses WaitForSingleObject() + // state before the promise resolves. The underlying implementation uses WaitForSingleObject() // or an equivalent wait call, so check the documentation for that to understand the semantics. // // If the handle is a mutex and it is abandoned without being unlocked, the promise breaks with @@ -177,7 +179,7 @@ class Win32WaitObjectThreadPool { bool finishedMainThreadWait(DWORD returnCode); // Call immediately after invoking WaitForMultipleObjects() or similar in the main thread, - // passing the value returend by that call. Returns true if the event indicated by `returnCode` + // passing the value returned by that call. Returns true if the event indicated by `returnCode` // has been handled (i.e. it was WAIT_OBJECT_n or WAIT_ABANDONED_n where n is in-range for the // last call to prepareMainThreadWait()). }; @@ -227,3 +229,5 @@ class Win32IocpEventPort final: public Win32EventPort { }; } // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async-xthread-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-xthread-test.c++ index 7d6fa80d6e5..b6bd237e196 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async-xthread-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async-xthread-test.c++ @@ -99,7 +99,7 @@ KJ_TEST("synchonous simple cross-thread events") { })(); } -KJ_TEST("asynchonous simple cross-thread events") { +KJ_TEST("asynchronous simple cross-thread events") { MutexGuarded> executor; // to get the Executor from the other thread Own> fulfiller; // accessed only from the subthread thread_local bool isChild = false; // to assert which thread we're in @@ -210,7 +210,7 @@ KJ_TEST("synchonous promise cross-thread events") { })(); } -KJ_TEST("asynchonous promise cross-thread events") { +KJ_TEST("asynchronous promise cross-thread events") { MutexGuarded> executor; // to get the Executor from the other thread Own> fulfiller; // accessed only from the subthread Promise promise = nullptr; // accessed only from the subthread diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/async.c++ index 0d2db1a1f4e..7c76f1d5026 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async.c++ @@ -26,11 +26,11 @@ // so this check isn't appropriate for us. #if _WIN32 || __CYGWIN__ -#include "win32-api-version.h" +#include #elif __APPLE__ // getcontext() and friends are marked deprecated on MacOS but seemingly no replacement is // provided. It appears as if they deprecated it solely because the standards bodies deprecated it, -// which they seemingly did mainly because the proper sematics are too difficult for them to +// which they seemingly did mainly because the proper semantics are too difficult for them to // define. I doubt MacOS would actually remove these functions as they are widely used. But if they // do, then I guess we'll need to fall back to using setjmp()/longjmp(), and some sort of hack // involving sigaltstack() (and generating a fake signal I guess) in order to initialize the fiber @@ -48,10 +48,11 @@ #include "function.h" #include "list.h" #include +#include #if _WIN32 || __CYGWIN__ #include // for Sleep(0) and fibers -#include "windows-sanity.h" +#include #else #if KJ_USE_FIBERS @@ -77,12 +78,24 @@ #include +#if KJ_HAS_COMPILER_FEATURE(address_sanitizer) +// Clang's address sanitizer requires special hints when switching fibers, especially in order for +// stack-use-after-return handling to work right. +// +// TODO(someday): Does GCC's sanitizer, flagged by __SANITIZE_ADDRESS__, have these hints too? I +// don't know and am not in a position to test, so I'm assuming not for now. +#include +#else +// Nop the hints so that we don't have to put #ifdefs around every use. +#define __sanitizer_start_switch_fiber(...) +#define __sanitizer_finish_switch_fiber(...) +#endif + #if _MSC_VER && !__clang__ // MSVC's atomic intrinsics are weird and different, whereas the C++ standard atomics match the GCC // builtins -- except for requiring the obnoxious std::atomic wrapper. So, on MSVC let's just // #define the builtins based on the C++ library, reinterpret-casting native types to // std::atomic... this is cheating but ugh, whatever. -#include template static std::atomic* reinterpretAtomic(T* ptr) { return reinterpret_cast*>(ptr); } #define __atomic_store_n(ptr, val, order) \ @@ -103,6 +116,51 @@ namespace kj { namespace { +KJ_THREADLOCAL_PTR(DisallowAsyncDestructorsScope) disallowAsyncDestructorsScope = nullptr; + +} // namespace + +AsyncObject::~AsyncObject() { + if (disallowAsyncDestructorsScope != nullptr) { + // If we try to do the KJ_FAIL_REQUIRE here (declaring `~AsyncObject()` itself to be noexcept), + // it seems to have a non-negligible performance impact in the HTTP benchmark. My guess is that + // it's because it breaks inlining of `~AsyncObject()` into various subclass destructors that + // are defined inside this file, which are some of the biggest ones. By forcing the actual + // failure code out into a separate function we get a little performance boost. + failed(); + } +} + +void AsyncObject::failed() noexcept { + // Since the method is noexcept, this will abort the process. + KJ_FAIL_REQUIRE( + kj::str("KJ async object being destroyed when not allowed: ", + disallowAsyncDestructorsScope->reason)); +} + +DisallowAsyncDestructorsScope::DisallowAsyncDestructorsScope(kj::StringPtr reason) + : reason(reason), previousValue(disallowAsyncDestructorsScope) { + requireOnStack(this, "DisallowAsyncDestructorsScope must be allocated on the stack."); + disallowAsyncDestructorsScope = this; +} + +DisallowAsyncDestructorsScope::~DisallowAsyncDestructorsScope() { + disallowAsyncDestructorsScope = previousValue; +} + +AllowAsyncDestructorsScope::AllowAsyncDestructorsScope() + : previousValue(disallowAsyncDestructorsScope) { + requireOnStack(this, "AllowAsyncDestructorsScope must be allocated on the stack."); + disallowAsyncDestructorsScope = nullptr; +} +AllowAsyncDestructorsScope::~AllowAsyncDestructorsScope() { + disallowAsyncDestructorsScope = previousValue; +} + +// ======================================================================================= + +namespace { + KJ_THREADLOCAL_PTR(EventLoop) threadLocalEventLoop = nullptr; #define _kJ_ALREADY_READY reinterpret_cast< ::kj::_::Event*>(1) @@ -115,7 +173,8 @@ EventLoop& currentEventLoop() { class RootEvent: public _::Event { public: - RootEvent(_::PromiseNode* node, void* traceAddr): node(node), traceAddr(traceAddr) {} + RootEvent(_::PromiseNode* node, void* traceAddr, SourceLocation location) + : Event(location), node(node), traceAddr(traceAddr) {} bool fired = false; @@ -138,45 +197,6 @@ struct DummyFunctor { void operator()() {}; }; -class YieldPromiseNode final: public _::PromiseNode { -public: - void onReady(_::Event* event) noexcept override { - if (event) event->armBreadthFirst(); - } - void get(_::ExceptionOrValue& output) noexcept override { - output.as<_::Void>() = _::Void(); - } - void tracePromise(_::TraceBuilder& builder, bool stopAtNextEvent) override { - builder.add(reinterpret_cast(&kj::evalLater)); - } -}; - -class YieldHarderPromiseNode final: public _::PromiseNode { -public: - void onReady(_::Event* event) noexcept override { - if (event) event->armLast(); - } - void get(_::ExceptionOrValue& output) noexcept override { - output.as<_::Void>() = _::Void(); - } - void tracePromise(_::TraceBuilder& builder, bool stopAtNextEvent) override { - builder.add(reinterpret_cast(&kj::evalLast)); - } -}; - -class NeverDonePromiseNode final: public _::PromiseNode { -public: - void onReady(_::Event* event) noexcept override { - // ignore - } - void get(_::ExceptionOrValue& output) noexcept override { - KJ_FAIL_REQUIRE("Not ready."); - } - void tracePromise(_::TraceBuilder& builder, bool stopAtNextEvent) override { - builder.add(_::getMethodStartAddress(kj::NEVER_DONE, &_::NeverDone::wait)); - } -}; - } // namespace // ======================================================================================= @@ -261,19 +281,22 @@ void Canceler::AdapterImpl::cancel(kj::Exception&& e) { // ======================================================================================= -TaskSet::TaskSet(TaskSet::ErrorHandler& errorHandler) - : errorHandler(errorHandler) {} -class TaskSet::Task final: public _::Event { +TaskSet::TaskSet(TaskSet::ErrorHandler& errorHandler, SourceLocation location) + : errorHandler(errorHandler), location(location) {} + +class TaskSet::Task final: public _::PromiseArenaMember, public _::Event { public: - Task(TaskSet& taskSet, Own<_::PromiseNode>&& nodeParam) - : taskSet(taskSet), node(kj::mv(nodeParam)) { + Task(_::OwnPromiseNode&& nodeParam, TaskSet& taskSet) + : Event(taskSet.location), taskSet(taskSet), node(kj::mv(nodeParam)) { node->setSelfPointer(&node); node->onReady(this); } - Own pop() { + void destroy() override { freePromise(this); } + + OwnTask pop() { KJ_IF_MAYBE(n, next) { n->get()->prev = prev; } - Own self = kj::mv(KJ_ASSERT_NONNULL(*prev)); + OwnTask self = kj::mv(KJ_ASSERT_NONNULL(*prev)); KJ_ASSERT(self.get() == this); *prev = kj::mv(next); next = nullptr; @@ -281,8 +304,8 @@ public: return self; } - Maybe> next; - Maybe>* prev = nullptr; + Maybe next; + Maybe* prev = nullptr; kj::String trace() { void* space[32]; @@ -304,14 +327,12 @@ protected: result.addException(kj::mv(*exception)); } - // Call the error handler if there was an exception. - KJ_IF_MAYBE(e, result.exception) { - taskSet.errorHandler.taskFailed(kj::mv(*e)); - } - - // Remove from the task list. + // Remove from the task list. Do this before calling taskFailed(), so that taskFailed() can + // safely call clear(). auto self = pop(); + // We'll also process onEmpty() now, just in case `taskFailed()` actually destroys the whole + // `TaskSet`. KJ_IF_MAYBE(f, taskSet.emptyFulfiller) { if (taskSet.tasks == nullptr) { f->get()->fulfill(); @@ -319,7 +340,12 @@ protected: } } - return mv(self); + // Call the error handler if there was an exception. + KJ_IF_MAYBE(e, result.exception) { + taskSet.errorHandler.taskFailed(kj::mv(*e)); + } + + return Own(mv(self)); } void traceEvent(_::TraceBuilder& builder) override { @@ -330,7 +356,7 @@ protected: private: TaskSet& taskSet; - Own<_::PromiseNode> node; + _::OwnPromiseNode node; }; TaskSet::~TaskSet() noexcept(false) { @@ -344,7 +370,7 @@ TaskSet::~TaskSet() noexcept(false) { } void TaskSet::add(Promise&& promise) { - auto task = heap(*this, _::PromiseNode::from(kj::mv(promise))); + auto task = _::appendPromise(_::PromiseNode::from(kj::mv(promise)), *this); KJ_IF_MAYBE(head, tasks) { head->get()->prev = &task->next; task->next = kj::mv(tasks); @@ -356,7 +382,7 @@ void TaskSet::add(Promise&& promise) { kj::String TaskSet::trace() { kj::Vector traces; - Maybe>* ptr = &tasks; + Maybe* ptr = &tasks; for (;;) { KJ_IF_MAYBE(task, *ptr) { traces.add(task->get()->trace()); @@ -385,6 +411,14 @@ Promise TaskSet::onEmpty() { } } +void TaskSet::clear() { + tasks = nullptr; + + KJ_IF_MAYBE(fulfiller, emptyFulfiller) { + fulfiller->get()->fulfill(); + } +} + // ======================================================================================= namespace { @@ -844,8 +878,9 @@ struct Executor::Impl { namespace _ { // (private) XThreadEvent::XThreadEvent( - ExceptionOrValue& result, const Executor& targetExecutor, void* funcTracePtr) - : Event(targetExecutor.getLoop()), result(result), funcTracePtr(funcTracePtr), + ExceptionOrValue& result, const Executor& targetExecutor, EventLoop& loop, + void* funcTracePtr, SourceLocation location) + : Event(loop, location), result(result), funcTracePtr(funcTracePtr), targetExecutor(targetExecutor.addRef()) {} void XThreadEvent::tracePromise(TraceBuilder& builder, bool stopAtNextEvent) { @@ -1038,7 +1073,7 @@ void XThreadEvent::done() { lock->executing.remove(*this); break; case CANCELING: - // Sending thread requested cancelation, but we're done anyway, so it doesn't matter at this + // Sending thread requested cancellation, but we're done anyway, so it doesn't matter at this // point. lock->cancel.remove(*this); break; @@ -1120,36 +1155,33 @@ XThreadPaf::XThreadPaf() : state(WAITING), executor(getCurrentThreadExecutor()) {} XThreadPaf::~XThreadPaf() noexcept(false) {} -void XThreadPaf::Disposer::disposeImpl(void* pointer) const { - XThreadPaf* obj = reinterpret_cast(pointer); +void XThreadPaf::destroy() { auto oldState = WAITING; - if (__atomic_load_n(&obj->state, __ATOMIC_ACQUIRE) == DISPATCHED) { + if (__atomic_load_n(&state, __ATOMIC_ACQUIRE) == DISPATCHED) { // Common case: Promise was fully fulfilled and dispatched, no need for locking. - delete obj; - } else if (__atomic_compare_exchange_n(&obj->state, &oldState, CANCELED, false, + delete this; + } else if (__atomic_compare_exchange_n(&state, &oldState, CANCELED, false, __ATOMIC_ACQUIRE, __ATOMIC_ACQUIRE)) { // State transitioned from WAITING to CANCELED, so now it's the fulfiller's job to destroy the // object. } else { // Whoops, another thread is already in the process of fulfilling this promise. We'll have to // wait for it to finish and transition the state to FULFILLED. - obj->executor.impl->state.when([&](auto&) { - return obj->state == FULFILLED || obj->state == DISPATCHED; + executor.impl->state.when([&](auto&) { + return state == FULFILLED || state == DISPATCHED; }, [&](Executor::Impl::State& exState) { - if (obj->state == FULFILLED) { + if (state == FULFILLED) { // The object is on the queue but was not yet dispatched. Remove it. - exState.fulfilled.remove(*obj); + exState.fulfilled.remove(*this); } }); // It's ours now, delete it. - delete obj; + delete this; } } -const XThreadPaf::Disposer XThreadPaf::DISPOSER; - void XThreadPaf::onReady(Event* event) noexcept { onReadyEvent.init(event); } @@ -1328,43 +1360,70 @@ struct FiberStack::Impl { jmp_buf fiberJmpBuf; jmp_buf originalJmpBuf; +#if KJ_HAS_COMPILER_FEATURE(address_sanitizer) + // Stuff that we need to pass to __sanitizer_start_switch_fiber() / + // __sanitizer_finish_switch_fiber() when using ASAN. + + void* originalFakeStack = nullptr; + void* fiberFakeStack = nullptr; + // Pointer to ASAN "fake stack" associated with the fiber and its calling stack. Filled in by + // __sanitizer_start_switch_fiber() before switching away, consumed by + // __sanitizer_finish_switch_fiber() upon switching back. + + void const* originalBottom; + size_t originalSize; + // Size and location of the original stack before switching fibers. These are filled in by + // __sanitizer_finish_switch_fiber() after the switch, and must be passed to + // __sanitizer_start_switch_fiber() when switching back later. +#endif + static Impl* alloc(size_t stackSize, ucontext_t* context) { #ifndef MAP_ANONYMOUS #define MAP_ANONYMOUS MAP_ANON #endif -#ifndef MAP_STACK -#define MAP_STACK 0 -#endif - size_t pageSize = getPageSize(); - size_t allocSize = stackSize + pageSize; // size plus guard page + size_t allocSize = stackSize + pageSize; // size plus guard page and impl // Allocate virtual address space for the stack but make it inaccessible initially. // TODO(someday): Does it make sense to use MAP_GROWSDOWN on Linux? It's a kind of bizarre flag // that causes the mapping to automatically allocate extra pages (beyond the range specified) - // until it hits something... - void* stack = mmap(nullptr, allocSize, PROT_NONE, - MAP_ANONYMOUS | MAP_PRIVATE | MAP_STACK, -1, 0); - if (stack == MAP_FAILED) { + // until it hits something... Note that on FreeBSD, MAP_STACK has the effect that + // MAP_GROWSDOWN has on Linux. (MAP_STACK, meanwhile, has no effect on Linux.) + void* stackMapping = mmap(nullptr, allocSize, PROT_NONE, + MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); + if (stackMapping == MAP_FAILED) { KJ_FAIL_SYSCALL("mmap(new stack)", errno); } KJ_ON_SCOPE_FAILURE({ - KJ_SYSCALL(munmap(stack, allocSize)) { break; } + KJ_SYSCALL(munmap(stackMapping, allocSize)) { break; } }); + void* stack = reinterpret_cast(stackMapping) + pageSize; // Now mark everything except the guard page as read-write. We assume the stack grows down, so // the guard page is at the beginning. No modern architecture uses stacks that grow up. - KJ_SYSCALL(mprotect(reinterpret_cast(stack) + pageSize, - stackSize, PROT_READ | PROT_WRITE)); + KJ_SYSCALL(mprotect(stack, stackSize, PROT_READ | PROT_WRITE)); // Stick `Impl` at the top of the stack. - Impl* impl = (reinterpret_cast(reinterpret_cast(stack) + allocSize) - 1); + Impl* impl = (reinterpret_cast(reinterpret_cast(stack) + stackSize) - 1); // Note: mmap() allocates zero'd pages so we don't have to memset() anything here. KJ_SYSCALL(getcontext(context)); - context->uc_stack.ss_size = allocSize - sizeof(Impl); +#if __APPLE__ && __aarch64__ + // Per issue #1386, apple on arm64 zeros the entire configured stack. + // But this is redundant, since we just allocated the stack with mmap() which + // returns zero'd pages. Re-zeroing is both slow and results in prematurely + // allocating pages we may not need -- it's normal for stacks to rely heavily + // on lazy page allocation to avoid wasting memory. Instead, we lie: + // we allocate the full size, but tell the ucontext the stack is the last + // page only. This appears to work as no particular bounds checks or + // anything are set up based on what we say here. + context->uc_stack.ss_size = min(pageSize, stackSize) - sizeof(Impl); + context->uc_stack.ss_sp = reinterpret_cast(stack) + stackSize - min(pageSize, stackSize); +#else + context->uc_stack.ss_size = stackSize - sizeof(Impl); context->uc_stack.ss_sp = reinterpret_cast(stack); +#endif context->uc_stack.ss_flags = 0; // We don't use uc_link since our fiber start routine runs forever in a loop to allow for // reuse. When we're done with the fiber, we just destroy it, without switching to it's @@ -1385,7 +1444,7 @@ struct FiberStack::Impl { #ifndef _SC_PAGESIZE #define _SC_PAGESIZE _SC_PAGE_SIZE #endif - static size_t result = sysconf(_SC_PAGE_SIZE); + static size_t result = sysconf(_SC_PAGESIZE); return result; } }; @@ -1409,6 +1468,9 @@ struct FiberStack::StartRoutine { auto& stack = *reinterpret_cast(ptr); + __sanitizer_finish_switch_fiber(nullptr, + &stack.impl->originalBottom, &stack.impl->originalSize); + // We first switch to the fiber inside of the FiberStack constructor. This is just for // initialization purposes, and we're expected to switch back immediately. stack.switchToMain(); @@ -1464,9 +1526,11 @@ FiberStack::FiberStack(size_t stackSizeParam) makecontext(&context, reinterpret_cast(&StartRoutine::run), 2, arg1, arg2); + __sanitizer_start_switch_fiber(&impl->originalFakeStack, impl, stackSize - sizeof(Impl)); if (_setjmp(impl->originalJmpBuf) == 0) { setcontext(&context); } + __sanitizer_finish_switch_fiber(impl->originalFakeStack, nullptr, nullptr); #endif #else #if KJ_NO_EXCEPTIONS @@ -1501,14 +1565,14 @@ void FiberStack::initialize(SynchronousFunc& func) { this->main = &func; } -FiberBase::FiberBase(size_t stackSize, _::ExceptionOrValue& result) - : state(WAITING), stack(kj::heap(stackSize)), result(result) { +FiberBase::FiberBase(size_t stackSize, _::ExceptionOrValue& result, SourceLocation location) + : Event(location), state(WAITING), stack(kj::heap(stackSize)), result(result) { stack->initialize(*this); ensureThreadCanRunFibers(); } -FiberBase::FiberBase(const FiberPool& pool, _::ExceptionOrValue& result) - : state(WAITING), result(result) { +FiberBase::FiberBase(const FiberPool& pool, _::ExceptionOrValue& result, SourceLocation location) + : Event(location), state(WAITING), result(result) { stack = pool.impl->takeStack(); stack->initialize(*this); ensureThreadCanRunFibers(); @@ -1516,7 +1580,7 @@ FiberBase::FiberBase(const FiberPool& pool, _::ExceptionOrValue& result) FiberBase::~FiberBase() noexcept(false) {} -void FiberBase::destroy() { +void FiberBase::cancel() { // Called by `~Fiber()` to begin teardown. We can't do this work in `~FiberBase()` because the // `Fiber` subclass contains members that may still be in-use until the fiber stops. @@ -1538,7 +1602,7 @@ void FiberBase::destroy() { case RUNNING: case CANCELED: // Bad news. - KJ_LOG(FATAL, "fiber tried to destroy itself"); + KJ_LOG(FATAL, "fiber tried to cancel itself"); ::abort(); break; @@ -1563,9 +1627,11 @@ void FiberStack::switchToFiber() { #if _WIN32 || __CYGWIN__ SwitchToFiber(osFiber); #else + __sanitizer_start_switch_fiber(&impl->originalFakeStack, impl, stackSize - sizeof(Impl)); if (_setjmp(impl->originalJmpBuf) == 0) { _longjmp(impl->fiberJmpBuf, 1); } + __sanitizer_finish_switch_fiber(impl->originalFakeStack, nullptr, nullptr); #endif #endif } @@ -1576,9 +1642,21 @@ void FiberStack::switchToMain() { #if _WIN32 || __CYGWIN__ SwitchToFiber(getMainWin32Fiber()); #else + // TODO(someady): In theory, the last time we switch away from the fiber, we should pass `nullptr` + // for the first argument here, so that ASAN destroys the fake stack. However, as currently + // designed, we don't actually know if we're switching away for the last time. It's understood + // that when we call switchToMain() in FiberStack::run(), then the main stack is allowed to + // destroy the fiber, or reuse it. I don't want to develop a mechanism to switch back to the + // fiber on final destruction just to get the hints right, so instead we leak the fake stack. + // This doesn't seem to cause any problems -- it's not even detected by ASAN as a memory leak. + // But if we wanted to run ASAN builds in production or something, it might be an issue. + __sanitizer_start_switch_fiber(&impl->fiberFakeStack, + impl->originalBottom, impl->originalSize); if (_setjmp(impl->fiberJmpBuf) == 0) { _longjmp(impl->originalJmpBuf, 1); } + __sanitizer_finish_switch_fiber(impl->fiberFakeStack, + &impl->originalBottom, &impl->originalSize); #endif #endif } @@ -1795,16 +1873,19 @@ void EventLoop::poll() { } } -void WaitScope::poll() { +uint WaitScope::poll(uint maxTurnCount) { KJ_REQUIRE(&loop == threadLocalEventLoop, "WaitScope not valid for this thread."); KJ_REQUIRE(!loop.running, "poll() is not allowed from within event callbacks."); loop.running = true; KJ_DEFER(loop.running = false); + uint turnCount = 0; runOnStackPool([&]() { - for (;;) { - if (!loop.turn()) { + while (turnCount < maxTurnCount) { + if (loop.turn()) { + ++turnCount; + } else { // No events in the queue. Poll for I/O. loop.poll(); @@ -1815,6 +1896,7 @@ void WaitScope::poll() { } } }); + return turnCount; } void WaitScope::cancelAllDetached() { @@ -1838,7 +1920,8 @@ static kj::CanceledException fiberCanceledException() { }; #endif -void waitImpl(Own<_::PromiseNode>&& node, _::ExceptionOrValue& result, WaitScope& waitScope) { +void waitImpl(_::OwnPromiseNode&& node, _::ExceptionOrValue& result, WaitScope& waitScope, + SourceLocation location) { EventLoop& loop = waitScope.loop; KJ_REQUIRE(&loop == threadLocalEventLoop, "WaitScope not valid for this thread."); @@ -1873,7 +1956,7 @@ void waitImpl(Own<_::PromiseNode>&& node, _::ExceptionOrValue& result, WaitScope #endif KJ_REQUIRE(!loop.running, "wait() is not allowed from within event callbacks."); - RootEvent doneEvent(node, reinterpret_cast(&waitImpl)); + RootEvent doneEvent(node, reinterpret_cast(&waitImpl), location); node->setSelfPointer(&node); node->onReady(&doneEvent); @@ -1917,13 +2000,13 @@ void waitImpl(Own<_::PromiseNode>&& node, _::ExceptionOrValue& result, WaitScope }); } -bool pollImpl(_::PromiseNode& node, WaitScope& waitScope) { +bool pollImpl(_::PromiseNode& node, WaitScope& waitScope, SourceLocation location) { EventLoop& loop = waitScope.loop; KJ_REQUIRE(&loop == threadLocalEventLoop, "WaitScope not valid for this thread."); KJ_REQUIRE(waitScope.fiber == nullptr, "poll() is not supported in fibers."); KJ_REQUIRE(!loop.running, "poll() is not allowed from within event callbacks."); - RootEvent doneEvent(&node, reinterpret_cast(&pollImpl)); + RootEvent doneEvent(&node, reinterpret_cast(&pollImpl), location); node.onReady(&doneEvent); loop.running = true; @@ -1954,20 +2037,84 @@ bool pollImpl(_::PromiseNode& node, WaitScope& waitScope) { } Promise yield() { - return _::PromiseNode::to>(kj::heap()); + class YieldPromiseNode final: public _::PromiseNode { + public: + void destroy() override {} + + void onReady(_::Event* event) noexcept override { + if (event) event->armBreadthFirst(); + } + void get(_::ExceptionOrValue& output) noexcept override { + output.as<_::Void>() = _::Void(); + } + void tracePromise(_::TraceBuilder& builder, bool stopAtNextEvent) override { + builder.add(reinterpret_cast(&kj::evalLater)); + } + }; + + static YieldPromiseNode NODE; + return _::PromiseNode::to>(OwnPromiseNode(&NODE)); } Promise yieldHarder() { - return _::PromiseNode::to>(kj::heap()); + class YieldHarderPromiseNode final: public _::PromiseNode { + public: + void destroy() override {} + + void onReady(_::Event* event) noexcept override { + if (event) event->armLast(); + } + void get(_::ExceptionOrValue& output) noexcept override { + output.as<_::Void>() = _::Void(); + } + void tracePromise(_::TraceBuilder& builder, bool stopAtNextEvent) override { + builder.add(reinterpret_cast(&kj::evalLast)); + } + }; + + static YieldHarderPromiseNode NODE; + return _::PromiseNode::to>(OwnPromiseNode(&NODE)); +} + +OwnPromiseNode readyNow() { + class ReadyNowPromiseNode: public ImmediatePromiseNodeBase { + // This is like `ConstPromiseNode`, but the compiler won't let me pass a literal + // value of type `Void` as a template parameter. (Might require C++20?) + + public: + void destroy() override {} + void get(ExceptionOrValue& output) noexcept override { + output.as() = Void(); + } + }; + + static ReadyNowPromiseNode NODE; + return OwnPromiseNode(&NODE); } -Own neverDone() { - return kj::heap(); +OwnPromiseNode neverDone() { + class NeverDonePromiseNode final: public _::PromiseNode { + public: + void destroy() override {} + + void onReady(_::Event* event) noexcept override { + // ignore + } + void get(_::ExceptionOrValue& output) noexcept override { + KJ_FAIL_REQUIRE("Not ready."); + } + void tracePromise(_::TraceBuilder& builder, bool stopAtNextEvent) override { + builder.add(_::getMethodStartAddress(kj::NEVER_DONE, &_::NeverDone::wait)); + } + }; + + static NeverDonePromiseNode NODE; + return OwnPromiseNode(&NODE); } -void NeverDone::wait(WaitScope& waitScope) const { +void NeverDone::wait(WaitScope& waitScope, SourceLocation location) const { ExceptionOr dummy; - waitImpl(neverDone(), dummy, waitScope); + waitImpl(neverDone(), dummy, waitScope, location); KJ_UNREACHABLE; } @@ -1977,13 +2124,23 @@ void detach(kj::Promise&& promise) { loop.daemons->add(kj::mv(promise)); } -Event::Event() - : loop(currentEventLoop()), next(nullptr), prev(nullptr) {} +Event::Event(SourceLocation location) + : loop(currentEventLoop()), next(nullptr), prev(nullptr), location(location) {} -Event::Event(kj::EventLoop& loop) - : loop(loop), next(nullptr), prev(nullptr) {} +Event::Event(kj::EventLoop& loop, SourceLocation location) + : loop(loop), next(nullptr), prev(nullptr), location(location) {} Event::~Event() noexcept(false) { + live = 0; + + // Prevent compiler from eliding this store above. This line probably isn't needed because there + // are complex calls later in this destructor, and the compiler probably can't prove that they + // won't come back and examine `live`, so it won't elide the write anyway. However, an + // atomic_signal_fence is also sufficient to tell the compiler that a signal handler might access + // `live`, so it won't optimize away the write. Note that a signal fence does not produce + // any instructions, it just blocks compiler optimizations. + std::atomic_signal_fence(std::memory_order_acq_rel); + disarm(); KJ_REQUIRE(!firing, "Promise callback destroyed itself."); @@ -1993,6 +2150,11 @@ void Event::armDepthFirst() { KJ_REQUIRE(threadLocalEventLoop == &loop || threadLocalEventLoop == nullptr, "Event armed from different thread than it was created in. You must use " "Executor to queue events cross-thread."); + if (live != MAGIC_LIVE_VALUE) { + ([this]() noexcept { + KJ_FAIL_ASSERT("tried to arm Event after it was destroyed", location); + })(); + } if (prev == nullptr) { next = *loop.depthFirstInsertPoint; @@ -2019,6 +2181,11 @@ void Event::armBreadthFirst() { KJ_REQUIRE(threadLocalEventLoop == &loop || threadLocalEventLoop == nullptr, "Event armed from different thread than it was created in. You must use " "Executor to queue events cross-thread."); + if (live != MAGIC_LIVE_VALUE) { + ([this]() noexcept { + KJ_FAIL_ASSERT("tried to arm Event after it was destroyed", location); + })(); + } if (prev == nullptr) { next = *loop.breadthFirstInsertPoint; @@ -2042,6 +2209,11 @@ void Event::armLast() { KJ_REQUIRE(threadLocalEventLoop == &loop || threadLocalEventLoop == nullptr, "Event armed from different thread than it was created in. You must use " "Executor to queue events cross-thread."); + if (live != MAGIC_LIVE_VALUE) { + ([this]() noexcept { + KJ_FAIL_ASSERT("tried to arm Event after it was destroyed", location); + })(); + } if (prev == nullptr) { next = *loop.breadthFirstInsertPoint; @@ -2062,6 +2234,10 @@ void Event::armLast() { } } +bool Event::isNext() { + return loop.running && loop.head == this; +} + void Event::disarm() { if (prev != nullptr) { if (threadLocalEventLoop != &loop && threadLocalEventLoop != nullptr) { @@ -2132,7 +2308,7 @@ kj::String PromiseBase::trace() { return kj::str(builder); } -void PromiseNode::setSelfPointer(Own* selfPtr) noexcept {} +void PromiseNode::setSelfPointer(OwnPromiseNode* selfPtr) noexcept {} void PromiseNode::OnReadyEvent::init(Event* newEvent) { if (event == _kJ_ALREADY_READY) { @@ -2187,13 +2363,15 @@ void ImmediatePromiseNodeBase::tracePromise(TraceBuilder& builder, bool stopAtNe ImmediateBrokenPromiseNode::ImmediateBrokenPromiseNode(Exception&& exception) : exception(kj::mv(exception)) {} +void ImmediateBrokenPromiseNode::destroy() { freePromise(this); } + void ImmediateBrokenPromiseNode::get(ExceptionOrValue& output) noexcept { output.exception = kj::mv(exception); } // ------------------------------------------------------------------- -AttachmentPromiseNodeBase::AttachmentPromiseNodeBase(Own&& dependencyParam) +AttachmentPromiseNodeBase::AttachmentPromiseNodeBase(OwnPromiseNode&& dependencyParam) : dependency(kj::mv(dependencyParam)) { dependency->setSelfPointer(&dependency); } @@ -2220,7 +2398,7 @@ void AttachmentPromiseNodeBase::dropDependency() { // ------------------------------------------------------------------- TransformPromiseNodeBase::TransformPromiseNodeBase( - Own&& dependencyParam, void* continuationTracePtr) + OwnPromiseNode&& dependencyParam, void* continuationTracePtr) : dependency(kj::mv(dependencyParam)), continuationTracePtr(continuationTracePtr) { dependency->setSelfPointer(&dependency); } @@ -2268,7 +2446,7 @@ void TransformPromiseNodeBase::getDepResult(ExceptionOrValue& output) { // ------------------------------------------------------------------- -ForkBranchBase::ForkBranchBase(Own&& hubParam): hub(kj::mv(hubParam)) { +ForkBranchBase::ForkBranchBase(OwnForkHubBase&& hubParam): hub(kj::mv(hubParam)) { if (hub->tailBranch == nullptr) { onReadyEvent.arm(); } else { @@ -2317,8 +2495,9 @@ void ForkBranchBase::tracePromise(TraceBuilder& builder, bool stopAtNextEvent) { // ------------------------------------------------------------------- -ForkHubBase::ForkHubBase(Own&& innerParam, ExceptionOrValue& resultRef) - : inner(kj::mv(innerParam)), resultRef(resultRef) { +ForkHubBase::ForkHubBase(OwnPromiseNode&& innerParam, ExceptionOrValue& resultRef, + SourceLocation location) + : Event(location), inner(kj::mv(innerParam)), resultRef(resultRef) { inner->setSelfPointer(&inner); inner->onReady(this); } @@ -2358,14 +2537,16 @@ void ForkHubBase::traceEvent(TraceBuilder& builder) { // ------------------------------------------------------------------- -ChainPromiseNode::ChainPromiseNode(Own innerParam) - : state(STEP1), inner(kj::mv(innerParam)) { +ChainPromiseNode::ChainPromiseNode(OwnPromiseNode innerParam, SourceLocation location) + : Event(location), state(STEP1), inner(kj::mv(innerParam)) { inner->setSelfPointer(&inner); inner->onReady(this); } ChainPromiseNode::~ChainPromiseNode() noexcept(false) {} +void ChainPromiseNode::destroy() { freePromise(this); } + void ChainPromiseNode::onReady(Event* event) noexcept { switch (state) { case STEP1: @@ -2378,7 +2559,7 @@ void ChainPromiseNode::onReady(Event* event) noexcept { KJ_UNREACHABLE; } -void ChainPromiseNode::setSelfPointer(Own* selfPtr) noexcept { +void ChainPromiseNode::setSelfPointer(OwnPromiseNode* selfPtr) noexcept { if (state == STEP2) { *selfPtr = kj::mv(inner); // deletes this! selfPtr->get()->setSelfPointer(selfPtr); @@ -2422,7 +2603,7 @@ Maybe> ChainPromiseNode::fire() { // There is an exception. If there is also a value, delete it. kj::runCatchingExceptions([&]() { intermediate.value = nullptr; }); // Now set step2 to a rejected promise. - inner = heap(kj::mv(*exception)); + inner = allocPromise(kj::mv(*exception)); } else KJ_IF_MAYBE(value, intermediate.value) { // There is a value and no exception. The value is itself a promise. Adopt it as our // step2. @@ -2444,7 +2625,7 @@ Maybe> ChainPromiseNode::fire() { } // Return our self-pointer so that the caller takes care of deleting it. - return Own(kj::mv(chain)); + return Own(kj::Own(kj::mv(chain))); } else { inner->setSelfPointer(&inner); if (onReadyEvent != nullptr) { @@ -2476,11 +2657,14 @@ void ChainPromiseNode::traceEvent(TraceBuilder& builder) { // ------------------------------------------------------------------- -ExclusiveJoinPromiseNode::ExclusiveJoinPromiseNode(Own left, Own right) - : left(*this, kj::mv(left)), right(*this, kj::mv(right)) {} +ExclusiveJoinPromiseNode::ExclusiveJoinPromiseNode( + OwnPromiseNode left, OwnPromiseNode right, SourceLocation location) + : left(*this, kj::mv(left), location), right(*this, kj::mv(right), location) {} ExclusiveJoinPromiseNode::~ExclusiveJoinPromiseNode() noexcept(false) {} +void ExclusiveJoinPromiseNode::destroy() { freePromise(this); } + void ExclusiveJoinPromiseNode::onReady(Event* event) noexcept { onReadyEvent.init(event); } @@ -2504,8 +2688,8 @@ void ExclusiveJoinPromiseNode::tracePromise(TraceBuilder& builder, bool stopAtNe } ExclusiveJoinPromiseNode::Branch::Branch( - ExclusiveJoinPromiseNode& joinNode, Own dependencyParam) - : joinNode(joinNode), dependency(kj::mv(dependencyParam)) { + ExclusiveJoinPromiseNode& joinNode, OwnPromiseNode dependencyParam, SourceLocation location) + : Event(location), joinNode(joinNode), dependency(kj::mv(dependencyParam)) { dependency->setSelfPointer(&dependency); dependency->onReady(this); } @@ -2548,14 +2732,15 @@ void ExclusiveJoinPromiseNode::Branch::traceEvent(TraceBuilder& builder) { // ------------------------------------------------------------------- ArrayJoinPromiseNodeBase::ArrayJoinPromiseNodeBase( - Array> promises, ExceptionOrValue* resultParts, size_t partSize) - : countLeft(promises.size()) { + Array promises, ExceptionOrValue* resultParts, size_t partSize, + SourceLocation location, ArrayJoinBehavior joinBehavior) + : joinBehavior(joinBehavior), countLeft(promises.size()) { // Make the branches. auto builder = heapArrayBuilder(promises.size()); for (uint i: indices(promises)) { ExceptionOrValue& output = *reinterpret_cast( reinterpret_cast(resultParts) + i * partSize); - builder.add(*this, kj::mv(promises[i]), output); + builder.add(*this, kj::mv(promises[i]), output, location); } branches = builder.finish(); @@ -2570,13 +2755,21 @@ void ArrayJoinPromiseNodeBase::onReady(Event* event) noexcept { } void ArrayJoinPromiseNodeBase::get(ExceptionOrValue& output) noexcept { - // If any of the elements threw exceptions, propagate them. for (auto& branch: branches) { - KJ_IF_MAYBE(exception, branch.getPart()) { + if (joinBehavior == ArrayJoinBehavior::LAZY) { + // This implements `joinPromises()`'s lazy evaluation semantics. + branch.dependency->get(branch.output); + } + + // If any of the elements threw exceptions, propagate them. + KJ_IF_MAYBE(exception, branch.output.exception) { output.addException(kj::mv(*exception)); } } + // We either failed fast, or waited for all promises. + KJ_DASSERT(countLeft == 0 || output.exception != nullptr); + if (output.exception == nullptr) { // No errors. The template subclass will need to fill in the result. getNoError(output); @@ -2596,8 +2789,9 @@ void ArrayJoinPromiseNodeBase::tracePromise(TraceBuilder& builder, bool stopAtNe } ArrayJoinPromiseNodeBase::Branch::Branch( - ArrayJoinPromiseNodeBase& joinNode, Own dependencyParam, ExceptionOrValue& output) - : joinNode(joinNode), dependency(kj::mv(dependencyParam)), output(output) { + ArrayJoinPromiseNodeBase& joinNode, OwnPromiseNode dependencyParam, ExceptionOrValue& output, + SourceLocation location) + : Event(location), joinNode(joinNode), dependency(kj::mv(dependencyParam)), output(output) { dependency->setSelfPointer(&dependency); dependency->onReady(this); } @@ -2605,9 +2799,20 @@ ArrayJoinPromiseNodeBase::Branch::Branch( ArrayJoinPromiseNodeBase::Branch::~Branch() noexcept(false) {} Maybe> ArrayJoinPromiseNodeBase::Branch::fire() { - if (--joinNode.countLeft == 0) { + if (--joinNode.countLeft == 0 && !joinNode.armed) { joinNode.onReadyEvent.arm(); + joinNode.armed = true; + } + + if (joinNode.joinBehavior == ArrayJoinBehavior::EAGER) { + // This implements `joinPromisesFailFast()`'s eager-evaluation semantics. + dependency->get(output); + if (output.exception != nullptr && !joinNode.armed) { + joinNode.onReadyEvent.arm(); + joinNode.armed = true; + } } + return nullptr; } @@ -2616,28 +2821,35 @@ void ArrayJoinPromiseNodeBase::Branch::traceEvent(TraceBuilder& builder) { joinNode.onReadyEvent.traceEvent(builder); } -Maybe ArrayJoinPromiseNodeBase::Branch::getPart() { - dependency->get(output); - return kj::mv(output.exception); -} - ArrayJoinPromiseNode::ArrayJoinPromiseNode( - Array> promises, Array> resultParts) - : ArrayJoinPromiseNodeBase(kj::mv(promises), resultParts.begin(), sizeof(ExceptionOr<_::Void>)), + Array promises, Array> resultParts, + SourceLocation location, ArrayJoinBehavior joinBehavior) + : ArrayJoinPromiseNodeBase(kj::mv(promises), resultParts.begin(), sizeof(ExceptionOr<_::Void>), + location, joinBehavior), resultParts(kj::mv(resultParts)) {} ArrayJoinPromiseNode::~ArrayJoinPromiseNode() {} +void ArrayJoinPromiseNode::destroy() { freePromise(this); } + void ArrayJoinPromiseNode::getNoError(ExceptionOrValue& output) noexcept { output.as<_::Void>() = _::Void(); } } // namespace _ (private) -Promise joinPromises(Array>&& promises) { - return _::PromiseNode::to>(kj::heap<_::ArrayJoinPromiseNode>( +Promise joinPromises(Array>&& promises, SourceLocation location) { + return _::PromiseNode::to>(_::allocPromise<_::ArrayJoinPromiseNode>( KJ_MAP(p, promises) { return _::PromiseNode::from(kj::mv(p)); }, - heapArray<_::ExceptionOr<_::Void>>(promises.size()))); + heapArray<_::ExceptionOr<_::Void>>(promises.size()), location, + _::ArrayJoinBehavior::LAZY)); +} + +Promise joinPromisesFailFast(Array>&& promises, SourceLocation location) { + return _::PromiseNode::to>(_::allocPromise<_::ArrayJoinPromiseNode>( + KJ_MAP(p, promises) { return _::PromiseNode::from(kj::mv(p)); }, + heapArray<_::ExceptionOr<_::Void>>(promises.size()), location, + _::ArrayJoinBehavior::EAGER)); } namespace _ { // (private) @@ -2645,8 +2857,8 @@ namespace _ { // (private) // ------------------------------------------------------------------- EagerPromiseNodeBase::EagerPromiseNodeBase( - Own&& dependencyParam, ExceptionOrValue& resultRef) - : dependency(kj::mv(dependencyParam)), resultRef(resultRef) { + OwnPromiseNode&& dependencyParam, ExceptionOrValue& resultRef, SourceLocation location) + : Event(location), dependency(kj::mv(dependencyParam)), resultRef(resultRef) { dependency->setSelfPointer(&dependency); dependency->onReady(this); } @@ -2727,4 +2939,218 @@ namespace _ { // (private) Promise IdentityFunc>::operator()() const { return READY_NOW; } } // namespace _ (private) + +// ------------------------------------------------------------------- + +#if KJ_HAS_COROUTINE + +namespace _ { // (private) + +CoroutineBase::CoroutineBase(stdcoro::coroutine_handle<> coroutine, ExceptionOrValue& resultRef, + SourceLocation location) + : Event(location), + coroutine(coroutine), + resultRef(resultRef) {} +CoroutineBase::~CoroutineBase() noexcept(false) { + readMaybe(maybeDisposalResults)->destructorRan = true; +} + +void CoroutineBase::unhandled_exception() { + // Pretty self-explanatory, we propagate the exception to the promise which owns us, unless + // we're being destroyed, in which case we propagate it back to our disposer. Note that all + // unhandled exceptions end up here, not just ones after the first co_await. + + auto exception = getCaughtExceptionAsKj(); + + KJ_IF_MAYBE(disposalResults, maybeDisposalResults) { + // Exception during coroutine destruction. Only record the first one. + if (disposalResults->exception == nullptr) { + disposalResults->exception = kj::mv(exception); + } + } else if (isWaiting()) { + // Exception during coroutine execution. + resultRef.addException(kj::mv(exception)); + scheduleResumption(); + } else { + // Okay, what could this mean? We've already been fulfilled or rejected, but we aren't being + // destroyed yet. The only possibility is that we are unwinding the coroutine frame due to a + // successful completion, and something in the frame threw. We can't already be rejected, + // because rejecting a coroutine involves throwing, which would have unwound the frame prior + // to setting `waiting = false`. + // + // Since we know we're unwinding due to a successful completion, we also know that whatever + // Event we may have armed has not yet fired, because we haven't had a chance to return to + // the event loop. + + // final_suspend() has not been called. +#if _MSC_VER && !defined(__clang__) + // See comment at `finalSuspendCalled`'s definition. + KJ_IASSERT(!finalSuspendCalled); +#else + KJ_IASSERT(!coroutine.done()); +#endif + + // Since final_suspend() hasn't been called, whatever Event is waiting on us has not fired, + // and will see this exception. + resultRef.addException(kj::mv(exception)); + } +} + +void CoroutineBase::onReady(Event* event) noexcept { + onReadyEvent.init(event); +} + +void CoroutineBase::tracePromise(TraceBuilder& builder, bool stopAtNextEvent) { + if (stopAtNextEvent) return; + + KJ_IF_MAYBE(promise, promiseNodeForTrace) { + promise->tracePromise(builder, stopAtNextEvent); + } + + // Maybe returning the address of coroutine() will give us a function name with meaningful type + // information. (Narrator: It doesn't.) + builder.add(GetFunctorStartAddress<>::apply(coroutine)); +}; + +Maybe> CoroutineBase::fire() { + // Call Awaiter::await_resume() and proceed with the coroutine. Note that this will not destroy + // the coroutine if control flows off the end of it, because we return suspend_always() from + // final_suspend(). + // + // It's tempting to arrange to check for exceptions right now and reject the promise that owns + // us without resuming the coroutine, which would save us from throwing an exception when we + // already know where it's going. But, we don't really know: unlike in the KJ_NO_EXCEPTIONS + // case, the `co_await` might be in a try-catch block, so we have no choice but to resume and + // throw later. + // + // TODO(someday): If we ever support coroutines with -fno-exceptions, we'll need to reject the + // enclosing coroutine promise here, if the Awaiter's result is exceptional. + + promiseNodeForTrace = nullptr; + + coroutine.resume(); + + return nullptr; +} + +void CoroutineBase::traceEvent(TraceBuilder& builder) { + KJ_IF_MAYBE(promise, promiseNodeForTrace) { + promise->tracePromise(builder, true); + } + + // Maybe returning the address of coroutine() will give us a function name with meaningful type + // information. (Narrator: It doesn't.) + builder.add(GetFunctorStartAddress<>::apply(coroutine)); + + onReadyEvent.traceEvent(builder); +} + +void CoroutineBase::destroy() { + // Called by PromiseDisposer to delete the object. Basically a wrapper around coroutine.destroy() + // with some stuff to propagate exceptions appropriately. + + // Objects in the coroutine frame might throw from their destructors, so unhandled_exception() + // will need some way to communicate those exceptions back to us. Separately, we also want + // confirmation that our own ~Coroutine() destructor ran. To solve this, we put a + // DisposalResults object on the stack and set a pointer to it in the Coroutine object. This + // indicates to unhandled_exception() and ~Coroutine() where to store the results of the + // destruction operation. + DisposalResults disposalResults; + maybeDisposalResults = &disposalResults; + + // Need to save this while `unwindDetector` is still valid. + bool shouldRethrow = !unwindDetector.isUnwinding(); + + do { + // Clang's implementation of the Coroutines TS does not destroy the Coroutine object or + // deallocate the coroutine frame if a destructor of an object on the frame threw an + // exception. This is despite the fact that it delivered the exception to _us_ via + // unhandled_exception(). Anyway, it appears we can work around this by running + // coroutine.destroy() a second time. + // + // On Clang, `disposalResults.exception != nullptr` implies `!disposalResults.destructorRan`. + // We could optimize out the separate `destructorRan` flag if we verify that other compilers + // behave the same way. + coroutine.destroy(); + } while (!disposalResults.destructorRan); + + // WARNING: `this` is now a dangling pointer. + + KJ_IF_MAYBE(exception, disposalResults.exception) { + if (shouldRethrow) { + kj::throwFatalException(kj::mv(*exception)); + } else { + // An exception is already unwinding the stack, so throwing this secondary exception would + // call std::terminate(). + } + } +} + +CoroutineBase::AwaiterBase::AwaiterBase(OwnPromiseNode node): node(kj::mv(node)) {} +CoroutineBase::AwaiterBase::AwaiterBase(AwaiterBase&&) = default; +CoroutineBase::AwaiterBase::~AwaiterBase() noexcept(false) { + // Make sure it's safe to generate an async stack trace between now and when the Coroutine is + // destroyed. + KJ_IF_MAYBE(coroutineEvent, maybeCoroutineEvent) { + coroutineEvent->promiseNodeForTrace = nullptr; + } + + unwindDetector.catchExceptionsIfUnwinding([this]() { + // No need to check for a moved-from state, node will just ignore the nullification. + node = nullptr; + }); +} + +void CoroutineBase::AwaiterBase::getImpl(ExceptionOrValue& result, void* awaitedAt) { + node->get(result); + + KJ_IF_MAYBE(exception, result.exception) { + // Manually extend the stack trace with the instruction address where the co_await occurred. + exception->addTrace(awaitedAt); + + // Pass kj::maxValue for ignoreCount here so that `throwFatalException()` dosen't try to + // extend the stack trace. There's no point in extending the trace beyond the single frame we + // added above, as the rest of the trace will always be async framework stuff that no one wants + // to see. + kj::throwFatalException(kj::mv(*exception), kj::maxValue); + } +} + +bool CoroutineBase::AwaiterBase::awaitSuspendImpl(CoroutineBase& coroutineEvent) { + node->setSelfPointer(&node); + node->onReady(&coroutineEvent); + + if (coroutineEvent.hasSuspendedAtLeastOnce && coroutineEvent.isNext()) { + // The result is immediately ready and this coroutine is running on the event loop's stack, not + // a user code stack. Let's cancel our event and immediately resume. It's important that we + // don't perform this optimization if this is the first suspension, because our caller may + // depend on running code before this promise's continuations fire. + coroutineEvent.disarm(); + + // We can resume ourselves by returning false. This accomplishes the same thing as if we had + // returned true from await_ready(). + return false; + } else { + // Otherwise, we must suspend. Store a reference to the promise we're waiting on for tracing + // purposes; coroutineEvent.fire() and/or ~Adapter() will null this out. + coroutineEvent.promiseNodeForTrace = *node; + maybeCoroutineEvent = coroutineEvent; + + coroutineEvent.hasSuspendedAtLeastOnce = true; + + return true; + } +} + +// --------------------------------------------------------- +// Helpers for coCapture() + +void throwMultipleCoCaptureInvocations() { + KJ_FAIL_REQUIRE("Attempted to invoke CaptureForCoroutine functor multiple times"); +} + +} // namespace _ (private) + +#endif // KJ_HAS_COROUTINE + } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/async.h b/libs/EXTERNAL/capnproto/c++/src/kj/async.h index d6e503a724f..564b5171549 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/async.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/async.h @@ -22,8 +22,8 @@ #pragma once #include "async-prelude.h" -#include "exception.h" -#include "refcount.h" +#include +#include KJ_BEGIN_HEADER @@ -63,6 +63,57 @@ using PromiseForResult = _::ReducePromises<_::ReturnType>; // T. If T is void, then the promise is for the result of calling Func with no arguments. If // Func itself returns a promise, the promises are joined, so you never get Promise>. +// ======================================================================================= + +class AsyncObject { + // You may optionally inherit privately from this to indicate that the type is a KJ async object, + // meaning it deals with KJ async I/O making it tied to a specific thread and event loop. This + // enables some additional debug checks, but does not otherwise have any effect on behavior as + // long as there are no bugs. + // + // (We prefer inheritance rather than composition here because inheriting an empty type adds zero + // size to the derived class.) + +public: + ~AsyncObject(); + +private: + KJ_NORETURN(static void failed() noexcept); +}; + +class DisallowAsyncDestructorsScope { + // Create this type on the stack in order to specify that during its scope, no KJ async objects + // should be destroyed. If AsyncObject's destructor is called in this scope, the process will + // crash with std::terminate(). + // + // This is useful as a sort of "sanitizer" to catch bugs. When tearing down an object that is + // intended to be passed between threads, you can set up one of these scopes to catch whether + // the object contains any async objects, which are not legal to pass across threads. + +public: + explicit DisallowAsyncDestructorsScope(kj::StringPtr reason); + ~DisallowAsyncDestructorsScope(); + KJ_DISALLOW_COPY_AND_MOVE(DisallowAsyncDestructorsScope); + +private: + kj::StringPtr reason; + DisallowAsyncDestructorsScope* previousValue; + + friend class AsyncObject; +}; + +class AllowAsyncDestructorsScope { + // Negates the effect of DisallowAsyncDestructorsScope. + +public: + AllowAsyncDestructorsScope(); + ~AllowAsyncDestructorsScope(); + KJ_DISALLOW_COPY_AND_MOVE(AllowAsyncDestructorsScope); + +private: + DisallowAsyncDestructorsScope* previousValue; +}; + // ======================================================================================= // Promises @@ -150,8 +201,8 @@ class Promise: protected _::PromiseBase { inline Promise(decltype(nullptr)) {} template - PromiseForResult then(Func&& func, ErrorFunc&& errorHandler = _::PropagateException()) - KJ_WARN_UNUSED_RESULT; + PromiseForResult then(Func&& func, ErrorFunc&& errorHandler = _::PropagateException(), + SourceLocation location = {}) KJ_WARN_UNUSED_RESULT; // Register a continuation function to be executed when the promise completes. The continuation // (`func`) takes the promised value (an rvalue of type `T`) as its parameter. The continuation // may return a new value; `then()` itself returns a promise for the continuation's eventual @@ -212,11 +263,11 @@ class Promise: protected _::PromiseBase { // You must still wait on the returned promise if you want the task to execute. template - Promise catch_(ErrorFunc&& errorHandler) KJ_WARN_UNUSED_RESULT; + Promise catch_(ErrorFunc&& errorHandler, SourceLocation location = {}) KJ_WARN_UNUSED_RESULT; // Equivalent to `.then(identityFunc, errorHandler)`, where `identifyFunc` is a function that // just returns its input. - T wait(WaitScope& waitScope); + T wait(WaitScope& waitScope, SourceLocation location = {}); // Run the event loop until the promise is fulfilled, then return its result. If the promise // is rejected, throw an exception. // @@ -256,7 +307,7 @@ class Promise: protected _::PromiseBase { // switches back to the main stack in order to run the event loop, returning to the fiber's stack // once the awaited promise resolves. - bool poll(WaitScope& waitScope); + bool poll(WaitScope& waitScope, SourceLocation location = {}); // Returns true if a call to wait() would complete without blocking, false if it would block. // // If the promise is not yet resolved, poll() will pump the event loop and poll for I/O in an @@ -271,19 +322,19 @@ class Promise: protected _::PromiseBase { // // poll() is not supported in fibers; it will throw an exception. - ForkedPromise fork() KJ_WARN_UNUSED_RESULT; + ForkedPromise fork(SourceLocation location = {}) KJ_WARN_UNUSED_RESULT; // Forks the promise, so that multiple different clients can independently wait on the result. // `T` must be copy-constructable for this to work. Or, in the special case where `T` is // `Own`, `U` must have a method `Own addRef()` which returns a new reference to the same // (or an equivalent) object (probably implemented via reference counting). - _::SplitTuplePromise split(); + _::SplitTuplePromise split(SourceLocation location = {}); // Split a promise for a tuple into a tuple of promises. // // E.g. if you have `Promise>`, `split()` returns // `kj::Tuple, Promise>`. - Promise exclusiveJoin(Promise&& other) KJ_WARN_UNUSED_RESULT; + Promise exclusiveJoin(Promise&& other, SourceLocation location = {}) KJ_WARN_UNUSED_RESULT; // Return a new promise that resolves when either the original promise resolves or `other` // resolves (whichever comes first). The promise that didn't resolve first is canceled. @@ -298,8 +349,9 @@ class Promise: protected _::PromiseBase { // runs -- after calling then(), use attach() to add necessary objects to the result. template - Promise eagerlyEvaluate(ErrorFunc&& errorHandler) KJ_WARN_UNUSED_RESULT; - Promise eagerlyEvaluate(decltype(nullptr)) KJ_WARN_UNUSED_RESULT; + Promise eagerlyEvaluate(ErrorFunc&& errorHandler, SourceLocation location = {}) + KJ_WARN_UNUSED_RESULT; + Promise eagerlyEvaluate(decltype(nullptr), SourceLocation location = {}) KJ_WARN_UNUSED_RESULT; // Force eager evaluation of this promise. Use this if you are going to hold on to the promise // for awhile without consuming the result, but you want to make sure that the system actually // processes it. @@ -328,7 +380,7 @@ class Promise: protected _::PromiseBase { // This method does NOT consume the promise as other methods do. private: - Promise(bool, Own<_::PromiseNode>&& node): PromiseBase(kj::mv(node)) {} + Promise(bool, _::OwnPromiseNode&& node): PromiseBase(kj::mv(node)) {} // Second parameter prevent ambiguity with immediate-value constructor. friend class _::PromiseNode; @@ -357,7 +409,7 @@ class ForkedPromise { friend class EventLoop; }; -constexpr _::Void READY_NOW = _::Void(); +constexpr _::ReadyNow READY_NOW = _::ReadyNow(); // Use this when you need a Promise that is already fulfilled -- this value can be implicitly // cast to `Promise`. @@ -366,6 +418,11 @@ constexpr _::NeverDone NEVER_DONE = _::NeverDone(); // implicitly converted to any promise type. You may also call `NEVER_DONE.wait()` to wait // forever (useful for servers). +template +Promise constPromise(); +// Construct a Promise which resolves to the given constant value. This function is equivalent to +// `Promise(value)` except that it avoids an allocation. + template PromiseForResult evalLater(Func&& func) KJ_WARN_UNUSED_RESULT; // Schedule for the given zero-parameter function to be executed in the event loop at some @@ -424,7 +481,8 @@ PromiseForResult retryOnDisconnect(Func&& func) KJ_WARN_UNUSED_RESUL // with the retry logic added. template -PromiseForResult startFiber(size_t stackSize, Func&& func) KJ_WARN_UNUSED_RESULT; +PromiseForResult startFiber( + size_t stackSize, Func&& func, SourceLocation location = {}) KJ_WARN_UNUSED_RESULT; // Executes `func()` in a fiber, returning a promise for the eventual reseult. `func()` will be // passed a `WaitScope&` as its parameter, allowing it to call `.wait()` on promises. Thus, `func()` // can be written in a synchronous, blocking style, instead of using `.then()`. This is often much @@ -450,7 +508,7 @@ class FiberPool final { public: explicit FiberPool(size_t stackSize); ~FiberPool() noexcept(false); - KJ_DISALLOW_COPY(FiberPool); + KJ_DISALLOW_COPY_AND_MOVE(FiberPool); void setMaxFreelist(size_t count); // Set the maximum number of stacks to add to the freelist. If the freelist is full, stacks will @@ -463,7 +521,8 @@ class FiberPool final { // feature is only supported on Linux (the flag has no effect on other operating systems). template - PromiseForResult startFiber(Func&& func) const KJ_WARN_UNUSED_RESULT; + PromiseForResult startFiber( + Func&& func, SourceLocation location = {}) const KJ_WARN_UNUSED_RESULT; // Executes `func()` in a fiber from this pool, returning a promise for the eventual result. // `func()` will be passed a `WaitScope&` as its parameter, allowing it to call `.wait()` on // promises. Thus, `func()` can be written in a synchronous, blocking style, instead of @@ -496,8 +555,19 @@ class FiberPool final { }; template -Promise> joinPromises(Array>&& promises); -// Join an array of promises into a promise for an array. +Promise> joinPromises(Array>&& promises, SourceLocation location = {}); +// Join an array of promises into a promise for an array. Trailing continuations on promises are not +// evaluated until all promises have settled. Exceptions are propagated only after the last promise +// has settled. +// +// TODO(cleanup): It is likely that `joinPromisesFailFast()` is what everyone should be using. +// Deprecate this function. + +template +Promise> joinPromisesFailFast(Array>&& promises, SourceLocation location = {}); +// Join an array of promises into a promise for an array. Trailing continuations on promises are +// evaluated eagerly. If any promise results in an exception, the exception is immediately +// propagated to the returned join promise. // ======================================================================================= // Hack for creating a lambda that holds an owned pointer. @@ -519,6 +589,10 @@ class CaptureByMove { MovedParam param; }; +template +inline CaptureByMove> mvCapture(MovedParam&& param, Func&& func) + KJ_DEPRECATED("Use C++14 generalized captures instead."); + template inline CaptureByMove> mvCapture(MovedParam&& param, Func&& func) { // Hack to create a "lambda" which captures a variable by moving it rather than copying or @@ -534,10 +608,121 @@ inline CaptureByMove> mvCapture(MovedParam&& param, Func return CaptureByMove>(kj::fwd(func), kj::mv(param)); } +// ======================================================================================= +// Hack for safely using a lambda as a coroutine. + +#if KJ_HAS_COROUTINE + +namespace _ { + +void throwMultipleCoCaptureInvocations(); + +template +struct CaptureForCoroutine { + kj::Maybe maybeFunctor; + + explicit CaptureForCoroutine(Functor&& f) : maybeFunctor(kj::mv(f)) {} + + template + static auto coInvoke(Functor functor, Args&&... args) + -> decltype(functor(kj::fwd(args)...)) { + // Since the functor is now in the local scope and no longer a member variable, it will be + // persisted in the coroutine state. + + // Note that `co_await functor(...)` can still return `void`. It just happens that + // `co_return voidReturn();` is explicitly allowed. + co_return co_await functor(kj::fwd(args)...); + } + + template + auto operator()(Args&&... args) { + if (maybeFunctor == nullptr) { + throwMultipleCoCaptureInvocations(); + } + auto localFunctor = kj::mv(*kj::_::readMaybe(maybeFunctor)); + maybeFunctor = nullptr; + return coInvoke(kj::mv(localFunctor), kj::fwd(args)...); + } +}; + +} // namespace _ + +template +auto coCapture(Functor&& f) { + // Assuming `f()` returns a Promise `p`, wrap `f` in such a way that it will outlive its + // returned Promise. Note that the returned object may only be invoked once. + // + // This function is meant to help address this pain point with functors that return a coroutine: + // https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rcoro-capture + // + // The two most common patterns where this may be useful look like so: + // ``` + // void addTask(Value myValue) { + // auto myFun = [myValue]() -> kj::Promise { + // ... + // co_return; + // }; + // tasks.add(myFun()); + // } + // ``` + // and + // ``` + // kj::Promise afterPromise(kj::Promise promise, Value myValue) { + // auto myFun = [myValue]() -> kj::Promise { + // ... + // co_return; + // }; + // return promise.then(kj::mv(myFun)); + // } + // ``` + // + // Note that there are potentially more optimal alternatives to both of these patterns: + // ``` + // void addTask(Value myValue) { + // auto myFun = [](auto myValue) -> kj::Promise { + // ... + // co_return; + // }; + // tasks.add(myFun(myValue)); + // } + // ``` + // and + // ``` + // kj::Promise afterPromise(kj::Promise promise, Value myValue) { + // auto myFun = [&]() -> kj::Promise { + // ... + // co_return; + // }; + // co_await promise; + // co_await myFun(); + // co_return; + // } + // ``` + // + // For situations where you are trying to capture a specific local variable, kj::mvCapture() can + // also be useful: + // ``` + // kj::Promise reactToPromise(kj::Promise promise) { + // BigA a; + // TinyB b; + // + // doSomething(a, b); + // return promise.then(kj::mvCapture(b, [](TinyB b, MyType type) -> kj::Promise { + // ... + // co_return; + // }); + // } + // ``` + + return _::CaptureForCoroutine(kj::mv(f)); +} + +#endif // KJ_HAS_COROUTINE + // ======================================================================================= // Advanced promise construction -class PromiseRejector { +class PromiseRejector: private AsyncObject { // Superclass of PromiseFulfiller containing the non-typed methods. Useful when you only really // need to be able to reject a promise, and you need to operate on fulfillers of different types. public: @@ -613,7 +798,7 @@ struct PromiseFulfillerPair { }; template -PromiseFulfillerPair newPromiseAndFulfiller(); +PromiseFulfillerPair newPromiseAndFulfiller(SourceLocation location = {}); // Construct a Promise and a separate PromiseFulfiller which can be used to fulfill the promise. // If the PromiseFulfiller is destroyed before either of its methods are called, the Promise is // implicitly rejected. @@ -678,7 +863,7 @@ PromiseCrossThreadFulfillerPair newPromiseAndCrossThreadFulfiller(); // ======================================================================================= // Canceler -class Canceler { +class Canceler: private AsyncObject { // A Canceler can wrap some set of Promises and then forcefully cancel them on-demand, or // implicitly when the Canceler is destroyed. // @@ -692,7 +877,7 @@ class Canceler { // Canceler and using it to wrap promises before returning them to callers. When Bob is // destroyed, the Canceler is destroyed too, and all promises Bob wrapped with it throw errors. // - // Note that another common strategy for cancelation is to use exclusiveJoin() to join a promise + // Note that another common strategy for cancellation is to use exclusiveJoin() to join a promise // with some "cancellation promise" which only resolves if the operation should be canceled. The // cancellation promise could itself be created by newPromiseAndFulfiller(), and thus // calling the PromiseFulfiller cancels the operation. There is a major problem with this @@ -704,7 +889,7 @@ class Canceler { public: inline Canceler() {} ~Canceler() noexcept(false); - KJ_DISALLOW_COPY(Canceler); + KJ_DISALLOW_COPY_AND_MOVE(Canceler); template Promise wrap(Promise promise) { @@ -783,7 +968,7 @@ class Canceler::AdapterImpl: public AdapterBase { // ======================================================================================= // TaskSet -class TaskSet { +class TaskSet: private AsyncObject { // Holds a collection of Promises and ensures that each executes to completion. Memory // associated with each promise is automatically freed when the promise completes. Destroying // the TaskSet itself automatically cancels all unfinished promises. @@ -791,7 +976,7 @@ class TaskSet { // This is useful for "daemon" objects that perform background tasks which aren't intended to // fulfill any particular external promise, but which may need to be canceled (and thus can't // use `Promise::detach()`). The daemon object holds a TaskSet to collect these tasks it is - // working on. This way, if the daemon itself is destroyed, the TaskSet is detroyed as well, + // working on. This way, if the daemon itself is destroyed, the TaskSet is destroyed as well, // and everything the daemon is doing is canceled. public: @@ -800,7 +985,7 @@ class TaskSet { virtual void taskFailed(kj::Exception&& exception) = 0; }; - TaskSet(ErrorHandler& errorHandler); + TaskSet(ErrorHandler& errorHandler, SourceLocation location = {}); // `errorHandler` will be executed any time a task throws an exception, and will execute within // the given EventLoop. @@ -818,12 +1003,23 @@ class TaskSet { // Returns a promise that fulfills the next time the TaskSet is empty. Only one such promise can // exist at a time. + void clear(); + // Cancel all tasks. + // + // As always, it is not safe to cancel the task that is currently running, so you could not call + // this from inside a task in the TaskSet. However, it IS safe to call this from the + // `taskFailed()` callback. + // + // Calling this will always trigger onEmpty(), if anyone is listening. + private: class Task; + using OwnTask = Own; TaskSet::ErrorHandler& errorHandler; - Maybe> tasks; + Maybe tasks; Maybe>> emptyFulfiller; + SourceLocation location; }; // ======================================================================================= @@ -865,7 +1061,7 @@ class Executor { // for "try" versions... template - PromiseForResult executeAsync(Func&& func) const; + PromiseForResult executeAsync(Func&& func, SourceLocation location = {}) const; // Call from any thread to request that the given function be executed on the executor's thread, // returning a promise for the result. // @@ -907,7 +1103,8 @@ class Executor { // call provides E-Order in the same way as Cap'n Proto.) template - _::UnwrapPromise> executeSync(Func&& func) const; + _::UnwrapPromise> executeSync( + Func&& func, SourceLocation location = {}) const; // Schedules `func()` to execute on the executor thread, and then blocks the requesting thread // until `func()` completes. If `func()` returns a Promise, then the wait will continue until // that promise resolves, and the final result will be returned to the requesting thread. @@ -1084,9 +1281,9 @@ class EventLoop { void poll(); friend void _::detach(kj::Promise&& promise); - friend void _::waitImpl(Own<_::PromiseNode>&& node, _::ExceptionOrValue& result, - WaitScope& waitScope); - friend bool _::pollImpl(_::PromiseNode& node, WaitScope& waitScope); + friend void _::waitImpl(_::OwnPromiseNode&& node, _::ExceptionOrValue& result, + WaitScope& waitScope, SourceLocation location); + friend bool _::pollImpl(_::PromiseNode& node, WaitScope& waitScope, SourceLocation location); friend class _::Event; friend class WaitScope; friend class Executor; @@ -1109,10 +1306,12 @@ class WaitScope { public: inline explicit WaitScope(EventLoop& loop): loop(loop) { loop.enterScope(); } inline ~WaitScope() { if (fiber == nullptr) loop.leaveScope(); } - KJ_DISALLOW_COPY(WaitScope); + KJ_DISALLOW_COPY_AND_MOVE(WaitScope); - void poll(); - // Pumps the event queue and polls for I/O until there's nothing left to do (without blocking). + uint poll(uint maxTurnCount = maxValue); + // Pumps the event queue and polls for I/O until there's nothing left to do (without blocking) or + // the maximum turn count has been reached. Returns the number of events popped off the event + // queue. // // Not supported in fibers. @@ -1172,9 +1371,9 @@ class WaitScope { friend class EventLoop; friend class _::FiberBase; - friend void _::waitImpl(Own<_::PromiseNode>&& node, _::ExceptionOrValue& result, - WaitScope& waitScope); - friend bool _::pollImpl(_::PromiseNode& node, WaitScope& waitScope); + friend void _::waitImpl(_::OwnPromiseNode&& node, _::ExceptionOrValue& result, + WaitScope& waitScope, SourceLocation location); + friend bool _::pollImpl(_::PromiseNode& node, WaitScope& waitScope, SourceLocation location); }; } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/cidr.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/cidr.c++ new file mode 100644 index 00000000000..6a1fa32e40e --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/kj/cidr.c++ @@ -0,0 +1,179 @@ +// Copyright (c) 2013-2017 Sandstorm Development Group, Inc. and contributors +// Licensed under the MIT License: +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#if _WIN32 +// Request Vista-level APIs. +#include +#endif + +#include "debug.h" +#include "cidr.h" + +#if _WIN32 +#include +#include +#include +#include +#define inet_pton InetPtonA +#define inet_ntop InetNtopA +#include +#define dup _dup +#else +#include +#include +#endif + +#if __FreeBSD__ +#include +#endif + +namespace kj { + +CidrRange::CidrRange(StringPtr pattern) { + size_t slashPos = KJ_REQUIRE_NONNULL(pattern.findFirst('/'), "invalid CIDR", pattern); + + bitCount = pattern.slice(slashPos + 1).parseAs(); + + KJ_STACK_ARRAY(char, addr, slashPos + 1, 128, 128); + memcpy(addr.begin(), pattern.begin(), slashPos); + addr[slashPos] = '\0'; + + if (pattern.findFirst(':') == nullptr) { + family = AF_INET; + KJ_REQUIRE(bitCount <= 32, "invalid CIDR", pattern); + } else { + family = AF_INET6; + KJ_REQUIRE(bitCount <= 128, "invalid CIDR", pattern); + } + + KJ_ASSERT(inet_pton(family, addr.begin(), bits) > 0, "invalid CIDR", pattern); + zeroIrrelevantBits(); +} + +CidrRange::CidrRange(int family, ArrayPtr bits, uint bitCount) + : family(family), bitCount(bitCount) { + if (family == AF_INET) { + KJ_REQUIRE(bitCount <= 32); + } else { + KJ_REQUIRE(bitCount <= 128); + } + KJ_REQUIRE(bits.size() * 8 >= bitCount); + size_t byteCount = (bitCount + 7) / 8; + memcpy(this->bits, bits.begin(), byteCount); + memset(this->bits + byteCount, 0, sizeof(this->bits) - byteCount); + + zeroIrrelevantBits(); +} + +CidrRange CidrRange::inet4(ArrayPtr bits, uint bitCount) { + return CidrRange(AF_INET, bits, bitCount); +} +CidrRange CidrRange::inet6( + ArrayPtr prefix, ArrayPtr suffix, + uint bitCount) { + KJ_REQUIRE(prefix.size() + suffix.size() <= 8); + + byte bits[16] = { 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, }; + + for (size_t i: kj::indices(prefix)) { + bits[i * 2] = prefix[i] >> 8; + bits[i * 2 + 1] = prefix[i] & 0xff; + } + + byte* suffixBits = bits + (16 - suffix.size() * 2); + for (size_t i: kj::indices(suffix)) { + suffixBits[i * 2] = suffix[i] >> 8; + suffixBits[i * 2 + 1] = suffix[i] & 0xff; + } + + return CidrRange(AF_INET6, bits, bitCount); +} + +bool CidrRange::matches(const struct sockaddr* addr) const { + const byte* otherBits; + + switch (family) { + case AF_INET: + if (addr->sa_family == AF_INET6) { + otherBits = reinterpret_cast(addr)->sin6_addr.s6_addr; + static constexpr byte V6MAPPED[12] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xff }; + if (memcmp(otherBits, V6MAPPED, sizeof(V6MAPPED)) == 0) { + // We're an ipv4 range and the address is ipv6, but it's a "v6 mapped" address, meaning + // it's equivalent to an ipv4 address. Try to match against the ipv4 part. + otherBits = otherBits + sizeof(V6MAPPED); + } else { + return false; + } + } else if (addr->sa_family == AF_INET) { + otherBits = reinterpret_cast( + &reinterpret_cast(addr)->sin_addr.s_addr); + } else { + return false; + } + + break; + + case AF_INET6: + if (addr->sa_family != AF_INET6) return false; + + otherBits = reinterpret_cast(addr)->sin6_addr.s6_addr; + break; + + default: + KJ_UNREACHABLE; + } + + if (memcmp(bits, otherBits, bitCount / 8) != 0) return false; + + return bitCount == 128 || + bits[bitCount / 8] == (otherBits[bitCount / 8] & (0xff00 >> (bitCount % 8))); +} + +bool CidrRange::matchesFamily(int family) const { + switch (family) { + case AF_INET: + return this->family == AF_INET; + case AF_INET6: + // Even if we're a v4 CIDR, we can match v6 addresses in the v4-mapped range. + return true; + default: + return false; + } +} + +String CidrRange::toString() const { + char result[128]; + KJ_ASSERT(inet_ntop(family, (void*)bits, result, sizeof(result)) == result); + return kj::str(result, '/', bitCount); +} + +void CidrRange::zeroIrrelevantBits() { + // Mask out insignificant bits of partial byte. + if (bitCount < 128) { + bits[bitCount / 8] &= 0xff00 >> (bitCount % 8); + + // Zero the remaining bytes. + size_t n = bitCount / 8 + 1; + memset(bits + n, 0, sizeof(bits) - n); + } +} + +} // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/cidr.h b/libs/EXTERNAL/capnproto/c++/src/kj/cidr.h new file mode 100644 index 00000000000..b334ecc7d4c --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/kj/cidr.h @@ -0,0 +1,62 @@ + +// Copyright (c) 2013-2014 Sandstorm Development Group, Inc. and contributors +// Licensed under the MIT License: +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#pragma once + +#include "common.h" +#include + +KJ_BEGIN_HEADER + +struct sockaddr; + +namespace kj { + +class CidrRange { +public: + CidrRange(StringPtr pattern); + + static CidrRange inet4(ArrayPtr bits, uint bitCount); + static CidrRange inet6(ArrayPtr prefix, ArrayPtr suffix, + uint bitCount); + // Zeros are inserted between `prefix` and `suffix` to extend the address to 128 bits. + + uint getSpecificity() const { return bitCount; } + + bool matches(const struct sockaddr* addr) const; + bool matchesFamily(int family) const; + + String toString() const; + +private: + int family; + byte bits[16]; + uint bitCount; // how many bits in `bits` need to match + + CidrRange(int family, ArrayPtr bits, uint bitCount); + + void zeroIrrelevantBits(); +}; + +} // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/common-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/common-test.c++ index 0924d41dabc..9785612562b 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/common-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/common-test.c++ @@ -47,7 +47,7 @@ struct ImplicitToInt { struct Immovable { Immovable() = default; - KJ_DISALLOW_COPY(Immovable); + KJ_DISALLOW_COPY_AND_MOVE(Immovable); }; struct CopyOrMove { @@ -97,6 +97,43 @@ TEST(Common, Maybe) { } } + { + Maybe> m = kj::heap(123); + EXPECT_FALSE(m == nullptr); + EXPECT_TRUE(m != nullptr); + KJ_IF_MAYBE(v, m) { + EXPECT_EQ(123, (*v)->i); + } else { + ADD_FAILURE(); + } + KJ_IF_MAYBE(v, mv(m)) { + EXPECT_EQ(123, (*v)->i); + } else { + ADD_FAILURE(); + } + // We have moved the kj::Own away, so this should give us the default and leave the Maybe empty. + EXPECT_EQ(456, m.orDefault(heap(456))->i); + EXPECT_TRUE(m == nullptr); + + bool ranLazy = false; + EXPECT_EQ(123, mv(m).orDefault([&] { + ranLazy = true; + return heap(123); + })->i); + EXPECT_TRUE(ranLazy); + EXPECT_TRUE(m == nullptr); + + m = heap(123); + EXPECT_TRUE(m != nullptr); + ranLazy = false; + EXPECT_EQ(123, mv(m).orDefault([&] { + ranLazy = true; + return heap(456); + })->i); + EXPECT_FALSE(ranLazy); + EXPECT_TRUE(m == nullptr); + } + { Maybe empty; int defaultValue = 5; @@ -418,9 +455,99 @@ TEST(Common, MaybeConstness) { } } +#if __GNUC__ +TEST(Common, MaybeUnwrapOrReturn) { + { + auto func = [](Maybe i) -> int { + int& j = KJ_UNWRAP_OR_RETURN(i, -1); + KJ_EXPECT(&j == &KJ_ASSERT_NONNULL(i)); + return j + 2; + }; + + KJ_EXPECT(func(123) == 125); + KJ_EXPECT(func(nullptr) == -1); + } + + { + auto func = [&](Maybe maybe) -> int { + String str = KJ_UNWRAP_OR_RETURN(kj::mv(maybe), -1); + return str.parseAs(); + }; + + KJ_EXPECT(func(kj::str("123")) == 123); + KJ_EXPECT(func(nullptr) == -1); + } + + // Test void return. + { + int val = 0; + auto func = [&](Maybe i) { + val = KJ_UNWRAP_OR_RETURN(i); + }; + + func(123); + KJ_EXPECT(val == 123); + val = 321; + func(nullptr); + KJ_EXPECT(val == 321); + } + + // Test KJ_UNWRAP_OR + { + bool wasNull = false; + auto func = [&](Maybe i) -> int { + int& j = KJ_UNWRAP_OR(i, { + wasNull = true; + return -1; + }); + KJ_EXPECT(&j == &KJ_ASSERT_NONNULL(i)); + return j + 2; + }; + + KJ_EXPECT(func(123) == 125); + KJ_EXPECT(!wasNull); + KJ_EXPECT(func(nullptr) == -1); + KJ_EXPECT(wasNull); + } + + { + bool wasNull = false; + auto func = [&](Maybe maybe) -> int { + String str = KJ_UNWRAP_OR(kj::mv(maybe), { + wasNull = true; + return -1; + }); + return str.parseAs(); + }; + + KJ_EXPECT(func(kj::str("123")) == 123); + KJ_EXPECT(!wasNull); + KJ_EXPECT(func(nullptr) == -1); + KJ_EXPECT(wasNull); + } + + // Test void return. + { + int val = 0; + auto func = [&](Maybe i) { + val = KJ_UNWRAP_OR(i, { + return; + }); + }; + + func(123); + KJ_EXPECT(val == 123); + val = 321; + func(nullptr); + KJ_EXPECT(val == 321); + } + +} +#endif + class Foo { public: - KJ_DISALLOW_COPY(Foo); + KJ_DISALLOW_COPY_AND_MOVE(Foo); virtual ~Foo() {} protected: Foo() = default; @@ -429,14 +556,14 @@ protected: class Bar: public Foo { public: Bar() = default; - KJ_DISALLOW_COPY(Bar); + KJ_DISALLOW_COPY_AND_MOVE(Bar); virtual ~Bar() {} }; class Baz: public Foo { public: Baz() = delete; - KJ_DISALLOW_COPY(Baz); + KJ_DISALLOW_COPY_AND_MOVE(Baz); virtual ~Baz() {} }; @@ -684,6 +811,10 @@ KJ_TEST("ArrayPtr operator ==") { ArrayPtr({"foo", "baz"}))); KJ_EXPECT((ArrayPtr({"foo", "bar"}) != ArrayPtr({"foo"}))); + + // operator== should not use memcmp for double elements. + double d[1] = { nan() }; + KJ_EXPECT(ArrayPtr(d, 1) != ArrayPtr(d, 1)); } KJ_TEST("kj::range()") { @@ -701,31 +832,97 @@ KJ_TEST("kj::range()") { } KJ_TEST("kj::defer()") { - bool executed; + { + // rvalue reference + bool executed = false; + { + auto deferred = kj::defer([&executed]() { + executed = true; + }); + KJ_EXPECT(!executed); + } + + KJ_EXPECT(executed); + } - // rvalue reference { - executed = false; - auto deferred = kj::defer([&executed]() { + // lvalue reference + bool executed = false; + auto executor = [&executed]() { executed = true; - }); - KJ_EXPECT(!executed); - } + }; - KJ_EXPECT(executed); + { + auto deferred = kj::defer(executor); + KJ_EXPECT(!executed); + } - // lvalue reference - auto executor = [&executed]() { - executed = true; - }; + KJ_EXPECT(executed); + } { - executed = false; - auto deferred = kj::defer(executor); + // Cancellation via `cancel()`. + bool executed = false; + { + auto deferred = kj::defer([&executed]() { + executed = true; + }); + KJ_EXPECT(!executed); + + // Cancel and release the functor. + deferred.cancel(); + KJ_EXPECT(!executed); + } + KJ_EXPECT(!executed); } - KJ_EXPECT(executed); + { + // Execution via `run()`. + size_t runCount = 0; + { + auto deferred = kj::defer([&runCount](){ + ++runCount; + }); + + // Run and release the functor. + deferred.run(); + KJ_EXPECT(runCount == 1); + } + + // `deferred` is already been run, so nothing is run when we destruct it. + KJ_EXPECT(runCount == 1); + } + +} + +KJ_TEST("kj::ArrayPtr startsWith / endsWith / findFirst / findLast") { + // Note: char-/byte- optimized versions are covered by string-test.c++. + + int rawArray[] = {12, 34, 56, 34, 12}; + ArrayPtr arr(rawArray); + + KJ_EXPECT(arr.startsWith({12, 34})); + KJ_EXPECT(arr.startsWith({12, 34, 56})); + KJ_EXPECT(!arr.startsWith({12, 34, 56, 78})); + KJ_EXPECT(arr.startsWith({12, 34, 56, 34, 12})); + KJ_EXPECT(!arr.startsWith({12, 34, 56, 34, 12, 12})); + + KJ_EXPECT(arr.endsWith({34, 12})); + KJ_EXPECT(arr.endsWith({56, 34, 12})); + KJ_EXPECT(!arr.endsWith({78, 56, 34, 12})); + KJ_EXPECT(arr.endsWith({12, 34, 56, 34, 12})); + KJ_EXPECT(!arr.endsWith({12, 12, 34, 56, 34, 12})); + + KJ_EXPECT(arr.findFirst(12).orDefault(100) == 0); + KJ_EXPECT(arr.findFirst(34).orDefault(100) == 1); + KJ_EXPECT(arr.findFirst(56).orDefault(100) == 2); + KJ_EXPECT(arr.findFirst(78).orDefault(100) == 100); + + KJ_EXPECT(arr.findLast(12).orDefault(100) == 4); + KJ_EXPECT(arr.findLast(34).orDefault(100) == 3); + KJ_EXPECT(arr.findLast(56).orDefault(100) == 2); + KJ_EXPECT(arr.findLast(78).orDefault(100) == 100); } } // namespace diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/common.h b/libs/EXTERNAL/capnproto/c++/src/kj/common.h index 2caba972f5f..42ecbbce61e 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/common.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/common.h @@ -60,12 +60,18 @@ #define KJ_HAS_COMPILER_FEATURE(x) 0 #endif +#if defined(_MSVC_LANG) && !defined(__clang__) +#define KJ_CPP_STD _MSVC_LANG +#else +#define KJ_CPP_STD __cplusplus +#endif + KJ_BEGIN_HEADER #ifndef KJ_NO_COMPILER_CHECK // Technically, __cplusplus should be 201402L for C++14, but GCC 4.9 -- which is supported -- still // had it defined to 201300L even with -std=c++14. -#if __cplusplus < 201300L && !__CDT_PARSER__ && !_MSC_VER +#if KJ_CPP_STD < 201300L && !__CDT_PARSER__ #error "This code requires C++14. Either your compiler does not support it or it is not enabled." #ifdef __GNUC__ // Compiler claims compatibility with GCC, so presumably supports -std. @@ -77,7 +83,7 @@ KJ_BEGIN_HEADER #if __clang__ #if __clang_major__ < 5 #warning "This library requires at least Clang 5.0." - #elif __cplusplus >= 201402L && !__has_include() + #elif KJ_CPP_STD >= 201402L && !__has_include() #warning "Your compiler supports C++14 but your C++ standard library does not. If your "\ "system has libc++ installed (as should be the case on e.g. Mac OSX), try adding "\ "-stdlib=libc++ to your CXXFLAGS." @@ -99,9 +105,11 @@ KJ_BEGIN_HEADER #endif #include +#include #include +#include -#if __linux__ && __cplusplus > 201200L +#if __linux__ && KJ_CPP_STD > 201200L // Hack around stdlib bug with C++14 that exists on some Linux systems. // Apparently in this mode the C library decides not to define gets() but the C++ library still // tries to import it into the std namespace. This bug has been fixed at the source but is still @@ -109,10 +117,19 @@ KJ_BEGIN_HEADER #undef _GLIBCXX_HAVE_GETS #endif -#if defined(_MSC_VER) +#if _WIN32 +// Windows likes to define macros for min() and max(). We just can't deal with this. +// If windows.h was included already, undef these. +#undef min +#undef max +// If windows.h was not included yet, define the macro that prevents min() and max() from being +// defined. #ifndef NOMINMAX #define NOMINMAX 1 #endif +#endif + +#if defined(_MSC_VER) #include // __popcnt #endif @@ -174,7 +191,22 @@ typedef unsigned char byte; #define KJ_DISALLOW_COPY(classname) \ classname(const classname&) = delete; \ classname& operator=(const classname&) = delete -// Deletes the implicit copy constructor and assignment operator. +// Deletes the implicit copy constructor and assignment operator. This inhibits the compiler from +// generating the implicit move constructor and assignment operator for this class, but allows the +// code author to supply them, if they make sense to implement. +// +// This macro should not be your first choice. Instead, prefer using KJ_DISALLOW_COPY_AND_MOVE, and only use +// this macro when you have determined that you must implement move semantics for your type. + +#define KJ_DISALLOW_COPY_AND_MOVE(classname) \ + classname(const classname&) = delete; \ + classname& operator=(const classname&) = delete; \ + classname(classname&&) = delete; \ + classname& operator=(classname&&) = delete +// Deletes the implicit copy and move constructors and assignment operators. This is useful in cases +// where the code author wants to provide an additional compile-time guard against subsequent +// maintainers casually adding move operations. This is particularly useful when implementing RAII +// classes that are intended to be completely immobile. #ifdef __GNUC__ #define KJ_LIKELY(condition) __builtin_expect(condition, true) @@ -249,7 +281,7 @@ typedef unsigned char byte; #define KJ_UNUSED_MEMBER #endif -#if __cplusplus > 201703L || (__clang__ && __clang_major__ >= 9 && __cplusplus >= 201103L) +#if KJ_CPP_STD > 201703L || (__clang__ && __clang_major__ >= 9 && KJ_CPP_STD >= 201103L) // Technically this was only added to C++20 but Clang allows it for >= C++11 and spelunking the // attributes manual indicates it first came in with Clang 9. #define KJ_NO_UNIQUE_ADDRESS [[no_unique_address]] @@ -271,10 +303,14 @@ typedef unsigned char byte; #elif __GNUC__ #define KJ_DEPRECATED(reason) \ __attribute__((deprecated)) -#define KJ_UNAVAILABLE(reason) +#define KJ_UNAVAILABLE(reason) = delete +// If the `unavailable` attribute is not supproted, just mark the method deleted, which at least +// makes it a compile-time error to try to call it. Note that on Clang, marking a method deleted +// *and* unavailable unfortunately defeats the purpose of the unavailable annotation, as the +// generic "deleted" error is reported instead. #else #define KJ_DEPRECATED(reason) -#define KJ_UNAVAILABLE(reason) +#define KJ_UNAVAILABLE(reason) = delete // TODO(msvc): Again, here, MSVC prefers a prefix, __declspec(deprecated). #endif @@ -293,8 +329,12 @@ KJ_NORETURN(void unreachable()); } // namespace _ (private) +#if _MSC_VER && !defined(__clang__) && (!defined(_MSVC_TRADITIONAL) || _MSVC_TRADITIONAL) +#define KJ_MSVC_TRADITIONAL_CPP 1 +#endif + #ifdef KJ_DEBUG -#if _MSC_VER && !defined(__clang__) +#if KJ_MSVC_TRADITIONAL_CPP #define KJ_IREQUIRE(condition, ...) \ if (KJ_LIKELY(condition)); else ::kj::_::inlineRequireFailure( \ __FILE__, __LINE__, #condition, "" #__VA_ARGS__, __VA_ARGS__) @@ -408,6 +448,15 @@ KJ_NORETURN(void unreachable()); // ======================================================================================= // Template metaprogramming helpers. +#define KJ_HAS_TRIVIAL_CONSTRUCTOR __is_trivially_constructible +#if __GNUC__ && !__clang__ +#define KJ_HAS_NOTHROW_CONSTRUCTOR __has_nothrow_constructor +#define KJ_HAS_TRIVIAL_DESTRUCTOR __has_trivial_destructor +#else +#define KJ_HAS_NOTHROW_CONSTRUCTOR __is_nothrow_constructible +#define KJ_HAS_TRIVIAL_DESTRUCTOR __is_trivially_destructible +#endif + template struct NoInfer_ { typedef T Type; }; template using NoInfer = typename NoInfer_::Type; // Use NoInfer::Type in place of T for a template function parameter to prevent inference of @@ -560,6 +609,19 @@ template struct IsSameType_ { static constexpr bool val template struct IsSameType_ { static constexpr bool value = true; }; template constexpr bool isSameType() { return IsSameType_::value; } +template constexpr bool isIntegral() { return false; } +template <> constexpr bool isIntegral() { return true; } +template <> constexpr bool isIntegral() { return true; } +template <> constexpr bool isIntegral() { return true; } +template <> constexpr bool isIntegral() { return true; } +template <> constexpr bool isIntegral() { return true; } +template <> constexpr bool isIntegral() { return true; } +template <> constexpr bool isIntegral() { return true; } +template <> constexpr bool isIntegral() { return true; } +template <> constexpr bool isIntegral() { return true; } +template <> constexpr bool isIntegral() { return true; } +template <> constexpr bool isIntegral() { return true; } + template struct CanConvert_ { static int sfinae(T); @@ -1011,8 +1073,7 @@ inline void dtor(T& location) { // forces the caller to handle the null case in order to satisfy the compiler, thus reliably // preventing null pointer dereferences at runtime. // -// Maybe can be implicitly constructed from T and from nullptr. Additionally, it can be -// implicitly constructed from T*, in which case the pointer is checked for nullness at runtime. +// Maybe can be implicitly constructed from T and from nullptr. // To read the value of a Maybe, do: // // KJ_IF_MAYBE(value, someFuncReturningMaybe()) { @@ -1260,6 +1321,63 @@ inline T* readMaybe(T* ptr) { return ptr; } #define KJ_IF_MAYBE(name, exp) if (auto name = ::kj::_::readMaybe(exp)) +#if __GNUC__ || __clang__ +// These two macros provide a friendly syntax to extract the value of a Maybe or return early. +// +// Use KJ_UNWRAP_OR_RETURN if you just want to return a simple value when the Maybe is null: +// +// int foo(Maybe maybe) { +// int value = KJ_UNWRAP_OR_RETURN(maybe, -1); +// // ... use value ... +// } +// +// For functions returning void, omit the second parameter to KJ_UNWRAP_OR_RETURN: +// +// void foo(Maybe maybe) { +// int value = KJ_UNWRAP_OR_RETURN(maybe); +// // ... use value ... +// } +// +// Use KJ_UNWRAP_OR if you want to execute a block with multiple statements. +// +// int foo(Maybe maybe) { +// int value = KJ_UNWRAP_OR(maybe, { +// KJ_LOG(ERROR, "problem!!!"); +// return -1; +// }); +// // ... use value ... +// } +// +// The block MUST return at the end or you will get a compiler error +// +// Unfortunately, these macros seem impossible to express without using GCC's non-standard +// "statement expressions" extension. IIFEs don't do the trick here because a lambda cannot +// return out of the parent scope. These macros should therefore only be used in projects that +// target GCC or GCC-compatible compilers. +// +// `__GNUC__` is not defined when using LLVM's MSVC-compatible compiler driver `clang-cl` (even +// though clang supports the required extension), hence the additional `|| __clang__`. + +#define KJ_UNWRAP_OR_RETURN(value, ...) \ + (*({ \ + auto _kj_result = ::kj::_::readMaybe(value); \ + if (!_kj_result) { \ + return __VA_ARGS__; \ + } \ + kj::mv(_kj_result); \ + })) + +#define KJ_UNWRAP_OR(value, block) \ + (*({ \ + auto _kj_result = ::kj::_::readMaybe(value); \ + if (!_kj_result) { \ + block; \ + asm("KJ_UNWRAP_OR_block_is_missing_return_statement\n"); \ + } \ + kj::mv(_kj_result); \ + })) +#endif + template class Maybe { // A T, or nullptr. @@ -1683,6 +1801,29 @@ class ArrayPtr: public DisallowConstCopyIfNotConst { KJ_IREQUIRE(start <= end && end <= size_, "Out-of-bounds ArrayPtr::slice()."); return ArrayPtr(ptr + start, end - start); } + inline bool startsWith(const ArrayPtr& other) const { + return other.size() <= size_ && slice(0, other.size()) == other; + } + inline bool endsWith(const ArrayPtr& other) const { + return other.size() <= size_ && slice(size_ - other.size(), size_) == other; + } + + inline Maybe findFirst(const T& match) const { + for (size_t i = 0; i < size_; i++) { + if (ptr[i] == match) { + return i; + } + } + return nullptr; + } + inline Maybe findLast(const T& match) const { + for (size_t i = size_; i--;) { + if (ptr[i] == match) { + return i; + } + } + return nullptr; + } inline ArrayPtr> asBytes() const { // Reinterpret the array as a byte array. This is explicitly legal under C++ aliasing @@ -1700,12 +1841,18 @@ class ArrayPtr: public DisallowConstCopyIfNotConst { inline bool operator==(const ArrayPtr& other) const { if (size_ != other.size_) return false; + if (isIntegral>()) { + if (size_ == 0) return true; + return memcmp(ptr, other.ptr, size_ * sizeof(T)) == 0; + } for (size_t i = 0; i < size_; i++) { if (ptr[i] != other[i]) return false; } return true; } +#if !__cpp_impl_three_way_comparison inline bool operator!=(const ArrayPtr& other) const { return !(*this == other); } +#endif template inline bool operator==(const ArrayPtr& other) const { @@ -1715,8 +1862,10 @@ class ArrayPtr: public DisallowConstCopyIfNotConst { } return true; } +#if !__cpp_impl_three_way_comparison template inline bool operator!=(const ArrayPtr& other) const { return !(*this == other); } +#endif template Array attach(Attachments&&... attachments) const KJ_WARN_UNUSED_RESULT; @@ -1730,6 +1879,49 @@ class ArrayPtr: public DisallowConstCopyIfNotConst { size_t size_; }; +template <> +inline Maybe ArrayPtr::findFirst(const char& c) const { + const char* pos = reinterpret_cast(memchr(ptr, c, size_)); + if (pos == nullptr) { + return nullptr; + } else { + return pos - ptr; + } +} + +template <> +inline Maybe ArrayPtr::findFirst(const char& c) const { + char* pos = reinterpret_cast(memchr(ptr, c, size_)); + if (pos == nullptr) { + return nullptr; + } else { + return pos - ptr; + } +} + +template <> +inline Maybe ArrayPtr::findFirst(const byte& c) const { + const byte* pos = reinterpret_cast(memchr(ptr, c, size_)); + if (pos == nullptr) { + return nullptr; + } else { + return pos - ptr; + } +} + +template <> +inline Maybe ArrayPtr::findFirst(const byte& c) const { + byte* pos = reinterpret_cast(memchr(ptr, c, size_)); + if (pos == nullptr) { + return nullptr; + } else { + return pos - ptr; + } +} + +// glibc has a memrchr() for reverse search but it's non-standard, so we don't bother optimizing +// findLast(), which isn't used much anyway. + template inline constexpr ArrayPtr arrayPtr(T* ptr KJ_LIFETIMEBOUND, size_t size) { // Use this function to construct ArrayPtrs without writing out the type name. @@ -1799,29 +1991,48 @@ namespace _ { // private template class Deferred { public: - inline Deferred(Func&& func): func(kj::fwd(func)), canceled(false) {} - inline ~Deferred() noexcept(false) { if (!canceled) func(); } + Deferred(Func&& func): maybeFunc(kj::fwd(func)) {} + ~Deferred() noexcept(false) { + run(); + } KJ_DISALLOW_COPY(Deferred); - // This move constructor is usually optimized away by the compiler. - inline Deferred(Deferred&& other): func(kj::fwd(other.func)), canceled(false) { - other.canceled = true; + Deferred(Deferred&&) = default; + // Since we use a kj::Maybe, the default move constructor does exactly what we want it to do. + + void run() { + // Move `maybeFunc` to the local scope so that even if we throw, we destroy the functor we had. + auto maybeLocalFunc = kj::mv(maybeFunc); + KJ_IF_MAYBE(func, maybeLocalFunc) { + (*func)(); + } + } + + void cancel() { + maybeFunc = nullptr; } + private: - Func func; - bool canceled; + kj::Maybe maybeFunc; + // Note that `Func` may actually be an lvalue reference because `kj::defer` takes its argument via + // universal reference. `kj::Maybe` has specializations for lvalue reference types, so this works + // out. }; } // namespace _ (private) template _::Deferred defer(Func&& func) { - // Returns an object which will invoke the given functor in its destructor. The object is not - // copyable but is movable with the semantics you'd expect. Since the return type is private, - // you need to assign to an `auto` variable. + // Returns an object which will invoke the given functor in its destructor. The object is not + // copyable but is move-constructable with the semantics you'd expect. Since the return type is + // private, you need to assign to an `auto` variable. // // The KJ_DEFER macro provides slightly more convenient syntax for the common case where you // want some code to run at current scope exit. + // + // KJ_DEFER does not support move-assignment for its returned objects. If you need to reuse the + // variable for your deferred function object, then you will want to write your own class for that + // purpose. return _::Deferred(kj::fwd(func)); } diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/BUILD.bazel b/libs/EXTERNAL/capnproto/c++/src/kj/compat/BUILD.bazel new file mode 100644 index 00000000000..f9e31ce6be7 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/BUILD.bazel @@ -0,0 +1,155 @@ +exports_files(["gtest.h"]) + +cc_library( + name = "kj-tls", + srcs = [ + "readiness-io.c++", + "tls.c++", + ], + hdrs = [ + "readiness-io.h", + "tls.h", + ], + include_prefix = "kj/compat", + target_compatible_with = select({ + "//src/kj:use_openssl": [], + "//conditions:default": ["@platforms//:incompatible"], + }), + visibility = ["//visibility:public"], + deps = [ + "//src/kj:kj-async", + "@ssl", + ], +) + +cc_library( + name = "kj-http", + srcs = [ + "http.c++", + "url.c++", + ], + hdrs = [ + "http.h", + "url.h", + ], + include_prefix = "kj/compat", + visibility = ["//visibility:public"], + deps = [ + "//src/kj:kj-async", + "@zlib", + ], +) + +cc_library( + name = "kj-gzip", + srcs = ["gzip.c++"], + hdrs = ["gzip.h"], + include_prefix = "kj/compat", + visibility = ["//visibility:public"], + deps = [ + "//src/kj:kj-async", + "@zlib", + ], +) + +cc_library( + name = "kj-brotli", + srcs = ["brotli.c++"], + hdrs = ["brotli.h"], + include_prefix = "kj/compat", + visibility = ["//visibility:public"], + target_compatible_with = select({ + "//src/kj:use_brotli": [], + "//conditions:default": ["@platforms//:incompatible"], + }), + deps = [ + "//src/kj:kj-async", + "@brotli//:brotlienc", + "@brotli//:brotlidec", + ], +) + +cc_library( + name = "gtest", + hdrs = ["gtest.h"], + include_prefix = "kj/compat", + visibility = ["//visibility:public"], + deps = ["//src/kj"], +) + +kj_tests = [ + "http-test.c++", + "url-test.c++", +] + +[cc_test( + name = f.removesuffix(".c++"), + srcs = [f], + deps = [ + ":kj-http", + "//src/kj:kj-test", + ], +) for f in kj_tests] + +cc_library( + name = "http-socketpair-test-base", + hdrs = ["http-test.c++"], +) + +cc_test( + name = "http-socketpair-test", + srcs = ["http-socketpair-test.c++"], + deps = [ + ":http-socketpair-test-base", + ":kj-http", + "//src/kj:kj-test", + ], + target_compatible_with = [ + "@platforms//os:linux", # TODO: Investigate why this fails on macOS + ], +) + +kj_tls_tests = [ + "tls-test.c++", + "readiness-io-test.c++", +] + +[cc_test( + name = f.removesuffix(".c++"), + srcs = [f], + target_compatible_with = select({ + "//src/kj:use_openssl": [], + "//conditions:default": ["@platforms//:incompatible"], + }), + deps = [ + ":kj-tls", + ":kj-http", + "//src/kj:kj-test", + ], +) for f in kj_tls_tests] + +cc_test( + name = "gzip-test", + srcs = ["gzip-test.c++"], + target_compatible_with = select({ + "//src/kj:use_zlib": [], + "//conditions:default": ["@platforms//:incompatible"], + }), + deps = [ + ":kj-gzip", + "//src/kj:kj-test", + ], +) + +cc_test( + name = "brotli-test", + srcs = ["brotli-test.c++"], + target_compatible_with = select({ + "//src/kj:use_brotli": [], + "//conditions:default": ["@platforms//:incompatible"], + }), + deps = [ + ":kj-brotli", + "//src/kj:kj-test", + ], +) diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/brotli-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/brotli-test.c++ new file mode 100644 index 00000000000..f0e00d1e084 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/brotli-test.c++ @@ -0,0 +1,410 @@ +// Copyright (c) 2023 Cloudflare, Inc. and contributors +// Licensed under the MIT License: +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#if KJ_HAS_BROTLI + +#include "brotli.h" +#include +#include +#include + +namespace kj { +namespace { + +static const byte FOOBAR_BR[] = { + 0x83, 0x02, 0x80, 0x66, 0x6f, 0x6f, 0x62, 0x61, 0x72, 0x03, +}; + +// brotli stream with 24 window bits, i.e. the max window size. If KJ_BROTLI_MAX_DEC_WBITS is less +// than 24, the stream will be rejected by default. This approach should be acceptable in a web +// context, where few files benefit from larger windows and memory usage matters for +// concurrent transfers. +static const byte FOOBAR_BR_LARGE_WIN[] = { + 0x8f, 0x02, 0x80, 0x66, 0x6f, 0x6f, 0x62, 0x61, 0x72, 0x03, +}; + +class MockInputStream: public InputStream { +public: + MockInputStream(kj::ArrayPtr bytes, size_t blockSize) + : bytes(bytes), blockSize(blockSize) {} + + size_t tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + // Clamp max read to blockSize. + size_t n = kj::min(blockSize, maxBytes); + + // Unless that's less than minBytes -- in which case, use minBytes. + n = kj::max(n, minBytes); + + // But also don't read more data than we have. + n = kj::min(n, bytes.size()); + + memcpy(buffer, bytes.begin(), n); + bytes = bytes.slice(n, bytes.size()); + return n; + } + +private: + kj::ArrayPtr bytes; + size_t blockSize; +}; + +class MockAsyncInputStream: public AsyncInputStream { +public: + MockAsyncInputStream(kj::ArrayPtr bytes, size_t blockSize) + : bytes(bytes), blockSize(blockSize) {} + + Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + // Clamp max read to blockSize. + size_t n = kj::min(blockSize, maxBytes); + + // Unless that's less than minBytes -- in which case, use minBytes. + n = kj::max(n, minBytes); + + // But also don't read more data than we have. + n = kj::min(n, bytes.size()); + + memcpy(buffer, bytes.begin(), n); + bytes = bytes.slice(n, bytes.size()); + return n; + } + +private: + kj::ArrayPtr bytes; + size_t blockSize; +}; + +class MockOutputStream: public OutputStream { +public: + kj::Vector bytes; + + kj::String decompress() { + MockInputStream rawInput(bytes, kj::maxValue); + BrotliInputStream brotli(rawInput); + return brotli.readAllText(); + } + + void write(const void* buffer, size_t size) override { + bytes.addAll(arrayPtr(reinterpret_cast(buffer), size)); + } + void write(ArrayPtr> pieces) override { + for (auto& piece: pieces) { + bytes.addAll(piece); + } + } +}; + +class MockAsyncOutputStream: public AsyncOutputStream { +public: + kj::Vector bytes; + + kj::String decompress(WaitScope& ws) { + MockAsyncInputStream rawInput(bytes, kj::maxValue); + BrotliAsyncInputStream brotli(rawInput); + return brotli.readAllText().wait(ws); + } + + Promise write(const void* buffer, size_t size) override { + bytes.addAll(arrayPtr(reinterpret_cast(buffer), size)); + return kj::READY_NOW; + } + Promise write(ArrayPtr> pieces) override { + for (auto& piece: pieces) { + bytes.addAll(piece); + } + return kj::READY_NOW; + } + + Promise whenWriteDisconnected() override { KJ_UNIMPLEMENTED("not used"); } +}; + +KJ_TEST("brotli decompression") { + // Normal read. + { + MockInputStream rawInput(FOOBAR_BR, kj::maxValue); + BrotliInputStream brotli(rawInput); + KJ_EXPECT(brotli.readAllText() == "foobar"); + } + + // Force read one byte at a time. + { + MockInputStream rawInput(FOOBAR_BR, 1); + BrotliInputStream brotli(rawInput); + KJ_EXPECT(brotli.readAllText() == "foobar"); + } + + // Read truncated input. + { + MockInputStream rawInput(kj::arrayPtr(FOOBAR_BR, sizeof(FOOBAR_BR) / 2), kj::maxValue); + BrotliInputStream brotli(rawInput); + + char text[16]; + size_t n = brotli.tryRead(text, 1, sizeof(text)); + text[n] = '\0'; + KJ_EXPECT(StringPtr(text, n) == "fo"); + + KJ_EXPECT_THROW_MESSAGE("brotli compressed stream ended prematurely", + brotli.tryRead(text, 1, sizeof(text))); + } + + // Check that stream with high window size is rejected. Conversely, check that it is accepted if + // configured to accept the full window size. + { + MockInputStream rawInput(FOOBAR_BR_LARGE_WIN, kj::maxValue); + BrotliInputStream brotli(rawInput, BROTLI_DEFAULT_WINDOW); + KJ_EXPECT_THROW_MESSAGE("brotli window size too big", brotli.readAllText()); + } + + { + MockInputStream rawInput(FOOBAR_BR_LARGE_WIN, kj::maxValue); + BrotliInputStream brotli(rawInput, BROTLI_MAX_WINDOW_BITS); + KJ_EXPECT(brotli.readAllText() == "foobar"); + } + + // Check that invalid stream is rejected. + { + MockInputStream rawInput(kj::arrayPtr(FOOBAR_BR + 3, sizeof(FOOBAR_BR) - 3), kj::maxValue); + BrotliInputStream brotli(rawInput); + KJ_EXPECT_THROW_MESSAGE("brotli decompression failed", brotli.readAllText()); + } + + // Read concatenated input. + { + Vector bytes; + bytes.addAll(ArrayPtr(FOOBAR_BR)); + bytes.addAll(ArrayPtr(FOOBAR_BR)); + MockInputStream rawInput(bytes, kj::maxValue); + BrotliInputStream brotli(rawInput); + + KJ_EXPECT(brotli.readAllText() == "foobarfoobar"); + } +} + +KJ_TEST("async brotli decompression") { + auto io = setupAsyncIo(); + + // Normal read. + { + MockAsyncInputStream rawInput(FOOBAR_BR, kj::maxValue); + BrotliAsyncInputStream brotli(rawInput); + KJ_EXPECT(brotli.readAllText().wait(io.waitScope) == "foobar"); + } + + // Force read one byte at a time. + { + MockAsyncInputStream rawInput(FOOBAR_BR, 1); + BrotliAsyncInputStream brotli(rawInput); + KJ_EXPECT(brotli.readAllText().wait(io.waitScope) == "foobar"); + } + + // Read truncated input. + { + MockAsyncInputStream rawInput(kj::arrayPtr(FOOBAR_BR, sizeof(FOOBAR_BR) / 2), kj::maxValue); + BrotliAsyncInputStream brotli(rawInput); + + char text[16]; + size_t n = brotli.tryRead(text, 1, sizeof(text)).wait(io.waitScope); + text[n] = '\0'; + KJ_EXPECT(StringPtr(text, n) == "fo"); + + KJ_EXPECT_THROW_MESSAGE("brotli compressed stream ended prematurely", + brotli.tryRead(text, 1, sizeof(text)).wait(io.waitScope)); + } + + // Check that stream with high window size is rejected. Conversely, check that it is accepted if + // configured to accept the full window size. + { + MockAsyncInputStream rawInput(FOOBAR_BR_LARGE_WIN, kj::maxValue); + BrotliAsyncInputStream brotli(rawInput, BROTLI_DEFAULT_WINDOW); + KJ_EXPECT_THROW_MESSAGE("brotli window size too big", + brotli.readAllText().wait(io.waitScope)); + } + + { + MockAsyncInputStream rawInput(FOOBAR_BR_LARGE_WIN, kj::maxValue); + BrotliAsyncInputStream brotli(rawInput, BROTLI_MAX_WINDOW_BITS); + KJ_EXPECT(brotli.readAllText().wait(io.waitScope) == "foobar"); + } + + // Read concatenated input. + { + Vector bytes; + bytes.addAll(ArrayPtr(FOOBAR_BR)); + bytes.addAll(ArrayPtr(FOOBAR_BR)); + MockAsyncInputStream rawInput(bytes, kj::maxValue); + BrotliAsyncInputStream brotli(rawInput); + + KJ_EXPECT(brotli.readAllText().wait(io.waitScope) == "foobarfoobar"); + } + + // Decompress using an output stream. + { + MockAsyncOutputStream rawOutput; + BrotliAsyncOutputStream brotli(rawOutput, BrotliAsyncOutputStream::DECOMPRESS); + + auto mid = sizeof(FOOBAR_BR) / 2; + brotli.write(FOOBAR_BR, mid).wait(io.waitScope); + auto str1 = kj::heapString(rawOutput.bytes.asPtr().asChars()); + KJ_EXPECT(str1 == "fo", str1); + + brotli.write(FOOBAR_BR + mid, sizeof(FOOBAR_BR) - mid).wait(io.waitScope); + auto str2 = kj::heapString(rawOutput.bytes.asPtr().asChars()); + KJ_EXPECT(str2 == "foobar", str2); + + brotli.end().wait(io.waitScope); + } +} + +KJ_TEST("brotli compression") { + // Normal write. + { + MockOutputStream rawOutput; + { + BrotliOutputStream brotli(rawOutput); + brotli.write("foobar", 6); + } + + KJ_EXPECT(rawOutput.decompress() == "foobar"); + } + + // Multi-part write. + { + MockOutputStream rawOutput; + { + BrotliOutputStream brotli(rawOutput); + brotli.write("foo", 3); + brotli.write("bar", 3); + } + + KJ_EXPECT(rawOutput.decompress() == "foobar"); + } + + // Array-of-arrays write. + { + MockOutputStream rawOutput; + + { + BrotliOutputStream brotli(rawOutput); + + ArrayPtr pieces[] = { + kj::StringPtr("foo").asBytes(), + kj::StringPtr("bar").asBytes(), + }; + brotli.write(pieces); + } + + KJ_EXPECT(rawOutput.decompress() == "foobar"); + } +} + +KJ_TEST("brotli huge round trip") { + auto bytes = heapArray(96*1024); + for (auto& b: bytes) { + b = rand(); + } + + MockOutputStream rawOutput; + { + BrotliOutputStream brotliOut(rawOutput); + brotliOut.write(bytes.begin(), bytes.size()); + } + + MockInputStream rawInput(rawOutput.bytes, kj::maxValue); + BrotliInputStream brotliIn(rawInput); + auto decompressed = brotliIn.readAllBytes(); + + KJ_ASSERT(decompressed.size() == bytes.size()); + KJ_ASSERT(memcmp(bytes.begin(), decompressed.begin(), bytes.size()) == 0); +} + +KJ_TEST("async brotli compression") { + auto io = setupAsyncIo(); + // Normal write. + { + MockAsyncOutputStream rawOutput; + BrotliAsyncOutputStream brotli(rawOutput); + brotli.write("foobar", 6).wait(io.waitScope); + brotli.end().wait(io.waitScope); + + KJ_EXPECT(rawOutput.decompress(io.waitScope) == "foobar"); + } + + // Multi-part write. + { + MockAsyncOutputStream rawOutput; + BrotliAsyncOutputStream brotli(rawOutput); + + brotli.write("foo", 3).wait(io.waitScope); + auto prevSize = rawOutput.bytes.size(); + + brotli.write("bar", 3).wait(io.waitScope); + auto curSize = rawOutput.bytes.size(); + KJ_EXPECT(prevSize == curSize, prevSize, curSize); + + brotli.flush().wait(io.waitScope); + curSize = rawOutput.bytes.size(); + KJ_EXPECT(prevSize < curSize, prevSize, curSize); + + brotli.end().wait(io.waitScope); + + KJ_EXPECT(rawOutput.decompress(io.waitScope) == "foobar"); + } + + // Array-of-arrays write. + { + MockAsyncOutputStream rawOutput; + BrotliAsyncOutputStream brotli(rawOutput); + + ArrayPtr pieces[] = { + kj::StringPtr("foo").asBytes(), + kj::StringPtr("bar").asBytes(), + }; + brotli.write(pieces).wait(io.waitScope); + brotli.end().wait(io.waitScope); + + KJ_EXPECT(rawOutput.decompress(io.waitScope) == "foobar"); + } +} + +KJ_TEST("async brotli huge round trip") { + auto io = setupAsyncIo(); + + auto bytes = heapArray(65536); + for (auto& b: bytes) { + b = rand(); + } + + MockAsyncOutputStream rawOutput; + BrotliAsyncOutputStream brotliOut(rawOutput); + brotliOut.write(bytes.begin(), bytes.size()).wait(io.waitScope); + brotliOut.end().wait(io.waitScope); + + MockAsyncInputStream rawInput(rawOutput.bytes, kj::maxValue); + BrotliAsyncInputStream brotliIn(rawInput); + auto decompressed = brotliIn.readAllBytes().wait(io.waitScope); + + KJ_ASSERT(decompressed.size() == bytes.size()); + KJ_ASSERT(memcmp(bytes.begin(), decompressed.begin(), bytes.size()) == 0); +} + +} // namespace +} // namespace kj + +#endif // KJ_HAS_BROTLI diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/brotli.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/brotli.c++ new file mode 100644 index 00000000000..08efc8abfa7 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/brotli.c++ @@ -0,0 +1,369 @@ +// Copyright (c) 2023 Cloudflare, Inc. and contributors +// Licensed under the MIT License: +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#if KJ_HAS_BROTLI + +#include "brotli.h" +#include + +namespace kj { + +namespace { + +int getBrotliWindowBits(kj::byte peek) { + // Check number of window bits used by the stream, see RFC 7932 + // (https://www.rfc-editor.org/rfc/rfc7932.html#section-9.1) for the specification. + // Adapted from an internal Cloudflare codebase. + if ((peek & 0x01) == 0) { + return 16; + } + + if (((peek >> 1) & 0x07) != 0) { + return 17 + (peek >> 1 & 0x07); + } + + if (((peek >> 4) & 0x07) == 0) { + return 17; + } + + if (((peek >> 4) & 0x07) == 1) { + // Large window brotli, not part of RFC 7932 and not supported in web contexts + return BROTLI_MAX_WINDOW_BITS + 1; + } + + return 8 + ((peek >> 4) & 0x07); +} + +} // namespace + +namespace _ { // private + +BrotliOutputContext::BrotliOutputContext(kj::Maybe compressionLevel, + kj::Maybe windowBitsParam) + : nextIn(nullptr), availableIn(0) { + KJ_IF_MAYBE(level, compressionLevel) { + // Emulate zlib's behavior of using -1 to signify the default quality + if (*level == -1) {*level = KJ_BROTLI_DEFAULT_QUALITY;} + KJ_REQUIRE(*level >= BROTLI_MIN_QUALITY && *level <= BROTLI_MAX_QUALITY, + "invalid brotli compression level", *level); + windowBits = windowBitsParam.orDefault(_::KJ_BROTLI_DEFAULT_WBITS); + KJ_REQUIRE(windowBits >= BROTLI_MIN_WINDOW_BITS && windowBits <= BROTLI_MAX_WINDOW_BITS, + "invalid brotli window size", windowBits); + BrotliEncoderState* cctx = BrotliEncoderCreateInstance(nullptr, nullptr, nullptr); + KJ_REQUIRE(cctx, "brotli state allocation failed"); + KJ_ASSERT(BrotliEncoderSetParameter(cctx, BROTLI_PARAM_QUALITY, *level) == BROTLI_TRUE); + KJ_ASSERT(BrotliEncoderSetParameter(cctx, BROTLI_PARAM_LGWIN, windowBits) == BROTLI_TRUE); + ctx = cctx; + } else { + // In the decoder, we manually check that the stream does not have a higher window size than + // requested and reject it otherwise, no way to automate this step. + // By default, we accept streams with a window size up to (1 << KJ_BROTLI_MAX_DEC_WBITS), + // this is more than the default window size for compression (i.e. KJ_BROTLI_DEFAULT_WBITS) + windowBits = windowBitsParam.orDefault(_::KJ_BROTLI_MAX_DEC_WBITS); + KJ_REQUIRE(windowBits >= BROTLI_MIN_WINDOW_BITS && windowBits <= BROTLI_MAX_WINDOW_BITS, + "invalid brotli window size", windowBits); + BrotliDecoderState* dctx = BrotliDecoderCreateInstance(nullptr, nullptr, nullptr); + KJ_REQUIRE(dctx, "brotli state allocation failed"); + ctx = dctx; + } +} + +BrotliOutputContext::~BrotliOutputContext() noexcept(false) { + KJ_SWITCH_ONEOF(ctx) { + KJ_CASE_ONEOF(cctx, BrotliEncoderState*) { + BrotliEncoderDestroyInstance(cctx); + } + KJ_CASE_ONEOF(dctx, BrotliDecoderState*) { + BrotliDecoderDestroyInstance(dctx); + } + } +} + +void BrotliOutputContext::setInput(const void* in, size_t size) { + nextIn = reinterpret_cast(in); + availableIn = size; +} + +kj::Tuple> BrotliOutputContext::pumpOnce( + BrotliEncoderOperation flush) { + byte* nextOut = buffer; + size_t availableOut = sizeof(buffer); + // Brotli does not accept a null input pointer; make sure there is a valid pointer even if we are + // not actually reading from it. + if (!nextIn) { + KJ_ASSERT(availableIn == 0); + nextIn = buffer; + } + + KJ_SWITCH_ONEOF(ctx) { + KJ_CASE_ONEOF(dctx, BrotliDecoderState*) { + // Check window bits + if (firstInput && availableIn) { + firstInput = false; + int streamWbits = getBrotliWindowBits(nextIn[0]); + KJ_REQUIRE(streamWbits <= windowBits, "brotli window size too big", (1 << streamWbits)); + } + BrotliDecoderResult result = BrotliDecoderDecompressStream(dctx, &availableIn, &nextIn, + &availableOut, &nextOut, nullptr); + if (result == BROTLI_DECODER_RESULT_ERROR) { + // Note: Unlike BrotliInputStream, this will implicitly reject trailing data during + // decompression, matching the behavior for gzip. + KJ_FAIL_REQUIRE("brotli decompression failed", + BrotliDecoderErrorString(BrotliDecoderGetErrorCode(dctx))); + } + // The 'ok' parameter represented by the first parameter of the tuple indicates that + // pumpOnce() should be called again as more output data can be produced. This is the case + // when the stream is not finished and there is either pending output data (that didn't fit + // into the buffer) or input that has not been processed yet. + return kj::tuple(BrotliDecoderHasMoreOutput(dctx), + kj::arrayPtr(buffer, sizeof(buffer) - availableOut)); + } + KJ_CASE_ONEOF(cctx, BrotliEncoderState*) { + BROTLI_BOOL result = BrotliEncoderCompressStream(cctx, flush, &availableIn, &nextIn, + &availableOut, &nextOut, nullptr); + KJ_REQUIRE(result == BROTLI_TRUE, "brotli compression failed"); + + return kj::tuple(BrotliEncoderHasMoreOutput(cctx), + kj::arrayPtr(buffer, sizeof(buffer) - availableOut)); + } + } + KJ_UNREACHABLE; +} + +} // namespace _ (private) + +// ======================================================================================= + +BrotliInputStream::BrotliInputStream(InputStream& inner, kj::Maybe windowBitsParam) + : inner(inner), windowBits(windowBitsParam.orDefault(_::KJ_BROTLI_MAX_DEC_WBITS)), + nextIn(nullptr), availableIn(0) { + KJ_REQUIRE(windowBits >= BROTLI_MIN_WINDOW_BITS && windowBits <= BROTLI_MAX_WINDOW_BITS, + "invalid brotli window size", windowBits); + ctx = BrotliDecoderCreateInstance(nullptr, nullptr, nullptr); + KJ_REQUIRE(ctx, "brotli state allocation failed"); +} + +BrotliInputStream::~BrotliInputStream() noexcept(false) { + BrotliDecoderDestroyInstance(ctx); +} + +size_t BrotliInputStream::tryRead(void* out, size_t minBytes, size_t maxBytes) { + if (maxBytes == 0) return size_t(0); + + return readImpl(reinterpret_cast(out), minBytes, maxBytes, 0); +} + +size_t BrotliInputStream::readImpl( + byte* out, size_t minBytes, size_t maxBytes, size_t alreadyRead) { + // Ask for more input unless there is pending output + if (availableIn == 0 && !BrotliDecoderHasMoreOutput(ctx)) { + size_t amount = inner.tryRead(buffer, 1, sizeof(buffer)); + if (amount == 0) { + KJ_REQUIRE(atValidEndpoint, "brotli compressed stream ended prematurely"); + return alreadyRead; + } else { + nextIn = buffer; + availableIn = amount; + } + } + + byte* nextOut = out; + size_t availableOut = maxBytes; + // Check window bits + if (firstInput && availableIn) { + firstInput = false; + int streamWbits = getBrotliWindowBits(nextIn[0]); + KJ_REQUIRE(streamWbits <= windowBits, + "brotli window size too big", (1 << streamWbits)); + } + BrotliDecoderResult result = BrotliDecoderDecompressStream( + ctx, &availableIn, &nextIn, &availableOut, &nextOut, nullptr); + KJ_REQUIRE(result != BROTLI_DECODER_RESULT_ERROR, "brotli decompression failed", + BrotliDecoderErrorString(BrotliDecoderGetErrorCode(ctx))); + + atValidEndpoint = result == BROTLI_DECODER_RESULT_SUCCESS; + if (atValidEndpoint && availableIn > 0) { + // There's more data available. Assume start of new content. + // Not sure if we actually want this, but there is limited potential for breakage as arbitrary + // trailing data should still be rejected. Unfortunately this is kind of clunky as brotli does + // not support resetting an instance. + BrotliDecoderDestroyInstance(ctx); + ctx = BrotliDecoderCreateInstance(nullptr, nullptr, nullptr); + KJ_REQUIRE(ctx, "brotli state allocation failed"); + firstInput = true; + } + + size_t n = maxBytes - availableOut; + if (n >= minBytes) { + return n + alreadyRead; + } else { + return readImpl(out + n, minBytes - n, maxBytes - n, alreadyRead + n); + } +} + +BrotliOutputStream::BrotliOutputStream(OutputStream& inner, int compressionLevel, int windowBits) + : inner(inner), ctx(compressionLevel, windowBits) {} + +BrotliOutputStream::BrotliOutputStream(OutputStream& inner, decltype(DECOMPRESS), int windowBits) + : inner(inner), ctx(nullptr, windowBits) {} + +BrotliOutputStream::~BrotliOutputStream() noexcept(false) { + pump(BROTLI_OPERATION_FINISH); +} + +void BrotliOutputStream::write(const void* in, size_t size) { + ctx.setInput(in, size); + pump(BROTLI_OPERATION_PROCESS); +} + +void BrotliOutputStream::pump(BrotliEncoderOperation flush) { + bool ok; + do { + auto result = ctx.pumpOnce(flush); + ok = get<0>(result); + auto chunk = get<1>(result); + if (chunk.size() > 0) { + inner.write(chunk.begin(), chunk.size()); + } + } while (ok); +} + +// ======================================================================================= + +BrotliAsyncInputStream::BrotliAsyncInputStream(AsyncInputStream& inner, + kj::Maybe windowBitsParam) + : inner(inner), windowBits(windowBitsParam.orDefault(_::KJ_BROTLI_MAX_DEC_WBITS)), + nextIn(nullptr), availableIn(0) { + KJ_REQUIRE(windowBits >= BROTLI_MIN_WINDOW_BITS && windowBits <= BROTLI_MAX_WINDOW_BITS, + "invalid brotli window size", windowBits); + ctx = BrotliDecoderCreateInstance(nullptr, nullptr, nullptr); + KJ_REQUIRE(ctx, "brotli state allocation failed"); +} + +BrotliAsyncInputStream::~BrotliAsyncInputStream() noexcept(false) { + BrotliDecoderDestroyInstance(ctx); +} + +Promise BrotliAsyncInputStream::tryRead(void* out, size_t minBytes, size_t maxBytes) { + if (maxBytes == 0) return constPromise(); + + return readImpl(reinterpret_cast(out), minBytes, maxBytes, 0); +} + +Promise BrotliAsyncInputStream::readImpl( + byte* out, size_t minBytes, size_t maxBytes, size_t alreadyRead) { + // Ask for more input unless there is pending output + if (availableIn == 0 && !BrotliDecoderHasMoreOutput(ctx)) { + return inner.tryRead(buffer, 1, sizeof(buffer)) + .then([this,out,minBytes,maxBytes,alreadyRead](size_t amount) -> Promise { + if (amount == 0) { + if (!atValidEndpoint) { + return KJ_EXCEPTION(DISCONNECTED, "brotli compressed stream ended prematurely"); + } + return alreadyRead; + } else { + nextIn = buffer; + availableIn = amount; + return readImpl(out, minBytes, maxBytes, alreadyRead); + } + }); + } + + byte* nextOut = out; + size_t availableOut = maxBytes; + // Check window bits + if (firstInput && availableIn) { + firstInput = false; + int streamWbits = getBrotliWindowBits(nextIn[0]); + KJ_REQUIRE(streamWbits <= windowBits, + "brotli window size too big", (1 << streamWbits)); + } + BrotliDecoderResult result = BrotliDecoderDecompressStream( + ctx, &availableIn, &nextIn, &availableOut, &nextOut, nullptr); + KJ_REQUIRE(result != BROTLI_DECODER_RESULT_ERROR, "brotli decompression failed", + BrotliDecoderErrorString(BrotliDecoderGetErrorCode(ctx))); + + atValidEndpoint = result == BROTLI_DECODER_RESULT_SUCCESS; + if (atValidEndpoint && availableIn > 0) { + // There's more data available. Assume start of new content. + // Not sure if we actually want this, but there is limited potential for breakage as arbitrary + // trailing data should still be rejected. Unfortunately this is kind of clunky as brotli does + // not support resetting an instance. + BrotliDecoderDestroyInstance(ctx); + ctx = BrotliDecoderCreateInstance(nullptr, nullptr, nullptr); + KJ_REQUIRE(ctx, "brotli state allocation failed"); + firstInput = true; + } + + size_t n = maxBytes - availableOut; + if (n >= minBytes) { + return n + alreadyRead; + } else { + return readImpl(out + n, minBytes - n, maxBytes - n, alreadyRead + n); + } +} + +// ======================================================================================= + +BrotliAsyncOutputStream::BrotliAsyncOutputStream(AsyncOutputStream& inner, int compressionLevel, + int windowBits) + : inner(inner), ctx(compressionLevel, windowBits) {} + +BrotliAsyncOutputStream::BrotliAsyncOutputStream(AsyncOutputStream& inner, decltype(DECOMPRESS), + int windowBits) + : inner(inner), ctx(nullptr, windowBits) {} + +Promise BrotliAsyncOutputStream::write(const void* in, size_t size) { + ctx.setInput(in, size); + return pump(BROTLI_OPERATION_PROCESS); +} + +Promise BrotliAsyncOutputStream::write(ArrayPtr> pieces) { + if (pieces.size() == 0) return kj::READY_NOW; + return write(pieces[0].begin(), pieces[0].size()) + .then([this,pieces]() { + return write(pieces.slice(1, pieces.size())); + }); +} + +kj::Promise BrotliAsyncOutputStream::pump(BrotliEncoderOperation flush) { + auto result = ctx.pumpOnce(flush); + auto ok = get<0>(result); + auto chunk = get<1>(result); + + if (chunk.size() == 0) { + if (ok) { + return pump(flush); + } else { + return kj::READY_NOW; + } + } else { + auto promise = inner.write(chunk.begin(), chunk.size()); + if (ok) { + promise = promise.then([this, flush]() { return pump(flush); }); + } + return promise; + } +} + +} // namespace kj + +#endif // KJ_HAS_BROTLI diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/brotli.h b/libs/EXTERNAL/capnproto/c++/src/kj/compat/brotli.h new file mode 100644 index 00000000000..3fd2181b5c4 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/brotli.h @@ -0,0 +1,190 @@ +// Copyright (c) 2023 Cloudflare, Inc. and contributors +// Licensed under the MIT License: +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#pragma once + +#include +#include +#include +#include +#include + +KJ_BEGIN_HEADER + +namespace kj { + +// level 5 should offer a good default tradeoff based on concerns about being slower than gzip at +// e.g. level 6 and about compressing worse than gzip at lower levels. Note that +// BROTLI_DEFAULT_QUALITY is set to the maximum level of 11 – way too slow for on-the-fly +// compression. +constexpr size_t KJ_BROTLI_DEFAULT_QUALITY = 5; + +namespace _ { // private +// Use a window size of (1 << 19) = 512K by default. Higher values improve compression on longer +// streams but increase memory usage. +constexpr size_t KJ_BROTLI_DEFAULT_WBITS = 19; + +// Maximum window size for streams to be decompressed, streams with larger windows are rejected. +// This is currently set to the maximum window size of 16MB, so all RFC 7932-compliant brotli +// streams will be accepted. For applications where memory usage is a concern, using +// BROTLI_DEFAULT_WINDOW (equivalent to 4MB window) is recommended instead as larger window sizes +// are rarely useful in a web context. +constexpr size_t KJ_BROTLI_MAX_DEC_WBITS = BROTLI_MAX_WINDOW_BITS; + +// Use an output buffer size of 8K, larger sizes did not seem to significantly improve performance, +// perhaps due to brotli's internal output buffer. +constexpr size_t KJ_BROTLI_BUF_SIZE = 8192; + +class BrotliOutputContext final { +public: + BrotliOutputContext(kj::Maybe compressionLevel, kj::Maybe windowBits = nullptr); + ~BrotliOutputContext() noexcept(false); + KJ_DISALLOW_COPY_AND_MOVE(BrotliOutputContext); + + void setInput(const void* in, size_t size); + kj::Tuple> pumpOnce(BrotliEncoderOperation flush); + // Flush the stream. Parameter is ignored for decoding as brotli only uses an operation parameter + // during encoding. + +private: + int windowBits; + const byte* nextIn; + size_t availableIn; + bool firstInput = true; + + kj::OneOf ctx; + byte buffer[_::KJ_BROTLI_BUF_SIZE]; +}; + +} // namespace _ (private) + +class BrotliInputStream final: public InputStream { +public: + BrotliInputStream(InputStream& inner, kj::Maybe windowBits = nullptr); + ~BrotliInputStream() noexcept(false); + KJ_DISALLOW_COPY_AND_MOVE(BrotliInputStream); + + size_t tryRead(void* buffer, size_t minBytes, size_t maxBytes) override; + +private: + InputStream& inner; + BrotliDecoderState* ctx; + int windowBits; + bool atValidEndpoint = false; + + byte buffer[_::KJ_BROTLI_BUF_SIZE]; + + const byte* nextIn; + size_t availableIn; + bool firstInput = true; + + size_t readImpl(byte* buffer, size_t minBytes, size_t maxBytes, size_t alreadyRead); +}; + +class BrotliOutputStream final: public OutputStream { +public: + enum { DECOMPRESS }; + + // Order of arguments is not ideal, but allows us to specify the window size if needed while + // remaining compatible with the gzip API. + BrotliOutputStream(OutputStream& inner, int compressionLevel = KJ_BROTLI_DEFAULT_QUALITY, + int windowBits = _::KJ_BROTLI_DEFAULT_WBITS); + BrotliOutputStream(OutputStream& inner, decltype(DECOMPRESS), + int windowBits = _::KJ_BROTLI_MAX_DEC_WBITS); + ~BrotliOutputStream() noexcept(false); + KJ_DISALLOW_COPY_AND_MOVE(BrotliOutputStream); + + void write(const void* buffer, size_t size) override; + using OutputStream::write; + + inline void flush() { + // brotli decoder does not use this parameter, but automatically flushes as much as it can. + pump(BROTLI_OPERATION_FLUSH); + } + +private: + OutputStream& inner; + _::BrotliOutputContext ctx; + + void pump(BrotliEncoderOperation flush); +}; + +class BrotliAsyncInputStream final: public AsyncInputStream { +public: + BrotliAsyncInputStream(AsyncInputStream& inner, kj::Maybe windowBits = nullptr); + ~BrotliAsyncInputStream() noexcept(false); + KJ_DISALLOW_COPY_AND_MOVE(BrotliAsyncInputStream); + + Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override; + +private: + AsyncInputStream& inner; + BrotliDecoderState* ctx; + int windowBits; + bool atValidEndpoint = false; + + byte buffer[_::KJ_BROTLI_BUF_SIZE]; + const byte* nextIn; + size_t availableIn; + bool firstInput = true; + + Promise readImpl(byte* buffer, size_t minBytes, size_t maxBytes, size_t alreadyRead); +}; + +class BrotliAsyncOutputStream final: public AsyncOutputStream { +public: + enum { DECOMPRESS }; + + BrotliAsyncOutputStream(AsyncOutputStream& inner, + int compressionLevel = KJ_BROTLI_DEFAULT_QUALITY, + int windowBits = _::KJ_BROTLI_DEFAULT_WBITS); + BrotliAsyncOutputStream(AsyncOutputStream& inner, decltype(DECOMPRESS), + int windowBits = _::KJ_BROTLI_MAX_DEC_WBITS); + KJ_DISALLOW_COPY_AND_MOVE(BrotliAsyncOutputStream); + + Promise write(const void* buffer, size_t size) override; + Promise write(ArrayPtr> pieces) override; + + Promise whenWriteDisconnected() override { return inner.whenWriteDisconnected(); } + + inline Promise flush() { + // brotli decoder does not use this parameter, but automatically flushes as much as it can. + return pump(BROTLI_OPERATION_FLUSH); + } + // Call if you need to flush a stream at an arbitrary data point. + + Promise end() { + return pump(BROTLI_OPERATION_FINISH); + } + // Must call to flush and finish the stream, since some data may be buffered. + // + // TODO(cleanup): This should be a virtual method on AsyncOutputStream. + +private: + AsyncOutputStream& inner; + _::BrotliOutputContext ctx; + + kj::Promise pump(BrotliEncoderOperation flush); +}; + +} // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/gtest.h b/libs/EXTERNAL/capnproto/c++/src/kj/compat/gtest.h index 0d7d361de1c..4db0535c351 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/gtest.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/gtest.h @@ -29,9 +29,11 @@ // - Test fixtures are not supported. Allocate your "test fixture" on the stack instead. Do setup // in the constructor, teardown in the destructor. -#include "../test.h" +#include #include // work-around macro conflict with `ERROR` +KJ_BEGIN_HEADER + namespace kj { namespace _ { // private @@ -118,3 +120,5 @@ class AddFailureAdapter { #define TEST(x, y) KJ_TEST("legacy test: " #x "/" #y) } // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/gzip.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/gzip.c++ index 60d5a8f09d2..a36cde774fa 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/gzip.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/gzip.c++ @@ -103,6 +103,12 @@ size_t GzipInputStream::readImpl( byte* out, size_t minBytes, size_t maxBytes, size_t alreadyRead) { if (ctx.avail_in == 0) { size_t amount = inner.tryRead(buffer, 1, sizeof(buffer)); + // Note: This check would reject valid streams with a high compression ratio if zlib were to + // read in the entire input data, getting more decompressed data than fits in the out buffer + // and subsequently fill the output buffer and internally store some pending data. It turns + // out that zlib does not maintain pending output during decompression and this is not + // possible, but this may be a concern when implementing support for other algorithms as e.g. + // brotli's reference implementation maintains a decompression output buffer. if (amount == 0) { if (!atValidEndpoint) { KJ_FAIL_REQUIRE("gzip compressed stream ended prematurely"); @@ -114,7 +120,7 @@ size_t GzipInputStream::readImpl( } } - ctx.next_out = reinterpret_cast(out); + ctx.next_out = out; ctx.avail_out = maxBytes; auto inflateResult = inflate(&ctx, Z_NO_FLUSH); @@ -182,7 +188,7 @@ GzipAsyncInputStream::~GzipAsyncInputStream() noexcept(false) { } Promise GzipAsyncInputStream::tryRead(void* out, size_t minBytes, size_t maxBytes) { - if (maxBytes == 0) return size_t(0); + if (maxBytes == 0) return constPromise(); return readImpl(reinterpret_cast(out), minBytes, maxBytes, 0); } @@ -205,7 +211,7 @@ Promise GzipAsyncInputStream::readImpl( }); } - ctx.next_out = reinterpret_cast(out); + ctx.next_out = out; ctx.avail_out = maxBytes; auto inflateResult = inflate(&ctx, Z_NO_FLUSH); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/gzip.h b/libs/EXTERNAL/capnproto/c++/src/kj/compat/gzip.h index 5045e11757d..37b4961fed5 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/gzip.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/gzip.h @@ -25,15 +25,19 @@ #include #include +KJ_BEGIN_HEADER + namespace kj { namespace _ { // private +constexpr size_t KJ_GZ_BUF_SIZE = 4096; + class GzipOutputContext final { public: GzipOutputContext(kj::Maybe compressionLevel); ~GzipOutputContext() noexcept(false); - KJ_DISALLOW_COPY(GzipOutputContext); + KJ_DISALLOW_COPY_AND_MOVE(GzipOutputContext); void setInput(const void* in, size_t size); kj::Tuple> pumpOnce(int flush); @@ -41,7 +45,7 @@ class GzipOutputContext final { private: bool compressing; z_stream ctx = {}; - byte buffer[4096]; + byte buffer[_::KJ_GZ_BUF_SIZE]; [[noreturn]] void fail(int result); }; @@ -52,7 +56,7 @@ class GzipInputStream final: public InputStream { public: GzipInputStream(InputStream& inner); ~GzipInputStream() noexcept(false); - KJ_DISALLOW_COPY(GzipInputStream); + KJ_DISALLOW_COPY_AND_MOVE(GzipInputStream); size_t tryRead(void* buffer, size_t minBytes, size_t maxBytes) override; @@ -61,7 +65,7 @@ class GzipInputStream final: public InputStream { z_stream ctx = {}; bool atValidEndpoint = false; - byte buffer[4096]; + byte buffer[_::KJ_GZ_BUF_SIZE]; size_t readImpl(byte* buffer, size_t minBytes, size_t maxBytes, size_t alreadyRead); }; @@ -73,7 +77,7 @@ class GzipOutputStream final: public OutputStream { GzipOutputStream(OutputStream& inner, int compressionLevel = Z_DEFAULT_COMPRESSION); GzipOutputStream(OutputStream& inner, decltype(DECOMPRESS)); ~GzipOutputStream() noexcept(false); - KJ_DISALLOW_COPY(GzipOutputStream); + KJ_DISALLOW_COPY_AND_MOVE(GzipOutputStream); void write(const void* buffer, size_t size) override; using OutputStream::write; @@ -93,7 +97,7 @@ class GzipAsyncInputStream final: public AsyncInputStream { public: GzipAsyncInputStream(AsyncInputStream& inner); ~GzipAsyncInputStream() noexcept(false); - KJ_DISALLOW_COPY(GzipAsyncInputStream); + KJ_DISALLOW_COPY_AND_MOVE(GzipAsyncInputStream); Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override; @@ -102,7 +106,7 @@ class GzipAsyncInputStream final: public AsyncInputStream { z_stream ctx = {}; bool atValidEndpoint = false; - byte buffer[4096]; + byte buffer[_::KJ_GZ_BUF_SIZE]; Promise readImpl(byte* buffer, size_t minBytes, size_t maxBytes, size_t alreadyRead); }; @@ -113,7 +117,7 @@ class GzipAsyncOutputStream final: public AsyncOutputStream { GzipAsyncOutputStream(AsyncOutputStream& inner, int compressionLevel = Z_DEFAULT_COMPRESSION); GzipAsyncOutputStream(AsyncOutputStream& inner, decltype(DECOMPRESS)); - KJ_DISALLOW_COPY(GzipAsyncOutputStream); + KJ_DISALLOW_COPY_AND_MOVE(GzipAsyncOutputStream); Promise write(const void* buffer, size_t size) override; Promise write(ArrayPtr> pieces) override; @@ -140,3 +144,5 @@ class GzipAsyncOutputStream final: public AsyncOutputStream { }; } // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/http-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/http-test.c++ index 87395534e2d..f10ff8d1564 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/http-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/http-test.c++ @@ -25,6 +25,7 @@ #include #include #include +#include #include #if KJ_HTTP_TEST_USE_OS_PIPE @@ -58,8 +59,15 @@ namespace { KJ_TEST("HttpMethod parse / stringify") { #define TRY(name) \ KJ_EXPECT(kj::str(HttpMethod::name) == #name); \ - KJ_IF_MAYBE(parsed, tryParseHttpMethod(#name)) { \ - KJ_EXPECT(*parsed == HttpMethod::name); \ + KJ_IF_MAYBE(parsed, tryParseHttpMethodAllowingConnect(#name)) { \ + KJ_SWITCH_ONEOF(*parsed) { \ + KJ_CASE_ONEOF(method, HttpMethod) { \ + KJ_EXPECT(method == HttpMethod::name); \ + } \ + KJ_CASE_ONEOF(method, HttpConnectMethod) { \ + KJ_FAIL_EXPECT("http method parsed as CONNECT", #name); \ + } \ + } \ } else { \ KJ_FAIL_EXPECT("couldn't parse \"" #name "\" as HttpMethod"); \ } @@ -73,6 +81,10 @@ KJ_TEST("HttpMethod parse / stringify") { KJ_EXPECT(tryParseHttpMethod("GE") == nullptr); KJ_EXPECT(tryParseHttpMethod("GET ") == nullptr); KJ_EXPECT(tryParseHttpMethod("get") == nullptr); + + KJ_EXPECT(KJ_ASSERT_NONNULL(tryParseHttpMethodAllowingConnect("CONNECT")) + .is()); + KJ_EXPECT(tryParseHttpMethod("connect") == nullptr); } KJ_TEST("HttpHeaderTable") { @@ -296,6 +308,48 @@ KJ_TEST("HttpHeaders parse invalid") { } } +KJ_TEST("HttpHeaders require valid HttpHeaderTable") { + const auto ERROR_MESSAGE = + "HttpHeaders object was constructed from HttpHeaderTable " + "that wasn't fully built yet at the time of construction"_kj; + + { + // A tabula rasa is valid. + HttpHeaderTable table; + KJ_REQUIRE(table.isReady()); + + HttpHeaders headers(table); + } + + { + // A future table is not valid. + HttpHeaderTable::Builder builder; + + auto& futureTable = builder.getFutureTable(); + KJ_REQUIRE(!futureTable.isReady()); + + auto makeHeadersThenBuild = [&]() { + HttpHeaders headers(futureTable); + auto table = builder.build(); + }; + KJ_EXPECT_THROW_MESSAGE(ERROR_MESSAGE, makeHeadersThenBuild()); + } + + { + // A well built table is valid. + HttpHeaderTable::Builder builder; + + auto& futureTable = builder.getFutureTable(); + KJ_REQUIRE(!futureTable.isReady()); + + auto ownedTable = builder.build(); + KJ_REQUIRE(futureTable.isReady()); + KJ_REQUIRE(ownedTable->isReady()); + + HttpHeaders headers(futureTable); + } +} + KJ_TEST("HttpHeaders validation") { auto table = HttpHeaderTable::Builder().build(); HttpHeaders headers(*table); @@ -482,7 +536,7 @@ kj::Promise expectRead(kj::AsyncInputStream& in, kj::StringPtr expected) { auto buffer = kj::heapArray(expected.size()); auto promise = in.tryRead(buffer.begin(), 1, buffer.size()); - return promise.then(kj::mvCapture(buffer, [&in,expected](kj::Array buffer, size_t amount) { + return promise.then([&in,expected,buffer=kj::mv(buffer)](size_t amount) { if (amount == 0) { KJ_FAIL_ASSERT("expected data never sent", expected); } @@ -493,7 +547,7 @@ kj::Promise expectRead(kj::AsyncInputStream& in, kj::StringPtr expected) { } return expectRead(in, expected.slice(amount)); - })); + }); } kj::Promise expectRead(kj::AsyncInputStream& in, kj::ArrayPtr expected) { @@ -502,7 +556,7 @@ kj::Promise expectRead(kj::AsyncInputStream& in, kj::ArrayPtr auto buffer = kj::heapArray(expected.size()); auto promise = in.tryRead(buffer.begin(), 1, buffer.size()); - return promise.then(kj::mvCapture(buffer, [&in,expected](kj::Array buffer, size_t amount) { + return promise.then([&in,expected,buffer=kj::mv(buffer)](size_t amount) { if (amount == 0) { KJ_FAIL_ASSERT("expected data never sent", expected); } @@ -513,7 +567,7 @@ kj::Promise expectRead(kj::AsyncInputStream& in, kj::ArrayPtr } return expectRead(in, expected.slice(amount, expected.size())); - })); + }); } kj::Promise expectEnd(kj::AsyncInputStream& in) { @@ -1762,6 +1816,39 @@ KJ_TEST("WebSocket fragmented") { clientTask.wait(waitScope); } +#if KJ_HAS_ZLIB +KJ_TEST("WebSocket compressed fragment") { + KJ_HTTP_TEST_SETUP_IO; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + auto client = kj::mv(pipe.ends[0]); + auto server = newWebSocket(kj::mv(pipe.ends[1]), nullptr, CompressionParameters{ + .outboundNoContextTakeover = false, + .inboundNoContextTakeover = false, + .outboundMaxWindowBits=15, + .inboundMaxWindowBits=15, + }); + + // The message is "Hello", sent in two fragments, see the fragmented example at the bottom of: + // https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.3.1 + byte COMPRESSED_DATA[] = { + 0x41, 0x03, 0xf2, 0x48, 0xcd, + + 0x80, 0x04, 0xc9, 0xc9, 0x07, 0x00 + }; + + auto clientTask = client->write(COMPRESSED_DATA, sizeof(COMPRESSED_DATA)); + + { + auto message = server->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get() == "Hello"); + } + + clientTask.wait(waitScope); +} +#endif // KJ_HAS_ZLIB + class FakeEntropySource final: public EntropySource { public: void generate(kj::ArrayPtr buffer) override { @@ -1800,6 +1887,148 @@ KJ_TEST("WebSocket masked") { serverTask.wait(waitScope); } +class WebSocketErrorCatcher : public WebSocketErrorHandler { +public: + kj::Vector errors; + + kj::Exception handleWebSocketProtocolError(kj::WebSocket::ProtocolError protocolError) { + errors.add(kj::mv(protocolError)); + return KJ_EXCEPTION(FAILED, protocolError.description); + } +}; + +KJ_TEST("WebSocket unexpected RSV bits") { + KJ_HTTP_TEST_SETUP_IO; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + WebSocketErrorCatcher errorCatcher; + auto client = kj::mv(pipe.ends[0]); + auto server = newWebSocket(kj::mv(pipe.ends[1]), nullptr, nullptr, errorCatcher); + + byte DATA[] = { + 0x01, 0x06, 'h', 'e', 'l', 'l', 'o', ' ', + + 0xF0, 0x05, 'w', 'o', 'r', 'l', 'd' // all RSV bits set, plus FIN + }; + + auto clientTask = client->write(DATA, sizeof(DATA)); + + { + bool gotException = false; + auto serverTask = server->receive().then([](auto&& m) {}, [&gotException](kj::Exception&& ex) { gotException = true; }); + serverTask.wait(waitScope); + KJ_ASSERT(gotException); + KJ_ASSERT(errorCatcher.errors.size() == 1); + KJ_ASSERT(errorCatcher.errors[0].statusCode == 1002); + } + + clientTask.wait(waitScope); +} + +KJ_TEST("WebSocket unexpected continuation frame") { + KJ_HTTP_TEST_SETUP_IO; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + WebSocketErrorCatcher errorCatcher; + auto client = kj::mv(pipe.ends[0]); + auto server = newWebSocket(kj::mv(pipe.ends[1]), nullptr, nullptr, errorCatcher); + + byte DATA[] = { + 0x80, 0x06, 'h', 'e', 'l', 'l', 'o', ' ', // Continuation frame with no start frame, plus FIN + }; + + auto clientTask = client->write(DATA, sizeof(DATA)); + + { + bool gotException = false; + auto serverTask = server->receive().then([](auto&& m) {}, [&gotException](kj::Exception&& ex) { gotException = true; }); + serverTask.wait(waitScope); + KJ_ASSERT(gotException); + KJ_ASSERT(errorCatcher.errors.size() == 1); + KJ_ASSERT(errorCatcher.errors[0].statusCode == 1002); + } + + clientTask.wait(waitScope); +} + +KJ_TEST("WebSocket missing continuation frame") { + KJ_HTTP_TEST_SETUP_IO; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + WebSocketErrorCatcher errorCatcher; + auto client = kj::mv(pipe.ends[0]); + auto server = newWebSocket(kj::mv(pipe.ends[1]), nullptr, nullptr, errorCatcher); + + byte DATA[] = { + 0x01, 0x06, 'h', 'e', 'l', 'l', 'o', ' ', // Start frame + 0x01, 0x06, 'w', 'o', 'r', 'l', 'd', '!', // Another start frame + }; + + auto clientTask = client->write(DATA, sizeof(DATA)); + + { + bool gotException = false; + auto serverTask = server->receive().then([](auto&& m) {}, [&gotException](kj::Exception&& ex) { gotException = true; }); + serverTask.wait(waitScope); + KJ_ASSERT(gotException); + KJ_ASSERT(errorCatcher.errors.size() == 1); + } + + clientTask.wait(waitScope); +} + +KJ_TEST("WebSocket fragmented control frame") { + KJ_HTTP_TEST_SETUP_IO; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + WebSocketErrorCatcher errorCatcher; + auto client = kj::mv(pipe.ends[0]); + auto server = newWebSocket(kj::mv(pipe.ends[1]), nullptr, nullptr, errorCatcher); + + byte DATA[] = { + 0x09, 0x04, 'd', 'a', 't', 'a' // Fragmented ping frame + }; + + auto clientTask = client->write(DATA, sizeof(DATA)); + + { + bool gotException = false; + auto serverTask = server->receive().then([](auto&& m) {}, [&gotException](kj::Exception&& ex) { gotException = true; }); + serverTask.wait(waitScope); + KJ_ASSERT(gotException); + KJ_ASSERT(errorCatcher.errors.size() == 1); + KJ_ASSERT(errorCatcher.errors[0].statusCode == 1002); + } + + clientTask.wait(waitScope); +} + +KJ_TEST("WebSocket unknown opcode") { + KJ_HTTP_TEST_SETUP_IO; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + WebSocketErrorCatcher errorCatcher; + auto client = kj::mv(pipe.ends[0]); + auto server = newWebSocket(kj::mv(pipe.ends[1]), nullptr, nullptr, errorCatcher); + + byte DATA[] = { + 0x85, 0x04, 'd', 'a', 't', 'a' // 5 is a reserved opcode + }; + + auto clientTask = client->write(DATA, sizeof(DATA)); + + { + bool gotException = false; + auto serverTask = server->receive().then([](auto&& m) {}, [&gotException](kj::Exception&& ex) { gotException = true; }); + serverTask.wait(waitScope); + KJ_ASSERT(gotException); + KJ_ASSERT(errorCatcher.errors.size() == 1); + KJ_ASSERT(errorCatcher.errors[0].statusCode == 1002); + } + + clientTask.wait(waitScope); +} + KJ_TEST("WebSocket unsolicited pong") { KJ_HTTP_TEST_SETUP_IO; auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; @@ -2038,7 +2267,7 @@ KJ_TEST("WebSocket pump byte counting") { // The pump completes successfully, forwarding the disconnect. pumpTask.wait(waitScope); - // The eventual receiver gets a disconnect execption. + // The eventual receiver gets a disconnect exception. // (Note: We don't use KJ_EXPECT_THROW here because under -fno-exceptions it forks and we lose // state.) receiveTask.then([](auto) { @@ -2106,10 +2335,62 @@ KJ_TEST("WebSocket pump disconnect on receive") { // The pump completes successfully, forwarding the disconnect. pumpTask.wait(waitScope); - // The eventual receiver gets a disconnect execption. + // The eventual receiver gets a disconnect exception. KJ_EXPECT_THROW(DISCONNECTED, receiveTask.wait(waitScope)); } +KJ_TEST("WebSocket abort propagates through pipe") { + // Pumping one end of a WebSocket pipe into another WebSocket which later becomes aborted will + // cancel the pump promise with a DISCONNECTED exception. + + KJ_HTTP_TEST_SETUP_IO; + auto pipe1 = KJ_HTTP_TEST_CREATE_2PIPE; + + auto server = newWebSocket(kj::mv(pipe1.ends[1]), nullptr); + auto client = newWebSocket(kj::mv(pipe1.ends[0]), nullptr); + + auto wsPipe = newWebSocketPipe(); + + auto downstreamPump = wsPipe.ends[0]->pumpTo(*server); + KJ_EXPECT(!downstreamPump.poll(waitScope)); + + client->abort(); + + KJ_EXPECT(downstreamPump.poll(waitScope)); + KJ_EXPECT_THROW_RECOVERABLE(DISCONNECTED, downstreamPump.wait(waitScope)); +} + +KJ_TEST("WebSocket maximum message size") { + KJ_HTTP_TEST_SETUP_IO; + auto pipe =KJ_HTTP_TEST_CREATE_2PIPE; + + WebSocketErrorCatcher errorCatcher; + FakeEntropySource maskGenerator; + auto client = newWebSocket(kj::mv(pipe.ends[0]), maskGenerator); + auto server = newWebSocket(kj::mv(pipe.ends[1]), nullptr, nullptr, errorCatcher); + + size_t maxSize = 100; + auto biggestAllowedString = kj::strArray(kj::repeat(kj::StringPtr("A"), maxSize), ""); + auto tooBigString = kj::strArray(kj::repeat(kj::StringPtr("B"), maxSize + 1), ""); + + auto clientTask = client->send(biggestAllowedString) + .then([&]() { return client->send(tooBigString); }) + .then([&]() { return client->close(1234, "done"); }); + + { + auto message = server->receive(maxSize).wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get().size() == maxSize); + } + + { + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("too large", + server->receive(maxSize).ignoreResult().wait(waitScope)); + KJ_ASSERT(errorCatcher.errors.size() == 1); + KJ_ASSERT(errorCatcher.errors[0].statusCode == 1009); + } +} + class TestWebSocketService final: public HttpService, private kj::TaskSet::ErrorHandler { public: TestWebSocketService(HttpHeaderTable& headerTable, HttpHeaderId hMyHeader) @@ -2183,6 +2464,40 @@ const char WEBSOCKET_RESPONSE_HANDSHAKE[] = "Sec-WebSocket-Accept: pShtIFKT0s8RYZvnWY/CrjQD8CM=\r\n" "My-Header: respond-foo\r\n" "\r\n"; +#if KJ_HAS_ZLIB +const char WEBSOCKET_COMPRESSION_HANDSHAKE[] = + " HTTP/1.1\r\n" + "Connection: Upgrade\r\n" + "Upgrade: websocket\r\n" + "Sec-WebSocket-Key: DCI4TgwiOE4MIjhODCI4Tg==\r\n" + "Sec-WebSocket-Version: 13\r\n" + "Sec-WebSocket-Extensions: permessage-deflate; server_no_context_takeover\r\n" + "\r\n"; +const char WEBSOCKET_COMPRESSION_RESPONSE_HANDSHAKE[] = + "HTTP/1.1 101 Switching Protocols\r\n" + "Connection: Upgrade\r\n" + "Upgrade: websocket\r\n" + "Sec-WebSocket-Accept: pShtIFKT0s8RYZvnWY/CrjQD8CM=\r\n" + "Sec-WebSocket-Extensions: permessage-deflate; server_no_context_takeover\r\n" + "\r\n"; +const char WEBSOCKET_COMPRESSION_CLIENT_DISCARDS_CTX_HANDSHAKE[] = + " HTTP/1.1\r\n" + "Connection: Upgrade\r\n" + "Upgrade: websocket\r\n" + "Sec-WebSocket-Key: DCI4TgwiOE4MIjhODCI4Tg==\r\n" + "Sec-WebSocket-Version: 13\r\n" + "Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; " + "server_no_context_takeover\r\n" + "\r\n"; +const char WEBSOCKET_COMPRESSION_CLIENT_DISCARDS_CTX_RESPONSE_HANDSHAKE[] = + "HTTP/1.1 101 Switching Protocols\r\n" + "Connection: Upgrade\r\n" + "Upgrade: websocket\r\n" + "Sec-WebSocket-Accept: pShtIFKT0s8RYZvnWY/CrjQD8CM=\r\n" + "Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; " + "server_no_context_takeover\r\n" + "\r\n"; +#endif // KJ_HAS_ZLIB const char WEBSOCKET_RESPONSE_HANDSHAKE_ERROR[] = "HTTP/1.1 404 Not Found\r\n" "Content-Length: 0\r\n" @@ -2199,6 +2514,33 @@ const byte WEBSOCKET_SEND_CLOSE[] = const byte WEBSOCKET_REPLY_CLOSE[] = { 0x88, 0x11, 0x12, 0x35, 'c','l','o','s','e','-','r','e','p','l','y',':','q','u','x' }; +#if KJ_HAS_ZLIB +const byte WEBSOCKET_FIRST_COMPRESSED_MESSAGE[] = + { 0xc1, 0x07, 0xf2, 0x48, 0xcd, 0xc9, 0xc9, 0x07, 0x00 }; +// See this example: https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.3.2 +const byte WEBSOCKET_SEND_COMPRESSED_MESSAGE[] = + { 0xc1, 0x87, 12, 34, 56, 78, 0xf2^12, 0x48^34, 0xcd^56, 0xc9^78, 0xc9^12, 0x07^34, 0x00^56 }; +const byte WEBSOCKET_SEND_COMPRESSED_MESSAGE_REUSE_CTX[] = + { 0xc1, 0x85, 12, 34, 56, 78, 0xf2^12, 0x00^34, 0x11^56, 0x00^78, 0x00^12}; +// See same compression example, but where `client_no_context_takeover` is used (saves 2 bytes). +const byte WEBSOCKET_DEFLATE_NO_COMPRESSION_MESSAGE[] = + { 0xc1, 0x0b, 0x00, 0x05, 0x00, 0xfa, 0xff, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x00 }; +// See this example: https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.3.3 +// This uses a DEFLATE block with no compression. +const byte WEBSOCKET_BFINAL_SET_MESSAGE[] = + { 0xc1, 0x08, 0xf3, 0x48, 0xcd, 0xc9, 0xc9, 0x07, 0x00, 0x00 }; +// See this example: https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.3.4 +// This uses a DEFLATE block with BFINAL set to 1. +const byte WEBSOCKET_TWO_DEFLATE_BLOCKS_MESSAGE[] = + { 0xc1, 0x0d, 0xf2, 0x48, 0x05, 0x00, 0x00, 0x00, 0xff, 0xff, 0xca, 0xc9, 0xc9, 0x07, 0x00 }; +// See this example: https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.3.5 +// This uses two DEFLATE blocks in a single message. +const byte WEBSOCKET_EMPTY_COMPRESSED_MESSAGE[] = + { 0xc1, 0x01, 0x00 }; +const byte WEBSOCKET_EMPTY_SEND_COMPRESSED_MESSAGE[] = + { 0xc1, 0x81, 12, 34, 56, 78, 0x00^12 }; +#endif // KJ_HAS_ZLIB + template kj::ArrayPtr asBytes(const char (&chars)[s]) { return kj::ArrayPtr(chars, s - 1).asBytes(); @@ -2238,539 +2580,1245 @@ void testWebSocketClient(kj::WaitScope& waitScope, HttpHeaderTable& headerTable, } } -inline kj::Promise writeA(kj::AsyncOutputStream& out, kj::ArrayPtr data) { - return out.write(data.begin(), data.size()); -} - -KJ_TEST("HttpClient WebSocket handshake") { - KJ_HTTP_TEST_SETUP_IO; - auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - - auto request = kj::str("GET /websocket", WEBSOCKET_REQUEST_HANDSHAKE); - - auto serverTask = expectRead(*pipe.ends[1], request) - .then([&]() { return writeA(*pipe.ends[1], asBytes(WEBSOCKET_RESPONSE_HANDSHAKE)); }) - .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_FIRST_MESSAGE_INLINE); }) - .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_MESSAGE); }) - .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_REPLY_MESSAGE); }) - .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_CLOSE); }) - .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_REPLY_CLOSE); }) - .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); +#if KJ_HAS_ZLIB +void testWebSocketTwoMessageCompression(kj::WaitScope& waitScope, HttpHeaderTable& headerTable, + kj::HttpHeaderId extHeader, kj::StringPtr extensions, + HttpClient& client) { + // In this test, the server will always use `server_no_context_takeover` (since we can just reuse + // the message). However, we will modify the client's compressor in different ways to see how the + // compressed message changes. - HttpHeaderTable::Builder tableBuilder; - HttpHeaderId hMyHeader = tableBuilder.add("My-Header"); - auto headerTable = tableBuilder.build(); + kj::HttpHeaders headers(headerTable); + headers.set(extHeader, extensions); + auto response = client.openWebSocket("/websocket", headers).wait(waitScope); - FakeEntropySource entropySource; - HttpClientSettings clientSettings; - clientSettings.entropySource = entropySource; + KJ_EXPECT(response.statusCode == 101); + KJ_EXPECT(response.statusText == "Switching Protocols", response.statusText); + KJ_EXPECT(KJ_ASSERT_NONNULL(response.headers->get(extHeader)).startsWith("permessage-deflate")); + KJ_ASSERT(response.webSocketOrBody.is>()); + auto ws = kj::mv(response.webSocketOrBody.get>()); - auto client = newHttpClient(*headerTable, *pipe.ends[0], clientSettings); + { + auto message = ws->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get() == "Hello"); + } + ws->send(kj::StringPtr("Hello")).wait(waitScope); - testWebSocketClient(waitScope, *headerTable, hMyHeader, *client); + { + auto message = ws->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get() == "Hello"); + } + ws->send(kj::StringPtr("Hello")).wait(waitScope); - serverTask.wait(waitScope); + ws->close(0x1234, "qux").wait(waitScope); + { + auto message = ws->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get().code == 0x1235); + KJ_EXPECT(message.get().reason == "close-reply:qux"); + } } +#endif // KJ_HAS_ZLIB -KJ_TEST("HttpClient WebSocket error") { - KJ_HTTP_TEST_SETUP_IO; - auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - - auto request = kj::str("GET /websocket", WEBSOCKET_REQUEST_HANDSHAKE); - - auto serverTask = expectRead(*pipe.ends[1], request) - .then([&]() { return writeA(*pipe.ends[1], asBytes(WEBSOCKET_RESPONSE_HANDSHAKE_ERROR)); }) - .then([&]() { return expectRead(*pipe.ends[1], request); }) - .then([&]() { return writeA(*pipe.ends[1], asBytes(WEBSOCKET_RESPONSE_HANDSHAKE_ERROR)); }) - .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); - - HttpHeaderTable::Builder tableBuilder; - HttpHeaderId hMyHeader = tableBuilder.add("My-Header"); - auto headerTable = tableBuilder.build(); - - FakeEntropySource entropySource; - HttpClientSettings clientSettings; - clientSettings.entropySource = entropySource; +#if KJ_HAS_ZLIB +void testWebSocketEmptyMessageCompression(kj::WaitScope& waitScope, HttpHeaderTable& headerTable, + kj::HttpHeaderId extHeader, kj::StringPtr extensions, + HttpClient& client) { + // Confirm that we can send empty messages when compression is enabled. - auto client = newHttpClient(*headerTable, *pipe.ends[0], clientSettings); + kj::HttpHeaders headers(headerTable); + headers.set(extHeader, extensions); + auto response = client.openWebSocket("/websocket", headers).wait(waitScope); - kj::HttpHeaders headers(*headerTable); - headers.set(hMyHeader, "foo"); + KJ_EXPECT(response.statusCode == 101); + KJ_EXPECT(response.statusText == "Switching Protocols", response.statusText); + KJ_EXPECT(KJ_ASSERT_NONNULL(response.headers->get(extHeader)).startsWith("permessage-deflate")); + KJ_ASSERT(response.webSocketOrBody.is>()); + auto ws = kj::mv(response.webSocketOrBody.get>()); { - auto response = client->openWebSocket("/websocket", headers).wait(waitScope); + auto message = ws->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get() == "Hello"); + } + ws->send(kj::StringPtr("Hello")).wait(waitScope); - KJ_EXPECT(response.statusCode == 404); - KJ_EXPECT(response.statusText == "Not Found", response.statusText); - KJ_EXPECT(KJ_ASSERT_NONNULL(response.headers->get(hMyHeader)) == "respond-foo"); - KJ_ASSERT(response.webSocketOrBody.is>()); + { + auto message = ws->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get() == ""); } + ws->send(kj::StringPtr("")).wait(waitScope); { - auto response = client->openWebSocket("/websocket", headers).wait(waitScope); - - KJ_EXPECT(response.statusCode == 404); - KJ_EXPECT(response.statusText == "Not Found", response.statusText); - KJ_EXPECT(KJ_ASSERT_NONNULL(response.headers->get(hMyHeader)) == "respond-foo"); - KJ_ASSERT(response.webSocketOrBody.is>()); + auto message = ws->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get() == "Hello"); } + ws->send(kj::StringPtr("Hello")).wait(waitScope); - serverTask.wait(waitScope); + ws->close(0x1234, "qux").wait(waitScope); + { + auto message = ws->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get().code == 0x1235); + KJ_EXPECT(message.get().reason == "close-reply:qux"); + } } +#endif // KJ_HAS_ZLIB + +#if KJ_HAS_ZLIB +void testWebSocketOptimizePumpProxy(kj::WaitScope& waitScope, HttpHeaderTable& headerTable, + kj::HttpHeaderId extHeader, kj::StringPtr extensions, + HttpClient& client) { + // Suppose we are proxying a websocket conversation between a client and a server. + // This looks something like: CLIENT <--> (proxyServer <==PUMP==> proxyClient) <--> SERVER + // + // We want to enable optimizedPumping from the proxy's server (which communicates with the client), + // to the proxy's client (which communicates with the origin server). + // + // For this to work, proxyServer's inbound settings must map to proxyClient's outbound settings + // (and vice versa). In this case, `ws` is `proxyClient`, so we want to take `ws`'s compression + // configuration and pass it to `proxyServer` in a way that would allow for optimizedPumping. -KJ_TEST("HttpServer WebSocket handshake") { - KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); - auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + kj::HttpHeaders headers(headerTable); + headers.set(extHeader, extensions); + auto response = client.openWebSocket("/websocket", headers).wait(waitScope); - HttpHeaderTable::Builder tableBuilder; - HttpHeaderId hMyHeader = tableBuilder.add("My-Header"); - auto headerTable = tableBuilder.build(); - TestWebSocketService service(*headerTable, hMyHeader); - HttpServer server(timer, *headerTable, service); + KJ_EXPECT(response.statusCode == 101); + KJ_EXPECT(response.statusText == "Switching Protocols", response.statusText); + KJ_EXPECT(KJ_ASSERT_NONNULL(response.headers->get(extHeader)).startsWith("permessage-deflate")); + KJ_ASSERT(response.webSocketOrBody.is>()); + auto ws = kj::mv(response.webSocketOrBody.get>()); - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + auto maybeExt = ws->getPreferredExtensions(kj::WebSocket::ExtensionsContext::REQUEST); + // Should be nullptr since we are asking `ws` (a client) to give us extensions that we can give to + // another client. Since clients cannot `optimizedPumpTo` each other, we must get null. + KJ_ASSERT(maybeExt == nullptr); - auto request = kj::str("GET /websocket", WEBSOCKET_REQUEST_HANDSHAKE); - writeA(*pipe.ends[1], request.asBytes()).wait(waitScope); - expectRead(*pipe.ends[1], WEBSOCKET_RESPONSE_HANDSHAKE).wait(waitScope); + maybeExt = ws->getPreferredExtensions(kj::WebSocket::ExtensionsContext::RESPONSE); + kj::StringPtr extStr = KJ_ASSERT_NONNULL(maybeExt); + KJ_ASSERT(extStr == "permessage-deflate; server_no_context_takeover"); + // We got back the string the client sent! + // We could then pass this string as a header to `acceptWebSocket` and ensure the `proxyServer`s + // inbound settings match the `proxyClient`s outbound settings. - expectRead(*pipe.ends[1], WEBSOCKET_FIRST_MESSAGE_INLINE).wait(waitScope); - writeA(*pipe.ends[1], WEBSOCKET_SEND_MESSAGE).wait(waitScope); - expectRead(*pipe.ends[1], WEBSOCKET_REPLY_MESSAGE).wait(waitScope); - writeA(*pipe.ends[1], WEBSOCKET_SEND_CLOSE).wait(waitScope); - expectRead(*pipe.ends[1], WEBSOCKET_REPLY_CLOSE).wait(waitScope); + ws->close(0x1234, "qux").wait(waitScope); + { + auto message = ws->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get().code == 0x1235); + KJ_EXPECT(message.get().reason == "close-reply:qux"); + } +} +#endif // KJ_HAS_ZLIB +#if KJ_HAS_ZLIB +void testWebSocketFourMessageCompression(kj::WaitScope& waitScope, HttpHeaderTable& headerTable, + kj::HttpHeaderId extHeader, kj::StringPtr extensions, + HttpClient& client) { + // In this test, the server will always use `server_no_context_takeover` (since we can just reuse + // the message). We will receive three messages. - listenTask.wait(waitScope); + kj::HttpHeaders headers(headerTable); + headers.set(extHeader, extensions); + auto response = client.openWebSocket("/websocket", headers).wait(waitScope); + + KJ_EXPECT(response.statusCode == 101); + KJ_EXPECT(response.statusText == "Switching Protocols", response.statusText); + KJ_EXPECT(KJ_ASSERT_NONNULL(response.headers->get(extHeader)).startsWith("permessage-deflate")); + KJ_ASSERT(response.webSocketOrBody.is>()); + auto ws = kj::mv(response.webSocketOrBody.get>()); + + for (size_t i = 0; i < 4; i++) { + { + auto message = ws->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get() == "Hello"); + } + } + + ws->close(0x1234, "qux").wait(waitScope); + { + auto message = ws->receive().wait(waitScope); + KJ_ASSERT(message.is()); + KJ_EXPECT(message.get().code == 0x1235); + KJ_EXPECT(message.get().reason == "close-reply:qux"); + } } +#endif // KJ_HAS_ZLIB -KJ_TEST("HttpServer WebSocket handshake error") { +inline kj::Promise writeA(kj::AsyncOutputStream& out, kj::ArrayPtr data) { + return out.write(data.begin(), data.size()); +} + +KJ_TEST("HttpClient WebSocket handshake") { KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + auto request = kj::str("GET /websocket", WEBSOCKET_REQUEST_HANDSHAKE); + + auto serverTask = expectRead(*pipe.ends[1], request) + .then([&]() { return writeA(*pipe.ends[1], asBytes(WEBSOCKET_RESPONSE_HANDSHAKE)); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_FIRST_MESSAGE_INLINE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_MESSAGE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_REPLY_MESSAGE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_CLOSE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_REPLY_CLOSE); }) + .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); + HttpHeaderTable::Builder tableBuilder; HttpHeaderId hMyHeader = tableBuilder.add("My-Header"); auto headerTable = tableBuilder.build(); - TestWebSocketService service(*headerTable, hMyHeader); - HttpServer server(timer, *headerTable, service); - - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - auto request = kj::str("GET /return-error", WEBSOCKET_REQUEST_HANDSHAKE); - writeA(*pipe.ends[1], request.asBytes()).wait(waitScope); - expectRead(*pipe.ends[1], WEBSOCKET_RESPONSE_HANDSHAKE_ERROR).wait(waitScope); + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; - // Can send more requests! - writeA(*pipe.ends[1], request.asBytes()).wait(waitScope); - expectRead(*pipe.ends[1], WEBSOCKET_RESPONSE_HANDSHAKE_ERROR).wait(waitScope); + auto client = newHttpClient(*headerTable, *pipe.ends[0], clientSettings); - pipe.ends[1]->shutdownWrite(); + testWebSocketClient(waitScope, *headerTable, hMyHeader, *client); - listenTask.wait(waitScope); + serverTask.wait(waitScope); } -// ----------------------------------------------------------------------------- +KJ_TEST("WebSocket Compression String Parsing (splitNext)") { + // Test `splitNext()`. + // We want to assert that: + // If a delimiter is found: + // - `input` is updated to point to the rest of the string after the delimiter. + // - The text before the delimiter is returned. + // If no delimiter is found: + // - `input` is updated to an empty string. + // - The text that had been in `input` is returned. -KJ_TEST("HttpServer request timeout") { - auto PIPELINE_TESTS = pipelineTestCases(); + const auto s = "permessage-deflate; client_max_window_bits=10;server_no_context_takeover"_kj; - KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); - auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + const auto expectedPartOne = "permessage-deflate"_kj; + const auto expectedRemainingOne = "client_max_window_bits=10;server_no_context_takeover"_kj; - HttpHeaderTable table; - TestHttpService service(PIPELINE_TESTS, table); - HttpServerSettings settings; - settings.headerTimeout = 1 * kj::MILLISECONDS; - HttpServer server(timer, table, service, settings); + auto cursor = s.asArray(); + auto actual = _::splitNext(cursor, ';'); + KJ_ASSERT(actual == expectedPartOne); - // Shouldn't hang! Should time out. - auto promise = server.listenHttp(kj::mv(pipe.ends[0])); - KJ_EXPECT(!promise.poll(waitScope)); - timer.advanceTo(timer.now() + settings.headerTimeout / 2); - KJ_EXPECT(!promise.poll(waitScope)); - timer.advanceTo(timer.now() + settings.headerTimeout); - promise.wait(waitScope); + _::stripLeadingAndTrailingSpace(cursor); + KJ_ASSERT(cursor == expectedRemainingOne.asArray()); - // Closes the connection without sending anything. - KJ_EXPECT(pipe.ends[1]->readAllText().wait(waitScope) == ""); + const auto expectedPartTwo = "client_max_window_bits=10"_kj; + const auto expectedRemainingTwo = "server_no_context_takeover"_kj; + + actual = _::splitNext(cursor, ';'); + KJ_ASSERT(actual == expectedPartTwo); + KJ_ASSERT(cursor == expectedRemainingTwo); + + const auto expectedPartThree = "server_no_context_takeover"_kj; + const auto expectedRemainingThree = ""_kj; + actual = _::splitNext(cursor, ';'); + KJ_ASSERT(actual == expectedPartThree); + KJ_ASSERT(cursor == expectedRemainingThree); } -KJ_TEST("HttpServer pipeline timeout") { - auto PIPELINE_TESTS = pipelineTestCases(); +KJ_TEST("WebSocket Compression String Parsing (splitParts)") { + // Test `splitParts()`. + // We want to assert that we: + // 1. Correctly split by the delimiter. + // 2. Strip whitespace before/after the extracted part. + const auto permitted = "permessage-deflate"_kj; + + const auto s = "permessage-deflate; client_max_window_bits=10;server_no_context_takeover, " + " permessage-deflate; ; ," // strips leading whitespace + "permessage-deflate"_kj; + + // These are the expected values. + const auto extOne = "permessage-deflate; client_max_window_bits=10;server_no_context_takeover"_kj; + const auto extTwo = "permessage-deflate; ;"_kj; + const auto extThree = "permessage-deflate"_kj; + + auto actualExtensions = kj::_::splitParts(s, ','); + KJ_ASSERT(actualExtensions.size() == 3); + KJ_ASSERT(actualExtensions[0] == extOne); + KJ_ASSERT(actualExtensions[1] == extTwo); + KJ_ASSERT(actualExtensions[2] == extThree); + // Splitting by ',' was fine, now let's try splitting the parameters (split by ';'). + + const auto paramOne = "client_max_window_bits=10"_kj; + const auto paramTwo = "server_no_context_takeover"_kj; + + auto actualParamsFirstExt = kj::_::splitParts(actualExtensions[0], ';'); + KJ_ASSERT(actualParamsFirstExt.size() == 3); + KJ_ASSERT(actualParamsFirstExt[0] == permitted); + KJ_ASSERT(actualParamsFirstExt[1] == paramOne); + KJ_ASSERT(actualParamsFirstExt[2] == paramTwo); + + auto actualParamsSecondExt = kj::_::splitParts(actualExtensions[1], ';'); + KJ_ASSERT(actualParamsSecondExt.size() == 2); + KJ_ASSERT(actualParamsSecondExt[0] == permitted); + KJ_ASSERT(actualParamsSecondExt[1] == ""_kj); // Note that the whitespace was stripped. + + auto actualParamsThirdExt = kj::_::splitParts(actualExtensions[2], ';'); + // No parameters supplied in the third offer. We expect to only see the extension name. + KJ_ASSERT(actualParamsThirdExt.size() == 1); + KJ_ASSERT(actualParamsThirdExt[0] == permitted); +} - KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); - auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; +KJ_TEST("WebSocket Compression String Parsing (toKeysAndVals)") { + // If an "=" is found, everything before the "=" goes into the `Key` and everything after goes + // into the `Value`. Otherwise, everything goes into the `Key` and the `Value` remains null. + const auto cleanParameters = "client_no_context_takeover; client_max_window_bits; " + "server_max_window_bits=10"_kj; + auto parts = _::splitParts(cleanParameters, ';'); + auto keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + KJ_ASSERT(keysMaybeValues.size() == 3); + + auto firstKey = "client_no_context_takeover"_kj; + KJ_ASSERT(keysMaybeValues[0].key == firstKey.asArray()); + KJ_ASSERT(keysMaybeValues[0].val == nullptr); + + auto secondKey = "client_max_window_bits"_kj; + KJ_ASSERT(keysMaybeValues[1].key == secondKey.asArray()); + KJ_ASSERT(keysMaybeValues[1].val == nullptr); + + auto thirdKey = "server_max_window_bits"_kj; + auto thirdVal = "10"_kj; + KJ_ASSERT(keysMaybeValues[2].key == thirdKey.asArray()); + KJ_ASSERT(keysMaybeValues[2].val == thirdVal.asArray()); + + const auto weirdParameters = "= 14 ; client_max_window_bits= ; server_max_window_bits =hello"_kj; + // This is weird because: + // 1. Parameter 1 has no key. + // 2. Parameter 2 has an "=" but no subsequent value. + // 3. Parameter 3 has an "=" with an invalid value. + // That said, we don't mind if the parameters are weird when calling this function. The point + // is to create KeyMaybeVal pairs and process them later. + + parts = _::splitParts(weirdParameters, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + KJ_ASSERT(keysMaybeValues.size() == 3); + + firstKey = ""_kj; + auto firstVal = "14"_kj; + KJ_ASSERT(keysMaybeValues[0].key == firstKey.asArray()); + KJ_ASSERT(keysMaybeValues[0].val == firstVal.asArray()); + + secondKey = "client_max_window_bits"_kj; + auto secondVal = ""_kj; + KJ_ASSERT(keysMaybeValues[1].key == secondKey.asArray()); + KJ_ASSERT(keysMaybeValues[1].val == secondVal.asArray()); + + thirdKey = "server_max_window_bits"_kj; + thirdVal = "hello"_kj; + KJ_ASSERT(keysMaybeValues[2].key == thirdKey.asArray()); + KJ_ASSERT(keysMaybeValues[2].val == thirdVal.asArray()); +} - HttpHeaderTable table; - TestHttpService service(PIPELINE_TESTS, table); - HttpServerSettings settings; - settings.pipelineTimeout = 1 * kj::MILLISECONDS; - HttpServer server(timer, table, service, settings); +KJ_TEST("WebSocket Compression String Parsing (populateUnverifiedConfig)") { + // First we'll cover cases where the `UnverifiedConfig` is successfully constructed, + // which indicates the offer was structured in a parseable way. Next, we'll cover cases where the + // offer is structured incorrectly. + const auto cleanParameters = "client_no_context_takeover; client_max_window_bits; " + "server_max_window_bits=10"_kj; + auto parts = _::splitParts(cleanParameters, ';'); + auto keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + + auto unverified = _::populateUnverifiedConfig(keysMaybeValues); + auto config = KJ_ASSERT_NONNULL(unverified); + KJ_ASSERT(config.clientNoContextTakeover == true); + KJ_ASSERT(config.serverNoContextTakeover == false); + + auto clientBits = KJ_ASSERT_NONNULL(config.clientMaxWindowBits); + KJ_ASSERT(clientBits == ""_kj); + auto serverBits = KJ_ASSERT_NONNULL(config.serverMaxWindowBits); + KJ_ASSERT(serverBits == "10"_kj); + // Valid config can be populated succesfully. + + const auto weirdButValidParameters = "client_no_context_takeover; client_max_window_bits; " + "server_max_window_bits=this_should_be_a_number"_kj; + parts = _::splitParts(weirdButValidParameters, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + + unverified = _::populateUnverifiedConfig(keysMaybeValues); + config = KJ_ASSERT_NONNULL(unverified); + KJ_ASSERT(config.clientNoContextTakeover == true); + KJ_ASSERT(config.serverNoContextTakeover == false); + + clientBits = KJ_ASSERT_NONNULL(config.clientMaxWindowBits); + KJ_ASSERT(clientBits == ""_kj); + serverBits = KJ_ASSERT_NONNULL(config.serverMaxWindowBits); + KJ_ASSERT(serverBits == "this_should_be_a_number"_kj); + // Note that while the value associated with `server_max_window_bits` is not a number, + // `populateUnverifiedConfig` succeeds because the parameter[=value] is generally structured + // correctly. + + // --- HANDLE INCORRECTLY STRUCTURED OFFERS --- + auto invalidKey = "somethingKey; client_max_window_bits;"_kj; + parts = _::splitParts(invalidKey, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + KJ_ASSERT(_::populateUnverifiedConfig(keysMaybeValues) == nullptr); + // Fail to populate due to invalid key name + + auto invalidKeyTwo = "client_max_window_bitsJUNK; server_no_context_takeover"_kj; + parts = _::splitParts(invalidKeyTwo, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + KJ_ASSERT(_::populateUnverifiedConfig(keysMaybeValues) == nullptr); + // Fail to populate due to invalid key name (invalid characters after valid parameter name). + + auto repeatedKey = "client_no_context_takeover; client_no_context_takeover"_kj; + parts = _::splitParts(repeatedKey, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + KJ_ASSERT(_::populateUnverifiedConfig(keysMaybeValues) == nullptr); + // Fail to populate due to repeated key name. + + auto unexpectedValue = "client_no_context_takeover="_kj; + parts = _::splitParts(unexpectedValue, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + KJ_ASSERT(_::populateUnverifiedConfig(keysMaybeValues) == nullptr); + // Fail to populate due to value in `x_no_context_takeover` parameter (unexpected value). + + auto unexpectedValueTwo = "client_no_context_takeover= "_kj; + parts = _::splitParts(unexpectedValueTwo, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + KJ_ASSERT(_::populateUnverifiedConfig(keysMaybeValues) == nullptr); + // Fail to populate due to value in `x_no_context_takeover` parameter. + + auto emptyValue = "client_max_window_bits="_kj; + parts = _::splitParts(emptyValue, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + KJ_ASSERT(_::populateUnverifiedConfig(keysMaybeValues) == nullptr); + // Fail to populate due to empty value in `x_max_window_bits` parameter. + // "Empty" in this case means an "=" was provided, but no subsequent value was provided. + + auto emptyValueTwo = "client_max_window_bits= "_kj; + parts = _::splitParts(emptyValueTwo, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + KJ_ASSERT(_::populateUnverifiedConfig(keysMaybeValues) == nullptr); + // Fail to populate due to empty value in `x_max_window_bits` parameter. + // "Empty" in this case means an "=" was provided, but no subsequent value was provided. +} - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); +KJ_TEST("WebSocket Compression String Parsing (validateCompressionConfig)") { + // We've tested `toKeysAndVals()` and `populateUnverifiedConfig()`, so we only need to test + // correctly structured offers/agreements here. + const auto cleanParameters = "client_no_context_takeover; client_max_window_bits; " + "server_max_window_bits=10"_kj; + auto parts = _::splitParts(cleanParameters, ';'); + auto keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + auto maybeUnverified = _::populateUnverifiedConfig(keysMaybeValues); + auto unverified = KJ_ASSERT_NONNULL(maybeUnverified); + auto maybeValid = _::validateCompressionConfig(kj::mv(unverified), false); // Validate as Server. + auto valid = KJ_ASSERT_NONNULL(maybeValid); + KJ_ASSERT(valid.inboundNoContextTakeover == true); + KJ_ASSERT(valid.outboundNoContextTakeover == false); + auto inboundBits = KJ_ASSERT_NONNULL(valid.inboundMaxWindowBits); + KJ_ASSERT(inboundBits == 15); // `client_max_window_bits` can be empty in an offer. + auto outboundBits = KJ_ASSERT_NONNULL(valid.outboundMaxWindowBits); + KJ_ASSERT(outboundBits == 10); + // Valid config successfully constructed. + + const auto correctStructureButInvalid = "client_no_context_takeover; client_max_window_bits; " + "server_max_window_bits=this_should_be_a_number"_kj; + parts = _::splitParts(correctStructureButInvalid, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + + maybeUnverified = _::populateUnverifiedConfig(keysMaybeValues); + unverified = KJ_ASSERT_NONNULL(maybeUnverified); + maybeValid = _::validateCompressionConfig(kj::mv(unverified), false); // Validate as Server. + KJ_ASSERT(maybeValid == nullptr); + // The config "looks" correct, but the `server_max_window_bits` parameter has an invalid value. + + const auto invalidRange = "client_max_window_bits; server_max_window_bits=18;"_kj; + // `server_max_window_bits` is out of range, decline. + parts = _::splitParts(invalidRange, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + maybeUnverified = _::populateUnverifiedConfig(keysMaybeValues); + maybeValid = _::validateCompressionConfig(kj::mv(KJ_REQUIRE_NONNULL(maybeUnverified)), false); + KJ_ASSERT(maybeValid == nullptr); + + const auto invalidRangeTwo = "client_max_window_bits=4"_kj; + // `server_max_window_bits` is out of range, decline. + parts = _::splitParts(invalidRangeTwo, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + maybeUnverified = _::populateUnverifiedConfig(keysMaybeValues); + maybeValid = _::validateCompressionConfig(kj::mv(KJ_REQUIRE_NONNULL(maybeUnverified)), false); + KJ_ASSERT(maybeValid == nullptr); + + const auto invalidRequest = "server_max_window_bits"_kj; + // `sever_max_window_bits` must have a value in a request AND a response. + parts = _::splitParts(invalidRequest, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + maybeUnverified = _::populateUnverifiedConfig(keysMaybeValues); + maybeValid = _::validateCompressionConfig(kj::mv(KJ_REQUIRE_NONNULL(maybeUnverified)), false); + KJ_ASSERT(maybeValid == nullptr); + + const auto invalidResponse = "client_max_window_bits"_kj; + // `client_max_window_bits` must have a value in a response. + parts = _::splitParts(invalidResponse, ';'); + keysMaybeValues = _::toKeysAndVals(parts.asPtr()); + maybeUnverified = _::populateUnverifiedConfig(keysMaybeValues); + maybeValid = _::validateCompressionConfig(kj::mv(KJ_REQUIRE_NONNULL(maybeUnverified)), true); + KJ_ASSERT(maybeValid == nullptr); +} - // Do one request. - pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) - .wait(waitScope); - expectRead(*pipe.ends[1], PIPELINE_TESTS[0].response.raw).wait(waitScope); +KJ_TEST("WebSocket Compression String Parsing (findValidExtensionOffers)") { + // Test that we can extract only the valid extensions from a string of offers. + constexpr auto extensions = "permessage-deflate; " // Valid offer. + "client_no_context_takeover; " + "client_max_window_bits; " + "server_max_window_bits=10, " + "permessage-deflate; " // Another valid offer. + "client_no_context_takeover; " + "client_max_window_bits, " + "permessage-invalid; " // Invalid ext name. + "client_no_context_takeover, " + "permessage-deflate; " // Invalid parmeter. + "invalid_parameter; " + "client_max_window_bits; " + "server_max_window_bits=10, " + "permessage-deflate; " // Invalid parmeter value. + "server_max_window_bits=should_be_a_number, " + "permessage-deflate; " // Unexpected parmeter value. + "client_max_window_bits=true, " + "permessage-deflate; " // Missing expected parmeter value. + "server_max_window_bits, " + "permessage-deflate; " // Invalid parameter value (too high). + "client_max_window_bits=99, " + "permessage-deflate; " // Invalid parameter value (too low). + "client_max_window_bits=4, " + "permessage-deflate; " // Invalid parameter (repeated). + "client_max_window_bits; " + "client_max_window_bits, " + "permessage-deflate"_kj; // Valid offer (no parameters). + + auto validOffers = _::findValidExtensionOffers(extensions); + KJ_ASSERT(validOffers.size() == 3); + KJ_ASSERT(validOffers[0].outboundNoContextTakeover == true); + KJ_ASSERT(validOffers[0].inboundNoContextTakeover == false); + KJ_ASSERT(validOffers[0].outboundMaxWindowBits == 15); + KJ_ASSERT(validOffers[0].inboundMaxWindowBits == 10); + + KJ_ASSERT(validOffers[1].outboundNoContextTakeover == true); + KJ_ASSERT(validOffers[1].inboundNoContextTakeover == false); + KJ_ASSERT(validOffers[1].outboundMaxWindowBits == 15); + KJ_ASSERT(validOffers[1].inboundMaxWindowBits == nullptr); + + KJ_ASSERT(validOffers[2].outboundNoContextTakeover == false); + KJ_ASSERT(validOffers[2].inboundNoContextTakeover == false); + KJ_ASSERT(validOffers[2].outboundMaxWindowBits == nullptr); + KJ_ASSERT(validOffers[2].inboundMaxWindowBits == nullptr); +} - // Listen task should time out even though we didn't shutdown the socket. - KJ_EXPECT(!listenTask.poll(waitScope)); - timer.advanceTo(timer.now() + settings.pipelineTimeout / 2); - KJ_EXPECT(!listenTask.poll(waitScope)); - timer.advanceTo(timer.now() + settings.pipelineTimeout); - listenTask.wait(waitScope); +KJ_TEST("WebSocket Compression String Parsing (generateExtensionRequest)") { + // Test that we can extract only the valid extensions from a string of offers. + constexpr auto extensions = "permessage-deflate; " + "client_no_context_takeover; " + "server_max_window_bits=10; " + "client_max_window_bits, " + "permessage-deflate; " + "client_no_context_takeover; " + "client_max_window_bits, " + "permessage-deflate"_kj; + constexpr auto EXPECTED = "permessage-deflate; " + "client_no_context_takeover; " + "client_max_window_bits=15; " + "server_max_window_bits=10, " + "permessage-deflate; " + "client_no_context_takeover; " + "client_max_window_bits=15, " + "permessage-deflate"_kj; + auto validOffers = _::findValidExtensionOffers(extensions); + auto extensionRequest = _::generateExtensionRequest(validOffers); + KJ_ASSERT(extensionRequest == EXPECTED); +} - // In this case, no data is sent back. - KJ_EXPECT(pipe.ends[1]->readAllText().wait(waitScope) == ""); +KJ_TEST("WebSocket Compression String Parsing (tryParseExtensionOffers)") { + // Test that we can accept a valid offer from string of offers. + constexpr auto extensions = "permessage-invalid; " // Invalid ext name. + "client_no_context_takeover, " + "permessage-deflate; " // Invalid parmeter. + "invalid_parameter; " + "client_max_window_bits; " + "server_max_window_bits=10, " + "permessage-deflate; " // Invalid parmeter value. + "server_max_window_bits=should_be_a_number, " + "permessage-deflate; " // Unexpected parmeter value. + "client_max_window_bits=true, " + "permessage-deflate; " // Missing expected parmeter value. + "server_max_window_bits, " + "permessage-deflate; " // Invalid parameter value (too high). + "client_max_window_bits=99, " + "permessage-deflate; " // Invalid parameter value (too low). + "client_max_window_bits=4, " + "permessage-deflate; " // Invalid parameter (repeated). + "client_max_window_bits; " + "client_max_window_bits, " + "permessage-deflate; " // Valid offer. + "client_no_context_takeover; " + "client_max_window_bits; " + "server_max_window_bits=10, " + "permessage-deflate; " // Another valid offer. + "client_no_context_takeover; " + "client_max_window_bits, " + "permessage-deflate"_kj; // Valid offer (no parameters). + + auto maybeAccepted = _::tryParseExtensionOffers(extensions); + auto accepted = KJ_ASSERT_NONNULL(maybeAccepted); + KJ_ASSERT(accepted.outboundNoContextTakeover == false); + KJ_ASSERT(accepted.inboundNoContextTakeover == true); + KJ_ASSERT(accepted.outboundMaxWindowBits == 10); + KJ_ASSERT(accepted.inboundMaxWindowBits == 15); + + // Try the second valid offer from the big list above. + auto offerTwo = "permessage-deflate; client_no_context_takeover; client_max_window_bits"_kj; + maybeAccepted = _::tryParseExtensionOffers(offerTwo); + accepted = KJ_ASSERT_NONNULL(maybeAccepted); + KJ_ASSERT(accepted.outboundNoContextTakeover == false); + KJ_ASSERT(accepted.inboundNoContextTakeover == true); + KJ_ASSERT(accepted.outboundMaxWindowBits == nullptr); + KJ_ASSERT(accepted.inboundMaxWindowBits == 15); + + auto offerThree = "permessage-deflate"_kj; // The third valid offer. + maybeAccepted = _::tryParseExtensionOffers(offerThree); + accepted = KJ_ASSERT_NONNULL(maybeAccepted); + KJ_ASSERT(accepted.outboundNoContextTakeover == false); + KJ_ASSERT(accepted.inboundNoContextTakeover == false); + KJ_ASSERT(accepted.outboundMaxWindowBits == nullptr); + KJ_ASSERT(accepted.inboundMaxWindowBits == nullptr); + + auto invalid = "invalid"_kj; // Any of the invalid offers we saw above would return NULL. + maybeAccepted = _::tryParseExtensionOffers(invalid); + KJ_ASSERT(maybeAccepted == nullptr); } -class BrokenHttpService final: public HttpService { - // HttpService that doesn't send a response. -public: - BrokenHttpService() = default; - explicit BrokenHttpService(kj::Exception&& exception): exception(kj::mv(exception)) {} +KJ_TEST("WebSocket Compression String Parsing (tryParseAllExtensionOffers)") { + // We want to test the following: + // 1. We reject all if we don't find an offer we can accept. + // 2. We accept one after iterating over offers that we have to reject. + // 3. We accept an offer with a `server_max_window_bits` parameter if the manual config allows + // it, and choose the smaller "number of bits" (from clients request). + // 4. We accept an offer with a `server_no_context_takeover` parameter if the manual config + // allows it, and choose the smaller "number of bits" (from manual config) from + // `server_max_window_bits`. + constexpr auto serverOnly = "permessage-deflate; " + "client_no_context_takeover; " + "server_max_window_bits = 14; " + "server_no_context_takeover, " + "permessage-deflate; " + "client_no_context_takeover; " + "server_no_context_takeover, " + "permessage-deflate; " + "client_no_context_takeover; " + "server_max_window_bits = 14"_kj; + + constexpr auto acceptLast = "permessage-deflate; " + "client_no_context_takeover; " + "server_max_window_bits = 14; " + "server_no_context_takeover, " + "permessage-deflate; " + "client_no_context_takeover; " + "server_no_context_takeover, " + "permessage-deflate; " + "client_no_context_takeover; " + "server_max_window_bits = 14, " + "permessage-deflate; " // accept this + "client_no_context_takeover"_kj; + + const auto defaultConfig = CompressionParameters(); + // Our default config is equivalent to `permessage-deflate` with no parameters. + + auto maybeAccepted = _::tryParseAllExtensionOffers(serverOnly, defaultConfig); + KJ_ASSERT(maybeAccepted == nullptr); + // Asserts that we rejected all the offers with `server_x` parameters. + + maybeAccepted = _::tryParseAllExtensionOffers(acceptLast, defaultConfig); + auto accepted = KJ_ASSERT_NONNULL(maybeAccepted); + KJ_ASSERT(accepted.outboundNoContextTakeover == false); + KJ_ASSERT(accepted.inboundNoContextTakeover == false); + KJ_ASSERT(accepted.outboundMaxWindowBits == nullptr); + KJ_ASSERT(accepted.inboundMaxWindowBits == nullptr); + // Asserts that we accepted the only offer that did not have a `server_x` parameter. + + const auto allowServerBits = CompressionParameters { + false, + false, + 15, // server_max_window_bits = 15 + nullptr + }; + maybeAccepted = _::tryParseAllExtensionOffers(serverOnly, allowServerBits); + accepted = KJ_ASSERT_NONNULL(maybeAccepted); + KJ_ASSERT(accepted.outboundNoContextTakeover == false); + KJ_ASSERT(accepted.inboundNoContextTakeover == false); + KJ_ASSERT(accepted.outboundMaxWindowBits == 14); // Note that we chose the lower of (14, 15). + KJ_ASSERT(accepted.inboundMaxWindowBits == nullptr); + // Asserts that we accepted an offer that allowed for `server_max_window_bits` AND we chose the + // lower number of bits (in this case, the clients offer of 14). + + const auto allowServerTakeoverAndBits = CompressionParameters { + true, // server_no_context_takeover = true + false, + 13, // server_max_window_bits = 13 + nullptr + }; - kj::Promise request( - HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, - kj::AsyncInputStream& requestBody, Response& responseSender) override { - return requestBody.readAllBytes().then([this](kj::Array&&) -> kj::Promise { - KJ_IF_MAYBE(e, exception) { - return kj::cp(*e); - } else { - return kj::READY_NOW; - } - }); - } + maybeAccepted = _::tryParseAllExtensionOffers(serverOnly, allowServerTakeoverAndBits); + accepted = KJ_ASSERT_NONNULL(maybeAccepted); + KJ_ASSERT(accepted.outboundNoContextTakeover == true); + KJ_ASSERT(accepted.inboundNoContextTakeover == false); + KJ_ASSERT(accepted.outboundMaxWindowBits == 13); // Note that we chose the lower of (14, 15). + KJ_ASSERT(accepted.inboundMaxWindowBits == nullptr); + // Asserts that we accepted an offer that allowed for `server_no_context_takeover` AND we chose + // the lower number of bits (in this case, the manual config's choice of 13). +} -private: - kj::Maybe exception; -}; +KJ_TEST("WebSocket Compression String Parsing (generateExtensionResponse)") { + // Test that we can extract only the valid extensions from a string of offers. + constexpr auto extensions = "permessage-deflate; " + "client_no_context_takeover; " + "server_max_window_bits=10; " + "client_max_window_bits, " + "permessage-deflate; " + "client_no_context_takeover; " + "client_max_window_bits, " + "permessage-deflate"_kj; + constexpr auto EXPECTED = "permessage-deflate; " + "client_no_context_takeover; " + "client_max_window_bits=15; " + "server_max_window_bits=10"_kj; + auto accepted = _::tryParseExtensionOffers(extensions); + auto extensionResponse = _::generateExtensionResponse(KJ_ASSERT_NONNULL(accepted)); + KJ_ASSERT(extensionResponse == EXPECTED); +} -KJ_TEST("HttpServer no response") { - auto PIPELINE_TESTS = pipelineTestCases(); +KJ_TEST("WebSocket Compression String Parsing (tryParseExtensionAgreement)") { + constexpr auto didNotOffer = "Server failed WebSocket handshake: " + "added Sec-WebSocket-Extensions when client did not offer any."_kj; + constexpr auto tooMany = "Server failed WebSocket handshake: " + "expected exactly one extension (permessage-deflate) but received more than one."_kj; + constexpr auto badExt = "Server failed WebSocket handshake: " + "response included a Sec-WebSocket-Extensions value that was not permessage-deflate."_kj; + constexpr auto badVal = "Server failed WebSocket handshake: " + "the Sec-WebSocket-Extensions header in the Response included an invalid value."_kj; + + constexpr auto tooManyExtensions = "permessage-deflate; client_no_context_takeover; " + "client_max_window_bits; server_max_window_bits=10, " + "permessage-deflate; client_no_context_takeover; client_max_window_bits;"_kj; + + auto maybeAccepted = _::tryParseExtensionAgreement(nullptr, tooManyExtensions); + KJ_ASSERT( + KJ_ASSERT_NONNULL(maybeAccepted.tryGet()).getDescription() == didNotOffer); + + Maybe defaultConfig = CompressionParameters{}; + maybeAccepted = _::tryParseExtensionAgreement(defaultConfig, tooManyExtensions); + KJ_ASSERT(KJ_ASSERT_NONNULL(maybeAccepted.tryGet()).getDescription() == tooMany); + + constexpr auto invalidExt = "permessage-invalid; " + "client_no_context_takeover; " + "client_max_window_bits; " + "server_max_window_bits=10;"; + maybeAccepted = _::tryParseExtensionAgreement(defaultConfig, invalidExt); + KJ_ASSERT(KJ_ASSERT_NONNULL(maybeAccepted.tryGet()).getDescription() == badExt); + + constexpr auto invalidVal = "permessage-deflate; " + "client_no_context_takeover; " + "client_max_window_bits; " + "server_max_window_bits=100;"; + maybeAccepted = _::tryParseExtensionAgreement(defaultConfig, invalidVal); + KJ_ASSERT(KJ_ASSERT_NONNULL(maybeAccepted.tryGet()).getDescription() == badVal); + + constexpr auto missingVal = "permessage-deflate; " + "client_no_context_takeover; " + "client_max_window_bits; " // This must have a value in a Response! + "server_max_window_bits=10;"; + maybeAccepted = _::tryParseExtensionAgreement(defaultConfig, missingVal); + KJ_ASSERT(KJ_ASSERT_NONNULL(maybeAccepted.tryGet()).getDescription() == badVal); + + constexpr auto valid = "permessage-deflate; client_no_context_takeover; " + "client_max_window_bits=15; server_max_window_bits=10"_kj; + maybeAccepted = _::tryParseExtensionAgreement(defaultConfig, valid); + auto config = KJ_ASSERT_NONNULL(maybeAccepted.tryGet()); + KJ_ASSERT(config.outboundNoContextTakeover == true); + KJ_ASSERT(config.inboundNoContextTakeover == false); + KJ_ASSERT(config.outboundMaxWindowBits == 15); + KJ_ASSERT(config.inboundMaxWindowBits == 10); + + auto client = CompressionParameters{ true, false, 15, 10 }; + // If the server ignores our `client_no_context_takeover` parameter, we (the client) still use it. + constexpr auto serverIgnores = "permessage-deflate; client_max_window_bits=15; " + "server_max_window_bits=10"_kj; + maybeAccepted = _::tryParseExtensionAgreement(client, serverIgnores); + config = KJ_ASSERT_NONNULL(maybeAccepted.tryGet()); + KJ_ASSERT(config.outboundNoContextTakeover == true); // Note that this is missing in the response. + KJ_ASSERT(config.inboundNoContextTakeover == false); + KJ_ASSERT(config.outboundMaxWindowBits == 15); + KJ_ASSERT(config.inboundMaxWindowBits == 10); +} +#if KJ_HAS_ZLIB +KJ_TEST("HttpClient WebSocket Empty Message Compression") { + // We'll try to send and receive "Hello", then "", followed by "Hello" again. KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - HttpHeaderTable table; - BrokenHttpService service; - HttpServer server(timer, table, service); + auto request = kj::str("GET /websocket", WEBSOCKET_COMPRESSION_HANDSHAKE); - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + auto serverTask = expectRead(*pipe.ends[1], request) + .then([&]() { return writeA(*pipe.ends[1], asBytes(WEBSOCKET_COMPRESSION_RESPONSE_HANDSHAKE)); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_FIRST_COMPRESSED_MESSAGE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_COMPRESSED_MESSAGE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_EMPTY_COMPRESSED_MESSAGE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_EMPTY_SEND_COMPRESSED_MESSAGE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_FIRST_COMPRESSED_MESSAGE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_COMPRESSED_MESSAGE_REUSE_CTX); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_CLOSE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_REPLY_CLOSE); }) + .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); - // Do one request. - pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) - .wait(waitScope); - auto text = pipe.ends[1]->readAllText().wait(waitScope); + HttpHeaderTable::Builder tableBuilder; + HttpHeaderId extHeader = tableBuilder.add("Sec-WebSocket-Extensions"); + auto headerTable = tableBuilder.build(); - KJ_EXPECT(text == - "HTTP/1.1 500 Internal Server Error\r\n" - "Connection: close\r\n" - "Content-Length: 51\r\n" - "Content-Type: text/plain\r\n" - "\r\n" - "ERROR: The HttpService did not generate a response.", text); -} + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + clientSettings.webSocketCompressionMode = HttpClientSettings::MANUAL_COMPRESSION; -KJ_TEST("HttpServer disconnected") { - auto PIPELINE_TESTS = pipelineTestCases(); + auto client = newHttpClient(*headerTable, *pipe.ends[0], clientSettings); + constexpr auto extensions = "permessage-deflate; server_no_context_takeover"_kj; + testWebSocketEmptyMessageCompression(waitScope, *headerTable, extHeader, extensions, *client); + + serverTask.wait(waitScope); +} +#endif // KJ_HAS_ZLIB + +#if KJ_HAS_ZLIB +KJ_TEST("HttpClient WebSocket Default Compression") { + // We'll try to send and receive "Hello" twice. The second time we receive "Hello", the compressed + // message will be smaller as a result of the client reusing the lookback window. KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - HttpHeaderTable table; - BrokenHttpService service(KJ_EXCEPTION(DISCONNECTED, "disconnected")); - HttpServer server(timer, table, service); + auto request = kj::str("GET /websocket", WEBSOCKET_COMPRESSION_HANDSHAKE); - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + auto serverTask = expectRead(*pipe.ends[1], request) + .then([&]() { return writeA(*pipe.ends[1], asBytes(WEBSOCKET_COMPRESSION_RESPONSE_HANDSHAKE)); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_FIRST_COMPRESSED_MESSAGE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_COMPRESSED_MESSAGE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_FIRST_COMPRESSED_MESSAGE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_COMPRESSED_MESSAGE_REUSE_CTX); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_CLOSE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_REPLY_CLOSE); }) + .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); - // Do one request. - pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) - .wait(waitScope); - auto text = pipe.ends[1]->readAllText().wait(waitScope); + HttpHeaderTable::Builder tableBuilder; + HttpHeaderId extHeader = tableBuilder.add("Sec-WebSocket-Extensions"); + auto headerTable = tableBuilder.build(); - KJ_EXPECT(text == "", text); -} + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + clientSettings.webSocketCompressionMode = HttpClientSettings::MANUAL_COMPRESSION; -KJ_TEST("HttpServer overloaded") { - auto PIPELINE_TESTS = pipelineTestCases(); + auto client = newHttpClient(*headerTable, *pipe.ends[0], clientSettings); + + constexpr auto extensions = "permessage-deflate; server_no_context_takeover"_kj; + testWebSocketTwoMessageCompression(waitScope, *headerTable, extHeader, extensions, *client); + serverTask.wait(waitScope); +} +#endif // KJ_HAS_ZLIB + +#if KJ_HAS_ZLIB +KJ_TEST("HttpClient WebSocket Extract Extensions") { KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - HttpHeaderTable table; - BrokenHttpService service(KJ_EXCEPTION(OVERLOADED, "overloaded")); - HttpServer server(timer, table, service); + auto request = kj::str("GET /websocket", WEBSOCKET_COMPRESSION_HANDSHAKE); - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + auto serverTask = expectRead(*pipe.ends[1], request) + .then([&]() { return writeA(*pipe.ends[1], asBytes(WEBSOCKET_COMPRESSION_RESPONSE_HANDSHAKE)); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_CLOSE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_REPLY_CLOSE); }) + .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); - // Do one request. - pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) - .wait(waitScope); - auto text = pipe.ends[1]->readAllText().wait(waitScope); - - KJ_EXPECT(text.startsWith("HTTP/1.1 503 Service Unavailable"), text); -} - -KJ_TEST("HttpServer unimplemented") { - auto PIPELINE_TESTS = pipelineTestCases(); - - KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); - auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + HttpHeaderTable::Builder tableBuilder; + HttpHeaderId extHeader = tableBuilder.add("Sec-WebSocket-Extensions"); + auto headerTable = tableBuilder.build(); - HttpHeaderTable table; - BrokenHttpService service(KJ_EXCEPTION(UNIMPLEMENTED, "unimplemented")); - HttpServer server(timer, table, service); + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + clientSettings.webSocketCompressionMode = HttpClientSettings::MANUAL_COMPRESSION; - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + auto client = newHttpClient(*headerTable, *pipe.ends[0], clientSettings); - // Do one request. - pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) - .wait(waitScope); - auto text = pipe.ends[1]->readAllText().wait(waitScope); + constexpr auto extensions = "permessage-deflate; server_no_context_takeover"_kj; + testWebSocketOptimizePumpProxy(waitScope, *headerTable, extHeader, extensions, *client); - KJ_EXPECT(text.startsWith("HTTP/1.1 501 Not Implemented"), text); + serverTask.wait(waitScope); } +#endif // KJ_HAS_ZLIB -KJ_TEST("HttpServer threw exception") { - auto PIPELINE_TESTS = pipelineTestCases(); - +#if KJ_HAS_ZLIB +KJ_TEST("HttpClient WebSocket Compression (Client Discards Compression Context)") { + // We'll try to send and receive "Hello" twice. The second time we receive "Hello", the compressed + // message will be the same size as the first time, since the client discards the lookback window. KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - HttpHeaderTable table; - BrokenHttpService service(KJ_EXCEPTION(FAILED, "failed")); - HttpServer server(timer, table, service); + auto request = kj::str("GET /websocket", WEBSOCKET_COMPRESSION_CLIENT_DISCARDS_CTX_HANDSHAKE); - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + auto serverTask = expectRead(*pipe.ends[1], request) + .then([&]() { return writeA(*pipe.ends[1], + asBytes(WEBSOCKET_COMPRESSION_CLIENT_DISCARDS_CTX_RESPONSE_HANDSHAKE)); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_FIRST_COMPRESSED_MESSAGE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_COMPRESSED_MESSAGE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_FIRST_COMPRESSED_MESSAGE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_COMPRESSED_MESSAGE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_CLOSE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_REPLY_CLOSE); }) + .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); - // Do one request. - pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) - .wait(waitScope); - auto text = pipe.ends[1]->readAllText().wait(waitScope); + HttpHeaderTable::Builder tableBuilder; + HttpHeaderId extHeader = tableBuilder.add("Sec-WebSocket-Extensions"); + auto headerTable = tableBuilder.build(); - KJ_EXPECT(text.startsWith("HTTP/1.1 500 Internal Server Error"), text); -} + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + clientSettings.webSocketCompressionMode = HttpClientSettings::MANUAL_COMPRESSION; -KJ_TEST("HttpServer bad request") { + auto client = newHttpClient(*headerTable, *pipe.ends[0], clientSettings); + + constexpr auto extensions = + "permessage-deflate; client_no_context_takeover; server_no_context_takeover"_kj; + testWebSocketTwoMessageCompression(waitScope, *headerTable, extHeader, extensions, *client); + + serverTask.wait(waitScope); +} +#endif // KJ_HAS_ZLIB + +#if KJ_HAS_ZLIB +KJ_TEST("HttpClient WebSocket Compression (Different DEFLATE blocks)") { + // In this test, we'll try to use the following DEFLATE blocks: + // - Two DEFLATE blocks in 1 message. + // - A block with no compression. + // - A block with BFINAL set to 1. + // Then, we'll try to send a normal compressed message following the BFINAL message to ensure we + // can still process messages after receiving BFINAL. KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - HttpHeaderTable table; - BrokenHttpService service; - HttpServer server(timer, table, service); + auto request = kj::str("GET /websocket", WEBSOCKET_COMPRESSION_CLIENT_DISCARDS_CTX_HANDSHAKE); - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + auto serverTask = expectRead(*pipe.ends[1], request) + .then([&]() { return writeA(*pipe.ends[1], + asBytes(WEBSOCKET_COMPRESSION_CLIENT_DISCARDS_CTX_RESPONSE_HANDSHAKE)); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_TWO_DEFLATE_BLOCKS_MESSAGE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_DEFLATE_NO_COMPRESSION_MESSAGE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_BFINAL_SET_MESSAGE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_SEND_COMPRESSED_MESSAGE); }) + .then([&]() { return expectRead(*pipe.ends[1], WEBSOCKET_SEND_CLOSE); }) + .then([&]() { return writeA(*pipe.ends[1], WEBSOCKET_REPLY_CLOSE); }) + .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); - static constexpr auto request = "GET / HTTP/1.1\r\nbad request\r\n\r\n"_kj; - auto writePromise = pipe.ends[1]->write(request.begin(), request.size()); - auto response = pipe.ends[1]->readAllText().wait(waitScope); - KJ_EXPECT(writePromise.poll(waitScope)); - writePromise.wait(waitScope); + HttpHeaderTable::Builder tableBuilder; + HttpHeaderId extHeader = tableBuilder.add("Sec-WebSocket-Extensions"); + auto headerTable = tableBuilder.build(); - static constexpr auto expectedResponse = - "HTTP/1.1 400 Bad Request\r\n" - "Connection: close\r\n" - "Content-Length: 53\r\n" - "Content-Type: text/plain\r\n" - "\r\n" - "ERROR: The headers sent by your client are not valid."_kj; + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + clientSettings.webSocketCompressionMode = HttpClientSettings::MANUAL_COMPRESSION; - KJ_EXPECT(expectedResponse == response, expectedResponse, response); + auto client = newHttpClient(*headerTable, *pipe.ends[0], clientSettings); + + constexpr auto extensions = + "permessage-deflate; client_no_context_takeover; server_no_context_takeover"_kj; + testWebSocketFourMessageCompression(waitScope, *headerTable, extHeader, extensions, *client); + + serverTask.wait(waitScope); } +#endif // KJ_HAS_ZLIB -KJ_TEST("HttpServer invalid method") { +KJ_TEST("HttpClient WebSocket error") { KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - HttpHeaderTable table; - BrokenHttpService service; - HttpServer server(timer, table, service); - - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + auto request = kj::str("GET /websocket", WEBSOCKET_REQUEST_HANDSHAKE); - static constexpr auto request = "bad request\r\n\r\n"_kj; - auto writePromise = pipe.ends[1]->write(request.begin(), request.size()); - auto response = pipe.ends[1]->readAllText().wait(waitScope); - KJ_EXPECT(writePromise.poll(waitScope)); - writePromise.wait(waitScope); + auto serverTask = expectRead(*pipe.ends[1], request) + .then([&]() { return writeA(*pipe.ends[1], asBytes(WEBSOCKET_RESPONSE_HANDSHAKE_ERROR)); }) + .then([&]() { return expectRead(*pipe.ends[1], request); }) + .then([&]() { return writeA(*pipe.ends[1], asBytes(WEBSOCKET_RESPONSE_HANDSHAKE_ERROR)); }) + .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); - static constexpr auto expectedResponse = - "HTTP/1.1 501 Not Implemented\r\n" - "Connection: close\r\n" - "Content-Length: 35\r\n" - "Content-Type: text/plain\r\n" - "\r\n" - "ERROR: Unrecognized request method."_kj; + HttpHeaderTable::Builder tableBuilder; + HttpHeaderId hMyHeader = tableBuilder.add("My-Header"); + auto headerTable = tableBuilder.build(); - KJ_EXPECT(expectedResponse == response, expectedResponse, response); -} + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; -// Ensure that HttpServerSettings can continue to be constexpr. -KJ_UNUSED static constexpr HttpServerSettings STATIC_CONSTEXPR_SETTINGS {}; + auto client = newHttpClient(*headerTable, *pipe.ends[0], clientSettings); -class TestErrorHandler: public HttpServerErrorHandler { -public: - kj::Promise handleClientProtocolError( - HttpHeaders::ProtocolError protocolError, kj::HttpService::Response& response) override { - // In a real error handler, you should redact `protocolError.rawContent`. - auto message = kj::str("Saw protocol error: ", protocolError.description, "; rawContent = ", - encodeCEscape(protocolError.rawContent)); - return sendError(400, "Bad Request", kj::mv(message), response); - } + kj::HttpHeaders headers(*headerTable); + headers.set(hMyHeader, "foo"); - kj::Promise handleApplicationError( - kj::Exception exception, kj::Maybe response) override { - return sendError(500, "Internal Server Error", - kj::str("Saw application error: ", exception.getDescription()), response); - } + { + auto response = client->openWebSocket("/websocket", headers).wait(waitScope); - kj::Promise handleNoResponse(kj::HttpService::Response& response) override { - return sendError(500, "Internal Server Error", kj::str("Saw no response."), response); + KJ_EXPECT(response.statusCode == 404); + KJ_EXPECT(response.statusText == "Not Found", response.statusText); + KJ_EXPECT(KJ_ASSERT_NONNULL(response.headers->get(hMyHeader)) == "respond-foo"); + KJ_ASSERT(response.webSocketOrBody.is>()); } - static TestErrorHandler instance; + { + auto response = client->openWebSocket("/websocket", headers).wait(waitScope); -private: - kj::Promise sendError(uint statusCode, kj::StringPtr statusText, String message, - Maybe response) { - KJ_IF_MAYBE(r, response) { - HttpHeaderTable headerTable; - HttpHeaders headers(headerTable); - auto body = r->send(statusCode, statusText, headers, message.size()); - return body->write(message.begin(), message.size()).attach(kj::mv(body), kj::mv(message)); - } else { - KJ_LOG(ERROR, "Saw an error but too late to report to client."); - return kj::READY_NOW; - } + KJ_EXPECT(response.statusCode == 404); + KJ_EXPECT(response.statusText == "Not Found", response.statusText); + KJ_EXPECT(KJ_ASSERT_NONNULL(response.headers->get(hMyHeader)) == "respond-foo"); + KJ_ASSERT(response.webSocketOrBody.is>()); } -}; - -TestErrorHandler TestErrorHandler::instance {}; -KJ_TEST("HttpServer no response, custom error handler") { - auto PIPELINE_TESTS = pipelineTestCases(); + serverTask.wait(waitScope); +} +KJ_TEST("HttpServer WebSocket handshake") { KJ_HTTP_TEST_SETUP_IO; kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - HttpServerSettings settings {}; - settings.errorHandler = TestErrorHandler::instance; - - HttpHeaderTable table; - BrokenHttpService service; - HttpServer server(timer, table, service, settings); + HttpHeaderTable::Builder tableBuilder; + HttpHeaderId hMyHeader = tableBuilder.add("My-Header"); + auto headerTable = tableBuilder.build(); + TestWebSocketService service(*headerTable, hMyHeader); + HttpServer server(timer, *headerTable, service); auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - // Do one request. - pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) - .wait(waitScope); - auto text = pipe.ends[1]->readAllText().wait(waitScope); + auto request = kj::str("GET /websocket", WEBSOCKET_REQUEST_HANDSHAKE); + writeA(*pipe.ends[1], request.asBytes()).wait(waitScope); + expectRead(*pipe.ends[1], WEBSOCKET_RESPONSE_HANDSHAKE).wait(waitScope); - KJ_EXPECT(text == - "HTTP/1.1 500 Internal Server Error\r\n" - "Connection: close\r\n" - "Content-Length: 16\r\n" - "\r\n" - "Saw no response.", text); -} + expectRead(*pipe.ends[1], WEBSOCKET_FIRST_MESSAGE_INLINE).wait(waitScope); + writeA(*pipe.ends[1], WEBSOCKET_SEND_MESSAGE).wait(waitScope); + expectRead(*pipe.ends[1], WEBSOCKET_REPLY_MESSAGE).wait(waitScope); + writeA(*pipe.ends[1], WEBSOCKET_SEND_CLOSE).wait(waitScope); + expectRead(*pipe.ends[1], WEBSOCKET_REPLY_CLOSE).wait(waitScope); -KJ_TEST("HttpServer threw exception, custom error handler") { - auto PIPELINE_TESTS = pipelineTestCases(); + listenTask.wait(waitScope); +} +KJ_TEST("HttpServer WebSocket handshake error") { KJ_HTTP_TEST_SETUP_IO; kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - HttpServerSettings settings {}; - settings.errorHandler = TestErrorHandler::instance; - - HttpHeaderTable table; - BrokenHttpService service(KJ_EXCEPTION(FAILED, "failed")); - HttpServer server(timer, table, service, settings); + HttpHeaderTable::Builder tableBuilder; + HttpHeaderId hMyHeader = tableBuilder.add("My-Header"); + auto headerTable = tableBuilder.build(); + TestWebSocketService service(*headerTable, hMyHeader); + HttpServer server(timer, *headerTable, service); auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - // Do one request. - pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) - .wait(waitScope); - auto text = pipe.ends[1]->readAllText().wait(waitScope); - - KJ_EXPECT(text == - "HTTP/1.1 500 Internal Server Error\r\n" - "Connection: close\r\n" - "Content-Length: 29\r\n" - "\r\n" - "Saw application error: failed", text); -} + auto request = kj::str("GET /return-error", WEBSOCKET_REQUEST_HANDSHAKE); + writeA(*pipe.ends[1], request.asBytes()).wait(waitScope); + expectRead(*pipe.ends[1], WEBSOCKET_RESPONSE_HANDSHAKE_ERROR).wait(waitScope); -KJ_TEST("HttpServer bad request, custom error handler") { - KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); - auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + // Can send more requests! + writeA(*pipe.ends[1], request.asBytes()).wait(waitScope); + expectRead(*pipe.ends[1], WEBSOCKET_RESPONSE_HANDSHAKE_ERROR).wait(waitScope); - HttpServerSettings settings {}; - settings.errorHandler = TestErrorHandler::instance; + pipe.ends[1]->shutdownWrite(); - HttpHeaderTable table; - BrokenHttpService service; - HttpServer server(timer, table, service, settings); + listenTask.wait(waitScope); +} - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); +void testBadWebSocketHandshake( + WaitScope& waitScope, Timer& timer, StringPtr request, StringPtr response, TwoWayPipe pipe) { + // Write an invalid WebSocket GET request, and expect a particular error response. - static constexpr auto request = "bad request\r\n\r\n"_kj; - auto writePromise = pipe.ends[1]->write(request.begin(), request.size()); - auto response = pipe.ends[1]->readAllText().wait(waitScope); - KJ_EXPECT(writePromise.poll(waitScope)); - writePromise.wait(waitScope); + HttpHeaderTable::Builder tableBuilder; + HttpHeaderId hMyHeader = tableBuilder.add("My-Header"); + auto headerTable = tableBuilder.build(); + TestWebSocketService service(*headerTable, hMyHeader); - static constexpr auto expectedResponse = - "HTTP/1.1 400 Bad Request\r\n" - "Connection: close\r\n" - "Content-Length: 80\r\n" - "\r\n" - "Saw protocol error: Unrecognized request method.; " - "rawContent = bad request\\000\\n"_kj; + class ErrorHandler final: public HttpServerErrorHandler { + Promise handleApplicationError( + Exception exception, Maybe response) override { + // When I first wrote this, I expected this function to be called, because + // `TestWebSocketService::request()` definitely throws. However, the exception it throws comes + // from `HttpService::Response::acceptWebSocket()`, which stores the fact which it threw a + // WebSocket error. This prevents the HttpServer's listen loop from propagating the exception + // to our HttpServerErrorHandler (i.e., this function), because it assumes the exception is + // related to the WebSocket error response. See `HttpServer::Connection::startLoop()` for + // details. + bool responseWasSent = response == nullptr; + KJ_FAIL_EXPECT("Unexpected application error", responseWasSent, exception); + return READY_NOW; + } + }; - KJ_EXPECT(expectedResponse == response, expectedResponse, response); + ErrorHandler errorHandler; + + HttpServerSettings serverSettings; + serverSettings.errorHandler = errorHandler; + + HttpServer server(timer, *headerTable, service, serverSettings); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + pipe.ends[1]->write(request.begin(), request.size()).wait(waitScope); + pipe.ends[1]->shutdownWrite(); + + expectRead(*pipe.ends[1], response).wait(waitScope); + + listenTask.wait(waitScope); } -class PartialResponseService final: public HttpService { - // HttpService that sends a partial response then throws. -public: - kj::Promise request( - HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, - kj::AsyncInputStream& requestBody, Response& response) override { - return requestBody.readAllBytes() - .then([this,&response](kj::Array&&) -> kj::Promise { - HttpHeaders headers(table); - auto body = response.send(200, "OK", headers, 32); - auto promise = body->write("foo", 3); - return promise.attach(kj::mv(body)).then([]() -> kj::Promise { - return KJ_EXCEPTION(FAILED, "failed"); - }); - }); - } +KJ_TEST("HttpServer WebSocket handshake with unsupported Sec-WebSocket-Version") { + static constexpr auto REQUEST = + "GET /websocket HTTP/1.1\r\n" + "Connection: Upgrade\r\n" + "Upgrade: websocket\r\n" + "Sec-WebSocket-Key: DCI4TgwiOE4MIjhODCI4Tg==\r\n" + "Sec-WebSocket-Version: 1\r\n" + "My-Header: foo\r\n" + "\r\n"_kj; + + static constexpr auto RESPONSE = + "HTTP/1.1 400 Bad Request\r\n" + "Connection: close\r\n" + "Content-Length: 56\r\n" + "Content-Type: text/plain\r\n" + "\r\n" + "ERROR: The requested WebSocket version is not supported."_kj; + + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + + testBadWebSocketHandshake(waitScope, timer, REQUEST, RESPONSE, KJ_HTTP_TEST_CREATE_2PIPE); +} + +KJ_TEST("HttpServer WebSocket handshake with missing Sec-WebSocket-Key") { + static constexpr auto REQUEST = + "GET /websocket HTTP/1.1\r\n" + "Connection: Upgrade\r\n" + "Upgrade: websocket\r\n" + "Sec-WebSocket-Version: 13\r\n" + "My-Header: foo\r\n" + "\r\n"_kj; + + static constexpr auto RESPONSE = + "HTTP/1.1 400 Bad Request\r\n" + "Connection: close\r\n" + "Content-Length: 32\r\n" + "Content-Type: text/plain\r\n" + "\r\n" + "ERROR: Missing Sec-WebSocket-Key"_kj; + + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + + testBadWebSocketHandshake(waitScope, timer, REQUEST, RESPONSE, KJ_HTTP_TEST_CREATE_2PIPE); +} + +KJ_TEST("HttpServer WebSocket with application error after accept") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + + class WebSocketApplicationErrorService: public HttpService, public HttpServerErrorHandler { + // Accepts a WebSocket, receives a message, and throws an exception (application error). + + public: + Promise request( + HttpMethod method, kj::StringPtr, const HttpHeaders&, + AsyncInputStream&, Response& response) override { + KJ_ASSERT(method == HttpMethod::GET); + HttpHeaderTable headerTable; + HttpHeaders responseHeaders(headerTable); + auto webSocket = response.acceptWebSocket(responseHeaders); + return webSocket->receive().then([](WebSocket::Message) { + throwRecoverableException(KJ_EXCEPTION(FAILED, "test exception")); + }).attach(kj::mv(webSocket)); + } + + Promise handleApplicationError(Exception exception, Maybe response) override { + // We accepted the WebSocket, so the response was already sent. At one time, we _did_ expose a + // useless Response reference here, so this is a regression test. + bool responseWasSent = response == nullptr; + KJ_EXPECT(responseWasSent); + KJ_EXPECT(exception.getDescription() == "test exception"_kj); + return READY_NOW; + } + }; + + // Set up the HTTP service. + + WebSocketApplicationErrorService service; + + HttpServerSettings serverSettings; + serverSettings.errorHandler = service; + + HttpHeaderTable headerTable; + HttpServer server(timer, headerTable, service, serverSettings); + + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + // Make a client and open a WebSocket to the service. + + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + auto client = newHttpClient( + headerTable, *pipe.ends[1], clientSettings); + + HttpHeaders headers(headerTable); + auto webSocketResponse = client->openWebSocket("/websocket"_kj, headers) + .wait(waitScope); + + KJ_ASSERT(webSocketResponse.statusCode == 101); + auto webSocket = kj::mv(KJ_ASSERT_NONNULL(webSocketResponse.webSocketOrBody.tryGet>())); + + webSocket->send("ignored"_kj).wait(waitScope); + + listenTask.wait(waitScope); +} + +// ----------------------------------------------------------------------------- + +KJ_TEST("HttpServer request timeout") { + auto PIPELINE_TESTS = pipelineTestCases(); + + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; -private: - kj::Maybe exception; HttpHeaderTable table; -}; + TestHttpService service(PIPELINE_TESTS, table); + HttpServerSettings settings; + settings.headerTimeout = 1 * kj::MILLISECONDS; + HttpServer server(timer, table, service, settings); -KJ_TEST("HttpServer threw exception after starting response") { + // Shouldn't hang! Should time out. + auto promise = server.listenHttp(kj::mv(pipe.ends[0])); + KJ_EXPECT(!promise.poll(waitScope)); + timer.advanceTo(timer.now() + settings.headerTimeout / 2); + KJ_EXPECT(!promise.poll(waitScope)); + timer.advanceTo(timer.now() + settings.headerTimeout); + promise.wait(waitScope); + + // Closes the connection without sending anything. + KJ_EXPECT(pipe.ends[1]->readAllText().wait(waitScope) == ""); +} + +KJ_TEST("HttpServer pipeline timeout") { auto PIPELINE_TESTS = pipelineTestCases(); KJ_HTTP_TEST_SETUP_IO; @@ -2778,46 +3826,52 @@ KJ_TEST("HttpServer threw exception after starting response") { auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; HttpHeaderTable table; - PartialResponseService service; - HttpServer server(timer, table, service); + TestHttpService service(PIPELINE_TESTS, table); + HttpServerSettings settings; + settings.pipelineTimeout = 1 * kj::MILLISECONDS; + HttpServer server(timer, table, service, settings); auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - KJ_EXPECT_LOG(ERROR, "HttpService threw exception after generating a partial response"); - // Do one request. pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) .wait(waitScope); - auto text = pipe.ends[1]->readAllText().wait(waitScope); + expectRead(*pipe.ends[1], PIPELINE_TESTS[0].response.raw).wait(waitScope); - KJ_EXPECT(text == - "HTTP/1.1 200 OK\r\n" - "Content-Length: 32\r\n" - "\r\n" - "foo", text); + // Listen task should time out even though we didn't shutdown the socket. + KJ_EXPECT(!listenTask.poll(waitScope)); + timer.advanceTo(timer.now() + settings.pipelineTimeout / 2); + KJ_EXPECT(!listenTask.poll(waitScope)); + timer.advanceTo(timer.now() + settings.pipelineTimeout); + listenTask.wait(waitScope); + + // In this case, no data is sent back. + KJ_EXPECT(pipe.ends[1]->readAllText().wait(waitScope) == ""); } -class PartialResponseNoThrowService final: public HttpService { - // HttpService that sends a partial response then returns without throwing. +class BrokenHttpService final: public HttpService { + // HttpService that doesn't send a response. public: + BrokenHttpService() = default; + explicit BrokenHttpService(kj::Exception&& exception): exception(kj::mv(exception)) {} + kj::Promise request( HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, - kj::AsyncInputStream& requestBody, Response& response) override { - return requestBody.readAllBytes() - .then([this,&response](kj::Array&&) -> kj::Promise { - HttpHeaders headers(table); - auto body = response.send(200, "OK", headers, 32); - auto promise = body->write("foo", 3); - return promise.attach(kj::mv(body)); + kj::AsyncInputStream& requestBody, Response& responseSender) override { + return requestBody.readAllBytes().then([this](kj::Array&&) -> kj::Promise { + KJ_IF_MAYBE(e, exception) { + return kj::cp(*e); + } else { + return kj::READY_NOW; + } }); } private: kj::Maybe exception; - HttpHeaderTable table; }; -KJ_TEST("HttpServer failed to write complete response but didn't throw") { +KJ_TEST("HttpServer no response") { auto PIPELINE_TESTS = pipelineTestCases(); KJ_HTTP_TEST_SETUP_IO; @@ -2825,7 +3879,7 @@ KJ_TEST("HttpServer failed to write complete response but didn't throw") { auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; HttpHeaderTable table; - PartialResponseNoThrowService service; + BrokenHttpService service; HttpServer server(timer, table, service); auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); @@ -2836,58 +3890,36 @@ KJ_TEST("HttpServer failed to write complete response but didn't throw") { auto text = pipe.ends[1]->readAllText().wait(waitScope); KJ_EXPECT(text == - "HTTP/1.1 200 OK\r\n" - "Content-Length: 32\r\n" + "HTTP/1.1 500 Internal Server Error\r\n" + "Connection: close\r\n" + "Content-Length: 51\r\n" + "Content-Type: text/plain\r\n" "\r\n" - "foo", text); + "ERROR: The HttpService did not generate a response.", text); } -class SimpleInputStream final: public kj::AsyncInputStream { - // An InputStream that returns bytes out of a static string. - -public: - SimpleInputStream(kj::StringPtr text) - : unread(text.asBytes()) {} +KJ_TEST("HttpServer disconnected") { + auto PIPELINE_TESTS = pipelineTestCases(); - kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { - size_t amount = kj::min(maxBytes, unread.size()); - memcpy(buffer, unread.begin(), amount); - unread = unread.slice(amount, unread.size()); - return amount; - } + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; -private: - kj::ArrayPtr unread; -}; + HttpHeaderTable table; + BrokenHttpService service(KJ_EXCEPTION(DISCONNECTED, "disconnected")); + HttpServer server(timer, table, service); -class PumpResponseService final: public HttpService { - // HttpService that uses pumpTo() to write a response, without carefully specifying how much to - // pump, but the stream happens to be the right size. -public: - kj::Promise request( - HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, - kj::AsyncInputStream& requestBody, Response& response) override { - return requestBody.readAllBytes() - .then([this,&response](kj::Array&&) -> kj::Promise { - HttpHeaders headers(table); - kj::StringPtr text = "Hello, World!"; - auto body = response.send(200, "OK", headers, text.size()); + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - auto stream = kj::heap(text); - auto promise = stream->pumpTo(*body); - return promise.attach(kj::mv(body), kj::mv(stream)) - .then([text](uint64_t amount) { - KJ_EXPECT(amount == text.size()); - }); - }); - } + // Do one request. + pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) + .wait(waitScope); + auto text = pipe.ends[1]->readAllText().wait(waitScope); -private: - kj::Maybe exception; - HttpHeaderTable table; -}; + KJ_EXPECT(text == "", text); +} -KJ_TEST("HttpFixedLengthEntityWriter correctly implements tryPumpFrom") { +KJ_TEST("HttpServer overloaded") { auto PIPELINE_TESTS = pipelineTestCases(); KJ_HTTP_TEST_SETUP_IO; @@ -2895,7 +3927,7 @@ KJ_TEST("HttpFixedLengthEntityWriter correctly implements tryPumpFrom") { auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; HttpHeaderTable table; - PumpResponseService service; + BrokenHttpService service(KJ_EXCEPTION(OVERLOADED, "overloaded")); HttpServer server(timer, table, service); auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); @@ -2903,1228 +3935,3244 @@ KJ_TEST("HttpFixedLengthEntityWriter correctly implements tryPumpFrom") { // Do one request. pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) .wait(waitScope); - pipe.ends[1]->shutdownWrite(); auto text = pipe.ends[1]->readAllText().wait(waitScope); - KJ_EXPECT(text == - "HTTP/1.1 200 OK\r\n" - "Content-Length: 13\r\n" - "\r\n" - "Hello, World!", text); + KJ_EXPECT(text.startsWith("HTTP/1.1 503 Service Unavailable"), text); } -class HangingHttpService final: public HttpService { - // HttpService that hangs forever. -public: - kj::Promise request( - HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, - kj::AsyncInputStream& requestBody, Response& responseSender) override { - kj::Promise result = kj::NEVER_DONE; - ++inFlight; - return result.attach(kj::defer([this]() { - if (--inFlight == 0) { - KJ_IF_MAYBE(f, onCancelFulfiller) { - f->get()->fulfill(); - } - } - })); - } - - kj::Promise onCancel() { - auto paf = kj::newPromiseAndFulfiller(); - onCancelFulfiller = kj::mv(paf.fulfiller); - return kj::mv(paf.promise); - } - - uint inFlight = 0; - -private: - kj::Maybe exception; - kj::Maybe>> onCancelFulfiller; -}; +KJ_TEST("HttpServer unimplemented") { + auto PIPELINE_TESTS = pipelineTestCases(); -KJ_TEST("HttpServer cancels request when client disconnects") { KJ_HTTP_TEST_SETUP_IO; kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; HttpHeaderTable table; - HangingHttpService service; + BrokenHttpService service(KJ_EXCEPTION(UNIMPLEMENTED, "unimplemented")); HttpServer server(timer, table, service); auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - KJ_EXPECT(service.inFlight == 0); - - static constexpr auto request = "GET / HTTP/1.1\r\n\r\n"_kj; - pipe.ends[1]->write(request.begin(), request.size()).wait(waitScope); - - auto cancelPromise = service.onCancel(); - KJ_EXPECT(!cancelPromise.poll(waitScope)); - KJ_EXPECT(service.inFlight == 1); + // Do one request. + pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) + .wait(waitScope); + auto text = pipe.ends[1]->readAllText().wait(waitScope); - // Disconnect client and verify server cancels. - pipe.ends[1] = nullptr; - KJ_ASSERT(cancelPromise.poll(waitScope)); - KJ_EXPECT(service.inFlight == 0); - cancelPromise.wait(waitScope); + KJ_EXPECT(text.startsWith("HTTP/1.1 501 Not Implemented"), text); } -// ----------------------------------------------------------------------------- - -KJ_TEST("newHttpService from HttpClient") { +KJ_TEST("HttpServer threw exception") { auto PIPELINE_TESTS = pipelineTestCases(); KJ_HTTP_TEST_SETUP_IO; kj::TimerImpl timer(kj::origin()); - auto frontPipe = KJ_HTTP_TEST_CREATE_2PIPE; - auto backPipe = KJ_HTTP_TEST_CREATE_2PIPE; - - kj::Promise writeResponsesPromise = kj::READY_NOW; - for (auto& testCase: PIPELINE_TESTS) { - writeResponsesPromise = writeResponsesPromise - .then([&]() { - return expectRead(*backPipe.ends[1], testCase.request.raw); - }).then([&]() { - return backPipe.ends[1]->write(testCase.response.raw.begin(), testCase.response.raw.size()); - }); - } - - { - HttpHeaderTable table; - auto backClient = newHttpClient(table, *backPipe.ends[0]); - auto frontService = newHttpService(*backClient); - HttpServer frontServer(timer, table, *frontService); - auto listenTask = frontServer.listenHttp(kj::mv(frontPipe.ends[1])); - - for (auto& testCase: PIPELINE_TESTS) { - KJ_CONTEXT(testCase.request.raw, testCase.response.raw); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - frontPipe.ends[0]->write(testCase.request.raw.begin(), testCase.request.raw.size()) - .wait(waitScope); + HttpHeaderTable table; + BrokenHttpService service(KJ_EXCEPTION(FAILED, "failed")); + HttpServer server(timer, table, service); - expectRead(*frontPipe.ends[0], testCase.response.raw).wait(waitScope); - } + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - frontPipe.ends[0]->shutdownWrite(); - listenTask.wait(waitScope); - } + // Do one request. + pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) + .wait(waitScope); + auto text = pipe.ends[1]->readAllText().wait(waitScope); - backPipe.ends[0]->shutdownWrite(); - writeResponsesPromise.wait(waitScope); + KJ_EXPECT(text.startsWith("HTTP/1.1 500 Internal Server Error"), text); } -KJ_TEST("newHttpService from HttpClient WebSockets") { +KJ_TEST("HttpServer bad request") { KJ_HTTP_TEST_SETUP_IO; kj::TimerImpl timer(kj::origin()); - auto frontPipe = KJ_HTTP_TEST_CREATE_2PIPE; - auto backPipe = KJ_HTTP_TEST_CREATE_2PIPE; - - auto request = kj::str("GET /websocket", WEBSOCKET_REQUEST_HANDSHAKE); - auto writeResponsesPromise = expectRead(*backPipe.ends[1], request) - .then([&]() { return writeA(*backPipe.ends[1], asBytes(WEBSOCKET_RESPONSE_HANDSHAKE)); }) - .then([&]() { return writeA(*backPipe.ends[1], WEBSOCKET_FIRST_MESSAGE_INLINE); }) - .then([&]() { return expectRead(*backPipe.ends[1], WEBSOCKET_SEND_MESSAGE); }) - .then([&]() { return writeA(*backPipe.ends[1], WEBSOCKET_REPLY_MESSAGE); }) - .then([&]() { return expectRead(*backPipe.ends[1], WEBSOCKET_SEND_CLOSE); }) - .then([&]() { return writeA(*backPipe.ends[1], WEBSOCKET_REPLY_CLOSE); }) - .then([&]() { return expectEnd(*backPipe.ends[1]); }) - .then([&]() { backPipe.ends[1]->shutdownWrite(); }) - .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - { - HttpHeaderTable table; - FakeEntropySource entropySource; - HttpClientSettings clientSettings; - clientSettings.entropySource = entropySource; - auto backClientStream = kj::mv(backPipe.ends[0]); - auto backClient = newHttpClient(table, *backClientStream, clientSettings); - auto frontService = newHttpService(*backClient); - HttpServer frontServer(timer, table, *frontService); - auto listenTask = frontServer.listenHttp(kj::mv(frontPipe.ends[1])); + HttpHeaderTable table; + BrokenHttpService service; + HttpServer server(timer, table, service); - writeA(*frontPipe.ends[0], request.asBytes()).wait(waitScope); - expectRead(*frontPipe.ends[0], WEBSOCKET_RESPONSE_HANDSHAKE).wait(waitScope); + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - expectRead(*frontPipe.ends[0], WEBSOCKET_FIRST_MESSAGE_INLINE).wait(waitScope); - writeA(*frontPipe.ends[0], WEBSOCKET_SEND_MESSAGE).wait(waitScope); - expectRead(*frontPipe.ends[0], WEBSOCKET_REPLY_MESSAGE).wait(waitScope); - writeA(*frontPipe.ends[0], WEBSOCKET_SEND_CLOSE).wait(waitScope); - expectRead(*frontPipe.ends[0], WEBSOCKET_REPLY_CLOSE).wait(waitScope); + static constexpr auto request = "GET / HTTP/1.1\r\nbad request\r\n\r\n"_kj; + auto writePromise = pipe.ends[1]->write(request.begin(), request.size()); + auto response = pipe.ends[1]->readAllText().wait(waitScope); + KJ_EXPECT(writePromise.poll(waitScope)); + writePromise.wait(waitScope); - frontPipe.ends[0]->shutdownWrite(); - listenTask.wait(waitScope); - } + static constexpr auto expectedResponse = + "HTTP/1.1 400 Bad Request\r\n" + "Connection: close\r\n" + "Content-Length: 53\r\n" + "Content-Type: text/plain\r\n" + "\r\n" + "ERROR: The headers sent by your client are not valid."_kj; - writeResponsesPromise.wait(waitScope); + KJ_EXPECT(expectedResponse == response, expectedResponse, response); } -KJ_TEST("newHttpService from HttpClient WebSockets disconnect") { +KJ_TEST("HttpServer invalid method") { KJ_HTTP_TEST_SETUP_IO; kj::TimerImpl timer(kj::origin()); - auto frontPipe = KJ_HTTP_TEST_CREATE_2PIPE; - auto backPipe = KJ_HTTP_TEST_CREATE_2PIPE; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - auto request = kj::str("GET /websocket", WEBSOCKET_REQUEST_HANDSHAKE); - auto writeResponsesPromise = expectRead(*backPipe.ends[1], request) - .then([&]() { return writeA(*backPipe.ends[1], asBytes(WEBSOCKET_RESPONSE_HANDSHAKE)); }) - .then([&]() { return writeA(*backPipe.ends[1], WEBSOCKET_FIRST_MESSAGE_INLINE); }) - .then([&]() { return expectRead(*backPipe.ends[1], WEBSOCKET_SEND_MESSAGE); }) - .then([&]() { backPipe.ends[1]->shutdownWrite(); }) - .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); + HttpHeaderTable table; + BrokenHttpService service; + HttpServer server(timer, table, service); - { - HttpHeaderTable table; - FakeEntropySource entropySource; - HttpClientSettings clientSettings; - clientSettings.entropySource = entropySource; - auto backClient = newHttpClient(table, *backPipe.ends[0], clientSettings); - auto frontService = newHttpService(*backClient); - HttpServer frontServer(timer, table, *frontService); - auto listenTask = frontServer.listenHttp(kj::mv(frontPipe.ends[1])); + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - writeA(*frontPipe.ends[0], request.asBytes()).wait(waitScope); - expectRead(*frontPipe.ends[0], WEBSOCKET_RESPONSE_HANDSHAKE).wait(waitScope); + static constexpr auto request = "bad request\r\n\r\n"_kj; + auto writePromise = pipe.ends[1]->write(request.begin(), request.size()); + auto response = pipe.ends[1]->readAllText().wait(waitScope); + KJ_EXPECT(writePromise.poll(waitScope)); + writePromise.wait(waitScope); - expectRead(*frontPipe.ends[0], WEBSOCKET_FIRST_MESSAGE_INLINE).wait(waitScope); - writeA(*frontPipe.ends[0], WEBSOCKET_SEND_MESSAGE).wait(waitScope); + static constexpr auto expectedResponse = + "HTTP/1.1 501 Not Implemented\r\n" + "Connection: close\r\n" + "Content-Length: 35\r\n" + "Content-Type: text/plain\r\n" + "\r\n" + "ERROR: Unrecognized request method."_kj; - KJ_EXPECT(frontPipe.ends[0]->readAllText().wait(waitScope) == ""); + KJ_EXPECT(expectedResponse == response, expectedResponse, response); +} - frontPipe.ends[0]->shutdownWrite(); - listenTask.wait(waitScope); +// Ensure that HttpServerSettings can continue to be constexpr. +KJ_UNUSED static constexpr HttpServerSettings STATIC_CONSTEXPR_SETTINGS {}; + +class TestErrorHandler: public HttpServerErrorHandler { +public: + kj::Promise handleClientProtocolError( + HttpHeaders::ProtocolError protocolError, kj::HttpService::Response& response) override { + // In a real error handler, you should redact `protocolError.rawContent`. + auto message = kj::str("Saw protocol error: ", protocolError.description, "; rawContent = ", + encodeCEscape(protocolError.rawContent)); + return sendError(400, "Bad Request", kj::mv(message), response); } - writeResponsesPromise.wait(waitScope); -} + kj::Promise handleApplicationError( + kj::Exception exception, kj::Maybe response) override { + return sendError(500, "Internal Server Error", + kj::str("Saw application error: ", exception.getDescription()), response); + } -// ----------------------------------------------------------------------------- + kj::Promise handleNoResponse(kj::HttpService::Response& response) override { + return sendError(500, "Internal Server Error", kj::str("Saw no response."), response); + } -KJ_TEST("newHttpClient from HttpService") { - auto PIPELINE_TESTS = pipelineTestCases(); + static TestErrorHandler instance; - KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); +private: + kj::Promise sendError(uint statusCode, kj::StringPtr statusText, String message, + Maybe response) { + KJ_IF_MAYBE(r, response) { + HttpHeaderTable headerTable; + HttpHeaders headers(headerTable); + auto body = r->send(statusCode, statusText, headers, message.size()); + return body->write(message.begin(), message.size()).attach(kj::mv(body), kj::mv(message)); + } else { + KJ_LOG(ERROR, "Saw an error but too late to report to client."); + return kj::READY_NOW; + } + } +}; - HttpHeaderTable table; - TestHttpService service(PIPELINE_TESTS, table); - auto client = newHttpClient(service); +TestErrorHandler TestErrorHandler::instance {}; - for (auto& testCase: PIPELINE_TESTS) { - testHttpClient(waitScope, table, *client, testCase); - } -} +KJ_TEST("HttpServer no response, custom error handler") { + auto PIPELINE_TESTS = pipelineTestCases(); -KJ_TEST("newHttpClient from HttpService WebSockets") { KJ_HTTP_TEST_SETUP_IO; kj::TimerImpl timer(kj::origin()); auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - HttpHeaderTable::Builder tableBuilder; - HttpHeaderId hMyHeader = tableBuilder.add("My-Header"); - auto headerTable = tableBuilder.build(); - TestWebSocketService service(*headerTable, hMyHeader); - auto client = newHttpClient(service); + HttpServerSettings settings {}; + settings.errorHandler = TestErrorHandler::instance; - testWebSocketClient(waitScope, *headerTable, hMyHeader, *client); + HttpHeaderTable table; + BrokenHttpService service; + HttpServer server(timer, table, service, settings); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + // Do one request. + pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) + .wait(waitScope); + auto text = pipe.ends[1]->readAllText().wait(waitScope); + + KJ_EXPECT(text == + "HTTP/1.1 500 Internal Server Error\r\n" + "Connection: close\r\n" + "Content-Length: 16\r\n" + "\r\n" + "Saw no response.", text); } -KJ_TEST("adapted client/server propagates request exceptions like non-adapted client") { +KJ_TEST("HttpServer threw exception, custom error handler") { + auto PIPELINE_TESTS = pipelineTestCases(); + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + HttpServerSettings settings {}; + settings.errorHandler = TestErrorHandler::instance; HttpHeaderTable table; - HttpHeaders headers(table); + BrokenHttpService service(KJ_EXCEPTION(FAILED, "failed")); + HttpServer server(timer, table, service, settings); - class FailingHttpClient final: public HttpClient { - public: - Request request( - HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, - kj::Maybe expectedBodySize = nullptr) override { - KJ_FAIL_ASSERT("request_fail"); - } + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - kj::Promise openWebSocket( - kj::StringPtr url, const HttpHeaders& headers) override { - KJ_FAIL_ASSERT("websocket_fail"); - } - }; + // Do one request. + pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) + .wait(waitScope); + auto text = pipe.ends[1]->readAllText().wait(waitScope); - auto rawClient = kj::heap(); + KJ_EXPECT(text == + "HTTP/1.1 500 Internal Server Error\r\n" + "Connection: close\r\n" + "Content-Length: 29\r\n" + "\r\n" + "Saw application error: failed", text); +} - auto innerClient = kj::heap(); - auto adaptedService = kj::newHttpService(*innerClient).attach(kj::mv(innerClient)); - auto adaptedClient = kj::newHttpClient(*adaptedService).attach(kj::mv(adaptedService)); +KJ_TEST("HttpServer bad request, custom error handler") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - KJ_EXPECT_THROW_MESSAGE("request_fail", rawClient->request(HttpMethod::POST, "/"_kj, headers)); - KJ_EXPECT_THROW_MESSAGE("request_fail", adaptedClient->request(HttpMethod::POST, "/"_kj, headers)); + HttpServerSettings settings {}; + settings.errorHandler = TestErrorHandler::instance; - KJ_EXPECT_THROW_MESSAGE("websocket_fail", rawClient->openWebSocket("/"_kj, headers)); - KJ_EXPECT_THROW_MESSAGE("websocket_fail", adaptedClient->openWebSocket("/"_kj, headers)); + HttpHeaderTable table; + BrokenHttpService service; + HttpServer server(timer, table, service, settings); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + static constexpr auto request = "bad request\r\n\r\n"_kj; + auto writePromise = pipe.ends[1]->write(request.begin(), request.size()); + auto response = pipe.ends[1]->readAllText().wait(waitScope); + KJ_EXPECT(writePromise.poll(waitScope)); + writePromise.wait(waitScope); + + static constexpr auto expectedResponse = + "HTTP/1.1 400 Bad Request\r\n" + "Connection: close\r\n" + "Content-Length: 80\r\n" + "\r\n" + "Saw protocol error: Unrecognized request method.; " + "rawContent = bad request\\000\\n"_kj; + + KJ_EXPECT(expectedResponse == response, expectedResponse, response); } -class DelayedCompletionHttpService final: public HttpService { +class PartialResponseService final: public HttpService { + // HttpService that sends a partial response then throws. public: - DelayedCompletionHttpService(HttpHeaderTable& table, kj::Maybe expectedLength) - : table(table), expectedLength(expectedLength) {} - kj::Promise request( HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, kj::AsyncInputStream& requestBody, Response& response) override { - auto stream = response.send(200, "OK", HttpHeaders(table), expectedLength); - auto promise = stream->write("foo", 3); - return promise.attach(kj::mv(stream)).then([this]() { - return kj::mv(paf.promise); + return requestBody.readAllBytes() + .then([this,&response](kj::Array&&) -> kj::Promise { + HttpHeaders headers(table); + auto body = response.send(200, "OK", headers, 32); + auto promise = body->write("foo", 3); + return promise.attach(kj::mv(body)).then([]() -> kj::Promise { + return KJ_EXCEPTION(FAILED, "failed"); + }); }); } - kj::PromiseFulfiller& getFulfiller() { return *paf.fulfiller; } - private: - HttpHeaderTable& table; - kj::Maybe expectedLength; - kj::PromiseFulfillerPair paf = kj::newPromiseAndFulfiller(); + kj::Maybe exception; + HttpHeaderTable table; }; -void doDelayedCompletionTest(bool exception, kj::Maybe expectedLength) noexcept { +KJ_TEST("HttpServer threw exception after starting response") { + auto PIPELINE_TESTS = pipelineTestCases(); + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; HttpHeaderTable table; + PartialResponseService service; + HttpServer server(timer, table, service); - DelayedCompletionHttpService service(table, expectedLength); - auto client = newHttpClient(service); - - auto resp = client->request(HttpMethod::GET, "/", HttpHeaders(table), uint64_t(0)) - .response.wait(waitScope); - KJ_EXPECT(resp.statusCode == 200); - - // Read "foo" from the response body: works - char buffer[16]; - KJ_ASSERT(resp.body->tryRead(buffer, 1, sizeof(buffer)).wait(waitScope) == 3); - buffer[3] = '\0'; - KJ_EXPECT(buffer == "foo"_kj); - - // But reading any more hangs. - auto promise = resp.body->tryRead(buffer, 1, sizeof(buffer)); - - KJ_EXPECT(!promise.poll(waitScope)); - - // Until we cause the service to return. - if (exception) { - service.getFulfiller().reject(KJ_EXCEPTION(FAILED, "service-side failure")); - } else { - service.getFulfiller().fulfill(); - } - - KJ_ASSERT(promise.poll(waitScope)); - - if (exception) { - KJ_EXPECT_THROW_MESSAGE("service-side failure", promise.wait(waitScope)); - } else { - promise.wait(waitScope); - } -}; - -KJ_TEST("adapted client waits for service to complete before returning EOF on response stream") { - doDelayedCompletionTest(false, uint64_t(3)); -} - -KJ_TEST("adapted client waits for service to complete before returning EOF on chunked response") { - doDelayedCompletionTest(false, nullptr); -} + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); -KJ_TEST("adapted client propagates throw from service after complete response body sent") { - doDelayedCompletionTest(true, uint64_t(3)); -} + KJ_EXPECT_LOG(ERROR, "HttpService threw exception after generating a partial response"); -KJ_TEST("adapted client propagates throw from service after incomplete response body sent") { - doDelayedCompletionTest(true, uint64_t(6)); -} + // Do one request. + pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) + .wait(waitScope); + auto text = pipe.ends[1]->readAllText().wait(waitScope); -KJ_TEST("adapted client propagates throw from service after chunked response body sent") { - doDelayedCompletionTest(true, nullptr); + KJ_EXPECT(text == + "HTTP/1.1 200 OK\r\n" + "Content-Length: 32\r\n" + "\r\n" + "foo", text); } -class DelayedCompletionWebSocketHttpService final: public HttpService { +class PartialResponseNoThrowService final: public HttpService { + // HttpService that sends a partial response then returns without throwing. public: - DelayedCompletionWebSocketHttpService(HttpHeaderTable& table, bool closeUpstreamFirst) - : table(table), closeUpstreamFirst(closeUpstreamFirst) {} - kj::Promise request( HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, kj::AsyncInputStream& requestBody, Response& response) override { - KJ_ASSERT(headers.isWebSocket()); - - auto ws = response.acceptWebSocket(HttpHeaders(table)); - kj::Promise promise = kj::READY_NOW; - if (closeUpstreamFirst) { - // Wait for a close message from the client before starting. - promise = promise.then([&ws = *ws]() { return ws.receive(); }).ignoreResult(); - } - promise = promise - .then([&ws = *ws]() { return ws.send("foo"_kj); }) - .then([&ws = *ws]() { return ws.close(1234, "closed"_kj); }); - if (!closeUpstreamFirst) { - // Wait for a close message from the client at the end. - promise = promise.then([&ws = *ws]() { return ws.receive(); }).ignoreResult(); - } - return promise.attach(kj::mv(ws)).then([this]() { - return kj::mv(paf.promise); + return requestBody.readAllBytes() + .then([this,&response](kj::Array&&) -> kj::Promise { + HttpHeaders headers(table); + auto body = response.send(200, "OK", headers, 32); + auto promise = body->write("foo", 3); + return promise.attach(kj::mv(body)); }); } - kj::PromiseFulfiller& getFulfiller() { return *paf.fulfiller; } - private: - HttpHeaderTable& table; - bool closeUpstreamFirst; - kj::PromiseFulfillerPair paf = kj::newPromiseAndFulfiller(); + kj::Maybe exception; + HttpHeaderTable table; }; -void doDelayedCompletionWebSocketTest(bool exception, bool closeUpstreamFirst) noexcept { +KJ_TEST("HttpServer failed to write complete response but didn't throw") { + auto PIPELINE_TESTS = pipelineTestCases(); + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; HttpHeaderTable table; + PartialResponseNoThrowService service; + HttpServer server(timer, table, service); - DelayedCompletionWebSocketHttpService service(table, closeUpstreamFirst); - auto client = newHttpClient(service); + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - auto resp = client->openWebSocket("/", HttpHeaders(table)).wait(waitScope); - auto ws = kj::mv(KJ_ASSERT_NONNULL(resp.webSocketOrBody.tryGet>())); + // Do one request. + pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) + .wait(waitScope); + auto text = pipe.ends[1]->readAllText().wait(waitScope); - if (closeUpstreamFirst) { - // Send "close" immediately. - ws->close(1234, "whatever"_kj).wait(waitScope); - } + KJ_EXPECT(text == + "HTTP/1.1 200 OK\r\n" + "Content-Length: 32\r\n" + "\r\n" + "foo", text); +} - // Read "foo" from the WebSocket: works - { - auto msg = ws->receive().wait(waitScope); - KJ_ASSERT(msg.is()); - KJ_ASSERT(msg.get() == "foo"); - } +class SimpleInputStream final: public kj::AsyncInputStream { + // An InputStream that returns bytes out of a static string. - kj::Promise promise = nullptr; - if (closeUpstreamFirst) { - // Receiving the close hangs. - promise = ws->receive() - .then([](WebSocket::Message&& msg) { KJ_EXPECT(msg.is()); }); - } else { - auto msg = ws->receive().wait(waitScope); - KJ_ASSERT(msg.is()); +public: + SimpleInputStream(kj::StringPtr text) + : unread(text.asBytes()) {} - // Sending a close hangs. - promise = ws->close(1234, "whatever"_kj); + kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + size_t amount = kj::min(maxBytes, unread.size()); + memcpy(buffer, unread.begin(), amount); + unread = unread.slice(amount, unread.size()); + return amount; } - KJ_EXPECT(!promise.poll(waitScope)); - // Until we cause the service to return. - if (exception) { - service.getFulfiller().reject(KJ_EXCEPTION(FAILED, "service-side failure")); - } else { - service.getFulfiller().fulfill(); - } +private: + kj::ArrayPtr unread; +}; - KJ_ASSERT(promise.poll(waitScope)); +class PumpResponseService final: public HttpService { + // HttpService that uses pumpTo() to write a response, without carefully specifying how much to + // pump, but the stream happens to be the right size. +public: + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + return requestBody.readAllBytes() + .then([this,&response](kj::Array&&) -> kj::Promise { + HttpHeaders headers(table); + kj::StringPtr text = "Hello, World!"; + auto body = response.send(200, "OK", headers, text.size()); - if (exception) { - KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("service-side failure", promise.wait(waitScope)); - } else { - promise.wait(waitScope); + auto stream = kj::heap(text); + auto promise = stream->pumpTo(*body); + return promise.attach(kj::mv(body), kj::mv(stream)) + .then([text](uint64_t amount) { + KJ_EXPECT(amount == text.size()); + }); + }); } + +private: + kj::Maybe exception; + HttpHeaderTable table; }; -KJ_TEST("adapted client waits for service to complete before completing upstream close on WebSocket") { - doDelayedCompletionWebSocketTest(false, false); -} +KJ_TEST("HttpFixedLengthEntityWriter correctly implements tryPumpFrom") { + auto PIPELINE_TESTS = pipelineTestCases(); -KJ_TEST("adapted client waits for service to complete before returning downstream close on WebSocket") { - doDelayedCompletionWebSocketTest(false, true); -} + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; -KJ_TEST("adapted client propagates throw from service after WebSocket upstream close sent") { - doDelayedCompletionWebSocketTest(true, false); -} + HttpHeaderTable table; + PumpResponseService service; + HttpServer server(timer, table, service); -KJ_TEST("adapted client propagates throw from service after WebSocket downstream close sent") { - doDelayedCompletionWebSocketTest(true, true); -} + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); -// ----------------------------------------------------------------------------- + // Do one request. + pipe.ends[1]->write(PIPELINE_TESTS[0].request.raw.begin(), PIPELINE_TESTS[0].request.raw.size()) + .wait(waitScope); + pipe.ends[1]->shutdownWrite(); + auto text = pipe.ends[1]->readAllText().wait(waitScope); -class CountingIoStream final: public kj::AsyncIoStream { - // An AsyncIoStream wrapper which decrements a counter when destroyed (allowing us to count how - // many connections are open). + KJ_EXPECT(text == + "HTTP/1.1 200 OK\r\n" + "Content-Length: 13\r\n" + "\r\n" + "Hello, World!", text); +} +class HangingHttpService final: public HttpService { + // HttpService that hangs forever. public: - CountingIoStream(kj::Own inner, uint& count) - : inner(kj::mv(inner)), count(count) {} - ~CountingIoStream() noexcept(false) { - --count; + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& responseSender) override { + kj::Promise result = kj::NEVER_DONE; + ++inFlight; + return result.attach(kj::defer([this]() { + if (--inFlight == 0) { + KJ_IF_MAYBE(f, onCancelFulfiller) { + f->get()->fulfill(); + } + } + })); } - kj::Promise read(void* buffer, size_t minBytes, size_t maxBytes) override { - return inner->read(buffer, minBytes, maxBytes); - } - kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { - return inner->tryRead(buffer, minBytes, maxBytes); - } - kj::Maybe tryGetLength() override { - return inner->tryGetLength();; - } - kj::Promise pumpTo(kj::AsyncOutputStream& output, uint64_t amount) override { - return inner->pumpTo(output, amount); - } - kj::Promise write(const void* buffer, size_t size) override { - return inner->write(buffer, size); - } - kj::Promise write(kj::ArrayPtr> pieces) override { - return inner->write(pieces); - } - kj::Maybe> tryPumpFrom( - kj::AsyncInputStream& input, uint64_t amount = kj::maxValue) override { - return inner->tryPumpFrom(input, amount); - } - Promise whenWriteDisconnected() override { - return inner->whenWriteDisconnected(); - } - void shutdownWrite() override { - return inner->shutdownWrite(); - } - void abortRead() override { - return inner->abortRead(); + kj::Promise onCancel() { + auto paf = kj::newPromiseAndFulfiller(); + onCancelFulfiller = kj::mv(paf.fulfiller); + return kj::mv(paf.promise); } -public: - kj::Own inner; - uint& count; + uint inFlight = 0; + +private: + kj::Maybe exception; + kj::Maybe>> onCancelFulfiller; }; -class CountingNetworkAddress final: public kj::NetworkAddress { -public: - CountingNetworkAddress(kj::NetworkAddress& inner, uint& count, uint& cumulative) - : inner(inner), count(count), addrCount(ownAddrCount), cumulative(cumulative) {} - CountingNetworkAddress(kj::Own inner, uint& count, uint& addrCount) - : inner(*inner), ownInner(kj::mv(inner)), count(count), addrCount(addrCount), - cumulative(ownCumulative) {} - ~CountingNetworkAddress() noexcept(false) { - --addrCount; - } +KJ_TEST("HttpServer cancels request when client disconnects") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - kj::Promise> connect() override { - ++count; - ++cumulative; - return inner.connect() - .then([this](kj::Own stream) -> kj::Own { - return kj::heap(kj::mv(stream), count); - }); - } + HttpHeaderTable table; + HangingHttpService service; + HttpServer server(timer, table, service); - kj::Own listen() override { KJ_UNIMPLEMENTED("test"); } - kj::Own clone() override { KJ_UNIMPLEMENTED("test"); } - kj::String toString() override { KJ_UNIMPLEMENTED("test"); } + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); -private: - kj::NetworkAddress& inner; - kj::Own ownInner; - uint& count; - uint ownAddrCount = 1; - uint& addrCount; - uint ownCumulative = 0; - uint& cumulative; -}; + KJ_EXPECT(service.inFlight == 0); + + static constexpr auto request = "GET / HTTP/1.1\r\n\r\n"_kj; + pipe.ends[1]->write(request.begin(), request.size()).wait(waitScope); + + auto cancelPromise = service.onCancel(); + KJ_EXPECT(!cancelPromise.poll(waitScope)); + KJ_EXPECT(service.inFlight == 1); + + // Disconnect client and verify server cancels. + pipe.ends[1] = nullptr; + KJ_ASSERT(cancelPromise.poll(waitScope)); + KJ_EXPECT(service.inFlight == 0); + cancelPromise.wait(waitScope); +} + +class SuspendAfter: private HttpService { + // A SuspendableHttpServiceFactory which responds to the first `n` requests with 200 OK, then + // suspends all subsequent requests until its counter is reset. -class ConnectionCountingNetwork final: public kj::Network { public: - ConnectionCountingNetwork(kj::Network& inner, uint& count, uint& addrCount) - : inner(inner), count(count), addrCount(addrCount) {} + void suspendAfter(uint countdownParam) { countdown = countdownParam; } - Promise> parseAddress(StringPtr addr, uint portHint = 0) override { - ++addrCount; - return inner.parseAddress(addr, portHint) - .then([this](Own&& addr) -> Own { - return kj::heap(kj::mv(addr), count, addrCount); - }); - } - Own getSockaddr(const void* sockaddr, uint len) override { - KJ_UNIMPLEMENTED("test"); + kj::Maybe> operator()(HttpServer::SuspendableRequest& sr) { + if (countdown == 0) { + suspendedRequest = sr.suspend(); + return nullptr; + } + --countdown; + return kj::Own(static_cast(this), kj::NullDisposer::instance); } - Own restrictPeers( - kj::ArrayPtr allow, - kj::ArrayPtr deny = nullptr) override { - KJ_UNIMPLEMENTED("test"); + + kj::Maybe getSuspended() { + KJ_DEFER(suspendedRequest = nullptr); + return kj::mv(suspendedRequest); } private: - kj::Network& inner; - uint& count; - uint& addrCount; -}; - -class DummyService final: public HttpService { -public: - DummyService(HttpHeaderTable& headerTable): headerTable(headerTable) {} - kj::Promise request( HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, kj::AsyncInputStream& requestBody, Response& response) override { - if (!headers.isWebSocket()) { - if (url == "/throw") { - return KJ_EXCEPTION(FAILED, "client requested failure"); - } - - auto body = kj::str(headers.get(HttpHeaderId::HOST).orDefault("null"), ":", url); - auto stream = response.send(200, "OK", HttpHeaders(headerTable), body.size()); - auto promises = kj::heapArrayBuilder>(2); - promises.add(stream->write(body.begin(), body.size())); - promises.add(requestBody.readAllBytes().ignoreResult()); - return kj::joinPromises(promises.finish()).attach(kj::mv(stream), kj::mv(body)); - } else { - auto ws = response.acceptWebSocket(HttpHeaders(headerTable)); - auto body = kj::str(headers.get(HttpHeaderId::HOST).orDefault("null"), ":", url); - auto sendPromise = ws->send(body); - - auto promises = kj::heapArrayBuilder>(2); - promises.add(sendPromise.attach(kj::mv(body))); - promises.add(ws->receive().ignoreResult()); - return kj::joinPromises(promises.finish()).attach(kj::mv(ws)); - } + HttpHeaders responseHeaders(table); + response.send(200, "OK", responseHeaders); + return requestBody.readAllBytes().ignoreResult(); } -private: - HttpHeaderTable& headerTable; + HttpHeaderTable table; + + uint countdown = kj::maxValue; + kj::Maybe suspendedRequest; }; -KJ_TEST("HttpClient connection management") { +KJ_TEST("HttpServer can suspend a request") { + // This test sends a single request to an HttpServer three times. First it writes the request to + // its pipe and arranges for the HttpServer to suspend the request. Then it resumes the suspended + // request and arranges for this resumption to be suspended as well. Then it resumes once more and + // arranges for the request to be completed. + KJ_HTTP_TEST_SETUP_IO; - KJ_HTTP_TEST_SETUP_LOOPBACK_LISTENER_AND_ADDR; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - kj::TimerImpl serverTimer(kj::origin()); - kj::TimerImpl clientTimer(kj::origin()); - HttpHeaderTable headerTable; + HttpHeaderTable table; + // This HttpService will not actually be used, because we're passing a factory in to + // listenHttpCleanDrain(). + HangingHttpService service; + HttpServer server(timer, table, service); - DummyService service(headerTable); - HttpServerSettings serverSettings; - HttpServer server(serverTimer, headerTable, service, serverSettings); - auto listenTask = server.listenHttp(*listener); + kj::Maybe suspendedRequest; - uint count = 0; - uint cumulative = 0; - CountingNetworkAddress countingAddr(*addr, count, cumulative); + SuspendAfter factory; - FakeEntropySource entropySource; - HttpClientSettings clientSettings; - clientSettings.entropySource = entropySource; - auto client = newHttpClient(clientTimer, headerTable, countingAddr, clientSettings); + { + // Observe the HttpServer suspend. - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 0); + factory.suspendAfter(0); + auto listenPromise = server.listenHttpCleanDrain(*pipe.ends[0], factory); - uint i = 0; - auto doRequest = [&]() { - uint n = i++; - return client->request(HttpMethod::GET, kj::str("/", n), HttpHeaders(headerTable)).response - .then([](HttpClient::Response&& response) { - auto promise = response.body->readAllText(); - return promise.attach(kj::mv(response.body)); - }).then([n](kj::String body) { - KJ_EXPECT(body == kj::str("null:/", n)); + static constexpr kj::StringPtr REQUEST = + "POST / HTTP/1.1\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "6\r\n" + "foobar\r\n" + "0\r\n" + "\r\n"_kj; + pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + + // The listen promise is fulfilled with false. + KJ_EXPECT(listenPromise.poll(waitScope)); + KJ_EXPECT(!listenPromise.wait(waitScope)); + + // And we have a SuspendedRequest. + suspendedRequest = factory.getSuspended(); + KJ_EXPECT(suspendedRequest != nullptr); + } + + { + // Observe the HttpServer suspend again without reading from the connection. + + factory.suspendAfter(0); + auto listenPromise = server.listenHttpCleanDrain( + *pipe.ends[0], factory, kj::mv(suspendedRequest)); + + // The listen promise is again fulfilled with false. + KJ_EXPECT(listenPromise.poll(waitScope)); + KJ_EXPECT(!listenPromise.wait(waitScope)); + + // We again have a suspendedRequest. + suspendedRequest = factory.getSuspended(); + KJ_EXPECT(suspendedRequest != nullptr); + } + + { + // The SuspendedRequest is completed. + + factory.suspendAfter(1); + auto listenPromise = server.listenHttpCleanDrain( + *pipe.ends[0], factory, kj::mv(suspendedRequest)); + + auto drainPromise = kj::evalLast([&]() { + return server.drain(); }); - }; - // We can do several requests in a row and only have one connection. - doRequest().wait(waitScope); - doRequest().wait(waitScope); - doRequest().wait(waitScope); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 1); + // We need to read the response for the HttpServer to drain. + auto readPromise = pipe.ends[1]->readAllText(); - // But if we do two in parallel, we'll end up with two connections. - auto req1 = doRequest(); - auto req2 = doRequest(); - req1.wait(waitScope); - req2.wait(waitScope); - KJ_EXPECT(count == 2); - KJ_EXPECT(cumulative == 2); + // This time, the server drained cleanly. + KJ_EXPECT(listenPromise.poll(waitScope)); + KJ_EXPECT(listenPromise.wait(waitScope)); + + drainPromise.wait(waitScope); + + // Close the server side of the pipe so our read promise completes. + pipe.ends[0] = nullptr; + + auto response = readPromise.wait(waitScope); + static constexpr kj::StringPtr RESPONSE = + "HTTP/1.1 200 OK\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "0\r\n" + "\r\n"_kj; + KJ_EXPECT(RESPONSE == response); + } +} + +KJ_TEST("HttpServer can suspend and resume pipelined requests") { + // This test sends multiple requests with both Content-Length and Transfer-Encoding: chunked + // bodies, and verifies that suspending both kinds does not corrupt the stream. + + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + HttpHeaderTable table; + // This HttpService will not actually be used, because we're passing a factory in to + // listenHttpCleanDrain(). + HangingHttpService service; + HttpServer server(timer, table, service); + + // We'll suspend the second request. + kj::Maybe suspendedRequest; + SuspendAfter factory; + + static constexpr kj::StringPtr LENGTHFUL_REQUEST = + "POST / HTTP/1.1\r\n" + "Content-Length: 6\r\n" + "\r\n" + "foobar"_kj; + static constexpr kj::StringPtr CHUNKED_REQUEST = + "POST / HTTP/1.1\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "6\r\n" + "foobar\r\n" + "0\r\n" + "\r\n"_kj; + + // Set up several requests; we'll suspend and transfer the second and third one. + auto writePromise = pipe.ends[1]->write(LENGTHFUL_REQUEST.begin(), LENGTHFUL_REQUEST.size()) + .then([&]() { + return pipe.ends[1]->write(CHUNKED_REQUEST.begin(), CHUNKED_REQUEST.size()); + }).then([&]() { + return pipe.ends[1]->write(LENGTHFUL_REQUEST.begin(), LENGTHFUL_REQUEST.size()); + }).then([&]() { + return pipe.ends[1]->write(CHUNKED_REQUEST.begin(), CHUNKED_REQUEST.size()); + }); + + auto readPromise = pipe.ends[1]->readAllText(); - // We can reuse after a POST, provided we write the whole POST body properly. { - auto req = client->request( - HttpMethod::POST, kj::str("/foo"), HttpHeaders(headerTable), size_t(6)); - req.body->write("foobar", 6).wait(waitScope); - req.response.wait(waitScope).body->readAllBytes().wait(waitScope); + // Observe the HttpServer suspend the second request. + + factory.suspendAfter(1); + auto listenPromise = server.listenHttpCleanDrain(*pipe.ends[0], factory); + + KJ_EXPECT(listenPromise.poll(waitScope)); + KJ_EXPECT(!listenPromise.wait(waitScope)); + suspendedRequest = factory.getSuspended(); + KJ_EXPECT(suspendedRequest != nullptr); } - KJ_EXPECT(count == 2); - KJ_EXPECT(cumulative == 2); - doRequest().wait(waitScope); - KJ_EXPECT(count == 2); - KJ_EXPECT(cumulative == 2); - // Advance time for half the timeout, then exercise one of the connections. - clientTimer.advanceTo(clientTimer.now() + clientSettings.idleTimeout / 2); - doRequest().wait(waitScope); - doRequest().wait(waitScope); - waitScope.poll(); - KJ_EXPECT(count == 2); - KJ_EXPECT(cumulative == 2); + { + // Let's resume one request and suspend the next pipelined request. - // Advance time past when the other connection should time out. It should be dropped. - clientTimer.advanceTo(clientTimer.now() + clientSettings.idleTimeout * 3 / 4); - waitScope.poll(); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 2); + factory.suspendAfter(1); + auto listenPromise = server.listenHttpCleanDrain( + *pipe.ends[0], factory, kj::mv(suspendedRequest)); - // Wait for the other to drop. - clientTimer.advanceTo(clientTimer.now() + clientSettings.idleTimeout / 2); - waitScope.poll(); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 2); + KJ_EXPECT(listenPromise.poll(waitScope)); + KJ_EXPECT(!listenPromise.wait(waitScope)); + suspendedRequest = factory.getSuspended(); + KJ_EXPECT(suspendedRequest != nullptr); + } - // New request creates a new connection again. - doRequest().wait(waitScope); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 3); + { + // Resume again and run to completion. - // WebSocket connections are not reused. - client->openWebSocket(kj::str("/websocket"), HttpHeaders(headerTable)) - .wait(waitScope); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 3); + factory.suspendAfter(kj::maxValue); + auto listenPromise = server.listenHttpCleanDrain( + *pipe.ends[0], factory, kj::mv(suspendedRequest)); - // Errored connections are not reused. - doRequest().wait(waitScope); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 4); - client->request(HttpMethod::GET, kj::str("/throw"), HttpHeaders(headerTable)).response - .wait(waitScope).body->readAllBytes().wait(waitScope); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 4); + auto drainPromise = kj::evalLast([&]() { + return server.drain(); + }); - // Connections where we failed to read the full response body are not reused. - doRequest().wait(waitScope); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 5); - client->request(HttpMethod::GET, kj::str("/foo"), HttpHeaders(headerTable)).response - .wait(waitScope); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 5); + // This time, the server drained cleanly. + KJ_EXPECT(listenPromise.poll(waitScope)); + KJ_EXPECT(listenPromise.wait(waitScope)); + // No suspended request this time. + suspendedRequest = factory.getSuspended(); + KJ_EXPECT(suspendedRequest == nullptr); - // Connections where we didn't even wait for the response headers are not reused. - doRequest().wait(waitScope); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 6); - client->request(HttpMethod::GET, kj::str("/foo"), HttpHeaders(headerTable)); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 6); + drainPromise.wait(waitScope); + } + + writePromise.wait(waitScope); + + // Close the server side of the pipe so our read promise completes. + pipe.ends[0] = nullptr; + + auto responses = readPromise.wait(waitScope); + static constexpr kj::StringPtr RESPONSE = + "HTTP/1.1 200 OK\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "0\r\n" + "\r\n"_kj; + KJ_EXPECT(kj::str(kj::delimited(kj::repeat(RESPONSE, 4), "")) == responses); +} + +KJ_TEST("HttpServer can suspend a request with no leftover") { + // This test verifies that if the request loop's read perfectly ends at the end of message + // headers, leaving no leftover section, we can still successfully suspend and resume. + + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + HttpHeaderTable table; + // This HttpService will not actually be used, because we're passing a factory in to + // listenHttpCleanDrain(). + HangingHttpService service; + HttpServer server(timer, table, service); + + kj::Maybe suspendedRequest; + + SuspendAfter factory; + + { + factory.suspendAfter(0); + auto listenPromise = server.listenHttpCleanDrain(*pipe.ends[0], factory); + + static constexpr kj::StringPtr REQUEST_HEADERS = + "POST / HTTP/1.1\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n"_kj; + pipe.ends[1]->write(REQUEST_HEADERS.begin(), REQUEST_HEADERS.size()).wait(waitScope); + + // The listen promise is fulfilled with false. + KJ_EXPECT(listenPromise.poll(waitScope)); + KJ_EXPECT(!listenPromise.wait(waitScope)); + + // And we have a SuspendedRequest. We know that it has no leftover, because we only wrote + // headers, no body yet. + suspendedRequest = factory.getSuspended(); + KJ_EXPECT(suspendedRequest != nullptr); + } + + { + factory.suspendAfter(1); + auto listenPromise = server.listenHttpCleanDrain( + *pipe.ends[0], factory, kj::mv(suspendedRequest)); + + auto drainPromise = kj::evalLast([&]() { + return server.drain(); + }); + + // We need to read the response for the HttpServer to drain. + auto readPromise = pipe.ends[1]->readAllText(); + + static constexpr kj::StringPtr REQUEST_BODY = + "6\r\n" + "foobar\r\n" + "0\r\n" + "\r\n"_kj; + pipe.ends[1]->write(REQUEST_BODY.begin(), REQUEST_BODY.size()).wait(waitScope); + + // Clean drain. + KJ_EXPECT(listenPromise.poll(waitScope)); + KJ_EXPECT(listenPromise.wait(waitScope)); + + drainPromise.wait(waitScope); + + // No SuspendedRequest. + suspendedRequest = factory.getSuspended(); + KJ_EXPECT(suspendedRequest == nullptr); + + // Close the server side of the pipe so our read promise completes. + pipe.ends[0] = nullptr; + + auto response = readPromise.wait(waitScope); + static constexpr kj::StringPtr RESPONSE = + "HTTP/1.1 200 OK\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "0\r\n" + "\r\n"_kj; + KJ_EXPECT(RESPONSE == response); + } +} + +KJ_TEST("HttpServer::listenHttpCleanDrain() factory-created services outlive requests") { + // Test that the lifetimes of factory-created Own objects are handled correctly. + + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + HttpHeaderTable table; + // This HttpService will not actually be used, because we're passing a factory in to + // listenHttpCleanDrain(). + HangingHttpService service; + HttpServer server(timer, table, service); + + uint serviceCount = 0; + + // A factory which returns a service whose request() function responds asynchronously. + auto factory = [&](HttpServer::SuspendableRequest&) -> kj::Own { + class ServiceImpl final: public HttpService { + public: + explicit ServiceImpl(uint& serviceCount): serviceCount(++serviceCount) {} + ~ServiceImpl() noexcept(false) { --serviceCount; } + KJ_DISALLOW_COPY_AND_MOVE(ServiceImpl); + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + return evalLater([&serviceCount = serviceCount, &table = table, &requestBody, &response]() { + // This KJ_EXPECT here is the entire point of this test. + KJ_EXPECT(serviceCount == 1) + HttpHeaders responseHeaders(table); + response.send(200, "OK", responseHeaders); + return requestBody.readAllBytes().ignoreResult(); + }); + } + + private: + HttpHeaderTable table; + + uint& serviceCount; + }; + + return kj::heap(serviceCount); + }; + + auto listenPromise = server.listenHttpCleanDrain(*pipe.ends[0], factory); + + static constexpr kj::StringPtr REQUEST = + "POST / HTTP/1.1\r\n" + "Content-Length: 6\r\n" + "\r\n" + "foobar"_kj; + pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + + // We need to read the response for the HttpServer to drain. + auto readPromise = pipe.ends[1]->readAllText(); + + // http-socketpair-test quirk: we must drive the request loop past the point of receiving request + // headers so that our call to server.drain() doesn't prematurely cancel the request. + KJ_EXPECT(!listenPromise.poll(waitScope)); + + auto drainPromise = kj::evalLast([&]() { + return server.drain(); + }); + + // Clean drain. + KJ_EXPECT(listenPromise.poll(waitScope)); + KJ_EXPECT(listenPromise.wait(waitScope)); + + drainPromise.wait(waitScope); + + // Close the server side of the pipe so our read promise completes. + pipe.ends[0] = nullptr; + auto response = readPromise.wait(waitScope); + + static constexpr kj::StringPtr RESPONSE = + "HTTP/1.1 200 OK\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "0\r\n" + "\r\n"_kj; + KJ_EXPECT(RESPONSE == response); +} + +// ----------------------------------------------------------------------------- + +KJ_TEST("newHttpService from HttpClient") { + auto PIPELINE_TESTS = pipelineTestCases(); + + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto frontPipe = KJ_HTTP_TEST_CREATE_2PIPE; + auto backPipe = KJ_HTTP_TEST_CREATE_2PIPE; + + kj::Promise writeResponsesPromise = kj::READY_NOW; + for (auto& testCase: PIPELINE_TESTS) { + writeResponsesPromise = writeResponsesPromise + .then([&]() { + return expectRead(*backPipe.ends[1], testCase.request.raw); + }).then([&]() { + return backPipe.ends[1]->write(testCase.response.raw.begin(), testCase.response.raw.size()); + }); + } + + { + HttpHeaderTable table; + auto backClient = newHttpClient(table, *backPipe.ends[0]); + auto frontService = newHttpService(*backClient); + HttpServer frontServer(timer, table, *frontService); + auto listenTask = frontServer.listenHttp(kj::mv(frontPipe.ends[1])); + + for (auto& testCase: PIPELINE_TESTS) { + KJ_CONTEXT(testCase.request.raw, testCase.response.raw); + + frontPipe.ends[0]->write(testCase.request.raw.begin(), testCase.request.raw.size()) + .wait(waitScope); + + expectRead(*frontPipe.ends[0], testCase.response.raw).wait(waitScope); + } + + frontPipe.ends[0]->shutdownWrite(); + listenTask.wait(waitScope); + } + + backPipe.ends[0]->shutdownWrite(); + writeResponsesPromise.wait(waitScope); +} + +KJ_TEST("newHttpService from HttpClient WebSockets") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto frontPipe = KJ_HTTP_TEST_CREATE_2PIPE; + auto backPipe = KJ_HTTP_TEST_CREATE_2PIPE; + + auto request = kj::str("GET /websocket", WEBSOCKET_REQUEST_HANDSHAKE); + auto writeResponsesPromise = expectRead(*backPipe.ends[1], request) + .then([&]() { return writeA(*backPipe.ends[1], asBytes(WEBSOCKET_RESPONSE_HANDSHAKE)); }) + .then([&]() { return writeA(*backPipe.ends[1], WEBSOCKET_FIRST_MESSAGE_INLINE); }) + .then([&]() { return expectRead(*backPipe.ends[1], WEBSOCKET_SEND_MESSAGE); }) + .then([&]() { return writeA(*backPipe.ends[1], WEBSOCKET_REPLY_MESSAGE); }) + .then([&]() { return expectRead(*backPipe.ends[1], WEBSOCKET_SEND_CLOSE); }) + .then([&]() { return writeA(*backPipe.ends[1], WEBSOCKET_REPLY_CLOSE); }) + .then([&]() { return expectEnd(*backPipe.ends[1]); }) + .then([&]() { backPipe.ends[1]->shutdownWrite(); }) + .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); + + { + HttpHeaderTable table; + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + auto backClientStream = kj::mv(backPipe.ends[0]); + auto backClient = newHttpClient(table, *backClientStream, clientSettings); + auto frontService = newHttpService(*backClient); + HttpServer frontServer(timer, table, *frontService); + auto listenTask = frontServer.listenHttp(kj::mv(frontPipe.ends[1])); + + writeA(*frontPipe.ends[0], request.asBytes()).wait(waitScope); + expectRead(*frontPipe.ends[0], WEBSOCKET_RESPONSE_HANDSHAKE).wait(waitScope); + + expectRead(*frontPipe.ends[0], WEBSOCKET_FIRST_MESSAGE_INLINE).wait(waitScope); + writeA(*frontPipe.ends[0], WEBSOCKET_SEND_MESSAGE).wait(waitScope); + expectRead(*frontPipe.ends[0], WEBSOCKET_REPLY_MESSAGE).wait(waitScope); + writeA(*frontPipe.ends[0], WEBSOCKET_SEND_CLOSE).wait(waitScope); + expectRead(*frontPipe.ends[0], WEBSOCKET_REPLY_CLOSE).wait(waitScope); + + frontPipe.ends[0]->shutdownWrite(); + listenTask.wait(waitScope); + } + + writeResponsesPromise.wait(waitScope); +} + +KJ_TEST("newHttpService from HttpClient WebSockets disconnect") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto frontPipe = KJ_HTTP_TEST_CREATE_2PIPE; + auto backPipe = KJ_HTTP_TEST_CREATE_2PIPE; + + auto request = kj::str("GET /websocket", WEBSOCKET_REQUEST_HANDSHAKE); + auto writeResponsesPromise = expectRead(*backPipe.ends[1], request) + .then([&]() { return writeA(*backPipe.ends[1], asBytes(WEBSOCKET_RESPONSE_HANDSHAKE)); }) + .then([&]() { return writeA(*backPipe.ends[1], WEBSOCKET_FIRST_MESSAGE_INLINE); }) + .then([&]() { return expectRead(*backPipe.ends[1], WEBSOCKET_SEND_MESSAGE); }) + .then([&]() { backPipe.ends[1]->shutdownWrite(); }) + .eagerlyEvaluate([](kj::Exception&& e) { KJ_LOG(ERROR, e); }); + + { + HttpHeaderTable table; + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + auto backClient = newHttpClient(table, *backPipe.ends[0], clientSettings); + auto frontService = newHttpService(*backClient); + HttpServer frontServer(timer, table, *frontService); + auto listenTask = frontServer.listenHttp(kj::mv(frontPipe.ends[1])); + + writeA(*frontPipe.ends[0], request.asBytes()).wait(waitScope); + expectRead(*frontPipe.ends[0], WEBSOCKET_RESPONSE_HANDSHAKE).wait(waitScope); + + expectRead(*frontPipe.ends[0], WEBSOCKET_FIRST_MESSAGE_INLINE).wait(waitScope); + writeA(*frontPipe.ends[0], WEBSOCKET_SEND_MESSAGE).wait(waitScope); + + KJ_EXPECT(frontPipe.ends[0]->readAllText().wait(waitScope) == ""); + + frontPipe.ends[0]->shutdownWrite(); + listenTask.wait(waitScope); + } + + writeResponsesPromise.wait(waitScope); +} + +// ----------------------------------------------------------------------------- + +KJ_TEST("newHttpClient from HttpService") { + auto PIPELINE_TESTS = pipelineTestCases(); + + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + + HttpHeaderTable table; + TestHttpService service(PIPELINE_TESTS, table); + auto client = newHttpClient(service); + + for (auto& testCase: PIPELINE_TESTS) { + testHttpClient(waitScope, table, *client, testCase); + } +} + +KJ_TEST("newHttpClient from HttpService WebSockets") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + HttpHeaderTable::Builder tableBuilder; + HttpHeaderId hMyHeader = tableBuilder.add("My-Header"); + auto headerTable = tableBuilder.build(); + TestWebSocketService service(*headerTable, hMyHeader); + auto client = newHttpClient(service); + + testWebSocketClient(waitScope, *headerTable, hMyHeader, *client); +} + +KJ_TEST("adapted client/server propagates request exceptions like non-adapted client") { + KJ_HTTP_TEST_SETUP_IO; + + HttpHeaderTable table; + HttpHeaders headers(table); + + class FailingHttpClient final: public HttpClient { + public: + Request request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::Maybe expectedBodySize = nullptr) override { + KJ_FAIL_ASSERT("request_fail"); + } + + kj::Promise openWebSocket( + kj::StringPtr url, const HttpHeaders& headers) override { + KJ_FAIL_ASSERT("websocket_fail"); + } + }; + + auto rawClient = kj::heap(); + + auto innerClient = kj::heap(); + auto adaptedService = kj::newHttpService(*innerClient).attach(kj::mv(innerClient)); + auto adaptedClient = kj::newHttpClient(*adaptedService).attach(kj::mv(adaptedService)); + + KJ_EXPECT_THROW_MESSAGE("request_fail", rawClient->request(HttpMethod::POST, "/"_kj, headers)); + KJ_EXPECT_THROW_MESSAGE("request_fail", adaptedClient->request(HttpMethod::POST, "/"_kj, headers)); + + KJ_EXPECT_THROW_MESSAGE("websocket_fail", rawClient->openWebSocket("/"_kj, headers)); + KJ_EXPECT_THROW_MESSAGE("websocket_fail", adaptedClient->openWebSocket("/"_kj, headers)); +} + +class DelayedCompletionHttpService final: public HttpService { +public: + DelayedCompletionHttpService(HttpHeaderTable& table, kj::Maybe expectedLength) + : table(table), expectedLength(expectedLength) {} + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + auto stream = response.send(200, "OK", HttpHeaders(table), expectedLength); + auto promise = stream->write("foo", 3); + return promise.attach(kj::mv(stream)).then([this]() { + return kj::mv(paf.promise); + }); + } + + kj::PromiseFulfiller& getFulfiller() { return *paf.fulfiller; } + +private: + HttpHeaderTable& table; + kj::Maybe expectedLength; + kj::PromiseFulfillerPair paf = kj::newPromiseAndFulfiller(); +}; + +void doDelayedCompletionTest(bool exception, kj::Maybe expectedLength) noexcept { + KJ_HTTP_TEST_SETUP_IO; + + HttpHeaderTable table; + + DelayedCompletionHttpService service(table, expectedLength); + auto client = newHttpClient(service); + + auto resp = client->request(HttpMethod::GET, "/", HttpHeaders(table), uint64_t(0)) + .response.wait(waitScope); + KJ_EXPECT(resp.statusCode == 200); + + // Read "foo" from the response body: works + char buffer[16]; + KJ_ASSERT(resp.body->tryRead(buffer, 1, sizeof(buffer)).wait(waitScope) == 3); + buffer[3] = '\0'; + KJ_EXPECT(buffer == "foo"_kj); + + // But reading any more hangs. + auto promise = resp.body->tryRead(buffer, 1, sizeof(buffer)); + + KJ_EXPECT(!promise.poll(waitScope)); + + // Until we cause the service to return. + if (exception) { + service.getFulfiller().reject(KJ_EXCEPTION(FAILED, "service-side failure")); + } else { + service.getFulfiller().fulfill(); + } + + KJ_ASSERT(promise.poll(waitScope)); + + if (exception) { + KJ_EXPECT_THROW_MESSAGE("service-side failure", promise.wait(waitScope)); + } else { + promise.wait(waitScope); + } +}; + +KJ_TEST("adapted client waits for service to complete before returning EOF on response stream") { + doDelayedCompletionTest(false, uint64_t(3)); +} + +KJ_TEST("adapted client waits for service to complete before returning EOF on chunked response") { + doDelayedCompletionTest(false, nullptr); +} + +KJ_TEST("adapted client propagates throw from service after complete response body sent") { + doDelayedCompletionTest(true, uint64_t(3)); +} + +KJ_TEST("adapted client propagates throw from service after incomplete response body sent") { + doDelayedCompletionTest(true, uint64_t(6)); +} + +KJ_TEST("adapted client propagates throw from service after chunked response body sent") { + doDelayedCompletionTest(true, nullptr); +} + +class DelayedCompletionWebSocketHttpService final: public HttpService { +public: + DelayedCompletionWebSocketHttpService(HttpHeaderTable& table, bool closeUpstreamFirst) + : table(table), closeUpstreamFirst(closeUpstreamFirst) {} + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + KJ_ASSERT(headers.isWebSocket()); + + auto ws = response.acceptWebSocket(HttpHeaders(table)); + kj::Promise promise = kj::READY_NOW; + if (closeUpstreamFirst) { + // Wait for a close message from the client before starting. + promise = promise.then([&ws = *ws]() { return ws.receive(); }).ignoreResult(); + } + promise = promise + .then([&ws = *ws]() { return ws.send("foo"_kj); }) + .then([&ws = *ws]() { return ws.close(1234, "closed"_kj); }); + if (!closeUpstreamFirst) { + // Wait for a close message from the client at the end. + promise = promise.then([&ws = *ws]() { return ws.receive(); }).ignoreResult(); + } + return promise.attach(kj::mv(ws)).then([this]() { + return kj::mv(paf.promise); + }); + } + + kj::PromiseFulfiller& getFulfiller() { return *paf.fulfiller; } + +private: + HttpHeaderTable& table; + bool closeUpstreamFirst; + kj::PromiseFulfillerPair paf = kj::newPromiseAndFulfiller(); +}; + +void doDelayedCompletionWebSocketTest(bool exception, bool closeUpstreamFirst) noexcept { + KJ_HTTP_TEST_SETUP_IO; + + HttpHeaderTable table; + + DelayedCompletionWebSocketHttpService service(table, closeUpstreamFirst); + auto client = newHttpClient(service); + + auto resp = client->openWebSocket("/", HttpHeaders(table)).wait(waitScope); + auto ws = kj::mv(KJ_ASSERT_NONNULL(resp.webSocketOrBody.tryGet>())); + + if (closeUpstreamFirst) { + // Send "close" immediately. + ws->close(1234, "whatever"_kj).wait(waitScope); + } + + // Read "foo" from the WebSocket: works + { + auto msg = ws->receive().wait(waitScope); + KJ_ASSERT(msg.is()); + KJ_ASSERT(msg.get() == "foo"); + } + + kj::Promise promise = nullptr; + if (closeUpstreamFirst) { + // Receiving the close hangs. + promise = ws->receive() + .then([](WebSocket::Message&& msg) { KJ_EXPECT(msg.is()); }); + } else { + auto msg = ws->receive().wait(waitScope); + KJ_ASSERT(msg.is()); + + // Sending a close hangs. + promise = ws->close(1234, "whatever"_kj); + } + KJ_EXPECT(!promise.poll(waitScope)); + + // Until we cause the service to return. + if (exception) { + service.getFulfiller().reject(KJ_EXCEPTION(FAILED, "service-side failure")); + } else { + service.getFulfiller().fulfill(); + } + + KJ_ASSERT(promise.poll(waitScope)); + + if (exception) { + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE("service-side failure", promise.wait(waitScope)); + } else { + promise.wait(waitScope); + } +}; + +KJ_TEST("adapted client waits for service to complete before completing upstream close on WebSocket") { + doDelayedCompletionWebSocketTest(false, false); +} + +KJ_TEST("adapted client waits for service to complete before returning downstream close on WebSocket") { + doDelayedCompletionWebSocketTest(false, true); +} + +KJ_TEST("adapted client propagates throw from service after WebSocket upstream close sent") { + doDelayedCompletionWebSocketTest(true, false); +} + +KJ_TEST("adapted client propagates throw from service after WebSocket downstream close sent") { + doDelayedCompletionWebSocketTest(true, true); +} + +// ----------------------------------------------------------------------------- + +class CountingIoStream final: public kj::AsyncIoStream { + // An AsyncIoStream wrapper which decrements a counter when destroyed (allowing us to count how + // many connections are open). + +public: + CountingIoStream(kj::Own inner, uint& count) + : inner(kj::mv(inner)), count(count) {} + ~CountingIoStream() noexcept(false) { + --count; + } + + kj::Promise read(void* buffer, size_t minBytes, size_t maxBytes) override { + return inner->read(buffer, minBytes, maxBytes); + } + kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + return inner->tryRead(buffer, minBytes, maxBytes); + } + kj::Maybe tryGetLength() override { + return inner->tryGetLength();; + } + kj::Promise pumpTo(kj::AsyncOutputStream& output, uint64_t amount) override { + return inner->pumpTo(output, amount); + } + kj::Promise write(const void* buffer, size_t size) override { + return inner->write(buffer, size); + } + kj::Promise write(kj::ArrayPtr> pieces) override { + return inner->write(pieces); + } + kj::Maybe> tryPumpFrom( + kj::AsyncInputStream& input, uint64_t amount = kj::maxValue) override { + return inner->tryPumpFrom(input, amount); + } + Promise whenWriteDisconnected() override { + return inner->whenWriteDisconnected(); + } + void shutdownWrite() override { + return inner->shutdownWrite(); + } + void abortRead() override { + return inner->abortRead(); + } + +public: + kj::Own inner; + uint& count; +}; + +class CountingNetworkAddress final: public kj::NetworkAddress { +public: + CountingNetworkAddress(kj::NetworkAddress& inner, uint& count, uint& cumulative) + : inner(inner), count(count), addrCount(ownAddrCount), cumulative(cumulative) {} + CountingNetworkAddress(kj::Own inner, uint& count, uint& addrCount) + : inner(*inner), ownInner(kj::mv(inner)), count(count), addrCount(addrCount), + cumulative(ownCumulative) {} + ~CountingNetworkAddress() noexcept(false) { + --addrCount; + } + + kj::Promise> connect() override { + ++count; + ++cumulative; + return inner.connect() + .then([this](kj::Own stream) -> kj::Own { + return kj::heap(kj::mv(stream), count); + }); + } + + kj::Own listen() override { KJ_UNIMPLEMENTED("test"); } + kj::Own clone() override { KJ_UNIMPLEMENTED("test"); } + kj::String toString() override { KJ_UNIMPLEMENTED("test"); } + +private: + kj::NetworkAddress& inner; + kj::Own ownInner; + uint& count; + uint ownAddrCount = 1; + uint& addrCount; + uint ownCumulative = 0; + uint& cumulative; +}; + +class ConnectionCountingNetwork final: public kj::Network { +public: + ConnectionCountingNetwork(kj::Network& inner, uint& count, uint& addrCount) + : inner(inner), count(count), addrCount(addrCount) {} + + Promise> parseAddress(StringPtr addr, uint portHint = 0) override { + ++addrCount; + return inner.parseAddress(addr, portHint) + .then([this](Own&& addr) -> Own { + return kj::heap(kj::mv(addr), count, addrCount); + }); + } + Own getSockaddr(const void* sockaddr, uint len) override { + KJ_UNIMPLEMENTED("test"); + } + Own restrictPeers( + kj::ArrayPtr allow, + kj::ArrayPtr deny = nullptr) override { + KJ_UNIMPLEMENTED("test"); + } + +private: + kj::Network& inner; + uint& count; + uint& addrCount; +}; + +class DummyService final: public HttpService { +public: + DummyService(HttpHeaderTable& headerTable): headerTable(headerTable) {} + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + if (!headers.isWebSocket()) { + if (url == "/throw") { + return KJ_EXCEPTION(FAILED, "client requested failure"); + } + + auto body = kj::str(headers.get(HttpHeaderId::HOST).orDefault("null"), ":", url); + auto stream = response.send(200, "OK", HttpHeaders(headerTable), body.size()); + auto promises = kj::heapArrayBuilder>(2); + promises.add(stream->write(body.begin(), body.size())); + promises.add(requestBody.readAllBytes().ignoreResult()); + return kj::joinPromises(promises.finish()).attach(kj::mv(stream), kj::mv(body)); + } else { + auto ws = response.acceptWebSocket(HttpHeaders(headerTable)); + auto body = kj::str(headers.get(HttpHeaderId::HOST).orDefault("null"), ":", url); + auto sendPromise = ws->send(body); + + auto promises = kj::heapArrayBuilder>(2); + promises.add(sendPromise.attach(kj::mv(body))); + promises.add(ws->receive().ignoreResult()); + return kj::joinPromises(promises.finish()).attach(kj::mv(ws)); + } + } + +private: + HttpHeaderTable& headerTable; +}; + +KJ_TEST("HttpClient connection management") { + KJ_HTTP_TEST_SETUP_IO; + KJ_HTTP_TEST_SETUP_LOOPBACK_LISTENER_AND_ADDR; + + kj::TimerImpl serverTimer(kj::origin()); + kj::TimerImpl clientTimer(kj::origin()); + HttpHeaderTable headerTable; + + DummyService service(headerTable); + HttpServerSettings serverSettings; + HttpServer server(serverTimer, headerTable, service, serverSettings); + auto listenTask = server.listenHttp(*listener); + + uint count = 0; + uint cumulative = 0; + CountingNetworkAddress countingAddr(*addr, count, cumulative); + + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + auto client = newHttpClient(clientTimer, headerTable, countingAddr, clientSettings); + + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 0); + + uint i = 0; + auto doRequest = [&]() { + uint n = i++; + return client->request(HttpMethod::GET, kj::str("/", n), HttpHeaders(headerTable)).response + .then([](HttpClient::Response&& response) { + auto promise = response.body->readAllText(); + return promise.attach(kj::mv(response.body)); + }).then([n](kj::String body) { + KJ_EXPECT(body == kj::str("null:/", n)); + }); + }; + + // We can do several requests in a row and only have one connection. + doRequest().wait(waitScope); + doRequest().wait(waitScope); + doRequest().wait(waitScope); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 1); + + // But if we do two in parallel, we'll end up with two connections. + auto req1 = doRequest(); + auto req2 = doRequest(); + req1.wait(waitScope); + req2.wait(waitScope); + KJ_EXPECT(count == 2); + KJ_EXPECT(cumulative == 2); + + // We can reuse after a POST, provided we write the whole POST body properly. + { + auto req = client->request( + HttpMethod::POST, kj::str("/foo"), HttpHeaders(headerTable), size_t(6)); + req.body->write("foobar", 6).wait(waitScope); + req.response.wait(waitScope).body->readAllBytes().wait(waitScope); + } + KJ_EXPECT(count == 2); + KJ_EXPECT(cumulative == 2); + doRequest().wait(waitScope); + KJ_EXPECT(count == 2); + KJ_EXPECT(cumulative == 2); + + // Advance time for half the timeout, then exercise one of the connections. + clientTimer.advanceTo(clientTimer.now() + clientSettings.idleTimeout / 2); + doRequest().wait(waitScope); + doRequest().wait(waitScope); + waitScope.poll(); + KJ_EXPECT(count == 2); + KJ_EXPECT(cumulative == 2); + + // Advance time past when the other connection should time out. It should be dropped. + clientTimer.advanceTo(clientTimer.now() + clientSettings.idleTimeout * 3 / 4); + waitScope.poll(); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 2); + + // Wait for the other to drop. + clientTimer.advanceTo(clientTimer.now() + clientSettings.idleTimeout / 2); + waitScope.poll(); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 2); + + // New request creates a new connection again. + doRequest().wait(waitScope); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 3); + + // WebSocket connections are not reused. + client->openWebSocket(kj::str("/websocket"), HttpHeaders(headerTable)) + .wait(waitScope); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 3); + + // Errored connections are not reused. + doRequest().wait(waitScope); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 4); + client->request(HttpMethod::GET, kj::str("/throw"), HttpHeaders(headerTable)).response + .wait(waitScope).body->readAllBytes().wait(waitScope); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 4); + + // Connections where we failed to read the full response body are not reused. + doRequest().wait(waitScope); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 5); + client->request(HttpMethod::GET, kj::str("/foo"), HttpHeaders(headerTable)).response + .wait(waitScope); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 5); + + // Connections where we didn't even wait for the response headers are not reused. + doRequest().wait(waitScope); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 6); + client->request(HttpMethod::GET, kj::str("/foo"), HttpHeaders(headerTable)); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 6); + + // Connections where we failed to write the full request body are not reused. + doRequest().wait(waitScope); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 7); + client->request(HttpMethod::POST, kj::str("/foo"), HttpHeaders(headerTable), size_t(6)).response + .wait(waitScope).body->readAllBytes().wait(waitScope); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 7); + + // If the server times out the connection, we figure it out on the client. + doRequest().wait(waitScope); + + // TODO(someday): Figure out why the following poll is necessary for the test to pass on Windows + // and Mac. Without it, it seems that the request's connection never starts, so the + // subsequent advanceTo() does not actually time out the connection. + waitScope.poll(); + + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 8); + serverTimer.advanceTo(serverTimer.now() + serverSettings.pipelineTimeout * 2); + waitScope.poll(); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 8); + + // Can still make requests. + doRequest().wait(waitScope); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 9); +} + +KJ_TEST("HttpClient disable connection reuse") { + KJ_HTTP_TEST_SETUP_IO; + KJ_HTTP_TEST_SETUP_LOOPBACK_LISTENER_AND_ADDR; + + kj::TimerImpl serverTimer(kj::origin()); + kj::TimerImpl clientTimer(kj::origin()); + HttpHeaderTable headerTable; + + DummyService service(headerTable); + HttpServerSettings serverSettings; + HttpServer server(serverTimer, headerTable, service, serverSettings); + auto listenTask = server.listenHttp(*listener); + + uint count = 0; + uint cumulative = 0; + CountingNetworkAddress countingAddr(*addr, count, cumulative); + + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + clientSettings.idleTimeout = 0 * kj::SECONDS; + auto client = newHttpClient(clientTimer, headerTable, countingAddr, clientSettings); + + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 0); + + uint i = 0; + auto doRequest = [&]() { + uint n = i++; + return client->request(HttpMethod::GET, kj::str("/", n), HttpHeaders(headerTable)).response + .then([](HttpClient::Response&& response) { + auto promise = response.body->readAllText(); + return promise.attach(kj::mv(response.body)); + }).then([n](kj::String body) { + KJ_EXPECT(body == kj::str("null:/", n)); + }); + }; + + // Each serial request gets its own connection. + doRequest().wait(waitScope); + doRequest().wait(waitScope); + doRequest().wait(waitScope); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 3); + + // Each parallel request gets its own connection. + auto req1 = doRequest(); + auto req2 = doRequest(); + req1.wait(waitScope); + req2.wait(waitScope); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 5); +} + +KJ_TEST("HttpClient concurrency limiting") { +#if KJ_HTTP_TEST_USE_OS_PIPE && !__linux__ + // On Windows and Mac, OS event delivery is not always immediate, and that seems to make this + // test flakey. On Linux, events are always immediately delivered. For now, we compile the test + // but we don't run it outside of Linux. We do run the in-memory-pipes version on all OSs since + // that mode shouldn't depend on kernel behavior at all. + return; +#endif + + KJ_HTTP_TEST_SETUP_IO; + KJ_HTTP_TEST_SETUP_LOOPBACK_LISTENER_AND_ADDR; + + kj::TimerImpl serverTimer(kj::origin()); + kj::TimerImpl clientTimer(kj::origin()); + HttpHeaderTable headerTable; + + DummyService service(headerTable); + HttpServerSettings serverSettings; + HttpServer server(serverTimer, headerTable, service, serverSettings); + auto listenTask = server.listenHttp(*listener); + + uint count = 0; + uint cumulative = 0; + CountingNetworkAddress countingAddr(*addr, count, cumulative); + + FakeEntropySource entropySource; + HttpClientSettings clientSettings; + clientSettings.entropySource = entropySource; + clientSettings.idleTimeout = 0 * kj::SECONDS; + auto innerClient = newHttpClient(clientTimer, headerTable, countingAddr, clientSettings); + + struct CallbackEvent { + uint runningCount; + uint pendingCount; + + bool operator==(const CallbackEvent& other) const { + return runningCount == other.runningCount && pendingCount == other.pendingCount; + } + bool operator!=(const CallbackEvent& other) const { return !(*this == other); } + // TODO(someday): Can use default spaceship operator in C++20: + //auto operator<=>(const CallbackEvent&) const = default; + }; + + kj::Vector callbackEvents; + auto callback = [&](uint runningCount, uint pendingCount) { + callbackEvents.add(CallbackEvent{runningCount, pendingCount}); + }; + auto client = newConcurrencyLimitingHttpClient(*innerClient, 1, kj::mv(callback)); + + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 0); + + uint i = 0; + auto doRequest = [&]() { + uint n = i++; + return client->request(HttpMethod::GET, kj::str("/", n), HttpHeaders(headerTable)).response + .then([](HttpClient::Response&& response) { + auto promise = response.body->readAllText(); + return promise.attach(kj::mv(response.body)); + }).then([n](kj::String body) { + KJ_EXPECT(body == kj::str("null:/", n)); + }); + }; + + // Second connection blocked by first. + auto req1 = doRequest(); + + KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 0} })); + callbackEvents.clear(); + + auto req2 = doRequest(); + + // TODO(someday): Figure out why this poll() is necessary on Windows and macOS. + waitScope.poll(); + + KJ_EXPECT(req1.poll(waitScope)); + KJ_EXPECT(!req2.poll(waitScope)); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 1); + KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 1} })); + callbackEvents.clear(); + + // Releasing first connection allows second to start. + req1.wait(waitScope); + KJ_EXPECT(req2.poll(waitScope)); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 2); + KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 0} })); + callbackEvents.clear(); + + req2.wait(waitScope); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 2); + KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {0, 0} })); + callbackEvents.clear(); + + // Using body stream after releasing blocked response promise throws no exception + auto req3 = doRequest(); + { + kj::Own req4Body; + { + auto req4 = client->request(HttpMethod::GET, kj::str("/", ++i), HttpHeaders(headerTable)); + waitScope.poll(); + req4Body = kj::mv(req4.body); + } + auto writePromise = req4Body->write("a", 1); + KJ_EXPECT(!writePromise.poll(waitScope)); + } + req3.wait(waitScope); + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 3); + + // Similar connection limiting for web sockets + // TODO(someday): Figure out why the sequencing of websockets events does + // not work correctly on Windows (and maybe macOS?). The solution is not as + // simple as inserting poll()s as above, since doing so puts the websocket in + // a state that trips a "previous HTTP message body incomplete" assertion, + // while trying to write 500 network response. + callbackEvents.clear(); + auto ws1 = kj::heap(client->openWebSocket(kj::str("/websocket"), HttpHeaders(headerTable))); + KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 0} })); + callbackEvents.clear(); + auto ws2 = kj::heap(client->openWebSocket(kj::str("/websocket"), HttpHeaders(headerTable))); + KJ_EXPECT(ws1->poll(waitScope)); + KJ_EXPECT(!ws2->poll(waitScope)); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 4); + KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 1} })); + callbackEvents.clear(); + + { + auto response1 = ws1->wait(waitScope); + KJ_EXPECT(!ws2->poll(waitScope)); + KJ_EXPECT(callbackEvents == kj::ArrayPtr({})); + } + KJ_EXPECT(ws2->poll(waitScope)); + KJ_EXPECT(count == 1); + KJ_EXPECT(cumulative == 5); + KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 0} })); + callbackEvents.clear(); + { + auto response2 = ws2->wait(waitScope); + KJ_EXPECT(callbackEvents == kj::ArrayPtr({})); + } + KJ_EXPECT(count == 0); + KJ_EXPECT(cumulative == 5); + KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {0, 0} })); +} + +#if KJ_HTTP_TEST_USE_OS_PIPE +// This test relies on access to the network. +KJ_TEST("NetworkHttpClient connect impl") { + KJ_HTTP_TEST_SETUP_IO; + auto listener1 = io.provider->getNetwork().parseAddress("localhost", 0) + .wait(io.waitScope)->listen(); + + auto ignored KJ_UNUSED = listener1->accept().then([](Own stream) { + auto buffer = kj::str("test"); + return stream->write(buffer.cStr(), buffer.size()).attach(kj::mv(stream), kj::mv(buffer)); + }).eagerlyEvaluate(nullptr); + + HttpClientSettings clientSettings; + kj::TimerImpl clientTimer(kj::origin()); + HttpHeaderTable headerTable; + auto client = newHttpClient(clientTimer, headerTable, + io.provider->getNetwork(), nullptr, clientSettings); + auto request = client->connect( + kj::str("localhost:", listener1->getPort()), HttpHeaders(headerTable), {}); + + auto buf = kj::heapArray(4); + return request.connection->tryRead(buf.begin(), 1, buf.size()) + .then([buf = kj::mv(buf)](size_t count) { + KJ_ASSERT(count == 4); + KJ_ASSERT(kj::str(buf.asChars()) == "test"); + }).attach(kj::mv(request.connection)).wait(io.waitScope); +} +#endif + +#if KJ_HTTP_TEST_USE_OS_PIPE +// TODO(someday): Implement mock kj::Network for userspace version of this test? +KJ_TEST("HttpClient multi host") { + auto io = kj::setupAsyncIo(); + + kj::TimerImpl serverTimer(kj::origin()); + kj::TimerImpl clientTimer(kj::origin()); + HttpHeaderTable headerTable; + + auto listener1 = io.provider->getNetwork().parseAddress("localhost", 0) + .wait(io.waitScope)->listen(); + auto listener2 = io.provider->getNetwork().parseAddress("localhost", 0) + .wait(io.waitScope)->listen(); + DummyService service(headerTable); + HttpServer server(serverTimer, headerTable, service); + auto listenTask1 = server.listenHttp(*listener1); + auto listenTask2 = server.listenHttp(*listener2); + + uint count = 0, addrCount = 0; + uint tlsCount = 0, tlsAddrCount = 0; + ConnectionCountingNetwork countingNetwork(io.provider->getNetwork(), count, addrCount); + ConnectionCountingNetwork countingTlsNetwork(io.provider->getNetwork(), tlsCount, tlsAddrCount); + + HttpClientSettings clientSettings; + auto client = newHttpClient(clientTimer, headerTable, + countingNetwork, countingTlsNetwork, clientSettings); + + KJ_EXPECT(count == 0); + + uint i = 0; + auto doRequest = [&](bool tls, uint port) { + uint n = i++; + // We stick a double-slash in the URL to test that it doesn't get coalesced into one slash, + // which was a bug in the past. + return client->request(HttpMethod::GET, + kj::str((tls ? "https://localhost:" : "http://localhost:"), port, "//", n), + HttpHeaders(headerTable)).response + .then([](HttpClient::Response&& response) { + auto promise = response.body->readAllText(); + return promise.attach(kj::mv(response.body)); + }).then([n, port](kj::String body) { + KJ_EXPECT(body == kj::str("localhost:", port, "://", n), body, port, n); + }); + }; + + uint port1 = listener1->getPort(); + uint port2 = listener2->getPort(); + + // We can do several requests in a row to the same host and only have one connection. + doRequest(false, port1).wait(io.waitScope); + doRequest(false, port1).wait(io.waitScope); + doRequest(false, port1).wait(io.waitScope); + KJ_EXPECT(count == 1); + KJ_EXPECT(tlsCount == 0); + KJ_EXPECT(addrCount == 1); + KJ_EXPECT(tlsAddrCount == 0); + + // Request a different host, and now we have two connections. + doRequest(false, port2).wait(io.waitScope); + KJ_EXPECT(count == 2); + KJ_EXPECT(tlsCount == 0); + KJ_EXPECT(addrCount == 2); + KJ_EXPECT(tlsAddrCount == 0); + + // Try TLS. + doRequest(true, port1).wait(io.waitScope); + KJ_EXPECT(count == 2); + KJ_EXPECT(tlsCount == 1); + KJ_EXPECT(addrCount == 2); + KJ_EXPECT(tlsAddrCount == 1); + + // Try first host again, no change in connection count. + doRequest(false, port1).wait(io.waitScope); + KJ_EXPECT(count == 2); + KJ_EXPECT(tlsCount == 1); + KJ_EXPECT(addrCount == 2); + KJ_EXPECT(tlsAddrCount == 1); + + // Multiple requests in parallel forces more connections to that host. + auto promise1 = doRequest(false, port1); + auto promise2 = doRequest(false, port1); + promise1.wait(io.waitScope); + promise2.wait(io.waitScope); + KJ_EXPECT(count == 3); + KJ_EXPECT(tlsCount == 1); + KJ_EXPECT(addrCount == 2); + KJ_EXPECT(tlsAddrCount == 1); + + // Let everything expire. + clientTimer.advanceTo(clientTimer.now() + clientSettings.idleTimeout * 2); + io.waitScope.poll(); + KJ_EXPECT(count == 0); + KJ_EXPECT(tlsCount == 0); + KJ_EXPECT(addrCount == 0); + KJ_EXPECT(tlsAddrCount == 0); + + // We can still request those hosts again. + doRequest(false, port1).wait(io.waitScope); + KJ_EXPECT(count == 1); + KJ_EXPECT(tlsCount == 0); + KJ_EXPECT(addrCount == 1); + KJ_EXPECT(tlsAddrCount == 0); +} +#endif + +// ----------------------------------------------------------------------------- + +#if KJ_HTTP_TEST_USE_OS_PIPE +// This test only makes sense using the real network. +KJ_TEST("HttpClient to capnproto.org") { + auto io = kj::setupAsyncIo(); + + auto maybeConn = io.provider->getNetwork().parseAddress("capnproto.org", 80) + .then([](kj::Own addr) { + auto promise = addr->connect(); + return promise.attach(kj::mv(addr)); + }).then([](kj::Own&& connection) -> kj::Maybe> { + return kj::mv(connection); + }, [](kj::Exception&& e) -> kj::Maybe> { + KJ_LOG(WARNING, "skipping test because couldn't connect to capnproto.org"); + return nullptr; + }).wait(io.waitScope); + + KJ_IF_MAYBE(conn, maybeConn) { + // Successfully connected to capnproto.org. Try doing GET /. We expect to get a redirect to + // HTTPS, because what kind of horrible web site would serve in plaintext, really? + + HttpHeaderTable table; + auto client = newHttpClient(table, **conn); + + HttpHeaders headers(table); + headers.set(HttpHeaderId::HOST, "capnproto.org"); + + auto response = client->request(HttpMethod::GET, "/", headers).response.wait(io.waitScope); + KJ_EXPECT(response.statusCode / 100 == 3); + auto location = KJ_ASSERT_NONNULL(response.headers->get(HttpHeaderId::LOCATION)); + KJ_EXPECT(location == "https://capnproto.org/"); + + auto body = response.body->readAllText().wait(io.waitScope); + } +} +#endif + +// ======================================================================================= +// Misc bugfix tests + +class ReadCancelHttpService final: public HttpService { + // HttpService that tries to read all request data but cancels after 1ms and sends a response. +public: + ReadCancelHttpService(kj::Timer& timer, HttpHeaderTable& headerTable) + : timer(timer), headerTable(headerTable) {} + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& responseSender) override { + if (method == HttpMethod::POST) { + // Try to read all content, but cancel after 1ms. + + // Actually, we can't literally cancel mid-read, because this leaves the stream in an + // unknown state which requires closing the connection. Instead, we know that the sender + // will send 5 bytes, so we read that, then pause. + static char junk[5]; + return requestBody.read(junk, 5) + .then([]() -> kj::Promise { return kj::NEVER_DONE; }) + .exclusiveJoin(timer.afterDelay(1 * kj::MILLISECONDS)) + .then([this, &responseSender]() { + responseSender.send(408, "Request Timeout", kj::HttpHeaders(headerTable), uint64_t(0)); + }); + } else { + responseSender.send(200, "OK", kj::HttpHeaders(headerTable), uint64_t(0)); + return kj::READY_NOW; + } + } + +private: + kj::Timer& timer; + HttpHeaderTable& headerTable; +}; + +KJ_TEST("canceling a length stream mid-read correctly discards rest of request") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + HttpHeaderTable table; + ReadCancelHttpService service(timer, table); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + { + static constexpr kj::StringPtr REQUEST = + "POST / HTTP/1.1\r\n" + "Content-Length: 6\r\n" + "\r\n" + "fooba"_kj; // incomplete + pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + + auto promise = expectRead(*pipe.ends[1], + "HTTP/1.1 408 Request Timeout\r\n" + "Content-Length: 0\r\n" + "\r\n"_kj); + + KJ_EXPECT(!promise.poll(waitScope)); + + // Trigger timeout, then response should be sent. + timer.advanceTo(timer.now() + 1 * kj::MILLISECONDS); + KJ_ASSERT(promise.poll(waitScope)); + promise.wait(waitScope); + } + + // We left our request stream hanging. The server will try to read and discard the request body. + // Let's give it the rest of the data, followed by a second request. + { + static constexpr kj::StringPtr REQUEST = + "r" + "GET / HTTP/1.1\r\n" + "\r\n"_kj; + pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + + auto promise = expectRead(*pipe.ends[1], + "HTTP/1.1 200 OK\r\n" + "Content-Length: 0\r\n" + "\r\n"_kj); + KJ_ASSERT(promise.poll(waitScope)); + promise.wait(waitScope); + } +} + +KJ_TEST("canceling a chunked stream mid-read correctly discards rest of request") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + HttpHeaderTable table; + ReadCancelHttpService service(timer, table); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + { + static constexpr kj::StringPtr REQUEST = + "POST / HTTP/1.1\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "6\r\n" + "fooba"_kj; // incomplete chunk + pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + + auto promise = expectRead(*pipe.ends[1], + "HTTP/1.1 408 Request Timeout\r\n" + "Content-Length: 0\r\n" + "\r\n"_kj); + + KJ_EXPECT(!promise.poll(waitScope)); + + // Trigger timeout, then response should be sent. + timer.advanceTo(timer.now() + 1 * kj::MILLISECONDS); + KJ_ASSERT(promise.poll(waitScope)); + promise.wait(waitScope); + } + + // We left our request stream hanging. The server will try to read and discard the request body. + // Let's give it the rest of the data, followed by a second request. + { + static constexpr kj::StringPtr REQUEST = + "r\r\n" + "4a\r\n" + "this is some text that is the body of a chunk and not a valid chunk header\r\n" + "0\r\n" + "\r\n" + "GET / HTTP/1.1\r\n" + "\r\n"_kj; + pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + + auto promise = expectRead(*pipe.ends[1], + "HTTP/1.1 200 OK\r\n" + "Content-Length: 0\r\n" + "\r\n"_kj); + KJ_ASSERT(promise.poll(waitScope)); + promise.wait(waitScope); + } +} + +KJ_TEST("drain() doesn't lose bytes when called at the wrong moment") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + HttpHeaderTable table; + DummyService service(table); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttpCleanDrain(*pipe.ends[0]); + + // Do a regular request. + static constexpr kj::StringPtr REQUEST = + "GET / HTTP/1.1\r\n" + "Host: example.com\r\n" + "\r\n"_kj; + pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + expectRead(*pipe.ends[1], + "HTTP/1.1 200 OK\r\n" + "Content-Length: 13\r\n" + "\r\n" + "example.com:/"_kj).wait(waitScope); + + // Make sure the server is blocked on the next read from the socket. + kj::Promise(kj::NEVER_DONE).poll(waitScope); + + // Now simultaneously deliver a new request AND drain the socket. + auto drainPromise = server.drain(); + static constexpr kj::StringPtr REQUEST2 = + "GET /foo HTTP/1.1\r\n" + "Host: example.com\r\n" + "\r\n"_kj; + pipe.ends[1]->write(REQUEST2.begin(), REQUEST2.size()).wait(waitScope); + +#if KJ_HTTP_TEST_USE_OS_PIPE + // In the case of an OS pipe, the drain will complete before any data is read from the socket. + drainPromise.wait(waitScope); + + // The HTTP server should indicate the connection was released but still valid. + KJ_ASSERT(listenTask.wait(waitScope)); + + // The request will not have been read off the socket. We can read it now. + pipe.ends[1]->shutdownWrite(); + KJ_EXPECT(pipe.ends[0]->readAllText().wait(waitScope) == REQUEST2); + +#else + // In the case of an in-memory pipe, the write() will have delivered bytes directly to the + // destination buffer synchronously, which means that the server must handle the request + // before draining. + KJ_EXPECT(!drainPromise.poll(waitScope)); + + // The HTTP request should get a response. + expectRead(*pipe.ends[1], + "HTTP/1.1 200 OK\r\n" + "Content-Length: 16\r\n" + "\r\n" + "example.com:/foo"_kj).wait(waitScope); + + // Now the drain completes. + drainPromise.wait(waitScope); + + // The HTTP server should indicate the connection was released but still valid. + KJ_ASSERT(listenTask.wait(waitScope)); +#endif +} + +KJ_TEST("drain() does not cancel the first request on a new connection") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + HttpHeaderTable table; + DummyService service(table); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttpCleanDrain(*pipe.ends[0]); + + // Request a drain(). It won't complete, because the newly-connected socket is considered to have + // an in-flight request. + auto drainPromise = server.drain(); + KJ_EXPECT(!drainPromise.poll(waitScope)); + + // Deliver the request. + static constexpr kj::StringPtr REQUEST2 = + "GET /foo HTTP/1.1\r\n" + "Host: example.com\r\n" + "\r\n"_kj; + pipe.ends[1]->write(REQUEST2.begin(), REQUEST2.size()).wait(waitScope); + + // It should get a response. + expectRead(*pipe.ends[1], + "HTTP/1.1 200 OK\r\n" + "Content-Length: 16\r\n" + "\r\n" + "example.com:/foo"_kj).wait(waitScope); + + // Now the drain completes. + drainPromise.wait(waitScope); + + // The HTTP server should indicate the connection was released but still valid. + KJ_ASSERT(listenTask.wait(waitScope)); +} + +KJ_TEST("drain() when NOT using listenHttpCleanDrain() sends Connection: close header") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + HttpHeaderTable table; + DummyService service(table); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + // Request a drain(). It won't complete, because the newly-connected socket is considered to have + // an in-flight request. + auto drainPromise = server.drain(); + KJ_EXPECT(!drainPromise.poll(waitScope)); + + // Deliver the request. + static constexpr kj::StringPtr REQUEST2 = + "GET /foo HTTP/1.1\r\n" + "Host: example.com\r\n" + "\r\n"_kj; + pipe.ends[1]->write(REQUEST2.begin(), REQUEST2.size()).wait(waitScope); + + // It should get a response. + expectRead(*pipe.ends[1], + "HTTP/1.1 200 OK\r\n" + "Connection: close\r\n" + "Content-Length: 16\r\n" + "\r\n" + "example.com:/foo"_kj).wait(waitScope); + + // And then EOF. + auto rest = pipe.ends[1]->readAllText(); + KJ_ASSERT(rest.poll(waitScope)); + KJ_EXPECT(rest.wait(waitScope) == nullptr); + + // The drain task and listen task are done. + drainPromise.wait(waitScope); + listenTask.wait(waitScope); +} + +class BrokenConnectionListener final: public kj::ConnectionReceiver { +public: + void fulfillOne(kj::Own stream) { + fulfiller->fulfill(kj::mv(stream)); + } + + kj::Promise> accept() override { + auto paf = kj::newPromiseAndFulfiller>(); + fulfiller = kj::mv(paf.fulfiller); + return kj::mv(paf.promise); + } + + uint getPort() override { + KJ_UNIMPLEMENTED("not used"); + } + +private: + kj::Own>> fulfiller; +}; + +class BrokenConnection final: public kj::AsyncIoStream { +public: + Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + return KJ_EXCEPTION(FAILED, "broken"); + } + Promise write(const void* buffer, size_t size) override { + return KJ_EXCEPTION(FAILED, "broken"); + } + Promise write(ArrayPtr> pieces) override { + return KJ_EXCEPTION(FAILED, "broken"); + } + Promise whenWriteDisconnected() override { + return kj::NEVER_DONE; + } + + void shutdownWrite() override {} +}; + +KJ_TEST("HttpServer.listenHttp() doesn't prematurely terminate if an accepted connection is broken") { + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + + HttpHeaderTable table; + DummyService service(table); + HttpServer server(timer, table, service); + + BrokenConnectionListener listener; + auto promise = server.listenHttp(listener).eagerlyEvaluate(nullptr); + + // Loop is waiting for a connection. + KJ_ASSERT(!promise.poll(waitScope)); + + KJ_EXPECT_LOG(ERROR, "failed: broken"); + listener.fulfillOne(kj::heap()); + + // The loop should not have stopped, even though the connection was broken. + KJ_ASSERT(!promise.poll(waitScope)); +} + +KJ_TEST("HttpServer handles disconnected exception for clients disconnecting after headers") { + // This test case reproduces a race condition where a client could disconnect after the server + // sent response headers but before it sent the response body, resulting in a broken pipe + // "disconnected" exception when writing the body. The default handler for application errors + // tells the server to ignore "disconnected" exceptions and close the connection, but code + // after the handler exercised the broken connection, causing the server loop to instead fail + // with a "failed" exception. + + KJ_HTTP_TEST_SETUP_IO; + kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + class SendErrorHttpService final: public HttpService { + // HttpService that serves an error page via sendError(). + public: + SendErrorHttpService(HttpHeaderTable& headerTable): headerTable(headerTable) {} + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& responseSender) override { + return responseSender.sendError(404, "Not Found", headerTable); + } + + private: + HttpHeaderTable& headerTable; + }; + + class DisconnectingAsyncIoStream final: public kj::AsyncIoStream { + public: + DisconnectingAsyncIoStream(AsyncIoStream& inner): inner(inner) {} + + Promise read(void* buffer, size_t minBytes, size_t maxBytes) override { + return inner.read(buffer, minBytes, maxBytes); + } + Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + return inner.tryRead(buffer, minBytes, maxBytes); + } + + Maybe tryGetLength() override { return inner.tryGetLength(); } + + Promise pumpTo(AsyncOutputStream& output, uint64_t amount) override { + return inner.pumpTo(output, amount); + } + + Promise write(const void* buffer, size_t size) override { + int writeId = writeCount++; + if (writeId == 0) { + // Allow first write (headers) to succeed. + auto promise = inner.write(buffer, size); + inner.shutdownWrite(); + return promise; + } else if (writeId == 1) { + // Fail subsequent write (body) with a disconnected exception. + return KJ_EXCEPTION(DISCONNECTED, "a_disconnected_exception"); + } else { + KJ_FAIL_ASSERT("Unexpected write"); + } + } + Promise write(ArrayPtr> pieces) override { + return inner.write(pieces); + } + + Maybe> tryPumpFrom(AsyncInputStream& input, uint64_t amount) override { + return inner.tryPumpFrom(input, amount); + } + + Promise whenWriteDisconnected() override { + return inner.whenWriteDisconnected(); + } + + void shutdownWrite() override { + return inner.shutdownWrite(); + } + + void abortRead() override { + return inner.abortRead(); + } + + void getsockopt(int level, int option, void* value, uint* length) override { + return inner.getsockopt(level, option, value, length); + } + void setsockopt(int level, int option, const void* value, uint length) override { + return inner.setsockopt(level, option, value, length); + } + + void getsockname(struct sockaddr* addr, uint* length) override { + return inner.getsockname(addr, length); + } + void getpeername(struct sockaddr* addr, uint* length) override { + return inner.getsockname(addr, length); + } + + int writeCount = 0; + + private: + kj::AsyncIoStream& inner; + }; + + class TestErrorHandler: public HttpServerErrorHandler { + public: + kj::Promise handleApplicationError( + kj::Exception exception, kj::Maybe response) override { + applicationErrorCount++; + if (exception.getType() == kj::Exception::Type::DISCONNECTED) { + // Tell HttpServer to ignore disconnected exceptions (the default behavior). + return kj::READY_NOW; + } + KJ_FAIL_ASSERT("Unexpected application error type", exception.getType()); + } + + int applicationErrorCount = 0; + }; + + TestErrorHandler testErrorHandler; + HttpServerSettings settings {}; + settings.errorHandler = testErrorHandler; + + HttpHeaderTable table; + SendErrorHttpService service(table); + HttpServer server(timer, table, service, settings); + + auto stream = kj::heap(*pipe.ends[0]); + auto listenPromise = server.listenHttpCleanDrain(*stream); + + static constexpr auto request = "GET / HTTP/1.1\r\n\r\n"_kj; + pipe.ends[1]->write(request.begin(), request.size()).wait(waitScope); + pipe.ends[1]->shutdownWrite(); + + // Client races to read headers but not body, then disconnects. (Note that the following code + // doesn't reliably reproduce the race condition by itself -- DisconnectingAsyncIoStream is + // needed to ensure the disconnected exception throws on the correct write promise.) + expectRead(*pipe.ends[1], + "HTTP/1.1 404 Not Found\r\n" + "Content-Length: 9\r\n" + "\r\n"_kj).wait(waitScope); + pipe.ends[1] = nullptr; + + // The race condition failure would manifest as a "previous HTTP message body incomplete" + // "FAILED" exception here: + bool canReuse = listenPromise.wait(waitScope); + + KJ_ASSERT(!canReuse); + KJ_ASSERT(stream->writeCount == 2); + KJ_ASSERT(testErrorHandler.applicationErrorCount == 1); +} + +// ======================================================================================= +// CONNECT tests + +class ConnectEchoService final: public HttpService { + // A simple CONNECT echo. It will always accept, and whatever data it + // receives will be echoed back. +public: + ConnectEchoService(HttpHeaderTable& headerTable, uint statusCodeToSend = 200) + : headerTable(headerTable), + statusCodeToSend(statusCodeToSend) { + KJ_ASSERT(statusCodeToSend >= 200 && statusCodeToSend < 300); + } + + uint connectCount = 0; + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + KJ_UNIMPLEMENTED("Regular HTTP requests are not implemented here."); + } + + kj::Promise connect(kj::StringPtr host, + const HttpHeaders& headers, + kj::AsyncIoStream& connection, + ConnectResponse& response, + kj::HttpConnectSettings settings) override { + connectCount++; + response.accept(statusCodeToSend, "OK", HttpHeaders(headerTable)); + return connection.pumpTo(connection).ignoreResult(); + } + +private: + HttpHeaderTable& headerTable; + uint statusCodeToSend; +}; + +class ConnectRejectService final: public HttpService { + // A simple CONNECT implementation that always rejects. +public: + ConnectRejectService(HttpHeaderTable& headerTable, uint statusCodeToSend = 400) + : headerTable(headerTable), + statusCodeToSend(statusCodeToSend) { + KJ_ASSERT(statusCodeToSend >= 300); + } + + uint connectCount = 0; + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + KJ_UNIMPLEMENTED("Regular HTTP requests are not implemented here."); + } + + kj::Promise connect(kj::StringPtr host, + const HttpHeaders& headers, + kj::AsyncIoStream& connection, + ConnectResponse& response, + kj::HttpConnectSettings settings) override { + connectCount++; + auto out = response.reject(statusCodeToSend, "Failed"_kj, HttpHeaders(headerTable), 4); + return out->write("boom", 4).attach(kj::mv(out)); + } + +private: + HttpHeaderTable& headerTable; + uint statusCodeToSend; +}; + +class ConnectCancelReadService final: public HttpService { + // A simple CONNECT server that will accept a connection then immediately + // cancel reading from it to test handling of abrupt termination. +public: + ConnectCancelReadService(HttpHeaderTable& headerTable) + : headerTable(headerTable) {} + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + KJ_UNIMPLEMENTED("Regular HTTP requests are not implemented here."); + } + + kj::Promise connect(kj::StringPtr host, + const HttpHeaders& headers, + kj::AsyncIoStream& connection, + ConnectResponse& response, + kj::HttpConnectSettings settings) override { + response.accept(200, "OK", HttpHeaders(headerTable)); + // Return an immediately resolved promise and drop the connection + return kj::READY_NOW; + } + +private: + HttpHeaderTable& headerTable; +}; + +class ConnectCancelWriteService final: public HttpService { + // A simple CONNECT server that will accept a connection then immediately + // cancel writing to it to test handling of abrupt termination. +public: + ConnectCancelWriteService(HttpHeaderTable& headerTable) + : headerTable(headerTable) {} + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + KJ_UNIMPLEMENTED("Regular HTTP requests are not implemented here."); + } + + kj::Promise connect(kj::StringPtr host, + const HttpHeaders& headers, + kj::AsyncIoStream& connection, + ConnectResponse& response, + kj::HttpConnectSettings settings) override { + response.accept(200, "OK", HttpHeaders(headerTable)); + + auto msg = "hello"_kj; + auto promise KJ_UNUSED = connection.write(msg.begin(), 5); + + // Return an immediately resolved promise and drop the io + return kj::READY_NOW; + } + +private: + HttpHeaderTable& headerTable; +}; + +class ConnectHttpService final: public HttpService { + // A CONNECT service that tunnels HTTP requests just to verify that, yes, the CONNECT + // impl can actually tunnel actual protocols. +public: + ConnectHttpService(HttpHeaderTable& table) + : timer(kj::origin()), + tunneledService(table), + server(timer, table, tunneledService) {} +private: + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + KJ_UNIMPLEMENTED("Regular HTTP requests are not implemented here."); + } + + kj::Promise connect(kj::StringPtr host, + const HttpHeaders& headers, + kj::AsyncIoStream& connection, + ConnectResponse& response, + kj::HttpConnectSettings settings) override { + response.accept(200, "OK", HttpHeaders(tunneledService.table)); + return server.listenHttp(kj::Own(&connection, kj::NullDisposer::instance)); + } + + class SimpleHttpService final: public HttpService { + public: + SimpleHttpService(HttpHeaderTable& table) : table(table) {} + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + auto out = response.send(200, "OK"_kj, HttpHeaders(table)); + auto msg = "hello there"_kj; + return out->write(msg.begin(), 11).attach(kj::mv(out)); + } + + HttpHeaderTable& table; + }; + + kj::TimerImpl timer; + SimpleHttpService tunneledService; + HttpServer server; +}; + +class ConnectCloseService final: public HttpService { + // A simple CONNECT server that will accept a connection then immediately + // shutdown the write side of the AsyncIoStream to simulate socket disconnection. +public: + ConnectCloseService(HttpHeaderTable& headerTable) + : headerTable(headerTable) {} + + kj::Promise request( + HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, + kj::AsyncInputStream& requestBody, Response& response) override { + KJ_UNIMPLEMENTED("Regular HTTP requests are not implemented here."); + } + + kj::Promise connect(kj::StringPtr host, + const HttpHeaders& headers, + kj::AsyncIoStream& connection, + ConnectResponse& response, + kj::HttpConnectSettings settings) override { + response.accept(200, "OK", HttpHeaders(headerTable)); + connection.shutdownWrite(); + return kj::READY_NOW; + } + +private: + HttpHeaderTable& headerTable; +}; + +KJ_TEST("Simple CONNECT Server works") { + KJ_HTTP_TEST_SETUP_IO; + + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + kj::TimerImpl timer(kj::origin()); + + HttpHeaderTable table; + ConnectEchoService service(table); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + auto msg = "CONNECT https://example.org HTTP/1.1\r\n" + "\r\n" + "hello"_kj; + + pipe.ends[1]->write(msg.begin(), msg.size()).wait(waitScope); + pipe.ends[1]->shutdownWrite(); + + expectRead(*pipe.ends[1], + "HTTP/1.1 200 OK\r\n" + "\r\n" + "hello"_kj).wait(waitScope); + + expectEnd(*pipe.ends[1]); + + listenTask.wait(waitScope); + + KJ_ASSERT(service.connectCount == 1); +} + +KJ_TEST("Simple CONNECT Client/Server works") { + KJ_HTTP_TEST_SETUP_IO; + + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + kj::TimerImpl timer(kj::origin()); + + HttpHeaderTable table; + ConnectEchoService service(table); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + auto client = newHttpClient(table, *pipe.ends[1]); + + HttpHeaderTable clientHeaders; + // Initiates a CONNECT with the echo server. Once established, sends a bit of data + // and waits for it to be echoed back. + auto request = client->connect( + "https://example.org"_kj, HttpHeaders(clientHeaders), {}); + + request.status.then([io=kj::mv(request.connection)](auto status) mutable { + KJ_ASSERT(status.statusCode == 200); + KJ_ASSERT(status.statusText == "OK"_kj); + + auto promises = kj::heapArrayBuilder>(2); + promises.add(io->write("hello", 5)); + promises.add(expectRead(*io, "hello"_kj)); + return kj::joinPromises(promises.finish()) + .then([io=kj::mv(io)]() mutable { + io->shutdownWrite(); + return expectEnd(*io).attach(kj::mv(io)); + }); + }).wait(waitScope); + + listenTask.wait(waitScope); + + KJ_ASSERT(service.connectCount == 1); +} + +KJ_TEST("CONNECT Server (201 status)") { + KJ_HTTP_TEST_SETUP_IO; + + // Test that CONNECT works with 2xx status codes that typically do + // not carry a response payload. + + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + kj::TimerImpl timer(kj::origin()); + + HttpHeaderTable table; + ConnectEchoService service(table, 201); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + auto msg = "CONNECT https://example.org HTTP/1.1\r\n" + "\r\n" + "hello"_kj; + + pipe.ends[1]->write(msg.begin(), msg.size()).wait(waitScope); + pipe.ends[1]->shutdownWrite(); + + expectRead(*pipe.ends[1], + "HTTP/1.1 201 OK\r\n" + "\r\n" + "hello"_kj).wait(waitScope); + + expectEnd(*pipe.ends[1]); + + listenTask.wait(waitScope); + + KJ_ASSERT(service.connectCount == 1); +} + +KJ_TEST("CONNECT Client (204 status)") { + KJ_HTTP_TEST_SETUP_IO; + + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + // Test that CONNECT works with 2xx status codes that typically do + // not carry a response payload. + + kj::TimerImpl timer(kj::origin()); + + HttpHeaderTable table; + ConnectEchoService service(table, 204); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + auto client = newHttpClient(table, *pipe.ends[1]); + + HttpHeaderTable clientHeaders; + // Initiates a CONNECT with the echo server. Once established, sends a bit of data + // and waits for it to be echoed back. + auto request = client->connect( + "https://example.org"_kj, HttpHeaders(clientHeaders), {}); + + request.status.then([io=kj::mv(request.connection)](auto status) mutable { + KJ_ASSERT(status.statusCode == 204); + KJ_ASSERT(status.statusText == "OK"_kj); + + auto promises = kj::heapArrayBuilder>(2); + promises.add(io->write("hello", 5)); + promises.add(expectRead(*io, "hello"_kj)); + + return kj::joinPromises(promises.finish()) + .then([io=kj::mv(io)]() mutable { + io->shutdownWrite(); + return expectEnd(*io).attach(kj::mv(io)); + }); + }).wait(waitScope); + + listenTask.wait(waitScope); + + KJ_ASSERT(service.connectCount == 1); +} + +KJ_TEST("CONNECT Server rejected") { + KJ_HTTP_TEST_SETUP_IO; + + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + kj::TimerImpl timer(kj::origin()); + + HttpHeaderTable table; + ConnectRejectService service(table); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + auto msg = "CONNECT https://example.org HTTP/1.1\r\n" + "\r\n" + "hello"_kj; + + pipe.ends[1]->write(msg.begin(), msg.size()).wait(waitScope); + pipe.ends[1]->shutdownWrite(); + + expectRead(*pipe.ends[1], + "HTTP/1.1 400 Failed\r\n" + "Connection: close\r\n" + "Content-Length: 4\r\n" + "\r\n" + "boom"_kj).wait(waitScope); + + expectEnd(*pipe.ends[1]); + + listenTask.wait(waitScope); + + KJ_ASSERT(service.connectCount == 1); +} + +#ifndef KJ_HTTP_TEST_USE_OS_PIPE +KJ_TEST("CONNECT Client rejected") { + KJ_HTTP_TEST_SETUP_IO; + + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + kj::TimerImpl timer(kj::origin()); + + HttpHeaderTable table; + ConnectRejectService service(table); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + auto client = newHttpClient(table, *pipe.ends[1]); + + HttpHeaderTable clientHeaders; + auto request = client->connect( + "https://example.org"_kj, HttpHeaders(clientHeaders), {}); + + request.status.then([](auto status) mutable { + KJ_ASSERT(status.statusCode == 400); + KJ_ASSERT(status.statusText == "Failed"_kj); + + auto& errorBody = KJ_ASSERT_NONNULL(status.errorBody); + + return expectRead(*errorBody, "boom"_kj).then([&errorBody=*errorBody]() { + return expectEnd(errorBody); + }).attach(kj::mv(errorBody)); + }).wait(waitScope); + + listenTask.wait(waitScope); + + KJ_ASSERT(service.connectCount == 1); +} +#endif + +KJ_TEST("CONNECT Server cancels read") { + KJ_HTTP_TEST_SETUP_IO; + + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + + kj::TimerImpl timer(kj::origin()); + + HttpHeaderTable table; + ConnectCancelReadService service(table); + HttpServer server(timer, table, service); - // Connections where we failed to write the full request body are not reused. - doRequest().wait(waitScope); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 7); - client->request(HttpMethod::POST, kj::str("/foo"), HttpHeaders(headerTable), size_t(6)).response - .wait(waitScope).body->readAllBytes().wait(waitScope); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 7); + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - // If the server times out the connection, we figure it out on the client. - doRequest().wait(waitScope); + auto msg = "CONNECT https://example.org HTTP/1.1\r\n" + "\r\n" + "hello"_kj; - // TODO(someday): Figure out why the following poll is necessary for the test to pass on Windows - // and Mac. Without it, it seems that the request's connection never starts, so the - // subsequent advanceTo() does not actually time out the connection. - waitScope.poll(); + pipe.ends[1]->write(msg.begin(), msg.size()).wait(waitScope); + pipe.ends[1]->shutdownWrite(); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 8); - serverTimer.advanceTo(serverTimer.now() + serverSettings.pipelineTimeout * 2); - waitScope.poll(); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 8); + expectRead(*pipe.ends[1], + "HTTP/1.1 200 OK\r\n" + "\r\n"_kj).wait(waitScope); - // Can still make requests. - doRequest().wait(waitScope); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 9); + expectEnd(*pipe.ends[1]); + + listenTask.wait(waitScope); } -KJ_TEST("HttpClient disable connection reuse") { +#ifndef KJ_HTTP_TEST_USE_OS_PIPE +KJ_TEST("CONNECT Server cancels read w/client") { KJ_HTTP_TEST_SETUP_IO; - KJ_HTTP_TEST_SETUP_LOOPBACK_LISTENER_AND_ADDR; - kj::TimerImpl serverTimer(kj::origin()); - kj::TimerImpl clientTimer(kj::origin()); - HttpHeaderTable headerTable; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - DummyService service(headerTable); - HttpServerSettings serverSettings; - HttpServer server(serverTimer, headerTable, service, serverSettings); - auto listenTask = server.listenHttp(*listener); + kj::TimerImpl timer(kj::origin()); - uint count = 0; - uint cumulative = 0; - CountingNetworkAddress countingAddr(*addr, count, cumulative); + HttpHeaderTable table; + ConnectCancelReadService service(table); + HttpServer server(timer, table, service); - FakeEntropySource entropySource; - HttpClientSettings clientSettings; - clientSettings.entropySource = entropySource; - clientSettings.idleTimeout = 0 * kj::SECONDS; - auto client = newHttpClient(clientTimer, headerTable, countingAddr, clientSettings); + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 0); + auto client = newHttpClient(table, *pipe.ends[1]); + bool failed = false; - uint i = 0; - auto doRequest = [&]() { - uint n = i++; - return client->request(HttpMethod::GET, kj::str("/", n), HttpHeaders(headerTable)).response - .then([](HttpClient::Response&& response) { - auto promise = response.body->readAllText(); - return promise.attach(kj::mv(response.body)); - }).then([n](kj::String body) { - KJ_EXPECT(body == kj::str("null:/", n)); - }); - }; + HttpHeaderTable clientHeaders; + auto request = client->connect( + "https://example.org"_kj, HttpHeaders(clientHeaders), {}); - // Each serial request gets its own connection. - doRequest().wait(waitScope); - doRequest().wait(waitScope); - doRequest().wait(waitScope); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 3); + request.status.then([&failed, io=kj::mv(request.connection)](auto status) mutable { + KJ_ASSERT(status.statusCode == 200); + KJ_ASSERT(status.statusText == "OK"_kj); - // Each parallel request gets its own connection. - auto req1 = doRequest(); - auto req2 = doRequest(); - req1.wait(waitScope); - req2.wait(waitScope); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 5); -} + return io->write("hello", 5).catch_([&](kj::Exception&& ex) { + KJ_ASSERT(ex.getType() == kj::Exception::Type::DISCONNECTED); + failed = true; + }).attach(kj::mv(io)); + }).wait(waitScope); -KJ_TEST("HttpClient concurrency limiting") { -#if KJ_HTTP_TEST_USE_OS_PIPE && !__linux__ - // On Windows and Mac, OS event delivery is not always immediate, and that seems to make this - // test flakey. On Linux, events are always immediately delivered. For now, we compile the test - // but we don't run it outside of Linux. We do run the in-memory-pipes version on all OSs since - // that mode shouldn't depend on kernel behavior at all. - return; + KJ_ASSERT(failed, "the write promise should have failed"); + + listenTask.wait(waitScope); +} #endif +KJ_TEST("CONNECT Server cancels write") { KJ_HTTP_TEST_SETUP_IO; - KJ_HTTP_TEST_SETUP_LOOPBACK_LISTENER_AND_ADDR; - kj::TimerImpl serverTimer(kj::origin()); - kj::TimerImpl clientTimer(kj::origin()); - HttpHeaderTable headerTable; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - DummyService service(headerTable); - HttpServerSettings serverSettings; - HttpServer server(serverTimer, headerTable, service, serverSettings); - auto listenTask = server.listenHttp(*listener); + kj::TimerImpl timer(kj::origin()); - uint count = 0; - uint cumulative = 0; - CountingNetworkAddress countingAddr(*addr, count, cumulative); + HttpHeaderTable table; + ConnectCancelWriteService service(table); + HttpServer server(timer, table, service); - FakeEntropySource entropySource; - HttpClientSettings clientSettings; - clientSettings.entropySource = entropySource; - clientSettings.idleTimeout = 0 * kj::SECONDS; - auto innerClient = newHttpClient(clientTimer, headerTable, countingAddr, clientSettings); + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - struct CallbackEvent { - uint runningCount; - uint pendingCount; + auto msg = "CONNECT https://example.org HTTP/1.1\r\n" + "\r\n" + "hello"_kj; - bool operator==(const CallbackEvent& other) const { - return runningCount == other.runningCount && pendingCount == other.pendingCount; - } - bool operator!=(const CallbackEvent& other) const { return !(*this == other); } - // TODO(someday): Can use default spaceship operator in C++20: - //auto operator<=>(const CallbackEvent&) const = default; - }; + pipe.ends[1]->write(msg.begin(), msg.size()).wait(waitScope); + pipe.ends[1]->shutdownWrite(); - kj::Vector callbackEvents; - auto callback = [&](uint runningCount, uint pendingCount) { - callbackEvents.add(CallbackEvent{runningCount, pendingCount}); - }; - auto client = newConcurrencyLimitingHttpClient(*innerClient, 1, kj::mv(callback)); + expectRead(*pipe.ends[1], + "HTTP/1.1 200 OK\r\n" + "\r\n"_kj).wait(waitScope); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 0); + expectEnd(*pipe.ends[1]); - uint i = 0; - auto doRequest = [&]() { - uint n = i++; - return client->request(HttpMethod::GET, kj::str("/", n), HttpHeaders(headerTable)).response - .then([](HttpClient::Response&& response) { - auto promise = response.body->readAllText(); - return promise.attach(kj::mv(response.body)); - }).then([n](kj::String body) { - KJ_EXPECT(body == kj::str("null:/", n)); - }); - }; + listenTask.wait(waitScope); +} - // Second connection blocked by first. - auto req1 = doRequest(); +#ifndef KJ_HTTP_TEST_USE_OS_PIPE +KJ_TEST("CONNECT Server cancels write w/client") { + KJ_HTTP_TEST_SETUP_IO; - KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 0} })); - callbackEvents.clear(); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - auto req2 = doRequest(); + kj::TimerImpl timer(kj::origin()); - // TODO(someday): Figure out why this poll() is necessary on Windows and macOS. - waitScope.poll(); + HttpHeaderTable table; + ConnectCancelWriteService service(table); + HttpServer server(timer, table, service); - KJ_EXPECT(req1.poll(waitScope)); - KJ_EXPECT(!req2.poll(waitScope)); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 1); - KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 1} })); - callbackEvents.clear(); + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - // Releasing first connection allows second to start. - req1.wait(waitScope); - KJ_EXPECT(req2.poll(waitScope)); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 2); - KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 0} })); - callbackEvents.clear(); + auto client = newHttpClient(table, *pipe.ends[1]); - req2.wait(waitScope); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 2); - KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {0, 0} })); - callbackEvents.clear(); + HttpHeaderTable clientHeaders; + bool failed = false; + auto request = client->connect( + "https://example.org"_kj, HttpHeaders(clientHeaders), {}); - // Using body stream after releasing blocked response promise throws no exception - auto req3 = doRequest(); - { - kj::Own req4Body; - { - auto req4 = client->request(HttpMethod::GET, kj::str("/", ++i), HttpHeaders(headerTable)); - waitScope.poll(); - req4Body = kj::mv(req4.body); - } - auto writePromise = req4Body->write("a", 1); - KJ_EXPECT(!writePromise.poll(waitScope)); - } - req3.wait(waitScope); - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 3); + request.status.then([&failed, io=kj::mv(request.connection)](auto status) mutable { + KJ_ASSERT(status.statusCode == 200); + KJ_ASSERT(status.statusText == "OK"_kj); - // Similar connection limiting for web sockets - // TODO(someday): Figure out why the sequencing of websockets events does - // not work correctly on Windows (and maybe macOS?). The solution is not as - // simple as inserting poll()s as above, since doing so puts the websocket in - // a state that trips a "previous HTTP message body incomplete" assertion, - // while trying to write 500 network response. - callbackEvents.clear(); - auto ws1 = kj::heap(client->openWebSocket(kj::str("/websocket"), HttpHeaders(headerTable))); - KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 0} })); - callbackEvents.clear(); - auto ws2 = kj::heap(client->openWebSocket(kj::str("/websocket"), HttpHeaders(headerTable))); - KJ_EXPECT(ws1->poll(waitScope)); - KJ_EXPECT(!ws2->poll(waitScope)); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 4); - KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 1} })); - callbackEvents.clear(); + return io->write("hello", 5).catch_([&failed](kj::Exception&& ex) mutable { + KJ_ASSERT(ex.getType() == kj::Exception::Type::DISCONNECTED); + failed = true; + }).attach(kj::mv(io)); + }).wait(waitScope); - { - auto response1 = ws1->wait(waitScope); - KJ_EXPECT(!ws2->poll(waitScope)); - KJ_EXPECT(callbackEvents == kj::ArrayPtr({})); - } - KJ_EXPECT(ws2->poll(waitScope)); - KJ_EXPECT(count == 1); - KJ_EXPECT(cumulative == 5); - KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {1, 0} })); - callbackEvents.clear(); - { - auto response2 = ws2->wait(waitScope); - KJ_EXPECT(callbackEvents == kj::ArrayPtr({})); - } - KJ_EXPECT(count == 0); - KJ_EXPECT(cumulative == 5); - KJ_EXPECT(callbackEvents == kj::ArrayPtr({ {0, 0} })); + KJ_ASSERT(failed, "the write promise should have failed"); + + listenTask.wait(waitScope); } +#endif -#if KJ_HTTP_TEST_USE_OS_PIPE -// TODO(someday): Implement mock kj::Network for userspace version of this test? -KJ_TEST("HttpClient multi host") { - auto io = kj::setupAsyncIo(); +KJ_TEST("CONNECT rejects Transfer-Encoding") { + KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl serverTimer(kj::origin()); - kj::TimerImpl clientTimer(kj::origin()); - HttpHeaderTable headerTable; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - auto listener1 = io.provider->getNetwork().parseAddress("localhost", 0) - .wait(io.waitScope)->listen(); - auto listener2 = io.provider->getNetwork().parseAddress("localhost", 0) - .wait(io.waitScope)->listen(); - DummyService service(headerTable); - HttpServer server(serverTimer, headerTable, service); - auto listenTask1 = server.listenHttp(*listener1); - auto listenTask2 = server.listenHttp(*listener2); + kj::TimerImpl timer(kj::origin()); - uint count = 0, addrCount = 0; - uint tlsCount = 0, tlsAddrCount = 0; - ConnectionCountingNetwork countingNetwork(io.provider->getNetwork(), count, addrCount); - ConnectionCountingNetwork countingTlsNetwork(io.provider->getNetwork(), tlsCount, tlsAddrCount); + HttpHeaderTable table; + ConnectEchoService service(table); + HttpServer server(timer, table, service); + + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + + auto msg = "CONNECT https://example.org HTTP/1.1\r\n" + "Transfer-Encoding: chunked\r\n" + "\r\n" + "5\r\n" + "hello" + "0\r\n"_kj; + + pipe.ends[1]->write(msg.begin(), msg.size()).wait(waitScope); + pipe.ends[1]->shutdownWrite(); + + expectRead(*pipe.ends[1], + "HTTP/1.1 400 Bad Request\r\n" + "Connection: close\r\n" + "Content-Length: 18\r\n" + "Content-Type: text/plain\r\n" + "\r\n" + "ERROR: Bad Request"_kj).wait(waitScope); + + expectEnd(*pipe.ends[1]); - HttpClientSettings clientSettings; - auto client = newHttpClient(clientTimer, headerTable, - countingNetwork, countingTlsNetwork, clientSettings); + listenTask.wait(waitScope); +} - KJ_EXPECT(count == 0); +KJ_TEST("CONNECT rejects Content-Length") { + KJ_HTTP_TEST_SETUP_IO; - uint i = 0; - auto doRequest = [&](bool tls, uint port) { - uint n = i++; - // We stick a double-slash in the URL to test that it doesn't get coalesced into one slash, - // which was a bug in the past. - return client->request(HttpMethod::GET, - kj::str((tls ? "https://localhost:" : "http://localhost:"), port, "//", n), - HttpHeaders(headerTable)).response - .then([](HttpClient::Response&& response) { - auto promise = response.body->readAllText(); - return promise.attach(kj::mv(response.body)); - }).then([n, port](kj::String body) { - KJ_EXPECT(body == kj::str("localhost:", port, "://", n), body, port, n); - }); - }; + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - uint port1 = listener1->getPort(); - uint port2 = listener2->getPort(); + kj::TimerImpl timer(kj::origin()); - // We can do several requests in a row to the same host and only have one connection. - doRequest(false, port1).wait(io.waitScope); - doRequest(false, port1).wait(io.waitScope); - doRequest(false, port1).wait(io.waitScope); - KJ_EXPECT(count == 1); - KJ_EXPECT(tlsCount == 0); - KJ_EXPECT(addrCount == 1); - KJ_EXPECT(tlsAddrCount == 0); + HttpHeaderTable table; + ConnectEchoService service(table); + HttpServer server(timer, table, service); - // Request a different host, and now we have two connections. - doRequest(false, port2).wait(io.waitScope); - KJ_EXPECT(count == 2); - KJ_EXPECT(tlsCount == 0); - KJ_EXPECT(addrCount == 2); - KJ_EXPECT(tlsAddrCount == 0); + auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); - // Try TLS. - doRequest(true, port1).wait(io.waitScope); - KJ_EXPECT(count == 2); - KJ_EXPECT(tlsCount == 1); - KJ_EXPECT(addrCount == 2); - KJ_EXPECT(tlsAddrCount == 1); + auto msg = "CONNECT https://example.org HTTP/1.1\r\n" + "Content-Length: 5\r\n" + "\r\n" + "hello"_kj; - // Try first host again, no change in connection count. - doRequest(false, port1).wait(io.waitScope); - KJ_EXPECT(count == 2); - KJ_EXPECT(tlsCount == 1); - KJ_EXPECT(addrCount == 2); - KJ_EXPECT(tlsAddrCount == 1); + pipe.ends[1]->write(msg.begin(), msg.size()).wait(waitScope); + pipe.ends[1]->shutdownWrite(); - // Multiple requests in parallel forces more connections to that host. - auto promise1 = doRequest(false, port1); - auto promise2 = doRequest(false, port1); - promise1.wait(io.waitScope); - promise2.wait(io.waitScope); - KJ_EXPECT(count == 3); - KJ_EXPECT(tlsCount == 1); - KJ_EXPECT(addrCount == 2); - KJ_EXPECT(tlsAddrCount == 1); + expectRead(*pipe.ends[1], + "HTTP/1.1 400 Bad Request\r\n" + "Connection: close\r\n" + "Content-Length: 18\r\n" + "Content-Type: text/plain\r\n" + "\r\n" + "ERROR: Bad Request"_kj).wait(waitScope); - // Let everything expire. - clientTimer.advanceTo(clientTimer.now() + clientSettings.idleTimeout * 2); - io.waitScope.poll(); - KJ_EXPECT(count == 0); - KJ_EXPECT(tlsCount == 0); - KJ_EXPECT(addrCount == 0); - KJ_EXPECT(tlsAddrCount == 0); + expectEnd(*pipe.ends[1]); - // We can still request those hosts again. - doRequest(false, port1).wait(io.waitScope); - KJ_EXPECT(count == 1); - KJ_EXPECT(tlsCount == 0); - KJ_EXPECT(addrCount == 1); - KJ_EXPECT(tlsAddrCount == 0); + listenTask.wait(waitScope); } -#endif -// ----------------------------------------------------------------------------- +KJ_TEST("CONNECT HTTP-tunneled-over-CONNECT") { + KJ_HTTP_TEST_SETUP_IO; -#if KJ_HTTP_TEST_USE_OS_PIPE -// This test only makes sense using the real network. -KJ_TEST("HttpClient to capnproto.org") { - auto io = kj::setupAsyncIo(); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - auto maybeConn = io.provider->getNetwork().parseAddress("capnproto.org", 80) - .then([](kj::Own addr) { - auto promise = addr->connect(); - return promise.attach(kj::mv(addr)); - }).then([](kj::Own&& connection) -> kj::Maybe> { - return kj::mv(connection); - }, [](kj::Exception&& e) -> kj::Maybe> { - KJ_LOG(WARNING, "skipping test because couldn't connect to capnproto.org"); - return nullptr; - }).wait(io.waitScope); + kj::TimerImpl timer(kj::origin()); + HttpHeaderTable table; + ConnectHttpService service(table); + HttpServer server(timer, table, service); - KJ_IF_MAYBE(conn, maybeConn) { - // Successfully connected to capnproto.org. Try doing GET /. We expect to get a redirect to - // HTTPS, because what kind of horrible web site would serve in plaintext, really? + auto listenTask KJ_UNUSED = server.listenHttp(kj::mv(pipe.ends[0])); - HttpHeaderTable table; - auto client = newHttpClient(table, **conn); + auto client = newHttpClient(table, *pipe.ends[1]); - HttpHeaders headers(table); - headers.set(HttpHeaderId::HOST, "capnproto.org"); + HttpHeaderTable connectHeaderTable; + HttpHeaderTable tunneledHeaderTable; + HttpClientSettings settings; - auto response = client->request(HttpMethod::GET, "/", headers).response.wait(io.waitScope); - KJ_EXPECT(response.statusCode / 100 == 3); - auto location = KJ_ASSERT_NONNULL(response.headers->get(HttpHeaderId::LOCATION)); - KJ_EXPECT(location == "https://capnproto.org/"); + auto request = client->connect( + "https://example.org"_kj, HttpHeaders(connectHeaderTable), {}); - auto body = response.body->readAllText().wait(io.waitScope); - } + auto text = request.status.then([ + &tunneledHeaderTable, + &settings, + io=kj::mv(request.connection)](auto status) mutable { + KJ_ASSERT(status.statusCode == 200); + KJ_ASSERT(status.statusText == "OK"_kj); + auto client = newHttpClient(tunneledHeaderTable, *io, settings) + .attach(kj::mv(io)); + + return client->request(HttpMethod::GET, "http://example.org"_kj, + HttpHeaders(tunneledHeaderTable)) + .response.then([](HttpClient::Response&& response) { + return response.body->readAllText().attach(kj::mv(response)); + }).attach(kj::mv(client)); + }).wait(waitScope); + + KJ_ASSERT(text == "hello there"); } -#endif -// ======================================================================================= -// Misc bugfix tests +KJ_TEST("CONNECT HTTP-tunneled-over-pipelined-CONNECT") { + KJ_HTTP_TEST_SETUP_IO; -class ReadCancelHttpService final: public HttpService { - // HttpService that tries to read all request data but cancels after 1ms and sends a response. -public: - ReadCancelHttpService(kj::Timer& timer, HttpHeaderTable& headerTable) - : timer(timer), headerTable(headerTable) {} + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; - kj::Promise request( - HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, - kj::AsyncInputStream& requestBody, Response& responseSender) override { - if (method == HttpMethod::POST) { - // Try to read all content, but cancel after 1ms. - return requestBody.readAllBytes().ignoreResult() - .exclusiveJoin(timer.afterDelay(1 * kj::MILLISECONDS)) - .then([this, &responseSender]() { - responseSender.send(408, "Request Timeout", kj::HttpHeaders(headerTable), uint64_t(0)); - }); - } else { - responseSender.send(200, "OK", kj::HttpHeaders(headerTable), uint64_t(0)); - return kj::READY_NOW; - } - } + kj::TimerImpl timer(kj::origin()); + HttpHeaderTable table; + ConnectHttpService service(table); + HttpServer server(timer, table, service); -private: - kj::Timer& timer; - HttpHeaderTable& headerTable; -}; + auto listenTask KJ_UNUSED = server.listenHttp(kj::mv(pipe.ends[0])); -KJ_TEST("canceling a length stream mid-read correctly discards rest of request") { + auto client = newHttpClient(table, *pipe.ends[1]); + + HttpHeaderTable connectHeaderTable; + HttpHeaderTable tunneledHeaderTable; + HttpClientSettings settings; + + auto request = client->connect( + "https://exmaple.org"_kj, HttpHeaders(connectHeaderTable), {}); + auto conn = kj::mv(request.connection); + auto proxyClient = newHttpClient(tunneledHeaderTable, *conn, settings).attach(kj::mv(conn)); + + auto get = proxyClient->request(HttpMethod::GET, + "http://example.org"_kj, + HttpHeaders(tunneledHeaderTable)); + auto text = get.response.then([](HttpClient::Response&& response) mutable { + return response.body->readAllText().attach(kj::mv(response)); + }).attach(kj::mv(proxyClient)).wait(waitScope); + + KJ_ASSERT(text == "hello there"); +} + +KJ_TEST("CONNECT pipelined via an adapter") { KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + kj::TimerImpl timer(kj::origin()); HttpHeaderTable table; - ReadCancelHttpService service(timer, table); + ConnectHttpService service(table); HttpServer server(timer, table, service); - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + auto listenTask KJ_UNUSED = server.listenHttp(kj::mv(pipe.ends[0])); - { - static constexpr kj::StringPtr REQUEST = - "POST / HTTP/1.1\r\n" - "Content-Length: 6\r\n" - "\r\n" - "fooba"_kj; // incomplete - pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + bool acceptCalled = false; - auto promise = expectRead(*pipe.ends[1], - "HTTP/1.1 408 Request Timeout\r\n" - "Content-Length: 0\r\n" - "\r\n"_kj); + auto client = newHttpClient(table, *pipe.ends[1]); + auto adaptedService = kj::newHttpService(*client).attach(kj::mv(client)); - KJ_EXPECT(!promise.poll(waitScope)); + // adaptedService is an HttpService that wraps an HttpClient that sends + // a request to server. - // Trigger timout, then response should be sent. - timer.advanceTo(timer.now() + 1 * kj::MILLISECONDS); - KJ_ASSERT(promise.poll(waitScope)); - promise.wait(waitScope); - } + auto clientPipe = newTwoWayPipe(); - // We left our request stream hanging. The server will try to read and discard the request body. - // Let's give it the rest of the data, followed by a second request. - { - static constexpr kj::StringPtr REQUEST = - "r" - "GET / HTTP/1.1\r\n" - "\r\n"_kj; - pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + struct ResponseImpl final: public HttpService::ConnectResponse { + bool& acceptCalled; + ResponseImpl(bool& acceptCalled) : acceptCalled(acceptCalled) {} + void accept(uint statusCode, kj::StringPtr statusText, const HttpHeaders& headers) override { + acceptCalled = true; + } - auto promise = expectRead(*pipe.ends[1], - "HTTP/1.1 200 OK\r\n" - "Content-Length: 0\r\n" - "\r\n"_kj); - KJ_ASSERT(promise.poll(waitScope)); - promise.wait(waitScope); - } + kj::Own reject( + uint statusCode, + kj::StringPtr statusText, + const HttpHeaders& headers, + kj::Maybe expectedBodySize) override { + KJ_UNREACHABLE; + } + }; + + ResponseImpl response(acceptCalled); + + HttpHeaderTable connectHeaderTable; + HttpHeaderTable tunneledHeaderTable; + HttpClientSettings settings; + + auto promise = adaptedService->connect("https://example.org"_kj, + HttpHeaders(connectHeaderTable), + *clientPipe.ends[0], + response, + {}).attach(kj::mv(clientPipe.ends[0])); + + auto proxyClient = newHttpClient(tunneledHeaderTable, *clientPipe.ends[1], settings) + .attach(kj::mv(clientPipe.ends[1])); + + auto text = proxyClient->request(HttpMethod::GET, + "http://example.org"_kj, + HttpHeaders(tunneledHeaderTable)) + .response.then([](HttpClient::Response&& response) mutable { + return response.body->readAllText().attach(kj::mv(response)); + }).wait(waitScope); + + KJ_ASSERT(acceptCalled); + KJ_ASSERT(text == "hello there"); } -KJ_TEST("canceling a chunked stream mid-read correctly discards rest of request") { +KJ_TEST("CONNECT pipelined via an adapter (reject)") { KJ_HTTP_TEST_SETUP_IO; - kj::TimerImpl timer(kj::origin()); + auto pipe = KJ_HTTP_TEST_CREATE_2PIPE; + kj::TimerImpl timer(kj::origin()); HttpHeaderTable table; - ReadCancelHttpService service(timer, table); + ConnectRejectService service(table); HttpServer server(timer, table, service); - auto listenTask = server.listenHttp(kj::mv(pipe.ends[0])); + auto listenTask KJ_UNUSED = server.listenHttp(kj::mv(pipe.ends[0])); - { - static constexpr kj::StringPtr REQUEST = - "POST / HTTP/1.1\r\n" - "Transfer-Encoding: chunked\r\n" - "\r\n" - "6\r\n" - "fooba"_kj; // incomplete chunk - pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + bool rejectCalled = false; + bool failedAsExpected = false; - auto promise = expectRead(*pipe.ends[1], - "HTTP/1.1 408 Request Timeout\r\n" - "Content-Length: 0\r\n" - "\r\n"_kj); + auto client = newHttpClient(table, *pipe.ends[1]); + auto adaptedService = kj::newHttpService(*client).attach(kj::mv(client)); - KJ_EXPECT(!promise.poll(waitScope)); + // adaptedService is an HttpService that wraps an HttpClient that sends + // a request to server. - // Trigger timout, then response should be sent. - timer.advanceTo(timer.now() + 1 * kj::MILLISECONDS); - KJ_ASSERT(promise.poll(waitScope)); - promise.wait(waitScope); - } + auto clientPipe = newTwoWayPipe(); - // We left our request stream hanging. The server will try to read and discard the request body. - // Let's give it the rest of the data, followed by a second request. - { - static constexpr kj::StringPtr REQUEST = - "r\r\n" - "4a\r\n" - "this is some text that is the body of a chunk and not a valid chunk header\r\n" - "0\r\n" - "\r\n" - "GET / HTTP/1.1\r\n" - "\r\n"_kj; - pipe.ends[1]->write(REQUEST.begin(), REQUEST.size()).wait(waitScope); + struct ResponseImpl final: public HttpService::ConnectResponse { + bool& rejectCalled; + kj::OneWayPipe pipe; + ResponseImpl(bool& rejectCalled) + : rejectCalled(rejectCalled), + pipe(kj::newOneWayPipe()) {} + void accept(uint statusCode, kj::StringPtr statusText, const HttpHeaders& headers) override { + KJ_UNREACHABLE; + } - auto promise = expectRead(*pipe.ends[1], - "HTTP/1.1 200 OK\r\n" - "Content-Length: 0\r\n" - "\r\n"_kj); - KJ_ASSERT(promise.poll(waitScope)); - promise.wait(waitScope); - } + kj::Own reject( + uint statusCode, + kj::StringPtr statusText, + const HttpHeaders& headers, + kj::Maybe expectedBodySize) override { + rejectCalled = true; + return kj::mv(pipe.out); + } + + kj::Own getRejectStream() { + return kj::mv(pipe.in); + } + }; + + ResponseImpl response(rejectCalled); + + HttpHeaderTable connectHeaderTable; + HttpHeaderTable tunneledHeaderTable; + HttpClientSettings settings; + + auto promise = adaptedService->connect("https://example.org"_kj, + HttpHeaders(connectHeaderTable), + *clientPipe.ends[0], + response, + {}).attach(kj::mv(clientPipe.ends[0])); + + auto proxyClient = newHttpClient(tunneledHeaderTable, *clientPipe.ends[1], settings) + .attach(kj::mv(clientPipe.ends[1])); + + auto text = proxyClient->request(HttpMethod::GET, + "http://example.org"_kj, + HttpHeaders(tunneledHeaderTable)) + .response.then([](HttpClient::Response&& response) mutable { + return response.body->readAllText().attach(kj::mv(response)); + }, [&](kj::Exception&& ex) -> kj::Promise { + // We fully expect the stream to fail here. + if (ex.getDescription() == "stream disconnected prematurely") { + failedAsExpected = true; + } + return kj::str("ok"); + }).wait(waitScope); + + auto rejectStream = response.getRejectStream(); + +#ifndef KJ_HTTP_TEST_USE_OS_PIPE + expectRead(*rejectStream, "boom"_kj).wait(waitScope); +#endif + + KJ_ASSERT(rejectCalled); + KJ_ASSERT(failedAsExpected); + KJ_ASSERT(text == "ok"); } } // namespace diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/http.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/http.c++ index f8bacf4e92a..aae47ad18b2 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/http.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/http.c++ @@ -20,15 +20,20 @@ // THE SOFTWARE. #include "http.h" +#include "kj/exception.h" #include "url.h" #include #include +#include #include #include #include #include #include #include +#if KJ_HAS_ZLIB +#include +#endif // KJ_HAS_ZLIB namespace kj { @@ -335,13 +340,17 @@ kj::StringPtr KJ_STRINGIFY(HttpMethod method) { return METHOD_NAMES[static_cast(method)]; } -static kj::Maybe consumeHttpMethod(char*& ptr) { +kj::StringPtr KJ_STRINGIFY(HttpConnectMethod method) { + return "CONNECT"_kj; +} + +static kj::Maybe> consumeHttpMethod(char*& ptr) { char* p = ptr; #define EXPECT_REST(prefix, suffix) \ if (strncmp(p, #suffix, sizeof(#suffix)-1) == 0) { \ ptr = p + (sizeof(#suffix)-1); \ - return HttpMethod::prefix##suffix; \ + return kj::Maybe>(HttpMethod::prefix##suffix); \ } else { \ return nullptr; \ } @@ -351,7 +360,18 @@ static kj::Maybe consumeHttpMethod(char*& ptr) { case 'C': switch (*p++) { case 'H': EXPECT_REST(CH,ECKOUT) - case 'O': EXPECT_REST(CO,PY) + case 'O': + switch (*p++) { + case 'P': EXPECT_REST(COP,Y) + case 'N': + if (strncmp(p, "NECT", 4) == 0) { + ptr = p + 4; + return kj::Maybe>(HttpConnectMethod()); + } else { + return nullptr; + } + default: return nullptr; + } default: return nullptr; } case 'D': EXPECT_REST(D,ELETE) @@ -413,6 +433,19 @@ static kj::Maybe consumeHttpMethod(char*& ptr) { } kj::Maybe tryParseHttpMethod(kj::StringPtr name) { + KJ_IF_MAYBE(method, tryParseHttpMethodAllowingConnect(name)) { + KJ_SWITCH_ONEOF(*method) { + KJ_CASE_ONEOF(m, HttpMethod) { return m; } + KJ_CASE_ONEOF(m, HttpConnectMethod) { return nullptr; } + } + KJ_UNREACHABLE; + } else { + return nullptr; + } +} + +kj::Maybe> tryParseHttpMethodAllowingConnect( + kj::StringPtr name) { // const_cast OK because we don't actually access it. consumeHttpMethod() is also called by some // code later than explicitly needs to use a non-const pointer. char* ptr = const_cast(name.begin()); @@ -528,7 +561,9 @@ struct HttpHeaderTable::IdsByNameMap { }; HttpHeaderTable::Builder::Builder() - : table(kj::heap()) {} + : table(kj::heap()) { + table->buildStatus = BuildStatus::BUILDING; +} HttpHeaderId HttpHeaderTable::Builder::add(kj::StringPtr name) { requireValidHeaderName(name); @@ -576,7 +611,11 @@ bool HttpHeaders::isValidHeaderValue(kj::StringPtr value) { HttpHeaders::HttpHeaders(const HttpHeaderTable& table) : table(&table), - indexedHeaders(kj::heapArray(table.idCount())) {} + indexedHeaders(kj::heapArray(table.idCount())) { + KJ_ASSERT( + table.isReady(), "HttpHeaders object was constructed from " + "HttpHeaderTable that wasn't fully built yet at the time of construction"); +} void HttpHeaders::clear() { for (auto& header: indexedHeaders) { @@ -876,6 +915,23 @@ static char* trimHeaderEnding(kj::ArrayPtr content) { } HttpHeaders::RequestOrProtocolError HttpHeaders::tryParseRequest(kj::ArrayPtr content) { + KJ_SWITCH_ONEOF(tryParseRequestOrConnect(content)) { + KJ_CASE_ONEOF(request, Request) { + return kj::mv(request); + } + KJ_CASE_ONEOF(error, ProtocolError) { + return kj::mv(error); + } + KJ_CASE_ONEOF(connect, ConnectRequest) { + return ProtocolError { 501, "Not Implemented", + "Unrecognized request method.", content }; + } + } + KJ_UNREACHABLE; +} + +HttpHeaders::RequestConnectOrProtocolError HttpHeaders::tryParseRequestOrConnect( + kj::ArrayPtr content) { char* end = trimHeaderEnding(content); if (end == nullptr) { return ProtocolError { 400, "Bad Request", @@ -884,27 +940,36 @@ HttpHeaders::RequestOrProtocolError HttpHeaders::tryParseRequest(kj::ArrayPtr path; + KJ_IF_MAYBE(p, consumeWord(ptr)) { + path = *p; + } else { + return ProtocolError { 400, "Bad Request", + "Invalid request line.", content }; + } + + KJ_SWITCH_ONEOF(*method) { + KJ_CASE_ONEOF(m, HttpMethod) { + result = HttpHeaders::Request { m, KJ_ASSERT_NONNULL(path) }; + } + KJ_CASE_ONEOF(m, HttpConnectMethod) { + result = HttpHeaders::ConnectRequest { KJ_ASSERT_NONNULL(path) }; + } + } } else { return ProtocolError { 501, "Not Implemented", "Unrecognized request method.", content }; } - KJ_IF_MAYBE(path, consumeWord(ptr)) { - request.url = *path; - } else { - return ProtocolError { 400, "Bad Request", - "Invalid request line.", content }; - } - // Ignore rest of line. Don't care about "HTTP/1.1" or whatever. consumeLine(ptr); @@ -913,7 +978,7 @@ HttpHeaders::RequestOrProtocolError HttpHeaders::tryParseRequest(kj::ArrayPtr content) { @@ -983,6 +1048,12 @@ kj::String HttpHeaders::serializeRequest( return serialize(kj::toCharSequence(method), url, kj::StringPtr("HTTP/1.1"), connectionHeaders); } +kj::String HttpHeaders::serializeConnectRequest( + kj::StringPtr authority, + kj::ArrayPtr connectionHeaders) const { + return serialize("CONNECT"_kj, authority, kj::StringPtr("HTTP/1.1"), connectionHeaders); +} + kj::String HttpHeaders::serializeResponse( uint statusCode, kj::StringPtr statusText, kj::ArrayPtr connectionHeaders) const { @@ -1043,26 +1114,149 @@ kj::String HttpHeaders::toString() const { namespace { +template +class WrappableStreamMixin { + // Both HttpInputStreamImpl and HttpOutputStream are commonly wrapped by a class that implements + // a particular type of body stream, such as a chunked body or a fixed-length body. That wrapper + // stream is passed back to the application to represent the specific request/response body, but + // the inner stream is associated with the connection and can be reused several times. + // + // It's easy for applications to screw up and hold on to a body stream beyond the lifetime of the + // underlying connection stream. This used to lead to UAF. This mixin class implements behavior + // that detached the wrapper if it outlives the wrapped stream, so that we log errors and + +public: + WrappableStreamMixin() = default; + WrappableStreamMixin(WrappableStreamMixin&& other) { + // This constructor is only needed by HttpServer::Connection::makeHttpInput() which constructs + // a new stream and returns it. Technically the constructor will always be elided anyway. + KJ_REQUIRE(other.currentWrapper == nullptr, "can't move a wrappable object that has wrappers!"); + } + KJ_DISALLOW_COPY(WrappableStreamMixin); + + ~WrappableStreamMixin() noexcept(false) { + KJ_IF_MAYBE(w, currentWrapper) { + KJ_LOG(ERROR, "HTTP connection destroyed while HTTP body streams still exist", + kj::getStackTrace()); + *w = nullptr; + } + } + + void setCurrentWrapper(kj::Maybe& weakRef) { + // Tracks the current `HttpEntityBodyReader` instance which is wrapping this stream. There can + // be only one wrapper at a time, and the wrapper must be destroyed before the underlying HTTP + // connection is torn down. The purpose of tracking the wrapper here is to detect when these + // rules are violated by apps, and log an error instead of going UB. + // + // `weakRef` is the wrapper's pointer to this object. If the underlying stream is destroyed + // before the wrapper, then `weakRef` will be nulled out. + + // The API should prevent an app from obtaining multiple wrappers with the same backing stream. + KJ_ASSERT(currentWrapper == nullptr, + "bug in KJ HTTP: only one HTTP stream wrapper can exist at a time"); + + currentWrapper = weakRef; + weakRef = static_cast(*this); + } + + void unsetCurrentWrapper(kj::Maybe& weakRef) { + auto& current = KJ_ASSERT_NONNULL(currentWrapper); + KJ_ASSERT(¤t == &weakRef, + "bug in KJ HTTP: unsetCurrentWrapper() passed the wrong wrapper"); + weakRef = nullptr; + currentWrapper = nullptr; + } + +private: + kj::Maybe&> currentWrapper; +}; + +// ======================================================================================= + static constexpr size_t MIN_BUFFER = 4096; static constexpr size_t MAX_BUFFER = 128 * 1024; static constexpr size_t MAX_CHUNK_HEADER_SIZE = 32; -class HttpInputStreamImpl final: public HttpInputStream { +class HttpInputStreamImpl final: public HttpInputStream, + public WrappableStreamMixin { +private: + static kj::OneOf getResumingRequest( + kj::OneOf method, + kj::StringPtr url) { + KJ_SWITCH_ONEOF(method) { + KJ_CASE_ONEOF(m, HttpMethod) { + return HttpHeaders::Request { m, url }; + } + KJ_CASE_ONEOF(m, HttpConnectMethod) { + return HttpHeaders::ConnectRequest { url }; + } + } + KJ_UNREACHABLE; + } public: explicit HttpInputStreamImpl(AsyncInputStream& inner, const HttpHeaderTable& table) : inner(inner), headerBuffer(kj::heapArray(MIN_BUFFER)), headers(table) { } + explicit HttpInputStreamImpl(AsyncInputStream& inner, + kj::Array headerBufferParam, + kj::ArrayPtr leftoverParam, + kj::OneOf method, + kj::StringPtr url, + HttpHeaders headers) + : inner(inner), + headerBuffer(kj::mv(headerBufferParam)), + // Initialize `messageHeaderEnd` to a safe value, we'll adjust it below. + messageHeaderEnd(leftoverParam.begin() - headerBuffer.begin()), + leftover(leftoverParam), + headers(kj::mv(headers)), + resumingRequest(getResumingRequest(method, url)) { + // Constructor used for resuming a SuspendedRequest. + + // We expect headerBuffer to look like this: + // [CR] LF + // We initialized `messageHeaderEnd` to the beginning of `leftover`, but we want to point it at + // the CR (or LF if there's no CR). + KJ_REQUIRE(messageHeaderEnd >= 2 && leftover.end() <= headerBuffer.end(), + "invalid SuspendedRequest - leftover buffer not where it should be"); + KJ_REQUIRE(leftover.begin()[-1] == '\n', "invalid SuspendedRequest - missing LF"); + messageHeaderEnd -= 1 + (leftover.begin()[-2] == '\r'); + + // We're in the middle of a message, so set up our state as such. Note that the only way to + // resume a SuspendedRequest is via an HttpServer, but HttpServers never call + // `awaitNextMessage()` before fully reading request bodies, meaning we expect that + // `messageReadQueue` will never be used. + ++pendingMessageCount; + auto paf = kj::newPromiseAndFulfiller(); + onMessageDone = kj::mv(paf.fulfiller); + messageReadQueue = kj::mv(paf.promise); + } + bool canReuse() { return !broken && pendingMessageCount == 0; } + bool canSuspend() { + // We are at a suspendable point if we've parsed the headers, but haven't consumed anything + // beyond that. + // + // TODO(cleanup): This is a silly check; we need a more defined way to track the state of the + // stream. + bool messageHeaderEndLooksRight = + (leftover.begin() - (headerBuffer.begin() + messageHeaderEnd) == 2 && + leftover.begin()[-1] == '\n' && leftover.begin()[-2] == '\r') + || (leftover.begin() - (headerBuffer.begin() + messageHeaderEnd) == 1 && + leftover.begin()[-1] == '\n'); + + return !broken && headerBuffer.size() > 0 && messageHeaderEndLooksRight; + } + // --------------------------------------------------------------------------- // public interface kj::Promise readRequest() override { return readRequestHeaders() - .then([this](HttpHeaders::RequestOrProtocolError&& requestOrProtocolError) + .then([this](HttpHeaders::RequestConnectOrProtocolError&& requestOrProtocolError) -> HttpInputStream::Request { auto request = KJ_REQUIRE_NONNULL( requestOrProtocolError.tryGet(), "bad request"); @@ -1072,6 +1266,27 @@ public: }); } + kj::Promise> readRequestAllowingConnect() override { + return readRequestHeaders() + .then([this](HttpHeaders::RequestConnectOrProtocolError&& requestOrProtocolError) + -> kj::OneOf { + KJ_SWITCH_ONEOF(requestOrProtocolError) { + KJ_CASE_ONEOF(request, HttpHeaders::Request) { + auto body = getEntityBody(HttpInputStreamImpl::REQUEST, request.method, 0, headers); + return HttpInputStream::Request { request.method, request.url, headers, kj::mv(body) }; + } + KJ_CASE_ONEOF(request, HttpHeaders::ConnectRequest) { + auto body = getEntityBody(HttpInputStreamImpl::REQUEST, HttpConnectMethod(), 0, headers); + return HttpInputStream::Connect { request.authority, headers, kj::mv(body) }; + } + KJ_CASE_ONEOF(error, HttpHeaders::ProtocolError) { + KJ_FAIL_REQUIRE("bad request"); + } + } + KJ_UNREACHABLE; + }); + } + kj::Promise readResponse(HttpMethod requestMethod) override { return readResponseHeaders() .then([this,requestMethod](HttpHeaders::ResponseOrProtocolError&& responseOrProtocolError) @@ -1128,6 +1343,11 @@ public: // Used on the client to detect when idle connections are closed from the server end. (In this // case, the promise always returns false or is canceled.) + if (resumingRequest != nullptr) { + // We're resuming a request, so report that we have a message. + return true; + } + if (onMessageDone != nullptr) { // We're still working on reading the previous body. auto fork = messageReadQueue.fork(); @@ -1166,10 +1386,10 @@ public: auto paf = kj::newPromiseAndFulfiller(); auto promise = messageReadQueue - .then(kj::mvCapture(paf.fulfiller, [this](kj::Own> fulfiller) { + .then([this,fulfiller=kj::mv(paf.fulfiller)]() mutable { onMessageDone = kj::mv(fulfiller); return readHeader(HeaderType::MESSAGE, 0, 0); - })); + }); messageReadQueue = kj::mv(paf.promise); @@ -1202,10 +1422,15 @@ public: }); } - inline kj::Promise readRequestHeaders() { + inline kj::Promise readRequestHeaders() { + KJ_IF_MAYBE(resuming, resumingRequest) { + KJ_DEFER(resumingRequest = nullptr); + return HttpHeaders::RequestConnectOrProtocolError(*resuming); + } + return readMessageHeaders().then([this](kj::ArrayPtr text) { headers.clear(); - return headers.tryParseRequest(text); + return headers.tryParseRequestOrConnect(text); }); } @@ -1257,7 +1482,9 @@ public: }; kj::Own getEntityBody( - RequestOrResponse type, HttpMethod method, uint statusCode, + RequestOrResponse type, + kj::OneOf method, + uint statusCode, const kj::HttpHeaders& headers); struct ReleasedBuffer { @@ -1283,6 +1510,9 @@ private: HttpHeaders headers; // Parsed headers, after a call to parseAwaited*(). + kj::Maybe> resumingRequest; + // Non-null if we're resuming a SuspendedRequest. + bool lineBreakBeforeNextHeader = false; // If true, the next await should expect to start with a spurious '\n' or '\r\n'. This happens // as a side-effect of HTTP chunked encoding, where such a newline is added to the end of each @@ -1465,25 +1695,44 @@ private: class HttpEntityBodyReader: public kj::AsyncInputStream { public: - HttpEntityBodyReader(HttpInputStreamImpl& inner): inner(inner) {} + HttpEntityBodyReader(HttpInputStreamImpl& inner) { + inner.setCurrentWrapper(weakInner); + } ~HttpEntityBodyReader() noexcept(false) { if (!finished) { - inner.abortRead(); + KJ_IF_MAYBE(inner, weakInner) { + inner->unsetCurrentWrapper(weakInner); + inner->abortRead(); + } else { + // Since we're in a destructor, log an error instead of throwing. + KJ_LOG(ERROR, "HTTP body input stream outlived underlying connection", kj::getStackTrace()); + } } } protected: - HttpInputStreamImpl& inner; + HttpInputStreamImpl& getInner() { + KJ_IF_MAYBE(i, weakInner) { + return *i; + } else if (finished) { + // This is a bug in the implementations in this file, not the app. + KJ_FAIL_ASSERT("bug in KJ HTTP: tried to access inner stream after it had been released"); + } else { + KJ_FAIL_REQUIRE("HTTP body input stream outlived underlying connection"); + } + } void doneReading() { - KJ_REQUIRE(!finished); + auto& inner = getInner(); + inner.unsetCurrentWrapper(weakInner); finished = true; inner.finishRead(); } - inline bool alreadyDone() { return finished; } + inline bool alreadyDone() { return weakInner == nullptr; } private: + kj::Maybe weakInner; bool finished = false; }; @@ -1500,7 +1749,7 @@ public: } Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { - return size_t(0); + return constPromise(); } Maybe tryGetLength() override { @@ -1519,9 +1768,9 @@ public: : HttpEntityBodyReader(inner) {} Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { - if (alreadyDone()) return size_t(0); + if (alreadyDone()) return constPromise(); - return inner.tryRead(buffer, minBytes, maxBytes) + return getInner().tryRead(buffer, minBytes, maxBytes) .then([=](size_t amount) { if (amount < minBytes) { doneReading(); @@ -1545,19 +1794,25 @@ public: } Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + KJ_REQUIRE(clean, "can't read more data after a previous read didn't complete"); + clean = false; return tryReadInternal(buffer, minBytes, maxBytes, 0); } private: size_t length; + bool clean = true; Promise tryReadInternal(void* buffer, size_t minBytes, size_t maxBytes, size_t alreadyRead) { - if (length == 0) return size_t(0); + if (length == 0) { + clean = true; + return constPromise(); + } // We have to set minBytes to 1 here so that if we read any data at all, we update our // counter immediately, so that we still know where we are in case of cancellation. - return inner.tryRead(buffer, 1, kj::min(maxBytes, length)) + return getInner().tryRead(buffer, 1, kj::min(maxBytes, length)) .then([=](size_t amount) -> kj::Promise { length -= amount; if (length > 0) { @@ -1574,6 +1829,7 @@ private: } else if (length == 0) { doneReading(); } + clean = true; return amount + alreadyRead; }); } @@ -1587,19 +1843,23 @@ public: : HttpEntityBodyReader(inner) {} Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + KJ_REQUIRE(clean, "can't read more data after a previous read didn't complete"); + clean = false; return tryReadInternal(buffer, minBytes, maxBytes, 0); } private: size_t chunkSize = 0; + bool clean = true; Promise tryReadInternal(void* buffer, size_t minBytes, size_t maxBytes, size_t alreadyRead) { if (alreadyDone()) { + clean = true; return alreadyRead; } else if (chunkSize == 0) { // Read next chunk header. - return inner.readChunkHeader().then([=](uint64_t nextChunkSize) { + return getInner().readChunkHeader().then([=](uint64_t nextChunkSize) { if (nextChunkSize == 0) { doneReading(); } @@ -1611,7 +1871,7 @@ private: // Read current chunk. // We have to set minBytes to 1 here so that if we read any data at all, we update our // counter immediately, so that we still know where we are in case of cancellation. - return inner.tryRead(buffer, 1, kj::min(maxBytes, chunkSize)) + return getInner().tryRead(buffer, 1, kj::min(maxBytes, chunkSize)) .then([=](size_t amount) -> kj::Promise { chunkSize -= amount; if (amount == 0) { @@ -1622,6 +1882,7 @@ private: return tryReadInternal(reinterpret_cast(buffer) + amount, minBytes - amount, maxBytes - amount, alreadyRead + amount); } + clean = true; return alreadyRead + amount; }); } @@ -1661,35 +1922,49 @@ static_assert(!fastCaseCmp<'f','O','o','B'>("FooB1"), ""); static_assert(!fastCaseCmp<'f','O','o','B','1','a'>("FooB1"), ""); kj::Own HttpInputStreamImpl::getEntityBody( - RequestOrResponse type, HttpMethod method, uint statusCode, + RequestOrResponse type, + kj::OneOf method, + uint statusCode, const kj::HttpHeaders& headers) { + KJ_REQUIRE(headerBuffer.size() > 0, "Cannot get entity body after header buffer release."); + + auto isHeadRequest = method.tryGet().map([](auto& m) { + return m == HttpMethod::HEAD; + }).orDefault(false); + + auto isConnectRequest = method.is(); + // Rules to determine how HTTP entity-body is delimited: // https://tools.ietf.org/html/rfc7230#section-3.3.3 - // #1 if (type == RESPONSE) { - if (method == HttpMethod::HEAD) { + if (isHeadRequest) { // Body elided. kj::Maybe length; KJ_IF_MAYBE(cl, headers.get(HttpHeaderId::CONTENT_LENGTH)) { length = strtoull(cl->cStr(), nullptr, 10); } else if (headers.get(HttpHeaderId::TRANSFER_ENCODING) == nullptr) { - // HACK: Neither Content-Length nor Transfer-Encoding header in response to HEAD request. - // Propagate this fact with a 0 expected body length. + // HACK: Neither Content-Length nor Transfer-Encoding header in response to HEAD + // request. Propagate this fact with a 0 expected body length. length = uint64_t(0); } return kj::heap(*this, length); + } else if (isConnectRequest && statusCode >= 200 && statusCode < 300) { + KJ_FAIL_ASSERT("a CONNECT response with a 2xx status does not have an entity body to get"); } else if (statusCode == 204 || statusCode == 304) { // No body. return kj::heap(*this, uint64_t(0)); } } - // #2 deals with the CONNECT method which is handled separately. + // For CONNECT requests messages, we let the rest of the logic play out. + // We already check before here to ensure that Transfer-Encoding and + // Content-Length headers are not present in which case the code below + // does the right thing. // #3 KJ_IF_MAYBE(te, headers.get(HttpHeaderId::TRANSFER_ENCODING)) { - // TODO(someday): Support plugable transfer encodings? Or at least gzip? + // TODO(someday): Support pluggable transfer encodings? Or at least gzip? // TODO(someday): Support stacked transfer encodings, e.g. "gzip, chunked". // NOTE: #3¶3 is ambiguous about what should happen if Transfer-Encoding and Content-Length are @@ -1705,9 +1980,9 @@ kj::Own HttpInputStreamImpl::getEntityBody( // #3¶2 KJ_REQUIRE(type != REQUEST, "request body cannot have Transfer-Encoding other than chunked"); return kj::heap(*this); - } else { - KJ_FAIL_REQUIRE("unknown transfer encoding", *te) { break; } } + + KJ_FAIL_REQUIRE("unknown transfer encoding", *te) { break; }; } // #4 and #5 @@ -1760,7 +2035,7 @@ kj::Own newHttpInputStream( namespace { -class HttpOutputStream { +class HttpOutputStream: public WrappableStreamMixin { public: HttpOutputStream(AsyncOutputStream& inner): inner(inner) {} @@ -1902,14 +2177,59 @@ private: // is empty, then they make the write directly, using `writeInProgress` to detect and block // concurrent writes. - writeQueue = writeQueue.then(kj::mvCapture(content, [this](kj::String&& content) { + writeQueue = writeQueue.then([this,content=kj::mv(content)]() mutable { auto promise = inner.write(content.begin(), content.size()); return promise.attach(kj::mv(content)); - })); + }); + } +}; + +class HttpEntityBodyWriter: public kj::AsyncOutputStream { +public: + HttpEntityBodyWriter(HttpOutputStream& inner) { + inner.setCurrentWrapper(weakInner); + } + ~HttpEntityBodyWriter() noexcept(false) { + if (!finished) { + KJ_IF_MAYBE(inner, weakInner) { + inner->unsetCurrentWrapper(weakInner); + inner->abortBody(); + } else { + // Since we're in a destructor, log an error instead of throwing. + KJ_LOG(ERROR, "HTTP body output stream outlived underlying connection", + kj::getStackTrace()); + } + } + } + +protected: + HttpOutputStream& getInner() { + KJ_IF_MAYBE(i, weakInner) { + return *i; + } else if (finished) { + // This is a bug in the implementations in this file, not the app. + KJ_FAIL_ASSERT("bug in KJ HTTP: tried to access inner stream after it had been released"); + } else { + KJ_FAIL_REQUIRE("HTTP body output stream outlived underlying connection"); + } } + + void doneWriting() { + auto& inner = getInner(); + inner.unsetCurrentWrapper(weakInner); + finished = true; + inner.finishBody(); + } + + inline bool alreadyDone() { return weakInner == nullptr; } + +private: + kj::Maybe weakInner; + bool finished = false; }; class HttpNullEntityWriter final: public kj::AsyncOutputStream { + // Does not inherit HttpEntityBodyWriter because it doesn't actually write anything. public: Promise write(const void* buffer, size_t size) override { return KJ_EXCEPTION(FAILED, "HTTP message has no entity-body; can't write()"); @@ -1923,6 +2243,7 @@ public: }; class HttpDiscardingEntityWriter final: public kj::AsyncOutputStream { + // Does not inherit HttpEntityBodyWriter because it doesn't actually write anything. public: Promise write(const void* buffer, size_t size) override { return kj::READY_NOW; @@ -1935,16 +2256,11 @@ public: } }; -class HttpFixedLengthEntityWriter final: public kj::AsyncOutputStream { +class HttpFixedLengthEntityWriter final: public HttpEntityBodyWriter { public: HttpFixedLengthEntityWriter(HttpOutputStream& inner, uint64_t length) - : inner(inner), length(length) { - if (length == 0) inner.finishBody(); - } - ~HttpFixedLengthEntityWriter() noexcept(false) { - if (length > 0 || inner.isWriteInProgress()) { - inner.abortBody(); - } + : HttpEntityBodyWriter(inner), length(length) { + if (length == 0) doneWriting(); } Promise write(const void* buffer, size_t size) override { @@ -1952,7 +2268,7 @@ public: KJ_REQUIRE(size <= length, "overwrote Content-Length"); length -= size; - return maybeFinishAfter(inner.writeBodyData(buffer, size)); + return maybeFinishAfter(getInner().writeBodyData(buffer, size)); } Promise write(ArrayPtr> pieces) override { uint64_t size = 0; @@ -1962,11 +2278,11 @@ public: KJ_REQUIRE(size <= length, "overwrote Content-Length"); length -= size; - return maybeFinishAfter(inner.writeBodyData(pieces)); + return maybeFinishAfter(getInner().writeBodyData(pieces)); } Maybe> tryPumpFrom(AsyncInputStream& input, uint64_t amount) override { - if (amount == 0) return Promise(uint64_t(0)); + if (amount == 0) return constPromise(); bool overshot = amount > length; if (overshot) { @@ -1987,10 +2303,10 @@ public: auto promise = amount == 0 ? kj::Promise(amount) - : inner.pumpBodyFrom(input, amount).then([this,amount](uint64_t actual) { + : getInner().pumpBodyFrom(input, amount).then([this,amount](uint64_t actual) { // Adjust for bytes not written. length += amount - actual; - if (length == 0) inner.finishBody(); + if (length == 0) doneWriting(); return actual; }); @@ -2016,32 +2332,32 @@ public: } Promise whenWriteDisconnected() override { - return inner.whenWriteDisconnected(); + return getInner().whenWriteDisconnected(); } private: - HttpOutputStream& inner; uint64_t length; kj::Promise maybeFinishAfter(kj::Promise promise) { if (length == 0) { - return promise.then([this]() { inner.finishBody(); }); + return promise.then([this]() { doneWriting(); }); } else { return kj::mv(promise); } } }; -class HttpChunkedEntityWriter final: public kj::AsyncOutputStream { +class HttpChunkedEntityWriter final: public HttpEntityBodyWriter { public: HttpChunkedEntityWriter(HttpOutputStream& inner) - : inner(inner) {} + : HttpEntityBodyWriter(inner) {} ~HttpChunkedEntityWriter() noexcept(false) { - if (inner.canWriteBodyData()) { - inner.writeBodyData(kj::str("0\r\n\r\n")); - inner.finishBody(); - } else { - inner.abortBody(); + if (!alreadyDone()) { + auto& inner = getInner(); + if (inner.canWriteBodyData()) { + inner.writeBodyData(kj::str("0\r\n\r\n")); + doneWriting(); + } } } @@ -2054,7 +2370,7 @@ public: parts[1] = kj::arrayPtr(reinterpret_cast(buffer), size); parts[2] = kj::StringPtr("\r\n").asBytes(); - auto promise = inner.writeBodyData(parts.asPtr()); + auto promise = getInner().writeBodyData(parts.asPtr()); return promise.attach(kj::mv(header), kj::mv(parts)); } @@ -2073,7 +2389,7 @@ public: partsBuilder.add(kj::StringPtr("\r\n").asBytes()); auto parts = partsBuilder.finish(); - auto promise = inner.writeBodyData(parts.asPtr()); + auto promise = getInner().writeBodyData(parts.asPtr()); return promise.attach(kj::mv(header), kj::mv(parts)); } @@ -2082,9 +2398,11 @@ public: // Hey, we know exactly how large the input is, so we can write just one chunk. uint64_t length = kj::min(amount, *l); + auto& inner = getInner(); inner.writeBodyData(kj::str(kj::hex(length), "\r\n")); return inner.pumpBodyFrom(input, length) .then([this,length](uint64_t actual) { + auto& inner = getInner(); if (actual < length) { inner.abortBody(); KJ_FAIL_REQUIRE( @@ -2103,25 +2421,36 @@ public: } Promise whenWriteDisconnected() override { - return inner.whenWriteDisconnected(); + return getInner().whenWriteDisconnected(); } - -private: - HttpOutputStream& inner; }; // ======================================================================================= -class WebSocketImpl final: public WebSocket { +class WebSocketImpl final: public WebSocket, private WebSocketErrorHandler { public: WebSocketImpl(kj::Own stream, kj::Maybe maskKeyGenerator, + kj::Maybe compressionConfigParam = nullptr, + kj::Maybe errorHandler = nullptr, kj::Array buffer = kj::heapArray(4096), kj::ArrayPtr leftover = nullptr, kj::Maybe> waitBeforeSend = nullptr) : stream(kj::mv(stream)), maskKeyGenerator(maskKeyGenerator), + compressionConfig(kj::mv(compressionConfigParam)), + errorHandler(errorHandler.orDefault(*this)), sendingPong(kj::mv(waitBeforeSend)), - recvBuffer(kj::mv(buffer)), recvData(leftover) {} + recvBuffer(kj::mv(buffer)), recvData(leftover) { +#if KJ_HAS_ZLIB + KJ_IF_MAYBE(config, compressionConfig) { + compressionContext.emplace(ZlibContext::Mode::COMPRESS, *config); + decompressionContext.emplace(ZlibContext::Mode::DECOMPRESS, *config); + } +#else + KJ_REQUIRE(compressionConfig == nullptr, + "WebSocket compression is only supported if KJ is compiled with Zlib."); +#endif // KJ_HAS_ZLIB + } kj::Promise send(kj::ArrayPtr message) override { return sendImpl(OPCODE_BINARY, message); @@ -2211,36 +2540,63 @@ public: } auto& recvHeader = *reinterpret_cast(recvData.begin()); + if (recvHeader.hasRsv2or3()) { + return errorHandler.handleWebSocketProtocolError({ + 1002, "Received frame had RSV bits 2 or 3 set", + }); + } recvData = recvData.slice(headerSize, recvData.size()); size_t payloadLen = recvHeader.getPayloadLen(); - - KJ_REQUIRE(payloadLen < maxSize, "WebSocket message is too large"); + if (payloadLen > maxSize) { + return errorHandler.handleWebSocketProtocolError({ + 1009, kj::str("Message is too large: ", payloadLen, " > ", maxSize) + }); + } auto opcode = recvHeader.getOpcode(); bool isData = opcode < OPCODE_FIRST_CONTROL; if (opcode == OPCODE_CONTINUATION) { - KJ_REQUIRE(!fragments.empty(), "unexpected continuation frame in WebSocket"); + if (fragments.empty()) { + return errorHandler.handleWebSocketProtocolError({ + 1002, "Unexpected continuation frame" + }); + } opcode = fragmentOpcode; } else if (isData) { - KJ_REQUIRE(fragments.empty(), "expected continuation frame in WebSocket"); + if (!fragments.empty()) { + return errorHandler.handleWebSocketProtocolError({ + 1002, "Missing continuation frame" + }); + } } bool isFin = recvHeader.isFin(); + bool isCompressed = false; kj::Array message; // space to allocate byte* payloadTarget; // location into which to read payload (size is payloadLen) + kj::Maybe originalMaxSize; // maxSize from first `receive()` call if (isFin) { - // Add space for NUL terminator when allocating text message. - size_t amountToAllocate = payloadLen + (opcode == OPCODE_TEXT && isFin); + size_t amountToAllocate; + if (recvHeader.isCompressed() || fragmentCompressed) { + // Add 4 since we append 0x00 0x00 0xFF 0xFF to the tail of the payload. + // See: https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.2 + amountToAllocate = payloadLen + 4; + isCompressed = true; + } else { + // Add space for NUL terminator when allocating text message. + amountToAllocate = payloadLen + (opcode == OPCODE_TEXT && isFin); + } if (isData && !fragments.empty()) { // Final frame of a fragmented message. Gather the fragments. size_t offset = 0; for (auto& fragment: fragments) offset += fragment.size(); message = kj::heapArray(offset + amountToAllocate); + originalMaxSize = offset + maxSize; // gives us back the original maximum message size. offset = 0; for (auto& fragment: fragments) { @@ -2251,28 +2607,36 @@ public: fragments.clear(); fragmentOpcode = 0; + fragmentCompressed = false; } else { // Single-frame message. message = kj::heapArray(amountToAllocate); + originalMaxSize = maxSize; // gives us back the original maximum message size. payloadTarget = message.begin(); } } else { // Fragmented message, and this isn't the final fragment. - KJ_REQUIRE(isData, "WebSocket control frame cannot be fragmented"); + if (!isData) { + return errorHandler.handleWebSocketProtocolError({ + 1002, "Received fragmented control frame" + }); + } message = kj::heapArray(payloadLen); payloadTarget = message.begin(); if (fragments.empty()) { // This is the first fragment, so set the opcode. fragmentOpcode = opcode; + fragmentCompressed = recvHeader.isCompressed(); } } Mask mask = recvHeader.getMask(); - auto handleMessage = kj::mvCapture(message, - [this,opcode,payloadTarget,payloadLen,mask,isFin,maxSize] - (kj::Array&& message) -> kj::Promise { + auto handleMessage = + [this,opcode,payloadTarget,payloadLen,mask,isFin,maxSize,originalMaxSize, + isCompressed,message=kj::mv(message)]() mutable + -> kj::Promise { if (!mask.isZero()) { mask.apply(kj::arrayPtr(payloadTarget, payloadLen)); } @@ -2284,14 +2648,66 @@ public: return receive(newMax); } + // Provide a reasonable error if a compressed frame is received without compression enabled. + if (isCompressed && compressionConfig == nullptr) { + return errorHandler.handleWebSocketProtocolError({ + 1002, kj::str( + "Received a WebSocket frame whose compression bit was set, but the compression " + "extension was not negotiated for this connection.") + }); + } + switch (opcode) { case OPCODE_CONTINUATION: // Shouldn't get here; handled above. KJ_UNREACHABLE; case OPCODE_TEXT: +#if KJ_HAS_ZLIB + if (isCompressed) { + auto& config = KJ_ASSERT_NONNULL(compressionConfig); + auto& decompressor = KJ_ASSERT_NONNULL(decompressionContext); + KJ_ASSERT(message.size() >= 4); + auto tail = message.slice(message.size() - 4, message.size()); + // Note that we added an additional 4 bytes to `message`s capacity to account for these + // extra bytes. See `amountToAllocate` in the if(recvHeader.isCompressed()) block above. + const byte tailBytes[] = {0x00, 0x00, 0xFF, 0xFF}; + memcpy(tail.begin(), tailBytes, sizeof(tailBytes)); + // We have to append 0x00 0x00 0xFF 0xFF to the message before inflating. + // See: https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.2 + if (config.inboundNoContextTakeover) { + // We must reset context on each message. + decompressor.reset(); + } + bool addNullTerminator = true; + // We want to add the null terminator when receiving a TEXT message. + auto decompressed = decompressor.processMessage(message, originalMaxSize, + addNullTerminator); + return Message(kj::String(decompressed.releaseAsChars())); + } +#endif // KJ_HAS_ZLIB message.back() = '\0'; return Message(kj::String(message.releaseAsChars())); case OPCODE_BINARY: +#if KJ_HAS_ZLIB + if (isCompressed) { + auto& config = KJ_ASSERT_NONNULL(compressionConfig); + auto& decompressor = KJ_ASSERT_NONNULL(decompressionContext); + KJ_ASSERT(message.size() >= 4); + auto tail = message.slice(message.size() - 4, message.size()); + // Note that we added an additional 4 bytes to `message`s capacity to account for these + // extra bytes. See `amountToAllocate` in the if(recvHeader.isCompressed()) block above. + const byte tailBytes[] = {0x00, 0x00, 0xFF, 0xFF}; + memcpy(tail.begin(), tailBytes, sizeof(tailBytes)); + // We have to append 0x00 0x00 0xFF 0xFF to the message before inflating. + // See: https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.2 + if (config.inboundNoContextTakeover) { + // We must reset context on each message. + decompressor.reset(); + } + auto decompressed = decompressor.processMessage(message, originalMaxSize); + return Message(decompressed.releaseAsBytes()); + } +#endif // KJ_HAS_ZLIB return Message(message.releaseAsBytes()); case OPCODE_CLOSE: if (message.size() < 2) { @@ -2311,9 +2727,11 @@ public: // Unsolicited pong. Ignore. return receive(maxSize); default: - KJ_FAIL_REQUIRE("unknown WebSocket opcode", opcode); + return errorHandler.handleWebSocketProtocolError({ + 1002, kj::str("Unknown opcode ", opcode) + }); } - }); + }; if (payloadLen <= recvData.size()) { // All data already received. @@ -2348,6 +2766,27 @@ public: return nullptr; } + KJ_IF_MAYBE(config, compressionConfig) { + KJ_IF_MAYBE(otherConfig, optOther->compressionConfig) { + if (config->outboundMaxWindowBits != otherConfig->inboundMaxWindowBits || + config->inboundMaxWindowBits != otherConfig->outboundMaxWindowBits || + config->inboundNoContextTakeover!= otherConfig->outboundNoContextTakeover || + config->outboundNoContextTakeover!= otherConfig->inboundNoContextTakeover) { + // Compression configurations differ. + return nullptr; + } + } else { + // Only one websocket uses compression. + return nullptr; + } + } else { + if (optOther->compressionConfig != nullptr) { + // Only one websocket uses compression. + return nullptr; + } + } + // Both websockets use compatible compression configurations so we can pump directly. + // Check same error conditions as with sendImpl(). KJ_REQUIRE(!disconnected, "WebSocket can't send after disconnect()"); KJ_REQUIRE(!currentlySending, "another message send is already in progress"); @@ -2371,6 +2810,54 @@ public: uint64_t receivedByteCount() override { return receivedBytes; } + kj::Maybe getPreferredExtensions(ExtensionsContext ctx) override { + if (maskKeyGenerator == nullptr) { + // `this` is the server side of a websocket. + if (ctx == ExtensionsContext::REQUEST) { + // The other WebSocket is (going to be) the client side of a WebSocket, i.e. this is a + // proxying pass-through scenario. Optimization is possible. Confusingly, we have to use + // generateExtensionResponse() (even though we're generating headers to be passed in a + // request) because this is the function that correctly maps our config's inbound/outbound + // to client/server. + KJ_IF_MAYBE(c, compressionConfig) { + return _::generateExtensionResponse(*c); + } else { + return kj::String(nullptr); // recommend no compression + } + } else { + // We're apparently arranging to pump from the server side of one WebSocket to the server + // side of another; i.e., we are a server, we have two clients, and we're trying to pump + // between them. We cannot optimize this case, because the masking requirements are + // different for client->server vs. server->client messages. Since we have to parse out + // the messages anyway there's no point in trying to match extensions, so return null. + return nullptr; + } + } else { + // `this` is the client side of a websocket. + if (ctx == ExtensionsContext::RESPONSE) { + // The other WebSocket is (going to be) the server side of a WebSocket, i.e. this is a + // proxying pass-through scenario. Optimization is possible. Confusingly, we have to use + // generateExtensionRequest() (even though we're generating headers to be passed in a + // response) because this is the function that correctly maps our config's inbound/outbound + // to server/client. + KJ_IF_MAYBE(c, compressionConfig) { + CompressionParameters arr[1]{*c}; + return _::generateExtensionRequest(arr); + } else { + return kj::String(nullptr); // recommend no compression + } + } else { + // We're apparently arranging to pump from the client side of one WebSocket to the client + // side of another; i.e., we are a client, we are connected to two servers, and we're + // trying to pump between them. We cannot optimize this case, because the masking + // requirements are different for client->server vs. server->client messages. Since we have + // to parse out the messages anyway there's no point in trying to match extensions, so + // return null. + return nullptr; + } + } + } + private: class Mask { public: @@ -2409,8 +2896,10 @@ private: class Header { public: - kj::ArrayPtr compose(bool fin, byte opcode, uint64_t payloadLen, Mask mask) { - bytes[0] = (fin ? FIN_MASK : 0) | opcode; + kj::ArrayPtr compose(bool fin, bool compressed, byte opcode, uint64_t payloadLen, + Mask mask) { + bytes[0] = (fin ? FIN_MASK : 0) | (compressed ? RSV1_MASK : 0) | opcode; + // Note that we can only set the compressed bit on DATA frames. bool hasMask = !mask.isZero(); size_t fill; @@ -2458,8 +2947,12 @@ private: return bytes[0] & FIN_MASK; } - bool hasRsv() const { - return bytes[0] & RSV_MASK; + bool isCompressed() const { + return bytes[0] & RSV1_MASK; + } + + bool hasRsv2or3() const { + return bytes[0] & RSV2_3_MASK; } byte getOpcode() const { @@ -2523,13 +3016,211 @@ private: byte bytes[14]; static constexpr byte FIN_MASK = 0x80; - static constexpr byte RSV_MASK = 0x70; + static constexpr byte RSV2_3_MASK = 0x30; + static constexpr byte RSV1_MASK = 0x40; static constexpr byte OPCODE_MASK = 0x0f; static constexpr byte USE_MASK_MASK = 0x80; static constexpr byte PAYLOAD_LEN_MASK = 0x7f; }; +#if KJ_HAS_ZLIB + class ZlibContext { + // `ZlibContext` is the WebSocket's interface to Zlib's compression/decompression functions. + // Depending on the `mode`, `ZlibContext` will act as a compressor or a decompressor. + public: + enum class Mode { + COMPRESS, + DECOMPRESS, + }; + + struct Result { + int processResult = 0; + kj::Array buffer; + size_t size = 0; // Number of bytes used; size <= buffer.size(). + }; + + ZlibContext(Mode mode, const CompressionParameters& config) : mode(mode) { + switch (mode) { + case Mode::COMPRESS: { + int windowBits = -config.outboundMaxWindowBits.orDefault(15); + // We use negative values because we want to use raw deflate. + if(windowBits == -8) { + // Zlib cannot accept `windowBits` of 8 for the deflater. However, due to an + // implementation quirk, `windowBits` of 8 and 9 would both use 250 bytes. + // Therefore, a decompressor using `windowBits` of 8 could safely inflate a message + // that a zlib client compressed using `windowBits` = 9. + // https://bugs.chromium.org/p/chromium/issues/detail?id=691074 + windowBits = -9; + } + int result = deflateInit2( + &ctx, + Z_DEFAULT_COMPRESSION, + Z_DEFLATED, + windowBits, + 8, // memLevel = 8 is the default + Z_DEFAULT_STRATEGY); + KJ_REQUIRE(result == Z_OK, "Failed to initialize compression context (deflate)."); + break; + } + case Mode::DECOMPRESS: { + int windowBits = -config.inboundMaxWindowBits.orDefault(15); + // We use negative values because we want to use raw inflate. + int result = inflateInit2(&ctx, windowBits); + KJ_REQUIRE(result == Z_OK, "Failed to initialize decompression context (inflate)."); + break; + } + } + } + + ~ZlibContext() noexcept(false) { + switch (mode) { + case Mode::COMPRESS: + deflateEnd(&ctx); + break; + case Mode::DECOMPRESS: + inflateEnd(&ctx); + break; + } + } + + KJ_DISALLOW_COPY_AND_MOVE(ZlibContext); + + kj::Array processMessage(kj::ArrayPtr message, + kj::Maybe maxSize = nullptr, + bool addNullTerminator = false) { + // If `this` is the compressor, calling `processMessage()` will compress the `message`. + // Likewise, if `this` is the decompressor, `processMessage()` will decompress the `message`. + // + // `maxSize` is only passed in when decompressing, since we want to ensure the decompressed + // message is smaller than the `maxSize` passed to `receive()`. + // + // If (de)compression is successful, the result is returned as a Vector, otherwise, + // an Exception is thrown. + + ctx.next_in = const_cast(reinterpret_cast(message.begin())); + ctx.avail_in = message.size(); + + kj::Vector parts(processLoop(maxSize)); + + size_t amountToAllocate = 0; + for (const auto& part : parts) { + amountToAllocate += part.size; + } + + if (addNullTerminator) { + // Add space for the null-terminator. + amountToAllocate += 1; + } + + kj::Array processedMessage = kj::heapArray(amountToAllocate); + size_t currentIndex = 0; // Current index into processedMessage. + for (const auto& part : parts) { + memcpy(&processedMessage[currentIndex], part.buffer.begin(), part.size); + // We need to use `part.size` to determine the number of useful bytes, since data after + // `part.size` is unused (and probably junk). + currentIndex += part.size; + } + + if (addNullTerminator) { + processedMessage[currentIndex++] = '\0'; + } + + KJ_ASSERT(currentIndex == processedMessage.size()); + + return kj::mv(processedMessage); + } + + void reset() { + // Resets the (de)compression context. This should only be called when the (de)compressor uses + // client/server_no_context_takeover. + switch (mode) { + case Mode::COMPRESS: { + KJ_ASSERT(deflateReset(&ctx) == Z_OK, "deflateReset() failed."); + break; + } + case Mode::DECOMPRESS: { + KJ_ASSERT(inflateReset(&ctx) == Z_OK, "inflateReset failed."); + break; + } + } + + } + + private: + Result pumpOnce() { + // Prepares Zlib's internal state for a call to deflate/inflate, then calls the relevant + // function to process the input buffer. It is assumed that the caller has already set up + // Zlib's input buffer. + // + // Since calls to deflate/inflate will process data until the input is empty, or until the + // output is full, multiple calls to `pumpOnce()` may be required to process the entire + // message. We're done processing once either `result` is `Z_STREAM_END`, or we get + // `Z_BUF_ERROR` and did not write any more output. + size_t bufSize = 4096; + Array buffer = kj::heapArray(bufSize); + ctx.next_out = buffer.begin(); + ctx.avail_out = bufSize; + + int result = Z_OK; + + switch (mode) { + case Mode::COMPRESS: + result = deflate(&ctx, Z_SYNC_FLUSH); + KJ_REQUIRE(result == Z_OK || result == Z_BUF_ERROR || result == Z_STREAM_END, + "Compression failed", result); + break; + case Mode::DECOMPRESS: + result = inflate(&ctx, Z_SYNC_FLUSH); + KJ_REQUIRE(result == Z_OK || result == Z_BUF_ERROR || result == Z_STREAM_END, + "Decompression failed", result, " with reason", ctx.msg); + break; + } + + return Result { + result, + kj::mv(buffer), + bufSize - ctx.avail_out, + }; + } + + kj::Vector processLoop(kj::Maybe maxSize) { + // Since Zlib buffers the writes, we want to continue processing until there's nothing left. + kj::Vector output; + size_t totalBytesProcessed = 0; + for (;;) { + Result result = pumpOnce(); + + auto status = result.processResult; + auto bytesProcessed = result.size; + if (bytesProcessed > 0) { + output.add(kj::mv(result)); + totalBytesProcessed += bytesProcessed; + KJ_IF_MAYBE(m, maxSize) { + // This is only non-null for `receive` calls, so we must be decompressing. We don't want + // the decompressed message to OOM us, so let's make sure it's not too big. + KJ_REQUIRE(totalBytesProcessed < *m, + "Decompressed WebSocket message is too large"); + } + } + + if ((ctx.avail_in == 0 && ctx.avail_out != 0) || status == Z_STREAM_END) { + // If we're out of input to consume, and we have space in the output buffer, then we must + // have flushed the remaining message, so we're done pumping. Alternatively, if we found a + // BFINAL deflate block, then we know the stream is completely finished. + if (status == Z_STREAM_END) { + reset(); + } + return kj::mv(output); + } + } + } + + Mode mode; + z_stream ctx = {}; + }; +#endif // KJ_HAS_ZLIB + static constexpr byte OPCODE_CONTINUATION = 0; static constexpr byte OPCODE_TEXT = 1; static constexpr byte OPCODE_BINARY = 2; @@ -2543,6 +3234,12 @@ private: kj::Own stream; kj::Maybe maskKeyGenerator; + kj::Maybe compressionConfig; + WebSocketErrorHandler& errorHandler; +#if KJ_HAS_ZLIB + kj::Maybe compressionContext; + kj::Maybe decompressionContext; +#endif // KJ_HAS_ZLIB bool hasSentClose = false; bool disconnected = false; @@ -2564,6 +3261,9 @@ private: // Perhaps it should be renamed to `blockSend` or `writeQueue`. uint fragmentOpcode = 0; + bool fragmentCompressed = false; + // For fragmented messages, was the first frame compressed? + // Note that subsequent frames of a compressed message will not set the RSV1 bit. kj::Vector> fragments; // If `fragments` is non-empty, we've already received some fragments of a message. // `fragmentOpcode` is the original opcode. @@ -2597,18 +3297,48 @@ private: Mask mask(maskKeyGenerator); - kj::Array ownMessage; - if (!mask.isZero()) { - // Sadness, we have to make a copy to apply the mask. - ownMessage = kj::heapArray(message); + bool useCompression = false; + kj::Maybe> compressedMessage; + if (opcode == OPCODE_BINARY || opcode == OPCODE_TEXT) { + // We can only compress data frames. +#if KJ_HAS_ZLIB + KJ_IF_MAYBE(config, compressionConfig) { + useCompression = true; + // Compress `message` according to `compressionConfig`s outbound parameters. + auto& compressor = KJ_ASSERT_NONNULL(compressionContext); + if (config->outboundNoContextTakeover) { + // We must reset context on each message. + compressor.reset(); + } + auto& innerMessage = compressedMessage.emplace(compressor.processMessage(message)); + if (message.size() > 0) { + KJ_ASSERT(innerMessage.asPtr().endsWith({0x00, 0x00, 0xFF, 0xFF})); + message = innerMessage.slice(0, innerMessage.size() - 4); + // Strip 0x00 0x00 0xFF 0xFF off the tail. + // See: https://datatracker.ietf.org/doc/html/rfc7692#section-7.2.1 + } else { + // RFC 7692 (7.2.3.6) specifies that an empty uncompressed DEFLATE block (0x00) should be + // built if the compression library doesn't generate data when the input is empty. + message = compressedMessage.emplace(kj::heapArray({0x00})); + } + } +#endif // KJ_HAS_ZLIB + } + + kj::Array ownMessage; + if (!mask.isZero()) { + // Sadness, we have to make a copy to apply the mask. + ownMessage = kj::heapArray(message); mask.apply(ownMessage); message = ownMessage; } - sendParts[0] = sendHeader.compose(true, opcode, message.size(), mask); + sendParts[0] = sendHeader.compose(true, useCompression, opcode, message.size(), mask); sendParts[1] = message; + KJ_ASSERT(!sendHeader.hasRsv2or3(), "RSV bits 2 and 3 must be 0, as we do not currently " + "support an extension that would set these bits"); - auto promise = stream->write(sendParts); + auto promise = stream->write(sendParts).attach(kj::mv(compressedMessage)); if (!mask.isZero()) { promise = promise.attach(kj::mv(ownMessage)); } @@ -2635,9 +3365,9 @@ private: queuedPong = kj::mv(payload); } else KJ_IF_MAYBE(promise, sendingPong) { // We're still sending a previous pong. Wait for it to finish before sending ours. - sendingPong = promise->then(kj::mvCapture(payload, [this](kj::Array payload) mutable { + sendingPong = promise->then([this,payload=kj::mv(payload)]() mutable { return sendPong(kj::mv(payload)); - })); + }); } else { // We're not sending any pong currently. sendingPong = sendPong(kj::mv(payload)); @@ -2649,7 +3379,8 @@ private: return kj::READY_NOW; } - sendParts[0] = sendHeader.compose(true, OPCODE_PONG, payload.size(), Mask(maskKeyGenerator)); + sendParts[0] = sendHeader.compose(true, false, OPCODE_PONG, + payload.size(), Mask(maskKeyGenerator)); sendParts[1] = payload; return stream->write(sendParts).attach(kj::mv(payload)); } @@ -2702,19 +3433,24 @@ private: kj::Own upgradeToWebSocket( kj::Own stream, HttpInputStreamImpl& httpInput, HttpOutputStream& httpOutput, - kj::Maybe maskKeyGenerator) { + kj::Maybe maskKeyGenerator, + kj::Maybe compressionConfig = nullptr, + kj::Maybe errorHandler = nullptr) { // Create a WebSocket upgraded from an HTTP stream. auto releasedBuffer = httpInput.releaseBuffer(); return kj::heap(kj::mv(stream), maskKeyGenerator, - kj::mv(releasedBuffer.buffer), releasedBuffer.leftover, - httpOutput.flush()); + kj::mv(compressionConfig), errorHandler, + kj::mv(releasedBuffer.buffer), + releasedBuffer.leftover, httpOutput.flush()); } } // namespace kj::Own newWebSocket(kj::Own stream, - kj::Maybe maskKeyGenerator) { - return kj::heap(kj::mv(stream), maskKeyGenerator); + kj::Maybe maskKeyGenerator, + kj::Maybe compressionConfig, + kj::Maybe errorHandler) { + return kj::heap(kj::mv(stream), maskKeyGenerator, kj::mv(compressionConfig), errorHandler); } static kj::Promise pumpWebSocketLoop(WebSocket& from, WebSocket& to) { @@ -2868,13 +3604,18 @@ public: } } kj::Promise pumpTo(WebSocket& other) override { + auto onAbort = other.whenAborted() + .then([]() -> kj::Promise { + return KJ_EXCEPTION(DISCONNECTED, "WebSocket was aborted"); + }); + KJ_IF_MAYBE(s, state) { auto before = other.receivedByteCount(); return s->pumpTo(other).attach(kj::defer([this, &other, before]() { transferredBytes += other.receivedByteCount() - before; - })); + })).exclusiveJoin(kj::mv(onAbort)); } else { - return newAdaptedPromise(*this, other); + return newAdaptedPromise(*this, other).exclusiveJoin(kj::mv(onAbort)); } } @@ -3219,6 +3960,11 @@ private: canceler.release(); pipe.endState(*this); fulfiller.fulfill(); + }, [this](kj::Exception&& e) { + canceler.release(); + pipe.endState(*this); + fulfiller.reject(kj::cp(e)); + kj::throwRecoverableException(kj::mv(e)); })); } kj::Promise disconnect() override { @@ -3228,6 +3974,11 @@ private: pipe.endState(*this); fulfiller.fulfill(); return pipe.disconnect(); + }, [this](kj::Exception&& e) { + canceler.release(); + pipe.endState(*this); + fulfiller.reject(kj::cp(e)); + kj::throwRecoverableException(kj::mv(e)); })); } kj::Maybe> tryPumpFrom(WebSocket& other) override { @@ -3236,6 +3987,11 @@ private: canceler.release(); pipe.endState(*this); fulfiller.fulfill(); + }, [this](kj::Exception&& e) { + canceler.release(); + pipe.endState(*this); + fulfiller.reject(kj::cp(e)); + kj::throwRecoverableException(kj::mv(e)); })); } @@ -3403,8 +4159,846 @@ WebSocketPipe newWebSocketPipe() { } // ======================================================================================= +class AsyncIoStreamWithInitialBuffer final: public kj::AsyncIoStream { + // An AsyncIoStream implementation that accepts an initial buffer of data + // to be read out first, and is optionally capable of deferring writes + // until a given waitBeforeSend promise is fulfilled. + // + // Instances are created with a leftoverBackingBuffer (a kj::Array) + // and a leftover kj::ArrayPtr that provides a view into the backing + // buffer representing the queued data that is pending to be read. Calling + // tryRead will consume the data from the leftover first. Once leftover has + // been fully consumed, reads will defer to the underlying stream. +public: + AsyncIoStreamWithInitialBuffer(kj::Own stream, + kj::Array leftoverBackingBuffer, + kj::ArrayPtr leftover) + : stream(kj::mv(stream)), + leftoverBackingBuffer(kj::mv(leftoverBackingBuffer)), + leftover(leftover) {} + + void shutdownWrite() override { + stream->shutdownWrite(); + } + + // AsyncInputStream + Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + KJ_REQUIRE(maxBytes >= minBytes); + auto destination = static_cast(buffer); + + // If there are at least minBytes available in the leftover buffer... + if (leftover.size() >= minBytes) { + // We are going to immediately read up to maxBytes from the leftover buffer... + auto bytesToCopy = kj::min(maxBytes, leftover.size()); + memcpy(destination, leftover.begin(), bytesToCopy); + leftover = leftover.slice(bytesToCopy, leftover.size()); + + // If we've consumed all of the data in the leftover buffer, go ahead and free it. + if (leftover.size() == 0) { + leftoverBackingBuffer = nullptr; + } + + return bytesToCopy; + } else { + // We know here that leftover.size() is less than minBytes, but it might not + // be zero. Copy everything from leftover into the destination buffer then read + // the rest from the underlying stream. + auto bytesToCopy = leftover.size(); + KJ_DASSERT(bytesToCopy < minBytes); + + if (bytesToCopy > 0) { + memcpy(destination, leftover.begin(), bytesToCopy); + leftoverBackingBuffer = nullptr; + minBytes -= bytesToCopy; + maxBytes -= bytesToCopy; + KJ_DASSERT(minBytes >= 1); + KJ_DASSERT(maxBytes >= minBytes); + } + + return stream->tryRead(destination + bytesToCopy, minBytes, maxBytes) + .then([bytesToCopy](size_t amount) { return amount + bytesToCopy; }); + } + } + + Maybe tryGetLength() override { + // For a CONNECT pipe, we have no idea how much data there is going to be. + return nullptr; + } + + kj::Promise pumpTo(AsyncOutputStream& output, + uint64_t amount = kj::maxValue) override { + return pumpLoop(output, amount, 0); + } + + kj::Maybe> tryPumpFrom(AsyncInputStream& input, + uint64_t amount = kj::maxValue) override { + return input.pumpTo(*stream, amount); + } + + // AsyncOutputStream + Promise write(const void* buffer, size_t size) override { + return stream->write(buffer, size); + } + + Promise write(ArrayPtr> pieces) override { + return stream->write(pieces); + } + + Promise whenWriteDisconnected() override { + return stream->whenWriteDisconnected(); + } +private: + + kj::Promise pumpLoop( + kj::AsyncOutputStream& output, + uint64_t remaining, + uint64_t total) { + // If there is any data remaining in the leftover queue, we'll write it out first to output. + if (leftover.size() > 0) { + auto bytesToWrite = kj::min(leftover.size(), remaining); + return output.write(leftover.begin(), bytesToWrite).then( + [this, &output, remaining, total, bytesToWrite]() mutable -> kj::Promise { + leftover = leftover.slice(bytesToWrite, leftover.size()); + // If the leftover buffer has been fully consumed, go ahead and free it now. + if (leftover.size() == 0) { + leftoverBackingBuffer = nullptr; + } + remaining -= bytesToWrite; + total += bytesToWrite; + + if (remaining == 0) { + return total; + } + return pumpLoop(output, remaining, total); + }); + } else { + // Otherwise, we are just going to defer to stream's pumpTo, making sure to + // account for the total amount we've already written from the leftover queue. + return stream->pumpTo(output, remaining).then([total](auto read) { + return total + read; + }); + } + }; + + kj::Own stream; + kj::Array leftoverBackingBuffer; + kj::ArrayPtr leftover; +}; + +class AsyncIoStreamWithGuards final: public kj::AsyncIoStream, + private kj::TaskSet::ErrorHandler { + // This AsyncIoStream adds separate kj::Promise guards to both the input and output, + // delaying reads and writes until each relevant guard is resolved. + // + // When the read guard promise resolves, it may provide a released buffer that will + // be read out first. + // The primary use case for this impl is to support pipelined CONNECT calls which + // optimistically allow outbound writes to happen while establishing the CONNECT + // tunnel has not yet been completed. If the guard promise rejects, the stream + // is permanently errored and existing pending calls (reads and writes) are canceled. +public: + AsyncIoStreamWithGuards( + kj::Own inner, + kj::Promise> readGuard, + kj::Promise writeGuard) + : inner(kj::mv(inner)), + readGuard(handleReadGuard(kj::mv(readGuard))), + writeGuard(handleWriteGuard(kj::mv(writeGuard))), + tasks(*this) {} + + // AsyncInputStream + Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + if (readGuardReleased) { + return inner->tryRead(buffer, minBytes, maxBytes); + } + return readGuard.addBranch().then([this, buffer, minBytes, maxBytes] { + return inner->tryRead(buffer, minBytes, maxBytes); + }); + } + + Maybe tryGetLength() override { + return nullptr; + } + + kj::Promise pumpTo(AsyncOutputStream& output, uint64_t amount = kj::maxValue) override { + if (readGuardReleased) { + return inner->pumpTo(output, amount); + } + return readGuard.addBranch().then([this, &output, amount] { + return inner->pumpTo(output, amount); + }); + } + + // AsyncOutputStream + + void shutdownWrite() override { + if (writeGuardReleased) { + inner->shutdownWrite(); + } else { + tasks.add(writeGuard.addBranch().then([this]() { inner->shutdownWrite(); })); + } + } + + kj::Maybe> tryPumpFrom(AsyncInputStream& input, + uint64_t amount = kj::maxValue) override { + if (writeGuardReleased) { + return input.pumpTo(*inner, amount); + } else { + return writeGuard.addBranch().then([this,&input,amount]() { + return input.pumpTo(*inner, amount); + }); + } + } + + Promise write(const void* buffer, size_t size) override { + if (writeGuardReleased) { + return inner->write(buffer, size); + } else { + return writeGuard.addBranch().then([this,buffer,size]() { + return inner->write(buffer, size); + }); + } + } + + Promise write(ArrayPtr> pieces) override { + if (writeGuardReleased) { + return inner->write(pieces); + } else { + return writeGuard.addBranch().then([this, pieces]() { + return inner->write(pieces); + }); + } + } + + Promise whenWriteDisconnected() override { + if (writeGuardReleased) { + return inner->whenWriteDisconnected(); + } else { + return writeGuard.addBranch().then([this]() { + return inner->whenWriteDisconnected(); + }, [](kj::Exception&& e) mutable -> kj::Promise { + if (e.getType() == kj::Exception::Type::DISCONNECTED) { + return kj::READY_NOW; + } else { + return kj::mv(e); + } + }); + } + } + +private: + kj::Own inner; + kj::ForkedPromise readGuard; + kj::ForkedPromise writeGuard; + bool readGuardReleased = false; + bool writeGuardReleased = false; + kj::TaskSet tasks; + // Set of tasks used to call `shutdownWrite` after write guard is released. + + void taskFailed(kj::Exception&& exception) override { + // This `taskFailed` callback is only used when `shutdownWrite` is being called. Because we + // don't care about DISCONNECTED exceptions when `shutdownWrite` is called we ignore this + // class of exceptions here. + if (exception.getType() != kj::Exception::Type::DISCONNECTED) { + KJ_LOG(ERROR, exception); + } + } + + kj::ForkedPromise handleWriteGuard(kj::Promise guard) { + return guard.then([this]() { + writeGuardReleased = true; + }).fork(); + } + + kj::ForkedPromise handleReadGuard( + kj::Promise> guard) { + return guard.then([this](kj::Maybe buffer) mutable { + readGuardReleased = true; + KJ_IF_MAYBE(b, buffer) { + if (b->leftover.size() > 0) { + // We only need to replace the inner stream if a non-empty buffer is provided. + inner = heap( + kj::mv(inner), + kj::mv(b->buffer), b->leftover); + } + } + }).fork(); + } +}; + +// ======================================================================================= + +namespace _ { // private implementation details + +kj::ArrayPtr splitNext(kj::ArrayPtr& cursor, char delimiter) { + // Consumes and returns the next item in a delimited list. + // + // If a delimiter is found: + // - `cursor` is updated to point to the rest of the string after the delimiter. + // - The text before the delimiter is returned. + // If no delimiter is found: + // - `cursor` is updated to an empty string. + // - The text that had been in `cursor` is returned. + // + // (It's up to the caller to stop the loop once `cursor` is empty.) + KJ_IF_MAYBE(index, cursor.findFirst(delimiter)) { + auto part = cursor.slice(0, *index); + cursor = cursor.slice(*index + 1, cursor.size()); + return part; + } + kj::ArrayPtr result(kj::mv(cursor)); + cursor = nullptr; + + return result; +} + +void stripLeadingAndTrailingSpace(ArrayPtr& str) { + // Remove any leading/trailing spaces from `str`, modifying it in-place. + while (str.size() > 0 && (str[0] == ' ' || str[0] == '\t')) { + str = str.slice(1, str.size()); + } + while (str.size() > 0 && (str.back() == ' ' || str.back() == '\t')) { + str = str.slice(0, str.size() - 1); + } +} + +kj::Vector> splitParts(kj::ArrayPtr input, char delim) { + // Given a string `input` and a delimiter `delim`, split the string into a vector of substrings, + // separated by the delimiter. Note that leading/trailing whitespace is stripped from each element. + kj::Vector> parts; + + while (input.size() != 0) { + auto part = splitNext(input, delim); + stripLeadingAndTrailingSpace(part); + parts.add(kj::mv(part)); + } + + return parts; +} + +kj::Array toKeysAndVals(const kj::ArrayPtr>& params) { + // Given a collection of parameters (a single offer), parse the parameters into + // pairs. If the parameter contains an `=`, we set the `key` to everything before, and the `value` + // to everything after. Otherwise, we set the `key` to be the entire parameter. + // Either way, both the key and value (if it exists) are stripped of leading & trailing whitespace. + auto result = kj::heapArray(params.size()); + size_t count = 0; + for (const auto& param : params) { + kj::ArrayPtr key; + kj::Maybe> value; + + KJ_IF_MAYBE(index, param.findFirst('=')) { + // Found '=' so we have a value. + key = param.slice(0, *index); + stripLeadingAndTrailingSpace(key); + value = param.slice(*index + 1, param.size()); + KJ_IF_MAYBE(v, value) { + stripLeadingAndTrailingSpace(*v); + } + } else { + key = kj::mv(param); + } + + result[count].key = kj::mv(key); + result[count].val = kj::mv(value); + ++count; + } + return kj::mv(result); +} + +struct ParamType { + enum { CLIENT, SERVER } side; + enum { NO_CONTEXT_TAKEOVER, MAX_WINDOW_BITS } property; +}; + +inline kj::Maybe parseKeyName(kj::ArrayPtr& key) { + // Returns a `ParamType` struct if the `key` is valid and nullptr if invalid. + + if (key == "client_no_context_takeover"_kj) { + return ParamType { ParamType::CLIENT, ParamType::NO_CONTEXT_TAKEOVER }; + } else if (key == "server_no_context_takeover"_kj) { + return ParamType { ParamType::SERVER, ParamType::NO_CONTEXT_TAKEOVER }; + } else if (key == "client_max_window_bits"_kj) { + return ParamType { ParamType::CLIENT, ParamType::MAX_WINDOW_BITS }; + } else if (key == "server_max_window_bits"_kj) { + return ParamType { ParamType::SERVER, ParamType::MAX_WINDOW_BITS }; + } + return nullptr; +} + +kj::Maybe populateUnverifiedConfig(kj::Array& params) { + // Given a collection of pairs, attempt to populate an `UnverifiedConfig` struct. + // If the struct cannot be populated, we return null. + // + // This function populates the struct with what it finds, it does not perform bounds checking or + // concern itself with valid `Value`s (so long as the `Value` is non-empty). + // + // The following issues would prevent a struct from being populated: + // Key issues: + // - `Key` is invalid (see `parseKeyName()`). + // - `Key` is repeated. + // Value issues: + // - Got a `Value` when none was expected (only the `max_window_bits` parameters expect values). + // - Got an empty `Value` (0 characters, or all whitespace characters). + + if (params.size() > 4) { + // We expect 4 `Key`s at most, having more implies repeats/invalid keys are present. + return nullptr; + } + + UnverifiedConfig config; + + for (auto& param : params) { + KJ_IF_MAYBE(paramType, parseKeyName(param.key)) { + // `Key` is valid, but we still want to check for repeats. + const auto& side = paramType->side; + const auto& property = paramType->property; + + if (property == ParamType::NO_CONTEXT_TAKEOVER) { + auto& takeOverSetting = (side == ParamType::CLIENT) ? + config.clientNoContextTakeover : config.serverNoContextTakeover; + + if (takeOverSetting == true) { + // This `Key` is a repeat; invalid config. + return nullptr; + } + + if (param.val != nullptr) { + // The `x_no_context_takeover` parameter shouldn't have a value; invalid config. + return nullptr; + } + + takeOverSetting = true; + } else if (property == ParamType::MAX_WINDOW_BITS) { + auto& maxBitsSetting = + (side == ParamType::CLIENT) ? config.clientMaxWindowBits : config.serverMaxWindowBits; + + if (maxBitsSetting != nullptr) { + // This `Key` is a repeat; invalid config. + return nullptr; + } + + KJ_IF_MAYBE(value, param.val) { + if (value->size() == 0) { + // This is equivalent to `x_max_window_bits=`, since we got an "=" we expected a token + // to follow. + return nullptr; + } + maxBitsSetting = param.val; + } else { + // We know we got this `max_window_bits` parameter in a Request/Response, and we also know + // that it didn't include an "=" (otherwise the value wouldn't be null). + // It's important to retain the information that the parameter was received *without* a + // corresponding value, as this may determine whether the offer is valid or not. + // + // To retain this information, we'll set `maxBitsSetting` to be an empty ArrayPtr so this + // can be dealt with properly later. + maxBitsSetting = ArrayPtr(); + } + } + } else { + // Invalid parameter. + return nullptr; + } + } + return kj::mv(config); +} + +kj::Maybe validateCompressionConfig(UnverifiedConfig&& config, + bool isAgreement) { + // Verifies that the `config` is valid depending on whether we're validating a Request (offer) or + // a Response (agreement). This essentially consumes the `UnverifiedConfig` and converts it into a + // `CompressionParameters` struct. + CompressionParameters result; + + KJ_IF_MAYBE(serverBits, config.serverMaxWindowBits) { + if (serverBits->size() == 0) { + // This means `server_max_window_bits` was passed without a value. Since a value is required, + // this config is invalid. + return nullptr; + } else { + KJ_IF_MAYBE(bits, kj::str(*serverBits).tryParseAs()) { + if (*bits < 8 || 15 < *bits) { + // Out of range -- invalid. + return nullptr; + } + if (isAgreement) { + result.inboundMaxWindowBits = *bits; + } else { + result.outboundMaxWindowBits = *bits; + } + } else { + // Invalid ABNF, expected 1*DIGIT. + return nullptr; + } + } + } + + KJ_IF_MAYBE(clientBits, config.clientMaxWindowBits) { + if (clientBits->size() == 0) { + if (!isAgreement) { + // `client_max_window_bits` does not need to have a value in an offer, let's set it to 15 + // to get the best level of compression. + result.inboundMaxWindowBits = 15; + } else { + // `client_max_window_bits` must have a value in a Response. + return nullptr; + } + } else { + KJ_IF_MAYBE(bits, kj::str(*clientBits).tryParseAs()) { + if (*bits < 8 || 15 < *bits) { + // Out of range -- invalid. + return nullptr; + } + if (isAgreement) { + result.outboundMaxWindowBits = *bits; + } else { + result.inboundMaxWindowBits = *bits; + } + } else { + // Invalid ABNF, expected 1*DIGIT. + return nullptr; + } + } + } + + if (isAgreement) { + result.outboundNoContextTakeover = config.clientNoContextTakeover; + result.inboundNoContextTakeover = config.serverNoContextTakeover; + } else { + result.inboundNoContextTakeover = config.clientNoContextTakeover; + result.outboundNoContextTakeover = config.serverNoContextTakeover; + } + return kj::mv(result); +} + +inline kj::Maybe tryExtractParameters( + kj::Vector>& configuration, + bool isAgreement) { + // If the `configuration` is structured correctly and has no invalid parameters/values, we will + // return a populated `CompressionParameters` struct. + if (configuration.size() == 1) { + // Plain `permessage-deflate`. + return CompressionParameters{}; + } + auto params = configuration.slice(1, configuration.size()); + auto keyMaybeValuePairs = toKeysAndVals(params); + // Parse parameter strings into parameter[=value] pairs. + auto maybeUnverified = populateUnverifiedConfig(keyMaybeValuePairs); + KJ_IF_MAYBE(unverified, maybeUnverified) { + // Parsing succeeded, i.e. the parameter (`key`) names are valid and we don't have + // values for `x_no_context_takeover` parameters (the configuration is structured correctly). + // All that's left is to check the `x_max_window_bits` values (if any are present). + KJ_IF_MAYBE(validConfig, validateCompressionConfig(kj::mv(*unverified), isAgreement)) { + return kj::mv(*validConfig); + } + } + return nullptr; +} + +kj::Vector findValidExtensionOffers(StringPtr offers) { + // A function to be called by the client that wants to offer extensions through + // `Sec-WebSocket-Extensions`. This function takes the value of the header (a string) and + // populates a Vector of all the valid offers. + kj::Vector result; + + auto extensions = splitParts(offers, ','); + + for (const auto& offer : extensions) { + auto splitOffer = splitParts(offer, ';'); + if (splitOffer.front() != "permessage-deflate"_kj) { + continue; + } + KJ_IF_MAYBE(validated, tryExtractParameters(splitOffer, false)) { + // We need to swap the inbound/outbound properties since `tryExtractParameters` thinks we're + // parsing as the server (`isAgreement` is false). + auto tempCtx = validated->inboundNoContextTakeover; + validated->inboundNoContextTakeover = validated->outboundNoContextTakeover; + validated->outboundNoContextTakeover = tempCtx; + auto tempWindow = validated->inboundMaxWindowBits; + validated->inboundMaxWindowBits = validated->outboundMaxWindowBits; + validated->outboundMaxWindowBits = tempWindow; + result.add(kj::mv(*validated)); + } + } + + return kj::mv(result); +} + +kj::String generateExtensionRequest(const ArrayPtr& extensions) { + // Build the `Sec-WebSocket-Extensions` request from the validated parameters. + constexpr auto EXT = "permessage-deflate"_kj; + auto offers = kj::heapArray(extensions.size()); + size_t i = 0; + for (const auto& offer : extensions) { + offers[i] = kj::str(EXT); + if (offer.outboundNoContextTakeover) { + offers[i] = kj::str(offers[i], "; client_no_context_takeover"); + } + if (offer.inboundNoContextTakeover) { + offers[i] = kj::str(offers[i], "; server_no_context_takeover"); + } + if (offer.outboundMaxWindowBits != nullptr) { + auto w = KJ_ASSERT_NONNULL(offer.outboundMaxWindowBits); + offers[i] = kj::str(offers[i], "; client_max_window_bits=", w); + } + if (offer.inboundMaxWindowBits != nullptr) { + auto w = KJ_ASSERT_NONNULL(offer.inboundMaxWindowBits); + offers[i] = kj::str(offers[i], "; server_max_window_bits=", w); + } + ++i; + } + return kj::strArray(offers, ", "); +} + +kj::Maybe tryParseExtensionOffers(StringPtr offers) { + // Given a string of offers, accept the first valid offer by returning a `CompressionParameters` + // struct. If there are no valid offers, return `nullptr`. + auto splitOffers = splitParts(offers, ','); + + for (const auto& offer : splitOffers) { + auto splitOffer = splitParts(offer, ';'); + + if (splitOffer.front() != "permessage-deflate"_kj) { + // Extension token was invalid. + continue; + } + KJ_IF_MAYBE(config, tryExtractParameters(splitOffer, false)) { + return kj::mv(*config); + } + } + return nullptr; +} + +kj::Maybe tryParseAllExtensionOffers(StringPtr offers, + CompressionParameters manualConfig) { + // Similar to `tryParseExtensionOffers()`, however, this function is called when parsing in + // `MANUAL_COMPRESSION` mode. In some cases, the server's configuration might not support the + // `server_no_context_takeover` or `server_max_window_bits` parameters. Essentially, this function + // will look at all the client's offers, and accept the first one that it can support. + // + // We differentiate these functions because in `AUTOMATIC_COMPRESSION` mode, KJ can support these + // server restricting compression parameters. + auto splitOffers = splitParts(offers, ','); + + for (const auto& offer : splitOffers) { + auto splitOffer = splitParts(offer, ';'); + + if (splitOffer.front() != "permessage-deflate"_kj) { + // Extension token was invalid. + continue; + } + KJ_IF_MAYBE(config, tryExtractParameters(splitOffer, false)) { + KJ_IF_MAYBE(finalConfig, compareClientAndServerConfigs(*config, manualConfig)) { + // Found a compatible configuration between the server's config and client's offer. + return kj::mv(*finalConfig); + } + } + } + return nullptr; +} + +kj::Maybe compareClientAndServerConfigs(CompressionParameters requestConfig, + CompressionParameters manualConfig) { + // We start from the `manualConfig` and go through a series of filters to get a compression + // configuration that both the client and the server can agree upon. If no agreement can be made, + // we return null. + + CompressionParameters acceptedParameters = manualConfig; + + // We only need to modify `client_no_context_takeover` and `server_no_context_takeover` when + // `manualConfig` doesn't include them. + if (manualConfig.inboundNoContextTakeover == false) { + acceptedParameters.inboundNoContextTakeover = false; + } + + if (manualConfig.outboundNoContextTakeover == false) { + acceptedParameters.outboundNoContextTakeover = false; + if (requestConfig.outboundNoContextTakeover == true) { + // The client has told the server to not use context takeover. This is not a "hint", + // rather it is a restriction on the server's configuration. If the server does not support + // the configuration, it must reject the offer. + return nullptr; + } + } + + // client_max_window_bits + if (requestConfig.inboundMaxWindowBits != nullptr && + manualConfig.inboundMaxWindowBits != nullptr) { + // We want `min(requestConfig, manualConfig)` in this case. + auto reqBits = KJ_ASSERT_NONNULL(requestConfig.inboundMaxWindowBits); + auto manualBits = KJ_ASSERT_NONNULL(manualConfig.inboundMaxWindowBits); + if (reqBits < manualBits) { + acceptedParameters.inboundMaxWindowBits = reqBits; + } + } else { + // We will not reply with `client_max_window_bits`. + acceptedParameters.inboundMaxWindowBits = nullptr; + } + + // server_max_window_bits + if (manualConfig.outboundMaxWindowBits != nullptr) { + auto manualBits = KJ_ASSERT_NONNULL(manualConfig.outboundMaxWindowBits); + if (requestConfig.outboundMaxWindowBits != nullptr) { + // We want `min(requestConfig, manualConfig)` in this case. + auto reqBits = KJ_ASSERT_NONNULL(requestConfig.outboundMaxWindowBits); + if (reqBits < manualBits) { + acceptedParameters.outboundMaxWindowBits = reqBits; + } + } + } else { + acceptedParameters.outboundMaxWindowBits = nullptr; + if (requestConfig.outboundMaxWindowBits != nullptr) { + // The client has told the server to use `server_max_window_bits`. This is not a "hint", + // rather it is a restriction on the server's configuration. If the server does not support + // the configuration, it must reject the offer. + return nullptr; + } + } + return acceptedParameters; +} + +kj::String generateExtensionResponse(const CompressionParameters& parameters) { + // Build the `Sec-WebSocket-Extensions` response from the agreed parameters. + kj::String response = kj::str("permessage-deflate"); + if (parameters.inboundNoContextTakeover) { + response = kj::str(response, "; client_no_context_takeover"); + } + if (parameters.outboundNoContextTakeover) { + response = kj::str(response, "; server_no_context_takeover"); + } + if (parameters.inboundMaxWindowBits != nullptr) { + auto w = KJ_REQUIRE_NONNULL(parameters.inboundMaxWindowBits); + response = kj::str(response, "; client_max_window_bits=", w); + } + if (parameters.outboundMaxWindowBits != nullptr) { + auto w = KJ_REQUIRE_NONNULL(parameters.outboundMaxWindowBits); + response = kj::str(response, "; server_max_window_bits=", w); + } + return kj::mv(response); +} + +kj::OneOf tryParseExtensionAgreement( + const Maybe& clientOffer, + StringPtr agreedParameters) { + // Like `tryParseExtensionOffers`, but called by the client when parsing the server's Response. + // If the client must decline the agreement, we want to provide some details about what went wrong + // (since the client has to fail the connection). + constexpr auto FAILURE = "Server failed WebSocket handshake: "_kj; + auto e = KJ_EXCEPTION(FAILED); + + if (clientOffer == nullptr) { + // We've received extensions when we did not send any in the first place. + e.setDescription( + kj::str(FAILURE, "added Sec-WebSocket-Extensions when client did not offer any.")); + return kj::mv(e); + } + + auto offers = splitParts(agreedParameters, ','); + if (offers.size() != 1) { + constexpr auto EXPECT = "expected exactly one extension (permessage-deflate) but received " + "more than one."_kj; + e.setDescription(kj::str(FAILURE, EXPECT)); + return kj::mv(e); + } + auto splitOffer = splitParts(offers.front(), ';'); + + if (splitOffer.front() != "permessage-deflate"_kj) { + e.setDescription(kj::str(FAILURE, "response included a Sec-WebSocket-Extensions value that was " + "not permessage-deflate.")); + return kj::mv(e); + } + + // Verify the parameters of our single extension, and compare it with the clients original offer. + KJ_IF_MAYBE(config, tryExtractParameters(splitOffer, true)) { + const auto& client = KJ_ASSERT_NONNULL(clientOffer); + // The server might have ignored the client's hints regarding its compressor's configuration. + // That's fine, but as the client, we still want to use those outbound compression parameters. + if (config->outboundMaxWindowBits == nullptr) { + config->outboundMaxWindowBits = client.outboundMaxWindowBits; + } else KJ_IF_MAYBE(value, client.outboundMaxWindowBits) { + if (*value < KJ_ASSERT_NONNULL(config->outboundMaxWindowBits)) { + // If the client asked for a value smaller than what the server responded with, use the + // value that the client originally specified. + config->outboundMaxWindowBits = *value; + } + } + if (config->outboundNoContextTakeover == false) { + config->outboundNoContextTakeover = client.outboundNoContextTakeover; + } + return kj::mv(*config); + } + + // There was a problem parsing the server's `Sec-WebSocket-Extensions` response. + e.setDescription(kj::str(FAILURE, "the Sec-WebSocket-Extensions header in the Response included " + "an invalid value.")); + return kj::mv(e); +} +} // namespace _ (private) namespace { +class NullInputStream final: public kj::AsyncInputStream { +public: + NullInputStream(kj::Maybe expectedLength = size_t(0)) + : expectedLength(expectedLength) {} + + kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + return constPromise(); + } + + kj::Maybe tryGetLength() override { + return expectedLength; + } + + kj::Promise pumpTo(AsyncOutputStream& output, uint64_t amount) override { + return constPromise(); + } + +private: + kj::Maybe expectedLength; +}; + +class NullOutputStream final: public kj::AsyncOutputStream { +public: + Promise write(const void* buffer, size_t size) override { + return kj::READY_NOW; + } + Promise write(ArrayPtr> pieces) override { + return kj::READY_NOW; + } + Promise whenWriteDisconnected() override { + return kj::NEVER_DONE; + } + + // We can't really optimize tryPumpFrom() unless AsyncInputStream grows a skip() method. +}; + +class NullIoStream final: public kj::AsyncIoStream { +public: + void shutdownWrite() override {} + + Promise write(const void* buffer, size_t size) override { + return kj::READY_NOW; + } + Promise write(ArrayPtr> pieces) override { + return kj::READY_NOW; + } + Promise whenWriteDisconnected() override { + return kj::NEVER_DONE; + } + + kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + return constPromise(); + } + + kj::Maybe tryGetLength() override { + return kj::Maybe((uint64_t)0); + } + + kj::Promise pumpTo(AsyncOutputStream& output, uint64_t amount) override { + return constPromise(); + } +}; class HttpClientImpl final: public HttpClient, private HttpClientErrorHandler { @@ -3542,6 +5136,36 @@ public: connectionHeaders[HttpHeaders::BuiltinIndices::SEC_WEBSOCKET_VERSION] = "13"; connectionHeaders[HttpHeaders::BuiltinIndices::SEC_WEBSOCKET_KEY] = keyBase64; + kj::Maybe offeredExtensions; + kj::Maybe clientOffer; + kj::Vector extensions; + auto compressionMode = settings.webSocketCompressionMode; + + if (compressionMode == HttpClientSettings::MANUAL_COMPRESSION) { + KJ_IF_MAYBE(value, headers.get(HttpHeaderId::SEC_WEBSOCKET_EXTENSIONS)) { + // Strip all `Sec-WebSocket-Extensions` except for `permessage-deflate`. + extensions = _::findValidExtensionOffers(*value); + } + } else if (compressionMode == HttpClientSettings::AUTOMATIC_COMPRESSION) { + // If AUTOMATIC_COMPRESSION is enabled, we send `Sec-WebSocket-Extensions: permessage-deflate` + // to the server and ignore the `headers` provided by the caller. + extensions.add(CompressionParameters()); + } + + if (extensions.size() > 0) { + clientOffer = extensions.front(); + // We hold on to a copy of the client's most preferred offer so even if the server + // ignores `client_no_context_takeover` or `client_max_window_bits`, we can still refer to + // the original offer made by the client (thereby allowing the client to use these parameters). + // + // It's safe to ignore the remaining offers because: + // 1. Offers are ordered by preference. + // 2. `client_x` parameters are hints to the server and do not result in rejections, so the + // client is likely to put them in every offer anyways. + connectionHeaders[HttpHeaders::BuiltinIndices::SEC_WEBSOCKET_EXTENSIONS] = + offeredExtensions.emplace(_::generateExtensionRequest(extensions.asPtr())); + } + httpOutput.writeHeaders(headers.serializeRequest(HttpMethod::GET, url, connectionHeaders)); // No entity-body. @@ -3550,7 +5174,7 @@ public: auto id = ++counter; return httpInput.readResponseHeaders() - .then([this,id,keyBase64 = kj::mv(keyBase64)]( + .then([this,id,keyBase64 = kj::mv(keyBase64),clientOffer = kj::mv(clientOffer)]( HttpHeaders::ResponseOrProtocolError&& responseOrProtocolError) -> HttpClient::WebSocketResponse { KJ_SWITCH_ONEOF(responseOrProtocolError) { @@ -3592,11 +5216,27 @@ public: }); } + kj::Maybe compressionParameters; + if (settings.webSocketCompressionMode != HttpClientSettings::NO_COMPRESSION) { + KJ_IF_MAYBE(agreedParameters, responseHeaders.get( + HttpHeaderId::SEC_WEBSOCKET_EXTENSIONS)) { + + auto parseResult = _::tryParseExtensionAgreement(clientOffer, + *agreedParameters); + if (parseResult.is()) { + return settings.errorHandler.orDefault(*this).handleWebSocketProtocolError({ + 502, "Bad Gateway", parseResult.get().getDescription(), nullptr}); + } + compressionParameters.emplace(kj::mv(parseResult.get())); + } + } + return { response.statusCode, response.statusText, &httpInput.getHeaders(), - upgradeToWebSocket(kj::mv(ownStream), httpInput, httpOutput, settings.entropySource), + upgradeToWebSocket(kj::mv(ownStream), httpInput, httpOutput, settings.entropySource, + kj::mv(compressionParameters)), }; } else { upgraded = false; @@ -3629,6 +5269,85 @@ public: }); } + ConnectRequest connect( + kj::StringPtr host, const HttpHeaders& headers, HttpConnectSettings settings) override { + KJ_REQUIRE(!upgraded, + "can't make further requests on this HttpClient because it has been or is in the process " + "of being upgraded"); + KJ_REQUIRE(!closed, + "this HttpClient's connection has been closed by the server or due to an error"); + KJ_REQUIRE(httpOutput.canReuse(), + "can't start new request until previous request body has been fully written"); + + if (settings.useTls) { + KJ_UNIMPLEMENTED("This HttpClient does not support TLS."); + } + + closeWatcherTask = nullptr; + + // Mark upgraded for now even though the tunnel could fail, because we can't allow pipelined + // requests in the meantime. + upgraded = true; + + kj::StringPtr connectionHeaders[HttpHeaders::CONNECTION_HEADERS_COUNT]; + + httpOutput.writeHeaders(headers.serializeConnectRequest(host, connectionHeaders)); + + auto id = ++counter; + + auto split = httpInput.readResponseHeaders().then( + [this, id](HttpHeaders::ResponseOrProtocolError&& responseOrProtocolError) mutable + -> kj::Tuple, + kj::Promise>> { + KJ_SWITCH_ONEOF(responseOrProtocolError) { + KJ_CASE_ONEOF(response, HttpHeaders::Response) { + auto& responseHeaders = httpInput.getHeaders(); + if (response.statusCode < 200 || response.statusCode >= 300) { + // Any statusCode that is not in the 2xx range in interpreted + // as an HTTP response. Any status code in the 2xx range is + // interpreted as a successful CONNECT response. + closed = true; + return kj::tuple(ConnectRequest::Status( + response.statusCode, + kj::str(response.statusText), + kj::heap(responseHeaders.clone()), + httpInput.getEntityBody( + HttpInputStreamImpl::RESPONSE, + HttpConnectMethod(), + response.statusCode, + responseHeaders)), + KJ_EXCEPTION(DISCONNECTED, "the connect request was rejected")); + } + KJ_ASSERT(counter == id); + return kj::tuple(ConnectRequest::Status( + response.statusCode, + kj::str(response.statusText), + kj::heap(responseHeaders.clone()) + ), kj::Maybe(httpInput.releaseBuffer())); + } + KJ_CASE_ONEOF(protocolError, HttpHeaders::ProtocolError) { + closed = true; + auto response = handleProtocolError(protocolError); + return kj::tuple(ConnectRequest::Status( + response.statusCode, + kj::str(response.statusText), + kj::heap(response.headers->clone()), + kj::mv(response.body) + ), KJ_EXCEPTION(DISCONNECTED, "the connect request errored")); + } + } + KJ_UNREACHABLE; + }).split(); + + return ConnectRequest { + kj::mv(kj::get<0>(split)), // Promise for the result + heap( + kj::mv(ownStream), + kj::mv(kj::get<1>(split)) /* read guard (Promise for the ReleasedBuffer) */, + httpOutput.flush() /* write guard (void Promise) */) + }; + } + private: HttpInputStreamImpl httpInput; HttpOutputStream httpOutput; @@ -3696,7 +5415,8 @@ kj::Promise HttpClient::openWebSocket( }); } -kj::Promise> HttpClient::connect(kj::StringPtr host) { +HttpClient::ConnectRequest HttpClient::connect( + kj::StringPtr host, const HttpHeaders& headers, HttpConnectSettings settings) { KJ_UNIMPLEMENTED("CONNECT is not implemented by this HttpClient"); } @@ -3722,6 +5442,169 @@ HttpClient::WebSocketResponse HttpClientErrorHandler::handleWebSocketProtocolErr }; } +kj::Exception WebSocketErrorHandler::handleWebSocketProtocolError( + WebSocket::ProtocolError protocolError) { + return KJ_EXCEPTION(FAILED, kj::str("code=", protocolError.statusCode, + ": ", protocolError.description)); +} + +class PausableReadAsyncIoStream::PausableRead { +public: + PausableRead( + kj::PromiseFulfiller& fulfiller, PausableReadAsyncIoStream& parent, + void* buffer, size_t minBytes, size_t maxBytes) + : fulfiller(fulfiller), parent(parent), + operationBuffer(buffer), operationMinBytes(minBytes), operationMaxBytes(maxBytes), + innerRead(parent.tryReadImpl(operationBuffer, operationMinBytes, operationMaxBytes).then( + [&fulfiller](size_t size) mutable -> kj::Promise { + fulfiller.fulfill(kj::mv(size)); + return kj::READY_NOW; + }, [&fulfiller](kj::Exception&& err) { + fulfiller.reject(kj::mv(err)); + })) { + KJ_ASSERT(parent.maybePausableRead == nullptr); + parent.maybePausableRead = *this; + } + + ~PausableRead() noexcept(false) { + parent.maybePausableRead = nullptr; + } + + void pause() { + innerRead = nullptr; + } + + void unpause() { + innerRead = parent.tryReadImpl(operationBuffer, operationMinBytes, operationMaxBytes).then( + [this](size_t size) -> kj::Promise { + fulfiller.fulfill(kj::mv(size)); + return kj::READY_NOW; + }, [this](kj::Exception&& err) { + fulfiller.reject(kj::mv(err)); + }); + } + + void reject(kj::Exception&& exc) { + fulfiller.reject(kj::mv(exc)); + } +private: + kj::PromiseFulfiller& fulfiller; + PausableReadAsyncIoStream& parent; + + void* operationBuffer; + size_t operationMinBytes; + size_t operationMaxBytes; + // The parameters of the current tryRead call. Used to unpause a paused read. + + kj::Promise innerRead; + // The current pending read. +}; + +_::Deferred> PausableReadAsyncIoStream::trackRead() { + KJ_REQUIRE(!currentlyReading, "only one read is allowed at any one time"); + currentlyReading = true; + return kj::defer>([this]() { currentlyReading = false; }); +} + +_::Deferred> PausableReadAsyncIoStream::trackWrite() { + KJ_REQUIRE(!currentlyWriting, "only one write is allowed at any one time"); + currentlyWriting = true; + return kj::defer>([this]() { currentlyWriting = false; }); +} + +kj::Promise PausableReadAsyncIoStream::tryRead( + void* buffer, size_t minBytes, size_t maxBytes) { + return kj::newAdaptedPromise(*this, buffer, minBytes, maxBytes); +} + +kj::Promise PausableReadAsyncIoStream::tryReadImpl( + void* buffer, size_t minBytes, size_t maxBytes) { + // Hack: evalNow used here because `newAdaptedPromise` has a bug. We may need to change + // `PromiseDisposer::alloc` to not be `noexcept` but in order to do so we'll need to benchmark + // its performance. + return kj::evalNow([&]() -> kj::Promise { + return inner->tryRead(buffer, minBytes, maxBytes).attach(trackRead()); + }); +} + +kj::Maybe PausableReadAsyncIoStream::tryGetLength() { + return inner->tryGetLength(); +} + +kj::Promise PausableReadAsyncIoStream::pumpTo( + kj::AsyncOutputStream& output, uint64_t amount) { + return kj::unoptimizedPumpTo(*this, output, amount); +} + +kj::Promise PausableReadAsyncIoStream::write(const void* buffer, size_t size) { + return inner->write(buffer, size).attach(trackWrite()); +} + +kj::Promise PausableReadAsyncIoStream::write( + kj::ArrayPtr> pieces) { + return inner->write(pieces).attach(trackWrite()); +} + +kj::Maybe> PausableReadAsyncIoStream::tryPumpFrom( + kj::AsyncInputStream& input, uint64_t amount) { + auto result = inner->tryPumpFrom(input, amount); + KJ_IF_MAYBE(r, result) { + return r->attach(trackWrite()); + } else { + return nullptr; + } +} + +kj::Promise PausableReadAsyncIoStream::whenWriteDisconnected() { + return inner->whenWriteDisconnected(); +} + +void PausableReadAsyncIoStream::shutdownWrite() { + inner->shutdownWrite(); +} + +void PausableReadAsyncIoStream::abortRead() { + inner->abortRead(); +} + +kj::Maybe PausableReadAsyncIoStream::getFd() const { + return inner->getFd(); +} + +void PausableReadAsyncIoStream::pause() { + KJ_IF_MAYBE(pausable, maybePausableRead) { + pausable->pause(); + } +} + +void PausableReadAsyncIoStream::unpause() { + KJ_IF_MAYBE(pausable, maybePausableRead) { + pausable->unpause(); + } +} + +bool PausableReadAsyncIoStream::getCurrentlyReading() { + return currentlyReading; +} + +bool PausableReadAsyncIoStream::getCurrentlyWriting() { + return currentlyWriting; +} + +kj::Own PausableReadAsyncIoStream::takeStream() { + return kj::mv(inner); +} + +void PausableReadAsyncIoStream::replaceStream(kj::Own stream) { + inner = kj::mv(stream); +} + +void PausableReadAsyncIoStream::reject(kj::Exception&& exc) { + KJ_IF_MAYBE(pausable, maybePausableRead) { + pausable->reject(kj::mv(exc)); + } +} + // ======================================================================================= namespace { @@ -3752,11 +5635,11 @@ public: auto refcounted = getClient(); auto result = refcounted->client->request(method, url, headers, expectedBodySize); result.body = result.body.attach(kj::addRef(*refcounted)); - result.response = result.response.then(kj::mvCapture(refcounted, - [](kj::Own&& refcounted, Response&& response) { + result.response = result.response.then( + [refcounted=kj::mv(refcounted)](Response&& response) mutable { response.body = response.body.attach(kj::mv(refcounted)); return kj::mv(response); - })); + }); return result; } @@ -3764,8 +5647,8 @@ public: kj::StringPtr url, const HttpHeaders& headers) override { auto refcounted = getClient(); auto result = refcounted->client->openWebSocket(url, headers); - return result.then(kj::mvCapture(refcounted, - [](kj::Own&& refcounted, WebSocketResponse&& response) { + return result.then( + [refcounted=kj::mv(refcounted)](WebSocketResponse&& response) mutable { KJ_SWITCH_ONEOF(response.webSocketOrBody) { KJ_CASE_ONEOF(body, kj::Own) { response.webSocketOrBody = body.attach(kj::mv(refcounted)); @@ -3780,7 +5663,17 @@ public: } } return kj::mv(response); - })); + }); + } + + ConnectRequest connect( + kj::StringPtr host, const HttpHeaders& headers, HttpConnectSettings settings) override { + auto refcounted = getClient(); + auto request = refcounted->client->connect(host, headers, settings); + return ConnectRequest { + request.status.attach(kj::addRef(*refcounted)), + request.connection.attach(kj::mv(refcounted)) + }; } private: @@ -3875,6 +5768,75 @@ private: } }; +class TransitionaryAsyncIoStream final: public kj::AsyncIoStream { + // This specialised AsyncIoStream is used by NetworkHttpClient to support startTls. +public: + TransitionaryAsyncIoStream(kj::Own unencryptedStream) + : inner(kj::heap(kj::mv(unencryptedStream))) {} + + kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { + return inner->tryRead(buffer, minBytes, maxBytes); + } + + kj::Maybe tryGetLength() override { + return inner->tryGetLength(); + } + + kj::Promise pumpTo(kj::AsyncOutputStream& output, uint64_t amount) override { + return inner->pumpTo(output, amount); + } + + kj::Promise write(const void* buffer, size_t size) override { + return inner->write(buffer, size); + } + + kj::Promise write(kj::ArrayPtr> pieces) override { + return inner->write(pieces); + } + + kj::Maybe> tryPumpFrom( + kj::AsyncInputStream& input, uint64_t amount = kj::maxValue) override { + return inner->tryPumpFrom(input, amount); + } + + kj::Promise whenWriteDisconnected() override { + return inner->whenWriteDisconnected(); + } + + void shutdownWrite() override { + inner->shutdownWrite(); + } + + void abortRead() override { + inner->abortRead(); + } + + kj::Maybe getFd() const override { + return inner->getFd(); + } + + void startTls( + kj::SecureNetworkWrapper* wrapper, kj::StringPtr expectedServerHostname) { + // Pause any potential pending reads. + inner->pause(); + + KJ_ON_SCOPE_FAILURE({ + inner->reject(KJ_EXCEPTION(FAILED, "StartTls failed.")); + }); + + KJ_ASSERT(!inner->getCurrentlyReading() && !inner->getCurrentlyWriting(), + "Cannot call startTls while reads/writes are outstanding"); + kj::Promise> secureStream = + wrapper->wrapClient(inner->takeStream(), expectedServerHostname); + inner->replaceStream(kj::newPromisedStream(kj::mv(secureStream))); + // Resume any previous pending reads. + inner->unpause(); + } + +private: + kj::Own inner; +}; + class PromiseNetworkAddressHttpClient final: public HttpClient { // An HttpClient which waits for a promise to resolve then forwards all calls to the promised // client. @@ -3915,12 +5877,12 @@ public: // This gets complicated since request() returns a pair of a stream and a promise. auto urlCopy = kj::str(url); auto headersCopy = headers.clone(); - auto combined = promise.addBranch().then(kj::mvCapture(urlCopy, kj::mvCapture(headersCopy, - [this,method,expectedBodySize](HttpHeaders&& headers, kj::String&& url) + auto combined = promise.addBranch().then( + [this,method,expectedBodySize,url=kj::mv(urlCopy), headers=kj::mv(headersCopy)]() -> kj::Tuple, kj::Promise> { auto req = KJ_ASSERT_NONNULL(client)->request(method, url, headers, expectedBodySize); return kj::tuple(kj::mv(req.body), kj::mv(req.response)); - }))); + }); auto split = combined.split(); return { @@ -3937,10 +5899,30 @@ public: } else { auto urlCopy = kj::str(url); auto headersCopy = headers.clone(); - return promise.addBranch().then(kj::mvCapture(urlCopy, kj::mvCapture(headersCopy, - [this](HttpHeaders&& headers, kj::String&& url) { + return promise.addBranch().then( + [this,url=kj::mv(urlCopy),headers=kj::mv(headersCopy)]() { return KJ_ASSERT_NONNULL(client)->openWebSocket(url, headers); - }))); + }); + } + } + + ConnectRequest connect( + kj::StringPtr host, const HttpHeaders& headers, HttpConnectSettings settings) override { + KJ_IF_MAYBE(c, client) { + return c->get()->connect(host, headers, settings); + } else { + auto split = promise.addBranch().then( + [this, host=kj::str(host), headers=headers.clone(), settings]() mutable + -> kj::Tuple, + kj::Promise>> { + auto request = KJ_ASSERT_NONNULL(client)->connect(host, headers, kj::mv(settings)); + return kj::tuple(kj::mv(request.status), kj::mv(request.connection)); + }).split(); + + return ConnectRequest { + kj::mv(kj::get<0>(split)), + kj::newPromisedStream(kj::mv(kj::get<1>(split))) + }; } } @@ -3992,6 +5974,58 @@ public: return getClient(parsed).openWebSocket(path, headersCopy); } + ConnectRequest connect( + kj::StringPtr host, const HttpHeaders& headers, + HttpConnectSettings connectSettings) override { + // We want to connect directly instead of going through a proxy here. + // https://github.com/capnproto/capnproto/pull/1454#discussion_r900414879 + kj::Maybe>> addr; + if (connectSettings.useTls) { + kj::Network& tlsNet = KJ_REQUIRE_NONNULL(tlsNetwork, "this HttpClient doesn't support TLS"); + addr = tlsNet.parseAddress(host); + } else { + addr = network.parseAddress(host); + } + + auto split = KJ_ASSERT_NONNULL(addr).then([this](auto address) { + return address->connect().then([this](auto connection) + -> kj::Tuple, + kj::Promise>> { + return kj::tuple( + ConnectRequest::Status( + 200, + kj::str("OK"), + kj::heap(responseHeaderTable) // Empty headers + ), + kj::mv(connection)); + }).attach(kj::mv(address)); + }).split(); + + auto connection = kj::newPromisedStream(kj::mv(kj::get<1>(split))); + + if (!connectSettings.useTls) { + KJ_IF_MAYBE(wrapper, settings.tlsContext) { + KJ_IF_MAYBE(tlsStarter, connectSettings.tlsStarter) { + auto transitConnectionRef = kj::refcountedWrapper( + kj::heap(kj::mv(connection))); + Function(kj::StringPtr)> cb = + [wrapper, ref1 = transitConnectionRef->addWrappedRef()]( + kj::StringPtr expectedServerHostname) mutable { + ref1->startTls(wrapper, expectedServerHostname); + return kj::READY_NOW; + }; + connection = transitConnectionRef->addWrappedRef(); + *tlsStarter = kj::mv(cb); + } + } + } + + return ConnectRequest { + kj::mv(kj::get<0>(split)), + kj::mv(connection) + }; + } + private: kj::Timer& timer; const HttpHeaderTable& responseHeaderTable; @@ -4103,6 +6137,7 @@ namespace { class ConcurrencyLimitingHttpClient final: public HttpClient { public: + KJ_DISALLOW_COPY_AND_MOVE(ConcurrencyLimitingHttpClient); ConcurrencyLimitingHttpClient( kj::HttpClient& inner, uint maxConcurrentRequests, kj::Function countChangedCallback) @@ -4110,6 +6145,16 @@ public: maxConcurrentRequests(maxConcurrentRequests), countChangedCallback(kj::mv(countChangedCallback)) {} + ~ConcurrencyLimitingHttpClient() noexcept(false) { + if (concurrentRequests > 0) { + static bool logOnce KJ_UNUSED = ([&] { + KJ_LOG(ERROR, "ConcurrencyLimitingHttpClient getting destroyed when concurrent requests " + "are still active", concurrentRequests); + return true; + })(); + } + } + Request request(HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, kj::Maybe expectedBodySize = nullptr) override { if (concurrentRequests < maxConcurrentRequests) { @@ -4164,6 +6209,35 @@ public: return kj::mv(promise); } + ConnectRequest connect( + kj::StringPtr host, const kj::HttpHeaders& headers, HttpConnectSettings settings) override { + if (concurrentRequests < maxConcurrentRequests) { + auto counter = ConnectionCounter(*this); + auto response = inner.connect(host, headers, settings); + fireCountChanged(); + return attachCounter(kj::mv(response), kj::mv(counter)); + } + + auto paf = kj::newPromiseAndFulfiller(); + + auto split = paf.promise + .then([this, host=kj::str(host), headers=headers.clone(), settings] + (ConnectionCounter&& counter) mutable + -> kj::Tuple, + kj::Promise>> { + auto request = attachCounter(inner.connect(host, headers, settings), kj::mv(counter)); + return kj::tuple(kj::mv(request.status), kj::mv(request.connection)); + }).split(); + + pendingRequests.push(kj::mv(paf.fulfiller)); + fireCountChanged(); + + return ConnectRequest { + kj::mv(kj::get<0>(split)), + kj::newPromisedStream(kj::mv(kj::get<1>(split))) + }; + } + private: struct ConnectionCounter; @@ -4202,12 +6276,15 @@ private: }; void serviceQueue() { - if (concurrentRequests >= maxConcurrentRequests) { return; } - if (pendingRequests.empty()) { return; } - - auto fulfiller = kj::mv(pendingRequests.front()); - pendingRequests.pop(); - fulfiller->fulfill(ConnectionCounter(*this)); + while (concurrentRequests < maxConcurrentRequests && !pendingRequests.empty()) { + auto fulfiller = kj::mv(pendingRequests.front()); + pendingRequests.pop(); + // ConnectionCounter's destructor calls this function, so we can avoid unnecessary recursion + // if we only create a ConnectionCounter when we find a waiting fulfiller. + if (fulfiller->isWaiting()) { + fulfiller->fulfill(ConnectionCounter(*this)); + } + } } void fireCountChanged() { @@ -4251,6 +6328,21 @@ private: }; }); } + + static ConnectRequest attachCounter( + ConnectRequest&& request, + ConnectionCounter&& counter) { + // Notice here that we are only attaching the counter to the connection stream. In the case + // where the connect tunnel request is rejected and the status promise resolves with an + // errorBody, there is a possibility that the consuming code might drop the connection stream + // and the counter while the error body stream is still be consumed. Technically speaking that + // means we could potentially exceed our concurrency limit temporarily but we consider that + // acceptable here since the error body is an exception path (plus not requiring that we + // attach to the errorBody keeps ConnectionCounter from having to be a refcounted heap + // allocation). + request.connection = request.connection.attach(kj::mv(counter)); + return kj::mv(request); + } }; } @@ -4266,42 +6358,6 @@ kj::Own newConcurrencyLimitingHttpClient( namespace { -class NullInputStream final: public kj::AsyncInputStream { -public: - NullInputStream(kj::Maybe expectedLength = size_t(0)) - : expectedLength(expectedLength) {} - - kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override { - return size_t(0); - } - - kj::Maybe tryGetLength() override { - return expectedLength; - } - - kj::Promise pumpTo(AsyncOutputStream& output, uint64_t amount) override { - return uint64_t(0); - } - -private: - kj::Maybe expectedLength; -}; - -class NullOutputStream final: public kj::AsyncOutputStream { -public: - Promise write(const void* buffer, size_t size) override { - return kj::READY_NOW; - } - Promise write(ArrayPtr> pieces) override { - return kj::READY_NOW; - } - Promise whenWriteDisconnected() override { - return kj::NEVER_DONE; - } - - // We can't really optimize tryPumpFrom() unless AsyncInputStream grows a skip() method. -}; - class HttpClientAdapter final: public HttpClient { public: HttpClientAdapter(HttpService& service): service(service) {} @@ -4359,8 +6415,60 @@ public: return paf.promise.attach(kj::mv(responder)); } - kj::Promise> connect(kj::StringPtr host) override { - return service.connect(kj::mv(host)); + ConnectRequest connect( + kj::StringPtr host, const HttpHeaders& headers, HttpConnectSettings settings) override { + // We have to clone the host and the headers because HttpServer implementation are allowed to + // assusme that they remain valid until the service handler completes whereas HttpClient callers + // are allowed to destroy them immediately after the call. + auto hostCopy = kj::str(host); + auto headersCopy = kj::heap(headers.clone()); + + // 1. Create a new TwoWayPipe, one will be returned with the ConnectRequest, + // the other will be held by the ConnectResponseImpl. + auto pipe = kj::newTwoWayPipe(); + + // 2. Create a promise/fulfiller pair for the status. The promise will be + // returned with the ConnectResponse, the fulfiller will be held by the + // ConnectResponseImpl. + auto paf = kj::newPromiseAndFulfiller(); + + // 3. Create the ConnectResponseImpl + auto response = kj::refcounted(kj::mv(paf.fulfiller), + kj::mv(pipe.ends[0])); + + // 5. Call service.connect, passing in the tunnel. + // The call to tunnel->getConnectStream() returns a guarded stream that will buffer + // writes until the status is indicated by calling accept/reject. + auto connectStream = response->getConnectStream(); + auto promise = service.connect(hostCopy, *headersCopy, *connectStream, *response, settings) + .eagerlyEvaluate([response=kj::mv(response), + host=kj::mv(hostCopy), + headers=kj::mv(headersCopy), + connectStream=kj::mv(connectStream)](kj::Exception&& ex) mutable { + // A few things need to happen here. + // 1. We'll log the exception. + // 2. We'll break the pipe. + // 3. We'll reject the status promise if it is still pending. + // + // We'll do all of this within the ConnectResponseImpl, however, since it + // maintains the state necessary here. + response->handleException(kj::mv(ex), kj::mv(connectStream)); + }); + + // TODO(bug): There's a challenge with attaching the service.connect promise to the + // connection stream below in that the client will likely drop the connection as soon + // as it reads EOF, but the promise representing the service connect() call may still + // be running and want to do some cleanup after it has sent EOF. That cleanup will be + // canceled. For regular HTTP calls, DelayedEofInputStream was created to address this + // exact issue but with connect() being bidirectional it's rather more difficult. We + // want a delay similar to what DelayedEofInputStream adds but only when both directions + // have been closed. That currently is not possible until we have an alternative to + // shutdownWrite() that returns a Promise (e.g. Promise end()). For now, we can + // live with the current limitation. + return ConnectRequest { + kj::mv(paf.promise), + pipe.ends[1].attach(kj::mv(promise)), + }; } private: @@ -4658,6 +6766,119 @@ private: kj::Own> fulfiller; kj::Promise task = nullptr; }; + + class ConnectResponseImpl final: public HttpService::ConnectResponse, public kj::Refcounted { + public: + ConnectResponseImpl( + kj::Own> fulfiller, + kj::Own stream) + : fulfiller(kj::mv(fulfiller)), + streamAndFulfiller(initStreamsAndFulfiller(kj::mv(stream))) {} + + ~ConnectResponseImpl() noexcept(false) { + if (fulfiller->isWaiting() || streamAndFulfiller.fulfiller->isWaiting()) { + auto ex = KJ_EXCEPTION(FAILED, + "service's connect() implementation never called accept() nor reject()"); + if (fulfiller->isWaiting()) { + fulfiller->reject(kj::cp(ex)); + } + if (streamAndFulfiller.fulfiller->isWaiting()) { + streamAndFulfiller.fulfiller->reject(kj::mv(ex)); + } + } + } + + void accept(uint statusCode, kj::StringPtr statusText, const HttpHeaders& headers) override { + KJ_REQUIRE(statusCode >= 200 && statusCode < 300, "the statusCode must be 2xx for accept"); + respond(statusCode, statusText, headers); + } + + kj::Own reject( + uint statusCode, + kj::StringPtr statusText, + const HttpHeaders& headers, + kj::Maybe expectedBodySize = nullptr) override { + KJ_REQUIRE(statusCode < 200 || statusCode >= 300, + "the statusCode must not be 2xx for reject."); + auto pipe = kj::newOneWayPipe(); + respond(statusCode, statusText, headers, kj::mv(pipe.in)); + return kj::mv(pipe.out); + } + + private: + struct StreamsAndFulfiller { + // guarded is the wrapped/guarded stream that wraps a reference to + // the underlying stream but blocks reads until the connection is accepted + // or rejected. + // This will be handed off when getConnectStream() is called. + // The fulfiller is used to resolve the guard for the second stream. This will + // be fulfilled or rejected when accept/reject is called. + kj::Own guarded; + kj::Own> fulfiller; + }; + + kj::Own> fulfiller; + StreamsAndFulfiller streamAndFulfiller; + bool connectStreamDetached = false; + + StreamsAndFulfiller initStreamsAndFulfiller(kj::Own stream) { + auto paf = kj::newPromiseAndFulfiller(); + auto guarded = kj::heap( + kj::mv(stream), + kj::Maybe(nullptr), + kj::mv(paf.promise)); + return StreamsAndFulfiller { + kj::mv(guarded), + kj::mv(paf.fulfiller) + }; + } + + void handleException(kj::Exception&& ex, kj::Own connectStream) { + // Log the exception... + KJ_LOG(ERROR, "Error in HttpClientAdapter connect()", kj::cp(ex)); + // Reject the status promise if it is still pending... + if (fulfiller->isWaiting()) { + fulfiller->reject(kj::cp(ex)); + } + if (streamAndFulfiller.fulfiller->isWaiting()) { + // If the guard hasn't yet ben released, we can fail the pending reads by + // rejecting the fulfiller here. + streamAndFulfiller.fulfiller->reject(kj::mv(ex)); + } else { + // The guard has already been released at this point. + // TODO(connect): How to properly propagate the actual exception to the + // connect stream? Here we "simply" shut it down. + connectStream->abortRead(); + connectStream->shutdownWrite(); + } + } + + kj::Own getConnectStream() { + KJ_ASSERT(!connectStreamDetached, "the connect stream was already detached"); + connectStreamDetached = true; + return streamAndFulfiller.guarded.attach(kj::addRef(*this)); + } + + void respond(uint statusCode, + kj::StringPtr statusText, + const HttpHeaders& headers, + kj::Maybe> errorBody = nullptr) { + if (errorBody == nullptr) { + streamAndFulfiller.fulfiller->fulfill(); + } else { + streamAndFulfiller.fulfiller->reject( + KJ_EXCEPTION(DISCONNECTED, "the connect request was rejected")); + } + fulfiller->fulfill(HttpClient::ConnectRequest::Status( + statusCode, + kj::str(statusText), + kj::heap(headers.clone()), + kj::mv(errorBody))); + } + + friend class HttpClientAdapter; + }; + }; } // namespace @@ -4693,7 +6914,7 @@ public: return promise.ignoreResult().attach(kj::mv(out), kj::mv(innerResponse.body)); })); - return kj::joinPromises(promises.finish()); + return kj::joinPromisesFailFast(promises.finish()); } else { return client.openWebSocket(url, headers) .then([&response](HttpClient::WebSocketResponse&& innerResponse) -> kj::Promise { @@ -4703,7 +6924,7 @@ public: auto promises = kj::heapArrayBuilder>(2); promises.add(ws->pumpTo(*ws2)); promises.add(ws2->pumpTo(*ws)); - return kj::joinPromises(promises.finish()).attach(kj::mv(ws), kj::mv(ws2)); + return kj::joinPromisesFailFast(promises.finish()).attach(kj::mv(ws), kj::mv(ws2)); } KJ_CASE_ONEOF(body, kj::Own) { auto out = response.send( @@ -4718,8 +6939,69 @@ public: } } - kj::Promise> connect(kj::StringPtr host) override { - return client.connect(kj::mv(host)); + kj::Promise connect(kj::StringPtr host, + const HttpHeaders& headers, + kj::AsyncIoStream& connection, + ConnectResponse& response, + HttpConnectSettings settings) override { + KJ_REQUIRE(!headers.isWebSocket(), "WebSocket upgrade headers are not permitted in a connect."); + + auto request = client.connect(host, headers, settings); + + // This operates optimistically. In order to support pipelining, we connect the + // input and outputs streams immediately, even if we're not yet certain that the + // tunnel can actually be established. + auto promises = kj::heapArrayBuilder>(2); + + // For the inbound pipe (from the clients stream to the passed in stream) + // We want to guard reads pending the acceptance of the tunnel. If the + // tunnel is not accepted, the guard will be rejected, causing pending + // reads to fail. + auto paf = kj::newPromiseAndFulfiller>(); + auto io = kj::heap( + kj::mv(request.connection), + kj::mv(paf.promise) /* read guard */, + kj::READY_NOW /* write guard */); + + // Writing from connection to io is unguarded and allowed immediately. + promises.add(connection.pumpTo(*io).then([&io=*io](uint64_t size) { + io.shutdownWrite(); + })); + + promises.add(io->pumpTo(connection).then([&connection](uint64_t size) { + connection.shutdownWrite(); + })); + + auto pumpPromise = kj::joinPromisesFailFast(promises.finish()); + + return request.status.then( + [&response,&connection,fulfiller=kj::mv(paf.fulfiller), + pumpPromise=kj::mv(pumpPromise)] + (HttpClient::ConnectRequest::Status status) mutable -> kj::Promise { + if (status.statusCode >= 200 && status.statusCode < 300) { + // Release the read guard! + fulfiller->fulfill(kj::Maybe(nullptr)); + response.accept(status.statusCode, status.statusText, *status.headers); + return kj::mv(pumpPromise); + } else { + // If the connect request is rejected, we want to shutdown the tunnel + // and pipeline the status.errorBody to the AsyncOutputStream returned by + // reject if it exists. + pumpPromise = nullptr; + connection.shutdownWrite(); + fulfiller->reject(KJ_EXCEPTION(DISCONNECTED, "the connect request was rejected")); + KJ_IF_MAYBE(errorBody, status.errorBody) { + auto out = response.reject(status.statusCode, status.statusText, *status.headers, + errorBody->get()->tryGetLength()); + return (*errorBody)->pumpTo(*out).then([](uint64_t) -> kj::Promise { + return kj::READY_NOW; + }).attach(kj::mv(out), kj::mv(*errorBody)); + } else { + response.reject(status.statusCode, status.statusText, *status.headers, (uint64_t)0); + return kj::READY_NOW; + } + } + }).attach(kj::mv(io)); } private: @@ -4746,20 +7028,28 @@ kj::Promise HttpService::Response::sendError( return sendError(statusCode, statusText, HttpHeaders(headerTable)); } -kj::Promise> HttpService::connect(kj::StringPtr host) { +kj::Promise HttpService::connect( + kj::StringPtr host, + const HttpHeaders& headers, + kj::AsyncIoStream& connection, + ConnectResponse& response, + kj::HttpConnectSettings settings) { KJ_UNIMPLEMENTED("CONNECT is not implemented by this HttpService"); } class HttpServer::Connection final: private HttpService::Response, + private HttpService::ConnectResponse, private HttpServerErrorHandler { public: Connection(HttpServer& server, kj::AsyncIoStream& stream, - HttpService& service) + SuspendableHttpServiceFactory factory, kj::Maybe suspendedRequest, + bool wantCleanDrain) : server(server), stream(stream), - service(service), - httpInput(stream, server.requestHeaderTable), - httpOutput(stream) { + factory(kj::mv(factory)), + httpInput(makeHttpInput(stream, server.requestHeaderTable, kj::mv(suspendedRequest))), + httpOutput(stream), + wantCleanDrain(wantCleanDrain) { ++server.connectionCount; } ~Connection() noexcept(false) { @@ -4783,23 +7073,69 @@ public: return kj::mv(promise); } + KJ_IF_MAYBE(p, tunnelRejected) { + // reject() was called to reject a CONNECT request. Finish sending and close the connection. + // Don't log the exception because it's probably a side-effect of this. + auto promise = kj::mv(*p); + tunnelRejected = nullptr; + return kj::mv(promise); + } + return sendError(kj::mv(e)); }); } + SuspendedRequest suspend(SuspendableRequest& suspendable) { + KJ_REQUIRE(httpInput.canSuspend(), + "suspend() may only be called before the request body is consumed"); + KJ_DEFER(suspended = true); + auto released = httpInput.releaseBuffer(); + return { + kj::mv(released.buffer), + released.leftover, + suspendable.method, + suspendable.url, + suspendable.headers.cloneShallow(), + }; + } + private: HttpServer& server; kj::AsyncIoStream& stream; - HttpService& service; + + SuspendableHttpServiceFactory factory; + // Creates a new kj::Own for each request we handle on this connection. + HttpInputStreamImpl httpInput; HttpOutputStream httpOutput; - kj::Maybe currentMethod; + kj::Maybe> currentMethod; bool timedOut = false; bool closed = false; bool upgraded = false; - bool webSocketClosed = false; + bool webSocketOrConnectClosed = false; bool closeAfterSend = false; // True if send() should set Connection: close. + bool wantCleanDrain = false; + bool suspended = false; kj::Maybe> webSocketError; + kj::Maybe> tunnelRejected; + kj::Maybe>> tunnelWriteGuard; + + static HttpInputStreamImpl makeHttpInput( + kj::AsyncIoStream& stream, + const kj::HttpHeaderTable& table, + kj::Maybe suspendedRequest) { + // Constructor helper function to create our HttpInputStreamImpl. + + KJ_IF_MAYBE(sr, suspendedRequest) { + return HttpInputStreamImpl(stream, + sr->buffer.releaseAsChars(), + sr->leftover.asChars(), + sr->method, + sr->url, + kj::mv(sr->headers)); + } + return HttpInputStreamImpl(stream, table); + } kj::Promise loop(bool firstRequest) { if (!firstRequest && server.draining && httpInput.isCleanDrain()) { @@ -4818,7 +7154,32 @@ private: if (httpInput.isCleanDrain()) { // If we haven't buffered any data, then we can safely drain here, so allow the wait to // be canceled by the onDrain promise. - timeoutPromise = timeoutPromise.exclusiveJoin(server.onDrain.addBranch()); + auto cleanDrainPromise = server.onDrain.addBranch() + .then([this]() -> kj::Promise { + // This is a little tricky... drain() has been called, BUT we could have read some data + // into the buffer in the meantime, and we don't want to lose that. If any data has + // arrived, then we have no choice but to read the rest of the request and respond to + // it. + if (!httpInput.isCleanDrain()) { + return kj::NEVER_DONE; + } + + // OK... As far as we know, no data has arrived in the buffer. However, unfortunately, + // we don't *really* know that, because read() is asynchronous. It may have already + // delivered some bytes, but we just haven't received the notification yet, because it's + // still queued on the event loop. As a horrible hack, we use evalLast(), so that any + // such pending notifications get a chance to be delivered. + // TODO(someday): Does this actually work on Windows, where the notification could also + // be queued on the IOCP? + return kj::evalLast([this]() -> kj::Promise { + if (httpInput.isCleanDrain()) { + return kj::READY_NOW; + } else { + return kj::NEVER_DONE; + } + }); + }); + timeoutPromise = timeoutPromise.exclusiveJoin(kj::mv(cleanDrainPromise)); } firstByte = firstByte.exclusiveJoin(timeoutPromise.then([this]() -> bool { @@ -4829,7 +7190,7 @@ private: auto receivedHeaders = firstByte .then([this,firstRequest](bool hasData) - -> kj::Promise { + -> kj::Promise { if (hasData) { auto readHeaders = httpInput.readRequestHeaders(); if (!firstRequest) { @@ -4837,7 +7198,7 @@ private: // the first byte of a pipeline response. readHeaders = readHeaders.exclusiveJoin( server.timer.afterDelay(server.settings.headerTimeout) - .then([this]() -> HttpHeaders::RequestOrProtocolError { + .then([this]() -> HttpHeaders::RequestConnectOrProtocolError { timedOut = true; return HttpHeaders::ProtocolError { 408, "Request Timeout", @@ -4850,7 +7211,7 @@ private: // Client closed connection or pipeline timed out with no bytes received. This is not an // error, so don't report one. this->closed = true; - return HttpHeaders::RequestOrProtocolError(HttpHeaders::ProtocolError { + return HttpHeaders::RequestConnectOrProtocolError(HttpHeaders::ProtocolError { 408, "Request Timeout", "Client closed connection or connection timeout " "while waiting for request headers.", nullptr @@ -4860,9 +7221,11 @@ private: if (firstRequest) { // On the first request, the header timeout starts ticking immediately upon request opening. + // NOTE: Since we assume that the client wouldn't have formed a connection if they did not + // intend to send a request, we immediately treat this connection as having an active + // request, i.e. we do NOT cancel it if drain() is called. auto timeoutPromise = server.timer.afterDelay(server.settings.headerTimeout) - .exclusiveJoin(server.onDrain.addBranch()) - .then([this]() -> HttpHeaders::RequestOrProtocolError { + .then([this]() -> HttpHeaders::RequestConnectOrProtocolError { timedOut = true; return HttpHeaders::ProtocolError { 408, "Request Timeout", @@ -4873,7 +7236,7 @@ private: } return receivedHeaders - .then([this](HttpHeaders::RequestOrProtocolError&& requestOrProtocolError) + .then([this](HttpHeaders::RequestConnectOrProtocolError&& requestOrProtocolError) -> kj::Promise { if (timedOut) { // Client took too long to send anything, so we're going to close the connection. In @@ -4901,20 +7264,95 @@ private: } KJ_SWITCH_ONEOF(requestOrProtocolError) { + KJ_CASE_ONEOF(request, HttpHeaders::ConnectRequest) { + auto& headers = httpInput.getHeaders(); + + currentMethod = HttpConnectMethod(); + + // The HTTP specification says that CONNECT requests have no meaningful payload + // but stops short of saying that CONNECT *cannot* have a payload. Implementations + // can choose to either accept payloads or reject them. We choose to reject it. + // Specifically, if there are Content-Length or Transfer-Encoding headers in the + // request headers, we'll automatically reject the CONNECT request. + // + // The key implication here is that any data that immediately follows the headers + // block of the CONNECT request is considered to be part of the tunnel if it is + // established. + + KJ_IF_MAYBE(cl, headers.get(HttpHeaderId::CONTENT_LENGTH)) { + return sendError(HttpHeaders::ProtocolError { + 400, + "Bad Request"_kj, + "Bad Request"_kj, + nullptr, + }); + } + KJ_IF_MAYBE(te, headers.get(HttpHeaderId::TRANSFER_ENCODING)) { + return sendError(HttpHeaders::ProtocolError { + 400, + "Bad Request"_kj, + "Bad Request"_kj, + nullptr, + }); + } + + SuspendableRequest suspendable(*this, HttpConnectMethod(), request.authority, headers); + auto maybeService = factory(suspendable); + + if (suspended) { + return false; + } + + auto service = KJ_ASSERT_NONNULL(kj::mv(maybeService), + "SuspendableHttpServiceFactory did not suspend, but returned nullptr."); + auto connectStream = getConnectStream(); + auto promise = service->connect( + request.authority, headers, *connectStream, *this, {}) + .attach(kj::mv(service), kj::mv(connectStream)); + return promise.then([this]() mutable -> kj::Promise { + KJ_IF_MAYBE(p, tunnelRejected) { + // reject() was called to reject a CONNECT attempt. + // Finish sending and close the connection. + auto promise = kj::mv(*p); + tunnelRejected = nullptr; + return kj::mv(promise); + } + + if (httpOutput.isBroken()) { + return false; + } + + return httpOutput.flush().then([]() mutable -> kj::Promise { + // There is really no reasonable path to reusing a CONNECT connection. + return false; + }); + }); + } KJ_CASE_ONEOF(request, HttpHeaders::Request) { auto& headers = httpInput.getHeaders(); currentMethod = request.method; - auto body = httpInput.getEntityBody( - HttpInputStreamImpl::REQUEST, request.method, 0, headers); + + SuspendableRequest suspendable(*this, request.method, request.url, headers); + auto maybeService = factory(suspendable); + + if (suspended) { + return false; + } + + auto service = KJ_ASSERT_NONNULL(kj::mv(maybeService), + "SuspendableHttpServiceFactory did not suspend, but returned nullptr."); // TODO(perf): If the client disconnects, should we cancel the response? Probably, to // prevent permanent deadlock. It's slightly weird in that arguably the client should // be able to shutdown the upstream but still wait on the downstream, but I believe many // other HTTP servers do similar things. - auto promise = service.request( - request.method, request.url, headers, *body, *this); + auto body = httpInput.getEntityBody( + HttpInputStreamImpl::REQUEST, request.method, 0, headers); + + auto promise = service->request( + request.method, request.url, headers, *body, *this).attach(kj::mv(service)); return promise.then([this, body = kj::mv(body)]() mutable -> kj::Promise { // Response done. Await next request. @@ -4927,7 +7365,7 @@ private: if (upgraded) { // We've upgraded to WebSocket, and by now we should have closed the WebSocket. - if (!webSocketClosed) { + if (!webSocketOrConnectClosed) { // This is gonna segfault later so abort now instead. KJ_LOG(FATAL, "Accepted WebSocket object must be destroyed before HttpService " "request handler completes."); @@ -4956,9 +7394,14 @@ private: if (httpInput.canReuse()) { // Things look clean. Go ahead and accept the next request. - // Note that we don't have to handle server.draining here because we'll take care of - // it the next time around the loop. - return loop(false); + if (closeAfterSend) { + // We sent Connection: close, so drop the connection now. + return false; + } else { + // Note that we don't have to handle server.draining here because we'll take care + // of it the next time around the loop. + return loop(false); + } } else { // Apparently, the application did not read the request body. Maybe this is a bug, // or maybe not: maybe the client tried to upload too much data and the application @@ -4971,13 +7414,25 @@ private: // within its rights to start a new request. If we close the socket now, we might // interrupt that new request. // + // Or maybe we did send `Connection: close`, as indicated by `closeAfterSend` being + // true. Even in that case, we should still try to read and ignore the request, + // otherwise when we close the connection the client may get a "connection reset" + // error before they get a chance to actually read the response body that we sent + // them. + // // There's no way we can get out of this perfectly cleanly. HTTP just isn't good // enough at connection management. The best we can do is give the client some grace // period and then abort the connection. auto dummy = kj::heap(); - auto lengthGrace = body->pumpTo(*dummy, server.settings.canceledUploadGraceBytes) - .then([this](size_t amount) { + auto lengthGrace = kj::evalNow([&]() { + return body->pumpTo(*dummy, server.settings.canceledUploadGraceBytes); + }).catch_([](kj::Exception&& e) -> uint64_t { + // Reading from the input failed in some way. This may actually be the whole + // reason we got here in the first place so don't propagate this error, just + // give up on discarding the input. + return 0; // This zero is ignored but `canReuse()` will return false below. + }).then([this](uint64_t amount) { if (httpInput.canReuse()) { // Success, we can continue. return true; @@ -4993,11 +7448,12 @@ private: return lengthGrace.exclusiveJoin(kj::mv(timeGrace)) .then([this](bool clean) -> kj::Promise { - if (clean) { + if (clean && !closeAfterSend) { // We recovered. Continue loop. return loop(false); } else { - // Client still not done. Return broken. + // Client still not done, or we sent Connection: close and so want to drop the + // connection anyway. Return broken. return false; } }); @@ -5030,37 +7486,46 @@ private: if (!closeAfterSend) { // Check if application wants us to close connections. - KJ_IF_MAYBE(c, server.settings.callbacks) { + // + // If the application used listenHttpClientDrain() to listen, then it expects that after a + // clean drain, the connection is still open and can receive more requests. Otherwise, after + // receiving drain(), we will close the connection, so we should send a `Connection: close` + // header. + if (server.draining && !wantCleanDrain) { + closeAfterSend = true; + } else KJ_IF_MAYBE(c, server.settings.callbacks) { + // The application has registered its own callback to decide whether to send + // `Connection: close`. if (c->shouldClose()) { closeAfterSend = true; } } } - // TODO(0.10): If `server.draining`, we should probably set `closeAfterSend` -- UNLESS the - // connection was created using listenHttpCleanDrain(), in which case the application may - // intend to continue using the connection. - if (closeAfterSend) { connectionHeaders[HttpHeaders::BuiltinIndices::CONNECTION] = "close"; } + bool isHeadRequest = method.tryGet().map([](auto& m) { + return m == HttpMethod::HEAD; + }).orDefault(false); + if (statusCode == 204 || statusCode == 304) { // No entity-body. } else if (statusCode == 205) { // Status code 205 also has no body, but unlike 204 and 304, it must explicitly encode an - // empty body, e.g. using content-length: 0. I'm guessing this is one of those things, where - // some early clients expected an explicit body while others assumed an empty body, and so - // the standard had to choose the common denominator. + // empty body, e.g. using content-length: 0. I'm guessing this is one of those things, + // where some early clients expected an explicit body while others assumed an empty body, + // and so the standard had to choose the common denominator. // // Spec: https://tools.ietf.org/html/rfc7231#section-6.3.6 connectionHeaders[HttpHeaders::BuiltinIndices::CONTENT_LENGTH] = "0"; } else KJ_IF_MAYBE(s, expectedBodySize) { - // HACK: We interpret a zero-length expected body length on responses to HEAD requests to mean - // "don't set a Content-Length header at all." This provides a way to omit a body header on - // HEAD responses with non-null-body status codes. This is a hack that *only* makes sense - // for HEAD responses. - if (method != HttpMethod::HEAD || *s > 0) { + // HACK: We interpret a zero-length expected body length on responses to HEAD requests to + // mean "don't set a Content-Length header at all." This provides a way to omit a body + // header on HEAD responses with non-null-body status codes. This is a hack that *only* + // makes sense for HEAD responses. + if (!isHeadRequest || *s > 0) { lengthStr = kj::str(*s); connectionHeaders[HttpHeaders::BuiltinIndices::CONTENT_LENGTH] = lengthStr; } @@ -5071,7 +7536,7 @@ private: // For HEAD requests, if the application specified a Content-Length or Transfer-Encoding // header, use that instead of whatever we decided above. kj::ArrayPtr connectionHeadersArray = connectionHeaders; - if (method == HttpMethod::HEAD) { + if (isHeadRequest) { if (headers.get(HttpHeaderId::CONTENT_LENGTH) != nullptr || headers.get(HttpHeaderId::TRANSFER_ENCODING) != nullptr) { connectionHeadersArray = connectionHeadersArray @@ -5083,7 +7548,7 @@ private: statusCode, statusText, connectionHeadersArray)); kj::Own bodyStream; - if (method == HttpMethod::HEAD) { + if (isHeadRequest) { // Ignore entity-body. httpOutput.finishBody(); return heap(); @@ -5104,13 +7569,9 @@ private: "can't call acceptWebSocket() if the request headers didn't have Upgrade: WebSocket"); auto method = KJ_REQUIRE_NONNULL(currentMethod, "already called send()"); - // Unlike send(), we neither need nor want to null out currentMethod. The error cases below - // depend on it being non-null to allow error responses to be sent, and the happy path expects - // it to be GET. - - if (method != HttpMethod::GET) { - return sendWebSocketError("WebSocket must be initiated with a GET request."); - } + KJ_REQUIRE(method.tryGet().map([](auto& m) { + return m == HttpMethod::GET; + }).orDefault(false), "WebSocket must be initiated with a GET request."); if (requestHeaders.get(HttpHeaderId::SEC_WEBSOCKET_VERSION).orDefault(nullptr) != "13") { return sendWebSocketError("The requested WebSocket version is not supported."); @@ -5123,12 +7584,50 @@ private: return sendWebSocketError("Missing Sec-WebSocket-Key"); } + kj::Maybe acceptedParameters; + kj::String agreedParameters; + auto compressionMode = server.settings.webSocketCompressionMode; + if (compressionMode == HttpServerSettings::AUTOMATIC_COMPRESSION) { + // If AUTOMATIC_COMPRESSION is enabled, we ignore the `headers` passed by the application and + // strictly refer to the `requestHeaders` from the client. + KJ_IF_MAYBE(value, requestHeaders.get(HttpHeaderId::SEC_WEBSOCKET_EXTENSIONS)) { + // Perform compression parameter negotiation. + KJ_IF_MAYBE(config, _::tryParseExtensionOffers(*value)) { + acceptedParameters = kj::mv(*config); + } + } + } else if (compressionMode == HttpServerSettings::MANUAL_COMPRESSION) { + // If MANUAL_COMPRESSION is enabled, we use the `headers` passed in by the application, and + // try to find a configuration that respects both the server's preferred configuration, + // as well as the client's requested configuration. + KJ_IF_MAYBE(value, headers.get(HttpHeaderId::SEC_WEBSOCKET_EXTENSIONS)) { + // First, we get the manual configuration using `headers`. + KJ_IF_MAYBE(manualConfig, _::tryParseExtensionOffers(*value)) { + KJ_IF_MAYBE(requestOffers, requestHeaders.get(HttpHeaderId::SEC_WEBSOCKET_EXTENSIONS)) { + // Next, we to find a configuration that both the client and server can accept. + acceptedParameters = _::tryParseAllExtensionOffers(*requestOffers, *manualConfig); + } + } + } + } + auto websocketAccept = generateWebSocketAccept(key); kj::StringPtr connectionHeaders[HttpHeaders::WEBSOCKET_CONNECTION_HEADERS_COUNT]; connectionHeaders[HttpHeaders::BuiltinIndices::SEC_WEBSOCKET_ACCEPT] = websocketAccept; connectionHeaders[HttpHeaders::BuiltinIndices::UPGRADE] = "websocket"; connectionHeaders[HttpHeaders::BuiltinIndices::CONNECTION] = "Upgrade"; + KJ_IF_MAYBE(parameters, acceptedParameters) { + agreedParameters = _::generateExtensionResponse(*parameters); + connectionHeaders[HttpHeaders::BuiltinIndices::SEC_WEBSOCKET_EXTENSIONS] = agreedParameters; + } + + // Since we're about to write headers, we should nullify `currentMethod`. This tells + // `sendError(kj::Exception)` (called from `HttpServer::Connection::startLoop()`) not to expose + // the `HttpService::Response&` reference to the HttpServer's error `handleApplicationError()` + // callback. This prevents the error handler from inadvertently trying to send another error on + // the connection. + currentMethod = nullptr; httpOutput.writeHeaders(headers.serializeResponse( 101, "Switching Protocols", connectionHeaders)); @@ -5136,12 +7635,13 @@ private: upgraded = true; // We need to give the WebSocket an Own, but we only have a reference. This is // safe because the application is expected to drop the WebSocket object before returning - // from the request handler. For some extra safety, we check that webSocketClosed has been - // set true when the handler returns. - auto deferNoteClosed = kj::defer([this]() { webSocketClosed = true; }); + // from the request handler. For some extra safety, we check that webSocketOrConnectClosed has + // been set true when the handler returns. + auto deferNoteClosed = kj::defer([this]() { webSocketOrConnectClosed = true; }); kj::Own ownStream(&stream, kj::NullDisposer::instance); return upgradeToWebSocket(ownStream.attach(kj::mv(deferNoteClosed)), - httpInput, httpOutput, nullptr); + httpInput, httpOutput, nullptr, kj::mv(acceptedParameters), + server.settings.webSocketErrorHandler); } kj::Promise sendError(HttpHeaders::ProtocolError protocolError) { @@ -5151,9 +7651,7 @@ private: // HttpService, meaning no response has been sent and we can provide a Response object. auto promise = server.settings.errorHandler.orDefault(*this).handleClientProtocolError( kj::mv(protocolError), *this); - - return promise.then([this]() { return httpOutput.flush(); }) - .then([]() { return false; }); // loop ends after flush + return finishSendingError(kj::mv(promise)); } kj::Promise sendError(kj::Exception&& exception) { @@ -5162,9 +7660,7 @@ private: // We only provide the Response object if we know we haven't already sent a response. auto promise = server.settings.errorHandler.orDefault(*this).handleApplicationError( kj::mv(exception), currentMethod.map([this](auto&&) -> Response& { return *this; })); - - return promise.then([this]() { return httpOutput.flush(); }) - .then([]() { return false; }); // loop ends after flush + return finishSendingError(kj::mv(promise)); } kj::Promise sendError() { @@ -5172,9 +7668,19 @@ private: // We can provide a Response object, since none has already been sent. auto promise = server.settings.errorHandler.orDefault(*this).handleNoResponse(*this); + return finishSendingError(kj::mv(promise)); + } - return promise.then([this]() { return httpOutput.flush(); }) - .then([]() { return false; }); // loop ends after flush + kj::Promise finishSendingError(kj::Promise promise) { + return promise.then([this]() -> kj::Promise { + if (httpOutput.isBroken()) { + // Skip flush for broken streams, since it will throw an exception that may be worse than + // the one we just handled. + return kj::READY_NOW; + } else { + return httpOutput.flush(); + } + }).then([]() { return false; }); // loop ends after flush } kj::Own sendWebSocketError(StringPtr errorMessage) { @@ -5221,6 +7727,57 @@ private: return kj::heap(KJ_EXCEPTION(FAILED, "received bad WebSocket handshake", errorMessage)); } + + kj::Own getConnectStream() { + // Returns an AsyncIoStream over the internal stream but that waits for a Promise to be + // resolved to allow writes after either accept or reject are called. Reads are allowed + // immediately. + KJ_REQUIRE(tunnelWriteGuard == nullptr, "the tunnel stream was already retrieved"); + auto paf = kj::newPromiseAndFulfiller(); + tunnelWriteGuard = kj::mv(paf.fulfiller); + + kj::Own ownStream(&stream, kj::NullDisposer::instance); + auto releasedBuffer = httpInput.releaseBuffer(); + auto deferNoteClosed = kj::defer([this]() { webSocketOrConnectClosed = true; }); + return kj::heap( + kj::heap( + kj::mv(ownStream), + kj::mv(releasedBuffer.buffer), + releasedBuffer.leftover).attach(kj::mv(deferNoteClosed)), + kj::Maybe(nullptr), + kj::mv(paf.promise)); + } + + void accept(uint statusCode, kj::StringPtr statusText, const HttpHeaders& headers) override { + auto method = KJ_REQUIRE_NONNULL(currentMethod, "already called send()"); + currentMethod = nullptr; + KJ_ASSERT(method.is(), "only use accept() with CONNECT requests"); + KJ_REQUIRE(statusCode >= 200 && statusCode < 300, "the statusCode must be 2xx for accept"); + tunnelRejected = nullptr; + + auto& fulfiller = KJ_ASSERT_NONNULL(tunnelWriteGuard, "the tunnel stream was not initialized"); + httpOutput.writeHeaders(headers.serializeResponse(statusCode, statusText)); + auto promise = httpOutput.flush().then([&fulfiller]() { + fulfiller->fulfill(); + }).eagerlyEvaluate(nullptr); + fulfiller = fulfiller.attach(kj::mv(promise)); + } + + kj::Own reject( + uint statusCode, + kj::StringPtr statusText, + const HttpHeaders& headers, + kj::Maybe expectedBodySize) override { + auto method = KJ_REQUIRE_NONNULL(currentMethod, "already called send()"); + KJ_REQUIRE(method.is(), "Only use reject() with CONNECT requests."); + KJ_REQUIRE(statusCode < 200 || statusCode >= 300, "the statusCode must not be 2xx for reject."); + tunnelRejected = Maybe>(true); + + auto& fulfiller = KJ_ASSERT_NONNULL(tunnelWriteGuard, "the tunnel stream was not initialized"); + fulfiller->reject(KJ_EXCEPTION(DISCONNECTED, "the tunnel request was rejected")); + closeAfterSend = true; + return send(statusCode, statusText, headers, expectedBodySize); + } }; HttpServer::HttpServer(kj::Timer& timer, const HttpHeaderTable& requestHeaderTable, @@ -5262,18 +7819,13 @@ kj::Promise HttpServer::listenHttp(kj::ConnectionReceiver& port) { kj::Promise HttpServer::listenLoop(kj::ConnectionReceiver& port) { return port.accept() .then([this,&port](kj::Own&& connection) -> kj::Promise { - if (draining) { - // Can get here if we *just* started draining. - return kj::READY_NOW; - } - - tasks.add(listenHttp(kj::mv(connection))); + tasks.add(kj::evalNow([&]() { return listenHttp(kj::mv(connection)); })); return listenLoop(port); }); } kj::Promise HttpServer::listenHttp(kj::Own connection) { - auto promise = listenHttpCleanDrain(*connection).ignoreResult(); + auto promise = listenHttpImpl(*connection, false /* wantCleanDrain */).ignoreResult(); // eagerlyEvaluate() to maintain historical guarantee that this method eagerly closes the // connection when done. @@ -5281,19 +7833,54 @@ kj::Promise HttpServer::listenHttp(kj::Own connection) } kj::Promise HttpServer::listenHttpCleanDrain(kj::AsyncIoStream& connection) { - kj::Own obj; + return listenHttpImpl(connection, true /* wantCleanDrain */); +} + +kj::Promise HttpServer::listenHttpImpl(kj::AsyncIoStream& connection, bool wantCleanDrain) { + kj::Own srv; KJ_SWITCH_ONEOF(service) { KJ_CASE_ONEOF(ptr, HttpService*) { - obj = heap(*this, connection, *ptr); + // Fake Own okay because we can assume the HttpService outlives this HttpServer, and we can + // assume `this` HttpServer outlives the returned `listenHttpCleanDrain()` promise, which will + // own the fake Own. + srv = kj::Own(ptr, kj::NullDisposer::instance); } KJ_CASE_ONEOF(func, HttpServiceFactory) { - auto srv = func(connection); - obj = heap(*this, connection, *srv); - obj = obj.attach(kj::mv(srv)); + srv = func(connection); } } + KJ_ASSERT(srv.get() != nullptr); + + return listenHttpImpl(connection, [srv = kj::mv(srv)](SuspendableRequest&) mutable { + // This factory function will be owned by the Connection object, meaning the Connection object + // will own the HttpService. We also know that the Connection object outlives all + // service.request() promises (service.request() is called from a Connection member function). + // The Owns we return from this function are attached to the service.request() promises, + // meaning this factory function will outlive all Owns we return. So, it's safe to return a fake + // Own. + return kj::Own(srv.get(), kj::NullDisposer::instance); + }, nullptr /* suspendedRequest */, wantCleanDrain); +} + +kj::Promise HttpServer::listenHttpCleanDrain(kj::AsyncIoStream& connection, + SuspendableHttpServiceFactory factory, + kj::Maybe suspendedRequest) { + // Don't close on drain, because a "clean drain" means we return the connection to the + // application still-open between requests so that it can continue serving future HTTP requests + // on it. + return listenHttpImpl(connection, kj::mv(factory), kj::mv(suspendedRequest), + true /* wantCleanDrain */); +} + +kj::Promise HttpServer::listenHttpImpl(kj::AsyncIoStream& connection, + SuspendableHttpServiceFactory factory, + kj::Maybe suspendedRequest, + bool wantCleanDrain) { + auto obj = heap(*this, connection, kj::mv(factory), kj::mv(suspendedRequest), + wantCleanDrain); + // Start reading requests and responding to them, but immediately cancel processing if the client // disconnects. auto promise = obj->startLoop(true) @@ -5304,9 +7891,44 @@ kj::Promise HttpServer::listenHttpCleanDrain(kj::AsyncIoStream& connection return promise.attach(kj::mv(obj)).eagerlyEvaluate(nullptr); } -void HttpServer::taskFailed(kj::Exception&& exception) { +namespace { +void defaultHandleListenLoopException(kj::Exception&& exception) { KJ_LOG(ERROR, "unhandled exception in HTTP server", exception); } +} // namespace + +void HttpServer::taskFailed(kj::Exception&& exception) { + KJ_IF_MAYBE(handler, settings.errorHandler) { + handler->handleListenLoopException(kj::mv(exception)); + } else { + defaultHandleListenLoopException(kj::mv(exception)); + } +} + +HttpServer::SuspendedRequest::SuspendedRequest( + kj::Array bufferParam, kj::ArrayPtr leftoverParam, + kj::OneOf method, + kj::StringPtr url, HttpHeaders headers) + : buffer(kj::mv(bufferParam)), + leftover(leftoverParam), + method(method), + url(url), + headers(kj::mv(headers)) { + if (leftover.size() > 0) { + // We have a `leftover`; make sure it is a slice of `buffer`. + KJ_ASSERT(leftover.begin() >= buffer.begin() && leftover.begin() <= buffer.end()); + KJ_ASSERT(leftover.end() >= buffer.begin() && leftover.end() <= buffer.end()); + } else { + // We have no `leftover`, but we still expect it to point into `buffer` somewhere. This is + // important so that `messageHeaderEnd` is initialized correctly in HttpInputStreamImpl's + // constructor. + KJ_ASSERT(leftover.begin() >= buffer.begin() && leftover.begin() <= buffer.end()); + } +} + +HttpServer::SuspendedRequest HttpServer::SuspendableRequest::suspend() { + return connection.suspend(*this); +} kj::Promise HttpServerErrorHandler::handleClientProtocolError( HttpHeaders::ProtocolError protocolError, kj::HttpService::Response& response) { @@ -5340,6 +7962,8 @@ kj::Promise HttpServerErrorHandler::handleApplicationError( } KJ_IF_MAYBE(r, response) { + KJ_LOG(INFO, "threw exception while serving HTTP response", exception); + HttpHeaderTable headerTable {}; HttpHeaders headers(headerTable); headers.set(HttpHeaderId::CONTENT_TYPE, "text/plain"); @@ -5370,6 +7994,10 @@ kj::Promise HttpServerErrorHandler::handleApplicationError( return kj::READY_NOW; } +void HttpServerErrorHandler::handleListenLoopException(kj::Exception&& exception) { + defaultHandleListenLoopException(kj::mv(exception)); +} + kj::Promise HttpServerErrorHandler::handleNoResponse(kj::HttpService::Response& response) { HttpHeaderTable headerTable {}; HttpHeaders headers(headerTable); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/http.h b/libs/EXTERNAL/capnproto/c++/src/kj/compat/http.h index c65a1bb162b..151222a562c 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/http.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/http.h @@ -39,6 +39,9 @@ #include #include #include +#include + +KJ_BEGIN_HEADER namespace kj { @@ -90,8 +93,17 @@ KJ_HTTP_FOR_EACH_METHOD(DECLARE_METHOD) #undef DECLARE_METHOD }; +struct HttpConnectMethod {}; +// CONNECT is handled specially and separately from the other HttpMethods. + kj::StringPtr KJ_STRINGIFY(HttpMethod method); +kj::StringPtr KJ_STRINGIFY(HttpConnectMethod method); kj::Maybe tryParseHttpMethod(kj::StringPtr name); +kj::Maybe> tryParseHttpMethodAllowingConnect( + kj::StringPtr name); +// Like tryParseHttpMethod but, as the name suggests, explicitly allows for the CONNECT +// method. Added as a separate function instead of modifying tryParseHttpMethod to avoid +// breaking API changes in existing uses of tryParseHttpMethod. class HttpHeaderTable; @@ -219,7 +231,7 @@ class HttpHeaderTable { kj::Own table; }; - KJ_DISALLOW_COPY(HttpHeaderTable); // Can't copy because HttpHeaderId points to the table. + KJ_DISALLOW_COPY_AND_MOVE(HttpHeaderTable); // Can't copy because HttpHeaderId points to the table. ~HttpHeaderTable() noexcept(false); uint idCount() const; @@ -234,9 +246,20 @@ class HttpHeaderTable { kj::StringPtr idToString(HttpHeaderId id) const; // Get the canonical string name for the given ID. + bool isReady() const; + // Returns true if this HttpHeaderTable either was default constructed or its Builder has + // invoked `build()` and released it. + private: kj::Vector namesById; kj::Own idsByName; + + enum class BuildStatus { + UNSTARTED = 0, + BUILDING = 1, + FINISHED = 2, + }; + BuildStatus buildStatus = BuildStatus::UNSTARTED; }; class HttpHeaders { @@ -287,6 +310,12 @@ class HttpHeaders { kj::Maybe get(HttpHeaderId id) const; // Read a header. + // + // Note that there is intentionally no method to look up a header by string name rather than + // header ID. The intent is that you should always allocate a header ID for any header that you + // care about, so that you can get() it by ID. Headers with registered IDs are stored in an array + // indexed by ID, making lookup fast. Headers without registered IDs are stored in a separate list + // that is optimized for re-transmission of the whole list, but not for lookup. template void forEach(Func&& func) const; @@ -331,13 +360,16 @@ class HttpHeaders { void takeOwnership(kj::String&& string); void takeOwnership(kj::Array&& chars); void takeOwnership(HttpHeaders&& otherHeaders); - // Takes overship of a string so that it lives until the HttpHeaders object is destroyed. Useful + // Takes ownership of a string so that it lives until the HttpHeaders object is destroyed. Useful // when you've passed a dynamic value to set() or add() or parse*(). struct Request { HttpMethod method; kj::StringPtr url; }; + struct ConnectRequest { + kj::StringPtr authority; + }; struct Response { uint statusCode; kj::StringPtr statusText; @@ -376,12 +408,15 @@ class HttpHeaders { using RequestOrProtocolError = kj::OneOf; using ResponseOrProtocolError = kj::OneOf; + using RequestConnectOrProtocolError = kj::OneOf; RequestOrProtocolError tryParseRequest(kj::ArrayPtr content); + RequestConnectOrProtocolError tryParseRequestOrConnect(kj::ArrayPtr content); ResponseOrProtocolError tryParseResponse(kj::ArrayPtr content); + // Parse an HTTP header blob and add all the headers to this object. // - // `content` should be all text from the start of the request to the first occurrance of two + // `content` should be all text from the start of the request to the first occurrence of two // newlines in a row -- including the first of these two newlines, but excluding the second. // // The parse is performed with zero copies: The callee clobbers `content` with '\0' characters @@ -393,6 +428,8 @@ class HttpHeaders { kj::String serializeRequest(HttpMethod method, kj::StringPtr url, kj::ArrayPtr connectionHeaders = nullptr) const; + kj::String serializeConnectRequest(kj::StringPtr authority, + kj::ArrayPtr connectionHeaders = nullptr) const; kj::String serializeResponse(uint statusCode, kj::StringPtr statusText, kj::ArrayPtr connectionHeaders = nullptr) const; // **Most applications will not use these methods; they are called by the HTTP client and server @@ -476,6 +513,17 @@ class HttpInputStream { // The returned struct contains pointers directly into a buffer that is invalidated on the next // message read. + struct Connect { + kj::StringPtr authority; + const HttpHeaders& headers; + kj::Own body; + }; + virtual kj::Promise> readRequestAllowingConnect() = 0; + // Reads one HTTP request from the input stream. + // + // The returned struct contains pointers directly into a buffer that is invalidated on the next + // message read. + struct Response { uint statusCode; kj::StringPtr statusText; @@ -517,6 +565,16 @@ class EntropySource { virtual void generate(kj::ArrayPtr buffer) = 0; }; +struct CompressionParameters { + // These are the parameters for `Sec-WebSocket-Extensions` permessage-deflate extension. + // Since we cannot distinguish the client/server in `upgradeToWebSocket`, we use the prefixes + // `inbound` and `outbound` instead. + bool outboundNoContextTakeover = false; + bool inboundNoContextTakeover = false; + kj::Maybe outboundMaxWindowBits = nullptr; + kj::Maybe inboundMaxWindowBits = nullptr; +}; + class WebSocket { // Interface representincg an open WebSocket session. // @@ -556,6 +614,19 @@ class WebSocket { // resolves, but send() or receive() will throw DISCONNECTED when appropriate. See also // kj::AsyncOutputStream::whenWriteDisconnected().) + struct ProtocolError { + // Represents a protocol error, such as a bad opcode or oversize message. + + uint statusCode; + // Suggested WebSocket status code that should be used when returning an error to the client. + // + // Most errors are 1002; an oversize message will be 1009. + + kj::StringPtr description; + // An error description safe for all the world to see. This should be at most 123 bytes so that + // it can be used as the body of a Close frame (RFC 6455 sections 5.5 and 5.5.1). + }; + struct Close { uint16_t code; kj::String reason; @@ -586,6 +657,111 @@ class WebSocket { virtual uint64_t sentByteCount() = 0; virtual uint64_t receivedByteCount() = 0; + + enum ExtensionsContext { + // Indicate whether a Sec-WebSocket-Extension header should be rendered for use in request + // headers or response headers. + REQUEST, + RESPONSE + }; + virtual kj::Maybe getPreferredExtensions(ExtensionsContext ctx) { return nullptr; } + // If pumpTo() / tryPumpFrom() is able to be optimized only if the other WebSocket is using + // certain extensions (e.g. compression settings), then this method returns what those extensions + // are. For example, matching extensions between standard WebSockets allows pumping to be + // implemented by pumping raw bytes between network connections, without reading individual frames. + // + // A null return value indicates that there is no preference. A non-null return value containing + // an empty string indicates a preference for no extensions to be applied. +}; + +using TlsStarterCallback = kj::Maybe(kj::StringPtr)>>; +struct HttpConnectSettings { + bool useTls = false; + // Requests to automatically establish a TLS session over the connection. The remote party + // will be expected to present a valid certificate matching the requested hostname. + kj::Maybe tlsStarter; + // This is an output parameter. It doesn't need to be set. But if it is set, then it may get + // filled with a callback function. It will get filled with `nullptr` if any of the following + // are true: + // + // * kj is not built with TLS support + // * the underlying HttpClient does not support the startTls mechanism + // * `useTls` has been set to `true` and so TLS has already been started + // + // The callback function itself can be called to initiate a TLS handshake on the connection in + // between write() operations. It is not allowed to initiate a TLS handshake while a write + // operation or a pump operation to the connection exists. Read operations are not subject to + // the same constraint, however: implementations are required to be able to handle TLS + // initiation while a read operation or pump operation from the connection exists. Once the + // promise returned from the callback is fulfilled, the connection has become a secure stream, + // and write operations are once again permitted. The StringPtr parameter to the callback, + // expectedServerHostname may be dropped after the function synchronously returns. + // + // The PausableReadAsyncIoStream class defined below can be used to ensure that read operations + // are not pending when the tlsStarter is invoked. + // + // This mechanism is required for certain protocols, more info can be found on + // https://en.wikipedia.org/wiki/Opportunistic_TLS. +}; + + +class PausableReadAsyncIoStream final: public kj::AsyncIoStream { + // A custom AsyncIoStream which can pause pending reads. This is used by startTls to pause a + // a read before TLS is initiated. + // + // TODO(cleanup): this class should be rewritten to use a CRTP mixin approach so that pumps + // can be optimised once startTls is invoked. + class PausableRead; +public: + PausableReadAsyncIoStream(kj::Own stream) + : inner(kj::mv(stream)), currentlyWriting(false), currentlyReading(false) {} + + _::Deferred> trackRead(); + + _::Deferred> trackWrite(); + + kj::Promise tryRead(void* buffer, size_t minBytes, size_t maxBytes) override; + + kj::Promise tryReadImpl(void* buffer, size_t minBytes, size_t maxBytes); + + kj::Maybe tryGetLength() override; + + kj::Promise pumpTo(kj::AsyncOutputStream& output, uint64_t amount) override; + + kj::Promise write(const void* buffer, size_t size) override; + + kj::Promise write(kj::ArrayPtr> pieces) override; + + kj::Maybe> tryPumpFrom( + kj::AsyncInputStream& input, uint64_t amount = kj::maxValue) override; + + kj::Promise whenWriteDisconnected() override; + + void shutdownWrite() override; + + void abortRead() override; + + kj::Maybe getFd() const override; + + void pause(); + + void unpause(); + + bool getCurrentlyReading(); + + bool getCurrentlyWriting(); + + kj::Own takeStream(); + + void replaceStream(kj::Own stream); + + void reject(kj::Exception&& exc); + +private: + kj::Own inner; + kj::Maybe maybePausableRead; + bool currentlyWriting; + bool currentlyReading; }; class HttpClient { @@ -614,7 +790,7 @@ class HttpClient { // Content-Length: 0. kj::Promise response; - // Promise for the eventual respnose. + // Promise for the eventual response. }; virtual Request request(HttpMethod method, kj::StringPtr url, const HttpHeaders& headers, @@ -645,9 +821,45 @@ class HttpClient { // `url` and `headers` need only remain valid until `openWebSocket()` returns (they can be // stack-allocated). - virtual kj::Promise> connect(kj::StringPtr host); - // Handles CONNECT requests. Only relevant for proxy clients. Default implementation throws - // UNIMPLEMENTED. + struct ConnectRequest { + struct Status { + uint statusCode; + kj::String statusText; + kj::Own headers; + kj::Maybe> errorBody; + // If the connect request is rejected, the statusCode can be any HTTP status code + // outside the 200-299 range and errorBody *may* be specified if there is a rejection + // payload. + + // TODO(perf): Having Status own the statusText and headers is a bit unfortunate. + // Ideally we could have these be non-owned so that the headers object could just + // point directly into HttpOutputStream's buffer and not be copied. That's a bit + // more difficult to with CONNECT since the lifetimes of the buffers are a little + // different than with regular HTTP requests. It should still be possible but for + // now copying and owning the status text and headers is easier. + + Status(uint statusCode, + kj::String statusText, + kj::Own headers, + kj::Maybe> errorBody = nullptr) + : statusCode(statusCode), + statusText(kj::mv(statusText)), + headers(kj::mv(headers)), + errorBody(kj::mv(errorBody)) {} + }; + + kj::Promise status; + kj::Own connection; + }; + + virtual ConnectRequest connect( + kj::StringPtr host, const HttpHeaders& headers, HttpConnectSettings settings); + // Handles CONNECT requests. + // + // `host` must specify both the host and port (e.g. "example.org:1234"). + // + // The `host` and `headers` need only remain valid until `connect()` returns (it can be + // stack-allocated). }; class HttpService { @@ -675,9 +887,22 @@ class HttpService { // // `statusText` and `headers` need only remain valid until send() returns (they can be // stack-allocated). + // + // `send()` may only be called a single time. Calling it a second time will cause an exception + // to be thrown. virtual kj::Own acceptWebSocket(const HttpHeaders& headers) = 0; // If headers.isWebSocket() is true then you can call acceptWebSocket() instead of send(). + // + // If the request is an invalid WebSocket request (e.g., it has an Upgrade: websocket header, + // but other WebSocket-related headers are invalid), `acceptWebSocket()` will throw an + // exception, and the HttpServer will return a 400 Bad Request response and close the + // connection. In this circumstance, the HttpServer will ignore any exceptions which propagate + // from the `HttpService::request()` promise. `HttpServerErrorHandler::handleApplicationError()` + // will not be invoked, and the HttpServer's listen task will be fulfilled normally. + // + // `acceptWebSocket()` may only be called a single time. Calling it a second time will cause an + // exception to be thrown. kj::Promise sendError(uint statusCode, kj::StringPtr statusText, const HttpHeaders& headers); @@ -704,10 +929,49 @@ class HttpService { // // Request processing can be canceled by dropping the returned promise. HttpServer may do so if // the client disconnects prematurely. + // + // The implementation of `request()` should usually not try to use `response` in any way in + // exception-handling code, because it is often not possible to tell whether `Response::send()` or + // `Response::acceptWebSocket()` has already been called. Instead, to generate error HTTP + // responses for the client, implement an HttpServerErrorHandler and pass it to the HttpServer via + // HttpServerSettings. If the `HttpService::request()` promise rejects and no response has yet + // been sent, `HttpServerErrorHandler::handleApplicationError()` will be passed a non-null + // `Maybe` parameter. + + class ConnectResponse { + public: + virtual void accept( + uint statusCode, + kj::StringPtr statusText, + const HttpHeaders& headers) = 0; + // Signals acceptance of the CONNECT tunnel. + + virtual kj::Own reject( + uint statusCode, + kj::StringPtr statusText, + const HttpHeaders& headers, + kj::Maybe expectedBodySize = nullptr) = 0; + // Signals rejection of the CONNECT tunnel. + }; - virtual kj::Promise> connect(kj::StringPtr host); - // Handles CONNECT requests. Only relevant for proxy services. Default implementation throws - // UNIMPLEMENTED. + virtual kj::Promise connect(kj::StringPtr host, + const HttpHeaders& headers, + kj::AsyncIoStream& connection, + ConnectResponse& response, + HttpConnectSettings settings); + // Handles CONNECT requests. + // + // The `host` must include host and port. + // + // `host` and `headers` are invalidated when accept or reject is called on the ConnectResponse + // or when the returned promise resolves, whichever comes first. + // + // The connection is provided to support pipelining. Writes to the connection will be blocked + // until one of either accept() or reject() is called on tunnel. Reads from the connection are + // permitted at any time. + // + // Request processing can be canceled by dropping the returned promise. HttpServer may do so if + // the client disconnects prematurely. }; class HttpClientErrorHandler { @@ -749,6 +1013,29 @@ struct HttpClientSettings { kj::Maybe errorHandler = nullptr; // Customize how protocol errors are handled by the HttpClient. If null, HttpClientErrorHandler's // default implementation will be used. + + enum WebSocketCompressionMode { + NO_COMPRESSION, + MANUAL_COMPRESSION, // Lets the application decide the compression configuration (if any). + AUTOMATIC_COMPRESSION, // Automatically includes the compression header in the WebSocket request. + }; + WebSocketCompressionMode webSocketCompressionMode = NO_COMPRESSION; + + kj::Maybe tlsContext; + // A reference to a TLS context that will be used when tlsStarter is invoked. +}; + +class WebSocketErrorHandler { +public: + virtual kj::Exception handleWebSocketProtocolError(WebSocket::ProtocolError protocolError); + // Handles low-level protocol errors in received WebSocket data. + // + // This is called when the WebSocket peer sends us bad data *after* a successful WebSocket + // upgrade, e.g. a continuation frame without a preceding start frame, a frame with an unknown + // opcode, or similar. + // + // You would override this method in order to customize the exception. You cannot prevent the + // exception from being thrown. }; kj::Own newHttpClient(kj::Timer& timer, const HttpHeaderTable& responseHeaderTable, @@ -817,7 +1104,9 @@ kj::Own newHttpInputStream( // continue reading from `input` in a reliable way. kj::Own newWebSocket(kj::Own stream, - kj::Maybe maskEntropySource); + kj::Maybe maskEntropySource, + kj::Maybe compressionConfig = nullptr, + kj::Maybe errorHandler = nullptr); // Create a new WebSocket on top of the given stream. It is assumed that the HTTP -> WebSocket // upgrade handshake has already occurred (or is not needed), and messages can immediately be // sent and received on the stream. Normally applications would not call this directly. @@ -829,6 +1118,13 @@ kj::Own newWebSocket(kj::Own stream, // purpose of the mask is to prevent badly-written HTTP proxies from interpreting "things that look // like HTTP requests" in a message as being actual HTTP requests, which could result in cache // poisoning. See RFC6455 section 10.3. +// +// `compressionConfig` is an optional argument that allows us to specify how the WebSocket should +// compress and decompress messages. The configuration is determined by the +// `Sec-WebSocket-Extensions` header during WebSocket negotiation. +// +// `errorHandler` is an optional argument that lets callers throw custom exceptions for WebSocket +// protocol errors. struct WebSocketPipe { kj::Own ends[2]; @@ -865,6 +1161,16 @@ struct HttpServerSettings { kj::Maybe callbacks = nullptr; // Additional optional callbacks used to control some server behavior. + + kj::Maybe webSocketErrorHandler = nullptr; + // Customize exceptions thrown on WebSocket protocol errors. + + enum WebSocketCompressionMode { + NO_COMPRESSION, + MANUAL_COMPRESSION, // Gives the application more control when considering whether to compress. + AUTOMATIC_COMPRESSION, // Will perform compression parameter negotiation if client requests it. + }; + WebSocketCompressionMode webSocketCompressionMode = NO_COMPRESSION; }; class HttpServerErrorHandler { @@ -899,6 +1205,12 @@ class HttpServerErrorHandler { // // Also unlike `HttpService::request()`, it is okay to return kj::READY_NOW without calling // `response.send()`. In this case, no response will be sent, and the connection will be closed. + + virtual void handleListenLoopException(kj::Exception&& exception); + // Override this function to customize error handling for individual connections in the + // `listenHttp()` overload which accepts a ConnectionReceiver reference. + // + // The default handler uses KJ_LOG() to log the exception as an error. }; class HttpServerCallbacks { @@ -918,6 +1230,9 @@ class HttpServer final: private kj::TaskSet::ErrorHandler { public: typedef HttpServerSettings Settings; typedef kj::Function(kj::AsyncIoStream&)> HttpServiceFactory; + class SuspendableRequest; + typedef kj::Function>(SuspendableRequest&)> + SuspendableHttpServiceFactory; HttpServer(kj::Timer& timer, const HttpHeaderTable& requestHeaderTable, HttpService& service, Settings settings = Settings()); @@ -947,7 +1262,7 @@ class HttpServer final: private kj::TaskSet::ErrorHandler { // Reads HTTP requests from the given connection and directs them to the handler. A successful // completion of the promise indicates that all requests received on the connection resulted in // a complete response, and the client closed the connection gracefully or drain() was called. - // The promise throws if an unparseable request is received or if some I/O error occurs. Dropping + // The promise throws if an unparsable request is received or if some I/O error occurs. Dropping // the returned promise will cancel all I/O on the connection and cancel any in-flight requests. kj::Promise listenHttpCleanDrain(kj::AsyncIoStream& connection); @@ -958,6 +1273,56 @@ class HttpServer final: private kj::TaskSet::ErrorHandler { // caller should close it without any further reads/writes. Note this only ever returns `true` // if you called `drain()` -- otherwise this server would keep handling the connection. + class SuspendedRequest { + // SuspendedRequest is a representation of a request immediately after parsing the method line and + // headers. You can obtain one of these by suspending a request by calling + // SuspendableRequest::suspend(), then later resume the request with another call to + // listenHttpCleanDrain(). + + public: + // Nothing, this is an opaque type. + + private: + SuspendedRequest(kj::Array, kj::ArrayPtr, kj::OneOf, kj::StringPtr, HttpHeaders); + + kj::Array buffer; + // A buffer containing at least the request's method, URL, and headers, and possibly content + // thereafter. + + kj::ArrayPtr leftover; + // Pointer to the end of the request headers. If this has a non-zero length, then our buffer + // contains additional content, presumably the head of the request body. + + kj::OneOf method; + kj::StringPtr url; + HttpHeaders headers; + // Parsed request front matter. `url` and `headers` both store pointers into `buffer`. + + friend class HttpServer; + }; + + kj::Promise listenHttpCleanDrain(kj::AsyncIoStream& connection, + SuspendableHttpServiceFactory factory, + kj::Maybe suspendedRequest = nullptr); + // Like listenHttpCleanDrain(), but allows you to suspend requests. + // + // When this overload is in use, the HttpServer's default HttpService or HttpServiceFactory is not + // used. Instead, the HttpServer reads the request method line and headers, then calls `factory` + // with a SuspendableRequest representing the request parsed so far. The factory may then return + // a kj::Own for that specific request, or it may call SuspendableRequest::suspend() + // and return nullptr. (It is an error for the factory to return nullptr without also calling + // suspend(); this will result in a rejected listenHttpCleanDrain() promise.) + // + // If the factory chooses to suspend, the listenHttpCleanDrain() promise is resolved with false + // at the earliest opportunity. + // + // SuspendableRequest::suspend() returns a SuspendedRequest. You can resume this request later by + // calling this same listenHttpCleanDrain() overload with the original connection stream, and the + // SuspendedRequest in question. + // + // This overload of listenHttpCleanDrain() implements draining, as documented above. Note that the + // returned promise will resolve to false (not clean) if a request is suspended. + private: class Connection; @@ -982,6 +1347,38 @@ class HttpServer final: private kj::TaskSet::ErrorHandler { kj::Promise listenLoop(kj::ConnectionReceiver& port); void taskFailed(kj::Exception&& exception) override; + + kj::Promise listenHttpImpl(kj::AsyncIoStream& connection, bool wantCleanDrain); + kj::Promise listenHttpImpl(kj::AsyncIoStream& connection, + SuspendableHttpServiceFactory factory, + kj::Maybe suspendedRequest, + bool wantCleanDrain); +}; + +class HttpServer::SuspendableRequest { + // Interface passed to the SuspendableHttpServiceFactory parameter of listenHttpCleanDrain(). + +public: + kj::OneOf method; + kj::StringPtr url; + const HttpHeaders& headers; + // Parsed request front matter, so the implementer can decide whether to suspend the request. + + SuspendedRequest suspend(); + // Signal to the HttpServer that the current request loop should be exited. Return a + // SuspendedRequest, containing HTTP method, URL, and headers access, along with the actual header + // buffer. The request can be later resumed with a call to listenHttpCleanDrain() using the same + // connection. + +private: + explicit SuspendableRequest( + Connection& connection, kj::OneOf method, kj::StringPtr url, const HttpHeaders& headers) + : method(method), url(url), headers(headers), connection(connection) {} + KJ_DISALLOW_COPY_AND_MOVE(SuspendableRequest); + + Connection& connection; + + friend class Connection; }; // ======================================================================================= @@ -992,10 +1389,22 @@ inline void HttpHeaderId::requireFrom(const HttpHeaderTable& table) const { "the provided HttpHeaderId is from the wrong HttpHeaderTable"); } -inline kj::Own HttpHeaderTable::Builder::build() { return kj::mv(table); } +inline kj::Own HttpHeaderTable::Builder::build() { + table->buildStatus = BuildStatus::FINISHED; + return kj::mv(table); +} inline HttpHeaderTable& HttpHeaderTable::Builder::getFutureTable() { return *table; } inline uint HttpHeaderTable::idCount() const { return namesById.size(); } +inline bool HttpHeaderTable::isReady() const { + switch (buildStatus) { + case BuildStatus::UNSTARTED: return true; + case BuildStatus::BUILDING: return false; + case BuildStatus::FINISHED: return true; + } + + KJ_UNREACHABLE; +} inline kj::StringPtr HttpHeaderTable::idToString(HttpHeaderId id) const { id.requireFrom(*this); @@ -1039,4 +1448,57 @@ inline void HttpHeaders::forEach(Func1&& func1, Func2&& func2) const { } } +// ======================================================================================= +namespace _ { // private implementation details for WebSocket compression + +kj::ArrayPtr splitNext(kj::ArrayPtr& cursor, char delimiter); + +void stripLeadingAndTrailingSpace(ArrayPtr& str); + +kj::Vector> splitParts(kj::ArrayPtr input, char delim); + +struct KeyMaybeVal { + ArrayPtr key; + kj::Maybe> val; +}; + +kj::Array toKeysAndVals(const kj::ArrayPtr>& params); + +struct UnverifiedConfig { + // An intermediate representation of the final `CompressionParameters` struct; used during parsing. + // We use it to ensure the structure of an offer is generally correct, see + // `populateUnverifiedConfig()` for details. + bool clientNoContextTakeover = false; + bool serverNoContextTakeover = false; + kj::Maybe> clientMaxWindowBits = nullptr; + kj::Maybe> serverMaxWindowBits = nullptr; +}; + +kj::Maybe populateUnverifiedConfig(kj::Array& params); + +kj::Maybe validateCompressionConfig(UnverifiedConfig&& config, + bool isAgreement); + +kj::Vector findValidExtensionOffers(StringPtr offers); + +kj::String generateExtensionRequest(const ArrayPtr& extensions); + +kj::Maybe tryParseExtensionOffers(StringPtr offers); + +kj::Maybe tryParseAllExtensionOffers(StringPtr offers, + CompressionParameters manualConfig); + +kj::Maybe compareClientAndServerConfigs(CompressionParameters requestConfig, + CompressionParameters manualConfig); + +kj::String generateExtensionResponse(const CompressionParameters& parameters); + +kj::OneOf tryParseExtensionAgreement( + const Maybe& clientOffer, + StringPtr agreedParameters); + +}; // namespace _ (private) + } // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/readiness-io.h b/libs/EXTERNAL/capnproto/c++/src/kj/compat/readiness-io.h index d55d8474b01..2ed94684167 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/readiness-io.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/readiness-io.h @@ -23,6 +23,8 @@ #include +KJ_BEGIN_HEADER + namespace kj { class ReadyInputStreamWrapper { @@ -34,7 +36,7 @@ class ReadyInputStreamWrapper { public: ReadyInputStreamWrapper(AsyncInputStream& input); ~ReadyInputStreamWrapper() noexcept(false); - KJ_DISALLOW_COPY(ReadyInputStreamWrapper); + KJ_DISALLOW_COPY_AND_MOVE(ReadyInputStreamWrapper); kj::Maybe read(kj::ArrayPtr dst); // Reads bytes into `dst`, returning the number of bytes read. Returns zero only at EOF. Returns @@ -43,6 +45,9 @@ class ReadyInputStreamWrapper { kj::Promise whenReady(); // Returns a promise that resolves when read() will return non-null. + bool isAtEnd() { return eof; } + // Returns true if read() would return zero. + private: AsyncInputStream& input; kj::ForkedPromise pumpTask = nullptr; @@ -62,11 +67,11 @@ class ReadyOutputStreamWrapper { public: ReadyOutputStreamWrapper(AsyncOutputStream& output); ~ReadyOutputStreamWrapper() noexcept(false); - KJ_DISALLOW_COPY(ReadyOutputStreamWrapper); + KJ_DISALLOW_COPY_AND_MOVE(ReadyOutputStreamWrapper); kj::Maybe write(kj::ArrayPtr src); - // Writes bytes from `src`, returning the number of bytes written. Never returns zero. Returns - // nullptr if not ready. + // Writes bytes from `src`, returning the number of bytes written. Never returns zero for + // a non-empty `src`. Returns nullptr if not ready. kj::Promise whenReady(); // Returns a promise that resolves when write() will return non-null. @@ -122,3 +127,5 @@ class ReadyOutputStreamWrapper::Cork { }; } // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls-test.c++ index 7c5cf03800d..dddefa5747f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls-test.c++ @@ -27,6 +27,8 @@ #include "tls.h" +#include "http.h" + #include #include @@ -467,6 +469,56 @@ KJ_TEST("TLS basics") { auto server = serverPromise.wait(test.io.waitScope); test.testConnection(*client, *server); + + // Test clean shutdown. + { + auto eofPromise = server->readAllText(); + KJ_EXPECT(!eofPromise.poll(test.io.waitScope)); + client->shutdownWrite(); + KJ_ASSERT(eofPromise.poll(test.io.waitScope)); + KJ_EXPECT(eofPromise.wait(test.io.waitScope) == ""_kj); + } + + // Test UNCLEAN shutdown in other direction. + { + auto eofPromise = client->readAllText(); + KJ_EXPECT(!eofPromise.poll(test.io.waitScope)); + { auto drop = kj::mv(server); } + KJ_EXPECT(eofPromise.poll(test.io.waitScope)); + KJ_EXPECT_THROW(DISCONNECTED, eofPromise.wait(test.io.waitScope)); + } +} + +KJ_TEST("TLS half-duplex") { + // Test shutting down one direction of a connection but continuing to stream in the other + // direction. + + TlsTest test; + ErrorNexus e; + + auto pipe = test.io.provider->newTwoWayPipe(); + + auto clientPromise = e.wrap(test.tlsClient.wrapClient(kj::mv(pipe.ends[0]), "example.com")); + auto serverPromise = e.wrap(test.tlsServer.wrapServer(kj::mv(pipe.ends[1]))); + + auto client = clientPromise.wait(test.io.waitScope); + auto server = serverPromise.wait(test.io.waitScope); + + client->shutdownWrite(); + KJ_EXPECT(server->readAllText().wait(test.io.waitScope) == ""); + + for (uint i = 0; i < 100; i++) { + char buffer[7]; + auto writePromise = server->write("foobar", 6); + auto readPromise = client->read(buffer, 6); + writePromise.wait(test.io.waitScope); + readPromise.wait(test.io.waitScope); + buffer[6] = '\0'; + KJ_ASSERT(kj::StringPtr(buffer, 6) == "foobar"); + } + + server->shutdownWrite(); + KJ_EXPECT(client->readAllText().wait(test.io.waitScope) == ""); } KJ_TEST("TLS peer identity") { @@ -589,10 +641,10 @@ kj::Promise readN(kj::AsyncIoStream& stream, kj::StringPtr text, size_t co --count; auto buf = kj::heapString(text.size()); auto promise = stream.read(buf.begin(), buf.size()); - return promise.then(kj::mvCapture(buf, [&stream, text, count](kj::String buf) { + return promise.then([&stream, text, buf=kj::mv(buf), count]() { KJ_ASSERT(buf == text, buf, text, count); return readN(stream, text, count); - })); + }); } KJ_TEST("TLS full duplex") { @@ -619,7 +671,10 @@ KJ_TEST("TLS full duplex") { auto writeUp = writeN(*client, "foo", 10000); auto readDown = readN(*client, "bar", 10000); +#if !(_WIN32 && __clang__) + // TODO(someday): work out why this expectation fails even with the above fix KJ_EXPECT(!writeUp.poll(test.io.waitScope)); +#endif KJ_EXPECT(!readDown.poll(test.io.waitScope)); auto writeDown = writeN(*server, "bar", 10000); @@ -651,7 +706,7 @@ KJ_TEST("TLS SNI") { TestSniCallback callback; serverOptions.sniCallback = callback; - TlsTest test(TlsTest::defaultClient(), serverOptions); + TlsTest test(TlsTest::defaultClient(), kj::mv(serverOptions)); ErrorNexus e; auto pipe = test.io.provider->newTwoWayPipe(); @@ -667,7 +722,8 @@ KJ_TEST("TLS SNI") { KJ_ASSERT(callback.callCount == 1); } -void expectInvalidCert(kj::StringPtr hostname, TlsCertificate cert, kj::StringPtr message) { +void expectInvalidCert(kj::StringPtr hostname, TlsCertificate cert, + kj::StringPtr message, kj::Maybe altMessage = nullptr) { TlsKeypair keypair = { TlsPrivateKey(HOST_KEY), kj::mv(cert) }; TlsContext::Options serverOpts; serverOpts.defaultKeypair = keypair; @@ -679,37 +735,74 @@ void expectInvalidCert(kj::StringPtr hostname, TlsCertificate cert, kj::StringPt auto clientPromise = e.wrap(test.tlsClient.wrapClient(kj::mv(pipe.ends[0]), hostname)); auto serverPromise = e.wrap(test.tlsServer.wrapServer(kj::mv(pipe.ends[1]))); - KJ_EXPECT_THROW_MESSAGE(message, clientPromise.wait(test.io.waitScope)); + clientPromise.then([](kj::Own) { + KJ_FAIL_EXPECT("expected exception"); + }, [message, altMessage](kj::Exception&& e) { + if (kj::_::hasSubstring(e.getDescription(), message)) { + return; + } + + KJ_IF_MAYBE(a, altMessage) { + if (kj::_::hasSubstring(e.getDescription(), *a)) { + return; + } + } + + KJ_FAIL_EXPECT("exception didn't contain expected message", message, + altMessage.orDefault(nullptr), e); + }).wait(test.io.waitScope); } KJ_TEST("TLS certificate validation") { + // Where we've given two possible error texts below, it's because OpenSSL v1 produces the former + // text while v3 produces the latter. Note that as of this writing, our Windows CI build claims + // to be v3 but produces v1 text, for reasons I don't care to investigate. expectInvalidCert("wrong.com", TlsCertificate(kj::str(VALID_CERT, INTERMEDIATE_CERT)), - "Hostname mismatch"); + "Hostname mismatch"_kj, "hostname mismatch"_kj); expectInvalidCert("example.com", TlsCertificate(VALID_CERT), - "unable to get local issuer certificate"); + "unable to get local issuer certificate"_kj); expectInvalidCert("example.com", TlsCertificate(kj::str(EXPIRED_CERT, INTERMEDIATE_CERT)), - "certificate has expired"); + "certificate has expired"_kj); expectInvalidCert("example.com", TlsCertificate(SELF_SIGNED_CERT), - "self signed certificate"); + "self signed certificate"_kj, "self-signed certificate"_kj); } // BoringSSL seems to print error messages differently. #ifdef OPENSSL_IS_BORINGSSL -#define SSL_MESSAGE(interesting, boring) boring +#define SSL_MESSAGE_DIFFERENT_IN_BORINGSSL(interesting, boring) boring #else -#define SSL_MESSAGE(interesting, boring) interesting +#define SSL_MESSAGE_DIFFERENT_IN_BORINGSSL(interesting, boring) interesting #endif KJ_TEST("TLS client certificate verification") { - TlsContext::Options serverOptions = TlsTest::defaultServer(); - TlsContext::Options clientOptions = TlsTest::defaultClient(); + enum class VerifyClients { + YES, + NO + }; + auto makeServerOptionsForClient = []( + const TlsContext::Options& clientOptions, + VerifyClients verifyClients + ) { + TlsContext::Options serverOptions = TlsTest::defaultServer(); + serverOptions.verifyClients = verifyClients == VerifyClients::YES; - serverOptions.verifyClients = true; - serverOptions.trustedCertificates = clientOptions.trustedCertificates; + // Share the certs between the client and server. + serverOptions.trustedCertificates = clientOptions.trustedCertificates; + + return serverOptions; + }; + + TlsKeypair selfSignedKeypair = { TlsPrivateKey(HOST_KEY), TlsCertificate(SELF_SIGNED_CERT) }; + TlsKeypair altKeypair = { + TlsPrivateKey(HOST_KEY2), + TlsCertificate(kj::str(VALID_CERT2, INTERMEDIATE_CERT)), + }; - // No certificate loaded in the client: fail { - TlsTest test(clientOptions, serverOptions); + // No certificate loaded in the client: fail + auto clientOptions = TlsTest::defaultClient(); + auto serverOptions = makeServerOptionsForClient(clientOptions, VerifyClients::YES); + TlsTest test(kj::mv(clientOptions), kj::mv(serverOptions)); auto pipe = test.io.provider->newTwoWayPipe(); @@ -720,24 +813,24 @@ KJ_TEST("TLS client certificate verification") { }); auto serverPromise = test.tlsServer.wrapServer(kj::mv(pipe.ends[1])); - KJ_EXPECT_THROW_MESSAGE( - SSL_MESSAGE("peer did not return a certificate", - "PEER_DID_NOT_RETURN_A_CERTIFICATE"), - serverPromise.wait(test.io.waitScope)); -#if !KJ_NO_EXCEPTIONS // if exceptions are disabled, we're now in a bad state because - // KJ_EXPECT_THROW_MESSAGE() runs in a forked child process. - KJ_EXPECT_THROW_MESSAGE( - SSL_MESSAGE("alert", // "alert handshake failure" or "alert certificate required" - "CERTIFICATE_REQUIRED"), - clientPromise.wait(test.io.waitScope)); -#endif + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE( + SSL_MESSAGE_DIFFERENT_IN_BORINGSSL("peer did not return a certificate", + "PEER_DID_NOT_RETURN_A_CERTIFICATE"), + serverPromise.ignoreResult().wait(test.io.waitScope)); + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE( + SSL_MESSAGE_DIFFERENT_IN_BORINGSSL( + "alert", // "alert handshake failure" or "alert certificate required" + "ALERT"), // "ALERT_HANDSHAKE_FAILURE" or "ALERT_CERTIFICATE_REQUIRED" + clientPromise.ignoreResult().wait(test.io.waitScope)); } - // Self-signed certificate loaded in the client: fail - TlsKeypair selfSignedKeypair = { TlsPrivateKey(HOST_KEY), TlsCertificate(SELF_SIGNED_CERT) }; - clientOptions.defaultKeypair = selfSignedKeypair; { - TlsTest test(clientOptions, serverOptions); + // Self-signed certificate loaded in the client: fail + auto clientOptions = TlsTest::defaultClient(); + clientOptions.defaultKeypair = selfSignedKeypair; + + auto serverOptions = makeServerOptionsForClient(clientOptions, VerifyClients::YES); + TlsTest test(kj::mv(clientOptions), kj::mv(serverOptions)); auto pipe = test.io.provider->newTwoWayPipe(); @@ -748,27 +841,24 @@ KJ_TEST("TLS client certificate verification") { }); auto serverPromise = test.tlsServer.wrapServer(kj::mv(pipe.ends[1])); - KJ_EXPECT_THROW_MESSAGE( - SSL_MESSAGE("certificate verify failed", - "CERTIFICATE_VERIFY_FAILED"), - serverPromise.wait(test.io.waitScope)); -#if !KJ_NO_EXCEPTIONS // if exceptions are disabled, we're now in a bad state because - // KJ_EXPECT_THROW_MESSAGE() runs in a forked child process. - KJ_EXPECT_THROW_MESSAGE( - SSL_MESSAGE("alert unknown ca", - "TLSV1_ALERT_UNKNOWN_CA"), - clientPromise.wait(test.io.waitScope)); -#endif + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE( + SSL_MESSAGE_DIFFERENT_IN_BORINGSSL("certificate verify failed", + "CERTIFICATE_VERIFY_FAILED"), + serverPromise.ignoreResult().wait(test.io.waitScope)); + KJ_EXPECT_THROW_RECOVERABLE_MESSAGE( + SSL_MESSAGE_DIFFERENT_IN_BORINGSSL("alert unknown ca", + "TLSV1_ALERT_UNKNOWN_CA"), + clientPromise.ignoreResult().wait(test.io.waitScope)); } - // Trusted certificate loaded in the client: success. - TlsKeypair altKeypair = { - TlsPrivateKey(HOST_KEY2), - TlsCertificate(kj::str(VALID_CERT2, INTERMEDIATE_CERT)) - }; - clientOptions.defaultKeypair = altKeypair; { - TlsTest test(clientOptions, serverOptions); + // Trusted certificate loaded in the client: success. + auto clientOptions = TlsTest::defaultClient(); + clientOptions.defaultKeypair = altKeypair; + + auto serverOptions = makeServerOptionsForClient(clientOptions, VerifyClients::YES); + TlsTest test(kj::mv(clientOptions), kj::mv(serverOptions)); + ErrorNexus e; auto pipe = test.io.provider->newTwoWayPipe(); @@ -787,10 +877,12 @@ KJ_TEST("TLS client certificate verification") { test.testConnection(*client, *server.stream); } - // If verifyClients is off, client certificate is ignored, even if trusted. - serverOptions.verifyClients = false; { - TlsTest test(clientOptions, serverOptions); + // If verifyClients is off, client certificate is ignored, even if trusted. + auto clientOptions = TlsTest::defaultClient(); + auto serverOptions = makeServerOptionsForClient(clientOptions, VerifyClients::NO); + TlsTest test(kj::mv(clientOptions), kj::mv(serverOptions)); + ErrorNexus e; auto pipe = test.io.provider->newTwoWayPipe(); @@ -806,10 +898,14 @@ KJ_TEST("TLS client certificate verification") { KJ_EXPECT(!id->hasCertificate()); } - // Non-trusted keys are ignored too (not errors). - clientOptions.defaultKeypair = selfSignedKeypair; { - TlsTest test(clientOptions, serverOptions); + // Non-trusted keys are ignored too (not errors). + auto clientOptions = TlsTest::defaultClient(); + clientOptions.defaultKeypair = selfSignedKeypair; + + auto serverOptions = makeServerOptionsForClient(clientOptions, VerifyClients::NO); + TlsTest test(kj::mv(clientOptions), kj::mv(serverOptions)); + ErrorNexus e; auto pipe = test.io.provider->newTwoWayPipe(); @@ -1096,6 +1192,73 @@ KJ_TEST("TLS receiver does not stall on hung client") { KJ_EXPECT(!extraAcceptPromise.poll(test.io.waitScope)); } +kj::Promise expectRead(kj::AsyncInputStream& in, kj::StringPtr expected) { + if (expected.size() == 0) return kj::READY_NOW; + + auto buffer = kj::heapArray(expected.size()); + + auto promise = in.tryRead(buffer.begin(), 1, buffer.size()); + return promise.then([&in,expected,buffer=kj::mv(buffer)](size_t amount) { + if (amount == 0) { + KJ_FAIL_ASSERT("expected data never sent", expected); + } + + auto actual = buffer.slice(0, amount); + if (memcmp(actual.begin(), expected.begin(), actual.size()) != 0) { + KJ_FAIL_ASSERT("data from stream doesn't match expected", expected, actual); + } + + return expectRead(in, expected.slice(amount)); + }); +} + +kj::Promise expectEnd(kj::AsyncInputStream& in) { + static char buffer; + + auto promise = in.tryRead(&buffer, 1, 1); + return promise.then([](size_t amount) { + KJ_ASSERT(amount == 0, "expected EOF"); + }); +} + +KJ_TEST("NetworkHttpClient connect with tlsStarter") { + auto io = kj::setupAsyncIo(); + auto listener1 = io.provider->getNetwork().parseAddress("127.0.0.1", 0) + .wait(io.waitScope)->listen(); + + auto acceptLoop KJ_UNUSED = listener1->accept().then([](Own stream) { + return stream->pumpTo(*stream).attach(kj::mv(stream)).ignoreResult(); + }).eagerlyEvaluate(nullptr); + + HttpClientSettings clientSettings; + kj::TimerImpl clientTimer(kj::origin()); + HttpHeaderTable headerTable; + TlsContext tls; + + auto tlsNetwork = tls.wrapNetwork(io.provider->getNetwork()); + clientSettings.tlsContext = tls; + auto client = newHttpClient(clientTimer, headerTable, + io.provider->getNetwork(), *tlsNetwork, clientSettings); + kj::HttpConnectSettings httpConnectSettings = { false, nullptr }; + kj::TlsStarterCallback tlsStarter; + httpConnectSettings.tlsStarter = tlsStarter; + auto request = client->connect( + kj::str("127.0.0.1:", listener1->getPort()), HttpHeaders(headerTable), httpConnectSettings); + + KJ_ASSERT(tlsStarter != nullptr); + + auto buf = kj::heapArray(4); + + auto promises = kj::heapArrayBuilder>(2); + promises.add(request.connection->write("hello", 5)); + promises.add(expectRead(*request.connection, "hello"_kj)); + kj::joinPromisesFailFast(promises.finish()) + .then([io=kj::mv(request.connection)]() mutable { + io->shutdownWrite(); + return expectEnd(*io).attach(kj::mv(io)); + }).attach(kj::mv(listener1)).wait(io.waitScope); +} + #ifdef KJ_EXTERNAL_TESTS KJ_TEST("TLS to capnproto.org") { kj::AsyncIoContext io = setupAsyncIo(); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls.c++ index 05bf5d53928..6affeb1f671 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls.c++ @@ -51,19 +51,33 @@ namespace kj { namespace { -KJ_NORETURN(void throwOpensslError()); -void throwOpensslError() { - // Call when an OpenSSL function returns an error code to convert that into an exception and - // throw it. +kj::Exception getOpensslError() { + // Call when an OpenSSL function returns an error code to convert that into an exception. kj::Vector lines; while (unsigned long long error = ERR_get_error()) { +#ifdef SSL_R_UNEXPECTED_EOF_WHILE_READING + // OpenSSL 3.0+ reports unexpected disconnects this way. + if (ERR_GET_REASON(error) == SSL_R_UNEXPECTED_EOF_WHILE_READING) { + return KJ_EXCEPTION(DISCONNECTED, + "peer disconnected without gracefully ending TLS session"); + } +#endif + char message[1024]; ERR_error_string_n(error, message, sizeof(message)); lines.add(kj::heapString(message)); } kj::String message = kj::strArray(lines, "\n"); - KJ_FAIL_ASSERT("OpenSSL error", message); + return KJ_EXCEPTION(FAILED, "OpenSSL error", message); +} + +KJ_NORETURN(void throwOpensslError()); +void throwOpensslError() { + // Call when an OpenSSL function returns an error code to convert that into an exception and + // throw it. + + kj::throwFatalException(getOpensslError()); } #if OPENSSL_VERSION_NUMBER < 0x10100000L && !defined(OPENSSL_IS_BORINGSSL) @@ -100,6 +114,37 @@ inline void ensureOpenSslInitialized() { } #endif +bool isIpAddress(kj::StringPtr addr) { + bool isPossiblyIp6 = true; + bool isPossiblyIp4 = true; + uint colonCount = 0; + uint dotCount = 0; + for (auto c: addr) { + if (c == ':') { + isPossiblyIp4 = false; + ++colonCount; + } else if (c == '.') { + isPossiblyIp6 = false; + ++dotCount; + } else if ('0' <= c && c <= '9') { + // Digit is valid for ipv4 or ipv6. + } else if (('a' <= c && c <= 'f') || ('A' <= c && c <= 'F')) { + // Hex digit could be ipv6 but not ipv4. + isPossiblyIp4 = false; + } else { + // Nope. + return false; + } + } + + // An IPv4 address has 3 dots. (Yes, I'm aware that technically IPv4 addresses can be formatted + // with fewer dots, but it's not clear that we actually want to support TLS authentication of + // non-canonical address formats, so for now I'm not. File a bug if you care.) An IPv6 address + // has at least 2 and as many as 7 colons. + return (isPossiblyIp4 && dotCount == 3) + || (isPossiblyIp6 && colonCount >= 2 && colonCount <= 7); +} + } // namespace // ======================================================================================= @@ -138,28 +183,42 @@ public: kj::Promise connect(kj::StringPtr expectedServerHostname) { if (!SSL_set_tlsext_host_name(ssl, expectedServerHostname.cStr())) { - throwOpensslError(); + return getOpensslError(); } X509_VERIFY_PARAM* verify = SSL_get0_param(ssl); if (verify == nullptr) { - throwOpensslError(); + return getOpensslError(); } - if (X509_VERIFY_PARAM_set1_host( - verify, expectedServerHostname.cStr(), expectedServerHostname.size()) <= 0) { - throwOpensslError(); + if (isIpAddress(expectedServerHostname)) { + if (X509_VERIFY_PARAM_set1_ip_asc(verify, expectedServerHostname.cStr()) <= 0) { + return getOpensslError(); + } + } else { + if (X509_VERIFY_PARAM_set1_host( + verify, expectedServerHostname.cStr(), expectedServerHostname.size()) <= 0) { + return getOpensslError(); + } } + // As of OpenSSL 1.1.0, X509_V_FLAG_TRUSTED_FIRST is on by default. Turning it on for older + // versions -- as well as certain OpenSSL-compatible libraries -- fixes the problem described + // here: https://community.letsencrypt.org/t/openssl-client-compatibility-changes-for-let-s-encrypt-certificates/143816 + // + // Otherwise, certificates issued by Let's Encrypt won't work as of September 30, 2021: + // https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/ + X509_VERIFY_PARAM_set_flags(verify, X509_V_FLAG_TRUSTED_FIRST); + return sslCall([this]() { return SSL_connect(ssl); }).then([this](size_t) { X509* cert = SSL_get_peer_certificate(ssl); - KJ_REQUIRE(cert != nullptr, "TLS peer provided no certificate"); + KJ_REQUIRE(cert != nullptr, "TLS peer provided no certificate") { return; } X509_free(cert); auto result = SSL_get_verify_result(ssl); if (result != X509_V_OK) { const char* reason = X509_verify_cert_error_string(result); - KJ_FAIL_REQUIRE("TLS peer's certificate is not trusted", reason); + KJ_FAIL_REQUIRE("TLS peer's certificate is not trusted", reason) { break; } } }); } @@ -208,7 +267,7 @@ public: void shutdownWrite() override { KJ_REQUIRE(shutdownTask == nullptr, "already called shutdownWrite()"); - // TODO(0.10): shutdownWrite() is problematic because it doesn't return a promise. It was + // TODO(2.0): shutdownWrite() is problematic because it doesn't return a promise. It was // designed to assume that it would only be called after all writes are finished and that // there was no reason to block at that point, but SSL sessions don't fit this since they // actually have to send a shutdown message. @@ -248,7 +307,6 @@ private: kj::AsyncIoStream& inner; kj::Own ownInner; - bool disconnected = false; kj::Maybe> shutdownTask; ReadyInputStreamWrapper readBuffer; @@ -256,8 +314,6 @@ private: kj::Promise tryReadInternal( void* buffer, size_t minBytes, size_t maxBytes, size_t alreadyDone) { - if (disconnected) return alreadyDone; - return sslCall([this,buffer,maxBytes]() { return SSL_read(ssl, buffer, maxBytes); }) .then([this,buffer,minBytes,maxBytes,alreadyDone](size_t n) -> kj::Promise { if (n >= minBytes || n == 0) { @@ -299,8 +355,6 @@ private: template kj::Promise sslCall(Func&& func) { - if (disconnected) return size_t(0); - auto result = func(); if (result > 0) { @@ -309,20 +363,22 @@ private: int error = SSL_get_error(ssl, result); switch (error) { case SSL_ERROR_ZERO_RETURN: - disconnected = true; - return size_t(0); + return constPromise(); case SSL_ERROR_WANT_READ: - return readBuffer.whenReady().then(kj::mvCapture(func, - [this](Func&& func) mutable { return sslCall(kj::fwd(func)); })); + return readBuffer.whenReady().then( + [this,func=kj::mv(func)]() mutable { return sslCall(kj::fwd(func)); }); case SSL_ERROR_WANT_WRITE: - return writeBuffer.whenReady().then(kj::mvCapture(func, - [this](Func&& func) mutable { return sslCall(kj::fwd(func)); })); + return writeBuffer.whenReady().then( + [this,func=kj::mv(func)]() mutable { return sslCall(kj::fwd(func)); }); case SSL_ERROR_SSL: - throwOpensslError(); + return getOpensslError(); case SSL_ERROR_SYSCALL: if (result == 0) { - disconnected = true; - return size_t(0); + // OpenSSL pre-3.0 reports unexpected disconnects this way. Note that 3.0+ report it + // as SSL_ERROR_SSL with the reason SSL_R_UNEXPECTED_EOF_WHILE_READING, which is + // handled in throwOpensslError(). + return KJ_EXCEPTION(DISCONNECTED, + "peer disconnected without gracefully ending TLS session"); } else { // According to documentation we shouldn't get here, because our BIO never returns an // "error". But in practice we do get here sometimes when the peer disconnects @@ -359,12 +415,20 @@ private: static long bioCtrl(BIO* b, int cmd, long num, void* ptr) { switch (cmd) { + case BIO_CTRL_EOF: + return reinterpret_cast(BIO_get_data(b))->readBuffer.isAtEnd(); case BIO_CTRL_FLUSH: return 1; case BIO_CTRL_PUSH: case BIO_CTRL_POP: // Informational? return 0; +#ifdef BIO_CTRL_GET_KTLS_SEND + case BIO_CTRL_GET_KTLS_SEND: + case BIO_CTRL_GET_KTLS_RECV: + // TODO(someday): Support kTLS if the underlying stream is a raw socket. + return 0; +#endif default: KJ_LOG(WARNING, "unimplemented bio_ctrl", cmd); return 0; @@ -419,18 +483,20 @@ private: class TlsConnectionReceiver final: public ConnectionReceiver, public TaskSet::ErrorHandler { public: - TlsConnectionReceiver(TlsContext &tls, Own inner) + TlsConnectionReceiver( + TlsContext &tls, Own inner, + kj::Maybe acceptErrorHandler) : tls(tls), inner(kj::mv(inner)), acceptLoopTask(acceptLoop().eagerlyEvaluate([this](Exception &&e) { onAcceptFailure(kj::mv(e)); })), + acceptErrorHandler(kj::mv(acceptErrorHandler)), tasks(*this) {} void taskFailed(Exception&& e) override { - // TODO(someday): SSL connection failures may be a fact of normal operation but they may also - // be important diagnostic information. We should allow for an error handler to be passed in so - // that network issues that affect TLS can be more discoverable from the server side. - if (e.getType() != Exception::Type::DISCONNECTED) { + KJ_IF_MAYBE(handler, acceptErrorHandler){ + handler->operator()(kj::mv(e)); + } else if (e.getType() != Exception::Type::DISCONNECTED) { KJ_LOG(ERROR, "error accepting tls connection", kj::mv(e)); } }; @@ -504,6 +570,7 @@ private: Promise acceptLoopTask; ProducerConsumerQueue queue; + kj::Maybe acceptErrorHandler; TaskSet tasks; Maybe maybeInnerException; @@ -520,10 +587,10 @@ public: // So, we make some copies here. auto& tlsRef = tls; auto hostnameCopy = kj::str(hostname); - return inner->connect().then(kj::mvCapture(hostnameCopy, - [&tlsRef](kj::String&& hostname, Own&& stream) { + return inner->connect().then( + [&tlsRef,hostname=kj::mv(hostnameCopy)](Own&& stream) { return tlsRef.wrapClient(kj::mv(stream), hostname); - })); + }); } Promise connectAuthenticated() override { @@ -563,18 +630,58 @@ public: : tls(tls), inner(*inner), ownInner(kj::mv(inner)) {} Promise> parseAddress(StringPtr addr, uint portHint) override { + // We want to parse the hostname or IP address out of `addr`. This is a bit complicated as + // KJ's default network implementation has a fairly featureful grammar for these things. + // In particular, we cannot just split on ':' because the address might be IPv6. + kj::String hostname; - KJ_IF_MAYBE(pos, addr.findFirst(':')) { - hostname = kj::heapString(addr.slice(0, *pos)); + + if (addr.startsWith("[")) { + // IPv6, like "[1234:5678::abcd]:123". Take the part between the brackets. + KJ_IF_MAYBE(pos, addr.findFirst(']')) { + hostname = kj::str(addr.slice(1, *pos)); + } else { + // Uhh??? Just take the whole thing, cert will fail later. + hostname = kj::heapString(addr); + } + } else if (addr.startsWith("unix:") || addr.startsWith("unix-abstract:")) { + // Unfortunately, `unix:123` is ambiguous (maybe there is a host named "unix"?), but the + // default KJ network implementation will interpret it as a Unix domain socket address. + // We don't want TLS to then try to authenticate that as a host named "unix". + KJ_FAIL_REQUIRE("can't authenticate Unix domain socket with TLS", addr); } else { - hostname = kj::heapString(addr); + uint colons = 0; + for (auto c: addr) { + if (c == ':') { + ++colons; + } + } + + if (colons >= 2) { + // Must be an IPv6 address. If it had a port, it would have been wrapped in []. So don't + // strip the port. + hostname = kj::heapString(addr); + } else { + // Assume host:port or ipv4:port. This is a shaky assumption, as the above hacks + // demonstrate. + // + // In theory it might make sense to extend the NetworkAddress interface so that it can tell + // us what the actual parser decided the hostname is. However, when I tried this it proved + // rather cumbersome and actually broke code in the Workers Runtime that does complicated + // stacking of kj::Network implementations. + KJ_IF_MAYBE(pos, addr.findFirst(':')) { + hostname = kj::heapString(addr.slice(0, *pos)); + } else { + hostname = kj::heapString(addr); + } + } } return inner.parseAddress(addr, portHint) - .then(kj::mvCapture(hostname, [this](kj::String&& hostname, kj::Own&& addr) + .then([this, hostname=kj::mv(hostname)](kj::Own&& addr) mutable -> kj::Own { return kj::heap(tls, kj::mv(hostname), kj::mv(addr)); - })); + }); } Own getSockaddr(const void* sockaddr, uint len) override { @@ -670,6 +777,13 @@ TlsContext::TlsContext(Options options) { if (options.minVersion > TlsVersion::TLS_1_2) { optionFlags |= SSL_OP_NO_TLSv1_2; } + if (options.minVersion > TlsVersion::TLS_1_3) { +#ifdef SSL_OP_NO_TLSv1_3 + optionFlags |= SSL_OP_NO_TLSv1_3; +#else + KJ_FAIL_REQUIRE("OpenSSL headers don't support TLS 1.3"); +#endif + } SSL_CTX_set_options(ctx, optionFlags); // note: never fails; returns new options bitmask // honor options.cipherList @@ -712,6 +826,8 @@ TlsContext::TlsContext(Options options) { this->acceptTimeout = *timeout; } + this->acceptErrorHandler = kj::mv(options.acceptErrorHandler); + this->ctx = ctx; } @@ -766,22 +882,24 @@ kj::Promise> TlsContext::wrapClient( kj::Own stream, kj::StringPtr expectedServerHostname) { auto conn = kj::heap(kj::mv(stream), reinterpret_cast(ctx)); auto promise = conn->connect(expectedServerHostname); - return promise.then(kj::mvCapture(conn, [](kj::Own conn) + return promise.then([conn=kj::mv(conn)]() mutable -> kj::Own { return kj::mv(conn); - })); + }); } kj::Promise> TlsContext::wrapServer(kj::Own stream) { auto conn = kj::heap(kj::mv(stream), reinterpret_cast(ctx)); auto promise = conn->accept(); KJ_IF_MAYBE(timeout, acceptTimeout) { - promise = KJ_REQUIRE_NONNULL(timer).timeoutAfter(*timeout, kj::mv(promise)); + promise = KJ_REQUIRE_NONNULL(timer).afterDelay(*timeout).then([]() -> kj::Promise { + return KJ_EXCEPTION(DISCONNECTED, "timed out waiting for client during TLS handshake"); + }).exclusiveJoin(kj::mv(promise)); } - return promise.then(kj::mvCapture(conn, [](kj::Own conn) + return promise.then([conn=kj::mv(conn)]() mutable -> kj::Own { return kj::mv(conn); - })); + }); } kj::Promise TlsContext::wrapClient( @@ -798,7 +916,9 @@ kj::Promise TlsContext::wrapServer(kj::AuthenticatedStr auto conn = kj::heap(kj::mv(stream.stream), reinterpret_cast(ctx)); auto promise = conn->accept(); KJ_IF_MAYBE(timeout, acceptTimeout) { - promise = KJ_REQUIRE_NONNULL(timer).timeoutAfter(*timeout, kj::mv(promise)); + promise = KJ_REQUIRE_NONNULL(timer).afterDelay(*timeout).then([]() -> kj::Promise { + return KJ_EXCEPTION(DISCONNECTED, "timed out waiting for client during TLS handshake"); + }).exclusiveJoin(kj::mv(promise)); } return promise.then([conn=kj::mv(conn),innerId=kj::mv(stream.peerIdentity)]() mutable { auto id = conn->getIdentity(kj::mv(innerId)); @@ -807,7 +927,15 @@ kj::Promise TlsContext::wrapServer(kj::AuthenticatedStr } kj::Own TlsContext::wrapPort(kj::Own port) { - return kj::heap(*this, kj::mv(port)); + auto handler = acceptErrorHandler.map([](TlsErrorHandler& handler) { + return handler.reference(); + }); + return kj::heap(*this, kj::mv(port), kj::mv(handler)); +} + +kj::Own TlsContext::wrapAddress( + kj::Own address, kj::StringPtr expectedServerHostname) { + return kj::heap(*this, kj::str(expectedServerHostname), kj::mv(address)); } kj::Own TlsContext::wrapNetwork(kj::Network& network) { @@ -885,7 +1013,7 @@ TlsCertificate::TlsCertificate(kj::ArrayPtr> asn1 for (auto i: kj::indices(asn1)) { auto p = asn1[i].begin(); - // "_AUX" apparently refers to some auxilliary information that can be appended to the + // "_AUX" apparently refers to some auxiliary information that can be appended to the // certificate, but should only be trusted for your own certificate, not the whole chain?? // I don't really know, I'm just cargo-culting. chain[i] = i == 0 ? d2i_X509_AUX(nullptr, &p, asn1[i].size()) @@ -913,7 +1041,7 @@ TlsCertificate::TlsCertificate(kj::StringPtr pem) { KJ_DEFER(BIO_free(bio)); for (auto i: kj::indices(chain)) { - // "_AUX" apparently refers to some auxilliary information that can be appended to the + // "_AUX" apparently refers to some auxiliary information that can be appended to the // certificate, but should only be trusted for your own certificate, not the whole chain?? // I don't really know, I'm just cargo-culting. chain[i] = i == 0 ? PEM_read_bio_X509_AUX(bio, nullptr, nullptr, nullptr) diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls.h b/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls.h index b901e1fa781..f78a23c9994 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/tls.h @@ -30,6 +30,8 @@ #include +KJ_BEGIN_HEADER + namespace kj { class TlsPrivateKey; @@ -40,21 +42,31 @@ class TlsConnection; enum class TlsVersion { SSL_3, // avoid; cryptographically broken - TLS_1_0, - TLS_1_1, - TLS_1_2 + TLS_1_0, // avoid; cryptographically weak + TLS_1_1, // avoid; cryptographically weak + TLS_1_2, + TLS_1_3 }; -class TlsContext { +using TlsErrorHandler = kj::Function; +// Use a simple kj::Function for handling errors during parallel accept(). + +class TlsContext: public kj::SecureNetworkWrapper { // TLS system. Allocate one of these, configure it with the proper keys and certificates (or // use the defaults), and then use it to wrap the standard KJ network interfaces in // implementations that transparently use TLS. public: + struct Options { Options(); // Initializes all values to reasonable defaults. + KJ_DISALLOW_COPY(Options); + Options(Options&&) = default; + Options& operator=(Options&&) = default; + // Options is a move-only value type. + bool useSystemTrustStore; // Whether or not to trust the system's default trust store. Default: true. @@ -76,7 +88,7 @@ class TlsContext { kj::StringPtr cipherList; // OpenSSL cipher list string. The default is a curated list designed to be compatible with - // almost all software in curent use (specifically, based on Mozilla's "intermediate" + // almost all software in current use (specifically, based on Mozilla's "intermediate" // recommendations). The defaults will change in future versions of this library to account // for the latest cryptanalysis. // @@ -97,11 +109,14 @@ class TlsContext { kj::Maybe acceptTimeout; // Timeout applied to accepting a new TLS connection. `timer` is required if this is set. + + kj::Maybe acceptErrorHandler; + // Error handler used for TLS accept errors. }; TlsContext(Options options = Options()); ~TlsContext() noexcept(false); - KJ_DISALLOW_COPY(TlsContext); + KJ_DISALLOW_COPY_AND_MOVE(TlsContext); kj::Promise> wrapServer(kj::Own stream); // Upgrade a regular network stream to TLS and begin the initial handshake as the server. The @@ -129,6 +144,12 @@ class TlsContext { // Upgrade a ConnectionReceiver to one that automatically upgrades all accepted connections to // TLS (acting as the server). + kj::Own wrapAddress( + kj::Own address, kj::StringPtr expectedServerHostname); + // Upgrade a NetworkAddress to one that automatically upgrades all connections to TLS, acting + // as the client when `connect()` is called or the server if `listen()` is called. + // `connect()` will athenticate the server as `expectedServerHostname`. + kj::Own wrapNetwork(kj::Network& network); // Upgrade a Network to one that automatically upgrades all connections to TLS. The network will // only accept addresses of the form "hostname" and "hostname:port" (it does not accept raw IP @@ -138,6 +159,7 @@ class TlsContext { void* ctx; // actually type SSL_CTX, but we don't want to #include the OpenSSL headers here kj::Maybe timer; kj::Maybe acceptTimeout; + kj::Maybe acceptErrorHandler; struct SniCallback; }; @@ -246,7 +268,7 @@ class TlsSniCallback { class TlsPeerIdentity final: public kj::PeerIdentity { public: - KJ_DISALLOW_COPY(TlsPeerIdentity); + KJ_DISALLOW_COPY_AND_MOVE(TlsPeerIdentity); ~TlsPeerIdentity() noexcept(false); kj::String toString() override; @@ -283,3 +305,5 @@ class TlsPeerIdentity final: public kj::PeerIdentity { }; } // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/compat/url.h b/libs/EXTERNAL/capnproto/c++/src/kj/compat/url.h index 2001adf4331..6e38d230612 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/compat/url.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/compat/url.h @@ -25,6 +25,8 @@ #include #include +KJ_BEGIN_HEADER + namespace kj { struct UrlOptions { @@ -145,3 +147,5 @@ struct Url { }; } // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/debug-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/debug-test.c++ index 505ae3e785f..3c65b5218b3 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/debug-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/debug-test.c++ @@ -40,11 +40,6 @@ #include #endif -#if _MSC_VER && !defined(__clang__) -#pragma warning(disable: 4996) -// Warns that sprintf() is buffer-overrunny. Yeah, I know, it's cool. -#endif - namespace kj { namespace _ { // private namespace { @@ -203,7 +198,7 @@ std::string fileLine(std::string file, int line) { file += ':'; char buffer[32]; - sprintf(buffer, "%d", line); + snprintf(buffer, sizeof(buffer), "%d", line); file += buffer; return file; } diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/debug.h b/libs/EXTERNAL/capnproto/c++/src/kj/debug.h index 25659c932fb..9f8459b1cee 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/debug.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/debug.h @@ -67,6 +67,13 @@ // * `KJ_REQUIRE(condition, ...)`: Like `KJ_ASSERT` but used to check preconditions -- e.g. to // validate parameters passed from a caller. A failure indicates that the caller is buggy. // +// * `KJ_ASSUME(condition, ...)`: Like `KJ_ASSERT`, but in release mode (if KJ_DEBUG is not +// defined; see below) instead warrants to the compiler that the condition can be assumed to +// hold, allowing it to optimize accordingly. This can result in undefined behavior, so use +// this macro *only* if you can prove to your satisfaction that the condition is guaranteed by +// surrounding code, and if the condition failing to hold would in any case result in undefined +// behavior in its dependencies. +// // * `KJ_SYSCALL(code, ...)`: Executes `code` assuming it makes a system call. A negative result // is considered an error, with error code reported via `errno`. EINTR is handled by retrying. // Other errors are handled by throwing an exception. If you need to examine the return code, @@ -98,11 +105,12 @@ // omits the first parameter and behaves like it was `false`. `FAIL_SYSCALL` and // `FAIL_RECOVERABLE_SYSCALL` take a string and an OS error number as the first two parameters. // The string should be the name of the failed system call. -// * For every macro `FOO` above, there is a `DFOO` version (or `RECOVERABLE_DFOO`) which is only -// executed in debug mode, i.e. when KJ_DEBUG is defined. KJ_DEBUG is defined automatically -// by common.h when compiling without optimization (unless NDEBUG is defined), but you can also -// define it explicitly (e.g. -DKJ_DEBUG). Generally, production builds should NOT use KJ_DEBUG -// as it may enable expensive checks that are unlikely to fail. +// * For every macro `FOO` above except `ASSUME`, there is a `DFOO` version (or +// `RECOVERABLE_DFOO`) which is only executed in debug mode, i.e. when KJ_DEBUG is defined. +// KJ_DEBUG is defined automatically by common.h when compiling without optimization (unless +// NDEBUG is defined), but you can also define it explicitly (e.g. -DKJ_DEBUG). Generally, +// production builds should NOT use KJ_DEBUG as it may enable expensive checks that are unlikely +// to fail. #pragma once @@ -114,7 +122,7 @@ KJ_BEGIN_HEADER namespace kj { -#if _MSC_VER && !defined(__clang__) +#if KJ_MSVC_TRADITIONAL_CPP // MSVC does __VA_ARGS__ differently from GCC: // - A trailing comma before an empty __VA_ARGS__ is removed automatically, whereas GCC wants // you to request this behavior with "##__VA_ARGS__". @@ -274,6 +282,20 @@ namespace kj { ::kj::_::Debug::ContextImpl \ KJ_UNIQUE_NAME(_kjContext)(KJ_UNIQUE_NAME(_kjContextFunc)) +#if _MSC_VER && !defined(__clang__) + +#define KJ_REQUIRE_NONNULL(value, ...) \ + (*([&] { \ + auto _kj_result = ::kj::_::readMaybe(value); \ + if (KJ_UNLIKELY(!_kj_result)) { \ + ::kj::_::Debug::Fault(__FILE__, __LINE__, ::kj::Exception::Type::FAILED, \ + #value " != nullptr", #__VA_ARGS__, ##__VA_ARGS__).fatal(); \ + } \ + return _kj_result; \ + }())) + +#else + #define KJ_REQUIRE_NONNULL(value, ...) \ (*({ \ auto _kj_result = ::kj::_::readMaybe(value); \ @@ -284,6 +306,8 @@ namespace kj { kj::mv(_kj_result); \ })) +#endif + #define KJ_EXCEPTION(type, ...) \ ::kj::Exception(::kj::Exception::Type::type, __FILE__, __LINE__, \ ::kj::_::Debug::makeDescription(#__VA_ARGS__, ##__VA_ARGS__)) @@ -342,10 +366,21 @@ namespace kj { #define KJ_DLOG KJ_LOG #define KJ_DASSERT KJ_ASSERT #define KJ_DREQUIRE KJ_REQUIRE +#define KJ_ASSUME KJ_ASSERT #else #define KJ_DLOG(...) do {} while (false) #define KJ_DASSERT(...) do {} while (false) #define KJ_DREQUIRE(...) do {} while (false) +#if defined(__GNUC__) +#define KJ_ASSUME(cond, ...) do { if (cond) {} else __builtin_unreachable(); } while (false) +#elif defined(__clang__) +#define KJ_ASSUME(cond, ...) __builtin_assume(cond) +#elif defined(_MSC_VER) +#define KJ_ASSUME(cond, ...) __assume(cond) +#else +#define KJ_ASSUME(...) do {} while (false) +#endif + #endif namespace _ { // private @@ -432,7 +467,7 @@ class Debug { class Context: public ExceptionCallback { public: Context(); - KJ_DISALLOW_COPY(Context); + KJ_DISALLOW_COPY_AND_MOVE(Context); virtual ~Context() noexcept(false); struct Value { @@ -462,7 +497,7 @@ class Debug { class ContextImpl: public Context { public: inline ContextImpl(Func& func): func(func) {} - KJ_DISALLOW_COPY(ContextImpl); + KJ_DISALLOW_COPY_AND_MOVE(ContextImpl); Value evaluate() override { return func(); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/encoding-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/encoding-test.c++ index 50b1223dda5..7c02b944638 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/encoding-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/encoding-test.c++ @@ -28,6 +28,10 @@ namespace { CappedArray hex(byte i) { return kj::hex((uint8_t )i); } CappedArray hex(char i) { return kj::hex((uint8_t )i); } +#if __cpp_char8_t +[[maybe_unused]] +CappedArray hex(char8_t i) { return kj::hex((uint8_t )i); } +#endif CappedArray hex(char16_t i) { return kj::hex((uint16_t)i); } CappedArray hex(char32_t i) { return kj::hex((uint32_t)i); } CappedArray hex(wchar_t i) { return kj::hex((uint32_t)i); } @@ -58,7 +62,7 @@ void expectRes(EncodingResult result, expectResImpl(kj::mv(result), arrayPtr(expected, s - 1), errors); } -#if __cplusplus >= 202000L +#if __cpp_char8_t template void expectRes(EncodingResult result, const char8_t (&expected)[s], diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/encoding.h b/libs/EXTERNAL/capnproto/c++/src/kj/encoding.h index d61ee473b52..293ecaf1daf 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/encoding.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/encoding.h @@ -372,7 +372,7 @@ EncodingResult> decodeBase64(const char (&text)[s]) { return decodeBase64(arrayPtr(text, s - 1)); } -#if __cplusplus >= 202000L +#if __cpp_char8_t template inline EncodingResult> encodeUtf16(const char8_t (&text)[s], bool nulTerminate=false) { return encodeUtf16(arrayPtr(reinterpret_cast(text), s - 1), nulTerminate); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/exception-override-symbolizer-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/exception-override-symbolizer-test.c++ new file mode 100644 index 00000000000..bb9de024966 --- /dev/null +++ b/libs/EXTERNAL/capnproto/c++/src/kj/exception-override-symbolizer-test.c++ @@ -0,0 +1,49 @@ +// Copyright (c) 2022 Cloudflare, Inc. and contributors +// Licensed under the MIT License: +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#if __GNUC__ && !_WIN32 + +#include "debug.h" +#include +#include "kj/common.h" +#include "kj/array.h" +#include +#include +#include + +namespace kj { + +// override weak symbol +String stringifyStackTrace(ArrayPtr trace) { + return kj::str("\n\nTEST_SYMBOLIZER\n\n"); +} + +namespace { + +KJ_TEST("getStackTrace() uses symbolizer override") { + auto trace = getStackTrace(); + KJ_ASSERT(strstr(trace.cStr(), "TEST_SYMBOLIZER") != nullptr, trace); +} + +} // namespace +} // namespace kj + +#endif diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/exception-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/exception-test.c++ index 2cc37d60bd3..50054ab24c2 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/exception-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/exception-test.c++ @@ -132,10 +132,16 @@ TEST(Exception, UnwindDetector) { } #endif +#if defined(FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION) || \ + KJ_HAS_COMPILER_FEATURE(address_sanitizer) || \ + defined(__SANITIZE_ADDRESS__) +// The implementation skips this check in these cases. +#else #if !__MINGW32__ // Inexplicably crashes when exception is thrown from constructor. TEST(Exception, ExceptionCallbackMustBeOnStack) { KJ_EXPECT_THROW_MESSAGE("must be allocated on the stack", new ExceptionCallback); } +#endif #endif // !__MINGW32__ #if !KJ_NO_EXCEPTIONS @@ -196,7 +202,7 @@ KJ_TEST("getStackTrace() returns correct line number, not line + 1") { // contain the right one. // 2) This test only detects the problem if the call instruction to testStackTrace() is the // *last* instruction attributed to its line of code. Whether or not this is true seems to be - // dependent on obscure complier behavior. For example, below, it could only be the case if + // dependent on obscure compiler behavior. For example, below, it could only be the case if // RVO is applied -- but in my testing, RVO does seem to be applied here. I tried several // variations involving passing via an output parameter or a global variable rather than // returning, but found some variations detected the problem and others didn't, essentially diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/exception.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/exception.c++ index c2dda506ccf..75e3179db4e 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/exception.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/exception.c++ @@ -254,6 +254,13 @@ ArrayPtr getStackTrace(ArrayPtr space, uint ignoreCount) { #endif } +#if (__GNUC__ && !_WIN32) || __clang__ +// Allow dependents to override the implementation of stack symbolication by making it a weak +// symbol. We prefer weak symbols over some sort of callback registration mechanism becasue this +// allows an alternate symbolication library to be easily linked into tests without changing the +// code of the test. +__attribute__((weak)) +#endif String stringifyStackTrace(ArrayPtr trace) { if (trace.size() == 0) return nullptr; if (getExceptionCallback().stackTraceMode() != ExceptionCallback::StackTraceMode::FULL) { @@ -278,7 +285,8 @@ String stringifyStackTrace(ArrayPtr trace) { IMAGEHLP_LINE64 lineInfo; memset(&lineInfo, 0, sizeof(lineInfo)); lineInfo.SizeOfStruct = sizeof(lineInfo); - if (dbghelp.symGetLineFromAddr64(process, reinterpret_cast(trace[i]), NULL, &lineInfo)) { + DWORD displacement; + if (dbghelp.symGetLineFromAddr64(process, reinterpret_cast(trace[i]), &displacement, &lineInfo)) { lines[i] = kj::str('\n', lineInfo.FileName, ':', lineInfo.LineNumber); } } @@ -714,6 +722,29 @@ retry: return filename; } +void resetCrashHandlers() { +#ifndef _WIN32 + struct sigaction action; + memset(&action, 0, sizeof(action)); + + action.sa_handler = SIG_DFL; + KJ_SYSCALL(sigaction(SIGSEGV, &action, nullptr)); + KJ_SYSCALL(sigaction(SIGBUS, &action, nullptr)); + KJ_SYSCALL(sigaction(SIGFPE, &action, nullptr)); + KJ_SYSCALL(sigaction(SIGABRT, &action, nullptr)); + KJ_SYSCALL(sigaction(SIGILL, &action, nullptr)); + KJ_SYSCALL(sigaction(SIGSYS, &action, nullptr)); + +#ifdef KJ_DEBUG + KJ_SYSCALL(sigaction(SIGINT, &action, nullptr)); +#endif +#endif + +#if !KJ_NO_EXCEPTIONS + std::set_terminate(nullptr); +#endif +} + StringPtr KJ_STRINGIFY(Exception::Type type) { static const char* TYPE_STRINGS[] = { "failed", @@ -805,6 +836,15 @@ void Exception::wrapContext(const char* file, int line, String&& description) { } void Exception::extendTrace(uint ignoreCount, uint limit) { + if (isFullTrace) { + // Awkward: extendTrace() was called twice without truncating in between. This should probably + // be an error, but historically we didn't check for this so I'm hesitant to make it an error + // now. We shouldn't actually extend the trace, though, as our current trace is presumably + // rooted in main() and it'd be weird to append frames "above" that. + // TODO(cleanup): Abort here and see what breaks? + return; + } + KJ_STACK_ARRAY(void*, newTraceSpace, kj::min(kj::size(trace), limit) + ignoreCount + 1, sizeof(trace)/sizeof(trace[0]) + 8, 128); @@ -816,10 +856,26 @@ void Exception::extendTrace(uint ignoreCount, uint limit) { // Copy the rest into our trace. memcpy(trace + traceCount, newTrace.begin(), newTrace.asBytes().size()); traceCount += newTrace.size(); + isFullTrace = true; } } void Exception::truncateCommonTrace() { + if (isFullTrace) { + // We're truncating the common portion of the full trace, turning it back into a limited + // trace. + isFullTrace = false; + } else { + // If the trace was never extended in the first place, trying to truncate it is at best a waste + // of time and at worst might remove information for no reason. So, don't. + // + // This comes up in particular in coroutines, when the exception originated from a co_awaited + // promise. In that case we manually add the one relevant frame to the trace, rather than + // call extendTrace() just to have to truncate most of it again a moment later in the + // unhandled_exception() callback. + return; + } + if (traceCount > 0) { // Create a "reference" stack trace that is a little bit deeper than the one in the exception. void* refTraceSpace[sizeof(this->trace) / sizeof(this->trace[0]) + 4]; @@ -857,6 +913,9 @@ void Exception::truncateCommonTrace() { } void Exception::addTrace(void* ptr) { + // TODO(cleanup): Abort here if isFullTrace is true, and see what breaks. This method only makes + // sense to call on partial traces. + if (traceCount < kj::size(trace)) { trace[traceCount++] = ptr; } @@ -969,14 +1028,21 @@ KJ_THREADLOCAL_PTR(ExceptionCallback) threadLocalCallback = nullptr; } // namespace -ExceptionCallback::ExceptionCallback(): next(getExceptionCallback()) { +void requireOnStack(void* ptr, kj::StringPtr description) { +#if defined(FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION) || \ + KJ_HAS_COMPILER_FEATURE(address_sanitizer) || \ + defined(__SANITIZE_ADDRESS__) + // When using libfuzzer or ASAN, this sanity check may spurriously fail, so skip it. +#else char stackVar; -#ifndef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION - ptrdiff_t offset = reinterpret_cast(this) - &stackVar; - KJ_ASSERT(offset < 65536 && offset > -65536, - "ExceptionCallback must be allocated on the stack."); + ptrdiff_t offset = reinterpret_cast(ptr) - &stackVar; + KJ_REQUIRE(offset < 65536 && offset > -65536, + kj::str(description)); #endif +} +ExceptionCallback::ExceptionCallback(): next(getExceptionCallback()) { + requireOnStack(this, "ExceptionCallback must be allocated on the stack."); threadLocalCallback = this; } @@ -1124,13 +1190,13 @@ ExceptionCallback& getExceptionCallback() { } void throwFatalException(kj::Exception&& exception, uint ignoreCount) { - exception.extendTrace(ignoreCount + 1); + if (ignoreCount != (uint)kj::maxValue) exception.extendTrace(ignoreCount + 1); getExceptionCallback().onFatalException(kj::mv(exception)); abort(); } void throwRecoverableException(kj::Exception&& exception, uint ignoreCount) { - exception.extendTrace(ignoreCount + 1); + if (ignoreCount != (uint)kj::maxValue) exception.extendTrace(ignoreCount + 1); getExceptionCallback().onRecoverableException(kj::mv(exception)); } @@ -1138,7 +1204,7 @@ void throwRecoverableException(kj::Exception&& exception, uint ignoreCount) { namespace _ { // private -#if __cplusplus >= 201703L +#if KJ_CPP_STD >= 201703L uint uncaughtExceptionCount() { return std::uncaught_exceptions(); @@ -1220,12 +1286,14 @@ bool UnwindDetector::isUnwinding() const { return _::uncaughtExceptionCount() > uncaughtCount; } -void UnwindDetector::catchExceptionsAsSecondaryFaults(_::Runnable& runnable) const { +#if !KJ_NO_EXCEPTIONS +void UnwindDetector::catchThrownExceptionAsSecondaryFault() const { // TODO(someday): Attach the secondary exception to whatever primary exception is causing // the unwind. For now we just drop it on the floor as this is probably fine most of the // time. - runCatchingExceptions(runnable); + getCaughtExceptionAsKj(); } +#endif #if __GNUC__ && !KJ_NO_RTTI static kj::String demangleTypeName(const char* name) { @@ -1294,6 +1362,8 @@ kj::ArrayPtr computeRelativeTrace( return bestMatch; } +#if KJ_NO_EXCEPTIONS + namespace _ { // private class RecoverableExceptionCatcher: public ExceptionCallback { @@ -1315,17 +1385,21 @@ public: }; Maybe runCatchingExceptions(Runnable& runnable) { -#if KJ_NO_EXCEPTIONS RecoverableExceptionCatcher catcher; runnable.run(); KJ_IF_MAYBE(e, catcher.caught) { e->truncateCommonTrace(); } return mv(catcher.caught); -#else +} + +} // namespace _ (private) + +#else // KJ_NO_EXCEPTIONS + +kj::Exception getCaughtExceptionAsKj() { try { - runnable.run(); - return nullptr; + throw; } catch (Exception& e) { e.truncateCommonTrace(); return kj::mv(e); @@ -1347,9 +1421,7 @@ Maybe runCatchingExceptions(Runnable& runnable) { return Exception(Exception::Type::FAILED, "(unknown)", -1, str("unknown non-KJ exception")); #endif } -#endif } - -} // namespace _ (private) +#endif // !KJ_NO_EXCEPTIONS } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/exception.h b/libs/EXTERNAL/capnproto/c++/src/kj/exception.h index 8c20b1b39ea..be90163f933 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/exception.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/exception.h @@ -80,6 +80,8 @@ class Exception { StringPtr getDescription() const { return description; } ArrayPtr getStackTrace() const { return arrayPtr(trace, traceCount); } + void setDescription(kj::String&& desc) { description = kj::mv(desc); } + StringPtr getRemoteTrace() const { return remoteTrace; } void setRemoteTrace(kj::String&& value) { remoteTrace = kj::mv(value); } // Additional stack trace data originating from a remote server. If present, then @@ -142,6 +144,19 @@ class Exception { void* trace[32]; uint traceCount; + bool isFullTrace = false; + // Is `trace` a full trace to the top of the stack (or as close as we could get before we ran + // out of space)? If this is false, then `trace` is instead a partial trace covering just the + // frames between where the exception was thrown and where it was caught. + // + // extendTrace() transitions this to true, and truncateCommonTrace() changes it back to false. + // + // In theory, an exception should only hold a full trace when it is in the process of being + // thrown via the C++ exception handling mechanism -- extendTrace() is called before the throw + // and truncateCommonTrace() after it is caught. Note that when exceptions propagate through + // async promises, the trace is extended one frame at a time instead, so isFullTrace should + // remain false. + friend class ExceptionImpl; }; @@ -185,7 +200,7 @@ class ExceptionCallback { public: ExceptionCallback(); - KJ_DISALLOW_COPY(ExceptionCallback); + KJ_DISALLOW_COPY_AND_MOVE(ExceptionCallback); virtual ~ExceptionCallback() noexcept(false); virtual void onRecoverableException(Exception&& exception); @@ -275,6 +290,20 @@ Maybe runCatchingExceptions(Func&& func); // If exception are disabled (e.g. with -fno-exceptions), this will still detect whether any // recoverable exceptions occurred while running the function and will return those. +#if !KJ_NO_EXCEPTIONS + +kj::Exception getCaughtExceptionAsKj(); +// Call from the catch block of a try/catch to get a `kj::Exception` representing the exception +// that was caught, the same way that `kj::runCatchingExceptions` would when catching an exception. +// This is sometimes useful if `runCatchingExceptions()` doesn't quite fit your use case. You can +// call this from any catch block, including `catch (...)`. +// +// Some exception types will actually be rethrown by this function, rather than returned. The most +// common example is `CanceledException`, whose purpose is to unwind the stack and is not meant to +// be caught. + +#endif // !KJ_NO_EXCEPTIONS + class UnwindDetector { // Utility for detecting when a destructor is called due to unwind. Useful for: // - Avoiding throwing exceptions in this case, which would terminate the program. @@ -301,9 +330,13 @@ class UnwindDetector { private: uint uncaughtCount; - void catchExceptionsAsSecondaryFaults(_::Runnable& runnable) const; +#if !KJ_NO_EXCEPTIONS + void catchThrownExceptionAsSecondaryFault() const; +#endif }; +#if KJ_NO_EXCEPTIONS + namespace _ { // private class Runnable { @@ -326,20 +359,39 @@ Maybe runCatchingExceptions(Runnable& runnable); } // namespace _ (private) +#endif // KJ_NO_EXCEPTIONS + template Maybe runCatchingExceptions(Func&& func) { +#if KJ_NO_EXCEPTIONS _::RunnableImpl runnable(kj::fwd(func)); return _::runCatchingExceptions(runnable); +#else + try { + func(); + return nullptr; + } catch (...) { + return getCaughtExceptionAsKj(); + } +#endif } template void UnwindDetector::catchExceptionsIfUnwinding(Func&& func) const { +#if KJ_NO_EXCEPTIONS + // Can't possibly be unwinding... + func(); +#else if (isUnwinding()) { - _::RunnableImpl> runnable(kj::fwd(func)); - catchExceptionsAsSecondaryFaults(runnable); + try { + func(); + } catch (...) { + catchThrownExceptionAsSecondaryFault(); + } } else { func(); } +#endif } #define KJ_ON_SCOPE_SUCCESS(code) \ @@ -388,6 +440,9 @@ void printStackTraceOnCrash(); // a stack trace. You should call this as early as possible on program startup. Programs using // KJ_MAIN get this automatically. +void resetCrashHandlers(); +// Resets all signal handlers set by printStackTraceOnCrash(). + kj::StringPtr trimSourceFilename(kj::StringPtr filename); // Given a source code file name, trim off noisy prefixes like "src/" or // "/ekam-provider/canonical/". @@ -440,6 +495,10 @@ kj::ArrayPtr computeRelativeTrace( // // This is useful for debugging, when reporting several related traces at once. +void requireOnStack(void* ptr, kj::StringPtr description); +// Throw an exception if `ptr` does not appear to point to something near the top of the stack. +// Used as a safety check for types that must be stack-allocated, like ExceptionCallback. + } // namespace kj KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-test.c++ index d1d9fa2c98b..5e7596efad5 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-test.c++ @@ -19,10 +19,18 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. +#ifndef _FILE_OFFSET_BITS +#define _FILE_OFFSET_BITS 64 +// Request 64-bit off_t and ino_t, otherwise this code will break when either value exceeds 2^32. +#endif + +#include "debug.h" #include "filesystem.h" +#include "string.h" #include "test.h" #include "encoding.h" #include +#include #if _WIN32 #include #include "windows-sanity.h" @@ -207,16 +215,19 @@ bool isWine() { return false; } #endif static Own newTempFile() { - char filename[] = VAR_TMP "/kj-filesystem-test.XXXXXX"; + const char* tmpDir = getenv("TEST_TMPDIR"); + auto filename = str(tmpDir != nullptr ? tmpDir : VAR_TMP, "/kj-filesystem-test.XXXXXX"); int fd; - KJ_SYSCALL(fd = mkstemp(filename)); - KJ_DEFER(KJ_SYSCALL(unlink(filename))); + KJ_SYSCALL(fd = mkstemp(filename.begin())); + KJ_DEFER(KJ_SYSCALL(unlink(filename.cStr()))); return newDiskFile(AutoCloseFd(fd)); } class TempDir { public: - TempDir(): filename(heapString(VAR_TMP "/kj-filesystem-test.XXXXXX")) { + TempDir() { + const char* tmpDir = getenv("TEST_TMPDIR"); + filename = str(tmpDir != nullptr ? tmpDir : VAR_TMP, "/kj-filesystem-test.XXXXXX"); if (mkdtemp(filename.begin()) == nullptr) { KJ_FAIL_SYSCALL("mkdtemp", errno, filename); } @@ -879,9 +890,17 @@ KJ_TEST("DiskFile holes") { // Some filesystems, like BTRFS, report zero `spaceUsed` until synced. file->datasync(); - // Allow for block sizes as low as 512 bytes and as high as 64k. + // Allow for block sizes as low as 512 bytes and as high as 64k. Since we wrote two locations, + // two blocks should be used. auto meta = file->stat(); +#if __FreeBSD__ + // On FreeBSD with ZFS it seems to report 512 bytes used even if I write more than 512 random + // (i.e. non-compressible) bytes. I couldn't figure it out so I'm giving up for now. Maybe it's + // a bug in the system? + KJ_EXPECT(meta.spaceUsed >= 512, meta.spaceUsed); +#else KJ_EXPECT(meta.spaceUsed >= 2 * 512, meta.spaceUsed); +#endif KJ_EXPECT(meta.spaceUsed <= 2 * 65536); byte buf[7]; @@ -935,9 +954,10 @@ KJ_TEST("DiskFile holes") { #endif file->zero(1 << 20, blockSize); file->datasync(); -#if !_WIN32 +#if !_WIN32 && !__FreeBSD__ // TODO(someday): This doesn't work on Windows. I don't know why. We're definitely using the - // proper ioctl. Oh well. + // proper ioctl. Oh well. It also doesn't work on FreeBSD-ZFS, due to the bug(?) mentioned + // earlier -- the size is just always reported as 512. KJ_EXPECT(file->stat().spaceUsed < meta.spaceUsed); #endif KJ_EXPECT(file->read(1 << 20, buf) == 7); @@ -945,5 +965,34 @@ KJ_TEST("DiskFile holes") { } #endif +#if !_WIN32 // Only applies to Unix. +// Ensure the current path is correctly computed. +// +// See issue #1425. +KJ_TEST("DiskFilesystem::computeCurrentPath") { + TempDir tempDir; + auto dir = tempDir.get(); + + // Paths can be PATH_MAX, but the segments which make up that path typically + // can't exceed 255 bytes. + auto maxPathSegment = std::string(255, 'a'); + + // Create a path which exceeds the 256 byte buffer used in + // computeCurrentPath. + auto subdir = dir->openSubdir(Path({ + maxPathSegment, + maxPathSegment, + "some_path_longer_than_256_bytes" + }), WriteMode::CREATE | WriteMode::CREATE_PARENT); + + auto origDir = open(".", O_RDONLY); + KJ_SYSCALL(fchdir(KJ_ASSERT_NONNULL(subdir->getFd()))); + KJ_DEFER(KJ_SYSCALL(fchdir(origDir))); + + // Test computeCurrentPath indirectly. + newDiskFilesystem(); +} +#endif + } // namespace } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-unix.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-unix.c++ index 8c9336238d4..67d7bf22c76 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-unix.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-unix.c++ @@ -25,6 +25,12 @@ #define _GNU_SOURCE #endif +#ifndef _FILE_OFFSET_BITS +#define _FILE_OFFSET_BITS 64 +// Request 64-bit off_t. (The code will still work if we get 32-bit off_t as long as actual files +// are under 4GB.) +#endif + #include "filesystem.h" #include "debug.h" #include @@ -182,7 +188,7 @@ static void rmrfChildrenAndClose(int fd) { if (entry->d_type == DT_DIR) { int subdirFd; KJ_SYSCALL(subdirFd = openat( - fd, entry->d_name, O_RDONLY | MAYBE_O_DIRECTORY | MAYBE_O_CLOEXEC)); + fd, entry->d_name, O_RDONLY | MAYBE_O_DIRECTORY | MAYBE_O_CLOEXEC | O_NOFOLLOW)); rmrfChildrenAndClose(subdirFd); KJ_SYSCALL(unlinkat(fd, entry->d_name, AT_REMOVEDIR)); } else if (entry->d_type != DT_UNKNOWN) { @@ -211,7 +217,9 @@ static bool rmrf(int fd, StringPtr path) { if (S_ISDIR(stats.st_mode)) { int subdirFd; KJ_SYSCALL(subdirFd = openat( - fd, path.cStr(), O_RDONLY | MAYBE_O_DIRECTORY | MAYBE_O_CLOEXEC)) { return false; } + fd, path.cStr(), O_RDONLY | MAYBE_O_DIRECTORY | MAYBE_O_CLOEXEC | O_NOFOLLOW)) { + return false; + } rmrfChildrenAndClose(subdirFd); KJ_SYSCALL(unlinkat(fd, path.cStr(), AT_REMOVEDIR)) { return false; } } else { @@ -298,6 +306,11 @@ public: return fd.get(); } + void setFd(AutoCloseFd newFd) { + // Used for one hack in DiskFilesystem's constructor... + fd = kj::mv(newFd); + } + // FsNode -------------------------------------------------------------------- FsNode::Metadata stat() const { @@ -1090,7 +1103,7 @@ public: } } -#if __linux__ && defined(RENAME_EXCHANGE) +#if __linux__ && defined(RENAME_EXCHANGE) && defined(SYS_renameat2) // Try to use Linux's renameat2() to atomically check preconditions and apply. if (has(mode, WriteMode::MODIFY)) { @@ -1111,7 +1124,7 @@ public: // Presumably because the target path doesn't exist. if (has(mode, WriteMode::CREATE)) { KJ_FAIL_ASSERT("rename(tmp, path) claimed path exists but " - "renameat2(fromPath, toPath, EXCAHNGE) said it doest; concurrent modification?", + "renameat2(fromPath, toPath, EXCHANGE) said it doest; concurrent modification?", fromPath, toPath) { return false; } } else { // Assume target doesn't exist. @@ -1650,7 +1663,25 @@ public: DiskFilesystem() : root(openDir("/")), current(openDir(".")), - currentPath(computeCurrentPath()) {} + currentPath(computeCurrentPath()) { + // We sometimes like to use qemu-user to test arm64 binaries cross-compiled from an x64 host + // machine. But, because it intercepts and rewrites system calls from userspace rather than + // emulating a whole kernel, it has a lot of quirks. One quirk that hits kj::Filesystem pretty + // badly is that open("/") actually returns a file descriptor for "/usr/aarch64-linux-gnu". + // Attempts to openat() any files within there then don't work. We can detect this problem and + // correct for it here. + struct stat realRoot, fsRoot; + KJ_SYSCALL_HANDLE_ERRORS(stat("/dev/..", &realRoot)) { + default: + // stat("/dev/..") failed? Give up. + return; + } + KJ_SYSCALL(fstat(root.DiskHandle::getFd(), &fsRoot)); + if (realRoot.st_ino != fsRoot.st_ino) { + KJ_LOG(WARNING, "root dir file descriptor is broken, probably because of qemu; compensating"); + root.setFd(openDir("/dev/..")); + } + } const Directory& getRoot() const override { return root; @@ -1710,7 +1741,7 @@ private: KJ_STACK_ARRAY(char, buf, size, 256, 4096); if (getcwd(buf.begin(), size) == nullptr) { int error = errno; - if (error == ENAMETOOLONG) { + if (error == ERANGE) { size *= 2; goto retry; } else { diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-win32.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-win32.c++ index 7f3442beaed..be761894f69 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-win32.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/filesystem-disk-win32.c++ @@ -158,6 +158,17 @@ static void rmrfChildren(ArrayPtr path) { auto glob = join16(path, L"*"); WIN32_FIND_DATAW data; + // TODO(security): If `path` is a reparse point (symlink), this will follow it and delete the + // contents. We check for reparse points before recursing, but there is still a TOCTOU race + // condition. + // + // Apparently, there is a whole different directory-listing API we could be using here: + // `GetFileInformationByHandleEx()`, with the `FileIdBothDirectoryInfo` flag. This lets us + // list the contents of a directory from its already-open handle -- it's probably how we should + // do directory listing in general! If we open a file with FILE_FLAG_OPEN_REPARSE_POINT, then + // the handle will represent the reparse point itself, and attempting to list it will produce + // no entries. I had no idea this API existed when I wrote much of this code; I wish I had + // because it seems much cleaner than the ancient FindFirstFile/FindNextFile API! HANDLE handle = FindFirstFileW(glob.begin(), &data); if (handle == INVALID_HANDLE_VALUE) { auto error = GetLastError(); @@ -575,8 +586,8 @@ public: PathPtr path = KJ_ASSERT_NONNULL(dirPath); auto glob = join16(path.forWin32Api(true), L"*"); - // TODO(perf): Use FindFileEx() with FindExInfoBasic? Not apparently supported on Vista. - // TODO(someday): Use NtQueryDirectoryObject() instead? It's "internal", but so much cleaner. + // TODO(someday): Use GetFileInformationByHandleEx() with FileIdBothDirectoryInfo to enumerate + // directories instead. It's much cleaner. WIN32_FIND_DATAW data; HANDLE handle = FindFirstFileW(glob.begin(), &data); if (handle == INVALID_HANDLE_VALUE) { @@ -674,7 +685,7 @@ public: nativePath(path).begin(), GENERIC_READ, // When opening directories, we do NOT use FILE_SHARE_DELETE, because we need the directory - // path to remain vaild. + // path to remain valid. // // TODO(someday): Use NtCreateFile() and related "internal" APIs that allow for // openat()-like behavior? @@ -932,7 +943,7 @@ public: NULL)) { case ERROR_PATH_NOT_FOUND: if (has(mode, WriteMode::CREATE)) { - // A parent directory didn't exist. Maybe cerate it. + // A parent directory didn't exist. Maybe create it. if (has(mode, WriteMode::CREATE_PARENT) && path.size() > 0 && tryMkdir(path.parent(), WriteMode::CREATE | WriteMode::MODIFY | WriteMode::CREATE_PARENT, true)) { @@ -1233,7 +1244,7 @@ public: // We can't really create symlinks on Windows. Reasons: // - We'd need to know whether the target is a file or a directory to pass the correct flags. // That means we'd need to evaluate the link content and track down the target. What if the - // taget doesn't exist? It's unclear if this is even allowed on Windows. + // target doesn't exist? It's unclear if this is even allowed on Windows. // - Apparently, creating symlinks is a privileged operation on Windows prior to Windows 10. // The flag SYMBOLIC_LINK_FLAG_ALLOW_UNPRIVILEGED_CREATE is very new. KJ_UNIMPLEMENTED( @@ -1286,7 +1297,7 @@ public: case ERROR_PATH_NOT_FOUND: return false; case ERROR_ACCESS_DENIED: - // This usually means that fromPath was a directory or toPath was a direcotry. Fall back + // This usually means that fromPath was a directory or toPath was a directory. Fall back // to default implementation. break; default: diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/filesystem.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/filesystem.c++ index 62b944cf86e..1dff22ba21f 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/filesystem.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/filesystem.c++ @@ -539,7 +539,7 @@ FsNode::Metadata ReadableDirectory::lstat(PathPtr path) const { KJ_IF_MAYBE(meta, tryLstat(path)) { return *meta; } else { - KJ_FAIL_REQUIRE("no such file", path) { break; } + KJ_FAIL_REQUIRE("no such file or directory", path) { break; } return FsNode::Metadata(); } } @@ -548,7 +548,7 @@ Own ReadableDirectory::openFile(PathPtr path) const { KJ_IF_MAYBE(file, tryOpenFile(path)) { return kj::mv(*file); } else { - KJ_FAIL_REQUIRE("no such directory", path) { break; } + KJ_FAIL_REQUIRE("no such file", path) { break; } return newInMemoryFile(nullClock()); } } @@ -557,7 +557,7 @@ Own ReadableDirectory::openSubdir(PathPtr path) const { KJ_IF_MAYBE(dir, tryOpenSubdir(path)) { return kj::mv(*dir); } else { - KJ_FAIL_REQUIRE("no such file or directory", path) { break; } + KJ_FAIL_REQUIRE("no such directory", path) { break; } return newInMemoryDirectory(nullClock()); } } diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/filesystem.h b/libs/EXTERNAL/capnproto/c++/src/kj/filesystem.h index de309c4114f..323420a4421 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/filesystem.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/filesystem.h @@ -28,6 +28,8 @@ #include "function.h" #include "hash.h" +KJ_BEGIN_HEADER + namespace kj { template @@ -359,7 +361,7 @@ class FsNode { uint64_t hashCode = 0; // Hint which can be used to determine if two FsNode instances point to the same underlying // file object. If two FsNodes report different hashCodes, then they are not the same object. - // If they report the same hashCode, then they may or may not be teh same object. + // If they report the same hashCode, then they may or may not be the same object. // // The Unix filesystem implementation builds the hashCode based on st_dev and st_ino of // `struct stat`. However, note that some filesystems -- especially FUSE-based -- may not fill @@ -880,6 +882,13 @@ class Directory: public ReadableDirectory { // tryRemove() returns false in the specific case that the path doesn't exist. remove() would // throw in this case. In all other error cases (like "access denied"), tryRemove() still throws; // it is only "does not exist" that produces a false return. + // + // WARNING: The Windows implementation of recursive deletion is currently not safe to call from a + // privileged process to delete directories writable by unprivileged users, due to a race + // condition in which the user could trick the algorithm into following a symlink and deleting + // everything at the destination. This race condition is not present in the Unix + // implementation. Fixing it for Windows would require rewriting a lot of code to use different + // APIs. If you're interested, see the TODO(security) in filesystem-disk-win32.c++. // TODO(someday): // - Support sockets? There's no openat()-like interface for sockets, so it's hard to support @@ -938,7 +947,7 @@ Own newInMemoryDirectory(const Clock& clock); // which would expand it will throw. // // InMemoryDirectory has the following special properties: -// - Symlinks are processed using Path::parse(). This implies tha a symlink cannot point to a +// - Symlinks are processed using Path::parse(). This implies that a symlink cannot point to a // parent directory -- InMemoryDirectory does not know its parent. // - link() can link directory nodes in addition to files. // - link() and rename() accept any kind of Directory as `fromDirectory` -- it doesn't need to be @@ -1110,3 +1119,5 @@ void Directory::Replacer::commit() { } } // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/hash.h b/libs/EXTERNAL/capnproto/c++/src/kj/hash.h index 750a14b9580..d6ff46fd817 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/hash.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/hash.h @@ -50,6 +50,7 @@ struct HashCoder { inline uint operator*(const Array& s) const { return operator*(s.asBytes()); } inline uint operator*(const String& s) const { return operator*(s.asBytes()); } inline uint operator*(const StringPtr& s) const { return operator*(s.asBytes()); } + inline uint operator*(const ConstString& s) const { return operator*(s.asBytes()); } inline uint operator*(decltype(nullptr)) const { return 0; } inline uint operator*(bool b) const { return b; } @@ -90,6 +91,8 @@ struct HashCoder { template uint operator*(T* ptr) const { + static_assert(!isSameType, char>(), "Wrap in StringPtr if you want to hash string " + "contents. If you want to hash the pointer, cast to void*"); if (sizeof(ptr) == sizeof(uint)) { // TODO(cleanup): In C++17, make the if() above be `if constexpr ()`, then change this to // reinterpret_cast(ptr). @@ -128,6 +131,14 @@ static KJ_CONSTEXPR(const) HashCoder HASHCODER = HashCoder(); inline uint hashCode(uint value) { return value; } template inline uint hashCode(T&& value) { return hashCode(_::HASHCODER * kj::fwd(value)); } +template +inline uint hashCode(T (&arr)[N]) { + static_assert(!isSameType, char>(), "Wrap in StringPtr if you want to hash string " + "contents. If you want to hash the pointer, cast to void*"); + static_assert(isSameType, char>(), "Wrap in ArrayPtr if you want to hash a C array. " + "If you want to hash the pointer, cast to void*"); + return 0; +} template inline uint hashCode(T&&... values) { uint hashes[] = { hashCode(kj::fwd(values))... }; diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/io-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/io-test.c++ index 1ec162e2ad3..ea7bac413b3 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/io-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/io-test.c++ @@ -111,6 +111,11 @@ KJ_TEST("VectorOutputStream") { KJ_ASSERT(output.getWriteBuffer().size() == 24); KJ_ASSERT(output.getWriteBuffer().begin() == output.getArray().begin() + 40); + + output.clear(); + KJ_ASSERT(output.getWriteBuffer().begin() == output.getArray().begin()); + KJ_ASSERT(output.getWriteBuffer().size() == 64); + KJ_ASSERT(output.getArray().size() == 0); } class MockInputStream: public InputStream { diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/io.h b/libs/EXTERNAL/capnproto/c++/src/kj/io.h index a09094983f6..3edc300ca5a 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/io.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/io.h @@ -141,7 +141,7 @@ class BufferedInputStreamWrapper: public BufferedInputStream { // If the second parameter is non-null, the stream uses the given buffer instead of allocating // its own. This may improve performance if the buffer can be reused. - KJ_DISALLOW_COPY(BufferedInputStreamWrapper); + KJ_DISALLOW_COPY_AND_MOVE(BufferedInputStreamWrapper); ~BufferedInputStreamWrapper() noexcept(false); // implements BufferedInputStream ---------------------------------- @@ -167,7 +167,7 @@ class BufferedOutputStreamWrapper: public BufferedOutputStream { // If the second parameter is non-null, the stream uses the given buffer instead of allocating // its own. This may improve performance if the buffer can be reused. - KJ_DISALLOW_COPY(BufferedOutputStreamWrapper); + KJ_DISALLOW_COPY_AND_MOVE(BufferedOutputStreamWrapper); ~BufferedOutputStreamWrapper() noexcept(false); void flush(); @@ -193,7 +193,7 @@ class BufferedOutputStreamWrapper: public BufferedOutputStream { class ArrayInputStream: public BufferedInputStream { public: explicit ArrayInputStream(ArrayPtr array); - KJ_DISALLOW_COPY(ArrayInputStream); + KJ_DISALLOW_COPY_AND_MOVE(ArrayInputStream); ~ArrayInputStream() noexcept(false); // implements BufferedInputStream ---------------------------------- @@ -208,7 +208,7 @@ class ArrayInputStream: public BufferedInputStream { class ArrayOutputStream: public BufferedOutputStream { public: explicit ArrayOutputStream(ArrayPtr array); - KJ_DISALLOW_COPY(ArrayOutputStream); + KJ_DISALLOW_COPY_AND_MOVE(ArrayOutputStream); ~ArrayOutputStream() noexcept(false); ArrayPtr getArray() { @@ -228,7 +228,7 @@ class ArrayOutputStream: public BufferedOutputStream { class VectorOutputStream: public BufferedOutputStream { public: explicit VectorOutputStream(size_t initialCapacity = 4096); - KJ_DISALLOW_COPY(VectorOutputStream); + KJ_DISALLOW_COPY_AND_MOVE(VectorOutputStream); ~VectorOutputStream() noexcept(false); ArrayPtr getArray() { @@ -236,6 +236,8 @@ class VectorOutputStream: public BufferedOutputStream { return arrayPtr(vector.begin(), fillPos); } + void clear() { fillPos = vector.begin(); } + // implements BufferedInputStream ---------------------------------- ArrayPtr getWriteBuffer() override; void write(const void* buffer, size_t size) override; @@ -311,7 +313,7 @@ class FdInputStream: public InputStream { public: explicit FdInputStream(int fd): fd(fd) {} explicit FdInputStream(AutoCloseFd fd): fd(fd), autoclose(mv(fd)) {} - KJ_DISALLOW_COPY(FdInputStream); + KJ_DISALLOW_COPY_AND_MOVE(FdInputStream); ~FdInputStream() noexcept(false); size_t tryRead(void* buffer, size_t minBytes, size_t maxBytes) override; @@ -329,7 +331,7 @@ class FdOutputStream: public OutputStream { public: explicit FdOutputStream(int fd): fd(fd) {} explicit FdOutputStream(AutoCloseFd fd): fd(fd), autoclose(mv(fd)) {} - KJ_DISALLOW_COPY(FdOutputStream); + KJ_DISALLOW_COPY_AND_MOVE(FdOutputStream); ~FdOutputStream() noexcept(false); void write(const void* buffer, size_t size) override; @@ -405,7 +407,7 @@ class HandleInputStream: public InputStream { public: explicit HandleInputStream(void* handle): handle(handle) {} explicit HandleInputStream(AutoCloseHandle handle): handle(handle), autoclose(mv(handle)) {} - KJ_DISALLOW_COPY(HandleInputStream); + KJ_DISALLOW_COPY_AND_MOVE(HandleInputStream); ~HandleInputStream() noexcept(false); size_t tryRead(void* buffer, size_t minBytes, size_t maxBytes) override; @@ -421,7 +423,7 @@ class HandleOutputStream: public OutputStream { public: explicit HandleOutputStream(void* handle): handle(handle) {} explicit HandleOutputStream(AutoCloseHandle handle): handle(handle), autoclose(mv(handle)) {} - KJ_DISALLOW_COPY(HandleOutputStream); + KJ_DISALLOW_COPY_AND_MOVE(HandleOutputStream); ~HandleOutputStream() noexcept(false); void write(const void* buffer, size_t size) override; diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/list-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/list-test.c++ index 0c7172de8bd..9286226e5ea 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/list-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/list-test.c++ @@ -39,6 +39,7 @@ KJ_TEST("List") { TestElement foo(123); TestElement bar(456); + TestElement baz(789); { list.add(foo); @@ -77,6 +78,26 @@ KJ_TEST("List") { ++iter; KJ_ASSERT(iter == clist.end()); } + + { + list.addFront(baz); + KJ_EXPECT(list.size() == 3); + KJ_DEFER(list.remove(baz)); + + { + auto iter = list.begin(); + KJ_ASSERT(iter != list.end()); + KJ_EXPECT(iter->i == 789); + ++iter; + KJ_ASSERT(iter != list.end()); + KJ_EXPECT(iter->i == 123); + ++iter; + KJ_ASSERT(iter != list.end()); + KJ_EXPECT(iter->i == 321); + ++iter; + KJ_ASSERT(iter == list.end()); + } + } } KJ_EXPECT(list.size() == 1); @@ -97,7 +118,7 @@ KJ_TEST("List") { KJ_EXPECT(list.size() == 0); { - list.add(bar); + list.addFront(bar); KJ_DEFER(list.remove(bar)); KJ_EXPECT(!list.empty()); KJ_EXPECT(list.size() == 1); @@ -110,6 +131,23 @@ KJ_TEST("List") { ++iter; KJ_ASSERT(iter == list.end()); } + + { + list.add(baz); + KJ_EXPECT(list.size() == 2); + KJ_DEFER(list.remove(baz)); + + { + auto iter = list.begin(); + KJ_ASSERT(iter != list.end()); + KJ_EXPECT(iter->i == 321); + ++iter; + KJ_ASSERT(iter != list.end()); + KJ_EXPECT(iter->i == 789); + ++iter; + KJ_ASSERT(iter == list.end()); + } + } } KJ_EXPECT(list.empty()); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/list.h b/libs/EXTERNAL/capnproto/c++/src/kj/list.h index 02b8cdb39e9..4575b0f96ea 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/list.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/list.h @@ -71,7 +71,7 @@ class List { // // Note that you MUST manually remove an element from the list before destroying it. ListLinks // do not automatically unlink themselves because this could lead to subtle thread-safety bugs - // if the List is guarded by a mutex, and that mutex is not currenty locked. Normally, you should + // if the List is guarded by a mutex, and that mutex is not currently locked. Normally, you should // have T's destructor remove it from any lists. You can use `link.isLinked()` to check if the // item is currently in a list. // @@ -84,7 +84,7 @@ class List { public: List() = default; - KJ_DISALLOW_COPY(List); + KJ_DISALLOW_COPY_AND_MOVE(List); bool empty() const { return head == nullptr; @@ -102,6 +102,19 @@ class List { ++listSize; } + void addFront(T& element) { + if ((element.*link).prev != nullptr) _::throwDoubleAdd(); + (element.*link).next = head; + (element.*link).prev = &head; + KJ_IF_MAYBE(oldHead, head) { + (oldHead->*link).prev = &(element.*link).next; + } else { + tail = &(element.*link).next; + } + head = element; + ++listSize; + } + void remove(T& element) { if ((element.*link).prev == nullptr) _::throwRemovedNotPresent(); *((element.*link).prev) = (element.*link).next; @@ -141,7 +154,7 @@ class ListLink { // Intentionally `noexcept` because we want to crash if a dangling pointer was left in a list. if (prev != nullptr) _::throwDestroyedWhileInList(); } - KJ_DISALLOW_COPY(ListLink); + KJ_DISALLOW_COPY_AND_MOVE(ListLink); bool isLinked() const { return prev != nullptr; } diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/map-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/map-test.c++ index ac2b2410e3c..42b5846e600 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/map-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/map-test.c++ @@ -29,7 +29,9 @@ namespace { KJ_TEST("HashMap") { HashMap map; - map.insert(kj::str("foo"), 123); + kj::String ownFoo = kj::str("foo"); + const char* origFoo = ownFoo.begin(); + map.insert(kj::mv(ownFoo), 123); map.insert(kj::str("bar"), 456); KJ_EXPECT(KJ_ASSERT_NONNULL(map.find("foo"_kj)) == 123); @@ -39,10 +41,16 @@ KJ_TEST("HashMap") { map.upsert(kj::str("foo"), 789, [](int& old, uint newValue) { KJ_EXPECT(old == 123); KJ_EXPECT(newValue == 789); - old = 321; + old = 4321; }); + KJ_EXPECT(KJ_ASSERT_NONNULL(map.find("foo"_kj)) == 4321); + KJ_EXPECT(KJ_ASSERT_NONNULL(map.findEntry("foo"_kj)).key.begin() == origFoo); + + map.upsert(kj::str("foo"), 321); + KJ_EXPECT(KJ_ASSERT_NONNULL(map.find("foo"_kj)) == 321); + KJ_EXPECT(KJ_ASSERT_NONNULL(map.findEntry("foo"_kj)).key.begin() == origFoo); KJ_EXPECT( map.findOrCreate("foo"_kj, @@ -70,7 +78,9 @@ KJ_TEST("HashMap") { KJ_TEST("TreeMap") { TreeMap map; - map.insert(kj::str("foo"), 123); + kj::String ownFoo = kj::str("foo"); + const char* origFoo = ownFoo.begin(); + map.insert(kj::mv(ownFoo), 123); map.insert(kj::str("bar"), 456); KJ_EXPECT(KJ_ASSERT_NONNULL(map.find("foo"_kj)) == 123); @@ -80,10 +90,16 @@ KJ_TEST("TreeMap") { map.upsert(kj::str("foo"), 789, [](int& old, uint newValue) { KJ_EXPECT(old == 123); KJ_EXPECT(newValue == 789); - old = 321; + old = 4321; }); + KJ_EXPECT(KJ_ASSERT_NONNULL(map.find("foo"_kj)) == 4321); + KJ_EXPECT(KJ_ASSERT_NONNULL(map.findEntry("foo"_kj)).key.begin() == origFoo); + + map.upsert(kj::str("foo"), 321); + KJ_EXPECT(KJ_ASSERT_NONNULL(map.find("foo"_kj)) == 321); + KJ_EXPECT(KJ_ASSERT_NONNULL(map.findEntry("foo"_kj)).key.begin() == origFoo); KJ_EXPECT( map.findOrCreate("foo"_kj, diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/map.h b/libs/EXTERNAL/capnproto/c++/src/kj/map.h index bbd2058a01d..4f92a2034e9 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/map.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/map.h @@ -68,8 +68,10 @@ class HashMap { template Entry& upsert(Key key, Value value, UpdateFunc&& update); + Entry& upsert(Key key, Value value); // Tries to insert a new entry. However, if a duplicate already exists (according to some index), // then update(Value& existingValue, Value&& newValue) is called to modify the existing value. + // If no function is provided, the default is to simply replace the value (but not the key). template kj::Maybe find(KeyLike&& key); @@ -97,12 +99,15 @@ class HashMap { bool erase(KeyLike&& key); // Erase the entry with the matching key. // - // WARNING: This invalidates all pointers and interators into the map. Use eraseAll() if you need + // WARNING: This invalidates all pointers and iterators into the map. Use eraseAll() if you need // to iterate and erase multiple entries. void erase(Entry& entry); // Erase an entry by reference. + Entry release(Entry& row); + // Erase an entry and return its content by move. + template ()(instance(), instance()))> size_t eraseAll(Predicate&& predicate); @@ -167,8 +172,10 @@ class TreeMap { template Entry& upsert(Key key, Value value, UpdateFunc&& update); + Entry& upsert(Key key, Value value); // Tries to insert a new entry. However, if a duplicate already exists (according to some index), // then update(Value& existingValue, Value&& newValue) is called to modify the existing value. + // If no function is provided, the default is to simply replace the value (but not the key). template kj::Maybe find(KeyLike&& key); @@ -200,12 +207,15 @@ class TreeMap { bool erase(KeyLike&& key); // Erase the entry with the matching key. // - // WARNING: This invalidates all pointers and interators into the map. Use eraseAll() if you need + // WARNING: This invalidates all pointers and iterators into the map. Use eraseAll() if you need // to iterate and erase multiple entries. void erase(Entry& entry); // Erase an entry by reference. + Entry release(Entry& row); + // Erase an entry and return its content by move. + template ()(instance(), instance()))> size_t eraseAll(Predicate&& predicate); @@ -350,6 +360,15 @@ typename HashMap::Entry& HashMap::upsert( }); } +template +typename HashMap::Entry& HashMap::upsert( + Key key, Value value) { + return table.upsert(Entry { kj::mv(key), kj::mv(value) }, + [&](Entry& existingEntry, Entry&& newEntry) { + existingEntry.value = kj::mv(newEntry.value); + }); +} + template template kj::Maybe HashMap::find(KeyLike&& key) { @@ -397,6 +416,11 @@ void HashMap::erase(Entry& entry) { table.erase(entry); } +template +typename HashMap::Entry HashMap::release(Entry& entry) { + return table.release(entry); +} + template template size_t HashMap::eraseAll(Predicate&& predicate) { @@ -463,6 +487,15 @@ typename TreeMap::Entry& TreeMap::upsert( }); } +template +typename TreeMap::Entry& TreeMap::upsert( + Key key, Value value) { + return table.upsert(Entry { kj::mv(key), kj::mv(value) }, + [&](Entry& existingEntry, Entry&& newEntry) { + existingEntry.value = kj::mv(newEntry.value); + }); +} + template template kj::Maybe TreeMap::find(KeyLike&& key) { @@ -521,6 +554,11 @@ void TreeMap::erase(Entry& entry) { table.erase(entry); } +template +typename TreeMap::Entry TreeMap::release(Entry& entry) { + return table.release(entry); +} + template template size_t TreeMap::eraseAll(Predicate&& predicate) { diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/memory-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/memory-test.c++ index 6e1e343232b..96ec0f58321 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/memory-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/memory-test.c++ @@ -225,7 +225,7 @@ struct SingularDerivedDynamic final: public DynamicType1 { ~SingularDerivedDynamic() { destructorCalled = true; } - KJ_DISALLOW_COPY(SingularDerivedDynamic); + KJ_DISALLOW_COPY_AND_MOVE(SingularDerivedDynamic); bool& destructorCalled; }; @@ -238,7 +238,7 @@ struct MultipleDerivedDynamic final: public DynamicType1, public DynamicType2 { destructorCalled = true; } - KJ_DISALLOW_COPY(MultipleDerivedDynamic); + KJ_DISALLOW_COPY_AND_MOVE(MultipleDerivedDynamic); bool& destructorCalled; }; @@ -295,6 +295,14 @@ TEST(Memory, OwnVoid) { voidPtr = nullptr; KJ_EXPECT(destructorCalled); } + + { + Maybe> maybe; + maybe = Own(&maybe, NullDisposer::instance); + KJ_EXPECT(KJ_ASSERT_NONNULL(maybe).get() == &maybe); + maybe = nullptr; + KJ_EXPECT(maybe == nullptr); + } } TEST(Memory, OwnConstVoid) { @@ -349,6 +357,14 @@ TEST(Memory, OwnConstVoid) { voidPtr = nullptr; KJ_EXPECT(destructorCalled); } + + { + Maybe> maybe; + maybe = Own(&maybe, NullDisposer::instance); + KJ_EXPECT(KJ_ASSERT_NONNULL(maybe).get() == &maybe); + maybe = nullptr; + KJ_EXPECT(maybe == nullptr); + } } struct IncompleteType; @@ -395,6 +411,95 @@ KJ_TEST("Own") { } } +KJ_TEST("Own with static disposer") { + static int* disposedPtr = nullptr; + struct MyDisposer { + static void dispose(int* value) { + KJ_EXPECT(disposedPtr == nullptr); + disposedPtr = value; + }; + }; + + int i; + + { + Own ptr(&i); + KJ_EXPECT(disposedPtr == nullptr); + } + KJ_EXPECT(disposedPtr == &i); + disposedPtr = nullptr; + + { + Own ptr(&i); + KJ_EXPECT(disposedPtr == nullptr); + Own ptr2(kj::mv(ptr)); + KJ_EXPECT(disposedPtr == nullptr); + } + KJ_EXPECT(disposedPtr == &i); + disposedPtr = nullptr; + + { + Own ptr2; + { + Own ptr(&i); + KJ_EXPECT(disposedPtr == nullptr); + ptr2 = kj::mv(ptr); + KJ_EXPECT(disposedPtr == nullptr); + } + KJ_EXPECT(disposedPtr == nullptr); + } + KJ_EXPECT(disposedPtr == &i); +} + +KJ_TEST("Maybe>") { + Maybe> m = heap(123); + KJ_EXPECT(m != nullptr); + Maybe mRef = m; + KJ_EXPECT(KJ_ASSERT_NONNULL(mRef) == 123); + KJ_EXPECT(&KJ_ASSERT_NONNULL(mRef) == KJ_ASSERT_NONNULL(m).get()); +} + +#if KJ_CPP_STD > 201402L +int* sawIntPtr = nullptr; + +void freeInt(int* ptr) { + sawIntPtr = ptr; + delete ptr; +} + +void freeChar(char* c) { + delete c; +} + +void free(StaticType* ptr) { + delete ptr; +} + +void free(const char* ptr) {} + +KJ_TEST("disposeWith") { + auto i = new int(1); + { + auto p = disposeWith(i); + KJ_EXPECT(sawIntPtr == nullptr); + } + KJ_EXPECT(sawIntPtr == i); + { + auto c = new char('a'); + auto p = disposeWith(c); + } + { + // Explicit cast required to avoid ambiguity when overloads are present. + auto s = new StaticType{1}; + auto p = disposeWith(free)>(s); + } + { + const char c = 'a'; + auto p2 = disposeWith(free)>(&c); + } +} +#endif + // TODO(test): More tests. } // namespace diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/memory.h b/libs/EXTERNAL/capnproto/c++/src/kj/memory.h index 1229b5c3ecf..6b004f988c7 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/memory.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/memory.h @@ -171,8 +171,11 @@ class NullDisposer: public Disposer { // ======================================================================================= // Own -- An owned pointer. +template +class Own; + template -class Own { +class Own { // A transferrable title to a T. When an Own goes out of scope, the object's Disposer is // called to dispose of it. An Own can be efficiently passed by move, without relocating the // underlying object; this transfers ownership. @@ -199,6 +202,9 @@ class Own { : disposer(other.disposer), ptr(cast(other.ptr)) { other.ptr = nullptr; } + template ()>> + inline Own(Own&& other) noexcept; + // Convert statically-disposed Own to dynamically-disposed Own. inline Own(T* ptr, const Disposer& disposer) noexcept: disposer(&disposer), ptr(ptr) {} ~Own() noexcept(false) { dispose(); } @@ -286,7 +292,7 @@ class Own { return ptr; } - template + template friend class Own; friend class Maybe>; }; @@ -303,72 +309,180 @@ inline const void* Own::cast(U* ptr) { return _::castToConstVoid(ptr); } +template +class Own { + // If a `StaticDisposer` is specified (which is not the norm), then the object will be deleted + // by calling StaticDisposer::dispose(pointer). The pointer passed to `dispose()` could be a + // superclass of `T`, if the pointer has been upcast. + // + // This type can be useful for micro-optimization, if you've found that you are doing excessive + // heap allocations to the point where the virtual call on destruction is costing non-negligible + // resources. You should avoid this unless you have a specific need, because it precludes a lot + // of power. + +public: + KJ_DISALLOW_COPY(Own); + inline Own(): ptr(nullptr) {} + inline Own(Own&& other) noexcept + : ptr(other.ptr) { other.ptr = nullptr; } + inline Own(Own, StaticDisposer>&& other) noexcept + : ptr(other.ptr) { other.ptr = nullptr; } + template ()>> + inline Own(Own&& other) noexcept + : ptr(cast(other.ptr)) { + other.ptr = nullptr; + } + inline explicit Own(T* ptr) noexcept: ptr(ptr) {} + + ~Own() noexcept(false) { dispose(); } + + inline Own& operator=(Own&& other) { + // Move-assignnment operator. + + // Careful, this might own `other`. Therefore we have to transfer the pointers first, then + // dispose. + T* ptrCopy = ptr; + ptr = other.ptr; + other.ptr = nullptr; + if (ptrCopy != nullptr) { + StaticDisposer::dispose(ptrCopy); + } + return *this; + } + + inline Own& operator=(decltype(nullptr)) { + dispose(); + return *this; + } + + template + Own downcast() { + // Downcast the pointer to Own, destroying the original pointer. If this pointer does not + // actually point at an instance of U, the results are undefined (throws an exception in debug + // mode if RTTI is enabled, otherwise you're on your own). + + Own result; + if (ptr != nullptr) { + result.ptr = &kj::downcast(*ptr); + ptr = nullptr; + } + return result; + } + +#define NULLCHECK KJ_IREQUIRE(ptr != nullptr, "null Own<> dereference") + inline T* operator->() { NULLCHECK; return ptr; } + inline const T* operator->() const { NULLCHECK; return ptr; } + inline _::RefOrVoid operator*() { NULLCHECK; return *ptr; } + inline _::RefOrVoid operator*() const { NULLCHECK; return *ptr; } +#undef NULLCHECK + inline T* get() { return ptr; } + inline const T* get() const { return ptr; } + inline operator T*() { return ptr; } + inline operator const T*() const { return ptr; } + +private: + T* ptr; + + inline explicit Own(decltype(nullptr)): ptr(nullptr) {} + + inline bool operator==(decltype(nullptr)) { return ptr == nullptr; } + inline bool operator!=(decltype(nullptr)) { return ptr != nullptr; } + // Only called by Maybe>. + + inline void dispose() { + // Make sure that if an exception is thrown, we are left with a null ptr, so we won't possibly + // dispose again. + T* ptrCopy = ptr; + if (ptrCopy != nullptr) { + ptr = nullptr; + StaticDisposer::dispose(ptrCopy); + } + } + + template + static inline T* cast(U* ptr) { + return ptr; + } + + template + friend class Own; + friend class Maybe>; +}; + namespace _ { // private -template +template class OwnOwn { public: - inline OwnOwn(Own&& value) noexcept: value(kj::mv(value)) {} + inline OwnOwn(Own&& value) noexcept: value(kj::mv(value)) {} - inline Own& operator*() & { return value; } - inline const Own& operator*() const & { return value; } - inline Own&& operator*() && { return kj::mv(value); } - inline const Own&& operator*() const && { return kj::mv(value); } - inline Own* operator->() { return &value; } - inline const Own* operator->() const { return &value; } - inline operator Own*() { return value ? &value : nullptr; } - inline operator const Own*() const { return value ? &value : nullptr; } + inline Own& operator*() & { return value; } + inline const Own& operator*() const & { return value; } + inline Own&& operator*() && { return kj::mv(value); } + inline const Own&& operator*() const && { return kj::mv(value); } + inline Own* operator->() { return &value; } + inline const Own* operator->() const { return &value; } + inline operator Own*() { return value ? &value : nullptr; } + inline operator const Own*() const { return value ? &value : nullptr; } private: - Own value; + Own value; }; -template -OwnOwn readMaybe(Maybe>&& maybe) { return OwnOwn(kj::mv(maybe.ptr)); } -template -Own* readMaybe(Maybe>& maybe) { return maybe.ptr ? &maybe.ptr : nullptr; } -template -const Own* readMaybe(const Maybe>& maybe) { return maybe.ptr ? &maybe.ptr : nullptr; } +template +OwnOwn readMaybe(Maybe>&& maybe) { return OwnOwn(kj::mv(maybe.ptr)); } +template +Own* readMaybe(Maybe>& maybe) { return maybe.ptr ? &maybe.ptr : nullptr; } +template +const Own* readMaybe(const Maybe>& maybe) { + return maybe.ptr ? &maybe.ptr : nullptr; +} } // namespace _ (private) -template -class Maybe> { +template +class Maybe> { public: inline Maybe(): ptr(nullptr) {} - inline Maybe(Own&& t) noexcept: ptr(kj::mv(t)) {} + inline Maybe(Own&& t) noexcept: ptr(kj::mv(t)) {} inline Maybe(Maybe&& other) noexcept: ptr(kj::mv(other.ptr)) {} template - inline Maybe(Maybe>&& other): ptr(mv(other.ptr)) {} + inline Maybe(Maybe>&& other): ptr(mv(other.ptr)) {} template - inline Maybe(Own&& other): ptr(mv(other)) {} + inline Maybe(Own&& other): ptr(mv(other)) {} inline Maybe(decltype(nullptr)) noexcept: ptr(nullptr) {} - inline Own& emplace(Own value) { + inline Own& emplace(Own value) { // Assign the Maybe to the given value and return the content. This avoids the need to do a // KJ_ASSERT_NONNULL() immediately after setting the Maybe just to read it back again. ptr = kj::mv(value); return ptr; } - inline operator Maybe() { return ptr.get(); } - inline operator Maybe() const { return ptr.get(); } + template + inline operator NoInfer>() { return ptr.get(); } + template + inline operator NoInfer>() const { return ptr.get(); } + // Implicit conversion to `Maybe`. The weird templating is to make sure that + // `Maybe>` can be instantiated with the compiler complaining about forming references + // to void -- the use of templates here will cause SFINAE to kick in and hide these, whereas if + // they are not templates then SFINAE isn't applied and so they are considered errors. inline Maybe& operator=(Maybe&& other) { ptr = kj::mv(other.ptr); return *this; } inline bool operator==(decltype(nullptr)) const { return ptr == nullptr; } inline bool operator!=(decltype(nullptr)) const { return ptr != nullptr; } - Own& orDefault(Own& defaultValue) { + Own& orDefault(Own& defaultValue) { if (ptr == nullptr) { return defaultValue; } else { return ptr; } } - const Own& orDefault(const Own& defaultValue) const { + const Own& orDefault(const Own& defaultValue) const { if (ptr == nullptr) { return defaultValue; } else { @@ -376,8 +490,18 @@ class Maybe> { } } + template () ? instance>() : instance()())> + Result orDefault(F&& lazyDefaultValue) && { + if (ptr == nullptr) { + return lazyDefaultValue(); + } else { + return kj::mv(ptr); + } + } + template - auto map(Func&& f) & -> Maybe&>()))> { + auto map(Func&& f) & -> Maybe&>()))> { if (ptr == nullptr) { return nullptr; } else { @@ -386,7 +510,7 @@ class Maybe> { } template - auto map(Func&& f) const & -> Maybe&>()))> { + auto map(Func&& f) const & -> Maybe&>()))> { if (ptr == nullptr) { return nullptr; } else { @@ -395,7 +519,7 @@ class Maybe> { } template - auto map(Func&& f) && -> Maybe&&>()))> { + auto map(Func&& f) && -> Maybe&&>()))> { if (ptr == nullptr) { return nullptr; } else { @@ -404,7 +528,7 @@ class Maybe> { } template - auto map(Func&& f) const && -> Maybe&&>()))> { + auto map(Func&& f) const && -> Maybe&&>()))> { if (ptr == nullptr) { return nullptr; } else { @@ -413,16 +537,16 @@ class Maybe> { } private: - Own ptr; + Own ptr; template friend class Maybe; - template - friend _::OwnOwn _::readMaybe(Maybe>&& maybe); - template - friend Own* _::readMaybe(Maybe>& maybe); - template - friend const Own* _::readMaybe(const Maybe>& maybe); + template + friend _::OwnOwn _::readMaybe(Maybe>&& maybe); + template + friend Own* _::readMaybe(Maybe>& maybe); + template + friend const Own* _::readMaybe(const Maybe>& maybe); }; namespace _ { // private @@ -447,6 +571,32 @@ template const HeapDisposer HeapDisposer::instance = HeapDisposer(); #endif +#if KJ_CPP_STD >= 202002L +template +class CustomDisposer: public Disposer { +public: + void disposeImpl(void* pointer) const override { + (*F)(reinterpret_cast(pointer)); + } +}; + +template +static constexpr CustomDisposer CUSTOM_DISPOSER_INSTANCE {}; +#else +template +class CustomDisposer: public Disposer { +public: + static const CustomDisposer instance; + + void disposeImpl(void* pointer) const override { + (*F)(reinterpret_cast(pointer)); + } +}; + +template +const CustomDisposer CustomDisposer::instance = CustomDisposer(); +#endif + } // namespace _ (private) template @@ -470,6 +620,26 @@ Own> heap(T&& orig) { return Own(new T2(kj::fwd(orig)), _::HeapDisposer::instance); } +#if KJ_CPP_STD > 201402L +#if KJ_CPP_STD < 202002L +template +Own disposeWith(T* ptr) { + // Associate a pre-allocated raw pointer with a corresponding disposal function. + // The first template parameter should be a function pointer e.g. disposeWith(new int(0)). + + return Own(ptr, _::CustomDisposer::instance); +} +#else +template +Own disposeWith(T* ptr) { + // Associate a pre-allocated raw pointer with a corresponding disposal function. + // The first template parameter should be a function pointer e.g. disposeWith(new int(0)). + + return Own(ptr, _::CUSTOM_DISPOSER_INSTANCE); +} +#endif +#endif + template Own> attachVal(T&& value, Attachments&&... attachments); // Returns an Own that takes ownership of `value` and `attachments`, and points to `value`. @@ -559,6 +729,21 @@ struct DisposableOwnedBundle final: public Disposer, public OwnedBundle { void disposeImpl(void* pointer) const override { delete this; } }; +template +class StaticDisposerAdapter final: public Disposer { + // Adapts a static disposer to be called dynamically. +public: + virtual void disposeImpl(void* pointer) const override { + StaticDisposer::dispose(reinterpret_cast(pointer)); + } + + static const StaticDisposerAdapter instance; +}; + +template +const StaticDisposerAdapter StaticDisposerAdapter::instance = + StaticDisposerAdapter(); + } // namespace _ (private) template @@ -591,6 +776,22 @@ Own> attachVal(T&& value, Attachments&&... attachments) { return Own>(&bundle->first, *bundle); } +template +template +inline Own::Own(Own&& other) noexcept + : ptr(cast(other.ptr)) { + if (_::castToVoid(other.ptr) != reinterpret_cast(other.ptr)) { + // Oh dangit, there's some sort of multiple inheritance going on and `StaticDisposerAdapter` + // won't actually work because it'll receive a pointer pointing to the top of the object, which + // isn't exactly the same as the `U*` pointer it wants. We have no choice but to allocate + // a dynamic disposer here. + disposer = new _::DisposableOwnedBundle>(kj::mv(other)); + } else { + disposer = &_::StaticDisposerAdapter::instance; + other.ptr = nullptr; + } +} + } // namespace kj KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/mutex-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/mutex-test.c++ index 32c0a5cf615..1b51e3e7c0d 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/mutex-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/mutex-test.c++ @@ -686,6 +686,7 @@ KJ_TEST("tracking blocking on mutex acquisition") { event.sigev_value.sival_ptr = &blockingInfo; KJ_SYSCALL(event._sigev_un._tid = gettid()); KJ_SYSCALL(timer_create(CLOCK_MONOTONIC, &event, &timer)); + KJ_DEFER(timer_delete(timer)); kj::Duration timeout = 50 * MILLISECONDS; struct itimerspec spec; @@ -742,6 +743,7 @@ KJ_TEST("tracking blocked on CondVar::wait") { event.sigev_value.sival_ptr = &blockingInfo; KJ_SYSCALL(event._sigev_un._tid = gettid()); KJ_SYSCALL(timer_create(CLOCK_MONOTONIC, &event, &timer)); + KJ_DEFER(timer_delete(timer)); kj::Duration timeout = 50 * MILLISECONDS; struct itimerspec spec; @@ -798,6 +800,7 @@ KJ_TEST("tracking blocked on Once::init") { event.sigev_value.sival_ptr = &blockingInfo; KJ_SYSCALL(event._sigev_un._tid = gettid()); KJ_SYSCALL(timer_create(CLOCK_MONOTONIC, &event, &timer)); + KJ_DEFER(timer_delete(timer)); Lazy once; MutexGuarded onceInitializing(false); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/mutex.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/mutex.c++ index 63e4f86793a..1ddd4921be4 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/mutex.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/mutex.c++ @@ -144,7 +144,7 @@ bool Mutex::checkPredicate(Waiter& waiter) { KJ_IF_MAYBE(exception, kj::runCatchingExceptions([&]() { result = waiter.predicate.check(); })) { - // Exception thown. + // Exception thrown. result = true; waiter.exception = kj::heap(kj::mv(*exception)); }; @@ -499,7 +499,7 @@ void Mutex::wait(Predicate& predicate, Maybe timeout, LockSourceLocati KJ_SYSCALL_HANDLE_ERRORS(syscall(SYS_futex, &waiter.futex, FUTEX_WAIT_BITSET_PRIVATE, 0, tsp, nullptr, FUTEX_BITSET_MATCH_ANY)) { case EAGAIN: - // Indicates that the futex was already non-zero by the time the kernal looked at it. + // Indicates that the futex was already non-zero by the time the kernel looked at it. // Not an error. break; case ETIMEDOUT: { diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/mutex.h b/libs/EXTERNAL/capnproto/c++/src/kj/mutex.h index e7b299e8116..619e7f95d45 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/mutex.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/mutex.h @@ -129,7 +129,7 @@ class Mutex { public: Mutex(); ~Mutex(); - KJ_DISALLOW_COPY(Mutex); + KJ_DISALLOW_COPY_AND_MOVE(Mutex); enum Exclusivity { EXCLUSIVE, @@ -247,7 +247,7 @@ class Mutex { kj::Maybe waitersHead = nullptr; kj::Maybe* waitersTail = &waitersHead; - // linked list of waitUntil()s; can only modify under lock + // linked list of waiters; can only modify under lock inline void addWaiter(Waiter& waiter); inline void removeWaiter(Waiter& waiter); @@ -268,7 +268,7 @@ class Once { Once(bool startInitialized = false); ~Once(); #endif - KJ_DISALLOW_COPY(Once); + KJ_DISALLOW_COPY_AND_MOVE(Once); class Initializer { public: @@ -446,12 +446,12 @@ class MutexGuarded { Maybe> lockExclusiveWithTimeout(Duration timeout, LockSourceLocationArg location = {}) const; - // Attempts to exclusively lock the object. If the timeout elapses before the lock is aquired, + // Attempts to exclusively lock the object. If the timeout elapses before the lock is acquired, // this returns null. Maybe> lockSharedWithTimeout(Duration timeout, LockSourceLocationArg location = {}) const; - // Attempts to lock the value for shared access. If the timeout elapses before the lock is aquired, + // Attempts to lock the value for shared access. If the timeout elapses before the lock is acquired, // this returns null. inline const T& getWithoutLock() const { return value; } @@ -758,7 +758,7 @@ using BlockedOnReason = OneOf blockedReason() noexcept; // Returns the information about the reason the current thread is blocked synchronously on KJ // lock primitives. Returns nullptr if the current thread is not currently blocked on such -// primitves. This is intended to be called from a signal handler to check whether the current +// primitives. This is intended to be called from a signal handler to check whether the current // thread is blocked. Outside of a signal handler there is little value to this function. In those // cases by definition the thread is not blocked. This includes the callable used as part of a // condition variable since that happens after the lock is acquired & the current thread is no diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/one-of-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/one-of-test.c++ index 7c74ca7e858..d7bec4d1084 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/one-of-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/one-of-test.c++ @@ -210,4 +210,25 @@ KJ_TEST("OneOf copy/move from alternative variants") { } } +template +struct T { + unsigned int n = N; +}; + +TEST(OneOf, MaxVariants) { + kj::OneOf< + T<1>, T<2>, T<3>, T<4>, T<5>, T<6>, T<7>, T<8>, T<9>, T<10>, + T<11>, T<12>, T<13>, T<14>, T<15>, T<16>, T<17>, T<18>, T<19>, T<20>, + T<21>, T<22>, T<23>, T<24>, T<25>, T<26>, T<27>, T<28>, T<29>, T<30>, + T<31>, T<32>, T<33>, T<34>, T<35>, T<36>, T<37>, T<38>, T<39>, T<40>, + T<41>, T<42>, T<43>, T<44>, T<45>, T<46>, T<47>, T<48>, T<49>, T<50> + > v; + + v = T<1>(); + EXPECT_TRUE(v.is>()); + + v = T<50>(); + EXPECT_TRUE(v.is>()); +} + } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/one-of.h b/libs/EXTERNAL/capnproto/c++/src/kj/one-of.h index cbed3916b87..51d4220a457 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/one-of.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/one-of.h @@ -98,6 +98,191 @@ enum class Variants20 { _variant0, _variant1, _variant2, _variant3, _variant4, _ _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, _variant19 }; +enum class Variants21 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20 }; +enum class Variants22 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21 }; +enum class Variants23 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22 }; +enum class Variants24 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23 }; +enum class Variants25 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24 }; +enum class Variants26 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25 }; +enum class Variants27 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26 }; +enum class Variants28 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27 }; +enum class Variants29 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28 }; +enum class Variants30 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29 }; +enum class Variants31 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30 }; +enum class Variants32 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31 }; +enum class Variants33 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32 }; +enum class Variants34 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33 }; +enum class Variants35 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34 }; +enum class Variants36 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35 }; +enum class Variants37 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36 }; +enum class Variants38 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37 }; +enum class Variants39 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38 }; +enum class Variants40 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39 }; +enum class Variants41 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39, _variant40 }; +enum class Variants42 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39, _variant40, _variant41 }; +enum class Variants43 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39, _variant40, _variant41, _variant42 }; +enum class Variants44 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39, _variant40, _variant41, _variant42, + _variant43 }; +enum class Variants45 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39, _variant40, _variant41, _variant42, + _variant43, _variant44 }; +enum class Variants46 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39, _variant40, _variant41, _variant42, + _variant43, _variant44, _variant45 }; +enum class Variants47 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39, _variant40, _variant41, _variant42, + _variant43, _variant44, _variant45, _variant46 }; +enum class Variants48 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39, _variant40, _variant41, _variant42, + _variant43, _variant44, _variant45, _variant46, _variant47 }; +enum class Variants49 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39, _variant40, _variant41, _variant42, + _variant43, _variant44, _variant45, _variant46, _variant47, _variant48 }; +enum class Variants50 { _variant0, _variant1, _variant2, _variant3, _variant4, _variant5, _variant6, + _variant7, _variant8, _variant9, _variant10, _variant11, _variant12, + _variant13, _variant14, _variant15, _variant16, _variant17, _variant18, + _variant19, _variant20, _variant21, _variant22, _variant23, _variant24, + _variant25, _variant26, _variant27, _variant28, _variant29, _variant30, + _variant31, _variant32, _variant33, _variant34, _variant35, _variant36, + _variant37, _variant38, _variant39, _variant40, _variant41, _variant42, + _variant43, _variant44, _variant45, _variant46, _variant47, _variant48, + _variant49 }; template struct Variants_; template <> struct Variants_<0> { typedef Variants0 Type; }; @@ -121,6 +306,36 @@ template <> struct Variants_<17> { typedef Variants17 Type; }; template <> struct Variants_<18> { typedef Variants18 Type; }; template <> struct Variants_<19> { typedef Variants19 Type; }; template <> struct Variants_<20> { typedef Variants20 Type; }; +template <> struct Variants_<21> { typedef Variants21 Type; }; +template <> struct Variants_<22> { typedef Variants22 Type; }; +template <> struct Variants_<23> { typedef Variants23 Type; }; +template <> struct Variants_<24> { typedef Variants24 Type; }; +template <> struct Variants_<25> { typedef Variants25 Type; }; +template <> struct Variants_<26> { typedef Variants26 Type; }; +template <> struct Variants_<27> { typedef Variants27 Type; }; +template <> struct Variants_<28> { typedef Variants28 Type; }; +template <> struct Variants_<29> { typedef Variants29 Type; }; +template <> struct Variants_<30> { typedef Variants30 Type; }; +template <> struct Variants_<31> { typedef Variants31 Type; }; +template <> struct Variants_<32> { typedef Variants32 Type; }; +template <> struct Variants_<33> { typedef Variants33 Type; }; +template <> struct Variants_<34> { typedef Variants34 Type; }; +template <> struct Variants_<35> { typedef Variants35 Type; }; +template <> struct Variants_<36> { typedef Variants36 Type; }; +template <> struct Variants_<37> { typedef Variants37 Type; }; +template <> struct Variants_<38> { typedef Variants38 Type; }; +template <> struct Variants_<39> { typedef Variants39 Type; }; +template <> struct Variants_<40> { typedef Variants40 Type; }; +template <> struct Variants_<41> { typedef Variants41 Type; }; +template <> struct Variants_<42> { typedef Variants42 Type; }; +template <> struct Variants_<43> { typedef Variants43 Type; }; +template <> struct Variants_<44> { typedef Variants44 Type; }; +template <> struct Variants_<45> { typedef Variants45 Type; }; +template <> struct Variants_<46> { typedef Variants46 Type; }; +template <> struct Variants_<47> { typedef Variants47 Type; }; +template <> struct Variants_<48> { typedef Variants48 Type; }; +template <> struct Variants_<49> { typedef Variants49 Type; }; +template <> struct Variants_<50> { typedef Variants50 Type; }; template using Variants = typename Variants_::Type; @@ -389,7 +604,7 @@ void OneOf::allHandled() { KJ_UNREACHABLE; } -#if __cplusplus > 201402L +#if KJ_CPP_STD > 201402L #define KJ_SWITCH_ONEOF(value) \ switch (auto _kj_switch_subject = (value)._switchSubject(); _kj_switch_subject->which()) #else diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/parse/common.h b/libs/EXTERNAL/capnproto/c++/src/kj/parse/common.h index 6d2653f907d..cfb97299caf 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/parse/common.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/parse/common.h @@ -68,7 +68,7 @@ class IteratorInput { parent->best = kj::max(kj::max(pos, best), parent->best); } } - KJ_DISALLOW_COPY(IteratorInput); + KJ_DISALLOW_COPY_AND_MOVE(IteratorInput); void advanceParent() { parent->pos = pos; diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/refcount-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/refcount-test.c++ index 81f5e5fb374..c3b39d45770 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/refcount-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/refcount-test.c++ @@ -57,4 +57,81 @@ TEST(Refcount, Basic) { #endif } +struct SetTrueInDestructor2 { + // Like above but doesn't inherit Refcounted. + + SetTrueInDestructor2(bool* ptr): ptr(ptr) {} + ~SetTrueInDestructor2() { *ptr = true; } + + bool* ptr; +}; + +KJ_TEST("RefcountedWrapper") { + { + bool b = false; + Own> w = refcountedWrapper(&b); + KJ_EXPECT(!b); + + Own ref1 = w->addWrappedRef(); + Own ref2 = w->addWrappedRef(); + + KJ_EXPECT(ref1.get() == &w->getWrapped()); + KJ_EXPECT(ref1.get() == ref2.get()); + + KJ_EXPECT(!b); + + w = nullptr; + ref1 = nullptr; + + KJ_EXPECT(!b); + + ref2 = nullptr; + + KJ_EXPECT(b); + } + + // Wrap Own. + { + bool b = false; + Own>> w = + refcountedWrapper(kj::heap(&b)); + KJ_EXPECT(!b); + + Own ref1 = w->addWrappedRef(); + Own ref2 = w->addWrappedRef(); + + KJ_EXPECT(ref1.get() == &w->getWrapped()); + KJ_EXPECT(ref1.get() == ref2.get()); + + KJ_EXPECT(!b); + + w = nullptr; + ref1 = nullptr; + + KJ_EXPECT(!b); + + ref2 = nullptr; + + KJ_EXPECT(b); + } + + // Try wrapping an `int` to really demonstrate the wrapped type can be anything. + { + Own> w = refcountedWrapper(123); + int* ptr = &w->getWrapped(); + KJ_EXPECT(*ptr == 123); + + Own ref1 = w->addWrappedRef(); + Own ref2 = w->addWrappedRef(); + + KJ_EXPECT(ref1.get() == ptr); + KJ_EXPECT(ref2.get() == ptr); + + w = nullptr; + ref1 = nullptr; + + KJ_EXPECT(*ref2 == 123); + } +} + } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/refcount.h b/libs/EXTERNAL/capnproto/c++/src/kj/refcount.h index 51fd6dc79b8..03b5234d8d7 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/refcount.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/refcount.h @@ -67,7 +67,7 @@ class Refcounted: private Disposer { public: Refcounted() = default; virtual ~Refcounted() noexcept(false); - KJ_DISALLOW_COPY(Refcounted); + KJ_DISALLOW_COPY_AND_MOVE(Refcounted); inline bool isShared() const { return refcount > 1; } // Check if there are multiple references to this object. This is sometimes useful for deciding @@ -85,6 +85,9 @@ class Refcounted: private Disposer { friend Own addRef(T& object); template friend Own refcounted(Params&&... params); + + template + friend class RefcountedWrapper; }; template @@ -112,6 +115,59 @@ Own Refcounted::addRefInternal(T* object) { return Own(object, *refcounted); } +template +class RefcountedWrapper: public Refcounted { + // Adds refcounting as a wrapper around an existing type, allowing you to construct references + // with type Own that appears to point directly to the underlying object. + +public: + template + RefcountedWrapper(Params&&... params): wrapped(kj::fwd(params)...) {} + + T& getWrapped() { return wrapped; } + const T& getWrapped() const { return wrapped; } + + Own addWrappedRef() { + // Return an owned reference to the wrapped object that is backed by a refcount. + ++refcount; + return Own(&wrapped, *this); + } + +private: + T wrapped; +}; + +template +class RefcountedWrapper>: public Refcounted { + // Specialization for when the wrapped type is itself Own. We don't want this to result in + // Own>. + +public: + RefcountedWrapper(Own wrapped): wrapped(kj::mv(wrapped)) {} + + T& getWrapped() { return *wrapped; } + const T& getWrapped() const { return *wrapped; } + + Own addWrappedRef() { + // Return an owned reference to the wrapped object that is backed by a refcount. + ++refcount; + return Own(wrapped.get(), *this); + } + +private: + Own wrapped; +}; + +template +Own> refcountedWrapper(Params&&... params) { + return refcounted>(kj::fwd(params)...); +} + +template +Own>> refcountedWrapper(Own&& wrapped) { + return refcounted>>(kj::mv(wrapped)); +} + // ======================================================================================= // Atomic (thread-safe) refcounting // @@ -129,7 +185,7 @@ class AtomicRefcounted: private kj::Disposer { public: AtomicRefcounted() = default; virtual ~AtomicRefcounted() noexcept(false); - KJ_DISALLOW_COPY(AtomicRefcounted); + KJ_DISALLOW_COPY_AND_MOVE(AtomicRefcounted); inline bool isShared() const { #if _MSC_VER && !defined(__clang__) diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/source-location.h b/libs/EXTERNAL/capnproto/c++/src/kj/source-location.h index ebcd4d3f120..40c53e8b2e0 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/source-location.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/source-location.h @@ -23,6 +23,8 @@ #include "string.h" +KJ_BEGIN_HEADER + // GCC does not implement __builtin_COLUMN() as that's non-standard but MSVC & clang do. // MSVC does as of version https://github.com/microsoft/STL/issues/54) but there's currently not any // pressing need for this for MSVC & writing the write compiler version check is annoying. @@ -39,7 +41,7 @@ #define KJ_CALLER_COLUMN() 0 #endif -#if __cplusplus > 201703L +#if KJ_CPP_STD > 201703L #define KJ_COMPILER_SUPPORTS_SOURCE_LOCATION 1 #elif defined(__has_builtin) // Clang 9 added these builtins: https://releases.llvm.org/9.0.0/tools/clang/docs/LanguageExtensions.html @@ -105,3 +107,5 @@ KJ_UNUSED static kj::String KJ_STRINGIFY(const NoopSourceLocation& l) { return kj::String(); } } // namespace kj + +KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/string-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/string-test.c++ index b461a4bb3fc..6109b7bbabf 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/string-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/string-test.c++ @@ -24,6 +24,7 @@ #include #include "vector.h" #include +#include namespace kj { namespace _ { // private @@ -164,6 +165,91 @@ TEST(String, parseAs) { EXPECT_EQ(heapString("1").parseAs(), 1); } +TEST(String, tryParseAs) { + KJ_EXPECT(StringPtr("0").tryParseAs() == 0.0); + KJ_EXPECT(StringPtr("0").tryParseAs() == 0.0); + KJ_EXPECT(StringPtr("0.0").tryParseAs() == 0.0); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1.0); + KJ_EXPECT(StringPtr("1.0").tryParseAs() == 1.0); + KJ_EXPECT(StringPtr("1e100").tryParseAs() == 1e100); + KJ_EXPECT(StringPtr("inf").tryParseAs() == inf()); + KJ_EXPECT(StringPtr("infinity").tryParseAs() == inf()); + KJ_EXPECT(StringPtr("INF").tryParseAs() == inf()); + KJ_EXPECT(StringPtr("INFINITY").tryParseAs() == inf()); + KJ_EXPECT(StringPtr("1e100000").tryParseAs() == inf()); + KJ_EXPECT(StringPtr("-inf").tryParseAs() == -inf()); + KJ_EXPECT(StringPtr("-infinity").tryParseAs() == -inf()); + KJ_EXPECT(StringPtr("-INF").tryParseAs() == -inf()); + KJ_EXPECT(StringPtr("-INFINITY").tryParseAs() == -inf()); + KJ_EXPECT(StringPtr("-1e100000").tryParseAs() == -inf()); + KJ_EXPECT(isNaN(StringPtr("nan").tryParseAs().orDefault(0.0)) == true); + KJ_EXPECT(isNaN(StringPtr("NAN").tryParseAs().orDefault(0.0)) == true); + KJ_EXPECT(isNaN(StringPtr("NaN").tryParseAs().orDefault(0.0)) == true); + KJ_EXPECT(StringPtr("").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("a").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("1a").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("+-1").tryParseAs() == nullptr); + + KJ_EXPECT(StringPtr("1").tryParseAs() == 1.0); + + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("9223372036854775807").tryParseAs() == 9223372036854775807LL); + KJ_EXPECT(StringPtr("-9223372036854775808").tryParseAs() == -9223372036854775808ULL); + KJ_EXPECT(StringPtr("9223372036854775808").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("-9223372036854775809").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("a").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("1a").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("+-1").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("010").tryParseAs() == 10); + KJ_EXPECT(StringPtr("0010").tryParseAs() == 10); + KJ_EXPECT(StringPtr("0x10").tryParseAs() == 16); + KJ_EXPECT(StringPtr("0X10").tryParseAs() == 16); + KJ_EXPECT(StringPtr("-010").tryParseAs() == -10); + KJ_EXPECT(StringPtr("-0x10").tryParseAs() == -16); + KJ_EXPECT(StringPtr("-0X10").tryParseAs() == -16); + + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("0").tryParseAs() == 0); + KJ_EXPECT(StringPtr("18446744073709551615").tryParseAs() == 18446744073709551615ULL); + KJ_EXPECT(StringPtr("-1").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("18446744073709551616").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("a").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("1a").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("+-1").tryParseAs() == nullptr); + + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("2147483647").tryParseAs() == 2147483647); + KJ_EXPECT(StringPtr("-2147483648").tryParseAs() == -2147483648); + KJ_EXPECT(StringPtr("2147483648").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("-2147483649").tryParseAs() == nullptr); + + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("0").tryParseAs() == 0U); + KJ_EXPECT(StringPtr("4294967295").tryParseAs() == 4294967295U); + KJ_EXPECT(StringPtr("-1").tryParseAs() == nullptr); + KJ_EXPECT(StringPtr("4294967296").tryParseAs() == nullptr); + + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + KJ_EXPECT(StringPtr("1").tryParseAs() == 1); + + KJ_EXPECT(heapString("1").tryParseAs() == 1); +} + #if KJ_COMPILER_SUPPORTS_STL_STRING_INTEROP TEST(String, StlInterop) { std::string foo = "foo"; @@ -246,7 +332,7 @@ KJ_TEST("ArrayPtr == StringPtr") { ArrayPtr a = s; KJ_EXPECT(a == s); -#if __cplusplus >= 202000L +#if KJ_CPP_STD >= 202000L KJ_EXPECT(s == a); #endif } @@ -282,7 +368,8 @@ KJ_TEST("float stringification and parsing is not locale-dependent") { KJ_EXPECT("1.5"_kj.parseAs() == 1.5); if (setlocale(LC_NUMERIC, "es_ES") == nullptr && - setlocale(LC_NUMERIC, "es_ES.utf8") == nullptr) { + setlocale(LC_NUMERIC, "es_ES.utf8") == nullptr && + setlocale(LC_NUMERIC, "es_ES.UTF-8") == nullptr) { // Some systems may not have the desired locale available. KJ_LOG(WARNING, "Couldn't set locale to es_ES. Skipping this test."); } else { @@ -292,6 +379,60 @@ KJ_TEST("float stringification and parsing is not locale-dependent") { KJ_EXPECT("1.5"_kj.parseAs() == 1.5); } } + +KJ_TEST("ConstString literal operator") { + kj::ConstString theString = "it's a const string!"_kjc; + KJ_EXPECT(theString == "it's a const string!"); +} + +KJ_TEST("ConstString promotion") { + kj::StringPtr theString = "it's a const string!"; + kj::ConstString constString = theString.attach(); + KJ_EXPECT(constString == "it's a const string!"); +} + +struct DestructionOrderRecorder { + DestructionOrderRecorder(uint& counter, uint& recordTo) + : counter(counter), recordTo(recordTo) {} + ~DestructionOrderRecorder() { + recordTo = ++counter; + } + + uint& counter; + uint& recordTo; +}; + +KJ_TEST("ConstString attachment lifetimes") { + uint counter = 0; + uint destroyed1 = 0; + uint destroyed2 = 0; + uint destroyed3 = 0; + + auto obj1 = kj::heap(counter, destroyed1); + auto obj2 = kj::heap(counter, destroyed2); + auto obj3 = kj::heap(counter, destroyed3); + + StringPtr theString = "it's a string!"; + const char* ptr = theString.begin(); + + ConstString combined = theString.attach(kj::mv(obj1), kj::mv(obj2), kj::mv(obj3)); + + KJ_EXPECT(combined.begin() == ptr); + + KJ_EXPECT(obj1.get() == nullptr); + KJ_EXPECT(obj2.get() == nullptr); + KJ_EXPECT(obj3.get() == nullptr); + KJ_EXPECT(destroyed1 == 0); + KJ_EXPECT(destroyed2 == 0); + KJ_EXPECT(destroyed3 == 0); + + combined = nullptr; + + KJ_EXPECT(destroyed1 == 1, destroyed1); + KJ_EXPECT(destroyed2 == 2, destroyed2); + KJ_EXPECT(destroyed3 == 3, destroyed3); +} + } // namespace } // namespace _ (private) } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/string.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/string.c++ index 7dc5fc67ab4..cf2c5fcaa95 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/string.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/string.c++ @@ -29,11 +29,6 @@ namespace kj { -#if _MSC_VER && !defined(__clang__) -#pragma warning(disable: 4996) -// Warns that sprintf() is buffer-overrunny. We know that, it's cool. -#endif - namespace { bool isHex(const char *s) { if (*s == '-') s++; @@ -51,6 +46,17 @@ long long parseSigned(const StringPtr& s, long long min, long long max) { return value; } +Maybe tryParseSigned(const StringPtr& s, long long min, long long max) { + if (s == nullptr) { return nullptr; } // String does not contain valid number. + char *endPtr; + errno = 0; + auto value = strtoll(s.begin(), &endPtr, isHex(s.cStr()) ? 16 : 10); + if (endPtr != s.end() || errno == ERANGE || value < min || max < value) { + return nullptr; + } + return value; +} + unsigned long long parseUnsigned(const StringPtr& s, unsigned long long max) { KJ_REQUIRE(s != nullptr, "String does not contain valid number", s) { return 0; } char *endPtr; @@ -64,6 +70,15 @@ unsigned long long parseUnsigned(const StringPtr& s, unsigned long long max) { return value; } +Maybe tryParseUnsigned(const StringPtr& s, unsigned long long max) { + if (s == nullptr) { return nullptr; } // String does not contain valid number. + char *endPtr; + errno = 0; + auto value = strtoull(s.begin(), &endPtr, isHex(s.cStr()) ? 16 : 10); + if (endPtr != s.end() || errno == ERANGE || max < value || s[0] == '-') { return nullptr; } + return value; +} + template T parseInteger(const StringPtr& s) { if (static_cast(minValue) < 0) { @@ -76,6 +91,18 @@ T parseInteger(const StringPtr& s) { } } +template +Maybe tryParseInteger(const StringPtr& s) { + if (static_cast(minValue) < 0) { + long long min = static_cast(minValue); + long long max = static_cast(maxValue); + return static_cast>(tryParseSigned(s, min, max)); + } else { + unsigned long long max = static_cast(maxValue); + return static_cast>(tryParseUnsigned(s, max)); + } +} + } // namespace #define PARSE_AS_INTEGER(T) \ @@ -93,6 +120,21 @@ PARSE_AS_INTEGER(long long); PARSE_AS_INTEGER(unsigned long long); #undef PARSE_AS_INTEGER +#define TRY_PARSE_AS_INTEGER(T) \ + template <> Maybe StringPtr::tryParseAs() const { return tryParseInteger(*this); } +TRY_PARSE_AS_INTEGER(char); +TRY_PARSE_AS_INTEGER(signed char); +TRY_PARSE_AS_INTEGER(unsigned char); +TRY_PARSE_AS_INTEGER(short); +TRY_PARSE_AS_INTEGER(unsigned short); +TRY_PARSE_AS_INTEGER(int); +TRY_PARSE_AS_INTEGER(unsigned int); +TRY_PARSE_AS_INTEGER(long); +TRY_PARSE_AS_INTEGER(unsigned long); +TRY_PARSE_AS_INTEGER(long long); +TRY_PARSE_AS_INTEGER(unsigned long long); +#undef TRY_PARSE_AS_INTEGER + String heapString(size_t size) { char* buffer = _::HeapArrayDisposer::allocate(size + 1); buffer[size] = '\0'; @@ -478,7 +520,7 @@ kj::String LocalizeRadix(const char* input, const char* radix_pos) { // to divuldge the locale's radix character. No, localeconv() is NOT // thread-safe. char temp[16]; - int size = sprintf(temp, "%.1f", 1.5); + int size = snprintf(temp, sizeof(temp), "%.1f", 1.5); KJ_ASSERT(temp[0] == '1'); KJ_ASSERT(temp[size-1] == '5'); KJ_ASSERT(size <= 6); @@ -571,9 +613,26 @@ double parseDouble(const StringPtr& s) { return value; } +Maybe tryParseDouble(const StringPtr& s) { + if(s == nullptr) { return nullptr; } + char *endPtr; + errno = 0; + auto value = _::NoLocaleStrtod(s.begin(), &endPtr); + if (endPtr != s.end()) { return nullptr; } +#if _WIN32 || __CYGWIN__ || __BIONIC__ + if (isNaN(value)) { + return kj::nan(); + } +#endif + return value; +} + } // namespace _ (private) template <> double StringPtr::parseAs() const { return _::parseDouble(*this); } template <> float StringPtr::parseAs() const { return _::parseDouble(*this); } +template <> Maybe StringPtr::tryParseAs() const { return _::tryParseDouble(*this); } +template <> Maybe StringPtr::tryParseAs() const { return _::tryParseDouble(*this); } + } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/string.h b/libs/EXTERNAL/capnproto/c++/src/kj/string.h index 193442aad06..10b978875aa 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/string.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/string.h @@ -23,13 +23,16 @@ #include #include "array.h" +#include "kj/common.h" #include KJ_BEGIN_HEADER namespace kj { class StringPtr; + class LiteralStringConst; class String; + class ConstString; class StringTree; // string-tree.h } @@ -50,6 +53,8 @@ constexpr kj::StringPtr operator "" _kj(const char* str, size_t n); // string literal vs. one with _kj (assuming the compiler is able to optimize away strlen() on a // string literal). +constexpr kj::LiteralStringConst operator "" _kjc(const char* str, size_t n); + namespace kj { // Our STL string SFINAE trick does not work with GCC 4.7, but it works with Clang and GCC 4.8, so @@ -76,6 +81,7 @@ class StringPtr { inline StringPtr(const char* begin KJ_LIFETIMEBOUND, const char* end KJ_LIFETIMEBOUND): StringPtr(begin, end - begin) {} inline StringPtr(String&& value KJ_LIFETIMEBOUND) : StringPtr(value) {} inline StringPtr(const String& value KJ_LIFETIMEBOUND); + inline StringPtr(const ConstString& value KJ_LIFETIMEBOUND); StringPtr& operator=(String&& value) = delete; inline StringPtr& operator=(decltype(nullptr)) { content = ArrayPtr("", 1); @@ -92,15 +98,20 @@ class StringPtr { #endif #if KJ_COMPILER_SUPPORTS_STL_STRING_INTEROP - template ().c_str())> - inline StringPtr(const T& t KJ_LIFETIMEBOUND): StringPtr(t.c_str()) {} - // Allow implicit conversion from any class that has a c_str() method (namely, std::string). + template < + typename T, + typename = decltype(instance().c_str()), + typename = decltype(instance().size())> + inline StringPtr(const T& t KJ_LIFETIMEBOUND): StringPtr(t.c_str(), t.size()) {} + // Allow implicit conversion from any class that has a c_str() and a size() method (namely, std::string). // We use a template trick to detect std::string in order to avoid including the header for // those who don't want it. - - template ().c_str())> - inline operator T() const { return cStr(); } - // Allow implicit conversion to any class that has a c_str() method (namely, std::string). + template < + typename T, + typename = decltype(instance().c_str()), + typename = decltype(instance().size())> + inline operator T() const { return {cStr(), size()}; } + // Allow implicit conversion to any class that has a c_str() method and a size() method (namely, std::string). // We use a template trick to detect std::string in order to avoid including the header for // those who don't want it. #endif @@ -122,10 +133,14 @@ class StringPtr { inline constexpr const char* end() const { return content.end() - 1; } inline constexpr bool operator==(decltype(nullptr)) const { return content.size() <= 1; } +#if !__cpp_impl_three_way_comparison inline constexpr bool operator!=(decltype(nullptr)) const { return content.size() > 1; } +#endif inline bool operator==(const StringPtr& other) const; +#if !__cpp_impl_three_way_comparison inline bool operator!=(const StringPtr& other) const { return !(*this == other); } +#endif inline bool operator< (const StringPtr& other) const; inline bool operator> (const StringPtr& other) const { return other < *this; } inline bool operator<=(const StringPtr& other) const { return !(other < *this); } @@ -136,11 +151,11 @@ class StringPtr { // A string slice is only NUL-terminated if it is a suffix, so slice() has a one-parameter // version that assumes end = size(). - inline bool startsWith(const StringPtr& other) const; - inline bool endsWith(const StringPtr& other) const; + inline bool startsWith(const StringPtr& other) const { return asArray().startsWith(other);} + inline bool endsWith(const StringPtr& other) const { return asArray().endsWith(other); } - inline Maybe findFirst(char c) const; - inline Maybe findLast(char c) const; + inline Maybe findFirst(char c) const { return asArray().findFirst(c); } + inline Maybe findLast(char c) const { return asArray().findLast(c); } template T parseAs() const; @@ -149,13 +164,22 @@ class StringPtr { // Integer numbers prefixed by "0" are parsed in base 10 (unlike strtoi with base 0). // Overflowed integer numbers throw exception. // Overflowed floating numbers return inf. + template + Maybe tryParseAs() const; + // Same as parseAs, but rather than throwing an exception we return NULL. + + template + ConstString attach(Attachments&&... attachments) const KJ_WARN_UNUSED_RESULT; + ConstString attach() const KJ_WARN_UNUSED_RESULT; + // Like ArrayPtr::attach(), but instead promotes a StringPtr into a ConstString. Generally the + // attachment should be an object that somehow owns the String that the StringPtr is pointing at. private: inline explicit constexpr StringPtr(ArrayPtr content): content(content) {} + friend constexpr StringPtr (::operator "" _kj)(const char* str, size_t n); + friend class LiteralStringConst; ArrayPtr content; - - friend constexpr kj::StringPtr (::operator "" _kj)(const char* str, size_t n); friend class SourceLocation; }; @@ -178,6 +202,29 @@ template <> unsigned long long StringPtr::parseAs() const; template <> float StringPtr::parseAs() const; template <> double StringPtr::parseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; +template <> Maybe StringPtr::tryParseAs() const; + +class LiteralStringConst: public StringPtr { +public: + inline operator ConstString() const; + +private: + inline explicit constexpr LiteralStringConst(ArrayPtr content): StringPtr(content) {} + friend constexpr LiteralStringConst (::operator "" _kjc)(const char* str, size_t n); +}; + // ======================================================================================= // String -- A NUL-terminated Array containing UTF-8 text. // @@ -231,14 +278,18 @@ class String { inline bool operator!=(decltype(nullptr)) const { return content.size() > 1; } inline bool operator==(const StringPtr& other) const { return StringPtr(*this) == other; } +#if !__cpp_impl_three_way_comparison inline bool operator!=(const StringPtr& other) const { return StringPtr(*this) != other; } +#endif inline bool operator< (const StringPtr& other) const { return StringPtr(*this) < other; } inline bool operator> (const StringPtr& other) const { return StringPtr(*this) > other; } inline bool operator<=(const StringPtr& other) const { return StringPtr(*this) <= other; } inline bool operator>=(const StringPtr& other) const { return StringPtr(*this) >= other; } inline bool operator==(const String& other) const { return StringPtr(*this) == StringPtr(other); } +#if !__cpp_impl_three_way_comparison inline bool operator!=(const String& other) const { return StringPtr(*this) != StringPtr(other); } +#endif inline bool operator< (const String& other) const { return StringPtr(*this) < StringPtr(other); } inline bool operator> (const String& other) const { return StringPtr(*this) > StringPtr(other); } inline bool operator<=(const String& other) const { return StringPtr(*this) <= StringPtr(other); } @@ -247,8 +298,17 @@ class String { // comparisons between two strings are ambiguous. (Clang turns this into a warning, // -Wambiguous-reversed-operator, due to the stupidity...) - inline bool startsWith(const StringPtr& other) const { return StringPtr(*this).startsWith(other);} - inline bool endsWith(const StringPtr& other) const { return StringPtr(*this).endsWith(other); } + inline bool operator==(const ConstString& other) const { return StringPtr(*this) == StringPtr(other); } +#if !__cpp_impl_three_way_comparison + inline bool operator!=(const ConstString& other) const { return StringPtr(*this) != StringPtr(other); } +#endif + inline bool operator< (const ConstString& other) const { return StringPtr(*this) < StringPtr(other); } + inline bool operator> (const ConstString& other) const { return StringPtr(*this) > StringPtr(other); } + inline bool operator<=(const ConstString& other) const { return StringPtr(*this) <= StringPtr(other); } + inline bool operator>=(const ConstString& other) const { return StringPtr(*this) >= StringPtr(other); } + + inline bool startsWith(const StringPtr& other) const { return asArray().startsWith(other);} + inline bool endsWith(const StringPtr& other) const { return asArray().endsWith(other); } inline StringPtr slice(size_t start) const KJ_LIFETIMEBOUND { return StringPtr(*this).slice(start); @@ -257,17 +317,120 @@ class String { return StringPtr(*this).slice(start, end); } - inline Maybe findFirst(char c) const { return StringPtr(*this).findFirst(c); } - inline Maybe findLast(char c) const { return StringPtr(*this).findLast(c); } + inline Maybe findFirst(char c) const { return asArray().findFirst(c); } + inline Maybe findLast(char c) const { return asArray().findLast(c); } template T parseAs() const { return StringPtr(*this).parseAs(); } // Parse as number + template + Maybe tryParseAs() const { return StringPtr(*this).tryParseAs(); } + private: Array content; }; +// ======================================================================================= +// ConstString -- Same as String, but the backing buffer is const. +// +// This has the useful property that it can reference a string literal without allocating +// a copy. Any String can also convert (by move) to ConstString, transferring ownership of +// the buffer. + +class ConstString { +public: + ConstString() = default; + inline ConstString(decltype(nullptr)): content(nullptr) {} + inline ConstString(const char* value, size_t size, const ArrayDisposer& disposer); + // Does not copy. `size` does not include NUL terminator, but `value` must be NUL-terminated. + inline explicit ConstString(Array buffer); + // Does not copy. Requires `buffer` ends with `\0`. + inline explicit ConstString(String&& string): content(string.releaseArray()) {} + // Does not copy. Ownership is transfered. + + inline operator ArrayPtr() const KJ_LIFETIMEBOUND; + inline ArrayPtr asArray() const KJ_LIFETIMEBOUND; + inline ArrayPtr asBytes() const KJ_LIFETIMEBOUND { return asArray().asBytes(); } + // Result does not include NUL terminator. + + inline StringPtr asPtr() const KJ_LIFETIMEBOUND { + // Convenience operator to return a StringPtr. + return StringPtr{*this}; + } + + inline Array releaseArray() { return kj::mv(content); } + // Disowns the backing array (which includes the NUL terminator) and returns it. The ConstString value + // is clobbered (as if moved away). + + inline const char* cStr() const KJ_LIFETIMEBOUND; + + inline size_t size() const; + // Result does not include NUL terminator. + + inline char operator[](size_t index) const; + inline char& operator[](size_t index) KJ_LIFETIMEBOUND; + + inline const char* begin() const KJ_LIFETIMEBOUND; + inline const char* end() const KJ_LIFETIMEBOUND; + + inline bool operator==(decltype(nullptr)) const { return content.size() <= 1; } + inline bool operator!=(decltype(nullptr)) const { return content.size() > 1; } + + inline bool operator==(const StringPtr& other) const { return StringPtr(*this) == other; } +#if !__cpp_impl_three_way_comparison + inline bool operator!=(const StringPtr& other) const { return StringPtr(*this) != other; } +#endif + inline bool operator< (const StringPtr& other) const { return StringPtr(*this) < other; } + inline bool operator> (const StringPtr& other) const { return StringPtr(*this) > other; } + inline bool operator<=(const StringPtr& other) const { return StringPtr(*this) <= other; } + inline bool operator>=(const StringPtr& other) const { return StringPtr(*this) >= other; } + + inline bool operator==(const String& other) const { return StringPtr(*this) == StringPtr(other); } +#if !__cpp_impl_three_way_comparison + inline bool operator!=(const String& other) const { return StringPtr(*this) != StringPtr(other); } +#endif + inline bool operator< (const String& other) const { return StringPtr(*this) < StringPtr(other); } + inline bool operator> (const String& other) const { return StringPtr(*this) > StringPtr(other); } + inline bool operator<=(const String& other) const { return StringPtr(*this) <= StringPtr(other); } + inline bool operator>=(const String& other) const { return StringPtr(*this) >= StringPtr(other); } + + inline bool operator==(const ConstString& other) const { return StringPtr(*this) == StringPtr(other); } +#if !__cpp_impl_three_way_comparison + inline bool operator!=(const ConstString& other) const { return StringPtr(*this) != StringPtr(other); } +#endif + inline bool operator< (const ConstString& other) const { return StringPtr(*this) < StringPtr(other); } + inline bool operator> (const ConstString& other) const { return StringPtr(*this) > StringPtr(other); } + inline bool operator<=(const ConstString& other) const { return StringPtr(*this) <= StringPtr(other); } + inline bool operator>=(const ConstString& other) const { return StringPtr(*this) >= StringPtr(other); } + // Note that if we don't overload for `const ConstString&` specifically, then C++20 will decide that + // comparisons between two strings are ambiguous. (Clang turns this into a warning, + // -Wambiguous-reversed-operator, due to the stupidity...) + + inline bool startsWith(const StringPtr& other) const { return asArray().startsWith(other);} + inline bool endsWith(const StringPtr& other) const { return asArray().endsWith(other); } + + inline StringPtr slice(size_t start) const KJ_LIFETIMEBOUND { + return StringPtr(*this).slice(start); + } + inline ArrayPtr slice(size_t start, size_t end) const KJ_LIFETIMEBOUND { + return StringPtr(*this).slice(start, end); + } + + inline Maybe findFirst(char c) const { return asArray().findFirst(c); } + inline Maybe findLast(char c) const { return asArray().findLast(c); } + + template + T parseAs() const { return StringPtr(*this).parseAs(); } + // Parse as number + + template + Maybe tryParseAs() const { return StringPtr(*this).tryParseAs(); } + +private: + Array content; +}; + #if !__cpp_impl_three_way_comparison inline bool operator==(const char* a, const String& b) { return b == a; } inline bool operator!=(const char* a, const String& b) { return b != a; } @@ -397,6 +560,7 @@ struct Stringifier { return s.asArray(); } inline ArrayPtr operator*(const StringPtr& s) const { return s.asArray(); } + inline ArrayPtr operator*(const ConstString& s) const { return s.asArray(); } inline Range operator*(const Range& r) const { return r; } inline Repeat operator*(const Repeat& r) const { return r; } @@ -544,6 +708,7 @@ inline _::Delimited> operator*(const _::Stringifier&, const Ar // Inline implementation details. inline StringPtr::StringPtr(const String& value): content(value.cStr(), value.size() + 1) {} +inline StringPtr::StringPtr(const ConstString& value): content(value.cStr(), value.size() + 1) {} inline constexpr StringPtr::operator ArrayPtr() const { return ArrayPtr(content.begin(), content.size() - 1); @@ -572,31 +737,18 @@ inline ArrayPtr StringPtr::slice(size_t start, size_t end) const { return content.slice(start, end); } -inline bool StringPtr::startsWith(const StringPtr& other) const { - return other.content.size() <= content.size() && - memcmp(content.begin(), other.content.begin(), other.size()) == 0; -} -inline bool StringPtr::endsWith(const StringPtr& other) const { - return other.content.size() <= content.size() && - memcmp(end() - other.size(), other.content.begin(), other.size()) == 0; +inline LiteralStringConst::operator ConstString() const { + return ConstString(begin(), size(), NullArrayDisposer::instance); } -inline Maybe StringPtr::findFirst(char c) const { - const char* pos = reinterpret_cast(memchr(content.begin(), c, size())); - if (pos == nullptr) { - return nullptr; - } else { - return pos - content.begin(); - } +inline ConstString StringPtr::attach() const { + // This is meant as a roundabout way to make a ConstString from a StringPtr + return ConstString(begin(), size(), NullArrayDisposer::instance); } -inline Maybe StringPtr::findLast(char c) const { - for (size_t i = size(); i > 0; --i) { - if (content[i-1] == c) { - return i-1; - } - } - return nullptr; +template +inline ConstString StringPtr::attach(Attachments&&... attachments) const { + return ConstString { content.attach(kj::fwd(attachments)...) }; } inline String::operator ArrayPtr() { @@ -605,6 +757,9 @@ inline String::operator ArrayPtr() { inline String::operator ArrayPtr() const { return content == nullptr ? ArrayPtr(nullptr) : content.slice(0, content.size() - 1); } +inline ConstString::operator ArrayPtr() const { + return content == nullptr ? ArrayPtr(nullptr) : content.slice(0, content.size() - 1); +} inline ArrayPtr String::asArray() { return content == nullptr ? ArrayPtr(nullptr) : content.slice(0, content.size() - 1); @@ -612,27 +767,42 @@ inline ArrayPtr String::asArray() { inline ArrayPtr String::asArray() const { return content == nullptr ? ArrayPtr(nullptr) : content.slice(0, content.size() - 1); } +inline ArrayPtr ConstString::asArray() const { + return content == nullptr ? ArrayPtr(nullptr) : content.slice(0, content.size() - 1); +} inline const char* String::cStr() const { return content == nullptr ? "" : content.begin(); } +inline const char* ConstString::cStr() const { return content == nullptr ? "" : content.begin(); } inline size_t String::size() const { return content == nullptr ? 0 : content.size() - 1; } +inline size_t ConstString::size() const { return content == nullptr ? 0 : content.size() - 1; } inline char String::operator[](size_t index) const { return content[index]; } inline char& String::operator[](size_t index) { return content[index]; } +inline char ConstString::operator[](size_t index) const { return content[index]; } inline char* String::begin() { return content == nullptr ? nullptr : content.begin(); } inline char* String::end() { return content == nullptr ? nullptr : content.end() - 1; } inline const char* String::begin() const { return content == nullptr ? nullptr : content.begin(); } inline const char* String::end() const { return content == nullptr ? nullptr : content.end() - 1; } +inline const char* ConstString::begin() const { return content == nullptr ? nullptr : content.begin(); } +inline const char* ConstString::end() const { return content == nullptr ? nullptr : content.end() - 1; } inline String::String(char* value, size_t size, const ArrayDisposer& disposer) : content(value, size + 1, disposer) { KJ_IREQUIRE(value[size] == '\0', "String must be NUL-terminated."); } +inline ConstString::ConstString(const char* value, size_t size, const ArrayDisposer& disposer) + : content(value, size + 1, disposer) { + KJ_IREQUIRE(value[size] == '\0', "String must be NUL-terminated."); +} inline String::String(Array buffer): content(kj::mv(buffer)) { KJ_IREQUIRE(content.size() > 0 && content.back() == '\0', "String must be NUL-terminated."); } +inline ConstString::ConstString(Array buffer): content(kj::mv(buffer)) { + KJ_IREQUIRE(content.size() > 0 && content.back() == '\0', "String must be NUL-terminated."); +} inline String heapString(const char* value) { return heapString(value, strlen(value)); @@ -758,4 +928,8 @@ constexpr kj::StringPtr operator "" _kj(const char* str, size_t n) { return kj::StringPtr(kj::ArrayPtr(str, n + 1)); }; +constexpr kj::LiteralStringConst operator "" _kjc(const char* str, size_t n) { + return kj::LiteralStringConst(kj::ArrayPtr(str, n + 1)); +}; + KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/table-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/table-test.c++ index 202ab9b6798..708843a2bd7 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/table-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/table-test.c++ @@ -24,6 +24,8 @@ #include #include #include "hash.h" +#include "time.h" +#include namespace kj { namespace _ { @@ -45,7 +47,7 @@ KJ_TEST("_::tryReserveSize() works") { { Vector vec; tryReserveSize(vec, "foo"_kj); - KJ_EXPECT(vec.capacity() == 3); + KJ_EXPECT(vec.capacity() == 4); // Vectors always grow by powers of two. } { Vector vec; @@ -907,6 +909,90 @@ KJ_TEST("large tree table") { } } +KJ_TEST("TreeIndex fuzz test") { + // A test which randomly modifies a TreeIndex to try to discover buggy state changes. + + uint seed = (kj::systemPreciseCalendarClock().now() - kj::UNIX_EPOCH) / kj::NANOSECONDS; + KJ_CONTEXT(seed); // print the seed if the test fails + srand(seed); + + Table> table; + + auto randomInsert = [&]() { + table.upsert(rand(), [](auto&&, auto&&) {}); + }; + auto randomErase = [&]() { + if (table.size() > 0) { + auto& row = table.begin()[rand() % table.size()]; + table.erase(row); + } + }; + auto randomLookup = [&]() { + if (table.size() > 0) { + auto& row = table.begin()[rand() % table.size()]; + auto& found = KJ_ASSERT_NONNULL(table.find(row)); + KJ_ASSERT(&found == &row); + } + }; + + // First pass: focus on insertions, aim to do 2x as many insertions as deletions. + for (auto i KJ_UNUSED: kj::zeroTo(1000)) { + switch (rand() % 4) { + case 0: + case 1: + randomInsert(); + break; + case 2: + randomErase(); + break; + case 3: + randomLookup(); + break; + } + + table.verify(); + } + + // Second pass: focus on deletions, aim to do 2x as many deletions as insertions. + for (auto i KJ_UNUSED: kj::zeroTo(1000)) { + switch (rand() % 4) { + case 0: + randomInsert(); + break; + case 1: + case 2: + randomErase(); + break; + case 3: + randomLookup(); + break; + } + + table.verify(); + } +} + +KJ_TEST("TreeIndex clear() leaves tree in valid state") { + // A test which ensures that calling clear() does not break the internal state of a TreeIndex. + // It used to be the case that clearing a non-empty tree would leave it thinking that it had room + // for one more node than it really did, causing it to write and read beyond the end of its + // internal array of nodes. + Table> table; + + // Insert at least one value to allocate an initial set of tree nodes. + table.upsert(1, [](auto&&, auto&&) {}); + KJ_EXPECT(table.find(1) != nullptr); + table.clear(); + + // Insert enough values to force writes/reads beyond the end of the tree's internal node array. + for (uint i = 0; i < 29; ++i) { + table.upsert(i, [](auto&&, auto&&) {}); + } + for (uint i = 0; i < 29; ++i) { + KJ_EXPECT(table.find(i) != nullptr); + } +} + KJ_TEST("benchmark: kj::Table") { constexpr uint SOME_PRIME = BIG_PRIME; constexpr uint STEP[] = {1, 2, 4, 7, 43, 127}; @@ -1231,6 +1317,94 @@ KJ_TEST("insertion order index is movable") { KJ_EXPECT(iter == range.end()); } +// ======================================================================================= +// Test bug where insertion failure on a later index in the table would not be rolled back +// correctly if a previous index was TreeIndex. + +class StringLengthCompare { + // Considers two strings equal if they have the same length. +public: + inline size_t keyForRow(StringPtr entry) const { + return entry.size(); + } + + inline bool matches(StringPtr e, size_t key) const { + return e.size() == key; + } + + inline bool isBefore(StringPtr e, size_t key) const { + return e.size() < key; + } + + uint hashCode(size_t size) const { + return size; + } +}; + +KJ_TEST("HashIndex rollback on insertion failure") { + // Test that when an insertion produces a duplicate on a later index, changes to previous indexes + // are properly rolled back. + + Table, HashIndex> table; + table.insert("a"_kj); + table.insert("ab"_kj); + table.insert("abc"_kj); + + { + // We use upsert() so that we don't throw an exception from the duplicate, but this exercises + // the same logic as a duplicate insert() other than throwing. + kj::StringPtr& found = table.upsert("xyz"_kj, [&](StringPtr& existing, StringPtr&& param) { + KJ_EXPECT(existing == "abc"); + KJ_EXPECT(param == "xyz"); + }); + KJ_EXPECT(found == "abc"); + + table.erase(found); + } + + table.insert("xyz"_kj); + + { + kj::StringPtr& found = table.upsert("tuv"_kj, [&](StringPtr& existing, StringPtr&& param) { + KJ_EXPECT(existing == "xyz"); + KJ_EXPECT(param == "tuv"); + }); + KJ_EXPECT(found == "xyz"); + } +} + +KJ_TEST("TreeIndex rollback on insertion failure") { + // Test that when an insertion produces a duplicate on a later index, changes to previous indexes + // are properly rolled back. + + Table, TreeIndex> table; + table.insert("a"_kj); + table.insert("ab"_kj); + table.insert("abc"_kj); + + { + // We use upsert() so that we don't throw an exception from the duplicate, but this exercises + // the same logic as a duplicate insert() other than throwing. + kj::StringPtr& found = table.upsert("xyz"_kj, [&](StringPtr& existing, StringPtr&& param) { + KJ_EXPECT(existing == "abc"); + KJ_EXPECT(param == "xyz"); + }); + KJ_EXPECT(found == "abc"); + + table.erase(found); + } + + table.insert("xyz"_kj); + + { + kj::StringPtr& found = table.upsert("tuv"_kj, [&](StringPtr& existing, StringPtr&& param) { + KJ_EXPECT(existing == "xyz"); + KJ_EXPECT(param == "tuv"); + }); + KJ_EXPECT(found == "xyz"); + } +} + } // namespace } // namespace _ } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/table.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/table.c++ index 62cfa6e4e34..4b0e028524c 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/table.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/table.c++ @@ -23,6 +23,11 @@ #include "debug.h" #include +#if KJ_DEBUG_TABLE_IMPL +#undef KJ_DASSERT +#define KJ_DASSERT KJ_ASSERT +#endif + namespace kj { namespace _ { @@ -257,28 +262,39 @@ size_t BTreeImpl::verifyNode(size_t size, FunctionParam& f, auto n = parent.keyCount(); size_t total = 0; for (auto i: kj::zeroTo(n)) { - KJ_ASSERT(*parent.keys[i] < size); + KJ_ASSERT(*parent.keys[i] < size, n, i); total += verifyNode(size, f, parent.children[i], height - 1, parent.keys[i]); - KJ_ASSERT(i + 1 == n || f(*parent.keys[i], *parent.keys[i + 1])); + if (i > 0) { + KJ_ASSERT(f(*parent.keys[i - 1], *parent.keys[i]), + n, i, parent.keys[i - 1], parent.keys[i]); + } } total += verifyNode(size, f, parent.children[n], height - 1, maxRow); - KJ_ASSERT(maxRow == nullptr || f(*parent.keys[n-1], *maxRow)); + if (maxRow != nullptr) { + KJ_ASSERT(f(*parent.keys[n-1], *maxRow), n, parent.keys[n-1], maxRow); + } return total; } else { auto& leaf = tree[pos].leaf; auto n = leaf.size(); for (auto i: kj::zeroTo(n)) { - KJ_ASSERT(*leaf.rows[i] < size); - if (i + 1 < n) { - KJ_ASSERT(f(*leaf.rows[i], *leaf.rows[i + 1])); - } else { - KJ_ASSERT(maxRow == nullptr || leaf.rows[n-1] == maxRow); + KJ_ASSERT(*leaf.rows[i] < size, n, i); + if (i > 0) { + KJ_ASSERT(f(*leaf.rows[i - 1], *leaf.rows[i]), + n, i, leaf.rows[i - 1], leaf.rows[i]); } } + if (maxRow != nullptr) { + KJ_ASSERT(leaf.rows[n-1] == maxRow, n); + } return n; } } +kj::String BTreeImpl::MaybeUint::toString() const { + return i == 0 ? kj::str("(null)") : kj::str(i - 1); +} + void BTreeImpl::logInconsistency() const { KJ_LOG(ERROR, "BTreeIndex detected tree state inconsistency. This can happen if you create a kj::Table " @@ -319,7 +335,7 @@ void BTreeImpl::clear() { azero(tree, treeCapacity); height = 0; freelistHead = 1; - freelistSize = treeCapacity; + freelistSize = treeCapacity - 1; // subtract one to account for the root node beginLeaf = 0; endLeaf = 0; } @@ -651,7 +667,7 @@ void BTreeImpl::renumber(uint oldRow, uint newRow, const SearchKey& searchKey) { auto& node = tree[pos].parent; uint indexInParent = searchKey.search(node); pos = node.children[indexInParent]; - if (node.keys[indexInParent] == oldRow) { + if (indexInParent < kj::size(node.keys) && node.keys[indexInParent] == oldRow) { node.keys[indexInParent] = newRow; } KJ_DASSERT(pos != 0); @@ -715,7 +731,7 @@ void BTreeImpl::merge(Leaf& dst, uint dstPos, uint pivot, Leaf& src) { KJ_DASSERT(dst.isHalfFull()); constexpr size_t mid = Leaf::NROWS/2; - dst.rows[mid] = pivot; + KJ_DASSERT(dst.rows[mid-1] == pivot); acopy(dst.rows + mid, src.rows, mid); dst.next = src.next; diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/table.h b/libs/EXTERNAL/capnproto/c++/src/kj/table.h index f3e19ddcb0f..d5d1b413718 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/table.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/table.h @@ -35,10 +35,21 @@ #endif #endif +#if KJ_DEBUG_TABLE_IMPL +#include "debug.h" +#define KJ_TABLE_IREQUIRE KJ_REQUIRE +#define KJ_TABLE_IASSERT KJ_ASSERT +#else +#define KJ_TABLE_IREQUIRE KJ_IREQUIRE +#define KJ_TABLE_IASSERT KJ_IASSERT +#endif + KJ_BEGIN_HEADER namespace kj { +class String; + namespace _ { // private template @@ -325,7 +336,7 @@ class HashIndex; // // methods to match this row. // // bool matches(const Row&, SearchParams&&...) const; -// // Returns true if the row on the left matches thes search params on the right. +// // Returns true if the row on the left matches the search params on the right. // // uint hashCode(SearchParams&&...) const; // // Computes the hash code of the given search params. Matching rows (as determined by @@ -761,7 +772,7 @@ void Table::verify() { template void Table::erase(Row& row) { - KJ_IREQUIRE(&row >= rows.begin() && &row < rows.end(), "row is not a member of this table"); + KJ_TABLE_IREQUIRE(&row >= rows.begin() && &row < rows.end(), "row is not a member of this table"); eraseImpl(&row - rows.begin()); } template @@ -777,7 +788,7 @@ void Table::eraseImpl(size_t pos) { template Row Table::release(Row& row) { - KJ_IREQUIRE(&row >= rows.begin() && &row < rows.end(), "row is not a member of this table"); + KJ_TABLE_IREQUIRE(&row >= rows.begin() && &row < rows.end(), "row is not a member of this table"); size_t pos = &row - rows.begin(); Impl<>::erase(*this, pos, row); Row result = kj::mv(row); @@ -863,7 +874,7 @@ struct HashBucket { inline const Row& getRow(ArrayPtr table) const { return table[getPos()]; } inline bool isPos(uint pos) const { return pos + 2 == value; } inline uint getPos() const { - KJ_IASSERT(value >= 2); + KJ_TABLE_IASSERT(value >= 2); return value - 2; } inline void setEmpty() { value = 0; } @@ -906,7 +917,7 @@ class HashIndex { void clear() { erasedCount = 0; - memset(buckets.begin(), 0, buckets.asBytes().size()); + if (buckets.size() > 0) memset(buckets.begin(), 0, buckets.asBytes().size()); } template @@ -1166,12 +1177,14 @@ class BTreeImpl::MaybeUint { inline MaybeUint& operator=(decltype(nullptr)) { i = 0; return *this; } inline MaybeUint& operator=(uint j) { i = j + 1; return *this; } - inline uint operator*() const { KJ_IREQUIRE(i != 0); return i - 1; } + inline uint operator*() const { KJ_TABLE_IREQUIRE(i != 0); return i - 1; } template inline bool check(Func& func) const { return i != 0 && func(i - 1); } // Equivalent to *this != nullptr && func(**this) + kj::String toString() const; + private: uint i; }; @@ -1190,14 +1203,14 @@ struct BTreeImpl::Leaf { inline bool isHalfFull() const; inline void insert(uint i, uint newRow) { - KJ_IREQUIRE(rows[Leaf::NROWS - 1] == nullptr); // check not full + KJ_TABLE_IREQUIRE(rows[Leaf::NROWS - 1] == nullptr); // check not full amove(rows + i + 1, rows + i, Leaf::NROWS - (i + 1)); rows[i] = newRow; } inline void erase(uint i) { - KJ_IREQUIRE(rows[0] != nullptr); // check not empty + KJ_TABLE_IREQUIRE(rows[0] != nullptr); // check not empty amove(rows + i, rows + i + 1, Leaf::NROWS - (i + 1)); rows[Leaf::NROWS - 1] = nullptr; @@ -1241,6 +1254,12 @@ struct BTreeImpl::Parent { static constexpr size_t NKEYS = 7; MaybeUint keys[NKEYS]; // Pointers to table rows, offset by 1 so that 0 is an empty value. + // + // Each keys[i] specifies the table row which is the "last" row found under children[i]. + // + // Note that `keys` has size 7 but `children` has size 8. `children[8]`'s "last row" is not + // recorded here, because the Parent's Parent records it instead. (Or maybe the Parent's Parent's + // Parent, if this Parent is `children[8]` of its own Parent. And so on.) static constexpr size_t NCHILDREN = NKEYS + 1; uint children[NCHILDREN]; @@ -1324,7 +1343,7 @@ bool BTreeImpl::Leaf::isMostlyFull() const { return rows[Leaf::NROWS / 2] != nullptr; } bool BTreeImpl::Leaf::isHalfFull() const { - KJ_IASSERT(rows[Leaf::NROWS / 2 - 1] != nullptr); + KJ_TABLE_IASSERT(rows[Leaf::NROWS / 2 - 1] != nullptr); return rows[Leaf::NROWS / 2] == nullptr; } @@ -1335,7 +1354,7 @@ bool BTreeImpl::Parent::isMostlyFull() const { return keys[Parent::NKEYS / 2] != nullptr; } bool BTreeImpl::Parent::isHalfFull() const { - KJ_IASSERT(keys[Parent::NKEYS / 2 - 1] != nullptr); + KJ_TABLE_IASSERT(keys[Parent::NKEYS / 2 - 1] != nullptr); return keys[Parent::NKEYS / 2] == nullptr; } @@ -1345,13 +1364,13 @@ class BTreeImpl::Iterator { : tree(tree), leaf(leaf), row(row) {} size_t operator*() const { - KJ_IREQUIRE(row < Leaf::NROWS && leaf->rows[row] != nullptr, + KJ_TABLE_IREQUIRE(row < Leaf::NROWS && leaf->rows[row] != nullptr, "tried to dereference end() iterator"); return *leaf->rows[row]; } inline Iterator& operator++() { - KJ_IREQUIRE(leaf->rows[row] != nullptr, "B-tree iterator overflow"); + KJ_TABLE_IREQUIRE(leaf->rows[row] != nullptr, "B-tree iterator overflow"); ++row; if (row >= Leaf::NROWS || leaf->rows[row] == nullptr) { if (leaf->next == 0) { @@ -1371,7 +1390,7 @@ class BTreeImpl::Iterator { inline Iterator& operator--() { if (row == 0) { - KJ_IREQUIRE(leaf->prev != 0, "B-tree iterator underflow"); + KJ_TABLE_IREQUIRE(leaf->prev != 0, "B-tree iterator underflow"); leaf = &tree[leaf->prev].leaf; row = leaf->size() - 1; } else { @@ -1397,17 +1416,17 @@ class BTreeImpl::Iterator { } void insert(BTreeImpl& impl, uint newRow) { - KJ_IASSERT(impl.tree == tree); + KJ_TABLE_IASSERT(impl.tree == tree); const_cast(leaf)->insert(row, newRow); } void erase(BTreeImpl& impl) { - KJ_IASSERT(impl.tree == tree); + KJ_TABLE_IASSERT(impl.tree == tree); const_cast(leaf)->erase(row); } void replace(BTreeImpl& impl, uint newRow) { - KJ_IASSERT(impl.tree == tree); + KJ_TABLE_IASSERT(impl.tree == tree); const_cast(leaf)->rows[row] = newRow; } @@ -1465,7 +1484,7 @@ class TreeIndex { template void erase(kj::ArrayPtr table, size_t pos, Params&&... params) { - impl.erase(pos, searchKey(table, params...)); + impl.erase(pos, searchKeyForErase(table, pos, params...)); } template @@ -1518,6 +1537,16 @@ class TreeIndex { auto predicate = [&](uint i) { return cb.isBefore(table[i], params...); }; return SearchKeyImpl(kj::mv(predicate)); } + + template + inline auto searchKeyForErase(kj::ArrayPtr& table, uint pos, Params&... params) const { + // When erasing, the table entry for the erased row may already be invalid, so we must avoid + // accessing it. + auto predicate = [&,pos](uint i) { + return i != pos && cb.isBefore(table[i], params...); + }; + return SearchKeyImpl(kj::mv(predicate)); + } }; // ----------------------------------------------------------------------------- @@ -1542,7 +1571,7 @@ class InsertionOrderIndex { : links(links), pos(pos) {} inline size_t operator*() const { - KJ_IREQUIRE(pos != 0, "can't derefrence end() iterator"); + KJ_TABLE_IREQUIRE(pos != 0, "can't dereference end() iterator"); return pos - 1; }; diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/test-helpers.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/test-helpers.c++ index c4fcbc19fd5..6ae8cd32598 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/test-helpers.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/test-helpers.c++ @@ -34,8 +34,6 @@ #include #endif -#include - namespace kj { namespace _ { // private @@ -49,9 +47,6 @@ bool hasSubstring(StringPtr haystack, StringPtr needle) { #if !defined(_WIN32) return memmem(haystack.begin(), haystack.size(), needle.begin(), needle.size()) != nullptr; -#elif defined(__cpp_lib_boyer_moore_searcher) - std::boyer_moore_horspool_searcher searcher{needle.begin(), needle.size()}; - return std::search(haystack.begin(), haystack.end(), searcher) != haystack.end(); #else // TODO(perf): This is not the best algorithm for substring matching. strstr can't be used // because this is supposed to be safe to call on strings with embedded nulls. @@ -152,7 +147,75 @@ bool expectFatalThrow(kj::Maybe type, kj::Maybe mess KJ_FAIL_EXPECT("subprocess crashed without throwing exception", WTERMSIG(status)); return false; } else { - KJ_FAIL_EXPECT("subprocess neiter excited nor crashed?", status); + KJ_FAIL_EXPECT("subprocess neither excited nor crashed?", status); + return false; + } +#endif +} + +bool expectExit(Maybe statusCode, FunctionParam code) noexcept { +#if _WIN32 + // We don't support death tests on Windows due to lack of efficient fork. + return true; +#else + pid_t child; + KJ_SYSCALL(child = fork()); + if (child == 0) { + code(); + _exit(0); + } + + int status; + KJ_SYSCALL(waitpid(child, &status, 0)); + + if (WIFEXITED(status)) { + KJ_IF_MAYBE(s, statusCode) { + KJ_EXPECT(WEXITSTATUS(status) == *s); + return WEXITSTATUS(status) == *s; + } else { + KJ_EXPECT(WEXITSTATUS(status) != 0); + return WEXITSTATUS(status) != 0; + } + } else { + if (WIFSIGNALED(status)) { + KJ_FAIL_EXPECT("subprocess didn't exit but triggered a signal", strsignal(WTERMSIG(status))); + } else { + KJ_FAIL_EXPECT("subprocess didn't exit and didn't trigger a signal", status); + } + return false; + } +#endif +} + + +bool expectSignal(Maybe signal, FunctionParam code) noexcept { +#if _WIN32 + // We don't support death tests on Windows due to lack of efficient fork. + return true; +#else + pid_t child; + KJ_SYSCALL(child = fork()); + if (child == 0) { + resetCrashHandlers(); + code(); + _exit(0); + } + + int status; + KJ_SYSCALL(waitpid(child, &status, 0)); + + if (WIFSIGNALED(status)) { + KJ_IF_MAYBE(s, signal) { + KJ_EXPECT(WTERMSIG(status) == *s); + return WTERMSIG(status) == *s; + } + return true; + } else { + if (WIFEXITED(status)) { + KJ_FAIL_EXPECT("subprocess didn't trigger a signal but exited", WEXITSTATUS(status)); + } else { + KJ_FAIL_EXPECT("subprocess didn't exit and didn't trigger a signal", status); + } return false; } #endif diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/test-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/test-test.c++ index 7d020270940..b69eaf6ab76 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/test-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/test-test.c++ @@ -21,6 +21,13 @@ #include "common.h" #include "test.h" +#include +#include +#include + +#ifndef _WIN32 +#include +#endif namespace kj { namespace _ { @@ -78,6 +85,26 @@ KJ_TEST("GlobFilter") { } } +KJ_TEST("expect exit from exit") { + KJ_EXPECT_EXIT(42, _exit(42)); + KJ_EXPECT_EXIT(nullptr, _exit(42)); +} + +#if !KJ_NO_EXCEPTIONS +KJ_TEST("expect exit from thrown exception") { + KJ_EXPECT_EXIT(1, throw std::logic_error("test error")); +} +#endif + +KJ_TEST("expect signal from abort") { + KJ_EXPECT_SIGNAL(SIGABRT, abort()); +} + +KJ_TEST("expect signal from sigint") { + KJ_EXPECT_SIGNAL(SIGINT, raise(SIGINT)); + KJ_EXPECT_SIGNAL(nullptr, raise(SIGINT)); +} + } // namespace } // namespace _ } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/test.c++ index e988320f894..e310f20f05c 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/test.c++ @@ -42,6 +42,8 @@ namespace { TestCase* testCasesHead = nullptr; TestCase** testCasesTail = &testCasesHead; +size_t benchmarkIterCount = 1; + } // namespace TestCase::TestCase(const char* file, uint line, const char* description) @@ -60,6 +62,10 @@ TestCase::~TestCase() { } } +size_t TestCase::iterCount() { + return benchmarkIterCount; +} + // ======================================================================================= namespace _ { // private @@ -172,7 +178,7 @@ public: if (severity == LogSeverity::ERROR || severity == LogSeverity::FATAL) { sawError = true; - context.error(kj::str(text, "\nstack: ", strArray(trace, " "), stringifyStackTrace(trace))); + context.error(kj::str(text, "\nstack: ", stringifyStackTraceAddresses(trace), stringifyStackTrace(trace))); } else { context.warning(text); } @@ -205,6 +211,9 @@ public: .addOption({'l', "list"}, KJ_BIND_METHOD(*this, setList), "List all test cases that would run, but don't run them. If --filter is specified " "then only the match tests will be listed.") + .addOptionWithArg({'b', "benchmark"}, KJ_BIND_METHOD(*this, setBenchmarkIters), "", + "Specifies that any benchmarks in the tests should run for iterations. " + "If not specified, then count is 1, which simply tests that the benchmarks function.") .callAfterParsing(KJ_BIND_METHOD(*this, run)) .build(); } @@ -263,6 +272,15 @@ public: return true; } + MainBuilder::Validity setBenchmarkIters(StringPtr param) { + KJ_IF_MAYBE(i, param.tryParseAs()) { + benchmarkIterCount = *i; + return true; + } else { + return "expected an integer"; + } + } + MainBuilder::Validity run() { if (testCasesHead == nullptr) { return "no tests were declared"; diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/test.h b/libs/EXTERNAL/capnproto/c++/src/kj/test.h index fbc34492ecf..5acbb00d40b 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/test.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/test.h @@ -39,6 +39,21 @@ class TestCase { virtual void run() = 0; +protected: + template + void doBenchmark(Func&& func) { + // Perform a benchmark with configurable iterations. func() will be called N times, where N + // is set by the --benchmark CLI flag. This defaults to 1, so that when --benchmark is not + // specified, we only test that the benchmark works. + // + // In the future, this could adaptively choose iteration count by running a few iterations to + // find out how fast the benchmark is, then scaling. + + for (size_t i = iterCount(); i-- > 0;) { + func(); + } + } + private: const char* file; uint line; @@ -47,6 +62,8 @@ class TestCase { TestCase** prev; bool matchedFilter; + static size_t iterCount(); + friend class TestRunner; }; @@ -60,7 +77,7 @@ class TestCase { } KJ_UNIQUE_NAME(testCase); \ void KJ_UNIQUE_NAME(TestCase)::run() -#if _MSC_VER && !defined(__clang__) +#if KJ_MSVC_TRADITIONAL_CPP #define KJ_INDIRECT_EXPAND(m, vargs) m vargs #define KJ_FAIL_EXPECT(...) \ KJ_INDIRECT_EXPAND(KJ_LOG, (ERROR , __VA_ARGS__)); @@ -75,32 +92,54 @@ class TestCase { else KJ_FAIL_EXPECT("failed: expected " #cond, _kjCondition, ##__VA_ARGS__) #endif -#define KJ_EXPECT_THROW_RECOVERABLE(type, code) \ +#if _MSC_VER && !defined(__clang__) +#define KJ_EXPECT_THROW_RECOVERABLE(type, code, ...) \ + do { \ + KJ_IF_MAYBE(e, ::kj::runCatchingExceptions([&]() { code; })) { \ + KJ_INDIRECT_EXPAND(KJ_EXPECT, (e->getType() == ::kj::Exception::Type::type, \ + "code threw wrong exception type: " #code, *e, __VA_ARGS__)); \ + } else { \ + KJ_INDIRECT_EXPAND(KJ_FAIL_EXPECT, ("code did not throw: " #code, __VA_ARGS__)); \ + } \ + } while (false) + +#define KJ_EXPECT_THROW_RECOVERABLE_MESSAGE(message, code, ...) \ + do { \ + KJ_IF_MAYBE(e, ::kj::runCatchingExceptions([&]() { code; })) { \ + KJ_INDIRECT_EXPAND(KJ_EXPECT, (::kj::_::hasSubstring(e->getDescription(), message), \ + "exception description didn't contain expected substring", *e, __VA_ARGS__)); \ + } else { \ + KJ_INDIRECT_EXPAND(KJ_FAIL_EXPECT, ("code did not throw: " #code, __VA_ARGS__)); \ + } \ + } while (false) +#else +#define KJ_EXPECT_THROW_RECOVERABLE(type, code, ...) \ do { \ KJ_IF_MAYBE(e, ::kj::runCatchingExceptions([&]() { code; })) { \ KJ_EXPECT(e->getType() == ::kj::Exception::Type::type, \ - "code threw wrong exception type: " #code, *e); \ + "code threw wrong exception type: " #code, *e, ##__VA_ARGS__); \ } else { \ - KJ_FAIL_EXPECT("code did not throw: " #code); \ + KJ_FAIL_EXPECT("code did not throw: " #code, ##__VA_ARGS__); \ } \ } while (false) -#define KJ_EXPECT_THROW_RECOVERABLE_MESSAGE(message, code) \ +#define KJ_EXPECT_THROW_RECOVERABLE_MESSAGE(message, code, ...) \ do { \ KJ_IF_MAYBE(e, ::kj::runCatchingExceptions([&]() { code; })) { \ KJ_EXPECT(::kj::_::hasSubstring(e->getDescription(), message), \ - "exception description didn't contain expected substring", *e); \ + "exception description didn't contain expected substring", *e, ##__VA_ARGS__); \ } else { \ - KJ_FAIL_EXPECT("code did not throw: " #code); \ + KJ_FAIL_EXPECT("code did not throw: " #code, ##__VA_ARGS__); \ } \ } while (false) +#endif #if KJ_NO_EXCEPTIONS -#define KJ_EXPECT_THROW(type, code) \ +#define KJ_EXPECT_THROW(type, code, ...) \ do { \ KJ_EXPECT(::kj::_::expectFatalThrow(::kj::Exception::Type::type, nullptr, [&]() { code; })); \ } while (false) -#define KJ_EXPECT_THROW_MESSAGE(message, code) \ +#define KJ_EXPECT_THROW_MESSAGE(message, code, ...) \ do { \ KJ_EXPECT(::kj::_::expectFatalThrow(nullptr, kj::StringPtr(message), [&]() { code; })); \ } while (false) @@ -109,6 +148,19 @@ class TestCase { #define KJ_EXPECT_THROW_MESSAGE KJ_EXPECT_THROW_RECOVERABLE_MESSAGE #endif +#define KJ_EXPECT_EXIT(statusCode, code) \ + do { \ + KJ_EXPECT(::kj::_::expectExit(statusCode, [&]() { code; })); \ + } while (false) +// Forks the code and expects it to exit with a given code. + +#define KJ_EXPECT_SIGNAL(signal, code) \ + do { \ + KJ_EXPECT(::kj::_::expectSignal(signal, [&]() { code; })); \ + } while (false) +// Forks the code and expects it to trigger a signal. +// In the child resets all signal handlers as printStackTraceOnCrash sets. + #define KJ_EXPECT_LOG(level, substring) \ ::kj::_::LogExpectation KJ_UNIQUE_NAME(_kjLogExpectation)(::kj::LogSeverity::level, substring) // Expects that a log message with the given level and substring text will be printed within @@ -128,6 +180,17 @@ bool expectFatalThrow(Maybe type, Maybe message, // fork() is not available, this always returns true. #endif +bool expectExit(Maybe statusCode, FunctionParam code) noexcept; +// Expects that the given code will exit with a given statusCode. +// The test will fork() and run in a subprocess. On Windows, where fork() is not available, +// this always returns true. + +bool expectSignal(Maybe signal, FunctionParam code) noexcept; +// Expects that the given code will trigger a signal. +// The test will fork() and run in a subprocess. On Windows, where fork() is not available, +// this always returns true. +// Resets signal handlers to default prior to running the code in the child process. + class LogExpectation: public ExceptionCallback { public: LogExpectation(LogSeverity severity, StringPtr substring); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/thread.h b/libs/EXTERNAL/capnproto/c++/src/kj/thread.h index 46fd39bb9c2..2261ab12c91 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/thread.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/thread.h @@ -36,7 +36,7 @@ class Thread { public: explicit Thread(Function func); - KJ_DISALLOW_COPY(Thread); + KJ_DISALLOW_COPY_AND_MOVE(Thread); ~Thread() noexcept(false); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/time-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/time-test.c++ index 0dd5d64b853..8bbdf9366b6 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/time-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/time-test.c++ @@ -46,6 +46,10 @@ KJ_TEST("stringify times") { KJ_EXPECT(kj::str(50 * kj::MICROSECONDS) == "50μs"); KJ_EXPECT(kj::str(5 * kj::MICROSECONDS + 300 * kj::NANOSECONDS) == "5.3μs"); KJ_EXPECT(kj::str(50 * kj::NANOSECONDS) == "50ns"); + KJ_EXPECT(kj::str(-256 * kj::MILLISECONDS) == "-256ms"); + KJ_EXPECT(kj::str(-50 * kj::NANOSECONDS) == "-50ns"); + KJ_EXPECT(kj::str((int64_t)kj::maxValue * kj::NANOSECONDS) == "9223372036.854775807s"); + KJ_EXPECT(kj::str((int64_t)kj::minValue * kj::NANOSECONDS) == "-9223372036.854775808s"); } #if _WIN32 diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/time.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/time.c++ index d0846588415..98ebbb1f7b6 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/time.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/time.c++ @@ -261,14 +261,20 @@ const MonotonicClock& systemPreciseMonotonicClock() { #endif -kj::String KJ_STRINGIFY(TimePoint t) { +CappedArray KJ_STRINGIFY(TimePoint t) { return kj::toCharSequence(t - kj::origin()); } -kj::String KJ_STRINGIFY(Date d) { +CappedArray KJ_STRINGIFY(Date d) { return kj::toCharSequence(d - UNIX_EPOCH); } -kj::String KJ_STRINGIFY(Duration d) { - auto digits = kj::toCharSequence(d / kj::NANOSECONDS); +CappedArray KJ_STRINGIFY(Duration d) { + bool negative = d < 0 * kj::SECONDS; + uint64_t ns = d / kj::NANOSECONDS; + if (negative) { + ns = -ns; + } + + auto digits = kj::toCharSequence(ns); ArrayPtr arr = digits; size_t point; @@ -292,15 +298,24 @@ kj::String KJ_STRINGIFY(Duration d) { unit = kj::NANOSECONDS; } + CappedArray result; + char* begin = result.begin(); + char* end; + if (negative) { + *begin++ = '-'; + } if (d % unit == 0 * kj::NANOSECONDS) { - return kj::str(arr.slice(0, point), suffix); + end = _::fillLimited(begin, result.end(), arr.slice(0, point), suffix); } else { while (arr.back() == '0') { arr = arr.slice(0, arr.size() - 1); } - KJ_ASSERT(arr.size() > point); - return kj::str(arr.slice(0, point), ".", arr.slice(point, arr.size()), suffix); + KJ_DASSERT(arr.size() > point); + end = _::fillLimited(begin, result.end(), arr.slice(0, point), "."_kj, + arr.slice(point, arr.size()), suffix); } + result.setSize(end - result.begin()); + return result; } } // namespace kj diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/time.h b/libs/EXTERNAL/capnproto/c++/src/kj/time.h index 0c2e47af718..aaf1031d7e4 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/time.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/time.h @@ -35,6 +35,10 @@ class NanosecondLabel; class TimeLabel; class DateLabel; +static constexpr size_t TIME_STR_LEN = sizeof(int64_t) * 3 + 8; +// Maximum length of a stringified time. 3 digits per byte of integer, plus 8 digits to cover +// negative sign, decimal point, unit, NUL terminator, and anything else that might sneak in. + } // namespace _ (private) using Duration = Quantity; @@ -56,9 +60,9 @@ using TimePoint = Absolute; using Date = Absolute; // A point in real-world time, measured relative to the Unix epoch (Jan 1, 1970 00:00:00 UTC). -kj::String KJ_STRINGIFY(TimePoint); -kj::String KJ_STRINGIFY(Date); -kj::String KJ_STRINGIFY(Duration); +CappedArray KJ_STRINGIFY(TimePoint); +CappedArray KJ_STRINGIFY(Date); +CappedArray KJ_STRINGIFY(Duration); constexpr Date UNIX_EPOCH = origin(); // The `Date` representing Jan 1, 1970 00:00:00 UTC. @@ -110,7 +114,6 @@ const MonotonicClock& systemPreciseMonotonicClock(); // The "coarse" version has precision around 1-10ms, while the "precise" version has precision // better than 1us. The "precise" version may be slightly slower, though on modern hardware and // a reasonable operating system the difference is usually negligible. - } // namespace kj KJ_END_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/timer.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/timer.c++ index 993b683ce24..e5cd26484ed 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/timer.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/timer.c++ @@ -110,9 +110,17 @@ Maybe TimerImpl::timeoutToNextEvent(TimePoint start, Duration unit, ui } void TimerImpl::advanceTo(TimePoint newTime) { + // On Macs running an Intel processor, it has been observed that clock_gettime + // may return non monotonic time, even when CLOCK_MONOTONIC is used. + // This workaround is to avoid the assert triggering on these machines. + // See also https://github.com/capnproto/capnproto/issues/1693 +#if __APPLE__ && defined(__x86_64__) + time = std::max(time, newTime); +#else KJ_REQUIRE(newTime >= time, "can't advance backwards in time") { return; } - time = newTime; +#endif + for (;;) { auto front = impl->timers.begin(); if (front == impl->timers.end() || (*front)->time > time) { diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/timer.h b/libs/EXTERNAL/capnproto/c++/src/kj/timer.h index 862f97b9c79..eb9443c23bc 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/timer.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/timer.h @@ -22,7 +22,7 @@ #pragma once -#include "time.h" +#include #include "async.h" KJ_BEGIN_HEADER diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/tuple.h b/libs/EXTERNAL/capnproto/c++/src/kj/tuple.h index 2a526c0c329..1351912b099 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/tuple.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/tuple.h @@ -98,7 +98,7 @@ struct TupleElement { template struct TupleElement { - // A tuple containing references can be constucted using refTuple(). + // A tuple containing references can be constructed using refTuple(). T& value; constexpr inline TupleElement(T& value): value(value) {} diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/units-test.c++ b/libs/EXTERNAL/capnproto/c++/src/kj/units-test.c++ index 892c1d39862..31a29737937 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/units-test.c++ +++ b/libs/EXTERNAL/capnproto/c++/src/kj/units-test.c++ @@ -341,7 +341,7 @@ TEST(UnitMeasure, BoundedMinMax) { assertTypeAndValue(boundedValue<4,t1>(2), kj::min(bounded<4>(), boundedValue<5,t1>(2))); assertTypeAndValue(boundedValue<4,t1>(2), kj::min(boundedValue<5,t1>(2), bounded<4>())); - // These two are degenerate cases. Currently they fail to compile but meybe they shouldn't? + // These two are degenerate cases. Currently they fail to compile but maybe they shouldn't? // assertTypeAndValue(bounded<5>(), kj::max(boundedValue<4,t2>(3), bounded<5>())); // assertTypeAndValue(bounded<5>(), kj::max(bounded<5>(), boundedValue<4,t2>(3))); diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/units.h b/libs/EXTERNAL/capnproto/c++/src/kj/units.h index e843b12433d..530abafbee5 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/units.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/units.h @@ -74,19 +74,6 @@ class Bounded; template class BoundedConst; -template constexpr bool isIntegral() { return false; } -template <> constexpr bool isIntegral() { return true; } -template <> constexpr bool isIntegral() { return true; } -template <> constexpr bool isIntegral() { return true; } -template <> constexpr bool isIntegral() { return true; } -template <> constexpr bool isIntegral() { return true; } -template <> constexpr bool isIntegral() { return true; } -template <> constexpr bool isIntegral() { return true; } -template <> constexpr bool isIntegral() { return true; } -template <> constexpr bool isIntegral() { return true; } -template <> constexpr bool isIntegral() { return true; } -template <> constexpr bool isIntegral() { return true; } - template struct IsIntegralOrBounded_ { static constexpr bool value = isIntegral(); }; template diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/vector.h b/libs/EXTERNAL/capnproto/c++/src/kj/vector.h index 60a370a0f26..d072448fc6b 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/vector.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/vector.h @@ -123,7 +123,7 @@ class Vector { inline void reserve(size_t size) { if (size > builder.capacity()) { - setCapacity(size); + grow(size); } } diff --git a/libs/EXTERNAL/capnproto/c++/src/kj/windows-sanity.h b/libs/EXTERNAL/capnproto/c++/src/kj/windows-sanity.h index 64475dc41dd..b2c93678d62 100644 --- a/libs/EXTERNAL/capnproto/c++/src/kj/windows-sanity.h +++ b/libs/EXTERNAL/capnproto/c++/src/kj/windows-sanity.h @@ -48,10 +48,13 @@ // now, we use `#pragma once` to tell the compiler never to include this file again. #pragma once -namespace win32 { - const auto ERROR_ = ERROR; +namespace kj_win32_workarounds { + // Namespace containing constant definitions intended to replace constants that are defined as + // macros in the Windows headers. Do not refer to this namespace directly, we'll import it into + // the global scope below. #ifdef ERROR // This could be absent if e.g. NOGDI was used. + const auto ERROR_ = ERROR; #undef ERROR const auto ERROR = ERROR_; #endif @@ -61,7 +64,8 @@ namespace win32 { typedef VOID_ VOID; } -using win32::ERROR; -using win32::VOID; +// Pull our constant definitions into the global namespace -- but only if they don't already exist +// in the global namespace. +using namespace kj_win32_workarounds; #endif diff --git a/libs/EXTERNAL/capnproto/doc/_includes/buttons.html b/libs/EXTERNAL/capnproto/doc/_includes/buttons.html index 7a7ec7567f7..66ec6248ca2 100644 --- a/libs/EXTERNAL/capnproto/doc/_includes/buttons.html +++ b/libs/EXTERNAL/capnproto/doc/_includes/buttons.html @@ -1,6 +1,6 @@
Develop +href="https://github.com/capnproto/capnproto">Develop Discuss diff --git a/libs/EXTERNAL/capnproto/doc/_includes/header.html b/libs/EXTERNAL/capnproto/doc/_includes/header.html index f249d017301..e835a3e3237 100644 --- a/libs/EXTERNAL/capnproto/doc/_includes/header.html +++ b/libs/EXTERNAL/capnproto/doc/_includes/header.html @@ -26,7 +26,7 @@
Discuss on Groups - View on GitHub + View on GitHub {% if page.title != "Introduction" %}{% endif %} diff --git a/libs/EXTERNAL/capnproto/doc/_posts/2015-01-23-capnproto-0.5.1-bugfixes.md b/libs/EXTERNAL/capnproto/doc/_posts/2015-01-23-capnproto-0.5.1-bugfixes.md index 345d756672c..52f11433387 100644 --- a/libs/EXTERNAL/capnproto/doc/_posts/2015-01-23-capnproto-0.5.1-bugfixes.md +++ b/libs/EXTERNAL/capnproto/doc/_posts/2015-01-23-capnproto-0.5.1-bugfixes.md @@ -13,4 +13,4 @@ Cap'n Proto 0.5.1 has just been released with some bug fixes: Sorry about the bugs. -In other news, as you can see, the Cap'n Proto web site now lives at `capnproto.org`. Additionally, the Github repo has been moved to the [Sandstorm.io organization](https://github.com/sandstorm-io). Both moves have left behind redirects so that old links / repository references should continue to work. +In other news, as you can see, the Cap'n Proto web site now lives at `capnproto.org`. Additionally, the Github repo has been moved to the [Sandstorm.io organization](https://github.com/capnproto). Both moves have left behind redirects so that old links / repository references should continue to work. diff --git a/libs/EXTERNAL/capnproto/doc/_posts/2015-03-02-security-advisory-and-integer-overflow-protection.md b/libs/EXTERNAL/capnproto/doc/_posts/2015-03-02-security-advisory-and-integer-overflow-protection.md index 1834524d17b..eaa2b16158f 100644 --- a/libs/EXTERNAL/capnproto/doc/_posts/2015-03-02-security-advisory-and-integer-overflow-protection.md +++ b/libs/EXTERNAL/capnproto/doc/_posts/2015-03-02-security-advisory-and-integer-overflow-protection.md @@ -6,11 +6,11 @@ author: kentonv As the installation page has always stated, I do not yet recommend using Cap'n Proto's C++ library for handling possibly-malicious input, and will not recommend it until it undergoes a formal security review. That said, security is obviously a high priority for the project. The security of Cap'n Proto is in fact essential to the security of [Sandstorm.io](https://sandstorm.io), Cap'n Proto's parent project, in which sandboxed apps communicate with each other and the platform via Cap'n Proto RPC. -A few days ago, the first major security bugs were found in Cap'n Proto C++ -- two by security guru [Ben Laurie](http://en.wikipedia.org/wiki/Ben_Laurie) and one by myself during subsequent review (see below). You can read details about each bug in our new [security advisories directory](https://github.com/sandstorm-io/capnproto/tree/master/security-advisories): +A few days ago, the first major security bugs were found in Cap'n Proto C++ -- two by security guru [Ben Laurie](http://en.wikipedia.org/wiki/Ben_Laurie) and one by myself during subsequent review (see below). You can read details about each bug in our new [security advisories directory](https://github.com/capnproto/capnproto/tree/master/security-advisories): -* [Integer overflow in pointer validation.](https://github.com/sandstorm-io/capnproto/tree/master/security-advisories/2015-03-02-0-c++-integer-overflow.md) -* [Integer underflow in pointer validation.](https://github.com/sandstorm-io/capnproto/tree/master/security-advisories/2015-03-02-1-c++-integer-underflow.md) -* [CPU usage amplification attack.](https://github.com/sandstorm-io/capnproto/tree/master/security-advisories/2015-03-02-2-all-cpu-amplification.md) +* [Integer overflow in pointer validation.](https://github.com/capnproto/capnproto/tree/master/security-advisories/2015-03-02-0-c++-integer-overflow.md) +* [Integer underflow in pointer validation.](https://github.com/capnproto/capnproto/tree/master/security-advisories/2015-03-02-1-c++-integer-underflow.md) +* [CPU usage amplification attack.](https://github.com/capnproto/capnproto/tree/master/security-advisories/2015-03-02-2-all-cpu-amplification.md) I have backported the fixes to the last two release branches -- 0.5 and 0.4: @@ -109,15 +109,15 @@ So, a `Guarded<10, int>` represents a `int` which is statically guaranteed to ho Moreover, because all of `Guarded`'s operators are inline and `constexpr`, a good optimizing compiler will be able to optimize `Guarded` down to the underlying primitive integer type. So, in theory, using `Guarded` has no runtime overhead. (I have not yet verified that real compilers get this right, but I suspect they do.) -Of course, the full implementation is considerably more complicated than this. The code has not been merged into the Cap'n Proto tree yet as we need to do more analysis to make sure it has no negative impact. For now, you can find it in the [overflow-safe](https://github.com/sandstorm-io/capnproto/tree/overflow-safe) branch, specifically in the second half of [kj/units.h](https://github.com/sandstorm-io/capnproto/blob/overflow-safe/c++/src/kj/units.h). (This header also contains metaprogramming for compile-time unit analysis, which Cap'n Proto has been using since its first release.) +Of course, the full implementation is considerably more complicated than this. The code has not been merged into the Cap'n Proto tree yet as we need to do more analysis to make sure it has no negative impact. For now, you can find it in the [overflow-safe](https://github.com/capnproto/capnproto/tree/overflow-safe) branch, specifically in the second half of [kj/units.h](https://github.com/capnproto/capnproto/blob/overflow-safe/c++/src/kj/units.h). (This header also contains metaprogramming for compile-time unit analysis, which Cap'n Proto has been using since its first release.) ### Results I switched Cap'n Proto's core pointer validation code (`capnp/layout.c++`) over to `Guarded`. In the process, I found: * Several overflows that could be triggered by the application calling methods with invalid parameters, but not by a remote attacker providing invalid message data. We will change the code to check these in the future, but they are not critical security problems. -* The overflow that Ben had already reported ([2015-03-02-0](https://github.com/sandstorm-io/capnproto/tree/master/security-advisories/2015-03-02-0-c++-integer-overflow.md)). I had intentionally left this unfixed during my analysis to verify that `Guarded` would catch it. -* One otherwise-undiscovered integer underflow ([2015-03-02-1](https://github.com/sandstorm-io/capnproto/tree/master/security-advisories/2015-03-02-1-c++-integer-underflow.md)). +* The overflow that Ben had already reported ([2015-03-02-0](https://github.com/capnproto/capnproto/tree/master/security-advisories/2015-03-02-0-c++-integer-overflow.md)). I had intentionally left this unfixed during my analysis to verify that `Guarded` would catch it. +* One otherwise-undiscovered integer underflow ([2015-03-02-1](https://github.com/capnproto/capnproto/tree/master/security-advisories/2015-03-02-1-c++-integer-underflow.md)). Based on these results, I conclude that `Guarded` is in fact effective at finding overflow bugs, and that such bugs are thankfully _not_ endemic in Cap'n Proto's code. diff --git a/libs/EXTERNAL/capnproto/doc/_posts/2015-03-05-another-cpu-amplification.md b/libs/EXTERNAL/capnproto/doc/_posts/2015-03-05-another-cpu-amplification.md index d074c9db800..4c8ae97591f 100644 --- a/libs/EXTERNAL/capnproto/doc/_posts/2015-03-05-another-cpu-amplification.md +++ b/libs/EXTERNAL/capnproto/doc/_posts/2015-03-05-another-cpu-amplification.md @@ -8,7 +8,7 @@ Unfortunately, it turns out that our fix for one of [the security advisories iss Fortunately, the incomplete fix is for the non-critical vulnerability. The worst case is that an attacker could consume excessive CPU time. -Nevertheless, we've issued [a new advisory](https://github.com/sandstorm-io/capnproto/tree/master/security-advisories/2015-03-05-0-c++-addl-cpu-amplification.md) and pushed a new release: +Nevertheless, we've issued [a new advisory](https://github.com/capnproto/capnproto/tree/master/security-advisories/2015-03-05-0-c++-addl-cpu-amplification.md) and pushed a new release: - Release 0.5.1.2: [source](https://capnproto.org/capnproto-c++-0.5.1.2.tar.gz), [win32](https://capnproto.org/capnproto-c++-win32-0.5.1.2.zip) - Release 0.4.1.2: [source](https://capnproto.org/capnproto-c++-0.4.1.2.tar.gz) diff --git a/libs/EXTERNAL/capnproto/doc/_posts/2017-05-01-capnproto-0.6-msvc-json-http-more.md b/libs/EXTERNAL/capnproto/doc/_posts/2017-05-01-capnproto-0.6-msvc-json-http-more.md index bd36cbbaced..336f0d838f6 100644 --- a/libs/EXTERNAL/capnproto/doc/_posts/2017-05-01-capnproto-0.6-msvc-json-http-more.md +++ b/libs/EXTERNAL/capnproto/doc/_posts/2017-05-01-capnproto-0.6-msvc-json-http-more.md @@ -40,7 +40,7 @@ The 0.6 release includes a number of measures designed to harden Cap'n Proto's C Cap'n Proto messages can now be converted to and from JSON using `libcapnp-json`. This makes it easy to integrate your JSON front-end API with your Cap'n Proto back-end. -See the capnp/compat/json.h header for API details. +See the capnp/compat/json.h header for API details. This library was primarily built by [**Kamal Marhubi**](https://github.com/kamalmarhubi) and [**Branislav Katreniak**](https://github.com/katreniak), using Cap'n Proto's [dynamic API]({{site.baseurl}}cxx.html#dynamic-reflection). @@ -48,7 +48,7 @@ This library was primarily built by [**Kamal Marhubi**](https://github.com/kamal KJ (the C++ framework library bundled with Cap'n Proto) now ships with a minimalist HTTP library, `libkj-http`. The library is based on the KJ asynchronous I/O framework and covers both client-side and server-side use cases. Although functional and used in production today, the library should be considered a work in progress -- expect improvements in future releases, such as client connection pooling and TLS support. -See the kj/compat/http.h header for API details. +See the kj/compat/http.h header for API details. #### Smaller things diff --git a/libs/EXTERNAL/capnproto/doc/_posts/2022-06-03-capnproto-0.10.md b/libs/EXTERNAL/capnproto/doc/_posts/2022-06-03-capnproto-0.10.md new file mode 100644 index 00000000000..999fd10fbc7 --- /dev/null +++ b/libs/EXTERNAL/capnproto/doc/_posts/2022-06-03-capnproto-0.10.md @@ -0,0 +1,12 @@ +--- +layout: post +title: "Cap'n Proto 0.10" +author: kentonv +--- + + + +Today I'm releasing Cap'n Proto 0.10. + +Like last time, there's no huge new features in this release, but there are many minor improvements and bug fixes. You can [read the PR history](https://github.com/capnproto/capnproto/pulls?q=is%3Apr+is%3Aclosed) to find out what has changed. diff --git a/libs/EXTERNAL/capnproto/doc/_posts/2022-11-30-CVE-2022-46149-security-advisory.md b/libs/EXTERNAL/capnproto/doc/_posts/2022-11-30-CVE-2022-46149-security-advisory.md new file mode 100644 index 00000000000..01284cca4aa --- /dev/null +++ b/libs/EXTERNAL/capnproto/doc/_posts/2022-11-30-CVE-2022-46149-security-advisory.md @@ -0,0 +1,13 @@ +--- +layout: post +title: "CVE-2022-46149: Possible out-of-bounds read related to list-of-pointers" +author: kentonv +--- + +David Renshaw, the author of the Rust implementation of Cap'n Proto, discovered a security vulnerability affecting both the C++ and Rust implementations of Cap'n Proto. The vulnerability was discovered using fuzzing. In theory, the vulnerability could lead to out-of-bounds reads which could cause crashes or perhaps exfiltration of memory. + +The vulnerability is exploitable only if an application performs a certain unusual set of actions. As of this writing, we are not aware of any applications that are actually affected. However, out of an abundance of caution, we are issuing a security advisory and advising everyone to patch. + +[Our security advisory](https://github.com/capnproto/capnproto/blob/master/security-advisories/2022-11-30-0-pointer-list-bounds.md) explains the impact of the bug, what an app must do to be affected, and where to find the fix. + +Check out [David's blog post](https://dwrensha.github.io/capnproto-rust/2022/11/30/out_of_bounds_memory_access_bug.html) for an in-depth explanation of the bug itself, including some of the inner workings of Cap'n Proto. diff --git a/libs/EXTERNAL/capnproto/doc/_posts/2023-07-28-capnproto-1.0.md b/libs/EXTERNAL/capnproto/doc/_posts/2023-07-28-capnproto-1.0.md new file mode 100644 index 00000000000..94073efa3c8 --- /dev/null +++ b/libs/EXTERNAL/capnproto/doc/_posts/2023-07-28-capnproto-1.0.md @@ -0,0 +1,74 @@ +--- +layout: post +title: "Cap'n Proto 1.0" +author: kentonv +--- + + + +It's been a little over ten years since the first release of Cap'n Proto, on April 1, 2013. Today I'm releasing version 1.0 of Cap'n Proto's C++ reference implementation. + +Don't get too excited! There's not actually much new. Frankly, I should have declared 1.0 a long time ago – probably around version 0.6 (in 2017) or maybe even 0.5 (in 2014). I didn't mostly because there were a few advanced features (like three-party handoff, or shared-memory RPC) that I always felt like I wanted to finish before 1.0, but they just kept not reaching the top of my priority list. But the reality is that Cap'n Proto has been relied upon in production for a long time. In fact, you are using Cap'n Proto right now, to view this site, which is served by Cloudflare, which uses Cap'n Proto extensively (and is also my employer, although they used Cap'n Proto before they hired me). Cap'n Proto is used to encode millions (maybe billions) of messages and gigabits (maybe terabits) of data every single second of every day. As for those still-missing features, the real world has seemingly proven that they aren't actually that important. (I still do want to complete them though.) + +Ironically, the thing that finally motivated the 1.0 release is so that we can start working on 2.0. But again here, don't get too excited! Cap'n Proto 2.0 is not slated to be a revolutionary change. Rather, there are a number of changes we (the Cloudflare Workers team) would like to make to Cap'n Proto's C++ API, and its companion, the KJ C++ toolkit library. Over the ten years these libraries have been available, I have kept their APIs pretty stable, despite being 0.x versioned. But for 2.0, we want to make some sweeping backwards-incompatible changes, in order to fix some footguns and improve developer experience for those on our team. + +Some users probably won't want to keep up with these changes. Hence, I'm releasing 1.0 now as a sort of "long-term support" release. We'll backport bugfixes as appropriate to the 1.0 branch for the long term, so that people who aren't interested in changes can just stick with it. + +## What's actually new in 1.0? + +Again, not a whole lot has changed since the last version, 0.10. But there are a few things worth mentioning: + +* A number of optimizations were made to improve performance of Cap'n Proto RPC. These include reducing the amount of memory allocation done by the RPC implementation and KJ I/O framework, adding the ability to elide certain messages from the RPC protocol to reduce traffic, and doing better buffering of small messages that are sent and received together to reduce syscalls. These are incremental improvements. + +* **Breaking change:** Previously, servers could opt into allowing RPC cancellation by calling `context.allowCancellation()` after a call was delivered. In 1.0, opting into cancellation is instead accomplished using an annotation on the schema (the `allowCancellation` annotation defined in `c++.capnp`). We made this change after observing that in practice, we almost always wanted to allow cancellation, but we almost always forgot to do so. The schema-level annotation can be set on a whole file at a time, which is easier not to forget. Moreover, the dynamic opt-in required a lot of bookkeeping that had a noticeable performance impact in practice; switching to the annotation provided a performance boost. For users that never used `context.allowCancellation()` in the first place, there's no need to change anything when upgrading to 1.0 – cancellation is still disallowed by default. (If you are affected, you will see a compile error. If there's no compile error, you have nothing to worry about.) + +* KJ now uses `kqueue()` to handle asynchronous I/O on systems that have it (MacOS and BSD derivatives). KJ has historically always used `epoll` on Linux, but until now had used a slower `poll()`-based approach on other Unix-like platforms. + +* KJ's HTTP client and server implementations now support the `CONNECT` method. + +* [A new class `capnp::RevocableServer` was introduced](https://github.com/capnproto/capnproto/pull/1700) to assist in exporting RPC wrappers around objects whose lifetimes are not controlled by the wrapper. Previously, avoiding use-after-free bugs in such scenarios was tricky. + +* Many, many smaller bug fixes and improvements. [See the PR history](https://github.com/capnproto/capnproto/pulls?q=is%3Apr+is%3Aclosed) for details. + +## What's planned for 2.0? + +The changes we have in mind for version 2.0 of Cap'n Proto's C++ implementation are mostly NOT related to the protocol itself, but rather to the C++ API and especially to KJ, the C++ toolkit library that comes with Cap'n Proto. These changes are motivated by our experience building a large codebase on top of KJ: namely, the Cloudflare Workers runtime, [`workerd`](https://github.com/cloudflare/workerd). + +KJ is a C++ toolkit library, arguably comparable to things like Boost, Google's Abseil, or Facebook's Folly. I started building KJ at the same time as Cap'n Proto in 2013, at a time when C++11 was very new and most libraries were not really designing around it yet. The intent was never to create a new standard library, but rather to address specific needs I had at the time. But over many years, I ended up building a lot of stuff. By the time I joined Cloudflare and started the Workers Runtime, KJ already featured a powerful async I/O framework, HTTP implementation, TLS bindings, and more. + +Of course, KJ has nowhere near as much stuff as Boost or Abseil, and nowhere near as much engineering effort behind it. You might argue, therefore, that it would have been better to choose one of those libraries to build on. However, KJ had a huge advantage: that we own it, and can shape it to fit our specific needs, without having to fight with anyone to get those changes upstreamed. + +One example among many: KJ's HTTP implementation features the ability to "suspend" the state of an HTTP connection, after receiving headers, and transfer it to a different thread or process to be resumed. This is an unusual thing to want, but is something we needed for resource management in the Workers Runtime. Implementing this required some deep surgery in KJ HTTP and definitely adds complexity. If we had been using someone else's HTTP library, would they have let us upstream such a change? + +That said, even though we own KJ, we've still tried to avoid making any change that breaks third-party users, and this has held back some changes that would probably benefit Cloudflare Workers. We have therefore decided to "fork" it. Version 2.0 is that fork. + +Development of version 2.0 will take place on Cap'n Proto's new `v2` branch. The `master` branch will become the 1.0 LTS branch, so that existing projects which track `master` are not disrupted by our changes. + +We don't yet know all the changes we want to make as we've only just started thinking seriously about it. But, here's some ideas we've had so far: + +* We will require a compiler with support for C++20, or maybe even C++23. Cap'n Proto 1.0 only requires C++14. + +* In particular, we will require a compiler that supports C++20 coroutines, as lots of KJ async code will be refactored to rely on coroutines. This should both make the code clearer and improve performance by reducing memory allocations. However, coroutine support is still spotty – as of this writing, GCC seems to ICE on KJ's coroutine implementation. + +* Cap'n Proto's RPC API, KJ's HTTP APIs, and others are likely to be revised to make them more coroutine-friendly. + +* `kj::Maybe` will become more ergonomic. It will no longer overload `nullptr` to represent the absence of a value; we will introduce `kj::none` instead. `KJ_IF_MAYBE` will no longer produce a pointer, but instead a reference (a trick that becomes possible by utilizing C++17 features). + +* We will drop support for compiling with exceptions disabled. KJ's coding style uses exceptions as a form of software fault isolation, or "catchable panics", such that errors can cause the "current task" to fail out without disrupting other tasks running concurrently. In practice, this ends up affecting every part of how KJ-style code is written. And yet, since the beginning, KJ and Cap'n Proto have been designed to accommodate environments where exceptions are turned off at compile time, using an elaborate system to fall back to callbacks and distinguish between fatal and non-fatal exceptions. In practice, maintaining this ability has been a drag on development – no-exceptions mode is constantly broken and must be tediously fixed before each release. Even when the tests are passing, it's likely that a lot of KJ's functionality realistically cannot be used in no-exceptions mode due to bugs and fragility. Today, I would strongly recommend against anyone using this mode except maybe for the most basic use of Cap'n Proto's serialization layer. Meanwhile, though, I'm honestly not sure if anyone uses this mode at all! In theory I would expect many people do, since many people choose to use C++ with exceptions disabled, but I've never actually received a single question or bug report related to it. It seems very likely that this was wasted effort all along. By removing support, we can simplify a lot of stuff and probably do releases more frequently going forward. + +* Similarly, we'll drop support for no-RTTI mode and other exotic modes that are a maintenance burden. + +* We may revise KJ's approach to reference counting, as the current design has proven to be unintuitive to many users. + +* We will fix a longstanding design flaw in `kj::AsyncOutputStream`, where EOF is currently signaled by destroying the stream. Instead, we'll add an explicit `end()` method that returns a Promise. Destroying the stream without calling `end()` will signal an erroneous disconnect. (There are several other aesthetic improvements I'd like to make to the KJ stream APIs as well.) + +* We may want to redesign several core I/O APIs to be a better fit for Linux's new-ish io_uring event notification paradigm. + +* The RPC implementation may switch to allowing cancellation by default. As discussed above, this is opt-in today, but in practice I find it's almost always desirable, and disallowing it can lead to subtle problems. + +* And so on. + +It's worth noting that at present, there is no plan to make any backwards-incompatible changes to the serialization format or RPC protocol. The changes being discussed only affect the C++ API. Applications written in other languages are completely unaffected by all this. + +It's likely that a formal 2.0 release will not happen for some time – probably a few years. I want to make sure we get through all the really big breaking changes we want to make, before we inflict update pain on most users. Of course, if you're willing to accept breakages, you can always track the `v2` branch. Cloudflare Workers releases from `v2` twice a week, so it should always be in good working order. diff --git a/libs/EXTERNAL/capnproto/doc/cxx.md b/libs/EXTERNAL/capnproto/doc/cxx.md index fd0ebe8670c..dcd8b4cca90 100644 --- a/libs/EXTERNAL/capnproto/doc/cxx.md +++ b/libs/EXTERNAL/capnproto/doc/cxx.md @@ -160,7 +160,7 @@ See the header `kj/exception.h` for details on how to register an exception call Cap'n Proto is built on top of a basic utility library called KJ. The two were actually developed together -- KJ is simply the stuff which is not specific to Cap'n Proto serialization, and may be -useful to others independently of Cap'n Proto. For now, the the two are distributed together. The +useful to others independently of Cap'n Proto. For now, the two are distributed together. The name "KJ" has no particular meaning; it was chosen to be short and easy-to-type. As of v0.3, KJ is distributed with Cap'n Proto but built as a separate library. You may need @@ -179,7 +179,7 @@ To use this code in your app, you must link against both `libcapnp` and `libkj`. flags. If you use [RPC](cxxrpc.html) (i.e., your schema defines [interfaces](language.html#interfaces)), -then you will additionally nead to link against `libcapnp-rpc` and `libkj-async`, or use the +then you will additionally need to link against `libcapnp-rpc` and `libkj-async`, or use the `capnp-rpc` `pkg-config` module. ### Setting a Namespace @@ -794,7 +794,7 @@ Here are some tips for using the C++ Cap'n Proto runtime most effectively: dead space. In the future, Cap'n Proto may be improved such that it can re-use dead space in a message. - However, this will only improve things, not fix them entirely: fragementation could still leave + However, this will only improve things, not fix them entirely: fragmentation could still leave dead space. ### Build Tips @@ -877,7 +877,7 @@ tips will apply. ## Lessons Learned from Protocol Buffers -The author of Cap'n Proto's C++ implementation also wrote (in the past) verison 2 of Google's +The author of Cap'n Proto's C++ implementation also wrote (in the past) version 2 of Google's Protocol Buffers. As a result, Cap'n Proto's implementation benefits from a number of lessons learned the hard way: diff --git a/libs/EXTERNAL/capnproto/doc/cxxrpc.md b/libs/EXTERNAL/capnproto/doc/cxxrpc.md index eb25acb8b50..3e55bcade5e 100644 --- a/libs/EXTERNAL/capnproto/doc/cxxrpc.md +++ b/libs/EXTERNAL/capnproto/doc/cxxrpc.md @@ -16,7 +16,7 @@ not yet implemented. ## Sample Code -The [Calculator example](https://github.com/sandstorm-io/capnproto/tree/master/c++/samples) implements +The [Calculator example](https://github.com/capnproto/capnproto/tree/master/c++/samples) implements a fully-functional Cap'n Proto client and server. ## KJ Concurrency Framework @@ -394,7 +394,7 @@ addresses. Additionally, a Unix domain socket can be specified as `unix:` follo and an abstract Unix domain socket can be specified as `unix-abstract:` followed by an identifier. For a more complete example, see the -[calculator client sample](https://github.com/sandstorm-io/capnproto/tree/master/c++/samples/calculator-client.c++). +[calculator client sample](https://github.com/capnproto/capnproto/tree/master/c++/samples/calculator-client.c++). ### Starting a server @@ -434,7 +434,7 @@ path name, and an abstract Unix domain socket can be specified as `unix-abstract an identifier. For a more complete example, see the -[calculator server sample](https://github.com/sandstorm-io/capnproto/tree/master/c++/samples/calculator-server.c++). +[calculator server sample](https://github.com/capnproto/capnproto/tree/master/c++/samples/calculator-server.c++). ## Debugging diff --git a/libs/EXTERNAL/capnproto/doc/encoding.md b/libs/EXTERNAL/capnproto/doc/encoding.md index 5eeba8fa31b..78a203249f1 100644 --- a/libs/EXTERNAL/capnproto/doc/encoding.md +++ b/libs/EXTERNAL/capnproto/doc/encoding.md @@ -268,7 +268,7 @@ A capability pointer, then, simply contains an index into the separate capabilit C (32 bits) = Index of the capability in the message's capability table. -In [rpc.capnp](https://github.com/sandstorm-io/capnproto/blob/master/c++/src/capnp/rpc.capnp), the +In [rpc.capnp](https://github.com/capnproto/capnproto/blob/master/c++/src/capnp/rpc.capnp), the capability table is encoded as a list of `CapDescriptors`, appearing along-side the message content in the `Payload` struct. However, some use cases may call for different approaches. A message that is built and consumed within the same process need not encode the capability table at all @@ -415,7 +415,7 @@ different limit if desired. Another reasonable strategy is to set the limit to s the original message size; however, most applications should place limits on overall message sizes anyway, so it makes sense to have one check cover both. -**List amplification:** A list of `Void` values or zero-size structs can have a very large element count while taking constant space on the wire. If the receiving application expects a list of structs, it will see these zero-sized elements as valid structs set to their default values. If it iterates through the list processing each element, it could spend a large amount of CPU time or other resources despite the message being small. To defend against this, the "traversal limit" should count a list of zero-sized elements as if each element were one word instead. This rule was introduced in the C++ implementation in [commit 1048706](https://github.com/sandstorm-io/capnproto/commit/104870608fde3c698483fdef6b97f093fc15685d). +**List amplification:** A list of `Void` values or zero-size structs can have a very large element count while taking constant space on the wire. If the receiving application expects a list of structs, it will see these zero-sized elements as valid structs set to their default values. If it iterates through the list processing each element, it could spend a large amount of CPU time or other resources despite the message being small. To defend against this, the "traversal limit" should count a list of zero-sized elements as if each element were one word instead. This rule was introduced in the C++ implementation in [commit 1048706](https://github.com/capnproto/capnproto/commit/104870608fde3c698483fdef6b97f093fc15685d). ### Stack overflow DoS attack diff --git a/libs/EXTERNAL/capnproto/doc/faq.md b/libs/EXTERNAL/capnproto/doc/faq.md index e3bf4becb55..9443e126838 100644 --- a/libs/EXTERNAL/capnproto/doc/faq.md +++ b/libs/EXTERNAL/capnproto/doc/faq.md @@ -197,15 +197,26 @@ Cap'n Proto may be layered on top of an existing encrypted transport, such as TL ### How do I report security bugs? -Please email [security@sandstorm.io](mailto:security@sandstorm.io). +Please email [kenton@cloudflare.com](mailto:kenton@cloudflare.com). ## Sandstorm ### How does Cap'n Proto relate to Sandstorm.io? -[Sandstorm.io](https://sandstorm.io) is an Open Source project and startup founded by Kenton, the author of Cap'n Proto. Cap'n Proto is owned and developed by Sandstorm the company and heavily used in Sandstorm the project. +[Sandstorm.io](https://sandstorm.io) is an Open Source project and startup founded by Kenton, the author of Cap'n Proto. Cap'n Proto was developed by Sandstorm the company and heavily used in Sandstorm the project. Sandstorm ceased most operations in 2017 and formally dissolved as a company in 2022, but the open source project continues to be developed by the community. ### How does Sandstorm use Cap'n Proto? See [this Sandstorm blog post](https://blog.sandstorm.io/news/2014-12-15-capnproto-0.5.html). +## Cloudflare + +### How does Cap'n Proto relate to Cloudflare? + +[Cloudflare Workers](https://workers.dev) is a next-generation cloud application platform. Kenton, the author of Cap'n Proto, is the lead engineer on the Workers project. Workers heavily uses Cap'n Proto in its implementation, and the Cloudflare Workers team are now the primarily developers and maintainers of Cap'n Proto's primary C++ implementation. + +### How does Cloudflare use Cap'n Proto? + +The Cloudflare Workers runtime is built on Cap'n Proto and it's associated C++ toolkit library, KJ. Cap'n Proto is used for a variety of things, such as communication between sandbox processes and their supervisors, as well between machines and datacenters, especially in the implementation of [Durable Objects](https://blog.cloudflare.com/introducing-workers-durable-objects/). + +Cloudflare has also [long used Cap'n Proto in its logging pipeline](http://www.thedotpost.com/2015/06/john-graham-cumming-i-got-10-trillion-problems-but-logging-aint-one) and [developed the Lua implementation of Cap'n Proto](https://blog.cloudflare.com/introducing-lua-capnproto-better-serialization-in-lua/) -- both of these actually predate Kenton joining the company. diff --git a/libs/EXTERNAL/capnproto/doc/index.md b/libs/EXTERNAL/capnproto/doc/index.md index 6545ebafa83..ae57b839792 100644 --- a/libs/EXTERNAL/capnproto/doc/index.md +++ b/libs/EXTERNAL/capnproto/doc/index.md @@ -51,7 +51,7 @@ Cap'n Proto generates classes with accessor methods that you use to traverse the Thus, Cap'n Proto checks the structural integrity of the message just like any other serialization protocol would. And, just like any other protocol, it is up to the app to check the validity of the content. -Cap'n Proto was built to be used in [Sandstorm.io](https://sandstorm.io), where security is a major concern. As of this writing, Cap'n Proto has not undergone a security review, therefore we suggest caution when handling messages from untrusted sources. That said, our response to security issues was once described by security guru Ben Laurie as ["the most awesome response I've ever had."](https://twitter.com/BenLaurie/status/575079375307153409) (Please report all security issues to [security@sandstorm.io](mailto:security@sandstorm.io).) +Cap'n Proto was built to be used in [Sandstorm.io](https://sandstorm.io), and is now heavily used in [Cloudflare Workers](https://workers.dev), two environments where security is a major concern. Cap'n Proto has undergone fuzzing and expert security review. Our response to security issues was once described by security guru Ben Laurie as ["the most awesome response I've ever had."](https://twitter.com/BenLaurie/status/575079375307153409) (Please report all security issues to [kenton@cloudflare.com](mailto:kenton@cloudflare.com).) **_Are there other advantages?_** @@ -90,7 +90,7 @@ version 2, which is the version that Google released open source. Cap'n Proto is years of experience working on Protobufs, listening to user feedback, and thinking about how things could be done better. -Note that I no longer work for Google. Cap'n Proto is not, and never has been, affiliated with Google; in fact, it is a property of [Sandstorm.io](https://sandstorm.io), of which I am co-founder. +Note that I no longer work for Google. Cap'n Proto is not, and never has been, affiliated with Google. **_OK, how do I get started?_** diff --git a/libs/EXTERNAL/capnproto/doc/install.md b/libs/EXTERNAL/capnproto/doc/install.md index ca94e4219ca..d911ee15695 100644 --- a/libs/EXTERNAL/capnproto/doc/install.md +++ b/libs/EXTERNAL/capnproto/doc/install.md @@ -21,13 +21,13 @@ This package is licensed under the [MIT License](http://opensource.org/licenses/ Cap'n Proto makes extensive use of C++14 language features. As a result, it requires a relatively new version of a well-supported compiler. The minimum versions are: -* GCC 5.0 -* Clang 5.0 -* Visual C++ 2017 +* GCC 7.0 +* Clang 6.0 +* Visual C++ 2019 If your system's default compiler is older that the above, you will need to install a newer compiler and set the `CXX` environment variable before trying to build Cap'n Proto. For example, -after installing GCC 5, you could set `CXX=g++-5` to use this compiler. +after installing GCC 7, you could set `CXX=g++-7` to use this compiler. ### Supported Operating Systems @@ -37,11 +37,10 @@ as well as on Windows. We test every Cap'n Proto release on the following platfo * Android * Linux * Mac OS X -* Windows - Cygwin * Windows - MinGW-w64 * Windows - Visual C++ -**Windows users:** Cap'n Proto requires Visual Studio 2017 or newer. All features +**Windows users:** Cap'n Proto requires Visual Studio 2019 or newer. All features of Cap'n Proto -- including serialization, dynamic API, RPC, and schema parser -- are now supported. **Mac OS X users:** You should use the latest Xcode with the Xcode command-line @@ -56,9 +55,9 @@ package from [Apple](https://developer.apple.com/downloads/) or compiler builds You may download and install the release version of Cap'n Proto like so: -
curl -O https://capnproto.org/capnproto-c++-0.9.1.tar.gz
-tar zxf capnproto-c++-0.9.1.tar.gz
-cd capnproto-c++-0.9.1
+
curl -O https://capnproto.org/capnproto-c++-1.0.2.tar.gz
+tar zxf capnproto-c++-1.0.2.tar.gz
+cd capnproto-c++-1.0.2
 ./configure
 make -j6 check
 sudo make install
@@ -84,7 +83,7 @@ If you download directly from Git, you will need to have the GNU autotools -- [automake](http://www.gnu.org/software/automake/), and [libtool](http://www.gnu.org/software/libtool/) -- installed. - git clone https://github.com/sandstorm-io/capnproto.git + git clone -b master https://github.com/capnproto/capnproto.git cd capnproto/c++ autoreconf -i ./configure @@ -97,15 +96,15 @@ If you download directly from Git, you will need to have the GNU autotools -- 1. Download Cap'n Proto Win32 build: -
https://capnproto.org/capnproto-c++-win32-0.9.1.zip
+
https://capnproto.org/capnproto-c++-win32-1.0.2.zip
-2. Find `capnp.exe`, `capnpc-c++.exe`, and `capnpc-capnp.exe` under `capnproto-tools-win32-0.9.1` in +2. Find `capnp.exe`, `capnpc-c++.exe`, and `capnpc-capnp.exe` under `capnproto-tools-win32-1.0.2` in the zip and copy them somewhere. 3. If your `.capnp` files will import any of the `.capnp` files provided by the core project, or if you use the `stream` keyword (which implicitly imports `capnp/stream.capnp`), then you need to put those files somewhere where the capnp compiler can find them. To do this, copy the - directory `capnproto-c++-0.9.1/src` to the location of your choice, then make sure to pass the + directory `capnproto-c++-1.0.2/src` to the location of your choice, then make sure to pass the flag `-I ` to `capnp` when you run it. If you don't care about C++ support, you can stop here. The compiler exe can be used with plugins @@ -113,16 +112,16 @@ provided by projects implementing Cap'n Proto in other languages. If you want to use Cap'n Proto in C++ with Visual Studio, do the following: -1. Make sure that you are using Visual Studio 2017 or newer, with all updates installed. Cap'n +1. Make sure that you are using Visual Studio 2019 or newer, with all updates installed. Cap'n Proto uses C++14 language features that did not work in previous versions of Visual Studio, and the updates include many bug fixes that Cap'n Proto requires. -2. Install [CMake](http://www.cmake.org/) version 3.1 or later. +2. Install [CMake](http://www.cmake.org/) version 3.16 or later. -3. Use CMake to generate Visual Studio project files under `capnproto-c++-0.9.1` in the zip file. +3. Use CMake to generate Visual Studio project files under `capnproto-c++-1.0.2` in the zip file. You can use the CMake UI for this or run this shell command: - cmake -G "Visual Studio 15 2017" + cmake -G "Visual Studio 16 2019" 3. Open the "Cap'n Proto" solution in Visual Studio. diff --git a/libs/EXTERNAL/capnproto/doc/language.md b/libs/EXTERNAL/capnproto/doc/language.md index 034e854c460..5b638ee840f 100644 --- a/libs/EXTERNAL/capnproto/doc/language.md +++ b/libs/EXTERNAL/capnproto/doc/language.md @@ -581,7 +581,9 @@ struct Foo { The above imports specify relative paths. If the path begins with a `/`, it is absolute -- in this case, the `capnp` tool searches for the file in each of the search path directories specified -with `-I`. +with `-I`, appending the path you specify to the path given to the `-I` flag. So, for example, +if you ran `capnp` with `-Ifoo/bar`, and the import statement is `import "/baz/qux.capnp"`, then +the compiler would open the file `foo/bar/baz/qux.capnp`. ### Annotations @@ -606,7 +608,7 @@ struct MyType $foo("bar") { {% endhighlight %} The possible targets for an annotation are: `file`, `struct`, `field`, `union`, `group`, `enum`, -`enumerant`, `interface`, `method`, `parameter`, `annotation`, `const`. +`enumerant`, `interface`, `method`, `param`, `annotation`, `const`. You may also specify `*` to cover them all. {% highlight capnp %} @@ -736,7 +738,15 @@ without changing the [canonical](encoding.html#canonicalization) encoding of a m * A field can be moved into a group or a union, as long as the group/union and all other fields within it are new. In other words, a field can be replaced with a group or union containing an - equivalent field and some new fields. + equivalent field and some new fields. Note that when creating a union this way, this particular + change is not fully forwards-compatible: if you create a message where one of the union's new + fields are set, and the message is read by an old program that dosen't know about the union, then + it may expect the original field to be present, and if it tries to read that field, may see a + garbage value or throw an exception. To avoid this problem, make sure to only use the new union + members when talking to programs that know about the union. This caveat only applies when moving + an existing field into a new union; adding new fields to an existing union does not create a + problem, because existing programs should already know to check the union's tag (although they + may or may not behave reasonably when the tag has a value they don't recognize). * A non-generic type can be made [generic](#generic-types), and new generic parameters may be added to an existing generic type. Other types used inside the body of the newly-generic type can diff --git a/libs/EXTERNAL/capnproto/doc/otherlang.md b/libs/EXTERNAL/capnproto/doc/otherlang.md index e3064927679..c7c156783b8 100644 --- a/libs/EXTERNAL/capnproto/doc/otherlang.md +++ b/libs/EXTERNAL/capnproto/doc/otherlang.md @@ -14,9 +14,9 @@ project's documentation for details. ##### Serialization + RPC * [C++](cxx.html) by [@kentonv](https://github.com/kentonv) -* [C# (.NET Core)](https://github.com/c80k/capnproto-dotnetcore) by [@c80k](https://github.com/c80k) +* [C#](https://github.com/c80k/capnproto-dotnetcore) by [@c80k](https://github.com/c80k) * [Erlang](http://ecapnp.astekk.se/) by [@kaos](https://github.com/kaos) -* [Go](https://github.com/zombiezen/go-capnproto2) by [@zombiezen](https://github.com/zombiezen) (forked from [@glycerine](https://github.com/glycerine)'s serialization-only version, below) +* [Go](https://github.com/capnproto/go-capnp) currently maintained by [@zenhack](https://github.com/zenhack) and [@lthibault](https://github.com/lthibault) * [Haskell](https://github.com/zenhack/haskell-capnp) by [@zenhack](https://github.com/zenhack) * [JavaScript (Node.js only)](https://github.com/capnproto/node-capnp) by [@kentonv](https://github.com/kentonv) * [OCaml](https://github.com/capnproto/capnp-ocaml) by [@pelzlpj](https://github.com/pelzlpj) with [RPC](https://github.com/mirage/capnp-rpc) by [@talex5](https://github.com/talex5) @@ -25,9 +25,9 @@ project's documentation for details. ##### Serialization only -* [C](https://github.com/opensourcerouting/c-capnproto) by [OpenSourceRouting](https://www.opensourcerouting.org/) / [@eqvinox](https://github.com/eqvinox) (originally by [@jmckaskill](https://github.com/jmckaskill)) +* [C](https://github.com/opensourcerouting/c-capnproto) by [OpenSourceRouting](https://www.opensourcerouting.org/) / [@eqvinox](https://github.com/eqvinox) (originally by [@jmckaskill](https://github.com/jmckaskill)) (no longer maintained) + * [Forked and maintained](https://gitlab.com/dkml/ext/c-capnproto) by [@jonahbeckford](https://github.com/jonahbeckford) * [D](https://github.com/capnproto/capnproto-dlang) by [@ThomasBrixLarsen](https://github.com/ThomasBrixLarsen) -* [Go](https://github.com/glycerine/go-capnproto) by [@glycerine](https://github.com/glycerine) (originally by [@jmckaskill](https://github.com/jmckaskill)) * [Java](https://github.com/capnproto/capnproto-java/) by [@dwrensha](https://github.com/dwrensha) * [JavaScript](https://github.com/capnp-js/plugin/) by [@popham](https://github.com/popham) * [JavaScript](https://github.com/jscheid/capnproto-js) (older, abandoned) by [@jscheid](https://github.com/jscheid) @@ -72,7 +72,7 @@ then hands the parse tree off to another binary -- known as a "plugin" -- which Plugins are independent executables (written in any language) which read a description of the schema from standard input and then generate the necessary code. The description is itself a Cap'n Proto message, defined by -[schema.capnp](https://github.com/sandstorm-io/capnproto/blob/master/c%2B%2B/src/capnp/schema.capnp). +[schema.capnp](https://github.com/capnproto/capnproto/blob/master/c%2B%2B/src/capnp/schema.capnp). Specifically, the plugin receives a `CodeGeneratorRequest`, using [standard serialization](encoding.html#serialization-over-a-stream) (not packed). (Note that installing the C++ runtime causes schema.capnp to be placed in @@ -100,8 +100,8 @@ If the user specifies an output directory, the compiler will run the plugin with as the working directory, so you do not need to worry about this. For examples of plugins, take a look at -[capnpc-capnp](https://github.com/sandstorm-io/capnproto/blob/master/c%2B%2B/src/capnp/compiler/capnpc-capnp.c%2B%2B) -or [capnpc-c++](https://github.com/sandstorm-io/capnproto/blob/master/c%2B%2B/src/capnp/compiler/capnpc-c%2B%2B.c%2B%2B). +[capnpc-capnp](https://github.com/capnproto/capnproto/blob/master/c%2B%2B/src/capnp/compiler/capnpc-capnp.c%2B%2B) +or [capnpc-c++](https://github.com/capnproto/capnproto/blob/master/c%2B%2B/src/capnp/compiler/capnpc-c%2B%2B.c%2B%2B). ### Supporting Dynamic Languages diff --git a/libs/EXTERNAL/capnproto/doc/push-site.sh b/libs/EXTERNAL/capnproto/doc/push-site.sh index 958c1013dd8..48f89e62c01 100755 --- a/libs/EXTERNAL/capnproto/doc/push-site.sh +++ b/libs/EXTERNAL/capnproto/doc/push-site.sh @@ -9,7 +9,7 @@ if grep 'localhost:4000' *.md _posts/*.md; then fi if [ "x$(git status --porcelain)" != "x" ]; then - echo -n "git repo has uncommited changes. Continue anyway? (y/N) " >&2 + echo -n "git repo has uncommitted changes. Continue anyway? (y/N) " >&2 read -n 1 YESNO echo >&2 if [ "x$YESNO" != xy ]; then diff --git a/libs/EXTERNAL/capnproto/doc/roadmap.md b/libs/EXTERNAL/capnproto/doc/roadmap.md index 097828609e5..6b7fcc1e4d1 100644 --- a/libs/EXTERNAL/capnproto/doc/roadmap.md +++ b/libs/EXTERNAL/capnproto/doc/roadmap.md @@ -50,7 +50,7 @@ these will actually happen; as always, real work is driven by real-world needs. to each struct type. The POCS type would use traditional memory allocation, thus would not support zero-copy, but would support a more traditional and easy-to-use C++ API, including the ability to mutate the object over time without convoluted memory management. POCS types - could be extracted from an inserted into messages with a single copy, allowing them to be + could be extracted from and inserted into messages with a single copy, allowing them to be used easily in non-performance-critical code. * **Multi-threading:** It should be made easy to assign different Cap'n Proto RPC objects to different threads and have them be able to safely call each other. Each thread would still diff --git a/libs/EXTERNAL/capnproto/doc/rpc.md b/libs/EXTERNAL/capnproto/doc/rpc.md index 1c6dcd81fb4..9ef2a49fe4c 100644 --- a/libs/EXTERNAL/capnproto/doc/rpc.md +++ b/libs/EXTERNAL/capnproto/doc/rpc.md @@ -142,7 +142,7 @@ performs as well as we can possibly hope for. #### Example code -[The calculator example](https://github.com/sandstorm-io/capnproto/blob/master/c++/samples/calculator-client.c++) +[The calculator example](https://github.com/capnproto/capnproto/blob/master/c++/samples/calculator-client.c++) uses promise pipelining. Take a look at the client side in particular. ### Distributed Objects @@ -244,7 +244,7 @@ stream protocol, it can easily be layered on top of SSL/TLS or other such protoc The Cap'n Proto RPC protocol is defined in terms of Cap'n Proto serialization schemas. The documentation is inline. See -[rpc.capnp](https://github.com/sandstorm-io/capnproto/blob/master/c++/src/capnp/rpc.capnp). +[rpc.capnp](https://github.com/capnproto/capnproto/blob/master/c++/src/capnp/rpc.capnp). Cap'n Proto's RPC protocol is based heavily on [CapTP](http://www.erights.org/elib/distrib/captp/index.html), the distributed capability protocol diff --git a/libs/EXTERNAL/capnproto/doc/slides-2017.05.18/index.md b/libs/EXTERNAL/capnproto/doc/slides-2017.05.18/index.md index a0e09373313..ad7ec6ebb68 100644 --- a/libs/EXTERNAL/capnproto/doc/slides-2017.05.18/index.md +++ b/libs/EXTERNAL/capnproto/doc/slides-2017.05.18/index.md @@ -531,7 +531,7 @@ getAll @3 (page :UInt32 = 0 $httpQuery) $http(method = get); # GET /?page= # Query is optional. -# JSAN (JSON array) repsonse body. +# JSAN (JSON array) response body. {% endhighlight %} diff --git a/libs/EXTERNAL/capnproto/highlighting/qtcreator/capnp.xml b/libs/EXTERNAL/capnproto/highlighting/qtcreator/capnp.xml index bb5c7812c4e..e675e5b0632 100644 --- a/libs/EXTERNAL/capnproto/highlighting/qtcreator/capnp.xml +++ b/libs/EXTERNAL/capnproto/highlighting/qtcreator/capnp.xml @@ -112,7 +112,7 @@ of these, like "keyword" and "type", could be mapped to dsKeyword and dsDataType, but there's a chance the user has mapped the colors for those things to things that would conflict with the manually-defined colors here, which would probably be even more annoying - than having the colors be inconsitent from other languages. So, I use manual colors for + than having the colors be inconsistent from other languages. So, I use manual colors for everything, except comments, which I figure are less likely to have this problem. --> diff --git a/libs/EXTERNAL/capnproto/kjdoc/tour.md b/libs/EXTERNAL/capnproto/kjdoc/tour.md index 06d9be08621..922e76941f2 100644 --- a/libs/EXTERNAL/capnproto/kjdoc/tour.md +++ b/libs/EXTERNAL/capnproto/kjdoc/tour.md @@ -97,7 +97,7 @@ for (auto i: kj::indices(foo)) { `kj::downcast(value)` is equivalent to `static_cast(value)`, except that when compiled in debug mode with RTTI available, a runtime check (`dynamic_cast`) will be performed to verify that `value` really has type `T`. Use this in cases where you are casting a base type to a derived type, and you are confident that the object is actually an instance of the derived type. The debug-mode check will help you catch bugs. -`kj::dynamicDowncastIfAvailable(value)` is like `dynamic_cast(value)` with two differences. First, it returns `kj::Maybe` instead of `T*`. Second, if the program is compiled without RTTI enabled, the function always returns null. This function is intended to be used to implement optimizations, where the code can do something smarter if `value` happens to be of some specific type -- but if RTTI is not available, it is safe to skip the optimization. See [KJ idiomatic use of dynamic_cast](style-guide.md#dynamic_cast) for more background. +`kj::dynamicDowncastIfAvailable(value)` is like `dynamic_cast(value)` with two differences. First, it returns `kj::Maybe` instead of `T*`. Second, if the program is compiled without RTTI enabled, the function always returns null. This function is intended to be used to implement optimizations, where the code can do something smarter if `value` happens to be of some specific type -- but if RTTI is not available, it is safe to skip the optimization. See [KJ idiomatic use of dynamic_cast](../style-guide.md#dynamic_cast) for more background. ### Min/max, numeric limits, and special floats @@ -120,7 +120,7 @@ These functions should almost never be used in high-level code. They are intende ## Ownership and memory management -KJ style makes heavy use of [RAII](style-guide.md#raii-resource-acquisition-is-initialization). KJ-based code should never use `new` and `delete` directly. Instead, use the utilities in this section to manage memory in a RAII way. +KJ style makes heavy use of [RAII](../style-guide.md#raii-resource-acquisition-is-initialization). KJ-based code should never use `new` and `delete` directly. Instead, use the utilities in this section to manage memory in a RAII way. ### Owned pointers, heap allocation, and disposers @@ -135,7 +135,7 @@ However, a `kj::Own` does not necessarily refer to a heap object. A `kj::Own` is Some example uses of disposers include: * `kj::fakeOwn(ref)` returns a `kj::Own` that points to `ref` but doesn't actually destroy it. This is useful when you know for sure that `ref` will outlive the scope of the `kj::Own`, and therefore heap allocation is unnecessary. This is common in cases where, for example, the `kj::Own` is being passed into an object which itself will be destroyed before `ref` becomes invalid. It also makes sense when `ref` is actually a static value or global that lives forever. -* `kj::refcounted(args...)` allocates a `T` which uses reference counting. It returns a `kj::Own` that represents one reference to the object. Additional references can be created by calling `kj::addRef(*ptr)`. The object is destroyed when no more `kj::Own`s exist pointing at it. Note that `T` must be a subclass of `kj::Refcounted`. If references may be shared across threads, then atomic refcounting must be used; use `kj::atomicRefcounted(args...)` and inherit `kj::AtomicRefcounted`. Reference counting should be using sparingly; see [KJ idioms around reference counting](style-guide.md#reference-counting) for a discussion of when it should be used and why it is designed the way it is. +* `kj::refcounted(args...)` allocates a `T` which uses reference counting. It returns a `kj::Own` that represents one reference to the object. Additional references can be created by calling `kj::addRef(*ptr)`. The object is destroyed when no more `kj::Own`s exist pointing at it. Note that `T` must be a subclass of `kj::Refcounted`. If references may be shared across threads, then atomic refcounting must be used; use `kj::atomicRefcounted(args...)` and inherit `kj::AtomicRefcounted`. Reference counting should be using sparingly; see [KJ idioms around reference counting](../style-guide.md#reference-counting) for a discussion of when it should be used and why it is designed the way it is. * `kj::attachRef(ref, args...)` returns a `kj::Own` pointing to `ref` that actually owns `args...`, so that when the `kj::Own` goes out-of-scope, the other arguments are destroyed. Typically these arguments are themselves `kj::Own`s or other pass-by-move values that themselves own the object referenced by `ref`. `kj::attachVal(value, args...)` is similar, where `value` is a pass-by-move value rather than a reference; a copy of it will be allocated on the heap. Finally, `ownPtr.attach(args...)` returns a new `kj::Own` pointing to the same value that `ownPtr` pointed to, but such that `args...` are owned as well and will be destroyed together. Attachments are always destroyed after the thing they are attached to. * `kj::SpaceFor` contains enough space for a value of type `T`, but does not construct the value until its `construct(args...)` method is called. That method returns an `kj::Own`, whose disposer destroys the value. `kj::SpaceFor` is thus a safer way to perform manual construction compared to invoking `kj::ctor()` and `kj::dtor()`. @@ -236,6 +236,8 @@ KJ_IF_MAYBE(j, maybeJ) { Note that `KJ_IF_MAYBE` forces you to think about the null case. This differs from `std::optional`, which can be dereferenced using `*`, resulting in undefined behavior if the value is null. +Similarly, `map()` and `orDefault()` allow transforming and retrieving the stored value in a safe manner without complex control flows. + Performance nuts will be interested to know that `kj::Maybe` and `kj::Maybe>` are both optimized such that they take no more space than their underlying pointer type, using a literal null pointer to indicate nullness. For other types of `T`, `kj::Maybe` must maintain an extra boolean and so is somewhat larger than `T`. ### Variant types @@ -278,7 +280,7 @@ typedef kj::OneOf State; `kj::Function` represents a callable function with the given signature. A `kj::Function` can be initialized from any callable object, such as a lambda, function pointer, or anything with `operator()`. `kj::Function` is useful when you want to write an API that accepts a lambda callback, without defining the API itself as a template. `kj::Function` supports move semantics. -`kj::ConstFunction` is like `kj::Function`, but is used to indicate that the function should be safe to call from multiple threads. (See [KJ idioms around constness and thread-safety](style-guide.md#constness).) +`kj::ConstFunction` is like `kj::Function`, but is used to indicate that the function should be safe to call from multiple threads. (See [KJ idioms around constness and thread-safety](../style-guide.md#constness).) A special optimization type, `kj::FunctionParam`, is like `kj::Function` but designed to be used specifically as the type of a callback parameter to some other function where that callback is only called synchronously; i.e., the callback won't be called anymore after the outer function returns. Unlike `kj::Function`, a `kj::FunctionParam` can be constructed entirely on the stack, with no heap allocation. @@ -300,7 +302,7 @@ KJ's tree-based containers use a b-tree design for better memory locality than t ## Debugging and Observability -KJ believes that there is no such thing as bug-free code. Instead, we must expect that our code will go wrong, and try to extract as much information as possible when it does. To that end, KJ provides powerful assertion macros designed for observability. (Be sure also to read about [KJ's exception philosophy](style-guide.md#exceptions); this section describes the actual APIs involved.) +KJ believes that there is no such thing as bug-free code. Instead, we must expect that our code will go wrong, and try to extract as much information as possible when it does. To that end, KJ provides powerful assertion macros designed for observability. (Be sure also to read about [KJ's exception philosophy](../style-guide.md#exceptions); this section describes the actual APIs involved.) ### Assertions @@ -400,7 +402,7 @@ On Windows, two similar macros are available based on Windows API calling conven ### Alternate exception types -As described in [KJ's exception philosophy](style-guide.md#exceptions), KJ supports a small set of exception types. Regular assertions throw `FAILED` exceptions. `KJ_SYSCALL` usually throws `FAILED`, but identifies certain error codes as `DISCONNECTED` or `OVERLOADED`. For example, `ECONNRESET` is clearly a `DISCONNECTED` exception. +As described in [KJ's exception philosophy](../style-guide.md#exceptions), KJ supports a small set of exception types. Regular assertions throw `FAILED` exceptions. `KJ_SYSCALL` usually throws `FAILED`, but identifies certain error codes as `DISCONNECTED` or `OVERLOADED`. For example, `ECONNRESET` is clearly a `DISCONNECTED` exception. If you wish to manually construct and throw a different exception type, you may use `KJ_EXCEPTION`: @@ -526,7 +528,7 @@ This section describes KJ APIs that control process execution and low-level inte `kj::Thread` creates a thread in which the lambda passed to `kj::Thread`'s constructor will be executed. `kj::Thread`'s destructor waits for the thread to exit before continuing, and rethrows any exception that had been thrown from the thread's main function -- unless the thread's `.detach()` method has been called, in which case `kj::Thread`'s destructor does nothing. -`kj::MutexGuarded` holds an instance of `T` that is protected by a mutex. In order to access the protected value, you must first create a lock. `.lockExclusive()` returns `kj::Locked` which can be used to access the underlying value. `.lockShared()` returns `kj::Locked`, [using constness to enforce thread-safe read-only access](style-guide.md#constness) so that multiple threads can take the lock concurrently. In this way, KJ mutexes make it difficult to forget to take a lock before accessing the protected object. +`kj::MutexGuarded` holds an instance of `T` that is protected by a mutex. In order to access the protected value, you must first create a lock. `.lockExclusive()` returns `kj::Locked` which can be used to access the underlying value. `.lockShared()` returns `kj::Locked`, [using constness to enforce thread-safe read-only access](../style-guide.md#constness) so that multiple threads can take the lock concurrently. In this way, KJ mutexes make it difficult to forget to take a lock before accessing the protected object. `kj::Locked` has a method `.wait(cond)` which temporarily releases the lock and waits, taking the lock back as soon as `cond(value)` evaluates true. This provides a much cleaner and more readable interface than traditional conditional variables. @@ -908,9 +910,11 @@ The opposite of forking promises is joining promises. There are two types of joi For an exclusive join, use `promise.exclusiveJoin(kj::mv(otherPromise))`. The two promises must return the same type. The result is a promise that returns whichever result is produced first, and cancels the other promise at that time. (To exclusively join more than two promises, call `.exclusiveJoin()` multiple times in a chain.) -To perform an inclusive join, use `kj::joinPromises()`. This turns a `kj::Array>` into a `kj::Promise>`. However, note that `kj::joinPromises()` has a couple common gotchas: +To perform an inclusive join, use `kj::joinPromises()` or `kj::joinPromisesFailFast()`. These turn a `kj::Array>` into a `kj::Promise>`. However, note that `kj::joinPromises()` has a couple common gotchas: * Trailing continuations on the promises passed to `kj::joinPromises()` are evaluated lazily after all the promises become ready. Use `.eagerlyEvaluate()` on each one to force trailing continuations to happen eagerly. (See earlier discussion under "Background Tasks".) -* If any promise in the array rejects, the exception will be held until all other promises have completed (or rejected), and only then will the exception propagate. In practice we've found that most uses of `kj::joinPromises()` would prefer "exclusive" or "fail-fast" behavior in the case of an exception, but as of this writing we have not yet introduced a function that does this. +* If any promise in the array rejects, the exception will be held until all other promises have completed (or rejected), and only then will the exception propagate. In practice we've found that most uses of `kj::joinPromises()` would prefer "exclusive" or "fail-fast" behavior in the case of an exception. + +`kj::joinPromisesFailFast()` addresses the gotchas described above: promise continuations are evaluated eagerly, and if any promise results in an exception, the join promise is immediately rejected with that exception. ### Threads @@ -938,7 +942,40 @@ kj::Promise promise = **CAUTION:** Fibers produce attractive-looking code, but have serious drawbacks. Every fiber must allocate a new call stack, which is typically rather large. The above example allocates a 64kb stack, which is the _minimum_ supported size. Some programs and libraries expect to be able to allocate megabytes of data on the stack. On modern Linux systems, a default stack size of 8MB is typical. Stack space is allocated lazily on page faults, but just setting up the memory mapping is much more expensive than a typical `malloc()`. If you create lots of fibers, you should use `kj::FiberPool` to reduce allocation costs -- but while this reduces allocation overhead, it will increase memory usage. -Because of this, fibers should not be used just to make code look nice (C++20's `co_await`, which KJ will soon support, is a better way to do that). Instead, the main use case for fibers is to be able to call into existing libraries that are not designed to operate in an asynchronous way. For example, say you find a library that performs stream I/O, and lets you provide your own `read()`/`write()` implementations, but expects those implementations to operate in a blocking fashion. With fibers, you can use such a library within the asynchronous KJ event loop. +Because of this, fibers should not be used just to make code look nice (C++20's `co_await`, described below, is a better way to do that). Instead, the main use case for fibers is to be able to call into existing libraries that are not designed to operate in an asynchronous way. For example, say you find a library that performs stream I/O, and lets you provide your own `read()`/`write()` implementations, but expects those implementations to operate in a blocking fashion. With fibers, you can use such a library within the asynchronous KJ event loop. + +### Coroutines + +C++20 brings us coroutines, which, like fibers, allow code to be written in a synchronous / blocking style while running inside the KJ event loop. Coroutines accomplish this with a different strategy than fibers: instead of running code on an alternate stack and switching stacks on suspension, coroutines save local variables and temporary objects in a heap-allocated "coroutine frame" and always unwind the stack on suspension. + +A C++ function is a KJ coroutine if it follows these two rules: +- The function returns a `kj::Promise`. +- The function uses a `co_await` or `co_return` keyword in its implementation. + +```c++ +kj::Promise aCoroutine() { + int i = co_await someAsyncFunc(); + i += co_await anotherAsyncFunc(); + co_return i; +}); + +// Call like any regular promise-returning function. +auto promise = aCoroutine(); +``` + +The promise returned by a coroutine owns the coroutine frame. If you destroy the promise, any objects alive in the frame will be destroyed, and the frame freed, thus cancellation works exactly as you'd expect. + +There are some caveats one should be aware of while writing coroutines: +- Lambda captures **do not** live inside of the coroutine frame, meaning lambda objects must outlive any coroutine Promises they return, or else the coroutine will encounter dangling references to captured objects. This is a defect in the C++ standard: https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rcoro-capture. To safely use a capturing lambda as a coroutine, first wrap it using `kj::coCapture([captures]() { ... })`, then invoke that object. +- Holding a mutex lock across a `co_await` is almost always a bad idea, with essentially the same problems as holding a lock while calling `promise.wait(waitScope)`. This would cause the coroutine to hold the lock for however many turns of the event loop is required to drive the coroutine to release the lock; if I/O is involved, this could cause significant problems. Additionally, a reentrant call to the coroutine on the same thread would deadlock. Instead, if a coroutine must temporarily hold a lock, always keep the lock in a new lexical scope without any `co_await`. +- Attempting to define (and use) a variable-length array will cause a compile error, because the size of coroutine frames must be knowable at compile-time. The error message that clang emits for this, "Coroutines cannot handle non static allocas yet", suggests this may be relaxed in the future. + +As of this writing, KJ supports C++20 coroutines and Coroutines TS coroutines, the latter being an experimental precursor to C++20 coroutines. They are functionally the same thing, but enabled with different compiler/linker flags: + +- Enable C++20 coroutines by requesting that language standard from your compiler. +- Enable Coroutines TS coroutines with `-fcoroutines-ts` in C++17 clang, and `/await` in MSVC. + +KJ prefers C++20 coroutines when both implementations are available. ### Unit testing tips @@ -964,6 +1001,8 @@ KJ_ASSERT(promise.poll(waitScope)); promise.wait(waitScope); ``` +Sometimes, you may need to ensure that some promise has completed that you don't have a reference to, so you can observe that some side effect has occurred. You can use `waitScope.poll()` to flush the event loop without waiting for a specific promise to complete. + ## System I/O ### Async I/O @@ -1008,7 +1047,7 @@ KJ provides a time library in `kj/time.h` which uses the type system to enforce `kj::Clock` is a simple interface whose `now()` method returns the current `kj::Date`. `kj::MonotonicClock` is a similar interface returning a `kj::TimePoint`, but with the guarantee that times returned always increase (whereas a `kj::Clock` might go "back in time" if the user manually modifies their system clock). -`kj::systemCoarseCalendarClock()`, `kj::systemPreciseCalendarClock()`, `kj::systemCoarseMonotonicClock()`, `kj::systemPreciseMonotonicClock()` are global functions that return implementations of `kj::Clock` or `kJ::MonotonicClock` based on sytem time. +`kj::systemCoarseCalendarClock()`, `kj::systemPreciseCalendarClock()`, `kj::systemCoarseMonotonicClock()`, `kj::systemPreciseMonotonicClock()` are global functions that return implementations of `kj::Clock` or `kJ::MonotonicClock` based on system time. `kj::Timer` provides an async (promise-based) interface to wait for a specified time to pass. A `kj::Timer` is provided via `kj::AsyncIoProvider`, constructed using `kj::setupAsyncIo()` (see earlier discussion on async I/O). diff --git a/libs/EXTERNAL/capnproto/release.sh b/libs/EXTERNAL/capnproto/release.sh index f9f104e776d..4225682956e 100755 --- a/libs/EXTERNAL/capnproto/release.sh +++ b/libs/EXTERNAL/capnproto/release.sh @@ -2,7 +2,7 @@ set -euo pipefail -if [ "$1" != "package" ]; then +if [ "$1" != "package" ] && [ "$1" != "bump-major" ]; then if (grep -r KJ_DBG c++/src | egrep -v '/debug(-test)?[.]' | grep -v 'See KJ_DBG\.$'); then echo '*** Error: There are instances of KJ_DBG in the code.' >&2 exit 1 @@ -50,7 +50,7 @@ update_version() { c++/src/capnp/common.h local NEW_COMBINED=$(( ${NEW_ARR[0]} * 1000000 + ${NEW_ARR[1]} * 1000 + ${NEW_ARR[2]:-0 })) - doit sed -i -re "s/^#if CAPNP_VERSION != [0-9]*\$/#if CAPNP_VERSION != $NEW_COMBINED/g" \ + doit sed -i -re "s/^#elif CAPNP_VERSION != [0-9]*\$/#elif CAPNP_VERSION != $NEW_COMBINED/g" \ c++/src/*/*.capnp.h c++/src/*/*/*.capnp.h doit git commit -a -m "Set $BRANCH_DESC version to $NEW." @@ -146,6 +146,14 @@ done_banner() { BRANCH=$(git rev-parse --abbrev-ref HEAD) case "${1-}:$BRANCH" in + bump-major:* ) + echo "Bump major version number on HEAD." + HEAD_VERSION=$(get_version '^[0-9]+[.][0-9]+-dev$') + OLD_MAJOR=$(echo $HEAD_VERSION | cut -d. -f1) + NEW_VERSION=$(( OLD_MAJOR + 1 )).0-dev + update_version $HEAD_VERSION $NEW_VERSION "mainline" + ;; + # ====================================================================================== candidate:master ) echo "New major release." diff --git a/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-0-c++-integer-overflow.md b/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-0-c++-integer-overflow.md index d25b2a19fcb..300647e2fe1 100644 --- a/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-0-c++-integer-overflow.md +++ b/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-0-c++-integer-overflow.md @@ -35,7 +35,7 @@ Fixed in - Unix: https://capnproto.org/capnproto-c++-0.4.1.1.tar.gz - release 0.6 (future) -[0]: https://github.com/sandstorm-io/capnproto/commit/f343f0dbd0a2e87f17cd74f14186ed73e3fbdbfa +[0]: https://github.com/capnproto/capnproto/commit/f343f0dbd0a2e87f17cd74f14186ed73e3fbdbfa Details ======= @@ -97,6 +97,6 @@ following preventative measures going forward: I am pleased that measures 1, 2, and 3 all detected this bug, suggesting that they have a high probability of catching any similar bugs. -[1]: https://github.com/sandstorm-io/capnproto/tree/master/security-advisories/2015-03-02-0-all-cpu-amplification.md -[2]: https://github.com/sandstorm-io/capnproto/tree/master/security-advisories/2015-03-02-1-c++-integer-underflow.md +[1]: https://github.com/capnproto/capnproto/tree/master/security-advisories/2015-03-02-0-all-cpu-amplification.md +[2]: https://github.com/capnproto/capnproto/tree/master/security-advisories/2015-03-02-1-c++-integer-underflow.md [3]: https://capnproto.org/news/2015-03-02-security-advisory-and-integer-overflow-protection.html diff --git a/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-1-c++-integer-underflow.md b/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-1-c++-integer-underflow.md index 970f8b9aec6..06a3cd2f402 100644 --- a/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-1-c++-integer-underflow.md +++ b/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-1-c++-integer-underflow.md @@ -37,7 +37,7 @@ Fixed in - Unix: https://capnproto.org/capnproto-c++-0.4.1.1.tar.gz - release 0.6 (future) -[0]: https://github.com/sandstorm-io/capnproto/commit/26bcceda72372211063d62aab7e45665faa83633 +[0]: https://github.com/capnproto/capnproto/commit/26bcceda72372211063d62aab7e45665faa83633 Details ======= @@ -106,5 +106,5 @@ cleanup, but [check the Cap'n Proto blog for an in-depth discussion][2]. This problem is also caught by capnp/fuzz-test.c++, which *has* been merged into master but likely doesn't have as broad coverage. -[1]: https://github.com/sandstorm-io/capnproto/tree/master/security-advisories/2015-03-02-0-c++-integer-overflow.md +[1]: https://github.com/capnproto/capnproto/tree/master/security-advisories/2015-03-02-0-c++-integer-overflow.md [2]: https://capnproto.org/news/2015-03-02-security-advisory-and-integer-overflow-protection.html diff --git a/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-2-all-cpu-amplification.md b/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-2-all-cpu-amplification.md index 94ad3361282..1bc4bccd2a3 100644 --- a/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-2-all-cpu-amplification.md +++ b/libs/EXTERNAL/capnproto/security-advisories/2015-03-02-2-all-cpu-amplification.md @@ -35,7 +35,7 @@ Fixed in - Unix: https://capnproto.org/capnproto-c++-0.4.1.1.tar.gz - release 0.6 (future) -[0]: https://github.com/sandstorm-io/capnproto/commit/104870608fde3c698483fdef6b97f093fc15685d +[0]: https://github.com/capnproto/capnproto/commit/104870608fde3c698483fdef6b97f093fc15685d Details ======= diff --git a/libs/EXTERNAL/capnproto/security-advisories/2015-03-05-0-c++-addl-cpu-amplification.md b/libs/EXTERNAL/capnproto/security-advisories/2015-03-05-0-c++-addl-cpu-amplification.md index aee7f1782c0..bd25698d5ed 100644 --- a/libs/EXTERNAL/capnproto/security-advisories/2015-03-05-0-c++-addl-cpu-amplification.md +++ b/libs/EXTERNAL/capnproto/security-advisories/2015-03-05-0-c++-addl-cpu-amplification.md @@ -37,7 +37,7 @@ Fixed in - Unix: https://capnproto.org/capnproto-c++-0.4.1.2.tar.gz - release 0.6 (future) -[0]: https://github.com/sandstorm-io/capnproto/commit/80149744bdafa3ad4eedc83f8ab675e27baee868 +[0]: https://github.com/capnproto/capnproto/commit/80149744bdafa3ad4eedc83f8ab675e27baee868 Details ======= @@ -55,7 +55,7 @@ loop that doesn't call any application code. Only CPU time is possibly consumed, not RAM or other resources. However, it is still possible to create significant delays for the receiver with a specially-crafted message. -[1]: https://github.com/sandstorm-io/capnproto/blob/master/security-advisories/2015-03-02-2-all-cpu-amplification.md +[1]: https://github.com/capnproto/capnproto/blob/master/security-advisories/2015-03-02-2-all-cpu-amplification.md Preventative measures ===================== diff --git a/libs/EXTERNAL/capnproto/security-advisories/2017-04-17-0-apple-clang-elides-bounds-check.md b/libs/EXTERNAL/capnproto/security-advisories/2017-04-17-0-apple-clang-elides-bounds-check.md index 683b8e3d0de..49221fc26b5 100644 --- a/libs/EXTERNAL/capnproto/security-advisories/2017-04-17-0-apple-clang-elides-bounds-check.md +++ b/libs/EXTERNAL/capnproto/security-advisories/2017-04-17-0-apple-clang-elides-bounds-check.md @@ -42,7 +42,7 @@ Fixed in - Windows: https://capnproto.org/capnproto-c++-win32-0.5.3.1.zip - release 0.6 (future) -[0]: https://github.com/sandstorm-io/capnproto/commit/52bc956459a5e83d7c31be95763ff6399e064ae4 +[0]: https://github.com/capnproto/capnproto/commit/52bc956459a5e83d7c31be95763ff6399e064ae4 Details ======= @@ -144,4 +144,4 @@ technically-correct solution has been implemented in the next commit, extensive refactoring, it is not appropriate for cherry-picking, and will only land in versions 0.6 and up. -[2]: https://github.com/sandstorm-io/capnproto/commit/2ca8e41140ebc618b8fb314b393b0a507568cf21 +[2]: https://github.com/capnproto/capnproto/commit/2ca8e41140ebc618b8fb314b393b0a507568cf21 diff --git a/libs/EXTERNAL/capnproto/security-advisories/2022-11-30-0-pointer-list-bounds.md b/libs/EXTERNAL/capnproto/security-advisories/2022-11-30-0-pointer-list-bounds.md new file mode 100644 index 00000000000..50605ce1950 --- /dev/null +++ b/libs/EXTERNAL/capnproto/security-advisories/2022-11-30-0-pointer-list-bounds.md @@ -0,0 +1,127 @@ +Problem +======= + +Out-of-bounds read due to logic error handling list-of-list. + +Discovered by +============= + +David Renshaw <dwrenshaw@gmail.com>, the maintainer of Cap'n Proto's Rust +implementation, which is affected by the same bug. David discovered this bug +while running his own fuzzer. + +Announced +========= + +2022-11-30 + +CVE +=== + +CVE-2022-46149 + +Impact +====== + +- Remotely segfault a peer by sending it a malicious message, if the victim + performs certain actions on a list-of-pointer type. +- Possible exfiltration of memory, if the victim performs additional certain + actions on a list-of-pointer type. +- To be vulnerable, an application must perform a specific sequence of actions, + described below. At present, **we are not aware of any vulnerable + application**, but we advise updating regardless. + +Fixed in +======== + +Unfortunately, the bug is present in inlined code, therefore the fix will +require rebuilding dependent applications. + +C++ fix: + +- git commit [25d34c67863fd960af34fc4f82a7ca3362ee74b9][0] +- release 0.11 (future) +- release 0.10.3: + - Unix: https://capnproto.org/capnproto-c++-0.10.3.tar.gz + - Windows: https://capnproto.org/capnproto-c++-win32-0.10.3.zip +- release 0.9.2: + - Unix: https://capnproto.org/capnproto-c++-0.9.2.tar.gz + - Windows: https://capnproto.org/capnproto-c++-win32-0.9.2.zip +- release 0.8.1: + - Unix: https://capnproto.org/capnproto-c++-0.8.1.tar.gz + - Windows: https://capnproto.org/capnproto-c++-win32-0.8.1.zip +- release 0.7.1: + - Unix: https://capnproto.org/capnproto-c++-0.7.1.tar.gz + - Windows: https://capnproto.org/capnproto-c++-win32-0.7.1.zip + +Rust fix: + +- `capnp` crate version `0.15.2`, `0.14.11`, or `0.13.7`. + +[0]: https://github.com/capnproto/capnproto/commit/25d34c67863fd960af34fc4f82a7ca3362ee74b9 + +Details +======= + +A specially-crafted pointer could escape bounds checking by exploiting +inconsistent handling of pointers when a list-of-structs is downgraded to a +list-of-pointers. + +For an in-depth explanation of how this bug works, see [David Renshaw's +blog post][1]. This details below focus only on determining whether an +application is vulnerable. + +In order to be vulnerable, an application must have certain properties. + +First, the application must accept messages with a schema in which a field has +list-of-pointer type. This includes `List(Text)`, `List(Data)`, +`List(List(T))`, or `List(C)` where `C` is an interface type. In the following +discussion, we will assume this field is named `foo`. + +Second, the application must accept a message of this schema from a malicious +source, where the attacker can maliciously encode the pointer representing the +field `foo`. + +Third, the application must call `getFoo()` to obtain a `List::Reader` for +the field, and then use it in one of the following two ways: + +1. Pass it as the parameter to another message's `setFoo()`, thus copying the + field into a new message. Note that copying the parent struct as a whole + will *not* trigger the bug; the bug only occurs if the specific field `foo` + is get/set on its own. + +2. Convert it into `AnyList::Reader`, and then attempt to access it through + that. This is much less likely; very few apps use the `AnyList` API. + +The dynamic API equivalents of these actions (`capnp/dynamic.h`) are also +affected. + +If the application does these steps, the attacker may be able to cause the +Cap'n Proto implementation to read beyond the end of the message. This could +induce a segmentation fault. Or, worse, data that happened to be in memory +immediately after the message might be returned as if it were part of the +message. In the latter case, if the application then forwards that data back +to the attacker or sends it to another third party, this could result in +exfiltration of secrets. + +Any exfiltration of data would have the following limitations: + +* The attacker could exfiltrate no more than 512 KiB of memory immediately + following the message buffer. + * The attacker chooses in advance how far past the end of the message to + read. + * The attacker's message itself must be larger than the exfiltrated data. + Note that a sufficiently large message buffer will likely be allocated + using mmap() in which case the attack will likely segfault. +* The attack can only work if the 8 bytes immediately following the + exfiltrated data contains a valid in-bounds Cap'n Proto pointer. The + easiest way to achieve this is if the pointer is null, i.e. 8 bytes of zero. + * The attacker must specify exactly how much data to exfiltrate, so must + guess exactly where such a valid pointer will exist. + * If the exfiltrated data is not followed by a valid pointer, the attack + will throw an exception. If an application has chosen to ignore exceptions + (e.g. by compiling with `-fno-exceptions` and not registering an + alternative exception callback) then the attack may be able to proceed + anyway. + +[1]: https://dwrensha.github.io/capnproto-rust/2022/11/30/out_of_bounds_memory_access_bug.html diff --git a/libs/EXTERNAL/capnproto/style-guide.md b/libs/EXTERNAL/capnproto/style-guide.md index d3d47ef0f56..3dc663333da 100644 --- a/libs/EXTERNAL/capnproto/style-guide.md +++ b/libs/EXTERNAL/capnproto/style-guide.md @@ -429,7 +429,7 @@ We use: * Clang for compiling. * `KJ_DBG()` for simple debugging. * Valgrind for complicated debugging. -* [Ekam](https://github.com/sandstorm-io/ekam) for a build system. +* [Ekam](https://github.com/capnproto/ekam) for a build system. * Git for version control. ## Irrelevant formatting rules @@ -458,7 +458,9 @@ There has also never been any agreement on C++ file extensions, for some reason. * Indents are two spaces. * Never use tabs. * Maximum line length is 100 characters. -* Indent a continuation line by four spaces, *or* line them up nicely with the previous line if it makes it easier to read. +* Indent continuation lines for braced init lists by two spaces. +* Indent all other continuation lines by four spaces. +* Alternatively, line up continuation lines with previous lines if it makes them easier to read. * Place a space between a keyword and an open parenthesis, e.g.: `if (foo)` * Do not place a space between a function name and an open parenthesis, e.g.: `foo(bar)` * Place an opening brace at the end of the statement which initiates the block, not on its own line. @@ -469,6 +471,7 @@ There has also never been any agreement on C++ file extensions, for some reason. * Statements inside a `namespace` are **not** indented unless the namespace is a short block that is just forward-declaring things at the top of a file. * Set your editor to strip trailing whitespace on save, otherwise other people who use this setting will see spurious diffs when they edit a file after you. +
if (foo) { bar(); diff --git a/libs/EXTERNAL/capnproto/super-test.sh b/libs/EXTERNAL/capnproto/super-test.sh index e578105c97c..8d63659d09c 100755 --- a/libs/EXTERNAL/capnproto/super-test.sh +++ b/libs/EXTERNAL/capnproto/super-test.sh @@ -122,6 +122,8 @@ while [ $# -gt 0 ]; do shift ;; clang* ) + # Need to set CC as well for configure to handle -fcoroutines-ts. + export CC=clang${1#clang} export CXX=clang++${1#clang} if [ "$1" != "clang-5.0" ]; then export LIB_FUZZING_ENGINE=-fsanitize=fuzzer @@ -400,11 +402,36 @@ fi if [ $IS_CLANG = yes ]; then # Don't fail out on this ridiculous "argument unused during compilation" warning. export CXXFLAGS="$CXXFLAGS -Wno-error=unused-command-line-argument" + + # Enable coroutines if supported. + if [ "${CXX#*-}" -ge 14 ] 2>/dev/null; then + # Somewhere between version 10 and 14, Clang started supporting coroutines as a C++20 feature, + # and started issuing deprecating warnings for -fcoroutines-ts. (I'm not sure which version it + # was exactly since our CI jumped from 10 to 14, so I'm somewhat arbitrarily choosing 14 as the + # cutoff.) + export CXXFLAGS="$CXXFLAGS -std=c++20 -stdlib=libc++" + export LDFLAGS="-stdlib=libc++" + + # TODO(someday): On Ubuntu 22.04, clang-14 with -stdlib=libc++ fails to link with libfuzzer, + # which looks like it might itself be linked against libstdc++? Need to investigate. + unset LIB_FUZZING_ENGINE + elif [ "${CXX#*-}" -ge 10 ] 2>/dev/null; then + # At the moment, only our clang-10 CI run seems to like -fcoroutines-ts. Earlier versions seem + # to have a library misconfiguration causing ./configure to result in the following error: + # conftest.cpp:12:12: fatal error: 'initializer_list' file not found + # #include + # Let's use any clang version >= 10 so that if we move to a newer version, we'll get additional + # coverage by default. + export CXXFLAGS="$CXXFLAGS -std=gnu++17 -stdlib=libc++ -fcoroutines-ts" + export LDFLAGS="-fcoroutines-ts -stdlib=libc++" + fi else # GCC emits uninitialized warnings all over and they seem bogus. We use valgrind to test for # uninitialized memory usage later on. GCC 4 also emits strange bogus warnings with # -Wstrict-overflow, so we disable it. CXXFLAGS="$CXXFLAGS -Wno-maybe-uninitialized -Wno-strict-overflow" + + # TODO(someday): Enable coroutines in g++ if supported. fi cd c++ diff --git a/libs/EXTERNAL/libargparse/src/argparse.hpp b/libs/EXTERNAL/libargparse/src/argparse.hpp index 28626fa2052..15e0237eab3 100644 --- a/libs/EXTERNAL/libargparse/src/argparse.hpp +++ b/libs/EXTERNAL/libargparse/src/argparse.hpp @@ -173,7 +173,7 @@ namespace argparse { //Sets the hlep text Argument& help(std::string help_str); - //Sets the defuault value + //Sets the default value Argument& default_value(const std::string& default_val); Argument& default_value(const std::vector& default_val); Argument& default_value(const std::initializer_list& default_val); diff --git a/libs/EXTERNAL/libcatch2 b/libs/EXTERNAL/libcatch2 index 1078e7e95b3..4e8d92bf02f 160000 --- a/libs/EXTERNAL/libcatch2 +++ b/libs/EXTERNAL/libcatch2 @@ -1 +1 @@ -Subproject commit 1078e7e95b3a06d4dadc75188de48bc4afffb955 +Subproject commit 4e8d92bf02f7d1c8006a0e7a5ecabd8e62d98502 diff --git a/libs/EXTERNAL/libtatum/.gitignore b/libs/EXTERNAL/libtatum/.gitignore index b9b0d1e277d..9e2c0ca5323 100644 --- a/libs/EXTERNAL/libtatum/.gitignore +++ b/libs/EXTERNAL/libtatum/.gitignore @@ -52,3 +52,11 @@ callgrind* *.rpt *.dot *.echo + +#Test files +test/mcnc20 +test/vtr +test/titan_other +test/titan23 +*.tar +*.tar.gz diff --git a/libs/EXTERNAL/libtatum/.travis.yml b/libs/EXTERNAL/libtatum/.travis.yml index 347c699349f..d86da98ba5f 100644 --- a/libs/EXTERNAL/libtatum/.travis.yml +++ b/libs/EXTERNAL/libtatum/.travis.yml @@ -1,17 +1,16 @@ language: cpp dist: trusty #Ubuntu 14.04 by default -sudo: false #Use container based infrastructure matrix: include: #Extensive testing for base compiler - - env: TESTS="basic mcnc20" TATUM_EXECUTION_ENGINE=auto MATRIX_EVAL="CC=gcc-5 CXX=g++-5" + - env: TESTS="basic mcnc20 vtr titan_other" TATUM_EXECUTION_ENGINE=auto MATRIX_EVAL="CC=gcc-5 CXX=g++-5" addons: { apt: { packages: ["cmake", "g++-5", "libtbb-dev"], sources: ["ubuntu-toolchain-r-test"] } } - - env: TESTS="basic mcnc20" TATUM_EXECUTION_ENGINE=serial MATRIX_EVAL="CC=gcc-5 CXX=g++-5" + - env: TESTS="basic mcnc20 vtr titan_other" TATUM_EXECUTION_ENGINE=serial MATRIX_EVAL="CC=gcc-5 CXX=g++-5" addons: { apt: { packages: ["cmake", "g++-5", "libtbb-dev"], sources: ["ubuntu-toolchain-r-test"] } } - - env: TESTS="basic mcnc20" TATUM_EXECUTION_ENGINE=tbb MATRIX_EVAL="CC=gcc-5 CXX=g++-5" + - env: TESTS="basic mcnc20 vtr titan_other" TATUM_EXECUTION_ENGINE=tbb MATRIX_EVAL="CC=gcc-5 CXX=g++-5" addons: { apt: { packages: ["cmake", "g++-5", "libtbb-dev"], sources: ["ubuntu-toolchain-r-test"] } } #Simple testing for other compilers diff --git a/libs/EXTERNAL/libtatum/libtatum/tatum/TimingReporter.cpp b/libs/EXTERNAL/libtatum/libtatum/tatum/TimingReporter.cpp index 609b0c0b03e..69c9ba07a83 100644 --- a/libs/EXTERNAL/libtatum/libtatum/tatum/TimingReporter.cpp +++ b/libs/EXTERNAL/libtatum/libtatum/tatum/TimingReporter.cpp @@ -99,6 +99,15 @@ void TimingReporter::report_timing_setup(std::ostream& os, report_timing(os, paths); } +void TimingReporter::report_timing_setup(std::vector& paths, + std::ostream& os, + const SetupTimingAnalyzer& setup_analyzer, + size_t npaths) const { + paths = path_collector_.collect_worst_setup_timing_paths(timing_graph_, setup_analyzer, npaths); + + report_timing(os, paths); +} + void TimingReporter::report_timing_hold(std::string filename, const HoldTimingAnalyzer& hold_analyzer, size_t npaths) const { @@ -114,6 +123,15 @@ void TimingReporter::report_timing_hold(std::ostream& os, report_timing(os, paths); } +void TimingReporter::report_timing_hold(std::vector& paths, + std::ostream& os, + const HoldTimingAnalyzer& hold_analyzer, + size_t npaths) const { + paths = path_collector_.collect_worst_hold_timing_paths(timing_graph_, hold_analyzer, npaths); + + report_timing(os, paths); +} + void TimingReporter::report_skew_setup(std::string filename, const SetupTimingAnalyzer& setup_analyzer, size_t nworst) const { diff --git a/libs/EXTERNAL/libtatum/libtatum/tatum/TimingReporter.hpp b/libs/EXTERNAL/libtatum/libtatum/tatum/TimingReporter.hpp index 1569aa6d704..590e3bca690 100644 --- a/libs/EXTERNAL/libtatum/libtatum/tatum/TimingReporter.hpp +++ b/libs/EXTERNAL/libtatum/libtatum/tatum/TimingReporter.hpp @@ -64,9 +64,11 @@ class TimingReporter { public: void report_timing_setup(std::string filename, const tatum::SetupTimingAnalyzer& setup_analyzer, size_t npaths=REPORT_TIMING_DEFAULT_NPATHS) const; void report_timing_setup(std::ostream& os, const tatum::SetupTimingAnalyzer& setup_analyzer, size_t npaths=REPORT_TIMING_DEFAULT_NPATHS) const; + void report_timing_setup(std::vector& paths, std::ostream& os, const tatum::SetupTimingAnalyzer& setup_analyzer, size_t npaths=REPORT_TIMING_DEFAULT_NPATHS) const; void report_timing_hold(std::string filename, const tatum::HoldTimingAnalyzer& hold_analyzer, size_t npaths=REPORT_TIMING_DEFAULT_NPATHS) const; void report_timing_hold(std::ostream& os, const tatum::HoldTimingAnalyzer& hold_analyzer, size_t npaths=REPORT_TIMING_DEFAULT_NPATHS) const; + void report_timing_hold(std::vector& paths, std::ostream& os, const tatum::HoldTimingAnalyzer& hold_analyzer, size_t npaths=REPORT_TIMING_DEFAULT_NPATHS) const; void report_skew_setup(std::string filename, const tatum::SetupTimingAnalyzer& setup_analyzer, size_t nworst=REPORT_TIMING_DEFAULT_NPATHS) const; void report_skew_setup(std::ostream& os, const tatum::SetupTimingAnalyzer& setup_analyzer, size_t nworst=REPORT_TIMING_DEFAULT_NPATHS) const; diff --git a/libs/EXTERNAL/libtatum/libtatum/tatum/tags/TimingTags.hpp b/libs/EXTERNAL/libtatum/libtatum/tatum/tags/TimingTags.hpp index 192442cfe27..afab50fb1be 100644 --- a/libs/EXTERNAL/libtatum/libtatum/tatum/tags/TimingTags.hpp +++ b/libs/EXTERNAL/libtatum/libtatum/tatum/tags/TimingTags.hpp @@ -1,4 +1,5 @@ #pragma once +#include #include #include @@ -104,15 +105,15 @@ class TimingTags { //Iterator definition template - class Iterator : public std::iterator { + class Iterator { friend TimingTags; public: - using value_type = typename std::iterator::value_type; - using difference_type = typename std::iterator::difference_type; - using pointer = typename std::iterator::pointer; - using reference = typename std::iterator::reference; - using iterator_category = typename std::iterator::iterator_category; - public: + using iterator_category = std::random_access_iterator_tag; + using difference_type = std::ptrdiff_t; + using value_type = T; + using pointer = T*; + using reference = T&; + Iterator(): p_(nullptr) {} Iterator(pointer p): p_(p) {} Iterator(const Iterator& other): p_(other.p_) {} @@ -143,7 +144,7 @@ class TimingTags { friend bool operator>=(Iterator lhs, Iterator rhs) { return lhs.p_ >= rhs.p_; } friend void swap(Iterator lhs, Iterator rhs) { std::swap(lhs.p_, rhs.p_); } private: - T* p_ = nullptr; + pointer p_ = nullptr; }; private: diff --git a/libs/EXTERNAL/libtatum/scripts/reg_test.py b/libs/EXTERNAL/libtatum/scripts/reg_test.py index c034942473a..b9db05cd27a 100755 --- a/libs/EXTERNAL/libtatum/scripts/reg_test.py +++ b/libs/EXTERNAL/libtatum/scripts/reg_test.py @@ -10,22 +10,16 @@ import math import subprocess import shutil - +import hashlib TATUM_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) tests = { 'basic': [os.path.join(TATUM_ROOT, 'test', 'basic')], - 'mcnc20': ["http://www.eecg.utoronto.ca/~kmurray/tatum/golden_results/mcnc20_tatum_golden.tar.gz"], - #'vtr': [ - - #], - #'titan_other': [ - - #], - #'titan': [ - - #], + 'mcnc20': ["http://www.eecg.utoronto.ca/~kmurray/tatum/golden_results/mcnc20_tatum_golden.tar"], + 'vtr': ["http://www.eecg.utoronto.ca/~kmurray/tatum/golden_results/vtr_tatum_golden.tar"], + 'titan_other': ["http://www.eecg.utoronto.ca/~kmurray/tatum/golden_results/titan_other_tatum_golden.tar"], + 'titan23': ["http://www.eecg.utoronto.ca/~kmurray/tatum/golden_results/titan23_tatum_golden.tar"], #'tau15_unit_delay': [ #], @@ -68,6 +62,11 @@ def parse_args(): default=False, action='store_true') + parser.add_argument("-f", "--force", + help="Force download even if test files already found", + default=False, + action='store_true') + return parser.parse_args() def main(): @@ -83,7 +82,7 @@ def main(): for test_url in tests[test_name]: work_dir = tempfile.mkdtemp(prefix="tatum_reg_test") try: - test_files = download_extract_test(args, work_dir, test_url) + test_files = download_extract_test(args, test_name, test_url) num_failures += run_test(args, work_dir, test_name, test_files) finally: if not args.debug: @@ -123,16 +122,28 @@ def run_single_test(args, work_dir, test_file): if args.tatum_nworkers: cmd += ['--num_workers', str(args.tatum_nworkers)] - cmd += [test_file] print(" {}".format(test_file), end='') - if args.debug: - print() - print(" cmd: {} log: {}".format(' '.join(cmd), log)) + if test_file.endswith(".xz"): + + cmd += ["-"] #Read from stdin + + cmd_str = "xzcat {} | {} > {}".format(test_file, " ".join(cmd), log) + + if args.debug: + print(cmd_str) + + retcode = os.system(cmd_str) + else: + cmd += [test_file] #Read file directly - with open(log, 'w') as outfile: - retcode = subprocess.call(cmd, stdout=outfile, stderr=outfile) + if args.debug: + print() + print(" cmd: {} log: {}".format(' '.join(cmd), log)) + + with open(log, 'w') as outfile: + retcode = subprocess.call(cmd, stdout=outfile, stderr=outfile) if retcode == 0: print(" PASSED") @@ -147,35 +158,53 @@ def run_single_test(args, work_dir, test_file): return num_failed -def download_extract_test(args, work_dir, test_url): +def download_extract_test(args, test_name, test_url): test_files = [] - if '.tar' in test_url: + if 'tar' in test_url: #A tar file of benchmark files - benchmark_tar = os.path.join(work_dir, os.path.basename(test_url)) + benchmark_tar = os.path.join(os.path.join(TATUM_ROOT, os.path.basename(test_url))) - get_url(test_url, benchmark_tar) + new_tar = get_url(args, test_url, benchmark_tar) + + test_files_dir = os.path.join(TATUM_ROOT, "test") + + if new_tar or args.force: + + print("Extracting test files to {}".format(test_files_dir)) + with tarfile.TarFile.open(benchmark_tar, mode="r|*") as tar_file: + tar_file.extractall(path=test_files_dir) + else: + print("Skipping file extraction".format(test_files_dir)) - with tarfile.TarFile.open(benchmark_tar, mode="r|*") as tar_file: - tar_file.extractall(path=work_dir) - test_files += glob.glob("{}/*.tatum".format(work_dir)) - test_files += glob.glob("{}/*/*.tatum".format(work_dir)) + test_files += glob.glob("{}/{}/*.tatum*".format(test_files_dir, test_name)) else: #A directory of benchmark files test_files += glob.glob("{}/*.tatum".format(test_url)) - test_files += glob.glob("{}/*/*.tatum".format(test_url)) return test_files -def get_url(url, filename): +def get_url(args, url, filename): + if not args.force and os.path.exists(filename): + print("Found existing file {}, checking if hash matches".format(filename)) + file_matches = check_hash_match(args, url, filename) + + if file_matches: + print("Existing file {} matches, skipping download".format(filename)) + return False + else: + print("Existing file {} contents differ, re-downloading".format(filename)) + if '://' in url: download_url(url, filename) else: shutl.copytree(url, filename) + return True + def download_url(url, filename): """ Downloads the specifed url to filename @@ -191,9 +220,39 @@ def download_progress_callback(block_num, block_size, expected_size): progress_increment = int(math.ceil(total_blocks / 100)) if block_num % progress_increment == 0: - print(".", end='', flush=False) + print(".", end='', flush=True) if block_num*block_size >= expected_size: print("") +def check_hash_match(args, url, filename): + checksum_url = url + ".sha256" + try: + web_hash = urllib.request.urlopen(checksum_url).read() + except urllib.error.HTTPError as e: + print("Failed to find expected SHA256 checksum at {} (reason '{}')".format(checksum_url, e)) + return False + + local_hash = hash_file(filename) + + web_digest_bytes = web_hash.split()[0] + local_digest_bytes = str.encode(local_hash) + + if web_digest_bytes == local_digest_bytes: + return True + + return False + +def hash_file(filepath): + BUF_SIZE = 65536 + sha256 = hashlib.sha256() + with open(filepath, "rb") as f: + while True: + data = f.read(BUF_SIZE) + if not data: + break + sha256.update(data) + + return sha256.hexdigest() + if __name__ == "__main__": main() diff --git a/libs/EXTERNAL/sockpp b/libs/EXTERNAL/sockpp new file mode 160000 index 00000000000..5388c4b5659 --- /dev/null +++ b/libs/EXTERNAL/sockpp @@ -0,0 +1 @@ +Subproject commit 5388c4b5659e99a86bc906dd6ac2eef66f1dd51e diff --git a/libs/libarchfpga/CMakeLists.txt b/libs/libarchfpga/CMakeLists.txt index 5d5d0f70024..65e9096cd37 100644 --- a/libs/libarchfpga/CMakeLists.txt +++ b/libs/libarchfpga/CMakeLists.txt @@ -57,7 +57,7 @@ target_link_libraries(read_arch libarchfpga) #Supress IPO link warnings if IPO is enabled get_target_property(READ_ARCH_USES_IPO read_arch INTERPROCEDURAL_OPTIMIZATION) -if (READ_ARCH_USES_IPO) +if(READ_ARCH_USES_IPO) set_property(TARGET read_arch APPEND PROPERTY LINK_FLAGS ${IPO_LINK_WARN_SUPRESS_FLAGS}) endif() @@ -70,3 +70,8 @@ install(FILES ${LIB_HEADERS} DESTINATION include/libarchfpga) file(GLOB_RECURSE TEST_SOURCES test/*.cpp) add_executable(test_archfpga ${TEST_SOURCES}) target_link_libraries(test_archfpga Catch2::Catch2WithMain libarchfpga) + +add_test(NAME test_archfpga + COMMAND test_archfpga + --colour-mode ansi + ) diff --git a/libs/libarchfpga/src/arch_check.cpp b/libs/libarchfpga/src/arch_check.cpp index 0b8f88e1f10..022e2d57ded 100644 --- a/libs/libarchfpga/src/arch_check.cpp +++ b/libs/libarchfpga/src/arch_check.cpp @@ -86,7 +86,7 @@ void warn_model_missing_timing(const t_model* model, const char* file, uint32_t for (t_model_ports* port = model->outputs; port != nullptr; port = port->next) { if (port->clock.empty() //Not sequential - && !comb_connected_outputs.count(port->name) //Not combinationally drivven + && !comb_connected_outputs.count(port->name) //Not combinationally driven && !port->is_clock //Not an output clock ) { VTR_LOGF_WARN(file, line, diff --git a/libs/libarchfpga/src/arch_types.h b/libs/libarchfpga/src/arch_types.h index 9f88a64669e..69ac28ae479 100644 --- a/libs/libarchfpga/src/arch_types.h +++ b/libs/libarchfpga/src/arch_types.h @@ -18,7 +18,10 @@ /* Value for UNDEFINED data */ constexpr int UNDEFINED = -1; -/* Maximum value for mininum channel width to avoid overflows of short data type. */ +/** The total number of predefined blif models */ +constexpr int NUM_MODELS_IN_LIBRARY = 4; + +/* Maximum value for minimum channel width to avoid overflows of short data type. */ constexpr int MAX_CHANNEL_WIDTH = 8000; /* Built-in library models */ diff --git a/libs/libarchfpga/src/arch_util.cpp b/libs/libarchfpga/src/arch_util.cpp index a6b804bf0d3..3f2ad3413a6 100644 --- a/libs/libarchfpga/src/arch_util.cpp +++ b/libs/libarchfpga/src/arch_util.cpp @@ -520,7 +520,7 @@ t_port* findPortByName(const char* name, t_pb_type* pb_type, int* high_index, in return port; } -t_physical_tile_type get_empty_physical_type(const char* name) { +t_physical_tile_type get_empty_physical_type(const char* name /*= EMPTY_BLOCK_NAME*/) { t_physical_tile_type type; type.name = vtr::strdup(name); type.num_pins = 0; @@ -538,7 +538,7 @@ t_physical_tile_type get_empty_physical_type(const char* name) { return type; } -t_logical_block_type get_empty_logical_type(const char* name) { +t_logical_block_type get_empty_logical_type(const char* name /*=EMPTY_BLOCK_NAME*/) { t_logical_block_type type; type.name = vtr::strdup(name); type.pb_type = nullptr; @@ -550,7 +550,7 @@ std::unordered_set get_equivalent_sites_set(t_physical std::unordered_set equivalent_sites; for (auto& sub_tile : type->sub_tiles) { - for (auto& logical_block : sub_tile.equivalent_sites) { + for (auto logical_block : sub_tile.equivalent_sites) { equivalent_sites.insert(logical_block); } } diff --git a/libs/libarchfpga/src/device_grid.cpp b/libs/libarchfpga/src/device_grid.cpp index f96f1f0ca28..43907f50ac0 100644 --- a/libs/libarchfpga/src/device_grid.cpp +++ b/libs/libarchfpga/src/device_grid.cpp @@ -8,7 +8,9 @@ DeviceGrid::DeviceGrid(std::string grid_name, vtr::NdMatrix grid count_instances(); } -DeviceGrid::DeviceGrid(std::string grid_name, vtr::NdMatrix grid, std::vector limiting_res) +DeviceGrid::DeviceGrid(std::string grid_name, + vtr::NdMatrix grid, + std::vector limiting_res) : DeviceGrid(std::move(grid_name), std::move(grid)) { limiting_resources_ = std::move(limiting_res); } diff --git a/libs/libarchfpga/src/device_grid.h b/libs/libarchfpga/src/device_grid.h index 2077f2b9419..84f75d105a8 100644 --- a/libs/libarchfpga/src/device_grid.h +++ b/libs/libarchfpga/src/device_grid.h @@ -118,7 +118,7 @@ class DeviceGrid { * @note which can be used for indexing in the second dimension, allowing * @note traditional 2-d indexing to be used */ - vtr::NdMatrix grid_; //This stores the grid of complex blocks. It is a a 3D matrix: [0..num_layers-1][0..grid.width()-1][0..grid_height()-1] + vtr::NdMatrix grid_; //This stores the grid of complex blocks. It is a 3D matrix: [0..num_layers-1][0..grid.width()-1][0..grid_height()-1] ///@brief instance_counts_ stores the number of each tile type on each layer. It is initialized in count_instances(). std::vector> instance_counts_; /* [layer_num][physical_tile_type_ptr] */ diff --git a/libs/libarchfpga/src/main.cpp b/libs/libarchfpga/src/main.cpp index 6a9e3f354d1..81b49860c5c 100644 --- a/libs/libarchfpga/src/main.cpp +++ b/libs/libarchfpga/src/main.cpp @@ -5,12 +5,11 @@ * Author: Jason Luu */ -#include -#include +#include +#include #include #include "vtr_error.h" -#include "vtr_memory.h" #include "arch_util.h" #include "read_xml_arch_file.h" diff --git a/libs/libarchfpga/src/physical_types.h b/libs/libarchfpga/src/physical_types.h index cd7972487fb..cbf343f0057 100644 --- a/libs/libarchfpga/src/physical_types.h +++ b/libs/libarchfpga/src/physical_types.h @@ -28,6 +28,7 @@ #define PHYSICAL_TYPES_H #include +#include #include #include #include @@ -129,7 +130,7 @@ struct t_metadata_dict : vtr::flat_map< // Get metadata values matching key. // - // Returns nullptr if key is not found or if multiple values are prsent + // Returns nullptr if key is not found or if multiple values are present // per key. inline const t_metadata_value* one(vtr::interned_string key) const { auto values = get(key); @@ -146,7 +147,7 @@ struct t_metadata_dict : vtr::flat_map< void add(vtr::interned_string key, vtr::interned_string value) { // Get the iterator to the key, which may already have elements if // add was called with this key in the past. - (*this)[key].emplace_back(t_metadata_value(value)); + (*this)[key].emplace_back(value); } }; @@ -184,11 +185,11 @@ constexpr std::array SIDES = {{TOP, RIGHT, BOTTOM, LEFT}}; constexpr std::array SIDE_STRING = {{"TOP", "RIGHT", "BOTTOM", "LEFT"}}; //String versions of side orientations /* pin location distributions */ -enum e_pin_location_distr { - E_SPREAD_PIN_DISTR, - E_PERIMETER_PIN_DISTR, - E_SPREAD_INPUTS_PERIMETER_OUTPUTS_PIN_DISTR, - E_CUSTOM_PIN_DISTR +enum class e_pin_location_distr { + SPREAD, + PERIMETER, + SPREAD_INPUTS_PERIMETER_OUTPUTS, + CUSTOM }; /* pb_type class */ @@ -266,10 +267,10 @@ enum e_sb_location { */ struct t_grid_loc_spec { t_grid_loc_spec(std::string start, std::string end, std::string repeat, std::string incr) - : start_expr(start) - , end_expr(end) - , repeat_expr(repeat) - , incr_expr(incr) {} + : start_expr(std::move(start)) + , end_expr(std::move(end)) + , repeat_expr(std::move(repeat)) + , incr_expr(std::move(incr)) {} std::string start_expr; //Starting position (inclusive) std::string end_expr; //Ending position (inclusive) @@ -283,7 +284,7 @@ struct t_grid_loc_spec { /* Definition of how to place physical logic block in the grid. * This defines a region of the grid to be set to a specific type - * (provided it's priority is high enough to override other blocks). + * (provided its priority is high enough to override other blocks). * * The diagram below illustrates the layout specification. * @@ -348,7 +349,7 @@ struct t_grid_loc_spec { */ struct t_grid_loc_def { t_grid_loc_def(std::string block_type_val, int priority_val) - : block_type(block_type_val) + : block_type(std::move(block_type_val)) , priority(priority_val) , x("0", "W-1", "max(w+1,W)", "w") //Fill in x direction, no repeat, incr by block width , y("0", "H-1", "max(h+1,H)", "h") //Fill in y direction, no repeat, incr by block height @@ -361,7 +362,7 @@ struct t_grid_loc_def { // the largest priority wins. t_grid_loc_spec x; //Horizontal location specification - t_grid_loc_spec y; //Veritcal location specification + t_grid_loc_spec y; //Vertical location specification // When 1 metadata tag is split among multiple t_grid_loc_def, one // t_grid_loc_def is arbitrarily chosen to own the metadata, and the other @@ -694,7 +695,7 @@ struct t_physical_tile_type { std::vector class_inf; /* [0..num_class-1] */ - // Primitive class is refered to a classes that are in the primitive blocks. These classes are + // Primitive class is referred to a classes that are in the primitive blocks. These classes are // used during flat-routing to route the nets. // The starting number of primitive classes int primitive_class_starting_idx = -1; @@ -801,7 +802,7 @@ struct t_capacity_range { struct t_sub_tile { char* name = nullptr; - // Mapping between the sub tile's pins and the physical pins corresponding + // Mapping between the subtile's pins and the physical pins corresponding // to the physical tile type. std::vector sub_tile_to_tile_pin_indices; @@ -1270,6 +1271,12 @@ struct t_pin_to_pin_annotation { * parent_pb_graph_node : parent pb graph node * total_primitive_count : Total number of this primitive type in the cluster. If there are 10 ALMs per cluster * and 2 FFs per ALM (given the mode of the parent of this primitive) then the total is 20. + * This member is only used by nodes corresponding to primitive sites. + * flat_site_index : Index of this primitive site within its primitive type within this cluster type. + * Values are in [0...total_primitive_count-1], e.g. if there are 10 ALMs per cluster, 2 FFS + * and 2 LUTs per ALM, then flat site indices for FFs would run from 0 to 19, and flat site + indices for LUTs would run from 0 to 19. This member is only used by nodes corresponding + to primitive sites. It is used when reconstructing clusters from a flat placement file. * illegal_modes : vector containing illegal modes that result in conflicts during routing */ class t_pb_graph_node { @@ -1326,6 +1333,8 @@ class t_pb_graph_node { int num_output_pin_class; /* number of output pin classes that this pb_graph_node has */ int total_primitive_count; /* total number of this primitive type in the cluster */ + int flat_site_index; /* index of this primitive within sites of its type in this cluster */ + /* Interconnect instances for this pb * Only used for power @@ -1554,6 +1563,22 @@ enum e_parallel_axis { Y_AXIS, BOTH_AXIS }; + +/** + * @brief An attribute of a segment that defines the general category of the wire segment type. + * + * @details + * - `GCLK`: A segment type that is part of the global routing network for clocks. + * - `GENERAL`: Describes a segment type that is part of the regular routing network. + */ +enum class SegResType { + GCLK = 0, + GENERAL = 1, + NUM_RES_TYPES +}; + +constexpr std::array(SegResType::NUM_RES_TYPES)> RES_TYPE_STRING = {{"GCLK", "GENERAL"}}; //String versions of segment resource types + enum e_switch_block_type { SUBSET, WILTON, @@ -1604,8 +1629,16 @@ enum e_Fc_type { * seg_index: The index of the segment as stored in the appropriate Segs list* * Upon loading the architecture, we use this field to keep track * * the segment's index in the unified segment_inf vector. This is * - * usefull when building the rr_graph for different Y & X channels* - * interms of track distribution and segment type. * + * useful when building the rr_graph for different Y & X channels * + * in terms of track distribution and segment type. * + * res_type: Determines the routing network to which the segment belongs. * + * Possible values are: + * - GENERAL: The segment is part of the general routing * + * resources. * + * - GCLK: The segment is part of the global routing network. * + * For backward compatibility, this attribute is optional. If not * + * specified, the resource type for the segment is considered to * + * be GENERAL. * * meta: Table storing extra arbitrary metadata attributes. */ struct t_segment_inf { std::string name; @@ -1627,6 +1660,7 @@ struct t_segment_inf { std::vector bend; std::vector part_len; int seg_index; + enum SegResType res_type = SegResType::GENERAL; //float Cmetal_per_m; /* Wire capacitance (per meter) */ }; @@ -1650,7 +1684,7 @@ struct t_hash_segment_inf { enum class SwitchType { MUX = 0, //A configurable (buffered) mux (single-driver) TRISTATE, //A configurable tristate-able buffer (multi-driver) - PASS_GATE, //A configurable pass transitor switch (multi-driver) + PASS_GATE, //A configurable pass transistor switch (multi-driver) SHORT, //A non-configurable electrically shorted connection (multi-driver) BUFFER, //A non-configurable non-tristate-able buffer (uni-driver) INVALID, //Unspecified, usually an error @@ -1995,6 +2029,16 @@ struct t_noc_inf { /** A list of all routers in the NoC*/ std::vector router_list; + /** Stores NoC routers that have a different latency than the NoC-wide router latency. + * (router_user_id, overridden router latency)*/ + std::map router_latency_overrides; + /** Stores NoC links that have a different latency than the NoC-wide link latency. + * ((source router id, destination router id), overridden link latency)*/ + std::map, double> link_latency_overrides; + /** Stores NoC links that have a different bandwidth than the NoC-wide link bandwidth. + * ((source router id, destination router id), overridden link bandwidth)*/ + std::map, double> link_bandwidth_overrides; + /** Represents the name of a router tile on the FPGA device. This should match the name used in the arch file when * describing a NoC router tile within the FPGA device*/ std::string noc_router_tile_name; @@ -2043,6 +2087,8 @@ struct t_vib_inf { /* Detailed routing architecture */ struct t_arch { + /** Stores unique strings used as key and values in tags, + * i.e. implements a flyweight pattern to save memory.*/ mutable vtr::string_internment strings; std::vector interned_strings; @@ -2092,7 +2138,7 @@ struct t_arch { // nets from the circuit netlist are belonging to the constant network, // and assigned to it accordingly. // - // NOTE: At the moment, the constant cells and nets are primarly used + // NOTE: At the moment, the constant cells and nets are primarily used // for the interchange netlist format, to determine which are the constants // net names and which virtual cell is responsible to generate them. // The information is present in the device database. @@ -2101,6 +2147,7 @@ struct t_arch { std::string gnd_net = "$__gnd_net"; std::string vcc_net = "$__vcc_net"; + std::string default_clock_network_name = "clock_network"; // Luts std::vector lut_cells; diff --git a/libs/libarchfpga/src/read_fpga_interchange_arch.cpp b/libs/libarchfpga/src/read_fpga_interchange_arch.cpp index 38066842db5..828f935369f 100644 --- a/libs/libarchfpga/src/read_fpga_interchange_arch.cpp +++ b/libs/libarchfpga/src/read_fpga_interchange_arch.cpp @@ -5,29 +5,28 @@ #ifdef VTR_ENABLE_CAPNPROTO -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "vtr_assert.h" -#include "vtr_digest.h" -#include "vtr_log.h" -#include "vtr_memory.h" -#include "vtr_util.h" - -#include "arch_check.h" -#include "arch_error.h" -#include "arch_util.h" -#include "arch_types.h" - +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include + +# include "vtr_assert.h" +# include "vtr_digest.h" +# include "vtr_log.h" +# include "vtr_memory.h" +# include "vtr_util.h" + +# include "arch_check.h" +# include "arch_error.h" +# include "arch_util.h" +# include "arch_types.h" /* * FPGA Interchange Device frontend @@ -2503,7 +2502,7 @@ struct ArchReader { } }; -#endif // VTR_ENABLE_CAPNPROTO +#endif // VTR_ENABLE_CAPNPROTO void FPGAInterchangeReadArch(const char* FPGAInterchangeDeviceFile, const bool /*timing_enabled*/, @@ -2551,12 +2550,12 @@ void FPGAInterchangeReadArch(const char* FPGAInterchangeDeviceFile, ArchReader reader(arch, device_reader, FPGAInterchangeDeviceFile, PhysicalTileTypes, LogicalBlockTypes); reader.read_arch(); -#else // VTR_ENABLE_CAPNPROTO +#else // VTR_ENABLE_CAPNPROTO // If CAPNPROTO is disabled, throw an error. (void)FPGAInterchangeDeviceFile; (void)arch; (void)PhysicalTileTypes; (void)LogicalBlockTypes; throw vtr::VtrError("Unable to read FPGA interchange if CAPNPROTO is not enabled", __FILE__, __LINE__); -#endif // VTR_ENABLE_CAPNPROTO +#endif // VTR_ENABLE_CAPNPROTO } diff --git a/libs/libarchfpga/src/read_fpga_interchange_arch.h b/libs/libarchfpga/src/read_fpga_interchange_arch.h index 3853ce93799..c859f97a002 100644 --- a/libs/libarchfpga/src/read_fpga_interchange_arch.h +++ b/libs/libarchfpga/src/read_fpga_interchange_arch.h @@ -5,14 +5,14 @@ #ifdef VTR_ENABLE_CAPNPROTO -#include "DeviceResources.capnp.h" -#include "LogicalNetlist.capnp.h" -#include "capnp/serialize.h" -#include "capnp/serialize-packed.h" -#include -#include - -#endif // VTR_ENABLE_CAPNPROTO +# include "DeviceResources.capnp.h" +# include "LogicalNetlist.capnp.h" +# include "capnp/serialize.h" +# include "capnp/serialize-packed.h" +# include +# include + +#endif // VTR_ENABLE_CAPNPROTO #ifdef __cplusplus extern "C" { diff --git a/libs/libarchfpga/src/read_xml_arch_file.cpp b/libs/libarchfpga/src/read_xml_arch_file.cpp index f129fba0c01..0d0d90392c1 100644 --- a/libs/libarchfpga/src/read_xml_arch_file.cpp +++ b/libs/libarchfpga/src/read_xml_arch_file.cpp @@ -3,7 +3,7 @@ * will generate two pugi::xml_nodes. One called "a" and its * child "b". Each pugi::xml_node can contain various XML data such as attribute * information and text content. The XML parser provides several functions to - * help the developer build, and traverse tree (this is also somtime referred to + * help the developer build, and traverse tree (this is also sometimes referred to * as the Document Object Model or DOM). * * For convenience, it often makes sense to use some wraper functions (provided in @@ -36,7 +36,7 @@ * */ -#include +#include #include #include #include @@ -65,6 +65,8 @@ #include "physical_types_util.h" +#include "read_xml_arch_file_noc_tag.h" + using namespace std::string_literals; using pugiutil::ReqOpt; @@ -80,7 +82,7 @@ struct t_pin_counts { int output = 0; int clock = 0; - int total() { + int total() const { return input + output + clock; } }; @@ -92,12 +94,12 @@ struct t_pin_locs { bool distribution_set = false; public: - enum e_pin_location_distr distribution = E_SPREAD_PIN_DISTR; + e_pin_location_distr distribution = e_pin_location_distr::SPREAD; /* [0..num_sub_tiles-1][0..width-1][0..height-1][0..num_of_layer-1][0..3][0..num_tokens-1] */ vtr::NdMatrix, 5> assignments; - bool is_distribution_set() { + bool is_distribution_set() const { return distribution_set; } @@ -133,21 +135,25 @@ static void ProcessTiles(pugi::xml_node Node, const t_default_fc_spec& arch_def_fc, t_arch& arch, const pugiutil::loc_data& loc_data, - const int num_of_avail_layer); + int num_of_avail_layer); + // TODO: Remove block_type_contains_blif_model / pb_type_contains_blif_model // as part of // https://github.com/verilog-to-routing/vtr-verilog-to-routing/issues/1193 static void MarkIoTypes(std::vector& PhysicalTileTypes); + static void ProcessTileProps(pugi::xml_node Node, t_physical_tile_type* PhysicalTileType, const pugiutil::loc_data& loc_data); + static t_pin_counts ProcessSubTilePorts(pugi::xml_node Parent, t_sub_tile* SubTile, - std::unordered_map& tile_port_names, const pugiutil::loc_data& loc_data); + static void ProcessTilePort(pugi::xml_node Node, t_physical_tile_port* port, const pugiutil::loc_data& loc_data); + static void ProcessTileEquivalentSites(pugi::xml_node Parent, t_sub_tile* SubTile, t_physical_tile_type* PhysicalTileType, @@ -170,21 +176,38 @@ static void ProcessPinLocations(pugi::xml_node Locations, t_pin_locs* pin_locs, const pugiutil::loc_data& loc_data, const int num_of_avail_layer); + static void ProcessSubTiles(pugi::xml_node Node, t_physical_tile_type* PhysicalTileType, std::vector& LogicalBlockTypes, std::vector& segments, const t_default_fc_spec& arch_def_fc, const pugiutil::loc_data& loc_data, - const int num_of_avail_layer); -static void ProcessPb_Type(vtr::string_internment* strings, - pugi::xml_node Parent, + int num_of_avail_layer); + +/** + * @brief Parses a tag and all and tags under it. + * + * @param Parent An XML node pointing to tag to be processed + * @param pb_type To be filled by this function with parsed information + * about the given pb_type + * @param mode The parent mode of the pb_type to be processed. If the given + * pb_type is the root, nullptr should be passed. + * @param timing_enabled Determines whether timing-aware optimizations are enabled. + * @param arch Contains high-level architecture information like models and + * string interment storage. + * @param loc_data Points to the location in the architecture file where the parser is reading. + * @param pb_idx Used to assign unique values to index_in_logical_block field in +* t_pb_type for all pb_types under a logical block type. + */ +static void ProcessPb_Type(pugi::xml_node Parent, t_pb_type* pb_type, t_mode* mode, - const bool timing_enabled, + bool timing_enabled, const t_arch& arch, const pugiutil::loc_data& loc_data, int& pb_idx); + static void ProcessPb_TypePort(pugi::xml_node Parent, t_port* port, e_power_estimation_method power_method, @@ -194,15 +217,56 @@ static void ProcessPinToPinAnnotations(pugi::xml_node parent, t_pin_to_pin_annotation* annotation, t_pb_type* parent_pb_type, const pugiutil::loc_data& loc_data); -static void ProcessInterconnect(vtr::string_internment* strings, pugi::xml_node Parent, t_mode* mode, const pugiutil::loc_data& loc_data); -static void ProcessMode(vtr::string_internment* strings, - pugi::xml_node Parent, + +/** + * @brief Parses tags under a or tag. + * + * @param strings String internment storage used to store strings used + * as keys and values in tags under the given tag. + * @param Parent An XML node pointing to tag to be processed + * @param mode To be filled with interconnect-related information. + * @param loc_data Points to the location in the architecture file where + * the parser is reading. + */ +static void ProcessInterconnect(vtr::string_internment& strings, + pugi::xml_node Parent, + t_mode* mode, + const pugiutil::loc_data& loc_data); + +/** + * @brief Processes a tag under tag in the architecture file. + * If a tag does not have any tags, a default mode is implied. + * + * @param Parent An XML node referring to either tag or tag. + * It the XML node refers to tag, the mode is implied. + * @param mode Mode information to be filled by this function. + * @param timing_enabled Determines whether timing-aware optimizations are enabled. + * @param arch Contains high-level architecture information like models and + * string interment storage. + * @param loc_data Points to the location in the architecture file where the parser is reading. + * @param parent_pb_idx Used to assign unique values to index_in_logical_block field in + * t_pb_type for all pb_types under a logical block type. + */ +static void ProcessMode(pugi::xml_node Parent, t_mode* mode, - const bool timing_enabled, + bool timing_enabled, const t_arch& arch, const pugiutil::loc_data& loc_data, int& parent_pb_idx); -static t_metadata_dict ProcessMetadata(vtr::string_internment* strings, pugi::xml_node Parent, const pugiutil::loc_data& loc_data); +/** + * @brief Processes tags. + * + * @param strings String internment storage used to store strings used +* as keys and values in tags. + * @param Parent An XML node pointing to the parent tag whose children + * are to be parsed. + * @param loc_data Points to the location in the architecture file where the parser is reading. + * @return A t_metadata_dict that stored parsed (key, value) pairs. + */ +static t_metadata_dict ProcessMetadata(vtr::string_internment& strings, + pugi::xml_node Parent, + const pugiutil::loc_data& loc_data); + static void Process_Fc_Values(pugi::xml_node Node, t_default_fc_spec& spec, const pugiutil::loc_data& loc_data); static void Process_Fc(pugi::xml_node Node, t_physical_tile_type* PhysicalTileType, @@ -212,10 +276,23 @@ static void Process_Fc(pugi::xml_node Node, const t_default_fc_spec& arch_def_fc, const pugiutil::loc_data& loc_data); static t_fc_override Process_Fc_override(pugi::xml_node node, const pugiutil::loc_data& loc_data); + +/** + * @brief Processes optional tag under a tag// + * + * @param switchblock_locations An XML node pointing to tag + * if it exists. + * @param type To be filled with information extracted from the given + * tag. This function fills switchblock_locations and + * switchblock_switch_overrides fields. + * @param arch Used to find switchblock by name + * @param loc_data Points to the location in the xml file where the parser is reading. + */ static void ProcessSwitchblockLocations(pugi::xml_node switchblock_locations, t_physical_tile_type* type, const t_arch& arch, const pugiutil::loc_data& loc_data); + static e_fc_value_type string_to_fc_value_type(const std::string& str, pugi::xml_node node, const pugiutil::loc_data& loc_data); static void ProcessChanWidthDistr(pugi::xml_node Node, t_arch* arch, @@ -228,13 +305,9 @@ static void ProcessLayout(pugi::xml_node Node, t_arch* arch, const pugiutil::loc /* Added for vib_layout*/ static void ProcessVibLayout(pugi::xml_node Node, t_arch* arch, const pugiutil::loc_data& loc_data); -static t_grid_def ProcessGridLayout(vtr::string_internment* strings, pugi::xml_node layout_type_tag, const pugiutil::loc_data& loc_data, t_arch* arch, int& num_of_avail_layer); - /* Added for vib_layout*/ static t_vib_grid_def ProcessVibGridLayout(vtr::string_internment* strings, pugi::xml_node layout_type_tag, const pugiutil::loc_data& loc_data, t_arch* arch, int& num_of_avail_layer); -static void ProcessBlockTypeLocs(t_grid_def& grid_def, int die_number, vtr::string_internment* strings, pugi::xml_node layout_block_type_tag, const pugiutil::loc_data& loc_data); - /* Added for vib_layout*/ static void ProcessVibBlockTypeLocs(t_vib_grid_def& grid_def, int die_number, @@ -242,9 +315,29 @@ static void ProcessVibBlockTypeLocs(t_vib_grid_def& grid_def, pugi::xml_node layout_block_type_tag, const pugiutil::loc_data& loc_data); + +static t_grid_def ProcessGridLayout(vtr::string_internment& strings, pugi::xml_node layout_type_tag, const pugiutil::loc_data& loc_data, t_arch* arch, int& num_of_avail_layer); +static void ProcessBlockTypeLocs(t_grid_def& grid_def, int die_number, vtr::string_internment& strings, pugi::xml_node layout_block_type_tag, const pugiutil::loc_data& loc_data); + static int get_number_of_layers(pugi::xml_node layout_type_tag, const pugiutil::loc_data& loc_data); static void ProcessDevice(pugi::xml_node Node, t_arch* arch, t_default_fc_spec& arch_def_fc, const pugiutil::loc_data& loc_data); -static void ProcessComplexBlocks(vtr::string_internment* strings, pugi::xml_node Node, std::vector& LogicalBlockTypes, t_arch& arch, const bool timing_enabled, const pugiutil::loc_data& loc_data); + +/** + * @brief Parses tag in the architecture file. + * + * @param Node The xml node referring to tag + * @param LogicalBlockTypes This function fills this vector with all available + * logical block types. + * @param arch Used to access models and string internment storage. + * @param timing_enabled Determines whether timing-aware optimizations are enabled. + * @param loc_data Points to the location in the xml file where the parser is reading. + */ +static void ProcessComplexBlocks(pugi::xml_node Node, + std::vector& LogicalBlockTypes, + const t_arch& arch, + bool timing_enabled, + const pugiutil::loc_data& loc_data); + static void ProcessSwitches(pugi::xml_node Node, t_arch_switch_inf** Switches, int* NumSwitches, @@ -286,13 +379,6 @@ static void ProcessPower(pugi::xml_node parent, static void ProcessClocks(pugi::xml_node Parent, t_clock_arch* clocks, const pugiutil::loc_data& loc_data); -static void ProcessNoc(pugi::xml_node noc_tag, t_arch* arch, const pugiutil::loc_data& loc_data); - -static void processTopology(pugi::xml_node topology_tag, const pugiutil::loc_data& loc_data, t_noc_inf* noc_ref); - -static void processMeshTopology(pugi::xml_node mesh_topology_tag, const pugiutil::loc_data& loc_data, t_noc_inf* noc_ref); - -static void processRouter(pugi::xml_node router_tag, const pugiutil::loc_data& loc_data, t_noc_inf* noc_ref, std::map>& routers_info_in_arch); static void ProcessPb_TypePowerEstMethod(pugi::xml_node Parent, t_pb_type* pb_type, const pugiutil::loc_data& loc_data); static void ProcessPb_TypePort_Power(pugi::xml_node Parent, t_port* port, e_power_estimation_method power_method, const pugiutil::loc_data& loc_data); @@ -302,9 +388,10 @@ std::string inst_port_to_port_name(std::string inst_port); static bool attribute_to_bool(const pugi::xml_node node, const pugi::xml_attribute attr, const pugiutil::loc_data& loc_data); -int find_switch_by_name(const t_arch& arch, std::string switch_name); -e_side string_to_side(std::string side_str); +static int find_switch_by_name(const t_arch& arch, const std::string& switch_name); + +e_side string_to_side(const std::string& side_str); template static T* get_type_by_name(const char* type_name, std::vector& types); @@ -416,7 +503,7 @@ void XmlReadArch(const char* ArchFile, /* Process logical block types */ Next = get_single_child(architecture, "complexblocklist", loc_data); - ProcessComplexBlocks(&arch->strings, Next, LogicalBlockTypes, *arch, timing_enabled, loc_data); + ProcessComplexBlocks(Next, LogicalBlockTypes, *arch, timing_enabled, loc_data); /* Process logical block types */ Next = get_single_child(architecture, "tiles", loc_data); @@ -503,9 +590,8 @@ void XmlReadArch(const char* ArchFile, // process NoC (optional) Next = get_single_child(architecture, "noc", loc_data, pugiutil::OPTIONAL); - if (Next) { - ProcessNoc(Next, arch, loc_data); + process_noc_tag(Next, arch, loc_data); } SyncModelsPbTypes(arch, LogicalBlockTypes); @@ -537,7 +623,7 @@ static void LoadPinLoc(pugi::xml_node Locations, type->pin_layer_offset.resize(type->num_pins, 0); std::vector physical_pin_counts(type->num_pins, 0); - if (pin_locs->distribution == E_SPREAD_PIN_DISTR) { + if (pin_locs->distribution == e_pin_location_distr::SPREAD) { /* evenly distribute pins starting at bottom left corner */ int num_sides = 4 * (type->width * type->height); @@ -562,7 +648,7 @@ static void LoadPinLoc(pugi::xml_node Locations, } VTR_ASSERT(side_index == num_sides); VTR_ASSERT(count == type->num_pins); - } else if (pin_locs->distribution == E_PERIMETER_PIN_DISTR) { + } else if (pin_locs->distribution == e_pin_location_distr::PERIMETER) { //Add one pin at-a-time to perimeter sides in round-robin order int ipin = 0; while (ipin < type->num_pins) { @@ -588,7 +674,7 @@ static void LoadPinLoc(pugi::xml_node Locations, } VTR_ASSERT(ipin == type->num_pins); - } else if (pin_locs->distribution == E_SPREAD_INPUTS_PERIMETER_OUTPUTS_PIN_DISTR) { + } else if (pin_locs->distribution == e_pin_location_distr::SPREAD_INPUTS_PERIMETER_OUTPUTS) { //Collect the sets of block input/output pins std::vector input_pins; std::vector output_pins; @@ -655,7 +741,7 @@ static void LoadPinLoc(pugi::xml_node Locations, VTR_ASSERT(ipin == output_pins.size()); } else { - VTR_ASSERT(pin_locs->distribution == E_CUSTOM_PIN_DISTR); + VTR_ASSERT(pin_locs->distribution == e_pin_location_distr::CUSTOM); for (auto& sub_tile : type->sub_tiles) { int sub_tile_index = sub_tile.index; int sub_tile_capacity = sub_tile.capacity.total(); @@ -664,7 +750,7 @@ static void LoadPinLoc(pugi::xml_node Locations, for (int width = 0; width < type->width; ++width) { for (int height = 0; height < type->height; ++height) { for (e_side side : {TOP, RIGHT, BOTTOM, LEFT}) { - for (auto token : pin_locs->assignments[sub_tile_index][width][height][layer][side]) { + for (const auto& token : pin_locs->assignments[sub_tile_index][width][height][layer][side]) { auto pin_range = ProcessPinString(Locations, &sub_tile, token.c_str(), @@ -1271,60 +1357,48 @@ static void ProcessPb_TypePowerEstMethod(pugi::xml_node Parent, t_pb_type* pb_ty } /* Takes in a pb_type, allocates and loads data for it and recurses downwards */ -static void ProcessPb_Type(vtr::string_internment* strings, - pugi::xml_node Parent, +static void ProcessPb_Type(pugi::xml_node Parent, t_pb_type* pb_type, t_mode* mode, const bool timing_enabled, const t_arch& arch, const pugiutil::loc_data& loc_data, int& pb_idx) { - int num_ports, i, j, k, num_annotations; const char* Prop; pugi::xml_node Cur; - bool is_root_pb_type = !(mode != nullptr && mode->parent_pb_type != nullptr); + bool is_root_pb_type = (mode == nullptr || mode->parent_pb_type == nullptr); bool is_leaf_pb_type = bool(get_attribute(Parent, "blif_model", loc_data, ReqOpt::OPTIONAL)); std::vector children_to_expect = {"input", "output", "clock", "mode", "power", "metadata"}; if (!is_leaf_pb_type) { //Non-leafs may have a model/pb_type children - children_to_expect.push_back("model"); - children_to_expect.push_back("pb_type"); - children_to_expect.push_back("interconnect"); + children_to_expect.emplace_back("model"); + children_to_expect.emplace_back("pb_type"); + children_to_expect.emplace_back("interconnect"); if (is_root_pb_type) { VTR_ASSERT(!is_leaf_pb_type); //Top level pb_type's may also have the following tag types - children_to_expect.push_back("fc"); - children_to_expect.push_back("pinlocations"); - children_to_expect.push_back("switchblock_locations"); + children_to_expect.emplace_back("fc"); + children_to_expect.emplace_back("pinlocations"); + children_to_expect.emplace_back("switchblock_locations"); } } else { VTR_ASSERT(is_leaf_pb_type); VTR_ASSERT(!is_root_pb_type); //Leaf pb_type's may also have the following tag types - children_to_expect.push_back("T_setup"); - children_to_expect.push_back("T_hold"); - children_to_expect.push_back("T_clock_to_Q"); - children_to_expect.push_back("delay_constant"); - children_to_expect.push_back("delay_matrix"); + children_to_expect.emplace_back("T_setup"); + children_to_expect.emplace_back("T_hold"); + children_to_expect.emplace_back("T_clock_to_Q"); + children_to_expect.emplace_back("delay_constant"); + children_to_expect.emplace_back("delay_matrix"); } //Sanity check contained tags expect_only_children(Parent, children_to_expect, loc_data); - char* class_name; - /* STL maps for checking various duplicate names */ - std::map pb_port_names; - std::map mode_names; - std::pair::iterator, bool> ret_pb_ports; - std::pair::iterator, bool> ret_mode_names; - int num_in_ports, num_out_ports, num_clock_ports; - int num_delay_constant, num_delay_matrix, num_C_constant, num_C_matrix, - num_T_setup, num_T_cq, num_T_hold; - pb_type->parent_mode = mode; pb_type->index_in_logical_block = pb_idx; if (mode != nullptr && mode->parent_pb_type != nullptr) { @@ -1341,7 +1415,7 @@ static void ProcessPb_Type(vtr::string_internment* strings, pb_type->class_type = UNKNOWN_CLASS; Prop = get_attribute(Parent, "class", loc_data, ReqOpt::OPTIONAL).as_string(nullptr); - class_name = vtr::strdup(Prop); + char* class_name = vtr::strdup(Prop); if (class_name) { if (0 == strcmp(class_name, PB_TYPE_CLASS_STRING[LUT_CLASS])) { @@ -1365,17 +1439,16 @@ static void ProcessPb_Type(vtr::string_internment* strings, } VTR_ASSERT(pb_type->num_pb > 0); - num_ports = num_in_ports = num_out_ports = num_clock_ports = 0; - num_in_ports = count_children(Parent, "input", loc_data, ReqOpt::OPTIONAL); - num_out_ports = count_children(Parent, "output", loc_data, ReqOpt::OPTIONAL); - num_clock_ports = count_children(Parent, "clock", loc_data, ReqOpt::OPTIONAL); - num_ports = num_in_ports + num_out_ports + num_clock_ports; + + const int num_in_ports = count_children(Parent, "input", loc_data, ReqOpt::OPTIONAL); + const int num_out_ports = count_children(Parent, "output", loc_data, ReqOpt::OPTIONAL); + const int num_clock_ports = count_children(Parent, "clock", loc_data, ReqOpt::OPTIONAL); + const int num_ports = num_in_ports + num_out_ports + num_clock_ports; pb_type->ports = (t_port*)vtr::calloc(num_ports, sizeof(t_port)); pb_type->num_ports = num_ports; /* Enforce VPR's definition of LUT/FF by checking number of ports */ - if (pb_type->class_type == LUT_CLASS - || pb_type->class_type == LATCH_CLASS) { + if (pb_type->class_type == LUT_CLASS || pb_type->class_type == LATCH_CLASS) { if (num_in_ports != 1 || num_out_ports != 1) { archfpga_throw(loc_data.filename_c_str(), loc_data.line(Parent), "%s primitives must contain exactly one input port and one output port." @@ -1386,64 +1459,57 @@ static void ProcessPb_Type(vtr::string_internment* strings, } /* Initialize Power Structure */ - pb_type->pb_type_power = (t_pb_type_power*)vtr::calloc(1, - sizeof(t_pb_type_power)); + pb_type->pb_type_power = (t_pb_type_power*)vtr::calloc(1, sizeof(t_pb_type_power)); ProcessPb_TypePowerEstMethod(Parent, pb_type, loc_data); /* process ports */ - j = 0; int absolute_port_first_pin_index = 0; + int port_idx = 0; + + // STL sets for checking duplicate port names + std::set pb_port_names; + + for (const char* child_name : {"input", "output", "clock"}) { + Cur = get_first_child(Parent, child_name, loc_data, ReqOpt::OPTIONAL); + int port_index_by_type = 0; - for (i = 0; i < 3; i++) { - if (i == 0) { - k = 0; - Cur = get_first_child(Parent, "input", loc_data, ReqOpt::OPTIONAL); - } else if (i == 1) { - k = 0; - Cur = get_first_child(Parent, "output", loc_data, ReqOpt::OPTIONAL); - } else { - k = 0; - Cur = get_first_child(Parent, "clock", loc_data, ReqOpt::OPTIONAL); - } while (Cur) { - pb_type->ports[j].parent_pb_type = pb_type; - pb_type->ports[j].index = j; - pb_type->ports[j].port_index_by_type = k; - ProcessPb_TypePort(Cur, &pb_type->ports[j], + pb_type->ports[port_idx].parent_pb_type = pb_type; + pb_type->ports[port_idx].index = port_idx; + pb_type->ports[port_idx].port_index_by_type = port_index_by_type; + ProcessPb_TypePort(Cur, &pb_type->ports[port_idx], pb_type->pb_type_power->estimation_method, is_root_pb_type, loc_data); - pb_type->ports[j].absolute_first_pin_index = absolute_port_first_pin_index; - absolute_port_first_pin_index += pb_type->ports[j].num_pins; + pb_type->ports[port_idx].absolute_first_pin_index = absolute_port_first_pin_index; + absolute_port_first_pin_index += pb_type->ports[port_idx].num_pins; //Check port name duplicates - ret_pb_ports = pb_port_names.insert(std::pair(pb_type->ports[j].name, 0)); - if (!ret_pb_ports.second) { + auto [_, success] = pb_port_names.insert(pb_type->ports[port_idx].name); + if (!success) { archfpga_throw(loc_data.filename_c_str(), loc_data.line(Cur), "Duplicate port names in pb_type '%s': port '%s'\n", - pb_type->name, pb_type->ports[j].name); + pb_type->name, pb_type->ports[port_idx].name); } /* get next iteration */ - j++; - k++; + port_idx++; + port_index_by_type++; Cur = Cur.next_sibling(Cur.name()); } } - VTR_ASSERT(j == num_ports); + VTR_ASSERT(port_idx == num_ports); /* Count stats on the number of each type of pin */ pb_type->num_clock_pins = pb_type->num_input_pins = pb_type->num_output_pins = 0; - for (i = 0; i < pb_type->num_ports; i++) { - if (pb_type->ports[i].type == IN_PORT - && pb_type->ports[i].is_clock == false) { - pb_type->num_input_pins += pb_type->ports[i].num_pins; - } else if (pb_type->ports[i].type == OUT_PORT) { - pb_type->num_output_pins += pb_type->ports[i].num_pins; + for (int port_i = 0; port_i < pb_type->num_ports; port_i++) { + if (pb_type->ports[port_i].type == IN_PORT && !pb_type->ports[port_i].is_clock) { + pb_type->num_input_pins += pb_type->ports[port_i].num_pins; + } else if (pb_type->ports[port_i].type == OUT_PORT) { + pb_type->num_output_pins += pb_type->ports[port_i].num_pins; } else { - VTR_ASSERT(pb_type->ports[i].is_clock - && pb_type->ports[i].type == IN_PORT); - pb_type->num_clock_pins += pb_type->ports[i].num_pins; + VTR_ASSERT(pb_type->ports[port_i].is_clock && pb_type->ports[port_i].type == IN_PORT); + pb_type->num_clock_pins += pb_type->ports[port_i].num_pins; } } @@ -1462,51 +1528,30 @@ static void ProcessPb_Type(vtr::string_internment* strings, pb_type->annotations = nullptr; pb_type->num_annotations = 0; - i = 0; /* Determine if this is a leaf or container pb_type */ if (pb_type->blif_model != nullptr) { /* Process delay and capacitance annotations */ - num_annotations = 0; - num_delay_constant = count_children(Parent, "delay_constant", loc_data, ReqOpt::OPTIONAL); - num_delay_matrix = count_children(Parent, "delay_matrix", loc_data, ReqOpt::OPTIONAL); - num_C_constant = count_children(Parent, "C_constant", loc_data, ReqOpt::OPTIONAL); - num_C_matrix = count_children(Parent, "C_matrix", loc_data, ReqOpt::OPTIONAL); - num_T_setup = count_children(Parent, "T_setup", loc_data, ReqOpt::OPTIONAL); - num_T_cq = count_children(Parent, "T_clock_to_Q", loc_data, ReqOpt::OPTIONAL); - num_T_hold = count_children(Parent, "T_hold", loc_data, ReqOpt::OPTIONAL); - num_annotations = num_delay_constant + num_delay_matrix + num_C_constant - + num_C_matrix + num_T_setup + num_T_cq + num_T_hold; + int num_annotations = 0; + for (auto child_name : {"delay_constant", "delay_matrix", "C_constant", "C_matrix", "T_setup", "T_clock_to_Q", "T_hold"}) { + num_annotations += count_children(Parent, child_name, loc_data, ReqOpt::OPTIONAL); + } pb_type->annotations = (t_pin_to_pin_annotation*)vtr::calloc(num_annotations, sizeof(t_pin_to_pin_annotation)); pb_type->num_annotations = num_annotations; - j = 0; - for (i = 0; i < 7; i++) { - if (i == 0) { - Cur = get_first_child(Parent, "delay_constant", loc_data, ReqOpt::OPTIONAL); - } else if (i == 1) { - Cur = get_first_child(Parent, "delay_matrix", loc_data, ReqOpt::OPTIONAL); - } else if (i == 2) { - Cur = get_first_child(Parent, "C_constant", loc_data, ReqOpt::OPTIONAL); - } else if (i == 3) { - Cur = get_first_child(Parent, "C_matrix", loc_data, ReqOpt::OPTIONAL); - } else if (i == 4) { - Cur = get_first_child(Parent, "T_setup", loc_data, ReqOpt::OPTIONAL); - } else if (i == 5) { - Cur = get_first_child(Parent, "T_clock_to_Q", loc_data, ReqOpt::OPTIONAL); - } else if (i == 6) { - Cur = get_first_child(Parent, "T_hold", loc_data, ReqOpt::OPTIONAL); - } + int annotation_idx = 0; + for (auto child_name : {"delay_constant", "delay_matrix", "C_constant", "C_matrix", "T_setup", "T_clock_to_Q", "T_hold"}) { + Cur = get_first_child(Parent, child_name, loc_data, ReqOpt::OPTIONAL); + while (Cur) { - ProcessPinToPinAnnotations(Cur, &pb_type->annotations[j], - pb_type, loc_data); + ProcessPinToPinAnnotations(Cur, &pb_type->annotations[annotation_idx], pb_type, loc_data); /* get next iteration */ - j++; + annotation_idx++; Cur = Cur.next_sibling(Cur.name()); } } - VTR_ASSERT(j == num_annotations); + VTR_ASSERT(annotation_idx == num_annotations); if (timing_enabled) { check_leaf_pb_model_timing_consistency(pb_type, arch); @@ -1527,45 +1572,46 @@ static void ProcessPb_Type(vtr::string_internment* strings, VTR_ASSERT(pb_type->class_type == UNKNOWN_CLASS); pb_type->num_modes = count_children(Parent, "mode", loc_data, ReqOpt::OPTIONAL); pb_type->pb_type_power->leakage_default_mode = 0; + int mode_idx = 0; if (pb_type->num_modes == 0) { /* The pb_type operates in an implied one mode */ pb_type->num_modes = 1; pb_type->modes = new t_mode[pb_type->num_modes]; - pb_type->modes[i].parent_pb_type = pb_type; - pb_type->modes[i].index = i; - ProcessMode(strings, Parent, &pb_type->modes[i], timing_enabled, arch, loc_data, pb_idx); - i++; + pb_type->modes[mode_idx].parent_pb_type = pb_type; + pb_type->modes[mode_idx].index = mode_idx; + ProcessMode(Parent, &pb_type->modes[mode_idx], timing_enabled, arch, loc_data, pb_idx); + mode_idx++; } else { pb_type->modes = new t_mode[pb_type->num_modes]; + // STL set for checking duplicate mode names + std::set mode_names; + Cur = get_first_child(Parent, "mode", loc_data); while (Cur != nullptr) { if (0 == strcmp(Cur.name(), "mode")) { - pb_type->modes[i].parent_pb_type = pb_type; - pb_type->modes[i].index = i; - ProcessMode(strings, Cur, &pb_type->modes[i], timing_enabled, arch, loc_data, pb_idx); + pb_type->modes[mode_idx].parent_pb_type = pb_type; + pb_type->modes[mode_idx].index = mode_idx; + ProcessMode(Cur, &pb_type->modes[mode_idx], timing_enabled, arch, loc_data, pb_idx); - ret_mode_names = mode_names.insert(std::pair(pb_type->modes[i].name, 0)); - if (!ret_mode_names.second) { + auto [_, success] = mode_names.insert(pb_type->modes[mode_idx].name); + if (!success) { archfpga_throw(loc_data.filename_c_str(), loc_data.line(Cur), "Duplicate mode name: '%s' in pb_type '%s'.\n", - pb_type->modes[i].name, pb_type->name); + pb_type->modes[mode_idx].name, pb_type->name); } /* get next iteration */ - i++; + mode_idx++; Cur = Cur.next_sibling(Cur.name()); } } } - VTR_ASSERT(i == pb_type->num_modes); + VTR_ASSERT(mode_idx == pb_type->num_modes); } - pb_port_names.clear(); - mode_names.clear(); - - pb_type->meta = ProcessMetadata(strings, Parent, loc_data); + pb_type->meta = ProcessMetadata(arch.strings, Parent, loc_data); ProcessPb_TypePower(Parent, pb_type, loc_data); } @@ -1800,136 +1846,110 @@ static void ProcessPb_TypePort(pugi::xml_node Parent, t_port* port, e_power_esti ProcessPb_TypePort_Power(Parent, port, power_method, loc_data); } -static void ProcessInterconnect(vtr::string_internment* strings, pugi::xml_node Parent, t_mode* mode, const pugiutil::loc_data& loc_data) { - int num_interconnect = 0; - int num_complete, num_direct, num_mux; - int i, j, k, L_index, num_annotations; - int num_delay_constant, num_delay_matrix, num_C_constant, num_C_matrix, - num_pack_pattern; +static void ProcessInterconnect(vtr::string_internment& strings, + pugi::xml_node Parent, + t_mode* mode, + const pugiutil::loc_data& loc_data) { const char* Prop; - pugi::xml_node Cur; - pugi::xml_node Cur2; - std::map interc_names; - std::pair::iterator, bool> ret_interc_names; + // used to find duplicate names + std::set interconnect_names; - num_complete = num_direct = num_mux = 0; - num_complete = count_children(Parent, "complete", loc_data, ReqOpt::OPTIONAL); - num_direct = count_children(Parent, "direct", loc_data, ReqOpt::OPTIONAL); - num_mux = count_children(Parent, "mux", loc_data, ReqOpt::OPTIONAL); - num_interconnect = num_complete + num_direct + num_mux; + int num_interconnect = 0; + // count the total number of interconnect tags + for (auto child_name : {"complete", "direct", "mux"}) { + num_interconnect += count_children(Parent, child_name, loc_data, ReqOpt::OPTIONAL); + } mode->num_interconnect = num_interconnect; mode->interconnect = new t_interconnect[num_interconnect]; - i = 0; - for (L_index = 0; L_index < 3; L_index++) { - if (L_index == 0) { - Cur = get_first_child(Parent, "complete", loc_data, ReqOpt::OPTIONAL); - } else if (L_index == 1) { - Cur = get_first_child(Parent, "direct", loc_data, ReqOpt::OPTIONAL); - } else { - Cur = get_first_child(Parent, "mux", loc_data, ReqOpt::OPTIONAL); - } + int interconnect_idx = 0; + for (auto child_name : {"complete", "direct", "mux"}) { + pugi::xml_node Cur = get_first_child(Parent, child_name, loc_data, ReqOpt::OPTIONAL); + while (Cur != nullptr) { if (0 == strcmp(Cur.name(), "complete")) { - mode->interconnect[i].type = COMPLETE_INTERC; + mode->interconnect[interconnect_idx].type = COMPLETE_INTERC; } else if (0 == strcmp(Cur.name(), "direct")) { - mode->interconnect[i].type = DIRECT_INTERC; + mode->interconnect[interconnect_idx].type = DIRECT_INTERC; } else { VTR_ASSERT(0 == strcmp(Cur.name(), "mux")); - mode->interconnect[i].type = MUX_INTERC; + mode->interconnect[interconnect_idx].type = MUX_INTERC; } - mode->interconnect[i].line_num = loc_data.line(Cur); + mode->interconnect[interconnect_idx].line_num = loc_data.line(Cur); - mode->interconnect[i].parent_mode_index = mode->index; - mode->interconnect[i].parent_mode = mode; + mode->interconnect[interconnect_idx].parent_mode_index = mode->index; + mode->interconnect[interconnect_idx].parent_mode = mode; Prop = get_attribute(Cur, "input", loc_data).value(); - mode->interconnect[i].input_string = vtr::strdup(Prop); + mode->interconnect[interconnect_idx].input_string = vtr::strdup(Prop); Prop = get_attribute(Cur, "output", loc_data).value(); - mode->interconnect[i].output_string = vtr::strdup(Prop); + mode->interconnect[interconnect_idx].output_string = vtr::strdup(Prop); Prop = get_attribute(Cur, "name", loc_data).value(); - mode->interconnect[i].name = vtr::strdup(Prop); - mode->interconnect[i].meta = ProcessMetadata(strings, Cur, loc_data); + mode->interconnect[interconnect_idx].name = vtr::strdup(Prop); + mode->interconnect[interconnect_idx].meta = ProcessMetadata(strings, Cur, loc_data); - ret_interc_names = interc_names.insert(std::pair(mode->interconnect[i].name, 0)); - if (!ret_interc_names.second) { + auto [_, success] = interconnect_names.insert(mode->interconnect[interconnect_idx].name); + if (!success) { archfpga_throw(loc_data.filename_c_str(), loc_data.line(Cur), "Duplicate interconnect name: '%s' in mode: '%s'.\n", - mode->interconnect[i].name, mode->name); + mode->interconnect[interconnect_idx].name, mode->name); } /* Process delay and capacitance annotations */ - num_annotations = 0; - num_delay_constant = count_children(Cur, "delay_constant", loc_data, ReqOpt::OPTIONAL); - num_delay_matrix = count_children(Cur, "delay_matrix", loc_data, ReqOpt::OPTIONAL); - num_C_constant = count_children(Cur, "C_constant", loc_data, ReqOpt::OPTIONAL); - num_C_matrix = count_children(Cur, "C_matrix", loc_data, ReqOpt::OPTIONAL); - num_pack_pattern = count_children(Cur, "pack_pattern", loc_data, ReqOpt::OPTIONAL); - num_annotations = num_delay_constant + num_delay_matrix - + num_C_constant + num_C_matrix + num_pack_pattern; - - mode->interconnect[i].annotations = (t_pin_to_pin_annotation*)vtr::calloc(num_annotations, + int num_annotations = 0; + for (auto annot_child_name : {"delay_constant", "delay_matrix", "C_constant", "C_matrix", "pack_pattern"}) { + num_annotations += count_children(Cur, annot_child_name, loc_data, ReqOpt::OPTIONAL); + } + + mode->interconnect[interconnect_idx].annotations = (t_pin_to_pin_annotation*)vtr::calloc(num_annotations, sizeof(t_pin_to_pin_annotation)); - mode->interconnect[i].num_annotations = num_annotations; - - k = 0; - for (j = 0; j < 5; j++) { - if (j == 0) { - Cur2 = get_first_child(Cur, "delay_constant", loc_data, ReqOpt::OPTIONAL); - } else if (j == 1) { - Cur2 = get_first_child(Cur, "delay_matrix", loc_data, ReqOpt::OPTIONAL); - } else if (j == 2) { - Cur2 = get_first_child(Cur, "C_constant", loc_data, ReqOpt::OPTIONAL); - } else if (j == 3) { - Cur2 = get_first_child(Cur, "C_matrix", loc_data, ReqOpt::OPTIONAL); - } else if (j == 4) { - Cur2 = get_first_child(Cur, "pack_pattern", loc_data, ReqOpt::OPTIONAL); - } + mode->interconnect[interconnect_idx].num_annotations = num_annotations; + + + int annotation_idx = 0; + for (auto annot_child_name : {"delay_constant", "delay_matrix", "C_constant", "C_matrix", "pack_pattern"}) { + pugi::xml_node Cur2 = get_first_child(Cur, annot_child_name, loc_data, ReqOpt::OPTIONAL); + while (Cur2 != nullptr) { ProcessPinToPinAnnotations(Cur2, - &(mode->interconnect[i].annotations[k]), nullptr, loc_data); + &(mode->interconnect[interconnect_idx].annotations[annotation_idx]), nullptr, loc_data); /* get next iteration */ - k++; + annotation_idx++; Cur2 = Cur2.next_sibling(Cur2.name()); } } - VTR_ASSERT(k == num_annotations); + VTR_ASSERT(annotation_idx == num_annotations); /* Power */ - mode->interconnect[i].interconnect_power = (t_interconnect_power*)vtr::calloc(1, + mode->interconnect[interconnect_idx].interconnect_power = (t_interconnect_power*)vtr::calloc(1, sizeof(t_interconnect_power)); - mode->interconnect[i].interconnect_power->port_info_initialized = false; + mode->interconnect[interconnect_idx].interconnect_power->port_info_initialized = false; /* get next iteration */ Cur = Cur.next_sibling(Cur.name()); - i++; + interconnect_idx++; } } - interc_names.clear(); - VTR_ASSERT(i == num_interconnect); + VTR_ASSERT(interconnect_idx == num_interconnect); } -static void ProcessMode(vtr::string_internment* strings, - pugi::xml_node Parent, +static void ProcessMode(pugi::xml_node Parent, t_mode* mode, const bool timing_enabled, const t_arch& arch, const pugiutil::loc_data& loc_data, int& parent_pb_idx) { - int i; const char* Prop; pugi::xml_node Cur; - std::map pb_type_names; - std::pair::iterator, bool> ret_pb_types; - bool implied_mode = 0 == strcmp(Parent.name(), "pb_type"); + bool implied_mode = (0 == strcmp(Parent.name(), "pb_type")); if (implied_mode) { mode->name = vtr::strdup("default"); } else { @@ -1937,7 +1957,7 @@ static void ProcessMode(vtr::string_internment* strings, mode->name = vtr::strdup(Prop); } - /* Parse XML about if this mode is disable for packing or not + /* Parse XML about if this mode is disabled for packing or not * By default, all the mode will be visible to packer */ mode->disable_packing = false; @@ -1951,7 +1971,7 @@ static void ProcessMode(vtr::string_internment* strings, /* Override if user specify */ mode->disable_packing = get_attribute(Parent, "disable_packing", loc_data, ReqOpt::OPTIONAL).as_bool(mode->disable_packing); - if (true == mode->disable_packing) { + if (mode->disable_packing) { VTR_LOG("mode '%s[%s]' is defined by user to be disabled in packing\n", mode->parent_pb_type->name, mode->name); @@ -1961,23 +1981,25 @@ static void ProcessMode(vtr::string_internment* strings, if (mode->num_pb_type_children > 0) { mode->pb_type_children = new t_pb_type[mode->num_pb_type_children]; - i = 0; + // used to find duplicate pb_type names + std::set pb_type_names; + + int pb_type_child_idx = 0; Cur = get_first_child(Parent, "pb_type", loc_data); while (Cur != nullptr) { if (0 == strcmp(Cur.name(), "pb_type")) { parent_pb_idx++; - ProcessPb_Type(strings, Cur, &mode->pb_type_children[i], mode, timing_enabled, arch, loc_data, parent_pb_idx); + ProcessPb_Type(Cur, &mode->pb_type_children[pb_type_child_idx], mode, timing_enabled, arch, loc_data, parent_pb_idx); - ret_pb_types = pb_type_names.insert( - std::pair(mode->pb_type_children[i].name, 0)); - if (!ret_pb_types.second) { + auto [_, success] = pb_type_names.insert(mode->pb_type_children[pb_type_child_idx].name); + if (!success) { archfpga_throw(loc_data.filename_c_str(), loc_data.line(Cur), "Duplicate pb_type name: '%s' in mode: '%s'.\n", - mode->pb_type_children[i].name, mode->name); + mode->pb_type_children[pb_type_child_idx].name, mode->name); } /* get next iteration */ - i++; + pb_type_child_idx++; Cur = Cur.next_sibling(Cur.name()); } } @@ -1991,17 +2013,16 @@ static void ProcessMode(vtr::string_internment* strings, if (!implied_mode) { // Implied mode metadata is attached to the pb_type, rather than // the t_mode object. - mode->meta = ProcessMetadata(strings, Parent, loc_data); + mode->meta = ProcessMetadata(arch.strings, Parent, loc_data); } - /* Clear STL map used for duplicate checks */ - pb_type_names.clear(); - Cur = get_single_child(Parent, "interconnect", loc_data); - ProcessInterconnect(strings, Cur, mode, loc_data); + ProcessInterconnect(arch.strings, Cur, mode, loc_data); } -static t_metadata_dict ProcessMetadata(vtr::string_internment* strings, pugi::xml_node Parent, const pugiutil::loc_data& loc_data) { +static t_metadata_dict ProcessMetadata(vtr::string_internment& strings, + pugi::xml_node Parent, + const pugiutil::loc_data& loc_data) { // // CLBLL_L_ // @@ -2013,8 +2034,8 @@ static t_metadata_dict ProcessMetadata(vtr::string_internment* strings, pugi::xm auto key = get_attribute(meta_tag, "name", loc_data).as_string(); auto value = meta_tag.child_value(); - data.add(strings->intern_string(vtr::string_view(key)), - strings->intern_string(vtr::string_view(value))); + data.add(strings.intern_string(vtr::string_view(key)), + strings.intern_string(vtr::string_view(value))); meta_tag = meta_tag.next_sibling(meta_tag.name()); } } @@ -2216,12 +2237,11 @@ static e_fc_value_type string_to_fc_value_type(const std::string& str, pugi::xml return fc_value_type; } -//Process any custom switchblock locations static void ProcessSwitchblockLocations(pugi::xml_node switchblock_locations, t_physical_tile_type* type, const t_arch& arch, const pugiutil::loc_data& loc_data) { - VTR_ASSERT(type); + VTR_ASSERT(type != nullptr); expect_only_attributes(switchblock_locations, {"pattern", "internal_switch"}, loc_data); @@ -2591,13 +2611,13 @@ static void ProcessLayout(pugi::xml_node layout_tag, t_arch* arch, const pugiuti VTR_ASSERT_MSG(auto_layout_cnt == 0 || auto_layout_cnt == 1, " may appear at most once"); for (auto layout_type_tag : layout_tag.children()) { - t_grid_def grid_def = ProcessGridLayout(&arch->strings, layout_type_tag, loc_data, arch, num_of_avail_layer); + t_grid_def grid_def = ProcessGridLayout(arch->strings, layout_type_tag, loc_data, arch, num_of_avail_layer); arch->grid_layouts.emplace_back(std::move(grid_def)); } } -static t_grid_def ProcessGridLayout(vtr::string_internment* strings, +static t_grid_def ProcessGridLayout(vtr::string_internment& strings, pugi::xml_node layout_type_tag, const pugiutil::loc_data& loc_data, t_arch* arch, @@ -2668,7 +2688,7 @@ static t_grid_def ProcessGridLayout(vtr::string_internment* strings, static void ProcessBlockTypeLocs(t_grid_def& grid_def, int die_number, - vtr::string_internment* strings, + vtr::string_internment& strings, pugi::xml_node layout_block_type_tag, const pugiutil::loc_data& loc_data) { //Process all the block location specifications @@ -2694,7 +2714,7 @@ static void ProcessBlockTypeLocs(t_grid_def& grid_def, right_edge.y.start_expr = "0"; right_edge.y.end_expr = "H - 1"; - t_grid_loc_def bottom_edge(type_name, priority); //Exclucing corners + t_grid_loc_def bottom_edge(type_name, priority); //Excluding corners bottom_edge.x.start_expr = "1"; bottom_edge.x.end_expr = "W - 2"; bottom_edge.y.start_expr = "0"; @@ -3078,12 +3098,12 @@ static void ProcessTiles(pugi::xml_node Node, t_arch& arch, const pugiutil::loc_data& loc_data, const int num_of_avail_layer) { - pugi::xml_node CurTileType; - pugi::xml_node Cur; - std::map tile_type_descriptors; - /* Alloc the type list. Need one additional t_type_desctiptors: - * 1: empty psuedo-type + // used to find duplicate tile names + std::set tile_type_descriptors; + + /* Alloc the type list. Need one additional t_type_descriptors: + * 1: empty pseudo-type */ t_physical_tile_type EMPTY_PHYSICAL_TILE_TYPE = get_empty_physical_type(); EMPTY_PHYSICAL_TILE_TYPE.index = 0; @@ -3092,7 +3112,7 @@ static void ProcessTiles(pugi::xml_node Node, /* Process the types */ int index = 1; /* Skip over 'empty' type */ - CurTileType = Node.first_child(); + pugi::xml_node CurTileType = Node.first_child(); while (CurTileType) { check_node(CurTileType, "tile", loc_data); @@ -3103,8 +3123,8 @@ static void ProcessTiles(pugi::xml_node Node, /* Parses the properties fields of the type */ ProcessTileProps(CurTileType, &PhysicalTileType, loc_data); - auto result = tile_type_descriptors.insert(std::pair(PhysicalTileType.name, 0)); - if (!result.second) { + auto [_, success] = tile_type_descriptors.insert(PhysicalTileType.name); + if (!success) { archfpga_throw(loc_data.filename_c_str(), loc_data.line(CurTileType), "Duplicate tile descriptor name: '%s'.\n", PhysicalTileType.name); } @@ -3121,7 +3141,7 @@ static void ProcessTiles(pugi::xml_node Node, } //Load switchblock type and location overrides - Cur = get_single_child(CurTileType, "switchblock_locations", loc_data, ReqOpt::OPTIONAL); + pugi::xml_node Cur = get_single_child(CurTileType, "switchblock_locations", loc_data, ReqOpt::OPTIONAL); ProcessSwitchblockLocations(Cur, &PhysicalTileType, arch, loc_data); ProcessSubTiles(CurTileType, &PhysicalTileType, LogicalBlockTypes, arch.Segments, arch_def_fc, loc_data, num_of_avail_layer); @@ -3135,7 +3155,6 @@ static void ProcessTiles(pugi::xml_node Node, /* Free this node and get its next sibling node */ CurTileType = CurTileType.next_sibling(CurTileType.name()); } - tile_type_descriptors.clear(); } static void MarkIoTypes(std::vector& PhysicalTileTypes) { @@ -3183,27 +3202,22 @@ static void ProcessTileProps(pugi::xml_node Node, static t_pin_counts ProcessSubTilePorts(pugi::xml_node Parent, t_sub_tile* SubTile, - std::unordered_map& tile_port_names, const pugiutil::loc_data& loc_data) { pugi::xml_node Cur; - std::map sub_tile_port_names; - - int num_ports, num_in_ports, num_out_ports, num_clock_ports; - - num_ports = num_in_ports = num_out_ports = num_clock_ports = 0; - num_in_ports = count_children(Parent, "input", loc_data, ReqOpt::OPTIONAL); - num_out_ports = count_children(Parent, "output", loc_data, ReqOpt::OPTIONAL); - num_clock_ports = count_children(Parent, "clock", loc_data, ReqOpt::OPTIONAL); - num_ports = num_in_ports + num_out_ports + num_clock_ports; + int num_ports = 0; + for (auto port_type : {"input", "output", "clock"}) { + num_ports += count_children(Parent, port_type, loc_data, ReqOpt::OPTIONAL); + } - int port_index_by_type; int port_index = 0; int absolute_first_pin_index = 0; - std::vector port_types = {"input", "output", "clock"}; - for (auto port_type : port_types) { - port_index_by_type = 0; + // used to find duplicate port names + std::set sub_tile_port_names; + + for (auto port_type : {"input", "output", "clock"}) { + int port_index_by_type = 0; Cur = get_first_child(Parent, port_type, loc_data, ReqOpt::OPTIONAL); while (Cur) { t_physical_tile_port port; @@ -3214,24 +3228,13 @@ static t_pin_counts ProcessSubTilePorts(pugi::xml_node Parent, ProcessTilePort(Cur, &port, loc_data); //Check port name duplicates - auto sub_tile_port_result = sub_tile_port_names.insert(std::pair(port.name, 0)); - if (!sub_tile_port_result.second) { + auto [_, subtile_success] = sub_tile_port_names.insert(port.name); + if (!subtile_success) { archfpga_throw(loc_data.filename_c_str(), loc_data.line(Cur), - "Duplicate port names in tile '%s': port '%s'\n", + "Duplicate port names in subtile '%s': port '%s'\n", SubTile->name, port.name); } - //Check port name duplicates - auto tile_port_result = tile_port_names.insert(std::pair(port.name, port)); - if (!tile_port_result.second) { - if (tile_port_result.first->second.num_pins != port.num_pins || tile_port_result.first->second.equivalent != port.equivalent) { - archfpga_throw(loc_data.filename_c_str(), loc_data.line(Cur), - "Another port found with the same name in other sub tiles " - "that did not match the current port settings. '%s': port '%s'\n", - SubTile->name, port.name); - } - } - //Push port SubTile->ports.push_back(port); @@ -3250,7 +3253,7 @@ static t_pin_counts ProcessSubTilePorts(pugi::xml_node Parent, /* Count stats on the number of each type of pin */ for (const auto& port : SubTile->ports) { - if (port.type == IN_PORT && port.is_clock == false) { + if (port.type == IN_PORT && !port.is_clock) { pin_counts.input += port.num_pins; } else if (port.type == OUT_PORT) { pin_counts.output += port.num_pins; @@ -3269,7 +3272,7 @@ static void ProcessTilePort(pugi::xml_node Node, std::vector expected_attributes = {"name", "num_pins", "equivalent"}; if (Node.name() == "input"s || Node.name() == "clock"s) { - expected_attributes.push_back("is_non_clock_global"); + expected_attributes.emplace_back("is_non_clock_global"); } expect_only_attributes(Node, expected_attributes, loc_data); @@ -3318,7 +3321,7 @@ static void ProcessTilePort(pugi::xml_node Node, port->type = IN_PORT; port->is_clock = true; - if (port->is_non_clock_global == true) { + if (port->is_non_clock_global) { archfpga_throw(loc_data.filename_c_str(), loc_data.line(Node), "Port %s cannot be both a clock and a non-clock simultaneously\n", Node.name()); @@ -3474,19 +3477,19 @@ static void ProcessPinLocations(pugi::xml_node Locations, Prop = get_attribute(Locations, "pattern", loc_data).value(); if (strcmp(Prop, "spread") == 0) { - distribution = E_SPREAD_PIN_DISTR; + distribution = e_pin_location_distr::SPREAD; } else if (strcmp(Prop, "perimeter") == 0) { - distribution = E_PERIMETER_PIN_DISTR; + distribution = e_pin_location_distr::PERIMETER; } else if (strcmp(Prop, "spread_inputs_perimeter_outputs") == 0) { - distribution = E_SPREAD_INPUTS_PERIMETER_OUTPUTS_PIN_DISTR; + distribution = e_pin_location_distr::SPREAD_INPUTS_PERIMETER_OUTPUTS; } else if (strcmp(Prop, "custom") == 0) { - distribution = E_CUSTOM_PIN_DISTR; + distribution = e_pin_location_distr::CUSTOM; } else { archfpga_throw(loc_data.filename_c_str(), loc_data.line(Locations), "%s is an invalid pin location pattern.\n", Prop); } } else { - distribution = E_SPREAD_PIN_DISTR; + distribution = e_pin_location_distr::SPREAD; Prop = "spread"; } @@ -3502,10 +3505,10 @@ static void ProcessPinLocations(pugi::xml_node Locations, pin_locs->set_distribution(); } - int sub_tile_index = SubTile->index; + const int sub_tile_index = SubTile->index; /* Load the pin locations */ - if (distribution == E_CUSTOM_PIN_DISTR) { + if (distribution == e_pin_location_distr::CUSTOM) { expect_only_children(Locations, {"loc"}, loc_data); Cur = Locations.first_child(); //check for duplications ([0..3][0..type->width-1][0..type->height-1][0..num_of_avail_layer-1]) @@ -3568,7 +3571,7 @@ static void ProcessPinLocations(pugi::xml_node Locations, if (Count > 0) { for (int pin = 0; pin < Count; ++pin) { /* Store location assignment */ - pin_locs->assignments[sub_tile_index][x_offset][y_offset][std::abs(layer_offset)][side].push_back(std::string(Tokens[pin].c_str())); + pin_locs->assignments[sub_tile_index][x_offset][y_offset][std::abs(layer_offset)][side].emplace_back(Tokens[pin].c_str()); /* Advance through list of pins in this location */ } } @@ -3583,7 +3586,7 @@ static void ProcessPinLocations(pugi::xml_node Locations, for (int w = 0; w < PhysicalTileType->width; ++w) { for (int h = 0; h < PhysicalTileType->height; ++h) { for (e_side side : {TOP, RIGHT, BOTTOM, LEFT}) { - for (auto token : pin_locs->assignments[sub_tile_index][w][h][l][side]) { + for (const auto& token : pin_locs->assignments[sub_tile_index][w][h][l][side]) { InstPort inst_port(token.c_str()); //A pin specification should contain only the block name, and not any instance count information @@ -3679,15 +3682,12 @@ static void ProcessSubTiles(pugi::xml_node Node, const int num_of_avail_layer) { pugi::xml_node CurSubTile; pugi::xml_node Cur; - int index = 0; unsigned long int num_sub_tiles = count_children(Node, "sub_tile", loc_data); unsigned long int width = PhysicalTileType->width; unsigned long int height = PhysicalTileType->height; unsigned long int num_sides = 4; - std::map sub_tile_names; - t_pin_locs pin_locs; pin_locs.assignments.resize({num_sub_tiles, width, height, (unsigned long int)num_of_avail_layer, num_sides}); @@ -3698,12 +3698,18 @@ static void ProcessSubTiles(pugi::xml_node Node, PhysicalTileType->name); } + // used to find duplicate subtile names + std::set sub_tile_names; + + // used to assign indices to subtiles + int subtile_index = 0; + CurSubTile = get_first_child(Node, "sub_tile", loc_data); while (CurSubTile) { t_sub_tile SubTile; - SubTile.index = index; + SubTile.index = subtile_index; expect_only_attributes(CurSubTile, {"name", "capacity"}, loc_data); @@ -3711,8 +3717,8 @@ static void ProcessSubTiles(pugi::xml_node Node, auto name = vtr::strdup(get_attribute(CurSubTile, "name", loc_data).value()); //Check Sub Tile name duplicates - auto result = sub_tile_names.insert(std::pair(std::string(name), 0)); - if (!result.second) { + auto [_, success] = sub_tile_names.insert(name); + if (!success) { archfpga_throw(loc_data.filename_c_str(), loc_data.line(Cur), "Duplicate Sub Tile names in tile '%s': Sub Tile'%s'\n", PhysicalTileType->name, name); @@ -3726,8 +3732,7 @@ static void ProcessSubTiles(pugi::xml_node Node, PhysicalTileType->capacity += capacity; /* Process sub tile port definitions */ - std::unordered_map tile_port_names; - auto pin_counts = ProcessSubTilePorts(CurSubTile, &SubTile, tile_port_names, loc_data); + const auto pin_counts = ProcessSubTilePorts(CurSubTile, &SubTile, loc_data); /* Map Sub Tile physical pins with the Physical Tile Type physical pins. * This takes into account the capacity of each sub tiles to add the correct offset. @@ -3756,13 +3761,13 @@ static void ProcessSubTiles(pugi::xml_node Node, Cur = get_single_child(CurSubTile, "fc", loc_data, ReqOpt::OPTIONAL); Process_Fc(Cur, PhysicalTileType, &SubTile, pin_counts, segments, arch_def_fc, loc_data); - //Load equivalent sites infromation + //Load equivalent sites information Cur = get_single_child(CurSubTile, "equivalent_sites", loc_data, ReqOpt::REQUIRED); ProcessTileEquivalentSites(Cur, &SubTile, PhysicalTileType, LogicalBlockTypes, loc_data); PhysicalTileType->sub_tiles.push_back(SubTile); - index++; + subtile_index++; CurSubTile = CurSubTile.next_sibling(CurSubTile.name()); } @@ -3777,13 +3782,19 @@ static void ProcessSubTiles(pugi::xml_node Node, /* Takes in node pointing to and loads all the * child type objects. */ -static void ProcessComplexBlocks(vtr::string_internment* strings, pugi::xml_node Node, std::vector& LogicalBlockTypes, t_arch& arch, const bool timing_enabled, const pugiutil::loc_data& loc_data) { +static void ProcessComplexBlocks(pugi::xml_node Node, + std::vector& LogicalBlockTypes, + const t_arch& arch, + const bool timing_enabled, + const pugiutil::loc_data& loc_data) { pugi::xml_node CurBlockType; pugi::xml_node Cur; - std::map pb_type_descriptors; - /* Alloc the type list. Need one additional t_type_desctiptors: - * 1: empty psuedo-type + // used to find duplicate pb_types names + std::set pb_type_descriptors; + + /* Alloc the type list. Need one additional t_type_descriptors: + * 1: empty pseudo-type */ t_logical_block_type EMPTY_LOGICAL_BLOCK_TYPE = get_empty_logical_type(); EMPTY_LOGICAL_BLOCK_TYPE.index = 0; @@ -3806,8 +3817,8 @@ static void ProcessComplexBlocks(vtr::string_internment* strings, pugi::xml_node auto Prop = get_attribute(CurBlockType, "name", loc_data).value(); LogicalBlockType.name = vtr::strdup(Prop); - auto result = pb_type_descriptors.insert(std::pair(LogicalBlockType.name, 0)); - if (!result.second) { + auto [_, success] = pb_type_descriptors.insert(LogicalBlockType.name); + if (!success) { archfpga_throw(loc_data.filename_c_str(), loc_data.line(CurBlockType), "Duplicate pb_type descriptor name: '%s'.\n", LogicalBlockType.name); } @@ -3815,7 +3826,7 @@ static void ProcessComplexBlocks(vtr::string_internment* strings, pugi::xml_node /* Load pb_type info to assign to the Logical Block Type */ LogicalBlockType.pb_type = new t_pb_type; LogicalBlockType.pb_type->name = vtr::strdup(LogicalBlockType.name); - ProcessPb_Type(strings, CurBlockType, LogicalBlockType.pb_type, nullptr, timing_enabled, arch, loc_data, pb_type_idx); + ProcessPb_Type(CurBlockType, LogicalBlockType.pb_type, nullptr, timing_enabled, arch, loc_data, pb_type_idx); LogicalBlockType.index = index; @@ -3828,7 +3839,6 @@ static void ProcessComplexBlocks(vtr::string_internment* strings, pugi::xml_node /* Free this node and get its next sibling node */ CurBlockType = CurBlockType.next_sibling(CurBlockType.name()); } - pb_type_descriptors.clear(); } static void ProcessSegments(pugi::xml_node Parent, @@ -3922,6 +3932,18 @@ static void ProcessSegments(pugi::xml_node Parent, y_axis_seg_found = true; } + /*Get segment resource type*/ + tmp = get_attribute(Node, "res_type", loc_data, ReqOpt::OPTIONAL).as_string(nullptr); + + if (tmp) { + auto it = std::find(RES_TYPE_STRING.begin(), RES_TYPE_STRING.end(), tmp); + if (it != RES_TYPE_STRING.end()) { + Segs[i].res_type = static_cast(std::distance(RES_TYPE_STRING.begin(), it)); + } else { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(Node), "Unsopported segment res_type: %s\n", tmp); + } + } + /* Get Power info */ /* * (*Segs)[i].Cmetal_per_m = get_attribute(Node, "Cmetal_per_m", false, @@ -4949,228 +4971,6 @@ static void ProcessClocks(pugi::xml_node Parent, t_clock_arch* clocks, const pug Node = Node.next_sibling(Node.name()); } } -/* - * Get the NoC design - */ -static void ProcessNoc(pugi::xml_node noc_tag, t_arch* arch, const pugiutil::loc_data& loc_data) { - // a vector representing all the possible attributes within the noc tag - std::vector expected_noc_attributes = {"link_bandwidth", "link_latency", "router_latency", "noc_router_tile_name"}; - - std::vector expected_noc_children_tags = {"mesh", "topology"}; - - pugi::xml_node noc_topology; - pugi::xml_node noc_mesh_topology; - - // identifier that lets us know when we could not properly convert a string conversion value - std::string attribute_conversion_failure_string = ""; - - // if we are here, then the user has a NoC in their architecture, so need to add it - arch->noc = new t_noc_inf; - t_noc_inf* noc_ref = arch->noc; - - /* process the noc attributes first */ - - // quick error check to make sure that we dont have unexpected attributes - pugiutil::expect_only_attributes(noc_tag, expected_noc_attributes, loc_data); - - // now go through and parse the required attributes for noc tag - - // variables below temporarily store the attribute values as string - // this is so that scientific notation can be used for these attributes - std::string link_bandwidth_intermediate_val; - std::string router_latency_intermediate_val; - std::string link_latency_intermediate_val; - - link_bandwidth_intermediate_val = pugiutil::get_attribute(noc_tag, "link_bandwidth", loc_data, pugiutil::REQUIRED).as_string(); - noc_ref->link_bandwidth = std::atof(link_bandwidth_intermediate_val.c_str()); - - link_latency_intermediate_val = pugiutil::get_attribute(noc_tag, "link_latency", loc_data, pugiutil::REQUIRED).as_string(); - noc_ref->link_latency = std::atof(link_latency_intermediate_val.c_str()); - - router_latency_intermediate_val = pugiutil::get_attribute(noc_tag, "router_latency", loc_data, pugiutil::REQUIRED).as_string(); - noc_ref->router_latency = std::atof(router_latency_intermediate_val.c_str()); - - noc_ref->noc_router_tile_name = pugiutil::get_attribute(noc_tag, "noc_router_tile_name", loc_data, pugiutil::REQUIRED).as_string(); - - // the noc parameters can only be non-zero positive values - if ((noc_ref->link_bandwidth <= 0.) || (noc_ref->link_latency <= 0.) || (noc_ref->router_latency <= 0.)) { - archfpga_throw(loc_data.filename_c_str(), loc_data.line(noc_tag), - "The link bandwidth, link latency and router latency for the NoC must be a positive non-zero value."); - } - - // check that the router tile name was supplied properly - if (!(noc_ref->noc_router_tile_name.compare(attribute_conversion_failure_string))) { - archfpga_throw(loc_data.filename_c_str(), loc_data.line(noc_tag), - "The noc router tile name must be a string."); - } - - /* We processed the NoC node, so now process the topology*/ - - // make sure that only the topology tag is found under NoC - pugiutil::expect_only_children(noc_tag, expected_noc_children_tags, loc_data); - - noc_mesh_topology = pugiutil::get_single_child(noc_tag, "mesh", loc_data, pugiutil::OPTIONAL); - - // we cannot check for errors related to number of routers and as well as whether a router is out of bounds (this will be done later) - // the chip still needs to be sized - - if (noc_mesh_topology) { - processMeshTopology(noc_mesh_topology, loc_data, noc_ref); - } else { - noc_topology = pugiutil::get_single_child(noc_tag, "topology", loc_data, pugiutil::REQUIRED); - - processTopology(noc_topology, loc_data, noc_ref); - } - - return; -} - -/* - * A NoC mesh is created based on the user supplied size and region location. - */ -static void processMeshTopology(pugi::xml_node mesh_topology_tag, const pugiutil::loc_data& loc_data, t_noc_inf* noc_ref) { - // noc mesh topology properties - double mesh_region_start_x = 0; - double mesh_region_end_x = 0; - double mesh_region_start_y = 0; - double mesh_region_end_y = 0; - int mesh_size = 0; - - // identifier that lets us know when we could not properly convert an attribute value to a integer - int attribute_conversion_failure = -1; - - // a list of attrbutes that should be found for the mesh tag - std::vector expected_router_attributes = {"startx", "endx", "starty", "endy", "size"}; - - // verify that only the acceptable attributes were supplied - pugiutil::expect_only_attributes(mesh_topology_tag, expected_router_attributes, loc_data); - - // go through the attributes and store their values - mesh_region_start_x = pugiutil::get_attribute(mesh_topology_tag, "startx", loc_data, pugiutil::REQUIRED).as_double(attribute_conversion_failure); - - mesh_region_end_x = pugiutil::get_attribute(mesh_topology_tag, "endx", loc_data, pugiutil::REQUIRED).as_double(attribute_conversion_failure); - - mesh_region_start_y = pugiutil::get_attribute(mesh_topology_tag, "starty", loc_data, pugiutil::REQUIRED).as_double(attribute_conversion_failure); - - mesh_region_end_y = pugiutil::get_attribute(mesh_topology_tag, "endy", loc_data, pugiutil::REQUIRED).as_double(attribute_conversion_failure); - - mesh_size = pugiutil::get_attribute(mesh_topology_tag, "size", loc_data, pugiutil::REQUIRED).as_int(attribute_conversion_failure); - - // verify that the attrbiutes provided were legal - if ((mesh_region_start_x < 0) || (mesh_region_end_x < 0) || (mesh_region_start_y < 0) || (mesh_region_end_y < 0) || (mesh_size < 0)) { - archfpga_throw(loc_data.filename_c_str(), loc_data.line(mesh_topology_tag), - "The parameters for the mesh topology have to be positive values."); - } - - // now create the mesh topology for the noc - // create routers, make connections and detertmine positions - generate_noc_mesh(mesh_topology_tag, loc_data, noc_ref, mesh_region_start_x, mesh_region_end_x, mesh_region_start_y, mesh_region_end_y, mesh_size); - - return; -} - -/* - * Go through each router in the NoC and store the list of routers that connect to it. - */ -static void processTopology(pugi::xml_node topology_tag, const pugiutil::loc_data& loc_data, t_noc_inf* noc_ref) { - // The topology tag should have no attributes, check that - pugiutil::expect_only_attributes(topology_tag, {}, loc_data); - - /** - * Stores router information that includes the number of connections a router has within a given topology and also the number of times a router was declared in the arch file using the tag. - * In the datastructure below, the router id is the key and the stored data is a pair, where the first element describes the number of router declarations and the second element describes the number of router connections. - * This is used only for error checking. - */ - std::map> routers_in_arch_info; - - /* Now go through the children tags of topology, which is basically - * each router found within the NoC - */ - for (pugi::xml_node router : topology_tag.children()) { - // we can only have router tags within the topology - if (router.name() != std::string("router")) { - bad_tag(router, loc_data, topology_tag, {"router"}); - } else { - // curent tag is a valid router, so process it - processRouter(router, loc_data, noc_ref, routers_in_arch_info); - } - } - - // check whether any routers were supplied - if (noc_ref->router_list.size() == 0) { - archfpga_throw(loc_data.filename_c_str(), loc_data.line(topology_tag), - "No routers were supplied for the NoC."); - } - - // check that the topology of the noc was correctly described in the arch file - verify_noc_topology(routers_in_arch_info); - - return; -} - -/* - * Store the properties of a single router and then store the list of routers that connect to it. - */ -static void processRouter(pugi::xml_node router_tag, const pugiutil::loc_data& loc_data, t_noc_inf* noc_ref, std::map>& routers_in_arch_info) { - // identifier that lets us know when we could not properly convert an attribute value to a integer - int attribute_conversion_failure = -1; - - // an accepted list of attributes for the router tag - std::vector expected_router_attributes = {"id", "positionx", "positiony", "connections"}; - - // variable to store current router info - t_router router_info; - - // router connection list attribute information - std::string router_connection_list_attribute_value; - - // lets us know if there was an error processing the router connection list - bool router_connection_list_result = true; - - // check that only the accepted router attributes are found in the tag - pugiutil::expect_only_attributes(router_tag, expected_router_attributes, loc_data); - - // store the router information from the attributes - router_info.id = pugiutil::get_attribute(router_tag, "id", loc_data, pugiutil::REQUIRED).as_int(attribute_conversion_failure); - - router_info.device_x_position = pugiutil::get_attribute(router_tag, "positionx", loc_data, pugiutil::REQUIRED).as_double(attribute_conversion_failure); - - router_info.device_y_position = pugiutil::get_attribute(router_tag, "positiony", loc_data, pugiutil::REQUIRED).as_double(attribute_conversion_failure); - - // verify whether the attribute information was legal - if ((router_info.id < 0) || (router_info.device_x_position < 0) || (router_info.device_y_position < 0)) { - archfpga_throw(loc_data.filename_c_str(), loc_data.line(router_tag), - "The router id, and position (x & y) for the router must be a positive number."); - } - - // get the current router connection list - router_connection_list_attribute_value.assign(pugiutil::get_attribute(router_tag, "connections", loc_data, pugiutil::REQUIRED).as_string()); - - // if the connections attrbiute was not provided or it was empty, then we don't process it and throw a warning - - if (router_connection_list_attribute_value.compare("") != 0) { - // process the router connection list - router_connection_list_result = parse_noc_router_connection_list(router_tag, loc_data, router_info.id, router_info.connection_list, router_connection_list_attribute_value, routers_in_arch_info); - - // check if the user provided a legal router connection list - if (!router_connection_list_result) { - archfpga_throw(loc_data.filename_c_str(), loc_data.line(router_tag), - "The 'connections' attribute for the router must be a list of integers seperated by spaces, where each integer represents a router id that the current router is connected to."); - } - - } else { - VTR_LOGF_WARN(loc_data.filename_c_str(), loc_data.line(router_tag), - "The router with id:%d either has an empty 'connections' attrtibute or does not have any associated connections to other routers in the NoC.\n", router_info.id); - } - - // at this point the current router information was completely legal, so we store the newly created router within the noc - noc_ref->router_list.push_back(router_info); - - // update the number of declarations info for the current router (since we just finished processing one tag) - update_router_info_in_arch(router_info.id, false, routers_in_arch_info); - - return; -} std::string inst_port_to_port_name(std::string inst_port) { auto pos = inst_port.find('.'); @@ -5194,7 +4994,7 @@ static bool attribute_to_bool(const pugi::xml_node node, return false; } -int find_switch_by_name(const t_arch& arch, std::string switch_name) { +static int find_switch_by_name(const t_arch& arch, const std::string& switch_name) { for (int iswitch = 0; iswitch < arch.num_switches; ++iswitch) { const t_arch_switch_inf& arch_switch = arch.Switches[iswitch]; if (arch_switch.name == switch_name) { @@ -5205,7 +5005,7 @@ int find_switch_by_name(const t_arch& arch, std::string switch_name) { return OPEN; } -e_side string_to_side(std::string side_str) { +e_side string_to_side(const std::string& side_str) { e_side side = NUM_SIDES; if (side_str.empty()) { side = NUM_SIDES; diff --git a/libs/libarchfpga/src/read_xml_arch_file.h b/libs/libarchfpga/src/read_xml_arch_file.h index 5021d031716..b6763493a4c 100644 --- a/libs/libarchfpga/src/read_xml_arch_file.h +++ b/libs/libarchfpga/src/read_xml_arch_file.h @@ -9,8 +9,6 @@ extern "C" { /* special type indexes, necessary for initialization, everything afterwards * should use the pointers to these type indices*/ - -#define NUM_MODELS_IN_LIBRARY 4 #define EMPTY_TYPE_INDEX 0 /* function declarations */ diff --git a/libs/libarchfpga/src/read_xml_arch_file_noc_tag.cpp b/libs/libarchfpga/src/read_xml_arch_file_noc_tag.cpp new file mode 100644 index 00000000000..84fbb1226d0 --- /dev/null +++ b/libs/libarchfpga/src/read_xml_arch_file_noc_tag.cpp @@ -0,0 +1,673 @@ + +#include "read_xml_arch_file_noc_tag.h" + +#include "read_xml_util.h" +#include "pugixml_util.hpp" +#include "vtr_log.h" +#include "arch_error.h" + +/** + * @brief Process the tag under tag. + * + * Using tag, the user can specify a custom + * topology. + * + * @param topology_tag An XML node pointing to a tag. + * @param loc_data Points to the location in the xml file where the parser is reading. + * @param noc_ref To be filled with NoC router locations and their connectivity. + */ +static void process_topology(pugi::xml_node topology_tag, + const pugiutil::loc_data& loc_data, + t_noc_inf* noc_ref); + +/** + * @brief Process a tag under a tag. + * + * A tag contains multiple tags. Each tag has + * attributes that specify its location and connectivity to other NoC routers. + * + * @param router_tag An XML node pointing to a tag. + * @param loc_data Points to the location in the xml file where the parser is reading. + * @param noc_ref To be filled with the given router's location and connectivity information. + * @param routers_in_arch_info Stores router information that includes the number of connections + * a router has within a given topology and also the number of times a router was declared + * in the arch file using the tag. [router_id, [n_declarations, n_connections]] + */ +static void process_router(pugi::xml_node router_tag, + const pugiutil::loc_data& loc_data, + t_noc_inf* noc_ref, + std::map>& routers_in_arch_info); + +/** + * @brief Processes the tag under tag. + * + * Using the tag, the user can describe a NoC with + * mesh topology. + * + * @param mesh_topology_tag An XML tag pointing to a tag. + * @param loc_data Points to the location in the xml file where the parser is reading. + * @param noc_ref To be filled with NoC router locations and their connectivity. + */ +static void process_mesh_topology(pugi::xml_node mesh_topology_tag, + const pugiutil::loc_data& loc_data, t_noc_inf* noc_ref); + + +/** + * Create routers and set their properties so that a mesh grid of routers is created. + * Then connect the routers together so that a mesh topology is created. + * + * @param mesh_topology_tag An XML tag pointing to a tag. + * @param loc_data Points to the location in the xml file where the parser is reading. + * @param noc_ref To be filled with NoC router locations and their connectivity. + * @param mesh_region_start_x The location the bottom left NoC router on the X-axis. + * @param mesh_region_end_x The location the top right NoC router on the X-axis. + * @param mesh_region_start_y The location the bottom left NoC router on the Y-axis. + * @param mesh_region_end_y The location the top right NoC router on the Y-axis. + * @param mesh_size The number of NoC routers in each row or column. + */ +static void generate_noc_mesh(pugi::xml_node mesh_topology_tag, + const pugiutil::loc_data& loc_data, + t_noc_inf* noc_ref, + double mesh_region_start_x, double mesh_region_end_x, + double mesh_region_start_y, double mesh_region_end_y, + int mesh_size); + +/** + * @brief Verify each router in the noc by checking whether they satisfy the following conditions: + * - The router has only one declaration in the arch file + * - The router has at least one connection to another router + * If any of the conditions above are not met, then an error is thrown. + * + * @param routers_in_arch_info Stores router information that includes the number of connections + * a router has within a given topology and also the number of times a router was declared + * in the arch file using the tag. [router_id, [n_declarations, n_connections]] + */ +static void verify_noc_topology(const std::map>& routers_in_arch_info); + +/** + * @brief Parses the connections field in tag under tag. + * The user provides the list of routers any given router is connected to + * by the router ids seperated by spaces. For example: + * connections="1 2 3 4 5" + * Go through the connections here and store them. Also make sure the list is legal. + * + * @param router_tag An XML node referring to a tag. + * @param loc_data Points to the location in the xml file where the parser is reading. + * @param router_id The id field of the given tag. + * @param connection_list Parsed connections of the given . To be filled by this + * function. + * @param connection_list_attribute_value Raw connections field of the given . + * @param routers_in_arch_info Stores router information that includes the number of connections + * a router has within a given topology and also the number of times a router was declared + * in the arch file using the tag. [router_id, [n_declarations, n_connections]] + * + * @return True if parsing the connection list was successful. + */ +static bool parse_noc_router_connection_list(pugi::xml_node router_tag, + const pugiutil::loc_data& loc_data, + int router_id, + std::vector& connection_list, + const std::string& connection_list_attribute_value, + std::map>& routers_in_arch_info); + +/** + * @brief Each router needs a separate tag in the architecture description file + * to declare it. The number of declarations for each router in the + * architecture file is updated here. Additionally, for any given topology, + * a router can connect to other routers. The number of connections for each router + * is also updated here. + * + * @param router_id The identifier of the router whose information needs to be updated. + * @param router_updated_as_a_connection Indicated whether the router id was seen in the + * connections field of a tag. + * @param routers_in_arch_info Stores router information that includes the number of connections + * a router has within a given topology and also the number of times a router was declared + * in the arch file using the tag. [router_id, [n_declarations, n_connections]] + */ +static void update_router_info_in_arch(int router_id, + bool router_updated_as_a_connection, + std::map>& routers_in_arch_info); + +/** + * @brief Process tag under tag. + * + * The user can override the default latency and bandwidth values + * for specific NoC routers and links using and + * tags under tag. + * + * @param noc_overrides_tag An XML node pointing to a tag. + * @param loc_data Points to the location in the xml file where the parser is reading. + * @param noc_ref To be filled with parsed overridden latencies and bandwidths. + */ +static void process_noc_overrides(pugi::xml_node noc_overrides_tag, + const pugiutil::loc_data& loc_data, + t_noc_inf& noc_ref); + +void process_noc_tag(pugi::xml_node noc_tag, + t_arch* arch, + const pugiutil::loc_data& loc_data) { + // a vector representing all the possible attributes within the noc tag + const std::vector expected_noc_attributes = {"link_bandwidth", "link_latency", "router_latency", "noc_router_tile_name"}; + + const std::vector expected_noc_children_tags = {"mesh", "topology"}; + + + // identifier that lets us know when we could not properly convert a string conversion value + std::string attribute_conversion_failure_string; + + // if we are here, then the user has a NoC in their architecture, so need to add it + arch->noc = new t_noc_inf; + t_noc_inf* noc_ref = arch->noc; + + /* process the noc attributes first */ + + // quick error check to make sure that we don't have unexpected attributes + pugiutil::expect_only_attributes(noc_tag, expected_noc_attributes, loc_data); + + // now go through and parse the required attributes for noc tag + + // variables below temporarily store the attribute values as string + // this is so that scientific notation can be used for these attributes + + auto link_bandwidth_intermediate_val = pugiutil::get_attribute(noc_tag, "link_bandwidth", loc_data, pugiutil::REQUIRED).as_string(); + noc_ref->link_bandwidth = std::atof(link_bandwidth_intermediate_val); + + auto link_latency_intermediate_val = pugiutil::get_attribute(noc_tag, "link_latency", loc_data, pugiutil::REQUIRED).as_string(); + noc_ref->link_latency = std::atof(link_latency_intermediate_val); + + auto router_latency_intermediate_val = pugiutil::get_attribute(noc_tag, "router_latency", loc_data, pugiutil::REQUIRED).as_string(); + noc_ref->router_latency = std::atof(router_latency_intermediate_val); + + noc_ref->noc_router_tile_name = pugiutil::get_attribute(noc_tag, "noc_router_tile_name", loc_data, pugiutil::REQUIRED).as_string(); + + // the noc parameters can only be non-zero positive values + if ((noc_ref->link_bandwidth <= 0.) || (noc_ref->link_latency <= 0.) || (noc_ref->router_latency <= 0.)) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(noc_tag), + "The link bandwidth, link latency and router latency for the NoC must be a positive non-zero value."); + } + + // check that the router tile name was supplied properly + if (!(noc_ref->noc_router_tile_name.compare(attribute_conversion_failure_string))) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(noc_tag), + "The noc router tile name must be a string."); + } + + /* We processed the NoC node, so now process the topology*/ + + // make sure that only the topology tag is found under NoC + pugiutil::expect_only_children(noc_tag, expected_noc_children_tags, loc_data); + + pugi::xml_node noc_mesh_topology = pugiutil::get_single_child(noc_tag, "mesh", loc_data, pugiutil::OPTIONAL); + + // we cannot check for errors related to number of routers and as well as whether a router is out of bounds (this will be done later) + // the chip still needs to be sized + + if (noc_mesh_topology) { + process_mesh_topology(noc_mesh_topology, loc_data, noc_ref); + } else { + pugi::xml_node noc_topology = pugiutil::get_single_child(noc_tag, "topology", loc_data, pugiutil::REQUIRED); + + process_topology(noc_topology, loc_data, noc_ref); + } + + pugi::xml_node noc_overrides = pugiutil::get_single_child(noc_tag, "overrides", loc_data, pugiutil::OPTIONAL); + if (noc_overrides) { + process_noc_overrides(noc_overrides, loc_data, *noc_ref); + } +} + +/* + * A NoC mesh is created based on the user supplied size and region location. + */ +static void process_mesh_topology(pugi::xml_node mesh_topology_tag, + const pugiutil::loc_data& loc_data, + t_noc_inf* noc_ref) { + + // identifier that lets us know when we could not properly convert an attribute value to a number + constexpr int ATTRIBUTE_CONVERSION_FAILURE = -1; + + // a list of attributes that should be found for the mesh tag + std::vector expected_router_attributes = {"startx", "endx", "starty", "endy", "size"}; + + // verify that only the acceptable attributes were supplied + pugiutil::expect_only_attributes(mesh_topology_tag, expected_router_attributes, loc_data); + + // go through the attributes and store their values + double mesh_region_start_x = pugiutil::get_attribute(mesh_topology_tag, "startx", loc_data, pugiutil::REQUIRED).as_double(ATTRIBUTE_CONVERSION_FAILURE); + double mesh_region_end_x = pugiutil::get_attribute(mesh_topology_tag, "endx", loc_data, pugiutil::REQUIRED).as_double(ATTRIBUTE_CONVERSION_FAILURE); + double mesh_region_start_y = pugiutil::get_attribute(mesh_topology_tag, "starty", loc_data, pugiutil::REQUIRED).as_double(ATTRIBUTE_CONVERSION_FAILURE); + double mesh_region_end_y = pugiutil::get_attribute(mesh_topology_tag, "endy", loc_data, pugiutil::REQUIRED).as_double(ATTRIBUTE_CONVERSION_FAILURE); + + int mesh_size = pugiutil::get_attribute(mesh_topology_tag, "size", loc_data, pugiutil::REQUIRED).as_int(ATTRIBUTE_CONVERSION_FAILURE); + + // verify that the attributes provided were legal + if ((mesh_region_start_x < 0) || (mesh_region_end_x < 0) || (mesh_region_start_y < 0) || (mesh_region_end_y < 0) || (mesh_size < 0)) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(mesh_topology_tag), + "The parameters for the mesh topology have to be positive values."); + } + + // now create the mesh topology for the noc + // create routers, make connections and determine positions + generate_noc_mesh(mesh_topology_tag, loc_data, noc_ref, mesh_region_start_x, mesh_region_end_x, mesh_region_start_y, mesh_region_end_y, mesh_size); +} + +static void generate_noc_mesh(pugi::xml_node mesh_topology_tag, + const pugiutil::loc_data& loc_data, + t_noc_inf* noc_ref, + double mesh_region_start_x, double mesh_region_end_x, + double mesh_region_start_y, double mesh_region_end_y, + int mesh_size) { + // check that the mesh size of the router is not 0 + if (mesh_size == 0) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(mesh_topology_tag), + "The NoC mesh size cannot be 0."); + } + + // calculating the vertical and horizontal distances between routers in the supplied region + // we decrease the mesh size by 1 when calculating the spacing so that the first and + // last routers of each row or column are positioned on the mesh boundary + /* + * For example: + * - If we had a mesh size of 3, then using 3 would result in a spacing that would result in + * one router positions being placed in either the start of the region or end of the region. + * This is because the distance calculation resulted in having 3 spaces between the ends of the region + * + * start end + *** *** *** *** + * + * - if we instead used 2 in the distance calculation, the resulting positions would result in + * having 2 routers positioned on the start and end of the region. + * This is beacuse we now specified 2 spaces between the region and this allows us to place 2 routers + * on the regions edges and one router in the center. + * + * start end + *** *** *** + * + * THe reasoning for this is to reduce the number of calculated router positions. + */ + double vertical_router_separation = (mesh_region_end_y - mesh_region_start_y) / (mesh_size - 1); + double horizontal_router_separation = (mesh_region_end_x - mesh_region_start_x) / (mesh_size - 1); + + t_router temp_router; + + // improper region check + if ((vertical_router_separation <= 0) || (horizontal_router_separation <= 0)) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(mesh_topology_tag), + "The NoC region is invalid."); + } + + // create routers and their connections + // start with router id 0 (bottom left of the chip) to the maximum router id (top right of the chip) + for (int j = 0; j < mesh_size; j++) { + for (int i = 0; i < mesh_size; i++) { + // assign router id + temp_router.id = (mesh_size * j) + i; + + // calculate router position + /* The first and last router of each column or row will be located on the mesh region boundary, + * the remaining routers will be placed within the region and seperated from other routers + * using the distance calculated previously. + */ + temp_router.device_x_position = (i * horizontal_router_separation) + mesh_region_start_x; + temp_router.device_y_position = (j * vertical_router_separation) + mesh_region_start_y; + + // assign connections + // check if there is a router to the left + if ((i - 1) >= 0) { + // add the left router as a connection + temp_router.connection_list.push_back((mesh_size * j) + i - 1); + } + + // check if there is a router to the top + if ((j + 1) <= (mesh_size - 1)) { + // add the top router as a connection + temp_router.connection_list.push_back((mesh_size * (j + 1)) + i); + } + + // check if there is a router to the right + if ((i + 1) <= (mesh_size - 1)) { + // add the router located to the right + temp_router.connection_list.push_back((mesh_size * j) + i + 1); + } + + // check of there is a router below + if ((j - 1) >= (0)) { + // add the bottom router as a connection + temp_router.connection_list.push_back((mesh_size * (j - 1)) + i); + } + + // add the router to the list + noc_ref->router_list.push_back(temp_router); + + // clear the current router information for the next router + temp_router.connection_list.clear(); + } + } +} + +/* + * Go through each router in the NoC and store the list of routers that connect to it. + */ +static void process_topology(pugi::xml_node topology_tag, + const pugiutil::loc_data& loc_data, + t_noc_inf* noc_ref) { + // The topology tag should have no attributes, check that + pugiutil::expect_only_attributes(topology_tag, {}, loc_data); + + /** + * Stores router information that includes the number of connections a router + * has within a given topology and also the number of times a router was declared + * in the arch file using the tag. + * key --> router id + * value.first --> the number of router declarations + * value.second --> the number of router connections + * This is used only for error checking. + */ + std::map> routers_in_arch_info; + + /* Now go through the children tags of topology, which is basically + * each router found within the NoC + */ + for (pugi::xml_node router : topology_tag.children()) { + // we can only have router tags within the topology + if (router.name() != std::string("router")) { + bad_tag(router, loc_data, topology_tag, {"router"}); + } else { + // current tag is a valid router, so process it + process_router(router, loc_data, noc_ref, routers_in_arch_info); + } + } + + // check whether any routers were supplied + if (noc_ref->router_list.empty()) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(topology_tag), + "No routers were supplied for the NoC."); + } + + // check that the topology of the noc was correctly described in the arch file + verify_noc_topology(routers_in_arch_info); +} + +/* + * Store the properties of a single router and then store the list of routers that connect to it. + */ +static void process_router(pugi::xml_node router_tag, + const pugiutil::loc_data& loc_data, + t_noc_inf* noc_ref, + std::map>& routers_in_arch_info) { + // identifier that lets us know when we could not properly convert an attribute value to an integer + constexpr int ATTRIBUTE_CONVERSION_FAILURE = -1; + + // an accepted list of attributes for the router tag + std::vector expected_router_attributes = {"id", "positionx", "positiony", "connections"}; + + // check that only the accepted router attributes are found in the tag + pugiutil::expect_only_attributes(router_tag, expected_router_attributes, loc_data); + + // variable to store current router info + t_router router_info; + + // store the router information from the attributes + router_info.id = pugiutil::get_attribute(router_tag, "id", loc_data, pugiutil::REQUIRED).as_int(ATTRIBUTE_CONVERSION_FAILURE); + + router_info.device_x_position = pugiutil::get_attribute(router_tag, "positionx", loc_data, pugiutil::REQUIRED).as_double(ATTRIBUTE_CONVERSION_FAILURE); + + router_info.device_y_position = pugiutil::get_attribute(router_tag, "positiony", loc_data, pugiutil::REQUIRED).as_double(ATTRIBUTE_CONVERSION_FAILURE); + + // verify whether the attribute information was legal + if ((router_info.id < 0) || (router_info.device_x_position < 0) || (router_info.device_y_position < 0)) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(router_tag), + "The router id, and position (x & y) for the router must be a positive number."); + } + + // get the current router connection list + std::string router_connection_list_attribute_value = pugiutil::get_attribute(router_tag, "connections", loc_data, pugiutil::REQUIRED).as_string(); + + // if the connections attribute was not provided, or it was empty, then we don't process it and throw a warning + if (!router_connection_list_attribute_value.empty()) { + // process the router connection list + bool router_connection_list_result = parse_noc_router_connection_list(router_tag, loc_data, router_info.id, + router_info.connection_list, + router_connection_list_attribute_value, + routers_in_arch_info); + + // check if the user provided a legal router connection list + if (!router_connection_list_result) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(router_tag), + "The 'connections' attribute for the router must be a list of integers seperated by spaces, " + "where each integer represents a router id that the current router is connected to."); + } + + } else { + VTR_LOGF_WARN(loc_data.filename_c_str(), loc_data.line(router_tag), + "The router with id:%d either has an empty 'connections' attribute " + "or does not have any associated connections to other routers in the NoC.\n", + router_info.id); + } + + // at this point the current router information was completely legal, so we store the newly created router within the noc + noc_ref->router_list.push_back(router_info); + + // update the number of declarations info for the current router (since we just finished processing one tag) + update_router_info_in_arch(router_info.id, false, routers_in_arch_info); +} + +static void verify_noc_topology(const std::map>& routers_in_arch_info) { + + for (const auto& [router_id, router_info] : routers_in_arch_info) { + const auto [n_declarations, n_connections] = router_info; + // case where the router was included in the architecture and had no connections to other routers + if (n_declarations == 1 && n_connections == 0) { + archfpga_throw("", -1, + "The router with id:'%d' is not connected to any other router in the NoC.", + router_id); + + } // case where a router was found to be connected to another router but not declared using the tag in the arch file (i.e. missing) + else if (n_declarations == 0 && n_connections > 0) { + archfpga_throw("", -1, + "The router with id:'%d' was found to be connected to another router " + "but missing in the architecture file. Add the router using the tag.", + router_id); + + } // case where the router was declared multiple times in the architecture file (multiple tags for the same router) + else if (n_declarations > 1) { + archfpga_throw("", -1, + "The router with id:'%d' was included more than once in the architecture file. " + "Routers should only be declared once.", + router_id); + } + } +} + +static bool parse_noc_router_connection_list(pugi::xml_node router_tag, + const pugiutil::loc_data& loc_data, + int router_id, + std::vector& connection_list, + const std::string& connection_list_attribute_value, + std::map>& routers_in_arch_info) { + // we wil be modifying the string so store it in a temporary variable + // additionally, we process substrings seperated by spaces, + // so we add a space at the end of the string to be able to process the last sub-string + std::string modified_attribute_value = connection_list_attribute_value + " "; + const std::string delimiter = " "; + std::stringstream single_connection; + int converted_connection; + + size_t position = 0; + + bool result = true; + + // find the position of the first space in the connection list string + while ((position = modified_attribute_value.find(delimiter)) != std::string::npos) { + // the string upto the space represent a single connection, so grab the substring + single_connection << modified_attribute_value.substr(0, position); + + // convert the connection to an integer + single_connection >> converted_connection; + + /* we expect the connection list to be a string of integers seperated by spaces, + * where each integer represents a router id that the current router is connected to. + * So we make sure that the router id was an integer. + */ + if (single_connection.fail()) { + // if we are here, then an integer was not supplied + result = false; + break; + } + + // check the case where a duplicate connection was provided + if (std::find(connection_list.begin(), connection_list.end(), converted_connection) != connection_list.end()) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(router_tag), + "The router with id:'%d' was included multiple times in the connection list for another router.", converted_connection); + } + + // make sure that the current router isn't connected to itself + if (router_id == converted_connection) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(router_tag), + "The router with id:%d was added to its own connection list. A router cannot connect to itself.", router_id); + } + + // if we are here then a legal router id was supplied, so store it + connection_list.push_back(converted_connection); + // update the connection information for the current router in the connection list + update_router_info_in_arch(converted_connection, true, routers_in_arch_info); + + // before we process the next router connection, we need to delete the substring (current router connection) + modified_attribute_value.erase(0, position + delimiter.length()); + // clear the buffer that stores the router connection in a string format for the next iteration + single_connection.clear(); + } + + return result; +} + +static void update_router_info_in_arch(int router_id, + bool router_updated_as_a_connection, + std::map>& routers_in_arch_info) { + // try to add the router + // if it was already added, get the existing one + auto [curr_router_info, _] = routers_in_arch_info.insert({router_id, {0, 0}}); + + auto& [n_declarations, n_connections] = curr_router_info->second; + + // case where the current router was provided while parsing the connections of another router + if (router_updated_as_a_connection) { + // since we are within the case where the current router is being processed as + // a connection to another router we just increment its number of connections + n_connections++; + + } else { + // since we are within the case where the current router is processed from a tag, + // we just increment its number of declarations + n_declarations++; + } +} + +static void process_noc_overrides(pugi::xml_node noc_overrides_tag, + const pugiutil::loc_data& loc_data, + t_noc_inf& noc_ref) { + // an accepted list of attributes for the router tag + const std::vector expected_router_attributes{"id", "latency"}; + // the list of expected values for link tag + const std::vector expected_link_override_attributes{"src", "dst", "latency", "bandwidth"}; + + for (pugi::xml_node override_tag : noc_overrides_tag.children()) { + std::string_view override_name = override_tag.name(); + + if (override_name == "router") { + // check that only the accepted router attributes are found in the tag + pugiutil::expect_only_attributes(override_tag, expected_router_attributes, loc_data); + + // store the router information from the attributes + int id = pugiutil::get_attribute(noc_overrides_tag, "id", loc_data, pugiutil::REQUIRED).as_int(-1); + + auto router_latency_override = pugiutil::get_attribute(override_tag, "latency", loc_data, pugiutil::REQUIRED).as_string(); + double latency = std::atof(router_latency_override); + + if (id < 0 || latency <= 0.0) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(override_tag), + "The latency override value (%g) for router with id:%d is not legal. " + "The router id must be non-negative and the latency must be positive.", + latency, id); + } + + auto it = std::find_if(noc_ref.router_list.begin(), noc_ref.router_list.end(), [id](const t_router& router) { + return router.id == id; + }); + + if (it == noc_ref.router_list.end()) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(override_tag), + "The router with id:%d could not be found in the topology.", + id); + } + + auto [_, success] = noc_ref.router_latency_overrides.insert({id, latency}); + if (!success) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(override_tag), + "The latency of the router with id:%d wad overridden once before.", + id); + } + + } else if (override_name == "link") { + // check that only the accepted link attributes are found in the tag + pugiutil::expect_only_attributes(override_tag, expected_link_override_attributes, loc_data); + + // store the router information from the attributes + int src = pugiutil::get_attribute(noc_overrides_tag, "src", loc_data, pugiutil::REQUIRED).as_int(-1); + int dst = pugiutil::get_attribute(noc_overrides_tag, "dst", loc_data, pugiutil::REQUIRED).as_int(-1); + + if (src < 0 || dst < 0) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(override_tag), + "The source and destination router ids (%d, %d) must be non-negative.", + src, dst); + } + + auto it = std::find_if(noc_ref.router_list.begin(), noc_ref.router_list.end(), [src, dst](const t_router& router) { + return router.id == src && + std::find(router.connection_list.begin(), router.connection_list.end(), dst) != router.connection_list.end(); + }); + + if (it == noc_ref.router_list.end()) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(override_tag), + "There is no links from the router with id:%d to the router with id:%d.", + src, dst); + } + + auto link_latency_override = pugiutil::get_attribute(override_tag, "latency", loc_data, pugiutil::REQUIRED).as_string(nullptr); + if (link_latency_override != nullptr) { + double latency = std::atof(link_latency_override); + if (latency <= 0.0) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(override_tag), + "The override link latency value for link (%d, %d) must be positive:%g." , + src, dst, latency); + } + + auto [_, success] = noc_ref.link_latency_overrides.insert({{src, dst}, latency}); + if (!success) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(override_tag), + "The latency for link (%d, %d) was overridden once before." , + src, dst); + } + } + + auto link_bandwidth_override = pugiutil::get_attribute(override_tag, "bandwidth", loc_data, pugiutil::REQUIRED).as_string(nullptr); + if (link_bandwidth_override != nullptr) { + double bandwidth = std::atof(link_latency_override); + if (bandwidth <= 0.0) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(override_tag), + "The override link bandwidth value for link (%d, %d) must be positive:%g." , + src, dst, bandwidth); + } + + auto [_, success] = noc_ref.link_bandwidth_overrides.insert({{src, dst}, bandwidth}); + if (!success) { + archfpga_throw(loc_data.filename_c_str(), loc_data.line(override_tag), + "The bandwidth for link (%d, %d) was overridden once before." , + src, dst); + } + } + } else { + bad_tag(override_tag, loc_data, noc_overrides_tag, {"router", "link"}); + } + } +} \ No newline at end of file diff --git a/libs/libarchfpga/src/read_xml_arch_file_noc_tag.h b/libs/libarchfpga/src/read_xml_arch_file_noc_tag.h new file mode 100644 index 00000000000..8309d8cdec9 --- /dev/null +++ b/libs/libarchfpga/src/read_xml_arch_file_noc_tag.h @@ -0,0 +1,20 @@ + +#ifndef VTR_READ_XML_ARCH_FILE_NOC_TAG_H +#define VTR_READ_XML_ARCH_FILE_NOC_TAG_H + +#include "pugixml.hpp" +#include "pugixml_loc.hpp" +#include "physical_types.h" + +/** + * @brief Parses NoC-related information under tag. + * @param noc_tag An XML node pointing to tag. + * @param arch High-level architecture information. This function fills + * arch->noc with NoC-related information. + * @param loc_data Points to the location in the xml file where the parser is reading. + */ +void process_noc_tag(pugi::xml_node noc_tag, + t_arch* arch, + const pugiutil::loc_data& loc_data); + +#endif //VTR_READ_XML_ARCH_FILE_NOC_TAG_H diff --git a/libs/libarchfpga/src/read_xml_util.cpp b/libs/libarchfpga/src/read_xml_util.cpp index 784d08a9b4f..fd2e76c4ad4 100644 --- a/libs/libarchfpga/src/read_xml_util.cpp +++ b/libs/libarchfpga/src/read_xml_util.cpp @@ -43,7 +43,7 @@ InstPort make_inst_port(pugi::xml_attribute attr, pugi::xml_node node, const pug void bad_tag(const pugi::xml_node node, const pugiutil::loc_data& loc_data, const pugi::xml_node parent_node, - const std::vector expected_tags) { + const std::vector& expected_tags) { std::string msg = "Unexpected tag "; msg += "<"; msg += node.name(); @@ -76,7 +76,7 @@ void bad_tag(const pugi::xml_node node, void bad_attribute(const pugi::xml_attribute attr, const pugi::xml_node node, const pugiutil::loc_data& loc_data, - const std::vector expected_attributes) { + const std::vector& expected_attributes) { std::string msg = "Unexpected attribute "; msg += "'"; msg += attr.name(); @@ -109,7 +109,7 @@ void bad_attribute(const pugi::xml_attribute attr, void bad_attribute_value(const pugi::xml_attribute attr, const pugi::xml_node node, const pugiutil::loc_data& loc_data, - const std::vector expected_values) { + const std::vector& expected_values) { std::string msg = "Invalid value '"; msg += attr.value(); msg += "'"; diff --git a/libs/libarchfpga/src/read_xml_util.h b/libs/libarchfpga/src/read_xml_util.h index 05a77ab0377..b5fa4fbf704 100644 --- a/libs/libarchfpga/src/read_xml_util.h +++ b/libs/libarchfpga/src/read_xml_util.h @@ -11,16 +11,16 @@ pugiutil::ReqOpt BoolToReqOpt(bool b); void bad_tag(const pugi::xml_node node, const pugiutil::loc_data& loc_data, const pugi::xml_node parent_node = pugi::xml_node(), - const std::vector expected_tags = std::vector()); + const std::vector& expected_tags = std::vector()); void bad_attribute(const pugi::xml_attribute attr, const pugi::xml_node node, const pugiutil::loc_data& loc_data, - const std::vector expected_attributes = std::vector()); + const std::vector& expected_attributes = std::vector()); void bad_attribute_value(const pugi::xml_attribute attr, const pugi::xml_node node, const pugiutil::loc_data& loc_data, - const std::vector expected_attributes = std::vector()); + const std::vector& expected_attributes = std::vector()); InstPort make_inst_port(std::string str, pugi::xml_node node, const pugiutil::loc_data& loc_data); InstPort make_inst_port(pugi::xml_attribute attr, pugi::xml_node node, const pugiutil::loc_data& loc_data); diff --git a/libs/libarchfpga/test/test_read_xml_arch_file.cpp b/libs/libarchfpga/test/test_read_xml_arch_file.cpp index adc9eab42d1..19da2315afe 100644 --- a/libs/libarchfpga/test/test_read_xml_arch_file.cpp +++ b/libs/libarchfpga/test/test_read_xml_arch_file.cpp @@ -2,8 +2,8 @@ #include "catch2/catch_test_macros.hpp" #include "catch2/matchers/catch_matchers_all.hpp" -// testting statuc functions so include whole source file it is in -#include "read_xml_arch_file.cpp" +// testing static functions so include whole source file it is in +#include "read_xml_arch_file_noc_tag.cpp" // for comparing floats #include "vtr_math.h" @@ -25,7 +25,7 @@ TEST_CASE("Updating router info in arch", "[NoC Arch Tests]") { it = test_router_list.find(router_id); - // check first that the router was newly added to the router databse + // check first that the router was newly added to the router database REQUIRE(it != test_router_list.end()); // no verify the components of the router parameter @@ -39,7 +39,7 @@ TEST_CASE("Updating router info in arch", "[NoC Arch Tests]") { it = test_router_list.find(router_id); - // check first that the router was newly added to the router databse + // check first that the router was newly added to the router database REQUIRE(it != test_router_list.end()); // no verify the components of the router parameter @@ -56,7 +56,7 @@ TEST_CASE("Updating router info in arch", "[NoC Arch Tests]") { it = test_router_list.find(router_id); - // check first that the router was newly added to the router databse + // check first that the router was newly added to the router database REQUIRE(it != test_router_list.end()); // no verify the components of the router parameter @@ -75,7 +75,7 @@ TEST_CASE("Updating router info in arch", "[NoC Arch Tests]") { it = test_router_list.find(router_id); - // check first that the router was newly added to the router databse + // check first that the router was newly added to the router database REQUIRE(it != test_router_list.end()); // no verify the components of the router parameter @@ -172,7 +172,7 @@ TEST_CASE("Verifying mesh topology creation", "[NoC Arch Tests]") { mesh_end_x = 4; mesh_end_y = 4; - // create the golden golden results + // create the golden results double golden_results_x[9]; double golden_results_y[9]; diff --git a/libs/libpugiutil/src/pugixml_util.cpp b/libs/libpugiutil/src/pugixml_util.cpp index b1597d34963..6c5e8951cd9 100644 --- a/libs/libpugiutil/src/pugixml_util.cpp +++ b/libs/libpugiutil/src/pugixml_util.cpp @@ -106,7 +106,7 @@ size_t count_children(const pugi::xml_node node, child = child.next_sibling(child_name.c_str()); } - //Note that we don't do any error checking here since get_first_child does the existance check + //Note that we don't do any error checking here since get_first_child does the existence check return count; } @@ -175,7 +175,7 @@ void expect_child_node_count(const pugi::xml_node node, // child_names - expected attribute names // loc_data - XML file location data void expect_only_children(const pugi::xml_node node, - std::vector child_names, + const std::vector& child_names, const loc_data& loc_data) { for (auto child : node.children()) { std::string child_name = child.name(); @@ -186,7 +186,7 @@ void expect_only_children(const pugi::xml_node node, std::string msg = "Unexpected child '" + child_name + "'" + " of node '" + node.name() + "'."; - if (child_names.size() > 0) { + if (!child_names.empty()) { msg += " Expected (possibly) one of: "; for (size_t i = 0; i < child_names.size(); i++) { if (i != 0) { @@ -213,7 +213,7 @@ void expect_only_children(const pugi::xml_node node, // loc_data - XML file location data void expect_only_attributes(const pugi::xml_node node, std::vector attribute_names, - std::string explanation, + std::string_view explanation, const loc_data& loc_data) { for (auto attrib : node.attributes()) { std::string attrib_name = attrib.name(); @@ -230,7 +230,7 @@ void expect_only_attributes(const pugi::xml_node node, msg += "."; - if (attribute_names.size() > 0) { + if (!attribute_names.empty()) { msg += " Expected (possibly) one of: "; for (size_t i = 0; i < attribute_names.size(); i++) { if (i != 0) { @@ -250,13 +250,13 @@ void expect_only_attributes(const pugi::xml_node node, } //Throws a well formatted error if any attribute other than those named in 'attribute_names' are found on 'node'. -//Note this does not check whether the attribues in 'attribute_names' actually exist; for that use get_attribute(). +//Note this does not check whether the attributes in 'attribute_names' actually exist; for that use get_attribute(). // // node - The parent xml node // attribute_names - expected attribute names // loc_data - XML file location data void expect_only_attributes(const pugi::xml_node node, - std::vector attribute_names, + const std::vector& attribute_names, const loc_data& loc_data) { expect_only_attributes(node, attribute_names, "", loc_data); } @@ -279,7 +279,7 @@ size_t count_attributes(const pugi::xml_node node, return count; } -//Gets a named property on an node and returns it. +//Gets a named property on a node and returns it. // // node - The xml node // attr_name - The attribute name diff --git a/libs/libpugiutil/src/pugixml_util.hpp b/libs/libpugiutil/src/pugixml_util.hpp index 8e55f232bc0..3bb60779fc0 100644 --- a/libs/libpugiutil/src/pugixml_util.hpp +++ b/libs/libpugiutil/src/pugixml_util.hpp @@ -16,6 +16,7 @@ #include #include #include +#include #include "pugixml.hpp" @@ -138,7 +139,7 @@ void expect_child_node_count(const pugi::xml_node node, // child_names - expected attribute names // loc_data - XML file location data void expect_only_children(const pugi::xml_node node, - std::vector child_names, + const std::vector& child_names, const loc_data& loc_data); //Throws a well formatted error if any attribute other than those named in 'attribute_names' are found on 'node'. @@ -148,7 +149,7 @@ void expect_only_children(const pugi::xml_node node, // attribute_names - expected attribute names // loc_data - XML file location data void expect_only_attributes(const pugi::xml_node node, - std::vector attribute_names, + const std::vector& attribute_names, const loc_data& loc_data); //Throws a well formatted error if any attribute other than those named in 'attribute_names' are found on 'node' with an additional explanation. @@ -159,7 +160,7 @@ void expect_only_attributes(const pugi::xml_node node, // loc_data - XML file location data void expect_only_attributes(const pugi::xml_node node, std::vector attribute_names, - std::string explanation, + std::string_view explanation, const loc_data& loc_data); //Counts the number of attributes on the specified node @@ -171,7 +172,7 @@ size_t count_attributes(const pugi::xml_node node, const loc_data& loc_data, const ReqOpt req_opt = REQUIRED); -//Gets a named property on an node and returns it. +//Gets a named property on a node and returns it. // // node - The xml node // attr_name - The attribute name diff --git a/libs/librrgraph/src/base/check_rr_graph.cpp b/libs/librrgraph/src/base/check_rr_graph.cpp index 729a0f314ce..c4dbe8dbe4e 100644 --- a/libs/librrgraph/src/base/check_rr_graph.cpp +++ b/libs/librrgraph/src/base/check_rr_graph.cpp @@ -54,7 +54,6 @@ void check_rr_graph(const RRGraphView& rr_graph, const vtr::NdMatrix& vib_grid, const t_chan_width& chan_width, const t_graph_type graph_type, - const int virtual_clock_network_root_idx, bool is_flat) { e_route_type route_type = DETAILED; if (graph_type == GRAPH_GLOBAL) { @@ -77,7 +76,7 @@ void check_rr_graph(const RRGraphView& rr_graph, } // Virtual clock network sink is special, ignore. - if (virtual_clock_network_root_idx == int(inode)) { + if (rr_graph.is_virtual_clock_network_root(rr_node)) { continue; } diff --git a/libs/librrgraph/src/base/check_rr_graph.h b/libs/librrgraph/src/base/check_rr_graph.h index 5547571513b..f4e5600d356 100644 --- a/libs/librrgraph/src/base/check_rr_graph.h +++ b/libs/librrgraph/src/base/check_rr_graph.h @@ -12,7 +12,6 @@ void check_rr_graph(const RRGraphView& rr_graph, const vtr::NdMatrix& vib_grid, const t_chan_width& chan_width, const t_graph_type graph_type, - const int virtual_clock_network_root_idx, bool is_flat); void check_rr_node(const RRGraphView& rr_graph, diff --git a/libs/librrgraph/src/base/rr_graph_builder.h b/libs/librrgraph/src/base/rr_graph_builder.h index eeea5e2a783..1f30c74b941 100644 --- a/libs/librrgraph/src/base/rr_graph_builder.h +++ b/libs/librrgraph/src/base/rr_graph_builder.h @@ -119,10 +119,17 @@ class RRGraphBuilder { inline void set_node_type(RRNodeId id, t_rr_type type) { node_storage_.set_node_type(id, type); } + /** @brief Create a new rr_node in the node storage and register it to the node look-up. * Return a valid node id if succeed. Otherwise, return an invalid id. */ RRNodeId create_node(int layer, int x, int y, t_rr_type type, int ptc, e_side side = NUM_SIDES); + + /** @brief Set the node name with a given valid id */ + inline void set_node_name(RRNodeId id, std::string name) { + node_storage_.set_node_name(id, name); + } + /** * @brief Add an existing rr_node in the node storage to the node look-up * @@ -271,6 +278,11 @@ class RRGraphBuilder { */ std::vector node_in_edges(RRNodeId node) const; + /** @brief Set the node id for clock network virtual sink */ + inline void set_virtual_clock_network_root_idx(RRNodeId virtual_clock_network_root_idx) { + node_storage_.set_virtual_clock_network_root_idx(virtual_clock_network_root_idx); + } + /** @brief Reserve the lists of edges to be memory efficient. * This function is mainly used to reserve memory space inside RRGraph, * when adding a large number of edges in order to avoid memory fragements */ diff --git a/libs/librrgraph/src/base/rr_graph_obj.cpp b/libs/librrgraph/src/base/rr_graph_obj.cpp index 68c6f305b95..dd819770783 100644 --- a/libs/librrgraph/src/base/rr_graph_obj.cpp +++ b/libs/librrgraph/src/base/rr_graph_obj.cpp @@ -1041,7 +1041,7 @@ void RRGraph::set_node_segment(const RRNodeId& node, const RRSegmentId& segment_ */ void RRGraph::partition_node_in_edges(const RRNodeId& node) { //Partition the edges so the first set of edges are all configurable, and the later are not - auto first_non_config_edge = std::partition(node_in_edges_[node].begin(), node_in_edges_[node].end(), + auto first_non_config_edge = std::stable_partition(node_in_edges_[node].begin(), node_in_edges_[node].end(), [&](const RREdgeId edge) { return edge_is_configurable(edge); }); /* Condition to partition edges */ size_t num_conf_edges = std::distance(node_in_edges_[node].begin(), first_non_config_edge); @@ -1060,7 +1060,7 @@ void RRGraph::partition_node_in_edges(const RRNodeId& node) { */ void RRGraph::partition_node_out_edges(const RRNodeId& node) { //Partition the edges so the first set of edges are all configurable, and the later are not - auto first_non_config_edge = std::partition(node_out_edges_[node].begin(), node_out_edges_[node].end(), + auto first_non_config_edge = std::stable_partition(node_out_edges_[node].begin(), node_out_edges_[node].end(), [&](const RREdgeId edge) { return edge_is_configurable(edge); }); /* Condition to partition edges */ size_t num_conf_edges = std::distance(node_out_edges_[node].begin(), first_non_config_edge); diff --git a/libs/librrgraph/src/base/rr_graph_storage.cpp b/libs/librrgraph/src/base/rr_graph_storage.cpp index c029eb23ac7..f38925d3a32 100644 --- a/libs/librrgraph/src/base/rr_graph_storage.cpp +++ b/libs/librrgraph/src/base/rr_graph_storage.cpp @@ -1,6 +1,8 @@ #include #include "arch_types.h" #include "rr_graph_storage.h" +#include "vtr_expr_eval.h" +#include "vtr_error.h" #include @@ -750,6 +752,9 @@ void t_rr_graph_storage::set_node_type(RRNodeId id, t_rr_type new_type) { node_storage_[id].type_ = new_type; } +void t_rr_graph_storage::set_node_name(RRNodeId id, std::string new_name) { + node_name_.insert(std::make_pair(id, new_name)); +} void t_rr_graph_storage::set_node_coordinates(RRNodeId id, short x1, short y1, short x2, short y2) { auto& node = node_storage_[id]; if (x1 < x2) { @@ -816,6 +821,20 @@ void t_rr_graph_storage::add_node_side(RRNodeId id, e_side new_side) { node_storage_[id].dir_side_.sides = static_cast(side_bits.to_ulong()); } +void t_rr_graph_storage::set_virtual_clock_network_root_idx(RRNodeId virtual_clock_network_root_idx) { + // Retrieve the name string for the specified RRNodeId. + auto clock_network_name_str = node_name(virtual_clock_network_root_idx); + + // If the name is available, associate it with the given node id for the clock network virtual sink. + if(clock_network_name_str) { + virtual_clock_network_root_idx_.insert(std::make_pair(*(clock_network_name_str.value()), virtual_clock_network_root_idx)); + } + else { + // If no name is available, throw a VtrError indicating the absence of the attribute name for the virtual sink node. + throw vtr::VtrError(vtr::string_fmt("Attribute name is not specified for virtual sink node '%u'\n", size_t(virtual_clock_network_root_idx)), __FILE__, __LINE__); + } +} + int t_rr_graph_view::node_ptc_num(RRNodeId id) const { return node_ptc_[id].ptc_.pin_num; } @@ -842,10 +861,12 @@ t_rr_graph_view t_rr_graph_storage::view() const { vtr::make_const_array_view_id(node_first_edge_), vtr::make_const_array_view_id(node_fan_in_), vtr::make_const_array_view_id(node_layer_), + node_name_, vtr::make_const_array_view_id(node_ptc_twist_incr_), vtr::make_const_array_view_id(edge_src_node_), vtr::make_const_array_view_id(edge_dest_node_), - vtr::make_const_array_view_id(edge_switch_)); + vtr::make_const_array_view_id(edge_switch_), + virtual_clock_network_root_idx_); } // Given `order`, a vector mapping each RRNodeId to a new one (old -> new), diff --git a/libs/librrgraph/src/base/rr_graph_storage.h b/libs/librrgraph/src/base/rr_graph_storage.h index 28dca6abc66..01327247578 100644 --- a/libs/librrgraph/src/base/rr_graph_storage.h +++ b/libs/librrgraph/src/base/rr_graph_storage.h @@ -15,6 +15,8 @@ #include "vtr_memory.h" #include "vtr_strong_id_range.h" #include "vtr_array_view.h" +#include +#include /* Main structure describing one routing resource node. Everything in * * this structure should describe the graph -- information needed only * @@ -105,50 +107,49 @@ struct t_rr_node_ptc_data { class t_rr_graph_view; -// RR node and edge storage class. -// -// Description: -// -// This class stores the detailed routing graph. Each node within the graph is -// identified by a RRNodeId. Each edge within the graph is identified by a -// RREdgeId. -// -// Each node contains data about the node itself, for example look at the -// comment t_rr_node_data. Each node also has a set of RREdgeId's that all have -// RRNodeId as the source node. -// -// Each edge is defined by the source node, destination node, and the switch -// index that connects the source to the destination node. -// -// NOTE: The switch index represents either an index into arch_switch_inf -// **or** rr_switch_inf. During rr graph construction, the switch index is -// always is an index into arch_switch_inf. Once the graph is completed, the -// RR graph construction code coverts all arch_switch_inf indicies -// into rr_switch_inf indicies via the remap_rr_node_switch_indices method. -// -// Usage notes and assumptions: -// -// This class broadly speak is used by two types of code: -// - Code that writes to the rr graph -// - Code that reads from the rr graph -// -// Within VPR, there are two locations that the rr graph is expected to be -// modified, either: -// - During the building of the rr graph in rr_graph.cpp -// - During the reading of a static rr graph from a file in rr_graph_reader -// / rr_graph_uxsdcxx_serializer. -// -// It is expected and assume that once the graph is completed, the graph is -// fixed until the entire graph is cleared. This object enforces this -// assumption with state flags. In particular RR graph edges are assumed -// to be write only during construction of the RR graph, and read only -// otherwise. See the description of the "Edge methods" for details. -// -// Broadly speaking there are two sets of methods. Methods for reading and -// writing RR nodes, and methods for reading and writing RR edges. The node -// methods can be found underneath the header "Node methods" and the edge -// methods can be found underneath the header "Edge methods". -// +/** + * @file + * @brief RR node and edge storage class. + * + * @details + * This class stores the detailed routing graph. Each node within the graph is + * identified by a RRNodeId. Each edge within the graph is identified by a + * RREdgeId. + * + * Each node contains data about the node itself; refer to the comment for t_rr_node_data. + * Each node also has a set of RREdgeId's, all with RRNodeId as the source node. + * + * Each edge is defined by the source node, destination node, and the switch + * index that connects the source to the destination node. + * + * NOTE: The switch index represents either an index into arch_switch_inf + * **or** rr_switch_inf. During rr graph construction, the switch index is + * always an index into arch_switch_inf. Once the graph is completed, the + * RR graph construction code converts all arch_switch_inf indices + * into rr_switch_inf indices via the remap_rr_node_switch_indices method. + * + * @par Usage notes and assumptions: + * This class is broadly used by two types of code: + * - Code that writes to the rr graph + * - Code that reads from the rr graph + * + * Within VPR, there are two locations where the rr graph is expected to be + * modified: + * - During the building of the rr graph in rr_graph.cpp + * - During the reading of a static rr graph from a file in rr_graph_reader + * / rr_graph_uxsdcxx_serializer. + * + * It is expected and assumed that once the graph is completed, the graph is + * fixed until the entire graph is cleared. This object enforces this + * assumption with state flags. In particular, RR graph edges are assumed + * to be write-only during the construction of the RR graph and read-only + * otherwise. See the description of the "Edge methods" for details. + * + * Broadly speaking, there are two sets of methods: methods for reading and + * writing RR nodes, and methods for reading and writing RR edges. The node + * methods can be found underneath the header "Node methods," and the edge + * methods can be found underneath the header "Edge methods." + */ class t_rr_graph_storage { public: t_rr_graph_storage() { @@ -246,6 +247,23 @@ class t_rr_graph_storage { short node_layer(RRNodeId id) const{ return node_layer_[id]; } + + /** + * @brief Retrieve the name assigned to a given node ID. + * + * If no name is assigned, an empty optional is returned. + * + * @param id The id of the node. + * @return An optional pointer to the string representing the name if found, + * otherwise an empty optional. + */ + std::optional node_name(RRNodeId id) const{ + auto it = node_name_.find(id); + if (it != node_name_.end()) { + return &it->second; // Return the value if key is found + } + return std::nullopt; // Return an empty optional if key is not found + } /** @brief Find the twist number that RR node uses to change ptc number across the same track. * By default this number is zero, meaning that ptc number across the same track should be the same. @@ -259,6 +277,51 @@ class t_rr_graph_storage { return node_ptc_twist_incr_[id]; } + /** + * @brief Returns the node ID of the virtual sink for the specified clock network name. + * + * If the clock network name is not found, the function returns INVALID RRNodeId. + * + * @param clock_network_name The name of the clock network. + * @return The node ID of the virtual sink associated with the provided clock network name, + * or INVALID RRNodeID if the clock network name is not found. + */ + RRNodeId virtual_clock_network_root_idx(const char* clock_network_name) const { + // Convert the input char* to a C++ string + std::string clock_network_name_str(clock_network_name); + + // Check if the clock network name exists in the list of virtual sink entries + auto it = virtual_clock_network_root_idx_.find(clock_network_name); + + if (it != virtual_clock_network_root_idx_.end()) { + // Return the node ID for the virtual sink of the given clock network name + return it->second; + } + + // Return INVALID RRNodeID if the clock network name is not found + return RRNodeId::INVALID(); + } + + /** + * @brief Checks if the specified RRNode ID is a virtual sink for a clock network. + * + * A virtual sink/root is a node with the type SINK to which all clock network drive points are + * connected in the routing graph. + * When the two-stage router routes a net through a clock network, it first routes to the virtual sink + * in the first stage and then proceeds from there to the destination in the second stage. + * + * @param id The ID of an RRNode. + * @return True if the node with the given ID is a virtual sink for a clock network, false otherwise. + */ + bool is_virtual_clock_network_root(RRNodeId id) const{ + for (const auto& pair : virtual_clock_network_root_idx_) { + if (pair.second == id) { + return true; + } + } + return false; + } + /** @brief This prefetechs hot RR node data required for optimization. * * Note: This is optional, but may lower time spent on memory stalls in @@ -352,11 +415,13 @@ class t_rr_graph_storage { /** @brief Get the source node for the specified edge. */ RRNodeId edge_src_node(const RREdgeId& edge) const { + VTR_ASSERT_DEBUG(edge.is_valid()); return edge_src_node_[edge]; } /** @brief Get the destination node for the specified edge. */ RRNodeId edge_sink_node(const RREdgeId& edge) const { + VTR_ASSERT_DEBUG(edge.is_valid()); return edge_dest_node_[edge]; } @@ -496,6 +561,8 @@ class t_rr_graph_storage { node_first_edge_.clear(); node_fan_in_.clear(); node_layer_.clear(); + node_name_.clear(); + virtual_clock_network_root_idx_.clear(); node_ptc_twist_incr_.clear(); edge_src_node_.clear(); edge_dest_node_.clear(); @@ -563,6 +630,7 @@ class t_rr_graph_storage { void set_node_medium_num(RRNodeId id, int); //Same as set_ptc_num() by checks type() is consistent void set_node_type(RRNodeId id, t_rr_type new_type); + void set_node_name(RRNodeId id, std::string new_name); void set_node_coordinates(RRNodeId id, short x1, short y1, short x2, short y2); void set_node_layer(RRNodeId id, short layer); void set_node_ptc_twist_incr(RRNodeId id, short twist); @@ -579,6 +647,13 @@ class t_rr_graph_storage { */ void add_node_side(RRNodeId, e_side new_side); + /** + * @brief Set the node ID of the virtual sink for the clock network. + * + * @param virtual_clock_network_root_idx The node ID of the virtual sink for the clock network. + */ + void set_virtual_clock_network_root_idx(RRNodeId virtual_clock_network_root_idx); + /**************** * Edge methods * ****************/ @@ -702,7 +777,14 @@ class t_rr_graph_storage { return node_storage[id].dir_side_.direction; } - /* Find if the given node appears on a specific side */ + /** + * @brief Find if the given node appears on a specific side. + * + * @param node_storage Array view containing data for the nodes. + * @param id The RRNodeId to check for. + * @param side The specific side to check for the node. + * @return true if the node appears on the specified side, false otherwise. + */ static inline bool is_node_on_specific_side( vtr::array_view_id node_storage, const RRNodeId& id, @@ -759,7 +841,7 @@ class t_rr_graph_storage { */ vtr::vector> node_storage_; - /**@brief + /** @brief * The PTC data is cold data, and is generally not used during the inner * loop of either the placer or router. */ @@ -783,6 +865,26 @@ class t_rr_graph_storage { */ vtr::vector node_layer_; + /** + * @brief Stores the assigned names for the RRNode IDs. + * + * We use a hash table for efficiency because most RRNodes do not have names. + * An RRNode can be given a name (e.g., example_name) by reading in an rr-graph + * in which the optional attribute is set. + * Currently, the only use case for names is with global clock networks, where + * the name specifies the clock network to which an RRNode belongs. + */ + std::unordered_map node_name_; + + /** + * @brief A map that uses the name for each clock network as the key and stores + * the rr_node index for the virtual sink that connects to all the nodes that + * are clock network entry points. + * + * This map is particularly useful for two-stage clock routing. + */ + std::unordered_map virtual_clock_network_root_idx_; + /** @brief *Twist Increment number is defined for CHANX/CHANY nodes; it is useful for layout of tileable FPGAs used by openFPGA. *It gives us a new track index in each tile a longer wire crosses, which enables us to make long wires with a repeated single-tile pattern that "twists" the wires as they cross the tile. @@ -844,14 +946,17 @@ class t_rr_graph_storage { bool partitioned_; }; -// t_rr_graph_view is a read-only version of t_rr_graph_storage that only -// uses pointers and sizes to rr graph data. -// -// t_rr_graph_view enables efficient access to RR graph storage without owning -// the underlying storage. -// -// Because t_rr_graph_view only uses pointers and sizes, it is suitable for -// use with purely mmap'd data. +/** + * @brief t_rr_graph_view is a read-only version of t_rr_graph_storage that only + * uses pointers and sizes to RR graph data. + * + * @details + * t_rr_graph_view enables efficient access to RR graph storage without owning + * the underlying storage. + * + * Because t_rr_graph_view only uses pointers and sizes, it is suitable for + * use with purely mmap'd data. + */ class t_rr_graph_view { public: t_rr_graph_view(); @@ -861,19 +966,23 @@ class t_rr_graph_view { const vtr::array_view_id node_first_edge, const vtr::array_view_id node_fan_in, const vtr::array_view_id node_layer, + const std::unordered_map& node_name, const vtr::array_view_id node_ptc_twist_incr, const vtr::array_view_id edge_src_node, const vtr::array_view_id edge_dest_node, - const vtr::array_view_id edge_switch) + const vtr::array_view_id edge_switch, + const std::unordered_map& virtual_clock_network_root_idx) : node_storage_(node_storage) , node_ptc_(node_ptc) , node_first_edge_(node_first_edge) , node_fan_in_(node_fan_in) , node_layer_(node_layer) + , node_name_(node_name) , node_ptc_twist_incr_(node_ptc_twist_incr) , edge_src_node_(edge_src_node) , edge_dest_node_(edge_dest_node) - , edge_switch_(edge_switch) {} + , edge_switch_(edge_switch) + , virtual_clock_network_root_idx_(virtual_clock_network_root_idx) {} /**************** * Node methods * @@ -923,17 +1032,49 @@ class t_rr_graph_view { int node_class_num(RRNodeId id) const; //Same as ptc_num() but checks that type() is consistent int node_medium_num(RRNodeId id) const; //Same as ptc_num() but checks that type() is consistent - /* Retrieve fan_in for RRNodeId. */ + /** + * @brief Retrieve the fan-in for a given RRNodeId. + * + * @param id The RRNodeId for which to retrieve the fan-in. + * @return The fan-in value. + */ t_edge_size fan_in(RRNodeId id) const { return node_fan_in_[id]; } - /* Retrieve layer(die) number that RRNodeId is located at */ + /** + * @brief Retrieve the layer (die) number where the given RRNodeId is located. + * + * @param id The RRNodeId for which to retrieve the layer number. + * @return The layer number (die) where the RRNodeId is located. + */ short node_layer(RRNodeId id) const{ return node_layer_[id]; } - /* Retrieve twist number (if available) that RRNodeId used for its ptc number */ + /** + * @brief Retrieve the name assigned to a given node ID. + * + * If no name is assigned, an empty optional is returned. + * + * @param id The id of the node. + * @return An optional pointer to the string representing the name if found, + * otherwise an empty optional. + */ + std::optional node_name(RRNodeId id) const{ + auto it = node_name_.find(id); + if (it != node_name_.end()) { + return &it->second; // Return the value if key is found + } + return std::nullopt; // Return an empty optional if key is not found + } + + /** + * @brief Retrieve the twist number (if available) that the given RRNodeId used for its PTC number. + * + * @param id The RRNodeId for which to retrieve the twist number. + * @return The twist number used for the PTC number, or a default value if not available. + */ short node_ptc_twist_incr(RRNodeId id) const{ //check if ptc twist increment allocated if(node_ptc_twist_incr_.empty()){ @@ -942,29 +1083,101 @@ class t_rr_graph_view { return node_ptc_twist_incr_[id]; } - // This prefetechs hot RR node data required for optimization. - // - // Note: This is optional, but may lower time spent on memory stalls in - // some circumstances. + /** + * @brief Prefetches hot RR node data required for optimization. + * + * @details + * This is optional but may lower time spent on memory stalls in some circumstances. + * + * @param id The RRNodeId for which to prefetch hot node data. + */ inline void prefetch_node(RRNodeId id) const { VTR_PREFETCH(&node_storage_[id], 0, 0); } + /** + * @brief Returns the node ID of the virtual sink for the specified clock network name. + * + * If the clock network name is not found, the function returns INVALID RRNodeId. + * + * @param clock_network_name The name of the clock network. + * @return The node ID of the virtual sink associated with the provided clock network name, + * or INVALID RRNodeID if the clock network name is not found. + */ + RRNodeId virtual_clock_network_root_idx(const char* clock_network_name) const { + // Convert the input char* to a C++ string + std::string clock_network_name_str(clock_network_name); + + // Check if the clock network name exists in the list of virtual sink entries + auto it = virtual_clock_network_root_idx_.find(clock_network_name_str); + + if (it != virtual_clock_network_root_idx_.end()) { + // Return the node ID for the virtual sink of the given clock network name + return it->second; + } + + // Return INVALID RRNodeID if the clock network name is not found + return RRNodeId::INVALID(); + } + + + /** + * @brief Checks if the specified RRNode ID is a virtual sink for a clock network. + * + * A virtual sink is a node with the type SINK to which all clock network drive points are + * connected in the routing graph. + * When the two-stage router routes a net through a clock network, it first routes to the virtual sink + * in the first stage and then proceeds from there to the destination in the second stage. + * + * @param id The ID of an RRNode. + * @return True if the node with the given ID is a virtual sink for a clock network, false otherwise. + */ + bool is_virtual_clock_network_root(RRNodeId id) const { + for (const auto& pair : virtual_clock_network_root_idx_) { + if (pair.second == id) { + return true; + } + } + return false; + } + /* Edge accessors */ - // Returns a range of RREdgeId's belonging to RRNodeId id. - // - // If this range is empty, then RRNodeId id has no edges. + /** + * @brief Returns a range of RREdgeId's belonging to RRNodeId id. + * + * @details + * If this range is empty, then RRNodeId id has no edges. + * + * @param id The RRNodeId for which to retrieve the edge range. + * @return A range of RREdgeId's belonging to the specified RRNodeId. + */ vtr::StrongIdRange edge_range(RRNodeId id) const { return vtr::StrongIdRange(first_edge(id), last_edge(id)); } - // Get the destination node for the specified edge. + /** + * @brief Get the destination node for the specified edge. + * + * @details + * This function retrieves the RRNodeId representing the destination node for the specified edge. + * + * @param edge The RREdgeId for which to retrieve the destination node. + * @return The RRNodeId representing the destination node for the specified edge. + */ RRNodeId edge_sink_node(RREdgeId edge) const { return edge_dest_node_[edge]; } - // Get the switch used for the specified edge. + /** + * @brief Get the switch used for the specified edge. + * + * @details + * This function retrieves the switch used for the specified edge. + * + * @param edge The RREdgeId for which to retrieve the switch. + * @return The switch index used for the specified edge. + */ short edge_switch(RREdgeId edge) const { return edge_switch_[edge]; } @@ -983,10 +1196,13 @@ class t_rr_graph_view { vtr::array_view_id node_first_edge_; vtr::array_view_id node_fan_in_; vtr::array_view_id node_layer_; + const std::unordered_map& node_name_; vtr::array_view_id node_ptc_twist_incr_; vtr::array_view_id edge_src_node_; vtr::array_view_id edge_dest_node_; vtr::array_view_id edge_switch_; + const std::unordered_map& virtual_clock_network_root_idx_; + }; #endif /* _RR_GRAPH_STORAGE_ */ diff --git a/libs/librrgraph/src/base/rr_graph_view.h b/libs/librrgraph/src/base/rr_graph_view.h index 59680348eff..c7f49a86195 100644 --- a/libs/librrgraph/src/base/rr_graph_view.h +++ b/libs/librrgraph/src/base/rr_graph_view.h @@ -95,6 +95,19 @@ class RRGraphView { return node_storage_.node_type(node); } + /** + * @brief Retrieve the name assigned to a given node ID. + * + * If no name is assigned, an empty optional is returned. + * + * @param id The id of the node. + * @return An optional pointer to the string representing the name if found, + * otherwise an empty optional. + */ + std::optional node_name(RRNodeId node) const { + return node_storage_.node_name(node); + } + /** @brief Get the type string of a routing resource node. This function is inlined for runtime optimization. */ inline const char* node_type_string(RRNodeId node) const { return node_storage_.node_type_string(node); @@ -324,6 +337,21 @@ class RRGraphView { inline const char* node_side_string(RRNodeId node) const { return node_storage_.node_side_string(node); } + + /** @brief Get the node id of the clock network virtual sink */ + inline RRNodeId virtual_clock_network_root_idx(const char* clock_network_name) const { + return node_storage_.virtual_clock_network_root_idx(clock_network_name); + } + + /** + * @brief Checks if the specified RRNode ID is a virtual sink for a clock network. + * @param id The ID of an RRNode. + * @return True if the node with the given ID is a virtual sink for a clock network, false otherwise. + */ + inline bool is_virtual_clock_network_root(RRNodeId id) const { + return node_storage_.is_virtual_clock_network_root(id); + } + /** @brief Get the switch id that represents the iedge'th outgoing edge from a specific node * TODO: We may need to revisit this API and think about higher level APIs, like ``switch_delay()`` **/ @@ -402,7 +430,7 @@ class RRGraphView { /** @brief Get outgoing edges for a node. * This API is designed to enable range-based loop to walk through the outgoing edges of a node * Example: - * RRGraphView rr_graph; // A dummny rr_graph for a short example + * RRGraphView rr_graph; // A dummy rr_graph for a short example * RRNodeId node; // A dummy node for a short example * for (RREdgeId edge : rr_graph.edges(node)) { * // Do something with the edge @@ -486,7 +514,7 @@ class RRGraphView { } /** @brief Return the switch information that is categorized in the rr_switch_inf with a given id - * rr_switch_inf is created to minimize memory footprint of RRGraph classs + * rr_switch_inf is created to minimize memory footprint of RRGraph class * While the RRG could contain millions (even much larger) of edges, there are only * a limited number of types of switches. * Hence, we use a flyweight pattern to store switch-related information that differs diff --git a/libs/librrgraph/src/base/rr_node_impl.h b/libs/librrgraph/src/base/rr_node_impl.h index 4a76d0851bf..83b93e43b46 100644 --- a/libs/librrgraph/src/base/rr_node_impl.h +++ b/libs/librrgraph/src/base/rr_node_impl.h @@ -3,28 +3,35 @@ // This file provides the inline proxy implemenation for t_rr_node. // See the t_rr_node class comment for additional details. -#include "rr_node_types.h" +#include +#include #include "rr_node.h" #include "rr_graph_storage.h" -class node_idx_iterator : public std::iterator { +class node_idx_iterator { public: + using iterator_category = std::bidirectional_iterator_tag; + using difference_type = std::ptrdiff_t; + using value_type = const t_rr_node; + using pointer = value_type*; + using reference = value_type&; + node_idx_iterator(t_rr_node value) : value_(value) {} - iterator operator++() { + node_idx_iterator& operator++() { value_.next_node(); return *this; } - iterator operator--() { + node_idx_iterator& operator--() { value_.prev_node(); return *this; } reference operator*() const { return value_; } pointer operator->() const { return &value_; } - friend bool operator==(const node_idx_iterator lhs, const node_idx_iterator rhs) { return lhs.value_.id() == rhs.value_.id(); } - friend bool operator!=(const node_idx_iterator lhs, const node_idx_iterator rhs) { return !(lhs == rhs); } + friend bool operator==(const node_idx_iterator& lhs, const node_idx_iterator& rhs) { return lhs.value_.id() == rhs.value_.id(); } + friend bool operator!=(const node_idx_iterator& lhs, const node_idx_iterator& rhs) { return !(lhs == rhs); } private: t_rr_node value_; diff --git a/libs/librrgraph/src/base/rr_node_types.h b/libs/librrgraph/src/base/rr_node_types.h index aa872633b19..ecc5997001f 100644 --- a/libs/librrgraph/src/base/rr_node_types.h +++ b/libs/librrgraph/src/base/rr_node_types.h @@ -1,6 +1,8 @@ #ifndef RR_NODE_TYPES_H #define RR_NODE_TYPES_H +#include +#include #include #include #include @@ -65,23 +67,29 @@ typedef uint16_t t_edge_size; * * Used inconjunction with vtr::Range to return ranges of edge indices */ -class edge_idx_iterator : public std::iterator { +class edge_idx_iterator { public: + using iterator_category = std::bidirectional_iterator_tag; + using difference_type = std::ptrdiff_t; + using value_type = t_edge_size; + using pointer = t_edge_size*; + using reference = t_edge_size&; + edge_idx_iterator(value_type init) : value_(init) {} - iterator operator++() { + edge_idx_iterator& operator++() { value_ += 1; return *this; } - iterator operator--() { + edge_idx_iterator& operator--() { value_ -= 1; return *this; } reference operator*() { return value_; } pointer operator->() { return &value_; } - friend bool operator==(const edge_idx_iterator lhs, const edge_idx_iterator rhs) { return lhs.value_ == rhs.value_; } - friend bool operator!=(const edge_idx_iterator lhs, const edge_idx_iterator rhs) { return !(lhs == rhs); } + friend bool operator==(const edge_idx_iterator& lhs, const edge_idx_iterator& rhs) { return lhs.value_ == rhs.value_; } + friend bool operator!=(const edge_idx_iterator& lhs, const edge_idx_iterator& rhs) { return !(lhs == rhs); } private: value_type value_; diff --git a/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx.h b/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx.h index 85b55873e2d..041099c9bf4 100644 --- a/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx.h +++ b/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx.h @@ -4,9 +4,9 @@ * https://github.com/duck2/uxsdcxx * Modify only if your build process doesn't involve regenerating this file. * - * Cmdline: uxsdcxx/uxsdcxx.py /home/xifan/github/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd - * Input file: /home/xifan/github/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd - * md5sum of input file: f935bdbc0ff49d1ba93705b68f1db6dc + * Cmdline: /home/talaeikh/uxsdcxx/uxsdcxx.py /home/talaeikh/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd + * Input file: /home/talaeikh/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd + * md5sum of input file: 9c14a0ddd3c6bc1e690ca6abf467bae6 */ #include @@ -247,8 +247,8 @@ constexpr const char *atok_lookup_t_segment_timing[] = {"C_per_meter", "R_per_me enum class gtok_t_segment {TIMING}; constexpr const char *gtok_lookup_t_segment[] = {"timing"}; -enum class atok_t_segment {ID, NAME}; -constexpr const char *atok_lookup_t_segment[] = {"id", "name"}; +enum class atok_t_segment {ID, NAME, RES_TYPE}; +constexpr const char *atok_lookup_t_segment[] = {"id", "name", "res_type"}; enum class gtok_t_segments {SEGMENT}; constexpr const char *gtok_lookup_t_segments[] = {"segment"}; @@ -294,8 +294,8 @@ enum class gtok_t_metadata {META}; constexpr const char *gtok_lookup_t_metadata[] = {"meta"}; enum class gtok_t_node {LOC, TIMING, SEGMENT, METADATA}; constexpr const char *gtok_lookup_t_node[] = {"loc", "timing", "segment", "metadata"}; -enum class atok_t_node {CAPACITY, DIRECTION, ID, TYPE}; -constexpr const char *atok_lookup_t_node[] = {"capacity", "direction", "id", "type"}; +enum class atok_t_node {CAPACITY, CLK_RES_TYPE, DIRECTION, ID, NAME, TYPE}; +constexpr const char *atok_lookup_t_node[] = {"capacity", "clk_res_type", "direction", "id", "name", "type"}; enum class gtok_t_rr_nodes {NODE}; constexpr const char *gtok_lookup_t_rr_nodes[] = {"node"}; @@ -792,6 +792,14 @@ inline atok_t_segment lex_attr_t_segment(const char *in, const std::function.").c_str()); @@ -1339,6 +1347,9 @@ inline atok_t_node lex_attr_t_node(const char *in, const std::function.").c_str()); @@ -1575,9 +1599,11 @@ template /* Lookup tables for enums. */ constexpr const char *lookup_switch_type[] = {"UXSD_INVALID", "mux", "tristate", "pass_gate", "short", "buffer"}; +constexpr const char *lookup_segment_res_type[] = {"UXSD_INVALID", "GENERAL", "GCLK"}; constexpr const char *lookup_pin_type[] = {"UXSD_INVALID", "OPEN", "OUTPUT", "INPUT"}; constexpr const char *lookup_node_type[] = {"UXSD_INVALID", "CHANX", "CHANY", "SOURCE", "SINK", "OPIN", "IPIN", "MEDIUM"}; constexpr const char *lookup_node_direction[] = {"UXSD_INVALID", "INC_DIR", "DEC_DIR", "BI_DIR"}; +constexpr const char *lookup_node_clk_res_type[] = {"UXSD_INVALID", "VIRTUAL_SINK"}; constexpr const char *lookup_loc_side[] = {"UXSD_INVALID", "LEFT", "RIGHT", "TOP", "BOTTOM", "RIGHT_LEFT", "RIGHT_BOTTOM", "RIGHT_BOTTOM_LEFT", "TOP_RIGHT", "TOP_BOTTOM", "TOP_LEFT", "TOP_RIGHT_BOTTOM", "TOP_RIGHT_LEFT", "TOP_BOTTOM_LEFT", "TOP_RIGHT_BOTTOM_LEFT", "BOTTOM_LEFT"}; /* Lexers(string->token functions) for enums. */ @@ -1661,6 +1687,47 @@ inline enum_switch_type lex_enum_switch_type(const char *in, bool throw_on_inval return enum_switch_type::UXSD_INVALID; } +inline enum_segment_res_type lex_enum_segment_res_type(const char *in, bool throw_on_invalid, const std::function * report_error){ + unsigned int len = strlen(in); + switch(len){ + case 4: + switch(*((triehash_uu32*)&in[0])){ + case onechar('G', 0, 32) | onechar('C', 8, 32) | onechar('L', 16, 32) | onechar('K', 24, 32): + return enum_segment_res_type::GCLK; + break; + default: break; + } + break; + case 7: + switch(*((triehash_uu32*)&in[0])){ + case onechar('G', 0, 32) | onechar('E', 8, 32) | onechar('N', 16, 32) | onechar('E', 24, 32): + switch(in[4]){ + case onechar('R', 0, 8): + switch(in[5]){ + case onechar('A', 0, 8): + switch(in[6]){ + case onechar('L', 0, 8): + return enum_segment_res_type::GENERAL; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + if(throw_on_invalid) + noreturn_report(report_error, ("Found unrecognized enum value " + std::string(in) + " of enum_segment_res_type.").c_str()); + return enum_segment_res_type::UXSD_INVALID; +} + inline enum_pin_type lex_enum_pin_type(const char *in, bool throw_on_invalid, const std::function * report_error){ unsigned int len = strlen(in); switch(len){ @@ -1837,6 +1904,29 @@ inline enum_node_direction lex_enum_node_direction(const char *in, bool throw_on return enum_node_direction::UXSD_INVALID; } +inline enum_node_clk_res_type lex_enum_node_clk_res_type(const char *in, bool throw_on_invalid, const std::function * report_error){ + unsigned int len = strlen(in); + switch(len){ + case 12: + switch(*((triehash_uu64*)&in[0])){ + case onechar('V', 0, 64) | onechar('I', 8, 64) | onechar('R', 16, 64) | onechar('T', 24, 64) | onechar('U', 32, 64) | onechar('A', 40, 64) | onechar('L', 48, 64) | onechar('_', 56, 64): + switch(*((triehash_uu32*)&in[8])){ + case onechar('S', 0, 32) | onechar('I', 8, 32) | onechar('N', 16, 32) | onechar('K', 24, 32): + return enum_node_clk_res_type::VIRTUAL_SINK; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + if(throw_on_invalid) + noreturn_report(report_error, ("Found unrecognized enum value " + std::string(in) + " of enum_node_clk_res_type.").c_str()); + return enum_node_clk_res_type::UXSD_INVALID; +} + inline enum_loc_side lex_enum_loc_side(const char *in, bool throw_on_invalid, const std::function * report_error){ unsigned int len = strlen(in); switch(len){ @@ -2235,7 +2325,7 @@ inline void load_switch_required_attributes(const pugi::xml_node &root, int * id } inline void load_segment_required_attributes(const pugi::xml_node &root, int * id, const std::function * report_error){ - std::bitset<2> astate = 0; + std::bitset<3> astate = 0; for(pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()){ atok_t_segment in = lex_attr_t_segment(attr.name(), report_error); if(astate[(int)in] == 0) astate[(int)in] = 1; @@ -2247,10 +2337,13 @@ inline void load_segment_required_attributes(const pugi::xml_node &root, int * i case atok_t_segment::NAME: /* Attribute name set after element init */ break; + case atok_t_segment::RES_TYPE: + /* Attribute res_type set after element init */ + break; default: break; /* Not possible. */ } } - std::bitset<2> test_astate = astate | std::bitset<2>(0b00); + std::bitset<3> test_astate = astate | std::bitset<3>(0b100); if(!test_astate.all()) attr_error(test_astate, atok_lookup_t_segment, report_error); } @@ -2422,7 +2515,7 @@ inline void load_node_segment_required_attributes(const pugi::xml_node &root, in } inline void load_node_required_attributes(const pugi::xml_node &root, unsigned int * capacity, unsigned int * id, enum_node_type * type, const std::function * report_error){ - std::bitset<4> astate = 0; + std::bitset<6> astate = 0; for(pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()){ atok_t_node in = lex_attr_t_node(attr.name(), report_error); if(astate[(int)in] == 0) astate[(int)in] = 1; @@ -2431,19 +2524,25 @@ inline void load_node_required_attributes(const pugi::xml_node &root, unsigned i case atok_t_node::CAPACITY: *capacity = load_unsigned_int(attr.value(), report_error); break; + case atok_t_node::CLK_RES_TYPE: + /* Attribute clk_res_type set after element init */ + break; case atok_t_node::DIRECTION: /* Attribute direction set after element init */ break; case atok_t_node::ID: *id = load_unsigned_int(attr.value(), report_error); break; + case atok_t_node::NAME: + /* Attribute name set after element init */ + break; case atok_t_node::TYPE: *type = lex_enum_node_type(attr.value(), true, report_error); break; default: break; /* Not possible. */ } } - std::bitset<4> test_astate = astate | std::bitset<4>(0b0010); + std::bitset<6> test_astate = astate | std::bitset<6>(0b010110); if(!test_astate.all()) attr_error(test_astate, atok_lookup_t_node, report_error); } @@ -2840,6 +2939,9 @@ inline void load_segment(const pugi::xml_node &root, T &out, Context &context, c case atok_t_segment::NAME: out.set_segment_name(attr.value(), context); break; + case atok_t_segment::RES_TYPE: + out.set_segment_res_type(lex_enum_segment_res_type(attr.value(), true, report_error), context); + break; default: break; /* Not possible. */ } } @@ -3448,12 +3550,18 @@ inline void load_node(const pugi::xml_node &root, T &out, Context &context, cons case atok_t_node::CAPACITY: /* Attribute capacity is already set */ break; + case atok_t_node::CLK_RES_TYPE: + out.set_node_clk_res_type(lex_enum_node_clk_res_type(attr.value(), true, report_error), context); + break; case atok_t_node::DIRECTION: out.set_node_direction(lex_enum_node_direction(attr.value(), true, report_error), context); break; case atok_t_node::ID: /* Attribute id is already set */ break; + case atok_t_node::NAME: + out.set_node_name(attr.value(), context); + break; case atok_t_node::TYPE: /* Attribute type is already set */ break; @@ -3897,6 +4005,8 @@ inline void write_segments(T &in, std::ostream &os, Context &context){ os << ""; write_segment(in, os, child_context); os << "\n"; @@ -4068,9 +4178,13 @@ inline void write_rr_nodes(T &in, std::ostream &os, Context &context){ auto child_context = in.get_rr_nodes_node(i, context); os << ""; write_node(in, os, child_context); diff --git a/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx_capnp.h b/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx_capnp.h index 062a33835cf..a4156484ed2 100644 --- a/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx_capnp.h +++ b/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx_capnp.h @@ -4,9 +4,9 @@ * https://github.com/duck2/uxsdcxx * Modify only if your build process doesn't involve regenerating this file. * - * Cmdline: uxsdcxx/uxsdcap.py /home/xifan/github/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd - * Input file: /home/xifan/github/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd - * md5sum of input file: f935bdbc0ff49d1ba93705b68f1db6dc + * Cmdline: /home/talaeikh/uxsdcxx/uxsdcap.py /home/talaeikh/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd + * Input file: /home/talaeikh/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd + * md5sum of input file: 9c14a0ddd3c6bc1e690ca6abf467bae6 */ #include @@ -154,6 +154,33 @@ inline ucap::SwitchType conv_to_enum_switch_type(enum_switch_type e) { } } +inline enum_segment_res_type conv_enum_segment_res_type(ucap::SegmentResType e, const std::function * report_error) { + switch(e) { + case ucap::SegmentResType::UXSD_INVALID: + return enum_segment_res_type::UXSD_INVALID; + case ucap::SegmentResType::GENERAL: + return enum_segment_res_type::GENERAL; + case ucap::SegmentResType::GCLK: + return enum_segment_res_type::GCLK; + default: + (*report_error)("Unknown enum_segment_res_type"); + throw std::runtime_error("Unreachable!"); + } +} + +inline ucap::SegmentResType conv_to_enum_segment_res_type(enum_segment_res_type e) { + switch(e) { + case enum_segment_res_type::UXSD_INVALID: + return ucap::SegmentResType::UXSD_INVALID; + case enum_segment_res_type::GENERAL: + return ucap::SegmentResType::GENERAL; + case enum_segment_res_type::GCLK: + return ucap::SegmentResType::GCLK; + default: + throw std::runtime_error("Unknown enum_segment_res_type"); + } +} + inline enum_pin_type conv_enum_pin_type(ucap::PinType e, const std::function * report_error) { switch(e) { case ucap::PinType::UXSD_INVALID: @@ -259,6 +286,29 @@ inline ucap::NodeDirection conv_to_enum_node_direction(enum_node_direction e) { } } +inline enum_node_clk_res_type conv_enum_node_clk_res_type(ucap::NodeClkResType e, const std::function * report_error) { + switch(e) { + case ucap::NodeClkResType::UXSD_INVALID: + return enum_node_clk_res_type::UXSD_INVALID; + case ucap::NodeClkResType::VIRTUAL_SINK: + return enum_node_clk_res_type::VIRTUAL_SINK; + default: + (*report_error)("Unknown enum_node_clk_res_type"); + throw std::runtime_error("Unreachable!"); + } +} + +inline ucap::NodeClkResType conv_to_enum_node_clk_res_type(enum_node_clk_res_type e) { + switch(e) { + case enum_node_clk_res_type::UXSD_INVALID: + return ucap::NodeClkResType::UXSD_INVALID; + case enum_node_clk_res_type::VIRTUAL_SINK: + return ucap::NodeClkResType::VIRTUAL_SINK; + default: + throw std::runtime_error("Unknown enum_node_clk_res_type"); + } +} + inline enum_loc_side conv_enum_loc_side(ucap::LocSide e, const std::function * report_error) { switch(e) { case ucap::LocSide::UXSD_INVALID: @@ -552,6 +602,7 @@ inline void load_segment_capnp_type(const ucap::Segment::Reader &root, T &out, C (void)stack; out.set_segment_name(root.getName().cStr(), context); + out.set_segment_res_type(conv_enum_segment_res_type(root.getResType(), report_error), context); stack->push_back(std::make_pair("getTiming", 0)); if (root.hasTiming()) { auto child_el = root.getTiming(); @@ -775,7 +826,9 @@ inline void load_node_capnp_type(const ucap::Node::Reader &root, T &out, Context (void)report_error; (void)stack; + out.set_node_clk_res_type(conv_enum_node_clk_res_type(root.getClkResType(), report_error), context); out.set_node_direction(conv_enum_node_direction(root.getDirection(), report_error), context); + out.set_node_name(root.getName().cStr(), context); stack->push_back(std::make_pair("getLoc", 0)); if (root.hasLoc()) { auto child_el = root.getLoc(); @@ -1050,6 +1103,8 @@ inline void write_segments_capnp_type(T &in, ucap::Segments::Builder &root, Cont auto child_context = in.get_segments_segment(i, context); segments_segment.setId(in.get_segment_id(child_context)); segments_segment.setName(in.get_segment_name(child_context)); + if((bool)in.get_segment_res_type(child_context)) + segments_segment.setResType(conv_to_enum_segment_res_type(in.get_segment_res_type(child_context))); write_segment_capnp_type(in, segments_segment, child_context); } } @@ -1201,9 +1256,13 @@ inline void write_rr_nodes_capnp_type(T &in, ucap::RrNodes::Builder &root, Conte auto rr_nodes_node = rr_nodes_nodes[i]; auto child_context = in.get_rr_nodes_node(i, context); rr_nodes_node.setCapacity(in.get_node_capacity(child_context)); + if((bool)in.get_node_clk_res_type(child_context)) + rr_nodes_node.setClkResType(conv_to_enum_node_clk_res_type(in.get_node_clk_res_type(child_context))); if((bool)in.get_node_direction(child_context)) rr_nodes_node.setDirection(conv_to_enum_node_direction(in.get_node_direction(child_context))); rr_nodes_node.setId(in.get_node_id(child_context)); + if((bool)in.get_node_name(child_context)) + rr_nodes_node.setName(in.get_node_name(child_context)); rr_nodes_node.setType(conv_to_enum_node_type(in.get_node_type(child_context))); write_node_capnp_type(in, rr_nodes_node, child_context); } diff --git a/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx_interface.h b/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx_interface.h index d1ad5347910..2758b8cd077 100644 --- a/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx_interface.h +++ b/libs/librrgraph/src/io/gen/rr_graph_uxsdcxx_interface.h @@ -4,9 +4,9 @@ * https://github.com/duck2/uxsdcxx * Modify only if your build process doesn't involve regenerating this file. * - * Cmdline: uxsdcxx/uxsdcxx.py /home/xifan/github/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd - * Input file: /home/xifan/github/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd - * md5sum of input file: f935bdbc0ff49d1ba93705b68f1db6dc + * Cmdline: /home/talaeikh/uxsdcxx/uxsdcxx.py /home/talaeikh/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd + * Input file: /home/talaeikh/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd + * md5sum of input file: 9c14a0ddd3c6bc1e690ca6abf467bae6 */ #include @@ -23,12 +23,16 @@ namespace uxsd { enum class enum_switch_type {UXSD_INVALID = 0, MUX, TRISTATE, PASS_GATE, SHORT, BUFFER}; +enum class enum_segment_res_type {UXSD_INVALID = 0, GENERAL, GCLK}; + enum class enum_pin_type {UXSD_INVALID = 0, OPEN, OUTPUT, INPUT}; enum class enum_node_type {UXSD_INVALID = 0, CHANX, CHANY, SOURCE, SINK, OPIN, IPIN, MEDIUM}; enum class enum_node_direction {UXSD_INVALID = 0, INC_DIR, DEC_DIR, BI_DIR}; +enum class enum_node_clk_res_type {UXSD_INVALID = 0, VIRTUAL_SINK}; + enum class enum_loc_side {UXSD_INVALID = 0, LEFT, RIGHT, TOP, BOTTOM, RIGHT_LEFT, RIGHT_BOTTOM, RIGHT_BOTTOM_LEFT, TOP_RIGHT, TOP_BOTTOM, TOP_LEFT, TOP_RIGHT_BOTTOM, TOP_RIGHT_LEFT, TOP_BOTTOM_LEFT, TOP_RIGHT_BOTTOM_LEFT, BOTTOM_LEFT}; /* Base class for the schema. */ @@ -136,8 +140,8 @@ class RrGraphBase { * * * - * - * + * + * * * */ @@ -188,7 +192,7 @@ class RrGraphBase { /** Generated for complex type "switch": * * - * + * * * * @@ -214,7 +218,7 @@ class RrGraphBase { /** Generated for complex type "switches": * * - * + * * * */ @@ -238,15 +242,18 @@ class RrGraphBase { /** Generated for complex type "segment": * * - * + * * * * + * * */ virtual inline int get_segment_id(typename ContextTypes::SegmentReadContext &ctx) = 0; virtual inline const char * get_segment_name(typename ContextTypes::SegmentReadContext &ctx) = 0; virtual inline void set_segment_name(const char * name, typename ContextTypes::SegmentWriteContext &ctx) = 0; + virtual inline enum_segment_res_type get_segment_res_type(typename ContextTypes::SegmentReadContext &ctx) = 0; + virtual inline void set_segment_res_type(enum_segment_res_type res_type, typename ContextTypes::SegmentWriteContext &ctx) = 0; virtual inline typename ContextTypes::SegmentTimingWriteContext init_segment_timing(typename ContextTypes::SegmentWriteContext &ctx) = 0; virtual inline void finish_segment_timing(typename ContextTypes::SegmentTimingWriteContext &ctx) = 0; virtual inline typename ContextTypes::SegmentTimingReadContext get_segment_timing(typename ContextTypes::SegmentReadContext &ctx) = 0; @@ -255,7 +262,7 @@ class RrGraphBase { /** Generated for complex type "segments": * * - * + * * * */ @@ -281,7 +288,7 @@ class RrGraphBase { /** Generated for complex type "pin_class": * * - * + * * * * @@ -296,7 +303,7 @@ class RrGraphBase { /** Generated for complex type "block_type": * * - * + * * * * @@ -318,7 +325,7 @@ class RrGraphBase { /** Generated for complex type "block_types": * * - * + * * * */ @@ -330,7 +337,7 @@ class RrGraphBase { /** Generated for complex type "grid_loc": * - * + * * * * @@ -349,7 +356,7 @@ class RrGraphBase { /** Generated for complex type "grid_locs": * * - * + * * * */ @@ -361,7 +368,7 @@ class RrGraphBase { /** Generated for complex type "node_loc": * - * + * * * * @@ -417,7 +424,7 @@ class RrGraphBase { /** Generated for complex type "metadata": * * - * + * * * */ @@ -431,20 +438,26 @@ class RrGraphBase { * * * - * - * - * + * + * + * * * * + * * + * * * */ virtual inline unsigned int get_node_capacity(typename ContextTypes::NodeReadContext &ctx) = 0; + virtual inline enum_node_clk_res_type get_node_clk_res_type(typename ContextTypes::NodeReadContext &ctx) = 0; + virtual inline void set_node_clk_res_type(enum_node_clk_res_type clk_res_type, typename ContextTypes::NodeWriteContext &ctx) = 0; virtual inline enum_node_direction get_node_direction(typename ContextTypes::NodeReadContext &ctx) = 0; virtual inline void set_node_direction(enum_node_direction direction, typename ContextTypes::NodeWriteContext &ctx) = 0; virtual inline unsigned int get_node_id(typename ContextTypes::NodeReadContext &ctx) = 0; + virtual inline const char * get_node_name(typename ContextTypes::NodeReadContext &ctx) = 0; + virtual inline void set_node_name(const char * name, typename ContextTypes::NodeWriteContext &ctx) = 0; virtual inline enum_node_type get_node_type(typename ContextTypes::NodeReadContext &ctx) = 0; virtual inline typename ContextTypes::NodeLocWriteContext init_node_loc(typename ContextTypes::NodeWriteContext &ctx, int xhigh, int xlow, int yhigh, int ylow) = 0; virtual inline void finish_node_loc(typename ContextTypes::NodeLocWriteContext &ctx) = 0; @@ -478,7 +491,7 @@ class RrGraphBase { /** Generated for complex type "edge": * * - * + * * * * diff --git a/libs/librrgraph/src/io/rr_graph.xsd b/libs/librrgraph/src/io/rr_graph.xsd index dd7af495225..ad307519557 100644 --- a/libs/librrgraph/src/io/rr_graph.xsd +++ b/libs/librrgraph/src/io/rr_graph.xsd @@ -143,12 +143,20 @@ + + + + + + + + @@ -287,7 +301,9 @@ + + diff --git a/libs/librrgraph/src/io/rr_graph_reader.cpp b/libs/librrgraph/src/io/rr_graph_reader.cpp index a62f41d84d9..ec574080dba 100644 --- a/libs/librrgraph/src/io/rr_graph_reader.cpp +++ b/libs/librrgraph/src/io/rr_graph_reader.cpp @@ -50,7 +50,6 @@ void load_rr_file(RRGraphBuilder* rr_graph_builder, const t_arch* arch, t_chan_width* chan_width, const enum e_base_cost_type base_cost_type, - const int virtual_clock_network_root_idx, int* wire_to_rr_ipin_switch, int* wire_to_rr_ipin_switch_between_dice, const char* read_rr_graph_name, @@ -86,7 +85,6 @@ void load_rr_file(RRGraphBuilder* rr_graph_builder, &rr_graph_builder->rr_switch(), rr_indexed_data, rr_rc_data, - virtual_clock_network_root_idx, arch_switch_inf, rr_graph->rr_segments(), physical_tile_types, diff --git a/libs/librrgraph/src/io/rr_graph_reader.h b/libs/librrgraph/src/io/rr_graph_reader.h index 0e7234cbe7e..8549b712bdf 100644 --- a/libs/librrgraph/src/io/rr_graph_reader.h +++ b/libs/librrgraph/src/io/rr_graph_reader.h @@ -25,7 +25,6 @@ void load_rr_file(RRGraphBuilder* rr_graph_builder, const t_arch* arch, t_chan_width* chan_width, const enum e_base_cost_type base_cost_type, - const int virtual_clock_network_root_idx, int* wire_to_rr_ipin_switch, int* wire_to_rr_ipin_switch_between_dice, const char* read_rr_graph_name, diff --git a/libs/librrgraph/src/io/rr_graph_uxsdcxx_serializer.h b/libs/librrgraph/src/io/rr_graph_uxsdcxx_serializer.h index bfadca34771..7e3964ad6c5 100644 --- a/libs/librrgraph/src/io/rr_graph_uxsdcxx_serializer.h +++ b/libs/librrgraph/src/io/rr_graph_uxsdcxx_serializer.h @@ -3,6 +3,7 @@ #include #include #include +#include #include "rr_graph_uxsdcxx_interface.h" @@ -286,7 +287,6 @@ class RrGraphSerializer final : public uxsd::RrGraphBase { vtr::vector* rr_switch_inf, vtr::vector* rr_indexed_data, std::vector* rr_rc_data, - const int virtual_clock_network_root_idx, const std::vector& arch_switch_inf, const vtr::vector& segment_inf, const std::vector& physical_tile_types, @@ -305,7 +305,6 @@ class RrGraphSerializer final : public uxsd::RrGraphBase { , rr_indexed_data_(rr_indexed_data) , read_rr_graph_filename_(read_rr_graph_filename) , rr_rc_data_(rr_rc_data) - , virtual_clock_network_root_idx_(virtual_clock_network_root_idx) , graph_type_(graph_type) , base_cost_type_(base_cost_type) , do_check_rr_graph_(do_check_rr_graph) @@ -923,8 +922,18 @@ class RrGraphSerializer final : public uxsd::RrGraphBase { return id; } - inline void finish_rr_nodes_node(int& /*inode*/) final { + inline void finish_rr_nodes_node(int& inode) final { + auto node = (*rr_nodes_)[inode]; + RRNodeId node_id = node.id(); + + // At this point, all attributes for the node are loaded. Check whether the current node is included in the temporary list of + // clock network virtual sinks. If it is, permanently add it to the unordered map in rr_graph_storage, using the attribute + // name as the key. + if (clock_net_virtual_sinks.find(inode) != clock_net_virtual_sinks.end()) { + rr_graph_builder_->set_virtual_clock_network_root_idx(node_id); + } } + inline size_t num_rr_nodes_node(void*& /*ctx*/) final { return rr_nodes_->size(); @@ -946,6 +955,14 @@ class RrGraphSerializer final : public uxsd::RrGraphBase { return to_uxsd_node_type(rr_graph.node_type(node.id())); } + inline const char* get_node_name(const t_rr_node& node) final { + const auto& rr_graph = (*rr_graph_); + auto node_name = rr_graph.node_name(node.id()); + if(node_name) + return node_name.value()->c_str(); + return nullptr; + } + inline void set_node_direction(uxsd::enum_node_direction direction, int& inode) final { const auto& rr_graph = (*rr_graph_); auto node = (*rr_nodes_)[inode]; @@ -970,6 +987,40 @@ class RrGraphSerializer final : public uxsd::RrGraphBase { } } + inline void set_node_name(const char * name, int& inode) final { + if(name[0] != '\0') + { + // Do not store the attribute name if the string is empty + auto node = (*rr_nodes_)[inode]; + RRNodeId node_id = node.id(); + std::string name_str(name); + rr_graph_builder_->set_node_name(node_id, name_str); + } + + } + // Currently, this function only processes cases where clk_res_type=VIRTUAL_SINK + // It temporarily stores the node ID of the virtual sink in a temporary set. Eventually, + //the node ID will be stored in an unordered map within rr_graph_storage, using the attribute "name" + // as the key. Since, at this point in the code, the "name" attribute might not have been processed yet, + //the final storage will occur in the finish_rr_nodes_node function. + inline void set_node_clk_res_type(uxsd::enum_node_clk_res_type clk_res_type, int& inode) final { + if(clk_res_type == uxsd::enum_node_clk_res_type::VIRTUAL_SINK) + { + clock_net_virtual_sinks.insert(inode); + } + } + inline uxsd::enum_node_clk_res_type get_node_clk_res_type(const t_rr_node& node) final { + // Currently only VIRTUAL_SINK is supported as the clk_res_type + // If the node id doesn't match the node id of the clock virtual sink + // the function returns UXSD_INVALID + const auto& rr_graph = (*rr_graph_); + RRNodeId node_id = node.id(); + if (rr_graph.is_virtual_clock_network_root(node_id)) { + return uxsd::enum_node_clk_res_type::VIRTUAL_SINK; + } + return uxsd::enum_node_clk_res_type::UXSD_INVALID; + } + inline void* init_rr_graph_rr_nodes(void*& /*ctx*/) final { rr_nodes_->clear(); seg_index_.resize(CHANX_COST_INDEX_START + segment_inf_x_.size() + segment_inf_y_.size(), -1); @@ -1310,6 +1361,19 @@ class RrGraphSerializer final : public uxsd::RrGraphBase { segment->name.c_str(), name); } } + inline uxsd::enum_segment_res_type get_segment_res_type(const t_segment_inf*& segment) final { + return to_uxsd_segment_res_type(segment->res_type); + } + inline void set_segment_res_type(uxsd::enum_segment_res_type seg_res_type, const t_segment_inf*& segment) final { + if (segment->res_type != from_uxsd_segment_res_type(seg_res_type)) { + const auto arch_index = static_cast(segment->res_type); + const auto rrgraph_index = static_cast(from_uxsd_segment_res_type(seg_res_type)); + + report_error( + "Architecture file does not match RR graph's segment res_type: arch uses %s, RR graph uses %s", + RES_TYPE_STRING[arch_index], RES_TYPE_STRING[rrgraph_index]); + } + } /** Generated for complex type "segments": * @@ -1771,7 +1835,6 @@ class RrGraphSerializer final : public uxsd::RrGraphBase { vib_grid_, *chan_width_, graph_type_, - virtual_clock_network_root_idx_, is_flat_); } } @@ -1919,6 +1982,30 @@ class RrGraphSerializer final : public uxsd::RrGraphBase { } } + uxsd::enum_segment_res_type to_uxsd_segment_res_type(SegResType segment_res_type) { + switch (segment_res_type) { + case SegResType::GCLK: + return uxsd::enum_segment_res_type::GCLK; + case SegResType::GENERAL: + return uxsd::enum_segment_res_type::GENERAL; + default: + report_error( + "Invalid segment_res_type %d", segment_res_type); + } + } + + SegResType from_uxsd_segment_res_type(uxsd::enum_segment_res_type segment_res_type) { + switch (segment_res_type) { + case uxsd::enum_segment_res_type::GCLK: + return SegResType::GCLK; + case uxsd::enum_segment_res_type::GENERAL: + return SegResType::GENERAL; + default: + report_error( + "Invalid node segment_res_type %d", segment_res_type); + } + } + t_rr_type from_uxsd_node_type(uxsd::enum_node_type type) { switch (type) { case uxsd::enum_node_type::CHANX: @@ -2066,6 +2153,7 @@ class RrGraphSerializer final : public uxsd::RrGraphBase { // Temporary storage vtr::vector seg_index_; std::string temp_string_; + std::unordered_set clock_net_virtual_sinks; // Temporary set storing the ID of nodes that have clk_res_type=virtual_sink // Constant mapping which is frequently used std::array side_map_; @@ -2082,7 +2170,6 @@ class RrGraphSerializer final : public uxsd::RrGraphBase { t_rr_node_indices* rr_node_indices_; std::string* read_rr_graph_filename_; std::vector* rr_rc_data_; - const int virtual_clock_network_root_idx_; // Constant data for loads and writes. const t_graph_type graph_type_; diff --git a/libs/librrgraph/src/io/rr_graph_writer.cpp b/libs/librrgraph/src/io/rr_graph_writer.cpp index 6df594d49f1..d254ae9edb7 100644 --- a/libs/librrgraph/src/io/rr_graph_writer.cpp +++ b/libs/librrgraph/src/io/rr_graph_writer.cpp @@ -37,7 +37,6 @@ void write_rr_graph(RRGraphBuilder* rr_graph_builder, const t_arch* arch, t_chan_width* chan_width, const char* file_name, - const int virtual_clock_network_root_idx, bool echo_enabled, const char* echo_file_name, bool is_flat) { @@ -60,7 +59,6 @@ void write_rr_graph(RRGraphBuilder* rr_graph_builder, &rr_graph_builder->rr_switch(), rr_indexed_data, rr_rc_data, - virtual_clock_network_root_idx, arch_switch_inf, rr_graph_view->rr_segments(), physical_tile_types, diff --git a/libs/librrgraph/src/io/rr_graph_writer.h b/libs/librrgraph/src/io/rr_graph_writer.h index 467d65bb7ea..b84fe3e9f6e 100644 --- a/libs/librrgraph/src/io/rr_graph_writer.h +++ b/libs/librrgraph/src/io/rr_graph_writer.h @@ -23,7 +23,6 @@ void write_rr_graph(RRGraphBuilder* rr_graph_builder, const t_arch* arch, t_chan_width* chan_width, const char* file_name, - const int virtual_clock_network_root_idx, bool echo_enabled, const char* echo_file_name, bool is_flat); diff --git a/libs/libvtrcapnproto/gen/rr_graph_uxsdcxx.capnp b/libs/libvtrcapnproto/gen/rr_graph_uxsdcxx.capnp index 89590cf4a3a..e1f5b4c5b04 100644 --- a/libs/libvtrcapnproto/gen/rr_graph_uxsdcxx.capnp +++ b/libs/libvtrcapnproto/gen/rr_graph_uxsdcxx.capnp @@ -2,11 +2,11 @@ # https://github.com/duck2/uxsdcxx # Modify only if your build process doesn't involve regenerating this file. # -# Cmdline: uxsdcxx/uxsdcap.py /home/xifan/github/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd -# Input file: /home/xifan/github/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd -# md5sum of input file: f935bdbc0ff49d1ba93705b68f1db6dc +# Cmdline: /home/talaeikh/uxsdcxx/uxsdcap.py /home/talaeikh/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd +# Input file: /home/talaeikh/vtr-verilog-to-routing/libs/librrgraph/src/io/rr_graph.xsd +# md5sum of input file: 9c14a0ddd3c6bc1e690ca6abf467bae6 -@0xf6fcbf56b4532db5; +@0xa136dd28cdc8783b; using Cxx = import "/capnp/c++.capnp"; $Cxx.namespace("ucap"); @@ -19,6 +19,12 @@ enum SwitchType { buffer @5; } +enum SegmentResType { + uxsdInvalid @0; + general @1; + gclk @2; +} + enum PinType { uxsdInvalid @0; open @1; @@ -43,6 +49,11 @@ enum NodeDirection { biDir @3; } +enum NodeClkResType { + uxsdInvalid @0; + virtualSink @1; +} + enum LocSide { uxsdInvalid @0; left @1; @@ -119,7 +130,8 @@ struct SegmentTiming { struct Segment { id @0 :Int32; name @1 :Text; - timing @2 :SegmentTiming; + resType @2 :SegmentResType; + timing @3 :SegmentTiming; } struct Segments { @@ -192,13 +204,15 @@ struct Metadata { struct Node { capacity @0 :UInt32; - direction @1 :NodeDirection; - id @2 :UInt32; - type @3 :NodeType; - loc @4 :NodeLoc; - timing @5 :NodeTiming; - segment @6 :NodeSegment; - metadata @7 :Metadata; + clkResType @1 :NodeClkResType; + direction @2 :NodeDirection; + id @3 :UInt32; + name @4 :Text; + type @5 :NodeType; + loc @6 :NodeLoc; + timing @7 :NodeTiming; + segment @8 :NodeSegment; + metadata @9 :Metadata; } struct RrNodes { diff --git a/libs/libvtrutil/CMakeLists.txt b/libs/libvtrutil/CMakeLists.txt index 102b1150b90..e35d0246b8b 100644 --- a/libs/libvtrutil/CMakeLists.txt +++ b/libs/libvtrutil/CMakeLists.txt @@ -142,5 +142,8 @@ target_link_libraries(test_vtrutil libvtrutil Catch2::Catch2WithMain) -add_test(NAME test_vtrutil COMMAND test_vtrutil --colour-mode ansi) +add_test(NAME test_vtrutil + COMMAND test_vtrutil + --colour-mode ansi + ) diff --git a/libs/libvtrutil/src/vtr_array_view.h b/libs/libvtrutil/src/vtr_array_view.h index 3383263e040..0bb48f65eec 100644 --- a/libs/libvtrutil/src/vtr_array_view.h +++ b/libs/libvtrutil/src/vtr_array_view.h @@ -207,21 +207,15 @@ class array_view_id : private array_view { * to iterate through the keys with a range-based for loop * */ - class key_iterator : public std::iterator { + class key_iterator { public: - /** - * @brief Intermediate type my_iter - * - * We use the intermediate type my_iter to avoid a potential ambiguity for which - * clang generates errors and warnings - */ - using my_iter = typename std::iterator; - using typename my_iter::iterator; - using typename my_iter::pointer; - using typename my_iter::reference; - using typename my_iter::value_type; + using iterator_category = std::bidirectional_iterator_tag; + using difference_type = std::ptrdiff_t; + using value_type = key_type; + using pointer = key_type*; + using reference = key_type&; - key_iterator(key_iterator::value_type init) + key_iterator(value_type init) : value_(init) {} /** @@ -233,13 +227,13 @@ class array_view_id : private array_view { */ ///@brief increment the iterator - key_iterator operator++() { + key_iterator& operator++() { value_ = value_type(size_t(value_) + 1); return *this; } ///@brief decrement the iterator - key_iterator operator--() { + key_iterator& operator--() { value_ = value_type(size_t(value_) - 1); return *this; } @@ -250,8 +244,8 @@ class array_view_id : private array_view { ///@brief -> operator pointer operator->() { return &value_; } - friend bool operator==(const key_iterator lhs, const key_iterator rhs) { return lhs.value_ == rhs.value_; } - friend bool operator!=(const key_iterator lhs, const key_iterator rhs) { return !(lhs == rhs); } + friend bool operator==(const key_iterator& lhs, const key_iterator& rhs) { return lhs.value_ == rhs.value_; } + friend bool operator!=(const key_iterator& lhs, const key_iterator& rhs) { return !(lhs == rhs); } private: value_type value_; diff --git a/libs/libvtrutil/src/vtr_assert.cpp b/libs/libvtrutil/src/vtr_assert.cpp index b77bec6e428..1aad60c7376 100644 --- a/libs/libvtrutil/src/vtr_assert.cpp +++ b/libs/libvtrutil/src/vtr_assert.cpp @@ -16,6 +16,8 @@ void handle_assert(const char* expr, const char* file, unsigned int line, const fprintf(stderr, " (%s)", msg); } fprintf(stderr, ".\n"); + fflush(stdout); + fflush(stderr); std::abort(); } diff --git a/libs/libvtrutil/src/vtr_error.h b/libs/libvtrutil/src/vtr_error.h index d710c66305d..f13d46bcdb7 100644 --- a/libs/libvtrutil/src/vtr_error.h +++ b/libs/libvtrutil/src/vtr_error.h @@ -3,6 +3,7 @@ #include #include +#include /** * @file @@ -34,9 +35,9 @@ namespace vtr { class VtrError : public std::runtime_error { public: ///@brief VtrError constructor - VtrError(std::string msg = "", std::string new_filename = "", size_t new_linenumber = -1) + VtrError(const std::string& msg = "", std::string new_filename = "", size_t new_linenumber = -1) : std::runtime_error(msg) - , filename_(new_filename) + , filename_(std::move(new_filename)) , linenumber_(new_linenumber) {} /** diff --git a/libs/libvtrutil/src/vtr_expr_eval.cpp b/libs/libvtrutil/src/vtr_expr_eval.cpp index 165b9caa51a..791319f4367 100644 --- a/libs/libvtrutil/src/vtr_expr_eval.cpp +++ b/libs/libvtrutil/src/vtr_expr_eval.cpp @@ -58,13 +58,13 @@ static bool is_char_number(const char ch); static bool is_operator(const char ch); // returns true if the specified name is a known function operator -static bool is_function(std::string name); +static bool is_function(const std::string& name); // returns true if the specified name is a known compound operator t_compound_operator is_compound_op(const char* ch); // returns true if the specified name is a known variable -static bool is_variable(std::string var); +static bool is_variable(const std::string& var); // returns the length of any identifier (e.g. name, function) starting at the beginning of str static int identifier_length(const char* str); @@ -76,14 +76,14 @@ static bool goto_next_char(int* str_ind, const string& pw_formula, char ch); bool same_string(std::string str1, std::string str2); //checks if the block indicated by the user was one of the moved blocks in the last perturbation -int in_blocks_affected(std::string expression_left); +int in_blocks_affected(const std::string& expression_left); //the function of += operator bool additional_assignment_op(int arg1, int arg2); /**** Function Implementations ****/ /* returns integer result according to specified non-piece-wise formula and data */ -int FormulaParser::parse_formula(std::string formula, const t_formula_data& mydata, bool is_breakpoint) { +int FormulaParser::parse_formula(const std::string& formula, const t_formula_data& mydata, bool is_breakpoint) { int result = -1; /* output in reverse-polish notation */ @@ -150,7 +150,7 @@ int FormulaParser::parse_piecewise_formula(const char* formula, const t_formula_ } tmp_ind_count = str_ind - tmp_ind_start; /* range start is between { and : */ substr = pw_formula.substr(tmp_ind_start, tmp_ind_count); - range_start = parse_formula(substr.c_str(), mydata); + range_start = parse_formula(substr, mydata); /* get the end of the range */ tmp_ind_start = str_ind + 1; @@ -160,7 +160,7 @@ int FormulaParser::parse_piecewise_formula(const char* formula, const t_formula_ } tmp_ind_count = str_ind - tmp_ind_start; /* range end is between : and } */ substr = pw_formula.substr(tmp_ind_start, tmp_ind_count); - range_end = parse_formula(substr.c_str(), mydata); + range_end = parse_formula(substr, mydata); if (range_start > range_end) { throw vtr::VtrError(vtr::string_fmt("parse_piecewise_formula: range_start, %d, is bigger than range end, %d\n", range_start, range_end), __FILE__, __LINE__); @@ -287,8 +287,6 @@ static void formula_to_rpn(const char* formula, const t_formula_data& mydata, ve rpn_output.push_back(fobj_dummy); op_stack.pop(); } - - return; } /* Fills the formula object fobj according to specified character and mydata, @@ -352,7 +350,7 @@ static void get_formula_object(const char* ch, int& ichar, const t_formula_data& } ichar--; fobj->type = E_FML_NUMBER; - fobj->data.num = vtr::atoi(ss.str().c_str()); + fobj->data.num = vtr::atoi(ss.str()); } else if (is_compound_op(ch) != E_COM_OP_UNDEFINED) { fobj->type = E_FML_OPERATOR; t_compound_operator comp_op_code = is_compound_op(ch); @@ -415,8 +413,6 @@ static void get_formula_object(const char* ch, int& ichar, const t_formula_data& break; } } - - return; } /* returns integer specifying precedence of passed-in operator. higher integer @@ -562,7 +558,6 @@ static void handle_bracket(const Formula_Object& fobj, vector& r } } while (keep_going); } - return; } /* used by the shunting-yard formula parser to deal with commas, ie ','. These occur in function calls*/ @@ -770,7 +765,7 @@ static bool is_operator(const char ch) { } //returns true if string signifies a function e.g max, min -static bool is_function(std::string name) { +static bool is_function(const std::string& name) { if (name == "min" || name == "max" || name == "gcd" @@ -801,7 +796,7 @@ t_compound_operator is_compound_op(const char* ch) { } //checks if the entered string is a known variable name -static bool is_variable(std::string var_name) { +static bool is_variable(const std::string& var_name) { if (same_string(var_name, "from_block") || same_string(var_name, "temp_count") || same_string(var_name, "move_num") || same_string(var_name, "route_net_id") || same_string(var_name, "in_blocks_affected") || same_string(var_name, "router_iter")) { return true; } @@ -849,11 +844,11 @@ bool same_string(std::string str1, std::string str2) { str1.erase(remove(str1.begin(), str1.end(), ' '), str1.end()); str2.erase(remove(str2.begin(), str2.end(), ' '), str2.end()); - //converting both strings to lower case to eliminate case sensivity + //converting both strings to lower case to eliminate case sensitivity std::transform(str1.begin(), str1.end(), str1.begin(), ::tolower); std::transform(str2.begin(), str2.end(), str2.begin(), ::tolower); - return (str1.compare(str2) == 0); + return (str1 == str2); } //the += operator @@ -870,7 +865,7 @@ bool additional_assignment_op(int arg1, int arg2) { //recognizes the block_id to look for (entered by the user) //then looks for that block_id in all the blocks moved in the last perturbation. //returns the block id if found, else just -1 -int in_blocks_affected(std::string expression_left) { +int in_blocks_affected(const std::string& expression_left) { int wanted_block = -1; int found_block; std::stringstream ss; diff --git a/libs/libvtrutil/src/vtr_expr_eval.h b/libs/libvtrutil/src/vtr_expr_eval.h index 0671bf92f7e..3c528cccd37 100644 --- a/libs/libvtrutil/src/vtr_expr_eval.h +++ b/libs/libvtrutil/src/vtr_expr_eval.h @@ -214,7 +214,7 @@ class FormulaParser { FormulaParser& operator=(const FormulaParser&) = delete; ///@brief returns integer result according to specified formula and data - int parse_formula(std::string formula, const t_formula_data& mydata, bool is_breakpoint = false); + int parse_formula(const std::string& formula, const t_formula_data& mydata, bool is_breakpoint = false); ///@brief returns integer result according to specified piece-wise formula and data int parse_piecewise_formula(const char* formula, const t_formula_data& mydata); diff --git a/libs/libvtrutil/src/vtr_ragged_matrix.h b/libs/libvtrutil/src/vtr_ragged_matrix.h index bbe7fea78fc..18ba18f9b58 100644 --- a/libs/libvtrutil/src/vtr_ragged_matrix.h +++ b/libs/libvtrutil/src/vtr_ragged_matrix.h @@ -1,5 +1,6 @@ #ifndef VTR_RAGGED_MATRIX_H #define VTR_RAGGED_MATRIX_H +#include #include #include @@ -212,8 +213,14 @@ class FlatRaggedMatrix { * uses a callback to determine row lengths. */ template - class RowLengthIterator : public std::iterator { + class RowLengthIterator { public: + using iterator_category = std::random_access_iterator_tag; + using difference_type = std::ptrdiff_t; + using value_type = size_t; + using pointer = size_t*; + using reference = size_t&; + RowLengthIterator(size_t irow, Callback& callback) : irow_(irow) , callback_(callback) {} diff --git a/libs/libvtrutil/src/vtr_string_interning.h b/libs/libvtrutil/src/vtr_string_interning.h index 3af949701b2..bbf22766170 100644 --- a/libs/libvtrutil/src/vtr_string_interning.h +++ b/libs/libvtrutil/src/vtr_string_interning.h @@ -11,7 +11,7 @@ * * This string internment has an additional feature that is splitting the * input string into "parts" based on '.', which happens to be the feature - * seperator for FASM. This means the string "TILE.CLB.A" and "TILE.CLB.B" + * separator for FASM. This means the string "TILE.CLB.A" and "TILE.CLB.B" * would be made up of the intern ids for {"TILE", "CLB", "A"} and * {"TILE", "CLB", "B"} respectively, allowing some internal deduplication. * @@ -20,14 +20,14 @@ * * Interned strings (interned_string) that come from the same internment * object (string_internment) can safely be checked for equality and hashed - * without touching the underlying string. Lexigraphical comprisions (e.g. <) + * without touching the underlying string. Lexigraphical comparisons (e.g. <) * requires reconstructing the string. * * Basic usage: * -# Create a string_internment * -# Invoke string_internment::intern_string, which returns the - * interned_string object that is the interned string's unique idenfier. - * This idenfier can be checked for equality or hashed. If + * interned_string object that is the interned string's unique identifier. + * This identifier can be checked for equality or hashed. If * string_internment::intern_string is called with the same string, a value * equivalent interned_string object will be returned. * -# If the original string is required, interned_string::get can be invoked diff --git a/libs/libvtrutil/src/vtr_time.cpp b/libs/libvtrutil/src/vtr_time.cpp index a557f186735..5c80ff3126c 100644 --- a/libs/libvtrutil/src/vtr_time.cpp +++ b/libs/libvtrutil/src/vtr_time.cpp @@ -3,6 +3,8 @@ #include "vtr_log.h" #include "vtr_rusage.h" +#include + namespace vtr { int f_timer_depth = 0; @@ -30,7 +32,7 @@ float Timer::delta_max_rss_mib() const { ///@brief Constructor ScopedActionTimer::ScopedActionTimer(std::string action_str) - : action_(action_str) + : action_(std::move(action_str)) , depth_(f_timer_depth++) { } @@ -69,7 +71,7 @@ int ScopedActionTimer::depth() const { ///@brief Constructor ScopedFinishTimer::ScopedFinishTimer(std::string action_str) - : ScopedActionTimer(action_str) { + : ScopedActionTimer(std::move(action_str)) { } ///@brief Destructor @@ -83,7 +85,7 @@ ScopedFinishTimer::~ScopedFinishTimer() { ///@brief Constructor ScopedStartFinishTimer::ScopedStartFinishTimer(std::string action_str) - : ScopedActionTimer(action_str) { + : ScopedActionTimer(std::move(action_str)) { vtr::printf_info("%s%s\n", pad().c_str(), action().c_str()); } diff --git a/libs/libvtrutil/src/vtr_time.h b/libs/libvtrutil/src/vtr_time.h index 2a4d4ec8af0..4e389ef5026 100644 --- a/libs/libvtrutil/src/vtr_time.h +++ b/libs/libvtrutil/src/vtr_time.h @@ -39,7 +39,7 @@ class Timer { ///@brief Scoped time class which prints the time elapsed for the specifid action class ScopedActionTimer : public Timer { public: - ScopedActionTimer(const std::string action); + ScopedActionTimer(std::string action); ~ScopedActionTimer(); void quiet(bool value); @@ -71,7 +71,7 @@ class ScopedActionTimer : public Timer { */ class ScopedFinishTimer : public ScopedActionTimer { public: - ScopedFinishTimer(const std::string action); + ScopedFinishTimer(std::string action); ~ScopedFinishTimer(); }; @@ -91,7 +91,7 @@ class ScopedFinishTimer : public ScopedActionTimer { */ class ScopedStartFinishTimer : public ScopedActionTimer { public: - ScopedStartFinishTimer(const std::string action); + ScopedStartFinishTimer(std::string action); ~ScopedStartFinishTimer(); }; } // namespace vtr diff --git a/libs/libvtrutil/src/vtr_vector.h b/libs/libvtrutil/src/vtr_vector.h index 639f6259058..27102a38eef 100644 --- a/libs/libvtrutil/src/vtr_vector.h +++ b/libs/libvtrutil/src/vtr_vector.h @@ -160,17 +160,16 @@ class vector : private std::vector { * This allows end-users to call the parent class's keys() member * to iterate through the keys with a range-based for loop */ - class key_iterator : public std::iterator { + class key_iterator { public: - ///@brief We use the intermediate type my_iter to avoid a potential ambiguity for which clang generates errors and warnings - using my_iter = typename std::iterator; - using typename my_iter::iterator; - using typename my_iter::pointer; - using typename my_iter::reference; - using typename my_iter::value_type; + using iterator_category = std::bidirectional_iterator_tag; + using difference_type = std::ptrdiff_t; + using value_type = key_type; + using pointer = key_type*; + using reference = key_type&; ///@brief constructor - key_iterator(key_iterator::value_type init) + key_iterator(value_type init) : value_(init) {} /* @@ -180,12 +179,12 @@ class vector : private std::vector { * we can just increment the underlying Id to build the next key. */ ///@brief ++ operator - key_iterator operator++() { + key_iterator& operator++() { value_ = value_type(size_t(value_) + 1); return *this; } ///@brief decrement operator - key_iterator operator--() { + key_iterator& operator--() { value_ = value_type(size_t(value_) - 1); return *this; } @@ -195,9 +194,9 @@ class vector : private std::vector { pointer operator->() { return &value_; } ///@brief == operator - friend bool operator==(const key_iterator lhs, const key_iterator rhs) { return lhs.value_ == rhs.value_; } + friend bool operator==(const key_iterator& lhs, const key_iterator& rhs) { return lhs.value_ == rhs.value_; } ///@brief != operator - friend bool operator!=(const key_iterator lhs, const key_iterator rhs) { return !(lhs == rhs); } + friend bool operator!=(const key_iterator& lhs, const key_iterator& rhs) { return !(lhs == rhs); } private: value_type value_; diff --git a/utils/fasm/test/test_fasm.cpp b/utils/fasm/test/test_fasm.cpp index ef55f4604f5..b700211825f 100644 --- a/utils/fasm/test/test_fasm.cpp +++ b/utils/fasm/test/test_fasm.cpp @@ -293,7 +293,6 @@ TEST_CASE("fasm_integration_test", "[fasm]") { device_ctx.arch, &device_ctx.chan_width, kRrGraphFile, - device_ctx.virtual_clock_network_root_idx, echo_enabled, echo_file_name, is_flat); diff --git a/vpr/CMakeLists.txt b/vpr/CMakeLists.txt index 433ef273042..226822084f3 100644 --- a/vpr/CMakeLists.txt +++ b/vpr/CMakeLists.txt @@ -32,6 +32,25 @@ else() message(STATUS "EZGL: graphics disabled") endif() + +#Handle server setup +set(SERVER_DEFINES "") + +set(SERVER_DISABILED_REASON "") +if (VPR_USE_SERVER) + if (VPR_USE_EZGL STREQUAL "off") + set(SERVER_DISABILED_REASON ", due to EZGL being disabled") + set(VPR_USE_SERVER OFF) + endif() +endif() + +if (VPR_USE_SERVER) + message(STATUS "Server mode is enabled") +else() + list(APPEND SERVER_DEFINES "-DNO_SERVER") + message(STATUS "Server mode is disabled${SERVER_DISABILED_REASON}") +endif() + # # Build Configuration # @@ -73,6 +92,20 @@ if(${VPR_ANALYTIC_PLACE}) endif(TARGET Eigen3::Eigen) endif() +if (${VPR_ENABLE_NOC_SAT_ROUTING}) + message(STATUS "VPR NoC SAT Routing: Requested") + find_package(ortools CONFIG REQUIRED) + if (TARGET ortools::ortools) + message(STATUS "VPR NoC SAT Routing dependency (or-tools): Found") + message(STATUS "VPR NoC SAT Routing: Enabled") + target_link_libraries(libvpr ortools::ortools) + target_compile_definitions(libvpr PUBLIC -DENABLE_NOC_SAT_ROUTING) + else () + message(STATUS "VPR NoC SAT Routing dependency (or-tools): Not Found (You may need to set CMAKE_PREFIX_PATH in order for CMake to find your OR-Tools installation)") + message(STATUS "VPR NoC SAT Routing: Disabled") + endif (TARGET ortools::ortools) +endif () + set_target_properties(libvpr PROPERTIES PREFIX "") #Avoid extra 'lib' prefix #Specify link-time dependencies @@ -87,6 +120,13 @@ target_link_libraries(libvpr librrgraph ) +if(VPR_USE_SERVER) + target_link_libraries(libvpr + sockpp-static + -lz + ) +endif() + #link graphics library only when graphics set to on if (VPR_USE_EZGL STREQUAL "on") target_link_libraries(libvpr @@ -123,7 +163,7 @@ if (VPR_USE_EZGL STREQUAL "on") endif() -target_compile_definitions(libvpr PUBLIC ${GRAPHICS_DEFINES}) +target_compile_definitions(libvpr PUBLIC ${GRAPHICS_DEFINES} ${SERVER_DEFINES}) if(${VTR_ENABLE_CAPNPROTO}) target_link_libraries(libvpr libvtrcapnproto) @@ -135,7 +175,7 @@ add_executable(vpr ${EXEC_SOURCES}) target_link_libraries(vpr libvpr) -#Supress IPO link warnings if IPO is enabled +#Suppress IPO link warnings if IPO is enabled get_target_property(VPR_USES_IPO vpr INTERPROCEDURAL_OPTIMIZATION) if (VPR_USES_IPO) set_property(TARGET vpr APPEND PROPERTY LINK_FLAGS ${IPO_LINK_WARN_SUPRESS_FLAGS}) @@ -266,7 +306,7 @@ target_link_libraries(test_vpr Catch2::Catch2WithMain libvpr) -#Supress IPO link warnings if IPO is enabled +#Suppress IPO link warnings if IPO is enabled get_target_property(TEST_VPR_USES_IPO vpr INTERPROCEDURAL_OPTIMIZATION) if (TEST_VPR_USES_IPO) set_property(TARGET test_vpr APPEND PROPERTY LINK_FLAGS ${IPO_LINK_WARN_SUPRESS_FLAGS}) diff --git a/vpr/src/base/CheckSetup.cpp b/vpr/src/base/CheckSetup.cpp index 4bc78d116fb..18d44534e98 100644 --- a/vpr/src/base/CheckSetup.cpp +++ b/vpr/src/base/CheckSetup.cpp @@ -10,9 +10,10 @@ void CheckSetup(const t_packer_opts& PackerOpts, const t_placer_opts& PlacerOpts, const t_router_opts& RouterOpts, + const t_server_opts& ServerOpts, const t_det_routing_arch& RoutingArch, const std::vector& Segments, - const t_timing_inf Timing, + const t_timing_inf& Timing, const t_chan_width_dist Chans) { int i; int Tmp; @@ -22,6 +23,18 @@ void CheckSetup(const t_packer_opts& PackerOpts, "Packing cannot be timing driven without timing analysis enabled\n"); } + if (PackerOpts.load_flat_placement) { + if (PackerOpts.device_layout == "auto") { + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "Legalization requires a fixed device layout.\n"); + } + if (!PlacerOpts.constraints_file.empty()) { + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "Cannot specify a fixed clusters file when running legalization.\n"); + } + } + + if ((GLOBAL == RouterOpts.route_type) && (PlacerOpts.place_algorithm.is_timing_driven())) { /* Works, but very weird. Can't optimize timing well, since you're @@ -78,7 +91,7 @@ void CheckSetup(const t_packer_opts& PackerOpts, for (i = 0; i < (int)Segments.size(); ++i) { Tmp = Segments[i].arch_opin_switch; auto& device_ctx = g_vpr_ctx.device(); - if (false == device_ctx.arch_switch_inf[Tmp].buffered()) { + if (!device_ctx.arch_switch_inf[Tmp].buffered()) { VPR_FATAL_ERROR(VPR_ERROR_OTHER, "arch_opin_switch (#%d) of segment type #%d is not buffered.\n", Tmp, i); } @@ -105,4 +118,12 @@ void CheckSetup(const t_packer_opts& PackerOpts, "Place channel width must be even for unidirectional.\n"); } } + + if (ServerOpts.is_server_mode_enabled) { + if (ServerOpts.port_num < DYMANIC_PORT_RANGE_MIN || ServerOpts.port_num > DYNAMIC_PORT_RANGE_MAX) { + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "Specified server port number `--port %d` is out of range [%d-%d]. Please specify a port number within that range.\n", + ServerOpts.port_num, DYMANIC_PORT_RANGE_MIN, DYNAMIC_PORT_RANGE_MAX); + } + } } diff --git a/vpr/src/base/CheckSetup.h b/vpr/src/base/CheckSetup.h index d1e18764d9a..8fb9cdc6b30 100644 --- a/vpr/src/base/CheckSetup.h +++ b/vpr/src/base/CheckSetup.h @@ -2,12 +2,16 @@ #define CHECKSETUP_H #include "vpr_types.h" +const int DYMANIC_PORT_RANGE_MIN = 49152; +const int DYNAMIC_PORT_RANGE_MAX = 65535; + void CheckSetup(const t_packer_opts& PackerOpts, const t_placer_opts& PlacerOpts, const t_router_opts& RouterOpts, + const t_server_opts& ServerOpts, const t_det_routing_arch& RoutingArch, const std::vector& Segments, - const t_timing_inf Timing, + const t_timing_inf& Timing, const t_chan_width_dist Chans); #endif diff --git a/vpr/src/base/SetupGrid.cpp b/vpr/src/base/SetupGrid.cpp index c45c92a3fae..f0e827a898a 100644 --- a/vpr/src/base/SetupGrid.cpp +++ b/vpr/src/base/SetupGrid.cpp @@ -56,7 +56,7 @@ static void set_vib_grid_block_type(int priority, const t_metadata_dict* meta); ///@brief Create the device grid based on resource requirements -DeviceGrid create_device_grid(std::string layout_name, const std::vector& grid_layouts, const std::map& minimum_instance_counts, float target_device_utilization) { +DeviceGrid create_device_grid(const std::string& layout_name, const std::vector& grid_layouts, const std::map& minimum_instance_counts, float target_device_utilization) { if (layout_name == "auto") { //Auto-size the device // @@ -88,9 +88,9 @@ DeviceGrid create_device_grid(std::string layout_name, const std::vector& grid_layouts, size_t width, size_t height) { +DeviceGrid create_device_grid(const std::string& layout_name, const std::vector& grid_layouts, size_t width, size_t height) { if (layout_name == "auto") { - VTR_ASSERT(grid_layouts.size() > 0); + VTR_ASSERT(!grid_layouts.empty()); //Auto-size if (grid_layouts[0].grid_type == GridDefType::AUTO) { //Auto layout of the specified dimensions @@ -186,7 +186,7 @@ vtr::NdMatrix create_vib_device_grid(std::string layout_nam * If an auto grid layouts are specified, the smallest dynamicly sized grid is picked */ static DeviceGrid auto_size_device_grid(const std::vector& grid_layouts, const std::map& minimum_instance_counts, float maximum_device_utilization) { - VTR_ASSERT(grid_layouts.size() > 0); + VTR_ASSERT(!grid_layouts.empty()); DeviceGrid grid; @@ -322,6 +322,7 @@ static std::vector grid_overused_resources(const Devic //Sort so we allocate logical blocks with the fewest equivalent sites first (least flexible) std::vector logical_block_types; + logical_block_types.reserve(device_ctx.logical_block_types.size()); for (auto& block_type : device_ctx.logical_block_types) { logical_block_types.push_back(&block_type); } diff --git a/vpr/src/base/SetupGrid.h b/vpr/src/base/SetupGrid.h index 0a8e924bae0..12cab1408ab 100644 --- a/vpr/src/base/SetupGrid.h +++ b/vpr/src/base/SetupGrid.h @@ -13,12 +13,14 @@ #include "physical_types.h" ///@brief Find the device satisfying the specified minimum resources -DeviceGrid create_device_grid(std::string layout_name, +/// minimum_instance_counts and target_device_utilization are not required when specifying a fixed layout +DeviceGrid create_device_grid(const std::string& layout_name, const std::vector& grid_layouts, - const std::map& minimum_instance_counts, - float target_device_utilization); + const std::map& minimum_instance_counts = {}, + float target_device_utilization = 0.0); ///@brief Find the device close in size to the specified dimensions + DeviceGrid create_device_grid(std::string layout_name, const std::vector& grid_layouts, size_t min_width, size_t min_height); vtr::NdMatrix create_vib_device_grid(std::string layout_name, const std::vector& vib_grid_layouts); diff --git a/vpr/src/base/SetupVPR.cpp b/vpr/src/base/SetupVPR.cpp index b03748c2764..df5d14ba1dc 100644 --- a/vpr/src/base/SetupVPR.cpp +++ b/vpr/src/base/SetupVPR.cpp @@ -38,6 +38,8 @@ static void SetupAnnealSched(const t_options& Options, static void SetupRouterOpts(const t_options& Options, t_router_opts* RouterOpts); static void SetupNocOpts(const t_options& Options, t_noc_opts* NocOpts); +static void SetupServerOpts(const t_options& Options, + t_server_opts* ServerOpts); static void SetupRoutingArch(const t_arch& Arch, t_det_routing_arch* RoutingArch); static void SetupTiming(const t_options& Options, const bool TimingEnabled, t_timing_inf* Timing); static void SetupSwitches(const t_arch& Arch, @@ -99,6 +101,7 @@ void SetupVPR(const t_options* Options, t_router_opts* RouterOpts, t_analysis_opts* AnalysisOpts, t_noc_opts* NocOpts, + t_server_opts* ServerOpts, t_det_routing_arch* RoutingArch, std::vector** PackerRRGraphs, std::vector& Segments, @@ -125,6 +128,7 @@ void SetupVPR(const t_options* Options, FileNameOpts->ArchFile = Options->ArchFile; FileNameOpts->CircuitFile = Options->CircuitFile; FileNameOpts->NetFile = Options->NetFile; + FileNameOpts->FlatPlaceFile = Options->FlatPlaceFile; FileNameOpts->PlaceFile = Options->PlaceFile; FileNameOpts->RouteFile = Options->RouteFile; FileNameOpts->ActFile = Options->ActFile; @@ -133,6 +137,8 @@ void SetupVPR(const t_options* Options, FileNameOpts->out_file_prefix = Options->out_file_prefix; FileNameOpts->read_vpr_constraints_file = Options->read_vpr_constraints_file; FileNameOpts->write_vpr_constraints_file = Options->write_vpr_constraints_file; + FileNameOpts->write_constraints_file = Options->write_constraints_file; + FileNameOpts->write_flat_place_file = Options->write_flat_place_file; FileNameOpts->write_block_usage = Options->write_block_usage; FileNameOpts->verify_file_digests = Options->verify_file_digests; @@ -144,6 +150,7 @@ void SetupVPR(const t_options* Options, SetupAnalysisOpts(*Options, *AnalysisOpts); SetupPowerOpts(*Options, PowerOpts, Arch); SetupNocOpts(*Options, NocOpts); + SetupServerOpts(*Options, ServerOpts); if (readArchFile == true) { vtr::ScopedStartFinishTimer t("Loading Architecture Description"); @@ -235,6 +242,7 @@ void SetupVPR(const t_options* Options, //Setup the default flow, if no specific stages specified //do all if (!Options->do_packing + && !Options->do_legalize && !Options->do_placement && !Options->do_routing && !Options->do_analysis) { @@ -271,6 +279,11 @@ void SetupVPR(const t_options* Options, if (Options->do_packing) { PackerOpts->doPacking = STAGE_DO; } + + if (Options->do_legalize) { + PackerOpts->doPacking = STAGE_LOAD; + PackerOpts->load_flat_placement = true; + } } ShowSetup(*vpr_setup); @@ -401,7 +414,7 @@ static void SetupRoutingArch(const t_arch& Arch, RoutingArch->Fs = Arch.Fs; RoutingArch->subFs = Arch.subFs; RoutingArch->directionality = BI_DIRECTIONAL; - if (Arch.Segments.size()) { + if (!Arch.Segments.empty()) { RoutingArch->directionality = Arch.Segments[0].directionality; } @@ -429,6 +442,7 @@ static void SetupRouterOpts(const t_options& Options, t_router_opts* RouterOpts) RouterOpts->min_incremental_reroute_fanout = Options.min_incremental_reroute_fanout; RouterOpts->incr_reroute_delay_ripup = Options.incr_reroute_delay_ripup; RouterOpts->pres_fac_mult = Options.pres_fac_mult; + RouterOpts->max_pres_fac = Options.max_pres_fac; RouterOpts->route_type = Options.RouteType; RouterOpts->full_stats = Options.full_stats; @@ -756,8 +770,25 @@ static void SetupNocOpts(const t_options& Options, t_noc_opts* NocOpts) { NocOpts->noc_latency_constraints_weighting = Options.noc_latency_constraints_weighting; NocOpts->noc_latency_weighting = Options.noc_latency_weighting; NocOpts->noc_congestion_weighting = Options.noc_congestion_weighting; + NocOpts->noc_centroid_weight = Options.noc_centroid_weight; NocOpts->noc_swap_percentage = Options.noc_swap_percentage; + NocOpts->noc_sat_routing_bandwidth_resolution = Options.noc_sat_routing_bandwidth_resolution; + NocOpts->noc_sat_routing_latency_overrun_weighting = Options.noc_sat_routing_latency_overrun_weighting_factor; + NocOpts->noc_sat_routing_congestion_weighting = Options.noc_sat_routing_congestion_weighting_factor; + if (Options.noc_sat_routing_num_workers.provenance() == argparse::Provenance::SPECIFIED) { + NocOpts->noc_sat_routing_num_workers = Options.noc_sat_routing_num_workers; + } else { + NocOpts->noc_sat_routing_num_workers = (int)Options.num_workers; + } + NocOpts->noc_sat_routing_log_search_progress = Options.noc_sat_routing_log_search_progress; NocOpts->noc_placement_file_name = Options.noc_placement_file_name; + + +} + +static void SetupServerOpts(const t_options& Options, t_server_opts* ServerOpts) { + ServerOpts->is_server_mode_enabled = Options.is_server_mode_enabled; + ServerOpts->port_num = Options.server_port_num; } static void find_ipin_cblock_switch_index(const t_arch& Arch, int& wire_to_arch_ipin_switch, int& wire_to_arch_ipin_switch_between_dice) { diff --git a/vpr/src/base/SetupVPR.h b/vpr/src/base/SetupVPR.h index 7f7bb7105ea..97499eb8614 100644 --- a/vpr/src/base/SetupVPR.h +++ b/vpr/src/base/SetupVPR.h @@ -20,6 +20,7 @@ void SetupVPR(const t_options* Options, t_router_opts* RouterOpts, t_analysis_opts* AnalysisOpts, t_noc_opts* NocOpts, + t_server_opts* ServerOpts, t_det_routing_arch* RoutingArch, std::vector** PackerRRGraphs, std::vector& Segments, diff --git a/vpr/src/base/ShowSetup.cpp b/vpr/src/base/ShowSetup.cpp index 6f2f6f70320..c33e6dcfd40 100644 --- a/vpr/src/base/ShowSetup.cpp +++ b/vpr/src/base/ShowSetup.cpp @@ -330,6 +330,7 @@ static void ShowRouterOpts(const t_router_opts& RouterOpts) { VTR_LOG("RouterOpts.first_iter_pres_fac: %f\n", RouterOpts.first_iter_pres_fac); VTR_LOG("RouterOpts.initial_pres_fac: %f\n", RouterOpts.initial_pres_fac); VTR_LOG("RouterOpts.pres_fac_mult: %f\n", RouterOpts.pres_fac_mult); + VTR_LOG("RouterOpts.max_pres_fac: %f\n", RouterOpts.max_pres_fac); VTR_LOG("RouterOpts.max_router_iterations: %d\n", RouterOpts.max_router_iterations); VTR_LOG("RouterOpts.min_incremental_reroute_fanout: %d\n", RouterOpts.min_incremental_reroute_fanout); VTR_LOG("RouterOpts.do_check_rr_graph: %s\n", RouterOpts.do_check_rr_graph ? "true" : "false"); @@ -475,6 +476,7 @@ static void ShowRouterOpts(const t_router_opts& RouterOpts) { VTR_LOG("RouterOpts.first_iter_pres_fac: %f\n", RouterOpts.first_iter_pres_fac); VTR_LOG("RouterOpts.initial_pres_fac: %f\n", RouterOpts.initial_pres_fac); VTR_LOG("RouterOpts.pres_fac_mult: %f\n", RouterOpts.pres_fac_mult); + VTR_LOG("RouterOpts.max_pres_fac: %f\n", RouterOpts.max_pres_fac); VTR_LOG("RouterOpts.max_router_iterations: %d\n", RouterOpts.max_router_iterations); VTR_LOG("RouterOpts.min_incremental_reroute_fanout: %d\n", RouterOpts.min_incremental_reroute_fanout); VTR_LOG("RouterOpts.do_check_rr_graph: %s\n", RouterOpts.do_check_rr_graph ? "true" : "false"); @@ -802,6 +804,10 @@ static void ShowNocOpts(const t_noc_opts& NocOpts) { VTR_LOG("NocOpts.noc_latency_weighting: %f\n", NocOpts.noc_latency_weighting); VTR_LOG("NocOpts.noc_congestion_weighting: %f\n", NocOpts.noc_congestion_weighting); VTR_LOG("NocOpts.noc_swap_percentage: %d%%\n", NocOpts.noc_swap_percentage); + VTR_LOG("NocOpts.noc_sat_routing_bandwidth_resolution: %d\n", NocOpts.noc_sat_routing_bandwidth_resolution); + VTR_LOG("NocOpts.noc_sat_routing_latency_overrun_weighting: %d\n", NocOpts.noc_sat_routing_latency_overrun_weighting); + VTR_LOG("NocOpts.noc_sat_routing_congestion_weighting: %d\n", NocOpts.noc_sat_routing_congestion_weighting); + VTR_LOG("NocOpts.noc_sat_routing_num_workers: %d\n", NocOpts.noc_sat_routing_num_workers); VTR_LOG("NocOpts.noc_routing_algorithm: %s\n", NocOpts.noc_placement_file_name.c_str()); VTR_LOG("\n"); } \ No newline at end of file diff --git a/vpr/src/base/atom_netlist.cpp b/vpr/src/base/atom_netlist.cpp index 39af4d23e1c..1cbd2232f1f 100644 --- a/vpr/src/base/atom_netlist.cpp +++ b/vpr/src/base/atom_netlist.cpp @@ -115,7 +115,7 @@ AtomBlockId AtomNetlist::find_atom_pin_driver(const AtomBlockId blk_id, const t_ return AtomBlockId::INVALID(); } -std::unordered_set AtomNetlist::net_aliases(const std::string net_name) const { +std::unordered_set AtomNetlist::net_aliases(const std::string& net_name) const { auto net_id = find_net(net_name); VTR_ASSERT(net_id != AtomNetId::INVALID()); @@ -137,7 +137,7 @@ std::unordered_set AtomNetlist::net_aliases(const std::string net_n * Mutators * */ -AtomBlockId AtomNetlist::create_block(const std::string name, const t_model* model, const TruthTable truth_table) { +AtomBlockId AtomNetlist::create_block(const std::string& name, const t_model* model, const TruthTable& truth_table) { AtomBlockId blk_id = Netlist::create_block(name); //Initialize the data @@ -205,7 +205,7 @@ AtomPinId AtomNetlist::create_pin(const AtomPortId port_id, BitIndex port_bit, c return pin_id; } -AtomNetId AtomNetlist::create_net(const std::string name) { +AtomNetId AtomNetlist::create_net(const std::string& name) { AtomNetId net_id = Netlist::create_net(name); //Check post-conditions: size @@ -214,11 +214,11 @@ AtomNetId AtomNetlist::create_net(const std::string name) { return net_id; } -AtomNetId AtomNetlist::add_net(const std::string name, AtomPinId driver, std::vector sinks) { +AtomNetId AtomNetlist::add_net(const std::string& name, AtomPinId driver, std::vector sinks) { return Netlist::add_net(name, driver, sinks); } -void AtomNetlist::add_net_alias(const std::string net_name, const std::string alias_net_name) { +void AtomNetlist::add_net_alias(const std::string& net_name, const std::string& alias_net_name) { auto net_id = find_net(net_name); VTR_ASSERT(net_id != AtomNetId::INVALID()); diff --git a/vpr/src/base/atom_netlist.h b/vpr/src/base/atom_netlist.h index d639b2d5d57..de1bb4f53bf 100644 --- a/vpr/src/base/atom_netlist.h +++ b/vpr/src/base/atom_netlist.h @@ -157,7 +157,7 @@ class AtomNetlist : public Netlist net_aliases(const std::string net_name) const; + std::unordered_set net_aliases(const std::string& net_name) const; public: //Public Mutators /* @@ -173,7 +173,7 @@ class AtomNetlist : public Netlist sinks); + AtomNetId add_net(const std::string& name, AtomPinId driver, std::vector sinks); /** * @brief Adds a value to the net aliases set for a given net name in the net_aliases_map. @@ -218,7 +218,7 @@ class AtomNetlist : public Netlist + #include #include #include @@ -32,1073 +33,1106 @@ namespace uxsd { * Internal function for getting line and column number from file based on * byte offset. */ -inline void get_line_number(const char* filename, std::ptrdiff_t offset, int* line, int* col); +inline void get_line_number(const char *filename, std::ptrdiff_t offset, int * line, int * col); -[[noreturn]] inline void noreturn_report(const std::function* report_error, const char* msg) { +[[noreturn]] inline void noreturn_report(const std::function * report_error, const char *msg) { (*report_error)(msg); throw std::runtime_error("Unreachable!"); } /* Declarations for internal load functions for the complex types. */ -template -inline void load_add_atom(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug); -template -inline void load_add_region(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug); -inline void load_add_region_required_attributes(const pugi::xml_node& root, int* x_high, int* x_low, int* y_high, int* y_low, const std::function* report_error); -template -inline void load_partition(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug); -template -inline void load_partition_list(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug); -template -inline void load_set_global_signal(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug); -template -inline void load_global_route_constraints(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug); -template -inline void load_vpr_constraints(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug); +template +inline void load_add_atom(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug); +template +inline void load_add_region(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug); +inline void load_add_region_required_attributes(const pugi::xml_node &root, int * x_high, int * x_low, int * y_high, int * y_low, const std::function * report_error); +template +inline void load_partition(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug); +template +inline void load_partition_list(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug); +template +inline void load_set_global_signal(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug); +inline void load_set_global_signal_required_attributes(const pugi::xml_node &root, enum_route_model_type * route_model, const std::function * report_error); +template +inline void load_global_route_constraints(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug); +template +inline void load_vpr_constraints(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug); /* Declarations for internal write functions for the complex types. */ -template -inline void write_partition(T& in, std::ostream& os, const void* data, void* iter); -template -inline void write_partition_list(T& in, std::ostream& os, const void* data, void* iter); -template -inline void write_global_route_constraints(T& in, std::ostream& os, const void* data, void* iter); -template -inline void write_vpr_constraints(T& in, std::ostream& os, const void* data, void* iter); +template +inline void write_partition(T &in, std::ostream &os, const void *data, void *iter); +template +inline void write_partition_list(T &in, std::ostream &os, const void *data, void *iter); +template +inline void write_global_route_constraints(T &in, std::ostream &os, const void *data, void *iter); +template +inline void write_vpr_constraints(T &in, std::ostream &os, const void *data, void *iter); /* Load function for the root element. */ -template -inline void load_vpr_constraints_xml(T& out, Context& context, const char* filename, std::istream& is) { - pugi::xml_document doc; - pugi::xml_parse_result result = doc.load(is); - if (!result) { - int line, col; - get_line_number(filename, result.offset, &line, &col); - std::stringstream msg; - msg << "Unable to load XML file '" << filename << "', "; - msg << result.description() << " (line: " << line; - msg << " col: " << col << ")"; - out.error_encountered(filename, line, msg.str().c_str()); - } - ptrdiff_t offset_debug = 0; - std::function report_error = [filename, &out, &offset_debug](const char* message) { - int line, col; - get_line_number(filename, offset_debug, &line, &col); - out.error_encountered(filename, line, message); - // If error_encountered didn't throw, throw now to unwind. - throw std::runtime_error(message); - }; - out.start_load(&report_error); - - for (pugi::xml_node node = doc.first_child(); node; node = node.next_sibling()) { - if (std::strcmp(node.name(), "vpr_constraints") == 0) { - /* If errno is set up to this point, it messes with strtol errno checking. */ - errno = 0; - load_vpr_constraints(node, out, context, &report_error, &offset_debug); - } else { - offset_debug = node.offset_debug(); - report_error(("Invalid root-level element " + std::string(node.name())).c_str()); - } - } - out.finish_load(); +template +inline void load_vpr_constraints_xml(T &out, Context &context, const char * filename, std::istream &is){ + pugi::xml_document doc; + pugi::xml_parse_result result = doc.load(is); + if(!result) { + int line, col; + get_line_number(filename, result.offset, &line, &col); + std::stringstream msg; + msg << "Unable to load XML file '" << filename << "', "; + msg << result.description() << " (line: " << line; + msg << " col: " << col << ")"; out.error_encountered(filename, line, msg.str().c_str()); + } + ptrdiff_t offset_debug = 0; + std::function report_error = [filename, &out, &offset_debug](const char * message) { + int line, col; + get_line_number(filename, offset_debug, &line, &col); + out.error_encountered(filename, line, message); + // If error_encountered didn't throw, throw now to unwind. + throw std::runtime_error(message); + }; + out.start_load(&report_error); + + for(pugi::xml_node node= doc.first_child(); node; node = node.next_sibling()){ + if(std::strcmp(node.name(), "vpr_constraints") == 0){ + /* If errno is set up to this point, it messes with strtol errno checking. */ + errno = 0; + load_vpr_constraints(node, out, context, &report_error, &offset_debug); + } else { + offset_debug = node.offset_debug(); + report_error(("Invalid root-level element " + std::string(node.name())).c_str()); + } + } + out.finish_load(); } /* Write function for the root element. */ -template -inline void write_vpr_constraints_xml(T& in, Context& context, std::ostream& os) { - in.start_write(); - os << "\n"; - write_vpr_constraints(in, os, context); - os << "\n"; - in.finish_write(); +template +inline void write_vpr_constraints_xml(T &in, Context &context, std::ostream &os){ + in.start_write(); + os << "\n"; + write_vpr_constraints(in, os, context); + os << "\n"; + in.finish_write(); } + typedef const uint32_t __attribute__((aligned(1))) triehash_uu32; typedef const uint64_t __attribute__((aligned(1))) triehash_uu64; static_assert(alignof(triehash_uu32) == 1, "Unaligned 32-bit access not found."); static_assert(alignof(triehash_uu64) == 1, "Unaligned 64-bit access not found."); #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ -# define onechar(c, s, l) (((uint64_t)(c)) << (s)) +#define onechar(c, s, l) (((uint64_t)(c)) << (s)) #else -# define onechar(c, s, l) (((uint64_t)(c)) << (l - 8 - s)) +#define onechar(c, s, l) (((uint64_t)(c)) << (l-8-s)) #endif /* Tokens for attribute and node names. */ -enum class atok_t_add_atom { NAME_PATTERN }; -constexpr const char* atok_lookup_t_add_atom[] = {"name_pattern"}; - -enum class atok_t_add_region { SUBTILE, - X_HIGH, - X_LOW, - Y_HIGH, - Y_LOW }; -constexpr const char* atok_lookup_t_add_region[] = {"subtile", "x_high", "x_low", "y_high", "y_low"}; - -enum class gtok_t_partition { ADD_ATOM, - ADD_REGION }; -constexpr const char* gtok_lookup_t_partition[] = {"add_atom", "add_region"}; -enum class atok_t_partition { NAME }; -constexpr const char* atok_lookup_t_partition[] = {"name"}; - -enum class gtok_t_partition_list { PARTITION }; -constexpr const char* gtok_lookup_t_partition_list[] = {"partition"}; - -enum class atok_t_set_global_signal { NAME, - ROUTE_MODEL, - TYPE }; -constexpr const char* atok_lookup_t_set_global_signal[] = {"name", "route_model", "type"}; - -enum class gtok_t_global_route_constraints { SET_GLOBAL_SIGNAL }; -constexpr const char* gtok_lookup_t_global_route_constraints[] = {"set_global_signal"}; -enum class gtok_t_vpr_constraints { PARTITION_LIST, - GLOBAL_ROUTE_CONSTRAINTS }; -constexpr const char* gtok_lookup_t_vpr_constraints[] = {"partition_list", "global_route_constraints"}; -enum class atok_t_vpr_constraints { TOOL_NAME }; -constexpr const char* atok_lookup_t_vpr_constraints[] = {"tool_name"}; +enum class atok_t_add_atom {NAME_PATTERN}; +constexpr const char *atok_lookup_t_add_atom[] = {"name_pattern"}; + + +enum class atok_t_add_region {SUBTILE, X_HIGH, X_LOW, Y_HIGH, Y_LOW}; +constexpr const char *atok_lookup_t_add_region[] = {"subtile", "x_high", "x_low", "y_high", "y_low"}; + +enum class gtok_t_partition {ADD_ATOM, ADD_REGION}; +constexpr const char *gtok_lookup_t_partition[] = {"add_atom", "add_region"}; +enum class atok_t_partition {NAME}; +constexpr const char *atok_lookup_t_partition[] = {"name"}; + +enum class gtok_t_partition_list {PARTITION}; +constexpr const char *gtok_lookup_t_partition_list[] = {"partition"}; + +enum class atok_t_set_global_signal {NAME, NETWORK_NAME, ROUTE_MODEL}; +constexpr const char *atok_lookup_t_set_global_signal[] = {"name", "network_name", "route_model"}; + +enum class gtok_t_global_route_constraints {SET_GLOBAL_SIGNAL}; +constexpr const char *gtok_lookup_t_global_route_constraints[] = {"set_global_signal"}; +enum class gtok_t_vpr_constraints {PARTITION_LIST, GLOBAL_ROUTE_CONSTRAINTS}; +constexpr const char *gtok_lookup_t_vpr_constraints[] = {"partition_list", "global_route_constraints"}; +enum class atok_t_vpr_constraints {TOOL_NAME}; +constexpr const char *atok_lookup_t_vpr_constraints[] = {"tool_name"}; + /* Internal lexers. These convert the PugiXML node names to input tokens. */ -inline atok_t_add_atom lex_attr_t_add_atom(const char* in, const std::function* report_error) { - unsigned int len = strlen(in); - switch (len) { - case 12: - switch (*((triehash_uu64*)&in[0])) { - case onechar('n', 0, 64) | onechar('a', 8, 64) | onechar('m', 16, 64) | onechar('e', 24, 64) | onechar('_', 32, 64) | onechar('p', 40, 64) | onechar('a', 48, 64) | onechar('t', 56, 64): - switch (*((triehash_uu32*)&in[8])) { - case onechar('t', 0, 32) | onechar('e', 8, 32) | onechar('r', 16, 32) | onechar('n', 24, 32): - return atok_t_add_atom::NAME_PATTERN; - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - noreturn_report(report_error, ("Found unrecognized attribute " + std::string(in) + " of .").c_str()); +inline atok_t_add_atom lex_attr_t_add_atom(const char *in, const std::function * report_error){ + unsigned int len = strlen(in); + switch(len){ + case 12: + switch(*((triehash_uu64*)&in[0])){ + case onechar('n', 0, 64) | onechar('a', 8, 64) | onechar('m', 16, 64) | onechar('e', 24, 64) | onechar('_', 32, 64) | onechar('p', 40, 64) | onechar('a', 48, 64) | onechar('t', 56, 64): + switch(*((triehash_uu32*)&in[8])){ + case onechar('t', 0, 32) | onechar('e', 8, 32) | onechar('r', 16, 32) | onechar('n', 24, 32): + return atok_t_add_atom::NAME_PATTERN; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + noreturn_report(report_error, ("Found unrecognized attribute " + std::string(in) + " of .").c_str()); } -inline atok_t_add_region lex_attr_t_add_region(const char* in, const std::function* report_error) { - unsigned int len = strlen(in); - switch (len) { - case 5: - switch (*((triehash_uu32*)&in[0])) { - case onechar('x', 0, 32) | onechar('_', 8, 32) | onechar('l', 16, 32) | onechar('o', 24, 32): - switch (in[4]) { - case onechar('w', 0, 8): - return atok_t_add_region::X_LOW; - break; - default: - break; - } - break; - case onechar('y', 0, 32) | onechar('_', 8, 32) | onechar('l', 16, 32) | onechar('o', 24, 32): - switch (in[4]) { - case onechar('w', 0, 8): - return atok_t_add_region::Y_LOW; - break; - default: - break; - } - break; - default: - break; - } - break; - case 6: - switch (*((triehash_uu32*)&in[0])) { - case onechar('x', 0, 32) | onechar('_', 8, 32) | onechar('h', 16, 32) | onechar('i', 24, 32): - switch (in[4]) { - case onechar('g', 0, 8): - switch (in[5]) { - case onechar('h', 0, 8): - return atok_t_add_region::X_HIGH; - break; - default: - break; - } - break; - default: - break; - } - break; - case onechar('y', 0, 32) | onechar('_', 8, 32) | onechar('h', 16, 32) | onechar('i', 24, 32): - switch (in[4]) { - case onechar('g', 0, 8): - switch (in[5]) { - case onechar('h', 0, 8): - return atok_t_add_region::Y_HIGH; - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - break; - case 7: - switch (*((triehash_uu32*)&in[0])) { - case onechar('s', 0, 32) | onechar('u', 8, 32) | onechar('b', 16, 32) | onechar('t', 24, 32): - switch (in[4]) { - case onechar('i', 0, 8): - switch (in[5]) { - case onechar('l', 0, 8): - switch (in[6]) { - case onechar('e', 0, 8): - return atok_t_add_region::SUBTILE; - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - noreturn_report(report_error, ("Found unrecognized attribute " + std::string(in) + " of .").c_str()); +inline atok_t_add_region lex_attr_t_add_region(const char *in, const std::function * report_error){ + unsigned int len = strlen(in); + switch(len){ + case 5: + switch(*((triehash_uu32*)&in[0])){ + case onechar('x', 0, 32) | onechar('_', 8, 32) | onechar('l', 16, 32) | onechar('o', 24, 32): + switch(in[4]){ + case onechar('w', 0, 8): + return atok_t_add_region::X_LOW; + break; + default: break; + } + break; + case onechar('y', 0, 32) | onechar('_', 8, 32) | onechar('l', 16, 32) | onechar('o', 24, 32): + switch(in[4]){ + case onechar('w', 0, 8): + return atok_t_add_region::Y_LOW; + break; + default: break; + } + break; + default: break; + } + break; + case 6: + switch(*((triehash_uu32*)&in[0])){ + case onechar('x', 0, 32) | onechar('_', 8, 32) | onechar('h', 16, 32) | onechar('i', 24, 32): + switch(in[4]){ + case onechar('g', 0, 8): + switch(in[5]){ + case onechar('h', 0, 8): + return atok_t_add_region::X_HIGH; + break; + default: break; + } + break; + default: break; + } + break; + case onechar('y', 0, 32) | onechar('_', 8, 32) | onechar('h', 16, 32) | onechar('i', 24, 32): + switch(in[4]){ + case onechar('g', 0, 8): + switch(in[5]){ + case onechar('h', 0, 8): + return atok_t_add_region::Y_HIGH; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + case 7: + switch(*((triehash_uu32*)&in[0])){ + case onechar('s', 0, 32) | onechar('u', 8, 32) | onechar('b', 16, 32) | onechar('t', 24, 32): + switch(in[4]){ + case onechar('i', 0, 8): + switch(in[5]){ + case onechar('l', 0, 8): + switch(in[6]){ + case onechar('e', 0, 8): + return atok_t_add_region::SUBTILE; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + noreturn_report(report_error, ("Found unrecognized attribute " + std::string(in) + " of .").c_str()); } -inline gtok_t_partition lex_node_t_partition(const char* in, const std::function* report_error) { - unsigned int len = strlen(in); - switch (len) { - case 8: - switch (*((triehash_uu64*)&in[0])) { - case onechar('a', 0, 64) | onechar('d', 8, 64) | onechar('d', 16, 64) | onechar('_', 24, 64) | onechar('a', 32, 64) | onechar('t', 40, 64) | onechar('o', 48, 64) | onechar('m', 56, 64): - return gtok_t_partition::ADD_ATOM; - break; - default: - break; - } - break; - case 10: - switch (*((triehash_uu64*)&in[0])) { - case onechar('a', 0, 64) | onechar('d', 8, 64) | onechar('d', 16, 64) | onechar('_', 24, 64) | onechar('r', 32, 64) | onechar('e', 40, 64) | onechar('g', 48, 64) | onechar('i', 56, 64): - switch (in[8]) { - case onechar('o', 0, 8): - switch (in[9]) { - case onechar('n', 0, 8): - return gtok_t_partition::ADD_REGION; - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - noreturn_report(report_error, ("Found unrecognized child " + std::string(in) + " of .").c_str()); +inline gtok_t_partition lex_node_t_partition(const char *in, const std::function *report_error){ + unsigned int len = strlen(in); + switch(len){ + case 8: + switch(*((triehash_uu64*)&in[0])){ + case onechar('a', 0, 64) | onechar('d', 8, 64) | onechar('d', 16, 64) | onechar('_', 24, 64) | onechar('a', 32, 64) | onechar('t', 40, 64) | onechar('o', 48, 64) | onechar('m', 56, 64): + return gtok_t_partition::ADD_ATOM; + break; + default: break; + } + break; + case 10: + switch(*((triehash_uu64*)&in[0])){ + case onechar('a', 0, 64) | onechar('d', 8, 64) | onechar('d', 16, 64) | onechar('_', 24, 64) | onechar('r', 32, 64) | onechar('e', 40, 64) | onechar('g', 48, 64) | onechar('i', 56, 64): + switch(in[8]){ + case onechar('o', 0, 8): + switch(in[9]){ + case onechar('n', 0, 8): + return gtok_t_partition::ADD_REGION; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + noreturn_report(report_error, ("Found unrecognized child " + std::string(in) + " of .").c_str()); } -inline atok_t_partition lex_attr_t_partition(const char* in, const std::function* report_error) { - unsigned int len = strlen(in); - switch (len) { - case 4: - switch (*((triehash_uu32*)&in[0])) { - case onechar('n', 0, 32) | onechar('a', 8, 32) | onechar('m', 16, 32) | onechar('e', 24, 32): - return atok_t_partition::NAME; - break; - default: - break; - } - break; - default: - break; - } - noreturn_report(report_error, ("Found unrecognized attribute " + std::string(in) + " of .").c_str()); +inline atok_t_partition lex_attr_t_partition(const char *in, const std::function * report_error){ + unsigned int len = strlen(in); + switch(len){ + case 4: + switch(*((triehash_uu32*)&in[0])){ + case onechar('n', 0, 32) | onechar('a', 8, 32) | onechar('m', 16, 32) | onechar('e', 24, 32): + return atok_t_partition::NAME; + break; + default: break; + } + break; + default: break; + } + noreturn_report(report_error, ("Found unrecognized attribute " + std::string(in) + " of .").c_str()); } -inline gtok_t_partition_list lex_node_t_partition_list(const char* in, const std::function* report_error) { - unsigned int len = strlen(in); - switch (len) { - case 9: - switch (*((triehash_uu64*)&in[0])) { - case onechar('p', 0, 64) | onechar('a', 8, 64) | onechar('r', 16, 64) | onechar('t', 24, 64) | onechar('i', 32, 64) | onechar('t', 40, 64) | onechar('i', 48, 64) | onechar('o', 56, 64): - switch (in[8]) { - case onechar('n', 0, 8): - return gtok_t_partition_list::PARTITION; - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - noreturn_report(report_error, ("Found unrecognized child " + std::string(in) + " of .").c_str()); +inline gtok_t_partition_list lex_node_t_partition_list(const char *in, const std::function *report_error){ + unsigned int len = strlen(in); + switch(len){ + case 9: + switch(*((triehash_uu64*)&in[0])){ + case onechar('p', 0, 64) | onechar('a', 8, 64) | onechar('r', 16, 64) | onechar('t', 24, 64) | onechar('i', 32, 64) | onechar('t', 40, 64) | onechar('i', 48, 64) | onechar('o', 56, 64): + switch(in[8]){ + case onechar('n', 0, 8): + return gtok_t_partition_list::PARTITION; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + noreturn_report(report_error, ("Found unrecognized child " + std::string(in) + " of .").c_str()); } -inline atok_t_set_global_signal lex_attr_t_set_global_signal(const char* in, const std::function* report_error) { - unsigned int len = strlen(in); - switch (len) { - case 4: - switch (*((triehash_uu32*)&in[0])) { - case onechar('n', 0, 32) | onechar('a', 8, 32) | onechar('m', 16, 32) | onechar('e', 24, 32): - return atok_t_set_global_signal::NAME; - break; - case onechar('t', 0, 32) | onechar('y', 8, 32) | onechar('p', 16, 32) | onechar('e', 24, 32): - return atok_t_set_global_signal::TYPE; - break; - default: - break; - } - break; - case 11: - switch (*((triehash_uu64*)&in[0])) { - case onechar('r', 0, 64) | onechar('o', 8, 64) | onechar('u', 16, 64) | onechar('t', 24, 64) | onechar('e', 32, 64) | onechar('_', 40, 64) | onechar('m', 48, 64) | onechar('o', 56, 64): - switch (in[8]) { - case onechar('d', 0, 8): - switch (in[9]) { - case onechar('e', 0, 8): - switch (in[10]) { - case onechar('l', 0, 8): - return atok_t_set_global_signal::ROUTE_MODEL; - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - noreturn_report(report_error, ("Found unrecognized attribute " + std::string(in) + " of .").c_str()); +inline atok_t_set_global_signal lex_attr_t_set_global_signal(const char *in, const std::function * report_error){ + unsigned int len = strlen(in); + switch(len){ + case 4: + switch(*((triehash_uu32*)&in[0])){ + case onechar('n', 0, 32) | onechar('a', 8, 32) | onechar('m', 16, 32) | onechar('e', 24, 32): + return atok_t_set_global_signal::NAME; + break; + default: break; + } + break; + case 11: + switch(*((triehash_uu64*)&in[0])){ + case onechar('r', 0, 64) | onechar('o', 8, 64) | onechar('u', 16, 64) | onechar('t', 24, 64) | onechar('e', 32, 64) | onechar('_', 40, 64) | onechar('m', 48, 64) | onechar('o', 56, 64): + switch(in[8]){ + case onechar('d', 0, 8): + switch(in[9]){ + case onechar('e', 0, 8): + switch(in[10]){ + case onechar('l', 0, 8): + return atok_t_set_global_signal::ROUTE_MODEL; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + case 12: + switch(*((triehash_uu64*)&in[0])){ + case onechar('n', 0, 64) | onechar('e', 8, 64) | onechar('t', 16, 64) | onechar('w', 24, 64) | onechar('o', 32, 64) | onechar('r', 40, 64) | onechar('k', 48, 64) | onechar('_', 56, 64): + switch(*((triehash_uu32*)&in[8])){ + case onechar('n', 0, 32) | onechar('a', 8, 32) | onechar('m', 16, 32) | onechar('e', 24, 32): + return atok_t_set_global_signal::NETWORK_NAME; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + noreturn_report(report_error, ("Found unrecognized attribute " + std::string(in) + " of .").c_str()); } -inline gtok_t_global_route_constraints lex_node_t_global_route_constraints(const char* in, const std::function* report_error) { - unsigned int len = strlen(in); - switch (len) { - case 17: - switch (*((triehash_uu64*)&in[0])) { - case onechar('s', 0, 64) | onechar('e', 8, 64) | onechar('t', 16, 64) | onechar('_', 24, 64) | onechar('g', 32, 64) | onechar('l', 40, 64) | onechar('o', 48, 64) | onechar('b', 56, 64): - switch (*((triehash_uu64*)&in[8])) { - case onechar('a', 0, 64) | onechar('l', 8, 64) | onechar('_', 16, 64) | onechar('s', 24, 64) | onechar('i', 32, 64) | onechar('g', 40, 64) | onechar('n', 48, 64) | onechar('a', 56, 64): - switch (in[16]) { - case onechar('l', 0, 8): - return gtok_t_global_route_constraints::SET_GLOBAL_SIGNAL; - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - noreturn_report(report_error, ("Found unrecognized child " + std::string(in) + " of .").c_str()); +inline gtok_t_global_route_constraints lex_node_t_global_route_constraints(const char *in, const std::function *report_error){ + unsigned int len = strlen(in); + switch(len){ + case 17: + switch(*((triehash_uu64*)&in[0])){ + case onechar('s', 0, 64) | onechar('e', 8, 64) | onechar('t', 16, 64) | onechar('_', 24, 64) | onechar('g', 32, 64) | onechar('l', 40, 64) | onechar('o', 48, 64) | onechar('b', 56, 64): + switch(*((triehash_uu64*)&in[8])){ + case onechar('a', 0, 64) | onechar('l', 8, 64) | onechar('_', 16, 64) | onechar('s', 24, 64) | onechar('i', 32, 64) | onechar('g', 40, 64) | onechar('n', 48, 64) | onechar('a', 56, 64): + switch(in[16]){ + case onechar('l', 0, 8): + return gtok_t_global_route_constraints::SET_GLOBAL_SIGNAL; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + noreturn_report(report_error, ("Found unrecognized child " + std::string(in) + " of .").c_str()); } -inline gtok_t_vpr_constraints lex_node_t_vpr_constraints(const char* in, const std::function* report_error) { - unsigned int len = strlen(in); - switch (len) { - case 14: - switch (*((triehash_uu64*)&in[0])) { - case onechar('p', 0, 64) | onechar('a', 8, 64) | onechar('r', 16, 64) | onechar('t', 24, 64) | onechar('i', 32, 64) | onechar('t', 40, 64) | onechar('i', 48, 64) | onechar('o', 56, 64): - switch (*((triehash_uu32*)&in[8])) { - case onechar('n', 0, 32) | onechar('_', 8, 32) | onechar('l', 16, 32) | onechar('i', 24, 32): - switch (in[12]) { - case onechar('s', 0, 8): - switch (in[13]) { - case onechar('t', 0, 8): - return gtok_t_vpr_constraints::PARTITION_LIST; - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - break; - case 24: - switch (*((triehash_uu64*)&in[0])) { - case onechar('g', 0, 64) | onechar('l', 8, 64) | onechar('o', 16, 64) | onechar('b', 24, 64) | onechar('a', 32, 64) | onechar('l', 40, 64) | onechar('_', 48, 64) | onechar('r', 56, 64): - switch (*((triehash_uu64*)&in[8])) { - case onechar('o', 0, 64) | onechar('u', 8, 64) | onechar('t', 16, 64) | onechar('e', 24, 64) | onechar('_', 32, 64) | onechar('c', 40, 64) | onechar('o', 48, 64) | onechar('n', 56, 64): - switch (*((triehash_uu64*)&in[16])) { - case onechar('s', 0, 64) | onechar('t', 8, 64) | onechar('r', 16, 64) | onechar('a', 24, 64) | onechar('i', 32, 64) | onechar('n', 40, 64) | onechar('t', 48, 64) | onechar('s', 56, 64): - return gtok_t_vpr_constraints::GLOBAL_ROUTE_CONSTRAINTS; - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - noreturn_report(report_error, ("Found unrecognized child " + std::string(in) + " of .").c_str()); +inline gtok_t_vpr_constraints lex_node_t_vpr_constraints(const char *in, const std::function *report_error){ + unsigned int len = strlen(in); + switch(len){ + case 14: + switch(*((triehash_uu64*)&in[0])){ + case onechar('p', 0, 64) | onechar('a', 8, 64) | onechar('r', 16, 64) | onechar('t', 24, 64) | onechar('i', 32, 64) | onechar('t', 40, 64) | onechar('i', 48, 64) | onechar('o', 56, 64): + switch(*((triehash_uu32*)&in[8])){ + case onechar('n', 0, 32) | onechar('_', 8, 32) | onechar('l', 16, 32) | onechar('i', 24, 32): + switch(in[12]){ + case onechar('s', 0, 8): + switch(in[13]){ + case onechar('t', 0, 8): + return gtok_t_vpr_constraints::PARTITION_LIST; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + case 24: + switch(*((triehash_uu64*)&in[0])){ + case onechar('g', 0, 64) | onechar('l', 8, 64) | onechar('o', 16, 64) | onechar('b', 24, 64) | onechar('a', 32, 64) | onechar('l', 40, 64) | onechar('_', 48, 64) | onechar('r', 56, 64): + switch(*((triehash_uu64*)&in[8])){ + case onechar('o', 0, 64) | onechar('u', 8, 64) | onechar('t', 16, 64) | onechar('e', 24, 64) | onechar('_', 32, 64) | onechar('c', 40, 64) | onechar('o', 48, 64) | onechar('n', 56, 64): + switch(*((triehash_uu64*)&in[16])){ + case onechar('s', 0, 64) | onechar('t', 8, 64) | onechar('r', 16, 64) | onechar('a', 24, 64) | onechar('i', 32, 64) | onechar('n', 40, 64) | onechar('t', 48, 64) | onechar('s', 56, 64): + return gtok_t_vpr_constraints::GLOBAL_ROUTE_CONSTRAINTS; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + noreturn_report(report_error, ("Found unrecognized child " + std::string(in) + " of .").c_str()); } -inline atok_t_vpr_constraints lex_attr_t_vpr_constraints(const char* in, const std::function* report_error) { - unsigned int len = strlen(in); - switch (len) { - case 9: - switch (*((triehash_uu64*)&in[0])) { - case onechar('t', 0, 64) | onechar('o', 8, 64) | onechar('o', 16, 64) | onechar('l', 24, 64) | onechar('_', 32, 64) | onechar('n', 40, 64) | onechar('a', 48, 64) | onechar('m', 56, 64): - switch (in[8]) { - case onechar('e', 0, 8): - return atok_t_vpr_constraints::TOOL_NAME; - break; - default: - break; - } - break; - default: - break; - } - break; - default: - break; - } - noreturn_report(report_error, ("Found unrecognized attribute " + std::string(in) + " of .").c_str()); +inline atok_t_vpr_constraints lex_attr_t_vpr_constraints(const char *in, const std::function * report_error){ + unsigned int len = strlen(in); + switch(len){ + case 9: + switch(*((triehash_uu64*)&in[0])){ + case onechar('t', 0, 64) | onechar('o', 8, 64) | onechar('o', 16, 64) | onechar('l', 24, 64) | onechar('_', 32, 64) | onechar('n', 40, 64) | onechar('a', 48, 64) | onechar('m', 56, 64): + switch(in[8]){ + case onechar('e', 0, 8): + return atok_t_vpr_constraints::TOOL_NAME; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + noreturn_report(report_error, ("Found unrecognized attribute " + std::string(in) + " of .").c_str()); } /** * Internal error function for xs:choice and xs:sequence validators. */ -[[noreturn]] inline void dfa_error(const char* wrong, const int* states, const char* const* lookup, int len, const std::function* report_error); +[[noreturn]] inline void dfa_error(const char *wrong, const int *states, const char * const *lookup, int len, const std::function * report_error); + +/** + * Internal error function for xs:all validators. + */ +template +[[noreturn]] inline void all_error(std::bitset gstate, const char * const *lookup, const std::function * report_error); /** * Internal error function for attribute validators. */ template -[[noreturn]] inline void attr_error(std::bitset astate, const char* const* lookup, const std::function* report_error); +[[noreturn]] inline void attr_error(std::bitset astate, const char * const *lookup, const std::function * report_error); + + +/* Lookup tables for enums. */ +constexpr const char *lookup_route_model_type[] = {"UXSD_INVALID", "ideal", "route", "dedicated_network"}; + +/* Lexers(string->token functions) for enums. */ +inline enum_route_model_type lex_enum_route_model_type(const char *in, bool throw_on_invalid, const std::function * report_error){ + unsigned int len = strlen(in); + switch(len){ + case 5: + switch(*((triehash_uu32*)&in[0])){ + case onechar('i', 0, 32) | onechar('d', 8, 32) | onechar('e', 16, 32) | onechar('a', 24, 32): + switch(in[4]){ + case onechar('l', 0, 8): + return enum_route_model_type::IDEAL; + break; + default: break; + } + break; + case onechar('r', 0, 32) | onechar('o', 8, 32) | onechar('u', 16, 32) | onechar('t', 24, 32): + switch(in[4]){ + case onechar('e', 0, 8): + return enum_route_model_type::ROUTE; + break; + default: break; + } + break; + default: break; + } + break; + case 17: + switch(*((triehash_uu64*)&in[0])){ + case onechar('d', 0, 64) | onechar('e', 8, 64) | onechar('d', 16, 64) | onechar('i', 24, 64) | onechar('c', 32, 64) | onechar('a', 40, 64) | onechar('t', 48, 64) | onechar('e', 56, 64): + switch(*((triehash_uu64*)&in[8])){ + case onechar('d', 0, 64) | onechar('_', 8, 64) | onechar('n', 16, 64) | onechar('e', 24, 64) | onechar('t', 32, 64) | onechar('w', 40, 64) | onechar('o', 48, 64) | onechar('r', 56, 64): + switch(in[16]){ + case onechar('k', 0, 8): + return enum_route_model_type::DEDICATED_NETWORK; + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + break; + default: break; + } + if(throw_on_invalid) + noreturn_report(report_error, ("Found unrecognized enum value " + std::string(in) + " of enum_route_model_type.").c_str()); + return enum_route_model_type::UXSD_INVALID; +} + /* Internal loading functions, which validate and load a PugiXML DOM tree into memory. */ -inline int load_int(const char* in, const std::function* report_error) { - int out; - out = std::strtol(in, NULL, 10); - if (errno != 0) - noreturn_report(report_error, ("Invalid value `" + std::string(in) + "` when loading into a int.").c_str()); - return out; +inline int load_int(const char *in, const std::function * report_error){ + int out; + out = std::strtol(in, NULL, 10); + if(errno != 0) + noreturn_report(report_error, ("Invalid value `" + std::string(in) + "` when loading into a int.").c_str()); + return out; } -inline void load_add_region_required_attributes(const pugi::xml_node& root, int* x_high, int* x_low, int* y_high, int* y_low, const std::function* report_error) { - std::bitset<5> astate = 0; - for (pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()) { - atok_t_add_region in = lex_attr_t_add_region(attr.name(), report_error); - if (astate[(int)in] == 0) - astate[(int)in] = 1; - else - noreturn_report(report_error, ("Duplicate attribute " + std::string(attr.name()) + " in .").c_str()); - switch (in) { - case atok_t_add_region::SUBTILE: - /* Attribute subtile set after element init */ - break; - case atok_t_add_region::X_HIGH: - *x_high = load_int(attr.value(), report_error); - break; - case atok_t_add_region::X_LOW: - *x_low = load_int(attr.value(), report_error); - break; - case atok_t_add_region::Y_HIGH: - *y_high = load_int(attr.value(), report_error); - break; - case atok_t_add_region::Y_LOW: - *y_low = load_int(attr.value(), report_error); - break; - default: - break; /* Not possible. */ - } - } - std::bitset<5> test_astate = astate | std::bitset<5>(0b00001); - if (!test_astate.all()) attr_error(test_astate, atok_lookup_t_add_region, report_error); +inline void load_add_region_required_attributes(const pugi::xml_node &root, int * x_high, int * x_low, int * y_high, int * y_low, const std::function * report_error){ + std::bitset<5> astate = 0; + for(pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()){ + atok_t_add_region in = lex_attr_t_add_region(attr.name(), report_error); + if(astate[(int)in] == 0) astate[(int)in] = 1; + else noreturn_report(report_error, ("Duplicate attribute " + std::string(attr.name()) + " in .").c_str()); + switch(in){ + case atok_t_add_region::SUBTILE: + /* Attribute subtile set after element init */ + break; + case atok_t_add_region::X_HIGH: + *x_high = load_int(attr.value(), report_error); + break; + case atok_t_add_region::X_LOW: + *x_low = load_int(attr.value(), report_error); + break; + case atok_t_add_region::Y_HIGH: + *y_high = load_int(attr.value(), report_error); + break; + case atok_t_add_region::Y_LOW: + *y_low = load_int(attr.value(), report_error); + break; + default: break; /* Not possible. */ + } + } + std::bitset<5> test_astate = astate | std::bitset<5>(0b00001); + if(!test_astate.all()) attr_error(test_astate, atok_lookup_t_add_region, report_error); +} + +inline void load_set_global_signal_required_attributes(const pugi::xml_node &root, enum_route_model_type * route_model, const std::function * report_error){ + std::bitset<3> astate = 0; + for(pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()){ + atok_t_set_global_signal in = lex_attr_t_set_global_signal(attr.name(), report_error); + if(astate[(int)in] == 0) astate[(int)in] = 1; + else noreturn_report(report_error, ("Duplicate attribute " + std::string(attr.name()) + " in .").c_str()); + switch(in){ + case atok_t_set_global_signal::NAME: + /* Attribute name set after element init */ + break; + case atok_t_set_global_signal::NETWORK_NAME: + /* Attribute network_name set after element init */ + break; + case atok_t_set_global_signal::ROUTE_MODEL: + *route_model = lex_enum_route_model_type(attr.value(), true, report_error); + break; + default: break; /* Not possible. */ + } + } + std::bitset<3> test_astate = astate | std::bitset<3>(0b010); + if(!test_astate.all()) attr_error(test_astate, atok_lookup_t_set_global_signal, report_error); } template -inline void load_add_atom(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug) { - (void)root; - (void)out; - (void)context; - (void)report_error; - // Update current file offset in case an error is encountered. - *offset_debug = root.offset_debug(); - - for (pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()) { - atok_t_add_atom in = lex_attr_t_add_atom(attr.name(), report_error); - switch (in) { - case atok_t_add_atom::NAME_PATTERN: - out.set_add_atom_name_pattern(attr.value(), context); - break; - default: - break; /* Not possible. */ - } - } - - if (root.first_child().type() == pugi::node_element) - noreturn_report(report_error, "Unexpected child element in ."); +inline void load_add_atom(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug){ + (void)root; + (void)out; + (void)context; + (void)report_error; + // Update current file offset in case an error is encountered. + *offset_debug = root.offset_debug(); + + for(pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()){ + atok_t_add_atom in = lex_attr_t_add_atom(attr.name(), report_error); + switch(in){ + case atok_t_add_atom::NAME_PATTERN: + out.set_add_atom_name_pattern(attr.value(), context); + break; + default: break; /* Not possible. */ + } + } + + if(root.first_child().type() == pugi::node_element) + noreturn_report(report_error, "Unexpected child element in ."); + } template -inline void load_add_region(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug) { - (void)root; - (void)out; - (void)context; - (void)report_error; - // Update current file offset in case an error is encountered. - *offset_debug = root.offset_debug(); - - for (pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()) { - atok_t_add_region in = lex_attr_t_add_region(attr.name(), report_error); - switch (in) { - case atok_t_add_region::SUBTILE: - out.set_add_region_subtile(load_int(attr.value(), report_error), context); - break; - case atok_t_add_region::X_HIGH: - /* Attribute x_high is already set */ - break; - case atok_t_add_region::X_LOW: - /* Attribute x_low is already set */ - break; - case atok_t_add_region::Y_HIGH: - /* Attribute y_high is already set */ - break; - case atok_t_add_region::Y_LOW: - /* Attribute y_low is already set */ - break; - default: - break; /* Not possible. */ - } - } - - if (root.first_child().type() == pugi::node_element) - noreturn_report(report_error, "Unexpected child element in ."); +inline void load_add_region(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug){ + (void)root; + (void)out; + (void)context; + (void)report_error; + // Update current file offset in case an error is encountered. + *offset_debug = root.offset_debug(); + + for(pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()){ + atok_t_add_region in = lex_attr_t_add_region(attr.name(), report_error); + switch(in){ + case atok_t_add_region::SUBTILE: + out.set_add_region_subtile(load_int(attr.value(), report_error), context); + break; + case atok_t_add_region::X_HIGH: + /* Attribute x_high is already set */ + break; + case atok_t_add_region::X_LOW: + /* Attribute x_low is already set */ + break; + case atok_t_add_region::Y_HIGH: + /* Attribute y_high is already set */ + break; + case atok_t_add_region::Y_LOW: + /* Attribute y_low is already set */ + break; + default: break; /* Not possible. */ + } + } + + if(root.first_child().type() == pugi::node_element) + noreturn_report(report_error, "Unexpected child element in ."); + } constexpr int NUM_T_PARTITION_STATES = 2; constexpr const int NUM_T_PARTITION_INPUTS = 2; constexpr int gstate_t_partition[NUM_T_PARTITION_STATES][NUM_T_PARTITION_INPUTS] = { - {0, 0}, - {0, 0}, + {0, 0}, + {0, 0}, }; template -inline void load_partition(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug) { - (void)root; - (void)out; - (void)context; - (void)report_error; - // Update current file offset in case an error is encountered. - *offset_debug = root.offset_debug(); - - for (pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()) { - atok_t_partition in = lex_attr_t_partition(attr.name(), report_error); - switch (in) { - case atok_t_partition::NAME: - out.set_partition_name(attr.value(), context); - break; - default: - break; /* Not possible. */ - } - } - - // Preallocate arrays by counting child nodes (if any) - size_t add_atom_count = 0; - size_t add_region_count = 0; - { - int next, state = 1; - for (pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { - *offset_debug = node.offset_debug(); - gtok_t_partition in = lex_node_t_partition(node.name(), report_error); - next = gstate_t_partition[state][(int)in]; - if (next == -1) - dfa_error(gtok_lookup_t_partition[(int)in], gstate_t_partition[state], gtok_lookup_t_partition, 2, report_error); - state = next; - switch (in) { - case gtok_t_partition::ADD_ATOM: - add_atom_count += 1; - break; - case gtok_t_partition::ADD_REGION: - add_region_count += 1; - break; - default: - break; /* Not possible. */ - } - } - - out.preallocate_partition_add_atom(context, add_atom_count); - out.preallocate_partition_add_region(context, add_region_count); - } - int next, state = 1; - for (pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { - *offset_debug = node.offset_debug(); - gtok_t_partition in = lex_node_t_partition(node.name(), report_error); - next = gstate_t_partition[state][(int)in]; - if (next == -1) - dfa_error(gtok_lookup_t_partition[(int)in], gstate_t_partition[state], gtok_lookup_t_partition, 2, report_error); - state = next; - switch (in) { - case gtok_t_partition::ADD_ATOM: { - auto child_context = out.add_partition_add_atom(context); - load_add_atom(node, out, child_context, report_error, offset_debug); - out.finish_partition_add_atom(child_context); - } break; - case gtok_t_partition::ADD_REGION: { - int add_region_x_high; - memset(&add_region_x_high, 0, sizeof(add_region_x_high)); - int add_region_x_low; - memset(&add_region_x_low, 0, sizeof(add_region_x_low)); - int add_region_y_high; - memset(&add_region_y_high, 0, sizeof(add_region_y_high)); - int add_region_y_low; - memset(&add_region_y_low, 0, sizeof(add_region_y_low)); - load_add_region_required_attributes(node, &add_region_x_high, &add_region_x_low, &add_region_y_high, &add_region_y_low, report_error); - auto child_context = out.add_partition_add_region(context, add_region_x_high, add_region_x_low, add_region_y_high, add_region_y_low); - load_add_region(node, out, child_context, report_error, offset_debug); - out.finish_partition_add_region(child_context); - } break; - default: - break; /* Not possible. */ - } - } - if (state != 0) dfa_error("end of input", gstate_t_partition[state], gtok_lookup_t_partition, 2, report_error); +inline void load_partition(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug){ + (void)root; + (void)out; + (void)context; + (void)report_error; + // Update current file offset in case an error is encountered. + *offset_debug = root.offset_debug(); + + for(pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()){ + atok_t_partition in = lex_attr_t_partition(attr.name(), report_error); + switch(in){ + case atok_t_partition::NAME: + out.set_partition_name(attr.value(), context); + break; + default: break; /* Not possible. */ + } + } + + // Preallocate arrays by counting child nodes (if any) + size_t add_atom_count = 0; + size_t add_region_count = 0; + { + int next, state=1; + for(pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { + *offset_debug = node.offset_debug(); + gtok_t_partition in = lex_node_t_partition(node.name(), report_error); + next = gstate_t_partition[state][(int)in]; + if(next == -1) + dfa_error(gtok_lookup_t_partition[(int)in], gstate_t_partition[state], gtok_lookup_t_partition, 2, report_error); + state = next; + switch(in) { + case gtok_t_partition::ADD_ATOM: + add_atom_count += 1; + break; + case gtok_t_partition::ADD_REGION: + add_region_count += 1; + break; + default: break; /* Not possible. */ + } + } + + out.preallocate_partition_add_atom(context, add_atom_count); + out.preallocate_partition_add_region(context, add_region_count); + } + int next, state=1; + for(pugi::xml_node node = root.first_child(); node; node = node.next_sibling()){ + *offset_debug = node.offset_debug(); + gtok_t_partition in = lex_node_t_partition(node.name(), report_error); + next = gstate_t_partition[state][(int)in]; + if(next == -1) + dfa_error(gtok_lookup_t_partition[(int)in], gstate_t_partition[state], gtok_lookup_t_partition, 2, report_error); + state = next; + switch(in){ + case gtok_t_partition::ADD_ATOM: + { + auto child_context = out.add_partition_add_atom(context); + load_add_atom(node, out, child_context, report_error, offset_debug); + out.finish_partition_add_atom(child_context); + } + break; + case gtok_t_partition::ADD_REGION: + { + int add_region_x_high; + memset(&add_region_x_high, 0, sizeof(add_region_x_high)); + int add_region_x_low; + memset(&add_region_x_low, 0, sizeof(add_region_x_low)); + int add_region_y_high; + memset(&add_region_y_high, 0, sizeof(add_region_y_high)); + int add_region_y_low; + memset(&add_region_y_low, 0, sizeof(add_region_y_low)); + load_add_region_required_attributes(node, &add_region_x_high, &add_region_x_low, &add_region_y_high, &add_region_y_low, report_error); + auto child_context = out.add_partition_add_region(context, add_region_x_high, add_region_x_low, add_region_y_high, add_region_y_low); + load_add_region(node, out, child_context, report_error, offset_debug); + out.finish_partition_add_region(child_context); + } + break; + default: break; /* Not possible. */ + } + } + if(state != 0) dfa_error("end of input", gstate_t_partition[state], gtok_lookup_t_partition, 2, report_error); + } constexpr int NUM_T_PARTITION_LIST_STATES = 2; constexpr const int NUM_T_PARTITION_LIST_INPUTS = 1; constexpr int gstate_t_partition_list[NUM_T_PARTITION_LIST_STATES][NUM_T_PARTITION_LIST_INPUTS] = { - {0}, - {0}, + {0}, + {0}, }; template -inline void load_partition_list(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug) { - (void)root; - (void)out; - (void)context; - (void)report_error; - // Update current file offset in case an error is encountered. - *offset_debug = root.offset_debug(); - - if (root.first_attribute()) - noreturn_report(report_error, "Unexpected attribute in ."); - - // Preallocate arrays by counting child nodes (if any) - size_t partition_count = 0; - { - int next, state = 1; - for (pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { - *offset_debug = node.offset_debug(); - gtok_t_partition_list in = lex_node_t_partition_list(node.name(), report_error); - next = gstate_t_partition_list[state][(int)in]; - if (next == -1) - dfa_error(gtok_lookup_t_partition_list[(int)in], gstate_t_partition_list[state], gtok_lookup_t_partition_list, 1, report_error); - state = next; - switch (in) { - case gtok_t_partition_list::PARTITION: - partition_count += 1; - break; - default: - break; /* Not possible. */ - } - } - - out.preallocate_partition_list_partition(context, partition_count); - } - int next, state = 1; - for (pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { - *offset_debug = node.offset_debug(); - gtok_t_partition_list in = lex_node_t_partition_list(node.name(), report_error); - next = gstate_t_partition_list[state][(int)in]; - if (next == -1) - dfa_error(gtok_lookup_t_partition_list[(int)in], gstate_t_partition_list[state], gtok_lookup_t_partition_list, 1, report_error); - state = next; - switch (in) { - case gtok_t_partition_list::PARTITION: { - auto child_context = out.add_partition_list_partition(context); - load_partition(node, out, child_context, report_error, offset_debug); - out.finish_partition_list_partition(child_context); - } break; - default: - break; /* Not possible. */ - } - } - if (state != 0) dfa_error("end of input", gstate_t_partition_list[state], gtok_lookup_t_partition_list, 1, report_error); +inline void load_partition_list(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug){ + (void)root; + (void)out; + (void)context; + (void)report_error; + // Update current file offset in case an error is encountered. + *offset_debug = root.offset_debug(); + + if(root.first_attribute()) + noreturn_report(report_error, "Unexpected attribute in ."); + + // Preallocate arrays by counting child nodes (if any) + size_t partition_count = 0; + { + int next, state=1; + for(pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { + *offset_debug = node.offset_debug(); + gtok_t_partition_list in = lex_node_t_partition_list(node.name(), report_error); + next = gstate_t_partition_list[state][(int)in]; + if(next == -1) + dfa_error(gtok_lookup_t_partition_list[(int)in], gstate_t_partition_list[state], gtok_lookup_t_partition_list, 1, report_error); + state = next; + switch(in) { + case gtok_t_partition_list::PARTITION: + partition_count += 1; + break; + default: break; /* Not possible. */ + } + } + + out.preallocate_partition_list_partition(context, partition_count); + } + int next, state=1; + for(pugi::xml_node node = root.first_child(); node; node = node.next_sibling()){ + *offset_debug = node.offset_debug(); + gtok_t_partition_list in = lex_node_t_partition_list(node.name(), report_error); + next = gstate_t_partition_list[state][(int)in]; + if(next == -1) + dfa_error(gtok_lookup_t_partition_list[(int)in], gstate_t_partition_list[state], gtok_lookup_t_partition_list, 1, report_error); + state = next; + switch(in){ + case gtok_t_partition_list::PARTITION: + { + auto child_context = out.add_partition_list_partition(context); + load_partition(node, out, child_context, report_error, offset_debug); + out.finish_partition_list_partition(child_context); + } + break; + default: break; /* Not possible. */ + } + } + if(state != 0) dfa_error("end of input", gstate_t_partition_list[state], gtok_lookup_t_partition_list, 1, report_error); + } template -inline void load_set_global_signal(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug) { - (void)root; - (void)out; - (void)context; - (void)report_error; - // Update current file offset in case an error is encountered. - *offset_debug = root.offset_debug(); - - for (pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()) { - atok_t_set_global_signal in = lex_attr_t_set_global_signal(attr.name(), report_error); - switch (in) { - case atok_t_set_global_signal::NAME: - out.set_set_global_signal_name(attr.value(), context); - break; - case atok_t_set_global_signal::ROUTE_MODEL: - out.set_set_global_signal_route_model(attr.value(), context); - break; - case atok_t_set_global_signal::TYPE: - out.set_set_global_signal_type(attr.value(), context); - break; - default: - break; /* Not possible. */ - } - } - - if (root.first_child().type() == pugi::node_element) - noreturn_report(report_error, "Unexpected child element in ."); +inline void load_set_global_signal(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug){ + (void)root; + (void)out; + (void)context; + (void)report_error; + // Update current file offset in case an error is encountered. + *offset_debug = root.offset_debug(); + + for(pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()){ + atok_t_set_global_signal in = lex_attr_t_set_global_signal(attr.name(), report_error); + switch(in){ + case atok_t_set_global_signal::NAME: + out.set_set_global_signal_name(attr.value(), context); + break; + case atok_t_set_global_signal::NETWORK_NAME: + out.set_set_global_signal_network_name(attr.value(), context); + break; + case atok_t_set_global_signal::ROUTE_MODEL: + /* Attribute route_model is already set */ + break; + default: break; /* Not possible. */ + } + } + + if(root.first_child().type() == pugi::node_element) + noreturn_report(report_error, "Unexpected child element in ."); + } constexpr int NUM_T_GLOBAL_ROUTE_CONSTRAINTS_STATES = 2; constexpr const int NUM_T_GLOBAL_ROUTE_CONSTRAINTS_INPUTS = 1; constexpr int gstate_t_global_route_constraints[NUM_T_GLOBAL_ROUTE_CONSTRAINTS_STATES][NUM_T_GLOBAL_ROUTE_CONSTRAINTS_INPUTS] = { - {0}, - {0}, + {0}, + {0}, }; template -inline void load_global_route_constraints(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug) { - (void)root; - (void)out; - (void)context; - (void)report_error; - // Update current file offset in case an error is encountered. - *offset_debug = root.offset_debug(); - - if (root.first_attribute()) - noreturn_report(report_error, "Unexpected attribute in ."); - - // Preallocate arrays by counting child nodes (if any) - size_t set_global_signal_count = 0; - { - int next, state = 1; - for (pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { - *offset_debug = node.offset_debug(); - gtok_t_global_route_constraints in = lex_node_t_global_route_constraints(node.name(), report_error); - next = gstate_t_global_route_constraints[state][(int)in]; - if (next == -1) - dfa_error(gtok_lookup_t_global_route_constraints[(int)in], gstate_t_global_route_constraints[state], gtok_lookup_t_global_route_constraints, 1, report_error); - state = next; - switch (in) { - case gtok_t_global_route_constraints::SET_GLOBAL_SIGNAL: - set_global_signal_count += 1; - break; - default: - break; /* Not possible. */ - } - } - - out.preallocate_global_route_constraints_set_global_signal(context, set_global_signal_count); - } - int next, state = 1; - for (pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { - *offset_debug = node.offset_debug(); - gtok_t_global_route_constraints in = lex_node_t_global_route_constraints(node.name(), report_error); - next = gstate_t_global_route_constraints[state][(int)in]; - if (next == -1) - dfa_error(gtok_lookup_t_global_route_constraints[(int)in], gstate_t_global_route_constraints[state], gtok_lookup_t_global_route_constraints, 1, report_error); - state = next; - switch (in) { - case gtok_t_global_route_constraints::SET_GLOBAL_SIGNAL: { - auto child_context = out.add_global_route_constraints_set_global_signal(context); - load_set_global_signal(node, out, child_context, report_error, offset_debug); - out.finish_global_route_constraints_set_global_signal(child_context); - } break; - default: - break; /* Not possible. */ - } - } - if (state != 0) dfa_error("end of input", gstate_t_global_route_constraints[state], gtok_lookup_t_global_route_constraints, 1, report_error); +inline void load_global_route_constraints(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug){ + (void)root; + (void)out; + (void)context; + (void)report_error; + // Update current file offset in case an error is encountered. + *offset_debug = root.offset_debug(); + + if(root.first_attribute()) + noreturn_report(report_error, "Unexpected attribute in ."); + + // Preallocate arrays by counting child nodes (if any) + size_t set_global_signal_count = 0; + { + int next, state=1; + for(pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { + *offset_debug = node.offset_debug(); + gtok_t_global_route_constraints in = lex_node_t_global_route_constraints(node.name(), report_error); + next = gstate_t_global_route_constraints[state][(int)in]; + if(next == -1) + dfa_error(gtok_lookup_t_global_route_constraints[(int)in], gstate_t_global_route_constraints[state], gtok_lookup_t_global_route_constraints, 1, report_error); + state = next; + switch(in) { + case gtok_t_global_route_constraints::SET_GLOBAL_SIGNAL: + set_global_signal_count += 1; + break; + default: break; /* Not possible. */ + } + } + + out.preallocate_global_route_constraints_set_global_signal(context, set_global_signal_count); + } + int next, state=1; + for(pugi::xml_node node = root.first_child(); node; node = node.next_sibling()){ + *offset_debug = node.offset_debug(); + gtok_t_global_route_constraints in = lex_node_t_global_route_constraints(node.name(), report_error); + next = gstate_t_global_route_constraints[state][(int)in]; + if(next == -1) + dfa_error(gtok_lookup_t_global_route_constraints[(int)in], gstate_t_global_route_constraints[state], gtok_lookup_t_global_route_constraints, 1, report_error); + state = next; + switch(in){ + case gtok_t_global_route_constraints::SET_GLOBAL_SIGNAL: + { + enum_route_model_type set_global_signal_route_model; + memset(&set_global_signal_route_model, 0, sizeof(set_global_signal_route_model)); + load_set_global_signal_required_attributes(node, &set_global_signal_route_model, report_error); + auto child_context = out.add_global_route_constraints_set_global_signal(context, set_global_signal_route_model); + load_set_global_signal(node, out, child_context, report_error, offset_debug); + out.finish_global_route_constraints_set_global_signal(child_context); + } + break; + default: break; /* Not possible. */ + } + } + if(state != 0) dfa_error("end of input", gstate_t_global_route_constraints[state], gtok_lookup_t_global_route_constraints, 1, report_error); + } -constexpr int NUM_T_VPR_CONSTRAINTS_STATES = 1; -constexpr const int NUM_T_VPR_CONSTRAINTS_INPUTS = 2; -constexpr int gstate_t_vpr_constraints[NUM_T_VPR_CONSTRAINTS_STATES][NUM_T_VPR_CONSTRAINTS_INPUTS] = { - {0, 0}, -}; template -inline void load_vpr_constraints(const pugi::xml_node& root, T& out, Context& context, const std::function* report_error, ptrdiff_t* offset_debug) { - (void)root; - (void)out; - (void)context; - (void)report_error; - // Update current file offset in case an error is encountered. - *offset_debug = root.offset_debug(); - - for (pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()) { - atok_t_vpr_constraints in = lex_attr_t_vpr_constraints(attr.name(), report_error); - switch (in) { - case atok_t_vpr_constraints::TOOL_NAME: - out.set_vpr_constraints_tool_name(attr.value(), context); - break; - default: - break; /* Not possible. */ - } - } - - // Preallocate arrays by counting child nodes (if any) - size_t partition_list_count = 0; - size_t global_route_constraints_count = 0; - { - int next, state = 0; - for (pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { - *offset_debug = node.offset_debug(); - gtok_t_vpr_constraints in = lex_node_t_vpr_constraints(node.name(), report_error); - next = gstate_t_vpr_constraints[state][(int)in]; - if (next == -1) - dfa_error(gtok_lookup_t_vpr_constraints[(int)in], gstate_t_vpr_constraints[state], gtok_lookup_t_vpr_constraints, 2, report_error); - state = next; - switch (in) { - case gtok_t_vpr_constraints::PARTITION_LIST: - partition_list_count += 1; - break; - case gtok_t_vpr_constraints::GLOBAL_ROUTE_CONSTRAINTS: - global_route_constraints_count += 1; - break; - default: - break; /* Not possible. */ - } - } - - out.preallocate_vpr_constraints_partition_list(context, partition_list_count); - out.preallocate_vpr_constraints_global_route_constraints(context, global_route_constraints_count); - } - int next, state = 0; - for (pugi::xml_node node = root.first_child(); node; node = node.next_sibling()) { - *offset_debug = node.offset_debug(); - gtok_t_vpr_constraints in = lex_node_t_vpr_constraints(node.name(), report_error); - next = gstate_t_vpr_constraints[state][(int)in]; - if (next == -1) - dfa_error(gtok_lookup_t_vpr_constraints[(int)in], gstate_t_vpr_constraints[state], gtok_lookup_t_vpr_constraints, 2, report_error); - state = next; - switch (in) { - case gtok_t_vpr_constraints::PARTITION_LIST: { - auto child_context = out.add_vpr_constraints_partition_list(context); - load_partition_list(node, out, child_context, report_error, offset_debug); - out.finish_vpr_constraints_partition_list(child_context); - } break; - case gtok_t_vpr_constraints::GLOBAL_ROUTE_CONSTRAINTS: { - auto child_context = out.add_vpr_constraints_global_route_constraints(context); - load_global_route_constraints(node, out, child_context, report_error, offset_debug); - out.finish_vpr_constraints_global_route_constraints(child_context); - } break; - default: - break; /* Not possible. */ - } - } - if (state != 0) dfa_error("end of input", gstate_t_vpr_constraints[state], gtok_lookup_t_vpr_constraints, 2, report_error); +inline void load_vpr_constraints(const pugi::xml_node &root, T &out, Context &context, const std::function *report_error, ptrdiff_t *offset_debug){ + (void)root; + (void)out; + (void)context; + (void)report_error; + // Update current file offset in case an error is encountered. + *offset_debug = root.offset_debug(); + + for(pugi::xml_attribute attr = root.first_attribute(); attr; attr = attr.next_attribute()){ + atok_t_vpr_constraints in = lex_attr_t_vpr_constraints(attr.name(), report_error); + switch(in){ + case atok_t_vpr_constraints::TOOL_NAME: + out.set_vpr_constraints_tool_name(attr.value(), context); + break; + default: break; /* Not possible. */ + } + } + + std::bitset<2> gstate = 0; + for(pugi::xml_node node = root.first_child(); node; node = node.next_sibling()){ + *offset_debug = node.offset_debug(); + gtok_t_vpr_constraints in = lex_node_t_vpr_constraints(node.name(), report_error); + if(gstate[(int)in] == 0) gstate[(int)in] = 1; + else noreturn_report(report_error, ("Duplicate element " + std::string(node.name()) + " in .").c_str()); + switch(in){ + case gtok_t_vpr_constraints::PARTITION_LIST: + { + auto child_context = out.init_vpr_constraints_partition_list(context); + load_partition_list(node, out, child_context, report_error, offset_debug); + out.finish_vpr_constraints_partition_list(child_context); + } + break; + case gtok_t_vpr_constraints::GLOBAL_ROUTE_CONSTRAINTS: + { + auto child_context = out.init_vpr_constraints_global_route_constraints(context); + load_global_route_constraints(node, out, child_context, report_error, offset_debug); + out.finish_vpr_constraints_global_route_constraints(child_context); + } + break; + default: break; /* Not possible. */ + } + } + std::bitset<2> test_gstate = gstate | std::bitset<2>(0b11); + if(!test_gstate.all()) all_error(test_gstate, gtok_lookup_t_vpr_constraints, report_error); + } + /* Internal writing functions, which uxsdcxx uses to write out a class. */ template -inline void write_partition(T& in, std::ostream& os, Context& context) { - (void)in; - (void)os; - (void)context; - { - for (size_t i = 0, n = in.num_partition_add_atom(context); i < n; i++) { - auto child_context = in.get_partition_add_atom(i, context); - os << "\n"; - } - } - { - for (size_t i = 0, n = in.num_partition_add_region(context); i < n; i++) { - auto child_context = in.get_partition_add_region(i, context); - os << "\n"; - } - } +inline void write_partition(T &in, std::ostream &os, Context &context){ + (void)in; + (void)os; + (void)context; + { + for(size_t i=0, n=in.num_partition_add_atom(context); i\n"; + } + } + { + for(size_t i=0, n=in.num_partition_add_region(context); i\n"; + } + } } template -inline void write_partition_list(T& in, std::ostream& os, Context& context) { - (void)in; - (void)os; - (void)context; - { - for (size_t i = 0, n = in.num_partition_list_partition(context); i < n; i++) { - auto child_context = in.get_partition_list_partition(i, context); - os << ""; - write_partition(in, os, child_context); - os << "\n"; - } - } +inline void write_partition_list(T &in, std::ostream &os, Context &context){ + (void)in; + (void)os; + (void)context; + { + for(size_t i=0, n=in.num_partition_list_partition(context); i"; + write_partition(in, os, child_context); + os << "\n"; + } + } } template -inline void write_global_route_constraints(T& in, std::ostream& os, Context& context) { - (void)in; - (void)os; - (void)context; - { - for (size_t i = 0, n = in.num_global_route_constraints_set_global_signal(context); i < n; i++) { - auto child_context = in.get_global_route_constraints_set_global_signal(i, context); - os << "\n"; - } - } +inline void write_global_route_constraints(T &in, std::ostream &os, Context &context){ + (void)in; + (void)os; + (void)context; + { + for(size_t i=0, n=in.num_global_route_constraints_set_global_signal(context); i\n"; + } + } } template -inline void write_vpr_constraints(T& in, std::ostream& os, Context& context) { - (void)in; - (void)os; - (void)context; - { - for (size_t i = 0, n = in.num_vpr_constraints_partition_list(context); i < n; i++) { - auto child_context = in.get_vpr_constraints_partition_list(i, context); - os << "\n"; - write_partition_list(in, os, child_context); - os << "\n"; - } - } - { - for (size_t i = 0, n = in.num_vpr_constraints_global_route_constraints(context); i < n; i++) { - auto child_context = in.get_vpr_constraints_global_route_constraints(i, context); - os << "\n"; - write_global_route_constraints(in, os, child_context); - os << "\n"; - } - } +inline void write_vpr_constraints(T &in, std::ostream &os, Context &context){ + (void)in; + (void)os; + (void)context; + { + if(in.has_vpr_constraints_partition_list(context)){ + auto child_context = in.get_vpr_constraints_partition_list(context); + os << "\n"; + write_partition_list(in, os, child_context); + os << "\n"; + } + } + { + if(in.has_vpr_constraints_global_route_constraints(context)){ + auto child_context = in.get_vpr_constraints_global_route_constraints(context); + os << "\n"; + write_global_route_constraints(in, os, child_context); + os << "\n"; + } + } +} + +inline void dfa_error(const char *wrong, const int *states, const char * const *lookup, int len, const std::function * report_error){ + std::vector expected; + for(int i=0; i* report_error) { - std::vector expected; - for (int i = 0; i < len; i++) { - if (states[i] != -1) expected.push_back(lookup[i]); - } +template +inline void all_error(std::bitset gstate, const char * const *lookup, const std::function * report_error){ + std::vector missing; + for(unsigned int i=0; i -inline void attr_error(std::bitset astate, const char* const* lookup, const std::function* report_error) { - std::vector missing; - for (unsigned int i = 0; i < N; i++) { - if (astate[i] == 0) missing.push_back(lookup[i]); - } +inline void attr_error(std::bitset astate, const char * const *lookup, const std::function * report_error){ + std::vector missing; + for(unsigned int i=0; i f(fopen(filename, "rb"), fclose); - - if (!f) { - throw std::runtime_error(std::string("Failed to open file ") + filename); - } - - int current_line = 1; - std::ptrdiff_t offset = 0; - std::ptrdiff_t last_line_offset = 0; - std::ptrdiff_t current_line_offset = 0; - - char buffer[1024]; - std::size_t size; - - while ((size = fread(buffer, 1, sizeof(buffer), f.get())) > 0) { - for (std::size_t i = 0; i < size; ++i) { - if (buffer[i] == '\n') { - current_line += 1; - last_line_offset = current_line_offset; - current_line_offset = offset + i; - - if (target_offset < current_line_offset) { - if (target_offset < last_line_offset) { - throw std::runtime_error("Assertion violation"); - } - - *line = current_line - 1; - *col = target_offset - last_line_offset; - return; - } - } - } - - offset += size; - } - - *line = current_line; - *col = target_offset - current_line_offset; +inline void get_line_number(const char *filename, std::ptrdiff_t target_offset, int * line, int * col) { + std::unique_ptr f(fopen(filename, "rb"), fclose); + + if (!f) { + throw std::runtime_error(std::string("Failed to open file") + filename); + } + + int current_line = 1; + std::ptrdiff_t offset = 0; + std::ptrdiff_t last_line_offset = 0; + std::ptrdiff_t current_line_offset = 0; + + char buffer[1024]; + std::size_t size; + + while ((size = fread(buffer, 1, sizeof(buffer), f.get())) > 0) { + for (std::size_t i = 0; i < size; ++i) { + if (buffer[i] == '\n') { + current_line += 1; + last_line_offset = current_line_offset; + current_line_offset = offset + i; + + if(target_offset < current_line_offset) { + if(target_offset < last_line_offset) { + throw std::runtime_error("Assertion violation"); + } + + *line = current_line - 1; + *col = target_offset - last_line_offset; + return; + } + } + } + + offset += size; + } + + *line = current_line; + *col = target_offset - current_line_offset; } + } /* namespace uxsd */ diff --git a/vpr/src/base/gen/vpr_constraints_uxsdcxx_interface.h b/vpr/src/base/gen/vpr_constraints_uxsdcxx_interface.h index a3ec52085fe..64c20239e6e 100644 --- a/vpr/src/base/gen/vpr_constraints_uxsdcxx_interface.h +++ b/vpr/src/base/gen/vpr_constraints_uxsdcxx_interface.h @@ -4,13 +4,14 @@ * https://github.com/duck2/uxsdcxx * Modify only if your build process doesn't involve regenerating this file. * - * Cmdline: uxsdcxx.py /home/tao/works/dev/clock/vtr-verilog-to-routing/vpr/src/base/vpr_constraints.xsd - * Input file: /home/tao/works/dev/clock/vtr-verilog-to-routing/vpr/src/base/vpr_constraints.xsd - * md5sum of input file: 2d6f442d8044f76e8f1b1d276b7358da + * Cmdline: /home/kimia/uxsdcxx/uxsdcxx.py ../vpr_constraints.xsd + * Input file: /home/kimia/vtr-verilog-to-routing/vpr/src/base/vpr_constraints.xsd + * md5sum of input file: f2b3721db9b14ccdf0787c9c99e00a78 */ #include + /* All uxsdcxx functions and structs live in this namespace. */ #include @@ -18,143 +19,143 @@ namespace uxsd { +/* Enum tokens generated from XSD enumerations. */ + +enum class enum_route_model_type {UXSD_INVALID = 0, IDEAL, ROUTE, DEDICATED_NETWORK}; + /* Base class for the schema. */ struct DefaultVprConstraintsContextTypes { - using AddAtomReadContext = void*; - using AddRegionReadContext = void*; - using PartitionReadContext = void*; - using PartitionListReadContext = void*; - using SetGlobalSignalReadContext = void*; - using GlobalRouteConstraintsReadContext = void*; - using VprConstraintsReadContext = void*; - using AddAtomWriteContext = void*; - using AddRegionWriteContext = void*; - using PartitionWriteContext = void*; - using PartitionListWriteContext = void*; - using SetGlobalSignalWriteContext = void*; - using GlobalRouteConstraintsWriteContext = void*; - using VprConstraintsWriteContext = void*; +using AddAtomReadContext = void *; + using AddRegionReadContext = void *; + using PartitionReadContext = void *; + using PartitionListReadContext = void *; + using SetGlobalSignalReadContext = void *; + using GlobalRouteConstraintsReadContext = void *; + using VprConstraintsReadContext = void *; +using AddAtomWriteContext = void *; + using AddRegionWriteContext = void *; + using PartitionWriteContext = void *; + using PartitionListWriteContext = void *; + using SetGlobalSignalWriteContext = void *; + using GlobalRouteConstraintsWriteContext = void *; + using VprConstraintsWriteContext = void *; }; -template +template class VprConstraintsBase { - public: - virtual ~VprConstraintsBase() {} - virtual void start_load(const std::function* report_error) = 0; - virtual void finish_load() = 0; - virtual void start_write() = 0; - virtual void finish_write() = 0; - virtual void error_encountered(const char* file, int line, const char* message) = 0; - /** Generated for complex type "add_atom": - * - * - * - */ - virtual inline const char* get_add_atom_name_pattern(typename ContextTypes::AddAtomReadContext& ctx) = 0; - virtual inline void set_add_atom_name_pattern(const char* name_pattern, typename ContextTypes::AddAtomWriteContext& ctx) = 0; - - /** Generated for complex type "add_region": - * - * - * - * - * - * - * - */ - virtual inline int get_add_region_layer_num(typename ContextTypes::AddRegionReadContext& ctx) = 0; - virtual inline int get_add_region_subtile(typename ContextTypes::AddRegionReadContext& ctx) = 0; - virtual inline void set_add_region_subtile(int subtile, typename ContextTypes::AddRegionWriteContext& ctx) = 0; - virtual inline int get_add_region_x_high(typename ContextTypes::AddRegionReadContext& ctx) = 0; - virtual inline int get_add_region_x_low(typename ContextTypes::AddRegionReadContext& ctx) = 0; - virtual inline int get_add_region_y_high(typename ContextTypes::AddRegionReadContext& ctx) = 0; - virtual inline int get_add_region_y_low(typename ContextTypes::AddRegionReadContext& ctx) = 0; - - /** Generated for complex type "partition": - * - * - * - * - * - * - * - * - * - */ - virtual inline const char* get_partition_name(typename ContextTypes::PartitionReadContext& ctx) = 0; - virtual inline void set_partition_name(const char* name, typename ContextTypes::PartitionWriteContext& ctx) = 0; - virtual inline void preallocate_partition_add_atom(typename ContextTypes::PartitionWriteContext& ctx, size_t size) = 0; - virtual inline typename ContextTypes::AddAtomWriteContext add_partition_add_atom(typename ContextTypes::PartitionWriteContext& ctx) = 0; - virtual inline void finish_partition_add_atom(typename ContextTypes::AddAtomWriteContext& ctx) = 0; - virtual inline size_t num_partition_add_atom(typename ContextTypes::PartitionReadContext& ctx) = 0; - virtual inline typename ContextTypes::AddAtomReadContext get_partition_add_atom(int n, typename ContextTypes::PartitionReadContext& ctx) = 0; - virtual inline void preallocate_partition_add_region(typename ContextTypes::PartitionWriteContext& ctx, size_t size) = 0; - virtual inline typename ContextTypes::AddRegionWriteContext add_partition_add_region(typename ContextTypes::PartitionWriteContext& ctx, int x_high, int x_low, int y_high, int y_low) = 0; - virtual inline void finish_partition_add_region(typename ContextTypes::AddRegionWriteContext& ctx) = 0; - virtual inline size_t num_partition_add_region(typename ContextTypes::PartitionReadContext& ctx) = 0; - virtual inline typename ContextTypes::AddRegionReadContext get_partition_add_region(int n, typename ContextTypes::PartitionReadContext& ctx) = 0; - - /** Generated for complex type "partition_list": - * - * - * - * - * - */ - virtual inline void preallocate_partition_list_partition(typename ContextTypes::PartitionListWriteContext& ctx, size_t size) = 0; - virtual inline typename ContextTypes::PartitionWriteContext add_partition_list_partition(typename ContextTypes::PartitionListWriteContext& ctx) = 0; - virtual inline void finish_partition_list_partition(typename ContextTypes::PartitionWriteContext& ctx) = 0; - virtual inline size_t num_partition_list_partition(typename ContextTypes::PartitionListReadContext& ctx) = 0; - virtual inline typename ContextTypes::PartitionReadContext get_partition_list_partition(int n, typename ContextTypes::PartitionListReadContext& ctx) = 0; - - /** Generated for complex type "set_global_signal": - * - * - * - * - * - */ - virtual inline const char* get_set_global_signal_name(typename ContextTypes::SetGlobalSignalReadContext& ctx) = 0; - virtual inline void set_set_global_signal_name(const char* name, typename ContextTypes::SetGlobalSignalWriteContext& ctx) = 0; - virtual inline const char* get_set_global_signal_route_model(typename ContextTypes::SetGlobalSignalReadContext& ctx) = 0; - virtual inline void set_set_global_signal_route_model(const char* route_model, typename ContextTypes::SetGlobalSignalWriteContext& ctx) = 0; - virtual inline const char* get_set_global_signal_type(typename ContextTypes::SetGlobalSignalReadContext& ctx) = 0; - virtual inline void set_set_global_signal_type(const char* type, typename ContextTypes::SetGlobalSignalWriteContext& ctx) = 0; - - /** Generated for complex type "global_route_constraints": - * - * - * - * - * - */ - virtual inline void preallocate_global_route_constraints_set_global_signal(typename ContextTypes::GlobalRouteConstraintsWriteContext& ctx, size_t size) = 0; - virtual inline typename ContextTypes::SetGlobalSignalWriteContext add_global_route_constraints_set_global_signal(typename ContextTypes::GlobalRouteConstraintsWriteContext& ctx) = 0; - virtual inline void finish_global_route_constraints_set_global_signal(typename ContextTypes::SetGlobalSignalWriteContext& ctx) = 0; - virtual inline size_t num_global_route_constraints_set_global_signal(typename ContextTypes::GlobalRouteConstraintsReadContext& ctx) = 0; - virtual inline typename ContextTypes::SetGlobalSignalReadContext get_global_route_constraints_set_global_signal(int n, typename ContextTypes::GlobalRouteConstraintsReadContext& ctx) = 0; - - /** Generated for complex type "vpr_constraints": - * - * - * - * - * - * - * - */ - virtual inline const char* get_vpr_constraints_tool_name(typename ContextTypes::VprConstraintsReadContext& ctx) = 0; - virtual inline void set_vpr_constraints_tool_name(const char* tool_name, typename ContextTypes::VprConstraintsWriteContext& ctx) = 0; - virtual inline void preallocate_vpr_constraints_partition_list(typename ContextTypes::VprConstraintsWriteContext& ctx, size_t size) = 0; - virtual inline typename ContextTypes::PartitionListWriteContext add_vpr_constraints_partition_list(typename ContextTypes::VprConstraintsWriteContext& ctx) = 0; - virtual inline void finish_vpr_constraints_partition_list(typename ContextTypes::PartitionListWriteContext& ctx) = 0; - virtual inline size_t num_vpr_constraints_partition_list(typename ContextTypes::VprConstraintsReadContext& ctx) = 0; - virtual inline typename ContextTypes::PartitionListReadContext get_vpr_constraints_partition_list(int n, typename ContextTypes::VprConstraintsReadContext& ctx) = 0; - virtual inline void preallocate_vpr_constraints_global_route_constraints(typename ContextTypes::VprConstraintsWriteContext& ctx, size_t size) = 0; - virtual inline typename ContextTypes::GlobalRouteConstraintsWriteContext add_vpr_constraints_global_route_constraints(typename ContextTypes::VprConstraintsWriteContext& ctx) = 0; - virtual inline void finish_vpr_constraints_global_route_constraints(typename ContextTypes::GlobalRouteConstraintsWriteContext& ctx) = 0; - virtual inline size_t num_vpr_constraints_global_route_constraints(typename ContextTypes::VprConstraintsReadContext& ctx) = 0; - virtual inline typename ContextTypes::GlobalRouteConstraintsReadContext get_vpr_constraints_global_route_constraints(int n, typename ContextTypes::VprConstraintsReadContext& ctx) = 0; +public: + virtual ~VprConstraintsBase() {} + virtual void start_load(const std::function *report_error) = 0; + virtual void finish_load() = 0; + virtual void start_write() = 0; + virtual void finish_write() = 0; + virtual void error_encountered(const char * file, int line, const char *message) = 0; + /** Generated for complex type "add_atom": + * + * + * + */ + virtual inline const char * get_add_atom_name_pattern(typename ContextTypes::AddAtomReadContext &ctx) = 0; + virtual inline void set_add_atom_name_pattern(const char * name_pattern, typename ContextTypes::AddAtomWriteContext &ctx) = 0; + + /** Generated for complex type "add_region": + * + * + * + * + * + * + * + */ + virtual inline int get_add_region_subtile(typename ContextTypes::AddRegionReadContext &ctx) = 0; + virtual inline void set_add_region_subtile(int subtile, typename ContextTypes::AddRegionWriteContext &ctx) = 0; + virtual inline int get_add_region_x_high(typename ContextTypes::AddRegionReadContext &ctx) = 0; + virtual inline int get_add_region_x_low(typename ContextTypes::AddRegionReadContext &ctx) = 0; + virtual inline int get_add_region_y_high(typename ContextTypes::AddRegionReadContext &ctx) = 0; + virtual inline int get_add_region_y_low(typename ContextTypes::AddRegionReadContext &ctx) = 0; + + /** Generated for complex type "partition": + * + * + * + * + * + * + * + * + * + */ + virtual inline const char * get_partition_name(typename ContextTypes::PartitionReadContext &ctx) = 0; + virtual inline void set_partition_name(const char * name, typename ContextTypes::PartitionWriteContext &ctx) = 0; + virtual inline void preallocate_partition_add_atom(typename ContextTypes::PartitionWriteContext &ctx, size_t size) = 0; + virtual inline typename ContextTypes::AddAtomWriteContext add_partition_add_atom(typename ContextTypes::PartitionWriteContext &ctx) = 0; + virtual inline void finish_partition_add_atom(typename ContextTypes::AddAtomWriteContext &ctx) = 0; + virtual inline size_t num_partition_add_atom(typename ContextTypes::PartitionReadContext &ctx) = 0; + virtual inline typename ContextTypes::AddAtomReadContext get_partition_add_atom(int n, typename ContextTypes::PartitionReadContext &ctx) = 0; + virtual inline void preallocate_partition_add_region(typename ContextTypes::PartitionWriteContext &ctx, size_t size) = 0; + virtual inline typename ContextTypes::AddRegionWriteContext add_partition_add_region(typename ContextTypes::PartitionWriteContext &ctx, int x_high, int x_low, int y_high, int y_low) = 0; + virtual inline void finish_partition_add_region(typename ContextTypes::AddRegionWriteContext &ctx) = 0; + virtual inline size_t num_partition_add_region(typename ContextTypes::PartitionReadContext &ctx) = 0; + virtual inline typename ContextTypes::AddRegionReadContext get_partition_add_region(int n, typename ContextTypes::PartitionReadContext &ctx) = 0; + + /** Generated for complex type "partition_list": + * + * + * + * + * + */ + virtual inline void preallocate_partition_list_partition(typename ContextTypes::PartitionListWriteContext &ctx, size_t size) = 0; + virtual inline typename ContextTypes::PartitionWriteContext add_partition_list_partition(typename ContextTypes::PartitionListWriteContext &ctx) = 0; + virtual inline void finish_partition_list_partition(typename ContextTypes::PartitionWriteContext &ctx) = 0; + virtual inline size_t num_partition_list_partition(typename ContextTypes::PartitionListReadContext &ctx) = 0; + virtual inline typename ContextTypes::PartitionReadContext get_partition_list_partition(int n, typename ContextTypes::PartitionListReadContext &ctx) = 0; + + /** Generated for complex type "set_global_signal": + * + * + * + * + * + */ + virtual inline const char * get_set_global_signal_name(typename ContextTypes::SetGlobalSignalReadContext &ctx) = 0; + virtual inline void set_set_global_signal_name(const char * name, typename ContextTypes::SetGlobalSignalWriteContext &ctx) = 0; + virtual inline const char * get_set_global_signal_network_name(typename ContextTypes::SetGlobalSignalReadContext &ctx) = 0; + virtual inline void set_set_global_signal_network_name(const char * network_name, typename ContextTypes::SetGlobalSignalWriteContext &ctx) = 0; + virtual inline enum_route_model_type get_set_global_signal_route_model(typename ContextTypes::SetGlobalSignalReadContext &ctx) = 0; + + /** Generated for complex type "global_route_constraints": + * + * + * + * + * + */ + virtual inline void preallocate_global_route_constraints_set_global_signal(typename ContextTypes::GlobalRouteConstraintsWriteContext &ctx, size_t size) = 0; + virtual inline typename ContextTypes::SetGlobalSignalWriteContext add_global_route_constraints_set_global_signal(typename ContextTypes::GlobalRouteConstraintsWriteContext &ctx, enum_route_model_type route_model) = 0; + virtual inline void finish_global_route_constraints_set_global_signal(typename ContextTypes::SetGlobalSignalWriteContext &ctx) = 0; + virtual inline size_t num_global_route_constraints_set_global_signal(typename ContextTypes::GlobalRouteConstraintsReadContext &ctx) = 0; + virtual inline typename ContextTypes::SetGlobalSignalReadContext get_global_route_constraints_set_global_signal(int n, typename ContextTypes::GlobalRouteConstraintsReadContext &ctx) = 0; + + /** Generated for complex type "vpr_constraints": + * + * + * + * + * + * + * + */ + virtual inline const char * get_vpr_constraints_tool_name(typename ContextTypes::VprConstraintsReadContext &ctx) = 0; + virtual inline void set_vpr_constraints_tool_name(const char * tool_name, typename ContextTypes::VprConstraintsWriteContext &ctx) = 0; + virtual inline typename ContextTypes::PartitionListWriteContext init_vpr_constraints_partition_list(typename ContextTypes::VprConstraintsWriteContext &ctx) = 0; + virtual inline void finish_vpr_constraints_partition_list(typename ContextTypes::PartitionListWriteContext &ctx) = 0; + virtual inline typename ContextTypes::PartitionListReadContext get_vpr_constraints_partition_list(typename ContextTypes::VprConstraintsReadContext &ctx) = 0; + virtual inline bool has_vpr_constraints_partition_list(typename ContextTypes::VprConstraintsReadContext &ctx) = 0; + virtual inline typename ContextTypes::GlobalRouteConstraintsWriteContext init_vpr_constraints_global_route_constraints(typename ContextTypes::VprConstraintsWriteContext &ctx) = 0; + virtual inline void finish_vpr_constraints_global_route_constraints(typename ContextTypes::GlobalRouteConstraintsWriteContext &ctx) = 0; + virtual inline typename ContextTypes::GlobalRouteConstraintsReadContext get_vpr_constraints_global_route_constraints(typename ContextTypes::VprConstraintsReadContext &ctx) = 0; + virtual inline bool has_vpr_constraints_global_route_constraints(typename ContextTypes::VprConstraintsReadContext &ctx) = 0; }; } /* namespace uxsd */ diff --git a/vpr/src/base/load_flat_place.cpp b/vpr/src/base/load_flat_place.cpp new file mode 100644 index 00000000000..01b2978a310 --- /dev/null +++ b/vpr/src/base/load_flat_place.cpp @@ -0,0 +1,55 @@ +#include "globals.h" +#include "load_flat_place.h" +#include "clustered_netlist_utils.h" + + +/* @brief Prints flat placement file entries for the atoms in one placed cluster. */ +static void print_flat_cluster(FILE* fp, ClusterBlockId iblk, + std::vector& atoms); + +static void print_flat_cluster(FILE* fp, ClusterBlockId iblk, + std::vector& atoms) { + + auto& atom_ctx = g_vpr_ctx.atom(); + t_pl_loc loc = g_vpr_ctx.placement().block_locs[iblk].loc; + size_t bnum = size_t(iblk); + + for (auto atom : atoms) { + t_pb_graph_node* atom_pbgn = atom_ctx.lookup.atom_pb(atom)->pb_graph_node; + fprintf(fp, "%s %d %d %d %d #%zu %s\n", atom_ctx.nlist.block_name(atom).c_str(), + loc.x, loc.y, loc.sub_tile, + atom_pbgn->flat_site_index, + bnum, + atom_pbgn->pb_type->name); + } +} + +/* prints a flat placement file */ +void print_flat_placement(const char* flat_place_file) { + + FILE* fp; + + ClusterAtomsLookup atoms_lookup; + auto& cluster_ctx = g_vpr_ctx.clustering(); + + if (!g_vpr_ctx.placement().block_locs.empty()) { + fp = fopen(flat_place_file, "w"); + for (auto iblk : cluster_ctx.clb_nlist.blocks()) { + auto atoms = atoms_lookup.atoms_in_cluster(iblk); + print_flat_cluster(fp, iblk, atoms); + } + fclose(fp); + } + +} + +/* ingests and legalizes a flat placement file */ +bool load_flat_placement(t_vpr_setup& vpr_setup, const t_arch& arch) { + VTR_LOG("load_flat_placement(); when implemented, this function:"); + VTR_LOG("\n\tLoads flat placement file: %s, ", vpr_setup.FileNameOpts.FlatPlaceFile.c_str()); + VTR_LOG("\n\tArch id: %s, ", arch.architecture_id); + VTR_LOG("\n\tPrints clustered netlist file: %s, ", vpr_setup.FileNameOpts.NetFile.c_str()); + VTR_LOG("\n\tPrints fix clusters file: %s\n", vpr_setup.FileNameOpts.write_constraints_file.c_str()); + + return false; +} diff --git a/vpr/src/base/load_flat_place.h b/vpr/src/base/load_flat_place.h new file mode 100644 index 00000000000..17a52715b79 --- /dev/null +++ b/vpr/src/base/load_flat_place.h @@ -0,0 +1,16 @@ +#ifndef LOAD_FLAT_PLACE_H +#define LOAD_FLAT_PLACE_H + +#include "vpr_types.h" + +/** + * @brief A function that prints a flat placement file + */ +void print_flat_placement(const char* flat_place_file); + +/** + * @brief A function that loads and legalizes a flat placement file + */ +bool load_flat_placement(t_vpr_setup& vpr_setup, const t_arch& arch); + +#endif diff --git a/vpr/src/base/partition.cpp b/vpr/src/base/partition.cpp index 107a8ec2d3a..6e004b86d46 100644 --- a/vpr/src/base/partition.cpp +++ b/vpr/src/base/partition.cpp @@ -1,29 +1,33 @@ #include "partition.h" #include "partition_region.h" #include -#include +#include -const std::string Partition::get_name() { +const std::string& Partition::get_name() const{ return name; } void Partition::set_name(std::string _part_name) { - name = _part_name; + name = std::move(_part_name); } -const PartitionRegion Partition::get_part_region() { +const PartitionRegion& Partition::get_part_region() const { + return part_region; +} + +PartitionRegion& Partition::get_mutable_part_region() { return part_region; } void Partition::set_part_region(PartitionRegion pr) { - part_region = pr; + part_region = std::move(pr); } -void print_partition(FILE* fp, Partition part) { - std::string name = part.get_name(); +void print_partition(FILE* fp, const Partition& part) { + const std::string& name = part.get_name(); fprintf(fp, "partition_name: %s\n", name.c_str()); - PartitionRegion pr = part.get_part_region(); + const PartitionRegion& pr = part.get_part_region(); print_partition_region(fp, pr); } diff --git a/vpr/src/base/partition.h b/vpr/src/base/partition.h index 7ef144e22a7..9c8984b8c86 100644 --- a/vpr/src/base/partition.h +++ b/vpr/src/base/partition.h @@ -28,7 +28,7 @@ class Partition { /** * @brief Get the unique name of the partition */ - const std::string get_name(); + const std::string& get_name() const; /** * @brief Set the name of the partition @@ -46,7 +46,12 @@ class Partition { /** * @brief Get the PartitionRegion (union of rectangular regions) for this partition */ - const PartitionRegion get_part_region(); + const PartitionRegion& get_part_region() const; + + /** + * @brief Get the mutable PartitionRegion (union of rectangular regions) for this partition + */ + PartitionRegion& get_mutable_part_region(); private: std::string name; ///< name of the partition, name will be unique across partitions @@ -54,6 +59,6 @@ class Partition { }; ///@brief used to print data from a Partition -void print_partition(FILE* fp, Partition part); +void print_partition(FILE* fp, const Partition& part); #endif /* PARTITION_H */ diff --git a/vpr/src/base/partition_region.cpp b/vpr/src/base/partition_region.cpp index 4e08d58f79c..14961efc919 100644 --- a/vpr/src/base/partition_region.cpp +++ b/vpr/src/base/partition_region.cpp @@ -1,32 +1,34 @@ #include "partition_region.h" #include "region.h" +#include + void PartitionRegion::add_to_part_region(Region region) { - partition_region.push_back(region); + regions.push_back(region); } -std::vector PartitionRegion::get_partition_region() { - return partition_region; +const std::vector& PartitionRegion::get_regions() const { + return regions; } -std::vector PartitionRegion::get_partition_region() const { - return partition_region; +std::vector& PartitionRegion::get_mutable_regions() { + return regions; } void PartitionRegion::set_partition_region(std::vector pr) { - partition_region = pr; + regions = std::move(pr); } -bool PartitionRegion::empty() { - return partition_region.size() == 0; +bool PartitionRegion::empty() const { + return regions.empty(); } -bool PartitionRegion::is_loc_in_part_reg(t_pl_loc loc) { +bool PartitionRegion::is_loc_in_part_reg(const t_pl_loc& loc) const { bool is_in_pr = false; - for (unsigned int i = 0; i < partition_region.size(); i++) { - is_in_pr = partition_region[i].is_loc_in_reg(loc); - if (is_in_pr == true) { + for (const auto & region : regions) { + is_in_pr = region.is_loc_in_reg(loc); + if (is_in_pr) { break; } } @@ -41,12 +43,13 @@ PartitionRegion intersection(const PartitionRegion& cluster_pr, const PartitionR * Rectangles are not merged even if it would be possible */ PartitionRegion pr; - Region intersect_region; - for (unsigned int i = 0; i < cluster_pr.partition_region.size(); i++) { - for (unsigned int j = 0; j < new_pr.partition_region.size(); j++) { - intersect_region = intersection(cluster_pr.partition_region[i], new_pr.partition_region[j]); + auto& pr_regions = pr.get_mutable_regions(); + + for (const auto& cluster_region : cluster_pr.get_regions()) { + for (const auto& new_region : new_pr.get_regions()) { + Region intersect_region = intersection(cluster_region, new_region); if (!intersect_region.empty()) { - pr.partition_region.push_back(intersect_region); + pr_regions.push_back(intersect_region); } } } @@ -55,27 +58,29 @@ PartitionRegion intersection(const PartitionRegion& cluster_pr, const PartitionR } void update_cluster_part_reg(PartitionRegion& cluster_pr, const PartitionRegion& new_pr) { - Region intersect_region; std::vector int_regions; - for (unsigned int i = 0; i < cluster_pr.partition_region.size(); i++) { - for (unsigned int j = 0; j < new_pr.partition_region.size(); j++) { - intersect_region = intersection(cluster_pr.partition_region[i], new_pr.partition_region[j]); + + // now that we know PartitionRegions are compatible, look for overlapping regions + for (const auto& cluster_region : cluster_pr.get_regions()) { + for (const auto& new_region : new_pr.get_regions()) { + Region intersect_region = intersection(cluster_region, new_region); if (!intersect_region.empty()) { int_regions.push_back(intersect_region); } } } + cluster_pr.set_partition_region(int_regions); } -void print_partition_region(FILE* fp, PartitionRegion pr) { - std::vector part_region = pr.get_partition_region(); +void print_partition_region(FILE* fp, const PartitionRegion& pr) { + const std::vector& regions = pr.get_regions(); - int pr_size = part_region.size(); + int pr_size = regions.size(); fprintf(fp, "\tNumber of regions in partition is: %d\n", pr_size); - for (unsigned int i = 0; i < part_region.size(); i++) { - print_region(fp, part_region[i]); + for (const auto & region : regions) { + print_region(fp, region); } } diff --git a/vpr/src/base/partition_region.h b/vpr/src/base/partition_region.h index eb89399191c..db73d2d7f09 100644 --- a/vpr/src/base/partition_region.h +++ b/vpr/src/base/partition_region.h @@ -25,8 +25,12 @@ class PartitionRegion { /** * @brief Return the union of regions */ - std::vector get_partition_region(); - std::vector get_partition_region() const; + std::vector& get_mutable_regions(); + + /** + * @brief Return the union of regions + */ + const std::vector& get_regions() const; /** * @brief Set the union of regions @@ -36,7 +40,7 @@ class PartitionRegion { /** * @brief Check if the PartitionRegion is empty (meaning there is no constraint on the object the PartitionRegion belongs to) */ - bool empty(); + bool empty() const; /** * @brief Check if the given location is within the legal bounds of the PartitionRegion. @@ -44,30 +48,30 @@ class PartitionRegion { * * @param loc The location to be checked */ - bool is_loc_in_part_reg(t_pl_loc loc); - - /** - * @brief Global friend function that returns the intersection of two PartitionRegions - * - * @param cluster_pr One of the PartitionRegions to be intersected - * @param new_pr One of the PartitionRegions to be intersected - */ - friend PartitionRegion intersection(const PartitionRegion& cluster_pr, const PartitionRegion& new_pr); - - /** - * @brief Global friend function that updates the PartitionRegion of a cluster with the intersection - * of the cluster PartitionRegion and a new PartitionRegion - * - * @param cluster_pr The cluster PartitionRegion that is to be updated - * @param new_pr The new PartitionRegion that the cluster PartitionRegion will be intersected with - */ - friend void update_cluster_part_reg(PartitionRegion& cluster_pr, const PartitionRegion& new_pr); + bool is_loc_in_part_reg(const t_pl_loc& loc) const; private: - std::vector partition_region; ///< union of rectangular regions that a partition can be placed in + std::vector regions; ///< union of rectangular regions that a partition can be placed in }; ///@brief used to print data from a PartitionRegion -void print_partition_region(FILE* fp, PartitionRegion pr); +void print_partition_region(FILE* fp, const PartitionRegion& pr); + +/** +* @brief Global function that returns the intersection of two PartitionRegions +* +* @param cluster_pr One of the PartitionRegions to be intersected +* @param new_pr One of the PartitionRegions to be intersected +*/ +PartitionRegion intersection(const PartitionRegion& cluster_pr, const PartitionRegion& new_pr); + +/** +* @brief Global function that updates the PartitionRegion of a cluster with the intersection +* of the cluster PartitionRegion and a new PartitionRegion +* +* @param cluster_pr The cluster PartitionRegion that is to be updated +* @param new_pr The new PartitionRegion that the cluster PartitionRegion will be intersected with +*/ +void update_cluster_part_reg(PartitionRegion& cluster_pr, const PartitionRegion& new_pr); #endif /* PARTITION_REGIONS_H */ diff --git a/vpr/src/base/place_and_route.cpp b/vpr/src/base/place_and_route.cpp index ba4fece86f4..143c5702dc7 100644 --- a/vpr/src/base/place_and_route.cpp +++ b/vpr/src/base/place_and_route.cpp @@ -65,8 +65,8 @@ int binary_search_place_and_route(const Netlist<>& placement_net_list, t_det_routing_arch* det_routing_arch, std::vector& segment_inf, NetPinsMatrix& net_delay, - std::shared_ptr timing_info, - std::shared_ptr delay_calc, + const std::shared_ptr& timing_info, + const std::shared_ptr& delay_calc, bool is_flat) { vtr::vector> best_routing; /* Saves the best routing found so far. */ int current, low, high, final; @@ -105,7 +105,7 @@ int binary_search_place_and_route(const Netlist<>& placement_net_list, graph_directionality = (det_routing_arch->directionality == BI_DIRECTIONAL ? GRAPH_BIDIR : GRAPH_UNIDIR); } - VTR_ASSERT(net_delay.size()); + VTR_ASSERT(!net_delay.empty()); if (det_routing_arch->directionality == BI_DIRECTIONAL) udsd_multiplier = 1; @@ -302,7 +302,7 @@ int binary_search_place_and_route(const Netlist<>& placement_net_list, current = current + current % udsd_multiplier; } - /* The binary search above occassionally does not find the minimum * + /* The binary search above occasionally does not find the minimum * * routeable channel width. Sometimes a circuit that will not route * * in 19 channels will route in 18, due to router flukiness. If * * verify_binary_search is set, the code below will ensure that FPGAs * diff --git a/vpr/src/base/place_and_route.h b/vpr/src/base/place_and_route.h index 7a59fa02795..b4735ed8af4 100644 --- a/vpr/src/base/place_and_route.h +++ b/vpr/src/base/place_and_route.h @@ -36,8 +36,8 @@ int binary_search_place_and_route(const Netlist<>& placement_net_list, t_det_routing_arch* det_routing_arch, std::vector& segment_inf, NetPinsMatrix& net_delay, - std::shared_ptr timing_info, - std::shared_ptr delay_calc, + const std::shared_ptr& timing_info, + const std::shared_ptr& delay_calc, bool is_flat); t_chan_width init_chan(int cfactor, diff --git a/vpr/src/base/read_interchange_netlist.cpp b/vpr/src/base/read_interchange_netlist.cpp index d584a1c6893..c29cea8326d 100644 --- a/vpr/src/base/read_interchange_netlist.cpp +++ b/vpr/src/base/read_interchange_netlist.cpp @@ -13,33 +13,33 @@ #ifdef VTR_ENABLE_CAPNPROTO -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "LogicalNetlist.capnp.h" -#include "capnp/serialize.h" -#include "capnp/serialize-packed.h" - -#include "vtr_assert.h" -#include "vtr_hash.h" -#include "vtr_util.h" -#include "vtr_log.h" -#include "vtr_logic.h" -#include "vtr_time.h" -#include "vtr_digest.h" - -#include "vpr_types.h" -#include "vpr_error.h" -#include "globals.h" -#include "arch_types.h" +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include + +# include "LogicalNetlist.capnp.h" +# include "capnp/serialize.h" +# include "capnp/serialize-packed.h" + +# include "vtr_assert.h" +# include "vtr_hash.h" +# include "vtr_util.h" +# include "vtr_log.h" +# include "vtr_logic.h" +# include "vtr_time.h" +# include "vtr_digest.h" + +# include "vpr_types.h" +# include "vpr_error.h" +# include "globals.h" +# include "arch_types.h" struct NetlistReader { public: @@ -524,7 +524,7 @@ struct NetlistReader { } }; -#endif // VTR_ENABLE_CAPNPROTO +#endif // VTR_ENABLE_CAPNPROTO AtomNetlist read_interchange_netlist(const char* ic_netlist_file, t_arch& arch) { @@ -572,12 +572,12 @@ AtomNetlist read_interchange_netlist(const char* ic_netlist_file, return netlist; -#else // VTR_ENABLE_CAPNPROTO +#else // VTR_ENABLE_CAPNPROTO // If CAPNPROTO is not enabled, throw an error (void)ic_netlist_file; (void)arch; throw vtr::VtrError("Unable to read interchange netlist with CAPNPROTO disabled", __FILE__, __LINE__); -#endif // VTR_ENABLE_CAPNPROTO +#endif // VTR_ENABLE_CAPNPROTO } diff --git a/vpr/src/base/read_options.cpp b/vpr/src/base/read_options.cpp index 4edaa0b4a3b..2e5bf4110e2 100644 --- a/vpr/src/base/read_options.cpp +++ b/vpr/src/base/read_options.cpp @@ -1310,6 +1310,11 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio .action(argparse::Action::STORE_TRUE) .default_value("off"); + stage_grp.add_argument(args.do_legalize, "--legalize") + .help("Legalize a flat placement, i.e. reconstruct and place clusters based on a flat placement file, which lists cluster and intra-cluster placement coordinates for each primitive.") + .action(argparse::Action::STORE_TRUE) + .default_value("off"); + stage_grp.add_argument(args.do_placement, "--place") .help("Run placement") .action(argparse::Action::STORE_TRUE) @@ -1516,7 +1521,7 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio gen_grp.add_argument(args.strict_checks, "--strict_checks") .help( "Controls whether VPR enforces some consistency checks strictly (as errors) or treats them as warnings." - " Usually these checks indicate an issue with either the targetted architecture, or consistency issues" + " Usually these checks indicate an issue with either the targeted architecture, or consistency issues" " with VPR's internal data structures/algorithms (possibly harming optimization quality)." " In specific circumstances on specific architectures these checks may be too restrictive and can be turned off." " However exercise extreme caution when turning this option off -- be sure you completely understand why the issue" @@ -1590,6 +1595,10 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio .help("Path to packed netlist file") .show_in(argparse::ShowIn::HELP_ONLY); + file_grp.add_argument(args.FlatPlaceFile, "--flat_place_file") + .help("Path to input flat placement file") + .show_in(argparse::ShowIn::HELP_ONLY); + file_grp.add_argument(args.PlaceFile, "--place_file") .help("Path to placement file") .show_in(argparse::ShowIn::HELP_ONLY); @@ -1627,6 +1636,17 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio .help("Writes out new floorplanning constraints based on current placement to the specified XML file.") .show_in(argparse::ShowIn::HELP_ONLY); + file_grp.add_argument(args.write_constraints_file, "--write_fix_clusters") + .help( + "Output file containing fixed locations of legalized input clusters - does not include clusters without placement coordinates; this file is used during post-legalization placement in order to hold input placement coordinates fixed while VPR places legalizer-generated orphan clusters.") + .default_value("fix_clusters.out") + .show_in(argparse::ShowIn::HELP_ONLY); + + file_grp.add_argument(args.write_flat_place_file, "--write_flat_place") + .help( + "VPR's (or reconstructed external) placement solution in flat placement file format; this file lists cluster and intra-cluster placement coordinates for each atom and can be used to reconstruct a clustering and placement solution.") + .show_in(argparse::ShowIn::HELP_ONLY); + file_grp.add_argument(args.read_router_lookahead, "--read_router_lookahead") .help( "Reads the lookahead data from the specified file instead of computing it.") @@ -2333,6 +2353,11 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio .default_value("1.3") .show_in(argparse::ShowIn::HELP_ONLY); + route_grp.add_argument(args.max_pres_fac, "-max_pres_fac") + .help("Sets the maximum present overuse penalty factor") + .default_value("1000.0") + .show_in(argparse::ShowIn::HELP_ONLY); + route_grp.add_argument(args.acc_fac, "--acc_fac") .help("Specifies the accumulated overuse factor (historical congestion cost factor)") .default_value("1.0") @@ -2572,7 +2597,7 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio " * classic: The classic VPR lookahead (may perform better on un-buffered routing\n" " architectures)\n" " * map: An advanced lookahead which accounts for diverse wire type\n" - " * compressed_map: The algorithm is similar to map lookahead with the exception of saprse sampling of the chip" + " * compressed_map: The algorithm is similar to map lookahead with the exception of sparse sampling of the chip" " to reduce the run-time to build the router lookahead and also its memory footprint\n" " * extended_map: A more advanced and extended lookahead which accounts for a more\n" " exhaustive node sampling method\n" @@ -2790,8 +2815,8 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio noc_grp.add_argument(args.noc, "--noc") .help( - "Enables a NoC-driven placer that optimizes the placement of routers on the NoC." - "Also enables an option in the graphical display that can be used to display the NoC on the FPGA." + "Enables a NoC-driven placer that optimizes the placement of routers on the NoC. " + "Also enables an option in the graphical display that can be used to display the NoC on the FPGA. " "This should be on only when the FPGA device contains a NoC and the provided netlist connects to the NoC.") .default_value("off") .show_in(argparse::ShowIn::HELP_ONLY); @@ -2807,7 +2832,7 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio .help( "Controls the algorithm used by the NoC to route packets.\n" "* xy_routing: Uses the direction oriented routing algorithm. This is recommended to be used with mesh NoC topologies.\n" - "* bfs_routing: Uses the breadth first search algorithm. The objective is to find a route that uses a minimum number of links." + "* bfs_routing: Uses the breadth first search algorithm. The objective is to find a route that uses a minimum number of links. " " This algorithm is not guaranteed to generate deadlock-free traffic flow routes, but can be used with any NoC topology\n" "* west_first_routing: Uses the west-first routing algorithm. This is recommended to be used with mesh NoC topologies.\n" "* north_last_routing: Uses the north-last routing algorithm. This is recommended to be used with mesh NoC topologies.\n" @@ -2820,9 +2845,9 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio noc_grp.add_argument(args.noc_placement_weighting, "--noc_placement_weighting") .help( - "Controls the importance of the NoC placement parameters relative to timing and wirelength of the design." - "This value can be >=0, where 0 would mean the placement is based solely on timing and wirelength." - "A value of 1 would mean noc placement is considered equal to timing and wirelength" + "Controls the importance of the NoC placement parameters relative to timing and wirelength of the design. " + "This value can be >=0, where 0 would mean the placement is based solely on timing and wirelength. " + "A value of 1 would mean noc placement is considered equal to timing and wirelength " "A value greater than 1 would mean the placement is increasingly dominated by NoC parameters.") .default_value("5.0") .show_in(argparse::ShowIn::HELP_ONLY); @@ -2832,7 +2857,7 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio "Controls the importance of minimizing the NoC aggregate bandwidth.\n" "This value can be >=0, where 0 would mean the aggregate bandwidth has no relevance to placement.\n" "Other positive numbers specify the importance of minimizing the NoC aggregate bandwidth to other NoC-related cost terms.\n" - "Weighting factors for NoC-related cost terms are normalized internally. Therefore, their absolute values are not important, and" + "Weighting factors for NoC-related cost terms are normalized internally. Therefore, their absolute values are not important, and " "only their relative ratios determine the importance of each cost term.") .default_value("0.38") .show_in(argparse::ShowIn::HELP_ONLY); @@ -2842,7 +2867,7 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio "Controls the importance of meeting all the NoC traffic flow latency constraints.\n" "This value can be >=0, where 0 would mean the latency constraints have no relevance to placement.\n" "Other positive numbers specify the importance of meeting latency constraints to other NoC-related cost terms.\n" - "Weighting factors for NoC-related cost terms are normalized internally. Therefore, their absolute values are not important, and" + "Weighting factors for NoC-related cost terms are normalized internally. Therefore, their absolute values are not important, and " "only their relative ratios determine the importance of each cost term.") .default_value("0.6") .show_in(argparse::ShowIn::HELP_ONLY); @@ -2852,7 +2877,7 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio "Controls the importance of reducing the latencies of the NoC traffic flows.\n" "This value can be >=0, where 0 would mean the latencies have no relevance to placement.\n" "Other positive numbers specify the importance of minimizing aggregate latency to other NoC-related cost terms.\n" - "Weighting factors for NoC-related cost terms are normalized internally. Therefore, their absolute values are not important, and" + "Weighting factors for NoC-related cost terms are normalized internally. Therefore, their absolute values are not important, and " "only their relative ratios determine the importance of each cost term.") .default_value("0.02") .show_in(argparse::ShowIn::HELP_ONLY); @@ -2862,17 +2887,57 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio "Controls the importance of reducing the congestion of the NoC links.\n" "This value can be >=0, where 0 would mean the congestion has no relevance to placement.\n" "Other positive numbers specify the importance of minimizing congestion to other NoC-related cost terms.\n" - "Weighting factors for NoC-related cost terms are normalized internally. Therefore, their absolute values are not important, and" + "Weighting factors for NoC-related cost terms are normalized internally. Therefore, their absolute values are not important, and " "only their relative ratios determine the importance of each cost term.") .default_value("0.25") .show_in(argparse::ShowIn::HELP_ONLY); - noc_grp.add_argument(args.noc_swap_percentage, "--noc_swap_percentage") + noc_grp.add_argument(args.noc_centroid_weight, "--noc_centroid_weight") .help( "Sets the minimum fraction of swaps attempted by the placer that are NoC blocks." "This value is an integer ranging from 0-100. 0 means NoC blocks will be moved at the same rate as other blocks. 100 means all swaps attempted by the placer are NoC router blocks.") .default_value("0") .show_in(argparse::ShowIn::HELP_ONLY); + + noc_grp.add_argument(args.noc_swap_percentage, "--noc_swap_percentage") + .help( + "Sets the minimum fraction of swaps attempted by the placer that are NoC blocks. " + "This value is an integer ranging from 0-100. 0 means NoC blocks will be moved at the same rate as other blocks. 100 means all swaps attempted by the placer are NoC router blocks.") + .default_value("0") + .show_in(argparse::ShowIn::HELP_ONLY); + + noc_grp.add_argument(args.noc_sat_routing_bandwidth_resolution, "--noc_sat_routing_bandwidth_resolution") + .help( + "Specifies the resolution by which traffic flow bandwidths are converted into integers in SAT routing algorithm.\n" + "The higher this number is, the more accurate the congestion estimation and aggregate bandwidth minimization is.\n" + "Higher resolution for bandwidth conversion increases the number of variables in the SAT formulation.") + .default_value("128") + .show_in(argparse::ShowIn::HELP_ONLY); + + noc_grp.add_argument(args.noc_sat_routing_latency_overrun_weighting_factor, "--noc_sat_routing_latency_overrun_weighting_factor") + .help( + "Controls the importance of reducing traffic flow latency overrun in SAT routing.") + .default_value("1024") + .show_in(argparse::ShowIn::HELP_ONLY); + + noc_grp.add_argument(args.noc_sat_routing_congestion_weighting_factor, "--noc_sat_routing_congestion_weighting_factor") + .help( + "Controls the importance of reducing the number of congested NoC links in SAT routing.") + .default_value("16384") + .show_in(argparse::ShowIn::HELP_ONLY); + + noc_grp.add_argument(args.noc_sat_routing_num_workers, "--noc_sat_routing_num_workers") + .help( + "The maximum number of parallel threads that the SAT solver can use to explore the solution space.\n" + "If not explicitly specified by the user, VPR will set the number parallel SAT solver workers to the value " + "specified by -j command line option.") + .show_in(argparse::ShowIn::HELP_ONLY); + + noc_grp.add_argument(args.noc_sat_routing_log_search_progress, "--noc_sat_routing_log_search_progress") + .help( + "Print the detailed log of the SAT solver's search progress.") + .default_value("off") + .show_in(argparse::ShowIn::HELP_ONLY); noc_grp.add_argument(args.noc_placement_file_name, "--noc_placement_file_name") .help( @@ -2881,6 +2946,21 @@ argparse::ArgumentParser create_arg_parser(const std::string& prog_name, t_optio .default_value("vpr_noc_placement_output.txt") .show_in(argparse::ShowIn::HELP_ONLY); +#ifndef NO_SERVER + auto& server_grp = parser.add_argument_group("server options"); + + server_grp.add_argument(args.is_server_mode_enabled, "--server") + .help("Run in server mode." + "Accept client application connection and respond to requests." ) + .action(argparse::Action::STORE_TRUE) + .default_value("off"); + + server_grp.add_argument(args.server_port_num, "--port") + .help("Server port number.") + .default_value("60555") + .show_in(argparse::ShowIn::HELP_ONLY); +#endif /* NO_SERVER */ + return parser; } @@ -2937,6 +3017,12 @@ void set_conditional_defaults(t_options& args) { args.RouteFile.set(route_file, Provenance::INFERRED); } + if (args.FlatPlaceFile.provenance() != Provenance::SPECIFIED) { + std::string flat_place_file = args.out_file_prefix; + flat_place_file += default_output_name + ".flat_place"; + args.FlatPlaceFile.set(flat_place_file, Provenance::INFERRED); + } + if (args.ActFile.provenance() != Provenance::SPECIFIED) { std::string activity_file = args.out_file_prefix; activity_file += default_output_name + ".act"; diff --git a/vpr/src/base/read_options.h b/vpr/src/base/read_options.h index 6f2a5739a4c..f137f2d29e1 100644 --- a/vpr/src/base/read_options.h +++ b/vpr/src/base/read_options.h @@ -12,6 +12,7 @@ struct t_options { argparse::ArgValue ArchFile; argparse::ArgValue CircuitName; argparse::ArgValue NetFile; + argparse::ArgValue FlatPlaceFile; argparse::ArgValue PlaceFile; argparse::ArgValue RouteFile; argparse::ArgValue CircuitFile; @@ -30,6 +31,8 @@ struct t_options { argparse::ArgValue write_initial_place_file; argparse::ArgValue read_vpr_constraints_file; argparse::ArgValue write_vpr_constraints_file; + argparse::ArgValue write_constraints_file; + argparse::ArgValue write_flat_place_file; argparse::ArgValue write_placement_delay_lookup; argparse::ArgValue read_placement_delay_lookup; @@ -44,6 +47,7 @@ struct t_options { /* Stage Options */ argparse::ArgValue do_packing; + argparse::ArgValue do_legalize; argparse::ArgValue do_placement; argparse::ArgValue do_routing; argparse::ArgValue do_analysis; @@ -75,6 +79,10 @@ struct t_options { argparse::ArgValue allow_dangling_combinational_nodes; argparse::ArgValue terminate_if_timing_fails; + /* Server options */ + argparse::ArgValue is_server_mode_enabled; + argparse::ArgValue server_port_num; + /* Atom netlist options */ argparse::ArgValue absorb_buffer_luts; argparse::ArgValue const_gen_inference; @@ -156,7 +164,13 @@ struct t_options { argparse::ArgValue noc_latency_constraints_weighting; argparse::ArgValue noc_latency_weighting; argparse::ArgValue noc_congestion_weighting; + argparse::ArgValue noc_centroid_weight; argparse::ArgValue noc_swap_percentage; + argparse::ArgValue noc_sat_routing_bandwidth_resolution; + argparse::ArgValue noc_sat_routing_latency_overrun_weighting_factor; + argparse::ArgValue noc_sat_routing_congestion_weighting_factor; + argparse::ArgValue noc_sat_routing_num_workers; + argparse::ArgValue noc_sat_routing_log_search_progress; argparse::ArgValue noc_placement_file_name; /* Timing-driven placement options only */ @@ -182,6 +196,7 @@ struct t_options { argparse::ArgValue first_iter_pres_fac; argparse::ArgValue initial_pres_fac; argparse::ArgValue pres_fac_mult; + argparse::ArgValue max_pres_fac; argparse::ArgValue acc_fac; argparse::ArgValue bb_factor; argparse::ArgValue base_cost_type; diff --git a/vpr/src/base/read_place.cpp b/vpr/src/base/read_place.cpp index 17c40e4781e..130ec5469e7 100644 --- a/vpr/src/base/read_place.cpp +++ b/vpr/src/base/read_place.cpp @@ -309,7 +309,8 @@ void read_place_body(std::ifstream& placement_file, */ void print_place(const char* net_file, const char* net_id, - const char* place_file) { + const char* place_file, + bool is_place_file) { FILE* fp; auto& device_ctx = g_vpr_ctx.device(); @@ -318,17 +319,23 @@ void print_place(const char* net_file, fp = fopen(place_file, "w"); - fprintf(fp, "Netlist_File: %s Netlist_ID: %s\n", - net_file, - net_id); - fprintf(fp, "Array size: %zu x %zu logic blocks\n\n", device_ctx.grid.width(), device_ctx.grid.height()); - fprintf(fp, "#block name\tx\ty\tsubblk\tlayer\tblock number\n"); - fprintf(fp, "#----------\t--\t--\t------\t-----\t------------\n"); + if (is_place_file) { + fprintf(fp, "Netlist_File: %s Netlist_ID: %s\n", + net_file, + net_id); + fprintf(fp, "Array size: %zu x %zu logic blocks\n\n", device_ctx.grid.width(), device_ctx.grid.height()); + fprintf(fp, "#block name\tx\ty\tsubblk\tlayer\tblock number\n"); + fprintf(fp, "#----------\t--\t--\t------\t-----\t------------\n"); + } if (!place_ctx.block_locs.empty()) { //Only if placement exists for (auto blk_id : cluster_ctx.clb_nlist.blocks()) { - fprintf(fp, "%s\t", cluster_ctx.clb_nlist.block_name(blk_id).c_str()); - if (strlen(cluster_ctx.clb_nlist.block_name(blk_id).c_str()) < 8) + // if block is not placed, skip (useful for printing legalizer output) + if (!is_place_file && (place_ctx.block_locs[blk_id].loc.x == INVALID_X)) { + continue; + } + fprintf(fp, "%s\t", cluster_ctx.clb_nlist.block_pb(blk_id)->name); + if (strlen(cluster_ctx.clb_nlist.block_pb(blk_id)->name) < 8) fprintf(fp, "\t"); fprintf(fp, "%d\t%d\t%d\t%d", diff --git a/vpr/src/base/read_place.h b/vpr/src/base/read_place.h index 36740a5dc5d..4dfd9aef82e 100644 --- a/vpr/src/base/read_place.h +++ b/vpr/src/base/read_place.h @@ -17,8 +17,19 @@ void read_place( */ void read_constraints(const char* constraints_file); +/** + * This function prints out a place file. + * @param is_place_file: defaults to true. If false, does not print file header; this is useful if + * the output will be used as a constraints file. If is_place_file is false, + * net_file and net_id parameters are not used and can be set to nullptr. + * Note: if false, only placed clusters are printed - clusters without + * placement coordinates (e.g. orphan clusters created during legalization + * will not be included; this file is used as a placement constraints + * file when running placement in order to place orphan clusters. + */ void print_place(const char* net_file, const char* net_id, - const char* place_file); + const char* place_file, + bool is_place_file = true); #endif diff --git a/vpr/src/base/region.cpp b/vpr/src/base/region.cpp index 5c38f9ace86..e45266c723c 100644 --- a/vpr/src/base/region.cpp +++ b/vpr/src/base/region.cpp @@ -42,7 +42,7 @@ bool Region::empty() { || layer_num < 0); } -bool Region::is_loc_in_reg(t_pl_loc loc) { +bool Region::is_loc_in_reg(t_pl_loc loc) const { bool is_loc_in_reg = false; int loc_layer_num = loc.layer; @@ -149,7 +149,7 @@ Region intersection(const Region& r1, const Region& r2) { return intersect; } -void print_region(FILE* fp, Region region) { +void print_region(FILE* fp, const Region& region) { const auto region_coord = region.get_region_rect(); const auto region_rect = vtr::Rect(region_coord.xmin, region_coord.ymin, region_coord.xmax, region_coord.ymax); fprintf(fp, "\tRegion: \n"); diff --git a/vpr/src/base/region.h b/vpr/src/base/region.h index 7b1ceec6dda..dfdfd26d20c 100644 --- a/vpr/src/base/region.h +++ b/vpr/src/base/region.h @@ -43,8 +43,7 @@ struct RegionRectCoord { bool operator==(const RegionRectCoord& rhs) const { vtr::Rect lhs_rect(xmin, ymin, xmax, ymax); vtr::Rect rhs_rect(rhs.xmin, rhs.ymin, rhs.xmax, rhs.ymax); - return lhs_rect == rhs_rect - && layer_num == rhs.layer_num; + return (lhs_rect == rhs_rect) && (layer_num == rhs.layer_num); } }; @@ -105,7 +104,7 @@ class Region { * * @param loc The location to be checked */ - bool is_loc_in_reg(t_pl_loc loc); + bool is_loc_in_reg(t_pl_loc loc) const; bool operator==(const Region& reg) const { return (reg.get_region_rect() == this->get_region_rect() @@ -142,7 +141,7 @@ bool do_regions_intersect(Region r1, Region r2); Region intersection(const Region& r1, const Region& r2); ///@brief Used to print data from a Region -void print_region(FILE* fp, Region region); +void print_region(FILE* fp, const Region& region); namespace std { template<> diff --git a/vpr/src/base/route_constraint.cpp b/vpr/src/base/route_constraint.cpp_back similarity index 100% rename from vpr/src/base/route_constraint.cpp rename to vpr/src/base/route_constraint.cpp_back diff --git a/vpr/src/base/route_constraint.h b/vpr/src/base/route_constraint.h_back similarity index 100% rename from vpr/src/base/route_constraint.h rename to vpr/src/base/route_constraint.h_back diff --git a/vpr/src/base/setup_noc.cpp b/vpr/src/base/setup_noc.cpp index ad59fb21f10..b2eabc33842 100644 --- a/vpr/src/base/setup_noc.cpp +++ b/vpr/src/base/setup_noc.cpp @@ -1,18 +1,19 @@ -#include #include #include "setup_noc.h" -#include "vtr_assert.h" +#include "globals.h" #include "vpr_error.h" #include "vtr_math.h" #include "echo_files.h" -void setup_noc(const t_arch& arch) { - // variable to store all the noc router tiles within the FPGA device - // physical routers - std::vector noc_router_tiles; +// a default condition that helps keep track of whether a physical router has been assigned to a logical router or not +static constexpr int PHYSICAL_ROUTER_NOT_ASSIGNED = -1; +// a default index used for initialization purposes. No router will have a negative index +static constexpr int INVALID_PHYSICAL_ROUTER_INDEX = -1; + +void setup_noc(const t_arch& arch) { // get references to global variables auto& device_ctx = g_vpr_ctx.device(); auto& noc_ctx = g_vpr_ctx.mutable_noc(); @@ -25,17 +26,22 @@ void setup_noc(const t_arch& arch) { // go through the FPGA grid and find the noc router tiles // then store the position - identify_and_store_noc_router_tile_positions(device_ctx.grid, noc_router_tiles, arch.noc->noc_router_tile_name); + auto noc_router_tiles = identify_and_store_noc_router_tile_positions(device_ctx.grid, arch.noc->noc_router_tile_name); // check whether the noc topology information provided uses more than the number of available routers in the FPGA if (noc_router_tiles.size() < arch.noc->router_list.size()) { - VPR_FATAL_ERROR(VPR_ERROR_OTHER, "The Provided NoC topology information in the architecture file has more number of routers than what is available in the FPGA device."); - } else if (noc_router_tiles.size() > arch.noc->router_list.size()) // check whether the noc topology information provided is using all the routers in the FPGA - { - VPR_FATAL_ERROR(VPR_ERROR_OTHER, "The Provided NoC topology information in the architecture file uses less number of routers than what is available in the FPGA device."); - } else if (noc_router_tiles.size() == 0) // case where no physical router tiles were found - { - VPR_FATAL_ERROR(VPR_ERROR_OTHER, "No physical NoC routers were found on the FPGA device. Either the provided name for the physical router tile was incorrect or the FPGA device has no routers."); + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "The Provided NoC topology information in the architecture file " + "has more number of routers than what is available in the FPGA device."); + } else if (noc_router_tiles.size() > arch.noc->router_list.size()) { + // check whether the noc topology information provided is using all the routers in the FPGA + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "The Provided NoC topology information in the architecture file " + "uses less number of routers than what is available in the FPGA device."); + } else if (noc_router_tiles.empty()) { // case where no physical router tiles were found + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "No physical NoC routers were found on the FPGA device. " + "Either the provided name for the physical router tile was incorrect or the FPGA device has no routers."); } // store the reference to device grid with @@ -45,8 +51,10 @@ void setup_noc(const t_arch& arch) { // generate noc model generate_noc(arch, noc_ctx, noc_router_tiles); - // store the general noc properties - noc_ctx.noc_model.set_noc_link_bandwidth(arch.noc->link_bandwidth); + /* store the general noc properties + * noc_ctx.noc_model.set_noc_link_bandwidth(...) is not called because all + * link bandwidths were set when create_noc_links(...) was called. + */ noc_ctx.noc_model.set_noc_link_latency(arch.noc->link_latency); noc_ctx.noc_model.set_noc_router_latency(arch.noc->router_latency); @@ -54,25 +62,18 @@ void setup_noc(const t_arch& arch) { if (getEchoEnabled() && isEchoFileEnabled(E_ECHO_NOC_MODEL)) { noc_ctx.noc_model.echo_noc(getEchoFileName(E_ECHO_NOC_MODEL)); } - - return; } -void identify_and_store_noc_router_tile_positions(const DeviceGrid& device_grid, std::vector& noc_router_tiles, std::string noc_router_tile_name) { +std::vector identify_and_store_noc_router_tile_positions(const DeviceGrid& device_grid, + std::string_view noc_router_tile_name) { const int num_layers = device_grid.get_num_layers(); - int curr_tile_width; - int curr_tile_height; - int curr_tile_width_offset; - int curr_tile_height_offset; - std::string curr_tile_name; + const int grid_width = (int)device_grid.width(); + const int grid_height = (int)device_grid.height(); - double curr_tile_centroid_x; - double curr_tile_centroid_y; + std::vector noc_router_tiles; // go through the device for (int layer_num = 0; layer_num < num_layers; layer_num++) { - int grid_width = (int)device_grid.width(); - int grid_height = (int)device_grid.height(); for (int i = 0; i < grid_width; i++) { for (int j = 0; j < grid_height; j++) { // get some information from the current tile @@ -80,34 +81,39 @@ void identify_and_store_noc_router_tile_positions(const DeviceGrid& device_grid, int width_offset = device_grid.get_width_offset({i, j, layer_num}); int height_offset = device_grid.get_height_offset({i, j, layer_num}); - curr_tile_name.assign(type->name); - curr_tile_width_offset = width_offset; - curr_tile_height_offset = height_offset; + std::string_view curr_tile_name = type->name; + int curr_tile_width_offset = width_offset; + int curr_tile_height_offset = height_offset; - curr_tile_height = type->height; - curr_tile_width = type->width; + int curr_tile_height = type->height; + int curr_tile_width = type->width; /* * Only store the tile position if it is a noc router. - * Additionally, since a router tile can span multiple grid locations, we only add the tile if the height and width offset are zero (this prevents the router from being added multiple times for each grid location it spans). + * Additionally, since a router tile can span multiple grid locations, + * we only add the tile if the height and width offset are zero (this prevents the router from being added multiple times for each grid location it spans). */ - if (!(noc_router_tile_name.compare(curr_tile_name)) && !curr_tile_width_offset && !curr_tile_height_offset) { + if (noc_router_tile_name == curr_tile_name && !curr_tile_width_offset && !curr_tile_height_offset) { // calculating the centroid position of the current tile - curr_tile_centroid_x = (curr_tile_width - 1) / (double)2 + i; - curr_tile_centroid_y = (curr_tile_height - 1) / (double)2 + j; + double curr_tile_centroid_x = (curr_tile_width - 1) / (double)2 + i; + double curr_tile_centroid_y = (curr_tile_height - 1) / (double)2 + j; noc_router_tiles.emplace_back(i, j, layer_num, curr_tile_centroid_x, curr_tile_centroid_y); } } } } + + return noc_router_tiles; } -void generate_noc(const t_arch& arch, NocContext& noc_ctx, std::vector& noc_router_tiles) { - // refrernces to the noc +void generate_noc(const t_arch& arch, + NocContext& noc_ctx, + const std::vector& noc_router_tiles) { + // references to the noc NocStorage* noc_model = &noc_ctx.noc_model; // reference to the noc description - const t_noc_inf* noc_info = arch.noc; + const t_noc_inf& noc_info = *arch.noc; // initialize the noc noc_model->clear_noc(); @@ -120,26 +126,17 @@ void generate_noc(const t_arch& arch, NocContext& noc_ctx, std::vectorfinished_building_noc(); - - return; } -void create_noc_routers(const t_noc_inf& noc_info, NocStorage* noc_model, std::vector& noc_router_tiles) { +void create_noc_routers(const t_noc_inf& noc_info, + NocStorage* noc_model, + const std::vector& noc_router_tiles) { // keep track of the shortest distance between a user described router (noc description in the arch file) and a physical router on the FPGA double shortest_distance; - double curr_calculated_distance; // stores the index of a physical router within the noc_router_tiles that is closest to a given user described router int closest_physical_router; - // information regarding physical router position - double curr_physical_router_pos_x; - double curr_physical_router_pos_y; - - // information regarding logical router position - double curr_logical_router_position_x; - double curr_logical_router_position_y; - - // keep track of the index of each physical router (this helps uniqely identify them) + // keep track of the index of each physical router (this helps uniquely identify them) int curr_physical_router_index = 0; // keep track of the ids of the routers that create the case where multiple routers have the same distance to a physical router tile @@ -147,39 +144,40 @@ void create_noc_routers(const t_noc_inf& noc_info, NocStorage* noc_model, std::v int error_case_physical_router_index_2; // keep track of the router assignments (store the user router id that was assigned to each physical router tile) - // this is used in error checking, after determining the closest physical router for a user described router in the arch file, the datastructure below can be used to check if that physical router was already assigned previously + // this is used in error checking, after determining the closest physical router for a user described router in the arch file, + // the datastructure below can be used to check if that physical router was already assigned previously std::vector router_assignments; router_assignments.resize(noc_router_tiles.size(), PHYSICAL_ROUTER_NOT_ASSIGNED); // Below we create all the routers within the NoC // - // go through each user desctibed router in the arch file and assign it to a physical router on the FPGA - for (auto logical_router = noc_info.router_list.begin(); logical_router != noc_info.router_list.end(); logical_router++) { - // assign the shortest distance to a large value (this is done so that the first distance calculated and we can replace this) - shortest_distance = LLONG_MAX; - + // go through each user described router in the arch file and assign it to a physical router on the FPGA + for (const auto& logical_router : noc_info.router_list) { + // assign the shortest distance to a large value (this is done so that the first distance calculated, and we can replace this) + shortest_distance = std::numeric_limits::max(); // get position of the current logical router - curr_logical_router_position_x = logical_router->device_x_position; - curr_logical_router_position_y = logical_router->device_y_position; + double curr_logical_router_position_x = logical_router.device_x_position; + double curr_logical_router_position_y = logical_router.device_y_position; closest_physical_router = 0; // the starting index of the physical router list curr_physical_router_index = 0; - // initialze the router ids that track the error case where two physical router tiles have the same distance to a user described router - // we initialize it to a in-valid index, so that it reflects the situation where we never hit this case + // initialize the router ids that track the error case where two physical router tiles have the same distance to a user described router + // we initialize it to an invalid index, so that it reflects the situation where we never hit this case error_case_physical_router_index_1 = INVALID_PHYSICAL_ROUTER_INDEX; error_case_physical_router_index_2 = INVALID_PHYSICAL_ROUTER_INDEX; // determine the physical router tile that is closest to the current user described router in the arch file - for (auto physical_router = noc_router_tiles.begin(); physical_router != noc_router_tiles.end(); physical_router++) { + for (const auto& physical_router : noc_router_tiles) { // get the position of the current physical router tile on the FPGA device - curr_physical_router_pos_x = physical_router->tile_centroid_x; - curr_physical_router_pos_y = physical_router->tile_centroid_y; + double curr_physical_router_pos_x = physical_router.tile_centroid_x; + double curr_physical_router_pos_y = physical_router.tile_centroid_y; - // use euclidean distance to calculate the length between the current user described router and the physical router - curr_calculated_distance = sqrt(pow(abs(curr_physical_router_pos_x - curr_logical_router_position_x), 2.0) + pow(abs(curr_physical_router_pos_y - curr_logical_router_position_y), 2.0)); + // use Euclidean distance to calculate the length between the current user described router and the physical router + double curr_calculated_distance = std::hypot(curr_physical_router_pos_x - curr_logical_router_position_x, + curr_physical_router_pos_y - curr_logical_router_position_y); // if the current distance is the same as the previous shortest distance if (vtr::isclose(curr_calculated_distance, shortest_distance)) { @@ -187,8 +185,8 @@ void create_noc_routers(const t_noc_inf& noc_info, NocStorage* noc_model, std::v error_case_physical_router_index_1 = closest_physical_router; error_case_physical_router_index_2 = curr_physical_router_index; - } else if (curr_calculated_distance < shortest_distance) // case where the current logical router is closest to the physical router tile - { + // case where the current logical router is closest to the physical router tile + } else if (curr_calculated_distance < shortest_distance) { // update the shortest distance and then the closest router shortest_distance = curr_calculated_distance; closest_physical_router = curr_physical_router_index; @@ -202,32 +200,34 @@ void create_noc_routers(const t_noc_inf& noc_info, NocStorage* noc_model, std::v if (error_case_physical_router_index_1 == closest_physical_router) { VPR_FATAL_ERROR(VPR_ERROR_OTHER, "Router with ID:'%d' has the same distance to physical router tiles located at position (%d,%d) and (%d,%d). Therefore, no router assignment could be made.", - logical_router->id, noc_router_tiles[error_case_physical_router_index_1].grid_width_position, noc_router_tiles[error_case_physical_router_index_1].grid_height_position, + logical_router.id, noc_router_tiles[error_case_physical_router_index_1].grid_width_position, noc_router_tiles[error_case_physical_router_index_1].grid_height_position, noc_router_tiles[error_case_physical_router_index_2].grid_width_position, noc_router_tiles[error_case_physical_router_index_2].grid_height_position); } // check if the current physical router was already assigned previously, if so then throw an error if (router_assignments[closest_physical_router] != PHYSICAL_ROUTER_NOT_ASSIGNED) { VPR_FATAL_ERROR(VPR_ERROR_OTHER, "Routers with IDs:'%d' and '%d' are both closest to physical router tile located at (%d,%d) and the physical router could not be assigned multiple times.", - logical_router->id, router_assignments[closest_physical_router], noc_router_tiles[closest_physical_router].grid_width_position, + logical_router.id, router_assignments[closest_physical_router], noc_router_tiles[closest_physical_router].grid_width_position, noc_router_tiles[closest_physical_router].grid_height_position); } + auto it = noc_info.router_latency_overrides.find(logical_router.id); + double router_latency = (it == noc_info.router_latency_overrides.end()) ? noc_info.router_latency : it->second; + // at this point, the closest user described router to the current physical router was found // so add the router to the NoC - noc_model->add_router(logical_router->id, + noc_model->add_router(logical_router.id, noc_router_tiles[closest_physical_router].grid_width_position, noc_router_tiles[closest_physical_router].grid_height_position, - noc_router_tiles[closest_physical_router].layer_position); + noc_router_tiles[closest_physical_router].layer_position, + router_latency); // add the new assignment to the tracker - router_assignments[closest_physical_router] = logical_router->id; + router_assignments[closest_physical_router] = logical_router.id; } - - return; } -void create_noc_links(const t_noc_inf* noc_info, NocStorage* noc_model) { +void create_noc_links(const t_noc_inf& noc_info, NocStorage* noc_model) { // the ids used to represent the routers in the NoC are not the same as the ones provided by the user in the arch desc file. // while going through the router connections, the user provided router ids are converted and then stored below before being used in the links. NocRouterId source_router; @@ -237,19 +237,27 @@ void create_noc_links(const t_noc_inf* noc_info, NocStorage* noc_model) { noc_model->make_room_for_noc_router_link_list(); // go through each router and add its outgoing links to the NoC - for (auto router = noc_info->router_list.begin(); router != noc_info->router_list.end(); router++) { + for (const auto& router : noc_info.router_list) { // get the converted id of the current source router - source_router = noc_model->convert_router_id(router->id); + source_router = noc_model->convert_router_id(router.id); // go through all the routers connected to the current one and add links to the noc - for (auto conn_router_id = router->connection_list.begin(); conn_router_id != router->connection_list.end(); conn_router_id++) { + for (const auto conn_router_id : router.connection_list) { // get the converted id of the currently connected sink router - sink_router = noc_model->convert_router_id(*conn_router_id); + sink_router = noc_model->convert_router_id(conn_router_id); + + // check if this link has an overridden latency + auto lat_it = noc_info.link_latency_overrides.find({router.id, conn_router_id}); + // use the link-specific latency if it has an overridden latency, otherwise use the NoC-wide link latency + double link_lat = (lat_it == noc_info.link_latency_overrides.end()) ? noc_info.link_latency : lat_it->second; + + // check if this link has an overridden bandwidth + auto bw_it = noc_info.link_bandwidth_overrides.find({router.id, conn_router_id}); + // use the link-specific bandwidth if it has an overridden bandwidth, otherwise use the NoC-wide link bandwidth + double link_bw = (bw_it == noc_info.link_bandwidth_overrides.end()) ? noc_info.link_bandwidth : bw_it->second; // add the link to the Noc - noc_model->add_link(source_router, sink_router); + noc_model->add_link(source_router, sink_router, link_bw, link_lat); } } - - return; } diff --git a/vpr/src/base/setup_noc.h b/vpr/src/base/setup_noc.h index 23737d1c5b1..56434095fd7 100644 --- a/vpr/src/base/setup_noc.h +++ b/vpr/src/base/setup_noc.h @@ -16,14 +16,14 @@ * * Router Creation * --------------- - * Each router described in the archietcture file is created and + * Each router described in the architecture file is created and * added to the NoC. Since the routers represents physical tiles on * the FPGA, when the router is created, it is also assigned to a * corresponding physical router tile. * * Link Creation * ------------- - * The user describes a "connection list", which rerpesents an intended + * The user describes a "connection list", which represents an intended * connection between two routers in the NoC. Each link connects two * routers together. For each router, a number * of Links are created to connect it to another router in its "connection @@ -31,21 +31,11 @@ * */ -#include -#include +#include #include -#include "physical_types.h" #include "device_grid.h" -#include "globals.h" -#include "noc_storage.h" -#include "vpr_error.h" - -// a default condition that helps keep track of whether a physical router has been assigned to a logical router or not -#define PHYSICAL_ROUTER_NOT_ASSIGNED -1 - -// a deafult index used for initiailization purposes. No router will have a negative index -#define INVALID_PHYSICAL_ROUTER_INDEX -1 +#include "vpr_context.h" // a data structure to store the position information of a noc router in the FPGA device struct t_noc_router_tile_position { @@ -83,13 +73,14 @@ void setup_noc(const t_arch& arch); * stored in a list. * * @param device_grid The FPGA device description. - * @param list_of_noc_router_tiles Stores the grid position information - * for all NoC router tiles in the FPGA. * @param noc_router_tile_name The name used when describing the NoC router * tile in the FPGA architecture description * file. + * + * @return The grid position information for all NoC router tiles in the FPGA. */ -void identify_and_store_noc_router_tile_positions(const DeviceGrid& device_grid, std::vector& list_of_noc_router_tiles, std::string noc_router_tile_name); +std::vector identify_and_store_noc_router_tile_positions(const DeviceGrid& device_grid, + std::string_view noc_router_tile_name); /** * @brief Creates NoC routers and adds them to the NoC model based @@ -104,10 +95,12 @@ void identify_and_store_noc_router_tile_positions(const DeviceGrid& device_grid, * @param list_of_noc_router_tiles Stores the grid position information * for all NoC router tiles in the FPGA. */ -void generate_noc(const t_arch& arch, NocContext& noc_ctx, std::vector& list_of_noc_router_tiles); +void generate_noc(const t_arch& arch, + NocContext& noc_ctx, + const std::vector& list_of_noc_router_tiles); /** - * @brief Go through the outers described by the user + * @brief Go through the routers described by the user * in the architecture description file and assigns it a corresponding * physical router tile in the FPGA. Each logical router has a grid * location, so the closest physical router to the grid location is then @@ -121,7 +114,9 @@ void generate_noc(const t_arch& arch, NocContext& noc_ctx, std::vector& list_of_noc_router_tiles); +void create_noc_routers(const t_noc_inf& noc_info, + NocStorage* noc_model, + const std::vector& list_of_noc_router_tiles); /** * @brief Goes through the topology information as described in the FPGA @@ -134,6 +129,6 @@ void create_noc_routers(const t_noc_inf& noc_info, NocStorage* noc_model, std::v * @param noc_model An internal model that describes the NoC. Contains a list of * routers and links that connect the routers together. */ -void create_noc_links(const t_noc_inf* noc_info, NocStorage* noc_model); +void create_noc_links(const t_noc_inf& noc_info, NocStorage* noc_model); #endif \ No newline at end of file diff --git a/vpr/src/base/user_place_constraints.cpp b/vpr/src/base/user_place_constraints.cpp new file mode 100644 index 00000000000..b8a6f3bd999 --- /dev/null +++ b/vpr/src/base/user_place_constraints.cpp @@ -0,0 +1,89 @@ +#include "user_place_constraints.h" + +void UserPlaceConstraints::add_constrained_atom(AtomBlockId blk_id, PartitionId part_id) { + auto got = constrained_atoms.find(blk_id); + + /** + * Each atom can only be in one partition. If the atom is not found in constrained_atoms, it + * will be added with its partition id. + * If the atom is already in constrained_atoms, the partition id will be updated. + */ + if (got == constrained_atoms.end()) { + constrained_atoms.insert({blk_id, part_id}); + } else { + got->second = part_id; + } +} + +PartitionId UserPlaceConstraints::get_atom_partition(AtomBlockId blk_id) const { + auto got = constrained_atoms.find(blk_id); + + if (got == constrained_atoms.end()) { + return PartitionId::INVALID(); ///< atom is not in a partition, i.e. unconstrained + } else { + return got->second; + } +} + +void UserPlaceConstraints::add_partition(const Partition& part) { + partitions.push_back(part); +} + +const Partition& UserPlaceConstraints::get_partition(PartitionId part_id) const { + return partitions[part_id]; +} + +Partition& UserPlaceConstraints::get_mutable_partition(PartitionId part_id) { + return partitions[part_id]; +} + +std::vector UserPlaceConstraints::get_part_atoms(PartitionId part_id) const { + std::vector part_atoms; + + for (const auto& it : constrained_atoms) { + if (it.second == part_id) { + part_atoms.push_back(it.first); + } + } + + return part_atoms; +} + +int UserPlaceConstraints::get_num_partitions() const { + return partitions.size(); +} + +const PartitionRegion& UserPlaceConstraints::get_partition_pr(PartitionId part_id) const { + return partitions[part_id].get_part_region(); +} + +PartitionRegion& UserPlaceConstraints::get_mutable_partition_pr(PartitionId part_id) { + return partitions[part_id].get_mutable_part_region(); +} + +void print_placement_constraints(FILE* fp, const UserPlaceConstraints& constraints) { + std::vector atoms; + + int num_parts = constraints.get_num_partitions(); + + fprintf(fp, "\n Number of partitions is %d \n", num_parts); + + for (int i = 0; i < num_parts; i++) { + PartitionId part_id(i); + + const Partition& temp_part = constraints.get_partition(part_id); + + fprintf(fp, "\npartition_id: %zu\n", size_t(part_id)); + print_partition(fp, temp_part); + + atoms = constraints.get_part_atoms(part_id); + + int atoms_size = atoms.size(); + + fprintf(fp, "\tAtom vector size is %d\n", atoms_size); + fprintf(fp, "\tIds of atoms in partition: \n"); + for (auto atom_id : atoms) { + fprintf(fp, "\t#%zu\n", size_t(atom_id)); + } + } +} diff --git a/vpr/src/base/user_place_constraints.h b/vpr/src/base/user_place_constraints.h new file mode 100644 index 00000000000..b7bcf69f38a --- /dev/null +++ b/vpr/src/base/user_place_constraints.h @@ -0,0 +1,117 @@ +#ifndef USER_PLACE_CONSTRAINTS_H +#define USER_PLACE_CONSTRAINTS_H + +#include "vtr_vector.h" +#include "partition.h" +#include "partition_region.h" + +/** + * + * @brief This file defines the UserPlaceConstraints class used to store and read out data related to user-specified + * block and region constraints for the packing and placement stages. + * + * Overview + * ======== + * This class contains functions that read in and store information related to floorplan constraints from a constraints XML file. + * The XML file provides a partition list, with the names of the partitions, and each atom in the partition. + * It also specifies which regions the partitions should be placed in. Atoms cannot be placed in more than one partition. + * If an atom is assigned to more than one partition, the last partition is was assigned to will be the partition it is placed in. + * + * Related Classes + * =============== + * The following definitions are useful to understanding this class: + * + * Partition: a grouping of atoms that are constrained to a portion of an FPGA + * See vpr/src/base/partition.h for more detail + * + * Region: the x and y bounds of a rectangular region, optionally including a subtile value, + * that atoms in a partition are constrained to + * See vpr/src/base/region.h for more detail + * + * PartitionRegion: the union of regions that a partition can be placed in + * See vpr/src/base/partition_region.h for more detail + * + * + */ + +class UserPlaceConstraints { + public: + /** + * @brief Store the id of a constrained atom with the id of the partition it belongs to + * + * @param blk_id The atom being stored + * @param part_id The partition the atom is being constrained to + */ + void add_constrained_atom(AtomBlockId blk_id, PartitionId part_id); + + /** + * @brief Return id of the partition the atom belongs to + * + * If an atom is not in a partition (unconstrained), PartitionId::INVALID() is returned. + * + * @param blk_id The atom for which the partition id is needed + */ + PartitionId get_atom_partition(AtomBlockId blk_id) const; + /** + * @brief Store a partition + * + * @param part The partition being stored + */ + void add_partition(const Partition& part); + + /** + * @brief Return a partition + * + * @param part_id The id of the partition that is wanted + */ + const Partition& get_partition(PartitionId part_id) const; + + /** + * @brief Returns a mutable partition + * + * @param part_id The id of the partition that is wanted + */ + Partition& get_mutable_partition(PartitionId part_id); + + /** + * @brief Return all the atoms that belong to a partition + * + * @param part_id The id of the partition whose atoms are needed + */ + std::vector get_part_atoms(PartitionId part_id) const; + + /** + * @brief Returns the number of partitions in the object + */ + int get_num_partitions() const; + + /** + * @brief Returns the PartitionRegion belonging to the specified Partition + * + * @param part_id The id of the partition whose PartitionRegion is needed + */ + const PartitionRegion& get_partition_pr(PartitionId part_id) const; + + /** + * @brief Returns the mutable PartitionRegion belonging to the specified Partition + * + * @param part_id The id of the partition whose PartitionRegion is needed + */ + PartitionRegion& get_mutable_partition_pr(PartitionId part_id); + + private: + /** + * Store all constrained atoms + */ + std::unordered_map constrained_atoms; + + /** + * Store all partitions + */ + vtr::vector partitions; +}; + +///@brief used to print floorplanning constraints data from a VprConstraints object +void print_placement_constraints(FILE* fp, const UserPlaceConstraints& constraints); + +#endif /* USER_PLACE_CONSTRAINTS_H */ diff --git a/vpr/src/base/user_route_constraints.cpp b/vpr/src/base/user_route_constraints.cpp new file mode 100644 index 00000000000..52888811714 --- /dev/null +++ b/vpr/src/base/user_route_constraints.cpp @@ -0,0 +1,84 @@ +#include "user_route_constraints.h" + + +void UserRouteConstraints::add_route_constraint(std::string net_name, RoutingScheme route_scheme) { + route_constraints_.insert({net_name, route_scheme}); +} + + +const std::pair UserRouteConstraints::get_route_constraint_by_idx(std::size_t idx) const { + RoutingScheme route_scheme; + + // throw an error if the index is out of range + if ((route_constraints_.size() == 0) || (idx > route_constraints_.size() - 1)) { + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "in get_route_constraint_by_idx: index %u is out of range. The unordered map for route constraints has a size of %u\n", + idx, route_constraints_.size()); + } + + auto it = route_constraints_.begin(); + std::advance(it, idx); + return *it; +} + +bool UserRouteConstraints::has_routing_constraint(std::string net_name) const { + + // Check if there's an exact match for the net name + auto const& rc_itr = route_constraints_.find(net_name); + if (rc_itr != route_constraints_.end()) { + return true; + } + + // Check for wildcard matches + for (const auto& route_constraint : route_constraints_) { + if (std::regex_match(net_name, std::regex(route_constraint.first))) { + return true; + } + } + + // Return false if no match is found + return false; +} + +const RoutingScheme UserRouteConstraints::get_route_scheme_by_net_name(std::string net_name) const{ + + if(has_routing_constraint(net_name) == false) + { + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "in get_route_scheme_by_net_name: no routing constraints exist for net name %s \n", + net_name.c_str()); + } + + RoutingScheme route_scheme; + auto const& rs_itr = route_constraints_.find(net_name); + if (rs_itr == route_constraints_.end()) { + // Check for wildcard matches + for (auto constraint : route_constraints_) { + if (std::regex_match(net_name, std::regex(constraint.first))) { + route_scheme = constraint.second; + break; + } + } + } else { + route_scheme = rs_itr->second; + } + return route_scheme; + +} + + +e_clock_modeling UserRouteConstraints::get_route_model_by_net_name(std::string net_name) const{ + RoutingScheme route_scheme = get_route_scheme_by_net_name(net_name); + return route_scheme.route_model(); +} + + +const std::string UserRouteConstraints::get_routing_network_name_by_net_name(std::string net_name) const{ + RoutingScheme route_scheme = get_route_scheme_by_net_name(net_name); + return route_scheme.network_name(); +} + + +int UserRouteConstraints::get_num_route_constraints(void) const { + return route_constraints_.size(); +} \ No newline at end of file diff --git a/vpr/src/base/user_route_constraints.h b/vpr/src/base/user_route_constraints.h new file mode 100644 index 00000000000..57d6a3d2455 --- /dev/null +++ b/vpr/src/base/user_route_constraints.h @@ -0,0 +1,158 @@ +#ifndef USER_ROUTE_CONSTRAINTS_H +#define USER_ROUTE_CONSTRAINTS_H + +#include "clock_modeling.h" +#include "vpr_error.h" +#include +#include + +/** + * @brief This class specifies a routing scheme for a global net. + * + * Global nets, such as clocks, may require special + * handling. Clocks are marked as global by default in VPR, but other nets can be specified + * as global in a user routing constraints file. + * + * The variable `route_model_` can decide between different routing schemes: + * - "ideal": The net is not routed. + * - "route": The net is routed through the general routing fabric. + * - "dedicated_network": The net is routed through a dedicated global clock network using + * the two-stage router. In the first stage the net source is routed + * to the clock network root and in the second stage the net is routed + * from the clock network root to the sinks + * In the third case, the variable `network_name_` specifies the name of the clock network + * through which the net should be routed. + */ +class RoutingScheme { +private: + std::string network_name_ = "INVALID"; // Name of the clock network (if applicable) + e_clock_modeling route_model_ = e_clock_modeling::ROUTED_CLOCK; + +public: + // Constructors + RoutingScheme() = default; + RoutingScheme(const std::string network_name, const e_clock_modeling route_model) + : network_name_(network_name), route_model_(route_model) {} + + // Getters + std::string network_name() const { + return network_name_; + } + + e_clock_modeling route_model() const { + return route_model_; + } + + // Setters + void set_network_name(const std::string& network_name) { + network_name_ = network_name; + } + + void set_route_model(e_clock_modeling route_model) { + route_model_ = route_model; + } + + // Reset network_name_ and route_model_ to their default values + void reset() { + network_name_ = "INVALID"; + route_model_ = e_clock_modeling::ROUTED_CLOCK; + } +}; + + +/** + * @brief This class is used to store information related to global route constraints from a constraints XML file. + * + * In the XML file, you can specify a list of global route constraints where you can specify the name of the net + * you want to be treated as global. Then, you can define the routing scheme, including the routing method and the + * name of the global network you want the net to be routed through (if applicable). + * + * This class contains an unordered map that stores the name of the global net as the key and the routing scheme + * for that net as the value. The name can also be a wildcard. + */ +class UserRouteConstraints { + public: + /** + * @brief Add a global route constraint for a specific net with its corresponding routing scheme. + * + * @param net_name The name of the net to which the route constraint applies. + * @param route_scheme The routing scheme specifying how the net should be routed. + */ + void add_route_constraint(std::string net_name, RoutingScheme route_scheme); + + /** + * @brief Get a global route constraint by its index. + * + * The index refers to the position of the key-value entry in the unordered map that stores + * the route constraints. This function has a linear complexity, and calling it in an outer + * loop may result in performance issues. Currently, it is primarily used in auto-generated + * constraint writer code that loops over the number of constraints and fetches them by index. + * + * @param index The index of the key-value entry in the unordered map. + * @return A pair containing the net name and its corresponding routing scheme. + */ + const std::pair get_route_constraint_by_idx(std::size_t idx) const; + + /** + * @brief Check if a routing constraint has been specified for a specific net. + * + * The net name can include wildcard / regex patterns. The function first searches for an exact match of the net name in the route_constraints collection. + * If no exact match is found, the method iterates through the entries in the collection, + * attempting to match the net name using wildcard or regex patterns. + * + * @param net_name The name of the net to check for a routing constraint. + * @return True if a routing constraint has been specified for the net, false otherwise. + */ + bool has_routing_constraint(std::string net_name) const; + + /** + * @brief Get the routing scheme for a specific net by its name. + * + * The net name may include wildcard patterns, which will be supported. + * + * @param net_name The name of the net for which to retrieve the routing scheme. + * @return The routing scheme associated with the specified net. + */ + const RoutingScheme get_route_scheme_by_net_name(std::string net_name) const; + + /** + * @brief Get the routing model for a specific net by its name. + * + * This function retrieves the routing scheme associated with a specific net and + * then obtains the routing method from the retrieved routing scheme. + * + * @param net_name The name of the net for which to retrieve the routing method. + * @return The routing method associated with the specified net. + * + * Note: This is a convenience method that just extracts part of the routing scheme. + * + */ + e_clock_modeling get_route_model_by_net_name(std::string net_name) const; + + /** + * @brief Get the name of the routing network for a specific net by its name. + * + * If the net's routing scheme is "dedicated_network", this function will return + * the name of the dedicated global clock network specified in the routing scheme. + * Otherwise, the function will return the default value "INVALID" since the network name + * is meaningful only when the routing method is "dedicated_network". + * + * @param net_name The name of the net for which to retrieve the name of the routing network. + * @return The name of the routing network associated with the specified net. + */ + const std::string get_routing_network_name_by_net_name(std::string net_name) const; + + /** + * @brief Get the total number of user-specified global route constraints. + */ + int get_num_route_constraints(void) const; + + + + private: + /** + * store all route constraints + */ + std::unordered_map route_constraints_; +}; +#endif /* USER_ROUTE_CONSTRAINTS_H */ \ No newline at end of file diff --git a/vpr/src/base/vpr_api.cpp b/vpr/src/base/vpr_api.cpp index 251b917c3bf..336bb6419aa 100644 --- a/vpr/src/base/vpr_api.cpp +++ b/vpr/src/base/vpr_api.cpp @@ -96,12 +96,19 @@ #include "log.h" #include "iostream" +#include "load_flat_place.h" + #ifdef VPR_USE_TBB # define TBB_PREVIEW_GLOBAL_CONTROL 1 /* Needed for compatibility with old TBB versions */ # include # include #endif +#ifndef NO_SERVER +#include "gateio.h" +#include "serverupdate.h" +#endif /* NO_SERVER */ + /* Local subroutines */ static void free_complex_block_types(); @@ -291,6 +298,7 @@ void vpr_init_with_options(const t_options* options, t_vpr_setup* vpr_setup, t_a &vpr_setup->RouterOpts, &vpr_setup->AnalysisOpts, &vpr_setup->NocOpts, + &vpr_setup->ServerOpts, &vpr_setup->RoutingArch, &vpr_setup->PackerRRGraph, vpr_setup->Segments, @@ -309,6 +317,7 @@ void vpr_init_with_options(const t_options* options, t_vpr_setup* vpr_setup, t_a CheckSetup(vpr_setup->PackerOpts, vpr_setup->PlacerOpts, vpr_setup->RouterOpts, + vpr_setup->ServerOpts, vpr_setup->RoutingArch, vpr_setup->Segments, vpr_setup->Timing, arch->Chans); /* flush any messages to user still in stdout that hasn't gotten displayed */ @@ -350,10 +359,11 @@ void vpr_init_with_options(const t_options* options, t_vpr_setup* vpr_setup, t_a //Initialize vpr floorplanning and routing constraints auto& filename_opts = vpr_setup->FileNameOpts; if (!filename_opts.read_vpr_constraints_file.empty()) { - load_vpr_constraints_files(filename_opts.read_vpr_constraints_file.c_str()); + load_vpr_constraints_file(filename_opts.read_vpr_constraints_file.c_str()); - // give a notificaiton on routing constraints overiding clock modeling - if (g_vpr_ctx.routing().constraints.get_route_constraint_num() && options->clock_modeling.provenance() == argparse::Provenance::SPECIFIED) { + // Check if there are route constraints specified, and if the clock modeling setting is explicitly specified + // If both conditions are met, issue a warning that the route constraints will override the clock modeling setting. + if (g_vpr_ctx.routing().constraints.get_num_route_constraints() && options->clock_modeling.provenance() == argparse::Provenance::SPECIFIED) { VTR_LOG_WARN("Route constraint(s) detected and will override clock modeling setting.\n"); } } @@ -392,6 +402,9 @@ bool vpr_flow(t_vpr_setup& vpr_setup, t_arch& arch) { // TODO: Placer still assumes that cluster net list is used - graphics can not work with flat routing yet vpr_init_graphics(vpr_setup, arch, false); + + vpr_init_server(vpr_setup); + { //Place const auto& placement_net_list = (const Netlist<>&)g_vpr_ctx.clustering().clb_nlist; bool place_success = vpr_place_flow(placement_net_list, vpr_setup, arch); @@ -411,9 +424,6 @@ bool vpr_flow(t_vpr_setup& vpr_setup, t_arch& arch) { vpr_analysis_flow(router_net_list, vpr_setup, arch, route_status, is_flat); } - // write out constratins - write_vpr_constraints(vpr_setup); - //close the graphics vpr_close_graphics(vpr_setup); @@ -463,7 +473,9 @@ void vpr_create_device_grid(const t_vpr_setup& vpr_setup, const t_arch& Arch) { device_ctx.vib_grid = create_vib_device_grid(vpr_setup.device_layout, Arch.vib_grid_layouts); } - VTR_ASSERT_MSG(device_ctx.grid.get_num_layers() <= MAX_NUM_LAYERS, "Number of layers should be less than MAX_NUM_LAYERS. If you need more layers, please increase the value of MAX_NUM_LAYERS in vpr_types.h"); + VTR_ASSERT_MSG(device_ctx.grid.get_num_layers() <= MAX_NUM_LAYERS, + "Number of layers should be less than MAX_NUM_LAYERS. " + "If you need more layers, please increase the value of MAX_NUM_LAYERS in vpr_types.h"); /* *Report on the device @@ -589,6 +601,9 @@ bool vpr_pack_flow(t_vpr_setup& vpr_setup, const t_arch& arch) { if (packer_opts.doPacking == STAGE_DO) { //Do the actual packing status = vpr_pack(vpr_setup, arch); + if (!status) { + return status; + } //TODO: to be consistent with placement/routing vpr_pack should really // load the netlist data structures itself, instead of re-loading @@ -598,10 +613,25 @@ bool vpr_pack_flow(t_vpr_setup& vpr_setup, const t_arch& arch) { vpr_load_packing(vpr_setup, arch); } else { VTR_ASSERT(packer_opts.doPacking == STAGE_LOAD); - //Load a previous packing from the .net file - vpr_load_packing(vpr_setup, arch); - //Load cluster_constraints data structure here since loading pack file - load_cluster_constraints(); + + // generate a .net file by legalizing an input flat placement file + if (packer_opts.load_flat_placement) { + + //Load and legalizer flat placement file + vpr_load_flat_placement(vpr_setup, arch); + + //Load the result from the .net file + vpr_load_packing(vpr_setup, arch); + + } else { + + //Load a previous packing from the .net file + vpr_load_packing(vpr_setup, arch); + + //Load cluster_constraints data structure here since loading pack file + load_cluster_constraints(); + } + } /* Sanity check the resulting netlist */ @@ -703,6 +733,37 @@ void vpr_load_packing(t_vpr_setup& vpr_setup, const t_arch& arch) { } } +bool vpr_load_flat_placement(t_vpr_setup& vpr_setup, const t_arch& arch) { + + // set up the device grid for the legalizer + auto& device_ctx = g_vpr_ctx.mutable_device(); + device_ctx.arch = &arch; + device_ctx.grid = create_device_grid(vpr_setup.device_layout, arch.grid_layouts); + if (device_ctx.grid.get_num_layers() > 1) { + VPR_FATAL_ERROR(VPR_ERROR_PACK, "Legalizer currently only supports single layer devices.\n"); + } + + // load and legalize flat placement file, print .net and fix clusters files + bool status = load_flat_placement(vpr_setup, arch); + if (!status) { + return status; + } + + // echo flat placement (orphan clusters will have -1 for X, Y, subtile coordinates) + if (getEchoEnabled() && isEchoFileEnabled(E_ECHO_FLAT_PLACE)) { + print_flat_placement(getEchoFileName(E_ECHO_FLAT_PLACE)); + } + + // reset the device grid + device_ctx.grid.clear(); + + // if running placement, use the fix clusters file produced by the legalizer + if (vpr_setup.PlacerOpts.doPlacement) { + vpr_setup.PlacerOpts.constraints_file = vpr_setup.FileNameOpts.write_constraints_file; + } + return true; +} + bool vpr_place_flow(const Netlist<>& net_list, t_vpr_setup& vpr_setup, const t_arch& arch) { VTR_LOG("\n"); const auto& placer_opts = vpr_setup.PlacerOpts; @@ -731,6 +792,13 @@ bool vpr_place_flow(const Netlist<>& net_list, t_vpr_setup& vpr_setup, const t_a placer_opts.floorplan_num_horizontal_partitions, placer_opts.floorplan_num_vertical_partitions); } + // Write out a flat placement file if the option is specified + // A flat placement file includes cluster and intra-cluster placement coordinates for + // each primitive and can be used to reconstruct a clustering and placement solution. + if (!filename_opts.write_flat_place_file.empty()) { + print_flat_placement(vpr_setup.FileNameOpts.write_flat_place_file.c_str()); + } + return true; } @@ -805,9 +873,8 @@ RouteStatus vpr_route_flow(const Netlist<>& net_list, route_status = RouteStatus(true, -1); } else { //Do or load - // apply route constraints - // use mutable routing context here to apply change on the constraints when binding the constraint to real net - apply_route_constraints(g_vpr_ctx.mutable_routing().constraints); + // set the net_is_ignored flag for nets that that have route_model set to ideal in route constraints + apply_route_constraints(g_vpr_ctx.routing().constraints); int chan_width = router_opts.fixed_channel_width; @@ -822,6 +889,12 @@ RouteStatus vpr_route_flow(const Netlist<>& net_list, auto& atom_ctx = g_vpr_ctx.atom(); routing_delay_calc = std::make_shared(atom_ctx.nlist, atom_ctx.lookup, net_delay, is_flat); timing_info = make_setup_hold_timing_info(routing_delay_calc, router_opts.timing_update_type); +#ifndef NO_SERVER + if (g_vpr_ctx.server().gate_io.is_running()) { + g_vpr_ctx.mutable_server().timing_info = timing_info; + g_vpr_ctx.mutable_server().routing_delay_calc = routing_delay_calc; + } +#endif /* NO_SERVER */ } else { /* No delay calculator (segfault if the code calls into it) and wirelength driven routing */ timing_info = make_constant_timing_info(0); @@ -1068,6 +1141,21 @@ void vpr_init_graphics(const t_vpr_setup& vpr_setup, const t_arch& arch, bool is alloc_draw_structs(&arch); } +void vpr_init_server(const t_vpr_setup& vpr_setup) { +#ifndef NO_SERVER + if (vpr_setup.ServerOpts.is_server_mode_enabled) { + /* Set up a server and its callback to be triggered at 100ms intervals by the timer's timeout event. */ + server::GateIO& gate_io = g_vpr_ctx.mutable_server().gate_io; + if (!gate_io.is_running()) { + gate_io.start(vpr_setup.ServerOpts.port_num); + g_timeout_add(/*interval_ms*/ 100, server::update, &application); + } + } +#else + (void)(vpr_setup); +#endif /* NO_SERVER */ +} + void vpr_close_graphics(const t_vpr_setup& /*vpr_setup*/) { /* Close down X Display */ free_draw_structs(); @@ -1275,6 +1363,7 @@ void vpr_setup_vpr(t_options* Options, t_router_opts* RouterOpts, t_analysis_opts* AnalysisOpts, t_noc_opts* NocOpts, + t_server_opts* ServerOpts, t_det_routing_arch* RoutingArch, std::vector** PackerRRGraph, std::vector& Segments, @@ -1299,6 +1388,7 @@ void vpr_setup_vpr(t_options* Options, RouterOpts, AnalysisOpts, NocOpts, + ServerOpts, RoutingArch, PackerRRGraph, Segments, @@ -1319,11 +1409,12 @@ void vpr_check_arch(const t_arch& Arch) { void vpr_check_setup(const t_packer_opts& PackerOpts, const t_placer_opts& PlacerOpts, const t_router_opts& RouterOpts, + const t_server_opts& ServerOpts, const t_det_routing_arch& RoutingArch, const std::vector& Segments, const t_timing_inf& Timing, const t_chan_width_dist& Chans) { - CheckSetup(PackerOpts, PlacerOpts, RouterOpts, RoutingArch, + CheckSetup(PackerOpts, PlacerOpts, RouterOpts, ServerOpts, RoutingArch, Segments, Timing, Chans); } @@ -1445,15 +1536,15 @@ void vpr_analysis(const Netlist<>& net_list, generate_setup_timing_stats(/*prefix=*/"", *timing_info, *analysis_delay_calc, vpr_setup.AnalysisOpts, vpr_setup.RouterOpts.flat_routing); - //Write the post-syntesis netlist + //Write the post-synthesis netlist if (vpr_setup.AnalysisOpts.gen_post_synthesis_netlist) { - netlist_writer(atom_ctx.nlist.netlist_name().c_str(), analysis_delay_calc, + netlist_writer(atom_ctx.nlist.netlist_name(), analysis_delay_calc, vpr_setup.AnalysisOpts); } //Write the post-implementation merged netlist if (vpr_setup.AnalysisOpts.gen_post_implementation_merged_netlist) { - merged_netlist_writer(atom_ctx.nlist.netlist_name().c_str(), analysis_delay_calc, vpr_setup.AnalysisOpts); + merged_netlist_writer(atom_ctx.nlist.netlist_name(), analysis_delay_calc, vpr_setup.AnalysisOpts); } //Do power analysis diff --git a/vpr/src/base/vpr_api.h b/vpr/src/base/vpr_api.h index b4c89e25051..5efbceaecfa 100644 --- a/vpr/src/base/vpr_api.h +++ b/vpr/src/base/vpr_api.h @@ -65,6 +65,9 @@ bool vpr_pack(t_vpr_setup& vpr_setup, const t_arch& arch); ///@brief Loads a previous packing void vpr_load_packing(t_vpr_setup& vpr_setup, const t_arch& arch); +///@brief Reconstructs a packing and placement solution from a flat placement file +bool vpr_load_flat_placement(t_vpr_setup& vpr_setup, const t_arch& arch); + /* Placement */ ///@brief Perform, load or skip the placement stage @@ -139,6 +142,8 @@ void vpr_create_device_grid(const t_vpr_setup& vpr_setup, const t_arch& Arch); void vpr_create_rr_graph(t_vpr_setup& vpr_setup, const t_arch& arch, int chan_width, bool is_flat); void vpr_init_graphics(const t_vpr_setup& vpr_setup, const t_arch& arch, bool is_flat); +void vpr_init_server(const t_vpr_setup& vpr_setup); + void vpr_close_graphics(const t_vpr_setup& vpr_setup); void vpr_setup_clock_networks(t_vpr_setup& vpr_setup, const t_arch& Arch); @@ -177,6 +182,7 @@ void vpr_setup_vpr(t_options* Options, t_router_opts* RouterOpts, t_analysis_opts* AnalysisOpts, t_noc_opts* NocOpts, + t_server_opts* ServerOpts, t_det_routing_arch* RoutingArch, std::vector** PackerRRGraph, std::vector& Segments, @@ -195,6 +201,7 @@ void vpr_check_arch(const t_arch& Arch); void vpr_check_setup(const t_packer_opts& PackerOpts, const t_placer_opts& PlacerOpts, const t_router_opts& RouterOpts, + const t_server_opts& ServerOpts, const t_det_routing_arch& RoutingArch, const std::vector& Segments, const t_timing_inf& Timing, diff --git a/vpr/src/base/vpr_constraints.cpp b/vpr/src/base/vpr_constraints.cpp index 64dcfd310c8..9ae678c94e0 100644 --- a/vpr/src/base/vpr_constraints.cpp +++ b/vpr/src/base/vpr_constraints.cpp @@ -1,152 +1,18 @@ #include "vpr_constraints.h" -#include "partition.h" -#include "route_constraint.h" -#include -void VprConstraints::add_constrained_atom(const AtomBlockId blk_id, const PartitionId part_id) { - auto got = constrained_atoms.find(blk_id); - /** - * Each atom can only be in one partition. If the atom is not found in constrained_atoms, it - * will be added with its partition id. - * If the atom is already in constrained_atoms, the partition id will be updated. - */ - if (got == constrained_atoms.end()) { - constrained_atoms.insert({blk_id, part_id}); - } else { - got->second = part_id; - } +UserPlaceConstraints& VprConstraints::mutable_place_constraints() { + return placement_constraints_; } -PartitionId VprConstraints::get_atom_partition(AtomBlockId blk_id) { - PartitionId part_id; - - auto got = constrained_atoms.find(blk_id); - - if (got == constrained_atoms.end()) { - return part_id = PartitionId::INVALID(); ///< atom is not in a partition, i.e. unconstrained - } else { - return got->second; - } -} - -void VprConstraints::add_partition(Partition part) { - partitions.push_back(part); -} - -Partition VprConstraints::get_partition(PartitionId part_id) { - return partitions[part_id]; -} - -std::vector VprConstraints::get_part_atoms(PartitionId part_id) { - std::vector part_atoms; - - for (auto& it : constrained_atoms) { - if (it.second == part_id) { - part_atoms.push_back(it.first); - } - } - - return part_atoms; -} - -int VprConstraints::get_num_partitions() { - return partitions.size(); -} - -PartitionRegion VprConstraints::get_partition_pr(PartitionId part_id) { - PartitionRegion pr; - pr = partitions[part_id].get_part_region(); - return pr; -} - -void VprConstraints::add_route_constraint(RouteConstraint rc) { - route_constraints_.insert({rc.net_name(), rc}); - return; -} - -const RouteConstraint VprConstraints::get_route_constraint_by_net_name(std::string net_name) { - RouteConstraint rc; - auto const& rc_itr = route_constraints_.find(net_name); - if (rc_itr == route_constraints_.end()) { - // try regexp - bool found_thru_regex = false; - for (auto constraint : route_constraints_) { - if (std::regex_match(net_name, std::regex(constraint.first))) { - rc = constraint.second; - - // mark as invalid so write constraint function will not write constraint - // of regexpr name - // instead a matched constraint is inserted in - constraint.second.set_is_valid(false); - rc.set_net_name(net_name); - rc.set_is_valid(true); - route_constraints_.insert({net_name, rc}); - - found_thru_regex = true; - break; - } - } - if (!found_thru_regex) { - rc.set_net_name("INVALID"); - rc.set_net_type("INVALID"); - rc.set_route_model("INVALID"); - rc.set_is_valid(false); - } - } else { - rc = rc_itr->second; - } - return rc; -} - -const RouteConstraint VprConstraints::get_route_constraint_by_idx(std::size_t idx) const { - RouteConstraint rc; - if ((route_constraints_.size() == 0) || (idx > route_constraints_.size() - 1)) { - rc.set_net_name("INVALID"); - rc.set_net_type("INVALID"); - rc.set_route_model("INVALID"); - rc.set_is_valid(false); - } else { - std::size_t i = 0; - for (auto const& rc_itr : route_constraints_) { - if (i == idx) { - rc = rc_itr.second; - break; - } - } - } - return rc; +UserRouteConstraints& VprConstraints::mutable_route_constraints() { + return route_constraints_; } -int VprConstraints::get_route_constraint_num(void) const { - return route_constraints_.size(); +const UserPlaceConstraints& VprConstraints::place_constraints() const { + return placement_constraints_; } -void print_constraints(FILE* fp, VprConstraints constraints) { - Partition temp_part; - std::vector atoms; - - int num_parts = constraints.get_num_partitions(); - - fprintf(fp, "\n Number of partitions is %d \n", num_parts); - - for (int i = 0; i < num_parts; i++) { - PartitionId part_id(i); - - temp_part = constraints.get_partition(part_id); - - fprintf(fp, "\npartition_id: %zu\n", size_t(part_id)); - print_partition(fp, temp_part); - - atoms = constraints.get_part_atoms(part_id); - - int atoms_size = atoms.size(); - - fprintf(fp, "\tAtom vector size is %d\n", atoms_size); - fprintf(fp, "\tIds of atoms in partition: \n"); - for (unsigned int j = 0; j < atoms.size(); j++) { - AtomBlockId atom_id = atoms[j]; - fprintf(fp, "\t#%zu\n", size_t(atom_id)); - } - } +const UserRouteConstraints& VprConstraints::route_constraints() const { + return route_constraints_; } diff --git a/vpr/src/base/vpr_constraints.cpp_back b/vpr/src/base/vpr_constraints.cpp_back new file mode 100644 index 00000000000..9ae678c94e0 --- /dev/null +++ b/vpr/src/base/vpr_constraints.cpp_back @@ -0,0 +1,18 @@ +#include "vpr_constraints.h" + + +UserPlaceConstraints& VprConstraints::mutable_place_constraints() { + return placement_constraints_; +} + +UserRouteConstraints& VprConstraints::mutable_route_constraints() { + return route_constraints_; +} + +const UserPlaceConstraints& VprConstraints::place_constraints() const { + return placement_constraints_; +} + +const UserRouteConstraints& VprConstraints::route_constraints() const { + return route_constraints_; +} diff --git a/vpr/src/base/vpr_constraints.h b/vpr/src/base/vpr_constraints.h index f9343267a9e..6ac53af783b 100644 --- a/vpr/src/base/vpr_constraints.h +++ b/vpr/src/base/vpr_constraints.h @@ -1,113 +1,71 @@ #ifndef VPR_CONSTRAINTS_H #define VPR_CONSTRAINTS_H -#include "vtr_vector.h" -#include "vpr_utils.h" -#include "partition.h" -#include "partition_region.h" -#include "route_constraint.h" +#include "user_place_constraints.h" +#include "user_route_constraints.h" /** - * @file - * @brief This file defines the VprConstraints class used to store and read out data related to user-specified - * block and region constraints for the packing and placement stages. + * @brief This file defines the VprConstraints class, which encapsulates user-specified placement and routing constraints + * * * Overview * ======== - * This class contains functions that read in and store information from a constraints XML file. - * The XML file provides a partition list, with the names of the partitions, and each atom in the partition. - * It also specifies which regions the partitions should be placed in. Atoms cannot be placed in more than one partition. - * If an atom is assigned to more than one partition, the last partition is was assigned to will be the partition it is placed in. + * The VprConstraints class is used to load and manage user-specified constraints from an XML file. + * It includes instances of the UserRouteConstraints and UserPlaceConstraints classes, which hold routing and placement + * constraints, respectively. * * Related Classes * =============== - * The following definitions are useful to understanding this class: - * - * Partition: a grouping of atoms that are constrained to a portion of an FPGA - * See vpr/src/base/partition.h for more detail - * - * Region: the x and y bounds of a rectangular region, optionally including a subtile value, - * that atoms in a partition are constrained to - * See vpr/src/base/region.h for more detail - * - * PartitionRegion: the union of regions that a partition can be placed in - * See vpr/src/base/partition_region.h for more detail - * + * + * UserRouteConstraints: Stores routing constraints for global nets, specifying routing method and routing network name. + * See vpr/src/base/user_route_constraints.h for more detail. * + * UserPlaceConstraints: Stores block and region constraints for packing and placement stages. + * See vpr/src/base/user_place_constraints.h for more detail. */ - class VprConstraints { public: - /** - * @brief Store the id of a constrained atom with the id of the partition it belongs to - * - * @param blk_id The atom being stored - * @param part_id The partition the atom is being constrained to - */ - void add_constrained_atom(const AtomBlockId blk_id, const PartitionId part_id); - - /** - * @brief Return id of the partition the atom belongs to - * - * If an atom is not in a partition (unconstrained), PartitionId::INVALID() is returned. - * - * @param blk_id The atom for which the partition id is needed - */ - PartitionId get_atom_partition(AtomBlockId blk_id); - - /** - * @brief Store a partition - * - * @param part The partition being stored - */ - void add_partition(Partition part); /** - * @brief Return a partition - * - * @param part_id The id of the partition that is wanted + * @brief Get a mutable reference to the UserPlaceConstraints instance. */ - Partition get_partition(PartitionId part_id); + UserPlaceConstraints& mutable_place_constraints(); /** - * @brief Return all the atoms that belong to a partition - * - * @param part_id The id of the partition whose atoms are needed + * @brief Get a mutable reference to the UserRouteConstraints instance. */ - std::vector get_part_atoms(PartitionId part_id); + UserRouteConstraints& mutable_route_constraints(); /** - * @brief Returns the number of partitions in the object + * @brief Get a const reference to the UserPlaceConstraints instance. */ - int get_num_partitions(); + const UserPlaceConstraints& place_constraints() const; /** - * @brief Returns the PartitionRegion belonging to the specified Partition - * - * @param part_id The id of the partition whose PartitionRegion is needed + * @brief Get a const reference to the UserRouteConstraints instance. */ - PartitionRegion get_partition_pr(PartitionId part_id); + const UserRouteConstraints& route_constraints() const; /** * @brief add route constraint * * @param net_name the route constraint */ - void add_route_constraint(RouteConstraint rc); + void add_route_constraint(UserRouteConstraints rc); /** * @brief returns route constraint by index * * @param index the constraint index */ - const RouteConstraint get_route_constraint_by_idx(std::size_t index) const; + const UserRouteConstraints get_route_constraint_by_idx(std::size_t index) const; /** * @brief returns route constraint of a specific net * * @param net_name the net name */ - const RouteConstraint get_route_constraint_by_net_name(std::string net_name); + const UserRouteConstraints get_route_constraint_by_net_name(std::string net_name); /** * @brief returns number of route constraints @@ -117,23 +75,10 @@ class VprConstraints { int get_route_constraint_num(void) const; private: - /** - * Store all constrained atoms - */ - std::unordered_map constrained_atoms; - - /** - * Store all partitions - */ - vtr::vector partitions; + + UserRouteConstraints route_constraints_; + UserPlaceConstraints placement_constraints_; - /** - * store all route constraints - */ - std::unordered_map route_constraints_; }; -///@brief used to print floorplanning constraints data from a VprConstraints object -void print_constraints(FILE* fp, VprConstraints constraints); - #endif /* VPR_CONSTRAINTS_H */ diff --git a/vpr/src/base/vpr_constraints.xsd b/vpr/src/base/vpr_constraints.xsd index 2ed93b77347..704d084f381 100644 --- a/vpr/src/base/vpr_constraints.xsd +++ b/vpr/src/base/vpr_constraints.xsd @@ -60,17 +60,24 @@ - - + + + + + + + + + - - + + @@ -85,10 +92,11 @@ --> - + - + + diff --git a/vpr/src/base/vpr_constraints_reader.cpp b/vpr/src/base/vpr_constraints_reader.cpp index 1140e5269c6..9bb8dccf9bd 100644 --- a/vpr/src/base/vpr_constraints_reader.cpp +++ b/vpr/src/base/vpr_constraints_reader.cpp @@ -10,61 +10,35 @@ #include #include "vpr_constraints_reader.h" -#include "vtr_token.h" -void load_vpr_constraints_files(const char* read_vpr_constraints_name) { - vtr::ScopedStartFinishTimer timer("Loading VPR constraints file(s)"); +void load_vpr_constraints_file(const char* read_vpr_constraints_name) { + vtr::ScopedStartFinishTimer timer("Reading VPR constraints from " + std::string(read_vpr_constraints_name)); VprConstraintsSerializer reader; - // file name from arguments could be a serial of files, seperated by colon ":" - // at this point, caller has already checked that the required constraint file name is not emtpy - int num_tokens = 0, num_file_read = 0; - bool found_file = false; - t_token* tokens = GetTokensFromString(read_vpr_constraints_name, &num_tokens); - std::string in_tokens(""); - for (int i = 0; i < num_tokens; i++) { - if ((tokens[i].type == TOKEN_COLON)) { // end of one input file - found_file = true; - } else if (i == num_tokens - 1) { // end of inputs, append token anyway - in_tokens += std::string(tokens[i].data); - found_file = true; - } else { - in_tokens += std::string(tokens[i].data); - } - if (found_file) { - const char* file_name = in_tokens.c_str(); - if (vtr::check_file_name_extension(file_name, ".xml")) { - try { - std::ifstream file(file_name); - void* context; - uxsd::load_vpr_constraints_xml(reader, context, file_name, file); - } catch (pugiutil::XmlError& e) { - vpr_throw(VPR_ERROR_ROUTE, file_name, e.line(), "%s", e.what()); - } - } else { - VTR_LOG_WARN( - "VPR constraints file '%s' may be in incorrect format. " - "Expecting .xml format. Not reading file.\n", - file_name); - } - in_tokens.clear(); - num_file_read++; - found_file = false; + if (vtr::check_file_name_extension(read_vpr_constraints_name, ".xml")) { + try { + std::ifstream file(read_vpr_constraints_name); + void* context; + uxsd::load_vpr_constraints_xml(reader, context, read_vpr_constraints_name, file); + } catch (pugiutil::XmlError& e) { + vpr_throw(VPR_ERROR_ROUTE, read_vpr_constraints_name, e.line(), "%s", e.what()); } + } else { + VTR_LOG_WARN( + "VPR constraints file '%s' may be in incorrect format. " + "Expecting .xml format. Not reading file.\n", + read_vpr_constraints_name); } - VTR_LOG("Read in '%d' constraint file(s) successfully.\n", num_file_read); - freeTokens(tokens, num_tokens); //Update the floorplanning constraints in the floorplanning constraints context auto& floorplanning_ctx = g_vpr_ctx.mutable_floorplanning(); - floorplanning_ctx.constraints = reader.constraints_; + floorplanning_ctx.constraints = reader.constraints_.place_constraints(); - // update vpr constraints for routing auto& routing_ctx = g_vpr_ctx.mutable_routing(); - routing_ctx.constraints = reader.constraints_; - - VprConstraints ctx_constraints = floorplanning_ctx.constraints; + routing_ctx.constraints = reader.constraints_.route_constraints(); + + const auto& ctx_constraints = floorplanning_ctx.constraints; if (getEchoEnabled() && isEchoFileEnabled(E_ECHO_VPR_CONSTRAINTS)) { echo_constraints(getEchoFileName(E_ECHO_VPR_CONSTRAINTS), ctx_constraints); diff --git a/vpr/src/base/vpr_constraints_reader.h b/vpr/src/base/vpr_constraints_reader.h index 60aefc25b5b..9740825836d 100644 --- a/vpr/src/base/vpr_constraints_reader.h +++ b/vpr/src/base/vpr_constraints_reader.h @@ -1,10 +1,10 @@ /* Defines the function used to load a vpr constraints file written in XML format into vpr - * The functions loads up the VprConstraints, Partition, Region, and PartitionRegion data structures + * The functions loads up the data structures related to placement and routing constraints * according to the data provided in the XML file*/ #ifndef VPR_CONSTRAINTS_READER_H_ #define VPR_CONSTRAINTS_READER_H_ -void load_vpr_constraints_files(const char* read_vpr_constraints_name); +void load_vpr_constraints_file(const char* read_vpr_constraints_name); #endif /* VPR_CONSTRAINTS_READER_H_ */ diff --git a/vpr/src/base/vpr_constraints_serializer.h b/vpr/src/base/vpr_constraints_serializer.h index 13ceca72896..9ab4c3bd96f 100644 --- a/vpr/src/base/vpr_constraints_serializer.h +++ b/vpr/src/base/vpr_constraints_serializer.h @@ -2,20 +2,21 @@ #define VPR_CONSTRAINTS_SERIALIZER_H_ #include "region.h" -#include "route_constraint.h" #include "vpr_constraints.h" #include "partition.h" #include "partition_region.h" #include "echo_files.h" #include "constraints_load.h" #include "vtr_log.h" +#include "vtr_error.h" #include "globals.h" //for the g_vpr_ctx +#include "clock_modeling.h" #include "vpr_constraints_uxsdcxx_interface.h" /** * @file - * @brief The reading of vpr floorplanning constraints is now done via uxsdcxx and the 'vpr_constraints.xsd' file. + * @brief The reading of vpr constraints is now done via uxsdcxx and the 'vpr_constraints.xsd' file. * The interface between the generated code and VPR is provided by VprConstraintsBase, which is in the * file 'vpr/src/base/gen/vpr_constraints_uxsdcxx_interface.h'. * This file implements the virtual functions from VprConstraintsBase. @@ -70,7 +71,7 @@ struct VprConstraintsContextTypes : public uxsd::DefaultVprConstraintsContextTyp using AddRegionReadContext = Region; using PartitionReadContext = partition_info; using PartitionListReadContext = void*; - using SetGlobalSignalReadContext = RouteConstraint; + using SetGlobalSignalReadContext = std::pair; using GlobalRouteConstraintsReadContext = void*; using VprConstraintsReadContext = void*; using AddAtomWriteContext = void*; @@ -109,6 +110,18 @@ class VprConstraintsSerializer final : public uxsd::VprConstraintsBase * @@ -227,8 +240,8 @@ class VprConstraintsSerializer final : public uxsd::VprConstraintsBase regions = pr.get_partition_region(); + const PartitionRegion& pr = part_info.part.get_part_region(); + const std::vector& regions = pr.get_regions(); return regions.size(); } virtual inline Region get_partition_add_region(int n, partition_info& part_info) final { - PartitionRegion pr = part_info.part.get_part_region(); - std::vector regions = pr.get_partition_region(); + const PartitionRegion& pr = part_info.part.get_part_region(); + const std::vector& regions = pr.get_regions(); return regions[n]; } @@ -285,12 +298,12 @@ class VprConstraintsSerializer final : public uxsd::VprConstraintsBase atoms = constraints_.get_part_atoms(partid); + Partition part = constraints_.place_constraints().get_partition(partid); + std::vector atoms = constraints_.place_constraints().get_part_atoms(partid); partition_info part_info; part_info.part = part; @@ -313,33 +326,60 @@ class VprConstraintsSerializer final : public uxsd::VprConstraintsBase * - * + * * * */ - virtual inline const char* get_set_global_signal_name(RouteConstraint& rc) final { - temp_name_string_ = rc.net_name(); + + e_clock_modeling from_uxsd_route_model(uxsd::enum_route_model_type route_model) { + switch (route_model) { + case uxsd::enum_route_model_type::DEDICATED_NETWORK: + return e_clock_modeling::DEDICATED_NETWORK; + case uxsd::enum_route_model_type::ROUTE: + return e_clock_modeling::ROUTED_CLOCK; + case uxsd::enum_route_model_type::IDEAL: + return e_clock_modeling::IDEAL_CLOCK; + default: + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "Invalid route model %d", route_model); + } + } + + uxsd::enum_route_model_type to_uxsd_route_model(e_clock_modeling route_model) { + switch (route_model) { + case e_clock_modeling::DEDICATED_NETWORK: + return uxsd::enum_route_model_type::DEDICATED_NETWORK; + case e_clock_modeling::ROUTED_CLOCK: + return uxsd::enum_route_model_type::ROUTE; + case e_clock_modeling::IDEAL_CLOCK: + return uxsd::enum_route_model_type::IDEAL; + default: + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "Invalid route model %d", route_model); + } + } + + virtual inline const char* get_set_global_signal_name(std::pair& rc) final { + temp_name_string_ = rc.first; return temp_name_string_.c_str(); } virtual inline void set_set_global_signal_name(const char* name, void*& /*ctx*/) final { std::string net_name = std::string(name); - loaded_route_constraint.set_net_name(net_name); + loaded_route_constraint.first = net_name; return; } - virtual inline const char* get_set_global_signal_route_model(RouteConstraint& rc) final { - temp_name_string_ = rc.route_model(); - return temp_name_string_.c_str(); + virtual inline uxsd::enum_route_model_type get_set_global_signal_route_model(std::pair& rc) final { + return to_uxsd_route_model(rc.second.route_model()); } - virtual inline void set_set_global_signal_route_model(const char* route_model, void*& /*ctx*/) final { - loaded_route_constraint.set_route_model(std::string(route_model)); - loaded_route_constraint.set_is_valid(true); + virtual inline void set_set_global_signal_route_model(uxsd::enum_route_model_type route_model, void*& /*ctx*/) final { + loaded_route_constraint.second.set_route_model(from_uxsd_route_model(route_model)); } - virtual inline const char* get_set_global_signal_type(RouteConstraint& rc) final { - temp_name_string_ = rc.net_type(); + virtual inline const char* get_set_global_signal_network_name(std::pair& rc) final { + temp_name_string_ = rc.second.network_name(); return temp_name_string_.c_str(); } - virtual inline void set_set_global_signal_type(const char* type, void*& /*ctx*/) final { - loaded_route_constraint.set_net_type(std::string(type)); + virtual inline void set_set_global_signal_network_name(const char* network_name, void*& /*ctx*/) final { + loaded_route_constraint.second.set_network_name(std::string(network_name)); } /** Generated for complex type "global_route_constraints": @@ -350,25 +390,50 @@ class VprConstraintsSerializer final : public uxsd::VprConstraintsBase */ virtual inline void preallocate_global_route_constraints_set_global_signal(void*& /*ctx*/, size_t /*size*/) final {} - virtual inline void* add_global_route_constraints_set_global_signal(void*& /*ctx*/) final { + virtual inline void* add_global_route_constraints_set_global_signal(void*& ctx, uxsd::enum_route_model_type route_model) final { + reset_loaded_route_constrints(); + set_set_global_signal_route_model(route_model, ctx); return nullptr; } virtual inline void finish_global_route_constraints_set_global_signal(void*& /*ctx*/) final { - constraints_.add_route_constraint(loaded_route_constraint); + if(loaded_route_constraint.second.route_model() == e_clock_modeling::DEDICATED_NETWORK + && loaded_route_constraint.second.network_name() == "INVALID"){ + VPR_FATAL_ERROR(VPR_ERROR_OTHER, + "Invalid routing constraint for net \"%s\". The network name has to be specified when routing model is set to \"dedicated_network\".\n", loaded_route_constraint.first.c_str()); + } + constraints_.mutable_route_constraints().add_route_constraint(loaded_route_constraint.first, loaded_route_constraint.second); } virtual inline size_t num_global_route_constraints_set_global_signal(void*& /*ctx*/) final { - return constraints_.get_route_constraint_num(); + return constraints_.route_constraints().get_num_route_constraints(); + } + virtual inline std::pair get_global_route_constraints_set_global_signal(int n, void*& /*ctx*/) final { + return constraints_.route_constraints().get_route_constraint_by_idx((std::size_t)n); + } + + virtual inline void* init_vpr_constraints_global_route_constraints(void*& /*ctx*/) final { + return nullptr; } - virtual inline RouteConstraint get_global_route_constraints_set_global_signal(int n, void*& /*ctx*/) final { - return constraints_.get_route_constraint_by_idx((std::size_t)n); + + virtual inline void finish_vpr_constraints_global_route_constraints(void*& /*ctx*/) final {} + + virtual inline void* get_vpr_constraints_global_route_constraints(void*& /*ctx*/) final { + return nullptr; + } + + virtual inline bool has_vpr_constraints_global_route_constraints(void*& /*ctx*/){ + if(constraints_.route_constraints().get_num_route_constraints() > 0) + return true; + else + return false; } + /** Generated for complex type "vpr_constraints": * - * + * * * - * + * * * */ @@ -376,58 +441,31 @@ class VprConstraintsSerializer final : public uxsd::VprConstraintsBase 0) + return true; + else + return false; } - virtual void finish_load() final { - return; } //temp data for writes @@ -448,7 +486,7 @@ class VprConstraintsSerializer final : public uxsd::VprConstraintsBase loaded_route_constraint; //temp string used when a method must return a const char* std::string temp_ = "vpr"; diff --git a/vpr/src/base/vpr_constraints_writer.cpp b/vpr/src/base/vpr_constraints_writer.cpp index 64fb0b3fad5..b1e50917ae1 100644 --- a/vpr/src/base/vpr_constraints_writer.cpp +++ b/vpr/src/base/vpr_constraints_writer.cpp @@ -20,50 +20,6 @@ #include "region.h" #include "re_cluster_util.h" -void write_vpr_constraints(t_vpr_setup& vpr_setup) { - auto& filename_opts = vpr_setup.FileNameOpts; - if (!filename_opts.write_vpr_constraints_file.empty()) { - std::string file_name = filename_opts.write_vpr_constraints_file; - if (vtr::check_file_name_extension(file_name.c_str(), ".xml")) { - VprConstraints constraints; - - // update constraints with place info - // this is to align to original place/partion constraint behavior - const auto& placer_opts = vpr_setup.PlacerOpts; - int horizontal_partitions = placer_opts.floorplan_num_horizontal_partitions, vertical_partitions = placer_opts.floorplan_num_vertical_partitions; - if (horizontal_partitions != 0 && vertical_partitions != 0) { - setup_vpr_floorplan_constraints_cutpoints(constraints, horizontal_partitions, vertical_partitions); - } else { - setup_vpr_floorplan_constraints_one_loc(constraints, placer_opts.place_constraint_expand, placer_opts.place_constraint_subtile); - } - - // update route constraints - for (int i = 0; i < g_vpr_ctx.routing().constraints.get_route_constraint_num(); i++) { - RouteConstraint rc = g_vpr_ctx.routing().constraints.get_route_constraint_by_idx(i); - // note: route constraints with regexpr in input constraint file - // is now replaced with the real net name and will not be written - // into output file - if (rc.is_valid()) { - constraints.add_route_constraint(rc); - } - } - - // VprConstraintsSerializer writer(g_vpr_ctx.routing().constraints); - VprConstraintsSerializer writer(constraints); - std::fstream fp; - fp.open(file_name.c_str(), std::fstream::out | std::fstream::trunc); - fp.precision(std::numeric_limits::max_digits10); - void* context; - uxsd::write_vpr_constraints_xml(writer, context, fp); - } else { - VPR_FATAL_ERROR(VPR_ERROR_ROUTE, - "Unknown extension on output %s", - file_name.c_str()); - } - } - return; -} - void write_vpr_floorplan_constraints(const char* file_name, int expand, bool subtile, int horizontal_partitions, int vertical_partitions) { VprConstraints constraints; @@ -99,8 +55,7 @@ void setup_vpr_floorplan_constraints_one_loc(VprConstraints& constraints, int ex * The subtile can also optionally be set in the PartitionRegion, based on the value passed in by the user. */ for (auto blk_id : cluster_ctx.clb_nlist.blocks()) { - std::string part_name; - part_name = cluster_ctx.clb_nlist.block_name(blk_id); + const std::string& part_name = cluster_ctx.clb_nlist.block_name(blk_id); PartitionId partid(part_id); Partition part; @@ -109,7 +64,7 @@ void setup_vpr_floorplan_constraints_one_loc(VprConstraints& constraints, int ex PartitionRegion pr; Region reg; - auto loc = place_ctx.block_locs[blk_id].loc; + const auto& loc = place_ctx.block_locs[blk_id].loc; reg.set_region_rect({loc.x - expand, loc.y - expand, @@ -123,12 +78,12 @@ void setup_vpr_floorplan_constraints_one_loc(VprConstraints& constraints, int ex pr.add_to_part_region(reg); part.set_part_region(pr); - constraints.add_partition(part); + constraints.mutable_place_constraints().add_partition(part); std::unordered_set* atoms = cluster_to_atoms(blk_id); for (auto atom_id : *atoms) { - constraints.add_constrained_atom(atom_id, partid); + constraints.mutable_place_constraints().add_constrained_atom(atom_id, partid); } part_id++; } @@ -240,24 +195,24 @@ void setup_vpr_floorplan_constraints_cutpoints(VprConstraints& constraints, int } int num_partitions = 0; - for (auto region : region_atoms) { + for (const auto& region : region_atoms) { Partition part; PartitionId partid(num_partitions); std::string part_name = "Part" + std::to_string(num_partitions); const auto reg_coord = region.first.get_region_rect(); create_partition(part, part_name, {reg_coord.xmin, reg_coord.ymin, reg_coord.xmax, reg_coord.ymax, reg_coord.layer_num}); - constraints.add_partition(part); + constraints.mutable_place_constraints().add_partition(part); - for (unsigned int k = 0; k < region.second.size(); k++) { - constraints.add_constrained_atom(region.second[k], partid); + for (auto blk_id : region.second) { + constraints.mutable_place_constraints().add_constrained_atom(blk_id, partid); } num_partitions++; } } -void create_partition(Partition& part, std::string part_name, const RegionRectCoord& region_cord) { +void create_partition(Partition& part, const std::string& part_name, const RegionRectCoord& region_cord) { part.set_name(part_name); PartitionRegion part_pr; Region part_region; diff --git a/vpr/src/base/vpr_constraints_writer.h b/vpr/src/base/vpr_constraints_writer.h index 131c842328a..cf6b495be9e 100644 --- a/vpr/src/base/vpr_constraints_writer.h +++ b/vpr/src/base/vpr_constraints_writer.h @@ -45,7 +45,19 @@ void write_vpr_constraints(t_vpr_setup& vpr_setup); */ void write_vpr_floorplan_constraints(const char* file_name, int expand, bool subtile, int horizontal_partitions, int vertical_partitions); -//Generate constraints which lock all blocks to one location. +/** + * @brief Populates VprConstraints by creating a partition for each clustered block. + * All atoms in the clustered block are assigned to the same partition. The created partition + * for each clustered block would include the current location of the clustered block. The + * partition is expanded from four sides by "expand" blocks. + * + * @param constraints The VprConstraints to be populated. + * @param expand The amount the floorplan region will be expanded around the current + * x, y location of the block. Ex. if location is (1, 1) and expand = 1, + * the floorplan region will be from (0, 0) to (2, 2). + * @param subtile Specifies whether to write out the constraint regions with or without + * subtile values. + */ void setup_vpr_floorplan_constraints_one_loc(VprConstraints& constraints, int expand, bool subtile); /* Generate constraints which divide the grid into partition according to the horizontal and vertical partition values passed in @@ -53,6 +65,6 @@ void setup_vpr_floorplan_constraints_one_loc(VprConstraints& constraints, int ex */ void setup_vpr_floorplan_constraints_cutpoints(VprConstraints& constraints, int horizontal_cutpoints, int vertical_cutpoints); -void create_partition(Partition& part, std::string part_name, const RegionRectCoord& region_cord); +void create_partition(Partition& part, const std::string& part_name, const RegionRectCoord& region_cord); #endif /* VPR_SRC_BASE_VPR_CONSTRAINTS_WRITER_H_ */ diff --git a/vpr/src/base/vpr_context.h b/vpr/src/base/vpr_context.h index a77f7bb844c..15889ff79c9 100644 --- a/vpr/src/base/vpr_context.h +++ b/vpr/src/base/vpr_context.h @@ -32,6 +32,17 @@ #include "noc_storage.h" #include "noc_traffic_flows.h" #include "noc_routing.h" +#include "tatum/report/TimingPath.hpp" + +#ifndef NO_SERVER + +#include "gateio.h" +#include "taskresolver.h" + +class SetupHoldTimingInfo; +class PostClusterDelayCalculator; + +#endif /* NO_SERVER */ /** * @brief A Context is collection of state relating to a particular part of VPR @@ -233,14 +244,6 @@ struct DeviceContext : public Context { std::vector> clock_networks; std::vector> clock_connections; - /** - * @brief rr_node idx that connects to the input of all clock network wires - * - * Useful for two stage clock routing - * XXX: currently only one place to source the clock networks so only storing - * a single value - */ - int virtual_clock_network_root_idx; /** * @brief switch_fanin_remap is only used for printing out switch fanin stats * (the -switch_stats option) @@ -361,6 +364,12 @@ struct ClusteringHelperContext : public Context { // A vector of unordered_sets of AtomBlockIds that are inside each clustered block [0 .. num_clustered_blocks-1] // unordered_set for faster insertion/deletion during the iterative improvement process of packing vtr::vector> atoms_lookup; + + /** Stores the NoC group ID of each atom block. Atom blocks that belong + * to different NoC groups can't be clustered with each other into the + * same clustered block.*/ + vtr::vector atom_noc_grp_id; + ~ClusteringHelperContext() { delete[] primitives_list; } @@ -487,9 +496,9 @@ struct RoutingContext : public Context { cached_router_lookahead_; /** - * @brief Routing constraints, read only + * @brief User specified routing constraints */ - VprConstraints constraints; + UserRouteConstraints constraints; }; /** @@ -507,7 +516,7 @@ struct FloorplanningContext : public Context { * * The constraints are input into vpr and do not change. */ - VprConstraints constraints; + UserPlaceConstraints constraints; /** * @brief Constraints for each cluster @@ -526,7 +535,7 @@ struct FloorplanningContext : public Context { /** * @brief State of the Network on Chip (NoC) * - * This should only contain data structures related to descrbing the + * This should only contain data structures related to describing the * NoC within the device. */ struct NocContext : public Context { @@ -563,6 +572,61 @@ struct NocContext : public Context { std::unique_ptr noc_flows_router; }; +#ifndef NO_SERVER +/** + * @brief State relating to server mode + * + * This should contain only data structures that + * relate to the vpr server state. + */ +struct ServerContext : public Context { + /** + * @brief \ref server::GateIO. + */ + server::GateIO gate_io; + + /** + * @brief \ref server::TaskResolver. + */ + server::TaskResolver task_resolver; + + /** + * @brief Stores the critical path items. + * + * This value is used when rendering the critical path by the selected index. + * Once calculated upon request, it provides the value for a specific critical path + * to be rendered upon user request. + */ + std::vector crit_paths; + + /** + * @brief Stores the selected critical path elements. + * + * This value is used to render the selected critical path elements upon client request. + * The std::map key plays role of path index, where the element indexes are stored as std::set. + */ + std::map> crit_path_element_indexes; + + /** + * @brief Stores the flag indicating whether to draw the critical path contour. + * + * If True, the entire path will be rendered with some level of transparency, regardless of the selection of path elements. However, selected path elements will be drawn in full color. + * This feature is helpful in visual debugging, to see how the separate path elements are mapped into the whole path. + */ + bool draw_crit_path_contour = false; + + /** + * @brief Reference to the SetupHoldTimingInfo calculated during the routing stage. + */ + std::shared_ptr timing_info; + + /** + * @brief Reference to the PostClusterDelayCalculator calculated during the routing stage. + */ + std::shared_ptr routing_delay_calc; +}; +#endif /* NO_SERVER */ + /** * @brief This object encapsulates VPR's state. * @@ -646,6 +710,11 @@ class VprContext : public Context { const PackingMultithreadingContext& packing_multithreading() const { return packing_multithreading_; } PackingMultithreadingContext& mutable_packing_multithreading() { return packing_multithreading_; } +#ifndef NO_SERVER + const ServerContext& server() const { return server_; } + ServerContext& mutable_server() { return server_; } +#endif /* NO_SERVER */ + private: DeviceContext device_; @@ -662,6 +731,10 @@ class VprContext : public Context { FloorplanningContext constraints_; NocContext noc_; +#ifndef NO_SERVER + ServerContext server_; +#endif /* NO_SERVER */ + PackingMultithreadingContext packing_multithreading_; }; diff --git a/vpr/src/base/vpr_types.cpp b/vpr/src/base/vpr_types.cpp index ed3fc40f9d0..475a9a30d19 100644 --- a/vpr/src/base/vpr_types.cpp +++ b/vpr/src/base/vpr_types.cpp @@ -123,7 +123,7 @@ t_ext_pin_util_targets& t_ext_pin_util_targets::operator=(t_ext_pin_util_targets return *this; } -t_ext_pin_util t_ext_pin_util_targets::get_pin_util(const std::string& block_type_name) const { +t_ext_pin_util t_ext_pin_util_targets::get_pin_util(std::string_view block_type_name) const { auto itr = overrides_.find(block_type_name); if (itr != overrides_.end()) { return itr->second; @@ -248,7 +248,7 @@ void t_pack_high_fanout_thresholds::set(const std::string& block_type_name, int overrides_[block_type_name] = threshold; } -int t_pack_high_fanout_thresholds::get_threshold(const std::string& block_type_name) const { +int t_pack_high_fanout_thresholds::get_threshold(std::string_view block_type_name) const { auto itr = overrides_.find(block_type_name); if (itr != overrides_.end()) { return itr->second; diff --git a/vpr/src/base/vpr_types.h b/vpr/src/base/vpr_types.h index 3646ee4d03e..cbbe0cd560d 100644 --- a/vpr/src/base/vpr_types.h +++ b/vpr/src/base/vpr_types.h @@ -28,6 +28,7 @@ #include #include #include +#include #include "arch_types.h" #include "atom_netlist_fwd.h" #include "clustered_netlist_fwd.h" @@ -166,11 +167,12 @@ enum class e_cluster_seed { BLEND2 }; -enum e_block_pack_status { +enum class e_block_pack_status { BLK_PASSED, BLK_FAILED_FEASIBLE, BLK_FAILED_ROUTE, BLK_FAILED_FLOORPLANNING, + BLK_FAILED_NOC_GROUP, BLK_STATUS_UNDEFINED }; @@ -195,7 +197,7 @@ class t_ext_pin_util_targets { t_ext_pin_util_targets& operator=(t_ext_pin_util_targets&& other) noexcept; ///@brief Returns the input pin util of the specified block (or default if unspecified) - t_ext_pin_util get_pin_util(const std::string& block_type_name) const; + t_ext_pin_util get_pin_util(std::string_view block_type_name) const; ///@brief Returns a string describing input/output pin utilization targets std::string to_string() const; @@ -215,7 +217,7 @@ class t_ext_pin_util_targets { private: t_ext_pin_util defaults_; - std::map overrides_; + std::map> overrides_; }; class t_pack_high_fanout_thresholds { @@ -226,7 +228,7 @@ class t_pack_high_fanout_thresholds { t_pack_high_fanout_thresholds& operator=(t_pack_high_fanout_thresholds&& other) noexcept; ///@brief Returns the high fanout threshold of the specifi ed block - int get_threshold(const std::string& block_type_name) const; + int get_threshold(std::string_view block_type_name) const; ///@brief Returns a string describing high fanout thresholds for different block types std::string to_string() const; @@ -246,7 +248,7 @@ class t_pack_high_fanout_thresholds { private: int default_; - std::map overrides_; + std::map> overrides_; }; /* these are defined later, but need to declare here because it is used */ @@ -713,6 +715,9 @@ struct hash { }; } // namespace std +/// @brief Sentinel value for indicating that a block does not have a valid x location, used to check whether a block has been placed +static constexpr int INVALID_X = -1; + /** * @brief A placement location coordinate * @@ -901,6 +906,7 @@ struct t_file_name_opts { std::string CircuitName; std::string CircuitFile; std::string NetFile; + std::string FlatPlaceFile; std::string PlaceFile; std::string RouteFile; std::string FPGAInterchangePhysicalFile; @@ -910,6 +916,8 @@ struct t_file_name_opts { std::string out_file_prefix; std::string read_vpr_constraints_file; std::string write_vpr_constraints_file; + std::string write_constraints_file; + std::string write_flat_place_file; std::string write_block_usage; bool verify_file_digests; }; @@ -974,6 +982,7 @@ struct t_packer_opts { bool use_attraction_groups; int pack_num_moves; std::string pack_move_type; + bool load_flat_placement; }; /** @@ -1403,6 +1412,7 @@ struct t_router_opts { float first_iter_pres_fac; float initial_pres_fac; float pres_fac_mult; + float max_pres_fac; float acc_fac; float bend_cost; int max_router_iterations; @@ -1494,16 +1504,22 @@ struct t_analysis_opts { // used to store NoC specific options, when supplied as an input by the user struct t_noc_opts { - bool noc; ///* PackerRRGraph; std::vector Segments; ///show_congestion == DRAW_CONGESTED_WITH_NETS) { auto rr_node_nets = collect_rr_node_nets(); @@ -660,6 +660,10 @@ void draw_partial_route(const std::vector& rr_nodes_to_draw, ezgl::ren RRNodeId prev_node = rr_nodes_to_draw[i - 1]; auto prev_type = rr_graph.node_type(RRNodeId(prev_node)); + if (!is_inter_cluster_node(rr_graph, prev_node) || !is_inter_cluster_node(rr_graph, inode)) { + continue; + } + auto iedge = find_edge(prev_node, inode); auto switch_type = rr_graph.edge_switch(RRNodeId(prev_node), iedge); @@ -773,6 +777,10 @@ bool is_edge_valid_to_draw(RRNodeId current_node, RRNodeId prev_node) { int current_node_layer = rr_graph.node_layer(current_node); int prev_node_layer = rr_graph.node_layer(prev_node); + if (!(is_inter_cluster_node(rr_graph, current_node)) || !(is_inter_cluster_node(rr_graph, prev_node))) { + return false; + } + if (current_node_layer != prev_node_layer) { if (draw_state->cross_layer_display.visible && draw_state->draw_layer_display[current_node_layer].visible && draw_state->draw_layer_display[prev_node_layer].visible) { return true; //if both layers are enabled and cross layer connections are enabled @@ -1103,6 +1111,81 @@ void draw_crit_path(ezgl::renderer* g) { } } +/** + * @brief Draw critical path elements. + * + * This function draws critical path elements based on the provided timing paths + * and indexes map. It is primarily used in server mode, where items are drawn upon request. + */ +void draw_crit_path_elements(const std::vector& paths, const std::map>& indexes, bool draw_crit_path_contour, ezgl::renderer* g) { + t_draw_state* draw_state = get_draw_state_vars(); + const ezgl::color contour_color{0, 0, 0, 40}; + + auto draw_flyline_timing_edge_helper_fn = [](ezgl::renderer* renderer, const ezgl::color& color, ezgl::line_dash line_style, int line_width, float delay, + const tatum::NodeId& prev_node, const tatum::NodeId& node, bool skip_draw_delays=false) { + renderer->set_color(color); + renderer->set_line_dash(line_style); + renderer->set_line_width(line_width); + draw_flyline_timing_edge(tnode_draw_coord(prev_node), + tnode_draw_coord(node), delay, renderer, skip_draw_delays); + + renderer->set_line_dash(ezgl::line_dash::none); + renderer->set_line_width(0); + }; + + for (const auto& [path_index, element_indexes]: indexes) { + if (path_index < paths.size()) { + const tatum::TimingPath& path = paths[path_index]; + + //Walk through the timing path drawing each edge + tatum::NodeId prev_node; + float prev_arr_time = std::numeric_limits::quiet_NaN(); + int element_counter = 0; + for (const tatum::TimingPathElem& elem : path.data_arrival_path().elements()) { + bool draw_current_element = element_indexes.empty() || element_indexes.find(element_counter) != element_indexes.end(); + + // draw element + tatum::NodeId node = elem.node(); + float arr_time = elem.tag().time(); + + //We draw each 'edge' in a different color, this allows users to identify the stages and + //any routing which corresponds to the edge + // + //We pick colors from the kelly max-contrast list, for long paths there may be repeats + ezgl::color color = kelly_max_contrast_colors[element_counter % kelly_max_contrast_colors.size()]; + + if (prev_node) { + float delay = arr_time - prev_arr_time; + if ((draw_state->show_crit_path == DRAW_CRIT_PATH_FLYLINES) || (draw_state->show_crit_path == DRAW_CRIT_PATH_FLYLINES_DELAYS)) { + if (draw_current_element) { + draw_flyline_timing_edge_helper_fn(g, color, ezgl::line_dash::none, /*line_width*/4, delay, prev_node, node); + } else if (draw_crit_path_contour) { + draw_flyline_timing_edge_helper_fn(g, contour_color, ezgl::line_dash::none, /*line_width*/1, delay, prev_node, node, /*skip_draw_delays*/true); + } + } else { + VTR_ASSERT(draw_state->show_crit_path != DRAW_NO_CRIT_PATH); + + if (draw_current_element) { + //Draw the routed version of the timing edge + draw_routed_timing_edge_connection(prev_node, node, color, g); + + draw_flyline_timing_edge_helper_fn(g, color, ezgl::line_dash::asymmetric_5_3, /*line_width*/3, delay, prev_node, node); + } else if (draw_crit_path_contour) { + draw_flyline_timing_edge_helper_fn(g, color, ezgl::line_dash::asymmetric_5_3, /*line_width*/3, delay, prev_node, node, /*skip_draw_delays*/true); + } + } + } + + prev_node = node; + prev_arr_time = arr_time; + // end draw element + + element_counter++; + } + } + } +} + int get_timing_path_node_layer_num(tatum::NodeId node) { auto& place_ctx = g_vpr_ctx.placement(); auto& atom_ctx = g_vpr_ctx.atom(); @@ -1127,7 +1210,7 @@ bool is_flyline_valid_to_draw(int src_layer, int sink_layer) { } //Draws critical path shown as flylines. -void draw_flyline_timing_edge(ezgl::point2d start, ezgl::point2d end, float incr_delay, ezgl::renderer* g) { +void draw_flyline_timing_edge(ezgl::point2d start, ezgl::point2d end, float incr_delay, ezgl::renderer* g, bool skip_draw_delays/*=false*/) { g->draw_line(start, end); draw_triangle_along_line(g, start, end, 0.95, 40 * DEFAULT_ARROW_SIZE); draw_triangle_along_line(g, start, end, 0.05, 40 * DEFAULT_ARROW_SIZE); @@ -1135,7 +1218,8 @@ void draw_flyline_timing_edge(ezgl::point2d start, ezgl::point2d end, float incr bool draw_delays = (get_draw_state_vars()->show_crit_path == DRAW_CRIT_PATH_FLYLINES_DELAYS || get_draw_state_vars()->show_crit_path - == DRAW_CRIT_PATH_ROUTING_DELAYS); + == DRAW_CRIT_PATH_ROUTING_DELAYS) + && !skip_draw_delays; if (draw_delays) { //Determine the strict bounding box based on the lines start/end float min_x = std::min(start.x, end.x); diff --git a/vpr/src/draw/draw_basic.h b/vpr/src/draw/draw_basic.h index 73082b158ba..d939b43b8ec 100644 --- a/vpr/src/draw/draw_basic.h +++ b/vpr/src/draw/draw_basic.h @@ -106,6 +106,18 @@ void draw_routing_util(ezgl::renderer* g); */ void draw_crit_path(ezgl::renderer* g); +/** + * @brief Draw critical path elements. + * + * This function draws critical path elements based on the provided timing paths + * and indexes map. It is primarily used in server mode, where items are drawn upon request. + * + * @param paths The vector of TimingPath objects representing the critical paths. + * @param indexes The map of sets, where the map keys are path indices in std::vector, and each set contains the indices of the data_arrival_path elements ( @ref tatum::TimingPath ) to draw. + * @param g Pointer to the ezgl::renderer object on which the elements will be drawn. + */ +void draw_crit_path_elements(const std::vector& paths, const std::map>& indexes, bool draw_crit_path_contour, ezgl::renderer* g); + /** * @brief Checks whether a flyline should be drawn or not based on the layer control settings in the UI * @param src_layer @@ -118,7 +130,7 @@ void draw_crit_path(ezgl::renderer* g); bool is_flyline_valid_to_draw(int src_layer, int sink_layer); /* Draws critical path shown as flylines. Takes in start and end coordinates, time delay, & renderer.*/ -void draw_flyline_timing_edge(ezgl::point2d start, ezgl::point2d end, float incr_delay, ezgl::renderer* g); +void draw_flyline_timing_edge(ezgl::point2d start, ezgl::point2d end, float incr_delay, ezgl::renderer* g, bool skip_draw_delays=false); /* Collects all the drawing locations associated with the timing edge between start and end. * Only traces interconnect edges in detail, and treats all others as flylines. diff --git a/vpr/src/draw/draw_floorplanning.cpp b/vpr/src/draw/draw_floorplanning.cpp index 126bbd63212..d3e0ca520e7 100644 --- a/vpr/src/draw/draw_floorplanning.cpp +++ b/vpr/src/draw/draw_floorplanning.cpp @@ -6,7 +6,7 @@ #include "globals.h" #include "atom_netlist.h" #include "draw_floorplanning.h" -#include "vpr_constraints.h" +#include "user_place_constraints.h" #include "draw_color.h" #include "draw.h" #include "draw_rr.h" @@ -84,9 +84,9 @@ static void highlight_partition(ezgl::renderer* g, int partitionID, int alpha) { auto constraints = floorplanning_ctx.constraints; t_draw_coords* draw_coords = get_draw_coords_vars(); - auto partition = constraints.get_partition((PartitionId)partitionID); - auto& partition_region = partition.get_part_region(); - auto regions = partition_region.get_partition_region(); + const auto& partition = constraints.get_partition((PartitionId)partitionID); + const auto& partition_region = partition.get_part_region(); + const auto& regions = partition_region.get_regions(); bool name_drawn = false; ezgl::color partition_color = kelly_max_contrast_colors_no_black[partitionID % (kelly_max_contrast_colors_no_black.size())]; @@ -116,13 +116,13 @@ static void highlight_partition(ezgl::renderer* g, int partitionID, int alpha) { if (!name_drawn) { g->set_font_size(10); - std::string partition_name = partition.get_name(); + const std::string& partition_name = partition.get_name(); g->set_color(partition_color, 230); g->draw_text( on_screen_rect.center(), - partition_name.c_str(), + partition_name, on_screen_rect.width() - 10, on_screen_rect.height() - 10); @@ -165,12 +165,11 @@ void draw_constrained_atoms(ezgl::renderer* g) { for (int partitionID = 0; partitionID < num_partitions; partitionID++) { auto atoms = constraints.get_part_atoms((PartitionId)partitionID); - for (size_t j = 0; j < atoms.size(); j++) { - AtomBlockId const& const_atom = atoms[j]; - if (atom_ctx.lookup.atom_pb(const_atom) != nullptr) { - const t_pb* pb = atom_ctx.lookup.atom_pb(const_atom); + for (const auto atom_id : atoms) { + if (atom_ctx.lookup.atom_pb(atom_id) != nullptr) { + const t_pb* pb = atom_ctx.lookup.atom_pb(atom_id); auto color = kelly_max_contrast_colors_no_black[partitionID % (kelly_max_contrast_colors_no_black.size())]; - ClusterBlockId clb_index = atom_ctx.lookup.atom_clb(atoms[j]); + ClusterBlockId clb_index = atom_ctx.lookup.atom_clb(atom_id); auto type = cluster_ctx.clb_nlist.block_type(clb_index); draw_internal_pb(clb_index, cluster_ctx.clb_nlist.block_pb(clb_index), pb, ezgl::rectangle({0, 0}, 0, 0), type, color, g); @@ -232,7 +231,7 @@ static void draw_internal_pb(const ClusterBlockId clb_index, t_pb* current_pb, c g->draw_text( abs_bbox.center(), - blk_tag.c_str(), + blk_tag, abs_bbox.width() + 10, abs_bbox.height() + 10); @@ -307,7 +306,7 @@ static GtkTreeModel* create_and_fill_model(void) { for (int partitionID = 0; partitionID < num_partitions; partitionID++) { auto atoms = constraints.get_part_atoms((PartitionId)partitionID); - auto partition = constraints.get_partition((PartitionId)partitionID); + const auto& partition = constraints.get_partition((PartitionId)partitionID); std::string partition_name(partition.get_name() + " (" + std::to_string(atoms.size()) + " primitives)"); @@ -318,8 +317,7 @@ static GtkTreeModel* create_and_fill_model(void) { COL_NAME, partition_name.c_str(), -1); - for (size_t j = 0; j < atoms.size(); j++) { - AtomBlockId const& const_atom = atoms[j]; + for (auto const_atom : atoms) { std::string atom_name = (atom_ctx.lookup.atom_pb(const_atom))->name; gtk_tree_store_append(store, &child_iter, &iter); gtk_tree_store_set(store, &child_iter, diff --git a/vpr/src/draw/draw_noc.cpp b/vpr/src/draw/draw_noc.cpp index f664562f88a..83b45d152eb 100644 --- a/vpr/src/draw/draw_noc.cpp +++ b/vpr/src/draw/draw_noc.cpp @@ -34,8 +34,8 @@ void draw_noc(ezgl::renderer* g) { return; } - // check that the NoC tile has a capacity greater than 0 (can we assume it always will?) and if not then we cant draw anythign as the NoC tile wont be drawn - /* since the vector of routers all have a reference positions on the grid to the corresponding physical tile, just use the first router in the vector and get its position, then use this to get the capcity of a noc router tile + // check that the NoC tile has a capacity greater than 0 (can we assume it always will?) and if not then we cant draw anything as the NoC tile won't be drawn + /* since the vector of routers all have a reference positions on the grid to the corresponding physical tile, just use the first router in the vector and get its position, then use this to get the capacity of a noc router tile */ const auto& type = device_ctx.grid.get_physical_type({router_list.begin()->get_router_grid_position_x(), router_list.begin()->get_router_grid_position_y(), @@ -67,8 +67,6 @@ void draw_noc(ezgl::renderer* g) { draw_noc_links(g, noc_router_logical_type, noc_link_colors, noc_connection_marker_bbox, list_of_noc_link_shift_directions); draw_noc_connection_marker(g, router_list, noc_connection_marker_bbox); - - return; } /* @@ -78,55 +76,42 @@ void draw_noc_usage(vtr::vector& noc_link_colors) { t_draw_state* draw_state = get_draw_state_vars(); auto& noc_ctx = g_vpr_ctx.noc(); - // get the maximum badnwidth per link - double max_noc_link_bandwidth = noc_ctx.noc_model.get_noc_link_bandwidth(); - // check to see if a color map was already created previously if (draw_state->noc_usage_color_map == nullptr) { - // we havent created a color map yet for the noc link usage, so create it here + // we haven't created a color map yet for the noc link usage, so create it here // the color map creates a color spectrum that gradually changes from a dark to light color. Where a dark color represents low noc link usage (low bandwidth) and a light color represents high noc link usage (high bandwidth) // The color map needs a min and max value to generate the color range. // The noc usage is calculated by taking the ratio of the links current bandwidth over the maximum allowable bandwidth - // for the NoC, the min value is 0, since you cannot go lower than 0 badnwidth. + // for the NoC, the min value is 0, since you cannot go lower than 0 bandwidth. // The max value is going to be 1 and represents the case where the link is used to full capacity on the noc link (as provided by the user) draw_state->noc_usage_color_map = std::make_shared(0.0, 1.0); } - // get the list of links in the NoC - const vtr::vector& noc_link_list = noc_ctx.noc_model.get_noc_links(); - - // store each links bandwidth usage - double link_bandwidth_usage; - // represents the color to draw each noc link ezgl::color current_noc_link_color; - // now we need to determine the colors for each link - for (int link = 0; link < (int)noc_link_list.size(); link++) { - // get the current link id - NocLinkId link_id(link); + for (const auto& noc_link : noc_ctx.noc_model.get_noc_links()) { + NocLinkId link_id = noc_link.get_link_id(); - // only update the color of the link if it wasnt updated previously + // only update the color of the link if it wasn't updated previously if (noc_link_colors[link_id] == ezgl::BLACK) { // if we are here then the link was not updated previously, so assign the color here //get the current link bandwidth usage (ratio calculation) - link_bandwidth_usage = (noc_link_list[link_id].get_bandwidth_usage()) / max_noc_link_bandwidth; + double link_bandwidth_usage_ratio = (noc_link.get_bandwidth_usage()) / noc_link.get_bandwidth(); // check if the link is being overused and if it is then cap it at 1.0 - if (link_bandwidth_usage > 1.0) { - link_bandwidth_usage = 1.0; + if (link_bandwidth_usage_ratio > 1.0) { + link_bandwidth_usage_ratio = 1.0; } - // get the corresponding color that represents the link bandwidth usgae - current_noc_link_color = to_ezgl_color(draw_state->noc_usage_color_map->color(link_bandwidth_usage)); + // get the corresponding color that represents the link bandwidth usage + current_noc_link_color = to_ezgl_color(draw_state->noc_usage_color_map->color(link_bandwidth_usage_ratio)); // set the colors of the link noc_link_colors[link_id] = current_noc_link_color; } } - - return; } /* @@ -158,7 +143,7 @@ ezgl::rectangle get_noc_connection_marker_bbox(const t_logical_block_type_ptr no * We do the following to calculate the position of the marker: * 1. Get the area of the larger router tile * 2. Calculate the area of the marker (based on a predefined percentage of the area of the larger noc tile) - * 3. The marker is a square, so we can can calculate the lengths + * 3. The marker is a square, so we can calculate the lengths * of the sides of the marker * 4. Divide the side length by 2 and subtract this from the x & y coordinates of the center of the larger noc router tile. This is the bottom left corner of the rectangle. * 5. Then add the side length to the x & y coordinate of the center of the larger noc router tile. THis is the top right corner of the rectangle. @@ -188,15 +173,11 @@ void draw_noc_connection_marker(ezgl::renderer* g, const vtr::vectorget_router_layer_position(); + for (const auto & router : router_list) { + int router_grid_position_layer = router.get_router_layer_position(); t_draw_layer_display marker_box_visibility = draw_state->draw_layer_display[router_grid_position_layer]; if (!marker_box_visibility.visible) { @@ -206,8 +187,8 @@ void draw_noc_connection_marker(ezgl::renderer* g, const vtr::vectorset_color(ezgl::BLACK, marker_box_visibility.alpha); - router_grid_position_x = router->get_router_grid_position_x(); - router_grid_position_y = router->get_router_grid_position_y(); + int router_grid_position_x = router.get_router_grid_position_x(); + int router_grid_position_y = router.get_router_grid_position_y(); // get the coordinates to draw the marker given the current routers tile position updated_connection_marker_bbox = connection_marker_bbox + ezgl::point2d(draw_coords->tile_x[router_grid_position_x], draw_coords->tile_y[router_grid_position_y]); @@ -215,8 +196,6 @@ void draw_noc_connection_marker(ezgl::renderer* g, const vtr::vectorfill_rectangle(updated_connection_marker_bbox); } - - return; } /* @@ -260,7 +239,7 @@ void draw_noc_links(ezgl::renderer* g, t_logical_block_type_ptr noc_router_logic NocLinkType link_type; // get half the width and height of the noc connection marker - // we will shift the links based on this parameters since the links will be drawn at the boundaries of connection marker instead of the center + // we will shift the links based on these parameters since the links will be drawn at the boundaries of connection marker instead of the center double noc_connection_marker_quarter_width = (noc_connection_marker_bbox.center().x - noc_connection_marker_bbox.bottom_left().x) / 2; double noc_connection_marker_quarter_height = (noc_connection_marker_bbox.center().y - noc_connection_marker_bbox.bottom_left().y) / 2; @@ -307,8 +286,6 @@ void draw_noc_links(ezgl::renderer* g, t_logical_block_type_ptr noc_router_logic //draw a line between the center of the two routers this link connects g->draw_line(link_coords.start, link_coords.end); } - - return; } void determine_direction_to_shift_noc_links(vtr::vector& list_of_noc_link_shift_directions) { @@ -316,7 +293,7 @@ void determine_direction_to_shift_noc_links(vtr::vector int number_of_links = list_of_noc_link_shift_directions.size(); - // store the parallel link of wach link we process + // store the parallel link of each link we process NocLinkId parallel_link; // go through all the noc links and assign how the link should be shifted @@ -324,7 +301,7 @@ void determine_direction_to_shift_noc_links(vtr::vector // convert the link to a link id NocLinkId link_id(link); - // only assign a shift direction if we havent already + // only assign a shift direction if we haven't already if (list_of_noc_link_shift_directions[link_id] == NocLinkShift::NO_SHIFT) { // the current link will always have a TOP_shift list_of_noc_link_shift_directions[link_id] = NocLinkShift::TOP_SHIFT; @@ -333,8 +310,8 @@ void determine_direction_to_shift_noc_links(vtr::vector parallel_link = noc_ctx.noc_model.get_parallel_link(link_id); // check first if a legal link id was found - if (parallel_link == INVALID_LINK_ID) { - // if we are here, then a parallel link wasnt found, so that means there is only a single link and there is no need to perform any shifting on the single link + if (parallel_link == NocLinkId::INVALID()) { + // if we are here, then a parallel link wasn't found, so that means there is only a single link and there is no need to perform any shifting on the single link list_of_noc_link_shift_directions[link_id] = NocLinkShift::NO_SHIFT; continue; @@ -343,8 +320,6 @@ void determine_direction_to_shift_noc_links(vtr::vector list_of_noc_link_shift_directions[parallel_link] = NocLinkShift::BOTTOM_SHIFT; } } - - return; } NocLinkType determine_noc_link_type(ezgl::point2d link_start_point, ezgl::point2d link_end_point) { @@ -359,13 +334,13 @@ NocLinkType determine_noc_link_type(ezgl::point2d link_start_point, ezgl::point2 double x_coord_horizontal_start = link_start_point.x; double y_coord_horizontal_start = link_start_point.y; - double x_coord_horziontal_end = x_coord_horizontal_start + HORIZONTAL_LINE_LENGTH; + double x_coord_horizontal_end = x_coord_horizontal_start + HORIZONTAL_LINE_LENGTH; double y_coord_horizontal_end = link_start_point.y; // stores the link type NocLinkType result = NocLinkType::INVALID_TYPE; - // we can check quickly if the link is vertical or horizontal without calculating the dot product. If it is vertical or horizontal then we just return. Otherwise we have to calculate it. + // we can check quickly if the link is vertical or horizontal without calculating the dot product. If it is vertical or horizontal then we just return. Otherwise, we have to calculate it. // check if the link is vertical by determining if there is any horizontal change if (vtr::isclose(x_coord_end - x_coord_start, 0.0)) { @@ -374,7 +349,7 @@ NocLinkType determine_noc_link_type(ezgl::point2d link_start_point, ezgl::point2 return result; } - // check if the link is horizontal by determinig if there is any vertical shift + // check if the link is horizontal by determining if there is any vertical shift if (vtr::isclose(y_coord_end - y_coord_start, 0.0)) { result = NocLinkType::HORIZONTAL; @@ -386,11 +361,11 @@ NocLinkType determine_noc_link_type(ezgl::point2d link_start_point, ezgl::point2 // get the magnitude of the link double link_magnitude = sqrt(pow(x_coord_end - x_coord_start, 2.0) + pow(y_coord_end - y_coord_start, 2.0)); // get the dot product of the two connecting line - double dot_product_of_link_and_horizontal_line = (x_coord_end - x_coord_start) * (x_coord_horziontal_end - x_coord_horizontal_start) + (y_coord_end - y_coord_start) * (y_coord_horizontal_end - y_coord_horizontal_start); + double dot_product_of_link_and_horizontal_line = (x_coord_end - x_coord_start) * (x_coord_horizontal_end - x_coord_horizontal_start) + (y_coord_end - y_coord_start) * (y_coord_horizontal_end - y_coord_horizontal_start); // calculate the angle double angle = acos(dot_product_of_link_and_horizontal_line / (link_magnitude * HORIZONTAL_LINE_LENGTH)); - // the angle is in the first or fourth quandrant of the unit circle + // the angle is in the first or fourth quadrant of the unit circle if ((angle > 0) && (angle < (PI_RADIAN / 2))) { // if the link is a positive sloped line, then its end point must be higher than its start point (must be higher than the connected horizontal line) if (y_coord_end > y_coord_horizontal_end) { @@ -400,7 +375,7 @@ NocLinkType determine_noc_link_type(ezgl::point2d link_start_point, ezgl::point2 result = NocLinkType::NEGATIVE_SLOPE; } - } else { // the case where the angle is in the 3rd and 4th quandrant of the unit cirle + } else { // the case where the angle is in the 3rd and 4th quadrant of the unit circle // if the link is a positive sloped line, then its end point must be lower than its start point (must be lower than the connected horizontal line) if (y_coord_end < y_coord_horizontal_end) { @@ -440,7 +415,7 @@ void shift_noc_link(noc_link_draw_coords& link_coords, NocLinkShift link_shift_d link_coords.start.x += noc_connection_marker_quarter_width; link_coords.end.x += noc_connection_marker_quarter_width; } - // dont change anything if we arent shifting at all + // don't change anything if we aren't shifting at all break; case NocLinkType::HORIZONTAL: if (link_shift_direction == NocLinkShift::TOP_SHIFT) { @@ -452,7 +427,7 @@ void shift_noc_link(noc_link_draw_coords& link_coords, NocLinkShift link_shift_d link_coords.start.y -= noc_connection_marker_quarter_height; link_coords.end.y -= noc_connection_marker_quarter_height; } - // dont change anything if we arent shifting at all + // don't change anything if we aren't shifting at all break; case NocLinkType::POSITVE_SLOPE: if (link_shift_direction == NocLinkShift::TOP_SHIFT) { @@ -470,7 +445,7 @@ void shift_noc_link(noc_link_draw_coords& link_coords, NocLinkShift link_shift_d link_coords.start.y -= noc_connection_marker_quarter_height; link_coords.end.y -= noc_connection_marker_quarter_height; } - // dont change anything if we arent shifting at all + // don't change anything if we aren't shifting at all break; case NocLinkType::NEGATIVE_SLOPE: if (link_shift_direction == NocLinkShift::TOP_SHIFT) { @@ -488,13 +463,11 @@ void shift_noc_link(noc_link_draw_coords& link_coords, NocLinkShift link_shift_d link_coords.start.y += noc_connection_marker_quarter_height; link_coords.end.y += noc_connection_marker_quarter_height; } - // dont change anything if we arent shifting at all + // don't change anything if we aren't shifting at all break; default: break; } - - return; } #endif \ No newline at end of file diff --git a/vpr/src/draw/draw_rr.cpp b/vpr/src/draw/draw_rr.cpp index fa04c388cfe..f17812df9c9 100644 --- a/vpr/src/draw/draw_rr.cpp +++ b/vpr/src/draw/draw_rr.cpp @@ -549,6 +549,9 @@ void draw_rr_pin(RRNodeId inode, const ezgl::color& color, ezgl::renderer* g) { char str[vtr::bufsize]; auto& device_ctx = g_vpr_ctx.device(); const auto& rr_graph = device_ctx.rr_graph; + if (!is_inter_cluster_node(rr_graph, inode)) { + return; + } int ipin = rr_graph.node_pin_num(RRNodeId(inode)); @@ -581,6 +584,9 @@ void draw_rr_src_sink(RRNodeId inode, ezgl::color color, ezgl::renderer* g) { auto& device_ctx = g_vpr_ctx.device(); const auto& rr_graph = device_ctx.rr_graph; + if (!is_inter_cluster_node(rr_graph, inode)) { + return; + } int transparency_factor = get_rr_node_transparency(inode); @@ -816,7 +822,7 @@ void draw_rr_costs(ezgl::renderer* g, const vtr::vector& rr_cos } return rr_costs[lhs_node] < rr_costs[rhs_node]; }; - std::sort(nodes.begin(), nodes.end(), cmp_ascending_cost); + std::stable_sort(nodes.begin(), nodes.end(), cmp_ascending_cost); for (RRNodeId inode : nodes) { float cost = rr_costs[inode]; diff --git a/vpr/src/draw/draw_types.cpp b/vpr/src/draw/draw_types.cpp index d1532564938..bd63798d398 100644 --- a/vpr/src/draw/draw_types.cpp +++ b/vpr/src/draw/draw_types.cpp @@ -13,7 +13,15 @@ *******************************************/ ezgl::color t_draw_state::block_color(ClusterBlockId blk) const { if (use_default_block_color_[blk]) { - t_physical_tile_type_ptr tile_type = get_physical_tile_type(blk); + t_physical_tile_type_ptr tile_type = nullptr; + auto& cluster_ctx = g_vpr_ctx.clustering(); + auto& place_ctx = g_vpr_ctx.placement(); + if (place_ctx.block_locs.empty()) { //No placement, pick best match + tile_type = pick_physical_type(cluster_ctx.clb_nlist.block_type(blk)); + } else { // Have placement, select physical tile implementing blk + tile_type = physical_tile_type(blk); + } + VTR_ASSERT(tile_type != nullptr); return get_block_type_color(tile_type); } else { return block_color_[blk]; diff --git a/vpr/src/draw/gtkcomboboxhelper.cpp b/vpr/src/draw/gtkcomboboxhelper.cpp new file mode 100644 index 00000000000..6da464289ca --- /dev/null +++ b/vpr/src/draw/gtkcomboboxhelper.cpp @@ -0,0 +1,61 @@ +#ifndef NO_GRAPHICS + +#include "gtkcomboboxhelper.h" +#include + +/** + * @brief Get the number of items in the combo box. + * + * This function returns the number of items currently present in the combo box. + * + * @param combo_box A pointer to the combo box widget. + * @return The number of items in the combo box. + */ +static gint get_items_count(gpointer combo_box) { + GtkComboBoxText* combo = GTK_COMBO_BOX_TEXT(combo_box); + + // Get the model of the combo box + GtkTreeModel* model = gtk_combo_box_get_model(GTK_COMBO_BOX(combo)); + + // Get the number of items (indexes) in the combo box + gint count = gtk_tree_model_iter_n_children(model, nullptr); + return count; +} + +/** + * @brief Get the index of an item in a combo box by its text. + * + * This function searches for an item with the specified text in the combo box + * and returns its index if found. + * + * @param combo_box A pointer to the combo box widget. + * @param target_item The text of the item to search for. + * @return The index of the item if found, or -1 if not found. + */ +gint get_item_index_by_text(gpointer combo_box, const gchar* target_item) { + gint result_index = -1; + GtkComboBoxText* combo = GTK_COMBO_BOX_TEXT(combo_box); + + // Get the model of the combo box + GtkTreeModel* model = gtk_combo_box_get_model(GTK_COMBO_BOX(combo)); + + gchar* current_item_text = nullptr; + + for (gint index = 0; index < get_items_count(combo_box); ++index) { + GtkTreeIter iter; + + // Check if the index is within bounds + if (gtk_tree_model_iter_nth_child(model, &iter, nullptr, index)) { + gtk_tree_model_get(model, &iter, 0, ¤t_item_text, -1); + if (g_ascii_strcasecmp(target_item, current_item_text) == 0) { + result_index = index; + break; + } + } + } + + g_free(current_item_text); + return result_index; +} + +#endif // NO_GRAPHICS \ No newline at end of file diff --git a/vpr/src/draw/gtkcomboboxhelper.h b/vpr/src/draw/gtkcomboboxhelper.h new file mode 100644 index 00000000000..f7b2c2aa637 --- /dev/null +++ b/vpr/src/draw/gtkcomboboxhelper.h @@ -0,0 +1,22 @@ +#ifndef GTKCOMBOBOXHELPER_H +#define GTKCOMBOBOXHELPER_H + +#ifndef NO_GRAPHICS + +#include + +/** + * @brief Get the index of an item in a combo box by its text. + * + * This function searches for an item with the specified text in the combo box + * and returns its index if found. + * + * @param combo_box A pointer to the combo box widget. + * @param target_item The text of the item to search for. + * @return The index of the item if found, or -1 if not found. + */ +gint get_item_index_by_text(gpointer combo_box, const gchar* target_item); + +#endif // NO_GRAPHICS + +#endif // GTKCOMBOBOXHELPER_H diff --git a/vpr/src/draw/manual_moves.cpp b/vpr/src/draw/manual_moves.cpp index 77551dbe505..3d907550396 100644 --- a/vpr/src/draw/manual_moves.cpp +++ b/vpr/src/draw/manual_moves.cpp @@ -212,7 +212,7 @@ void manual_move_cost_summary_dialog() { gtk_window_set_transient_for((GtkWindow*)dialog, (GtkWindow*)draw_state->manual_moves_state.manual_move_window); //Create elements for the dialog and printing costs to the user. - GtkWidget* title_label = gtk_label_new(NULL); + GtkWidget* title_label = gtk_label_new(nullptr); gtk_label_set_markup((GtkLabel*)title_label, "Move Costs and Outcomes"); std::string delta_cost = "Delta Cost: " + std::to_string(draw_state->manual_moves_state.manual_move_info.delta_cost) + " "; GtkWidget* delta_cost_label = gtk_label_new(delta_cost.c_str()); diff --git a/vpr/src/noc/bfs_routing.cpp b/vpr/src/noc/bfs_routing.cpp index f25f755c1f5..2fdc2650a7d 100644 --- a/vpr/src/noc/bfs_routing.cpp +++ b/vpr/src/noc/bfs_routing.cpp @@ -58,7 +58,7 @@ void BFSRouting::route_flow(NocRouterId src_router_id, routers_to_process.pop(); // get the links leaving the router currently being processed(these represent possible paths to explore in the NoC) - const std::vector& outgoing_links = noc_model.get_noc_router_connections(processing_router); + const std::vector& outgoing_links = noc_model.get_noc_router_outgoing_links(processing_router); // go through the outgoing links of the current router and process the sink routers connected to these links for (auto link : outgoing_links) { diff --git a/vpr/src/noc/bfs_routing.h b/vpr/src/noc/bfs_routing.h index 412569e8ad5..ca28a8ca3fd 100644 --- a/vpr/src/noc/bfs_routing.h +++ b/vpr/src/noc/bfs_routing.h @@ -42,7 +42,7 @@ class BFSRouting : public NocRouting { * Identifies the ending point of the route within the NoC.This represents a * physical router on the FPGA. * @param traffic_flow_id The unique ID for the traffic flow being routed. - * @param flow_route Stores the path returned by this fuction + * @param flow_route Stores the path returned by this function * as a series of NoC links found by * a NoC routing algorithm between two routers in a traffic flow. * The function will clear any diff --git a/vpr/src/noc/channel_dependency_graph.cpp b/vpr/src/noc/channel_dependency_graph.cpp index abc38cffe6c..31bd4052485 100644 --- a/vpr/src/noc/channel_dependency_graph.cpp +++ b/vpr/src/noc/channel_dependency_graph.cpp @@ -4,8 +4,38 @@ #include -ChannelDependencyGraph::ChannelDependencyGraph(size_t n_links, - const vtr::vector>& traffic_flow_routes) { +ChannelDependencyGraph::ChannelDependencyGraph(const NocStorage& noc_model, + const NocTrafficFlows& traffic_flow_storage, + const vtr::vector>& traffic_flow_routes, + const vtr::vector_map& block_locs) { + VTR_ASSERT((size_t)traffic_flow_storage.get_number_of_traffic_flows() == traffic_flow_routes.size()); + + for (auto traffic_flow_id : traffic_flow_storage.get_all_traffic_flow_id()) { + const auto& traffic_flow = traffic_flow_storage.get_single_noc_traffic_flow(traffic_flow_id); + const auto& traffic_flow_route = traffic_flow_routes[traffic_flow_id]; + + // get the source and destination logical router blocks in the current traffic flow + ClusterBlockId logical_source_router_block_id = traffic_flow.source_router_cluster_id; + ClusterBlockId logical_sink_router_block_id = traffic_flow.sink_router_cluster_id; + + // get the ids of the hard router blocks where the logical router cluster blocks have been placed + NocRouterId src_router_id = noc_model.get_router_at_grid_location(block_locs[logical_source_router_block_id].loc); + NocRouterId dst_router_id = noc_model.get_router_at_grid_location(block_locs[logical_sink_router_block_id].loc); + + const NocLink& first_link = noc_model.get_single_noc_link(traffic_flow_route.front()); + VTR_ASSERT(first_link.get_source_router() == src_router_id); + const NocLink& last_link = noc_model.get_single_noc_link(traffic_flow_route.back()); + VTR_ASSERT(last_link.get_sink_router() == dst_router_id); + + for (size_t i = 0; i < traffic_flow_route.size() - 1; i++) { + const NocLink& noc_link1 = noc_model.get_single_noc_link(traffic_flow_route[i]); + const NocLink& noc_link2 = noc_model.get_single_noc_link(traffic_flow_route[i + 1]); + VTR_ASSERT(noc_link1.get_sink_router() == noc_link2.get_source_router()); + } + } + + const size_t n_links = noc_model.get_noc_links().size(); + adjacency_list_.clear(); // In channel dependency graph, vertices represent NoC links. // reserve enough space so that all vertices can store their outgoing neighbors diff --git a/vpr/src/noc/channel_dependency_graph.h b/vpr/src/noc/channel_dependency_graph.h index 4b19607b40a..54bcb26ab3a 100644 --- a/vpr/src/noc/channel_dependency_graph.h +++ b/vpr/src/noc/channel_dependency_graph.h @@ -24,6 +24,8 @@ #include "vtr_vector.h" #include "noc_data_types.h" +#include "noc_storage.h" +#include "noc_traffic_flows.h" class ChannelDependencyGraph { public: @@ -36,8 +38,10 @@ class ChannelDependencyGraph { * @param traffic_flow_routes The route of each traffic flow generated * by a routing algorithm. */ - ChannelDependencyGraph(size_t n_links, - const vtr::vector>& traffic_flow_routes); + ChannelDependencyGraph(const NocStorage& noc_model, + const NocTrafficFlows& traffic_flow_storage, + const vtr::vector>& traffic_flow_routes, + const vtr::vector_map& block_locs); /** * @brief Checks whether CDG has any cycles. A cycle implies that diff --git a/vpr/src/noc/negative_first_routing.cpp b/vpr/src/noc/negative_first_routing.cpp index 23cff958638..eaec531a554 100644 --- a/vpr/src/noc/negative_first_routing.cpp +++ b/vpr/src/noc/negative_first_routing.cpp @@ -107,4 +107,40 @@ TurnModelRouting::Direction NegativeFirstRouting::select_next_direction(const st } return selected_direction; -} \ No newline at end of file +} + +bool NegativeFirstRouting::is_turn_legal(const std::array, 3>& noc_routers) const { + const int x1 = noc_routers[0].get().get_router_grid_position_x(); + const int y1 = noc_routers[0].get().get_router_grid_position_y(); + + const int x2 = noc_routers[1].get().get_router_grid_position_x(); + const int y2 = noc_routers[1].get().get_router_grid_position_y(); + + const int x3 = noc_routers[2].get().get_router_grid_position_x(); + const int y3 = noc_routers[2].get().get_router_grid_position_y(); + + // check if the given routers can be traversed one after another + VTR_ASSERT(x2 == x1 || y2 == y1); + VTR_ASSERT(x3 == x2 || y3 == y2); + + // going back to the first router is not allowed + if (x1 == x3 && y1 == y3) { + return false; + } + + /* In negative-first routing algorithm, a traffic flow + * can't take a downward turn if it is travelling toward right direction. + */ + if (x2 > x1 && y3 < y2) { + return false; + } + + /* In negative-first routing algorithm, a traffic flow + * can't take a left turn if it is travelling upwards. + */ + if (y2 > y1 && x3 < x2) { + return false; + } + + return true; +} diff --git a/vpr/src/noc/negative_first_routing.h b/vpr/src/noc/negative_first_routing.h index f4a7cb6e9a7..3a465e3cc28 100644 --- a/vpr/src/noc/negative_first_routing.h +++ b/vpr/src/noc/negative_first_routing.h @@ -65,6 +65,8 @@ class NegativeFirstRouting : public TurnModelRouting { NocRouterId curr_router_id, NocTrafficFlowId traffic_flow_id, const NocStorage& noc_model) override; + + bool is_turn_legal(const std::array, 3>& noc_routers) const override; }; #endif //VTR_NEGATIVE_FIRST_ROUTING_H diff --git a/vpr/src/noc/noc_data_types.h b/vpr/src/noc/noc_data_types.h index 86135ca77cb..a75f387270b 100644 --- a/vpr/src/noc/noc_data_types.h +++ b/vpr/src/noc/noc_data_types.h @@ -24,4 +24,8 @@ struct noc_traffic_flow_id_tag; /** Datatype to index traffic flows within the application */ typedef vtr::StrongId NocTrafficFlowId; +/** Data type to index NoC groups. */ +struct noc_group_id_tag; +typedef vtr::StrongId NocGroupId; + #endif \ No newline at end of file diff --git a/vpr/src/noc/noc_link.cpp b/vpr/src/noc/noc_link.cpp index 4407642ddae..28340ff96d8 100644 --- a/vpr/src/noc/noc_link.cpp +++ b/vpr/src/noc/noc_link.cpp @@ -1,35 +1,35 @@ #include "noc_link.h" // constructor -NocLink::NocLink(NocLinkId link_id, NocRouterId source, NocRouterId sink, double bw) +NocLink::NocLink(NocLinkId link_id, NocRouterId source, NocRouterId sink, + double bw, double lat) : id(link_id) , source_router(source) , sink_router(sink) , bandwidth_usage(0.0) - , bandwidth(bw) { } + , bandwidth(bw) + , latency(lat) { } // getters -NocRouterId NocLink::get_source_router(void) const { +NocRouterId NocLink::get_source_router() const { return source_router; } -NocRouterId NocLink::get_sink_router(void) const { +NocRouterId NocLink::get_sink_router() const { return sink_router; } -double NocLink::get_bandwidth_usage(void) const { +double NocLink::get_bandwidth_usage() const { return bandwidth_usage; } //setters void NocLink::set_source_router(NocRouterId source) { source_router = source; - return; } void NocLink::set_sink_router(NocRouterId sink) { sink_router = sink; - return; } void NocLink::set_bandwidth_usage(double new_bandwidth_usage) { @@ -38,7 +38,6 @@ void NocLink::set_bandwidth_usage(double new_bandwidth_usage) { void NocLink::set_bandwidth(double new_bandwidth) { bandwidth = new_bandwidth; - return; } double NocLink::get_bandwidth() const { @@ -61,10 +60,15 @@ double NocLink::get_congested_bandwidth_ratio() const { return congested_bw_ratio; } +double NocLink::get_latency() const { + return latency; +} + NocLinkId NocLink::get_link_id() const { return id; } NocLink::operator NocLinkId() const { return get_link_id(); -} \ No newline at end of file +} + diff --git a/vpr/src/noc/noc_link.h b/vpr/src/noc/noc_link.h index 2aa5d55cd67..38d8cec42de 100644 --- a/vpr/src/noc/noc_link.h +++ b/vpr/src/noc/noc_link.h @@ -51,9 +51,11 @@ class NocLink { double bandwidth_usage; /*!< Represents the bandwidth of the data being transmitted on the link. Units in bits-per-second(bps)*/ double bandwidth; /*!< Represents the maximum bits per second that can be transmitted over the link without causing congestion*/ + double latency; /*!< The zero-load latency of this link in seconds.*/ public: - NocLink(NocLinkId link_id, NocRouterId source_router, NocRouterId sink_router, double bw); + NocLink(NocLinkId link_id, NocRouterId source_router, NocRouterId sink_router, + double bw, double lat); // getters @@ -62,33 +64,33 @@ class NocLink { * edge * @return A unique id (NocRouterId) that identifies the source router of the link */ - NocRouterId get_source_router(void) const; + NocRouterId get_source_router() const; /** * @brief Provides the id of the router that has this link as an incoming * edge * @return A unique id (NocRouterId) that identifies the sink router of the link */ - NocRouterId get_sink_router(void) const; + NocRouterId get_sink_router() const; /** * @brief Provides the size of the data (bandwidth) being currently transmitted using the link. * @return A numeric value of the bandwidth usage of the link */ - double get_bandwidth_usage(void) const; + double get_bandwidth_usage() const; /** * @brief Returns the maximum bandwidth that the link can carry without congestion. * @return A numeric value of the bandwidth capacity of the link */ - double get_bandwidth(void) const; + double get_bandwidth() const; /** * @brief Calculates the extent to which the current bandwidth utilization * exceeds the link capacity. Any positive value means the link is congested. * @return A numeric value of the bandwidth over-utilization in the link */ - double get_congested_bandwidth(void) const; + double get_congested_bandwidth() const; /** * @brief Computes the congested bandwidth to bandwidth capacity ratio. @@ -96,6 +98,12 @@ class NocLink { */ double get_congested_bandwidth_ratio() const; + /** + * @brief Returns the zero-load latency of the link. + * @return double Zero-load latency of the link. + */ + double get_latency() const; + /** * @brief Returns the unique link ID. The ID can be used to index * vtr::vector instances. @@ -135,7 +143,6 @@ class NocLink { */ void set_bandwidth(double new_bandwidth); - /** * @brief Returns the unique link ID. The ID can be used to index * vtr::vector instances. diff --git a/vpr/src/noc/noc_router.cpp b/vpr/src/noc/noc_router.cpp index b0aa166aac5..ab4bb4ea42a 100644 --- a/vpr/src/noc/noc_router.cpp +++ b/vpr/src/noc/noc_router.cpp @@ -1,33 +1,36 @@ #include "noc_router.h" // constructor -NocRouter::NocRouter(int id, int grid_position_x, int grid_position_y, int layer_position) +NocRouter::NocRouter(int id, + int grid_position_x, int grid_position_y, int layer_position, + double latency) : router_user_id(id) , router_grid_position_x(grid_position_x) , router_grid_position_y(grid_position_y) - , router_layer_position(layer_position) { + , router_layer_position(layer_position) + , router_latency(latency){ // initialize variables router_block_ref = ClusterBlockId(0); } // getters -int NocRouter::get_router_user_id(void) const { +int NocRouter::get_router_user_id() const { return router_user_id; } -int NocRouter::get_router_grid_position_x(void) const { +int NocRouter::get_router_grid_position_x() const { return router_grid_position_x; } -int NocRouter::get_router_grid_position_y(void) const { +int NocRouter::get_router_grid_position_y() const { return router_grid_position_y; } -int NocRouter::get_router_layer_position(void) const { +int NocRouter::get_router_layer_position() const { return router_layer_position; } -t_physical_tile_loc NocRouter::get_router_physical_location(void) const { +t_physical_tile_loc NocRouter::get_router_physical_location() const { const int x = get_router_grid_position_x(); const int y = get_router_grid_position_y(); const int layer = get_router_layer_position(); @@ -36,12 +39,15 @@ t_physical_tile_loc NocRouter::get_router_physical_location(void) const { return phy_loc; } -ClusterBlockId NocRouter::get_router_block_ref(void) const { +double NocRouter::get_latency() const { + return router_latency; +} + +ClusterBlockId NocRouter::get_router_block_ref() const { return router_block_ref; } // setters void NocRouter::set_router_block_ref(ClusterBlockId router_block_ref_id) { router_block_ref = router_block_ref_id; - return; } \ No newline at end of file diff --git a/vpr/src/noc/noc_router.h b/vpr/src/noc/noc_router.h index 0feb397bdd2..968ff5206b7 100644 --- a/vpr/src/noc/noc_router.h +++ b/vpr/src/noc/noc_router.h @@ -53,12 +53,17 @@ class NocRouter { * that the physical router is located*/ int router_layer_position; + /** The zero-load latency of this NoC router. */ + double router_latency; + /** A unique identifier that represents a router block in the * clustered netlist that is placed on the physical router*/ ClusterBlockId router_block_ref; public: - NocRouter(int id, int grid_position_x, int grid_position_y, int layer_position); + NocRouter(int id, + int grid_position_x, int grid_position_y, int layer_position, + double latency); // getters @@ -66,37 +71,43 @@ class NocRouter { * @brief Gets the unique id assigned by the user for the physical router * @return A numerical value (integer) that represents the physical router id */ - int get_router_user_id(void) const; + int get_router_user_id() const; /** * @brief Gets the horizontal position on the FPGA device that the physical router is located * @return A numerical value (integer) that represents horizontal position of the physical router */ - int get_router_grid_position_x(void) const; + int get_router_grid_position_x() const; /** * @brief Gets the vertical position on the FPGA device that the physical router is located * @return A numerical value (integer) that represents vertical position of the physical router */ - int get_router_grid_position_y(void) const; + int get_router_grid_position_y() const; /** * @brief Gets the layer number of the die the the physical router is located * @return A numerical value (integer) that represents layer position of the physical router */ - int get_router_layer_position(void) const; + int get_router_layer_position() const; /** * @brief Gets the physical location where the the physical router is located * @return t_physical_tile_loc that contains x-y coordinates and the layer number */ - t_physical_tile_loc get_router_physical_location(void) const; + t_physical_tile_loc get_router_physical_location() const; + + /** + * @brief Gets the zero-load latency of this NoC router. + * @return The zero-load latency in seconds. + */ + double get_latency() const; /** * @brief Gets the unique id of the router block that is current placed on the physical router * @return A ClusterBlockId that identifies a router block in the clustered netlist */ - ClusterBlockId get_router_block_ref(void) const; + ClusterBlockId get_router_block_ref() const; // setters /** diff --git a/vpr/src/noc/noc_storage.cpp b/vpr/src/noc/noc_storage.cpp index 8438838c1f9..f3fe939eecc 100644 --- a/vpr/src/noc/noc_storage.cpp +++ b/vpr/src/noc/noc_storage.cpp @@ -1,48 +1,60 @@ #include "noc_storage.h" +#include "vtr_assert.h" +#include "vpr_error.h" + + +#include NocStorage::NocStorage() { clear_noc(); } // getters for the NoC +const std::vector& NocStorage::get_noc_router_outgoing_links(NocRouterId id) const { + return router_outgoing_links_list[id]; +} -const std::vector& NocStorage::get_noc_router_connections(NocRouterId id) const { - return router_link_list[id]; +const std::vector& NocStorage::get_noc_router_incoming_links(NocRouterId id) const { + return router_incoming_links_list[id]; } -const vtr::vector& NocStorage::get_noc_routers(void) const { +const vtr::vector& NocStorage::get_noc_routers() const { return router_storage; } -int NocStorage::get_number_of_noc_routers(void) const { +int NocStorage::get_number_of_noc_routers() const { return router_storage.size(); } -const vtr::vector& NocStorage::get_noc_links(void) const { +const vtr::vector& NocStorage::get_noc_links() const { return link_storage; } -vtr::vector& NocStorage::get_mutable_noc_links(void) { +vtr::vector& NocStorage::get_mutable_noc_links() { return link_storage; } -int NocStorage::get_number_of_noc_links(void) const { +int NocStorage::get_number_of_noc_links() const { return link_storage.size(); } -double NocStorage::get_noc_link_bandwidth(void) const { - return noc_link_bandwidth; -} - -double NocStorage::get_noc_link_latency(void) const { +double NocStorage::get_noc_link_latency() const { return noc_link_latency; } -double NocStorage::get_noc_router_latency(void) const { +double NocStorage::get_noc_router_latency() const { return noc_router_latency; } +bool NocStorage::get_detailed_router_latency() const { + return detailed_router_latency_; +} + +bool NocStorage::get_detailed_link_latency() const { + return detailed_link_latency_; +} + const NocRouter& NocStorage::get_single_noc_router(NocRouterId id) const { return router_storage[id]; } @@ -52,11 +64,11 @@ NocRouter& NocStorage::get_single_mutable_noc_router(NocRouterId id) { } // get link properties -const NocLink& NocStorage::get_single_noc_link(NocLinkId id) const { + const NocLink& NocStorage::get_single_noc_link(NocLinkId id) const { return link_storage[id]; } -NocLinkId NocStorage::get_single_noc_link_id(NocRouterId src_router, NocRouterId dst_router) const { +NocLinkId NocStorage::get_single_noc_link_id(NocRouterId src_router, NocRouterId dst_router) const { NocLinkId link_id = NocLinkId::INVALID(); for (const auto& link : link_storage) { @@ -89,10 +101,12 @@ NocRouterId NocStorage::get_router_at_grid_location(const t_pl_loc& hard_router_ // setters for the NoC -void NocStorage::add_router(int id, int grid_position_x, int grid_posistion_y, int layer_position) { +void NocStorage::add_router(int id, + int grid_position_x, int grid_posistion_y, int layer_position, + double latency) { VTR_ASSERT_MSG(!built_noc, "NoC already built, cannot modify further."); - router_storage.emplace_back(id, grid_position_x, grid_posistion_y, layer_position); + router_storage.emplace_back(id, grid_position_x, grid_posistion_y, layer_position, latency); /* Get the corresponding NocRouterId for the newly added router and * add it to the conversion table. @@ -107,55 +121,43 @@ void NocStorage::add_router(int id, int grid_position_x, int grid_posistion_y, i // get the key to identify the current router int router_key = generate_router_key_from_grid_location(grid_position_x, grid_posistion_y, layer_position); grid_location_to_router_id.insert(std::pair(router_key, converted_id)); - - return; } -void NocStorage::add_link(NocRouterId source, NocRouterId sink) { +void NocStorage::add_link(NocRouterId source, NocRouterId sink, double bandwidth, double latency) { VTR_ASSERT_MSG(!built_noc, "NoC already built, cannot modify further."); // the new link will be added to the back of the list, // so we can use the total number of links added so far as id NocLinkId added_link_id((int)link_storage.size()); - double link_bandwidth = get_noc_link_bandwidth(); - link_storage.emplace_back(added_link_id, source, sink, link_bandwidth); - - router_link_list[source].push_back(added_link_id); + link_storage.emplace_back(added_link_id, source, sink, bandwidth, latency); - return; + router_outgoing_links_list[source].push_back(added_link_id); + router_incoming_links_list[sink].push_back(added_link_id); } void NocStorage::set_noc_link_bandwidth(double link_bandwidth) { - noc_link_bandwidth = link_bandwidth; - // Iterate over all links and set their bandwidth for (auto& link : link_storage) { - link.set_bandwidth(noc_link_bandwidth); + link.set_bandwidth(link_bandwidth); } - - return; } void NocStorage::set_noc_link_latency(double link_latency) { noc_link_latency = link_latency; - return; } void NocStorage::set_noc_router_latency(double router_latency) { noc_router_latency = router_latency; - return; } void NocStorage::set_device_grid_width(int grid_width) { device_grid_width = grid_width; - return; } void NocStorage::set_device_grid_spec(int grid_width, int grid_height) { device_grid_width = grid_width; layer_num_grid_locs = grid_width * grid_height; - return; } bool NocStorage::remove_link(NocRouterId src_router_id, NocRouterId sink_router_id) { @@ -164,64 +166,94 @@ bool NocStorage::remove_link(NocRouterId src_router_id, NocRouterId sink_router_ // check if the src router for the link to remove exists (within the id ranges). Otherwise, there is no point looking for the link if ((size_t)src_router_id < router_storage.size()) { - // get all the outgoing links of the provided sourcer router - std::vector* source_router_outgoing_links = &router_link_list[src_router_id]; + // get all the outgoing links of the provided source router + std::vector& source_router_outgoing_links = router_outgoing_links_list[src_router_id]; + std::vector& sink_router_incoming_links = router_incoming_links_list[sink_router_id]; + + const NocLinkId link_to_be_removed_id = get_single_noc_link_id(src_router_id, sink_router_id); + link_removed_status = (link_to_be_removed_id != NocLinkId::INVALID()); + + auto it = std::remove(source_router_outgoing_links.begin(), + source_router_outgoing_links.end(), + link_to_be_removed_id); + + if (it == source_router_outgoing_links.end()) { + VTR_LOG_WARN("No link could be found among outgoing links of source router with id(%d) " + "that that connects to the sink router with id (%d).\n", + (size_t)src_router_id, + (size_t)sink_router_id); + } - // keeps track of the position of each outgoing link for the provided src router. When the id of the link to remove is found, this index can be used to remove it from the outgoing link vector. - int outgoing_link_index = 0; + source_router_outgoing_links.erase(it, source_router_outgoing_links.end()); - // go through each outgoing link of the source router and see if there is a link that also has the corresponding sink router. - // Save this link index and remove it - for (auto outgoing_link_id = source_router_outgoing_links->begin(); outgoing_link_id != source_router_outgoing_links->end(); outgoing_link_id++) { - // check to see if the current link id matches the id of the link to remove - if (link_storage[*outgoing_link_id].get_sink_router() == sink_router_id) { - // found the link we need to remove, so we delete it here - //change the link to be invalid - link_storage[*outgoing_link_id].set_source_router(NocRouterId::INVALID()); - link_storage[*outgoing_link_id].set_sink_router(NocRouterId::INVALID()); - link_storage[*outgoing_link_id].set_bandwidth_usage(-1); + it = std::remove(sink_router_incoming_links.begin(), + sink_router_incoming_links.end(), + link_to_be_removed_id); - // removing this link as an outgoing link from the source router - source_router_outgoing_links->erase(source_router_outgoing_links->begin() + outgoing_link_index); + if (it == sink_router_incoming_links.end()) { + VTR_LOG_WARN("No link could be found among incoming links of sink router with id(%d) " + "that that connects to the source router with id (%d).\n", + (size_t)sink_router_id, + (size_t)src_router_id); + } - // indicate that the link to remove has been found and deleted - link_removed_status = true; + sink_router_incoming_links.erase(it, sink_router_incoming_links.end()); - break; - } + link_storage[link_to_be_removed_id].set_source_router(NocRouterId::INVALID()); + link_storage[link_to_be_removed_id].set_sink_router(NocRouterId::INVALID()); + link_storage[link_to_be_removed_id].set_bandwidth_usage(-1); - outgoing_link_index++; - } } // if a link was not removed then throw warning message if (!link_removed_status) { - VTR_LOG_WARN("No link could be found that has a source router with id: '%d' and sink router with id:'%d'.\n", (size_t)src_router_id, (size_t)sink_router_id); + VTR_LOG_WARN("No link could be found that has a source router with id: '%d' and sink router with id:'%d'.\n", + (size_t)src_router_id, + (size_t)sink_router_id); } return link_removed_status; } -void NocStorage::finished_building_noc(void) { +void NocStorage::finished_building_noc() { VTR_ASSERT_MSG(!built_noc, "NoC already built, cannot modify further."); built_noc = true; - return; + returnable_noc_link_const_refs_.reserve(link_storage.size()); + + /* We go through all NoC routers in the router_storage and check if there are any + * two consecutive NoC routers whose latency is different. If such two routers are + * found, we set detailed_router_latency_ to True. + * + * The values of detailed_link_latency_ and detailed_link_bandwidth_ are determined + * in a similar way. + */ + + auto router_latency_it = std::adjacent_find(router_storage.begin(), router_storage.end(), + [](const NocRouter& a, const NocRouter& b) { + return a.get_latency() != b.get_latency(); + }); + detailed_router_latency_ = (router_latency_it != router_storage.end()); + + auto link_latency_it = std::adjacent_find(link_storage.begin(), link_storage.end(), + [](const NocLink& a, const NocLink& b) { + return a.get_latency() != b.get_latency(); + }); + detailed_link_latency_ = (link_latency_it != link_storage.end()); } -void NocStorage::clear_noc(void) { +void NocStorage::clear_noc() { router_storage.clear(); link_storage.clear(); - router_link_list.clear(); + router_outgoing_links_list.clear(); + router_incoming_links_list.clear(); grid_location_to_router_id.clear(); built_noc = false; - - return; } NocRouterId NocStorage::convert_router_id(int id) const { - std::unordered_map::const_iterator result = router_id_conversion_table.find(id); + auto result = router_id_conversion_table.find(id); if (result == router_id_conversion_table.end()) { VPR_FATAL_ERROR(VPR_ERROR_OTHER, "Cannot convert router with id:%d. The router was not found within the NoC.", id); @@ -230,9 +262,20 @@ NocRouterId NocStorage::convert_router_id(int id) const { return result->second; } -void NocStorage::make_room_for_noc_router_link_list(void) { +int NocStorage::convert_router_id(NocRouterId id) const { + for (auto [user_id, router_id] : router_id_conversion_table) { + if (router_id == id) { + return user_id; + } + } + + VPR_FATAL_ERROR(VPR_ERROR_OTHER, "Cannot convert router with id:%d. The router was not found within the NoC.", id); +} + +void NocStorage::make_room_for_noc_router_link_list() { VTR_ASSERT_MSG(!built_noc, "NoC already built, cannot modify further."); - router_link_list.resize(router_storage.size()); + router_outgoing_links_list.resize(router_storage.size()); + router_incoming_links_list.resize(router_storage.size()); } NocLinkId NocStorage::get_parallel_link(NocLinkId current_link) const { @@ -241,12 +284,12 @@ NocLinkId NocStorage::get_parallel_link(NocLinkId current_link) const { NocRouterId curr_sink_router = link_storage[current_link].get_sink_router(); // get the link list of the sink router - const std::vector* sink_router_links = &(router_link_list[curr_sink_router]); + const std::vector& sink_router_links = router_outgoing_links_list[curr_sink_router]; - NocLinkId parallel_link = INVALID_LINK_ID; + NocLinkId parallel_link = NocLinkId::INVALID(); // go through the links of the sink router and the link that has the current source router as the sink router of the link is the parallel link we are looking for - for (auto sink_router_link : *sink_router_links) { + for (auto sink_router_link : sink_router_links) { if (link_storage[sink_router_link].get_sink_router() == curr_source_router) { parallel_link = sink_router_link; break; @@ -274,8 +317,6 @@ void NocStorage::echo_noc(char* file_name) const { fprintf(fp, "NoC Constraints:\n"); fprintf(fp, "--------------------------------------------------------------\n"); fprintf(fp, "\n"); - fprintf(fp, "Maximum NoC Link Bandwidth: %f\n", noc_link_bandwidth); - fprintf(fp, "\n"); fprintf(fp, "NoC Link Latency: %f\n", noc_link_latency); fprintf(fp, "\n"); fprintf(fp, "NoC Router Latency: %f\n", noc_router_latency); @@ -291,21 +332,23 @@ void NocStorage::echo_noc(char* file_name) const { fprintf(fp, "Router %d:\n", router.get_router_user_id()); // if the router tile is larger than a single grid, the position represents the bottom left corner of the tile fprintf(fp, "Equivalent Physical Tile Grid Position -> (%d,%d)\n", router.get_router_grid_position_x(), router.get_router_grid_position_y()); - fprintf(fp, "Router Connections ->"); + fprintf(fp, "Router Connections (destination router id, link bandwidth, link latency) ->"); - auto& router_connections = this->get_noc_router_connections(this->convert_router_id(router.get_router_user_id())); + auto& router_connections = this->get_noc_router_outgoing_links(this->convert_router_id(router.get_router_user_id())); // go through the outgoing links of the current router and print the connecting router for (auto router_connection : router_connections) { - const NocRouterId connecting_router_id = get_single_noc_link(router_connection).get_sink_router(); + const auto& link = get_single_noc_link(router_connection); + const NocRouterId connecting_router_id = link.get_sink_router(); - fprintf(fp, " %d", get_single_noc_router(connecting_router_id).get_router_user_id()); + fprintf(fp, " (%d, %g, %g)", + get_single_noc_router(connecting_router_id).get_router_user_id(), + link.get_bandwidth(), + link.get_latency()); } fprintf(fp, "\n\n"); } fclose(fp); - - return; } diff --git a/vpr/src/noc/noc_storage.h b/vpr/src/noc/noc_storage.h index 637d9f52126..bbefe9b4fa9 100644 --- a/vpr/src/noc/noc_storage.h +++ b/vpr/src/noc/noc_storage.h @@ -35,7 +35,6 @@ * */ -#include #include #include #include @@ -43,13 +42,6 @@ #include "vtr_vector.h" #include "noc_router.h" #include "noc_link.h" -#include "vtr_assert.h" -#include "vpr_error.h" -#include "echo_files.h" -// \cond -// represents the id of a link that does not exist in the NoC -constexpr NocLinkId INVALID_LINK_ID(-1); -// \endcond class NocStorage { private: @@ -61,9 +53,15 @@ class NocStorage { * @brief Stores outgoing links for each router in the NoC. These * links can be used by the router to communicate to other routers * in the NoC. - * */ - vtr::vector> router_link_list; + vtr::vector> router_outgoing_links_list; + + /** + * @brief Stores incoming links for each router in the NoC. These + * links can be used by the router to communicate to other routers + * in the NoC. + */ + vtr::vector> router_incoming_links_list; /** Contains all the links in the NoC*/ vtr::vector link_storage; @@ -76,7 +74,6 @@ class NocStorage { * are dense since it is used to index the routers. The datastructure * below is a conversiont able that maps the user router IDs to the * corresponding internal ones. - * */ std::unordered_map router_id_conversion_table; @@ -116,11 +113,6 @@ class NocStorage { */ bool built_noc; - /** - * @brief Represents the maximum allowed bandwidth for the links in the NoC (in bps) - */ - double noc_link_bandwidth; - /** * @brief Represents the delay expected when going through a link (in * seconds) @@ -133,6 +125,28 @@ class NocStorage { */ double noc_router_latency; + /** + * @brief When set true, specifies that some NoC routers have different + * latencies than others. When set false, all the NoC routers have the same + * latency. + */ + bool detailed_router_latency_; + + /** + * @brief When set true, specifies that some NoC links have different + * latencies than others. When set false, all the NoC link have the same + * latency. + */ + bool detailed_link_latency_; + + /** + * @brief A constant reference to this vector is returned by get_noc_links(...). + * This is used to avoid memory allocation whenever get_noc_links(...) is called. + * The vector is mutable so that get_noc_links(...), which is a const method, can + * modify it. + */ + mutable std::vector> returnable_noc_link_const_refs_; + /** * @brief Internal reference to the device grid width. This is necessary * to compute a unique key for a given grid location which we can then use @@ -161,13 +175,23 @@ class NocStorage { /** * @brief Gets a vector of outgoing links for a given router - * in the NoC. THe link vector cannot be modified. + * in the NoC. The link vector cannot be modified. * * @param id A unique identifier that represents a router * @return A vector of links. The links are represented by a unique * identifier. */ - const std::vector& get_noc_router_connections(NocRouterId id) const; + const std::vector& get_noc_router_outgoing_links(NocRouterId id) const; + + /** + * @brief Gets a vector of incoming links for a given router + * in the NoC. + * + * @param id A unique identifier that represents a router + * @return A vector of links. The links are represented by a unique + * identifier. + */ + const std::vector& get_noc_router_incoming_links(NocRouterId id) const; /** * @brief Get all the routers in the NoC. The routers themselves cannot @@ -176,13 +200,13 @@ class NocStorage { * * @return A vector of routers. */ - const vtr::vector& get_noc_routers(void) const; + const vtr::vector& get_noc_routers() const; /** * @return An integer representing the total number of routers within the * NoC. */ - int get_number_of_noc_routers(void) const; + int get_number_of_noc_routers() const; /** * @brief Get all the links in the NoC. The links themselves cannot @@ -191,7 +215,7 @@ class NocStorage { * * @return A vector of links. */ - const vtr::vector& get_noc_links(void) const; + const vtr::vector& get_noc_links() const; /** * @brief Get all the links in the NoC. The links themselves can @@ -200,22 +224,13 @@ class NocStorage { * * @return A vector of links. */ - vtr::vector& get_mutable_noc_links(void); + vtr::vector& get_mutable_noc_links(); /** * @return An integer representing the total number of links within the * NoC. */ - int get_number_of_noc_links(void) const; - - /** - * @brief Get the maximum allowable bandwidth for a link - * within the NoC. - * - * @return a numeric value that represents the link bandwidth in bps - */ - - double get_noc_link_bandwidth(void) const; + int get_number_of_noc_links() const; /** * @brief Get the latency of traversing through a link in @@ -223,8 +238,7 @@ class NocStorage { * * @return a numeric value that represents the link latency in seconds */ - - double get_noc_link_latency(void) const; + double get_noc_link_latency() const; /** * @brief Get the latency of traversing through a router in @@ -232,8 +246,25 @@ class NocStorage { * * @return a numeric value that represents the router latency in seconds */ + double get_noc_router_latency() const; - double get_noc_router_latency(void) const; + /** + * @return True if some NoC routers have different latencies than others. + * False if all NoC routers have the same latency. + */ + bool get_detailed_router_latency() const; + + /** + * @return True if some NoC links have different latencies than others. + * False if all NoC links have the same latency. + */ + bool get_detailed_link_latency() const; + + /** + * @return True if some NoC links have different bandwidths than others. + * False if all NoC links have the same bandwidth. + */ + bool get_detailed_link_bandwidth() const; // getters for routers @@ -269,6 +300,20 @@ class NocStorage { */ const NocLink& get_single_noc_link(NocLinkId id) const; + /** + * + * @tparam Container The type of standard library container used to carry + * NoCLinkIds. This container type must be iterable in a range-based loop. + * @tparam Ts Used to help clang infer correct template types. GCC can compile + * without this extra template argument. + * @param noc_link_ids A standard container that contains NoCLinkIds of the + * requested NoC links + * @return A const + */ + template class Container, typename... Ts> + const std::vector>& get_noc_links(const Container& noc_link_ids) const; + + /** * @brief Given source and sink router identifiers, this function * finds a link connecting these routers and returns its identifier. @@ -282,7 +327,7 @@ class NocStorage { * to the destination router. NocLinkId::INVALID() is such a link is not * found. */ - NocLinkId get_single_noc_link_id(NocRouterId src_router, NocRouterId dst_router) const; + NocLinkId get_single_noc_link_id(NocRouterId src_router, NocRouterId dst_router) const; /** * @brief Given a unique link identifier, get the corresponding link @@ -322,7 +367,9 @@ class NocStorage { * @param grid_position_y The vertical position on the FPGA of the physical * tile that this router represents. */ - void add_router(int id, int grid_position_x, int grid_position_y, int layer_poisition); + void add_router(int id, + int grid_position_x, int grid_position_y, int layer_position, + double latency); /** * @brief Creates a new link and adds it to the NoC. The newly created @@ -336,43 +383,35 @@ class NocStorage { * @param sink A unique identifier for the router that the new link enters * into (incoming to the router) */ - void add_link(NocRouterId source, NocRouterId sink); + void add_link(NocRouterId source, NocRouterId sink, double bandwidth, double latency); /** - * @brief Set the maximum allowable bandwidth for a link - * within the NoC. - * + * @brief Set the maximum allowable bandwidth for all links + * within the NoC */ - void set_noc_link_bandwidth(double link_bandwidth); /** * @brief Set the latency of traversing through a link in * the NoC. - * */ - void set_noc_link_latency(double link_latency); /** * @brief Set the latency of traversing through a router in * the NoC. - * */ - void set_noc_router_latency(double router_latency); /** * @brief Set the internal reference to the device * grid width. - * */ - void set_device_grid_width(int grid_width); void set_device_grid_spec(int grid_width, int grid_height); - // general utiliy functions + // general utility functions /** * @brief The link is removed from the outgoing vector of links for * the source router. The link is not removed from the vector of all @@ -400,18 +439,24 @@ class NocStorage { * NoC (routers and links cannot be added or removed). This function * should be called after building the NoC. Guarantees that * no future changes can be made. - * + * + * When the NoC building is finished, this function checks whether + * all links and routers have the same bandwidth and latency. + * If some NoC elements have different latencies or bandwidths than + * others, a flag is set to indicate that the detailed NoC model should be + * used. In the detailed model, instead of associating a single latency or + * bandwidth value with all NoC routers or links, each NoC router or link + * has its specific value. */ - void finished_building_noc(void); + void finished_building_noc(); /** * @brief Resets the NoC by clearing all internal datastructures. * This includes deleting all routers and links. Also all internal * IDs are removed (the is conversion table is cleared). It is * recommended to run this function before building the NoC. - * */ - void clear_noc(void); + void clear_noc(); /** * @brief Given a user id of a router, this function converts @@ -423,6 +468,13 @@ class NocStorage { */ NocRouterId convert_router_id(int id) const; + /** + * @brief Converts a NoCRouterID to the user router id. + * @param id The internal NoCRouterId + * @return The user provided router id; + */ + int convert_router_id(NocRouterId id) const; + /** * @brief The datastructure that stores the outgoing links to each * router is an 2-D Vector. When processing the links, they can be @@ -432,7 +484,7 @@ class NocStorage { * number of routers in the NoC. * */ - void make_room_for_noc_router_link_list(void); + void make_room_for_noc_router_link_list(); /** * @brief Two links are considered parallel when the source router of one @@ -470,10 +522,10 @@ class NocStorage { * @param grid_position_x The horizontal position on the FPGA of the physical * tile that this router represents. * - * @param grid_position_y The vertical position on the FPGA of the phyical + * @param grid_position_y The vertical position on the FPGA of the physical * tile that this router represents. * - * @param layer_position The layer number of the phyical + * @param layer_position The layer number of the physical * tile that this router represents. * * @return int Represents a unique key that can be used to identify a @@ -491,4 +543,18 @@ class NocStorage { void echo_noc(char* file_name) const; }; -#endif \ No newline at end of file + +template class Container, typename... Ts> +const std::vector>& NocStorage::get_noc_links(const Container& noc_link_ids) const { + returnable_noc_link_const_refs_.clear(); + + std::transform(noc_link_ids.begin(), noc_link_ids.end(), std::back_inserter(returnable_noc_link_const_refs_), + [this](const NocLinkId lid) { + return std::reference_wrapper(this->get_single_noc_link(lid)); + }); + + return returnable_noc_link_const_refs_; +} + +#endif + diff --git a/vpr/src/noc/noc_traffic_flows.cpp b/vpr/src/noc/noc_traffic_flows.cpp index 9d80f4c692f..795a0316cb6 100644 --- a/vpr/src/noc/noc_traffic_flows.cpp +++ b/vpr/src/noc/noc_traffic_flows.cpp @@ -9,7 +9,7 @@ NocTrafficFlows::NocTrafficFlows() { // getters for the traffic flows -int NocTrafficFlows::get_number_of_traffic_flows(void) const { +int NocTrafficFlows::get_number_of_traffic_flows() const { return noc_traffic_flows.size(); } @@ -33,7 +33,7 @@ const std::vector& NocTrafficFlows::get_traffic_flows_associat } } -int NocTrafficFlows::get_number_of_routers_used_in_traffic_flows(void) { +int NocTrafficFlows::get_number_of_routers_used_in_traffic_flows() { return traffic_flows_associated_to_router_blocks.size(); } @@ -49,11 +49,11 @@ const vtr::vector>& NocTrafficFlows::ge return traffic_flow_routes; } -const std::vector& NocTrafficFlows::get_router_clusters_in_netlist(void) const { +const std::vector& NocTrafficFlows::get_router_clusters_in_netlist() const { return router_cluster_in_netlist; } -const std::vector& NocTrafficFlows::get_all_traffic_flow_id(void) const { +const std::vector& NocTrafficFlows::get_all_traffic_flow_id() const { return noc_traffic_flows_ids; } @@ -84,8 +84,6 @@ void NocTrafficFlows::create_noc_traffic_flow(const std::string& source_router_m // now add the new traffic flow to flows associated with the current source and sink router add_traffic_flow_to_associated_routers(curr_traffic_flow_id, source_router_cluster_id); add_traffic_flow_to_associated_routers(curr_traffic_flow_id, sink_router_cluster_id); - - return; } void NocTrafficFlows::set_router_cluster_in_netlist(const std::vector& routers_cluster_id_in_netlist) { @@ -98,18 +96,16 @@ void NocTrafficFlows::set_router_cluster_in_netlist(const std::vectorsecond.emplace_back(traffic_flow_id); } - - return; } void NocTrafficFlows::echo_noc_traffic_flows(char* file_name) { @@ -208,6 +200,4 @@ void NocTrafficFlows::echo_noc_traffic_flows(char* file_name) { } vtr::fclose(fp); - - return; } \ No newline at end of file diff --git a/vpr/src/noc/noc_traffic_flows.h b/vpr/src/noc/noc_traffic_flows.h index dac054d4bef..7db9041a05d 100644 --- a/vpr/src/noc/noc_traffic_flows.h +++ b/vpr/src/noc/noc_traffic_flows.h @@ -154,7 +154,7 @@ class NocTrafficFlows { * @return int An integer that represents the number of unique traffic * flows within the NoC. */ - int get_number_of_traffic_flows(void) const; + int get_number_of_traffic_flows() const; /** * @brief Given a unique id of a traffic flow (t_noc_traffic_flow) @@ -192,7 +192,7 @@ class NocTrafficFlows { * @return int The total number of unique routers used in * the traffic flows provided by the user. */ - int get_number_of_routers_used_in_traffic_flows(void); + int get_number_of_routers_used_in_traffic_flows(); /** * @brief Gets the routed path of traffic flow. This cannot be @@ -229,13 +229,13 @@ class NocTrafficFlows { * @return a vector ([0..num_logical_router-1]) where each entry gives the clusterBlockId * of a logical NoC router. Used for fast lookups in the placer. */ - const std::vector& get_router_clusters_in_netlist(void) const; + const std::vector& get_router_clusters_in_netlist() const; /** * @return provides access to all traffic flows' ids to allow a range-based * loop through all traffic flows, used in noc_place_utils.cpp functions. */ - const std::vector& get_all_traffic_flow_id(void) const; + const std::vector& get_all_traffic_flow_id() const; // setters @@ -294,14 +294,14 @@ class NocTrafficFlows { * */ - void finished_noc_traffic_flows_setup(void); + void finished_noc_traffic_flows_setup(); /** * @brief Resets the class by clearing internal * datastructures. * */ - void clear_traffic_flows(void); + void clear_traffic_flows(); /** * @brief Given a block from the clustered netlist, determine @@ -331,6 +331,20 @@ class NocTrafficFlows { * traffic flow information */ void echo_noc_traffic_flows(char* file_name); + + + /** + * @brief Defines the latency constraint of a traffic flow + * when not provided by the user. + * + * This value has to be significantly larger than latencies + * seen within the NoC so that the net effect in the placement + * cost is 0 (the latency constraint has no effect since there is none). + * Since the traffic flow latencies will be in nanoseconds, + * setting this value to 1 second which is significantly larger + * than what will be seen in the NoC. + */ + static constexpr double DEFAULT_MAX_TRAFFIC_FLOW_LATENCY = 1.; }; #endif \ No newline at end of file diff --git a/vpr/src/noc/north_last_routing.cpp b/vpr/src/noc/north_last_routing.cpp index ebf4e655896..7bfc58791c0 100644 --- a/vpr/src/noc/north_last_routing.cpp +++ b/vpr/src/noc/north_last_routing.cpp @@ -96,4 +96,35 @@ TurnModelRouting::Direction NorthLastRouting::select_next_direction(const std::v } return selected_direction; -} \ No newline at end of file +} + +bool NorthLastRouting::is_turn_legal(const std::array, 3>& noc_routers) const { + const int x1 = noc_routers[0].get().get_router_grid_position_x(); + const int y1 = noc_routers[0].get().get_router_grid_position_y(); + + const int x2 = noc_routers[1].get().get_router_grid_position_x(); + const int y2 = noc_routers[1].get().get_router_grid_position_y(); + + const int x3 = noc_routers[2].get().get_router_grid_position_x(); + const int y3 = noc_routers[2].get().get_router_grid_position_y(); + + // check if the given routers can be traversed one after another + VTR_ASSERT(x2 == x1 || y2 == y1); + VTR_ASSERT(x3 == x2 || y3 == y2); + + // going back to the first router is not allowed + if (x1 == x3 && y1 == y3) { + return false; + } + + /* In the north-last algorithm, once the north direction is taken, no other + * direction can be followed. Therefore, if the first link moves upward, the + * second one cannot move horizontally. The case where the second link goes + * back to the first router was checked in the previous if statement. + */ + if (y2 > y1 && x2 != x3) { + return false; + } + + return true; +} diff --git a/vpr/src/noc/north_last_routing.h b/vpr/src/noc/north_last_routing.h index e9e877e68b4..61aaf8caa4b 100644 --- a/vpr/src/noc/north_last_routing.h +++ b/vpr/src/noc/north_last_routing.h @@ -66,6 +66,8 @@ class NorthLastRouting : public TurnModelRouting { NocRouterId curr_router_id, NocTrafficFlowId traffic_flow_id, const NocStorage& noc_model) override; + + bool is_turn_legal(const std::array, 3>& noc_routers) const override; }; #endif //VTR_NORTH_LAST_ROUTING_H diff --git a/vpr/src/noc/odd_even_routing.cpp b/vpr/src/noc/odd_even_routing.cpp index 8c660e5b02c..68a6b59a479 100644 --- a/vpr/src/noc/odd_even_routing.cpp +++ b/vpr/src/noc/odd_even_routing.cpp @@ -34,10 +34,13 @@ const std::vector& OddEvenRouting::get_legal_direct const auto curr_router_pos = curr_router.get_router_physical_location(); const auto dst_router_pos = dst_router.get_router_physical_location(); - // get the compressed location for source, current, and destination NoC routers - auto compressed_src_loc = get_compressed_loc_approx(compressed_noc_grid,t_pl_loc{src_router_pos, 0}, num_layers)[src_router_pos.layer_num]; - auto compressed_curr_loc = get_compressed_loc_approx(compressed_noc_grid,t_pl_loc{curr_router_pos, 0}, num_layers)[curr_router_pos.layer_num]; - auto compressed_dst_loc = get_compressed_loc_approx(compressed_noc_grid,t_pl_loc{dst_router_pos, 0}, num_layers)[dst_router_pos.layer_num]; + /* get the compressed location for source, current, and destination NoC routers + * Odd-even routing algorithm restricts turn based on whether the current NoC router + * in an odd or even NoC column. This information can be extracted from the NoC compressed grid. + */ + auto compressed_src_loc = get_compressed_loc_approx(compressed_noc_grid, t_pl_loc{src_router_pos, 0}, num_layers)[src_router_pos.layer_num]; + auto compressed_curr_loc = get_compressed_loc_approx(compressed_noc_grid, t_pl_loc{curr_router_pos, 0}, num_layers)[curr_router_pos.layer_num]; + auto compressed_dst_loc = get_compressed_loc_approx(compressed_noc_grid, t_pl_loc{dst_router_pos, 0}, num_layers)[dst_router_pos.layer_num]; // clear returned legal directions from the previous call returned_legal_direction.clear(); @@ -151,3 +154,67 @@ bool OddEvenRouting::is_odd(int number) { bool OddEvenRouting::is_even(int number) { return (number % 2) == 0; } + +bool OddEvenRouting::is_turn_legal(const std::array, 3>& noc_routers) const { + // used to access NoC compressed grid + const auto& place_ctx = g_vpr_ctx.placement(); + // used to get NoC logical block type + const auto& cluster_ctx = g_vpr_ctx.clustering(); + // used to get the clustered block ID of a NoC router + auto& noc_ctx = g_vpr_ctx.noc(); + // get number of layers + const int num_layers = g_vpr_ctx.device().grid.get_num_layers(); + + const int x1 = noc_routers[0].get().get_router_grid_position_x(); + const int y1 = noc_routers[0].get().get_router_grid_position_y(); + + const int x2 = noc_routers[1].get().get_router_grid_position_x(); + const int y2 = noc_routers[1].get().get_router_grid_position_y(); + + const int x3 = noc_routers[2].get().get_router_grid_position_x(); + const int y3 = noc_routers[2].get().get_router_grid_position_y(); + + // check if the given routers can be traversed one after another + VTR_ASSERT(x2 == x1 || y2 == y1); + VTR_ASSERT(x3 == x2 || y3 == y2); + + // get the position of the second NoC routers + const auto router2_pos = noc_routers[1].get().get_router_physical_location(); + + // Get the logical block type for router + const auto router_block_type = cluster_ctx.clb_nlist.block_type(noc_ctx.noc_traffic_flows_storage.get_router_clusters_in_netlist()[0]); + + // Get the compressed grid for NoC + const auto& compressed_noc_grid = place_ctx.compressed_block_grids[router_block_type->index]; + + // get the compressed location of the second NoC router + auto compressed_2_loc = get_compressed_loc(compressed_noc_grid, t_pl_loc{router2_pos, 0}, num_layers)[router2_pos.layer_num]; + + // going back to the first router is not allowed + if (x1 == x3 && y1 == y3) { + return false; + } + + // check if the turn is compatible with odd-even routing algorithm turn restrictions + if (is_odd(compressed_2_loc.x)) { + if (y2 != y1 && x3 < x2) { + return false; + } + } else { // even column + if (x2 > x1 && y2 != y3) { + return false; + } + } + + return true; +} + + + + + + + + + + diff --git a/vpr/src/noc/odd_even_routing.h b/vpr/src/noc/odd_even_routing.h index 512b3db965b..deaf67f9c10 100644 --- a/vpr/src/noc/odd_even_routing.h +++ b/vpr/src/noc/odd_even_routing.h @@ -35,6 +35,9 @@ class OddEvenRouting : public TurnModelRouting{ NocRouterId curr_router_id, NocTrafficFlowId traffic_flow_id, const NocStorage& noc_model) override; + + bool is_turn_legal(const std::array, 3>& noc_routers) const override; + /** * Checks whether the given umber is odd. * @param number An integer number diff --git a/vpr/src/noc/read_xml_noc_traffic_flows_file.cpp b/vpr/src/noc/read_xml_noc_traffic_flows_file.cpp index b785d2c4da6..3f12c02ed2d 100644 --- a/vpr/src/noc/read_xml_noc_traffic_flows_file.cpp +++ b/vpr/src/noc/read_xml_noc_traffic_flows_file.cpp @@ -3,7 +3,7 @@ void read_xml_noc_traffic_flows_file(const char* noc_flows_file) { // start by checking that the provided file is a ".flows" file - if (vtr::check_file_name_extension(noc_flows_file, ".flows") == false) { + if (!vtr::check_file_name_extension(noc_flows_file, ".flows")) { VPR_FATAL_ERROR(VPR_ERROR_OTHER, "NoC traffic flows file '%s' has an unknown extension. Expecting .flows for NoC traffic flow files.", noc_flows_file); } @@ -72,11 +72,14 @@ void read_xml_noc_traffic_flows_file(const char* noc_flows_file) { if (getEchoEnabled() && isEchoFileEnabled(E_ECHO_NOC_TRAFFIC_FLOWS)) { noc_ctx.noc_traffic_flows_storage.echo_noc_traffic_flows(getEchoFileName(E_ECHO_NOC_TRAFFIC_FLOWS)); } - - return; } -void process_single_flow(pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data, const ClusteringContext& cluster_ctx, NocContext& noc_ctx, t_physical_tile_type_ptr noc_router_tile_type, const std::vector& cluster_blocks_compatible_with_noc_router_tiles) { +void process_single_flow(pugi::xml_node single_flow_tag, + const pugiutil::loc_data& loc_data, + const ClusteringContext& cluster_ctx, + NocContext& noc_ctx, + t_physical_tile_type_ptr noc_router_tile_type, + const std::vector& cluster_blocks_compatible_with_noc_router_tiles) { // contains all traffic flows NocTrafficFlows* noc_traffic_flow_storage = &noc_ctx.noc_traffic_flows_storage; @@ -113,9 +116,13 @@ void process_single_flow(pugi::xml_node single_flow_tag, const pugiutil::loc_dat verify_traffic_flow_properties(traffic_flow_bandwidth, max_traffic_flow_latency, traffic_flow_priority, single_flow_tag, loc_data); // The current flow information is legal, so store it - noc_traffic_flow_storage->create_noc_traffic_flow(source_router_module_name, sink_router_module_name, source_router_id, sink_router_id, traffic_flow_bandwidth, max_traffic_flow_latency, traffic_flow_priority); - - return; + noc_traffic_flow_storage->create_noc_traffic_flow(source_router_module_name, + sink_router_module_name, + source_router_id, + sink_router_id, + traffic_flow_bandwidth, + max_traffic_flow_latency, + traffic_flow_priority); } double get_traffic_flow_bandwidth(pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data) { @@ -133,7 +140,7 @@ double get_traffic_flow_bandwidth(pugi::xml_node single_flow_tag, const pugiutil double get_max_traffic_flow_latency(pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data) { // "set to large value, indicating no constraint - double max_traffic_flow_latency = DEFAULT_MAX_TRAFFIC_FLOW_LATENCY; + double max_traffic_flow_latency = NocTrafficFlows::DEFAULT_MAX_TRAFFIC_FLOW_LATENCY; // holds the latency value as a string so that it can be used to convert to a floating point value (this is done so that scientific notation is supported) std::string max_traffic_flow_latency_intermediate_val; @@ -169,7 +176,7 @@ int get_traffic_flow_priority(pugi::xml_node single_flow_tag, const pugiutil::lo return traffic_flow_priority; } -void verify_traffic_flow_router_modules(std::string source_router_name, std::string sink_router_name, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data) { +void verify_traffic_flow_router_modules(const std::string& source_router_name, const std::string& sink_router_name, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data) { // check that the source router module name is not empty if (source_router_name == "") { vpr_throw(VPR_ERROR_OTHER, loc_data.filename_c_str(), loc_data.line(single_flow_tag), "Invalid name for the source NoC router module."); @@ -183,8 +190,6 @@ void verify_traffic_flow_router_modules(std::string source_router_name, std::str // Cannot have the source and sink routers have the same name (they need to be different). A flow cant go to a single router. vpr_throw(VPR_ERROR_OTHER, loc_data.filename_c_str(), loc_data.line(single_flow_tag), "Source and sink NoC routers cannot be the same modules."); } - - return; } void verify_traffic_flow_properties(double traffic_flow_bandwidth, double max_traffic_flow_latency, int traffic_flow_priority, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data) { @@ -202,11 +207,13 @@ void verify_traffic_flow_properties(double traffic_flow_bandwidth, double max_tr if (traffic_flow_priority <= 0) { vpr_throw(VPR_ERROR_OTHER, loc_data.filename_c_str(), loc_data.line(single_flow_tag), "The traffic flow priorities expected to be positive, non-zero integer values."); } - - return; } -ClusterBlockId get_router_module_cluster_id(std::string router_module_name, const ClusteringContext& cluster_ctx, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data, const std::vector& cluster_blocks_compatible_with_noc_router_tiles) { +ClusterBlockId get_router_module_cluster_id(const std::string& router_module_name, + const ClusteringContext& cluster_ctx, + pugi::xml_node single_flow_tag, + const pugiutil::loc_data& loc_data, + const std::vector& cluster_blocks_compatible_with_noc_router_tiles) { ClusterBlockId router_module_id = ClusterBlockId::INVALID(); // Given a regex pattern, use it to match a name of a cluster router block within the clustered netlist. If a matching cluster block is found, then return its cluster block id. @@ -226,7 +233,7 @@ ClusterBlockId get_router_module_cluster_id(std::string router_module_name, cons return router_module_id; } -void check_traffic_flow_router_module_type(std::string router_module_name, ClusterBlockId router_module_id, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data, const ClusteringContext& cluster_ctx, t_physical_tile_type_ptr noc_router_tile_type) { +void check_traffic_flow_router_module_type(const std::string& router_module_name, ClusterBlockId router_module_id, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data, const ClusteringContext& cluster_ctx, t_physical_tile_type_ptr noc_router_tile_type) { // get the logical type of the provided router module t_logical_block_type_ptr router_module_logical_type = cluster_ctx.clb_nlist.block_type(router_module_id); @@ -239,8 +246,6 @@ void check_traffic_flow_router_module_type(std::string router_module_name, Clust if (!is_tile_compatible(noc_router_tile_type, router_module_logical_type)) { vpr_throw(VPR_ERROR_OTHER, loc_data.filename_c_str(), loc_data.line(single_flow_tag), "The supplied module name '%s' is not a NoC router.", router_module_name.c_str()); } - - return; } t_physical_tile_type_ptr get_physical_type_of_noc_router_tile(const DeviceContext& device_ctx, NocContext& noc_ctx) { @@ -257,7 +262,7 @@ t_physical_tile_type_ptr get_physical_type_of_noc_router_tile(const DeviceContex physical_noc_router->get_router_layer_position()}); } -bool check_that_all_router_blocks_have_an_associated_traffic_flow(NocContext& noc_ctx, t_physical_tile_type_ptr noc_router_tile_type, std::string noc_flows_file) { +bool check_that_all_router_blocks_have_an_associated_traffic_flow(NocContext& noc_ctx, t_physical_tile_type_ptr noc_router_tile_type, const std::string& noc_flows_file) { bool result = true; // contains the number of all the noc router blocks in the design @@ -269,10 +274,10 @@ bool check_that_all_router_blocks_have_an_associated_traffic_flow(NocContext& no /* * Go through the router subtiles and get the router logical block types the subtiles support. Then determine how many of each router logical block types there are in the clustered netlist. The accumulated sum of all these clusters is the total number of router blocks in the design. */ - for (auto subtile = noc_router_subtiles->begin(); subtile != noc_router_subtiles->end(); subtile++) { - for (auto router_logical_block = subtile->equivalent_sites.begin(); router_logical_block != subtile->equivalent_sites.end(); router_logical_block++) { + for (const auto & noc_router_subtile : *noc_router_subtiles) { + for (auto router_logical_block : noc_router_subtile.equivalent_sites) { // get the number of logical blocks in the design of the current logical block type - number_of_router_blocks_in_design += clustered_netlist_stats.num_blocks_type[(*router_logical_block)->index]; + number_of_router_blocks_in_design += clustered_netlist_stats.num_blocks_type[router_logical_block->index]; } } @@ -299,14 +304,14 @@ std::vector get_cluster_blocks_compatible_with_noc_router_tiles( // vector to store all the cluster blocks ids that can be placed within a physical NoC router tile on the FPGA std::vector cluster_blocks_compatible_with_noc_router_tiles; - for (auto cluster_block_id = cluster_netlist_blocks.begin(); cluster_block_id != cluster_netlist_blocks.end(); cluster_block_id++) { + for (auto cluster_blk_id : cluster_netlist_blocks) { // get the logical type of the block - t_logical_block_type_ptr cluster_block_type = cluster_ctx.clb_nlist.block_type(*cluster_block_id); + t_logical_block_type_ptr cluster_block_type = cluster_ctx.clb_nlist.block_type(cluster_blk_id); // check if the current block is compatible with a NoC router tile // if it is, then this block is a NoC outer instantiated by the user in the design, so add it to the vector compatible blocks if (is_tile_compatible(noc_router_tile_type, cluster_block_type)) { - cluster_blocks_compatible_with_noc_router_tiles.push_back(*cluster_block_id); + cluster_blocks_compatible_with_noc_router_tiles.push_back(cluster_blk_id); } } diff --git a/vpr/src/noc/read_xml_noc_traffic_flows_file.h b/vpr/src/noc/read_xml_noc_traffic_flows_file.h index e8005665b3c..7abd685d82e 100644 --- a/vpr/src/noc/read_xml_noc_traffic_flows_file.h +++ b/vpr/src/noc/read_xml_noc_traffic_flows_file.h @@ -39,11 +39,6 @@ // identifier when an integer conversion failed while reading an attribute value in an xml file constexpr int NUMERICAL_ATTRIBUTE_CONVERSION_FAILURE = -1; -// defines the latency constraint of a traffic flow when not provided by the user -// This value has to be significantly larger than latencies seen within the NoC so that the net effect in the placement cost is 0 (the latency constraint has no effect since there is none) -// Since the traffic flow latencies will be in nanoseconds, setting this value to 1 second which is significantly larger that what will be seen in the NoC -constexpr double DEFAULT_MAX_TRAFFIC_FLOW_LATENCY = 1.; - // defines the priority of a traffic flow when not specified by a user constexpr int DEFAULT_TRAFFIC_FLOW_PRIORITY = 1; @@ -142,7 +137,7 @@ int get_traffic_flow_priority(pugi::xml_node single_flow_tag, const pugiutil::lo * @param loc_data Contains location data about the current line in the xml * file. Passed in for error logging. */ -void verify_traffic_flow_router_modules(std::string source_router_name, std::string sink_router_name, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data); +void verify_traffic_flow_router_modules(const std::string& source_router_name, const std::string& sink_router_name, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data); /** * @brief Ensures the traffic flow's bandwidth, latency constraint and @@ -181,7 +176,11 @@ void verify_traffic_flow_properties(double traffic_flow_bandwidth, double max_tr * @return ClusterBlockId The corresponding router block id of the provided * router module name. */ -ClusterBlockId get_router_module_cluster_id(std::string router_module_name, const ClusteringContext& cluster_ctx, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data, const std::vector& cluster_blocks_compatible_with_noc_router_tiles); +ClusterBlockId get_router_module_cluster_id(const std::string& router_module_name, + const ClusteringContext& cluster_ctx, + pugi::xml_node single_flow_tag, + const pugiutil::loc_data& loc_data, + const std::vector& cluster_blocks_compatible_with_noc_router_tiles); /** * @brief Checks to see whether a given router block is compatible with a NoC @@ -204,7 +203,7 @@ ClusterBlockId get_router_module_cluster_id(std::string router_module_name, cons * FPGA. Used to check if the router block is * compatible with a router tile. */ -void check_traffic_flow_router_module_type(std::string router_module_name, ClusterBlockId router_module_id, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data, const ClusteringContext& cluster_ctx, t_physical_tile_type_ptr noc_router_tile_type); +void check_traffic_flow_router_module_type(const std::string& router_module_name, ClusterBlockId router_module_id, pugi::xml_node single_flow_tag, const pugiutil::loc_data& loc_data, const ClusteringContext& cluster_ctx, t_physical_tile_type_ptr noc_router_tile_type); /** * @brief Retrieves the physical type of a noc router tile. @@ -237,7 +236,7 @@ t_physical_tile_type_ptr get_physical_type_of_noc_router_tile(const DeviceContex * associated traffic flow. False means there are some router * blocks that do not have a an associated traffic flow. */ -bool check_that_all_router_blocks_have_an_associated_traffic_flow(NocContext& noc_ctx, t_physical_tile_type_ptr noc_router_tile_type, std::string noc_flows_file); +bool check_that_all_router_blocks_have_an_associated_traffic_flow(NocContext& noc_ctx, t_physical_tile_type_ptr noc_router_tile_type, const std::string& noc_flows_file); /** * @brief Goes through the blocks within the clustered netlist and identifies diff --git a/vpr/src/noc/sat_routing.cpp b/vpr/src/noc/sat_routing.cpp new file mode 100644 index 00000000000..354620c6cfa --- /dev/null +++ b/vpr/src/noc/sat_routing.cpp @@ -0,0 +1,679 @@ +#ifdef ENABLE_NOC_SAT_ROUTING + + +#include "sat_routing.h" +#include "turn_model_routing.h" + +#include "globals.h" +#include "vtr_time.h" + +#include + +#include "ortools/sat/cp_model.h" +#include "ortools/sat/cp_model.pb.h" +#include "ortools/sat/cp_model_solver.h" + +namespace orsat = operations_research::sat; + +/** + * For each traffic flow and NoC link pair, we create a boolean variable. + * When a variable associated with traffic flow t and NoC link l is set, + * it means that t is routed through l. + */ +typedef std::unordered_map, orsat::BoolVar> t_flow_link_var_map; + + +/** + * @brief Creates a boolean variable for each (traffic flow, link) pair. + * It also create integer variables for latency-constrained traffic flows. + * + * @param cp_model The CP model builder object. Created variables are added + * to this model builder object. + * @param flow_link_vars The created boolean variables for (traffic flow, link) pairs + * are stored in this container to be used for adding constraints and defining objective + * functions. + * @param latency_overrun_vars The created integer variables for latency-constrained + * traffic flows are added to this container for future use, e.g. adding constraints + * and defining objective functions. + */ +static void create_flow_link_vars(orsat::CpModelBuilder& cp_model, + t_flow_link_var_map& flow_link_vars, + std::map& latency_overrun_vars); + +/** + * @brief Translates a latency constraint for a traffic flow to the maximum number + * of links that the traffic flow can traverse without violating the latency constraint. + * + * This translation is possible only when all NoC routers or links have the same latency. + * NoC routers can have a different latency than NoC links, but all router (or links) must + * have the same latency. + * + * @param traffic_flow_id The unique ID of the latency-constrained traffic flow. + * @return The maximum number links that can travelled by the given traffic flow without + * violating the latency constraint. + */ +static int comp_max_number_of_traversed_links(NocTrafficFlowId traffic_flow_id); + +/** + * @brief Performs an outer product between traffic_flow_ids and noc_link_ids + * and returns all boolean variables for the resulting (traffic flow, link) pairs. + * + * @param map The container that stores all boolean variables for all + * (traffic flow, link) pairs. + * @param traffic_flow_ids Traffic flows whose boolean variables are requested. + * @param noc_link_ids NoC links whose boolean variables are requested. + * @return A vector of boolean variables for the requested (traffic flow, link) pairs. + */ +static std::vector get_flow_link_vars(const t_flow_link_var_map& map, + const std::vector& traffic_flow_ids, + const std::vector& noc_link_ids); + +/** + * @brief Adds constraints for latency_overrun_vars variables to make sure + * that they count the number of extra links a traffic flow is traversing + * beyond what its latency constraint allows. For example, if a traffic flow + * latency constraint allows the traffic flow to traverse at most 3 links, + * but 4 (traffic flow, link) boolean variables are activated for this traffic flow, + * the corresponding integer variable in latency_overrun_vars should take a value + * of 1 because an extra link beyond the maximum 3 links has been activated. + * + * @param cp_model The CP model builder object. New constraints are added + * to this model builder object. + * @param flow_link_vars Boolean variable container for (traffic flow, link) pairs. + * @param latency_overrun_vars The integer variables that are to be constrained. + */ +static void constrain_latency_overrun_vars(orsat::CpModelBuilder& cp_model, + t_flow_link_var_map& flow_link_vars, + std::map& latency_overrun_vars); + +/** + * @brief Forbids specific turns that traffic flows can take. + * Turn model routing algorithms forbid specific turns in a mesh topology + * to make sure that deadlock does not happen. A turn can be determined by + * specifying two consecutive links. A turn can be forbidden in the SAT + * formulation by making sure that at most one of two consecutive links + * that specify a turn is activated. + * + * @param flow_link_vars Boolean variable container for (traffic flow, link) pairs. + * @param cp_model The CP model builder object. New constraints are added + * to this model builder object. + */ +static void forbid_illegal_turns(t_flow_link_var_map& flow_link_vars, + orsat::CpModelBuilder& cp_model); + +/** + * @brief Creates a boolean variable for each link to indicate + * whether it is congested. This function adds some constraints + * to enforce congested_link_vars boolean variables to be set to 1 + * when their corresponding link congested. + * + * Since the SAT solver cannot work with floating point numbers, + * all link and traffic flow bandwidths are quantized. + * + * @param congested_link_vars To be filled with created boolean variables + * to indicate whether links are congested. + * @param flow_link_vars Boolean variable container for (traffic flow, link) pairs. + * @param cp_model The CP model builder object. Created variables are added + * to this model builder object. Constraints are also added to this object. + * @param bandwidth_resolution Specifies the resolution by which bandwidth + * values are quantized. + */ +static void create_congested_link_vars(vtr::vector& congested_link_vars, + t_flow_link_var_map& flow_link_vars, + orsat::CpModelBuilder& cp_model, + int bandwidth_resolution); + +/** + * @brief Quantize traffic flow bandwidths. The maximum NoC link bandwidth is + * quantized to the specified bandwidth resolution, and traffic flow bandwidths + * are quantized accordingly. + * + * @param bandwidth_resolution The resolution by which traffic flow bandwidth are + * quantized. Quantized bandwidths increment by link_bandwidth/resolution. + * @return A vector of quantized traffic flow bandwidths. + */ +static vtr::vector quantize_traffic_flow_bandwidths(int bandwidth_resolution); + +/** + * @brief Adds constraints to ensure that activated (traffic flow, link) + * boolean variables for a specific traffic flow create a continuous route + * starting from the source router and arriving at the destination. + * + * @param flow_link_vars Boolean variable container for (traffic flow, link) pairs. + * @param cp_model The CP model builder object. New constraints are added + * to this model builder object. + */ +static void add_continuity_constraints(t_flow_link_var_map& flow_link_vars, + orsat::CpModelBuilder& cp_model); + +/** + * @brief Creates a linear expression to be minimized by the SAT solver. + * This objective function is a linear combination of latency overrun, + * the number of congested links, and the quantized aggregate bandwidth. + * + * @param cp_model The CP model builder object. New constraints are added + * to this model builder object. + * @param flow_link_vars Boolean variable container for (traffic flow, link) pairs. + * @param latency_overrun_vars Integer variables for latency-constrained + * traffic flows. Each integer variable shows how many extra links a constrained + * traffic flow has traversed beyond what its latency constraint allows. + * @param congested_link_vars Boolean variables indicating whether a link is + * congested or not. + * @param bandwidth_resolution The resolution by which traffic flow bandwidths + * are quantized. + * @param latency_overrun_weight Specifies the importance of minimizing latency overrun + * for latency-constrained traffic flows. + * @param congestion_weight Specifies the importance of avoiding congestion in links. + * @param minimize_aggregate_bandwidth Specifies whether the objective includes an + * aggregate bandwidth term. + * + * @return A linear expression including latency overrun, the number of congested links, + * and the aggregate bandwidth; + */ +static orsat::LinearExpr create_objective(orsat::CpModelBuilder& cp_model, + t_flow_link_var_map& flow_link_vars, + std::map& latency_overrun_vars, + vtr::vector& congested_link_vars, + int bandwidth_resolution, + int latency_overrun_weight, + int congestion_weight, + bool minimize_aggregate_bandwidth); + +/** + * @brief Converts the activated (traffic flow, link) boolean variables to + * traffic flow routes. + * + * Note that traffic flow routes are not sorted in traversal order. Each + * traffic flow route contains NoC links that constitute the route, but these + * links may not stored in the route traversal order. For re-ordering traffic flow + * routes in route traversal order, call sort_noc_links_in_chain_order() function. + * + * @param flow_link_vars Boolean variable container for (traffic flow, link) pairs. + * @param response The SAT solver's response. This object is used to query the values + * of (traffic flow, link) variables. + * @return Traffic flow routes. NoC links may not be stored in the route traversal order. + */ +static vtr::vector> convert_vars_to_routes(t_flow_link_var_map& flow_link_vars, + const orsat::CpSolverResponse& response); + +/** + * @brief Sorts the given NoC links so that they can traversed one after another. + * + * After the SAT solver returns a solution, boolean (traffic flow, link) variables + * can be translated into traffic flow routes. The SAT solver does not have a notion + * traversal order. Therefore, activated NoC links for a traffic flow are stored in + * an arbitrary order. This function can reorder the activated links in the route + * traversal order. + * + * @param links NoC links that form a continuous route. NoC links can be stored + * in an order different than the traversal order. + * @return Sorted links in traversal order. + */ +static std::vector sort_noc_links_in_chain_order(const std::vector& links); + + +static std::vector get_flow_link_vars(const t_flow_link_var_map& map, + const std::vector& traffic_flow_ids, + const std::vector& noc_link_ids) { + std::vector results; + for (auto traffic_flow_id : traffic_flow_ids) { + for (auto noc_link_id : noc_link_ids) { + auto it = map.find({traffic_flow_id, noc_link_id}); + if (it != map.end()) { + results.push_back(it->second); + } + } + } + + return results; +} + +static void forbid_illegal_turns(t_flow_link_var_map& flow_link_vars, + orsat::CpModelBuilder& cp_model) { + const auto& noc_ctx = g_vpr_ctx.noc(); + const auto& traffic_flow_storage = noc_ctx.noc_traffic_flows_storage; + + auto noc_routing_alg = dynamic_cast (noc_ctx.noc_flows_router.get()); + // ensure that the routing algorithm is a turn model algorithm + VTR_ASSERT(noc_routing_alg != nullptr); + + // forbid illegal turns based on the routing algorithm + // this includes 180 degree turns + for (const auto& [link1, link2] : noc_routing_alg->get_all_illegal_turns(noc_ctx.noc_model)) { + for (auto traffic_flow_id : traffic_flow_storage.get_all_traffic_flow_id()) { + auto& first_var = flow_link_vars[{traffic_flow_id, link1}]; + auto& second_var = flow_link_vars[{traffic_flow_id, link2}]; + // at most one of two consecutive links that form a turn can be activated + cp_model.AddBoolOr({first_var.Not(), second_var.Not()}); + } + } +} + +static vtr::vector quantize_traffic_flow_bandwidths(int bandwidth_resolution) { + const auto& noc_ctx = g_vpr_ctx.noc(); + const auto& traffic_flow_storage = noc_ctx.noc_traffic_flows_storage; + + //TODO: support heterogeneous bandwidth + const auto& noc_links = noc_ctx.noc_model.get_noc_links(); + const double link_bandwidth = noc_links.front().get_bandwidth(); + auto it = std::adjacent_find(noc_links.begin(), noc_links.end(), [](const NocLink& a, const NocLink& b){ + return a.get_bandwidth() != b.get_bandwidth(); + }); + + if (it != noc_links.end()) { + const NocLink& first_link = *it; + const NocLink& second_link = *(it + 1); + VTR_LOG_ERROR( + "SAT router assumes all NoC links have the same bandwidth. " + "NoC links %d and %d have different bandwidth: %g and %g", + (size_t)first_link.get_link_id(), (size_t)second_link.get_link_id(), + first_link.get_bandwidth(), second_link.get_bandwidth()); + } + + vtr::vector rescaled_traffic_flow_bandwidths; + rescaled_traffic_flow_bandwidths.resize(traffic_flow_storage.get_number_of_traffic_flows()); + + // rescale traffic flow bandwidths + for (auto traffic_flow_id : traffic_flow_storage.get_all_traffic_flow_id()) { + const auto& traffic_flow = traffic_flow_storage.get_single_noc_traffic_flow(traffic_flow_id); + double bandwidth = traffic_flow.traffic_flow_bandwidth; + int rescaled_bandwidth = (int)std::floor((bandwidth / link_bandwidth) * bandwidth_resolution); + rescaled_traffic_flow_bandwidths[traffic_flow_id] = rescaled_bandwidth; + } + + return rescaled_traffic_flow_bandwidths; +} + +static void create_congested_link_vars(vtr::vector& congested_link_vars, + t_flow_link_var_map& flow_link_vars, + orsat::CpModelBuilder& cp_model, + int bandwidth_resolution) { + const auto& noc_ctx = g_vpr_ctx.noc(); + const auto& traffic_flow_storage = noc_ctx.noc_traffic_flows_storage; + + // quantize traffic flow bandwidth + vtr::vector rescaled_traffic_flow_bandwidths = quantize_traffic_flow_bandwidths(bandwidth_resolution); + + // go over all NoC links and create a boolean variable for each one to indicate if it is congested + for (const auto& noc_link : noc_ctx.noc_model.get_noc_links()) { + const NocLinkId noc_link_id = noc_link.get_link_id(); + orsat::LinearExpr bandwidth_load; + + // compute the total bandwidth routed through this link + for (auto traffic_flow_id : traffic_flow_storage.get_all_traffic_flow_id()) { + orsat::BoolVar binary_var = flow_link_vars[{traffic_flow_id, noc_link_id}]; + bandwidth_load += orsat::LinearExpr::Term(binary_var, rescaled_traffic_flow_bandwidths[traffic_flow_id]); + } + + orsat::BoolVar congested = cp_model.NewBoolVar(); + cp_model.AddLessOrEqual(bandwidth_load, bandwidth_resolution).OnlyEnforceIf(congested.Not()); + cp_model.AddGreaterThan(bandwidth_load, bandwidth_resolution).OnlyEnforceIf(congested); + congested_link_vars.push_back(congested); + } +} + +static void add_continuity_constraints(t_flow_link_var_map& flow_link_vars, + orsat::CpModelBuilder& cp_model) { + const auto& noc_ctx = g_vpr_ctx.noc(); + const auto& traffic_flow_storage = noc_ctx.noc_traffic_flows_storage; + const auto& place_ctx = g_vpr_ctx.placement(); + + // constrain the links that can be activated for each traffic flow in a way that they + // form a continuous route + for (auto traffic_flow_id : traffic_flow_storage.get_all_traffic_flow_id()) { + const auto& traffic_flow = traffic_flow_storage.get_single_noc_traffic_flow(traffic_flow_id); + + // get the source and destination logical router blocks in the current traffic flow + ClusterBlockId logical_source_router_block_id = traffic_flow.source_router_cluster_id; + ClusterBlockId logical_sink_router_block_id = traffic_flow.sink_router_cluster_id; + + // get the ids of the hard router blocks where the logical router cluster blocks have been placed + NocRouterId source_router_id = noc_ctx.noc_model.get_router_at_grid_location(place_ctx.block_locs[logical_source_router_block_id].loc); + NocRouterId sink_router_id = noc_ctx.noc_model.get_router_at_grid_location(place_ctx.block_locs[logical_sink_router_block_id].loc); + + // exactly one outgoing link of the source must be selected + const auto& src_outgoing_link_ids = noc_ctx.noc_model.get_noc_router_outgoing_links(source_router_id); + auto src_outgoing_vars = get_flow_link_vars(flow_link_vars, {traffic_flow_id}, src_outgoing_link_ids); + cp_model.AddExactlyOne(src_outgoing_vars); + + // exactly one incoming link of the sink must be selected + const auto& dst_incoming_link_ids = noc_ctx.noc_model.get_noc_router_incoming_links(sink_router_id); + auto dst_incoming_vars = get_flow_link_vars(flow_link_vars, {traffic_flow_id}, dst_incoming_link_ids); + cp_model.AddExactlyOne(dst_incoming_vars); + + // each NoC router has at most one incoming and one outgoing link activated + for (const auto& noc_router : noc_ctx.noc_model.get_noc_routers()) { + const int noc_router_user_id = noc_router.get_router_user_id(); + const NocRouterId noc_router_id = noc_ctx.noc_model.convert_router_id(noc_router_user_id); + + // the links connected to source and destination routers have already been constrained + if (noc_router_id == source_router_id || noc_router_id == sink_router_id) { + continue; + } + + + // for each intermediate router, at most one incoming link can be activated to route this traffic flow + const auto& incoming_links = noc_ctx.noc_model.get_noc_router_incoming_links(noc_router_id); + auto incoming_vars = get_flow_link_vars(flow_link_vars, {traffic_flow_id}, incoming_links); + cp_model.AddAtMostOne(incoming_vars); + + // for each intermediate router, at most one outgoing link can be activated to route this traffic flow + const auto& outgoing_links = noc_ctx.noc_model.get_noc_router_outgoing_links(noc_router_id); + auto outgoing_vars = get_flow_link_vars(flow_link_vars, {traffic_flow_id}, outgoing_links); + cp_model.AddAtMostOne(outgoing_vars); + + // count the number of activated incoming links for this traffic flow + orsat::LinearExpr incoming_vars_sum = orsat::LinearExpr::Sum(incoming_vars); + + // count the number of activated outgoing links for this traffic flow + orsat::LinearExpr outgoing_vars_sum = orsat::LinearExpr::Sum(outgoing_vars); + + /* the number activated incoming and outgoing links must be equal/ + * Either they are both 0, meaning that this NoC routers is not on the + * traffic flow router, or they are both 1, implying the traffic flow route + * goes through this NoC router.*/ + cp_model.AddEquality(incoming_vars_sum, outgoing_vars_sum); + } + } +} + +static std::vector sort_noc_links_in_chain_order(const std::vector& links) { + std::vector route; + if (links.empty()) { + return route; + } + + const auto& noc_model = g_vpr_ctx.noc().noc_model; + + // Create a map to find pairs by their first element + std::unordered_map src_map; + std::unordered_map is_dst; + for (const auto l : links) { + NocRouterId src_router_id = noc_model.get_single_noc_link(l).get_source_router(); + NocRouterId dst_router_id = noc_model.get_single_noc_link(l).get_sink_router(); + src_map[src_router_id] = l; + is_dst[dst_router_id] = true; + } + + // Find the starting pair (whose first element is not a second element of any pair) + auto it = links.begin(); + for (; it != links.end(); ++it) { + NocRouterId src_router_id = noc_model.get_single_noc_link(*it).get_source_router(); + if (is_dst.find(src_router_id) == is_dst.end()) { + break; + } + } + + // Reconstruct the chain starting from the found starting pair + auto current = *it; + while (true) { + route.push_back(current); + NocRouterId dst_router_id = noc_model.get_single_noc_link(current).get_sink_router(); + auto nextIt = src_map.find(dst_router_id); + if (nextIt == src_map.end()) { + break; // End of chain + } + current = nextIt->second; + } + + VTR_ASSERT(route.size() == links.size()); + + return route; +} + +static vtr::vector> convert_vars_to_routes(t_flow_link_var_map& flow_link_vars, + const orsat::CpSolverResponse& response) { + const auto& noc_ctx = g_vpr_ctx.noc(); + const auto& traffic_flow_storage = noc_ctx.noc_traffic_flows_storage; + + VTR_ASSERT(response.status() == orsat::CpSolverStatus::FEASIBLE || + response.status() == orsat::CpSolverStatus::OPTIMAL); + + vtr::vector> routes; + routes.resize(traffic_flow_storage.get_number_of_traffic_flows()); + + for (auto& [key, var] : flow_link_vars) { + auto [traffic_flow_id, noc_link_id] = key; + bool value = orsat::SolutionBooleanValue(response, var); + if (value) { + routes[traffic_flow_id].push_back(noc_link_id); + } + } + + for (auto& route : routes) { + route = sort_noc_links_in_chain_order(route); + } + + return routes; +} + +static void create_flow_link_vars(orsat::CpModelBuilder& cp_model, + t_flow_link_var_map& flow_link_vars, + std::map& latency_overrun_vars) { + const auto& noc_ctx = g_vpr_ctx.noc(); + const auto& noc_model = noc_ctx.noc_model; + const auto& traffic_flow_storage = noc_ctx.noc_traffic_flows_storage; + // used to access NoC compressed grid + const auto& place_ctx = g_vpr_ctx.placement(); + // used to get NoC logical block type + const auto& cluster_ctx = g_vpr_ctx.clustering(); + + // Get the logical block type for router + const auto router_block_type = cluster_ctx.clb_nlist.block_type(noc_ctx.noc_traffic_flows_storage.get_router_clusters_in_netlist()[0]); + + // Get the compressed grid for NoC + const auto& compressed_noc_grid = place_ctx.compressed_block_grids[router_block_type->index]; + + size_t max_n_cols = std::max_element(compressed_noc_grid.compressed_to_grid_x.begin(), compressed_noc_grid.compressed_to_grid_x.end(), + [](const std::vector& a, const std::vector& b) { + return a.size() < b.size(); + })->size(); + + size_t max_n_rows = std::max_element(compressed_noc_grid.compressed_to_grid_y.begin(), compressed_noc_grid.compressed_to_grid_y.end(), + [](const std::vector& a, const std::vector& b) { + return a.size() < b.size(); + })->size(); + + /* For specifying the domain, assume that the longest traffic flow route starts from + * one corner and terminates at the opposite corner. Assuming minimal routing, such a + * route traversed around H+W links, where H and W are the number of rows and columns + * of the mesh grid. + */ + operations_research::Domain latency_overrun_domain(0, (int)(max_n_rows + max_n_cols)); + + // create boolean variables for each traffic flow and link pair + // create integer variables for traffic flows with constrained latency + for (auto traffic_flow_id : traffic_flow_storage.get_all_traffic_flow_id()) { + const auto& traffic_flow = traffic_flow_storage.get_single_noc_traffic_flow(traffic_flow_id); + + // create an integer variable for each latency-constrained traffic flow + if (traffic_flow.max_traffic_flow_latency < NocTrafficFlows::DEFAULT_MAX_TRAFFIC_FLOW_LATENCY) { + latency_overrun_vars[traffic_flow_id] = cp_model.NewIntVar(latency_overrun_domain); + } + + // create (traffic flow, NoC link) pair boolean variables + for (const auto& noc_link : noc_model.get_noc_links()) { + const NocLinkId noc_link_id = noc_link.get_link_id(); + flow_link_vars[{traffic_flow_id, noc_link_id}] = cp_model.NewBoolVar(); + } + } +} + +static int comp_max_number_of_traversed_links(NocTrafficFlowId traffic_flow_id) { + const auto& noc_ctx = g_vpr_ctx.noc(); + const auto& noc_model = noc_ctx.noc_model; + const auto& traffic_flow_storage = noc_ctx.noc_traffic_flows_storage; + + const auto& traffic_flow = traffic_flow_storage.get_single_noc_traffic_flow(traffic_flow_id); + + const auto& noc_links = noc_model.get_noc_links(); + const auto& noc_routers = noc_model.get_noc_routers(); + const double noc_link_latency = noc_model.get_noc_link_latency(); + const double noc_router_latency = noc_model.get_noc_router_latency(); + + auto router_it = std::find_if(noc_routers.begin(), noc_routers.end(), [noc_router_latency](const NocRouter& r) { + return (noc_router_latency != r.get_latency()); + }); + + if (router_it != noc_routers.end()) { + VTR_LOG_ERROR( + "SAT router assumes all NoC routers have the same latency. " + "NoC router with the user if %d has a different latency (%g) than the NoC-wide router latency (%g).\n", + router_it->get_router_user_id(), router_it->get_latency()); + } + + auto link_it = std::find_if(noc_links.begin(), noc_links.end(), [noc_link_latency](const NocLink& l) { + return (noc_link_latency != l.get_latency()); + }); + + if (link_it != noc_links.end()) { + VTR_LOG_ERROR( + "SAT router assumes all NoC links have the same latency. " + "NoC link %d has a different latency (%g) than the NoC-wide link latency (%g).\n", + (size_t)link_it->get_link_id(), link_it->get_latency()); + } + + const double traffic_flow_latency_constraint = traffic_flow.max_traffic_flow_latency; + + VTR_ASSERT(traffic_flow_latency_constraint < NocTrafficFlows::DEFAULT_MAX_TRAFFIC_FLOW_LATENCY); + + int n_max_links = std::floor((traffic_flow_latency_constraint - noc_router_latency) / (noc_link_latency + noc_router_latency)); + + return n_max_links; +} + +static void constrain_latency_overrun_vars(orsat::CpModelBuilder& cp_model, + t_flow_link_var_map& flow_link_vars, + std::map& latency_overrun_vars) { + const auto& noc_ctx = g_vpr_ctx.noc(); + const auto& noc_model = noc_ctx.noc_model; + + for (auto& [traffic_flow_id, latency_overrun_var] : latency_overrun_vars) { + int n_max_links = comp_max_number_of_traversed_links(traffic_flow_id); + // get all boolean variables for this traffic flow + auto link_vars = get_flow_link_vars(flow_link_vars, {traffic_flow_id}, + {noc_model.get_noc_links().keys().begin(), noc_model.get_noc_links().keys().end()}); + + orsat::LinearExpr latency_overrun_expr; + // count the number of activated links for this traffic flow + latency_overrun_expr += orsat::LinearExpr::Sum(link_vars); + // subtract the maximum number of permissible links from the number of activated links + latency_overrun_expr -= n_max_links; + + // if latency_overrun_expr is non-positive, the latency constraint is met and + // latency_overrun_var should be zero. Otherwise, should be equal to latency_overrun_expr + // This is like pushing latency_overrun_expr through a ReLU function to get latency_overrun_var. + cp_model.AddMaxEquality(latency_overrun_var, {latency_overrun_expr, 0}); + } +} + +static orsat::LinearExpr create_objective(orsat::CpModelBuilder& cp_model, + t_flow_link_var_map& flow_link_vars, + std::map& latency_overrun_vars, + vtr::vector& congested_link_vars, + int bandwidth_resolution, + int latency_overrun_weight, + int congestion_weight, + bool minimize_aggregate_bandwidth) { + const auto& noc_ctx = g_vpr_ctx.noc(); + const auto& traffic_flow_storage = noc_ctx.noc_traffic_flows_storage; + + // use the current routing solution as a hint for the SAT solver + // This will help the solver by giving a good starting point and tighter initial lower bound on the objective function + for (auto traffic_flow_id : traffic_flow_storage.get_all_traffic_flow_id()) { + for (auto route_link_id : traffic_flow_storage.get_traffic_flow_route(traffic_flow_id)) { + cp_model.AddHint(flow_link_vars[{traffic_flow_id, route_link_id}], true); + } + } + + orsat::LinearExpr latency_overrun_sum; + for (auto& [traffic_flow_id, latency_overrun_var] : latency_overrun_vars) { + latency_overrun_sum += latency_overrun_var; + } + latency_overrun_sum *= latency_overrun_weight; + + auto rescaled_traffic_flow_bandwidths = quantize_traffic_flow_bandwidths(bandwidth_resolution); + orsat::LinearExpr agg_bw_expr; + if (minimize_aggregate_bandwidth) { + for (auto& [key, var] : flow_link_vars) { + auto [traffic_flow_id, noc_link_id] = key; + agg_bw_expr += orsat::LinearExpr::Term(var, rescaled_traffic_flow_bandwidths[traffic_flow_id]); + } + } else { + agg_bw_expr = 0; + } + + + orsat::LinearExpr congested_link_sum = orsat::LinearExpr::Sum(congested_link_vars); + congested_link_sum *= congestion_weight; + + orsat::LinearExpr objective = latency_overrun_sum + agg_bw_expr + congested_link_sum; + return objective; +} + + +vtr::vector> noc_sat_route(bool minimize_aggregate_bandwidth, + const t_noc_opts& noc_opts, + int seed) { + vtr::ScopedStartFinishTimer timer("NoC SAT Routing"); + + // Used to add variables and constraints to a CP-SAT model + orsat::CpModelBuilder cp_model; + + /* For each traffic flow and NoC link pair, we create a boolean variable. + * When a variable associated with traffic flow t and NoC link l is set, + * it means that t is routed through l.*/ + t_flow_link_var_map flow_link_vars; + + /* A boolean variable is associated with each NoC link to indicate + * whether it is congested.*/ + vtr::vector link_congested_vars; + + /* Each traffic flow latency constraint is translated to how many NoC links + * the traffic flow can traverse without violating the constraint. + * These integer variables specify the number of additional links traversed + * beyond the maximum allowed number of links. + */ + std::map latency_overrun_vars; + + create_flow_link_vars(cp_model, flow_link_vars, latency_overrun_vars); + + constrain_latency_overrun_vars(cp_model, flow_link_vars, latency_overrun_vars); + + forbid_illegal_turns(flow_link_vars, cp_model); + + create_congested_link_vars(link_congested_vars, flow_link_vars, cp_model, noc_opts.noc_sat_routing_bandwidth_resolution); + + add_continuity_constraints(flow_link_vars, cp_model); + + auto objective = create_objective(cp_model, flow_link_vars, latency_overrun_vars, link_congested_vars, + noc_opts.noc_sat_routing_bandwidth_resolution, + noc_opts.noc_sat_routing_latency_overrun_weighting, + noc_opts.noc_sat_routing_congestion_weighting, + minimize_aggregate_bandwidth); + + cp_model.Minimize(objective); + + orsat::SatParameters sat_params; + if (noc_opts.noc_sat_routing_num_workers > 0) { + sat_params.set_num_workers(noc_opts.noc_sat_routing_num_workers); + } + sat_params.set_random_seed(seed); + sat_params.set_log_search_progress(noc_opts.noc_sat_routing_log_search_progress); + + orsat::Model model; + model.Add(NewSatParameters(sat_params)); + + orsat::CpSolverResponse response = orsat::SolveCpModel(cp_model.Build(), &model); + + if (response.status() == orsat::CpSolverStatus::FEASIBLE || + response.status() == orsat::CpSolverStatus::OPTIMAL) { + auto routes = convert_vars_to_routes(flow_link_vars, response); + return routes; + } + + // when no feasible solution was found, return an empty vector + return {}; +} + +#endif //ENABLE_NOC_SAT_ROUTING \ No newline at end of file diff --git a/vpr/src/noc/sat_routing.h b/vpr/src/noc/sat_routing.h new file mode 100644 index 00000000000..945b5a0aabe --- /dev/null +++ b/vpr/src/noc/sat_routing.h @@ -0,0 +1,71 @@ +#ifndef VTR_SATROUTING_H +#define VTR_SATROUTING_H + +/** + * @file + * @brief SAT formulation of NoC traffic flow routing. + * + * This file implements a SAT formulation of NoC routing problem. + * Each (traffic flow, link) pair is associated with boolean variable. + * When one of these boolean variables are set by the SAT solver, it means + * that the corresponding traffic flow is routed through the corresponding link. + * To ensure that traffic flow routes are continuous, deadlock-free, with + * minimum link congestion, several constraints are added to the SAT formulation. + * + * For more details refer to the following paper: + * The Road Less Traveled: Congestion-Aware NoC Placement and Packet Routing for FPGAs + */ + +#ifdef ENABLE_NOC_SAT_ROUTING + +#include +#include + +#include "noc_data_types.h" +#include "vpr_types.h" +#include "vtr_hash.h" +#include "vtr_vector.h" +#include "clustered_netlist_fwd.h" + +/** + * @brief Assuming that logical NoC routers are fixed, + * this function formulates routing traffic flows as a SAT + * problem and tries to find a deadlock-free and congestion-free + * routing with the minimum aggregate bandwidth while meeting + * traffic flow latency constraints. + * + * @param minimize_aggregate_bandwidth Indicates whether the SAT solver + * should minimize the aggregate bandwidth or not. A congestion-free + * and deadlock-free solution can be found faster if the solver does not + * need to minimize the aggregate bandwidth. + * @param seed An integer seed to initialize the SAT solver. + * @return The generated routes for all traffic flows. + */ +vtr::vector> noc_sat_route(bool minimize_aggregate_bandwidth, + const t_noc_opts& noc_opts, + int seed); + +namespace std { + +template<> +struct hash> { + /** + * @brief Generates a hash value for a (NocTrafficFlowId, NocLinkId) pair. + * + * This hash function is used to store SAT boolean variables for each + * (traffic flow, link) pair in a hash map. + * + * @param flow_link A (traffic flow, link) pair whose hash value is desired. + * @return The computed hash value. + */ + std::size_t operator()(const std::pair& flow_link) const noexcept { + std::size_t seed = std::hash{}(flow_link.first); + vtr::hash_combine(seed, flow_link.second); + return seed; + } +}; +} // namespace std + + +#endif +#endif \ No newline at end of file diff --git a/vpr/src/noc/turn_model_routing.cpp b/vpr/src/noc/turn_model_routing.cpp index c831ee8cb6e..802a2fa5104 100644 --- a/vpr/src/noc/turn_model_routing.cpp +++ b/vpr/src/noc/turn_model_routing.cpp @@ -98,7 +98,7 @@ NocLinkId TurnModelRouting::move_to_next_router(NocRouterId& curr_router_id, bool visited_next_router = false; // get all the outgoing links for the current router - const auto& router_connections = noc_model.get_noc_router_connections(curr_router_id); + const auto& router_connections = noc_model.get_noc_router_outgoing_links(curr_router_id); // go through each outgoing link and determine whether the link leads towards the intended route direction for (auto connecting_link : router_connections) { @@ -233,3 +233,39 @@ TurnModelRouting::Direction TurnModelRouting::select_direction_other_than(const // if there was not any direction different from "other_than", return INVALID return TurnModelRouting::Direction::INVALID; } + +std::vector> TurnModelRouting::get_all_illegal_turns(const NocStorage& noc_model) const { + std::vector> illegal_turns; + + /* Iterate over all sets of three routers that can be traversed in sequence. + * Check if traversing these three routes involves any turns, and if so, + * check if the resulting turn is illegal under the restrictions of a turn model + * routing algorithm. Store all illegal turns and return them. + */ + + for (const auto& noc_router : noc_model.get_noc_routers()) { + const int noc_router_user_id = noc_router.get_router_user_id(); + const NocRouterId noc_router_id = noc_model.convert_router_id(noc_router_user_id); + VTR_ASSERT(noc_router_id != NocRouterId::INVALID()); + const auto& first_noc_link_ids = noc_model.get_noc_router_outgoing_links(noc_router_id); + + for (auto first_noc_link_id : first_noc_link_ids) { + const NocLink& first_noc_link = noc_model.get_single_noc_link(first_noc_link_id); + const NocRouterId second_noc_router_id = first_noc_link.get_sink_router(); + const NocRouter& second_noc_router = noc_model.get_single_noc_router(second_noc_router_id); + const auto& second_noc_link_ids = noc_model.get_noc_router_outgoing_links(second_noc_router_id); + + for (auto second_noc_link_id : second_noc_link_ids) { + const NocLink& second_noc_link = noc_model.get_single_noc_link(second_noc_link_id); + const NocRouterId third_noc_router_id = second_noc_link.get_sink_router(); + const NocRouter& third_noc_router = noc_model.get_single_noc_router(third_noc_router_id); + if (!is_turn_legal({noc_router, second_noc_router, third_noc_router})) { + illegal_turns.emplace_back(first_noc_link_id, second_noc_link_id); + } + } + } + } + + return illegal_turns; +} + diff --git a/vpr/src/noc/turn_model_routing.h b/vpr/src/noc/turn_model_routing.h index 9de5a3f60c8..68d64f4e12f 100644 --- a/vpr/src/noc/turn_model_routing.h +++ b/vpr/src/noc/turn_model_routing.h @@ -52,6 +52,7 @@ */ #include "noc_routing.h" +#include class TurnModelRouting : public NocRouting { public: @@ -90,6 +91,17 @@ class TurnModelRouting : public NocRouting { std::vector& flow_route, const NocStorage& noc_model) override; + /** + * @brief Turn model algorithms forbid specific turns in the mesh topology + * to guarantee deadlock-freedom. This function finds all illegal turns + * implied by a turn model routing algorithm. + * + * @param noc_model Contains NoC router and link connectivity information. + * @return A vector of std::pair. In each pair, + * a traffic flow cannot traverse the second link after the first link. + */ + std::vector> get_all_illegal_turns(const NocStorage& noc_model) const; + protected: /** * @brief This enum describes the all the possible @@ -237,6 +249,17 @@ class TurnModelRouting : public NocRouting { const NocStorage& noc_model) = 0; + /** + * @brief Determines whether a turn specified by 3 NoC routers visited in the turn + * is legal. Turn model routing algorithms forbid specific turns in the mesh topology + * to guarantee deadlock-freedom. In addition to turns forbidden by the turn model algorithm, + * 180-degree turns are also illegal. + * + * @param noc_routers Three NoC routers visited in a turn. + * @return True if the turn is legal, otherwise false. + */ + virtual bool is_turn_legal(const std::array, 3>& noc_routers) const = 0; + protected: // get_legal_directions() return a reference to this vector to avoid allocating a new vector // each time it is called diff --git a/vpr/src/noc/west_first_routing.cpp b/vpr/src/noc/west_first_routing.cpp index e3308b5b176..5fc4a13e696 100644 --- a/vpr/src/noc/west_first_routing.cpp +++ b/vpr/src/noc/west_first_routing.cpp @@ -93,4 +93,35 @@ TurnModelRouting::Direction WestFirstRouting::select_next_direction(const std::v } return selected_direction; -} \ No newline at end of file +} + +bool WestFirstRouting::is_turn_legal(const std::array, 3>& noc_routers) const { + const int x1 = noc_routers[0].get().get_router_grid_position_x(); + const int y1 = noc_routers[0].get().get_router_grid_position_y(); + + const int x2 = noc_routers[1].get().get_router_grid_position_x(); + const int y2 = noc_routers[1].get().get_router_grid_position_y(); + + const int x3 = noc_routers[2].get().get_router_grid_position_x(); + const int y3 = noc_routers[2].get().get_router_grid_position_y(); + + // check if the given routers can be traversed one after another + VTR_ASSERT(x2 == x1 || y2 == y1); + VTR_ASSERT(x3 == x2 || y3 == y2); + + // going back to the first router is not allowed + if (x1 == x3 && y1 == y3) { + return false; + } + + /* In the west-first routing algorithm, once the traffic flow + * moved in a vertical direction, it is no longer allowed to move + * towards west. Therefore, if the first link was travelling in a + * vertical direction, the second link can't move towards left. + */ + if (y2 != y1 && x3 < x2) { + return false; + } + + return true; +} diff --git a/vpr/src/noc/west_first_routing.h b/vpr/src/noc/west_first_routing.h index a88e90ea7ac..17b3fa9cc74 100644 --- a/vpr/src/noc/west_first_routing.h +++ b/vpr/src/noc/west_first_routing.h @@ -65,6 +65,8 @@ class WestFirstRouting : public TurnModelRouting { NocRouterId curr_router_id, NocTrafficFlowId traffic_flow_id, const NocStorage& noc_model) override; + + bool is_turn_legal(const std::array, 3>& noc_routers) const override; }; #endif //VTR_WEST_FIRST_ROUTING_H diff --git a/vpr/src/noc/xy_routing.cpp b/vpr/src/noc/xy_routing.cpp index 31edef2b5b4..f3f1f7e4dfa 100644 --- a/vpr/src/noc/xy_routing.cpp +++ b/vpr/src/noc/xy_routing.cpp @@ -80,4 +80,31 @@ TurnModelRouting::Direction XYRouting::select_next_direction(const std::vector, 3>& noc_routers) const { + const int x1 = noc_routers[0].get().get_router_grid_position_x(); + const int y1 = noc_routers[0].get().get_router_grid_position_y(); + + const int x2 = noc_routers[1].get().get_router_grid_position_x(); + const int y2 = noc_routers[1].get().get_router_grid_position_y(); + + const int x3 = noc_routers[2].get().get_router_grid_position_x(); + const int y3 = noc_routers[2].get().get_router_grid_position_y(); + + // check if the given routers can be traversed one after another + VTR_ASSERT(x2 == x1 || y2 == y1); + VTR_ASSERT(x3 == x2 || y3 == y2); + + // going back to the first router is not allowed + if (x1 == x3 && y1 == y3) { + return false; + } + + // if the first move is vertical, the second one can't be horizontal + if (y1 != y2 && x2 != x3) { + return false; + } + + return true; } \ No newline at end of file diff --git a/vpr/src/noc/xy_routing.h b/vpr/src/noc/xy_routing.h index 43da6be4881..199855710fe 100644 --- a/vpr/src/noc/xy_routing.h +++ b/vpr/src/noc/xy_routing.h @@ -105,6 +105,7 @@ class XYRouting : public TurnModelRouting { NocTrafficFlowId traffic_flow_id, const NocStorage& noc_model) override; + bool is_turn_legal(const std::array, 3>& noc_routers) const override; private: const std::vector x_axis_directions {TurnModelRouting::Direction::LEFT, TurnModelRouting::Direction::RIGHT}; diff --git a/vpr/src/pack/attraction_groups.cpp b/vpr/src/pack/attraction_groups.cpp index 2c70d9d11cd..b8f0351d6a7 100644 --- a/vpr/src/pack/attraction_groups.cpp +++ b/vpr/src/pack/attraction_groups.cpp @@ -1,7 +1,7 @@ #include "attraction_groups.h" AttractionInfo::AttractionInfo(bool attraction_groups_on) { - auto& floorplanning_ctx = g_vpr_ctx.mutable_floorplanning(); + const auto& floorplanning_ctx = g_vpr_ctx.floorplanning(); auto& atom_ctx = g_vpr_ctx.atom(); int num_parts = floorplanning_ctx.constraints.get_num_partitions(); @@ -33,7 +33,7 @@ AttractionInfo::AttractionInfo(bool attraction_groups_on) { } void AttractionInfo::create_att_groups_for_overfull_regions() { - auto& floorplanning_ctx = g_vpr_ctx.mutable_floorplanning(); + const auto& floorplanning_ctx = g_vpr_ctx.floorplanning(); auto& atom_ctx = g_vpr_ctx.atom(); int num_parts = floorplanning_ctx.constraints.get_num_partitions(); @@ -47,10 +47,10 @@ void AttractionInfo::create_att_groups_for_overfull_regions() { atom_attraction_group.resize(num_atoms); fill(atom_attraction_group.begin(), atom_attraction_group.end(), AttractGroupId::INVALID()); - auto& overfull_regions = floorplanning_ctx.overfull_regions; + const auto& overfull_regions = floorplanning_ctx.overfull_regions; PartitionRegion overfull_regions_pr; - for (unsigned int i = 0; i < overfull_regions.size(); i++) { - overfull_regions_pr.add_to_part_region(overfull_regions[i]); + for (const auto& overfull_region : overfull_regions) { + overfull_regions_pr.add_to_part_region(overfull_region); } /* * Create a PartitionRegion that contains all the overfull regions so that you can @@ -64,8 +64,8 @@ void AttractionInfo::create_att_groups_for_overfull_regions() { for (int ipart = 0; ipart < num_parts; ipart++) { PartitionId partid(ipart); - Partition part = floorplanning_ctx.constraints.get_partition(partid); - auto& pr_regions = part.get_part_region(); + const Partition& part = floorplanning_ctx.constraints.get_partition(partid); + const auto& pr_regions = part.get_part_region(); PartitionRegion intersect_pr; @@ -88,7 +88,7 @@ void AttractionInfo::create_att_groups_for_overfull_regions() { } void AttractionInfo::create_att_groups_for_all_regions() { - auto& floorplanning_ctx = g_vpr_ctx.mutable_floorplanning(); + const auto& floorplanning_ctx = g_vpr_ctx.floorplanning(); auto& atom_ctx = g_vpr_ctx.atom(); int num_parts = floorplanning_ctx.constraints.get_num_partitions(); @@ -137,8 +137,8 @@ void AttractionInfo::assign_atom_attraction_ids() { AttractionGroup att_group = attraction_groups[group_id]; - for (unsigned int iatom = 0; iatom < att_group.group_atoms.size(); iatom++) { - atom_attraction_group[att_group.group_atoms[iatom]] = group_id; + for (auto group_atom : att_group.group_atoms) { + atom_attraction_group[group_atom] = group_id; } } } diff --git a/vpr/src/pack/attraction_groups.h b/vpr/src/pack/attraction_groups.h index 109afa667cc..813d6e0fb1b 100644 --- a/vpr/src/pack/attraction_groups.h +++ b/vpr/src/pack/attraction_groups.h @@ -80,7 +80,7 @@ class AttractionInfo { int num_attraction_groups(); - int get_att_group_pulls(); + int get_att_group_pulls() const; void set_att_group_pulls(int num_pulls); @@ -101,7 +101,7 @@ class AttractionInfo { int att_group_pulls = 1; }; -inline int AttractionInfo::get_att_group_pulls() { +inline int AttractionInfo::get_att_group_pulls() const { return att_group_pulls; } diff --git a/vpr/src/pack/cluster.cpp b/vpr/src/pack/cluster.cpp index b19aa4e7f99..47b277f2872 100644 --- a/vpr/src/pack/cluster.cpp +++ b/vpr/src/pack/cluster.cpp @@ -19,7 +19,7 @@ * t_pb: * Represents a clustered instance of a t_pb_graph_node containing netlist primitives * - * t_pb_type and t_pb_graph_node (and related types) describe the targetted FPGA architecture, while t_pb represents + * t_pb_type and t_pb_graph_node (and related types) describe the targeted FPGA architecture, while t_pb represents * the actual clustering of the user netlist. * * For example: @@ -82,7 +82,7 @@ * cluster until a nullptr is returned. So, the number of repeated molecules is changed from 1 to 500, * effectively making the clusterer pack a cluster until a nullptr is returned. */ -#define ATTRACTION_GROUPS_MAX_REPEATED_MOLECULES 500 +static constexpr int ATTRACTION_GROUPS_MAX_REPEATED_MOLECULES = 500; std::map do_clustering(const t_packer_opts& packer_opts, const t_analysis_opts& analysis_opts, @@ -243,6 +243,12 @@ std::map do_clustering(const t_packer_opts& pa * Since some of the primitives might fail legality, this structure temporarily * stores PartitionRegion information while the cluster is packed*/ PartitionRegion temp_cluster_pr; + /* + * Stores the cluster's NoC group ID as more primitives are added to it. + * This is used to check if a candidate primitive is in the same NoC group + * as the atom blocks that have already been added to the primitive. + */ + NocGroupId temp_cluster_noc_grp_id = NocGroupId::INVALID(); start_new_cluster(helper_ctx.cluster_placement_stats, helper_ctx.primitives_list, clb_index, istart, @@ -257,7 +263,8 @@ std::map do_clustering(const t_packer_opts& pa packer_opts.enable_pin_feasibility_filter, balance_block_type_utilization, packer_opts.feasible_block_array_size, - temp_cluster_pr); + temp_cluster_pr, + temp_cluster_noc_grp_id); //initial molecule in cluster has been processed cluster_stats.num_molecules_processed++; @@ -356,6 +363,7 @@ std::map do_clustering(const t_packer_opts& pa router_data, target_ext_pin_util, temp_cluster_pr, + temp_cluster_noc_grp_id, block_pack_status, clustering_data.unclustered_list_head, unclustered_list_head_size, diff --git a/vpr/src/pack/cluster_placement.cpp b/vpr/src/pack/cluster_placement.cpp index c0458154cf1..7d4fa780dde 100644 --- a/vpr/src/pack/cluster_placement.cpp +++ b/vpr/src/pack/cluster_placement.cpp @@ -86,10 +86,14 @@ t_cluster_placement_stats* alloc_and_load_cluster_placement_stats() { * primitives_list - a list of primitives indexed to match atom_block_ids of molecule. * Expects an allocated array of primitives ptrs as inputs. * This function loads the array with the lowest cost primitives that implement molecule + * force_site - optional user-specified primitive site on which to place the molecule; if a force_site + * argument is provided, the function either selects the specified site or reports failure. + * If the force_site argument is set to its default value (-1), vpr selects an available site. */ bool get_next_primitive_list(t_cluster_placement_stats* cluster_placement_stats, const t_pack_molecule* molecule, - t_pb_graph_node** primitives_list) { + t_pb_graph_node** primitives_list, + int force_site) { std::unordered_multimap::iterator best; int i; @@ -136,6 +140,23 @@ bool get_next_primitive_list(t_cluster_placement_stats* cluster_placement_stats, continue; } + + /* check for force site match, if applicable */ + if (force_site > -1) { + if (force_site == it->second->pb_graph_node->flat_site_index) { + cost = try_place_molecule(molecule, it->second->pb_graph_node, primitives_list); + if (cost < HUGE_POSITIVE_FLOAT) { + cluster_placement_stats->move_primitive_to_inflight(i, it); + return true; + } else { + break; + } + } else { + ++it; + continue; + } + } + /* try place molecule at root location cur */ cost = try_place_molecule(molecule, it->second->pb_graph_node, primitives_list); @@ -153,6 +174,11 @@ bool get_next_primitive_list(t_cluster_placement_stats* cluster_placement_stats, } } + /* if force_site was specified but not found, fail */ + if (force_site > -1) { + found_best = false; + } + if (!found_best) { /* failed to find a placement */ for (i = 0; i < molecule->num_blocks; i++) { diff --git a/vpr/src/pack/cluster_placement.h b/vpr/src/pack/cluster_placement.h index 8715e611222..611593bcfa5 100644 --- a/vpr/src/pack/cluster_placement.h +++ b/vpr/src/pack/cluster_placement.h @@ -6,12 +6,14 @@ #ifndef CLUSTER_PLACEMENT_H #define CLUSTER_PLACEMENT_H #include "arch_types.h" +#include "vpr_types.h" t_cluster_placement_stats* alloc_and_load_cluster_placement_stats(); bool get_next_primitive_list( t_cluster_placement_stats* cluster_placement_stats, const t_pack_molecule* molecule, - t_pb_graph_node** primitives_list); + t_pb_graph_node** primitives_list, + int force_site = -1); void commit_primitive(t_cluster_placement_stats* cluster_placement_stats, const t_pb_graph_node* primitive); void set_mode_cluster_placement_stats(const t_pb_graph_node* complex_block, diff --git a/vpr/src/pack/cluster_util.cpp b/vpr/src/pack/cluster_util.cpp index c1170afba63..9d698672cf7 100644 --- a/vpr/src/pack/cluster_util.cpp +++ b/vpr/src/pack/cluster_util.cpp @@ -76,29 +76,28 @@ static void echo_clusters(char* filename) { cluster_atoms[clb_index].push_back(atom_blk_id); } - for (auto i = cluster_atoms.begin(); i != cluster_atoms.end(); i++) { - std::string cluster_name; - cluster_name = cluster_ctx.clb_nlist.block_name(i->first); - fprintf(fp, "Cluster %s Id: %zu \n", cluster_name.c_str(), size_t(i->first)); + for (auto& cluster_atom : cluster_atoms) { + const std::string& cluster_name = cluster_ctx.clb_nlist.block_name(cluster_atom.first); + fprintf(fp, "Cluster %s Id: %zu \n", cluster_name.c_str(), size_t(cluster_atom.first)); fprintf(fp, "\tAtoms in cluster: \n"); - int num_atoms = i->second.size(); + int num_atoms = cluster_atom.second.size(); for (auto j = 0; j < num_atoms; j++) { - AtomBlockId atom_id = i->second[j]; + AtomBlockId atom_id = cluster_atom.second[j]; fprintf(fp, "\t %s \n", atom_ctx.nlist.block_name(atom_id).c_str()); } } fprintf(fp, "\nCluster Floorplanning Constraints:\n"); - auto& floorplanning_ctx = g_vpr_ctx.mutable_floorplanning(); + const auto& floorplanning_ctx = g_vpr_ctx.floorplanning(); for (ClusterBlockId clb_id : cluster_ctx.clb_nlist.blocks()) { - std::vector reg = floorplanning_ctx.cluster_constraints[clb_id].get_partition_region(); - if (reg.size() != 0) { + const std::vector& regions = floorplanning_ctx.cluster_constraints[clb_id].get_regions(); + if (!regions.empty()) { fprintf(fp, "\nRegions in Cluster %zu:\n", size_t(clb_id)); - for (unsigned int i = 0; i < reg.size(); i++) { - print_region(fp, reg[i]); + for (const auto& region : regions) { + print_region(fp, region); } } } @@ -919,34 +918,30 @@ bool cleanup_pb(t_pb* pb) { * Otherwise, it returns the appropriate failed pack status based on which * legality check the molecule failed. */ -enum e_block_pack_status try_pack_molecule(t_cluster_placement_stats* cluster_placement_stats_ptr, - t_pack_molecule* molecule, - t_pb_graph_node** primitives_list, - t_pb* pb, - const int max_models, - const int max_cluster_size, - const ClusterBlockId clb_index, - const int detailed_routing_stage, - t_lb_router_data* router_data, - int verbosity, - bool enable_pin_feasibility_filter, - const int feasible_block_array_size, - t_ext_pin_util max_external_pin_util, - PartitionRegion& temp_cluster_pr) { - int molecule_size, failed_location; - int i; - enum e_block_pack_status block_pack_status; +e_block_pack_status try_pack_molecule(t_cluster_placement_stats* cluster_placement_stats_ptr, + t_pack_molecule* molecule, + t_pb_graph_node** primitives_list, + t_pb* pb, + int max_models, + int max_cluster_size, + ClusterBlockId clb_index, + int detailed_routing_stage, + t_lb_router_data* router_data, + int verbosity, + bool enable_pin_feasibility_filter, + int feasible_block_array_size, + t_ext_pin_util max_external_pin_util, + PartitionRegion& temp_cluster_pr, + NocGroupId& temp_noc_grp_id, + int force_site) { t_pb* parent; t_pb* cur_pb; - auto& atom_ctx = g_vpr_ctx.atom(); + const auto& atom_ctx = g_vpr_ctx.atom(); auto& floorplanning_ctx = g_vpr_ctx.mutable_floorplanning(); parent = nullptr; - block_pack_status = BLK_STATUS_UNDEFINED; - - molecule_size = get_array_size_of_molecule(molecule); - failed_location = 0; + const int molecule_size = get_array_size_of_molecule(molecule); if (verbosity > 3) { AtomBlockId root_atom = molecule->atom_block_ids[molecule->root]; @@ -969,62 +964,81 @@ enum e_block_pack_status try_pack_molecule(t_cluster_placement_stats* cluster_pl VTR_LOGV(verbosity > 4, "\t\t\tFAILED Placement Feasibility Filter: Only one long chain per cluster is allowed\n"); //Record the failure of this molecule in the current pb stats record_molecule_failure(molecule, pb); - return BLK_FAILED_FEASIBLE; + return e_block_pack_status::BLK_FAILED_FEASIBLE; } - bool cluster_pr_needs_update = false; bool cluster_pr_update_check = false; //check if every atom in the molecule is legal in the cluster from a floorplanning perspective for (int i_mol = 0; i_mol < molecule_size; i_mol++) { //try to intersect with atom PartitionRegion if atom exists if (molecule->atom_block_ids[i_mol]) { - block_pack_status = atom_cluster_floorplanning_check(molecule->atom_block_ids[i_mol], - clb_index, verbosity, - temp_cluster_pr, - cluster_pr_needs_update); - if (block_pack_status == BLK_FAILED_FLOORPLANNING) { + bool cluster_pr_needs_update = false; + bool block_pack_floorplan_status = atom_cluster_floorplanning_check(molecule->atom_block_ids[i_mol], + clb_index, verbosity, + temp_cluster_pr, + cluster_pr_needs_update); + + if (!block_pack_floorplan_status) { //Record the failure of this molecule in the current pb stats record_molecule_failure(molecule, pb); - return block_pack_status; + return e_block_pack_status::BLK_FAILED_FLOORPLANNING; } - if (cluster_pr_needs_update == true) { + + if (cluster_pr_needs_update) { cluster_pr_update_check = true; } } } - //change status back to undefined before the while loop in case in was changed to BLK_PASSED in the above for loop - block_pack_status = BLK_STATUS_UNDEFINED; + // check if all atoms in the molecule can be added to the cluster without NoC group conflicts + for (int i_mol = 0; i_mol < molecule_size; i_mol++) { + if (molecule->atom_block_ids[i_mol]) { + bool block_pack_noc_grp_status = atom_cluster_noc_group_check(molecule->atom_block_ids[i_mol], + clb_index, verbosity, + temp_noc_grp_id); + + if (!block_pack_noc_grp_status) { + //Record the failure of this molecule in the current pb stats + record_molecule_failure(molecule, pb); + return e_block_pack_status::BLK_FAILED_NOC_GROUP; + } + } + } + + e_block_pack_status block_pack_status = e_block_pack_status::BLK_STATUS_UNDEFINED; - while (block_pack_status != BLK_PASSED) { + while (block_pack_status != e_block_pack_status::BLK_PASSED) { if (get_next_primitive_list(cluster_placement_stats_ptr, molecule, - primitives_list)) { - block_pack_status = BLK_PASSED; + primitives_list, force_site)) { + block_pack_status = e_block_pack_status::BLK_PASSED; + + int failed_location = 0; - for (i = 0; i < molecule_size && block_pack_status == BLK_PASSED; i++) { - VTR_ASSERT((primitives_list[i] == nullptr) == (!molecule->atom_block_ids[i])); - failed_location = i + 1; + for (int i_mol = 0; i_mol < molecule_size && block_pack_status == e_block_pack_status::BLK_PASSED; i_mol++) { + VTR_ASSERT((primitives_list[i_mol] == nullptr) == (!molecule->atom_block_ids[i_mol])); + failed_location = i_mol + 1; // try place atom block if it exists - if (molecule->atom_block_ids[i]) { - block_pack_status = try_place_atom_block_rec(primitives_list[i], - molecule->atom_block_ids[i], pb, &parent, + if (molecule->atom_block_ids[i_mol]) { + block_pack_status = try_place_atom_block_rec(primitives_list[i_mol], + molecule->atom_block_ids[i_mol], pb, &parent, max_models, max_cluster_size, clb_index, cluster_placement_stats_ptr, molecule, router_data, verbosity, feasible_block_array_size); } } - if (enable_pin_feasibility_filter && block_pack_status == BLK_PASSED) { + if (enable_pin_feasibility_filter && block_pack_status == e_block_pack_status::BLK_PASSED) { /* Check if pin usage is feasible for the current packing assignment */ reset_lookahead_pins_used(pb); try_update_lookahead_pins_used(pb); if (!check_lookahead_pins_used(pb, max_external_pin_util)) { VTR_LOGV(verbosity > 4, "\t\t\tFAILED Pin Feasibility Filter\n"); - block_pack_status = BLK_FAILED_FEASIBLE; + block_pack_status = e_block_pack_status::BLK_FAILED_FEASIBLE; } } - if (block_pack_status == BLK_PASSED) { + + if (block_pack_status == e_block_pack_status::BLK_PASSED) { /* * during the clustering step of `do_clustering`, `detailed_routing_stage` is incremented at each iteration until it a cluster * is correctly generated or `detailed_routing_stage` assumes an invalid value (E_DETAILED_ROUTE_INVALID). @@ -1064,15 +1078,15 @@ enum e_block_pack_status try_pack_molecule(t_cluster_placement_stats* cluster_pl } while (do_detailed_routing_stage && mode_status.is_mode_issue()); } - if (do_detailed_routing_stage && is_routed == false) { + if (do_detailed_routing_stage && !is_routed) { /* Cannot pack */ VTR_LOGV(verbosity > 4, "\t\t\tFAILED Detailed Routing Legality\n"); - block_pack_status = BLK_FAILED_ROUTE; + block_pack_status = e_block_pack_status::BLK_FAILED_ROUTE; } else { /* Pack successful, commit * TODO: SW Engineering note - may want to update cluster stats here too instead of doing it outside */ - VTR_ASSERT(block_pack_status == BLK_PASSED); + VTR_ASSERT(block_pack_status == e_block_pack_status::BLK_PASSED); if (molecule->is_chain()) { /* Chained molecules often take up lots of area and are important, * if a chain is packed in, want to rename logic block to match chain name */ @@ -1099,12 +1113,10 @@ enum e_block_pack_status try_pack_molecule(t_cluster_placement_stats* cluster_pl //update cluster PartitionRegion if atom with floorplanning constraints was added if (cluster_pr_update_check) { floorplanning_ctx.cluster_constraints[clb_index] = temp_cluster_pr; - if (verbosity > 2) { - VTR_LOG("\nUpdated PartitionRegion of cluster %d\n", clb_index); - } + VTR_LOGV(verbosity > 2, "\nUpdated PartitionRegion of cluster %d\n", clb_index); } - for (i = 0; i < molecule_size; i++) { + for (int i = 0; i < molecule_size; i++) { if (molecule->atom_block_ids[i]) { /* invalidate all molecules that share atom block with current molecule */ @@ -1120,13 +1132,13 @@ enum e_block_pack_status try_pack_molecule(t_cluster_placement_stats* cluster_pl } } - if (block_pack_status != BLK_PASSED) { - for (i = 0; i < failed_location; i++) { + if (block_pack_status != e_block_pack_status::BLK_PASSED) { + for (int i = 0; i < failed_location; i++) { if (molecule->atom_block_ids[i]) { remove_atom_from_target(router_data, molecule->atom_block_ids[i]); } } - for (i = 0; i < failed_location; i++) { + for (int i = 0; i < failed_location; i++) { if (molecule->atom_block_ids[i]) { revert_place_atom_block(molecule->atom_block_ids[i], router_data); } @@ -1145,7 +1157,7 @@ enum e_block_pack_status try_pack_molecule(t_cluster_placement_stats* cluster_pl } } else { VTR_LOGV(verbosity > 3, "\t\tFAILED No candidate primitives available\n"); - block_pack_status = BLK_FAILED_FEASIBLE; + block_pack_status = e_block_pack_status::BLK_FAILED_FEASIBLE; break; /* no more candidate primitives available, this molecule will not pack, return fail */ } } @@ -1196,7 +1208,7 @@ enum e_block_pack_status try_place_atom_block_rec(const t_pb_graph_node* pb_grap my_parent = nullptr; - block_pack_status = BLK_PASSED; + block_pack_status = e_block_pack_status::BLK_PASSED; /* Discover parent */ if (pb_graph_node->parent_pb_graph_node != cb->pb_graph_node) { @@ -1232,7 +1244,10 @@ enum e_block_pack_status try_place_atom_block_rec(const t_pb_graph_node* pb_grap } } } else { - VTR_ASSERT(parent_pb->mode == pb_graph_node->pb_type->parent_mode->index); + /* if this is not the first child of this parent, must match existing parent mode */ + if (parent_pb->mode != pb_graph_node->pb_type->parent_mode->index) { + return e_block_pack_status::BLK_FAILED_FEASIBLE; + } } const t_mode* mode = &parent_pb->pb_graph_node->pb_type->modes[parent_pb->mode]; @@ -1254,7 +1269,7 @@ enum e_block_pack_status try_place_atom_block_rec(const t_pb_graph_node* pb_grap * Early exit to flag failure */ if (true == pb_type->parent_mode->disable_packing) { - return BLK_FAILED_FEASIBLE; + return e_block_pack_status::BLK_FAILED_FEASIBLE; } is_primitive = (pb_type->num_modes == 0); @@ -1274,11 +1289,11 @@ enum e_block_pack_status try_place_atom_block_rec(const t_pb_graph_node* pb_grap add_atom_as_target(router_data, blk_id); if (!primitive_feasible(blk_id, pb)) { /* failed location feasibility check, revert pack */ - block_pack_status = BLK_FAILED_FEASIBLE; + block_pack_status = e_block_pack_status::BLK_FAILED_FEASIBLE; } // if this block passed and is part of a chained molecule - if (block_pack_status == BLK_PASSED && molecule->is_chain()) { + if (block_pack_status == e_block_pack_status::BLK_PASSED && molecule->is_chain()) { auto molecule_root_block = molecule->atom_block_ids[molecule->root]; // if this is the root block of the chain molecule check its placmeent feasibility if (blk_id == molecule_root_block) { @@ -1286,14 +1301,14 @@ enum e_block_pack_status try_place_atom_block_rec(const t_pb_graph_node* pb_grap } } - VTR_LOGV(verbosity > 4 && block_pack_status == BLK_PASSED, + VTR_LOGV(verbosity > 4 && block_pack_status == e_block_pack_status::BLK_PASSED, "\t\t\tPlaced atom '%s' (%s) at %s\n", atom_ctx.nlist.block_name(blk_id).c_str(), atom_ctx.nlist.block_model(blk_id)->name, pb->hierarchical_type_name().c_str()); } - if (block_pack_status != BLK_PASSED) { + if (block_pack_status != e_block_pack_status::BLK_PASSED) { free(pb->name); pb->name = nullptr; } @@ -1305,11 +1320,11 @@ enum e_block_pack_status try_place_atom_block_rec(const t_pb_graph_node* pb_grap * If the atom and cluster both have non-empty PartitionRegions, and the intersection * of the PartitionRegions is empty, the atom cannot be packed in the cluster. */ -enum e_block_pack_status atom_cluster_floorplanning_check(const AtomBlockId blk_id, - const ClusterBlockId clb_index, - const int verbosity, - PartitionRegion& temp_cluster_pr, - bool& cluster_pr_needs_update) { +bool atom_cluster_floorplanning_check(AtomBlockId blk_id, + ClusterBlockId clb_index, + int verbosity, + PartitionRegion& temp_cluster_pr, + bool& cluster_pr_needs_update) { auto& floorplanning_ctx = g_vpr_ctx.mutable_floorplanning(); /*check if the atom can go in the cluster by checking if the atom and cluster have intersecting PartitionRegions*/ @@ -1318,55 +1333,85 @@ enum e_block_pack_status atom_cluster_floorplanning_check(const AtomBlockId blk_ PartitionId partid; partid = floorplanning_ctx.constraints.get_atom_partition(blk_id); - PartitionRegion atom_pr; - PartitionRegion cluster_pr; - //if the atom does not belong to a partition, it can be put in the cluster //regardless of what the cluster's PartitionRegion is because it has no constraints if (partid == PartitionId::INVALID()) { - if (verbosity > 3) { - VTR_LOG("\t\t\t Intersect: Atom block %d has no floorplanning constraints, passed for cluster %d \n", blk_id, clb_index); - } + VTR_LOGV(verbosity > 3, + "\t\t\t Intersect: Atom block %d has no floorplanning constraints, passed for cluster %d \n", + blk_id, clb_index); cluster_pr_needs_update = false; - return BLK_PASSED; + return true; } else { //get pr of that partition - atom_pr = floorplanning_ctx.constraints.get_partition_pr(partid); + const PartitionRegion& atom_pr = floorplanning_ctx.constraints.get_partition_pr(partid); //intersect it with the pr of the current cluster - cluster_pr = floorplanning_ctx.cluster_constraints[clb_index]; + PartitionRegion cluster_pr = floorplanning_ctx.cluster_constraints[clb_index]; - if (cluster_pr.empty() == true) { + if (cluster_pr.empty()) { temp_cluster_pr = atom_pr; cluster_pr_needs_update = true; - if (verbosity > 3) { - VTR_LOG("\t\t\t Intersect: Atom block %d has floorplanning constraints, passed cluster %d which has empty PR\n", blk_id, clb_index); - } - return BLK_PASSED; + VTR_LOGV(verbosity > 3, + "\t\t\t Intersect: Atom block %d has floorplanning constraints, passed cluster %d which has empty PR\n", + blk_id, clb_index); + return true; } else { //update cluster_pr with the intersection of the cluster's PartitionRegion //and the atom's PartitionRegion update_cluster_part_reg(cluster_pr, atom_pr); } - if (cluster_pr.empty() == true) { - if (verbosity > 3) { - VTR_LOG("\t\t\t Intersect: Atom block %d failed floorplanning check for cluster %d \n", blk_id, clb_index); - } + // At this point, cluster_pr is the intersection of atom_pr and the clusters current pr + if (cluster_pr.empty()) { + VTR_LOGV(verbosity > 3, + "\t\t\t Intersect: Atom block %d failed floorplanning check for cluster %d \n", + blk_id, clb_index); cluster_pr_needs_update = false; - return BLK_FAILED_FLOORPLANNING; + return false; } else { //update the cluster's PartitionRegion with the intersecting PartitionRegion temp_cluster_pr = cluster_pr; cluster_pr_needs_update = true; - if (verbosity > 3) { - VTR_LOG("\t\t\t Intersect: Atom block %d passed cluster %d, cluster PR was updated with intersection result \n", blk_id, clb_index); - } - return BLK_PASSED; + VTR_LOGV(verbosity > 3, + "\t\t\t Intersect: Atom block %d passed cluster %d, cluster PR was updated with intersection result \n", + blk_id, clb_index); + return true; } } } +bool atom_cluster_noc_group_check(AtomBlockId blk_id, + ClusterBlockId clb_index, + int verbosity, + NocGroupId& temp_cluster_noc_grp_id) { + const auto& atom_noc_grp_ids = g_vpr_ctx.cl_helper().atom_noc_grp_id; + const NocGroupId atom_noc_grp_id = atom_noc_grp_ids.empty() ? NocGroupId::INVALID() : atom_noc_grp_ids[blk_id]; + + if (temp_cluster_noc_grp_id == NocGroupId::INVALID()) { + // the cluster does not have a NoC group + // assign the atom's NoC group to cluster + VTR_LOGV(verbosity > 3, + "\t\t\t NoC Group: Atom block %d passed cluster %d, cluster's NoC group was updated with the atom's group %d\n", + blk_id, clb_index, (size_t)atom_noc_grp_id); + temp_cluster_noc_grp_id = atom_noc_grp_id; + return true; + } else if (temp_cluster_noc_grp_id == atom_noc_grp_id) { + // the cluster has the same NoC group ID as the atom, + // so they are compatible + VTR_LOGV(verbosity > 3, + "\t\t\t NoC Group: Atom block %d passed cluster %d, cluster's NoC group was compatible with the atom's group %d\n", + blk_id, clb_index, (size_t)atom_noc_grp_id); + return true; + } else { + // the cluster belongs to a different NoC group than the atom's group, + // so they are incompatible + VTR_LOGV(verbosity > 3, + "\t\t\t NoC Group: Atom block %d failed NoC group check for cluster %d. Cluster's NoC group: %d, atom's NoC group: %d\n", + blk_id, clb_index, (size_t)temp_cluster_noc_grp_id, size_t(atom_noc_grp_id)); + return false; + } +} + /* Revert trial atom block iblock and free up memory space accordingly */ void revert_place_atom_block(const AtomBlockId blk_id, t_lb_router_data* router_data) { @@ -1502,6 +1547,7 @@ void try_fill_cluster(const t_packer_opts& packer_opts, t_lb_router_data* router_data, t_ext_pin_util target_ext_pin_util, PartitionRegion& temp_cluster_pr, + NocGroupId& temp_noc_grp_id, e_block_pack_status& block_pack_status, t_molecule_link* unclustered_list_head, const int& unclustered_list_head_size, @@ -1524,7 +1570,8 @@ void try_fill_cluster(const t_packer_opts& packer_opts, packer_opts.enable_pin_feasibility_filter, packer_opts.feasible_block_array_size, target_ext_pin_util, - temp_cluster_pr); + temp_cluster_pr, + temp_noc_grp_id); auto blk_id = next_molecule->atom_block_ids[next_molecule->root]; VTR_ASSERT(blk_id); @@ -1532,15 +1579,15 @@ void try_fill_cluster(const t_packer_opts& packer_opts, std::string blk_name = atom_ctx.nlist.block_name(blk_id); const t_model* blk_model = atom_ctx.nlist.block_model(blk_id); - if (block_pack_status != BLK_PASSED) { + if (block_pack_status != e_block_pack_status::BLK_PASSED) { if (packer_opts.pack_verbosity > 2) { - if (block_pack_status == BLK_FAILED_ROUTE) { + if (block_pack_status == e_block_pack_status::BLK_FAILED_ROUTE) { VTR_LOG("\tNO_ROUTE: '%s' (%s)", blk_name.c_str(), blk_model->name); VTR_LOGV(next_molecule->pack_pattern, " molecule %s molecule_size %zu", next_molecule->pack_pattern->name, next_molecule->atom_block_ids.size()); VTR_LOG("\n"); fflush(stdout); - } else if (block_pack_status == BLK_FAILED_FLOORPLANNING) { + } else if (block_pack_status == e_block_pack_status::BLK_FAILED_FLOORPLANNING) { VTR_LOG("\tFAILED_FLOORPLANNING_CONSTRAINTS_CHECK: '%s' (%s)", blk_name.c_str(), blk_model->name); VTR_LOG("\n"); } else { @@ -2036,7 +2083,7 @@ void start_new_cluster(t_cluster_placement_stats* cluster_placement_stats, const int num_models, const int max_cluster_size, const t_arch* arch, - std::string device_layout_name, + const std::string& device_layout_name, std::vector* lb_type_rr_graphs, t_lb_router_data** router_data, const int detailed_routing_stage, @@ -2046,7 +2093,8 @@ void start_new_cluster(t_cluster_placement_stats* cluster_placement_stats, bool enable_pin_feasibility_filter, bool balance_block_type_utilization, const int feasible_block_array_size, - PartitionRegion& temp_cluster_pr) { + PartitionRegion& temp_cluster_pr, + NocGroupId& temp_noc_grp_id) { /* Given a starting seed block, start_new_cluster determines the next cluster type to use * It expands the FPGA if it cannot find a legal cluster for the atom block */ @@ -2108,7 +2156,7 @@ void start_new_cluster(t_cluster_placement_stats* cluster_placement_stats, *router_data = alloc_and_load_router_data(&lb_type_rr_graphs[type->index], type); //Try packing into each mode - e_block_pack_status pack_result = BLK_STATUS_UNDEFINED; + e_block_pack_status pack_result = e_block_pack_status::BLK_STATUS_UNDEFINED; for (int j = 0; j < type->pb_graph_head->pb_type->num_modes && !success; j++) { pb->mode = j; @@ -2128,9 +2176,10 @@ void start_new_cluster(t_cluster_placement_stats* cluster_placement_stats, enable_pin_feasibility_filter, feasible_block_array_size, FULL_EXTERNAL_PIN_UTIL, - temp_cluster_pr); + temp_cluster_pr, + temp_noc_grp_id); - success = (pack_result == BLK_PASSED); + success = (pack_result == e_block_pack_status::BLK_PASSED); } if (success) { @@ -3432,7 +3481,7 @@ void update_molecule_chain_info(t_pack_molecule* chain_molecule, const t_pb_grap enum e_block_pack_status check_chain_root_placement_feasibility(const t_pb_graph_node* pb_graph_node, const t_pack_molecule* molecule, const AtomBlockId blk_id) { - enum e_block_pack_status block_pack_status = BLK_PASSED; + enum e_block_pack_status block_pack_status = e_block_pack_status::BLK_PASSED; auto& atom_ctx = g_vpr_ctx.atom(); bool is_long_chain = molecule->chain_info->is_long_chain; @@ -3460,19 +3509,19 @@ enum e_block_pack_status check_chain_root_placement_feasibility(const t_pb_graph // the chosen primitive should be a valid starting point for the chain // long chains should only be placed at the top of the chain tieOff = 0 if (pb_graph_node != chain_root_pins[chain_id][0]->parent_node) { - block_pack_status = BLK_FAILED_FEASIBLE; + block_pack_status = e_block_pack_status::BLK_FAILED_FEASIBLE; } // the chain doesn't have an assigned chain_id yet } else { - block_pack_status = BLK_FAILED_FEASIBLE; + block_pack_status = e_block_pack_status::BLK_FAILED_FEASIBLE; for (const auto& chain : chain_root_pins) { - for (size_t tieOff = 0; tieOff < chain.size(); tieOff++) { + for (auto tieOff : chain) { // check if this chosen primitive is one of the possible // starting points for this chain. - if (pb_graph_node == chain[tieOff]->parent_node) { + if (pb_graph_node == tieOff->parent_node) { // this location matches with the one of the dedicated chain // input from outside logic block, therefore it is feasible - block_pack_status = BLK_PASSED; + block_pack_status = e_block_pack_status::BLK_PASSED; break; } // long chains should only be placed at the top of the chain tieOff = 0 @@ -3624,7 +3673,7 @@ void update_le_count(const t_pb* pb, const t_logical_block_type_ptr logic_block_ * This function returns true if the given physical block has * a primitive matching the given blif model and is used */ -bool pb_used_for_blif_model(const t_pb* pb, std::string blif_model_name) { +bool pb_used_for_blif_model(const t_pb* pb, const std::string& blif_model_name) { auto pb_graph_node = pb->pb_graph_node; auto pb_type = pb_graph_node->pb_type; auto mode = &pb_type->modes[pb->mode]; diff --git a/vpr/src/pack/cluster_util.h b/vpr/src/pack/cluster_util.h index 6c05272e1e7..31a829c82d0 100644 --- a/vpr/src/pack/cluster_util.h +++ b/vpr/src/pack/cluster_util.h @@ -19,8 +19,8 @@ * @brief This file includes useful structs and functions for building and modifying clustering */ -#define AAPACK_MAX_HIGH_FANOUT_EXPLORE 10 /* For high-fanout nets that are ignored, consider a maximum of this many sinks, must be less than packer_opts.feasible_block_array_size */ -#define AAPACK_MAX_TRANSITIVE_EXPLORE 40 /* When investigating transitive fanout connections in packing, consider a maximum of this many molecules, must be less than packer_opts.feasible_block_array_size */ +constexpr int AAPACK_MAX_HIGH_FANOUT_EXPLORE = 10; /* For high-fanout nets that are ignored, consider a maximum of this many sinks, must be less than packer_opts.feasible_block_array_size */ +constexpr int AAPACK_MAX_TRANSITIVE_EXPLORE = 40; /* When investigating transitive fanout connections in packing, consider a maximum of this many molecules, must be less than packer_opts.feasible_block_array_size */ //Constant allowing all cluster pins to be used const t_ext_pin_util FULL_EXTERNAL_PIN_UTIL(1., 1.); @@ -200,20 +200,22 @@ void rebuild_attraction_groups(AttractionInfo& attraction_groups); void record_molecule_failure(t_pack_molecule* molecule, t_pb* pb); -enum e_block_pack_status try_pack_molecule(t_cluster_placement_stats* cluster_placement_stats_ptr, - t_pack_molecule* molecule, - t_pb_graph_node** primitives_list, - t_pb* pb, - const int max_models, - const int max_cluster_size, - const ClusterBlockId clb_index, - const int detailed_routing_stage, - t_lb_router_data* router_data, - int verbosity, - bool enable_pin_feasibility_filter, - const int feasible_block_array_size, - t_ext_pin_util max_external_pin_util, - PartitionRegion& temp_cluster_pr); +e_block_pack_status try_pack_molecule(t_cluster_placement_stats* cluster_placement_stats_ptr, + t_pack_molecule* molecule, + t_pb_graph_node** primitives_list, + t_pb* pb, + int max_models, + int max_cluster_size, + ClusterBlockId clb_index, + int detailed_routing_stage, + t_lb_router_data* router_data, + int verbosity, + bool enable_pin_feasibility_filter, + int feasible_block_array_size, + t_ext_pin_util max_external_pin_util, + PartitionRegion& temp_cluster_pr, + NocGroupId& temp_noc_grp_id, + int force_site = -1); void try_fill_cluster(const t_packer_opts& packer_opts, t_cluster_placement_stats* cur_cluster_placement_stats_ptr, @@ -237,6 +239,7 @@ void try_fill_cluster(const t_packer_opts& packer_opts, t_lb_router_data* router_data, t_ext_pin_util target_ext_pin_util, PartitionRegion& temp_cluster_pr, + NocGroupId& temp_noc_grp_id, e_block_pack_status& block_pack_status, t_molecule_link* unclustered_list_head, const int& unclustered_list_head_size, @@ -278,11 +281,48 @@ enum e_block_pack_status try_place_atom_block_rec(const t_pb_graph_node* pb_grap int verbosity, const int feasible_block_array_size); -enum e_block_pack_status atom_cluster_floorplanning_check(const AtomBlockId blk_id, - const ClusterBlockId clb_index, - const int verbosity, - PartitionRegion& temp_cluster_pr, - bool& cluster_pr_needs_update); + +/** + * @brief Checks whether an atom block can be added to a clustered block + * without violating floorplanning constraints. It also updates the + * clustered block's floorplanning region by taking the intersection of + * its current region and the floorplanning region of the given atom block. + * + * @param blk_id A unique ID for the candidate atom block to be added to the growing cluster. + * @param clb_index A unique ID for the clustered block that the atom block wants to be added to. + * @param verbosity Controls the detail level of log information printed by this function. + * @param temp_cluster_pr The floorplanning regions of the clustered block. This function may + * update the given region. + * @param cluster_pr_needs_update Indicates whether the floorplanning region of the clustered block + * have updated. + * @return True if adding the given atom block to the clustered block does not violated any + * floorplanning constraints. + */ +bool atom_cluster_floorplanning_check(AtomBlockId blk_id, + ClusterBlockId clb_index, + int verbosity, + PartitionRegion& temp_cluster_pr, + bool& cluster_pr_needs_update); +/** + * @brief Checks if an atom block can be added to a clustered block without + * violating NoC group constraints. For passing this check, either both clustered + * and atom blocks must belong to the same NoC group, or at least one of them should + * not belong to any NoC group. If the atom block is associated with a NoC group while + * the clustered block does not belong to any NoC groups, the NoC group ID of the atom block + * is assigned to the clustered block when the atom is added to it. + * block + * + * @param blk_id A unique ID for the candidate atom block to be added to the growing cluster. + * @param clb_index A unique ID for the clustered block that the atom block wants to be added to. + * @param verbosity Controls the detail level of log information printed by this function. + * @param temp_cluster_noc_grp_id The NoC group ID of the clustered block. This function may update + * this ID. + * @return True if adding the atom block the cluster does not violate NoC group constraints. + */ +bool atom_cluster_noc_group_check(AtomBlockId blk_id, + ClusterBlockId clb_index, + int verbosity, + NocGroupId& temp_cluster_noc_grp_id); void revert_place_atom_block(const AtomBlockId blk_id, t_lb_router_data* router_data); @@ -331,7 +371,7 @@ void start_new_cluster(t_cluster_placement_stats* cluster_placement_stats, const int num_models, const int max_cluster_size, const t_arch* arch, - std::string device_layout_name, + const std::string& device_layout_name, std::vector* lb_type_rr_graphs, t_lb_router_data** router_data, const int detailed_routing_stage, @@ -341,7 +381,8 @@ void start_new_cluster(t_cluster_placement_stats* cluster_placement_stats, bool enable_pin_feasibility_filter, bool balance_block_type_utilization, const int feasible_block_array_size, - PartitionRegion& temp_cluster_pr); + PartitionRegion& temp_cluster_pr, + NocGroupId& temp_noc_grp_id); t_pack_molecule* get_highest_gain_molecule(t_pb* cur_pb, AttractionInfo& attraction_groups, @@ -442,7 +483,7 @@ t_logical_block_type_ptr identify_logic_block_type(std::map& le_count, const t_pb_type* le_pb_type); @@ -453,4 +494,4 @@ bool cleanup_pb(t_pb* pb); void alloc_and_load_pb_stats(t_pb* pb, const int feasible_block_array_size); void init_clb_atoms_lookup(vtr::vector>& atoms_lookup); -#endif \ No newline at end of file +#endif diff --git a/vpr/src/pack/constraints_report.cpp b/vpr/src/pack/constraints_report.cpp index f75823aefab..2c58ef341a4 100644 --- a/vpr/src/pack/constraints_report.cpp +++ b/vpr/src/pack/constraints_report.cpp @@ -18,12 +18,10 @@ bool floorplan_constraints_regions_overfull() { } t_logical_block_type_ptr bt = cluster_ctx.clb_nlist.block_type(blk_id); - PartitionRegion pr = floorplanning_ctx.cluster_constraints[blk_id]; - std::vector regions = pr.get_partition_region(); - - for (unsigned int i_reg = 0; i_reg < regions.size(); i_reg++) { - Region current_reg = regions[i_reg]; + const PartitionRegion& pr = floorplanning_ctx.cluster_constraints[blk_id]; + const std::vector& regions = pr.get_regions(); + for (const auto& current_reg : regions) { auto got = regions_count_info.find(current_reg); if (got == regions_count_info.end()) { diff --git a/vpr/src/pack/noc_aware_cluster_util.cpp b/vpr/src/pack/noc_aware_cluster_util.cpp new file mode 100644 index 00000000000..51319175c12 --- /dev/null +++ b/vpr/src/pack/noc_aware_cluster_util.cpp @@ -0,0 +1,99 @@ + +#include "noc_aware_cluster_util.h" +#include "globals.h" + +#include + +std::vector find_noc_router_atoms() { + const auto& atom_ctx = g_vpr_ctx.atom(); + + // NoC router atoms are expected to have a specific blif model + const std::string noc_router_blif_model_name = "noc_router_adapter_block"; + + // stores found NoC router atoms + std::vector noc_router_atoms; + + // iterate over all atoms and find those whose blif model matches + for (auto atom_id : atom_ctx.nlist.blocks()) { + const t_model* model = atom_ctx.nlist.block_model(atom_id); + if (noc_router_blif_model_name == model->name) { + noc_router_atoms.push_back(atom_id); + } + } + + return noc_router_atoms; +} + +void update_noc_reachability_partitions(const std::vector& noc_atoms) { + const auto& atom_ctx = g_vpr_ctx.atom(); + auto& cl_helper_ctx = g_vpr_ctx.mutable_cl_helper(); + const auto& high_fanout_thresholds = g_vpr_ctx.cl_helper().high_fanout_thresholds; + const auto& grid = g_vpr_ctx.device().grid; + + t_logical_block_type_ptr logic_block_type = infer_logic_block_type(grid); + const char* logical_block_name = logic_block_type != nullptr ? logic_block_type->name : ""; + const size_t high_fanout_threshold = high_fanout_thresholds.get_threshold(logical_block_name); + + // get the total number of atoms + const size_t n_atoms = atom_ctx.nlist.blocks().size(); + + vtr::vector atom_visited(n_atoms, false); + + cl_helper_ctx.atom_noc_grp_id.resize(n_atoms, NocGroupId::INVALID()); + + int noc_grp_id_cnt = 0; + + /* + * Assume that the atom netlist is represented as an undirected graph + * with all high fanout nets removed. In this graph, we want to find all + * connected components that include at least one NoC router. We start a + * BFS from each NoC router and traverse all nets below the high_fanout_threshold, + * and mark each atom block with a NoC group ID. + */ + + for (auto noc_atom_id : noc_atoms) { + // check if this NoC router has already been visited + if (atom_visited[noc_atom_id]) { + continue; + } + + auto noc_grp_id = (NocGroupId)noc_grp_id_cnt; + noc_grp_id_cnt++; + + std::queue q; + q.push(noc_atom_id); + atom_visited[noc_atom_id] = true; + + while (!q.empty()) { + AtomBlockId current_atom = q.front(); + q.pop(); + + cl_helper_ctx.atom_noc_grp_id[current_atom] = noc_grp_id; + + for(auto pin : atom_ctx.nlist.block_pins(current_atom)) { + AtomNetId net_id = atom_ctx.nlist.pin_net(pin); + size_t net_fanout = atom_ctx.nlist.net_sinks(net_id).size(); + + if (net_fanout >= high_fanout_threshold) { + continue; + } + + AtomBlockId driver_atom_id = atom_ctx.nlist.net_driver_block(net_id); + if (!atom_visited[driver_atom_id]) { + q.push(driver_atom_id); + atom_visited[driver_atom_id] = true; + } + + for (auto sink_pin : atom_ctx.nlist.net_sinks(net_id)) { + AtomBlockId sink_atom_id = atom_ctx.nlist.pin_block(sink_pin); + if (!atom_visited[sink_atom_id]) { + q.push(sink_atom_id); + atom_visited[sink_atom_id] = true; + } + } + + } + } + + } +} \ No newline at end of file diff --git a/vpr/src/pack/noc_aware_cluster_util.h b/vpr/src/pack/noc_aware_cluster_util.h new file mode 100644 index 00000000000..abeb8d8ba95 --- /dev/null +++ b/vpr/src/pack/noc_aware_cluster_util.h @@ -0,0 +1,42 @@ +#ifndef VTR_NOC_AWARE_CLUSTER_UTIL_H +#define VTR_NOC_AWARE_CLUSTER_UTIL_H + +/** + * @file This file includes helper functions used to find NoC groups + * in the atom netlist and assign NoC group IDs to atom blocks. + * + * A NoC group is a set of atom blocks that are reachable from a NoC router + * through low fanout nets. During packing, atom blocks that belong to two different + * NoC group IDs cannot be packed with each other into the same clustered block. + * This prevents atom blocks that belong to two separate NoC-attached modules from + * being packed with each other, and helps with more localized placement of NoC-attached + * modules around their corresponding NoC routers. + * + * For more details refer to the following paper: + * The Road Less Traveled: Congestion-Aware NoC Placement and Packet Routing for FPGAs + */ + +#include + +#include "vpr_types.h" + +/** + * @brief Iterates over all atom blocks and check whether + * their blif model is the same as a NoC routers. + * + * @return The atom block IDs of the NoC router blocks in the netlist. + */ +std::vector find_noc_router_atoms(); + + +/** + * @brief Runs BFS starting from NoC routers to find all connected + * components that include a NoC router. Each connected component + * containing a NoC router is marked as a NoC group. The NoC group ID + * for each atom block is updated in the global state. + * + * @param noc_atoms The atom block IDs of the NoC router blocks in the netlist. + */ +void update_noc_reachability_partitions(const std::vector& noc_atoms); + +#endif diff --git a/vpr/src/pack/output_clustering.cpp b/vpr/src/pack/output_clustering.cpp index 084898322b9..cee87ad51a1 100644 --- a/vpr/src/pack/output_clustering.cpp +++ b/vpr/src/pack/output_clustering.cpp @@ -661,7 +661,7 @@ void write_packing_results_to_xml(const bool& global_clocks, const std::string& architecture_id, const char* out_fname) { vtr::vector*> intra_lb_routing_placeholder; - std::unordered_set is_clock = alloc_and_load_is_clock(global_clocks); + std::unordered_set is_clock = alloc_and_load_is_clock(); output_clustering(intra_lb_routing_placeholder, global_clocks, diff --git a/vpr/src/pack/pack.cpp b/vpr/src/pack/pack.cpp index 9fd61587cde..c151a1eea02 100644 --- a/vpr/src/pack/pack.cpp +++ b/vpr/src/pack/pack.cpp @@ -1,10 +1,6 @@ -#include -#include #include #include -#include -#include -#include +#include #include "vtr_assert.h" #include "vtr_log.h" @@ -15,19 +11,21 @@ #include "read_xml_arch_file.h" #include "globals.h" -#include "atom_netlist.h" #include "prepack.h" #include "pack_types.h" #include "pack.h" -#include "read_blif.h" #include "cluster.h" #include "SetupGrid.h" #include "re_cluster.h" +#include "noc_aware_cluster_util.h" /* #define DUMP_PB_GRAPH 1 */ /* #define DUMP_BLIF_INPUT 1 */ -static bool try_size_device_grid(const t_arch& arch, const std::map& num_type_instances, float target_device_utilization, std::string device_layout_name); +static bool try_size_device_grid(const t_arch& arch, + const std::map& num_type_instances, + float target_device_utilization, + const std::string& device_layout_name); /** * @brief Counts the total number of logic models that the architecture can implement. @@ -58,7 +56,7 @@ bool try_pack(t_packer_opts* packer_opts, helper_ctx.num_models = count_models(user_models); helper_ctx.num_models += count_models(library_models); - is_clock = alloc_and_load_is_clock(packer_opts->global_clocks); + is_clock = alloc_and_load_is_clock(); is_global.insert(is_clock.begin(), is_clock.end()); size_t num_p_inputs = 0; @@ -128,6 +126,10 @@ bool try_pack(t_packer_opts* packer_opts, int pack_iteration = 1; bool floorplan_regions_overfull = false; + // find all NoC router atoms + auto noc_atoms = find_noc_router_atoms(); + update_noc_reachability_partitions(noc_atoms); + while (true) { free_clustering_data(*packer_opts, clustering_data); @@ -153,7 +155,7 @@ bool try_pack(t_packer_opts* packer_opts, * is not dense enough and there are floorplan constraints, it is presumed that the constraints are the cause * of the floorplan not fitting, so attraction groups are turned on for later iterations. */ - bool floorplan_not_fitting = (floorplan_regions_overfull || g_vpr_ctx.mutable_floorplanning().constraints.get_num_partitions() > 0); + bool floorplan_not_fitting = (floorplan_regions_overfull || g_vpr_ctx.floorplanning().constraints.get_num_partitions() > 0); if (fits_on_device && !floorplan_regions_overfull) { break; //Done @@ -297,10 +299,9 @@ float get_arch_switch_info(short switch_index, int switch_fanin, float& Tdel_swi return Tdel_switch + R_switch * Cout_switch; } -std::unordered_set alloc_and_load_is_clock(bool global_clocks) { +std::unordered_set alloc_and_load_is_clock() { /* Looks through all the atom blocks to find and mark all the clocks, by setting * the corresponding entry by adding the clock to is_clock. - * global_clocks is used * only for an error check. */ int num_clocks = 0; @@ -319,19 +320,13 @@ std::unordered_set alloc_and_load_is_clock(bool global_clocks) { } } - /* If we have multiple clocks and we're supposed to declare them global, * - * print a warning message, since it looks like this circuit may have * - * locally generated clocks. */ - - if (num_clocks > 1 && global_clocks) { - VTR_LOG_WARN( - "All %d clocks will be treated as global.\n", num_clocks); - } - return (is_clock); } -static bool try_size_device_grid(const t_arch& arch, const std::map& num_type_instances, float target_device_utilization, std::string device_layout_name) { +static bool try_size_device_grid(const t_arch& arch, + const std::map& num_type_instances, + float target_device_utilization, + const std::string& device_layout_name) { auto& device_ctx = g_vpr_ctx.mutable_device(); //Build the device diff --git a/vpr/src/pack/pack.h b/vpr/src/pack/pack.h index df99104512b..9f811b78f52 100644 --- a/vpr/src/pack/pack.h +++ b/vpr/src/pack/pack.h @@ -15,6 +15,6 @@ bool try_pack(t_packer_opts* packer_opts, float get_arch_switch_info(short switch_index, int switch_fanin, float& Tdel_switch, float& R_switch, float& Cout_switch); -std::unordered_set alloc_and_load_is_clock(bool global_clocks); +std::unordered_set alloc_and_load_is_clock(); #endif diff --git a/vpr/src/pack/pb_type_graph.cpp b/vpr/src/pack/pb_type_graph.cpp index 72467921f21..c1cbed18430 100644 --- a/vpr/src/pack/pb_type_graph.cpp +++ b/vpr/src/pack/pb_type_graph.cpp @@ -48,6 +48,7 @@ static void alloc_and_load_pb_graph(t_pb_graph_node* pb_graph_node, t_pb_graph_node* parent_pb_graph_node, t_pb_type* pb_type, const int index, + const int flat_index, bool load_power_structures, int& pin_count_in_cluster); @@ -134,6 +135,11 @@ static bool check_input_pins_equivalence(const t_pb_graph_pin* cur_pin, std::map& edges_map, int* line_num); +/* computes the index of a pb graph node at its level of the pb hierarchy */ +static int compute_flat_index_for_child_node(int num_children_of_type, + int parent_flat_index, + int child_index); + /** * Allocate memory into types and load the pb graph with interconnect edges */ @@ -151,6 +157,7 @@ void alloc_and_load_all_pb_graphs(bool load_power_structures, bool is_flat) { nullptr, type.pb_type, 0, + 0, load_power_structures, pin_count_in_cluster); type.pb_graph_head->total_pb_pins = pin_count_in_cluster; @@ -224,6 +231,7 @@ static void alloc_and_load_pb_graph(t_pb_graph_node* pb_graph_node, t_pb_graph_node* parent_pb_graph_node, t_pb_type* pb_type, const int index, + const int flat_index, bool load_power_structures, int& pin_count_in_cluster) { int i, j, k, i_input, i_output, i_clockport; @@ -237,6 +245,7 @@ static void alloc_and_load_pb_graph(t_pb_graph_node* pb_graph_node, pb_graph_node->num_clock_ports = 0; pb_graph_node->total_primitive_count = 0; + pb_graph_node->flat_site_index = 0; /* Generate ports for pb graph node */ for (i = 0; i < pb_type->num_ports; i++) { @@ -349,11 +358,15 @@ static void alloc_and_load_pb_graph(t_pb_graph_node* pb_graph_node, sizeof(t_pb_graph_node*)); for (j = 0; j < pb_type->modes[i].num_pb_type_children; j++) { pb_graph_node->child_pb_graph_nodes[i][j] = (t_pb_graph_node*)vtr::calloc(pb_type->modes[i].pb_type_children[j].num_pb, sizeof(t_pb_graph_node)); - for (k = 0; k < pb_type->modes[i].pb_type_children[j].num_pb; k++) { + int num_children_of_type = pb_type->modes[i].pb_type_children[j].num_pb; + + for (k = 0; k < num_children_of_type; k++) { + int child_flat_index = compute_flat_index_for_child_node(num_children_of_type, flat_index, k); alloc_and_load_pb_graph(&pb_graph_node->child_pb_graph_nodes[i][j][k], pb_graph_node, &pb_type->modes[i].pb_type_children[j], k, + child_flat_index, load_power_structures, pin_count_in_cluster); } @@ -380,6 +393,10 @@ static void alloc_and_load_pb_graph(t_pb_graph_node* pb_graph_node, pb_node = pb_node->parent_pb_graph_node; } pb_graph_node->total_primitive_count = total_count; + + // if this is a primitive, then flat_index corresponds + // to its index within all primitives of this type + pb_graph_node->flat_site_index = flat_index; } } @@ -1914,3 +1931,22 @@ const t_pb_graph_edge* get_edge_between_pins(const t_pb_graph_pin* driver_pin, c return nullptr; } + +/* Date:June 8th, 2024 + * Author: Kate Thurmer + * Purpose: This subroutine computes the index of a pb graph node at its + level of the pb hierarchy; it is computed by the parent and + passed to each child of each child pb type. When the child is + a primitive, the computed indes is its flat site index. + For example, if there are 10 ALMs, each with 2 FFs and 2 LUTs, + then the ALM at index N, when calling this function for + its FF child at index M, would compute the child's index as: + N*(FFs per ALM) + M + e.g. for FF[1] in ALM[5], this returns + 5*(2 FFS per ALM) + 1 = 11 + */ +static int compute_flat_index_for_child_node(int num_children_of_type, + int parent_flat_index, + int child_index) { + return parent_flat_index*num_children_of_type + child_index; +} diff --git a/vpr/src/pack/re_cluster.cpp b/vpr/src/pack/re_cluster.cpp index 34e0ada9669..875ba98b2e9 100644 --- a/vpr/src/pack/re_cluster.cpp +++ b/vpr/src/pack/re_cluster.cpp @@ -16,6 +16,7 @@ bool move_mol_to_new_cluster(t_pack_molecule* molecule, ClusterBlockId old_clb = atom_to_cluster(molecule->atom_block_ids[molecule->root]); int molecule_size = get_array_size_of_molecule(molecule); + NocGroupId temp_noc_grp_id = NocGroupId::INVALID(); PartitionRegion temp_cluster_pr; t_lb_router_data* old_router_data = nullptr; t_lb_router_data* router_data = nullptr; @@ -66,7 +67,8 @@ bool move_mol_to_new_cluster(t_pack_molecule* molecule, verbosity, clustering_data, &router_data, - temp_cluster_pr); + temp_cluster_pr, + temp_noc_grp_id); //Commit or revert the move if (is_created) { @@ -128,7 +130,7 @@ bool move_mol_to_existing_cluster(t_pack_molecule* molecule, //Add the atom to the new cluster t_lb_router_data* new_router_data = nullptr; - is_added = pack_mol_in_existing_cluster(molecule, molecule_size, new_clb, new_clb_atoms, during_packing, false, clustering_data, new_router_data); + is_added = pack_mol_in_existing_cluster(molecule, molecule_size, new_clb, new_clb_atoms, during_packing, clustering_data, new_router_data); //Commit or revert the move if (is_added) { @@ -157,6 +159,8 @@ bool swap_two_molecules(t_pack_molecule* molecule_1, bool during_packing, int verbosity, t_clustering_data& clustering_data) { + auto& cluster_ctx = g_vpr_ctx.mutable_clustering(); + //define local variables PartitionRegion temp_cluster_pr_1, temp_cluster_pr_2; @@ -193,6 +197,11 @@ bool swap_two_molecules(t_pack_molecule* molecule_1, return false; } + t_pb* clb_pb_1 = cluster_ctx.clb_nlist.block_pb(clb_1); + std::string clb_pb_1_name = (std::string)clb_pb_1->name; + t_pb* clb_pb_2 = cluster_ctx.clb_nlist.block_pb(clb_2); + std::string clb_pb_2_name = (std::string)clb_pb_2->name; + //remove the molecule from its current cluster remove_mol_from_cluster(molecule_1, molecule_1_size, clb_1, clb_1_atoms, false, old_1_router_data); commit_mol_removal(molecule_1, molecule_1_size, clb_1, during_packing, old_1_router_data, clustering_data); @@ -201,31 +210,43 @@ bool swap_two_molecules(t_pack_molecule* molecule_1, commit_mol_removal(molecule_2, molecule_2_size, clb_2, during_packing, old_2_router_data, clustering_data); //Add the atom to the new cluster - mol_1_success = pack_mol_in_existing_cluster(molecule_1, molecule_1_size, clb_2, clb_2_atoms, during_packing, true, clustering_data, old_2_router_data); + mol_1_success = pack_mol_in_existing_cluster(molecule_1, molecule_1_size, clb_2, clb_2_atoms, during_packing, clustering_data, old_2_router_data); if (!mol_1_success) { - mol_1_success = pack_mol_in_existing_cluster(molecule_1, molecule_1_size, clb_1, clb_1_atoms, during_packing, true, clustering_data, old_1_router_data); - mol_2_success = pack_mol_in_existing_cluster(molecule_2, molecule_2_size, clb_2, clb_2_atoms, during_packing, true, clustering_data, old_2_router_data); + mol_1_success = pack_mol_in_existing_cluster(molecule_1, molecule_1_size, clb_1, clb_1_atoms, during_packing, clustering_data, old_1_router_data); + mol_2_success = pack_mol_in_existing_cluster(molecule_2, molecule_2_size, clb_2, clb_2_atoms, during_packing, clustering_data, old_2_router_data); VTR_ASSERT(mol_1_success && mol_2_success); free_router_data(old_1_router_data); free_router_data(old_2_router_data); old_1_router_data = nullptr; old_2_router_data = nullptr; + + free(clb_pb_1->name); + cluster_ctx.clb_nlist.block_pb(clb_1)->name = vtr::strdup(clb_pb_1_name.c_str()); + free(clb_pb_2->name); + cluster_ctx.clb_nlist.block_pb(clb_2)->name = vtr::strdup(clb_pb_2_name.c_str()); + return false; } - mol_2_success = pack_mol_in_existing_cluster(molecule_2, molecule_2_size, clb_1, clb_1_atoms, during_packing, true, clustering_data, old_1_router_data); + mol_2_success = pack_mol_in_existing_cluster(molecule_2, molecule_2_size, clb_1, clb_1_atoms, during_packing, clustering_data, old_1_router_data); if (!mol_2_success) { remove_mol_from_cluster(molecule_1, molecule_1_size, clb_2, clb_2_atoms, true, old_2_router_data); commit_mol_removal(molecule_1, molecule_1_size, clb_2, during_packing, old_2_router_data, clustering_data); - mol_1_success = pack_mol_in_existing_cluster(molecule_1, molecule_1_size, clb_1, clb_1_atoms, during_packing, true, clustering_data, old_1_router_data); - mol_2_success = pack_mol_in_existing_cluster(molecule_2, molecule_2_size, clb_2, clb_2_atoms, during_packing, true, clustering_data, old_2_router_data); + mol_1_success = pack_mol_in_existing_cluster(molecule_1, molecule_1_size, clb_1, clb_1_atoms, during_packing, clustering_data, old_1_router_data); + mol_2_success = pack_mol_in_existing_cluster(molecule_2, molecule_2_size, clb_2, clb_2_atoms, during_packing, clustering_data, old_2_router_data); VTR_ASSERT(mol_1_success && mol_2_success); free_router_data(old_1_router_data); free_router_data(old_2_router_data); old_1_router_data = nullptr; old_2_router_data = nullptr; + + free(clb_pb_1->name); + cluster_ctx.clb_nlist.block_pb(clb_1)->name = vtr::strdup(clb_pb_1_name.c_str()); + free(clb_pb_2->name); + cluster_ctx.clb_nlist.block_pb(clb_2)->name = vtr::strdup(clb_pb_2_name.c_str()); + return false; } @@ -242,6 +263,12 @@ bool swap_two_molecules(t_pack_molecule* molecule_1, free_router_data(old_2_router_data); old_1_router_data = nullptr; old_2_router_data = nullptr; + + free(clb_pb_1->name); + cluster_ctx.clb_nlist.block_pb(clb_1)->name = vtr::strdup(clb_pb_1_name.c_str()); + free(clb_pb_2->name); + cluster_ctx.clb_nlist.block_pb(clb_2)->name = vtr::strdup(clb_pb_2_name.c_str()); + return true; } #endif diff --git a/vpr/src/pack/re_cluster_util.cpp b/vpr/src/pack/re_cluster_util.cpp index b3c1d2c2fa9..98ceffd7b71 100644 --- a/vpr/src/pack/re_cluster_util.cpp +++ b/vpr/src/pack/re_cluster_util.cpp @@ -1,6 +1,5 @@ #include "re_cluster_util.h" -#include "vpr_context.h" #include "clustered_netlist_utils.h" #include "cluster_util.h" #include "cluster_router.h" @@ -8,16 +7,15 @@ #include "place_macro.h" #include "initial_placement.h" #include "read_netlist.h" -#include -//The name suffix of the new block (if exists) + +// The name suffix of the new block (if exists) +// This suffex is useful in preventing duplicate high-level cluster block names const char* name_suffix = "_m"; /******************* Static Functions ********************/ -//static void set_atom_pin_mapping(const ClusteredNetlist& clb_nlist, const AtomBlockId atom_blk, const AtomPortId atom_port, const t_pb_graph_pin* gpin); static void load_atom_index_for_pb_pin(t_pb_routes& pb_route, int ipin); static void load_internal_to_block_net_nums(const t_logical_block_type_ptr type, t_pb_routes& pb_route); -//static bool count_children_pbs(const t_pb* pb); static void fix_atom_pin_mapping(const AtomBlockId blk); static void fix_cluster_pins_after_moving(const ClusterBlockId clb_index); @@ -42,6 +40,7 @@ static void update_cluster_pb_stats(const t_pack_molecule* molecule, int molecule_size, ClusterBlockId clb_index, bool is_added); + /***************** API functions ***********************/ ClusterBlockId atom_to_cluster(const AtomBlockId& atom) { auto& atom_ctx = g_vpr_ctx.atom(); @@ -66,19 +65,18 @@ void remove_mol_from_cluster(const t_pack_molecule* molecule, t_lb_router_data*& router_data) { auto& helper_ctx = g_vpr_ctx.mutable_cl_helper(); - //re-build router_data structure for this cluster - if (!router_data_ready) - router_data = lb_load_router_data(helper_ctx.lb_type_rr_graphs, old_clb, old_clb_atoms); - - //remove atom from router_data for (int i_atom = 0; i_atom < molecule_size; i_atom++) { if (molecule->atom_block_ids[i_atom]) { - remove_atom_from_target(router_data, molecule->atom_block_ids[i_atom]); auto it = old_clb_atoms->find(molecule->atom_block_ids[i_atom]); if (it != old_clb_atoms->end()) old_clb_atoms->erase(molecule->atom_block_ids[i_atom]); } } + + //re-build router_data structure for this cluster + if (!router_data_ready) + router_data = lb_load_router_data(helper_ctx.lb_type_rr_graphs, old_clb, old_clb_atoms); + update_cluster_pb_stats(molecule, molecule_size, old_clb, false); } @@ -88,19 +86,20 @@ void commit_mol_move(const ClusterBlockId& old_clb, bool new_clb_created) { auto& device_ctx = g_vpr_ctx.device(); - //Place the new cluster if this function called during placement (after the initial placement is done) + //place the new cluster if this function called during placement (after the initial placement is done) if (!during_packing && new_clb_created) { int imacro; g_vpr_ctx.mutable_placement().block_locs.resize(g_vpr_ctx.placement().block_locs.size() + 1); get_imacro_from_iblk(&imacro, old_clb, g_vpr_ctx.placement().pl_macros); set_imacro_for_iblk(&imacro, new_clb); - place_one_block(new_clb, device_ctx.pad_loc_type, NULL, NULL); + place_one_block(new_clb, device_ctx.pad_loc_type, nullptr, nullptr); } } t_lb_router_data* lb_load_router_data(std::vector* lb_type_rr_graphs, const ClusterBlockId& clb_index, const std::unordered_set* clb_atoms) { //build data structures used by intra-logic block router auto& cluster_ctx = g_vpr_ctx.clustering(); + auto& atom_ctx = g_vpr_ctx.atom(); auto block_type = cluster_ctx.clb_nlist.block_type(clb_index); t_lb_router_data* router_data = alloc_and_load_router_data(&lb_type_rr_graphs[block_type->index], block_type); @@ -110,21 +109,29 @@ t_lb_router_data* lb_load_router_data(std::vector* lb_type_rr for (auto atom_id : *clb_atoms) { add_atom_as_target(router_data, atom_id); + const t_pb* pb = atom_ctx.lookup.atom_pb(atom_id); + while (pb) { + set_reset_pb_modes(router_data, pb, true); + pb = pb->parent_pb; + } } return (router_data); } bool start_new_cluster_for_mol(t_pack_molecule* molecule, const t_logical_block_type_ptr& type, - const int mode, - const int feasible_block_array_size, + const int& mode, + const int& feasible_block_array_size, bool enable_pin_feasibility_filter, ClusterBlockId clb_index, bool during_packing, int verbosity, t_clustering_data& clustering_data, t_lb_router_data** router_data, - PartitionRegion& temp_cluster_pr) { + PartitionRegion& temp_cluster_pr, + NocGroupId& temp_cluster_noc_grp_id, + enum e_detailed_routing_stages detailed_routing_stage, + int force_site) { auto& atom_ctx = g_vpr_ctx.atom(); auto& floorplanning_ctx = g_vpr_ctx.mutable_floorplanning(); auto& helper_ctx = g_vpr_ctx.mutable_cl_helper(); @@ -146,28 +153,31 @@ bool start_new_cluster_for_mol(t_pack_molecule* molecule, *router_data = alloc_and_load_router_data(&(helper_ctx.lb_type_rr_graphs[type->index]), type); - e_block_pack_status pack_result = BLK_STATUS_UNDEFINED; + e_block_pack_status pack_result = e_block_pack_status::BLK_STATUS_UNDEFINED; pb->mode = mode; - reset_cluster_placement_stats(&(helper_ctx.cluster_placement_stats[type->index])); + t_cluster_placement_stats* cluster_placement_stats = &(helper_ctx.cluster_placement_stats[type->index]); + reset_cluster_placement_stats(cluster_placement_stats); set_mode_cluster_placement_stats(pb->pb_graph_node, mode); - pack_result = try_pack_molecule(&(helper_ctx.cluster_placement_stats[type->index]), + pack_result = try_pack_molecule(cluster_placement_stats, molecule, helper_ctx.primitives_list, pb, helper_ctx.num_models, helper_ctx.max_cluster_size, clb_index, - E_DETAILED_ROUTE_FOR_EACH_ATOM, + detailed_routing_stage, *router_data, 0, enable_pin_feasibility_filter, 0, FULL_EXTERNAL_PIN_UTIL, - temp_cluster_pr); + temp_cluster_pr, + temp_cluster_noc_grp_id, + force_site); // If clustering succeeds, add it to the clb netlist - if (pack_result == BLK_PASSED) { + if (pack_result == e_block_pack_status::BLK_PASSED) { VTR_LOGV(verbosity > 4, "\tPASSED_SEED: Block Type %s\n", type->name); //Once clustering succeeds, add it to the clb netlist if (pb->name != nullptr) { @@ -177,6 +187,16 @@ bool start_new_cluster_for_mol(t_pack_molecule* molecule, pb->name = vtr::strdup(new_name.c_str()); clb_index = cluster_ctx.clb_nlist.create_block(new_name.c_str(), pb, type); helper_ctx.total_clb_num++; + int molecule_size = get_array_size_of_molecule(molecule); + update_cluster_pb_stats(molecule, molecule_size, clb_index, true); + + // Update the clb-->atoms lookup table + helper_ctx.atoms_lookup.resize(helper_ctx.total_clb_num); + for (int i_atom = 0; i_atom < molecule_size; ++i_atom) { + if (molecule->atom_block_ids[i_atom]) { + helper_ctx.atoms_lookup[clb_index].insert(molecule->atom_block_ids[i_atom]); + } + } //If you are still in packing, update the clustering data. Otherwise, update the clustered netlist. if (during_packing) { @@ -194,22 +214,26 @@ bool start_new_cluster_for_mol(t_pack_molecule* molecule, free_router_data(*router_data); *router_data = nullptr; - return (pack_result == BLK_PASSED); + return (pack_result == e_block_pack_status::BLK_PASSED); } bool pack_mol_in_existing_cluster(t_pack_molecule* molecule, int molecule_size, - const ClusterBlockId new_clb, + const ClusterBlockId& new_clb, std::unordered_set* new_clb_atoms, bool during_packing, - bool is_swap, t_clustering_data& clustering_data, - t_lb_router_data*& router_data) { + t_lb_router_data*& router_data, + enum e_detailed_routing_stages detailed_routing_stage, + bool enable_pin_feasibility_filter, + int force_site) { + auto& helper_ctx = g_vpr_ctx.mutable_cl_helper(); auto& cluster_ctx = g_vpr_ctx.mutable_clustering(); + NocGroupId temp_cluster_noc_grp_id; PartitionRegion temp_cluster_pr; - e_block_pack_status pack_result = BLK_STATUS_UNDEFINED; + e_block_pack_status pack_result = e_block_pack_status::BLK_STATUS_UNDEFINED; t_ext_pin_util target_ext_pin_util = helper_ctx.target_external_pin_util.get_pin_util(cluster_ctx.clb_nlist.block_type(new_clb)->name); t_logical_block_type_ptr block_type = cluster_ctx.clb_nlist.block_type(new_clb); t_pb* temp_pb = cluster_ctx.clb_nlist.block_pb(new_clb); @@ -220,8 +244,7 @@ bool pack_mol_in_existing_cluster(t_pack_molecule* molecule, return false; //re-build router_data structure for this cluster - if (!is_swap) - router_data = lb_load_router_data(helper_ctx.lb_type_rr_graphs, new_clb, new_clb_atoms); + router_data = lb_load_router_data(helper_ctx.lb_type_rr_graphs, new_clb, new_clb_atoms); pack_result = try_pack_molecule(&(helper_ctx.cluster_placement_stats[block_type->index]), molecule, @@ -230,17 +253,19 @@ bool pack_mol_in_existing_cluster(t_pack_molecule* molecule, helper_ctx.num_models, helper_ctx.max_cluster_size, new_clb, - E_DETAILED_ROUTE_FOR_EACH_ATOM, + detailed_routing_stage, router_data, 0, - helper_ctx.enable_pin_feasibility_filter, + enable_pin_feasibility_filter, //false, helper_ctx.feasible_block_array_size, target_ext_pin_util, - temp_cluster_pr); + temp_cluster_pr, + temp_cluster_noc_grp_id, + force_site); // If clustering succeeds, add it to the clb netlist - if (pack_result == BLK_PASSED) { + if (pack_result == e_block_pack_status::BLK_PASSED) { //If you are still in packing, update the clustering data. Otherwise, update the clustered netlist. if (during_packing) { free_intra_lb_nets(clustering_data.intra_lb_routing[new_clb]); @@ -259,13 +284,11 @@ bool pack_mol_in_existing_cluster(t_pack_molecule* molecule, update_cluster_pb_stats(molecule, molecule_size, new_clb, true); } - if (!is_swap) { - //Free clustering router data - free_router_data(router_data); - router_data = nullptr; - } + //Free clustering router data + free_router_data(router_data); + router_data = nullptr; - return (pack_result == BLK_PASSED); + return (pack_result == e_block_pack_status::BLK_PASSED); } void fix_clustered_netlist(t_pack_molecule* molecule, @@ -284,6 +307,7 @@ void revert_mol_move(const ClusterBlockId& old_clb, auto& helper_ctx = g_vpr_ctx.mutable_cl_helper(); auto& cluster_ctx = g_vpr_ctx.mutable_clustering(); + NocGroupId temp_cluster_noc_grp_id_original; PartitionRegion temp_cluster_pr_original; e_block_pack_status pack_result = try_pack_molecule(&(helper_ctx.cluster_placement_stats[cluster_ctx.clb_nlist.block_type(old_clb)->index]), molecule, @@ -298,9 +322,10 @@ void revert_mol_move(const ClusterBlockId& old_clb, helper_ctx.enable_pin_feasibility_filter, helper_ctx.feasible_block_array_size, helper_ctx.target_external_pin_util.get_pin_util(cluster_ctx.clb_nlist.block_type(old_clb)->name), - temp_cluster_pr_original); + temp_cluster_pr_original, + temp_cluster_noc_grp_id_original); - VTR_ASSERT(pack_result == BLK_PASSED); + VTR_ASSERT(pack_result == e_block_pack_status::BLK_PASSED); //If you are still in packing, update the clustering data. Otherwise, update the clustered netlist. if (during_packing) { free_intra_lb_nets(clustering_data.intra_lb_routing[old_clb]); @@ -712,7 +737,11 @@ static void update_cluster_pb_stats(const t_pack_molecule* molecule, } //Update atom netlist mapping - atom_ctx.lookup.set_atom_clb(blk_id, clb_index); + if (is_added) { + atom_ctx.lookup.set_atom_clb(blk_id, clb_index); + } else { + atom_ctx.lookup.set_atom_clb(blk_id, ClusterBlockId::INVALID()); + } const t_pb* atom_pb = atom_ctx.lookup.atom_pb(blk_id); VTR_ASSERT(atom_pb); @@ -730,4 +759,4 @@ static void update_cluster_pb_stats(const t_pack_molecule* molecule, cur_pb = cur_pb->parent_pb; } } -} \ No newline at end of file +} diff --git a/vpr/src/pack/re_cluster_util.h b/vpr/src/pack/re_cluster_util.h index 201321f741a..a2a73e5a970 100644 --- a/vpr/src/pack/re_cluster_util.h +++ b/vpr/src/pack/re_cluster_util.h @@ -72,22 +72,37 @@ void remove_mol_from_cluster(const t_pack_molecule* molecule, * @param mode: the mode of the new cluster * @param clb_index: the cluster block Id of the newly created cluster block * @param during_packing: true if this function is called during packing, false if it is called during placement - * @param clustering_data: A data structure containing helper data for the clustering process + * @param clustering_data: A data structure containing helper data for the clustering process * (is updated if this function is called during packing, especially intra_lb_routing data member). * @param router_data: returns the intra logic block router data. * @param temp_cluster_pr: returns the partition region of the new cluster. + * @param temp_cluster_noc_grp_id returns the NoC group ID of the new cluster + * @param detailed_routing_stage: options are E_DETAILED_ROUTE_FOR_EACH_ATOM (default) and E_DETAILED_ROUTE_AT_END_ONLY. + * This argument specifies whether or not to run an intra-cluster routing-based legality + * check after adding the molecule to the cluster; default is the more conservative option. + * This argument is passed down to try_pack_mol; if E_DETAILED_ROUTE_AT_END_ONLY is passed, + * the function does not run a detailed intra-cluster routing-based legality check. + * If many molecules will be added to a cluster, this option enables use of a single + * routing check on the completed cluster (vs many incremental checks). + * @param force_site: optional user-specified primitive site on which to place the molecule; this is passed to + * try_pack_molecule and then to get_next_primitive_site. If a force_site argument is provided, + * the molecule is either placed on the specified site or fails to add to the cluster. + * If the force_site argument is set to its default value (-1), vpr selects an available site. */ bool start_new_cluster_for_mol(t_pack_molecule* molecule, const t_logical_block_type_ptr& type, - const int mode, - const int feasible_block_array_size, + const int& mode, + const int& feasible_block_array_size, bool enable_pin_feasibility_filter, ClusterBlockId clb_index, bool during_packing, int verbosity, t_clustering_data& clustering_data, t_lb_router_data** router_data, - PartitionRegion& temp_cluster_pr); + PartitionRegion& temp_cluster_pr, + NocGroupId& temp_cluster_noc_grp_id, + enum e_detailed_routing_stages detailed_routing_stage = E_DETAILED_ROUTE_FOR_EACH_ATOM, + int force_site = -1); /** * @brief A function that packs a molecule into an existing cluster @@ -99,15 +114,30 @@ bool start_new_cluster_for_mol(t_pack_molecule* molecule, * @param clustering_data: A data structure containing helper data for the clustering process * (is updated if this function is called during packing, especially intra_lb_routing data member). * @param router_data: returns the intra logic block router data. + * @param temp_cluster_noc_grp_id returns the NoC group ID of the new cluster + * @param detailed_routing_stage: options are E_DETAILED_ROUTE_FOR_EACH_ATOM (default) and E_DETAILED_ROUTE_AT_END_ONLY. + * This argument specifies whether or not to run an intra-cluster routing-based legality + * check after adding the molecule to the cluster; default is the more conservative option. + * This argument is passed down to try_pack_mol; if E_DETAILED_ROUTE_AT_END_ONLY is passed, + * the function does not run a detailed intra-cluster routing-based legality check. + * If many molecules will be added to a cluster, this option enables use of a single + * routing check on the completed cluster (vs many incremental checks). + * @param enable_pin_feasibility_filter: do a pin couting based legality check (before or in place of intra-cluster routing check). + * @param force_site: optional user-specified primitive site on which to place the molecule; this is passed to + * try_pack_molecule and then to get_next_primitive_site. If a force_site argument is provided, + * the molecule is either placed on the specified site or fails to add to the cluster. + * If the force_site argument is set to its default value (-1), vpr selects an available site. */ bool pack_mol_in_existing_cluster(t_pack_molecule* molecule, int molecule_size, - const ClusterBlockId clb_index, - std::unordered_set* clb_atoms, + const ClusterBlockId& new_clb, + std::unordered_set* new_clb_atoms, bool during_packing, - bool is_swap, t_clustering_data& clustering_data, - t_lb_router_data*& router_data); + t_lb_router_data*& router_data, + enum e_detailed_routing_stages detailed_routing_stage = E_DETAILED_ROUTE_FOR_EACH_ATOM, + bool enable_pin_feasibility_filter = true, + int force_site = -1); /** * @brief A function that fix the clustered netlist if the move is performed @@ -125,22 +155,39 @@ void fix_clustered_netlist(t_pack_molecule* molecule, /** * @brief A function that commits the molecule move if it is legal * - * @during_packing: true if this function is called during packing, false if it is called during placement - * @new_clb_created: true if the move is creating a new cluster (e.g. move_mol_to_new_cluster) + * @params during_packing: true if this function is called during packing, false if it is called during placement + * @params new_clb_created: true if the move is creating a new cluster (e.g. move_mol_to_new_cluster) */ void commit_mol_move(const ClusterBlockId& old_clb, const ClusterBlockId& new_clb, bool during_packing, bool new_clb_created); +/** + * @brief A function that reverts the molecule move if it is illegal + * + * @params during_packing: true if this function is called during packing, false if it is called during placement + * @params new_clb_created: true if the move is creating a new cluster (e.g. move_mol_to_new_cluster) + * @params + */ void revert_mol_move(const ClusterBlockId& old_clb, t_pack_molecule* molecule, t_lb_router_data*& old_router_data, bool during_packing, t_clustering_data& clustering_data); +/** + * + * @brief A function that checks the legality of a cluster by running the intra-cluster routing + */ bool is_cluster_legal(t_lb_router_data*& router_data); +/** + * @brief A function that commits the molecule removal if it is legal + * + * @params during_packing: true if this function is called during packing, false if it is called during placement + * @params new_clb_created: true if the move is creating a new cluster (e.g. move_mol_to_new_cluster) + */ void commit_mol_removal(const t_pack_molecule* molecule, const int& molecule_size, const ClusterBlockId& old_clb, @@ -148,6 +195,11 @@ void commit_mol_removal(const t_pack_molecule* molecule, t_lb_router_data*& router_data, t_clustering_data& clustering_data); +/** + * + * @brief A function that check that two clusters are of the same type and in the same mode of operation + * + */ bool check_type_and_mode_compitability(const ClusterBlockId& old_clb, const ClusterBlockId& new_clb, int verbosity); diff --git a/vpr/src/place/RL_agent_util.cpp b/vpr/src/place/RL_agent_util.cpp index 89dd60d20a6..c05d2a46334 100644 --- a/vpr/src/place/RL_agent_util.cpp +++ b/vpr/src/place/RL_agent_util.cpp @@ -5,7 +5,8 @@ void create_move_generators(std::unique_ptr& move_generator, std::unique_ptr& move_generator2, const t_placer_opts& placer_opts, - int move_lim) { + int move_lim, + float noc_attraction_weight) { if (!placer_opts.RL_agent_placement) { // RL agent is disabled auto move_types = placer_opts.place_static_move_prob; move_types.resize((int)e_move_type::NUMBER_OF_AUTO_MOVES, 0.0f); @@ -17,7 +18,6 @@ void create_move_generators(std::unique_ptr& move_generator, move_name.c_str(), placer_opts.place_static_move_prob[move_type]); } - move_generator = std::make_unique(placer_opts.place_static_move_prob); move_generator2 = std::make_unique(placer_opts.place_static_move_prob); } else { //RL based placement @@ -51,6 +51,11 @@ void create_move_generators(std::unique_ptr& move_generator, {e_move_type::W_CENTROID, e_move_type::W_MEDIAN, e_move_type::CRIT_UNIFORM, e_move_type::FEASIBLE_REGION}); } + if (noc_attraction_weight > 0.0f) { + first_state_avail_moves.push_back(e_move_type::NOC_ATTRACTION_CENTROID); + second_state_avail_moves.push_back(e_move_type::NOC_ATTRACTION_CENTROID); + } + if (placer_opts.place_agent_algorithm == E_GREEDY) { std::unique_ptr karmed_bandit_agent1, karmed_bandit_agent2; //agent's 1st state @@ -66,13 +71,17 @@ void create_move_generators(std::unique_ptr& move_generator, placer_opts.place_agent_epsilon); } karmed_bandit_agent1->set_step(placer_opts.place_agent_gamma, move_lim); - move_generator = std::make_unique(karmed_bandit_agent1); + move_generator = std::make_unique(karmed_bandit_agent1, + noc_attraction_weight, + placer_opts.place_high_fanout_net); //agent's 2nd state karmed_bandit_agent2 = std::make_unique(second_state_avail_moves, e_agent_space::MOVE_TYPE, placer_opts.place_agent_epsilon); karmed_bandit_agent2->set_step(placer_opts.place_agent_gamma, move_lim); - move_generator2 = std::make_unique(karmed_bandit_agent2); + move_generator2 = std::make_unique(karmed_bandit_agent2, + noc_attraction_weight, + placer_opts.place_high_fanout_net); } else { std::unique_ptr karmed_bandit_agent1, karmed_bandit_agent2; //agent's 1st state @@ -86,12 +95,16 @@ void create_move_generators(std::unique_ptr& move_generator, e_agent_space::MOVE_TYPE); } karmed_bandit_agent1->set_step(placer_opts.place_agent_gamma, move_lim); - move_generator = std::make_unique(karmed_bandit_agent1); + move_generator = std::make_unique(karmed_bandit_agent1, + noc_attraction_weight, + placer_opts.place_high_fanout_net); //agent's 2nd state karmed_bandit_agent2 = std::make_unique(second_state_avail_moves, e_agent_space::MOVE_TYPE); karmed_bandit_agent2->set_step(placer_opts.place_agent_gamma, move_lim); - move_generator2 = std::make_unique(karmed_bandit_agent2); + move_generator2 = std::make_unique(karmed_bandit_agent2, + noc_attraction_weight, + placer_opts.place_high_fanout_net); } } } diff --git a/vpr/src/place/RL_agent_util.h b/vpr/src/place/RL_agent_util.h index 00c073dea89..c9d41ba5507 100644 --- a/vpr/src/place/RL_agent_util.h +++ b/vpr/src/place/RL_agent_util.h @@ -21,7 +21,8 @@ enum class e_agent_state { void create_move_generators(std::unique_ptr& move_generator, std::unique_ptr& move_generator2, const t_placer_opts& placer_opts, - int move_lim); + int move_lim, + float noc_attraction_weight); /** * @brief copy one of the available move_generators to be the current move_generator that would be used in the placement based on the placer_options and the agent state diff --git a/vpr/src/place/centroid_move_generator.cpp b/vpr/src/place/centroid_move_generator.cpp index f1316701998..a1b79b92f7a 100644 --- a/vpr/src/place/centroid_move_generator.cpp +++ b/vpr/src/place/centroid_move_generator.cpp @@ -5,23 +5,61 @@ #include "place_constraints.h" #include "move_utils.h" -e_create_move CentroidMoveGenerator::propose_move(t_pl_blocks_to_be_moved& blocks_affected, t_propose_action& proposed_action, float rlim, const t_placer_opts& placer_opts, const PlacerCriticalities* /*criticalities*/) { - //Find a movable block based on blk_type +#include + + +// Static member variable definitions +vtr::vector> CentroidMoveGenerator::noc_group_clusters_; +vtr::vector> CentroidMoveGenerator::noc_group_routers_; +vtr::vector CentroidMoveGenerator::cluster_to_noc_grp_; +std::map CentroidMoveGenerator::noc_router_to_noc_group_; + + +CentroidMoveGenerator::CentroidMoveGenerator() + : noc_attraction_w_(0.0f) + , noc_attraction_enabled_(false) {} + +CentroidMoveGenerator::CentroidMoveGenerator(float noc_attraction_weight, size_t high_fanout_net) + : noc_attraction_w_(noc_attraction_weight) + , noc_attraction_enabled_(true) { + VTR_ASSERT(noc_attraction_weight > 0.0 && noc_attraction_weight <= 1.0); + + + // check if static member variables are already initialized + if (!noc_group_clusters_.empty() && !noc_group_routers_.empty() && + !cluster_to_noc_grp_.empty() && !noc_router_to_noc_group_.empty()) { + return; + } else { + initialize_noc_groups(high_fanout_net); + } +} + +e_create_move CentroidMoveGenerator::propose_move(t_pl_blocks_to_be_moved& blocks_affected, + t_propose_action& proposed_action, + float rlim, + const t_placer_opts& placer_opts, + const PlacerCriticalities* /*criticalities*/) { + // Find a movable block based on blk_type ClusterBlockId b_from = propose_block_to_move(placer_opts, proposed_action.logical_blk_type_index, false, nullptr, nullptr); - VTR_LOGV_DEBUG(g_vpr_ctx.placement().f_placer_debug, "Centroid Move Choose Block %d - rlim %f\n", size_t(b_from), rlim); + + VTR_LOGV_DEBUG(g_vpr_ctx.placement().f_placer_debug, + "Centroid Move Choose Block %d - rlim %f\n", + size_t(b_from), + rlim); if (!b_from) { //No movable block found - VTR_LOGV_DEBUG(g_vpr_ctx.placement().f_placer_debug, "\tNo movable block found\n"); + VTR_LOGV_DEBUG(g_vpr_ctx.placement().f_placer_debug, + "\tNo movable block found\n"); return e_create_move::ABORT; } - auto& device_ctx = g_vpr_ctx.device(); - auto& place_ctx = g_vpr_ctx.placement(); - auto& cluster_ctx = g_vpr_ctx.clustering(); + const auto& device_ctx = g_vpr_ctx.device(); + const auto& place_ctx = g_vpr_ctx.placement(); + const auto& cluster_ctx = g_vpr_ctx.clustering(); auto& place_move_ctx = g_placer_ctx.mutable_move(); t_pl_loc from = place_ctx.block_locs[b_from].loc; @@ -36,11 +74,11 @@ e_create_move CentroidMoveGenerator::propose_move(t_pl_blocks_to_be_moved& block t_pl_loc to, centroid; /* Calculate the centroid location*/ - calculate_centroid_loc(b_from, false, centroid, nullptr); + calculate_centroid_loc(b_from, false, centroid, nullptr, noc_attraction_enabled_, noc_attraction_w_); - // Centroid location is not necessarily a valid location, and the downstream location expect a valid - // layer for "to" location. So if the layer is not valid, we set it to the same layer as from loc. - to.layer = (centroid.layer < 0) ? from.layer : centroid.layer; + // Centroid location is not necessarily a valid location, and the downstream location expects a valid + // layer for the centroid location. So if the layer is not valid, we set it to the same layer as from loc. + centroid.layer = (centroid.layer < 0) ? from.layer : centroid.layer; /* Find a location near the weighted centroid_loc */ if (!find_to_loc_centroid(cluster_from_type, from, centroid, range_limiters, to, b_from)) { return e_create_move::ABORT; @@ -55,3 +93,110 @@ e_create_move CentroidMoveGenerator::propose_move(t_pl_blocks_to_be_moved& block return create_move; } + +const std::vector& CentroidMoveGenerator::get_noc_group_routers(NocGroupId noc_grp_id) { + return CentroidMoveGenerator::noc_group_routers_[noc_grp_id]; +} + +NocGroupId CentroidMoveGenerator::get_cluster_noc_group(ClusterBlockId blk_id) { + return CentroidMoveGenerator::cluster_to_noc_grp_[blk_id]; +} + +void CentroidMoveGenerator::initialize_noc_groups(size_t high_fanout_net) { + const auto& cluster_ctx = g_vpr_ctx.clustering(); + const auto& noc_ctx = g_vpr_ctx.noc(); + + noc_group_clusters_.clear(); + noc_group_routers_.clear(); + cluster_to_noc_grp_.clear(); + noc_router_to_noc_group_.clear(); + + /* + * Assume the clustered netlist is an undirected graph where nodes + * represent clustered blocks, and edges are low fanout connections. + * To determine NoC groups, we need to find components that include + * at least one NoC router. To do this, we start a BFS traversal from + * unvisited NoC routers and assign the starting NoC router and all the + * blocks that are visited during the traversal to a NoC group. + */ + + // determines whether a block is visited + vtr::vector block_visited(cluster_ctx.clb_nlist.blocks().size(), false); + + // NoCGroupIDs are sequential and start from zero. This counter specifies the value to be assigned to a new NoCGroupID + int noc_group_cnt = 0; + + // Initialize the associated NoC group for all blocks to INVALID. If a block is not visited during traversal, + // it does not belong to any NoC groups. For other blocks, the associated NoC group is updated once they are visited. + cluster_to_noc_grp_.resize(cluster_ctx.clb_nlist.blocks().size(), NocGroupId ::INVALID()); + + // Get all the router clusters and the NoC router logical block type + const auto& router_blk_ids = noc_ctx.noc_traffic_flows_storage.get_router_clusters_in_netlist(); + const auto router_block_type = cluster_ctx.clb_nlist.block_type(router_blk_ids[0]); + + // iterate over logical NoC routers and start a BFS + for (auto router_blk_id : router_blk_ids) { + + if (block_visited[router_blk_id]) { + continue; + } + + NocGroupId noc_group_id(noc_group_cnt); + noc_group_cnt++; + noc_group_routers_.emplace_back(); + noc_group_clusters_.emplace_back(); + + // BFS frontier + std::queue q; + + // initialize the frontier with the NoC router + q.push(router_blk_id); + block_visited[router_blk_id] = true; + + while (!q.empty()) { + ClusterBlockId current_block_id = q.front(); + q.pop(); + + // get the logical block type for the block extracted from the frontier queue + auto block_type = cluster_ctx.clb_nlist.block_type(current_block_id); + + if (block_type->index == router_block_type->index) { + noc_group_routers_[noc_group_id].push_back(current_block_id); + noc_router_to_noc_group_[current_block_id] = noc_group_id; + } else { + noc_group_clusters_[noc_group_id].push_back(current_block_id); + cluster_to_noc_grp_[current_block_id] = noc_group_id; + } + + // iterate over all low fanout nets of the current block to find its unvisited neighbors + for (ClusterPinId pin_id : cluster_ctx.clb_nlist.block_pins(current_block_id)) { + ClusterNetId net_id = cluster_ctx.clb_nlist.pin_net(pin_id); + + if (cluster_ctx.clb_nlist.net_is_ignored(net_id)) { + continue; + } + + if (cluster_ctx.clb_nlist.net_sinks(net_id).size() >= high_fanout_net) { + continue; + } + + if (cluster_ctx.clb_nlist.pin_type(pin_id) == PinType::DRIVER) { + for (auto sink_pin_id : cluster_ctx.clb_nlist.net_sinks(net_id)) { + ClusterBlockId sink_block_id = cluster_ctx.clb_nlist.pin_block(sink_pin_id); + if (!block_visited[sink_block_id]) { + block_visited[sink_block_id] = true; + q.push(sink_block_id); + } + } + } else { //else the pin is sink --> only care about its driver + ClusterPinId source_pin = cluster_ctx.clb_nlist.net_driver(net_id); + ClusterBlockId source_blk_id = cluster_ctx.clb_nlist.pin_block(source_pin); + if (!block_visited[source_blk_id]) { + block_visited[source_blk_id] = true; + q.push(source_blk_id); + } + } + } + } + } +} diff --git a/vpr/src/place/centroid_move_generator.h b/vpr/src/place/centroid_move_generator.h index cbcbb883aea..2a0b99234c5 100644 --- a/vpr/src/place/centroid_move_generator.h +++ b/vpr/src/place/centroid_move_generator.h @@ -1,5 +1,6 @@ #ifndef VPR_CENTROID_MOVE_GEN_H #define VPR_CENTROID_MOVE_GEN_H + #include "move_generator.h" /** @@ -10,10 +11,92 @@ * This move picks a random block and moves it (swapping with what's there if necessary) to the zero force location * It calculates forces/weighs acting on the block based on its connections to other blocks. * + * The computed centroid location can be optionally biased towards the location of NoC routers + * that are reachable from the selected block. A NoC router is reachable from a block if one can + * start from the block and reach the NoC router only by traversing low fanout nets. All the blocks + * (including NoC routers) that can reach a NoC router form a NoC group. + * * Returns its choices by filling in affected_blocks. */ class CentroidMoveGenerator : public MoveGenerator { - e_create_move propose_move(t_pl_blocks_to_be_moved& blocks_affected, t_propose_action& proposed_action, float rlim, const t_placer_opts& placer_opts, const PlacerCriticalities* /*criticalities*/) override; + public: + /** + * The move generator created by calling this constructor only consider + * netlist connectivity for computing the centroid location. + */ + CentroidMoveGenerator(); + + /** + * The move generator created by calling this constructor considers both + * netlist connectivity and NoC reachability for computing the centroid. + * The constructor also forms NoC groups by finding connected components + * in the graph representing the clustered netlist. When finding connected + * components, none of the nets whose fanout is larger than high_fanout_net + * are traversed. + * @param noc_attraction_weight Specifies how much the computed centroid + * is adjusted towards the location of NoC routers in the same NoC group as + * the clustered block to be moved. + * @param high_fanout_net All nets with a fanout larger than this number are + * ignored when forming NoC groups. + */ + CentroidMoveGenerator(float noc_attraction_weight, size_t high_fanout_net); + + + /** + * Returns all NoC routers that are in the NoC group with a given ID. + * @param noc_grp_id The NoC group ID whose NoC routers are requested. + * @return The clustered block ID of all NoC routers in the given NoC group. + */ + static const std::vector& get_noc_group_routers(NocGroupId noc_grp_id); + + /** + * Returns the NoC group ID of clustered block. + * @param blk_id The clustered block whose NoC group ID is requested. + * @return The NoC group ID of the given clustered block or INVALID if + * the given clustered block does not belong to any NoC groups. + */ + static NocGroupId get_cluster_noc_group(ClusterBlockId blk_id); + + private: + e_create_move propose_move(t_pl_blocks_to_be_moved& blocks_affected, + t_propose_action& proposed_action, + float rlim, + const t_placer_opts& placer_opts, + const PlacerCriticalities* /*criticalities*/) override; + + private: + /** A value in range [0, 1] that specifies how much the centroid location + * computation is biased towards the associated NoC routers*/ + float noc_attraction_w_; + + /** Indicates whether the centroid calculation is NoC-biased.*/ + bool noc_attraction_enabled_; + + /** Stores the ids of all non-router clustered blocks for each NoC group*/ + static vtr::vector> noc_group_clusters_; + + /** Stores NoC routers in each NoC group*/ + static vtr::vector> noc_group_routers_; + + /** Specifies the NoC group that each block belongs to. A block cannot belong to more + * than one NoC because this means those NoC groups can reach each other and form + * a single NoC group. We use NocGroupId::INVALID to show that a block does not belong + * to any NoC groups. This happens when a block is not reachable from any NoC router. + * */ + static vtr::vector cluster_to_noc_grp_; + + /** Specifies the NoC group for each NoC router*/ + static std::map noc_router_to_noc_group_; + + /** + * @brief This function forms NoC groups by finding connected components + * in the graph representing the clustered netlist. When finding connected + * components, none of the nets whose fanout is larger than high_fanout_net + * are traversed. + * @param high_fanout_net All nets with a fanout larger than this number are + * ignored when forming NoC groups. + */ + static void initialize_noc_groups(size_t high_fanout_net); }; #endif diff --git a/vpr/src/place/compressed_grid.cpp b/vpr/src/place/compressed_grid.cpp index 7ba21771524..dbf8e4fde56 100644 --- a/vpr/src/place/compressed_grid.cpp +++ b/vpr/src/place/compressed_grid.cpp @@ -2,15 +2,30 @@ #include "arch_util.h" #include "globals.h" +/** + * @brief Creates a compressed grid from the given locations. + * + * + * @param locations The location of logical blocks of a specific type. + * [0...layer-1][0...num_instances_on_layer-1] --> (x, y) + * @param num_layers The number of dice. + * @return t_compressed_block_grid The compressed grid created from the given locations. + */ +static t_compressed_block_grid create_compressed_block_grid(const std::vector>>& locations, + int num_layers); + + std::vector create_compressed_block_grids() { auto& device_ctx = g_vpr_ctx.device(); auto& grid = device_ctx.grid; const int num_layers = grid.get_num_layers(); - //Collect the set of x/y locations for each instace of a block type - std::vector>>> block_locations(device_ctx.logical_block_types.size()); // [logical_block_type][layer_num][0...num_instance_on_layer] -> (x, y) - for (int block_type_num = 0; block_type_num < (int)device_ctx.logical_block_types.size(); block_type_num++) { - block_locations[block_type_num].resize(num_layers); + //Collect the set of x/y locations for each instance of a block type + // [logical_block_type][layer_num][0...num_instance_on_layer] -> (x, y) + std::vector>>> block_locations(device_ctx.logical_block_types.size()); + + for (const auto& block_type : device_ctx.logical_block_types) { + block_locations[block_type.index].resize(num_layers); } for (int layer_num = 0; layer_num < num_layers; layer_num++) { @@ -18,20 +33,23 @@ std::vector create_compressed_block_grids() { for (int y = 0; y < (int)grid.height(); ++y) { int width_offset = grid.get_width_offset({x, y, layer_num}); int height_offset = grid.get_height_offset(t_physical_tile_loc(x, y, layer_num)); - if (width_offset == 0 && height_offset == 0) { + + if (width_offset == 0 && height_offset == 0) { // the bottom left corner of a tile const auto& type = grid.get_physical_type({x, y, layer_num}); auto equivalent_sites = get_equivalent_sites_set(type); - for (auto& block : equivalent_sites) { + for (t_logical_block_type_ptr block_type : equivalent_sites) { //Only record at block root location - block_locations[block->index][layer_num].emplace_back(x, y); + block_locations[block_type->index][layer_num].emplace_back(x, y); } } } } } + // each logical block type has its own compressed grid std::vector compressed_type_grids(device_ctx.logical_block_types.size()); + for (const auto& logical_block : device_ctx.logical_block_types) { auto compressed_block_grid = create_compressed_block_grid(block_locations[logical_block.index], num_layers); @@ -62,7 +80,8 @@ std::vector create_compressed_block_grids() { } //Given a set of locations, returns a 2D matrix in a compressed space -t_compressed_block_grid create_compressed_block_grid(const std::vector>>& locations, int num_layers) { +static t_compressed_block_grid create_compressed_block_grid(const std::vector>>& locations, + int num_layers) { t_compressed_block_grid compressed_grid; if (locations.empty()) { @@ -70,24 +89,23 @@ t_compressed_block_grid create_compressed_block_grid(const std::vector> x_locs(num_layers); - std::vector> y_locs(num_layers); compressed_grid.compressed_to_grid_x.resize(num_layers); compressed_grid.compressed_to_grid_y.resize(num_layers); + for (int layer_num = 0; layer_num < num_layers; layer_num++) { - auto& layer_x_locs = x_locs[layer_num]; - auto& layer_y_locs = y_locs[layer_num]; - //Record all the x/y locations seperately + std::vector layer_x_locs; + std::vector layer_y_locs; + //Record all the x/y locations separately for (auto point : locations[layer_num]) { layer_x_locs.emplace_back(point.x()); layer_y_locs.emplace_back(point.y()); } //Uniquify x/y locations - std::sort(layer_x_locs.begin(), layer_x_locs.end()); + std::stable_sort(layer_x_locs.begin(), layer_x_locs.end()); layer_x_locs.erase(unique(layer_x_locs.begin(), layer_x_locs.end()), layer_x_locs.end()); - std::sort(layer_y_locs.begin(), layer_y_locs.end()); + std::stable_sort(layer_y_locs.begin(), layer_y_locs.end()); layer_y_locs.erase(unique(layer_y_locs.begin(), layer_y_locs.end()), layer_y_locs.end()); //The index of an x-position in x_locs corresponds to it's compressed @@ -97,6 +115,9 @@ t_compressed_block_grid create_compressed_block_grid(const std::vector& comp_grids) { +void echo_compressed_grids(const char* filename, const std::vector& comp_grids) { FILE* fp; fp = vtr::fopen(filename, "w"); @@ -161,14 +182,14 @@ void echo_compressed_grids(char* filename, const std::vector& compressed_grid_dim) -> int { + auto itr = std::lower_bound(compressed_grid_dim.begin(), compressed_grid_dim.end(), loc); + int cx; + if (itr < compressed_grid_dim.end() - 1) { + int dist_prev = abs(loc - *itr); + int dist_next = abs(loc - *(itr+1)); + if (dist_prev < dist_next) { + cx = std::distance(compressed_grid_dim.begin(), itr); + } else { + cx = std::distance(compressed_grid_dim.begin(), itr + 1); + } + } else if (itr == compressed_grid_dim.end()) { + cx = std::distance(compressed_grid_dim.begin(), itr - 1); + } else { + cx = std::distance(compressed_grid_dim.begin(), itr); + } + + return cx; + }; + + const int layer_num = grid_loc.layer_num; + const int cx = find_closest_compressed_point(grid_loc.x, compressed_to_grid_x[layer_num]); + const int cy = find_closest_compressed_point(grid_loc.y, compressed_to_grid_y[layer_num]); return {cx, cy, layer_num}; } @@ -111,8 +119,6 @@ typedef std::vector t_compressed_block_grids; std::vector create_compressed_block_grids(); -t_compressed_block_grid create_compressed_block_grid(const std::vector>>& locations, int num_layers); - /** * @brief print the contents of the compressed grids to an echo file * @@ -120,6 +126,6 @@ t_compressed_block_grid create_compressed_block_grid(const std::vector& comp_grids); +void echo_compressed_grids(const char* filename, const std::vector& comp_grids); #endif diff --git a/vpr/src/place/cut_spreader.cpp b/vpr/src/place/cut_spreader.cpp index 695b8ffc275..88b0f913346 100644 --- a/vpr/src/place/cut_spreader.cpp +++ b/vpr/src/place/cut_spreader.cpp @@ -446,7 +446,7 @@ std::pair CutSpreader::cut_region(SpreaderRegion& r, bool dir) { } // sort blks based on raw location - std::sort(cut_blks.begin(), cut_blks.end(), [&](const ClusterBlockId a, const ClusterBlockId b) { + std::stable_sort(cut_blks.begin(), cut_blks.end(), [&](const ClusterBlockId a, const ClusterBlockId b) { return dir ? (ap->blk_locs[a].rawy < ap->blk_locs[b].rawy) : (ap->blk_locs[a].rawx < ap->blk_locs[b].rawx); }); diff --git a/vpr/src/place/directed_moves_util.cpp b/vpr/src/place/directed_moves_util.cpp index 330f1904368..7cfdab8e16c 100644 --- a/vpr/src/place/directed_moves_util.cpp +++ b/vpr/src/place/directed_moves_util.cpp @@ -1,4 +1,6 @@ + #include "directed_moves_util.h" +#include "centroid_move_generator.h" void get_coordinate_of_pin(ClusterPinId pin, t_physical_tile_loc& tile_loc) { auto& device_ctx = g_vpr_ctx.device(); @@ -17,8 +19,14 @@ void get_coordinate_of_pin(ClusterPinId pin, t_physical_tile_loc& tile_loc) { tile_loc.y = std::max(std::min(tile_loc.y, (int)grid.height() - 2), 1); //-2 for no perim channels } -void calculate_centroid_loc(ClusterBlockId b_from, bool timing_weights, t_pl_loc& centroid, const PlacerCriticalities* criticalities) { +void calculate_centroid_loc(ClusterBlockId b_from, + bool timing_weights, + t_pl_loc& centroid, + const PlacerCriticalities* criticalities, + bool noc_attraction_enabled, + float noc_attraction_weight) { auto& cluster_ctx = g_vpr_ctx.clustering(); + auto& place_ctx = g_vpr_ctx.placement(); t_physical_tile_loc tile_loc; int ipin; @@ -34,6 +42,11 @@ void calculate_centroid_loc(ClusterBlockId b_from, bool timing_weights, t_pl_loc //iterate over the from block pins for (ClusterPinId pin_id : cluster_ctx.clb_nlist.block_pins(b_from)) { ClusterNetId net_id = cluster_ctx.clb_nlist.pin_net(pin_id); + + if (cluster_ctx.clb_nlist.net_is_ignored(net_id)) { + continue; + } + /* Ignore the special case nets which only connects a block to itself * * Experimentally, it was found that this case greatly degrade QoR */ if (cluster_ctx.clb_nlist.net_sinks(net_id).size() == 1) { @@ -91,10 +104,32 @@ void calculate_centroid_loc(ClusterBlockId b_from, bool timing_weights, t_pl_loc } } + if (noc_attraction_enabled) { + NocGroupId noc_grp_id = CentroidMoveGenerator::get_cluster_noc_group(b_from); + + // check if the block belongs to a NoC group + if (noc_grp_id != NocGroupId::INVALID()) { + // get the routers in the associated NoC group + const auto& noc_routers = CentroidMoveGenerator::get_noc_group_routers(noc_grp_id); + float single_noc_weight = (acc_weight * noc_attraction_weight) / (float)noc_routers.size(); + + acc_x *= (1.0f - noc_attraction_weight); + acc_y *= (1.0f - noc_attraction_weight); + acc_weight *= (1.0f - noc_attraction_weight); + + for (ClusterBlockId router_blk_id : noc_routers) { + t_block_loc router_loc = place_ctx.block_locs[router_blk_id]; + acc_x += router_loc.loc.x * single_noc_weight; + acc_y += router_loc.loc.y * single_noc_weight; + acc_weight += single_noc_weight; + } + } + } + //Calculate the centroid location - centroid.x = acc_x / acc_weight; - centroid.y = acc_y / acc_weight; - centroid.layer = acc_layer / acc_weight; + centroid.x = (int)std::round(acc_x / acc_weight); + centroid.y = (int)std::round(acc_y / acc_weight); + centroid.layer = (int)std::round(acc_layer / acc_weight); } static std::map available_reward_function = { diff --git a/vpr/src/place/directed_moves_util.h b/vpr/src/place/directed_moves_util.h index 11ef3df71c3..dc2f07c4643 100644 --- a/vpr/src/place/directed_moves_util.h +++ b/vpr/src/place/directed_moves_util.h @@ -25,12 +25,34 @@ void get_coordinate_of_pin(ClusterPinId pin, t_physical_tile_loc& tile_loc); * This function is very useful in centroid and weightedCentroid moves as it calculates * the centroid location. It returns the calculated location in centroid. * - * @param b_from: The block Id of the moving block - * @param timing_weights: Determines whether to calculate centroid or weighted centroid location. If true, use the timing weights (weighted centroid) - * @param criticalities: A pointer to the placer criticalities which is used when calculating weighted centroid (send a NULL pointer in case of centroid) + * When NoC attraction is enabled, the computed centroid is slightly adjusted towards the location + * of NoC routers that are in the same NoC group b_from. + * + * @param b_from The block Id of the moving block + * @param timing_weights Determines whether to calculate centroid or + * weighted centroid location. If true, use the timing weights (weighted centroid). + * @param criticalities A pointer to the placer criticalities which is used when + * calculating weighted centroid (send a NULL pointer in case of centroid) + * @param noc_attraction_enabled Indicates whether the computed centroid location + * should be adjusted towards NoC routers in the NoC group of the given block. + * @param noc_attraction_weight When NoC attraction is enabled, this weight + * specifies to which extent the computed centroid should be adjusted. A value + * in range [0, 1] is expected. * - * @return The calculated location is returned in centroid parameter that is sent by reference + * @return The calculated location is returned in centroid parameter that is sent by reference */ -void calculate_centroid_loc(ClusterBlockId b_from, bool timing_weights, t_pl_loc& centroid, const PlacerCriticalities* criticalities); +void calculate_centroid_loc(ClusterBlockId b_from, + bool timing_weights, + t_pl_loc& centroid, + const PlacerCriticalities* criticalities, + bool noc_attraction_enabled, + float noc_attraction_weight); + +inline void calculate_centroid_loc(ClusterBlockId b_from, + bool timing_weights, + t_pl_loc& centroid, + const PlacerCriticalities* criticalities) { + calculate_centroid_loc(b_from, timing_weights, centroid, criticalities, false, 0.0f); +} #endif diff --git a/vpr/src/place/initial_noc_placement.cpp b/vpr/src/place/initial_noc_placement.cpp index e13d278af68..2cf2bf3f1f3 100644 --- a/vpr/src/place/initial_noc_placement.cpp +++ b/vpr/src/place/initial_noc_placement.cpp @@ -4,7 +4,14 @@ #include "noc_place_utils.h" #include "noc_place_checkpoint.h" #include "place_constraints.h" + +#include "sat_routing.h" + #include "vtr_math.h" +#include "vtr_time.h" + +#include +#include /** * @brief Evaluates whether a NoC router swap should be accepted or not. @@ -104,6 +111,11 @@ static void place_noc_routers_randomly(std::vector& unfixed_rout * only once. */ + // check if all NoC routers have already been placed + if (unfixed_routers.empty()) { + return; + } + // Make a copy of NoC physical routers because we want to change its order vtr::vector noc_phy_routers = noc_ctx.noc_model.get_noc_routers(); @@ -188,7 +200,6 @@ static void noc_routers_anneal(const t_noc_opts& noc_opts) { const double starting_prob = 0.5; const double prob_step = starting_prob / N_MOVES; - // The checkpoint stored the placement with the lowest cost. NoCPlacementCheckpoint checkpoint; @@ -245,12 +256,12 @@ static void noc_routers_anneal(const t_noc_opts& noc_opts) { } } -void initial_noc_placement(const t_noc_opts& noc_opts, int seed) { +void initial_noc_placement(const t_noc_opts& noc_opts, const t_placer_opts& placer_opts) { + vtr::ScopedStartFinishTimer timer("Initial NoC Placement"); auto& noc_ctx = g_vpr_ctx.noc(); // Get all the router clusters const std::vector& router_blk_ids = noc_ctx.noc_traffic_flows_storage.get_router_clusters_in_netlist(); - // Holds all the routers that are not fixed into a specific location by constraints std::vector unfixed_routers; @@ -269,10 +280,10 @@ void initial_noc_placement(const t_noc_opts& noc_opts, int seed) { } // Place unconstrained NoC routers randomly - place_noc_routers_randomly(unfixed_routers, seed); + place_noc_routers_randomly(unfixed_routers, placer_opts.seed); // populate internal data structures to maintain route, bandwidth usage, and latencies - initial_noc_routing(); + initial_noc_routing({}); // Run the simulated annealing optimizer for NoC routers noc_routers_anneal(noc_opts); diff --git a/vpr/src/place/initial_noc_placment.h b/vpr/src/place/initial_noc_placment.h index 4f060a14277..7727f15f6aa 100644 --- a/vpr/src/place/initial_noc_placment.h +++ b/vpr/src/place/initial_noc_placment.h @@ -10,6 +10,6 @@ * * @param noc_opts NoC-related options. Used to calculate NoC-related costs. */ -void initial_noc_placement(const t_noc_opts& noc_opts, int seed); +void initial_noc_placement(const t_noc_opts& noc_opts, const t_placer_opts& placer_opts); #endif //VTR_INITIAL_NOC_PLACMENT_H diff --git a/vpr/src/place/initial_placement.cpp b/vpr/src/place/initial_placement.cpp index f0bea05aec5..109dd16013c 100644 --- a/vpr/src/place/initial_placement.cpp +++ b/vpr/src/place/initial_placement.cpp @@ -12,7 +12,7 @@ #include "move_utils.h" #include "region.h" #include "directed_moves_util.h" - +#include "vpr_types.h" #include "echo_files.h" #include @@ -23,9 +23,6 @@ void print_clb_placement(const char* fname); #endif -/// @brief Sentinel value for indicating that a block does not have a valid x location, used to check whether a block has been placed -static constexpr int INVALID_X = -1; - // Number of iterations that initial placement tries to place all blocks before throwing an error static constexpr int MAX_INIT_PLACE_ATTEMPTS = 2; @@ -258,7 +255,7 @@ static bool is_loc_legal(t_pl_loc& loc, PartitionRegion& pr, t_logical_block_typ bool legal = false; //Check if the location is within its constraint region - for (auto reg : pr.get_partition_region()) { + for (const auto& reg : pr.get_regions()) { const auto reg_coord = reg.get_region_rect(); vtr::Rect reg_rect(reg_coord.xmin, reg_coord.ymin, reg_coord.xmax, reg_coord.ymax); if (reg_coord.layer_num != loc.layer) continue; @@ -501,7 +498,7 @@ static void update_blk_type_first_loc(int blk_type_column_index, t_logical_block_type_ptr block_type, const t_pl_macro& pl_macro, std::vector* blk_types_empty_locs_in_grid) { //check if dense placement could place macro successfully - if (blk_type_column_index == -1 || blk_types_empty_locs_in_grid->size() <= abs(blk_type_column_index)) { + if (blk_type_column_index == -1 || blk_types_empty_locs_in_grid->size() <= (size_t)abs(blk_type_column_index)) { return; } @@ -606,7 +603,7 @@ bool try_place_macro_randomly(const t_pl_macro& pl_macro, const PartitionRegion& //If the block has more than one floorplan region, pick a random region to get the min/max x and y values int region_index; - std::vector regions = pr.get_partition_region(); + const std::vector& regions = pr.get_regions(); if (regions.size() > 1) { region_index = vtr::irand(regions.size() - 1); } else { @@ -663,7 +660,7 @@ bool try_place_macro_exhaustively(const t_pl_macro& pl_macro, const PartitionReg const auto& compressed_block_grid = g_vpr_ctx.placement().compressed_block_grids[block_type->index]; auto& place_ctx = g_vpr_ctx.mutable_placement(); - std::vector regions = pr.get_partition_region(); + const std::vector& regions = pr.get_regions(); bool placed = false; @@ -1154,7 +1151,8 @@ void initial_placement(const t_placer_opts& placer_opts, if (noc_opts.noc) { // NoC routers are placed before other blocks - initial_noc_placement(noc_opts, placer_opts.seed); + initial_noc_placement(noc_opts, placer_opts); + propagate_place_constraints(); } //Assign scores to blocks and placement macros according to how difficult they are to place diff --git a/vpr/src/place/median_move_generator.cpp b/vpr/src/place/median_move_generator.cpp index 324d0cd3e44..20ef207221d 100644 --- a/vpr/src/place/median_move_generator.cpp +++ b/vpr/src/place/median_move_generator.cpp @@ -5,7 +5,14 @@ #include "placer_globals.h" #include "move_utils.h" -static bool get_bb_incrementally(ClusterNetId net_id, t_bb& bb_coord_new, int xold, int yold, int xnew, int ynew); +static bool get_bb_incrementally(ClusterNetId net_id, + t_bb& bb_coord_new, + int xold, + int yold, + int layer_old, + int xnew, + int ynew, + int layer_new); static void get_bb_from_scratch_excluding_block(ClusterNetId net_id, t_bb& bb_coord_new, ClusterBlockId block_id, bool& skip_net); @@ -29,7 +36,7 @@ e_create_move MedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& blocks_ auto& place_move_ctx = g_placer_ctx.mutable_move(); const int num_layers = device_ctx.grid.get_num_layers(); - bool is_multi_layer = (num_layers > 1); + t_pl_loc from = place_ctx.block_locs[b_from].loc; int from_layer = from.layer; @@ -43,12 +50,13 @@ e_create_move MedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& blocks_ t_bb coords(OPEN, OPEN, OPEN, OPEN, OPEN, OPEN); t_bb limit_coords; ClusterBlockId bnum; - int pnum, xnew, xold, ynew, yold; + int pnum, xnew, xold, ynew, yold, layer_new, layer_old; //clear the vectors that saves X & Y coords //reused to save allocation time place_move_ctx.X_coord.clear(); place_move_ctx.Y_coord.clear(); + place_move_ctx.layer_coord.clear(); std::vector layer_blk_cnt(num_layers, 0); //true if the net is a feedback from the block to itself @@ -61,7 +69,7 @@ e_create_move MedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& blocks_ continue; /* To speed up the calculation, we found it is useful to ignore high fanout nets. * Especially that in most cases, these high fanout nets are scattered in many locations of - * the device and don't guide to a specific location. We also assuered these assumpitions experimentally. + * the device and don't guide to a specific location. We also assured these assumptions experimentally. */ if (int(cluster_ctx.clb_nlist.net_pins(net_id).size()) > placer_opts.place_high_fanout_net) continue; @@ -84,8 +92,11 @@ e_create_move MedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& blocks_ VTR_ASSERT(pnum >= 0); xold = place_ctx.block_locs[bnum].loc.x + physical_tile_type(bnum)->pin_width_offset[pnum]; yold = place_ctx.block_locs[bnum].loc.y + physical_tile_type(bnum)->pin_height_offset[pnum]; + layer_old = place_ctx.block_locs[bnum].loc.layer; + xold = std::max(std::min(xold, (int)device_ctx.grid.width() - 2), 1); //-2 for no perim channels yold = std::max(std::min(yold, (int)device_ctx.grid.height() - 2), 1); //-2 for no perim channels + layer_old = std::max(std::min(layer_old, (int)device_ctx.grid.get_num_layers() - 1), 0); //To calulate the bb incrementally while excluding the moving block //assume that the moving block is moved to a non-critical coord of the bb @@ -101,7 +112,23 @@ e_create_move MedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& blocks_ ynew = net_bb_coords.ymin; } - if (!get_bb_incrementally(net_id, coords, xold, yold, xnew, ynew)) { + if (net_bb_coords.layer_min == layer_old) { + layer_new = net_bb_coords.layer_max; + } else { + layer_new = net_bb_coords.layer_min; + } + + // If the mvoing block is on the border of the bounding box, we cannot get + // the bounding box incrementatlly. In that case, bounding box should be calculated + // from scratch. + if (!get_bb_incrementally(net_id, + coords, + xold, + yold, + layer_old, + xnew, + ynew, + layer_new)) { get_bb_from_scratch_excluding_block(net_id, coords, b_from, skip_net); if (skip_net) continue; @@ -112,27 +139,19 @@ e_create_move MedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& blocks_ place_move_ctx.X_coord.push_back(coords.xmax); place_move_ctx.Y_coord.push_back(coords.ymin); place_move_ctx.Y_coord.push_back(coords.ymax); - if (is_multi_layer) { - for (int layer_num = 0; layer_num < num_layers; layer_num++) { - layer_blk_cnt[layer_num] += place_move_ctx.num_sink_pin_layer[size_t(net_id)][layer_num]; - } - // If the pin under consideration is of type sink, it shouldn't be added to layer_blk_cnt since the block - // is moving - if (cluster_ctx.clb_nlist.pin_type(pin_id) == PinType::SINK) { - VTR_ASSERT_SAFE(layer_blk_cnt[from_layer] > 0); - layer_blk_cnt[from_layer]--; - } - } + place_move_ctx.layer_coord.push_back(coords.layer_min); + place_move_ctx.layer_coord.push_back(coords.layer_max); } - if ((place_move_ctx.X_coord.empty()) || (place_move_ctx.Y_coord.empty())) { - VTR_LOGV_DEBUG(g_vpr_ctx.placement().f_placer_debug, "\tMove aborted - X_coord and y_coord are empty\n"); + if ((place_move_ctx.X_coord.empty()) || (place_move_ctx.Y_coord.empty()) || (place_move_ctx.layer_coord.empty())) { + VTR_LOGV_DEBUG(g_vpr_ctx.placement().f_placer_debug, "\tMove aborted - X_coord or y_coord or layer_coord are empty\n"); return e_create_move::ABORT; } //calculate the median region - std::sort(place_move_ctx.X_coord.begin(), place_move_ctx.X_coord.end()); - std::sort(place_move_ctx.Y_coord.begin(), place_move_ctx.Y_coord.end()); + std::stable_sort(place_move_ctx.X_coord.begin(), place_move_ctx.X_coord.end()); + std::stable_sort(place_move_ctx.Y_coord.begin(), place_move_ctx.Y_coord.end()); + std::stable_sort(place_move_ctx.layer_coord.begin(), place_move_ctx.layer_coord.end()); limit_coords.xmin = place_move_ctx.X_coord[floor((place_move_ctx.X_coord.size() - 1) / 2)]; limit_coords.xmax = place_move_ctx.X_coord[floor((place_move_ctx.X_coord.size() - 1) / 2) + 1]; @@ -140,6 +159,9 @@ e_create_move MedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& blocks_ limit_coords.ymin = place_move_ctx.Y_coord[floor((place_move_ctx.Y_coord.size() - 1) / 2)]; limit_coords.ymax = place_move_ctx.Y_coord[floor((place_move_ctx.Y_coord.size() - 1) / 2) + 1]; + limit_coords.layer_min = place_move_ctx.layer_coord[floor((place_move_ctx.layer_coord.size() - 1) / 2)]; + limit_coords.layer_max = place_move_ctx.layer_coord[floor((place_move_ctx.layer_coord.size() - 1) / 2) + 1]; + //arrange the different range limiters t_range_limiters range_limiters{rlim, place_move_ctx.first_rlim, @@ -149,17 +171,8 @@ e_create_move MedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& blocks_ t_pl_loc median_point; median_point.x = (limit_coords.xmin + limit_coords.xmax) / 2; median_point.y = (limit_coords.ymin + limit_coords.ymax) / 2; + median_point.layer = (limit_coords.layer_min + limit_coords.layer_max) / 2; - // Before calling find_to_loc_centroid a valid layer should be assigned to "to" location. If there are multiple layers, the layer - // with highest number of sinks will be used. Otherwise, the same layer as "from" loc is assigned. - if (is_multi_layer) { - int layer_num = std::distance(layer_blk_cnt.begin(), std::max_element(layer_blk_cnt.begin(), layer_blk_cnt.end())); - median_point.layer = layer_num; - to.layer = layer_num; - } else { - median_point.layer = from.layer; - to.layer = from.layer; - } if (!find_to_loc_centroid(cluster_from_type, from, median_point, range_limiters, to, b_from)) { return e_create_move::ABORT; } @@ -194,6 +207,9 @@ static void get_bb_from_scratch_excluding_block(ClusterNetId net_id, t_bb& bb_co int ymin = OPEN; int ymax = OPEN; + int layer_min = OPEN; + int layer_max = OPEN; + int pnum; auto& cluster_ctx = g_vpr_ctx.clustering(); @@ -208,11 +224,14 @@ static void get_bb_from_scratch_excluding_block(ClusterNetId net_id, t_bb& bb_co pnum = net_pin_to_tile_pin_index(net_id, 0); int src_x = place_ctx.block_locs[bnum].loc.x + physical_tile_type(bnum)->pin_width_offset[pnum]; int src_y = place_ctx.block_locs[bnum].loc.y + physical_tile_type(bnum)->pin_height_offset[pnum]; + int src_layer = place_ctx.block_locs[bnum].loc.layer; xmin = src_x; ymin = src_y; xmax = src_x; ymax = src_y; + layer_min = src_layer; + layer_max = src_layer; first_block = true; } @@ -225,12 +244,15 @@ static void get_bb_from_scratch_excluding_block(ClusterNetId net_id, t_bb& bb_co const auto& block_loc = place_ctx.block_locs[bnum].loc; int x = block_loc.x + physical_tile_type(bnum)->pin_width_offset[pnum]; int y = block_loc.y + physical_tile_type(bnum)->pin_height_offset[pnum]; + int layer = block_loc.layer; if (!first_block) { xmin = x; ymin = y; xmax = x; ymax = y; + layer_max = layer; + layer_min = layer; first_block = true; continue; } @@ -245,6 +267,12 @@ static void get_bb_from_scratch_excluding_block(ClusterNetId net_id, t_bb& bb_co } else if (y > ymax) { ymax = y; } + + if (layer < layer_min) { + layer_min = layer; + } else if (layer > layer_max) { + layer_max = layer; + } } /* Now I've found the coordinates of the bounding box. There are no * @@ -256,8 +284,10 @@ static void get_bb_from_scratch_excluding_block(ClusterNetId net_id, t_bb& bb_co * is 0). See route_common.cpp for a channel diagram. */ bb_coord_new.xmin = std::max(std::min(xmin, device_ctx.grid.width() - 2), 1); //-2 for no perim channels bb_coord_new.ymin = std::max(std::min(ymin, device_ctx.grid.height() - 2), 1); //-2 for no perim channels + bb_coord_new.layer_min = std::max(std::min(layer_min, device_ctx.grid.get_num_layers() - 1), 0); bb_coord_new.xmax = std::max(std::min(xmax, device_ctx.grid.width() - 2), 1); //-2 for no perim channels bb_coord_new.ymax = std::max(std::min(ymax, device_ctx.grid.height() - 2), 1); //-2 for no perim channels + bb_coord_new.layer_max = std::max(std::min(layer_max, device_ctx.grid.get_num_layers() - 1), 0); } /* @@ -273,7 +303,14 @@ static void get_bb_from_scratch_excluding_block(ClusterNetId net_id, t_bb& bb_co * the pins always lie on the outside of the bounding box. * * The x and y coordinates are the pin's x and y coordinates. */ /* IO blocks are considered to be one cell in for simplicity. */ -static bool get_bb_incrementally(ClusterNetId net_id, t_bb& bb_coord_new, int xold, int yold, int xnew, int ynew) { +static bool get_bb_incrementally(ClusterNetId net_id, + t_bb& bb_coord_new, + int xold, + int yold, + int layer_old, + int xnew, + int ynew, + int layer_new) { //TODO: account for multiple physical pin instances per logical pin auto& device_ctx = g_vpr_ctx.device(); @@ -281,12 +318,21 @@ static bool get_bb_incrementally(ClusterNetId net_id, t_bb& bb_coord_new, int xo xnew = std::max(std::min(xnew, device_ctx.grid.width() - 2), 1); //-2 for no perim channels ynew = std::max(std::min(ynew, device_ctx.grid.height() - 2), 1); //-2 for no perim channels + layer_new = std::max(std::min(layer_new, device_ctx.grid.get_num_layers() - 1), 0); + xold = std::max(std::min(xold, device_ctx.grid.width() - 2), 1); //-2 for no perim channels yold = std::max(std::min(yold, device_ctx.grid.height() - 2), 1); //-2 for no perim channels + layer_old = std::max(std::min(layer_old, device_ctx.grid.get_num_layers() - 1), 0); t_bb union_bb_edge; t_bb union_bb; const bool& cube_bb = g_vpr_ctx.placement().cube_bb; + /* Calculating per-layer bounding box is more time consuming compared to cube bounding box. To speed up + * this move, the bounding box used for this move is of the type cube bounding box even if the per-layer + * bounding box is used by placement SA engine. + * If per-layer bounding box is used, we take a union of boundinx boxes on each layer to make a cube bounding box. + * For example, the xmax of this cube boundix box is determined by the maximim x coordinate across all blocks on all layers. + */ if (!cube_bb) { std::tie(union_bb_edge, union_bb) = union_2d_bb_incr(place_move_ctx.layer_bb_num_on_edges[net_id], place_move_ctx.layer_bb_coords[net_id]); @@ -410,5 +456,47 @@ static bool get_bb_incrementally(ClusterNetId net_id, t_bb& bb_coord_new, int xo bb_coord_new.ymin = curr_bb_coord.ymin; bb_coord_new.ymax = curr_bb_coord.ymax; } + + if (layer_new < layer_old) { + if (layer_old == curr_bb_coord.layer_max) { + if (curr_bb_edge.layer_max == 1) { + return false; + } else { + bb_coord_new.layer_max = curr_bb_coord.layer_max; + } + } else { + bb_coord_new.layer_max = curr_bb_coord.layer_max; + } + + if (layer_new < curr_bb_coord.layer_min) { + bb_coord_new.layer_min = layer_new; + } else if (layer_new == curr_bb_coord.layer_min) { + bb_coord_new.layer_min = layer_new; + } else { + bb_coord_new.layer_min = curr_bb_coord.layer_min; + } + + } else if (layer_new > layer_old) { + if (layer_old == curr_bb_coord.layer_min) { + if (curr_bb_edge.layer_min == 1) { + return false; + } else { + bb_coord_new.layer_min = curr_bb_coord.layer_min; + } + } else { + bb_coord_new.layer_min = curr_bb_coord.layer_min; + } + + if (layer_new > curr_bb_coord.layer_max) { + bb_coord_new.layer_max = layer_new; + } else if (layer_new == curr_bb_coord.layer_max) { + bb_coord_new.layer_max = layer_new; + } else { + bb_coord_new.layer_max = curr_bb_coord.layer_max; + } + } else { + bb_coord_new.layer_min = curr_bb_coord.layer_min; + bb_coord_new.layer_max = curr_bb_coord.layer_max; + } return true; } diff --git a/vpr/src/place/move_generator.h b/vpr/src/place/move_generator.h index bc20143da07..34d6d01cfa9 100644 --- a/vpr/src/place/move_generator.h +++ b/vpr/src/place/move_generator.h @@ -47,7 +47,7 @@ class MoveGenerator { /** * @brief Updates affected_blocks with the proposed move, while respecting the current rlim * - * This function proposes a new move and updates blocks affected and move_type accorrdingly. The function interface is general + * This function proposes a new move and updates blocks affected and move_type accordingly. The function interface is general * to match the parameters needed by all move generators * * @param blocks_affected: the output of the move diff --git a/vpr/src/place/move_utils.cpp b/vpr/src/place/move_utils.cpp index 40425bf18b5..3ec00c26970 100644 --- a/vpr/src/place/move_utils.cpp +++ b/vpr/src/place/move_utils.cpp @@ -16,10 +16,15 @@ bool f_placer_breakpoint_reached = false; //Records counts of reasons for aborted moves -static std::map f_move_abort_reasons; +static std::map> f_move_abort_reasons; -void log_move_abort(const std::string& reason) { - ++f_move_abort_reasons[reason]; +void log_move_abort(std::string_view reason) { + auto it = f_move_abort_reasons.find(reason); + if (it != f_move_abort_reasons.end()) { + it->second++; + } else { + f_move_abort_reasons.emplace(reason, 1); + } } void report_aborted_moves() { @@ -254,13 +259,13 @@ e_block_move_result record_macro_macro_swaps(t_pl_blocks_to_be_moved& blocks_aff //Continue walking along the overlapping parts of the from and to macros, recording //each block swap. // - //At the momemnt we only support swapping the two macros if they have the same shape. + //At the moment we only support swapping the two macros if they have the same shape. //This will be the case with the common cases we care about (i.e. carry-chains), so //we just abort in any other cases (if these types of macros become more common in //the future this could be updated). // - //Unless the two macros have thier root blocks aligned (i.e. the mutual overlap starts - //at imember_from == 0), then theree will be a fixed offset between the macros' relative + //Unless the two macros have their root blocks aligned (i.e. the mutual overlap starts + //at imember_from == 0), then there will be a fixed offset between the macros' relative //position. We record this as from_to_macro_*_offset which is used to verify the shape //of the macros is consistent. // @@ -923,7 +928,7 @@ bool find_to_loc_centroid(t_logical_block_type_ptr blk_type, ClusterBlockId b_from) { //Retrieve the compressed block grid for this block type const auto& compressed_block_grid = g_vpr_ctx.placement().compressed_block_grids[blk_type->index]; - const int to_layer_num = to_loc.layer; + const int to_layer_num = centroid.layer; VTR_ASSERT(to_layer_num >= 0); const int num_layers = g_vpr_ctx.device().grid.get_num_layers(); @@ -1003,7 +1008,7 @@ bool find_to_loc_centroid(t_logical_block_type_ptr blk_type, } //Array of move type strings -static const std::array move_type_strings = { +static const std::array move_type_strings = { "Uniform", "Median", "Centroid", @@ -1011,6 +1016,7 @@ static const std::array move_type_strings = "W. Median", "Crit. Uniform", "Feasible Region", + "NoC Centroid", "Manual Move"}; //To convert enum move type to string @@ -1035,12 +1041,13 @@ void compressed_grid_to_loc(t_logical_block_type_ptr blk_type, to_loc = t_pl_loc(grid_loc.x, grid_loc.y, sub_tile, grid_loc.layer_num); } -bool has_empty_compatible_subtile(t_logical_block_type_ptr type, const t_physical_tile_loc& to_loc) { +int find_empty_compatible_subtile(t_logical_block_type_ptr type, + const t_physical_tile_loc& to_loc) { auto& device_ctx = g_vpr_ctx.device(); auto& place_ctx = g_vpr_ctx.placement(); const auto& compressed_block_grid = g_vpr_ctx.placement().compressed_block_grids[type->index]; - bool legal = false; + int return_sub_tile = -1; t_pl_loc to_uncompressed_loc; compressed_grid_to_loc(type, to_loc, to_uncompressed_loc); @@ -1049,12 +1056,12 @@ bool has_empty_compatible_subtile(t_logical_block_type_ptr type, const t_physica const auto& compatible_sub_tiles = compressed_block_grid.compatible_sub_tiles_for_tile.at(phy_type->index); for (const auto& sub_tile : compatible_sub_tiles) { if (place_ctx.grid_blocks.is_sub_tile_empty(to_phy_uncompressed_loc, sub_tile)) { - legal = true; + return_sub_tile = sub_tile; break; } } - return legal; + return return_sub_tile; } bool find_compatible_compressed_loc_in_range(t_logical_block_type_ptr type, @@ -1147,7 +1154,7 @@ bool find_compatible_compressed_loc_in_range(t_logical_block_type_ptr type, if (from_loc.x == to_loc.x && from_loc.y == to_loc.y && from_loc.layer_num == to_layer_num) { continue; //Same from/to location -- try again for new y-position } else if (search_for_empty) { // Check if the location has at least one empty sub-tile - legal = has_empty_compatible_subtile(type, to_loc); + legal = find_empty_compatible_subtile(type, to_loc) >= 0; } else { legal = true; } @@ -1276,13 +1283,10 @@ bool intersect_range_limit_with_floorplan_constraints(t_logical_block_type_ptr t max_grid_loc.y, layer_num}); - auto& floorplanning_ctx = g_vpr_ctx.floorplanning(); + const auto& floorplanning_ctx = g_vpr_ctx.floorplanning(); - PartitionRegion pr = floorplanning_ctx.cluster_constraints[b_from]; - std::vector regions; - if (!pr.empty()) { - regions = pr.get_partition_region(); - } + const PartitionRegion& pr = floorplanning_ctx.cluster_constraints[b_from]; + const std::vector& regions = pr.get_regions(); Region intersect_reg; /* * If region size is greater than 1, the block is constrained to more than one rectangular region. diff --git a/vpr/src/place/move_utils.h b/vpr/src/place/move_utils.h index 3ff8e729833..24bdfcb7ebc 100644 --- a/vpr/src/place/move_utils.h +++ b/vpr/src/place/move_utils.h @@ -27,6 +27,7 @@ enum class e_move_type { W_MEDIAN, CRIT_UNIFORM, FEASIBLE_REGION, + NOC_ATTRACTION_CENTROID, NUMBER_OF_AUTO_MOVES, MANUAL_MOVE = NUMBER_OF_AUTO_MOVES, INVALID_MOVE @@ -69,6 +70,8 @@ struct t_bb_cost { t_edge_cost xmax = {0, 0.0}; t_edge_cost ymin = {0, 0.0}; t_edge_cost ymax = {0, 0.0}; + t_edge_cost layer_min = {0, 0.}; + t_edge_cost layer_max = {0, 0.}; }; /** @@ -85,7 +88,7 @@ struct t_range_limiters { }; //Records a reasons for an aborted move -void log_move_abort(const std::string& reason); +void log_move_abort(std::string_view reason); //Prints a breif report about aborted move reasons and counts void report_aborted_moves(); @@ -224,15 +227,18 @@ void compressed_grid_to_loc(t_logical_block_type_ptr blk_type, t_pl_loc& to_loc); /** - * @brief Checks whether the given location has a compatible empty subtile with - * the given type. + * @brief Tries to find an compatible empty subtile with the given type at + * the given location. If such a subtile could be found, the subtile number + * is returned. Otherwise, -1 is returned to indicate that there are no + * compatible subtiles at the given location. * * @param type logical block type * @param to_loc The location to be checked * - * @return bool True if the given location has at least one empty compatible subtile. + * @return int The subtile number if there is an empty compatible subtile, otherwise -1 + * is returned to indicate that there are no empty subtiles compatible with the given type.. */ -bool has_empty_compatible_subtile(t_logical_block_type_ptr type, +int find_empty_compatible_subtile(t_logical_block_type_ptr type, const t_physical_tile_loc& to_loc); /** @@ -247,7 +253,7 @@ bool has_empty_compatible_subtile(t_logical_block_type_ptr type, * search_for_empty: indicates that the returned location must be empty */ bool find_compatible_compressed_loc_in_range(t_logical_block_type_ptr type, - const int delta_cx, + int delta_cx, const t_physical_tile_loc& from_loc, t_bb search_range, t_physical_tile_loc& to_loc, diff --git a/vpr/src/place/noc_place_checkpoint.cpp b/vpr/src/place/noc_place_checkpoint.cpp index e0f41dc94f0..3e11d9c8eb6 100644 --- a/vpr/src/place/noc_place_checkpoint.cpp +++ b/vpr/src/place/noc_place_checkpoint.cpp @@ -68,7 +68,7 @@ void NoCPlacementCheckpoint::restore_checkpoint(t_placer_costs& costs) { } // Re-initialize routes and static variables that keep track of NoC-related costs - reinitialize_noc_routing(costs); + reinitialize_noc_routing(costs, {}); } bool NoCPlacementCheckpoint::is_valid() const { diff --git a/vpr/src/place/noc_place_utils.cpp b/vpr/src/place/noc_place_utils.cpp index ac9fde26038..0b9e274b85b 100644 --- a/vpr/src/place/noc_place_utils.cpp +++ b/vpr/src/place/noc_place_utils.cpp @@ -12,6 +12,10 @@ #include "place_constraints.h" #include "move_transactions.h" +#ifdef ENABLE_NOC_SAT_ROUTING +#include "sat_routing.h" +#endif + #include /********************** Variables local to noc_place_utils.c pp***************************/ @@ -22,7 +26,7 @@ static vtr::vector traffic_flow_costs, p static std::vector affected_traffic_flows; /* Proposed and actual congestion cost of a NoC link used for each move assessment */ -static vtr::vector link_congestion_costs, proposed_link_congestion_costs; +static vtr::vector link_congestion_costs, proposed_link_congestion_costs; /* Keeps track of NoC links whose bandwidth usage have been updated at each attempted placement move*/ static std::unordered_set affected_noc_links; @@ -54,40 +58,56 @@ static bool select_random_router_cluster(ClusterBlockId& b_from, static std::vector find_affected_links_by_flow_reroute(std::vector& prev_links, std::vector& curr_links); -void initial_noc_routing() { +void initial_noc_routing(const vtr::vector>& new_traffic_flow_routes) { // need to update the link usages within after routing all the traffic flows // also need to route all the traffic flows and store them auto& noc_ctx = g_vpr_ctx.mutable_noc(); NocTrafficFlows& noc_traffic_flows_storage = noc_ctx.noc_traffic_flows_storage; + VTR_ASSERT(new_traffic_flow_routes.size() == (size_t)noc_traffic_flows_storage.get_number_of_traffic_flows() || + new_traffic_flow_routes.empty()); + /* We need all the traffic flow ids to be able to access them. The range * of traffic flow ids go from 0 to the total number of traffic flows within * the NoC. - * go through all the traffic flows and route them. Then once routed, update the links used in the routed traffic flows with their usages + * Go through all the traffic flows and route them. Then once routed, + * update the links used in the routed traffic flows with their usages */ for (const auto& traffic_flow_id : noc_traffic_flows_storage.get_all_traffic_flow_id()) { const t_noc_traffic_flow& curr_traffic_flow = noc_traffic_flows_storage.get_single_noc_traffic_flow(traffic_flow_id); - // update the traffic flow route based on where the router cluster blocks are placed - std::vector& curr_traffic_flow_route = route_traffic_flow(traffic_flow_id, noc_ctx.noc_model,noc_traffic_flows_storage, *noc_ctx.noc_flows_router); + /* Update the traffic flow route based on where the router cluster blocks are placed. + * If the caller has not provided traffic flow routes, route traffic flow, otherwise use the provided route. + */ + const std::vector& curr_traffic_flow_route = new_traffic_flow_routes.empty() + ? route_traffic_flow(traffic_flow_id, noc_ctx.noc_model, noc_traffic_flows_storage, *noc_ctx.noc_flows_router) + : new_traffic_flow_routes[traffic_flow_id]; + + if (!new_traffic_flow_routes.empty()) { + noc_traffic_flows_storage.get_mutable_traffic_flow_route(traffic_flow_id) = curr_traffic_flow_route; + } // update the links used in the found traffic flow route, links' bandwidth should be incremented since the traffic flow is routed update_traffic_flow_link_usage(curr_traffic_flow_route, noc_ctx.noc_model, 1, curr_traffic_flow.traffic_flow_bandwidth); } } -void reinitialize_noc_routing(t_placer_costs& costs) { +void reinitialize_noc_routing(t_placer_costs& costs, + const vtr::vector>& new_traffic_flow_routes) { // used to access NoC links and modify them auto& noc_ctx = g_vpr_ctx.mutable_noc(); + VTR_ASSERT((size_t)noc_ctx.noc_traffic_flows_storage.get_number_of_traffic_flows() == new_traffic_flow_routes.size() || + new_traffic_flow_routes.empty()); + // Zero out bandwidth usage for all links for (auto& noc_link : noc_ctx.noc_model.get_mutable_noc_links()) { noc_link.set_bandwidth_usage(0.0); } // Route traffic flows and update link bandwidth usage - initial_noc_routing(); + initial_noc_routing(new_traffic_flow_routes); // Initialize traffic_flow_costs costs.noc_cost_terms.aggregate_bandwidth = comp_noc_aggregate_bandwidth_cost(); @@ -137,7 +157,8 @@ void find_affected_noc_routers_and_update_noc_costs(const t_pl_blocks_to_be_move // calculate the new aggregate bandwidth and latency costs for the affected traffic flow proposed_traffic_flow_costs[traffic_flow_id].aggregate_bandwidth = calculate_traffic_flow_aggregate_bandwidth_cost(traffic_flow_route, curr_traffic_flow); std::tie(proposed_traffic_flow_costs[traffic_flow_id].latency, - proposed_traffic_flow_costs[traffic_flow_id].latency_overrun) = calculate_traffic_flow_latency_cost(traffic_flow_route, noc_ctx.noc_model, curr_traffic_flow); + proposed_traffic_flow_costs[traffic_flow_id].latency_overrun) + = calculate_traffic_flow_latency_cost(traffic_flow_route, noc_ctx.noc_model, curr_traffic_flow); // compute how much the aggregate bandwidth and latency costs change with this swap delta_c.aggregate_bandwidth += proposed_traffic_flow_costs[traffic_flow_id].aggregate_bandwidth - traffic_flow_costs[traffic_flow_id].aggregate_bandwidth; @@ -146,10 +167,7 @@ void find_affected_noc_routers_and_update_noc_costs(const t_pl_blocks_to_be_move } // Iterate over all affected links and calculate their new congestion cost and store it - for (const auto& link_id : affected_noc_links) { - // get the affected link - const auto& link = noc_ctx.noc_model.get_single_noc_link(link_id); - + for (const NocLink& link : noc_ctx.noc_model.get_noc_links(affected_noc_links)) { // calculate the new congestion cost for the link and store it proposed_link_congestion_costs[link] = calculate_link_congestion_cost(link); @@ -174,10 +192,7 @@ void commit_noc_costs() { } // Iterate over all the NoC links whose bandwidth utilization was affected by the proposed move - for(auto link_id : affected_noc_links) { - // get the affected link - const auto& link = noc_ctx.noc_model.get_single_noc_link(link_id); - + for (const NocLink& link : noc_ctx.noc_model.get_noc_links(affected_noc_links)) { // commit the new link congestion cost link_congestion_costs[link] = proposed_link_congestion_costs[link]; @@ -211,7 +226,10 @@ std::vector& route_traffic_flow(NocTrafficFlowId traffic_flow_id, return curr_traffic_flow_route; } -void update_traffic_flow_link_usage(const std::vector& traffic_flow_route, NocStorage& noc_model, int inc_or_dec, double traffic_flow_bandwidth) { +void update_traffic_flow_link_usage(const std::vector& traffic_flow_route, + NocStorage& noc_model, + int inc_or_dec, + double traffic_flow_bandwidth) { // go through the links within the traffic flow route and update their bandwidth usage for (auto& link_in_route_id : traffic_flow_route) { // get the link to update and its current bandwidth @@ -449,7 +467,7 @@ int check_noc_placement_costs(const t_placer_costs& costs, double error_toleranc vtr::vector temp_noc_link_storage = noc_model.get_noc_links(); // reset bandwidth utilization for all links - std::for_each(temp_noc_link_storage.begin(), temp_noc_link_storage.end(), [](NocLink& link) {link.set_bandwidth_usage(0.0); }); + std::for_each(temp_noc_link_storage.begin(), temp_noc_link_storage.end(), [](NocLink& link) { link.set_bandwidth_usage(0.0); }); // need to create a temporary noc routing algorithm std::unique_ptr temp_noc_routing_algorithm = NocRoutingAlgorithmCreator::create_routing_algorithm(noc_opts.noc_routing_algorithm); @@ -494,7 +512,7 @@ int check_noc_placement_costs(const t_placer_costs& costs, double error_toleranc } // Iterate over all NoC links and accumulate congestion cost - for(const auto& link : temp_noc_link_storage) { + for (const auto& link : temp_noc_link_storage) { cost_check.congestion += calculate_link_congestion_cost(link); } @@ -552,19 +570,47 @@ double calculate_traffic_flow_aggregate_bandwidth_cost(const std::vector calculate_traffic_flow_latency_cost(const std::vector& traffic_flow_route, const NocStorage& noc_model, const t_noc_traffic_flow& traffic_flow_info) { - // there will always be one more router than links in a traffic flow - int num_of_links_in_traffic_flow = traffic_flow_route.size(); - int num_of_routers_in_traffic_flow = num_of_links_in_traffic_flow + 1; - double max_latency = traffic_flow_info.max_traffic_flow_latency; - // latencies of the noc - double noc_link_latency = noc_model.get_noc_link_latency(); - double noc_router_latency = noc_model.get_noc_router_latency(); + double noc_link_latency_component = 0.0; + if (noc_model.get_detailed_link_latency()) { + for (const NocLink& link : noc_model.get_noc_links(traffic_flow_route)) { + double link_latency = link.get_latency(); + noc_link_latency_component += link_latency; + } + } else { + auto num_of_links_in_traffic_flow = (double)traffic_flow_route.size(); + double noc_link_latency = noc_model.get_noc_link_latency(); + noc_link_latency_component = noc_link_latency * num_of_links_in_traffic_flow; + } + + double noc_router_latency_component = 0.0; + + if (noc_model.get_detailed_router_latency()) { + NocLinkId first_noc_link_id = traffic_flow_route[0]; + const NocLink& first_noc_link = noc_model.get_single_noc_link(first_noc_link_id); + NocRouterId source_noc_router_id = first_noc_link.get_source_router(); + const NocRouter& source_noc_router = noc_model.get_single_noc_router(source_noc_router_id); + noc_router_latency_component = source_noc_router.get_latency(); + + for (const NocLink& link : noc_model.get_noc_links(traffic_flow_route)) { + const NocRouterId sink_router_id = link.get_sink_router(); + const NocRouter& sink_router = noc_model.get_single_noc_router(sink_router_id); + double noc_router_latency = sink_router.get_latency(); + noc_router_latency_component += noc_router_latency; + } + } else { + // there will always be one more router than links in a traffic flow + auto num_of_routers_in_traffic_flow = (double)traffic_flow_route.size() + 1; + double noc_router_latency = noc_model.get_noc_router_latency(); + noc_router_latency_component = noc_router_latency * num_of_routers_in_traffic_flow; + } + - // calculate the traffic flow latency - double latency = (noc_link_latency * num_of_links_in_traffic_flow) + (noc_router_latency * num_of_routers_in_traffic_flow); + // calculate the total traffic flow latency + double latency = noc_router_latency_component + noc_link_latency_component; // calculate the traffic flow latency overrun + double max_latency = traffic_flow_info.max_traffic_flow_latency; double latency_overrun = std::max(latency - max_latency, 0.); // scale the latency cost by its priority to indicate its importance @@ -611,11 +657,7 @@ double calculate_noc_cost(const NocCostTerms& cost_terms, * is computed. Weighting factors determine the contribution of each * normalized term to the sum. */ - cost = noc_opts.noc_placement_weighting * ( - cost_terms.aggregate_bandwidth * norm_factors.aggregate_bandwidth * noc_opts.noc_aggregate_bandwidth_weighting + - cost_terms.latency * norm_factors.latency * noc_opts.noc_latency_weighting + - cost_terms.latency_overrun * norm_factors.latency_overrun * noc_opts.noc_latency_constraints_weighting + - cost_terms.congestion * norm_factors.congestion * noc_opts.noc_congestion_weighting); + cost = noc_opts.noc_placement_weighting * (cost_terms.aggregate_bandwidth * norm_factors.aggregate_bandwidth * noc_opts.noc_aggregate_bandwidth_weighting + cost_terms.latency * norm_factors.latency * noc_opts.noc_latency_weighting + cost_terms.latency_overrun * norm_factors.latency_overrun * noc_opts.noc_latency_constraints_weighting + cost_terms.congestion * norm_factors.congestion * noc_opts.noc_congestion_weighting); return cost; } @@ -662,11 +704,11 @@ int get_number_of_congested_noc_links() { // Iterate over all NoC links and count the congested ones for (const auto& link : noc_links) { - double congested_bw_ratio = link.get_congested_bandwidth_ratio(); + double congested_bw_ratio = link.get_congested_bandwidth_ratio(); - if (congested_bw_ratio > MIN_EXPECTED_NOC_CONGESTION_COST) { + if (congested_bw_ratio > MIN_EXPECTED_NOC_CONGESTION_COST) { num_congested_links++; - } + } } return num_congested_links; @@ -680,8 +722,8 @@ double get_total_congestion_bandwidth_ratio() { // Iterate over all NoC links and count the congested ones for (const auto& link : noc_links) { - double congested_bw_ratio = link.get_congested_bandwidth_ratio(); - accum_congestion_ratio += congested_bw_ratio; + double congested_bw_ratio = link.get_congested_bandwidth_ratio(); + accum_congestion_ratio += congested_bw_ratio; } return accum_congestion_ratio; @@ -695,8 +737,8 @@ std::vector get_top_n_congested_links(int n) { // stable_sort is used to make sure the order is the same across different machines/compilers // Note that when the vector is sorted, indexing it with NocLinkId does return the corresponding link std::stable_sort(noc_links.begin(), noc_links.end(), [](const NocLink& l1, const NocLink& l2) { - return l1.get_congested_bandwidth_ratio() > l2.get_congested_bandwidth_ratio(); - }); + return l1.get_congested_bandwidth_ratio() > l2.get_congested_bandwidth_ratio(); + }); int pick_n = std::min((int)noc_links.size(), n); @@ -871,20 +913,72 @@ bool noc_routing_has_cycle() { // get all traffic flow routes const auto& traffic_flow_routes = noc_ctx.noc_traffic_flows_storage.get_all_traffic_flow_routes(); - // get the total number of NoC links - const size_t num_noc_links = noc_ctx.noc_model.get_number_of_noc_links(); + bool has_cycle = noc_routing_has_cycle(traffic_flow_routes); + + return has_cycle; +} + +bool noc_routing_has_cycle(const vtr::vector>& routes) { + const auto& noc_ctx = g_vpr_ctx.noc(); + const auto& place_ctx = g_vpr_ctx.placement(); + + ChannelDependencyGraph channel_dependency_graph(noc_ctx.noc_model, + noc_ctx.noc_traffic_flows_storage, + routes, + place_ctx.block_locs); - ChannelDependencyGraph channel_dependency_graph(num_noc_links, traffic_flow_routes); bool has_cycles = channel_dependency_graph.has_cycles(); return has_cycles; } +#ifdef ENABLE_NOC_SAT_ROUTING +void invoke_sat_router(t_placer_costs& costs, const t_noc_opts& noc_opts, int seed) { + + auto traffic_flow_routes = noc_sat_route(true, noc_opts, seed); + + if (!traffic_flow_routes.empty()) { + bool has_cycle = noc_routing_has_cycle(traffic_flow_routes); + if (has_cycle) { + VTR_LOG("SAT NoC routing has cycles.\n"); + } + + reinitialize_noc_routing(costs, traffic_flow_routes); + + print_noc_costs("\nNoC Placement Costs after SAT routing", costs, noc_opts); + + } else { + VTR_LOG("SAT routing failed.\n"); + } +} +#endif + +void print_noc_costs(std::string_view header, const t_placer_costs& costs, const t_noc_opts& noc_opts) { + VTR_LOG("%s. " + "cost: %g, " + "aggregate_bandwidth_cost: %g, " + "latency_cost: %g, " + "n_met_latency_constraints: %d, " + "latency_overrun_cost: %g, " + "congestion_cost: %g, " + "accum_congested_ratio: %g, " + "n_congested_links: %d \n", + header.data(), + calculate_noc_cost(costs.noc_cost_terms, costs.noc_cost_norm_factors, noc_opts), + costs.noc_cost_terms.aggregate_bandwidth, + costs.noc_cost_terms.latency, + get_number_of_traffic_flows_with_latency_cons_met(), + costs.noc_cost_terms.latency_overrun, + costs.noc_cost_terms.congestion, + get_total_congestion_bandwidth_ratio(), + get_number_of_congested_noc_links()); +} + static std::vector find_affected_links_by_flow_reroute(std::vector& prev_links, std::vector& curr_links) { // Sort both link containers - std::sort(prev_links.begin(), prev_links.end()); - std::sort(curr_links.begin(), curr_links.end()); + std::stable_sort(prev_links.begin(), prev_links.end()); + std::stable_sort(curr_links.begin(), curr_links.end()); // stores links that appear either in prev_links or curr_links but not both of them std::vector unique_links; diff --git a/vpr/src/place/noc_place_utils.h b/vpr/src/place/noc_place_utils.h index 079cc5f001b..a0e675ea7d7 100644 --- a/vpr/src/place/noc_place_utils.h +++ b/vpr/src/place/noc_place_utils.h @@ -1,6 +1,7 @@ #ifndef NOC_PLACE_UTILS_H #define NOC_PLACE_UTILS_H +#include #include "move_utils.h" #include "place_util.h" @@ -38,23 +39,27 @@ struct TrafficFlowPlaceCost { }; /** - * @brief Routes all the traffic flows within the NoC and updates the link usage - * for all links. This should be called after initial placement, where all the - * logical NoC router blocks have been placed for the first time and no traffic - * flows have been routed yet. This function should also only be used once as - * its intended use is to initialize the routes for all the traffic flows. - * - * This is different from a complete re-route of the traffic flows as this - * function assumes the traffic flows have not been routed yet, whereas a - * complete re-route function assumes the traffic flows have already been - * routed. This is why this function should only be used once. - * + * @brief Initializes the link bandwidth usage for all NoC links. + * + * If traffic flow routes are not passed to this function, it uses a NoC routing algorithm + * to route all traffic flows. The caller can prevent this function from routing traffic flows + * by passing routes for all traffic flows. This should be called after initial placement, + * where all the logical NoC router blocks have been placed for the first time and no traffic + * flows have been routed yet. In this case an empty vector should be passed to the function. + * This function can also be called after modification of traffic flow routes. For example, + * NoC SAT routing algorithm generates new traffic flow routes to avoid congestion. The routes + * generate by the SAT router should be passed to this function + * + * + * @param new_traffic_flow_routes Traffic flow routes used to initialize link bandwidth utilization. + * If an empty vector is passed, this function uses a routing algorithm to route traffic flows. */ -void initial_noc_routing(); +void initial_noc_routing(const vtr::vector>& new_traffic_flow_routes); /** - * @brief Zeros out all link bandwidth usage an re-routes traffic flows. - * Initializes static variables in noc_place_utils.cpp that are used to + * @brief Re-initializes all link bandwidth usages by either re-routing + * all traffic flows or using the provided traffic flow routes. This functions + * also initializes static variables in noc_place_utils.cpp that are used to * keep track of NoC-related costs. * * This function should be called when a placement checkpoint is restored. @@ -63,9 +68,15 @@ void initial_noc_routing(); * traffic flow routes, and static variable in noc_place_utils.cpp are no * longer valid and need to be re-initialized. * + * This function should be called after NoC SAT routing algorithm returns its + * traffic flow routes. + * * @param costs Used to get aggregate bandwidth and latency costs. + * @param new_traffic_flow_routes Traffic flow routes used to initialize link bandwidth utilization. +* If an empty vector is passed, this function uses a routing algorithm to route traffic flows. */ -void reinitialize_noc_routing(t_placer_costs& costs); +void reinitialize_noc_routing(t_placer_costs& costs, + const vtr::vector>& new_traffic_flow_routes); /** * @brief Goes through all the cluster blocks that were moved @@ -173,7 +184,10 @@ std::vector& route_traffic_flow(NocTrafficFlowId traffic_flow_id, * @param traffic_flow_bandwidth The bandwidth of a traffic flow. This will * be used to update bandwidth usage of the links. */ -void update_traffic_flow_link_usage(const std::vector& traffic_flow_route, NocStorage& noc_model, int inc_or_dec, double traffic_flow_bandwidth); +void update_traffic_flow_link_usage(const std::vector& traffic_flow_route, + NocStorage& noc_model, + int inc_or_dec, + double traffic_flow_bandwidth); /** * @brief Goes through all the traffic flows associated to a moved @@ -201,7 +215,8 @@ void update_traffic_flow_link_usage(const std::vector& traffic_flow_r */ void re_route_associated_traffic_flows(ClusterBlockId moved_router_block_id, NocTrafficFlows& noc_traffic_flows_storage, - NocStorage& noc_model, NocRouting& noc_flows_router, + NocStorage& noc_model, + NocRouting& noc_flows_router, std::unordered_set& updated_traffic_flows); /** @@ -355,7 +370,8 @@ int check_noc_placement_costs(const t_placer_costs& costs, double error_toleranc * its priority. * @return The computed aggregate bandwidth for the provided traffic flow */ -double calculate_traffic_flow_aggregate_bandwidth_cost(const std::vector& traffic_flow_route, const t_noc_traffic_flow& traffic_flow_info); +double calculate_traffic_flow_aggregate_bandwidth_cost(const std::vector& traffic_flow_route, + const t_noc_traffic_flow& traffic_flow_info); /** * @brief Determines the latency cost of a routed traffic flow. @@ -453,7 +469,6 @@ double get_total_congestion_bandwidth_ratio(); */ std::vector get_top_n_congested_links(int n); - /** * @brief Goes through all NoC links and determines whether they * are congested or not. Then finds n links that are most congested. @@ -470,7 +485,6 @@ std::vector get_top_n_congestion_ratios(int n); * initialize the datastructures here. * * This should be called before starting the simulated annealing placement. - * */ void allocate_and_load_noc_placement_structs(); @@ -530,7 +544,6 @@ e_create_move propose_router_swap(t_pl_blocks_to_be_moved& blocks_affected, floa * information. * */ - void write_noc_placement_file(const std::string& file_name); /** @@ -548,4 +561,34 @@ void write_noc_placement_file(const std::string& file_name); */ bool noc_routing_has_cycle(); +/** + * @brief Check if the channel dependency graph created from the given traffic flow routes + * has any cycles. + * @param routes The user provided traffic flow routes. + * @return True if there is any cycles in the channel dependency graph. + */ +bool noc_routing_has_cycle(const vtr::vector>& routes); + +/** + * @brief Invokes NoC SAT router and print new NoC cost terms after SAT router + * solved the NoC routing problem. + * + * @param costs To be updated with new NoC-related cost terms after traffic flow routes + * generated by the SAT router replace the old traffic flow routes. + * @param noc_opts Contains NoC-related cost weighting factor used in the SAT router. + * @param seed The initialization seed used in the SAT solver. + */ +#ifdef ENABLE_NOC_SAT_ROUTING +void invoke_sat_router(t_placer_costs& costs, const t_noc_opts& noc_opts, int seed); +#endif + +/** + * @brief Prints NoC related costs terms and metrics. + * + * @param header The string with which the report starts. + * @param costs Contains NoC-related cost terms. + * @param noc_opts Used to compute total NoC cost. + */ +void print_noc_costs(std::string_view header, const t_placer_costs& costs, const t_noc_opts& noc_opts); + #endif \ No newline at end of file diff --git a/vpr/src/place/place.cpp b/vpr/src/place/place.cpp index efe21d52122..357b8532016 100644 --- a/vpr/src/place/place.cpp +++ b/vpr/src/place/place.cpp @@ -5,7 +5,6 @@ #include #include #include -#include #include #include "NetPinTimingInvalidator.h" @@ -16,6 +15,7 @@ #include "vtr_geometry.h" #include "vtr_time.h" #include "vtr_math.h" +#include "vtr_ndmatrix.h" #include "vpr_types.h" #include "vpr_error.h" @@ -75,7 +75,7 @@ * -1*(1.5-REWARD_BB_TIMING_RELATIVE_WEIGHT)*timing_cost + (1+REWARD_BB_TIMING_RELATIVE_WEIGHT)*bb_cost) */ -#define REWARD_BB_TIMING_RELATIVE_WEIGHT 0.4 +static constexpr float REWARD_BB_TIMING_RELATIVE_WEIGHT = 0.4; #ifdef VTR_ENABLE_DEBUG_LOGGING # include "draw_types.h" @@ -90,12 +90,12 @@ using std::min; /* This defines the error tolerance for floating points variables used in * * cost computation. 0.01 means that there is a 1% error tolerance. */ -#define ERROR_TOL .01 +static constexpr double ERROR_TOL = .01; /* This defines the maximum number of swap attempts before invoking the * * once-in-a-while placement legality check as well as floating point * * variables round-offs check. */ -#define MAX_MOVES_BEFORE_RECOMPUTE 500000 +static constexpr int MAX_MOVES_BEFORE_RECOMPUTE = 500000; /* Flags for the states of the bounding box. * * Stored as char for memory efficiency. */ @@ -103,7 +103,7 @@ using std::min; #define UPDATED_ONCE 'U' #define GOT_FROM_SCRATCH 'S' -/* For comp_cost. NORMAL means use the method that generates updateable * +/* For comp_cost. NORMAL means use the method that generates updatable * * bounding boxes for speed. CHECK means compute all bounding boxes from * * scratch using a very simple routine to allow checks of the other * * costs. @@ -648,7 +648,7 @@ void try_place(const Netlist<>& net_list, * pow(net_list.blocks().size(), 1.3333)); //create the move generator based on the chosen strategy - create_move_generators(move_generator, move_generator2, placer_opts, move_lim); + create_move_generators(move_generator, move_generator2, placer_opts, move_lim, noc_opts.noc_centroid_weight); alloc_and_load_placement_structs(placer_opts.place_cost_exp, placer_opts, noc_opts, directs, num_directs); @@ -821,27 +821,11 @@ void try_place(const Netlist<>& net_list, placer_opts.place_algorithm, noc_opts); - //Initial pacement statistics + //Initial placement statistics VTR_LOG("Initial placement cost: %g bb_cost: %g td_cost: %g\n", costs.cost, costs.bb_cost, costs.timing_cost); if (noc_opts.noc) { - VTR_LOG("NoC Placement Costs. " - "cost: %g, " - "aggregate_bandwidth_cost: %g, " - "latency_cost: %g, " - "n_met_latency_constraints: %d, " - "latency_overrun_cost: %g, " - "congestion_cost: %g, " - "accum_congested_ratio: %g, " - "n_congested_links: %d \n", - calculate_noc_cost(costs.noc_cost_terms, costs.noc_cost_norm_factors, noc_opts), - costs.noc_cost_terms.aggregate_bandwidth, - costs.noc_cost_terms.latency, - get_number_of_traffic_flows_with_latency_cons_met(), - costs.noc_cost_terms.latency_overrun, - costs.noc_cost_terms.congestion, - get_total_congestion_bandwidth_ratio(), - get_number_of_congested_noc_links()); + print_noc_costs("Initial NoC Placement Costs", costs, noc_opts); } if (placer_opts.place_algorithm.is_timing_driven()) { VTR_LOG( @@ -873,29 +857,7 @@ void try_place(const Netlist<>& net_list, sprintf(msg, "Initial Placement. Cost: %g BB Cost: %g TD Cost %g \t Channel Factor: %d", costs.cost, costs.bb_cost, costs.timing_cost, width_fac); - if (noc_opts.noc) { - sprintf(msg, - "\nInitial NoC Placement Costs. " - "cost: %g, " - "aggregate_bandwidth_cost: %g, " - "latency_cost: %g, " - "n_met_latency_constraints: %d, " - "latency_overrun_cost: %g, " - "congestion_cost: %g, " - "accum_congested_ratio: %g, " - "n_congested_links: %d \n", - calculate_noc_cost(costs.noc_cost_terms, costs.noc_cost_norm_factors, noc_opts), - costs.noc_cost_terms.aggregate_bandwidth, - costs.noc_cost_terms.latency, - get_number_of_traffic_flows_with_latency_cons_met(), - costs.noc_cost_terms.latency_overrun, - costs.noc_cost_terms.congestion, - get_total_congestion_bandwidth_ratio(), - get_number_of_congested_noc_links()); - - - } //Draw the initial placement update_screen(ScreenUpdatePriority::MAJOR, msg, PLACEMENT, timing_info); @@ -932,6 +894,7 @@ void try_place(const Netlist<>& net_list, //allocate helper vectors that are used by many move generators place_move_ctx.X_coord.resize(10, 0); place_move_ctx.Y_coord.resize(10, 0); + place_move_ctx.layer_coord.resize(10, 0); //allocate move type statistics vectors MoveTypeStat move_type_stat; @@ -1064,7 +1027,7 @@ void try_place(const Netlist<>& net_list, //#endif } while (state.outer_loop_update(stats.success_rate, costs, placer_opts, annealing_sched)); - /* Outer loop of the simmulated annealing ends */ + /* Outer loop of the simulated annealing ends */ } //skip_anneal ends /* Start Quench */ @@ -1082,7 +1045,7 @@ void try_place(const Netlist<>& net_list, placer_setup_slacks.get(), pin_timing_invalidator.get(), timing_info.get()); - //move the appropoiate move_generator to be the current used move generator + //move the appropriate move_generator to be the current used move generator assign_current_move_generator(move_generator, move_generator2, agent_state, placer_opts, true, current_move_generator); @@ -1204,43 +1167,16 @@ void try_place(const Netlist<>& net_list, costs.bb_cost, costs.timing_cost); // print the noc costs info if (noc_opts.noc) { - sprintf(msg, - "\nNoC Placement Costs. " - "cost: %g, " - "aggregate_bandwidth_cost: %g, " - "latency_cost: %g, " - "n_met_latency_constraints: %d, " - "latency_overrun_cost: %g, " - "congestion_cost: %g, " - "accum_congested_ratio: %g, " - "n_congested_links: %d \n", - calculate_noc_cost(costs.noc_cost_terms, costs.noc_cost_norm_factors, noc_opts), - costs.noc_cost_terms.aggregate_bandwidth, - costs.noc_cost_terms.latency, - get_number_of_traffic_flows_with_latency_cons_met(), - costs.noc_cost_terms.latency_overrun, - costs.noc_cost_terms.congestion, - get_total_congestion_bandwidth_ratio(), - get_number_of_congested_noc_links()); - - VTR_LOG("\nNoC Placement Costs. " - "cost: %g, " - "aggregate_bandwidth_cost: %g, " - "latency_cost: %g, " - "n_met_latency_constraints: %d, " - "latency_overrun_cost: %g, " - "congestion_cost: %g, " - "accum_congested_ratio: %g, " - "n_congested_links: %d \n", - calculate_noc_cost(costs.noc_cost_terms, costs.noc_cost_norm_factors, noc_opts), - costs.noc_cost_terms.aggregate_bandwidth, - costs.noc_cost_terms.latency, - get_number_of_traffic_flows_with_latency_cons_met(), - costs.noc_cost_terms.latency_overrun, - costs.noc_cost_terms.congestion, - get_total_congestion_bandwidth_ratio(), - get_number_of_congested_noc_links()); + print_noc_costs("\nNoC Placement Costs", costs, noc_opts); + +#ifdef ENABLE_NOC_SAT_ROUTING + if (costs.noc_cost_terms.congestion > 0.0) { + VTR_LOG("NoC routing configuration is congested. Invoking the SAT NoC router.\n"); + invoke_sat_router(costs, noc_opts, placer_opts.seed); + } +#endif //ENABLE_NOC_SAT_ROUTING } + update_screen(ScreenUpdatePriority::MAJOR, msg, PLACEMENT, timing_info); // Print out swap statistics print_resources_utilization(); @@ -1480,7 +1416,6 @@ static void recompute_costs_from_scratch(const t_placer_opts& placer_opts, "noc_congestion_cost"); } costs->noc_cost_terms.congestion = new_noc_cost.congestion; - } } @@ -1710,8 +1645,8 @@ static e_move_result try_swap(const t_annealing_state* state, if (manual_move_enabled) { #ifndef NO_GRAPHICS create_move_outcome = manual_move_display_and_propose(manual_move_generator, blocks_affected, proposed_action.move_type, rlim, placer_opts, criticalities); -#else //NO_GRAPHICS - // Cast to void to explicitly avoid warning. +#else //NO_GRAPHICS + //Cast to void to explicitly avoid warning. (void)manual_move_generator; #endif //NO_GRAPHICS } else if (router_block_move) { @@ -1820,7 +1755,6 @@ static e_move_result try_swap(const t_annealing_state* state, delta_c = bb_delta_c * costs->bb_cost_norm; } - NocCostTerms noc_delta_c; // change in NoC cost /* Update the NoC datastructure and costs*/ if (noc_opts.noc) { @@ -1955,6 +1889,8 @@ static e_move_result try_swap(const t_annealing_state* state, if (!router_block_move) { calculate_reward_and_process_outcome(placer_opts, move_outcome_stats, delta_c, timing_bb_factor, move_generator); + } else { +// std::cout << "Group move delta cost: " << delta_c << std::endl; } #ifdef VTR_ENABLE_DEBUG_LOGGING @@ -2393,8 +2329,8 @@ static float analyze_setup_slack_cost(const PlacerSetupSlacks* setup_slacks) { } //Sort in ascending order, from the worse slack value to the best - std::sort(original_setup_slacks.begin(), original_setup_slacks.end()); - std::sort(proposed_setup_slacks.begin(), proposed_setup_slacks.end()); + std::stable_sort(original_setup_slacks.begin(), original_setup_slacks.end()); + std::stable_sort(proposed_setup_slacks.begin(), proposed_setup_slacks.end()); //Check the first pair of slack values that are different //If found, return their difference @@ -2818,8 +2754,8 @@ static void get_bb_from_scratch(ClusterNetId net_id, t_bb& coords, t_bb& num_on_edges, vtr::NdMatrixProxy num_sink_pin_layer) { - int pnum, x, y, pin_layer, xmin, xmax, ymin, ymax; - int xmin_edge, xmax_edge, ymin_edge, ymax_edge; + int pnum, x, y, pin_layer, xmin, xmax, ymin, ymax, layer_min, layer_max; + int xmin_edge, xmax_edge, ymin_edge, ymax_edge, layer_min_edge, layer_max_edge; auto& cluster_ctx = g_vpr_ctx.clustering(); auto& place_ctx = g_vpr_ctx.placement(); @@ -2833,18 +2769,25 @@ static void get_bb_from_scratch(ClusterNetId net_id, + physical_tile_type(bnum)->pin_width_offset[pnum]; y = place_ctx.block_locs[bnum].loc.y + physical_tile_type(bnum)->pin_height_offset[pnum]; + pin_layer = place_ctx.block_locs[bnum].loc.layer; x = max(min(x, grid.width() - 2), 1); y = max(min(y, grid.height() - 2), 1); + pin_layer = max(min(pin_layer, grid.get_num_layers() - 1), 0); xmin = x; ymin = y; + layer_min = pin_layer; xmax = x; ymax = y; + layer_max = pin_layer; + xmin_edge = 1; ymin_edge = 1; + layer_min_edge = 1; xmax_edge = 1; ymax_edge = 1; + layer_max_edge = 1; for (int layer_num = 0; layer_num < grid.get_num_layers(); layer_num++) { num_sink_pin_layer[layer_num] = 0; @@ -2868,6 +2811,7 @@ static void get_bb_from_scratch(ClusterNetId net_id, x = max(min(x, grid.width() - 2), 1); //-2 for no perim channels y = max(min(y, grid.height() - 2), 1); //-2 for no perim channels + pin_layer = max(min(pin_layer, grid.get_num_layers() - 1), 0); if (x == xmin) { xmin_edge++; @@ -2895,6 +2839,19 @@ static void get_bb_from_scratch(ClusterNetId net_id, ymax_edge = 1; } + if (pin_layer == layer_min) { + layer_min_edge++; + } + if (pin_layer == layer_max) { + layer_max_edge++; + } else if (pin_layer < layer_min) { + layer_min = pin_layer; + layer_min_edge = 1; + } else if (pin_layer > layer_max) { + layer_max = pin_layer; + layer_max_edge = 1; + } + num_sink_pin_layer[pin_layer]++; } @@ -2904,11 +2861,18 @@ static void get_bb_from_scratch(ClusterNetId net_id, coords.xmax = xmax; coords.ymin = ymin; coords.ymax = ymax; + coords.layer_min = layer_min; + coords.layer_max = layer_max; + VTR_ASSERT_DEBUG(layer_min >= 0 && layer_min < device_ctx.grid.get_num_layers()); + VTR_ASSERT_DEBUG(layer_max >= 0 && layer_max < device_ctx.grid.get_num_layers()); + num_on_edges.xmin = xmin_edge; num_on_edges.xmax = xmax_edge; num_on_edges.ymin = ymin_edge; num_on_edges.ymax = ymax_edge; + num_on_edges.layer_min = layer_min_edge; + num_on_edges.layer_max = layer_max_edge; } /* This routine finds the bounding box of each net from scratch when the bounding box is of type per-layer (i.e. * @@ -3163,7 +3127,7 @@ static void get_non_updateable_bb(ClusterNetId net_id, vtr::NdMatrixProxy num_sink_pin_layer) { //TODO: account for multiple physical pin instances per logical pin - int xmax, ymax, xmin, ymin, x, y, layer; + int xmax, ymax, layer_max, xmin, ymin, layer_min, x, y, layer; int pnum; auto& cluster_ctx = g_vpr_ctx.clustering(); @@ -3177,11 +3141,14 @@ static void get_non_updateable_bb(ClusterNetId net_id, + physical_tile_type(bnum)->pin_width_offset[pnum]; y = place_ctx.block_locs[bnum].loc.y + physical_tile_type(bnum)->pin_height_offset[pnum]; + layer = place_ctx.block_locs[bnum].loc.layer; xmin = x; ymin = y; + layer_min = layer; xmax = x; ymax = y; + layer_max = layer; for (int layer_num = 0; layer_num < device_ctx.grid.get_num_layers(); layer_num++) { num_sink_pin_layer[layer_num] = 0; @@ -3208,6 +3175,12 @@ static void get_non_updateable_bb(ClusterNetId net_id, ymax = y; } + if (layer < layer_min) { + layer_min = layer; + } else if (layer > layer_max) { + layer_max = layer; + } + num_sink_pin_layer[layer]++; } @@ -3221,8 +3194,10 @@ static void get_non_updateable_bb(ClusterNetId net_id, bb_coord_new.xmin = max(min(xmin, device_ctx.grid.width() - 2), 1); //-2 for no perim channels bb_coord_new.ymin = max(min(ymin, device_ctx.grid.height() - 2), 1); //-2 for no perim channels + bb_coord_new.layer_min = max(min(layer_min, device_ctx.grid.get_num_layers() - 1), 0); bb_coord_new.xmax = max(min(xmax, device_ctx.grid.width() - 2), 1); //-2 for no perim channels bb_coord_new.ymax = max(min(ymax, device_ctx.grid.height() - 2), 1); //-2 for no perim channels + bb_coord_new.layer_max = max(min(layer_max, device_ctx.grid.get_num_layers() - 1), 0); } static void get_non_updateable_layer_bb(ClusterNetId net_id, @@ -3322,8 +3297,10 @@ static void update_bb(ClusterNetId net_id, pin_new_loc.x = max(min(pin_new_loc.x, device_ctx.grid.width() - 2), 1); //-2 for no perim channels pin_new_loc.y = max(min(pin_new_loc.y, device_ctx.grid.height() - 2), 1); //-2 for no perim channels + pin_new_loc.layer_num = max(min(pin_new_loc.layer_num, device_ctx.grid.get_num_layers() - 1), 0); pin_old_loc.x = max(min(pin_old_loc.x, device_ctx.grid.width() - 2), 1); //-2 for no perim channels pin_old_loc.y = max(min(pin_old_loc.y, device_ctx.grid.height() - 2), 1); //-2 for no perim channels + pin_old_loc.layer_num = max(min(pin_old_loc.layer_num, device_ctx.grid.get_num_layers() - 1), 0); /* Check if the net had been updated before. */ if (bb_updated_before[net_id] == GOT_FROM_SCRATCH) { @@ -3359,7 +3336,7 @@ static void update_bb(ClusterNetId net_id, bb_edge_new.xmax = curr_bb_edge->xmax - 1; bb_coord_new.xmax = curr_bb_coord->xmax; } - } else { /* Move to left, old postion was not at xmax. */ + } else { /* Move to left, old position was not at xmax. */ bb_coord_new.xmax = curr_bb_coord->xmax; bb_edge_new.xmax = curr_bb_edge->xmax; } @@ -3503,6 +3480,75 @@ static void update_bb(ClusterNetId net_id, num_sink_pin_layer_new[pin_new_loc.layer_num] = (curr_num_sink_pin_layer)[pin_new_loc.layer_num] + 1; } } + + if (pin_new_loc.layer_num < pin_old_loc.layer_num) { + if (pin_old_loc.layer_num == curr_bb_coord->layer_max) { + if (curr_bb_edge->layer_max == 1) { + get_bb_from_scratch(net_id, bb_coord_new, bb_edge_new, num_sink_pin_layer_new); + bb_updated_before[net_id] = GOT_FROM_SCRATCH; + return; + } else { + bb_edge_new.layer_max = curr_bb_edge->layer_max - 1; + bb_coord_new.layer_max = curr_bb_coord->layer_max; + } + } else { + bb_coord_new.layer_max = curr_bb_coord->layer_max; + bb_edge_new.layer_max = curr_bb_edge->layer_max; + } + + + if (pin_new_loc.layer_num < curr_bb_coord->layer_min) { + bb_coord_new.layer_min = pin_new_loc.layer_num; + bb_edge_new.layer_min = 1; + } else if (pin_new_loc.layer_num == curr_bb_coord->layer_min) { + bb_coord_new.layer_min = pin_new_loc.layer_num; + bb_edge_new.layer_min = curr_bb_edge->layer_min + 1; + } else { + bb_coord_new.layer_min = curr_bb_coord->layer_min; + bb_edge_new.layer_min = curr_bb_edge->layer_min; + } + + } else if (pin_new_loc.layer_num > pin_old_loc.layer_num) { + + + if (pin_old_loc.layer_num == curr_bb_coord->layer_min) { + if (curr_bb_edge->layer_min == 1) { + get_bb_from_scratch(net_id, bb_coord_new, bb_edge_new, num_sink_pin_layer_new); + bb_updated_before[net_id] = GOT_FROM_SCRATCH; + return; + } else { + bb_edge_new.layer_min = curr_bb_edge->layer_min - 1; + bb_coord_new.layer_min = curr_bb_coord->layer_min; + } + } else { + bb_coord_new.layer_min = curr_bb_coord->layer_min; + bb_edge_new.layer_min = curr_bb_edge->layer_min; + } + + if (pin_new_loc.layer_num > curr_bb_coord->layer_max) { + bb_coord_new.layer_max = pin_new_loc.layer_num; + bb_edge_new.layer_max = 1; + } else if (pin_new_loc.layer_num == curr_bb_coord->layer_max) { + bb_coord_new.layer_max = pin_new_loc.layer_num; + bb_edge_new.layer_max = curr_bb_edge->layer_max + 1; + } else { + bb_coord_new.layer_max = curr_bb_coord->layer_max; + bb_edge_new.layer_max = curr_bb_edge->layer_max; + } + + + } else { + bb_coord_new.layer_min = curr_bb_coord->layer_min; + bb_coord_new.layer_max = curr_bb_coord->layer_max; + bb_edge_new.layer_min = curr_bb_edge->layer_min; + bb_edge_new.layer_max = curr_bb_edge->layer_max; + } + + } else { + bb_coord_new.layer_min = curr_bb_coord->layer_min; + bb_coord_new.layer_max = curr_bb_coord->layer_max; + bb_edge_new.layer_min = curr_bb_edge->layer_min; + bb_edge_new.layer_max = curr_bb_edge->layer_max; } if (bb_updated_before[net_id] == NOT_UPDATED_YET) { @@ -4250,7 +4296,6 @@ static void print_place_status_header(bool noc_enabled) { VTR_LOG( "---- ------ ------- ------- ---------- ---------- ------- ---------- -------- ------- ------- ------ -------- --------- ------ -------- -------- --------- ---------\n"); } - } static void print_place_status(const t_annealing_state& state, diff --git a/vpr/src/place/place_checkpoint.cpp b/vpr/src/place/place_checkpoint.cpp index 73d49e6e80c..86af65142c3 100644 --- a/vpr/src/place/place_checkpoint.cpp +++ b/vpr/src/place/place_checkpoint.cpp @@ -63,7 +63,7 @@ void restore_best_placement(t_placement_checkpoint& placement_checkpoint, * and need to be re-computed from scratch. */ if (noc_opts.noc) { - reinitialize_noc_routing(costs); + reinitialize_noc_routing(costs, {}); } VTR_LOG("\nCheckpoint restored\n"); diff --git a/vpr/src/place/place_constraints.cpp b/vpr/src/place/place_constraints.cpp index f1c5045251b..72f7925ff28 100644 --- a/vpr/src/place/place_constraints.cpp +++ b/vpr/src/place/place_constraints.cpp @@ -33,8 +33,7 @@ int check_placement_floorplanning() { /*returns true if cluster has floorplanning constraints, false if it doesn't*/ bool is_cluster_constrained(ClusterBlockId blk_id) { auto& floorplanning_ctx = g_vpr_ctx.floorplanning(); - PartitionRegion pr; - pr = floorplanning_ctx.cluster_constraints[blk_id]; + const PartitionRegion& pr = floorplanning_ctx.cluster_constraints[blk_id]; return (!pr.empty()); } @@ -42,8 +41,8 @@ bool is_macro_constrained(const t_pl_macro& pl_macro) { bool is_macro_constrained = false; bool is_member_constrained = false; - for (size_t imember = 0; imember < pl_macro.members.size(); imember++) { - ClusterBlockId iblk = pl_macro.members[imember].blk_index; + for (const auto& member : pl_macro.members) { + ClusterBlockId iblk = member.blk_index; is_member_constrained = is_cluster_constrained(iblk); if (is_member_constrained) { @@ -62,25 +61,25 @@ PartitionRegion update_macro_head_pr(const t_pl_macro& pl_macro, const Partition int num_constrained_members = 0; auto& floorplanning_ctx = g_vpr_ctx.floorplanning(); - for (size_t imember = 0; imember < pl_macro.members.size(); imember++) { - ClusterBlockId iblk = pl_macro.members[imember].blk_index; + for (const auto& member : pl_macro.members) { + ClusterBlockId iblk = member.blk_index; is_member_constrained = is_cluster_constrained(iblk); if (is_member_constrained) { num_constrained_members++; - //PartitionRegion of the constrained block - PartitionRegion block_pr; + //PartitionRegion of the constrained block modified for the head according to the offset PartitionRegion modified_pr; - block_pr = floorplanning_ctx.cluster_constraints[iblk]; - std::vector block_regions = block_pr.get_partition_region(); + //PartitionRegion of the constrained block + const PartitionRegion& block_pr = floorplanning_ctx.cluster_constraints[iblk]; + const std::vector& block_regions = block_pr.get_regions(); - for (unsigned int i = 0; i < block_regions.size(); i++) { + for (const auto& block_region : block_regions) { Region modified_reg; - auto offset = pl_macro.members[imember].offset; + auto offset = member.offset; - const auto block_reg_coord = block_regions[i].get_region_rect(); + const auto block_reg_coord = block_region.get_region_rect(); modified_reg.set_region_rect({block_reg_coord.xmin - offset.x, block_reg_coord.ymin - offset.y, @@ -89,8 +88,8 @@ PartitionRegion update_macro_head_pr(const t_pl_macro& pl_macro, const Partition block_reg_coord.layer_num}); //check that subtile is not an invalid value before changing, otherwise it just stays -1 - if (block_regions[i].get_sub_tile() != NO_SUBTILE) { - modified_reg.set_sub_tile(block_regions[i].get_sub_tile() - offset.sub_tile); + if (block_region.get_sub_tile() != NO_SUBTILE) { + modified_reg.set_sub_tile(block_region.get_sub_tile() - offset.sub_tile); } modified_pr.add_to_part_region(modified_reg); @@ -116,13 +115,13 @@ PartitionRegion update_macro_head_pr(const t_pl_macro& pl_macro, const Partition } PartitionRegion update_macro_member_pr(PartitionRegion& head_pr, const t_pl_offset& offset, const PartitionRegion& grid_pr, const t_pl_macro& pl_macro) { - std::vector block_regions = head_pr.get_partition_region(); + const std::vector& block_regions = head_pr.get_regions(); PartitionRegion macro_pr; - for (unsigned int i = 0; i < block_regions.size(); i++) { + for (const auto& block_region : block_regions) { Region modified_reg; - const auto block_reg_coord = block_regions[i].get_region_rect(); + const auto block_reg_coord = block_region.get_region_rect(); modified_reg.set_region_rect({block_reg_coord.xmin + offset.x, block_reg_coord.ymin + offset.y, @@ -131,8 +130,8 @@ PartitionRegion update_macro_member_pr(PartitionRegion& head_pr, const t_pl_offs block_reg_coord.layer_num}); //check that subtile is not an invalid value before changing, otherwise it just stays -1 - if (block_regions[i].get_sub_tile() != NO_SUBTILE) { - modified_reg.set_sub_tile(block_regions[i].get_sub_tile() + offset.sub_tile); + if (block_region.get_sub_tile() != NO_SUBTILE) { + modified_reg.set_sub_tile(block_region.get_sub_tile() + offset.sub_tile); } macro_pr.add_to_part_region(modified_reg); @@ -154,9 +153,9 @@ void print_macro_constraint_error(const t_pl_macro& pl_macro) { VTR_LOG( "Feasible floorplanning constraints could not be calculated for the placement macro. \n" "The placement macro contains the following blocks: \n"); - for (unsigned int i = 0; i < pl_macro.members.size(); i++) { - std::string blk_name = cluster_ctx.clb_nlist.block_name((pl_macro.members[i].blk_index)); - VTR_LOG("Block %s (#%zu) ", blk_name.c_str(), size_t(pl_macro.members[i].blk_index)); + for (const auto& member : pl_macro.members) { + std::string blk_name = cluster_ctx.clb_nlist.block_name((member.blk_index)); + VTR_LOG("Block %s (#%zu) ", blk_name.c_str(), size_t(member.blk_index)); } VTR_LOG("\n"); VPR_ERROR(VPR_ERROR_PLACE, " \n Check that the above-mentioned placement macro blocks have compatible floorplan constraints.\n"); @@ -250,7 +249,7 @@ void load_cluster_constraints() { PartitionRegion empty_pr; floorplanning_ctx.cluster_constraints[cluster_id] = empty_pr; - //if there are any constrainted atoms in the cluster, + //if there are any constrained atoms in the cluster, //we update the cluster's PartitionRegion for (auto atom : *atoms) { PartitionId partid = floorplanning_ctx.constraints.get_atom_partition(atom); @@ -372,7 +371,7 @@ int region_tile_cover(const Region& reg, t_logical_block_type_ptr block_type, t_ } /* - * Used when marking fixed blocks to check whether the ParitionRegion associated with a block + * Used when marking fixed blocks to check whether the PartitionRegion associated with a block * covers one tile. If it covers one tile, it is marked as fixed. If it covers 0 tiles or * more than one tile, it will not be marked as fixed. As soon as it is known that the * PartitionRegion covers more than one tile, there is no need to check further regions @@ -380,7 +379,7 @@ int region_tile_cover(const Region& reg, t_logical_block_type_ptr block_type, t_ */ bool is_pr_size_one(PartitionRegion& pr, t_logical_block_type_ptr block_type, t_pl_loc& loc) { auto& device_ctx = g_vpr_ctx.device(); - std::vector regions = pr.get_partition_region(); + const std::vector& regions = pr.get_regions(); bool pr_size_one; int pr_size = 0; int reg_size; @@ -439,11 +438,11 @@ bool is_pr_size_one(PartitionRegion& pr, t_logical_block_type_ptr block_type, t_ } int get_part_reg_size(PartitionRegion& pr, t_logical_block_type_ptr block_type, GridTileLookup& grid_tiles) { - std::vector part_reg = pr.get_partition_region(); + const std::vector& regions = pr.get_regions(); int num_tiles = 0; - for (unsigned int i_reg = 0; i_reg < part_reg.size(); i_reg++) { - num_tiles += grid_tiles.region_tile_count(part_reg[i_reg], block_type); + for (const auto& region : regions) { + num_tiles += grid_tiles.region_tile_count(region, block_type); } return num_tiles; diff --git a/vpr/src/place/place_util.cpp b/vpr/src/place/place_util.cpp index 6c7f506ee3e..52b9fdeb3d1 100644 --- a/vpr/src/place/place_util.cpp +++ b/vpr/src/place/place_util.cpp @@ -493,4 +493,3 @@ NocCostTerms& NocCostTerms::operator+=(const NocCostTerms& noc_delta_cost) { return *this; } - diff --git a/vpr/src/place/place_util.h b/vpr/src/place/place_util.h index 12bd6ce745b..d65d460446c 100644 --- a/vpr/src/place/place_util.h +++ b/vpr/src/place/place_util.h @@ -98,18 +98,18 @@ class t_placer_costs { public: //Mutator /** - * @brief Mutator: updates the norm factors in the outer loop iteration. - * - * At each temperature change we update these values to be used - * for normalizing the trade-off between timing and wirelength (bb) - */ + * @brief Mutator: updates the norm factors in the outer loop iteration. + * + * At each temperature change we update these values to be used + * for normalizing the trade-off between timing and wirelength (bb) + */ void update_norm_factors(); /** - * @brief Accumulates NoC cost difference terms - * - * @param noc_delta_cost Cost difference for NoC-related costs terms - */ + * @brief Accumulates NoC cost difference terms + * + * @param noc_delta_cost Cost difference for NoC-related costs terms + */ t_placer_costs& operator+=(const NocCostTerms& noc_delta_cost); private: @@ -193,15 +193,15 @@ class t_annealing_state { public: //Mutator /** - * @brief Update the annealing state according to the annealing schedule selected. - * - * USER_SCHED: A manual fixed schedule with fixed alpha and exit criteria. - * AUTO_SCHED: A more sophisticated schedule where alpha varies based on success ratio. - * DUSTY_SCHED: This schedule jumps backward and slows down in response to success ratio. - * See doc/src/vpr/dusty_sa.rst for more details. - * - * @return True->continues the annealing. False->exits the annealing. - */ + * @brief Update the annealing state according to the annealing schedule selected. + * + * USER_SCHED: A manual fixed schedule with fixed alpha and exit criteria. + * AUTO_SCHED: A more sophisticated schedule where alpha varies based on success ratio. + * DUSTY_SCHED: This schedule jumps backward and slows down in response to success ratio. + * See doc/src/vpr/dusty_sa.rst for more details. + * + * @return True->continues the annealing. False->exits the annealing. + */ bool outer_loop_update(float success_rate, const t_placer_costs& costs, const t_placer_opts& placer_opts, @@ -209,35 +209,35 @@ class t_annealing_state { private: //Mutator /** - * @brief Update the range limiter to keep acceptance prob. near 0.44. - * - * Use a floating point rlim to allow gradual transitions at low temps. - * The range is bounded by 1 (FINAL_RLIM) and the grid size (UPPER_RLIM). - */ + * @brief Update the range limiter to keep acceptance prob. near 0.44. + * + * Use a floating point rlim to allow gradual transitions at low temps. + * The range is bounded by 1 (FINAL_RLIM) and the grid size (UPPER_RLIM). + */ inline void update_rlim(float success_rate); /** - * @brief Update the criticality exponent. - * - * When rlim shrinks towards the FINAL_RLIM value (indicating - * that we are fine-tuning a more optimized placement), we can - * focus more on a smaller number of critical connections. - * To achieve this, we make the crit_exponent sharper, so that - * critical connections would become more critical than before. - * - * We calculate how close rlim is to its final value comparing - * to its initial value. Then, we apply the same scaling factor - * on the crit_exponent so that it lands on the suitable value - * between td_place_exp_first and td_place_exp_last. The scaling - * factor is calculated and applied linearly. - */ + * @brief Update the criticality exponent. + * + * When rlim shrinks towards the FINAL_RLIM value (indicating + * that we are fine-tuning a more optimized placement), we can + * focus more on a smaller number of critical connections. + * To achieve this, we make the crit_exponent sharper, so that + * critical connections would become more critical than before. + * + * We calculate how close rlim is to its final value comparing + * to its initial value. Then, we apply the same scaling factor + * on the crit_exponent so that it lands on the suitable value + * between td_place_exp_first and td_place_exp_last. The scaling + * factor is calculated and applied linearly. + */ inline void update_crit_exponent(const t_placer_opts& placer_opts); /** - * @brief Update the move limit based on the success rate. - * - * The value is bounded between 1 and move_lim_max. - */ + * @brief Update the move limit based on the success rate. + * + * The value is bounded between 1 and move_lim_max. + */ inline void update_move_lim(float success_target, float success_rate); }; diff --git a/vpr/src/place/placer_context.h b/vpr/src/place/placer_context.h index f5e56bbf37f..5a7e4c6860f 100644 --- a/vpr/src/place/placer_context.h +++ b/vpr/src/place/placer_context.h @@ -111,8 +111,11 @@ struct PlacerMoveContext : public Context { // Scratch vectors that are used by different directed moves for temporary calculations (allocated here to save runtime) // These vectors will grow up with the net size as it is mostly used to save coords of the net pins or net bb edges + // Given that placement moves involve operations on each coordinate independently, we chose to + // utilize a Struct of Arrays (SoA) rather than an Array of Struct (AoS). std::vector X_coord; std::vector Y_coord; + std::vector layer_coord; // Container to save the highly critical pins (higher than a timing criticality limit setted by commandline option) std::vector> highly_crit_pins; diff --git a/vpr/src/place/simpleRL_move_generator.h b/vpr/src/place/simpleRL_move_generator.h index babd0423813..179c653f965 100644 --- a/vpr/src/place/simpleRL_move_generator.h +++ b/vpr/src/place/simpleRL_move_generator.h @@ -216,7 +216,7 @@ class SimpleRLMoveGenerator : public MoveGenerator { */ template::value || std::is_same::value>::type> - explicit SimpleRLMoveGenerator(std::unique_ptr& agent); + explicit SimpleRLMoveGenerator(std::unique_ptr& agent, float noc_attraction_weight, size_t high_fanout_thresh); // Updates affected_blocks with the proposed move, while respecting the current rlim e_create_move propose_move(t_pl_blocks_to_be_moved& blocks_affected, @@ -230,8 +230,12 @@ class SimpleRLMoveGenerator : public MoveGenerator { }; template -SimpleRLMoveGenerator::SimpleRLMoveGenerator(std::unique_ptr& agent) { - all_moves.resize((int)e_move_type::NUMBER_OF_AUTO_MOVES); +SimpleRLMoveGenerator::SimpleRLMoveGenerator(std::unique_ptr& agent, float noc_attraction_weight, size_t high_fanout_thresh) { + if (noc_attraction_weight > 0.0f) { + all_moves.resize((int)e_move_type::NUMBER_OF_AUTO_MOVES); + } else { + all_moves.resize((int)e_move_type::NUMBER_OF_AUTO_MOVES - 1); + } all_moves[e_move_type::UNIFORM] = std::make_unique(); all_moves[e_move_type::MEDIAN] = std::make_unique(); @@ -240,6 +244,9 @@ SimpleRLMoveGenerator::SimpleRLMoveGenerator(std::unique_ptr& agent) { all_moves[e_move_type::W_MEDIAN] = std::make_unique(); all_moves[e_move_type::CRIT_UNIFORM] = std::make_unique(); all_moves[e_move_type::FEASIBLE_REGION] = std::make_unique(); + if (noc_attraction_weight > 0.0f) { + all_moves[e_move_type::NOC_ATTRACTION_CENTROID] = std::make_unique(noc_attraction_weight, high_fanout_thresh); + } karmed_bandit_agent = std::move(agent); } diff --git a/vpr/src/place/timing_place_lookup.cpp b/vpr/src/place/timing_place_lookup.cpp index d0aacd8f78a..43d3b735f5e 100644 --- a/vpr/src/place/timing_place_lookup.cpp +++ b/vpr/src/place/timing_place_lookup.cpp @@ -195,6 +195,7 @@ std::unique_ptr compute_place_delay_model(const t_placer_opts& router_opts.read_router_lookahead, segment_inf, is_flat); + RouterDelayProfiler route_profiler(net_list, router_lookahead, is_flat); int longest_length = get_longest_segment_length(segment_inf); @@ -871,7 +872,7 @@ float delay_reduce(std::vector& delays, e_reducer reducer) { auto itr = std::max_element(delays.begin(), delays.end()); delay = *itr; } else if (reducer == e_reducer::MEDIAN) { - std::sort(delays.begin(), delays.end()); + std::stable_sort(delays.begin(), delays.end()); delay = vtr::median(delays.begin(), delays.end()); } else if (reducer == e_reducer::ARITHMEAN) { delay = vtr::arithmean(delays.begin(), delays.end()); diff --git a/vpr/src/place/weighted_centroid_move_generator.cpp b/vpr/src/place/weighted_centroid_move_generator.cpp index d33b6fa2ebe..93dd5c796f8 100644 --- a/vpr/src/place/weighted_centroid_move_generator.cpp +++ b/vpr/src/place/weighted_centroid_move_generator.cpp @@ -40,7 +40,7 @@ e_create_move WeightedCentroidMoveGenerator::propose_move(t_pl_blocks_to_be_move // Centroid location is not necessarily a valid location, and the downstream location expect a valid // layer for "to" location. So if the layer is not valid, we set it to the same layer as from loc. - to.layer = (centroid.layer < 0) ? from.layer : centroid.layer; + centroid.layer = (centroid.layer < 0) ? from.layer : centroid.layer; if (!find_to_loc_centroid(cluster_from_type, from, centroid, range_limiters, to, b_from)) { return e_create_move::ABORT; } diff --git a/vpr/src/place/weighted_median_move_generator.cpp b/vpr/src/place/weighted_median_move_generator.cpp index 2d343cd3347..a9e2aaac526 100644 --- a/vpr/src/place/weighted_median_move_generator.cpp +++ b/vpr/src/place/weighted_median_move_generator.cpp @@ -28,7 +28,7 @@ e_create_move WeightedMedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& auto& place_move_ctx = g_placer_ctx.mutable_move(); int num_layers = g_vpr_ctx.device().grid.get_num_layers(); - bool is_multi_layer = (num_layers > 1); + t_pl_loc from = place_ctx.block_locs[b_from].loc; auto cluster_from_type = cluster_ctx.clb_nlist.block_type(b_from); @@ -45,6 +45,7 @@ e_create_move WeightedMedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& //reused to save allocation time place_move_ctx.X_coord.clear(); place_move_ctx.Y_coord.clear(); + place_move_ctx.layer_coord.clear(); std::vector layer_blk_cnt(num_layers, 0); //true if the net is a feedback from the block to itself (all the net terminals are connected to the same block) @@ -76,27 +77,19 @@ e_create_move WeightedMedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& place_move_ctx.X_coord.insert(place_move_ctx.X_coord.end(), ceil(coords.xmax.criticality * CRIT_MULT_FOR_W_MEDIAN), coords.xmax.edge); place_move_ctx.Y_coord.insert(place_move_ctx.Y_coord.end(), ceil(coords.ymin.criticality * CRIT_MULT_FOR_W_MEDIAN), coords.ymin.edge); place_move_ctx.Y_coord.insert(place_move_ctx.Y_coord.end(), ceil(coords.ymax.criticality * CRIT_MULT_FOR_W_MEDIAN), coords.ymax.edge); - // If multile layers are available, I need to keep track of how many sinks are in each layer. - if (is_multi_layer) { - for (int layer_num = 0; layer_num < num_layers; layer_num++) { - layer_blk_cnt[layer_num] += place_move_ctx.num_sink_pin_layer[size_t(net_id)][layer_num]; - } - // If the pin under consideration if of type sink, it is counted in place_move_ctx.num_sink_pin_layer, and we don't want to consider the moving pins - if (cluster_ctx.clb_nlist.pin_type(pin_id) != PinType::DRIVER) { - VTR_ASSERT(layer_blk_cnt[from.layer] > 0); - layer_blk_cnt[from.layer]--; - } - } + place_move_ctx.layer_coord.insert(place_move_ctx.layer_coord.end(), ceil(coords.layer_min.criticality * CRIT_MULT_FOR_W_MEDIAN), coords.layer_min.edge); + place_move_ctx.layer_coord.insert(place_move_ctx.layer_coord.end(), ceil(coords.layer_max.criticality * CRIT_MULT_FOR_W_MEDIAN), coords.layer_max.edge); } - if ((place_move_ctx.X_coord.empty()) || (place_move_ctx.Y_coord.empty())) { - VTR_LOGV_DEBUG(g_vpr_ctx.placement().f_placer_debug, "\tMove aborted - X_coord and y_coord are empty\n"); + if ((place_move_ctx.X_coord.empty()) || (place_move_ctx.Y_coord.empty()) || (place_move_ctx.layer_coord.empty())) { + VTR_LOGV_DEBUG(g_vpr_ctx.placement().f_placer_debug, "\tMove aborted - X_coord or y_coord or layer_coord are empty\n"); return e_create_move::ABORT; } //calculate the weighted median region - std::sort(place_move_ctx.X_coord.begin(), place_move_ctx.X_coord.end()); - std::sort(place_move_ctx.Y_coord.begin(), place_move_ctx.Y_coord.end()); + std::stable_sort(place_move_ctx.X_coord.begin(), place_move_ctx.X_coord.end()); + std::stable_sort(place_move_ctx.Y_coord.begin(), place_move_ctx.Y_coord.end()); + std::stable_sort(place_move_ctx.layer_coord.begin(), place_move_ctx.layer_coord.end()); if (place_move_ctx.X_coord.size() == 1) { limit_coords.xmin = place_move_ctx.X_coord[0]; @@ -114,6 +107,14 @@ e_create_move WeightedMedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& limit_coords.ymax = place_move_ctx.Y_coord[floor((place_move_ctx.Y_coord.size() - 1) / 2) + 1]; } + if (place_move_ctx.layer_coord.size() == 1) { + limit_coords.layer_min = place_move_ctx.layer_coord[0]; + limit_coords.layer_max = limit_coords.layer_min; + } else { + limit_coords.layer_min = place_move_ctx.layer_coord[floor((place_move_ctx.layer_coord.size() - 1) / 2)]; + limit_coords.layer_max = place_move_ctx.layer_coord[floor((place_move_ctx.layer_coord.size() - 1) / 2) + 1]; + } + t_range_limiters range_limiters{rlim, place_move_ctx.first_rlim, placer_opts.place_dm_rlim}; @@ -121,17 +122,8 @@ e_create_move WeightedMedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& t_pl_loc w_median_point; w_median_point.x = (limit_coords.xmin + limit_coords.xmax) / 2; w_median_point.y = (limit_coords.ymin + limit_coords.ymax) / 2; + w_median_point.layer = ((limit_coords.layer_min + limit_coords.layer_max) / 2); - // If multiple layers are available, we would choose the median layer, otherwise the same layer (layer #0) as the from_loc would be chosen - //#TODO: Since we are now only considering 2 layers, the layer with maximum number of sinks should be chosen. we need to update it to get the true median - if (is_multi_layer) { - int layer_num = std::distance(layer_blk_cnt.begin(), std::max_element(layer_blk_cnt.begin(), layer_blk_cnt.end())); - w_median_point.layer = layer_num; - to.layer = layer_num; - } else { - w_median_point.layer = from.layer; - to.layer = from.layer; - } if (!find_to_loc_centroid(cluster_from_type, from, w_median_point, range_limiters, to, b_from)) { return e_create_move::ABORT; } @@ -162,8 +154,8 @@ e_create_move WeightedMedianMoveGenerator::propose_move(t_pl_blocks_to_be_moved& * - criticalities: the timing criticalities of all connections */ static void get_bb_cost_for_net_excluding_block(ClusterNetId net_id, ClusterBlockId, ClusterPinId moving_pin_id, const PlacerCriticalities* criticalities, t_bb_cost* coords, bool& skip_net) { - int pnum, x, y, xmin, xmax, ymin, ymax; - float xmin_cost, xmax_cost, ymin_cost, ymax_cost, cost; + int pnum, x, y, layer, xmin, xmax, ymin, ymax, layer_min, layer_max; + float xmin_cost, xmax_cost, ymin_cost, ymax_cost, layer_min_cost, layer_max_cost, cost; skip_net = true; @@ -171,11 +163,16 @@ static void get_bb_cost_for_net_excluding_block(ClusterNetId net_id, ClusterBloc xmax = 0; ymin = 0; ymax = 0; + layer_min = 0; + layer_max = 0; + cost = 0.0; xmin_cost = 0.0; xmax_cost = 0.0; ymin_cost = 0.0; ymax_cost = 0.0; + layer_min_cost = 0.; + layer_max_cost = 0.; auto& cluster_ctx = g_vpr_ctx.clustering(); auto& place_ctx = g_vpr_ctx.placement(); @@ -187,6 +184,7 @@ static void get_bb_cost_for_net_excluding_block(ClusterNetId net_id, ClusterBloc int ipin; for (auto pin_id : cluster_ctx.clb_nlist.net_pins(net_id)) { bnum = cluster_ctx.clb_nlist.pin_block(pin_id); + layer = place_ctx.block_locs[bnum].loc.layer; if (pin_id != moving_pin_id) { skip_net = false; @@ -220,6 +218,10 @@ static void get_bb_cost_for_net_excluding_block(ClusterNetId net_id, ClusterBloc xmax_cost = cost; ymax = y; ymax_cost = cost; + layer_min = layer; + layer_min_cost = cost; + layer_max = layer; + layer_max_cost = cost; is_first_block = false; } else { if (x < xmin) { @@ -237,6 +239,20 @@ static void get_bb_cost_for_net_excluding_block(ClusterNetId net_id, ClusterBloc ymax = y; ymax_cost = cost; } + + if (layer < layer_min) { + layer_min = layer; + layer_min_cost = cost; + } else if (layer > layer_max) { + layer_max = layer; + layer_max_cost = cost; + } else if (layer == layer_min) { + if (cost > layer_min_cost) + layer_min_cost = cost; + } else if (layer == layer_max) { + if (cost > layer_max_cost) + layer_max_cost = cost; + } } } } @@ -246,4 +262,6 @@ static void get_bb_cost_for_net_excluding_block(ClusterNetId net_id, ClusterBloc coords->xmax = {xmax, xmax_cost}; coords->ymin = {ymin, ymin_cost}; coords->ymax = {ymax, ymax_cost}; + coords->layer_min = {layer_min, layer_min_cost}; + coords->layer_max = {layer_max, layer_max_cost}; } diff --git a/vpr/src/power/power.cpp b/vpr/src/power/power.cpp index 94d55479580..431166f6ee4 100644 --- a/vpr/src/power/power.cpp +++ b/vpr/src/power/power.cpp @@ -924,6 +924,9 @@ static void power_usage_routing(t_power_usage* power_usage, int seg_index = device_ctx.rr_indexed_data[rr_graph.node_cost_index(rr_id)].seg_index; C_wire = wire_length * rr_graph.rr_segments(RRSegmentId(seg_index)).Cmetal; //(double)power_ctx.commonly_used->tile_length); + if (node_fan_in == 0) { + continue; // Bypass some nodes with 0 fan-in + } VTR_ASSERT(node_power->selected_input < node_fan_in); /* Multiplexor */ diff --git a/vpr/src/route/DecompNetlistRouter.tpp b/vpr/src/route/DecompNetlistRouter.tpp index 95ce65e86e1..fc1a6685e56 100644 --- a/vpr/src/route/DecompNetlistRouter.tpp +++ b/vpr/src/route/DecompNetlistRouter.tpp @@ -128,7 +128,7 @@ void DecompNetlistRouter::route_partition_tree_node(tbb::task_group& g * nets use their own #fanouts. */ std::vector order(node.nets.size() + node.vnets.size()); std::iota(order.begin(), order.end(), 0); - std::sort(order.begin(), order.end(), [&](size_t i, size_t j) -> bool { + std::stable_sort(order.begin(), order.end(), [&](size_t i, size_t j) -> bool { ParentNetId id1 = i < node.nets.size() ? node.nets[i] : node.vnets[i - node.nets.size()].net_id; ParentNetId id2 = j < node.nets.size() ? node.nets[j] : node.vnets[j - node.nets.size()].net_id; return _net_list.net_sinks(id1).size() > _net_list.net_sinks(id2).size(); diff --git a/vpr/src/route/ParallelNetlistRouter.tpp b/vpr/src/route/ParallelNetlistRouter.tpp index 27e2ace66ad..9cae0d84dba 100644 --- a/vpr/src/route/ParallelNetlistRouter.tpp +++ b/vpr/src/route/ParallelNetlistRouter.tpp @@ -42,7 +42,7 @@ void ParallelNetlistRouter::route_partition_tree_node(tbb::task_group& auto& route_ctx = g_vpr_ctx.mutable_routing(); /* Sort so net with most sinks is routed first. */ - std::sort(node.nets.begin(), node.nets.end(), [&](ParentNetId id1, ParentNetId id2) -> bool { + std::stable_sort(node.nets.begin(), node.nets.end(), [&](ParentNetId id1, ParentNetId id2) -> bool { return _net_list.net_sinks(id1).size() > _net_list.net_sinks(id2).size(); }); diff --git a/vpr/src/route/SerialNetlistRouter.tpp b/vpr/src/route/SerialNetlistRouter.tpp index 6dc5d6c2f0e..7927d06c4e2 100644 --- a/vpr/src/route/SerialNetlistRouter.tpp +++ b/vpr/src/route/SerialNetlistRouter.tpp @@ -12,7 +12,7 @@ inline RouteIterResults SerialNetlistRouter::route_netlist(int itry, f /* Sort so net with most sinks is routed first */ auto sorted_nets = std::vector(_net_list.nets().begin(), _net_list.nets().end()); - std::sort(sorted_nets.begin(), sorted_nets.end(), [&](ParentNetId id1, ParentNetId id2) -> bool { + std::stable_sort(sorted_nets.begin(), sorted_nets.end(), [&](ParentNetId id1, ParentNetId id2) -> bool { return _net_list.net_sinks(id1).size() > _net_list.net_sinks(id2).size(); }); diff --git a/vpr/src/route/cb_metrics.cpp b/vpr/src/route/cb_metrics.cpp index 0ad5d0a95a8..7dbe0260e42 100644 --- a/vpr/src/route/cb_metrics.cpp +++ b/vpr/src/route/cb_metrics.cpp @@ -611,7 +611,7 @@ static void get_pin_locations(const t_physical_tile_type_ptr block_type, const e } } /* sort the vector at the current side in increasing order, for good measure */ - sort(pin_locations->at(iside).begin(), pin_locations->at(iside).end()); + std::stable_sort(pin_locations->at(iside).begin(), pin_locations->at(iside).end()); } } /* now we have a vector of vectors [0..3][0..num_pins_on_this_side] specifying which pins are on which side */ diff --git a/vpr/src/route/clock_connection_builders.cpp b/vpr/src/route/clock_connection_builders.cpp index e24bdbe8ea0..d7c41cae408 100644 --- a/vpr/src/route/clock_connection_builders.cpp +++ b/vpr/src/route/clock_connection_builders.cpp @@ -53,14 +53,12 @@ void RoutingToClockConnection::create_switches(const ClockRRGraphBuilder& clock_ std::mt19937 rand_generator; rand_generator.seed(seed); - auto& device_ctx = g_vpr_ctx.device(); + auto& device_ctx = g_vpr_ctx.mutable_device(); + auto& rr_graph_builder = device_ctx.rr_graph_builder; const auto& node_lookup = device_ctx.rr_graph.node_lookup(); RRNodeId virtual_clock_network_root_idx = create_virtual_clock_network_sink_node(switch_location.layer, switch_location.x, switch_location.y); - { - auto& mut_device_ctx = g_vpr_ctx.mutable_device(); - mut_device_ctx.virtual_clock_network_root_idx = size_t(virtual_clock_network_root_idx); - } + rr_graph_builder.set_virtual_clock_network_root_idx(virtual_clock_network_root_idx); // rr_node indices for x and y channel routing wires and clock wires to connect to auto x_wire_indices = node_lookup.find_channel_nodes(switch_location.layer, switch_location.x, switch_location.y, CHANX); @@ -97,6 +95,7 @@ RRNodeId RoutingToClockConnection::create_virtual_clock_network_sink_node(int la auto& rr_graph_builder = device_ctx.rr_graph_builder; auto& node_lookup = device_ctx.rr_graph_builder.node_lookup(); auto& rr_rc_data = device_ctx.rr_rc_data; + auto& arch = device_ctx.arch; rr_graph_builder.emplace_back(); RRNodeId node_index = RRNodeId(rr_graph.num_nodes() - 1); @@ -110,6 +109,7 @@ RRNodeId RoutingToClockConnection::create_virtual_clock_network_sink_node(int la int ptc = max_ptc + 1; rr_graph_builder.set_node_type(node_index, SINK); + rr_graph_builder.set_node_name(node_index, arch->default_clock_network_name); rr_graph_builder.set_node_class_num(node_index, ptc); rr_graph_builder.set_node_coordinates(node_index, x, y, x, y); rr_graph_builder.set_node_layer(node_index, layer); diff --git a/vpr/src/route/clock_network_builders.cpp b/vpr/src/route/clock_network_builders.cpp index d27c2c5e362..40e581a02de 100644 --- a/vpr/src/route/clock_network_builders.cpp +++ b/vpr/src/route/clock_network_builders.cpp @@ -35,6 +35,7 @@ void populate_segment_values(int seg_index, segment_inf[seg_index].arch_opin_switch = -1; segment_inf[seg_index].frac_cb = -1; segment_inf[seg_index].frac_sb = -1; + segment_inf[seg_index].res_type = SegResType::GCLK; } /* diff --git a/vpr/src/route/connection_router.cpp b/vpr/src/route/connection_router.cpp index 4763b9e1018..b02aec74a92 100644 --- a/vpr/src/route/connection_router.cpp +++ b/vpr/src/route/connection_router.cpp @@ -116,11 +116,6 @@ std::tuple ConnectionRouter::timing_driven_route_connection return std::make_tuple(true, nullptr); } - if (cheapest == nullptr) { - VTR_LOG("%s\n", describe_unrouteable_connection(source_node, sink_node, is_flat_).c_str()); - return std::make_tuple(false, nullptr); - } - return std::make_tuple(false, cheapest); } @@ -372,7 +367,7 @@ void ConnectionRouter::timing_driven_expand_cheapest(t_heap* cheapest, VTR_LOGV_DEBUG(router_debug_, " Better cost to %d\n", inode); VTR_LOGV_DEBUG(router_debug_, " New total cost: %g\n", new_total_cost); VTR_LOGV_DEBUG(router_debug_, " New back cost: %g\n", new_back_cost); - VTR_LOGV_DEBUG(router_debug_, " Setting path costs for associated node %d (from %d edge %zu)\n", + VTR_LOGV_DEBUG(router_debug_ && (rr_nodes_.node_type(RRNodeId(cheapest->index)) != t_rr_type::SOURCE), " Setting path costs for associated node %d (from %d edge %zu)\n", cheapest->index, static_cast(rr_graph_->edge_src_node(cheapest->prev_edge())), static_cast(cheapest->prev_edge())); @@ -1126,12 +1121,9 @@ static inline void update_router_stats(RouterStats* router_stats, } #ifdef VTR_ENABLE_DEBUG_LOGGING - const auto& device_ctx = g_vpr_ctx.device(); auto node_type = rr_graph->node_type(rr_node_id); VTR_ASSERT(node_type != NUM_RR_TYPES); - t_physical_tile_type_ptr physical_type = device_ctx.grid.get_physical_type({rr_graph->node_xlow(rr_node_id), - rr_graph->node_ylow(rr_node_id), - rr_graph->node_layer(rr_node_id)}); + const t_vib_inf* vib; if (device_ctx.arch->is_vib_arch) { @@ -1145,6 +1137,7 @@ static inline void update_router_stats(RouterStats* router_stats, vib, node_type, rr_graph->node_ptc_num(rr_node_id))) { + if (is_push) { router_stats->inter_cluster_node_pushes++; router_stats->inter_cluster_node_type_cnt_pushes[node_type]++; @@ -1152,7 +1145,6 @@ static inline void update_router_stats(RouterStats* router_stats, router_stats->inter_cluster_node_pops++; router_stats->inter_cluster_node_type_cnt_pops[node_type]++; } - } else { if (is_push) { router_stats->intra_cluster_node_pushes++; diff --git a/vpr/src/route/overuse_report.cpp b/vpr/src/route/overuse_report.cpp index 87b7a3cf999..78a846752aa 100644 --- a/vpr/src/route/overuse_report.cpp +++ b/vpr/src/route/overuse_report.cpp @@ -230,6 +230,7 @@ static void report_overused_ipin_opin(std::ostream& os, //const t_vib_inf* vib = device_ctx.vib_grid[grid_layer][grid_x][grid_y]; os << "Pin physical number = " << rr_graph.node_pin_num(node_id) << '\n'; if (is_inter_cluster_node(physical_tile, vib, rr_graph.node_type(node_id), rr_graph.node_ptc_num(node_id))) { + os << "On Tile Pin" << "\n"; } else { diff --git a/vpr/src/route/route.cpp b/vpr/src/route/route.cpp index 767418cb936..5a690b1dc55 100644 --- a/vpr/src/route/route.cpp +++ b/vpr/src/route/route.cpp @@ -159,7 +159,8 @@ bool route(const Netlist<>& net_list, VTR_ASSERT(router_lookahead != nullptr); /* Routing parameters */ - float pres_fac = update_draw_pres_fac(router_opts.first_iter_pres_fac); /* Typically 0 -> ignore cong. */ + float pres_fac = router_opts.first_iter_pres_fac; + update_draw_pres_fac(pres_fac); /* Typically 0 -> ignore cong. */ int bb_fac = router_opts.bb_factor; /* When routing conflicts are detected the bounding boxes are scaled @@ -361,7 +362,8 @@ bool route(const Netlist<>& net_list, //Decrease pres_fac so that critical connections will take more direct routes //Note that we use first_iter_pres_fac here (typically zero), and switch to //use initial_pres_fac on the next iteration. - pres_fac = update_draw_pres_fac(router_opts.first_iter_pres_fac); + pres_fac = router_opts.first_iter_pres_fac; + update_draw_pres_fac(pres_fac); //Reduce timing tolerances to re-route more delay-suboptimal signals connections_inf.set_connection_criticality_tolerance(0.7); @@ -378,7 +380,8 @@ bool route(const Netlist<>& net_list, //after the first routing convergence. Since that is often zero, //we want to set pres_fac to a reasonable (i.e. typically non-zero) //value afterwards -- so it grows when multiplied by pres_fac_mult - pres_fac = update_draw_pres_fac(router_opts.initial_pres_fac); + pres_fac = router_opts.initial_pres_fac; + update_draw_pres_fac(pres_fac); } //Have we converged the maximum number of times, did not make any changes, or does it seem @@ -441,12 +444,13 @@ bool route(const Netlist<>& net_list, //Update pres_fac if (itry == 1) { - pres_fac = update_draw_pres_fac(router_opts.initial_pres_fac); + pres_fac = router_opts.initial_pres_fac; + update_draw_pres_fac(pres_fac); } else { pres_fac *= router_opts.pres_fac_mult; - - /* Avoid overflow for high iteration counts, even if acc_cost is big */ - pres_fac = update_draw_pres_fac(std::min(pres_fac, static_cast(HUGE_POSITIVE_FLOAT / 1e5))); + pres_fac = std::min(pres_fac, router_opts.max_pres_fac); + /* Set the maximum pres_fac to the value passed by the command line argument */ + update_draw_pres_fac(pres_fac); // Increase short path criticality if it's having a hard time resolving hold violations due to congestion if (budgeting_inf.if_set()) { diff --git a/vpr/src/route/route_net.tpp b/vpr/src/route/route_net.tpp index aef75c6b0c1..45cff71dd37 100644 --- a/vpr/src/route/route_net.tpp +++ b/vpr/src/route/route_net.tpp @@ -129,7 +129,7 @@ inline NetResultFlags route_net(ConnectionRouter& router, } // compare the criticality of different sink nodes - sort(begin(remaining_targets), end(remaining_targets), [&](int a, int b) { + std::stable_sort(begin(remaining_targets), end(remaining_targets), [&](int a, int b) { return pin_criticality[a] > pin_criticality[b]; }); @@ -145,27 +145,56 @@ inline NetResultFlags route_net(ConnectionRouter& router, // Pre-route to clock source for clock nets (marked as global nets) if (net_list.net_is_global(net_id) && router_opts.two_stage_clock_routing) { - //VTR_ASSERT(router_opts.clock_modeling == DEDICATED_NETWORK); - RRNodeId sink_node(device_ctx.virtual_clock_network_root_idx); - - enable_router_debug(router_opts, net_id, sink_node, itry, &router); - - VTR_LOGV_DEBUG(f_router_debug, "Pre-routing global net %zu\n", size_t(net_id)); - - // Set to the max timing criticality which should intern minimize clock insertion - // delay by selecting a direct route from the clock source to the virtual sink - cost_params.criticality = router_opts.max_criticality; - - return pre_route_to_clock_root(router, - net_id, - net_list, - sink_node, - cost_params, - router_opts.high_fanout_threshold, - tree, - spatial_route_tree_lookup, - router_stats, - is_flat); + auto& route_constraints = route_ctx.constraints; + std::string net_name = net_list.net_name(net_id); + + // If there is no routing constraint for the current global net + // and the clock modelling is set to dedicated network or + //there is a routing constraint for the current net setting routing model + // to the dedicated network run the first stage router. + if((!route_constraints.has_routing_constraint(net_name) && router_opts.clock_modeling == e_clock_modeling::DEDICATED_NETWORK) + || route_constraints.get_route_model_by_net_name(net_name) == e_clock_modeling::DEDICATED_NETWORK){ + + std::string clock_network_name = ""; + + // If a user-specified routing constratins exists for the curret net get the clock network name + // from the constraints file, otherwise use the default clock network name + if(route_constraints.has_routing_constraint(net_name)){ + clock_network_name = route_constraints.get_routing_network_name_by_net_name(net_name); + } + else { + auto& arch = device_ctx.arch; + clock_network_name = arch->default_clock_network_name; + } + + RRNodeId sink_node = rr_graph.virtual_clock_network_root_idx(clock_network_name.c_str()); + + enable_router_debug(router_opts, net_id, sink_node, itry, &router); + + VTR_LOGV_DEBUG(f_router_debug, "Pre-routing global net %zu\n", size_t(net_id)); + + // Set to the max timing criticality which should intern minimize clock insertion + // delay by selecting a direct route from the clock source to the virtual sink + cost_params.criticality = router_opts.max_criticality; + + if (sink_node == RRNodeId::INVALID()){ + VPR_FATAL_ERROR(VPR_ERROR_ROUTE, "Cannot route net \"%s\" through given clock network. Unknown clock network name \"%s\"", net_name.c_str(), clock_network_name.c_str()); + } + + flags = pre_route_to_clock_root(router, + net_id, + net_list, + sink_node, + cost_params, + router_opts.high_fanout_threshold, + tree, + spatial_route_tree_lookup, + router_stats, + is_flat); + + if (flags.success == false) + return flags; + } } if (budgeting_inf.if_set()) { @@ -273,6 +302,7 @@ inline NetResultFlags pre_route_to_clock_root(ConnectionRouter& router, auto& m_route_ctx = g_vpr_ctx.mutable_routing(); NetResultFlags out; + out.was_rerouted = true; bool high_fanout = is_high_fanout(net_list.net_sinks(net_id).size(), high_fanout_threshold); diff --git a/vpr/src/route/route_tree.cpp b/vpr/src/route/route_tree.cpp index a12cab81d3c..daf21bd1eb8 100644 --- a/vpr/src/route/route_tree.cpp +++ b/vpr/src/route/route_tree.cpp @@ -479,8 +479,11 @@ void RouteTree::print(void) const { /** Add the most recently finished wire segment to the routing tree, and * update the Tdel, etc. numbers for the rest of the routing tree. hptr * is the heap pointer of the SINK that was reached, and target_net_pin_index - * is the net pin index corresponding to the SINK that was reached. This routine - * returns a tuple: RouteTreeNode of the branch it adds to the route tree and + * is the net pin index corresponding to the SINK that was reached. Usually target_net_pin_index + * is a non-negative integer indicating the netlist connection being routed, but it can be OPEN (-1) + * to indicate this is a routing path to a virtual sink which we use when routing to the source of + * dedicated clock networks. + * This routine returns a tuple: RouteTreeNode of the branch it adds to the route tree and * RouteTreeNode of the SINK it adds to the routing. */ std::tuple, vtr::optional> RouteTree::update_from_heap(t_heap* hptr, int target_net_pin_index, SpatialRouteTreeLookup* spatial_rt_lookup, bool is_flat) { @@ -501,7 +504,7 @@ RouteTree::update_from_heap(t_heap* hptr, int target_net_pin_index, SpatialRoute update_route_tree_spatial_lookup_recur(*start_of_new_subtree_rt_node, *spatial_rt_lookup); } - if (_net_id.is_valid()) /* We don't have this lookup if the tree isn't associated with a net */ + if (_net_id.is_valid() && target_net_pin_index != OPEN) /* We don't have this lookup if the tree isn't associated with a net */ _is_isink_reached.set(target_net_pin_index, true); return {*start_of_new_subtree_rt_node, *sink_rt_node}; diff --git a/vpr/src/route/route_utils.cpp b/vpr/src/route/route_utils.cpp index f90789e5250..21e0b52bbef 100644 --- a/vpr/src/route/route_utils.cpp +++ b/vpr/src/route/route_utils.cpp @@ -507,15 +507,16 @@ void try_graph(int width_fac, is_flat); } -float update_draw_pres_fac(float new_pres_fac) { #ifndef NO_GRAPHICS - +void update_draw_pres_fac(const float new_pres_fac) { +#else +void update_draw_pres_fac(const float /*new_pres_fac*/) { +#endif +#ifndef NO_GRAPHICS // Only updates the drawing pres_fac if graphics is enabled get_draw_state_vars()->pres_fac = new_pres_fac; #endif // NO_GRAPHICS - - return new_pres_fac; } #ifndef NO_GRAPHICS diff --git a/vpr/src/route/route_utils.h b/vpr/src/route/route_utils.h index 8b86f230290..fddad8247dd 100644 --- a/vpr/src/route/route_utils.h +++ b/vpr/src/route/route_utils.h @@ -136,10 +136,8 @@ void try_graph(int width_fac, int num_directs, bool is_flat); -/* This routine should take the new value of the present congestion factor - * and propagate it to all the relevant data fields in the vpr flow. - * Currently, it only updates the pres_fac used by the drawing functions */ -float update_draw_pres_fac(float new_pres_fac); +/* This routine updates the pres_fac used by the drawing functions */ +void update_draw_pres_fac(const float new_pres_fac); #ifndef NO_GRAPHICS /** Updates router iteration information and checks for router iteration and net id breakpoints diff --git a/vpr/src/route/router_delay_profiling.cpp b/vpr/src/route/router_delay_profiling.cpp index f862072cdc8..96ec2be914a 100644 --- a/vpr/src/route/router_delay_profiling.cpp +++ b/vpr/src/route/router_delay_profiling.cpp @@ -243,7 +243,7 @@ vtr::vector calculate_all_path_delays_from_rr_node(RRNodeId src return path_delays_to; } -void alloc_routing_structs(t_chan_width chan_width, +void alloc_routing_structs(const t_chan_width& chan_width, const t_router_opts& router_opts, t_det_routing_arch* det_routing_arch, std::vector& segment_inf, diff --git a/vpr/src/route/router_delay_profiling.h b/vpr/src/route/router_delay_profiling.h index dedf3e6dfb1..542d4e90de4 100644 --- a/vpr/src/route/router_delay_profiling.h +++ b/vpr/src/route/router_delay_profiling.h @@ -54,7 +54,7 @@ vtr::vector calculate_all_path_delays_from_rr_node(RRNodeId src const t_router_opts& router_opts, bool is_flat); -void alloc_routing_structs(t_chan_width chan_width, +void alloc_routing_structs(const t_chan_width& chan_width, const t_router_opts& router_opts, t_det_routing_arch* det_routing_arch, std::vector& segment_inf, diff --git a/vpr/src/route/router_lookahead.cpp b/vpr/src/route/router_lookahead.cpp index 10e422d675f..240aeafbd61 100644 --- a/vpr/src/route/router_lookahead.cpp +++ b/vpr/src/route/router_lookahead.cpp @@ -7,7 +7,16 @@ #include "vpr_error.h" #include "globals.h" -static int get_expected_segs_to_target(RRNodeId inode, RRNodeId target_node, int* num_segs_ortho_dir_ptr); +/** + * Assuming inode is CHANX or CHANY, this function calculates the number of required wires of the same type as inode + * to arrive at target_noe. + * @param inode The source node from which the cost to the target node is obtained. + * @param target_node The target node to which the cost is obtained. + * @return std::pait The first element is the number of required wires in the same direction as inode, + * while the second element determines the number of wires in the direction orthogonal to inode. + */ +static std::pair get_expected_segs_to_target(RRNodeId inode, RRNodeId target_node); + static int round_up(float x); static std::unique_ptr make_router_lookahead_object(const t_det_routing_arch& det_routing_arch, @@ -31,8 +40,8 @@ static std::unique_ptr make_router_lookahead_object(const t_det std::unique_ptr make_router_lookahead(const t_det_routing_arch& det_routing_arch, e_router_lookahead router_lookahead_type, - std::string write_lookahead, - std::string read_lookahead, + const std::string& write_lookahead, + const std::string& read_lookahead, const std::vector& segment_inf, bool is_flat) { std::unique_ptr router_lookahead = make_router_lookahead_object(det_routing_arch, @@ -53,8 +62,7 @@ std::unique_ptr make_router_lookahead(const t_det_routing_arch& } float ClassicLookahead::get_expected_cost(RRNodeId current_node, RRNodeId target_node, const t_conn_cost_params& params, float R_upstream) const { - float delay_cost, cong_cost; - std::tie(delay_cost, cong_cost) = get_expected_delay_and_cong(current_node, target_node, params, R_upstream); + auto [delay_cost, cong_cost] = get_expected_delay_and_cong(current_node, target_node, params, R_upstream); return delay_cost + cong_cost; } @@ -66,8 +74,7 @@ std::pair ClassicLookahead::get_expected_delay_and_cong(RRNodeId n t_rr_type rr_type = rr_graph.node_type(node); if (rr_type == CHANX || rr_type == CHANY) { - int num_segs_ortho_dir = 0; - int num_segs_same_dir = get_expected_segs_to_target(node, target_node, &num_segs_ortho_dir); + auto [num_segs_same_dir, num_segs_ortho_dir] = get_expected_segs_to_target(node, target_node); auto cost_index = rr_graph.node_cost_index(node); int ortho_cost_index = device_ctx.rr_indexed_data[cost_index].ortho_cost_index; @@ -112,28 +119,27 @@ static int round_up(float x) { return std::ceil(x - 0.001); } -static int get_expected_segs_to_target(RRNodeId inode, RRNodeId target_node, int* num_segs_ortho_dir_ptr) { +static std::pair get_expected_segs_to_target(RRNodeId inode, RRNodeId target_node) { /* Returns the number of segments the same type as inode that will be needed * * to reach target_node (not including inode) in each direction (the same * * direction (horizontal or vertical) as inode and the orthogonal direction).*/ - auto& device_ctx = g_vpr_ctx.device(); const auto& rr_graph = device_ctx.rr_graph; - t_rr_type rr_type; - int target_x, target_y, num_segs_same_dir, ortho_cost_index; - RRIndexedDataId cost_index; + int num_segs_ortho_dir; + int num_segs_same_dir; + int no_need_to_pass_by_clb; - float inv_length, ortho_inv_length, ylow, yhigh, xlow, xhigh; + float ylow, yhigh, xlow, xhigh; - target_x = rr_graph.node_xlow(target_node); - target_y = rr_graph.node_ylow(target_node); + int target_x = rr_graph.node_xlow(target_node); + int target_y = rr_graph.node_ylow(target_node); - cost_index = rr_graph.node_cost_index(inode); - inv_length = device_ctx.rr_indexed_data[cost_index].inv_length; - ortho_cost_index = device_ctx.rr_indexed_data[cost_index].ortho_cost_index; - ortho_inv_length = device_ctx.rr_indexed_data[RRIndexedDataId(ortho_cost_index)].inv_length; - rr_type = rr_graph.node_type(inode); + RRIndexedDataId cost_index = rr_graph.node_cost_index(inode); + float inv_length = device_ctx.rr_indexed_data[cost_index].inv_length; + int ortho_cost_index = device_ctx.rr_indexed_data[cost_index].ortho_cost_index; + float ortho_inv_length = device_ctx.rr_indexed_data[RRIndexedDataId(ortho_cost_index)].inv_length; + t_rr_type rr_type = rr_graph.node_type(inode); if (rr_type == CHANX) { ylow = rr_graph.node_ylow(inode); @@ -143,13 +149,13 @@ static int get_expected_segs_to_target(RRNodeId inode, RRNodeId target_node, int /* Count vertical (orthogonal to inode) segs first. */ if (ylow > target_y) { /* Coming from a row above target? */ - *num_segs_ortho_dir_ptr = round_up((ylow - target_y + 1.) * ortho_inv_length); + num_segs_ortho_dir = round_up((ylow - target_y + 1.) * ortho_inv_length); no_need_to_pass_by_clb = 1; } else if (ylow < target_y - 1) { /* Below the CLB bottom? */ - *num_segs_ortho_dir_ptr = round_up((target_y - ylow) * ortho_inv_length); + num_segs_ortho_dir = round_up((target_y - ylow) * ortho_inv_length); no_need_to_pass_by_clb = 1; } else { /* In a row that passes by target CLB */ - *num_segs_ortho_dir_ptr = 0; + num_segs_ortho_dir = 0; no_need_to_pass_by_clb = 0; } @@ -170,13 +176,13 @@ static int get_expected_segs_to_target(RRNodeId inode, RRNodeId target_node, int /* Count horizontal (orthogonal to inode) segs first. */ if (xlow > target_x) { /* Coming from a column right of target? */ - *num_segs_ortho_dir_ptr = round_up((xlow - target_x + 1.) * ortho_inv_length); + num_segs_ortho_dir = round_up((xlow - target_x + 1.) * ortho_inv_length); no_need_to_pass_by_clb = 1; } else if (xlow < target_x - 1) { /* Left of and not adjacent to the CLB? */ - *num_segs_ortho_dir_ptr = round_up((target_x - xlow) * ortho_inv_length); + num_segs_ortho_dir = round_up((target_x - xlow) * ortho_inv_length); no_need_to_pass_by_clb = 1; } else { /* In a column that passes by target CLB */ - *num_segs_ortho_dir_ptr = 0; + num_segs_ortho_dir = 0; no_need_to_pass_by_clb = 0; } @@ -191,7 +197,7 @@ static int get_expected_segs_to_target(RRNodeId inode, RRNodeId target_node, int } } - return (num_segs_same_dir); + return {num_segs_same_dir, num_segs_ortho_dir}; } void invalidate_router_lookahead_cache() { @@ -201,8 +207,8 @@ void invalidate_router_lookahead_cache() { const RouterLookahead* get_cached_router_lookahead(const t_det_routing_arch& det_routing_arch, e_router_lookahead router_lookahead_type, - std::string write_lookahead, - std::string read_lookahead, + const std::string& write_lookahead, + const std::string& read_lookahead, const std::vector& segment_inf, bool is_flat) { auto& router_ctx = g_vpr_ctx.routing(); diff --git a/vpr/src/route/router_lookahead.h b/vpr/src/route/router_lookahead.h index 0486f2fab48..2a13dd55aa1 100644 --- a/vpr/src/route/router_lookahead.h +++ b/vpr/src/route/router_lookahead.h @@ -92,8 +92,8 @@ class RouterLookahead { */ std::unique_ptr make_router_lookahead(const t_det_routing_arch& det_routing_arch, e_router_lookahead router_lookahead_type, - std::string write_lookahead, - std::string read_lookahead, + const std::string& write_lookahead, + const std::string& read_lookahead, const std::vector& segment_inf, bool is_flat); @@ -115,8 +115,8 @@ void invalidate_router_lookahead_cache(); */ const RouterLookahead* get_cached_router_lookahead(const t_det_routing_arch& det_routing_arch, e_router_lookahead router_lookahead_type, - std::string write_lookahead, - std::string read_lookahead, + const std::string& write_lookahead, + const std::string& read_lookahead, const std::vector& segment_inf, bool is_flat); diff --git a/vpr/src/route/router_lookahead_compressed_map.cpp b/vpr/src/route/router_lookahead_compressed_map.cpp index 29a39bf7af6..4c50beb175e 100644 --- a/vpr/src/route/router_lookahead_compressed_map.cpp +++ b/vpr/src/route/router_lookahead_compressed_map.cpp @@ -428,10 +428,9 @@ std::pair CompressedMapLookahead::get_expected_delay_and_cong(RRNo auto& device_ctx = g_vpr_ctx.device(); auto& rr_graph = device_ctx.rr_graph; - int delta_x, delta_y; int from_layer_num = rr_graph.node_layer(from_node); int to_layer_num = rr_graph.node_layer(to_node); - util::get_xy_deltas(from_node, to_node, &delta_x, &delta_y); + auto [delta_x, delta_y] = util::get_xy_deltas(from_node, to_node); delta_x = abs(delta_x); delta_y = abs(delta_y); diff --git a/vpr/src/route/router_lookahead_extended_map.cpp b/vpr/src/route/router_lookahead_extended_map.cpp index 6db4c4ff7bc..d72f5471130 100644 --- a/vpr/src/route/router_lookahead_extended_map.cpp +++ b/vpr/src/route/router_lookahead_extended_map.cpp @@ -611,18 +611,17 @@ void ExtendedMapLookahead::read(const std::string& file) { this->src_opin_delays = util::compute_router_src_opin_lookahead(is_flat_); this->chan_ipins_delays = util::compute_router_chan_ipin_lookahead(); -#else // VTR_ENABLE_CAPNPROTO +#else // VTR_ENABLE_CAPNPROTO (void)file; VPR_THROW(VPR_ERROR_ROUTE, "MapLookahead::read not implemented"); -#endif // VTR_ENABLE_CAPNPROTO +#endif // VTR_ENABLE_CAPNPROTO } void ExtendedMapLookahead::write(const std::string& file) const { #ifndef VTR_ENABLE_CAPNPROTO cost_map_.write(file); -#else // VTR_ENABLE_CAPNPROTO +#else // VTR_ENABLE_CAPNPROTO (void)file; VPR_THROW(VPR_ERROR_ROUTE, "MapLookahead::write not implemented"); -#endif // VTR_ENABLE_CAPNPROTO +#endif // VTR_ENABLE_CAPNPROTO } - diff --git a/vpr/src/route/router_lookahead_map.cpp b/vpr/src/route/router_lookahead_map.cpp index 7cc1ba4aad3..ff7da4bc136 100644 --- a/vpr/src/route/router_lookahead_map.cpp +++ b/vpr/src/route/router_lookahead_map.cpp @@ -17,14 +17,12 @@ * which are reachable from each physical tile type's SOURCEs/OPINs (f_src_opin_delays). This is used for * SRC/OPIN -> CHANX/CHANY estimates. * - * In the case of SRC/OPIN -> SINK estimates the resuls from the two look-ups are added together (and the minimum taken - * if there are multiple possiblities). + * In the case of SRC/OPIN -> SINK estimates the results from the two look-ups are added together (and the minimum taken + * if there are multiple possibilities). */ #include #include -#include -#include #include "connection_router_interface.h" #include "vpr_types.h" #include "vpr_error.h" @@ -50,7 +48,7 @@ # include "serdes_utils.h" #endif /* VTR_ENABLE_CAPNPROTO */ -const int VALID_NEIGHBOR_NUMBER = 3; +static constexpr int VALID_NEIGHBOR_NUMBER = 3; /* when a list of delay/congestion entries at a coordinate in Cost_Entry is boiled down to a single * representative entry, this enum is passed-in to specify how that representative entry should be @@ -82,6 +80,7 @@ static util::Cost_Entry get_wire_cost_entry(e_rr_type rr_type, int to_layer_num); static void compute_router_wire_lookahead(const std::vector& segment_inf); + /*** * @brief Compute the cost from pin to sinks of tiles - Compute the minimum cost to get to each tile sink from pins on the cluster * @param intra_tile_pin_primitive_pin_delay @@ -176,15 +175,12 @@ float MapLookahead::get_expected_cost(RRNodeId current_node, RRNodeId target_nod VTR_ASSERT_SAFE(rr_graph.node_type(target_node) == t_rr_type::SINK); - float delay_cost = 0.; - float cong_cost = 0.; - if (is_flat_) { return get_expected_cost_flat_router(current_node, target_node, params, R_upstream); } else { if (from_rr_type == CHANX || from_rr_type == CHANY || from_rr_type == SOURCE || from_rr_type == OPIN) { // Get the total cost using the combined delay and congestion costs - std::tie(delay_cost, cong_cost) = get_expected_delay_and_cong(current_node, target_node, params, R_upstream); + auto [delay_cost, cong_cost] = get_expected_delay_and_cong(current_node, target_node, params, R_upstream); return delay_cost + cong_cost; } else if (from_rr_type == IPIN) { /* Change if you're allowing route-throughs */ return (device_ctx.rr_indexed_data[RRIndexedDataId(SINK_COST_INDEX)].base_cost); @@ -236,10 +232,12 @@ float MapLookahead::get_expected_cost_flat_router(RRNodeId current_node, RRNodeI return delay_cost + cong_cost + delay_offset_cost + cong_offset_cost; } else if (from_rr_type == OPIN) { + if (is_inter_cluster_node(from_physical_type, vib, from_rr_type, from_node_ptc_num)) { + // Similar to CHANX and CHANY std::tie(delay_cost, cong_cost) = get_expected_delay_and_cong(current_node, target_node, params, R_upstream); @@ -267,8 +265,7 @@ float MapLookahead::get_expected_cost_flat_router(RRNodeId current_node, RRNodeI // Since we don't know which type of wires are accessible from an OPIN inside the cluster, we use // distance_based_min_cost to get an estimation of the global cost, and then, add this cost to the tile_min_cost // to have an estimation of the cost of getting into a cluster - We don't have any estimation of the cost to get out of the cluster - int delta_x, delta_y; - util::get_xy_deltas(current_node, target_node, &delta_x, &delta_y); + auto [delta_x, delta_y] = util::get_xy_deltas(current_node, target_node); delta_x = abs(delta_x); delta_y = abs(delta_y); delay_cost = params.criticality * chann_distance_based_min_cost[rr_graph.node_layer(current_node)][to_layer_num][delta_x][delta_y].delay; @@ -299,8 +296,7 @@ float MapLookahead::get_expected_cost_flat_router(RRNodeId current_node, RRNodeI delay_offset_cost = 0.; cong_offset_cost = 0.; } else { - int delta_x, delta_y; - util::get_xy_deltas(current_node, target_node, &delta_x, &delta_y); + auto [delta_x, delta_y] = util::get_xy_deltas(current_node, target_node); delta_x = abs(delta_x); delta_y = abs(delta_y); delay_cost = params.criticality * chann_distance_based_min_cost[rr_graph.node_layer(current_node)][to_layer_num][delta_x][delta_y].delay; @@ -323,10 +319,9 @@ std::pair MapLookahead::get_expected_delay_and_cong(RRNodeId from_ auto& device_ctx = g_vpr_ctx.device(); auto& rr_graph = device_ctx.rr_graph; - int delta_x, delta_y; int from_layer_num = rr_graph.node_layer(from_node); int to_layer_num = rr_graph.node_layer(to_node); - util::get_xy_deltas(from_node, to_node, &delta_x, &delta_y); + auto [delta_x, delta_y] = util::get_xy_deltas(from_node, to_node); delta_x = abs(delta_x); delta_y = abs(delta_y); @@ -527,7 +522,6 @@ static void compute_router_wire_lookahead(const std::vector& segm //Profile each wire segment type for (int from_layer_num = 0; from_layer_num < grid.get_num_layers(); from_layer_num++) { for (const auto& segment_inf : segment_inf_vec) { - std::map> sample_nodes; std::vector chan_types; if (segment_inf.parallel_axis == X_AXIS) chan_types.push_back(CHANX); @@ -561,10 +555,7 @@ static void compute_router_wire_lookahead(const std::vector& segm /* sets the lookahead cost map entries based on representative cost entries from routing_cost_map */ static void set_lookahead_map_costs(int from_layer_num, int segment_index, e_rr_type chan_type, util::t_routing_cost_map& routing_cost_map) { - int chan_index = 0; - if (chan_type == CHANY) { - chan_index = 1; - } + int chan_index = (chan_type == CHANX) ? 0 : 1; /* set the lookahead cost map entries with a representative cost entry from routing_cost_map */ for (unsigned to_layer = 0; to_layer < routing_cost_map.dim_size(0); to_layer++) { @@ -580,10 +571,7 @@ static void set_lookahead_map_costs(int from_layer_num, int segment_index, e_rr_ /* fills in missing lookahead map entries by copying the cost of the closest valid entry */ static void fill_in_missing_lookahead_entries(int segment_index, e_rr_type chan_type) { - int chan_index = 0; - if (chan_type == CHANY) { - chan_index = 1; - } + int chan_index = (chan_type == CHANX) ? 0 : 1; auto& device_ctx = g_vpr_ctx.device(); @@ -664,7 +652,7 @@ static util::Cost_Entry get_nearby_cost_entry_average_neighbour(int from_layer_n int to_layer_num, int segment_index, int chan_index) { - // Make sure that the given loaction doesn't have a valid entry + // Make sure that the given location doesn't have a valid entry VTR_ASSERT(std::isnan(f_wire_cost_map[from_layer_num][chan_index][segment_index][to_layer_num][missing_dx][missing_dy].delay)); VTR_ASSERT(std::isnan(f_wire_cost_map[from_layer_num][chan_index][segment_index][to_layer_num][missing_dx][missing_dy].congestion)); diff --git a/vpr/src/route/router_lookahead_map_utils.cpp b/vpr/src/route/router_lookahead_map_utils.cpp index 9b28157cb96..f35bb2cee3d 100644 --- a/vpr/src/route/router_lookahead_map_utils.cpp +++ b/vpr/src/route/router_lookahead_map_utils.cpp @@ -18,6 +18,13 @@ #include "route_common.h" #include "route_debug.h" +/** + * We will profile delay/congestion using this many tracks for each wire type. + * Larger values increase the time to compute the lookahead, but may give + * more accurate lookahead estimates during routing. + */ +static constexpr int MAX_TRACK_OFFSET = 16; + static void dijkstra_flood_to_wires(int itile, RRNodeId inode, util::t_src_opin_delays& src_opin_delays); static void dijkstra_flood_to_ipins(RRNodeId node, util::t_chan_ipins_delays& chan_ipins_delays); @@ -41,7 +48,7 @@ static void run_dijkstra(RRNodeId start_node, int start_x, int start_y, util::t_routing_cost_map& routing_cost_map, - util::t_dijkstra_data* data, + util::t_dijkstra_data& data, const std::unordered_map>& sample_locs, bool sample_all_locs); @@ -51,13 +58,42 @@ static void expand_dijkstra_neighbours(util::PQ_Entry parent_entry, vtr::vector& node_expanded, std::priority_queue& pq); -static void adjust_rr_position(const RRNodeId rr, int& x, int& y); -static void adjust_rr_pin_position(const RRNodeId rr, int& x, int& y); +/** + * @brief Computes the adjusted position of an RR graph node. + * This function does not modify the position of the given node. + * It only returns the computed adjusted position. + * @param rr The ID of the node whose adjusted position is desired. + * @return The adjusted position (x, y). + */ +static std::pair get_adjusted_rr_position(RRNodeId rr); -static void adjust_rr_wire_position(const RRNodeId rr, int& x, int& y); +/** + * @brief Computes the adjusted location of a pin to match the position of + * the channel it can reach based on which side of the block it is at. + * @param rr The corresponding node of a pin whose adjusted positions + * is desired. + * @return The adjusted position (x, y). + */ +static std::pair get_adjusted_rr_pin_position(RRNodeId rr); -static void adjust_rr_src_sink_position(const RRNodeId rr, int& x, int& y); +/** + * @brief Computed the adjusted position of a node of type + * CHANX or CHANY. For uni-directional wires, return the position + * of the driver, and for bi-directional wires, compute the middle point. + * @param rr The ID of the node whose adjusted position is desired. + * @return The adjusted position (x, y). + */ +static std::pair get_adjusted_rr_wire_position(RRNodeId rr); + +/** + * @brief Computes the adjusted position and source and sink nodes. + * SOURCE/SINK nodes assume the full dimensions of their associated block/ + * This function computes the average position for the given node. + * @param rr SOURCE or SINK node whose adjusted position is needed. + * @return The adjusted position (x, y). + */ +static std::pair get_adjusted_rr_src_sink_position(RRNodeId rr); // Constants needed to reduce the bounding box when expanding CHAN wires to reach the IPINs. // These are used when finding all the delays to get to the IPINs of all the different tile types @@ -90,7 +126,7 @@ static void adjust_rr_src_sink_position(const RRNodeId rr, int& x, int& y); // // This is used when building the SROURCE/OPIN --> CHAN lookup table that contains additional delay and // congestion data to reach the CHANX/CHANY nodes which is not present in the lookahead cost map. -#define DIRECT_CONNECT_SPECIAL_SEG_TYPE -1; +static constexpr int DIRECT_CONNECT_SPECIAL_SEG_TYPE = -1; namespace util { @@ -341,7 +377,7 @@ t_src_opin_delays compute_router_src_opin_lookahead(bool is_flat) { tile_max_ptc[itile] = get_tile_src_opin_max_ptc(itile); } - // Resize src_opin_delays to accomodate enough ptc and layer + // Resize src_opin_delays to accommodate enough ptc and layer for (int layer_num = 0; layer_num < num_layers; layer_num++) { src_opin_delays[layer_num].resize(device_ctx.physical_tile_types.size()); for (int itile = 0; itile < (int)device_ctx.physical_tile_types.size(); itile++) { @@ -373,7 +409,7 @@ t_src_opin_delays compute_router_src_opin_lookahead(bool is_flat) { if (sample_loc.x == OPEN && sample_loc.y == OPEN && sample_loc.layer_num == OPEN) { //No untried instances of the current tile type left - VTR_LOG_WARN("Found no %ssample locations for %s in %s\n", + VTR_LOG_WARN("Found no %sample locations for %s in %s\n", (num_sampled_locs == 0) ? "" : "more ", rr_node_typename[rr_type], device_ctx.physical_tile_types[itile].name); @@ -393,10 +429,12 @@ t_src_opin_delays compute_router_src_opin_lookahead(bool is_flat) { } //const t_vib_inf* vib = device_ctx.vib_grid[sample_loc.layer_num][sample_loc.x][sample_loc.y]; // For the time being, we decide to not let the lookahead explore the node inside the clusters + if (!is_inter_cluster_node(&device_ctx.physical_tile_types[itile], vib, rr_type, ptc)) { + continue; } @@ -560,26 +598,22 @@ RRNodeId get_start_node(int layer, int start_x, int start_y, int target_x, int t return result; } -/* returns the absolute delta_x and delta_y offset required to reach to_node from from_node */ -void get_xy_deltas(const RRNodeId from_node, const RRNodeId to_node, int* delta_x, int* delta_y) { +std::pair get_xy_deltas(RRNodeId from_node, RRNodeId to_node) { auto& device_ctx = g_vpr_ctx.device(); const auto& rr_graph = device_ctx.rr_graph; e_rr_type from_type = rr_graph.node_type(from_node); e_rr_type to_type = rr_graph.node_type(to_node); + int delta_x, delta_y; + if (!is_chan(from_type) && !is_chan(to_type)) { //Alternate formulation for non-channel types - int from_x = 0; - int from_y = 0; - adjust_rr_position(from_node, from_x, from_y); + auto [from_x, from_y] = get_adjusted_rr_position(from_node); + auto [to_x, to_y] = get_adjusted_rr_position(to_node); - int to_x = 0; - int to_y = 0; - adjust_rr_position(to_node, to_x, to_y); - - *delta_x = to_x - from_x; - *delta_y = to_y - from_y; + delta_x = to_x - from_x; + delta_y = to_y - from_y; } else { //Traditional formulation @@ -644,16 +678,18 @@ void get_xy_deltas(const RRNodeId from_node, const RRNodeId to_node, int* delta_ } if (from_type == CHANY) { - *delta_x = delta_chan; - *delta_y = delta_seg; + delta_x = delta_chan; + delta_y = delta_seg; } else { - *delta_x = delta_seg; - *delta_y = delta_chan; + delta_x = delta_seg; + delta_y = delta_chan; } } - VTR_ASSERT_SAFE(std::abs(*delta_x) < (int)device_ctx.grid.width()); - VTR_ASSERT_SAFE(std::abs(*delta_y) < (int)device_ctx.grid.height()); + VTR_ASSERT_SAFE(std::abs(delta_x) < (int)device_ctx.grid.width()); + VTR_ASSERT_SAFE(std::abs(delta_y) < (int)device_ctx.grid.height()); + + return {delta_x, delta_y}; } t_routing_cost_map get_routing_cost_map(int longest_seg_length, @@ -680,7 +716,7 @@ t_routing_cost_map get_routing_cost_map(int longest_seg_length, //Uniquify the increments (avoid sampling the same locations repeatedly if they happen to //overlap) - std::sort(ref_increments.begin(), ref_increments.end()); + std::stable_sort(ref_increments.begin(), ref_increments.end()); ref_increments.erase(std::unique(ref_increments.begin(), ref_increments.end()), ref_increments.end()); //Upper right non-corner @@ -723,7 +759,7 @@ t_routing_cost_map get_routing_cost_map(int longest_seg_length, // TODO: Temporary - After testing benchmarks this can be deleted VTR_ASSERT(rr_graph.node_layer(start_node) == from_layer_num); - sample_nodes.push_back(RRNodeId(start_node)); + sample_nodes.emplace_back(start_node); } } @@ -753,10 +789,10 @@ t_routing_cost_map get_routing_cost_map(int longest_seg_length, } } - //Finally, now that we have a list of sample locations, run a Djikstra flood from + //Finally, now that we have a list of sample locations, run a Dijkstra flood from //each sample location to profile the routing network from this type - t_dijkstra_data dijkstra_data; + t_routing_cost_map routing_cost_map({static_cast(device_ctx.grid.get_num_layers()), device_ctx.grid.width(), device_ctx.grid.height()}); if (sample_nodes.empty()) { @@ -768,6 +804,10 @@ t_routing_cost_map get_routing_cost_map(int longest_seg_length, //reset cost for this segment routing_cost_map.fill(Expansion_Cost_Entry()); + // to avoid multiple memory allocation and de-allocations in run_dijkstra() + // dijkstra_data is created outside the for loop and passed by reference to dijkstra_data() + t_dijkstra_data dijkstra_data; + for (RRNodeId sample_node : sample_nodes) { int sample_x = rr_graph.node_xlow(sample_node); int sample_y = rr_graph.node_ylow(sample_node); @@ -781,7 +821,7 @@ t_routing_cost_map get_routing_cost_map(int longest_seg_length, sample_x, sample_y, routing_cost_map, - &dijkstra_data, + dijkstra_data, sample_locs, sample_all_locs); } @@ -809,7 +849,7 @@ std::pair get_cost_from_src_opin(const std::map get_cost_from_src_opin(const std::map get_cost_from_src_opin(const std::map>& sample_locs, bool sample_all_locs) { auto& device_ctx = g_vpr_ctx.device(); const auto& rr_graph = device_ctx.rr_graph; - auto& node_expanded = data->node_expanded; + auto& node_expanded = data.node_expanded; node_expanded.resize(rr_graph.num_nodes()); std::fill(node_expanded.begin(), node_expanded.end(), false); - auto& node_visited_costs = data->node_visited_costs; + auto& node_visited_costs = data.node_visited_costs; node_visited_costs.resize(rr_graph.num_nodes()); std::fill(node_visited_costs.begin(), node_visited_costs.end(), -1.0); /* a priority queue for expansion */ - std::priority_queue& pq = data->pq; + std::priority_queue& pq = data.pq; //Clear priority queue if non-empty while (!pq.empty()) { @@ -1302,9 +1343,7 @@ static void run_dijkstra(RRNodeId start_node, } /* first entry has no upstream delay or congestion */ - util::PQ_Entry first_entry(start_node, UNDEFINED, 0, 0, 0, true); - - pq.push(first_entry); + pq.emplace(start_node, UNDEFINED, 0, 0, 0, true); /* now do routing */ while (!pq.empty()) { @@ -1329,8 +1368,7 @@ static void run_dijkstra(RRNodeId start_node, int ipin_layer = rr_graph.node_layer(curr_node); if (ipin_x >= start_x && ipin_y >= start_y) { - int delta_x, delta_y; - util::get_xy_deltas(start_node, curr_node, &delta_x, &delta_y); + auto [delta_x, delta_y] = util::get_xy_deltas(start_node, curr_node); delta_x = std::abs(delta_x); delta_y = std::abs(delta_y); @@ -1371,9 +1409,6 @@ static void expand_dijkstra_neighbours(util::PQ_Entry parent_entry, for (t_edge_size edge : rr_graph.edges(parent)) { RRNodeId child_node = rr_graph.edge_sink_node(parent, edge); // For the time being, we decide to not let the lookahead explore the node inside the clusters - t_physical_tile_type_ptr physical_type = device_ctx.grid.get_physical_type({rr_graph.node_xlow(child_node), - rr_graph.node_ylow(child_node), - rr_graph.node_layer(child_node)}); const t_vib_inf* vib; if (device_ctx.arch->is_vib_arch) { @@ -1387,6 +1422,7 @@ static void expand_dijkstra_neighbours(util::PQ_Entry parent_entry, vib, rr_graph.node_type(child_node), rr_graph.node_ptc_num(child_node))) { + continue; } int switch_ind = size_t(rr_graph.edge_switch(parent, edge)); @@ -1414,23 +1450,23 @@ static void expand_dijkstra_neighbours(util::PQ_Entry parent_entry, } } -static void adjust_rr_position(const RRNodeId rr, int& x, int& y) { +static std::pair get_adjusted_rr_position(const RRNodeId rr) { auto& device_ctx = g_vpr_ctx.device(); const auto& rr_graph = device_ctx.rr_graph; e_rr_type rr_type = rr_graph.node_type(rr); if (is_chan(rr_type)) { - adjust_rr_wire_position(rr, x, y); + return get_adjusted_rr_wire_position(rr); } else if (is_pin(rr_type)) { - adjust_rr_pin_position(rr, x, y); + return get_adjusted_rr_pin_position(rr); } else { VTR_ASSERT_SAFE(is_src_sink(rr_type)); - adjust_rr_src_sink_position(rr, x, y); + return get_adjusted_rr_src_sink_position(rr); } } -static void adjust_rr_pin_position(const RRNodeId rr, int& x, int& y) { +static std::pair get_adjusted_rr_pin_position(const RRNodeId rr) { /* * VPR uses a co-ordinate system where wires above and to the right of a block * are at the same location as the block: @@ -1470,8 +1506,8 @@ static void adjust_rr_pin_position(const RRNodeId rr, int& x, int& y) { VTR_ASSERT_SAFE(rr_graph.node_xlow(rr) == rr_graph.node_xhigh(rr)); VTR_ASSERT_SAFE(rr_graph.node_ylow(rr) == rr_graph.node_yhigh(rr)); - x = rr_graph.node_xlow(rr); - y = rr_graph.node_ylow(rr); + int x = rr_graph.node_xlow(rr); + int y = rr_graph.node_ylow(rr); /* Use the first side we can find * Note that this may NOT return an accurate coordinate @@ -1479,13 +1515,11 @@ static void adjust_rr_pin_position(const RRNodeId rr, int& x, int& y) { * However, current test show that the simple strategy provides * a good trade-off between runtime and quality of results */ - e_side rr_side = NUM_SIDES; - for (const e_side& candidate_side : SIDES) { - if (rr_graph.is_node_on_specific_side(rr, candidate_side)) { - rr_side = candidate_side; - break; - } - } + auto it = std::find_if(SIDES.begin(), SIDES.end(), [&](const e_side candidate_side) { + return rr_graph.is_node_on_specific_side(rr, candidate_side); + }); + + e_side rr_side = (it != SIDES.end()) ? *it : NUM_SIDES; VTR_ASSERT_SAFE(NUM_SIDES != rr_side); if (rr_side == LEFT) { @@ -1495,9 +1529,11 @@ static void adjust_rr_pin_position(const RRNodeId rr, int& x, int& y) { y -= 1; y = std::max(y, 0); } + + return {x, y}; } -static void adjust_rr_wire_position(const RRNodeId rr, int& x, int& y) { +static std::pair get_adjusted_rr_wire_position(const RRNodeId rr) { auto& device_ctx = g_vpr_ctx.device(); const auto& rr_graph = device_ctx.rr_graph; @@ -1506,30 +1542,30 @@ static void adjust_rr_wire_position(const RRNodeId rr, int& x, int& y) { Direction rr_dir = rr_graph.node_direction(rr); if (rr_dir == Direction::DEC) { - x = rr_graph.node_xhigh(rr); - y = rr_graph.node_yhigh(rr); + return {rr_graph.node_xhigh(rr), + rr_graph.node_yhigh(rr)}; } else if (rr_dir == Direction::INC) { - x = rr_graph.node_xlow(rr); - y = rr_graph.node_ylow(rr); + return {rr_graph.node_xlow(rr), + rr_graph.node_ylow(rr)}; } else { VTR_ASSERT_SAFE(rr_dir == Direction::BIDIR); //Not sure what to do here... //Try average for now. - x = vtr::nint((rr_graph.node_xlow(rr) + rr_graph.node_xhigh(rr)) / 2.); - y = vtr::nint((rr_graph.node_ylow(rr) + rr_graph.node_yhigh(rr)) / 2.); + return {vtr::nint((rr_graph.node_xlow(rr) + rr_graph.node_xhigh(rr)) / 2.), + vtr::nint((rr_graph.node_ylow(rr) + rr_graph.node_yhigh(rr)) / 2.)}; } } -static void adjust_rr_src_sink_position(const RRNodeId rr, int& x, int& y) { +static std::pair get_adjusted_rr_src_sink_position(const RRNodeId rr) { //SOURCE/SINK nodes assume the full dimensions of their //associated block - // + //Use the average position. auto& device_ctx = g_vpr_ctx.device(); const auto& rr_graph = device_ctx.rr_graph; VTR_ASSERT_SAFE(is_src_sink(rr_graph.node_type(rr))); - x = vtr::nint((rr_graph.node_xlow(rr) + rr_graph.node_xhigh(rr)) / 2.); - y = vtr::nint((rr_graph.node_ylow(rr) + rr_graph.node_yhigh(rr)) / 2.); + return {vtr::nint((rr_graph.node_xlow(rr) + rr_graph.node_xhigh(rr)) / 2.), + vtr::nint((rr_graph.node_ylow(rr) + rr_graph.node_yhigh(rr)) / 2.)}; } diff --git a/vpr/src/route/router_lookahead_map_utils.h b/vpr/src/route/router_lookahead_map_utils.h index 88c677dc445..217bd0d2206 100644 --- a/vpr/src/route/router_lookahead_map_utils.h +++ b/vpr/src/route/router_lookahead_map_utils.h @@ -25,9 +25,6 @@ #include "rr_node.h" #include "rr_graph_view.h" -/* we will profile delay/congestion using this many tracks for each wire type */ -#define MAX_TRACK_OFFSET 16 - namespace util { class Cost_Entry; @@ -89,11 +86,10 @@ class Cost_Entry { bool fill; ///::quiet_NaN(); - congestion = std::numeric_limits::quiet_NaN(); - fill = false; - } + Cost_Entry() + : delay(std::numeric_limits::quiet_NaN()) + , congestion(std::numeric_limits::quiet_NaN()) + , fill(false) {} Cost_Entry(float set_delay, float set_congestion) : delay(set_delay) , congestion(set_congestion) @@ -138,7 +134,7 @@ class Expansion_Cost_Entry { float add_congestion) { Cost_Entry cost_entry(add_delay, add_congestion); if (method == SMALLEST) { - /* taking the smallest-delay entry anyway, so no need to push back multple entries */ + /* taking the smallest-delay entry anyway, so no need to push back multiple entries */ if (this->cost_vector.empty()) { this->cost_vector.push_back(cost_entry); } else { @@ -331,7 +327,15 @@ t_ipin_primitive_sink_delays compute_intra_tile_dijkstra(const RRGraphView& rr_g /* returns index of a node from which to start routing */ RRNodeId get_start_node(int layer, int start_x, int start_y, int target_x, int target_y, t_rr_type rr_type, int seg_index, int track_offset); -void get_xy_deltas(const RRNodeId from_node, const RRNodeId to_node, int* delta_x, int* delta_y); +/** + * @brief Computes the absolute delta_x and delta_y offset + * required to reach to_node from from_node + * @param from_node The starting node + * @param to_node The destination node + * @return (delta_x, delta_y) offset required to reach to + * to_node from from_node. + */ +std::pair get_xy_deltas(RRNodeId from_node, RRNodeId to_node); t_routing_cost_map get_routing_cost_map(int longest_seg_length, int from_layer_num, diff --git a/vpr/src/route/router_lookahead_sampling.cpp b/vpr/src/route/router_lookahead_sampling.cpp index 8060e8e7f0b..c7f2221ff9c 100644 --- a/vpr/src/route/router_lookahead_sampling.cpp +++ b/vpr/src/route/router_lookahead_sampling.cpp @@ -59,7 +59,7 @@ static std::vector choose_points(const vtr::Matrix& counts, vtr::Point center = sample(window, 1, 1, 2); // sort by distance from center - std::sort(points.begin(), points.end(), + std::stable_sort(points.begin(), points.end(), [&](const SamplePoint& a, const SamplePoint& b) { return manhattan_distance(a.location, center) < manhattan_distance(b.location, center); }); @@ -232,7 +232,7 @@ std::vector find_sample_regions(int num_segments) { compute_sample_regions(sample_regions, segment_counts, bounding_box_for_segment, num_segments); // sort regions - std::sort(sample_regions.begin(), sample_regions.end(), + std::stable_sort(sample_regions.begin(), sample_regions.end(), [](const SampleRegion& a, const SampleRegion& b) { return a.order < b.order; }); diff --git a/vpr/src/route/rr_graph.cpp b/vpr/src/route/rr_graph.cpp index 72453d1c3e6..e9bb7df6463 100644 --- a/vpr/src/route/rr_graph.cpp +++ b/vpr/src/route/rr_graph.cpp @@ -327,14 +327,14 @@ static void add_intra_tile_edges_rr_graph(RRGraphBuilder& rr_graph_builder, * @brief Add the intra-cluster edges * @param rr_graph_builder * @param num_collapsed_nodes Return the number of nodes that are removed due to collapsing - * @param cluster_blk_id Cluser block id of the cluster that its edges are being added + * @param cluster_blk_id Cluster block id of the cluster that its edges are being added * @param i * @param j * @param cap Capacity number of the location that cluster is being mapped to * @param R_minW_nmos * @param R_minW_pmos * @param rr_edges_to_create - * @param nodes_to_collapse Sotre the nodes in the cluster that needs to be collapsed + * @param nodes_to_collapse Store the nodes in the cluster that needs to be collapsed * @param grid * @param is_flat * @param load_rr_graph @@ -398,7 +398,7 @@ static int add_edges_for_collapsed_nodes(RRGraphBuilder& rr_graph_builder, int j, bool load_rr_graph); /** - * @note This funtion is used to add the fan-in edges of the given chain node to the chain's sink with the modified delay + * @note This function is used to add the fan-in edges of the given chain node to the chain's sink with the modified delay * @param rr_graph_builder * @param rr_edges_to_create * @param num_collapsed_pins @@ -593,7 +593,7 @@ static void build_rr_graph(const t_graph_type graph_type, t_chan_width nodes_per_chan, const enum e_switch_block_type sb_type, const int Fs, - const std::vector switchblocks, + const std::vector& switchblocks, const std::vector& segment_inf, const int global_route_switch, const int wire_to_arch_ipin_switch, @@ -625,7 +625,7 @@ static void build_intra_cluster_rr_graph(const t_graph_type graph_type, void create_rr_graph(const t_graph_type graph_type, const std::vector& block_types, const DeviceGrid& grid, - const t_chan_width nodes_per_chan, + const t_chan_width& nodes_per_chan, t_det_routing_arch* det_routing_arch, const std::vector& segment_inf, const t_router_opts& router_opts, @@ -664,7 +664,6 @@ void create_rr_graph(const t_graph_type graph_type, device_ctx.arch, &mutable_device_ctx.chan_width, router_opts.base_cost_type, - device_ctx.virtual_clock_network_root_idx, &det_routing_arch->wire_to_rr_ipin_switch, &det_routing_arch->wire_to_arch_ipin_switch_between_dice, det_routing_arch->read_rr_graph_filename.c_str(), @@ -765,7 +764,7 @@ void create_rr_graph(const t_graph_type graph_type, // Write out rr graph file if needed - Currently, writing the flat rr-graph is not supported since loading from a flat rr-graph is not supported. // When this function is called in any stage other than routing, the is_flat flag passed to this function is false, regardless of the flag passed - // through command line. So, the graph conrresponding to global resources will be created and written down to file if needed. During routing, if flat-routing + // through command line. So, the graph corresponding to global resources will be created and written down to file if needed. During routing, if flat-routing // is enabled, intra-cluster resources will be added to the graph, but this new bigger graph will not be written down. if (!det_routing_arch->write_rr_graph_filename.empty() && !is_flat) { write_rr_graph(&mutable_device_ctx.rr_graph_builder, @@ -778,7 +777,6 @@ void create_rr_graph(const t_graph_type graph_type, device_ctx.arch, &mutable_device_ctx.chan_width, det_routing_arch->write_rr_graph_filename.c_str(), - device_ctx.virtual_clock_network_root_idx, echo_enabled, echo_file_name, is_flat); @@ -936,7 +934,7 @@ static void build_rr_graph(const t_graph_type graph_type, t_chan_width nodes_per_chan, const enum e_switch_block_type sb_type, const int Fs, - const std::vector switchblocks, + const std::vector& switchblocks, const std::vector& segment_inf, const int global_route_switch, const int wire_to_arch_ipin_switch, @@ -1003,16 +1001,16 @@ static void build_rr_graph(const t_graph_type graph_type, seg_details_y = alloc_and_load_global_route_seg_details(global_route_switch, &num_seg_details_y); } else { - /* Setup segments including distrubuting tracks and staggering. + /* Setup segments including distributing tracks and staggering. * If use_full_seg_groups is specified, max_chan_width may be * changed. Warning should be singled to caller if this happens. */ - /* Need to setup segments along x & y axis seperately, due to different + /* Need to setup segments along x & y axes separately, due to different * max_channel_widths and segment specifications. */ size_t max_dim = std::max(grid.width(), grid.height()) - 2; //-2 for no perim channels - /*Get x & y segments seperately*/ + /*Get x & y segments separately*/ seg_details_x = alloc_and_load_seg_details(&max_chan_width_x, max_dim, segment_inf_x, use_full_seg_groups, directionality, @@ -1078,7 +1076,7 @@ static void build_rr_graph(const t_graph_type graph_type, } } - /* get the number of 'sets' for each segment type -- unidirectial architectures have two tracks in a set, bidirectional have one */ + /* get the number of 'sets' for each segment type -- unidirectional architectures have two tracks in a set, bidirectional have one */ int total_sets = max_chan_width; int total_sets_x = max_chan_width_x; int total_sets_y = max_chan_width_y; @@ -1336,9 +1334,10 @@ static void build_rr_graph(const t_graph_type graph_type, is_flat); // Verify no incremental node allocation. - /* AA: Note that in the case of dedicated networks, we are currently underestimating the additional node count due to the clock networks. - * Thus, this below error is logged; it's not actually an error, the node estimation needs to get fixed for dedicated clock networks. */ - if (rr_graph.num_nodes() > expected_node_count) { + // AA: Note that in the case of dedicated networks, we are currently underestimating the additional node count due to the clock networks. + /* For now, the node count comparison is being skipped in the presence of clock networks. + * TODO: The node estimation needs to be fixed for dedicated clock networks. */ + if (rr_graph.num_nodes() > expected_node_count && clock_modeling != DEDICATED_NETWORK) { VTR_LOG_ERROR("Expected no more than %zu nodes, have %zu nodes\n", expected_node_count, rr_graph.num_nodes()); } @@ -1409,7 +1408,6 @@ static void build_rr_graph(const t_graph_type graph_type, vib_grid, device_ctx.chan_width, graph_type, - device_ctx.virtual_clock_network_root_idx, is_flat); /* Free all temp structs */ @@ -1480,8 +1478,6 @@ static void build_intra_cluster_rr_graph(const t_graph_type graph_type, is_flat, load_rr_graph); - /* AA: Note that in the case of dedicated networks, we are currently underestimating the additional node count due to the clock networks. - * Thus this below error is logged; it's not actually an error, the node estimation needs to get fixed for dedicated clock networks. */ if (rr_graph.num_nodes() > expected_node_count) { VTR_LOG_ERROR("Expected no more than %zu nodes, have %zu nodes\n", expected_node_count, rr_graph.num_nodes()); @@ -1506,7 +1502,6 @@ static void build_intra_cluster_rr_graph(const t_graph_type graph_type, vib_grid, device_ctx.chan_width, graph_type, - device_ctx.virtual_clock_network_root_idx, is_flat); } @@ -2561,7 +2556,7 @@ static void build_bidir_rr_opins(RRGraphBuilder& rr_graph_builder, if ((i == 0 && side != RIGHT) || (i == int(grid.width() - 1) && side != LEFT) || (j == 0 && side != TOP) - || (j == int(grid.width() - 1) && side != BOTTOM)) { + || (j == int(grid.height() - 1) && side != BOTTOM)) { return; } @@ -3211,7 +3206,7 @@ static void build_rr_chan(RRGraphBuilder& rr_graph_builder, } void uniquify_edges(t_rr_edge_info_set& rr_edges_to_create) { - std::sort(rr_edges_to_create.begin(), rr_edges_to_create.end()); + std::stable_sort(rr_edges_to_create.begin(), rr_edges_to_create.end()); rr_edges_to_create.erase(std::unique(rr_edges_to_create.begin(), rr_edges_to_create.end()), rr_edges_to_create.end()); } @@ -4463,7 +4458,7 @@ static std::vector alloc_and_load_perturb_opins(const t_physical_tile_type } n = step_size / prime_factors[i]; - n = n - (float)vtr::nint(n); /* fractinal part */ + n = n - (float)vtr::nint(n); /* fractional part */ if (fabs(n) < threshold) { perturb_opins[0] = true; break; @@ -4510,7 +4505,7 @@ static RRNodeId pick_best_direct_connect_target_rr_node(const RRGraphView& rr_gr } //Include a partial unit of distance based on side alignment to ensure - //we preferr facing sides + //we prefer facing sides if ((from_side == RIGHT && to_side == LEFT) || (from_side == LEFT && to_side == RIGHT) || (from_side == TOP && to_side == BOTTOM) diff --git a/vpr/src/route/rr_graph.h b/vpr/src/route/rr_graph.h index 14d2bf903b6..c610dd6cf6a 100644 --- a/vpr/src/route/rr_graph.h +++ b/vpr/src/route/rr_graph.h @@ -24,7 +24,7 @@ enum { void create_rr_graph(const t_graph_type graph_type, const std::vector& block_types, const DeviceGrid& grid, - t_chan_width nodes_per_chan, + const t_chan_width& nodes_per_chan, t_det_routing_arch* det_routing_arch, const std::vector& segment_inf, const t_router_opts& router_opts, diff --git a/vpr/src/server/bytearray.h b/vpr/src/server/bytearray.h new file mode 100644 index 00000000000..2a94927f0cc --- /dev/null +++ b/vpr/src/server/bytearray.h @@ -0,0 +1,175 @@ +#ifndef BYTEARRAY_H +#define BYTEARRAY_H + +#ifndef NO_SERVER + +#include +#include +#include +#include + +namespace comm { + +/** + * @brief ByteArray is a simple wrapper over std::vector that provides a user-friendly interface for manipulating array data.. +*/ +class ByteArray : public std::vector { +public: + static const std::size_t DEFAULT_SIZE_HINT = 1024; + + /** + * @brief Constructs a ByteArray from a null-terminated C string. + * + * Constructs a ByteArray object from the specified null-terminated C string. + * The constructor interprets the input string as a sequence of bytes until the + * null terminator '\0' is encountered, and initializes the ByteArray with those bytes. + * + * @param data A pointer to the null-terminated C string from which to construct the ByteArray. + */ + explicit ByteArray(const char* data) + : std::vector(data, data + std::strlen(data)) + {} + + /** + * @brief Constructs a ByteArray from a raw character array. + * + * Constructs a ByteArray object from the specified raw character array, + * with the given size. This constructor interprets the input data as a sequence + * of bytes and initializes the ByteArray with those bytes. + * + * @param data A pointer to the raw character array from which to construct the ByteArray. + * @param size The size of the raw character array, in bytes. + */ + ByteArray(const char* data, std::size_t size) + : std::vector(data, data + size) + {} + + /** + * @brief Constructs a byte array with the specified size hint. + * + * This constructor initializes the byte array with an initial capacity determined by the size hint. + * + * @param size_hint The initial capacity hint for the byte array. + */ + explicit ByteArray(std::size_t size_hint = DEFAULT_SIZE_HINT) { + reserve(size_hint); + } + + /** + * @brief Constructs a byte array from the elements in the range [first, last). + * + * This constructor initializes the byte array with the elements in the range [first, last), + * where `first` and `last` are iterators defining the range. + * + * @tparam Iterator The type of iterator used to specify the range. + * @param first An iterator to the first element in the range. + * @param last An iterator to the last element in the range. + */ + template + ByteArray(Iterator first, Iterator last): std::vector(first, last) {} + + /** + * @brief Appends the content of another byte array to the end of this byte array. + * + * This function adds all the bytes from the specified byte array `appendix` + * to the end of this byte array. + * + * @param appendix The byte array whose content is to be appended. + */ + void append(const ByteArray& appendix) { + insert(end(), appendix.begin(), appendix.end()); + } + + /** + * @brief Appends a byte to the end of the byte array. + * + * This function adds the specified byte to the end of the byte array. + * + * @param b The byte to append to the byte array. + */ + void append(char b) { + push_back(b); + } + + /** + * @brief Finds the position of the specified sequence in the byte array. + * + * This function searches for the specified sequence of characters within the byte array. + * If the sequence is found, it returns a pair containing `true` and the starting index of the sequence. + * If the sequence is not found, it returns a pair containing `false` and `0`. + * + * @param sequence A pointer to the sequence of characters to search for. + * @param sequence_size The size of the sequence to search for. + * @return A `std::pair` where the first element is a boolean indicating whether the sequence was + * found (`true`) or not (`false`), and the second element is the starting index of the sequence if + * found. + */ + std::pair find_sequence(const char* sequence, std::size_t sequence_size) { + const std::size_t ssize = size(); + if (ssize >= sequence_size) { + for (std::size_t i = 0; i <= ssize - sequence_size; ++i) { + bool found = true; + for (std::size_t j = 0; j < sequence_size; ++j) { + if (at(i + j) != sequence[j]) { + found = false; + break; + } + } + if (found) { + return std::make_pair(true, i); + } + } + } + return std::make_pair(false, 0); + } + + /** + * @brief Converts the container to a std::string_view. + * + * This operator allows the container to be implicitly converted to a `std::string_view`, + * providing a non-owning view into the container's data. + * + * @return A `std::string_view` representing the container's data. + */ + operator std::string_view() const { + return std::string_view(this->data(), this->size()); + } + + /** + * @brief Calculates the checksum of the elements in the container. + * + * This function iterates over each element in the container and adds their unsigned integer representations + * to the sum. The result is returned as a 32-bit unsigned integer. + * + * @return The checksum of the elements in the container. + */ + uint32_t calc_check_sum() { + return calc_check_sum(*this); + } + + /** + * @brief Calculates the checksum of the elements in the given iterable container. + * + * This function template calculates the checksum of the elements in the provided iterable container. + * It iterates over each element in the container and adds their unsigned integer representations to the sum. + * The result is returned as a 32-bit unsigned integer. + * + * @tparam T The type of the iterable container. + * @param iterable The iterable container whose elements checksum is to be calculated. + * @return The checksum of the elements in the iterable container. + */ + template + static uint32_t calc_check_sum(const T& iterable) { + uint32_t sum = 0; + for (char c : iterable) { + sum += static_cast(static_cast(c)); + } + return sum; + } +}; + +} // namespace comm + +#endif /* NO_SERVER */ + +#endif /* BYTEARRAY_H */ diff --git a/vpr/src/server/commcmd.h b/vpr/src/server/commcmd.h new file mode 100644 index 00000000000..28f3f69f452 --- /dev/null +++ b/vpr/src/server/commcmd.h @@ -0,0 +1,18 @@ +#ifndef COMMCMD_H +#define COMMCMD_H + +#ifndef NO_SERVER + +namespace comm { + +enum class CMD : int { + NONE=-1, + GET_PATH_LIST_ID=0, + DRAW_PATH_ID=1 +}; + +} // namespace comm + +#endif /* NO_SERVER */ + +#endif /* COMMCMD_H */ diff --git a/vpr/src/server/commconstants.h b/vpr/src/server/commconstants.h new file mode 100644 index 00000000000..2eaeed60386 --- /dev/null +++ b/vpr/src/server/commconstants.h @@ -0,0 +1,35 @@ +#ifndef COMMCONSTS_H +#define COMMCONSTS_H + +#ifndef NO_SERVER + +#include + +namespace comm { + +inline const std::string KEY_JOB_ID{"JOB_ID"}; +inline const std::string KEY_CMD{"CMD"}; +inline const std::string KEY_OPTIONS{"OPTIONS"}; +inline const std::string KEY_DATA{"DATA"}; +inline const std::string KEY_STATUS{"STATUS"}; +inline const std::string ECHO_TELEGRAM_BODY{"ECHO"}; + +const unsigned char ZLIB_COMPRESSOR_ID = 'z'; +const unsigned char NONE_COMPRESSOR_ID = '\x0'; + +inline const std::string OPTION_PATH_NUM{"path_num"}; +inline const std::string OPTION_PATH_TYPE{"path_type"}; +inline const std::string OPTION_DETAILS_LEVEL{"details_level"}; +inline const std::string OPTION_IS_FLAT_ROUTING{"is_flat_routing"}; +inline const std::string OPTION_PATH_ELEMENTS{"path_elements"}; +inline const std::string OPTION_HIGHLIGHT_MODE{"high_light_mode"}; +inline const std::string OPTION_DRAW_PATH_CONTOUR{"draw_path_contour"}; + +inline const std::string KEY_SETUP_PATH_LIST{"setup"}; +inline const std::string KEY_HOLD_PATH_LIST{"hold"}; + +} // namespace comm + +#endif /* NO_SERVER */ + +#endif /* COMMCONSTS_H */ diff --git a/vpr/src/server/convertutils.cpp b/vpr/src/server/convertutils.cpp new file mode 100644 index 00000000000..f176e7ffee9 --- /dev/null +++ b/vpr/src/server/convertutils.cpp @@ -0,0 +1,71 @@ +#ifndef NO_SERVER + +#include "convertutils.h" +#include +#include +#include + +#include "vtr_util.h" +#include "vtr_error.h" + +std::optional try_convert_to_int(const std::string& str) { + try { + return vtr::atoi(str); + } catch (const vtr::VtrError&) { + return std::nullopt; + } +} + +static std::string get_pretty_str_from_double(double value) { + std::ostringstream ss; + ss << std::fixed << std::setprecision(2) << value; // Set precision to 2 digit after the decimal point + return ss.str(); +} + +std::string get_pretty_duration_str_from_ms(int64_t duration_ms) { + std::string result; + if (duration_ms >= 1000) { + result = get_pretty_str_from_double(duration_ms / 1000.0) + " sec"; + } else { + result = std::to_string(duration_ms); + result += " ms"; + } + return result; +} + +std::string get_pretty_size_str_from_bytes_num(int64_t bytes_num) { + std::string result; + if (bytes_num >= 1024*1024*1024) { + result = get_pretty_str_from_double(bytes_num / double(1024*1024*1024)) + "Gb"; + } else if (bytes_num >= 1024*1024) { + result = get_pretty_str_from_double(bytes_num / double(1024*1024)) + "Mb"; + } else if (bytes_num >= 1024) { + result = get_pretty_str_from_double(bytes_num / double(1024)) + "Kb"; + } else { + result = std::to_string(bytes_num) + "bytes"; + } + return result; +} + +std::string get_truncated_middle_str(const std::string& src, std::size_t num) { + std::string result; + constexpr std::size_t minimal_string_size_to_truncate = 20; + if (num < minimal_string_size_to_truncate) { + num = minimal_string_size_to_truncate; + } + constexpr const char middle_place_holder[] = "..."; + const std::size_t src_size = src.size(); + if (src_size > num) { + int prefix_num = num / 2; + int suffix_num = num / 2 - std::strlen(middle_place_holder); + result.append(src.substr(0, prefix_num)); + result.append(middle_place_holder); + result.append(src.substr(src_size - suffix_num)); + } else { + result = src; + } + + return result; +} + +#endif /* NO_SERVER */ diff --git a/vpr/src/server/convertutils.h b/vpr/src/server/convertutils.h new file mode 100644 index 00000000000..73658145395 --- /dev/null +++ b/vpr/src/server/convertutils.h @@ -0,0 +1,19 @@ +#ifndef CONVERTUTILS_H +#define CONVERTUTILS_H + +#ifndef NO_SERVER + +#include +#include +#include + +const std::size_t DEFAULT_PRINT_STRING_MAX_NUM = 100; + +std::optional try_convert_to_int(const std::string&); +std::string get_pretty_duration_str_from_ms(int64_t durationMs); +std::string get_pretty_size_str_from_bytes_num(int64_t bytesNum); +std::string get_truncated_middle_str(const std::string& src, std::size_t num = DEFAULT_PRINT_STRING_MAX_NUM); + +#endif /* NO_SERVER */ + +#endif /* CONVERTUTILS_H */ diff --git a/vpr/src/server/gateio.cpp b/vpr/src/server/gateio.cpp new file mode 100644 index 00000000000..d40431e7da9 --- /dev/null +++ b/vpr/src/server/gateio.cpp @@ -0,0 +1,290 @@ +#ifndef NO_SERVER + +#include "gateio.h" + +#include "telegramparser.h" +#include "commconstants.h" +#include "convertutils.h" + +namespace server { + +GateIO::GateIO() { + m_is_running.store(false); +} + +GateIO::~GateIO() { + stop(); +} + +void GateIO::start(int port_num) { + if (!m_is_running.load()) { + m_port_num = port_num; + VTR_LOG("starting server"); + m_is_running.store(true); + m_thread = std::thread(&GateIO::start_listening, this); + } +} + +void GateIO::stop() { + if (m_is_running.load()) { + m_is_running.store(false); + if (m_thread.joinable()) { + m_thread.join(); + } + } +} + +void GateIO::take_received_tasks(std::vector& tasks) { + std::unique_lock lock(m_tasks_mutex); + for (TaskPtr& task: m_received_tasks) { + m_logger.queue(LogLevel::Debug, "move task id=", task->job_id(), "for processing"); + tasks.push_back(std::move(task)); + } + m_received_tasks.clear(); +} + +void GateIO::move_tasks_to_send_queue(std::vector& tasks) { + std::unique_lock lock(m_tasks_mutex); + for (TaskPtr& task: tasks) { + m_logger.queue(LogLevel::Debug, "move task id=", task->job_id(), "finished", (task->has_error() ? "with error" : "successfully"), task->error(), "to send queue"); + m_send_tasks.push_back(std::move(task)); + } + tasks.clear(); +} + +GateIO::ActivityStatus GateIO::check_client_connection(sockpp::tcp6_acceptor& tcp_server, std::optional& client_opt) { + ActivityStatus status = ActivityStatus::WAITING_ACTIVITY; + + sockpp::inet6_address peer; + sockpp::tcp6_socket client = tcp_server.accept(&peer); + if (client) { + m_logger.queue(LogLevel::Info, "client", client.address().to_string() , "connection accepted"); + client.set_non_blocking(true); + client_opt = std::move(client); + + status = ActivityStatus::CLIENT_ACTIVITY; + } + + return status; +} + +GateIO::ActivityStatus GateIO::handle_sending_data(sockpp::tcp6_socket& client) { + ActivityStatus status = ActivityStatus::WAITING_ACTIVITY; + std::unique_lock lock(m_tasks_mutex); + + if (!m_send_tasks.empty()) { + const TaskPtr& task = m_send_tasks.at(0); + try { + std::size_t bytes_to_send = std::min(CHUNK_MAX_BYTES_NUM, task->response_buffer().size()); + std::size_t bytes_sent = client.write_n(task->response_buffer().data(), bytes_to_send); + if (bytes_sent <= task->orig_reponse_bytes_num()) { + task->chop_num_sent_bytes_from_response_buffer(bytes_sent); + m_logger.queue(LogLevel::Detail, + "sent chunk:", get_pretty_size_str_from_bytes_num(bytes_sent), + "from", get_pretty_size_str_from_bytes_num(task->orig_reponse_bytes_num()), + "left:", get_pretty_size_str_from_bytes_num(task->response_buffer().size())); + status = ActivityStatus::CLIENT_ACTIVITY; + } + } catch(...) { + m_logger.queue(LogLevel::Detail, "error while writing chunk"); + status = ActivityStatus::COMMUNICATION_PROBLEM; + } + + if (task->is_response_fully_sent()) { + m_logger.queue(LogLevel::Info, "sent:", task->telegram_header().info(), task->info()); + } + } + + // remove reported tasks + std::size_t tasks_num_before_removing = m_send_tasks.size(); + + auto partition_iter = std::partition(m_send_tasks.begin(), m_send_tasks.end(), + [](const TaskPtr& task) { return !task->is_response_fully_sent(); }); + m_send_tasks.erase(partition_iter, m_send_tasks.end()); + bool is_removing_took_place = tasks_num_before_removing != m_send_tasks.size(); + if (!m_send_tasks.empty() && is_removing_took_place) { + m_logger.queue(LogLevel::Detail, "left tasks num to send ", m_send_tasks.size()); + } + + return status; +} + +GateIO::ActivityStatus GateIO::handle_receiving_data(sockpp::tcp6_socket& client, comm::TelegramBuffer& telegram_buff, std::string& received_message) { + ActivityStatus status = ActivityStatus::WAITING_ACTIVITY; + std::size_t bytes_actually_received{0}; + try { + bytes_actually_received = client.read_n(&received_message[0], CHUNK_MAX_BYTES_NUM); + } catch(...) { + m_logger.queue(LogLevel::Error, "fail to receiving"); + status = ActivityStatus::COMMUNICATION_PROBLEM; + } + + if ((bytes_actually_received > 0) && (bytes_actually_received <= CHUNK_MAX_BYTES_NUM)) { + m_logger.queue(LogLevel::Detail, "received chunk:", get_pretty_size_str_from_bytes_num(bytes_actually_received)); + telegram_buff.append(comm::ByteArray{received_message.c_str(), bytes_actually_received}); + status = ActivityStatus::CLIENT_ACTIVITY; + } + + return status; +} + +GateIO::ActivityStatus GateIO::handle_telegrams(std::vector& telegram_frames, comm::TelegramBuffer& telegram_buff) { + ActivityStatus status = ActivityStatus::WAITING_ACTIVITY; + telegram_frames.clear(); + telegram_buff.take_telegram_frames(telegram_frames); + for (const comm::TelegramFramePtr& telegram_frame: telegram_frames) { + // process received data + std::string message{telegram_frame->body}; + bool is_echo_telegram = false; + if ((message.size() == comm::ECHO_TELEGRAM_BODY.size()) && (message == comm::ECHO_TELEGRAM_BODY)) { + m_logger.queue(LogLevel::Detail, "received", comm::ECHO_TELEGRAM_BODY); + is_echo_telegram = true; + status = ActivityStatus::CLIENT_ACTIVITY; + } + + if (!is_echo_telegram) { + m_logger.queue(LogLevel::Detail, "received composed", get_pretty_size_str_from_bytes_num(message.size()), ":", get_truncated_middle_str(message)); + std::optional job_id_opt = comm::TelegramParser::try_extract_field_job_id(message); + std::optional cmd_opt = comm::TelegramParser::try_extract_field_cmd(message); + std::optional options_opt = comm::TelegramParser::try_extract_field_options(message); + if (job_id_opt && cmd_opt && options_opt) { + TaskPtr task = std::make_unique(job_id_opt.value(), static_cast(cmd_opt.value()), options_opt.value()); + const comm::TelegramHeader& header = telegram_frame->header; + m_logger.queue(LogLevel::Info, "received:", header.info(), task->info(/*skipDuration*/true)); + std::unique_lock lock(m_tasks_mutex); + m_received_tasks.push_back(std::move(task)); + } else { + m_logger.queue(LogLevel::Error, "broken telegram detected, fail extract options from", message); + } + } + } + + return status; +} + +GateIO::ActivityStatus GateIO::handle_client_alive_tracker(sockpp::tcp6_socket& client, std::unique_ptr& client_alive_tracker_ptr) { + ActivityStatus status = ActivityStatus::WAITING_ACTIVITY; + if (client_alive_tracker_ptr) { + /// handle sending echo to client + if (client_alive_tracker_ptr->is_time_to_sent_echo()) { + comm::TelegramHeader echo_header = comm::TelegramHeader::construct_from_body(comm::ECHO_TELEGRAM_BODY); + std::string message{echo_header.buffer()}; + message.append(comm::ECHO_TELEGRAM_BODY); + try { + std::size_t bytes_sent = client.write(message); + if (bytes_sent == message.size()) { + m_logger.queue(LogLevel::Detail, "sent", comm::ECHO_TELEGRAM_BODY); + client_alive_tracker_ptr->on_echo_sent(); + } + } catch(...) { + m_logger.queue(LogLevel::Debug, "fail to sent", comm::ECHO_TELEGRAM_BODY); + status = ActivityStatus::COMMUNICATION_PROBLEM; + } + } + + /// handle client timeout + if (client_alive_tracker_ptr->is_client_timeout()) { + m_logger.queue(LogLevel::Error, "client didn't respond too long"); + status = ActivityStatus::COMMUNICATION_PROBLEM; + } + } + + return status; +} + +void GateIO::handle_activity_status(ActivityStatus status, std::unique_ptr& client_alive_tracker_ptr, bool& is_communication_problem_detected) { + if (status == ActivityStatus::CLIENT_ACTIVITY) { + if (client_alive_tracker_ptr) { + client_alive_tracker_ptr->on_client_activity(); + } + } else if (status == ActivityStatus::COMMUNICATION_PROBLEM) { + is_communication_problem_detected = true; + } +} + +void GateIO::start_listening() { +#ifdef ENABLE_CLIENT_ALIVE_TRACKER + std::unique_ptr client_alive_tracker_ptr = + std::make_unique(std::chrono::milliseconds{5000}, std::chrono::milliseconds{20000}); +#else + std::unique_ptr client_alive_tracker_ptr; +#endif + + comm::TelegramBuffer telegram_buff; + std::vector telegram_frames; + + sockpp::initialize(); + sockpp::tcp6_acceptor tcp_server(m_port_num); + tcp_server.set_non_blocking(true); + + if (tcp_server) { + m_logger.queue(LogLevel::Info, "open server, port=", m_port_num); + } else { + m_logger.queue(LogLevel::Info, "fail to open server, port=", m_port_num); + } + + std::optional client_opt; + + std::string received_message; + received_message.resize(CHUNK_MAX_BYTES_NUM); + + /// comm event loop + while(m_is_running.load()) { + bool is_communication_problem_detected = false; + + if (!client_opt) { + ActivityStatus status = check_client_connection(tcp_server, client_opt); + if (status == ActivityStatus::CLIENT_ACTIVITY) { + if (client_alive_tracker_ptr) { + client_alive_tracker_ptr->reset(); + } + } + } + + if (client_opt) { + sockpp::tcp6_socket& client = client_opt.value(); // shortcut + + /// handle sending + ActivityStatus status = handle_sending_data(client); + handle_activity_status(status, client_alive_tracker_ptr, is_communication_problem_detected); + + /// handle receiving + status = handle_receiving_data(client, telegram_buff, received_message); + handle_activity_status(status, client_alive_tracker_ptr, is_communication_problem_detected); + + /// handle telegrams + status = handle_telegrams(telegram_frames, telegram_buff); + handle_activity_status(status, client_alive_tracker_ptr, is_communication_problem_detected); + + // forward telegramBuffer errors + std::vector telegram_buffer_errors; + telegram_buff.take_errors(telegram_buffer_errors); + for (const std::string& error: telegram_buffer_errors) { + m_logger.queue(LogLevel::Info, error); + } + + /// handle client alive tracker + status = handle_client_alive_tracker(client, client_alive_tracker_ptr); + handle_activity_status(status, client_alive_tracker_ptr, is_communication_problem_detected); + + /// handle communication problem + if (is_communication_problem_detected) { + client_opt = std::nullopt; + if (!telegram_buff.empty()) { + m_logger.queue(LogLevel::Debug, "clear telegramBuff"); + telegram_buff.clear(); + } + } + } + + std::this_thread::sleep_for(std::chrono::milliseconds{LOOP_INTERVAL_MS}); + } +} + +void GateIO::print_logs() { + m_logger.flush(); +} + +} // namespace server + +#endif /* NO_SERVER */ diff --git a/vpr/src/server/gateio.h b/vpr/src/server/gateio.h new file mode 100644 index 00000000000..aa9036459c5 --- /dev/null +++ b/vpr/src/server/gateio.h @@ -0,0 +1,243 @@ +#ifndef GATEIO_H +#define GATEIO_H + +#ifndef NO_SERVER + +#include "task.h" +#include "telegrambuffer.h" + +#include "vtr_log.h" + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "sockpp/tcp6_acceptor.h" + +namespace server { + +/** + * @brief Implements the socket communication layer with the outside world. + * + * Operable only with a single client. As soon as client connection is detected + * it begins listening on the specified port number for incoming client requests, + * collects and encapsulates them into tasks (see @ref Task). + * The incoming tasks are extracted and handled by the top-level logic @ref TaskResolver in the main thread. + * Once the tasks are resolved by the @ref TaskResolver, they are returned to be sent back to the client app as a response. + * Moving @ref Task across threads happens in @ref server::update. + * + * @note + * - The GateIO instance should be created and managed from the main thread, while its internal processing + * and IO operations are performed asynchronously in a separate thread. This separation ensures smooth IO behavior + * and responsiveness of the application. + * - GateIO is not started automatically upon creation, you have to use the 'start' method with the port number. + * - The socket is initialized in a non-blocking mode to function properly in a multithreaded environment. +*/ +class GateIO +{ + enum class ActivityStatus : int { + WAITING_ACTIVITY, + CLIENT_ACTIVITY, + COMMUNICATION_PROBLEM + }; + + const std::size_t CHUNK_MAX_BYTES_NUM = 2*1024*1024; // 2Mb + + /** + * @brief Helper class aimed to help detecting a client offline. + * + * The ClientAliveTracker is pinged each time there is some activity from the client side. + * When the client doesn't show activity for a certain amount of time, the ClientAliveTracker generates + * an event for sending an ECHO telegram to the client. + * If, after sending the ECHO telegram, the client does not respond with an ECHO, it means the client is absent, + * and it's time to start accepting new client connections in GateIO. + */ + class ClientAliveTracker { + public: + ClientAliveTracker(const std::chrono::milliseconds& echoIntervalMs, const std::chrono::milliseconds& clientTimeoutMs) + : m_echo_interval_ms(echoIntervalMs), m_client_timeout_ms(clientTimeoutMs) { + reset(); + } + ClientAliveTracker()=default; + + void on_client_activity() { + m_last_client_activity_time = std::chrono::high_resolution_clock::now(); + } + + void on_echo_sent() { + m_last_echo_sent_time = std::chrono::high_resolution_clock::now(); + } + + bool is_time_to_sent_echo() const { + return (duration_since_last_client_activity_ms() > m_echo_interval_ms) && (durationSinceLastEchoSentMs() > m_echo_interval_ms); + } + bool is_client_timeout() const { return duration_since_last_client_activity_ms() > m_client_timeout_ms; } + + void reset() { + on_client_activity(); + } + + private: + std::chrono::high_resolution_clock::time_point m_last_client_activity_time; + std::chrono::high_resolution_clock::time_point m_last_echo_sent_time; + std::chrono::milliseconds m_echo_interval_ms; + std::chrono::milliseconds m_client_timeout_ms; + + std::chrono::milliseconds duration_since_last_client_activity_ms() const { + auto now = std::chrono::high_resolution_clock::now(); + return std::chrono::duration_cast(now - m_last_client_activity_time); + } + std::chrono::milliseconds durationSinceLastEchoSentMs() const { + auto now = std::chrono::high_resolution_clock::now(); + return std::chrono::duration_cast(now - m_last_echo_sent_time); + } + }; + + enum class LogLevel: int { + Error, + Info, + Detail, + Debug + }; + + class TLogger { + public: + TLogger() { + m_log_level = static_cast(LogLevel::Info); + } + ~TLogger() {} + + template + void queue(LogLevel logLevel, Args&&... args) { + if (static_cast(logLevel) <= m_log_level) { + std::unique_lock lock(m_log_stream_mutex); + if (logLevel == LogLevel::Error) { + m_log_stream << "ERROR:"; + } + ((m_log_stream << ' ' << std::forward(args)), ...); + m_log_stream << "\n"; + } + } + + void flush() { + std::unique_lock lock(m_log_stream_mutex); + if (!m_log_stream.str().empty()) { + VTR_LOG(m_log_stream.str().c_str()); + m_log_stream.str(""); + } + } + + private: + std::stringstream m_log_stream; + std::mutex m_log_stream_mutex; + std::atomic m_log_level; + }; + + const int LOOP_INTERVAL_MS = 100; + +public: + /** + * @brief Default constructor for GateIO. + */ + GateIO(); + ~GateIO(); + + GateIO(const GateIO&) = delete; + GateIO& operator=(const GateIO&) = delete; + + GateIO(GateIO&&) = delete; + GateIO& operator=(GateIO&&) = delete; + + /** + * @brief Returns a bool indicating whether or not the port listening process is currently running. + * + * @return True if the port listening process is running, false otherwise. + */ + bool is_running() const { return m_is_running.load(); } + + /** + * @brief Transfers ownership of received tasks to the caller. + * + * This method moves all received tasks from the internal storage to the provided vector. + * After calling this method, the internal list of received tasks will be cleared. + * + * @param tasks A reference to a vector where the received tasks will be moved. + */ + void take_received_tasks(std::vector& tasks); + + /** + * @brief Moves tasks to the send queue. + * + * This method moves the tasks to the send queue. + * Each task is moved from the input vector to the send queue, and the input vector + * remains empty after the operation. + * + * @param tasks A reference to a vector containing the tasks to be moved to the send queue. + */ + void move_tasks_to_send_queue(std::vector& tasks); + + /** + * @brief Prints log messages for the GateIO. + * + * @note Must be called from the main thread since it's invoke std::cout. + * Calling this method from other threads may result in unexpected behavior. + */ + void print_logs(); + + /** + * @brief Starts the server on the specified port number. + * + * This method starts the server to listen for incoming connections on the specified port number. + * Once started,the server will continue running in a separate thread and will accept connection only from a single client + * attempting to connect to the specified port. + * + * @param port_num The port number on which the server will listen for incoming connection. + */ + void start(int port_num); + + /** + * @brief Stops the server and terminates the listening thread. + * + * This method stops the server and terminates the listening thread. After calling this method, + * the server will no longer accept incoming connections and the listening thread will be terminated. + * + * @note This method should be called when the server needs to be shut down gracefully. + */ + void stop(); + +private: + int m_port_num = -1; + + std::atomic m_is_running; // is true when started + + std::thread m_thread; // thread to execute socket IO work + + std::mutex m_tasks_mutex; // we used single mutex to guard both vectors m_received_tasks and m_sendTasks + std::vector m_received_tasks; // tasks from client (requests) + std::vector m_send_tasks; // tasks to client (responses) + + TLogger m_logger; + + void start_listening(); // thread worker function + + /// helper functions to be executed inside startListening + ActivityStatus check_client_connection(sockpp::tcp6_acceptor& tcp_server, std::optional& client_opt); + ActivityStatus handle_sending_data(sockpp::tcp6_socket& client); + ActivityStatus handle_receiving_data(sockpp::tcp6_socket& client, comm::TelegramBuffer& telegram_buff, std::string& received_message); + ActivityStatus handle_telegrams(std::vector& telegram_frames, comm::TelegramBuffer& telegram_buff); + ActivityStatus handle_client_alive_tracker(sockpp::tcp6_socket& client, std::unique_ptr& client_alive_tracker_ptr); + void handle_activity_status(ActivityStatus status, std::unique_ptr& client_alive_tracker_ptr, bool& is_communication_problem_detected); + /// +}; + +} // namespace server + +#endif /* NO_SERVER */ + +#endif /* GATEIO_H */ + diff --git a/vpr/src/server/pathhelper.cpp b/vpr/src/server/pathhelper.cpp new file mode 100644 index 00000000000..c3bfca88e50 --- /dev/null +++ b/vpr/src/server/pathhelper.cpp @@ -0,0 +1,72 @@ +#ifndef NO_SERVER + +#include "pathhelper.h" +#include "commconstants.h" + +#include "globals.h" +#include "VprTimingGraphResolver.h" +#include "tatum/TimingReporter.hpp" +#include "RoutingDelayCalculator.h" +#include "timing_info.h" + +#include + +namespace server { + +/** + * @brief helper function to collect crit parser metadata. + * This data is used on parser side to properly extract arrival path elements from the timing report. + */ +static void collect_crit_path_metadata(std::stringstream& ss, const std::vector& paths) { + ss << "#RPT METADATA:\n"; + ss << "path_index/clock_launch_path_elements_num/arrival_path_elements_num\n"; + std::size_t counter = 0; + for (const tatum::TimingPath& path: paths) { + std::size_t offset_index = path.clock_launch_path().elements().size(); + std::size_t selectable_items = path.data_arrival_path().elements().size(); + ss << counter << "/" << offset_index << "/" << selectable_items << "\n"; + counter++; + } +} + +/** + * @brief Helper function to calculate critical path timing report with specified parameters. + */ +CritPathsResultPtr calc_critical_path(const std::string& report_type, int crit_path_num, e_timing_report_detail details_level, bool is_flat_routing) { + // shortcuts + const std::shared_ptr& timing_info = g_vpr_ctx.server().timing_info; + const std::shared_ptr& routing_delay_calc = g_vpr_ctx.server().routing_delay_calc; + + auto& timing_ctx = g_vpr_ctx.timing(); + auto& atom_ctx = g_vpr_ctx.atom(); + // + + t_analysis_opts analysis_opts; + analysis_opts.timing_report_detail = details_level; + analysis_opts.timing_report_npaths = crit_path_num; + + VprTimingGraphResolver resolver(atom_ctx.nlist, atom_ctx.lookup, *timing_ctx.graph, *routing_delay_calc, is_flat_routing); + resolver.set_detail_level(analysis_opts.timing_report_detail); + + tatum::TimingReporter timing_reporter(resolver, *timing_ctx.graph, *timing_ctx.constraints); + + CritPathsResultPtr result = std::make_shared(); + + std::stringstream ss; + if (report_type == comm::KEY_SETUP_PATH_LIST) { + timing_reporter.report_timing_setup(result->paths, ss, *timing_info->setup_analyzer(), analysis_opts.timing_report_npaths); + } else if (report_type == comm::KEY_HOLD_PATH_LIST) { + timing_reporter.report_timing_hold(result->paths, ss, *timing_info->hold_analyzer(), analysis_opts.timing_report_npaths); + } + + if (!result->paths.empty()) { + collect_crit_path_metadata(ss, result->paths); + result->report = ss.str(); + } + + return result; +} + +} // namespace server + +#endif /* NO_SERVER */ diff --git a/vpr/src/server/pathhelper.h b/vpr/src/server/pathhelper.h new file mode 100644 index 00000000000..8d2244a885a --- /dev/null +++ b/vpr/src/server/pathhelper.h @@ -0,0 +1,55 @@ +#ifndef PATHHELPER_H +#define PATHHELPER_H + +#ifndef NO_SERVER + +#include +#include +#include + +#include "tatum/report/TimingPath.hpp" +#include "vpr_types.h" + +namespace server { + +/** + * @brief Structure to retain the calculation result of the critical path. + * + * It contains the critical path list and the generated report as a string. +*/ +struct CritPathsResult { + /** + * @brief Checks if the CritPathsResult contains report. + * @return True if contains report, false otherwise. + */ + bool is_valid() const { return !report.empty(); } + + /** + * @brief Vector containing timing paths. + */ + std::vector paths; + + /** + * @brief String containing the generated report. + */ + std::string report; +}; +using CritPathsResultPtr = std::shared_ptr; + +/** +* @brief Calculates the critical path. + +* This function calculates the critical path based on the provided parameters. +* @param type The type of the critical path. Must be either "setup" or "hold". +* @param crit_path_num The max number of critical paths to record. +* @param details_level The level of detail for the timing report. See @ref e_timing_report_detail. +* @param is_flat_routing Indicates whether flat routing should be used. +* @return A `CritPathsResultPtr` which is a pointer to the result of the critical path calculation (see @ref CritPathsResult). +*/ +CritPathsResultPtr calc_critical_path(const std::string& type, int crit_path_num, e_timing_report_detail details_level, bool is_flat_routing); + +} // namespace server + +#endif /* NO_SERVER */ + +#endif /* PATHHELPER_H */ diff --git a/vpr/src/server/serverupdate.cpp b/vpr/src/server/serverupdate.cpp new file mode 100644 index 00000000000..de45c45936d --- /dev/null +++ b/vpr/src/server/serverupdate.cpp @@ -0,0 +1,49 @@ +#ifndef NO_SERVER + +#include "serverupdate.h" +#include "gateio.h" +#include "taskresolver.h" +#include "globals.h" +#include "ezgl/application.hpp" + +namespace server { + +gboolean update(gpointer data) { + const bool is_running = g_vpr_ctx.server().gate_io.is_running(); + if (is_running) { + // shortcuts + ezgl::application* app = static_cast(data); + GateIO& gate_io = g_vpr_ctx.mutable_server().gate_io; + TaskResolver& task_resolver = g_vpr_ctx.mutable_server().task_resolver; + + std::vector tasks_buff; + + gate_io.take_received_tasks(tasks_buff); + for (TaskPtr& task: tasks_buff) { + task_resolver.own_task(std::move(task)); + } + tasks_buff.clear(); + + const bool is_server_context_initialized = g_vpr_ctx.server().timing_info && g_vpr_ctx.server().routing_delay_calc; + if (is_server_context_initialized) { + bool has_finished_tasks = task_resolver.update(app); + + task_resolver.take_finished_tasks(tasks_buff); + + gate_io.move_tasks_to_send_queue(tasks_buff); + + // Call the redraw method of the application if any of task was processed + if (has_finished_tasks) { + app->refresh_drawing(); + } + } + gate_io.print_logs(); + } + + // Return TRUE to keep the timer running, or FALSE to stop it + return is_running; +} + +} // namespace server + +#endif // NO_SERVER diff --git a/vpr/src/server/serverupdate.h b/vpr/src/server/serverupdate.h new file mode 100644 index 00000000000..f3add9ed269 --- /dev/null +++ b/vpr/src/server/serverupdate.h @@ -0,0 +1,24 @@ +#ifndef SERVERUPDATE_H +#define SERVERUPDATE_H + +#ifndef NO_SERVER + +#include + +namespace server { + +/** + * @brief Main server update callback. + * + * This function is a periodic callback invoked at a fixed interval to manage and handle incoming client requests. + * It acts as the central control point for processing client interactions and orchestrating server-side operations + * within the specified time intervals. + */ +gboolean update(gpointer); + +} // namespace server + +#endif /* NO_SERVER */ + +#endif /* SERVERUPDATE_H */ + diff --git a/vpr/src/server/task.cpp b/vpr/src/server/task.cpp new file mode 100644 index 00000000000..f05ada6d835 --- /dev/null +++ b/vpr/src/server/task.cpp @@ -0,0 +1,113 @@ +#ifndef NO_SERVER + +#include "task.h" + +#include + +#include "convertutils.h" +#include "commconstants.h" +#include "zlibutils.h" + +namespace server { + +Task::Task(int jobId, comm::CMD cmd, const std::string& options) +: m_job_id(jobId), m_cmd(cmd), m_options(options) { + m_creation_time = std::chrono::high_resolution_clock::now(); +} + +void Task::chop_num_sent_bytes_from_response_buffer(std::size_t bytes_sent_num) { + if (m_response_buffer.size() >= bytes_sent_num) { + m_response_buffer.erase(0, bytes_sent_num); + } else { + m_response_buffer.clear(); + } + + if (m_response_buffer.empty()) { + m_is_response_fully_sent = true; + } +} + +bool Task::options_match(const std::unique_ptr& other) { + if (other->options().size() != m_options.size()) { + return false; + } + return other->options() == m_options; +} + +void Task::set_fail(const std::string& error) { + m_is_finished = true; + m_error = error; + bake_response(); +} + +void Task::set_success() { + m_is_finished = true; + bake_response(); +} + +void Task::set_success(std::string&& result) { + m_result = std::move(result); + m_is_finished = true; + bake_response(); +} + +std::string Task::info(bool skip_duration) const { + std::stringstream ss; + ss << "task[" + << "id=" << std::to_string(m_job_id) + << ",cmd=" << std::to_string(static_cast(m_cmd)); + if (!skip_duration) { + ss << ",exists=" << get_pretty_duration_str_from_ms(time_ms_elapsed()); + } + ss << "]"; + return ss.str(); +} + +int64_t Task::time_ms_elapsed() const { + auto now = std::chrono::high_resolution_clock::now(); + return std::chrono::duration_cast(now - m_creation_time).count(); +} + +void Task::bake_response() { + std::stringstream ss; + ss << "{"; + + ss << "\"" << comm::KEY_JOB_ID << "\":\"" << m_job_id << "\","; + ss << "\"" << comm::KEY_CMD << "\":\"" << static_cast(m_cmd) << "\","; + ss << "\"" << comm::KEY_OPTIONS << "\":\"" << m_options << "\","; + if (has_error()) { + ss << "\"" << comm::KEY_DATA << "\":\"" << m_error << "\","; + } else { + ss << "\"" << comm::KEY_DATA << "\":\"" << m_result << "\","; + } + int status = has_error() ? 0 : 1; + ss << "\"" << comm::KEY_STATUS << "\":\"" << status << "\""; + + ss << "}"; + + std::optional body_opt; + uint8_t compressor_id = comm::NONE_COMPRESSOR_ID; +#ifndef FORCE_DISABLE_ZLIB_TELEGRAM_COMPRESSION + body_opt = try_compress(ss.str()); + if (body_opt) { + compressor_id = comm::ZLIB_COMPRESSOR_ID; + } +#endif + if (!body_opt) { + // fail to compress, use raw + compressor_id = comm::NONE_COMPRESSOR_ID; + body_opt = ss.str(); + } + + std::string body{std::move(body_opt.value())}; + m_telegram_header = comm::TelegramHeader::construct_from_body(body, compressor_id); + + m_response_buffer.append(m_telegram_header.buffer().begin(), m_telegram_header.buffer().end()); + m_response_buffer.append(body); + + m_orig_reponse_bytes_num = m_response_buffer.size(); +} + +} // namespace server + +#endif /* NO_SERVER */ diff --git a/vpr/src/server/task.h b/vpr/src/server/task.h new file mode 100644 index 00000000000..3d29e49373f --- /dev/null +++ b/vpr/src/server/task.h @@ -0,0 +1,205 @@ +#ifndef TASK_H +#define TASK_H + +#ifndef NO_SERVER + +#include +#include +#include + +#include "telegramheader.h" +#include "commcmd.h" + +namespace server { + +/** + * @brief Implements the server task. + * + * This structure aids in encapsulating the client request, request result, and result status. + * It generates a JSON data structure to be sent back to the client as a response. + */ +class Task { +public: + /** + * @brief Constructs a new Task object. + * + * @param job_id The ID of the job associated with the task. + * @param cmd The command ID (see @ref comm::CMD) associated with the task. + * @param options Additional options for the task (default: empty string). + */ + Task(int job_id, comm::CMD cmd, const std::string& options = ""); + + Task(const Task&) = delete; + Task& operator=(const Task&) = delete; + + /** + * @brief Gets the job ID associated with the task. + * + * @return The job ID. + */ + int job_id() const { return m_job_id; } + + /** + * @brief Gets the command ID associated with the task. + * + * @return The command ID (see @ref comm::CMD). + */ + comm::CMD cmd() const { return m_cmd; } + + /** + * @brief Removes the specified number of bytes from the response buffer. + * + * This method removes the specified number of bytes from the beginning of the response buffer. + * It is typically used after sending a response to discard the bytes that have been sent. + * + * @param bytes_sent_num The number of bytes to remove from the response buffer. + */ + void chop_num_sent_bytes_from_response_buffer(std::size_t bytes_sent_num); + + /** + * @brief Checks if the options of this task match the options of another task. + * + * This method compares the options of this task with the options of another task + * and returns true if they match, otherwise returns false. + * + * @param other The other task to compare options with. + * @return True if the options match, false otherwise. + */ + bool options_match(const std::unique_ptr& other); + + /** + * @brief Retrieves the response buffer. + * + * This method returns a constant reference to the response buffer, which contains the data after task execution. + * + * @return A constant reference to the response buffer. + */ + const std::string& response_buffer() const { return m_response_buffer; } + + /** + * @brief Checks if the task has finished execution. + * + * This method returns true if the task has finished execution; otherwise, it returns false. + * + * @return True if the task has finished execution, false otherwise. + */ + bool is_finished() const { return m_is_finished; } + + /** + * @brief Checks if the task has encountered an error. + * + * This method returns true if the task has encountered an error; otherwise, it returns false. + * + * @return True if the task has encountered an error, false otherwise. + */ + bool has_error() const { return !m_error.empty(); } + + /** + * @brief Retrieves the error message associated with the task. + * + * This method returns the error message associated with the task, if any. + * + * @return A constant reference to the error message string. + */ + const std::string& error() const { return m_error; } + + /** + * @brief Retrieves the original number of response bytes. + * + * This method returns the original number of response bytes before any chopping operation. + * + * @return The original number of response bytes. + */ + std::size_t orig_reponse_bytes_num() const { return m_orig_reponse_bytes_num; } + + /** + * @brief Checks if the response has been fully sent. + * + * This method returns true if the entire response has been successfully sent, + * otherwise it returns false. + * + * @return True if the response has been fully sent, false otherwise. + */ + bool is_response_fully_sent() const { return m_is_response_fully_sent; } + + /** + * @brief Marks the task as failed with the specified error message. + * + * This method sets the task's error message to the provided error string, + * indicating that the task has failed. + * + * @param error The error message describing the reason for the task's failure. + */ + void set_fail(const std::string& error); + + /** + * @brief Marks the task as successfully completed. + */ + void set_success(); + + /** + * @brief Marks the task as successfully completed with the specified result. + * + * This method marks the task as successfully completed and stores the result. + * It takes an rvalue reference to a string, allowing for efficient move semantics. + * + * @param result An rvalue reference to a string describing the result of the task execution. + * The content of this string will be moved into the task's result storage. + */ + void set_success(std::string&& result); + + /** + * @brief Generates a string containing information about the task. + * + * This method generates a string containing information about the task, + * including its identifier, command, options, and optionally its duration. + * + * @param skip_duration If true, the duration information will be omitted from the string. + * + * @return A string containing information about the task. + */ + std::string info(bool skip_duration = false) const; + + /** + * @brief Retrieves the TelegramHeader associated with the task. + * + * This method returns a reference to the TelegramHeader associated with the task. + * + * @return A reference to the TelegramHeader associated with the task. + */ + const comm::TelegramHeader& telegram_header() const { return m_telegram_header; } + + /** + * @brief Retrieves the options associated with the task. + * + * This method returns a reference to the options string associated with the task. + * + * @return A reference to the options string associated with the task. + */ + const std::string& options() const { return m_options; } + +private: + int m_job_id = -1; + comm::CMD m_cmd = comm::CMD::NONE; + std::string m_options; + std::string m_result; + std::string m_error; + bool m_is_finished = false; + comm::TelegramHeader m_telegram_header; + std::string m_response_buffer; + std::size_t m_orig_reponse_bytes_num = 0; + bool m_is_response_fully_sent = false; + + std::chrono::high_resolution_clock::time_point m_creation_time; + + int64_t time_ms_elapsed() const; + + void bake_response(); +}; +using TaskPtr = std::unique_ptr; + +} // namespace server + +#endif /* NO_SERVER */ + +#endif /* TASK_H */ diff --git a/vpr/src/server/taskresolver.cpp b/vpr/src/server/taskresolver.cpp new file mode 100644 index 00000000000..5298521ece0 --- /dev/null +++ b/vpr/src/server/taskresolver.cpp @@ -0,0 +1,156 @@ +#ifndef NO_SERVER + +#include "taskresolver.h" + +#include "commconstants.h" +#include "globals.h" +#include "pathhelper.h" +#include "telegramoptions.h" +#include "gtkcomboboxhelper.h" + +#include + +namespace server { + +void TaskResolver::own_task(TaskPtr&& new_task) { + // pre-process task before adding, where we could quickly detect failure scenarios + for (const auto& task: m_tasks) { + if (task->cmd() == new_task->cmd()) { + if (task->options_match(new_task)) { + std::string msg = "similar task is already in execution, reject new " + new_task->info() + " and waiting for old " + task->info() + " execution"; + new_task->set_fail(msg); + } else { + // handle case when task has same cmd but different options + if (new_task->job_id() > task->job_id()) { + std::string msg = "old " + task->info() + " is overridden by a new " + new_task->info(); + task->set_fail(msg); + } + } + } + } + + // own task + m_tasks.emplace_back(std::move(new_task)); +} + +void TaskResolver::take_finished_tasks(std::vector& result) { + for (auto it=m_tasks.begin(); it != m_tasks.end();) { + TaskPtr& task = *it; + if (task->is_finished()) { + result.push_back(std::move(task)); + it = m_tasks.erase(it); + } else { + ++it; + } + } +} + +std::optional TaskResolver::try_get_details_level_enum(const std::string& path_details_level_str) const { + if (path_details_level_str == "netlist") { + return e_timing_report_detail::NETLIST; + } else if (path_details_level_str == "aggregated") { + return e_timing_report_detail::AGGREGATED; + } else if (path_details_level_str == "detailed") { + return e_timing_report_detail::DETAILED_ROUTING; + } else if (path_details_level_str == "debug") { + return e_timing_report_detail::DEBUG; + } + + return std::nullopt; +} + +bool TaskResolver::update(ezgl::application* app) { + bool has_processed_task = false; + for (auto& task: m_tasks) { + if (!task->is_finished()) { + switch(task->cmd()) { + case comm::CMD::GET_PATH_LIST_ID: { + process_get_path_list_task(app, task); + has_processed_task = true; + break; + } + case comm::CMD::DRAW_PATH_ID: { + process_draw_critical_path_task(app, task); + has_processed_task = true; + break; + } + default: break; + } + } + } + + return has_processed_task; +} + +void TaskResolver::process_get_path_list_task(ezgl::application*, const TaskPtr& task) { + static const std::vector keys{comm::OPTION_PATH_NUM, comm::OPTION_PATH_TYPE, comm::OPTION_DETAILS_LEVEL, comm::OPTION_IS_FLAT_ROUTING}; + TelegramOptions options{task->options(), keys}; + if (!options.has_errors()) { + ServerContext& server_ctx = g_vpr_ctx.mutable_server(); // shortcut + + server_ctx.crit_path_element_indexes.clear(); // reset selection if path list options has changed + + // read options + const int n_critical_path_num = options.get_int(comm::OPTION_PATH_NUM, 1); + const std::string path_type = options.get_string(comm::OPTION_PATH_TYPE); + const std::string details_level_str = options.get_string(comm::OPTION_DETAILS_LEVEL); + const bool is_flat = options.get_bool(comm::OPTION_IS_FLAT_ROUTING, false); + + // calculate critical path depending on options and store result in server context + std::optional details_level_opt = try_get_details_level_enum(details_level_str); + if (details_level_opt) { + CritPathsResultPtr crit_paths_result = calc_critical_path(path_type, n_critical_path_num, details_level_opt.value(), is_flat); + if (crit_paths_result->is_valid()) { + server_ctx.crit_paths = std::move(crit_paths_result->paths); + task->set_success(std::move(crit_paths_result->report)); + } else { + std::string msg{"Critical paths report is empty"}; + VTR_LOG_ERROR(msg.c_str()); + task->set_fail(msg); + } + } else { + std::string msg{"unsupported report details level " + details_level_str}; + VTR_LOG_ERROR(msg.c_str()); + task->set_fail(msg); + } + } else { + std::string msg{"options errors in get crit path list telegram: " + options.errors_str()}; + VTR_LOG_ERROR(msg.c_str()); + task->set_fail(msg); + } +} + +void TaskResolver::process_draw_critical_path_task(ezgl::application* app, const TaskPtr& task) { + TelegramOptions options{task->options(), {comm::OPTION_PATH_ELEMENTS, comm::OPTION_HIGHLIGHT_MODE, comm::OPTION_DRAW_PATH_CONTOUR}}; + if (!options.has_errors()) { + ServerContext& server_ctx = g_vpr_ctx.mutable_server(); // shortcut + + const std::map> path_elements = options.get_map_of_sets(comm::OPTION_PATH_ELEMENTS); + const std::string high_light_mode = options.get_string(comm::OPTION_HIGHLIGHT_MODE); + const bool draw_path_contour = options.get_bool(comm::OPTION_DRAW_PATH_CONTOUR, false); + + // set critical path elements to render + server_ctx.crit_path_element_indexes = std::move(path_elements); + server_ctx.draw_crit_path_contour = draw_path_contour; + + // update gtk UI + GtkComboBox* toggle_crit_path = GTK_COMBO_BOX(app->get_object("ToggleCritPath")); + gint high_light_mode_index = get_item_index_by_text(toggle_crit_path, high_light_mode.c_str()); + if (high_light_mode_index != -1) { + gtk_combo_box_set_active(toggle_crit_path, high_light_mode_index); + task->set_success(); + } else { + std::string msg{"cannot find ToggleCritPath qcombobox index for item " + high_light_mode}; + VTR_LOG_ERROR(msg.c_str()); + task->set_fail(msg); + } + } else { + std::string msg{"options errors in highlight crit path telegram: " + options.errors_str()}; + VTR_LOG_ERROR(msg.c_str()); + task->set_fail(msg); + } +} + +} // namespace server + +#endif /* NO_SERVER */ diff --git a/vpr/src/server/taskresolver.h b/vpr/src/server/taskresolver.h new file mode 100644 index 00000000000..eca06bc1b74 --- /dev/null +++ b/vpr/src/server/taskresolver.h @@ -0,0 +1,80 @@ +#ifndef TASKRESOLVER_H +#define TASKRESOLVER_H + +#ifndef NO_SERVER + +#include "task.h" +#include "vpr_types.h" + +#include +#include + +namespace ezgl { + class application; +} + +namespace server { + +/** + * @brief Resolve server task. + * + * Process and resolve server task, store result and status for processed task. +*/ +class TaskResolver { +public: + /** + * @brief Default constructor for TaskResolver. + */ + TaskResolver()=default; + + ~TaskResolver()=default; + + int tasks_num() const { return m_tasks.size(); } + + /** + * @brief Takes ownership of a task. + * + * This method takes ownership of a task by moving it into the TaskResolver's internal task queue. + * After calling this method, the task will be owned and managed by the TaskResolver. + * + * @param task The task to take ownership of. After calling this method, the task object will be in a valid but unspecified state. + * + * @note After calling this method, the caller should avoid accessing or modifying the task object. + */ + void own_task(TaskPtr&& task); + + /** + * @brief Resolve queued tasks. + * + * @param app A pointer to the ezgl::application object representing the application instance. + */ + bool update(ezgl::application* app); + + /** + * @brief Extracts finished tasks from the internal task queue. + * + * This function removes finished tasks from the internal task queue and appends them to the provided vector. + * After this operation, the internal task queue will no longer hold the extracted tasks. + * + * @param tasks A reference to a vector where the finished tasks will be appended. + */ + void take_finished_tasks(std::vector& tasks); + + // helper method used in tests + const std::vector& tasks() const { return m_tasks; } + +private: + std::vector m_tasks; + + void process_get_path_list_task(ezgl::application*, const TaskPtr&); + void process_draw_critical_path_task(ezgl::application*, const TaskPtr&); + + std::optional try_get_details_level_enum(const std::string& path_details_level_str) const; +}; + +} // namespace server + +#endif /* NO_SERVER */ + +#endif /* TASKRESOLVER_H */ + diff --git a/vpr/src/server/telegrambuffer.cpp b/vpr/src/server/telegrambuffer.cpp new file mode 100644 index 00000000000..0aab6af8be1 --- /dev/null +++ b/vpr/src/server/telegrambuffer.cpp @@ -0,0 +1,76 @@ +#ifndef NO_SERVER + +#include "telegrambuffer.h" + +namespace comm { + +void TelegramBuffer::append(const ByteArray& bytes) { + m_raw_buffer.append(bytes); +} + +bool TelegramBuffer::check_telegram_header_presence() { + auto [found, signature_start_index] = m_raw_buffer.find_sequence(TelegramHeader::SIGNATURE, TelegramHeader::SIGNATURE_SIZE); + if (found) { + if (signature_start_index != 0) { + // discard bytes preceding the header start position. + m_raw_buffer.erase(m_raw_buffer.begin(), m_raw_buffer.begin() + signature_start_index); + } + return true; + } + return false; +} + +void TelegramBuffer::take_telegram_frames(std::vector& result) { + if (m_raw_buffer.size() <= TelegramHeader::size()) { + return; + } + + bool may_contain_full_telegram = true; + while (may_contain_full_telegram) { + may_contain_full_telegram = false; + // attempt to extract telegram header + if (!m_header_opt) { + if (check_telegram_header_presence()) { + TelegramHeader header(m_raw_buffer); + if (header.is_valid()) { + m_header_opt = std::move(header); + } + } + } + + // attempt to extract telegram frame based on the telegram header + if (m_header_opt) { + const TelegramHeader& header = m_header_opt.value(); + std::size_t expected_telegram_size = TelegramHeader::size() + header.body_bytes_num(); + if (m_raw_buffer.size() >= expected_telegram_size) { + // checksum validation + ByteArray body(m_raw_buffer.begin() + TelegramHeader::size(), m_raw_buffer.begin() + expected_telegram_size); + uint32_t actual_check_sum = body.calc_check_sum(); + if (actual_check_sum == header.body_check_sum()) { + // construct telegram frame if checksum matches + TelegramFramePtr telegram_frame_ptr = std::make_shared(); + telegram_frame_ptr->header = header; + telegram_frame_ptr->body = std::move(body); + body.clear(); // post std::move safety step + + result.push_back(telegram_frame_ptr); + } else { + m_errors.push_back("wrong checkSums " + std::to_string(actual_check_sum) +" for " + header.info() + " , drop this chunk"); + } + m_raw_buffer.erase(m_raw_buffer.begin(), m_raw_buffer.begin() + expected_telegram_size); + m_header_opt.reset(); + may_contain_full_telegram = true; + } + } + } +} + +void TelegramBuffer::take_errors(std::vector& errors) { + errors.reserve(errors.size() + m_errors.size()); + std::move(std::begin(m_errors), std::end(m_errors), std::back_inserter(errors)); + m_errors.clear(); +} + +} // namespace comm + +#endif /* NO_SERVER */ diff --git a/vpr/src/server/telegrambuffer.h b/vpr/src/server/telegrambuffer.h new file mode 100644 index 00000000000..b5822e9a5c6 --- /dev/null +++ b/vpr/src/server/telegrambuffer.h @@ -0,0 +1,101 @@ +#ifndef TELEGRAMBUFFER_H +#define TELEGRAMBUFFER_H + +#ifndef NO_SERVER + +#include "bytearray.h" +#include "telegramframe.h" + +#include +#include +#include +#include + +namespace comm { + +/** + * @brief Implements Telegram Buffer as a wrapper over BytesArray + * + * It aggregates received bytes and assists in extracting telegram frames ( @ref TelegramFrame ) from the raw byte buffer. +*/ +class TelegramBuffer +{ + inline static const std::size_t DEFAULT_SIZE_HINT = 1024; + +public: + /** + * @brief Constructs a TelegramBuffer object with a specified size hint. + * + * This constructor initializes a TelegramBuffer object with a specified size hint for the raw buffer. + */ + explicit TelegramBuffer(std::size_t size_hint = DEFAULT_SIZE_HINT): m_raw_buffer(size_hint) {} + + ~TelegramBuffer()=default; + + /** + * @brief Check if internal byte buffer is empty. + * + * @return true if the internal byte buffer is empty, false otherwise. + */ + bool empty() { return m_raw_buffer.empty(); } + + /** + * @brief Clear internal byte buffer. + */ + void clear() { m_raw_buffer.clear(); } + + /** + * @brief Append bytes to the internal byte buffer. + * + * @param data The byte array whose contents will be appended to internal byte buffer. + */ + void append(const ByteArray& data); + + /** + * @brief Extracts well-formed telegram frames from the internal byte buffer. + * + * @param frames A reference to a vector where the extracted telegram frames will be stored. + */ + void take_telegram_frames(std::vector& frames); + + /** + * @brief Takes errors from the internal storage. + * + * This function retrieves errors stored internally and moves them into the provided vector. + * After calling this function, the internal error storage will be cleared. + * + * @param errors A vector to which the errors will be moved. + * + * @note After calling this function, the internal error storage will be cleared. + */ + void take_errors(std::vector& errors); + + /** + * @brief Retrieves a constant reference to the internal byte buffer. + * + * @return A constant reference to the internal byte buffer. + */ + const ByteArray& data() const { return m_raw_buffer; } + +private: + ByteArray m_raw_buffer; + std::vector m_errors; + std::optional m_header_opt; + + /** + * @brief Checks for the presence of the telegram header in the buffer. + * + * This function searches for the telegram header signature in the raw buffer. + * If the signature is found, any bytes preceding the header start position + * are discarded from the buffer. + * + * @return true if the telegram header signature is found, false otherwise. + */ + bool check_telegram_header_presence(); +}; + +} // namespace comm + +#endif /* NO_SERVER */ + +#endif /* TELEGRAMBUFFER_H */ diff --git a/vpr/src/server/telegramframe.h b/vpr/src/server/telegramframe.h new file mode 100644 index 00000000000..e2237de3e36 --- /dev/null +++ b/vpr/src/server/telegramframe.h @@ -0,0 +1,35 @@ +#ifndef TELEGRAMFRAME_H +#define TELEGRAMFRAME_H + +#ifndef NO_SERVER + +#include "telegramheader.h" +#include "bytearray.h" + +#include + +namespace comm { + +/** +* @brief Structure representing a TelegramFrame. +* +* A TelegramFrame consists of a TelegramHeader followed by data. +*/ +struct TelegramFrame { + /** + * @brief header The TelegramHeader containing metadata about the telegram message. + */ + TelegramHeader header; + + /** + * @brief body The actual data of the telegram message. + */ + ByteArray body; +}; +using TelegramFramePtr = std::shared_ptr; + +} // namespace comm + +#endif /* NO_SERVER */ + +#endif /* TELEGRAMFRAME_H */ diff --git a/vpr/src/server/telegramheader.cpp b/vpr/src/server/telegramheader.cpp new file mode 100644 index 00000000000..f1f05a4864e --- /dev/null +++ b/vpr/src/server/telegramheader.cpp @@ -0,0 +1,83 @@ +#ifndef NO_SERVER + +#include "telegramheader.h" +#include "convertutils.h" + +#include + +namespace comm { + +TelegramHeader::TelegramHeader(uint32_t length, uint32_t check_sum, uint8_t compressor_id) + : m_body_bytes_num(length) + , m_body_check_sum(check_sum) + , m_compressor_id(compressor_id) { + m_buffer.resize(TelegramHeader::size()); + + // Write signature into a buffer + std::memcpy(m_buffer.data(), TelegramHeader::SIGNATURE, TelegramHeader::SIGNATURE_SIZE); + + // Write the length into the buffer in big-endian byte order + std::memcpy(m_buffer.data() + TelegramHeader::LENGTH_OFFSET, &length, TelegramHeader::LENGTH_SIZE); + + // Write the checksum into the buffer in big-endian byte order + std::memcpy(m_buffer.data() + TelegramHeader::CHECKSUM_OFFSET, &check_sum, TelegramHeader::CHECKSUM_SIZE); + + // Write compressor id + std::memcpy(m_buffer.data() + TelegramHeader::COMPRESSORID_OFFSET, &compressor_id, TelegramHeader::COMPRESSORID_SIZE); + + m_is_valid = true; +} + +TelegramHeader::TelegramHeader(const ByteArray& buffer) { + m_buffer.resize(TelegramHeader::size()); + + bool has_error = false; + + if (buffer.size() >= TelegramHeader::size()) { + // Check the signature to ensure that this is a valid header + if (std::memcmp(buffer.data(), TelegramHeader::SIGNATURE, TelegramHeader::SIGNATURE_SIZE)) { + has_error = true; + } + + // Read the length from the buffer in big-endian byte order + std::memcpy(&m_body_bytes_num, buffer.data() + TelegramHeader::LENGTH_OFFSET, TelegramHeader::LENGTH_SIZE); + + // Read the checksum from the buffer in big-endian byte order + std::memcpy(&m_body_check_sum, buffer.data() + TelegramHeader::CHECKSUM_OFFSET, TelegramHeader::CHECKSUM_SIZE); + + // Read the checksum from the buffer in big-endian byte order + std::memcpy(&m_compressor_id, buffer.data() + TelegramHeader::COMPRESSORID_OFFSET, TelegramHeader::COMPRESSORID_SIZE); + + if (m_body_bytes_num == 0) { + has_error = false; + } + if (m_body_check_sum == 0) { + has_error = false; + } + } + + if (!has_error) { + m_is_valid = true; + } +} + +std::string TelegramHeader::info() const { + std::stringstream ss; + ss << "header" << (m_is_valid ? "" : "(INVALID)") << "[" + << "l=" << get_pretty_size_str_from_bytes_num(m_body_bytes_num) + << "/s=" << m_body_check_sum; + if (m_compressor_id) { + ss << "/c=" << m_compressor_id; + } + ss << "]"; + return ss.str(); +} + +comm::TelegramHeader TelegramHeader::construct_from_body(const std::string_view& body, uint8_t compressor_id) { + uint32_t body_check_sum = ByteArray::calc_check_sum(body); + return comm::TelegramHeader{static_cast(body.size()), body_check_sum, compressor_id}; +} + +} // namespace comm + +#endif /* NO_SERVER */ diff --git a/vpr/src/server/telegramheader.h b/vpr/src/server/telegramheader.h new file mode 100644 index 00000000000..ffe95b04ba2 --- /dev/null +++ b/vpr/src/server/telegramheader.h @@ -0,0 +1,145 @@ +#ifndef TELEGRAMHEADER_H +#define TELEGRAMHEADER_H + +#ifndef NO_SERVER + +#include "bytearray.h" + +#include +#include +#include + +namespace comm { + +/** + * @brief The fixed size byte sequence where the metadata of a telegram message is stored. + * + * This structure is used to describe the message frame sequence in order to successfully extract it. + * The TelegramHeader structure follows this format: + * - [ 4 bytes ]: SIGNATURE - A 4-byte constant sequence "I", "P", "A", "\0" which indicates the valid start of a TelegramHeader. + * - [ 4 bytes ]: DATA_LENGTH - A 4-byte field where the data length is stored, allowing for proper identification of the start and end of the TelegramFrame sequence. + * - [ 4 bytes ]: DATA_CHECKSUM - A 4-byte field where the data checksum is stored to validate the attached data. + * - [ 1 byte ]: COMPRESSOR_ID - A 1-byte field where the compressor ID is stored. If it's null, it means the telegram body is not compressed (in text/json format). + * Otherwise, the telegram body is compressed. Currently, only zlib compression for the telegram body is supported, which is specified with COMPRESSOR_ID='z'. + * + * @note: The DATA_CHECKSUM field can be used to check the integrity of the telegram body on the client app side. + */ +class TelegramHeader { +public: + static constexpr const char SIGNATURE[] = "IPA"; + static constexpr size_t SIGNATURE_SIZE = sizeof(SIGNATURE); + static constexpr size_t LENGTH_SIZE = sizeof(uint32_t); + static constexpr size_t CHECKSUM_SIZE = LENGTH_SIZE; + static constexpr size_t COMPRESSORID_SIZE = 1; + + static constexpr size_t LENGTH_OFFSET = SIGNATURE_SIZE; + static constexpr size_t CHECKSUM_OFFSET = LENGTH_OFFSET + LENGTH_SIZE; + static constexpr size_t COMPRESSORID_OFFSET = CHECKSUM_OFFSET + CHECKSUM_SIZE; + + TelegramHeader()=default; + + /** + * @brief Constructs a TelegramHeader object with the specified length, checksum, and optional compressor ID. + * + * @param length The length of the telegram body. + * @param check_sum The checksum of the telegram body. + * @param compressor_id The compressor ID used for compressing the telegram body (default is 0). + */ + explicit TelegramHeader(uint32_t length, uint32_t check_sum, uint8_t compressor_id = 0); + + /** + * @brief Constructs a TelegramHeader object from the provided byte buffer. + * + * This constructor initializes a TelegramHeader object using the length and checksum information taken from the provided byte buffer. + * + * @param buffer The ByteArray containing the header data of the telegram. + */ + explicit TelegramHeader(const ByteArray& buffer); + + ~TelegramHeader()=default; + + /** + * @brief Constructs a TelegramHeader based on the provided body data. + * + * @param body The body data used to calculate the size and checksum. + * @param compressor_id The ID of the compressor used for compression (default is 0, means no compressor is used). + * @return A TelegramHeader object constructed from the provided body data. + */ + static comm::TelegramHeader construct_from_body(const std::string_view& body, uint8_t compressor_id = 0); + + /** + * @brief Returns the total size of the TelegramHeader. + * + * This static constexpr method returns the total size of the TelegramHeader, including all its components. + * + * @return The total size of the TelegramHeader. + */ + static constexpr size_t size() { + return SIGNATURE_SIZE + LENGTH_SIZE + CHECKSUM_SIZE + COMPRESSORID_SIZE; + } + + /** + * @brief To checks if the TelegramHeader is valid. + * + * @return True if the TelegramHeader is valid, false otherwise. + */ + bool is_valid() const { return m_is_valid; } + + /** + * @brief Retrieves the buffer associated with the TelegramHeader. + * + * This method returns a constant reference to the buffer associated with the TelegramHeader. + * + * @return A constant reference to the buffer. + */ + const ByteArray& buffer() const { return m_buffer; } + + /** + * @brief Retrieves the number of bytes in the telegram body. + * + * @return The number of bytes in the telegram body. + */ + uint32_t body_bytes_num() const { return m_body_bytes_num; } + + /** + * @brief Retrieves the checksum of telegram body. + * + * @return The checksum of telegram body. + */ + uint32_t body_check_sum() const { return m_body_check_sum; } + + /** + * @brief Retrieves the compressor ID used for compressing telegram body. + * + * @return The compressor ID of the telegram body. 0 if the telegram body is not compressed. + */ + uint8_t compressor_id() const { return m_compressor_id; } + + /** + * @brief Checks if the telegram body is compressed. + * + * @return True if the telegram body is compressed; otherwise, false. + */ + bool is_body_compressed() const { return m_compressor_id != 0; } + + /** + * @brief Retrieves information about the telegram header. + * + * @return A string containing information about the telegram header. + */ + std::string info() const; + +private: + bool m_is_valid = false; + ByteArray m_buffer; + + uint32_t m_body_bytes_num = 0; + uint32_t m_body_check_sum = 0; + uint8_t m_compressor_id = 0; +}; + +} // namespace comm + +#endif /* NO_SERVER */ + +#endif /* TELEGRAMHEADER_H */ diff --git a/vpr/src/server/telegramoptions.cpp b/vpr/src/server/telegramoptions.cpp new file mode 100644 index 00000000000..fef982d1437 --- /dev/null +++ b/vpr/src/server/telegramoptions.cpp @@ -0,0 +1,118 @@ +#ifndef NO_SERVER + +#include "telegramoptions.h" +#include "convertutils.h" + +#include "vtr_util.h" + +#include + +namespace server { + +TelegramOptions::TelegramOptions(const std::string& data, const std::vector& expected_keys) { + // parse data string + std::vector options = vtr::split(data, ";"); + for (const std::string& option_str: options) { + std::vector fragments = vtr::split(option_str, ":"); + if (fragments.size() == TOTAL_INDEXES_NUM) { + std::string name{std::move(fragments[INDEX_NAME])}; + Option option{std::move(fragments[INDEX_TYPE]), std::move(fragments[INDEX_VALUE])}; + if (is_data_type_supported(option.type)) { + m_options.emplace(name, std::move(option)); + } else { + m_errors.emplace_back("bad type for option [" + option_str + "]"); + } + } else { + m_errors.emplace_back("bad option [" + option_str + "]"); + } + } + + // check keys presence + check_keys_presence(expected_keys); +} + +std::map> TelegramOptions::get_map_of_sets(const std::string& name) { + std::map> result; + std::string data_str = get_string(name); + if (!data_str.empty()) { + std::vector paths = vtr::split(data_str, "|"); + for (const std::string& path: paths) { + std::vector path_struct = vtr::split(path, "#"); + if (path_struct.size() == 2) { + std::string path_index_str = path_struct[0]; + std::string path_element_indexes_str = path_struct[1]; + std::vector path_element_indexes = vtr::split(path_element_indexes_str, ","); + std::set elements; + for (const std::string& path_element_index_Str: path_element_indexes) { + if (std::optional opt_value = try_convert_to_int(path_element_index_Str)) { + elements.insert(opt_value.value()); + } else { + m_errors.emplace_back("cannot extract path element index from " + path_element_index_Str); + } + } + if (std::optional opt_path_index = try_convert_to_int(path_index_str)) { + result[opt_path_index.value()] = elements; + } else { + m_errors.emplace_back("cannot extract path index from " + path_index_str); + } + } else { + m_errors.emplace_back("wrong path data structure = " + path); + } + } + } + return result; +} + +std::string TelegramOptions::get_string(const std::string& name) { + std::string result; + if (auto it = m_options.find(name); it != m_options.end()) { + result = it->second.value; + } + return result; +} + +int TelegramOptions::get_int(const std::string& name, int fail_value) { + if (std::optional opt = try_convert_to_int(m_options[name].value)) { + return opt.value(); + } else { + m_errors.emplace_back("cannot get int value for option " + name); + return fail_value; + } +} + +bool TelegramOptions::get_bool(const std::string& name, bool fail_value) { + if (std::optional opt = try_convert_to_int(m_options[name].value)) { + return opt.value(); + } else { + m_errors.emplace_back("cannot get bool value for option " + name); + return fail_value; + } +} + +std::string TelegramOptions::errors_str() const { + std::string result; + for (const std::string& error: m_errors) { + result += error + ';'; + } + return result; +} + +bool TelegramOptions::is_data_type_supported(const std::string& type) const { + constexpr std::array supported_types{"int", "string", "bool"}; + return std::find(supported_types.begin(), supported_types.end(), type) != supported_types.end(); +} + +bool TelegramOptions::check_keys_presence(const std::vector& keys) { + bool result = true; + for (const std::string& key: keys) { + if (m_options.find(key) == m_options.end()) { + m_errors.emplace_back("cannot find required option " + std::string(key)); + result = false; + } + } + return result; +} + +} // namespace server + +#endif /* NO_SERVER */ diff --git a/vpr/src/server/telegramoptions.h b/vpr/src/server/telegramoptions.h new file mode 100644 index 00000000000..41237cdde2e --- /dev/null +++ b/vpr/src/server/telegramoptions.h @@ -0,0 +1,130 @@ +#ifndef TELEGRAMOPTIONS_H +#define TELEGRAMOPTIONS_H + +#ifndef NO_SERVER + +#include +#include +#include +#include +#include + +namespace server { + +/** + * @brief Option class Parser + * + * Parse the string of options in the format "TYPE:KEY1:VALUE1;TYPE:KEY2:VALUE2", + * for example "int:path_num:11;string:path_type:debug;int:details_level:3;bool:is_flat_routing:0". + * It provides a simple interface to check value presence and access them. +*/ + +class TelegramOptions { +private: + enum { + INDEX_TYPE=0, + INDEX_NAME, + INDEX_VALUE, + TOTAL_INDEXES_NUM + }; + + struct Option { + std::string type; + std::string value; + }; + +public: + /** + * @brief Constructs a TelegramOptions object with the provided data and expected keys. + * + * This constructor initializes a TelegramOptions object with the given data string + * and a vector of expected keys. It parses the data string and validates that such data has all required keys. + * If some keys are absent, it collects the errors. + * + * @param data The data string containing the options. + * @param expected_keys A vector of strings representing the expected keys in the options. + */ + TelegramOptions(const std::string& data, const std::vector& expected_keys); + ~TelegramOptions()=default; + + /** + * @brief Checks if there are any errors present. + * + * This function returns true if there are errors present in the error container, + * otherwise it returns false. + * + * @return True if there are errors present, false otherwise. + */ + bool has_errors() const { return !m_errors.empty(); } + + /** + * @brief Retrieves a map of sets associated with the specified key. + * + * This function retrieves a map of sets associated with the specified key. + * + * @note The map of sets is used to store the critical path index (map key) and the associated set of selected sub-path element indexes (map value). + * + * @param key The key of the map of sets to retrieve. + * @return The map of sets associated with the specified key. + */ + std::map> get_map_of_sets(const std::string& key); + + /** + * @brief Retrieves the string associated with the specified key. + * + * This function retrieves the string associated with the specified key. + * The key is used to identify the desired string value. + * + * @param key The key of the string to retrieve. + * @return The string associated with the specified key. + */ + std::string get_string(const std::string& key); + + /** + * @brief Retrieves the integer value associated with the specified key. + * + * This function retrieves the integer value associated with the specified key. + * If the key is found, its corresponding integer value is returned. + * If the key is not found, the specified fail_value is returned instead. + * + * @param key The key whose associated integer value is to be retrieved. + * @param fail_value The value to return if the key is not found. + * @return The integer value associated with the specified key, or fail_value if the key is not found. + */ + int get_int(const std::string& key, int fail_value); + + /** + * @brief Retrieves the boolean value associated with the specified key. + * + * This function retrieves the boolean value associated with the specified key. + * + * @param key The key whose associated boolean value is to be retrieved. + * @param fail_value The value to return if the key is not found. + * @return The boolean value associated with the specified key, or fail_value if the key is not found. + */ + bool get_bool(const std::string& key, bool fail_value); + + /** + * @brief Retrieves a concatenated string of all errors stored in the container. + * + * This function retrieves a concatenated string of all errors stored in the container. + * It concatenates all error strings stored in the container and returns the result. + * If there are no errors stored in the container, an empty string is returned. + * + * @return A concatenated string of all errors stored in the container. + */ + std::string errors_str() const; + +private: + std::unordered_map m_options; + std::vector m_errors; + + bool is_data_type_supported(const std::string& type) const; + bool check_keys_presence(const std::vector& keys); +}; + +} // namespace server + +#endif /* NO_SERVER */ + +#endif /* TELEGRAMOPTIONS_H */ diff --git a/vpr/src/server/telegramparser.cpp b/vpr/src/server/telegramparser.cpp new file mode 100644 index 00000000000..ed691841097 --- /dev/null +++ b/vpr/src/server/telegramparser.cpp @@ -0,0 +1,73 @@ +#ifndef NO_SERVER + +#include "telegramparser.h" +#include "convertutils.h" +#include "commconstants.h" + +#include + +namespace comm { + +std::optional TelegramParser::try_extract_json_value_str(const std::string& json_string, const std::string& key) { + constexpr const char end_key_pattern[] = {"\":\""}; + + // Find the position of the key + size_t key_pos = json_string.find('\"' + key + end_key_pattern); + + if (key_pos == std::string::npos) { + // Key not found + return std::nullopt; + } + + // Find the position of the value after the key + size_t value_pos_start = json_string.find('\"', key_pos + key.length() + std::strlen(end_key_pattern)); + + if (value_pos_start == std::string::npos) { + // Value not found + return std::nullopt; + } + + // Find the position of the closing quote for the value + size_t value_end = json_string.find('\"', value_pos_start + sizeof('\"')); + + if (value_end == std::string::npos) { + // Closing quote not found + return std::nullopt; + } + + // Extract the value substring + return json_string.substr(value_pos_start + 1, (value_end - value_pos_start) - 1); +} + +std::optional TelegramParser::try_extract_field_job_id(const std::string& message) { + if (std::optional str_opt = try_extract_json_value_str(message, comm::KEY_JOB_ID)) { + return try_convert_to_int(str_opt.value()); + } + return std::nullopt; +} + +std::optional TelegramParser::try_extract_field_cmd(const std::string& message) { + if (std::optional str_opt = try_extract_json_value_str(message, comm::KEY_CMD)) { + return try_convert_to_int(str_opt.value()); + } + return std::nullopt; +} + +std::optional TelegramParser::try_extract_field_options(const std::string& message) { + return try_extract_json_value_str(message, comm::KEY_OPTIONS); +} + +std::optional TelegramParser::try_extract_field_data(const std::string& message) { + return try_extract_json_value_str(message, comm::KEY_DATA); +} + +std::optional TelegramParser::try_extract_field_status(const std::string& message) { + if (std::optional str_opt = try_extract_json_value_str(message, comm::KEY_STATUS)) { + return try_convert_to_int(str_opt.value()); + } + return std::nullopt; +} + +} // namespace comm + +#endif /* NO_SERVER */ diff --git a/vpr/src/server/telegramparser.h b/vpr/src/server/telegramparser.h new file mode 100644 index 00000000000..23e942f1d9d --- /dev/null +++ b/vpr/src/server/telegramparser.h @@ -0,0 +1,87 @@ +#ifndef TELEGRAMPARSER_H +#define TELEGRAMPARSER_H + +#ifndef NO_SERVER + +#include +#include + +namespace comm { + +/** + * @brief Dummy JSON parser. + * + * This class provides helper methods to extract values for a keys as "JOB_ID", "CMD", "OPTIONS", "DATA", or "STATUS + * from a JSON schema structured as follows: {JOB_ID:num, CMD:enum, OPTIONS:string, DATA:string, STATUS:num}. + */ +class TelegramParser { +public: + /** + * @brief Attempts to extract the JOB_ID field from a given message. + * + * This function parses the provided message and attempts to extract the JOB_ID field from it. + * If the JOB_ID field is found and successfully extracted, it is returned as an optional integer. + * If the JOB_ID field is not found or cannot be parsed as an integer, an empty optional is returned. + * + * @param message The message from which to extract the JOB_ID field. + * @return An optional integer containing the extracted JOB_ID if successful, otherwise an empty optional. + */ + static std::optional try_extract_field_job_id(const std::string& message); + + /** + * @brief Attempts to extract the CMD field from a given message. + * + * This function parses the provided message and attempts to extract the CMD field from it. + * If the CMD field is found and successfully extracted, it is returned as an optional integer. + * If the CMD field is not found or cannot be parsed as an integer, an empty optional is returned. + * + * @param message The message from which to extract the CMD field. + * @return An optional integer containing the extracted CMD if successful, otherwise an empty optional. + */ + static std::optional try_extract_field_cmd(const std::string& message); + + /** + * @brief Attempts to extract the OPTIONS field from a given message. + * + * This function parses the provided message and attempts to extract the OPTIONS field from it. + * If the OPTIONS field is found and successfully extracted, it is returned as an optional string. + * If the OPTIONS field is not found an empty optional is returned. + * + * @param message The message from which to extract the OPTIONS field. + * @return An optional string containing the extracted OPTIONS if successful, otherwise an empty optional. + */ + static std::optional try_extract_field_options(const std::string& message); + + /** + * @brief Attempts to extract the DATA field from a given message. + * + * This function parses the provided message and attempts to extract the DATA field from it. + * If the DATA field is found and successfully extracted, it is returned as an optional string. + * If the DATA field is not found an empty optional is returned. + * + * @param message The message from which to extract the DATA field. + * @return An optional string containing the extracted DATA if successful, otherwise an empty optional. + */ + static std::optional try_extract_field_data(const std::string& message); + + /** + * @brief Attempts to extract the STATUS field from a given message. + * + * This function parses the provided message and attempts to extract the STATUS field from it. + * If the STATUS field is found and successfully extracted, it is returned as an optional integer. + * If the STATUS field is not found or cannot be parsed as an integer, an empty optional is returned. + * + * @param message The message from which to extract the STATUS field. + * @return An optional integer containing the extracted STATUS if successful, otherwise an empty optional. + */ + static std::optional try_extract_field_status(const std::string& message); + +private: + static std::optional try_extract_json_value_str(const std::string& json_string, const std::string& key); +}; + +} // namespace comm + +#endif /* NO_SERVER */ + +#endif /* TELEGRAMPARSER_H */ diff --git a/vpr/src/server/zlibutils.cpp b/vpr/src/server/zlibutils.cpp new file mode 100644 index 00000000000..01ed104f6cc --- /dev/null +++ b/vpr/src/server/zlibutils.cpp @@ -0,0 +1,83 @@ +#ifndef NO_SERVER + +#include "zlibutils.h" + +#include // Include cstring for memset +#include + +std::optional try_compress(const std::string& decompressed) { + z_stream zs; + memset(&zs, 0, sizeof(zs)); + + if (deflateInit(&zs, Z_BEST_COMPRESSION) != Z_OK) { + return std::nullopt; + } + + zs.next_in = reinterpret_cast(const_cast(decompressed.data())); + zs.avail_in = decompressed.size(); + + int ret_code; + char* result_buffer = new char[BYTES_NUM_IN_32KB]; + std::string result; + + do { + zs.next_out = reinterpret_cast(result_buffer); + zs.avail_out = sizeof(result_buffer); + + ret_code = deflate(&zs, Z_FINISH); + + if (result.size() < zs.total_out) { + result.append(result_buffer, zs.total_out - result.size()); + } + } while (ret_code == Z_OK); + + delete[] result_buffer; + + deflateEnd(&zs); + + if (ret_code != Z_STREAM_END) { + return std::nullopt; + } + + return result; +} + +std::optional try_decompress(const std::string& compressed) { + z_stream zs; + memset(&zs, 0, sizeof(zs)); + + if (inflateInit(&zs) != Z_OK) { + return std::nullopt; + } + + zs.next_in = reinterpret_cast(const_cast(compressed.data())); + zs.avail_in = compressed.size(); + + int ret_code; + char* result_buffer = new char[BYTES_NUM_IN_32KB]; + std::string result; + + do { + zs.next_out = reinterpret_cast(result_buffer); + zs.avail_out = sizeof(result_buffer); + + ret_code = inflate(&zs, 0); + + if (result.size() < zs.total_out) { + result.append(result_buffer, zs.total_out - result.size()); + } + + } while (ret_code == Z_OK); + + delete[] result_buffer; + + inflateEnd(&zs); + + if (ret_code != Z_STREAM_END) { + return std::nullopt; + } + + return result; +} + +#endif /* NO_SERVER */ diff --git a/vpr/src/server/zlibutils.h b/vpr/src/server/zlibutils.h new file mode 100644 index 00000000000..a531fe2bcc9 --- /dev/null +++ b/vpr/src/server/zlibutils.h @@ -0,0 +1,41 @@ +#ifndef ZLIBUTILS_H +#define ZLIBUTILS_H + +#ifndef NO_SERVER + +#include +#include + +constexpr const int BYTES_NUM_IN_32KB = 32768; + +/** +* @brief Compresses the input sequence using zlib. +* +* This function takes a string representing the decompressed data as input +* and compresses it using zlib. If compression is successful, the compressed +* data is returned as an optional string. If compression fails, an empty optional +* is returned. +* +* @param decompressed The input string representing the decompressed data. +* @return An optional string containing the compressed data if compression is successful, +* or an empty optional if compression fails. +*/ +std::optional try_compress(const std::string& decompressed); + +/** +* @brief Decompresses the compressed sequence using zlib. +* +* This function takes a string representing the compressed data as input +* and decompresses it using zlib. If decompression is successful, the decompressed +* data is returned as an optional string. If decompression fails, an empty optional +* is returned. +* +* @param compressed The input string representing the compressed data. +* @return An optional string containing the decompressed data if decompression is successful, +* or an empty optional if decompression fails. +*/ +std::optional try_decompress(const std::string& compressed); + +#endif /* NO_SERVER */ + +#endif /* ZLIBUTILS_H */ diff --git a/vpr/src/tileable_rr_graph/tileable_rr_graph_builder.cpp b/vpr/src/tileable_rr_graph/tileable_rr_graph_builder.cpp index c9b35ac2838..222571acab6 100644 --- a/vpr/src/tileable_rr_graph/tileable_rr_graph_builder.cpp +++ b/vpr/src/tileable_rr_graph/tileable_rr_graph_builder.cpp @@ -324,8 +324,10 @@ void build_tileable_unidir_rr_graph(const std::vector& typ } /* No clock network support yet; Does not support flatten rr_graph yet */ + check_rr_graph(device_ctx.rr_graph, types, device_ctx.rr_indexed_data, grids, vib_grid, device_ctx.chan_width, GRAPH_UNIDIR, OPEN, false); + /************************************************************************ * Free all temp stucts ***********************************************************************/ diff --git a/vpr/src/util/vpr_utils.cpp b/vpr/src/util/vpr_utils.cpp index f7d1aba9273..d4b45a24cd8 100644 --- a/vpr/src/util/vpr_utils.cpp +++ b/vpr/src/util/vpr_utils.cpp @@ -1,14 +1,12 @@ -#include #include #include #include #include -#include +#include #include "vtr_assert.h" #include "vtr_log.h" #include "vtr_memory.h" -#include "vtr_random.h" #include "vpr_types.h" #include "vpr_error.h" @@ -17,11 +15,8 @@ #include "globals.h" #include "vpr_utils.h" #include "cluster_placement.h" -#include "place_macro.h" -#include "pack_types.h" #include "device_grid.h" -#include "timing_fail_error.h" -#include "route_constraint.h" +#include "user_route_constraints.h" #include "re_cluster_util.h" /* This module contains subroutines that are used in several unrelated parts * @@ -29,7 +24,7 @@ /* This defines the maximum string length that could be parsed by functions * * in vpr_utils. */ -#define MAX_STRING_LEN 128 +static constexpr size_t MAX_STRING_LEN = 512; /******************** File-scope variables declarations **********************/ @@ -530,10 +525,9 @@ t_physical_tile_type_ptr physical_tile_type(ClusterBlockId blk) { auto& place_ctx = g_vpr_ctx.placement(); auto& device_ctx = g_vpr_ctx.device(); - auto block_loc = place_ctx.block_locs[blk]; - auto loc = block_loc.loc; + auto block_loc = place_ctx.block_locs[blk].loc; - return device_ctx.grid.get_physical_type({loc.x, loc.y, loc.layer}); + return device_ctx.grid.get_physical_type({block_loc.x, block_loc.y, block_loc.layer}); } t_physical_tile_type_ptr physical_tile_type(AtomBlockId atom_blk) { @@ -2153,20 +2147,6 @@ int max_pins_per_grid_tile() { return max_pins; } -t_physical_tile_type_ptr get_physical_tile_type(const ClusterBlockId blk) { - auto& cluster_ctx = g_vpr_ctx.clustering(); - auto& place_ctx = g_vpr_ctx.placement(); - if (place_ctx.block_locs.empty()) { //No placement, pick best match - return pick_physical_type(cluster_ctx.clb_nlist.block_type(blk)); - } else { //Have placement, select physical tile implementing blk - auto& device_ctx = g_vpr_ctx.device(); - - t_pl_loc loc = place_ctx.block_locs[blk].loc; - - return device_ctx.grid.get_physical_type({loc.x, loc.y, loc.layer}); - } -} - int net_pin_to_tile_pin_index(const ClusterNetId net_id, int net_pin_index) { auto& cluster_ctx = g_vpr_ctx.clustering(); @@ -2278,38 +2258,27 @@ bool is_inter_cluster_node(t_physical_tile_type_ptr physical_tile, const t_vib_inf* vib, t_rr_type node_type, int node_ptc) { + if (node_type == CHANX || node_type == CHANY) { return true; } else if (node_type == MEDIUM) { VTR_ASSERT(vib != nullptr); return (node_ptc < (int)vib->first_stages.size()); } else { - VTR_ASSERT(node_type == IPIN || node_type == SINK || node_type == OPIN || node_type == SOURCE); + int x_low = rr_graph_view.node_xlow(node_id); + int y_low = rr_graph_view.node_ylow(node_id); + int layer = rr_graph_view.node_layer(node_id); + int node_ptc = rr_graph_view.node_ptc_num(node_id); + const t_physical_tile_type_ptr physical_tile = g_vpr_ctx.device().grid.get_physical_type({x_low, y_low, layer}); if (node_type == IPIN || node_type == OPIN) { return is_pin_on_tile(physical_tile, node_ptc); } else { - VTR_ASSERT(node_type == SINK || node_type == SOURCE); + VTR_ASSERT_DEBUG(node_type == SINK || node_type == SOURCE); return is_class_on_tile(physical_tile, node_ptc); } } } -void apply_route_constraints(VprConstraints& vpr_constraint) { - ClusteringContext& mutable_cluster_ctx = g_vpr_ctx.mutable_clustering(); - for (auto net_id : mutable_cluster_ctx.clb_nlist.nets()) { - std::string net_name = mutable_cluster_ctx.clb_nlist.net_name(net_id); - const RouteConstraint rc = vpr_constraint.get_route_constraint_by_net_name(net_name); - if (rc.is_valid()) { - mutable_cluster_ctx.clb_nlist.set_net_is_global(net_id, true); - if (rc.route_model() == "route") { - mutable_cluster_ctx.clb_nlist.set_net_is_ignored(net_id, false); - } else { - mutable_cluster_ctx.clb_nlist.set_net_is_ignored(net_id, true); - } - } - } -} - int get_rr_node_max_ptc(const RRGraphView& rr_graph_view, RRNodeId node_id, bool is_flat) { @@ -2528,6 +2497,32 @@ void add_pb_child_to_list(std::list& pb_list, const t_pb* parent_pb } } +void apply_route_constraints(const UserRouteConstraints& route_constraints) { + ClusteringContext& mutable_cluster_ctx = g_vpr_ctx.mutable_clustering(); + + // Iterate through all the nets + for (auto net_id : mutable_cluster_ctx.clb_nlist.nets()) { + // Get the name of the current net + std::string net_name = mutable_cluster_ctx.clb_nlist.net_name(net_id); + + // Check if a routing constraint is specified for the current net + if (route_constraints.has_routing_constraint(net_name)) { + // Mark the net as 'global' if there is a routing constraint for this net + // as the routing constraints are used to set the net as global + // and specify the routing model for it + mutable_cluster_ctx.clb_nlist.set_net_is_global(net_id, true); + + // Mark the net as 'ignored' if the route model is 'ideal' + if (route_constraints.get_route_model_by_net_name(net_name) == e_clock_modeling::IDEAL_CLOCK) { + mutable_cluster_ctx.clb_nlist.set_net_is_ignored(net_id, true); + } else { + // Set the 'ignored' flag to false otherwise + mutable_cluster_ctx.clb_nlist.set_net_is_ignored(net_id, false); + } + } + } +} + float get_min_cross_layer_delay() { const auto& rr_graph = g_vpr_ctx.device().rr_graph; float min_delay = std::numeric_limits::max(); diff --git a/vpr/src/util/vpr_utils.h b/vpr/src/util/vpr_utils.h index 8bbd081167c..68f1c351b77 100644 --- a/vpr/src/util/vpr_utils.h +++ b/vpr/src/util/vpr_utils.h @@ -13,6 +13,7 @@ #include "arch_util.h" #include "physical_types_util.h" #include "rr_graph_utils.h" +#include "vpr_constraints.h" class DeviceGrid; @@ -235,10 +236,6 @@ AtomBlockId find_memory_sibling(const t_pb* pb); */ void place_sync_external_block_connections(ClusterBlockId iblk); -//Returns the current tile implemnting blk (if placement is valid), or -//the best expected physical tile the block should use (if no valid placement). -t_physical_tile_type_ptr get_physical_tile_type(const ClusterBlockId blk); - //Returns the physical pin of the tile, related to the given ClusterNedId, and the net pin index int net_pin_to_tile_pin_index(const ClusterNetId net_id, int net_pin_index); @@ -318,6 +315,16 @@ void add_pb_child_to_list(std::list& pb_list, const t_pb* parent_pb class VprConstraints; void apply_route_constraints(VprConstraints& constraint); +/** + * @brief Apply user-defined route constraints to set the 'net_is_ignored_' and 'net_is_global_' flags. + * + * The 'net_is_global_' flag is used to identify global nets, which can be either clock signals or specified as global by user constraints. + * The 'net_is_ignored_' flag ensures that the router will ignore routing for the net. + * + * @param route_constraints User-defined route constraints to guide the application of constraints. + */ +void apply_route_constraints(const UserRouteConstraints& constraint); + /** * @brief Iterate over all inter-layer switch types and return the minimum delay of it. * useful four router lookahead to to have some estimate of the cost of crossing a layer diff --git a/vpr/test/test_bfs_routing.cpp b/vpr/test/test_bfs_routing.cpp index 92afda2798c..c9e527d7772 100644 --- a/vpr/test/test_bfs_routing.cpp +++ b/vpr/test/test_bfs_routing.cpp @@ -5,6 +5,9 @@ namespace { +constexpr double DUMMY_LATENCY = 1e-9; +constexpr double DUMMY_BANDWIDTH = 1e12; + TEST_CASE("test_route_flow", "[vpr_noc_bfs_routing]") { /* * Creating a test FPGA device below. The NoC itself will be @@ -29,7 +32,7 @@ TEST_CASE("test_route_flow", "[vpr_noc_bfs_routing]") { // add all the routers for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { - noc_model.add_router((i * 4) + j, j, i, 0); + noc_model.add_router((i * 4) + j, j, i, 0, DUMMY_LATENCY); } } @@ -40,19 +43,19 @@ TEST_CASE("test_route_flow", "[vpr_noc_bfs_routing]") { for (int j = 0; j < 4; j++) { // add a link to the left of the router if there exists another router there if ((j - 1) >= 0) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 1)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 1), DUMMY_BANDWIDTH, DUMMY_LATENCY); } // add a link to the top of the router if there exists another router there if ((i + 1) <= 3) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 4)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 4), DUMMY_BANDWIDTH, DUMMY_LATENCY); } // add a link to the right of the router if there exists another router there if ((j + 1) <= 3) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 1)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 1), DUMMY_BANDWIDTH, DUMMY_LATENCY); } // add a link to the bottom of the router if there exists another router there if ((i - 1) >= 0) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 4)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 4), DUMMY_BANDWIDTH, DUMMY_LATENCY); } } } @@ -97,12 +100,12 @@ TEST_CASE("test_route_flow", "[vpr_noc_bfs_routing]") { int number_of_links = noc_model.get_noc_links().size(); // add the diagonal links and also add them to the golden path - noc_model.add_link(NocRouterId(12), NocRouterId(9)); - golden_path.push_back(NocLinkId(number_of_links++)); - noc_model.add_link(NocRouterId(9), NocRouterId(6)); - golden_path.push_back(NocLinkId(number_of_links++)); - noc_model.add_link(NocRouterId(6), NocRouterId(3)); - golden_path.push_back(NocLinkId(number_of_links++)); + noc_model.add_link(NocRouterId(12), NocRouterId(9), DUMMY_BANDWIDTH, DUMMY_LATENCY); + golden_path.emplace_back(number_of_links++); + noc_model.add_link(NocRouterId(9), NocRouterId(6), DUMMY_BANDWIDTH, DUMMY_LATENCY); + golden_path.emplace_back(number_of_links++); + noc_model.add_link(NocRouterId(6), NocRouterId(3), DUMMY_BANDWIDTH, DUMMY_LATENCY); + golden_path.emplace_back(number_of_links++); // now run the routinjg algorithm // make sure that a legal route was found (no error should be thrown) diff --git a/vpr/test/test_compressed_grid.cpp b/vpr/test/test_compressed_grid.cpp new file mode 100644 index 00000000000..e1a5a2ba9fc --- /dev/null +++ b/vpr/test/test_compressed_grid.cpp @@ -0,0 +1,267 @@ +#include "catch2/catch_test_macros.hpp" +#include "catch2/matchers/catch_matchers_all.hpp" + +#include "compressed_grid.h" +#include "globals.h" +#include "physical_types.h" + +// for comparing floats +#include "vtr_math.h" + +#include + +namespace { + +void set_type_tile_to_empty(const int x, const int y, + vtr::NdMatrix& grid) { + t_physical_tile_type_ptr type = grid[0][x][y].type; + const int width_offset = grid[0][x][y].width_offset; + const int height_offset = grid[0][x][y].height_offset; + const int x_anchor = x - width_offset; + const int y_anchor = y - height_offset; + + for (int i = x_anchor; i < x_anchor + type->width; i++) { + for (int j = y_anchor; j < y_anchor + type->height; j++) { + if (grid[0][i][j].type == type && grid[0][i][j].width_offset == i - x_anchor && grid[0][i][j].height_offset == j - y_anchor) { + grid[0][i][j].type = g_vpr_ctx.device().EMPTY_PHYSICAL_TILE_TYPE; + grid[0][i][j].width_offset = 0; + grid[0][i][j].height_offset = 0; + } + } + } + +} + +void set_tile_type_at_loc(const int x_anchor, const int y_anchor, + vtr::NdMatrix& grid, + const t_physical_tile_type& tile_type) { + + for (int i = x_anchor; i < x_anchor + tile_type.width; i++) { + for (int j = y_anchor; j < y_anchor + tile_type.height; j++) { + if (grid[0][i][j].type != g_vpr_ctx.device().EMPTY_PHYSICAL_TILE_TYPE) { + set_type_tile_to_empty(i, j, grid); + } + grid[0][i][j].type = &tile_type; + grid[0][i][j].width_offset = i - x_anchor; + grid[0][i][j].height_offset = j - y_anchor; + } + } +} + + +TEST_CASE("test_compressed_grid", "[vpr_compressed_grid]") { + // test device grid name + std::string device_grid_name = "test"; + + // creating a reference for the empty tile name and router name + char empty_tile_name[] = "empty"; + char io_tile_name[] = "io"; + char small_tile_name[] = "small"; + char tall_tile_name[] = "tall"; + char large_tile_name[] = "large"; + + // device grid parameters + const int test_grid_width = 100; + const int test_grid_height = 100; + + // create the test device grid (10x10) + auto test_grid = vtr::NdMatrix({1, test_grid_width, test_grid_height}); + + auto& logical_block_types = g_vpr_ctx.mutable_device().logical_block_types; + logical_block_types.clear(); + + + t_physical_tile_type empty_tile; + empty_tile.name = empty_tile_name; + empty_tile.height = 1; + empty_tile.width = 1; + empty_tile.sub_tiles.emplace_back(); + + t_logical_block_type EMPTY_LOGICAL_BLOCK_TYPE = get_empty_logical_type(); + EMPTY_LOGICAL_BLOCK_TYPE.index = 0; + EMPTY_LOGICAL_BLOCK_TYPE.equivalent_tiles.push_back(&empty_tile); + logical_block_types.push_back(EMPTY_LOGICAL_BLOCK_TYPE); + + g_vpr_ctx.mutable_device().EMPTY_PHYSICAL_TILE_TYPE = &empty_tile; + + empty_tile.sub_tiles.back().index = 0; + empty_tile.sub_tiles.back().equivalent_sites.push_back(&EMPTY_LOGICAL_BLOCK_TYPE); + + + // create an io physical tile and assign its parameters + t_physical_tile_type io_tile; + io_tile.name = io_tile_name; + io_tile.height = 1; + io_tile.width = 1; + io_tile.sub_tiles.emplace_back(); + + t_logical_block_type io_logical_type; + io_logical_type.index = 1; + io_logical_type.equivalent_tiles.push_back(&io_tile); + logical_block_types.push_back(io_logical_type); + + io_tile.sub_tiles.back().index = 0; + io_tile.sub_tiles.back().equivalent_sites.push_back(&io_logical_type); + + // create a small tile and assign its parameters + t_physical_tile_type small_tile; + small_tile.name = small_tile_name; + small_tile.height = 1; + small_tile.width = 1; + small_tile.sub_tiles.emplace_back(); + + t_logical_block_type small_logical_type; + small_logical_type.index = 2; + small_logical_type.equivalent_tiles.push_back(&small_tile); + logical_block_types.push_back(small_logical_type); + + small_tile.sub_tiles.back().index = 0; + small_tile.sub_tiles.back().equivalent_sites.push_back(&small_logical_type); + + // create a small tile and assign its parameters + t_physical_tile_type tall_tile; + tall_tile.name = tall_tile_name; + tall_tile.height = 4; + tall_tile.width = 1; + tall_tile.sub_tiles.emplace_back(); + + t_logical_block_type tall_logical_type; + tall_logical_type.index = 3; + tall_logical_type.equivalent_tiles.push_back(&tall_tile); + logical_block_types.push_back(tall_logical_type); + + + tall_tile.sub_tiles.back().index = 0; + tall_tile.sub_tiles.back().equivalent_sites.push_back(&tall_logical_type); + + t_physical_tile_type large_tile; + large_tile.name = large_tile_name; + large_tile.height = 3; + large_tile.width = 3; + large_tile.sub_tiles.emplace_back(); + + t_logical_block_type large_logical_type; + large_logical_type.index = 4; + large_logical_type.equivalent_tiles.push_back(&large_tile); + logical_block_types.push_back(large_logical_type); + + large_tile.sub_tiles.back().index = 0; + large_tile.sub_tiles.back().equivalent_sites.push_back(&large_logical_type); + + + for (int x = 0; x < test_grid_width; x++) { + for (int y = 0; y < test_grid_height; y++) { + test_grid[0][x][y].type = &io_tile; + test_grid[0][x][y].height_offset = 0; + test_grid[0][x][y].width_offset = 0; + } + } + + for (int x = 1; x < test_grid_width - 1; x++) { + for (int y = 1; y < test_grid_height - 1; y++) { + set_tile_type_at_loc(x, y, test_grid, small_tile); + } + } + + for (int x = 7; x < test_grid_width - 7; x += 10) { + for (int y = 5; y < test_grid_height - 5; y += 5) { + set_tile_type_at_loc(x, y, test_grid, tall_tile); + } + } + + for (int x = 8; x < test_grid_width - 8; x += 17) { + for (int y = 7; y < test_grid_height - 6; y += 13) { + set_tile_type_at_loc(x, y, test_grid, large_tile); + } + } + + auto& grid = g_vpr_ctx.mutable_device().grid; + grid = DeviceGrid("test_device_grid", test_grid); + + std::vector compressed_grids = create_compressed_block_grids(); + + SECTION("Check compressed grid sizes") { + REQUIRE(compressed_grids[io_logical_type.index].compressed_to_grid_x[0].size() == 100); + REQUIRE(compressed_grids[io_logical_type.index].compressed_to_grid_y[0].size() == 100); + + REQUIRE(compressed_grids[small_logical_type.index].compressed_to_grid_x[0].size() == 98); + REQUIRE(compressed_grids[small_logical_type.index].compressed_to_grid_y[0].size() == 98); + + REQUIRE(compressed_grids[tall_logical_type.index].compressed_to_grid_x[0].size() == 9); + REQUIRE(compressed_grids[tall_logical_type.index].compressed_to_grid_y[0].size() == 18); + + REQUIRE(compressed_grids[large_logical_type.index].compressed_to_grid_x[0].size() == 5); + REQUIRE(compressed_grids[large_logical_type.index].compressed_to_grid_y[0].size() == 7); + } + + SECTION("Exact mapped locations in the compressed grids") { + t_physical_tile_loc comp_loc = compressed_grids[large_logical_type.index].grid_loc_to_compressed_loc_approx({25, 33, 0}); + t_physical_tile_loc grid_loc = compressed_grids[large_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{25, 33, 0}); + + comp_loc = compressed_grids[large_logical_type.index].grid_loc_to_compressed_loc_approx({76, 7, 0}); + grid_loc = compressed_grids[large_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{76, 7, 0}); + + comp_loc = compressed_grids[large_logical_type.index].grid_loc_to_compressed_loc_approx({59, 85, 0}); + grid_loc = compressed_grids[large_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{59, 85, 0}); + + comp_loc = compressed_grids[tall_logical_type.index].grid_loc_to_compressed_loc_approx({7, 5, 0}); + grid_loc = compressed_grids[tall_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{7, 5, 0}); + + comp_loc = compressed_grids[tall_logical_type.index].grid_loc_to_compressed_loc_approx({77, 40, 0}); + grid_loc = compressed_grids[tall_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{77, 40, 0}); + + comp_loc = compressed_grids[tall_logical_type.index].grid_loc_to_compressed_loc_approx({37, 85, 0}); + grid_loc = compressed_grids[tall_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{37, 85, 0}); + + comp_loc = compressed_grids[small_logical_type.index].grid_loc_to_compressed_loc_approx({2, 3, 0}); + grid_loc = compressed_grids[small_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{2, 3, 0}); + + comp_loc = compressed_grids[small_logical_type.index].grid_loc_to_compressed_loc_approx({17, 3, 0}); + grid_loc = compressed_grids[small_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{17, 3, 0}); + } + + SECTION("Closest mapped location in the compressed grids") { + t_physical_tile_loc comp_loc = compressed_grids[large_logical_type.index].grid_loc_to_compressed_loc_approx({25, 33, 0}); + t_physical_tile_loc grid_loc = compressed_grids[large_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{25, 33, 0}); + + comp_loc = compressed_grids[large_logical_type.index].grid_loc_to_compressed_loc_approx({99, 10, 0}); + grid_loc = compressed_grids[large_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{76, 7, 0}); + + comp_loc = compressed_grids[large_logical_type.index].grid_loc_to_compressed_loc_approx({51, 79, 0}); + grid_loc = compressed_grids[large_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{59, 85, 0}); + + comp_loc = compressed_grids[tall_logical_type.index].grid_loc_to_compressed_loc_approx({1, 6, 0}); + grid_loc = compressed_grids[tall_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{7, 5, 0}); + + comp_loc = compressed_grids[tall_logical_type.index].grid_loc_to_compressed_loc_approx({81, 38, 0}); + grid_loc = compressed_grids[tall_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{77, 40, 0}); + + comp_loc = compressed_grids[tall_logical_type.index].grid_loc_to_compressed_loc_approx({34, 83, 0}); + grid_loc = compressed_grids[tall_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{37, 85, 0}); + + comp_loc = compressed_grids[small_logical_type.index].grid_loc_to_compressed_loc_approx({0, 0, 0}); + grid_loc = compressed_grids[small_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{1, 1, 0}); + + comp_loc = compressed_grids[small_logical_type.index].grid_loc_to_compressed_loc_approx({99, 99, 0}); + grid_loc = compressed_grids[small_logical_type.index].compressed_loc_to_grid_loc(comp_loc); + REQUIRE(grid_loc == t_physical_tile_loc{98, 98, 0}); + } + +} + +} // namespace \ No newline at end of file diff --git a/vpr/test/test_noc_place_utils.cpp b/vpr/test/test_noc_place_utils.cpp index 0f0da5a5086..80023cf8b81 100644 --- a/vpr/test/test_noc_place_utils.cpp +++ b/vpr/test/test_noc_place_utils.cpp @@ -43,7 +43,11 @@ TEST_CASE("test_initial_noc_placement", "[noc_place_utils]") { // dist_2 is used to generate traffic flow bandwidths. // Setting the NoC link bandwidth to max() / 5 makes link congestion more likely to happen const double noc_link_bandwidth = dist_2.max() / 5; + constexpr double noc_link_latency = 1.0; + constexpr double noc_router_latency = 1.0; noc_ctx.noc_model.set_noc_link_bandwidth(noc_link_bandwidth); + noc_ctx.noc_model.set_noc_link_latency(noc_link_latency); + noc_ctx.noc_model.set_noc_router_latency(noc_router_latency); // individual router parameters int curr_router_id; @@ -66,7 +70,8 @@ TEST_CASE("test_initial_noc_placement", "[noc_place_utils]") { noc_ctx.noc_model.add_router(curr_router_id, router_grid_position_x, router_grid_position_y, - 0); + 0, + noc_router_latency); } noc_ctx.noc_model.make_room_for_noc_router_link_list(); @@ -76,19 +81,19 @@ TEST_CASE("test_initial_noc_placement", "[noc_place_utils]") { for (int j = 0; j < MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST; j++) { // add a link to the left of the router if there exists another router there if ((j - 1) >= 0) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - 1)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - 1), noc_link_bandwidth, noc_router_latency); } // add a link to the top of the router if there exists another router there if ((i + 1) <= MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST - 1) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST), noc_link_bandwidth, noc_router_latency); } // add a link to the right of the router if there exists another router there if ((j + 1) <= MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST - 1) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + 1)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + 1), noc_link_bandwidth, noc_router_latency); } // add a link to the bottom of the router if there exists another router there if ((i - 1) >= 0) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST), noc_link_bandwidth, noc_router_latency); } } } @@ -189,7 +194,7 @@ TEST_CASE("test_initial_noc_placement", "[noc_place_utils]") { } // now call the test function - initial_noc_routing(); + initial_noc_routing({}); // now verify the function by comparing the link bandwidths in the noc model (should have been updated by the test function) to the golden set int number_of_links = golden_link_bandwidths.size(); @@ -235,7 +240,11 @@ TEST_CASE("test_initial_comp_cost_functions", "[noc_place_utils]") { // dist_2 is used to generate traffic flow bandwidths. // Setting the NoC link bandwidth to max() / 5 makes link congestion more likely to happen const double noc_link_bandwidth = dist_2.max() / 5; + constexpr double noc_link_latency = 1.0; + constexpr double noc_router_latency = 1.0; noc_ctx.noc_model.set_noc_link_bandwidth(noc_link_bandwidth); + noc_ctx.noc_model.set_noc_link_latency(noc_link_latency); + noc_ctx.noc_model.set_noc_router_latency(noc_router_latency); // individual router parameters int curr_router_id; @@ -258,7 +267,8 @@ TEST_CASE("test_initial_comp_cost_functions", "[noc_place_utils]") { noc_ctx.noc_model.add_router(curr_router_id, router_grid_position_x, router_grid_position_y, - 0); + 0, + noc_router_latency); } noc_ctx.noc_model.make_room_for_noc_router_link_list(); @@ -268,19 +278,19 @@ TEST_CASE("test_initial_comp_cost_functions", "[noc_place_utils]") { for (int j = 0; j < MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST; j++) { // add a link to the left of the router if there exists another router there if ((j - 1) >= 0) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - 1)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - 1), noc_link_bandwidth, noc_link_latency); } // add a link to the top of the router if there exists another router there if ((i + 1) <= MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST - 1) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST), noc_link_bandwidth, noc_link_latency); } // add a link to the right of the router if there exists another router there if ((j + 1) <= MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST - 1) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + 1)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + 1), noc_link_bandwidth, noc_link_latency); } // add a link to the bottom of the router if there exists another router there if ((i - 1) >= 0) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST), noc_link_bandwidth, noc_link_latency); } } } @@ -379,7 +389,7 @@ TEST_CASE("test_initial_comp_cost_functions", "[noc_place_utils]") { // assume this works // this is needed to set up the global noc packet router and also global datastructures - initial_noc_routing(); + initial_noc_routing({}); SECTION("test_comp_noc_aggregate_bandwidth_cost") { //initialize all the cost calculator datastructures @@ -512,15 +522,16 @@ TEST_CASE("test_find_affected_noc_routers_and_update_noc_costs, test_commit_noc_ noc_opts.noc_latency_weighting = dist_3(double_engine); noc_opts.noc_congestion_weighting = dist_3(double_engine); + constexpr double link_bandwidth = 1.0; + // setting the NoC parameters noc_ctx.noc_model.set_noc_link_latency(1); noc_ctx.noc_model.set_noc_router_latency(1); - noc_ctx.noc_model.set_noc_link_bandwidth(1); + noc_ctx.noc_model.set_noc_link_bandwidth(link_bandwidth); // needs to be the same as above - double router_latency = noc_ctx.noc_model.get_noc_router_latency(); - double link_latency = noc_ctx.noc_model.get_noc_link_latency(); - double link_bandwidth = noc_ctx.noc_model.get_noc_link_bandwidth(); + const double router_latency = noc_ctx.noc_model.get_noc_router_latency(); + const double link_latency = noc_ctx.noc_model.get_noc_link_latency(); // keeps track of which hard router each cluster block is placed vtr::vector router_where_cluster_is_placed; @@ -537,7 +548,8 @@ TEST_CASE("test_find_affected_noc_routers_and_update_noc_costs, test_commit_noc_ noc_ctx.noc_model.add_router(curr_router_id, router_grid_position_x, router_grid_position_y, - 0); + 0, + router_latency); } noc_ctx.noc_model.make_room_for_noc_router_link_list(); @@ -547,19 +559,19 @@ TEST_CASE("test_find_affected_noc_routers_and_update_noc_costs, test_commit_noc_ for (int j = 0; j < MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST; j++) { // add a link to the left of the router if there exists another router there if ((j - 1) >= 0) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - 1)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - 1), link_bandwidth, link_latency); } // add a link to the top of the router if there exists another router there if ((i + 1) <= MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST - 1) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST), link_bandwidth, link_latency); } // add a link to the right of the router if there exists another router there if ((j + 1) <= MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST - 1) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + 1)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + 1), link_bandwidth, link_latency); } // add a link to the bottom of the router if there exists another router there if ((i - 1) >= 0) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST), link_bandwidth, link_latency); } } } @@ -664,7 +676,7 @@ TEST_CASE("test_find_affected_noc_routers_and_update_noc_costs, test_commit_noc_ // assume this works // this is needed to set up the global noc packet router and also global datastructures - initial_noc_routing(); + initial_noc_routing({}); // datastructure below will store the bandwidth usages of all the links // and will be updated throughout this test. @@ -1214,7 +1226,7 @@ TEST_CASE("test_find_affected_noc_routers_and_update_noc_costs, test_commit_noc_ // now check whether the expected noc costs that we manually calculated above match the noc costs found through the test function (we allow for a tolerance of difference) REQUIRE(vtr::isclose(golden_total_noc_aggr_bandwidth_cost, test_noc_costs.aggregate_bandwidth)); REQUIRE(vtr::isclose(golden_total_noc_latency_cost, test_noc_costs.latency)); - std::cout << golden_total_noc_latency_overrun_cost << " " << test_noc_costs.latency_overrun << std::endl; + std::cout << golden_total_noc_latency_overrun_cost << " " << test_noc_costs.latency_overrun << std::endl; REQUIRE(vtr::isclose(golden_total_noc_latency_overrun_cost, test_noc_costs.latency_overrun)); REQUIRE(vtr::isclose(golden_total_noc_congestion_cost, test_noc_costs.congestion)); @@ -1387,10 +1399,14 @@ TEST_CASE("test_revert_noc_traffic_flow_routes", "[noc_place_utils]") { noc_opts.noc_latency_weighting = dist_3(double_engine); noc_opts.noc_congestion_weighting = dist_3(double_engine); + constexpr double LINK_LATENCY = 1; + constexpr double LINK_BANDWIDTH = 1; + constexpr double ROUTER_LATENCY = 1; + // setting the NoC parameters - noc_ctx.noc_model.set_noc_link_latency(1); - noc_ctx.noc_model.set_noc_router_latency(1); - noc_ctx.noc_model.set_noc_link_bandwidth(1); + noc_ctx.noc_model.set_noc_link_latency(LINK_BANDWIDTH); + noc_ctx.noc_model.set_noc_router_latency(ROUTER_LATENCY); + noc_ctx.noc_model.set_noc_link_bandwidth(LINK_BANDWIDTH); // keeps track of which hard router each cluster block is placed vtr::vector router_where_cluster_is_placed; @@ -1407,7 +1423,8 @@ TEST_CASE("test_revert_noc_traffic_flow_routes", "[noc_place_utils]") { noc_ctx.noc_model.add_router(curr_router_id, router_grid_position_x, router_grid_position_y, - 0); + 0, + ROUTER_LATENCY); } noc_ctx.noc_model.make_room_for_noc_router_link_list(); @@ -1417,19 +1434,19 @@ TEST_CASE("test_revert_noc_traffic_flow_routes", "[noc_place_utils]") { for (int j = 0; j < MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST; j++) { // add a link to the left of the router if there exists another router there if ((j - 1) >= 0) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - 1)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - 1), LINK_BANDWIDTH, LINK_LATENCY); } // add a link to the top of the router if there exists another router there if ((i + 1) <= MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST - 1) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST), LINK_BANDWIDTH, LINK_LATENCY); } // add a link to the right of the router if there exists another router there if ((j + 1) <= MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST - 1) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + 1)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + 1), LINK_BANDWIDTH, LINK_LATENCY); } // add a link to the bottom of the router if there exists another router there if ((i - 1) >= 0) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST), LINK_BANDWIDTH, LINK_LATENCY); } } } @@ -1523,7 +1540,7 @@ TEST_CASE("test_revert_noc_traffic_flow_routes", "[noc_place_utils]") { // assume this works // this is needed to set up the global noc packet router and also global datastructures - initial_noc_routing(); + initial_noc_routing({}); // datastructure below will store the bandwidth usages of all the links // and will be updated throughout this test. @@ -1686,7 +1703,6 @@ TEST_CASE("test_revert_noc_traffic_flow_routes", "[noc_place_utils]") { const NocLink& current_link = noc_ctx.noc_model.get_single_noc_link(current_link_id); REQUIRE(golden_link_bandwidths[current_link_id] == current_link.get_bandwidth_usage()); - } for (int traffic_flow_number = 0; traffic_flow_number < NUM_OF_TRAFFIC_FLOWS_NOC_PLACE_UTILS_TEST; traffic_flow_number++) { @@ -1758,7 +1774,8 @@ TEST_CASE("test_check_noc_placement_costs", "[noc_place_utils]") { noc_ctx.noc_model.add_router(curr_router_id, router_grid_position_x, router_grid_position_y, - 0); + 0, + router_latency); } noc_ctx.noc_model.make_room_for_noc_router_link_list(); @@ -1768,19 +1785,19 @@ TEST_CASE("test_check_noc_placement_costs", "[noc_place_utils]") { for (int j = 0; j < MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST; j++) { // add a link to the left of the router if there exists another router there if ((j - 1) >= 0) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - 1)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - 1), link_bandwidth, link_latency); } // add a link to the top of the router if there exists another router there if ((i + 1) <= MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST - 1) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST), link_bandwidth, link_latency); } // add a link to the right of the router if there exists another router there if ((j + 1) <= MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST - 1) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + 1)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) + 1), link_bandwidth, link_latency); } // add a link to the bottom of the router if there exists another router there if ((i - 1) >= 0) { - noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST)); + noc_ctx.noc_model.add_link((NocRouterId)((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j), (NocRouterId)(((i * MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST) + j) - MESH_TOPOLOGY_SIZE_NOC_PLACE_UTILS_TEST), link_bandwidth, link_latency); } } } diff --git a/vpr/test/test_noc_storage.cpp b/vpr/test/test_noc_storage.cpp index 834d81b88a6..2f24b4a6542 100644 --- a/vpr/test/test_noc_storage.cpp +++ b/vpr/test/test_noc_storage.cpp @@ -13,6 +13,9 @@ namespace { +constexpr double DUMMY_LATENCY = 1e-9; +constexpr double DUMMY_BANDWIDTH = 1e12; + TEST_CASE("test_adding_routers_to_noc_storage", "[vpr_noc]") { // setup random number generation std::random_device device; @@ -44,10 +47,10 @@ TEST_CASE("test_adding_routers_to_noc_storage", "[vpr_noc]") { router_grid_position_y = router_number + dist(rand_num_gen); // add router to the golden vector - golden_set.emplace_back(router_number, router_grid_position_x, router_grid_position_y, 0); + golden_set.emplace_back(router_number, router_grid_position_x, router_grid_position_y, 0, DUMMY_LATENCY); // add tje router to the noc - test_noc.add_router(curr_router_id, router_grid_position_x, router_grid_position_y, 0); + test_noc.add_router(curr_router_id, router_grid_position_x, router_grid_position_y, 0, DUMMY_LATENCY); } // now verify that the routers were added properly by reading the routers back from the noc and comparing them to the golden set @@ -96,10 +99,10 @@ TEST_CASE("test_router_id_conversion", "[vpr_noc]") { router_grid_position_y = router_number + dist(rand_num_gen); // add router to the golden vector - golden_set.emplace_back(router_number, router_grid_position_x, router_grid_position_y, 0); + golden_set.emplace_back(router_number, router_grid_position_x, router_grid_position_y, 0, DUMMY_LATENCY); // add tje router to the noc - test_noc.add_router(curr_router_id, router_grid_position_x, router_grid_position_y, 0); + test_noc.add_router(curr_router_id, router_grid_position_x, router_grid_position_y, 0, DUMMY_LATENCY); } // now verify that the routers were added properly by reading the routers back from the noc and comparing them to the golden set @@ -150,7 +153,8 @@ TEST_CASE("test_add_link", "[vpr_noc]") { test_noc.add_router(router_id, curr_router_x_pos, curr_router_y_pos, - 0); + 0, + DUMMY_LATENCY); } // allocate the size for outgoing link vector for each router @@ -171,10 +175,10 @@ TEST_CASE("test_add_link", "[vpr_noc]") { noc_link_id_counter++; // add link to the golden reference - golden_set.emplace_back(link_id, source, sink, 0.0); + golden_set.emplace_back(link_id, source, sink, DUMMY_BANDWIDTH, DUMMY_LATENCY); // add the link to the NoC - test_noc.add_link(source, sink); + test_noc.add_link(source, sink, DUMMY_BANDWIDTH, DUMMY_LATENCY); total_num_of_links++; } @@ -235,7 +239,7 @@ TEST_CASE("test_router_link_list", "[vpr_noc]") { router_id = router_number; // add tje router to the noc - test_noc.add_router(router_id, curr_router_x_pos, curr_router_y_pos, 0); + test_noc.add_router(router_id, curr_router_x_pos, curr_router_y_pos, 0, DUMMY_LATENCY); } // allocate the size for outgoing link vector for each router @@ -250,7 +254,7 @@ TEST_CASE("test_router_link_list", "[vpr_noc]") { // makes sure we do not create a link for a router who acts as a sink and source if (source_router_id != sink_router_id) { // add the link to the NoC - test_noc.add_link(source, sink); + test_noc.add_link(source, sink, DUMMY_BANDWIDTH, DUMMY_LATENCY); // add the link id to the golden set golden_set[source].push_back((NocLinkId)curr_link_number); @@ -266,7 +270,7 @@ TEST_CASE("test_router_link_list", "[vpr_noc]") { source = (NocRouterId)id; // get the router connections from the - const std::vector& router_links = test_noc.get_noc_router_connections(source); + const std::vector& router_links = test_noc.get_noc_router_outgoing_links(source); // get the size of the current router connection list connection_size = golden_set[source].size(); @@ -312,7 +316,8 @@ TEST_CASE("test_remove_link", "[vpr_noc]") { test_noc.add_router(router_id, curr_router_x_pos, curr_router_y_pos, - 0); + 0, + DUMMY_LATENCY); } // now go through and add the links to the NoC @@ -329,7 +334,7 @@ TEST_CASE("test_remove_link", "[vpr_noc]") { // makes sure we do not create a link for a router who acts as a sink and source if (source_router_id != sink_router_id) { // add the link to the NoC - test_noc.add_link(source, sink); + test_noc.add_link(source, sink, DUMMY_BANDWIDTH, DUMMY_LATENCY); } } } @@ -351,7 +356,7 @@ TEST_CASE("test_remove_link", "[vpr_noc]") { // variable to keep track of whether the link was deleted from the vector outgoing links of its source router bool link_removed_from_outgoing_vector = true; - auto& outgoing_links = test_noc.get_noc_router_connections(link_to_remove_src_router); + auto& outgoing_links = test_noc.get_noc_router_outgoing_links(link_to_remove_src_router); // go through all the outgoing links of the source router in the link we removed and check that the link does not exist there as well. for (auto outgoing_link : outgoing_links) { // get the current outgoing link @@ -431,7 +436,8 @@ TEST_CASE("test_generate_router_key_from_grid_location", "[vpr_noc]") { test_noc.add_router(curr_router_id, router_grid_position_x, router_grid_position_y, - 0); + 0, + DUMMY_LATENCY); } // now verify the test function by identifying all the routers using their grid locations diff --git a/vpr/test/test_server_convertutils.cpp b/vpr/test/test_server_convertutils.cpp new file mode 100644 index 00000000000..d3f64b81816 --- /dev/null +++ b/vpr/test/test_server_convertutils.cpp @@ -0,0 +1,21 @@ +#ifndef NO_SERVER + +#include "catch2/catch_test_macros.hpp" +#include "catch2/matchers/catch_matchers_all.hpp" + +#include "convertutils.h" + +TEST_CASE("test_server_convert_utils_to_int", "[vpr]") +{ + REQUIRE(std::optional{-2} == try_convert_to_int("-2")); + REQUIRE(std::optional{0} == try_convert_to_int("0")); + REQUIRE(std::optional{2} == try_convert_to_int("2")); + REQUIRE(std::nullopt == try_convert_to_int("2.")); + REQUIRE(std::nullopt == try_convert_to_int("2.0")); + REQUIRE(std::nullopt == try_convert_to_int("two")); + REQUIRE(std::nullopt == try_convert_to_int("2k")); + REQUIRE(std::nullopt == try_convert_to_int("k2")); +} + +#endif /* NO_SERVER */ + diff --git a/vpr/test/test_server_taskresolver.cpp b/vpr/test/test_server_taskresolver.cpp new file mode 100644 index 00000000000..eda8d5ae82f --- /dev/null +++ b/vpr/test/test_server_taskresolver.cpp @@ -0,0 +1,115 @@ +#ifndef NO_SERVER + +#include "catch2/catch_test_macros.hpp" +#include "catch2/matchers/catch_matchers_all.hpp" + +#include "taskresolver.h" +#include + +TEST_CASE("test_server_taskresolver_cmdSpamFilter", "[vpr]") { + server::TaskResolver resolver; + const comm::CMD cmd = comm::CMD::GET_PATH_LIST_ID; + + { + server::TaskPtr task0 = std::make_unique(1, cmd); + server::TaskPtr task1 = std::make_unique(2, cmd); + server::TaskPtr task2 = std::make_unique(3, cmd); + server::TaskPtr task3 = std::make_unique(4, cmd); + server::TaskPtr task4 = std::make_unique(5, cmd); + + resolver.own_task(std::move(task0)); + resolver.own_task(std::move(task1)); + resolver.own_task(std::move(task2)); + resolver.own_task(std::move(task3)); + resolver.own_task(std::move(task4)); + } + + std::vector finished; + resolver.take_finished_tasks(finished); + + REQUIRE(finished.size() == 4); + + for (const auto& task: finished) { + REQUIRE(task->is_finished()); + REQUIRE(task->has_error()); + REQUIRE(task->job_id() != 1); + REQUIRE(task->cmd() == cmd); + } + REQUIRE(resolver.tasks_num() == 1); + const server::TaskPtr& task = resolver.tasks().at(0); + REQUIRE(task->job_id() == 1); + REQUIRE(task->cmd() == cmd); +} + +TEST_CASE("test_server_taskresolver_cmdOverrideFilter", "[vpr]") { + server::TaskResolver resolver; + const comm::CMD cmd = comm::CMD::GET_PATH_LIST_ID; + + { + server::TaskPtr task0 = std::make_unique(1, cmd, "1"); + server::TaskPtr task1 = std::make_unique(2, cmd, "11"); + server::TaskPtr task2 = std::make_unique(3, cmd, "222"); + + resolver.own_task(std::move(task0)); + resolver.own_task(std::move(task1)); + resolver.own_task(std::move(task2)); + } + + std::vector finished; + resolver.take_finished_tasks(finished); + + REQUIRE(finished.size() == 2); + + for (const server::TaskPtr& task: finished) { + REQUIRE(task->is_finished()); + REQUIRE(task->has_error()); + REQUIRE(task->job_id() != 3); + } + REQUIRE(resolver.tasks_num() == 1); + const server::TaskPtr& task = resolver.tasks().at(0); + REQUIRE(task->job_id() == 3); + REQUIRE(task->cmd() == cmd); + REQUIRE(task->options() == "222"); +} + +TEST_CASE("test_server_taskresolver_cmdSpamAndOverrideOptions", "[vpr]") { + server::TaskResolver resolver; + + const comm::CMD cmd1 = comm::CMD::GET_PATH_LIST_ID; + const comm::CMD cmd2 = comm::CMD::DRAW_PATH_ID; + + { + server::TaskPtr task0 = std::make_unique(1, cmd2, "1"); + server::TaskPtr task1 = std::make_unique(2, cmd2, "11"); + server::TaskPtr task2 = std::make_unique(3, cmd2, "222"); + server::TaskPtr task3 = std::make_unique(4, cmd2, "222"); + server::TaskPtr task4 = std::make_unique(5, cmd1); + server::TaskPtr task5 = std::make_unique(6, cmd1); + server::TaskPtr task6 = std::make_unique(7, cmd1); + + resolver.own_task(std::move(task0)); + resolver.own_task(std::move(task1)); + resolver.own_task(std::move(task2)); + resolver.own_task(std::move(task3)); + resolver.own_task(std::move(task4)); + resolver.own_task(std::move(task5)); + resolver.own_task(std::move(task6)); + } + + std::vector finished; + resolver.take_finished_tasks(finished); + + REQUIRE(resolver.tasks_num() == 2); + const server::TaskPtr& task0 = resolver.tasks().at(0); + const server::TaskPtr& task1 = resolver.tasks().at(1); + + REQUIRE(task0->job_id() == 3); + REQUIRE(task0->cmd() == cmd2); + REQUIRE(task0->options() == "222"); + + REQUIRE(task1->job_id() == 5); + REQUIRE(task1->cmd() == cmd1); + REQUIRE(task1->options() == ""); +} + +#endif /* NO_SERVER */ \ No newline at end of file diff --git a/vpr/test/test_server_telegrambuffer.cpp b/vpr/test/test_server_telegrambuffer.cpp new file mode 100644 index 00000000000..6c5c793c3d2 --- /dev/null +++ b/vpr/test/test_server_telegrambuffer.cpp @@ -0,0 +1,151 @@ +#ifndef NO_SERVER + +#include "catch2/catch_test_macros.hpp" +#include "catch2/matchers/catch_matchers_all.hpp" + +#include "telegrambuffer.h" + +TEST_CASE("test_server_bytearray", "[vpr]") { + comm::ByteArray array1{"111"}; + comm::ByteArray array2{"222"}; + comm::ByteArray array{array1}; + array.append(array2); + + REQUIRE(array.at(0) == '1'); + REQUIRE(array.at(1) == '1'); + REQUIRE(array.at(2) == '1'); + REQUIRE(array.at(3) == '2'); + REQUIRE(array.at(4) == '2'); + REQUIRE(array.at(5) == '2'); + + REQUIRE(std::string_view{array} == "111222"); + + REQUIRE(array.size() == 6); + + array.append('3'); + + REQUIRE(array.size() == 7); + REQUIRE(std::string_view{array} == "1112223"); + + REQUIRE(array.at(6) == '3'); + + array.clear(); + + REQUIRE(array.size() == 0); + REQUIRE(std::string_view{array} == ""); +} + +TEST_CASE("test_server_telegrambuffer_oneOpened", "[vpr]") { + comm::TelegramBuffer buff; + buff.append(comm::ByteArray{"111"}); + buff.append(comm::ByteArray{"222"}); + + std::vector frames; + buff.take_telegram_frames(frames); + REQUIRE(frames.size() == 0); + + REQUIRE(std::string_view{buff.data()} == "111222"); +} + +TEST_CASE("test_server_telegrambuffer_notFilledTelegramButWithPrependedRubish", "[vpr]") +{ + comm::TelegramBuffer tBuff; + + const comm::ByteArray rubbish{"#@!"}; + const comm::ByteArray msgBody{"some message"}; + const comm::TelegramHeader msgHeader{comm::TelegramHeader::construct_from_body(msgBody)}; + + tBuff.append(rubbish); + tBuff.append(msgHeader.buffer()); + + std::vector frames; + tBuff.take_telegram_frames(frames); + REQUIRE(0 == frames.size()); + + REQUIRE(msgHeader.buffer() == tBuff.data()); // the rubbish prefix fragment will be absent here +} + +TEST_CASE("test_server_telegrambuffer__oneFinishedOneOpened", "[vpr]") +{ + comm::TelegramBuffer tBuff; + + const comm::ByteArray msgBody1{"message1"}; + const comm::ByteArray msgBody2{"message2"}; + + const comm::TelegramHeader msgHeader1{comm::TelegramHeader::construct_from_body(msgBody1)}; + const comm::TelegramHeader msgHeader2{comm::TelegramHeader::construct_from_body(msgBody2)}; + + comm::ByteArray t1(msgHeader1.buffer()); + t1.append(msgBody1); + + comm::ByteArray t2(msgHeader2.buffer()); + t2.append(msgBody2); + t2.resize(t2.size()-2); // drop 2 last elements + + tBuff.append(t1); + tBuff.append(t2); + + std::vector frames; + tBuff.take_telegram_frames(frames); + REQUIRE(1 == frames.size()); + + REQUIRE(msgBody1 == frames[0]->body); + + REQUIRE(t2 == tBuff.data()); +} + +TEST_CASE("test_server_telegrambuffer_twoFinished", "[vpr]") +{ + comm::TelegramBuffer tBuff; + + const comm::ByteArray msgBody1{"message1"}; + const comm::ByteArray msgBody2{"message2"}; + + const comm::TelegramHeader msgHeader1{comm::TelegramHeader::construct_from_body(msgBody1)}; + const comm::TelegramHeader msgHeader2{comm::TelegramHeader::construct_from_body(msgBody2)}; + + comm::ByteArray t1(msgHeader1.buffer()); + t1.append(msgBody1); + + comm::ByteArray t2(msgHeader2.buffer()); + t2.append(msgBody2); + + tBuff.append(t1); + tBuff.append(t2); + + std::vector frames; + tBuff.take_telegram_frames(frames); + REQUIRE(2 == frames.size()); + + REQUIRE(msgBody1 == frames[0]->body); + REQUIRE(msgBody2 == frames[1]->body); + + REQUIRE(comm::ByteArray{} == tBuff.data()); +} + +TEST_CASE("test_server_telegrambuffer_clear", "[vpr]") +{ + comm::TelegramBuffer tBuff; + + const comm::ByteArray msgBody1{"message1"}; + const comm::ByteArray msgBody2{"message2"}; + + const comm::TelegramHeader msgHeader1{comm::TelegramHeader::construct_from_body(msgBody1)}; + const comm::TelegramHeader msgHeader2{comm::TelegramHeader::construct_from_body(msgBody2)}; + + comm::ByteArray t1(msgHeader1.buffer()); + t1.append(msgBody1); + + comm::ByteArray t2(msgHeader2.buffer()); + t2.append(msgBody2); + + tBuff.clear(); + + std::vector frames; + tBuff.take_telegram_frames(frames); + REQUIRE(0 == frames.size()); + + REQUIRE(comm::ByteArray{} == tBuff.data()); +} + +#endif /* NO_SERVER */ \ No newline at end of file diff --git a/vpr/test/test_server_telegramoptions.cpp b/vpr/test/test_server_telegramoptions.cpp new file mode 100644 index 00000000000..d7b3160a0d1 --- /dev/null +++ b/vpr/test/test_server_telegramoptions.cpp @@ -0,0 +1,30 @@ +#ifndef NO_SERVER + +#include "catch2/catch_test_macros.hpp" +#include "catch2/matchers/catch_matchers_all.hpp" + +#include "telegramoptions.h" + +TEST_CASE("test_server_telegramoptions", "[vpr]") { + server::TelegramOptions options{"int:path_num:11;string:path_type:debug;int:details_level:3;bool:is_flat_routing:0", {"path_num", "path_type", "details_level", "is_flat_routing"}}; + + REQUIRE(options.errors_str() == ""); + + REQUIRE(options.get_string("path_type") == "debug"); + REQUIRE(options.get_int("path_num", -1) == 11); + REQUIRE(options.get_int("details_level", -1) == 3); + REQUIRE(options.get_bool("is_flat_routing", true) == false); +} + +TEST_CASE("test_server_telegramoptions_get_wrong_keys", "[vpr]") { + server::TelegramOptions options{"int:path_num:11;string:path_type:debug;int:details_level:3;bool:is_flat_routing:0", {"_path_num", "_path_type", "_details_level", "_is_flat_routing"}}; + + REQUIRE(!options.errors_str().empty()); + + REQUIRE(options.get_string("_path_type") == ""); + REQUIRE(options.get_int("_path_num", -1) == -1); + REQUIRE(options.get_int("_details_level", -1) == -1); + REQUIRE(options.get_bool("_is_flat_routing", true) == true); +} + +#endif /* NO_SERVER */ \ No newline at end of file diff --git a/vpr/test/test_server_telegramparser.cpp b/vpr/test/test_server_telegramparser.cpp new file mode 100644 index 00000000000..0d7f0c2276c --- /dev/null +++ b/vpr/test/test_server_telegramparser.cpp @@ -0,0 +1,39 @@ +#ifndef NO_SERVER + +#include "telegramparser.h" + +#include "catch2/catch_test_macros.hpp" +#include "catch2/matchers/catch_matchers_all.hpp" + +TEST_CASE("test_server_telegram_parser_base", "[vpr]") +{ + const std::string tdata{R"({"JOB_ID":"7","CMD":"2","OPTIONS":"type1:name1:value1;type2:name2:v a l u e 2;t3:n3:v3","DATA":"some_data...","STATUS":"1"})"}; + + REQUIRE(std::optional{7} == comm::TelegramParser::try_extract_field_job_id(tdata)); + REQUIRE(std::optional{2} == comm::TelegramParser::try_extract_field_cmd(tdata)); + REQUIRE(std::optional{"type1:name1:value1;type2:name2:v a l u e 2;t3:n3:v3"} == comm::TelegramParser::try_extract_field_options(tdata)); + REQUIRE(std::optional{"some_data..."} == comm::TelegramParser::try_extract_field_data(tdata)); + REQUIRE(std::optional{1} == comm::TelegramParser::try_extract_field_status(tdata)); +} + +TEST_CASE("test_server_telegram_parser_invalid_keys", "[vpr]") +{ + const std::string tBadData{R"({"_JOB_ID":"7","_CMD":"2","_OPTIONS":"type1:name1:value1;type2:name2:v a l u e 2;t3:n3:v3","_DATA":"some_data...","_STATUS":"1"})"}; + + REQUIRE(std::nullopt == comm::TelegramParser::try_extract_field_job_id(tBadData)); + REQUIRE(std::nullopt == comm::TelegramParser::try_extract_field_cmd(tBadData)); + REQUIRE(std::nullopt == comm::TelegramParser::try_extract_field_options(tBadData)); + REQUIRE(std::nullopt == comm::TelegramParser::try_extract_field_data(tBadData)); + REQUIRE(std::nullopt == comm::TelegramParser::try_extract_field_status(tBadData)); +} + +TEST_CASE("test_server_telegram_parser_invalid_types", "[vpr]") +{ + const std::string tBadData{R"({"JOB_ID":"x","CMD":"y","STATUS":"z"})"}; + + REQUIRE(std::nullopt == comm::TelegramParser::try_extract_field_job_id(tBadData)); + REQUIRE(std::nullopt == comm::TelegramParser::try_extract_field_cmd(tBadData)); + REQUIRE(std::nullopt == comm::TelegramParser::try_extract_field_status(tBadData)); +} + +#endif /* NO_SERVER */ \ No newline at end of file diff --git a/vpr/test/test_server_zlibutils.cpp b/vpr/test/test_server_zlibutils.cpp new file mode 100644 index 00000000000..c8978ab999f --- /dev/null +++ b/vpr/test/test_server_zlibutils.cpp @@ -0,0 +1,27 @@ +#ifndef NO_SERVER + +#include "zlibutils.h" + +#include "catch2/catch_test_macros.hpp" +#include "catch2/matchers/catch_matchers_all.hpp" + +TEST_CASE("test_server_zlib_utils", "[vpr]") +{ + const std::string orig{"This string is going to be compressed now"}; + + std::optional compressedOpt = try_compress(orig); + REQUIRE(compressedOpt); + REQUIRE(orig != compressedOpt.value()); + + std::optional decompressedOpt = try_decompress(compressedOpt.value()); + REQUIRE(decompressedOpt); + + REQUIRE(orig == decompressedOpt.value()); +} + +#endif /* NO_SERVER */ + + + + + diff --git a/vpr/test/test_setup_noc.cpp b/vpr/test/test_setup_noc.cpp index b88949b11f3..4c6f0a3942a 100644 --- a/vpr/test/test_setup_noc.cpp +++ b/vpr/test/test_setup_noc.cpp @@ -38,14 +38,11 @@ TEST_CASE("test_identify_and_store_noc_router_tile_positions", "[vpr_setup_noc]" router_tile.height = 2; router_tile.width = 2; - // name of the router physical tile - //std::string router_tile_name_string("router"); - // results from the test function std::vector list_of_routers; // make sure the test result is not corrupted - REQUIRE(list_of_routers.size() == 0); + REQUIRE(list_of_routers.empty()); SECTION("All routers are seperated by one or more grid spaces") { // in this test, the routers will be on the 4 corners of the FPGA @@ -120,7 +117,7 @@ TEST_CASE("test_identify_and_store_noc_router_tile_positions", "[vpr_setup_noc]" for (int i = 0; i < test_grid_width; i++) { for (int j = 0; j < test_grid_height; j++) { - // make sure the current tyle is not a router + // make sure the current tile is not a router if (test_grid[0][i][j].type == nullptr) { // assign the non-router tile as empty test_grid[0][i][j].type = &empty_tile; @@ -134,9 +131,9 @@ TEST_CASE("test_identify_and_store_noc_router_tile_positions", "[vpr_setup_noc]" DeviceGrid test_device = DeviceGrid(device_grid_name, test_grid); // call the test function - identify_and_store_noc_router_tile_positions(test_device, list_of_routers, std::string(router_tile_name)); + list_of_routers = identify_and_store_noc_router_tile_positions(test_device, router_tile_name); - // check that the physocal router tile positions were correctly determined + // check that the physical router tile positions were correctly determined // make sure that only 4 router tiles were found REQUIRE(list_of_routers.size() == 4); @@ -251,9 +248,9 @@ TEST_CASE("test_identify_and_store_noc_router_tile_positions", "[vpr_setup_noc]" DeviceGrid test_device = DeviceGrid(device_grid_name, test_grid); // call the test function - identify_and_store_noc_router_tile_positions(test_device, list_of_routers, std::string(router_tile_name)); + list_of_routers = identify_and_store_noc_router_tile_positions(test_device, router_tile_name); - // check that the physocal router tile positions were correctly determined + // check that the physical router tile positions were correctly determined // make sure that only 4 router tiles were found REQUIRE(list_of_routers.size() == 4); @@ -354,7 +351,7 @@ TEST_CASE("test_identify_and_store_noc_router_tile_positions", "[vpr_setup_noc]" for (int i = 0; i < test_grid_width; i++) { for (int j = 0; j < test_grid_height; j++) { - // make sure the current tyle is not a router + // make sure the current tile is not a router if (test_grid[0][i][j].type == nullptr) { // assign the non-router tile as empty test_grid[0][i][j].type = &empty_tile; @@ -368,9 +365,9 @@ TEST_CASE("test_identify_and_store_noc_router_tile_positions", "[vpr_setup_noc]" DeviceGrid test_device = DeviceGrid(device_grid_name, test_grid); // call the test function - identify_and_store_noc_router_tile_positions(test_device, list_of_routers, std::string(router_tile_name)); + list_of_routers = identify_and_store_noc_router_tile_positions(test_device, router_tile_name); - // check that the physocal router tile positions were correctly determined + // check that the physical router tile positions were correctly determined // make sure that only 4 router tiles were found REQUIRE(list_of_routers.size() == 4); @@ -418,17 +415,17 @@ TEST_CASE("test_create_noc_routers", "[vpr_setup_noc]") { * - router 8: (4,8) * - router 9: (8,8) */ - list_of_routers.push_back({0, 0, 0, 0.5, 1}); - list_of_routers.push_back({4, 0, 0, 4.5, 1}); - list_of_routers.push_back({8, 0, 0, 8.5, 1}); + list_of_routers.emplace_back(0, 0, 0, 0.5, 1); + list_of_routers.emplace_back(4, 0, 0, 4.5, 1); + list_of_routers.emplace_back(8, 0, 0, 8.5, 1); - list_of_routers.push_back({0, 4, 0, 0.5, 5}); - list_of_routers.push_back({4, 4, 0, 4.5, 5}); - list_of_routers.push_back({8, 4, 0, 8.5, 5}); + list_of_routers.emplace_back(0, 4, 0, 0.5, 5); + list_of_routers.emplace_back(4, 4, 0, 4.5, 5); + list_of_routers.emplace_back(8, 4, 0, 8.5, 5); - list_of_routers.push_back({0, 8, 0, 0.5, 9}); - list_of_routers.push_back({4, 8, 0, 4.5, 9}); - list_of_routers.push_back({8, 8, 0, 8.5, 9}); + list_of_routers.emplace_back(0, 8, 0, 0.5, 9); + list_of_routers.emplace_back(4, 8, 0, 4.5, 9); + list_of_routers.emplace_back(8, 8, 0, 8.5, 9); // create the noc model (to store the routers) NocStorage noc_model; @@ -437,13 +434,13 @@ TEST_CASE("test_create_noc_routers", "[vpr_setup_noc]") { t_noc_inf noc_info; // pointer to each logical router - t_router* temp_router = NULL; + t_router* temp_router = nullptr; - const vtr::vector* noc_routers = NULL; + const vtr::vector* noc_routers = nullptr; SECTION("Test create routers when logical routers match to exactly one physical router. The number of routers is less than whats on the FPGA.") { // start by creating all the logical routers - // this is similiar to the user provided a config file + // this is similar to the user provided a config file temp_router = new t_router; NocRouterId noc_router_id; @@ -481,9 +478,9 @@ TEST_CASE("test_create_noc_routers", "[vpr_setup_noc]") { REQUIRE(test_router.get_router_grid_position_y() == list_of_routers[router_id - 1].grid_height_position); } } - SECTION("Test create routers when logical routers match to exactly one physical router. The number of routers is exacrly the same as on the FPGA.") { + SECTION("Test create routers when logical routers match to exactly one physical router. The number of routers is exactly the same as on the FPGA.") { // start by creating all the logical routers - // this is similiar to the user provided a config file + // this is similar to the user provided a config file temp_router = new t_router; NocRouterId noc_router_id; @@ -523,7 +520,7 @@ TEST_CASE("test_create_noc_routers", "[vpr_setup_noc]") { } SECTION("Test create routers when a logical router can be matched to two physical routers. The number of routers is exactly the same as on the FPGA.") { // start by creating all the logical routers - // this is similiar to the user provided a config file + // this is similar to the user provided a config file temp_router = new t_router; NocRouterId noc_router_id; @@ -595,17 +592,17 @@ TEST_CASE("test_create_noc_links", "[vpr_setup_noc]") { * - router 8: (4,8) * - router 9: (8,8) */ - list_of_routers.push_back({0, 0, 0, 0.5, 1}); - list_of_routers.push_back({4, 0, 0, 4.5, 1}); - list_of_routers.push_back({8, 0, 0, 8.5, 1}); + list_of_routers.emplace_back(0, 0, 0, 0.5, 1); + list_of_routers.emplace_back(4, 0, 0, 4.5, 1); + list_of_routers.emplace_back(8, 0, 0, 8.5, 1); - list_of_routers.push_back({0, 4, 0, 0.5, 5}); - list_of_routers.push_back({4, 4, 0, 4.5, 5}); - list_of_routers.push_back({8, 4, 0, 8.5, 5}); + list_of_routers.emplace_back(0, 4, 0, 0.5, 5); + list_of_routers.emplace_back(4, 4, 0, 4.5, 5); + list_of_routers.emplace_back(8, 4, 0, 8.5, 5); - list_of_routers.push_back({0, 8, 0, 0.5, 9}); - list_of_routers.push_back({4, 8, 0, 4.5, 9}); - list_of_routers.push_back({8, 8, 0, 8.5, 9}); + list_of_routers.emplace_back(0, 8, 0, 0.5, 9); + list_of_routers.emplace_back(4, 8, 0, 4.5, 9); + list_of_routers.emplace_back(8, 8, 0, 8.5, 9); // create the noc model (to store the routers) NocStorage noc_model; @@ -618,10 +615,10 @@ TEST_CASE("test_create_noc_links", "[vpr_setup_noc]") { t_noc_inf noc_info; // pointer to each logical router - t_router* temp_router = NULL; + t_router* temp_router = nullptr; // start by creating all the logical routers - // this is similiar to the user provided a config file + // this is similar to the user provided a config file temp_router = new t_router; for (int router_id = 1; router_id < 10; router_id++) { @@ -635,7 +632,8 @@ TEST_CASE("test_create_noc_links", "[vpr_setup_noc]") { noc_model.add_router(router_id, list_of_routers[router_id - 1].grid_width_position, list_of_routers[router_id - 1].grid_height_position, - list_of_routers[router_id - 1].layer_position); + list_of_routers[router_id - 1].layer_position, + 1.0); } delete temp_router; @@ -676,7 +674,7 @@ TEST_CASE("test_create_noc_links", "[vpr_setup_noc]") { noc_info.router_list[8].connection_list.push_back(8); // call the function to test - create_noc_links(&noc_info, &noc_model); + create_noc_links(noc_info, &noc_model); NocRouterId current_source_router_id; NocRouterId current_destination_router_id; @@ -689,7 +687,7 @@ TEST_CASE("test_create_noc_links", "[vpr_setup_noc]") { router_connection = noc_info.router_list[router_id - 1].connection_list.begin(); - for (auto noc_link = noc_model.get_noc_router_connections(current_source_router_id).begin(); noc_link != noc_model.get_noc_router_connections(current_source_router_id).end(); noc_link++) { + for (auto noc_link = noc_model.get_noc_router_outgoing_links(current_source_router_id).begin(); noc_link != noc_model.get_noc_router_outgoing_links(current_source_router_id).end(); noc_link++) { // get the connecting link const NocLink& connecting_link = noc_model.get_single_noc_link(*noc_link); @@ -711,10 +709,10 @@ TEST_CASE("test_setup_noc", "[vpr_setup_noc]") { t_noc_inf noc_info; // pointer to each logical router - t_router* temp_router = NULL; + t_router* temp_router = nullptr; // start by creating all the logical routers - // this is similiar to the user provided a config file + // this is similar to the user provided a config file temp_router = new t_router; // datastructure to hold the list of physical tiles @@ -741,17 +739,17 @@ TEST_CASE("test_setup_noc", "[vpr_setup_noc]") { * - router 8: (4,8) * - router 9: (8,8) */ - list_of_routers.push_back({0, 0, 0, 0.5, 1}); - list_of_routers.push_back({4, 0, 0, 4.5, 1}); - list_of_routers.push_back({8, 0, 0, 8.5, 1}); + list_of_routers.emplace_back(0, 0, 0, 0.5, 1); + list_of_routers.emplace_back(4, 0, 0, 4.5, 1); + list_of_routers.emplace_back(8, 0, 0, 8.5, 1); - list_of_routers.push_back({0, 4, 0, 0.5, 5}); - list_of_routers.push_back({4, 4, 0, 4.5, 5}); - list_of_routers.push_back({8, 4, 0, 8.5, 5}); + list_of_routers.emplace_back(0, 4, 0, 0.5, 5); + list_of_routers.emplace_back(4, 4, 0, 4.5, 5); + list_of_routers.emplace_back(8, 4, 0, 8.5, 5); - list_of_routers.push_back({0, 8, 0, 0.5, 9}); - list_of_routers.push_back({4, 8, 0, 4.5, 9}); - list_of_routers.push_back({8, 8, 0, 8.5, 9}); + list_of_routers.emplace_back(0, 8, 0, 0.5, 9); + list_of_routers.emplace_back(4, 8, 0, 4.5, 9); + list_of_routers.emplace_back(8, 8, 0, 8.5, 9); for (int router_id = 1; router_id < 10; router_id++) { // we will have 9 logical routers that will take up all physical routers @@ -801,7 +799,7 @@ TEST_CASE("test_setup_noc", "[vpr_setup_noc]") { //assign the noc_info to the arch arch.noc = &noc_info; - // the architecture file has been setup to include the noc topology and we set the parameters below + // the architecture file has been setup to include the noc topology, and we set the parameters below noc_info.link_bandwidth = 67.8; noc_info.link_latency = 56.7; noc_info.router_latency = 2.3; @@ -923,7 +921,7 @@ TEST_CASE("test_setup_noc", "[vpr_setup_noc]") { REQUIRE_THROWS_WITH(setup_noc(arch), "The Provided NoC topology information in the architecture file has more number of routers than what is available in the FPGA device."); } - SECTION("Test setup_noc when there are no physical NoC routers on the FPGA.") { + SECTION("Test setup_noc when there are no physical NoC routers on the FPGA.") { // test device grid name std::string device_grid_name = "test"; @@ -958,7 +956,7 @@ TEST_CASE("test_setup_noc", "[vpr_setup_noc]") { for (int i = 0; i < test_grid_width; i++) { for (int j = 0; j < test_grid_height; j++) { - // make sure the current tyle is not a router + // make sure the current tile is not a router if (test_grid[0][i][j].type == nullptr) { // assign the non-router tile as empty test_grid[0][i][j].type = &empty_tile; @@ -974,6 +972,270 @@ TEST_CASE("test_setup_noc", "[vpr_setup_noc]") { REQUIRE_THROWS_WITH(setup_noc(arch), "No physical NoC routers were found on the FPGA device. Either the provided name for the physical router tile was incorrect or the FPGA device has no routers."); } + SECTION("Test setup_noc when there are overrides for NoC-wide latency and bandwidth values.") { + // test device grid name + std::string device_grid_name = "test"; + + // creating a reference for the empty tile name and router name + char empty_tile_name[6] = "empty"; + char router_tile_name[7] = "router"; + + // assign the name used when describing a router tile in the FPGA architecture description file + arch.noc->noc_router_tile_name.assign(router_tile_name); + + // device grid parameters + int test_grid_width = 10; + int test_grid_height = 10; + + // create the test device grid (10x10) + auto test_grid = vtr::NdMatrix({1, 10, 10}); + + // create an empty physical tile and assign its parameters + t_physical_tile_type empty_tile; + empty_tile.name = empty_tile_name; + empty_tile.height = 1; + empty_tile.width = 1; + + // create a router tile and assign its parameters + // the router will take up 4 grid spaces and be named "router" + t_physical_tile_type router_tile; + router_tile.name = router_tile_name; + router_tile.height = 2; + router_tile.width = 2; + + // (0, 0) + test_grid[0][0][0].type = &router_tile; + test_grid[0][0][0].height_offset = 0; + test_grid[0][0][0].width_offset = 0; + + test_grid[0][1][0].type = &router_tile; + test_grid[0][1][0].height_offset = 0; + test_grid[0][1][0].width_offset = 1; + + test_grid[0][0][1].type = &router_tile; + test_grid[0][0][1].height_offset = 1; + test_grid[0][0][1].width_offset = 0; + + test_grid[0][1][1].type = &router_tile; + test_grid[0][1][1].height_offset = 1; + test_grid[0][1][1].width_offset = 1; + + // (0, 4) + test_grid[0][0][4].type = &router_tile; + test_grid[0][0][4].height_offset = 0; + test_grid[0][0][4].width_offset = 0; + + test_grid[0][1][4].type = &router_tile; + test_grid[0][1][4].height_offset = 0; + test_grid[0][1][4].width_offset = 1; + + test_grid[0][0][5].type = &router_tile; + test_grid[0][0][5].height_offset = 1; + test_grid[0][0][5].width_offset = 0; + + test_grid[0][1][5].type = &router_tile; + test_grid[0][1][5].height_offset = 1; + test_grid[0][1][5].width_offset = 1; + + // (0, 8) + test_grid[0][0][8].type = &router_tile; + test_grid[0][0][8].height_offset = 0; + test_grid[0][0][8].width_offset = 0; + + test_grid[0][1][8].type = &router_tile; + test_grid[0][1][8].height_offset = 0; + test_grid[0][1][8].width_offset = 1; + + test_grid[0][0][9].type = &router_tile; + test_grid[0][0][9].height_offset = 1; + test_grid[0][0][9].width_offset = 0; + + test_grid[0][1][9].type = &router_tile; + test_grid[0][1][9].height_offset = 1; + test_grid[0][1][9].width_offset = 1; + + // (4, 0) + test_grid[0][4][0].type = &router_tile; + test_grid[0][4][0].height_offset = 0; + test_grid[0][4][0].width_offset = 0; + + test_grid[0][5][0].type = &router_tile; + test_grid[0][5][0].height_offset = 0; + test_grid[0][5][0].width_offset = 1; + + test_grid[0][4][1].type = &router_tile; + test_grid[0][4][1].height_offset = 1; + test_grid[0][4][1].width_offset = 0; + + test_grid[0][5][1].type = &router_tile; + test_grid[0][5][1].height_offset = 1; + test_grid[0][5][1].width_offset = 1; + + // (4, 4) + test_grid[0][4][4].type = &router_tile; + test_grid[0][4][4].height_offset = 0; + test_grid[0][4][4].width_offset = 0; + + test_grid[0][5][4].type = &router_tile; + test_grid[0][5][4].height_offset = 0; + test_grid[0][5][4].width_offset = 1; + + test_grid[0][4][5].type = &router_tile; + test_grid[0][4][5].height_offset = 1; + test_grid[0][4][5].width_offset = 0; + + test_grid[0][5][5].type = &router_tile; + test_grid[0][5][5].height_offset = 1; + test_grid[0][5][5].width_offset = 1; + + // (4, 8) + test_grid[0][4][8].type = &router_tile; + test_grid[0][4][8].height_offset = 0; + test_grid[0][4][8].width_offset = 0; + + test_grid[0][5][8].type = &router_tile; + test_grid[0][5][8].height_offset = 0; + test_grid[0][5][8].width_offset = 1; + + test_grid[0][4][9].type = &router_tile; + test_grid[0][4][9].height_offset = 1; + test_grid[0][4][9].width_offset = 0; + + test_grid[0][5][9].type = &router_tile; + test_grid[0][5][9].height_offset = 1; + test_grid[0][5][9].width_offset = 1; + + // (8, 0) + test_grid[0][8][0].type = &router_tile; + test_grid[0][8][0].height_offset = 0; + test_grid[0][8][0].width_offset = 0; + + test_grid[0][9][0].type = &router_tile; + test_grid[0][9][0].height_offset = 0; + test_grid[0][9][0].width_offset = 1; + + test_grid[0][8][1].type = &router_tile; + test_grid[0][8][1].height_offset = 1; + test_grid[0][8][1].width_offset = 0; + + test_grid[0][9][1].type = &router_tile; + test_grid[0][9][1].height_offset = 1; + test_grid[0][9][1].width_offset = 1; + + // (8, 4) + test_grid[0][8][4].type = &router_tile; + test_grid[0][8][4].height_offset = 0; + test_grid[0][8][4].width_offset = 0; + + test_grid[0][9][4].type = &router_tile; + test_grid[0][9][4].height_offset = 0; + test_grid[0][9][4].width_offset = 1; + + test_grid[0][8][5].type = &router_tile; + test_grid[0][8][5].height_offset = 1; + test_grid[0][8][5].width_offset = 0; + + test_grid[0][9][5].type = &router_tile; + test_grid[0][9][5].height_offset = 1; + test_grid[0][9][5].width_offset = 1; + + // (8, 8) + test_grid[0][8][8].type = &router_tile; + test_grid[0][8][8].height_offset = 0; + test_grid[0][8][8].width_offset = 0; + + test_grid[0][9][8].type = &router_tile; + test_grid[0][9][8].height_offset = 0; + test_grid[0][9][8].width_offset = 1; + + test_grid[0][8][9].type = &router_tile; + test_grid[0][8][9].height_offset = 1; + test_grid[0][8][9].width_offset = 0; + + test_grid[0][9][9].type = &router_tile; + test_grid[0][9][9].height_offset = 1; + test_grid[0][9][9].width_offset = 1; + + for (int i = 0; i < test_grid_width; i++) { + for (int j = 0; j < test_grid_height; j++) { + // make sure the current tyle is not a router + if (test_grid[0][i][j].type == nullptr) { + // assign the non-router tile as empty + test_grid[0][i][j].type = &empty_tile; + test_grid[0][i][j].width_offset = 0; + test_grid[0][i][j].height_offset = 0; + } + } + } + + std::random_device device; + std::mt19937 rand_num_gen(device()); + std::uniform_int_distribution dist(1, 9); + + constexpr double LINK_LATENCY_OVERRIDE = 142.2; + constexpr double LINK_BANDWIDTH_OVERRIDE = 727.4; + constexpr double ROUTER_LATENCY_OVERRIDE = 151.6; + REQUIRE(LINK_LATENCY_OVERRIDE != noc_info.link_latency); + REQUIRE(LINK_BANDWIDTH_OVERRIDE != noc_info.link_bandwidth); + REQUIRE(ROUTER_LATENCY_OVERRIDE != noc_info.router_latency); + + // add router latency overrides + for (int i = 0; i < 3; i++) { + int noc_router_user_id = dist(rand_num_gen); + noc_info.router_latency_overrides.insert({noc_router_user_id, ROUTER_LATENCY_OVERRIDE}); + } + + // add link latency overrides + for (int i = 0; i < 3; i++) { + int noc_router_user_id = dist(rand_num_gen); + size_t n_connections = noc_info.router_list[noc_router_user_id - 1].connection_list.size(); + int selected_connection = dist(rand_num_gen) % n_connections; + int neighbor_router_user_id = noc_info.router_list[noc_router_user_id - 1].connection_list[selected_connection]; + noc_info.link_latency_overrides.insert({{noc_router_user_id, neighbor_router_user_id}, LINK_LATENCY_OVERRIDE}); + } + + // add link bandwidth overrides + for (int i = 0; i < 3; i++) { + int noc_router_user_id = dist(rand_num_gen); + size_t n_connections = noc_info.router_list[noc_router_user_id - 1].connection_list.size(); + int selected_connection = dist(rand_num_gen) % n_connections; + int neighbor_router_user_id = noc_info.router_list[noc_router_user_id - 1].connection_list[selected_connection]; + noc_info.link_bandwidth_overrides.insert({{noc_router_user_id, neighbor_router_user_id}, LINK_BANDWIDTH_OVERRIDE}); + } + + device_ctx.grid = DeviceGrid(device_grid_name, test_grid); + + REQUIRE_NOTHROW(setup_noc(arch)); + + const auto& noc_model = g_vpr_ctx.noc().noc_model; + + // check NoC router latencies + for (const auto& noc_router : noc_model.get_noc_routers()) { + int router_user_id = noc_router.get_router_user_id(); + auto it = noc_info.router_latency_overrides.find(router_user_id); + double expected_latency = (it != noc_info.router_latency_overrides.end()) ? it->second : noc_info.router_latency; + REQUIRE(expected_latency == noc_router.get_latency()); + } + + // check NoC link latencies and bandwidth + for (const auto& noc_link : noc_model.get_noc_links()) { + NocRouterId src_router_id = noc_link.get_source_router(); + NocRouterId dst_router_id = noc_link.get_sink_router(); + int src_user_id = noc_model.convert_router_id(src_router_id); + int dst_user_id = noc_model.convert_router_id(dst_router_id); + + auto lat_it = noc_info.link_latency_overrides.find({src_user_id, dst_user_id}); + double expected_latency = (lat_it != noc_info.link_latency_overrides.end()) ? lat_it->second : noc_info.link_latency; + REQUIRE(expected_latency == noc_link.get_latency()); + + auto bw_it = noc_info.link_bandwidth_overrides.find({src_user_id, dst_user_id}); + double expected_bandwidth = (bw_it != noc_info.link_bandwidth_overrides.end()) ? bw_it->second : noc_info.link_bandwidth; + REQUIRE(expected_bandwidth == noc_link.get_bandwidth()); + } + + // remove noc storage + g_vpr_ctx.mutable_noc().noc_model.clear_noc(); + } } } // namespace \ No newline at end of file diff --git a/vpr/test/test_vpr.cpp b/vpr/test/test_vpr.cpp index b715679f530..4945c56c001 100644 --- a/vpr/test/test_vpr.cpp +++ b/vpr/test/test_vpr.cpp @@ -165,7 +165,6 @@ TEST_CASE("read_rr_graph_metadata", "[vpr]") { device_ctx.arch, &mutable_device_ctx.chan_width, kRrGraphFile, - device_ctx.virtual_clock_network_root_idx, echo_enabled, echo_file_name, false); diff --git a/vpr/test/test_vpr_constraints.cpp b/vpr/test/test_vpr_constraints.cpp index f9a5d7e5bd4..fbe219f672f 100644 --- a/vpr/test/test_vpr_constraints.cpp +++ b/vpr/test/test_vpr_constraints.cpp @@ -4,14 +4,14 @@ #include "vpr_api.h" #include "globals.h" -#include "vpr_constraints.h" +#include "user_place_constraints.h" #include "partition.h" #include "region.h" #include "place_constraints.h" /** * This file contains unit tests that check the functionality of all classes related to vpr constraints. These classes include - * VprConstraints, Region, PartitionRegions, and Partition. + * UserPlaceConstraints, Region, PartitionRegions, and Partition. */ //Test Region class accessors and mutators @@ -53,7 +53,7 @@ TEST_CASE("PartitionRegion", "[vpr]") { pr1.add_to_part_region(r1); - std::vector pr_regions = pr1.get_partition_region(); + const std::vector& pr_regions = pr1.get_regions(); REQUIRE(pr_regions[0].get_sub_tile() == 3); const auto pr_reg_coord = pr_regions[0].get_region_rect(); @@ -80,8 +80,8 @@ TEST_CASE("Partition", "[vpr]") { part_reg.add_to_part_region(r1); part.set_part_region(part_reg); - PartitionRegion part_reg_2 = part.get_part_region(); - std::vector regions = part_reg_2.get_partition_region(); + const PartitionRegion& part_reg_2 = part.get_part_region(); + const std::vector& regions = part_reg_2.get_regions(); REQUIRE(regions[0].get_sub_tile() == 3); @@ -93,8 +93,8 @@ TEST_CASE("Partition", "[vpr]") { REQUIRE(pr_reg_coord.ymax == 8); } -//Test VprConstraints class accessors and mutators -TEST_CASE("VprConstraints", "[vpr]") { +//Test UserPlaceConstraints class accessors and mutators +TEST_CASE("UserPlaceConstraints", "[vpr]") { PartitionId part_id(0); PartitionId part_id_2(1); AtomBlockId atom_id(6); @@ -102,7 +102,7 @@ TEST_CASE("VprConstraints", "[vpr]") { AtomBlockId atom_id_3(8); AtomBlockId atom_id_4(9); - VprConstraints vprcon; + UserPlaceConstraints vprcon; vprcon.add_constrained_atom(atom_id, part_id); vprcon.add_constrained_atom(atom_id_2, part_id); @@ -121,8 +121,7 @@ TEST_CASE("VprConstraints", "[vpr]") { vprcon.add_partition(part); - Partition got_part; - got_part = vprcon.get_partition(part_id); + const Partition& got_part = vprcon.get_partition(part_id); REQUIRE(got_part.get_name() == "part_name"); std::vector partition_atoms; @@ -235,7 +234,7 @@ TEST_CASE("PartRegionIntersect", "[vpr]") { PartitionRegion int_pr; int_pr = intersection(pr1, pr2); - std::vector regions = int_pr.get_partition_region(); + const std::vector& regions = int_pr.get_regions(); vtr::Rect int_rect(0, 0, 1, 1); vtr::Rect int_rect_2(1, 1, 2, 2); @@ -268,7 +267,7 @@ TEST_CASE("PartRegionIntersect2", "[vpr]") { PartitionRegion int_pr; int_pr = intersection(pr1, pr2); - std::vector regions = int_pr.get_partition_region(); + const std::vector& regions = int_pr.get_regions(); vtr::Rect int_rect(0, 0, 2, 2); REQUIRE(regions.size() == 1); const auto first_reg_coord = regions[0].get_region_rect(); @@ -304,9 +303,9 @@ TEST_CASE("PartRegionIntersect3", "[vpr]") { PartitionRegion int_pr; int_pr = intersection(pr1, pr2); - std::vector regions = int_pr.get_partition_region(); + const std::vector& regions = int_pr.get_regions(); - REQUIRE(regions.size() == 0); + REQUIRE(regions.empty()); } //2x2 regions, 1 overlap @@ -337,7 +336,7 @@ TEST_CASE("PartRegionIntersect4", "[vpr]") { PartitionRegion int_pr; int_pr = intersection(pr1, pr2); - std::vector regions = int_pr.get_partition_region(); + const std::vector& regions = int_pr.get_regions(); vtr::Rect intersect(1, 2, 3, 4); @@ -374,7 +373,7 @@ TEST_CASE("PartRegionIntersect5", "[vpr]") { PartitionRegion int_pr; int_pr = intersection(pr1, pr2); - std::vector regions = int_pr.get_partition_region(); + const std::vector& regions = int_pr.get_regions(); vtr::Rect int_r1r3(2, 6, 4, 7); vtr::Rect int_r2r4(6, 4, 8, 5); @@ -415,7 +414,7 @@ TEST_CASE("PartRegionIntersect6", "[vpr]") { PartitionRegion int_pr; int_pr = intersection(pr1, pr2); - std::vector regions = int_pr.get_partition_region(); + const std::vector& regions = int_pr.get_regions(); vtr::Rect int_r1r3(2, 3, 4, 4); vtr::Rect int_r1r4(2, 6, 4, 7); @@ -455,7 +454,7 @@ TEST_CASE("MacroConstraints", "[vpr]") { PartitionRegion macro_pr = update_macro_member_pr(head_pr, offset, grid_pr, pl_macro); - std::vector mac_regions = macro_pr.get_partition_region(); + const std::vector& mac_regions = macro_pr.get_regions(); const auto mac_first_reg_coord = mac_regions[0].get_region_rect(); diff --git a/vpr/test/test_xy_routing.cpp b/vpr/test/test_xy_routing.cpp index b130d47b62f..789fb754bf5 100644 --- a/vpr/test/test_xy_routing.cpp +++ b/vpr/test/test_xy_routing.cpp @@ -5,6 +5,9 @@ namespace { +constexpr double DUMMY_LATENCY = 1e-9; +constexpr double DUMMY_BANDWIDTH = 1e12; + /** * @brief Compares two vectors of NocLinks. These vectors represent * two routes between a start and destination routers. This function @@ -53,7 +56,7 @@ TEST_CASE("test_route_flow", "[vpr_noc_xy_routing]") { // add all the routers for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { - noc_model.add_router((i * 4) + j, j, i, 0); + noc_model.add_router((i * 4) + j, j, i, 0, DUMMY_LATENCY); } } @@ -64,19 +67,19 @@ TEST_CASE("test_route_flow", "[vpr_noc_xy_routing]") { for (int j = 0; j < 4; j++) { // add a link to the left of the router if there exists another router there if ((j - 1) >= 0) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 1)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 1), DUMMY_BANDWIDTH, DUMMY_LATENCY); } // add a link to the top of the router if there exists another router there if ((i + 1) <= 3) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 4)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 4), DUMMY_BANDWIDTH, DUMMY_LATENCY); } // add a link to the right of the router if there exists another router there if ((j + 1) <= 3) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 1)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 1), DUMMY_BANDWIDTH, DUMMY_LATENCY); } // add a link to the bottom of the router if there exists another router there if ((i - 1) >= 0) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 4)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 4), DUMMY_BANDWIDTH, DUMMY_LATENCY); } } } @@ -243,7 +246,7 @@ TEST_CASE("test_route_flow when it fails in a mesh topology.", "[vpr_noc_xy_rout // add all the routers for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { - noc_model.add_router((i * 4) + j, j, i, 0); + noc_model.add_router((i * 4) + j, j, i, 0, DUMMY_LATENCY); } } @@ -254,19 +257,19 @@ TEST_CASE("test_route_flow when it fails in a mesh topology.", "[vpr_noc_xy_rout for (int j = 0; j < 4; j++) { // add a link to the left of the router if there exists another router there if ((j - 1) >= 0) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 1)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 1), DUMMY_BANDWIDTH, DUMMY_LATENCY); } // add a link to the top of the router if there exists another router there if ((i + 1) <= 3) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 4)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 4), DUMMY_BANDWIDTH, DUMMY_LATENCY); } // add a link to the right of the router if there exists another router there if ((j + 1) <= 3) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 1)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) + 1), DUMMY_BANDWIDTH, DUMMY_LATENCY); } // add a link to the bottom of the router if there exists another router there if ((i - 1) >= 0) { - noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 4)); + noc_model.add_link((NocRouterId)((i * 4) + j), (NocRouterId)(((i * 4) + j) - 4), DUMMY_BANDWIDTH, DUMMY_LATENCY); } } } @@ -353,17 +356,17 @@ TEST_CASE("test_route_flow when it fails in a non mesh topology.", "[vpr_noc_xy_ // this will be set to the device grid width noc_model.set_device_grid_spec((int)4, 0); - noc_model.add_router(0, 0, 0, 0); - noc_model.add_router(1, 2, 2, 0); - noc_model.add_router(2, 1, 2, 0); - noc_model.add_router(3, 3, 0, 0); + noc_model.add_router(0, 0, 0, 0, DUMMY_LATENCY); + noc_model.add_router(1, 2, 2, 0, DUMMY_LATENCY); + noc_model.add_router(2, 1, 2, 0, DUMMY_LATENCY); + noc_model.add_router(3, 3, 0, 0, DUMMY_LATENCY); noc_model.make_room_for_noc_router_link_list(); // add the links - noc_model.add_link((NocRouterId)0, (NocRouterId)3); - noc_model.add_link((NocRouterId)3, (NocRouterId)0); - noc_model.add_link((NocRouterId)2, (NocRouterId)1); + noc_model.add_link((NocRouterId)0, (NocRouterId)3, DUMMY_BANDWIDTH, DUMMY_LATENCY); + noc_model.add_link((NocRouterId)3, (NocRouterId)0, DUMMY_BANDWIDTH, DUMMY_LATENCY); + noc_model.add_link((NocRouterId)2, (NocRouterId)1, DUMMY_BANDWIDTH, DUMMY_LATENCY); // now create the start and the destination routers of the route we want to test auto start_router_id = NocRouterId(3); diff --git a/vtr_flow/arch/multi_die/README.md b/vtr_flow/arch/multi_die/README.md index 23aa7bcff79..d8e511368eb 100644 --- a/vtr_flow/arch/multi_die/README.md +++ b/vtr_flow/arch/multi_die/README.md @@ -28,6 +28,7 @@ This directory contains architecture files for 3D FPGAs. The architectures are d - The architecture has two dice. - Both dice are SIV-like FPGA fabric. - All pins can cross die. + - This is a completely hypothetical architecture, as the area required to place drivers on every channel segment to drive an IPIN on the other die would be too large. For the purpose of this scenario, we assume an inter-die connection delay of 0. - `3d_full_OPIN_inter_die_stratixiv_arch.timing.xml` - The architecture has two dice. - Both dice are SIV-like FPGA fabric. diff --git a/vtr_flow/arch/multi_die/stratixiv_3d/3d_full_OPIN_inter_die_stratixiv_arch.timing.xml b/vtr_flow/arch/multi_die/stratixiv_3d/3d_full_OPIN_inter_die_stratixiv_arch.timing.xml index fdf81e678b4..206a64dd7eb 100644 --- a/vtr_flow/arch/multi_die/stratixiv_3d/3d_full_OPIN_inter_die_stratixiv_arch.timing.xml +++ b/vtr_flow/arch/multi_die/stratixiv_3d/3d_full_OPIN_inter_die_stratixiv_arch.timing.xml @@ -5115,9 +5115,11 @@ while keeping the switch delay a reasonable (see comment in ) portion of the overall delay. --> + + @@ -5215,14 +5217,14 @@ --> - + 1 1 1 1 1 1 1 1 1 - + + + + @@ -6446,85 +6454,23 @@ - diff --git a/vtr_flow/parse/parse_config/vpr_noc.txt b/vtr_flow/parse/parse_config/vpr_noc.txt index 51b7c194712..5a916529cac 100644 --- a/vtr_flow/parse/parse_config/vpr_noc.txt +++ b/vtr_flow/parse/parse_config/vpr_noc.txt @@ -18,3 +18,11 @@ NoC_latency_overrun;vpr.out;NoC Placement Costs. cost: .*, aggregate_bandwidth_c NoC_congested_bw;vpr.out;NoC Placement Costs. cost: .*, aggregate_bandwidth_cost: .*, latency_cost: .*, n_met_latency_constraints: .*, latency_overrun_cost: .*, congestion_cost: (.*), accum_congested_ratio: .*, n_congested_links: .* NoC_congestion_ratio;vpr.out;NoC Placement Costs. cost: .*, aggregate_bandwidth_cost: .*, latency_cost: .*, n_met_latency_constraints: .*, latency_overrun_cost: .*, congestion_cost: .*, accum_congested_ratio: (.*), n_congested_links: .* NoC_n_congested_links;vpr.out;NoC Placement Costs. cost: .*, aggregate_bandwidth_cost: .*, latency_cost: .*, n_met_latency_constraints: .*, latency_overrun_cost: .*, congestion_cost: .*, accum_congested_ratio: .*, n_congested_links: (.*) +SAT_agg_bandwidth;vpr.out;NoC Placement Costs after SAT routing. cost: .*, aggregate_bandwidth_cost: (.*), latency_cost: .*, n_met_latency_constraints: .*, latency_overrun_cost: .*, congestion_cost: .*, accum_congested_ratio: .*, n_congested_links: .* +SAT_latency;vpr.out;NoC Placement Costs after SAT routing. cost: .*, aggregate_bandwidth_cost: .*, latency_cost: (.*), n_met_latency_constraints: .*, latency_overrun_cost: .*, congestion_cost: .*, accum_congested_ratio: .*, n_congested_links: .* +SAT_n_met_latency_constraints;vpr.out;NoC Placement Costs after SAT routing. cost: .*, aggregate_bandwidth_cost: .*, latency_cost: .*, n_met_latency_constraints: (.*), latency_overrun_cost: .*, congestion_cost: .*, accum_congested_ratio: .*, n_congested_links: .* +SAT_latency_overrun;vpr.out;NoC Placement Costs after SAT routing. cost: .*, aggregate_bandwidth_cost: .*, latency_cost: .*, n_met_latency_constraints: .*, latency_overrun_cost: (.*), congestion_cost: .*, accum_congested_ratio: .*, n_congested_links: .* +SAT_congested_bw;vpr.out;NoC Placement Costs after SAT routing. cost: .*, aggregate_bandwidth_cost: .*, latency_cost: .*, n_met_latency_constraints: .*, latency_overrun_cost: .*, congestion_cost: (.*), accum_congested_ratio: .*, n_congested_links: .* +SAT_congestion_ratio;vpr.out;NoC Placement Costs after SAT routing. cost: .*, aggregate_bandwidth_cost: .*, latency_cost: .*, n_met_latency_constraints: .*, latency_overrun_cost: .*, congestion_cost: .*, accum_congested_ratio: (.*), n_congested_links: .* +SAT_n_congested_links;vpr.out;NoC Placement Costs after SAT routing. cost: .*, aggregate_bandwidth_cost: .*, latency_cost: .*, n_met_latency_constraints: .*, latency_overrun_cost: .*, congestion_cost: .*, accum_congested_ratio: .*, n_congested_links: (.*) + diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/figure_8/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/figure_8/config/golden_results.txt index 8b656e52590..fb979c3886b 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/figure_8/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/figure_8/config/golden_results.txt @@ -1,221 +1,221 @@ - arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_003bits.v common 2.50 vpr 61.55 MiB -1 -1 0.06 20088 1 0.03 -1 -1 35244 -1 -1 2 7 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63024 7 4 21 25 1 15 13 17 17 289 -1 unnamed_device 23.2 MiB 0.00 55 61.5 MiB 0.00 0.00 0.581048 -5.66613 -0.581048 0.581048 0.69 1.4315e-05 9.705e-06 0.000468601 0.00035802 22 122 4 6.55708e+06 24110 420624. 1455.45 0.42 0.00231112 0.00181759 20158 92377 -1 120 3 25 25 1518 477 0 0 1518 477 25 25 0 0 102 80 0 0 121 110 0 0 25 25 0 0 653 112 0 0 592 125 0 0 25 0 0 0 0 0 25 0 0 0.71851 0.71851 -7.79053 -0.71851 0 0 500653. 1732.36 0.17 0.00 0.06 -1 -1 0.17 0.000381608 0.000338832 10 4 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_004bits.v common 2.79 vpr 61.42 MiB -1 -1 0.06 20060 2 0.04 -1 -1 34892 -1 -1 2 9 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 62892 9 5 28 33 1 21 16 17 17 289 -1 unnamed_device 23.0 MiB 0.01 135 61.4 MiB 0.00 0.00 0.819447 -9.91401 -0.819447 0.819447 0.77 1.6854e-05 1.1896e-05 0.000457886 0.000380645 20 237 7 6.55708e+06 24110 394039. 1363.46 0.38 0.00122463 0.00104305 19870 87366 -1 231 9 77 78 5534 1447 0 0 5534 1447 78 77 0 0 338 284 0 0 402 358 0 0 78 78 0 0 2379 349 0 0 2259 301 0 0 78 0 0 1 1 0 82 0 0 0.819447 0.819447 -11.9182 -0.819447 0 0 477104. 1650.88 0.16 0.00 0.05 -1 -1 0.16 0.000708773 0.000617175 13 6 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_005bits.v common 3.06 vpr 61.61 MiB -1 -1 0.07 19892 2 0.04 -1 -1 35008 -1 -1 2 11 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63088 11 6 34 40 1 24 19 17 17 289 -1 unnamed_device 23.2 MiB 0.01 60 61.6 MiB 0.00 0.00 0.819447 -9.14504 -0.819447 0.819447 0.86 2.2575e-05 1.6691e-05 0.000752375 0.000578518 26 173 11 6.55708e+06 24110 477104. 1650.88 0.59 0.00390233 0.00310741 21022 109990 -1 150 7 73 77 3320 1212 0 0 3320 1212 77 74 0 0 281 224 0 0 400 337 0 0 77 77 0 0 1376 235 0 0 1109 265 0 0 77 0 0 4 4 0 93 0 0 0.821448 0.821448 -12.8712 -0.821448 0 0 585099. 2024.56 0.21 0.00 0.07 -1 -1 0.21 0.000844167 0.000746601 16 7 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_006bits.v common 3.94 vpr 61.72 MiB -1 -1 0.07 19824 3 0.03 -1 -1 35424 -1 -1 3 13 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63204 13 7 41 48 1 32 23 17 17 289 -1 unnamed_device 23.2 MiB 0.01 111 61.7 MiB 0.01 0.00 1.50711 -14.1678 -1.50711 1.50711 0.76 2.6936e-05 2.0026e-05 0.000894816 0.000710741 26 279 12 6.55708e+06 36165 477104. 1650.88 1.53 0.00862662 0.00698278 21022 109990 -1 250 8 103 131 8867 2344 0 0 8867 2344 131 122 0 0 488 400 0 0 705 568 0 0 131 131 0 0 3331 638 0 0 4081 485 0 0 131 0 0 28 21 7 243 0 0 1.50711 1.50711 -17.4132 -1.50711 0 0 585099. 2024.56 0.20 0.00 0.07 -1 -1 0.20 0.00105267 0.000936601 19 9 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_007bits.v common 4.59 vpr 61.66 MiB -1 -1 0.07 19956 3 0.04 -1 -1 35480 -1 -1 3 15 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63136 15 8 47 55 1 38 26 17 17 289 -1 unnamed_device 23.1 MiB 0.01 97 61.7 MiB 0.01 0.00 1.05785 -13.991 -1.05785 1.05785 0.75 2.8898e-05 2.1655e-05 0.00099176 0.000788272 26 349 21 6.55708e+06 36165 477104. 1650.88 2.06 0.0100615 0.00814744 21022 109990 -1 344 13 190 216 11678 3837 0 0 11678 3837 216 197 0 0 859 701 0 0 1313 1081 0 0 216 199 0 0 4111 867 0 0 4963 792 0 0 216 0 0 26 24 7 325 0 0 1.05785 1.05785 -20.1212 -1.05785 0 0 585099. 2024.56 0.37 0.01 0.07 -1 -1 0.37 0.0015175 0.00131536 23 10 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_008bits.v common 4.34 vpr 61.95 MiB -1 -1 0.08 19736 3 0.03 -1 -1 35192 -1 -1 4 17 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63432 17 9 56 65 1 42 30 17 17 289 -1 unnamed_device 23.3 MiB 0.06 259 61.9 MiB 0.01 0.00 1.46791 -20.75 -1.46791 1.46791 0.76 3.5634e-05 2.7693e-05 0.00125439 0.00102946 26 483 17 6.55708e+06 48220 477104. 1650.88 1.88 0.0146136 0.0120219 21022 109990 -1 438 20 142 155 10559 2616 0 0 10559 2616 155 151 0 0 593 461 0 0 810 681 0 0 155 152 0 0 4949 514 0 0 3897 657 0 0 155 0 0 13 10 4 208 0 0 1.58811 1.58811 -25.3176 -1.58811 0 0 585099. 2024.56 0.21 0.01 0.07 -1 -1 0.21 0.00233355 0.00203733 25 14 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_009bits.v common 4.36 vpr 61.82 MiB -1 -1 0.08 19848 4 0.03 -1 -1 35192 -1 -1 4 19 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63304 19 10 60 70 1 48 33 17 17 289 -1 unnamed_device 23.2 MiB 0.01 175 61.8 MiB 0.01 0.00 1.50711 -21.3868 -1.50711 1.50711 0.74 3.7691e-05 2.8558e-05 0.00229382 0.00181713 28 420 14 6.55708e+06 48220 500653. 1732.36 2.02 0.0122307 0.0101465 21310 115450 -1 380 11 159 186 9586 2818 0 0 9586 2818 186 165 0 0 707 539 0 0 964 784 0 0 186 175 0 0 3641 622 0 0 3902 533 0 0 186 0 0 27 16 25 320 0 0 1.50711 1.50711 -25.5938 -1.50711 0 0 612192. 2118.31 0.22 0.01 0.07 -1 -1 0.22 0.00177795 0.00158373 29 13 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_010bits.v common 4.75 vpr 61.95 MiB -1 -1 0.07 20084 4 0.04 -1 -1 35504 -1 -1 5 21 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63440 21 11 69 80 1 53 37 17 17 289 -1 unnamed_device 23.6 MiB 0.02 200 62.0 MiB 0.01 0.00 1.46791 -23.299 -1.46791 1.46791 0.76 4.4863e-05 3.5164e-05 0.00193329 0.00162216 30 511 15 6.55708e+06 60275 526063. 1820.29 2.00 0.0164129 0.0136648 21886 126133 -1 433 13 170 223 12926 3564 0 0 12926 3564 223 180 0 0 853 660 0 0 1225 1037 0 0 223 203 0 0 4942 807 0 0 5460 677 0 0 223 0 0 53 49 9 456 0 0 1.46791 1.46791 -28.5878 -1.46791 0 0 666494. 2306.21 0.44 0.01 0.08 -1 -1 0.44 0.00211555 0.00188011 33 17 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_011bits.v common 3.12 vpr 62.02 MiB -1 -1 0.07 19856 5 0.05 -1 -1 34940 -1 -1 6 23 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63504 23 12 76 88 1 61 41 17 17 289 -1 unnamed_device 23.5 MiB 0.01 208 62.0 MiB 0.01 0.00 1.7455 -26.3998 -1.7455 1.7455 0.77 4.8941e-05 3.7713e-05 0.00223528 0.00178346 26 580 13 6.55708e+06 72330 477104. 1650.88 0.55 0.00984164 0.00819163 21022 109990 -1 511 11 279 368 21714 6243 0 0 21714 6243 368 304 0 0 1462 1210 0 0 2213 1773 0 0 368 328 0 0 8153 1372 0 0 9150 1256 0 0 368 0 0 89 42 103 822 0 0 1.74951 1.74951 -33.3714 -1.74951 0 0 585099. 2024.56 0.35 0.03 0.07 -1 -1 0.35 0.00237044 0.00211827 37 19 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_012bits.v common 3.08 vpr 61.91 MiB -1 -1 0.07 20080 5 0.03 -1 -1 35084 -1 -1 6 25 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63392 25 13 83 96 1 66 44 17 17 289 -1 unnamed_device 23.4 MiB 0.01 261 61.9 MiB 0.01 0.00 1.53464 -29.3154 -1.53464 1.53464 0.79 5.2238e-05 4.0697e-05 0.00163465 0.00133534 26 696 14 6.55708e+06 72330 477104. 1650.88 0.53 0.00969162 0.0081243 21022 109990 -1 604 14 275 391 20940 5867 0 0 20940 5867 391 319 0 0 1504 1214 0 0 2317 1808 0 0 391 332 0 0 7782 1150 0 0 8555 1044 0 0 391 0 0 116 91 114 978 0 0 1.82851 1.82851 -37.8047 -1.82851 0 0 585099. 2024.56 0.21 0.01 0.07 -1 -1 0.21 0.00271879 0.00241745 40 21 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_013bits.v common 2.84 vpr 61.88 MiB -1 -1 0.07 20440 5 0.04 -1 -1 35240 -1 -1 7 27 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63368 27 14 91 105 1 70 48 17 17 289 -1 unnamed_device 23.4 MiB 0.01 318 61.9 MiB 0.02 0.00 1.49544 -32.4063 -1.49544 1.49544 0.73 5.7993e-05 4.5293e-05 0.00386642 0.00310411 26 733 12 6.55708e+06 84385 477104. 1650.88 0.52 0.0121193 0.0101209 21022 109990 -1 661 11 259 370 22109 6201 0 0 22109 6201 370 307 0 0 1435 1137 0 0 2125 1691 0 0 370 327 0 0 9191 1361 0 0 8618 1378 0 0 370 0 0 111 113 110 1018 0 0 1.61765 1.61765 -40.4365 -1.61765 0 0 585099. 2024.56 0.24 0.01 0.07 -1 -1 0.24 0.00258623 0.00232211 42 24 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_014bits.v common 4.07 vpr 62.10 MiB -1 -1 0.08 20164 6 0.04 -1 -1 35160 -1 -1 7 29 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63592 29 15 95 110 1 74 51 17 17 289 -1 unnamed_device 23.6 MiB 0.03 426 62.1 MiB 0.01 0.00 2.15556 -41.608 -2.15556 2.15556 0.74 6.4749e-05 5.2103e-05 0.00196204 0.00164986 26 873 10 6.55708e+06 84385 477104. 1650.88 1.61 0.0200598 0.0169424 21022 109990 -1 809 8 240 320 21917 5232 0 0 21917 5232 320 247 0 0 1200 923 0 0 1699 1365 0 0 320 259 0 0 9379 1232 0 0 8999 1206 0 0 320 0 0 80 81 108 797 0 0 2.2243 2.2243 -49.3842 -2.2243 0 0 585099. 2024.56 0.26 0.01 0.07 -1 -1 0.26 0.00234489 0.00212828 45 23 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_015bits.v common 4.81 vpr 62.27 MiB -1 -1 0.08 20128 6 0.04 -1 -1 35288 -1 -1 10 31 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63768 31 16 104 120 1 81 57 17 17 289 -1 unnamed_device 23.6 MiB 0.03 369 62.3 MiB 0.02 0.00 1.73384 -38.7759 -1.73384 1.73384 0.77 7.0185e-05 5.4585e-05 0.00330473 0.00266585 28 932 12 6.55708e+06 120550 500653. 1732.36 2.06 0.0206288 0.0173385 21310 115450 -1 835 12 345 513 31086 8016 0 0 31086 8016 513 387 0 0 1876 1430 0 0 2901 2305 0 0 513 417 0 0 12440 1806 0 0 12843 1671 0 0 513 0 0 168 164 175 1508 0 0 1.9467 1.9467 -47.3101 -1.9467 0 0 612192. 2118.31 0.25 0.01 0.08 -1 -1 0.25 0.00320021 0.00287124 50 27 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_016bits.v common 3.93 vpr 62.23 MiB -1 -1 0.08 20396 7 0.05 -1 -1 35292 -1 -1 7 33 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63724 33 17 112 129 1 86 57 17 17 289 -1 unnamed_device 23.9 MiB 0.04 294 62.2 MiB 0.01 0.00 2.2223 -42.4636 -2.2223 2.2223 0.90 7.0214e-05 5.6131e-05 0.0026666 0.00220712 26 887 13 6.55708e+06 84385 477104. 1650.88 1.37 0.0257412 0.0218466 21022 109990 -1 716 13 316 421 24690 7048 0 0 24690 7048 421 338 0 0 1622 1247 0 0 2512 2049 0 0 421 365 0 0 9043 1655 0 0 10671 1394 0 0 421 0 0 105 108 18 888 0 0 2.3425 2.3425 -52.4402 -2.3425 0 0 585099. 2024.56 0.21 0.01 0.07 -1 -1 0.21 0.00341644 0.00306632 52 30 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_018bits.v common 4.04 vpr 62.42 MiB -1 -1 0.07 20328 7 0.04 -1 -1 35668 -1 -1 10 37 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63920 37 19 127 146 1 99 66 17 17 289 -1 unnamed_device 23.9 MiB 0.02 498 62.4 MiB 0.03 0.00 2.75256 -61.0465 -2.75256 2.75256 0.74 8.8182e-05 7.1624e-05 0.00539847 0.00447629 26 1107 10 6.55708e+06 120550 477104. 1650.88 1.63 0.0480834 0.0385398 21022 109990 -1 1023 12 364 491 32777 8641 0 0 32777 8641 491 409 0 0 1923 1539 0 0 2940 2337 0 0 491 426 0 0 13551 1890 0 0 13381 2040 0 0 491 0 0 127 96 137 1173 0 0 2.87276 2.87276 -70.9029 -2.87276 0 0 585099. 2024.56 0.22 0.01 0.08 -1 -1 0.22 0.00380307 0.00344027 59 35 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_020bits.v common 3.31 vpr 62.45 MiB -1 -1 0.08 20228 8 0.06 -1 -1 35224 -1 -1 11 41 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63948 41 21 139 160 1 110 73 17 17 289 -1 unnamed_device 23.9 MiB 0.04 579 62.4 MiB 0.03 0.00 2.4215 -62.5706 -2.4215 2.4215 0.75 8.8023e-05 7.0954e-05 0.00595745 0.00490814 26 1454 49 6.55708e+06 132605 477104. 1650.88 0.71 0.0266792 0.0226773 21022 109990 -1 1201 13 485 653 50243 12652 0 0 50243 12652 653 544 0 0 2388 1852 0 0 3706 2817 0 0 653 562 0 0 21702 3405 0 0 21141 3472 0 0 653 0 0 168 112 142 1457 0 0 2.5417 2.5417 -74.9513 -2.5417 0 0 585099. 2024.56 0.23 0.02 0.11 -1 -1 0.23 0.00511676 0.00468097 67 37 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_022bits.v common 4.65 vpr 62.57 MiB -1 -1 0.08 20228 9 0.05 -1 -1 35296 -1 -1 13 45 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64076 45 23 153 176 1 123 81 17 17 289 -1 unnamed_device 24.1 MiB 0.21 537 62.6 MiB 0.03 0.00 2.78916 -69.2589 -2.78916 2.78916 0.74 9.8634e-05 7.9712e-05 0.00612327 0.00505691 28 1337 37 6.55708e+06 156715 500653. 1732.36 1.92 0.0481541 0.0413727 21310 115450 -1 1162 17 548 696 44008 12243 0 0 44008 12243 696 609 0 0 2596 2073 0 0 3912 3100 0 0 696 623 0 0 17765 2997 0 0 18343 2841 0 0 696 0 0 148 95 127 1362 0 0 3.02956 3.02956 -85.4859 -3.02956 0 0 612192. 2118.31 0.22 0.02 0.07 -1 -1 0.22 0.00588433 0.00527486 74 41 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_024bits.v common 4.88 vpr 62.43 MiB -1 -1 0.09 20040 10 0.04 -1 -1 35132 -1 -1 12 49 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63924 49 25 166 191 1 129 86 17 17 289 -1 unnamed_device 23.9 MiB 0.06 710 62.4 MiB 0.03 0.00 3.51862 -88.1514 -3.51862 3.51862 0.91 0.000106692 8.674e-05 0.00634728 0.00528218 28 1501 12 6.55708e+06 144660 500653. 1732.36 1.97 0.034654 0.0299512 21310 115450 -1 1351 9 477 636 50722 12433 0 0 50722 12433 636 532 0 0 2453 1939 0 0 3570 2929 0 0 636 546 0 0 22916 3249 0 0 20511 3238 0 0 636 0 0 159 90 171 1418 0 0 3.63882 3.63882 -100.893 -3.63882 0 0 612192. 2118.31 0.24 0.02 0.09 -1 -1 0.24 0.00463865 0.00426312 79 44 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_028bits.v common 5.21 vpr 62.57 MiB -1 -1 0.09 20048 11 0.06 -1 -1 35452 -1 -1 14 57 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64076 57 29 198 227 1 159 100 17 17 289 -1 unnamed_device 24.1 MiB 0.17 896 62.6 MiB 0.05 0.00 3.76868 -108.384 -3.76868 3.76868 0.75 0.000137892 0.000115367 0.00954169 0.00801579 26 1981 32 6.55708e+06 168770 477104. 1650.88 2.30 0.065232 0.0566756 21022 109990 -1 1779 59 755 1063 416437 286231 0 0 416437 286231 1063 872 0 0 4109 3413 0 0 12197 7333 0 0 1063 895 0 0 196004 138244 0 0 202001 135474 0 0 1063 0 0 308 326 294 2651 0 0 3.95762 3.95762 -127.018 -3.95762 0 0 585099. 2024.56 0.36 0.12 0.07 -1 -1 0.36 0.0185493 0.0162813 93 56 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_032bits.v common 4.77 vpr 62.75 MiB -1 -1 0.09 20416 13 0.06 -1 -1 34900 -1 -1 16 65 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64256 65 33 224 257 1 180 114 17 17 289 -1 unnamed_device 24.2 MiB 0.22 1005 62.8 MiB 0.06 0.00 4.06216 -130.977 -4.06216 4.06216 0.75 0.000159749 0.000134247 0.0121674 0.0102394 28 2028 28 6.55708e+06 192880 500653. 1732.36 2.04 0.0641105 0.0557099 21310 115450 -1 1856 15 673 922 60285 14629 0 0 60285 14629 922 746 0 0 3315 2612 0 0 5132 3870 0 0 922 782 0 0 25938 3242 0 0 24056 3377 0 0 922 0 0 249 173 260 2136 0 0 4.42276 4.42276 -152.012 -4.42276 0 0 612192. 2118.31 0.23 0.02 0.07 -1 -1 0.23 0.00767389 0.00696098 107 62 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_048bits.v common 3.70 vpr 63.83 MiB -1 -1 0.11 20520 19 0.08 -1 -1 35488 -1 -1 24 97 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65364 97 49 340 389 1 266 170 17 17 289 -1 unnamed_device 25.1 MiB 0.19 1490 63.8 MiB 0.11 0.00 6.49539 -245.46 -6.49539 6.49539 0.76 0.000252414 0.000213901 0.0222849 0.0190447 30 3055 16 6.55708e+06 289320 526063. 1820.29 0.73 0.0636615 0.0559481 21886 126133 -1 2579 16 879 1264 71520 18401 0 0 71520 18401 1264 990 0 0 4405 3451 0 0 6172 4896 0 0 1264 1028 0 0 29362 3929 0 0 29053 4107 0 0 1264 0 0 385 267 467 3313 0 0 6.85599 6.85599 -274.19 -6.85599 0 0 666494. 2306.21 0.23 0.04 0.08 -1 -1 0.23 0.0131021 0.0120146 161 98 -1 -1 -1 -1 - fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_064bits.v common 6.01 vpr 64.80 MiB -1 -1 0.14 20804 26 0.10 -1 -1 35632 -1 -1 35 129 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66352 129 65 453 518 1 353 229 17 17 289 -1 unnamed_device 26.1 MiB 0.20 2092 64.8 MiB 0.16 0.00 8.91496 -417.828 -8.91496 8.91496 0.76 0.000371318 0.000323636 0.0313651 0.0274748 36 3997 12 6.55708e+06 421925 612192. 2118.31 2.85 0.163346 0.147082 22750 144809 -1 3614 12 1158 1601 114563 26993 0 0 114563 26993 1601 1256 0 0 6027 4760 0 0 9249 7302 0 0 1601 1320 0 0 49191 6207 0 0 46894 6148 0 0 1601 0 0 443 334 393 3741 0 0 9.39576 9.39576 -457.615 -9.39576 0 0 782063. 2706.10 0.31 0.04 0.12 -1 -1 0.31 0.0160592 0.0149228 213 131 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 0.39 abc 32.12 MiB -1 -1 0.07 19808 1 0.01 -1 -1 32892 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24268 7 4 24 25 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 0.37 abc 32.28 MiB -1 -1 0.06 19976 1 0.00 -1 -1 33056 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24016 9 5 30 31 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 0.44 abc 32.15 MiB -1 -1 0.07 19780 1 0.01 -1 -1 32924 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24104 11 6 36 37 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 0.35 abc 32.20 MiB -1 -1 0.07 19804 1 0.01 -1 -1 32976 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24004 13 7 42 43 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 0.51 abc 32.18 MiB -1 -1 0.06 20124 1 0.01 -1 -1 32952 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24268 15 8 49 50 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 0.40 abc 32.29 MiB -1 -1 0.07 20192 1 0.01 -1 -1 33064 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24264 17 9 55 56 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 0.43 abc 32.21 MiB -1 -1 0.07 19768 1 0.01 -1 -1 32988 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24112 19 10 61 62 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 0.34 abc 32.16 MiB -1 -1 0.07 19908 1 0.00 -1 -1 32936 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24048 21 11 67 68 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 0.37 abc 32.27 MiB -1 -1 0.06 20040 1 0.01 -1 -1 33040 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24196 23 12 74 75 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 0.35 abc 32.30 MiB -1 -1 0.07 20020 1 0.00 -1 -1 33076 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24224 25 13 80 81 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 0.38 abc 31.94 MiB -1 -1 0.07 20132 1 0.01 -1 -1 32708 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24328 27 14 86 87 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 0.41 abc 32.35 MiB -1 -1 0.07 20088 1 0.00 -1 -1 33128 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24284 29 15 92 93 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 0.40 abc 32.14 MiB -1 -1 0.07 19948 1 0.01 -1 -1 32908 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24304 31 16 99 100 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 0.47 abc 32.29 MiB -1 -1 0.08 19944 1 0.00 -1 -1 33068 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24144 33 17 105 106 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 0.35 abc 32.26 MiB -1 -1 0.07 20304 1 0.01 -1 -1 33032 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24544 37 19 117 118 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 0.47 abc 32.02 MiB -1 -1 0.07 20320 1 0.00 -1 -1 32792 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24448 41 21 130 131 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 0.54 abc 32.18 MiB -1 -1 0.08 20344 1 0.01 -1 -1 32948 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24332 45 23 142 143 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 0.49 abc 32.23 MiB -1 -1 0.07 20120 1 0.01 -1 -1 33000 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24592 49 25 155 156 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 0.44 abc 32.38 MiB -1 -1 0.07 20044 1 0.01 -1 -1 33156 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24608 57 29 180 181 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 0.47 abc 32.43 MiB -1 -1 0.08 20316 1 0.01 -1 -1 33208 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24464 65 33 205 206 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 0.39 abc 32.40 MiB -1 -1 0.09 20704 1 0.01 -1 -1 33176 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24872 97 49 305 306 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 0.43 abc 32.65 MiB -1 -1 0.09 20400 1 0.02 -1 -1 33432 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24900 129 65 405 406 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 0.37 abc 32.29 MiB -1 -1 0.06 19812 1 0.01 -1 -1 33060 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23948 7 4 24 25 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 0.53 abc 32.33 MiB -1 -1 0.07 20020 1 0.00 -1 -1 33104 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23812 9 5 30 31 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 0.37 abc 32.15 MiB -1 -1 0.07 19812 1 0.01 -1 -1 32920 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23676 11 6 36 37 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 0.39 abc 32.12 MiB -1 -1 0.07 19696 1 0.00 -1 -1 32888 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23968 13 7 42 43 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 0.54 abc 32.08 MiB -1 -1 0.07 19832 1 0.01 -1 -1 32848 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23944 15 8 49 50 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 0.41 abc 32.43 MiB -1 -1 0.08 19868 1 0.00 -1 -1 33208 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23992 17 9 55 56 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 0.33 abc 32.18 MiB -1 -1 0.06 20132 1 0.01 -1 -1 32948 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24000 19 10 61 62 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 0.43 abc 32.19 MiB -1 -1 0.07 19820 1 0.00 -1 -1 32960 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23860 21 11 67 68 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 0.51 abc 32.41 MiB -1 -1 0.07 19920 1 0.01 -1 -1 33184 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24144 23 12 74 75 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 0.47 abc 32.23 MiB -1 -1 0.07 19776 1 0.01 -1 -1 33000 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24112 25 13 80 81 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 0.46 abc 32.13 MiB -1 -1 0.08 20016 1 0.01 -1 -1 32904 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23900 27 14 86 87 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 0.34 abc 32.19 MiB -1 -1 0.07 20052 1 0.01 -1 -1 32964 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23860 29 15 92 93 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 0.46 abc 32.23 MiB -1 -1 0.08 19812 1 0.01 -1 -1 33008 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24016 31 16 99 100 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 0.47 abc 32.32 MiB -1 -1 0.07 19916 1 0.01 -1 -1 33096 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24272 33 17 105 106 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 0.46 abc 32.30 MiB -1 -1 0.07 19880 1 0.01 -1 -1 33080 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24312 37 19 117 118 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 0.41 abc 32.31 MiB -1 -1 0.08 20264 1 0.01 -1 -1 33088 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23948 41 21 130 131 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 0.52 abc 32.20 MiB -1 -1 0.08 20280 1 0.01 -1 -1 32968 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 23944 45 23 142 143 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 0.52 abc 32.30 MiB -1 -1 0.06 20252 1 0.01 -1 -1 33072 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24084 49 25 155 156 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 0.42 abc 32.19 MiB -1 -1 0.07 20412 1 0.00 -1 -1 32960 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24516 57 29 180 181 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 0.31 abc 32.32 MiB -1 -1 0.08 20348 1 0.01 -1 -1 33096 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24332 65 33 205 206 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 0.38 abc 32.63 MiB -1 -1 0.09 20452 1 0.01 -1 -1 33412 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 24460 97 49 305 306 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 0.47 abc 32.64 MiB -1 -1 0.09 20572 1 0.02 -1 -1 33424 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 25064 129 65 405 406 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 4.07 vpr 62.00 MiB -1 -1 0.07 20004 1 0.00 -1 -1 33064 -1 -1 2 7 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63492 7 4 27 28 1 14 13 17 17 289 -1 unnamed_device 23.6 MiB 0.01 34 62.0 MiB 0.00 0.00 0.649848 -5.97153 -0.649848 0.649848 1.49 1.6441e-05 1.1554e-05 0.000365921 0.000284627 18 97 8 6.64007e+06 25116 355633. 1230.56 0.48 0.00266071 0.00210682 20242 81429 -1 62 5 24 24 771 282 0 0 771 282 24 24 0 0 82 44 0 0 110 83 0 0 24 24 0 0 206 68 0 0 325 39 0 0 24 0 0 0 0 0 24 0 0 0.71851 0.71851 -6.45233 -0.71851 0 0 448715. 1552.65 0.24 0.00 0.07 -1 -1 0.24 0.000563262 0.000495706 10 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 5.08 vpr 62.38 MiB -1 -1 0.07 19688 1 0.00 -1 -1 32988 -1 -1 2 9 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63880 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 23.9 MiB 0.01 46 62.4 MiB 0.00 0.00 0.671848 -7.32322 -0.671848 0.671848 1.24 1.7917e-05 1.2869e-05 0.000653716 0.000498631 26 120 22 6.64007e+06 25116 477104. 1650.88 1.60 0.0161437 0.0142834 21682 110474 -1 111 12 101 101 3954 1441 0 0 3954 1441 101 101 0 0 385 319 0 0 585 478 0 0 101 101 0 0 1293 269 0 0 1489 173 0 0 101 0 0 0 0 0 101 0 0 0.890248 0.890248 -9.21042 -0.890248 0 0 585099. 2024.56 0.33 0.01 0.09 -1 -1 0.33 0.000991696 0.000846905 13 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 3.66 vpr 61.94 MiB -1 -1 0.07 20020 1 0.01 -1 -1 32896 -1 -1 2 11 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63428 11 6 41 42 1 26 19 17 17 289 -1 unnamed_device 23.5 MiB 0.01 58 61.9 MiB 0.00 0.00 0.682848 -9.22145 -0.682848 0.682848 1.02 2.2701e-05 1.6544e-05 0.00085201 0.000652036 26 211 29 6.64007e+06 25116 477104. 1650.88 0.84 0.0171047 0.0160691 21682 110474 -1 174 26 232 232 13871 4498 0 0 13871 4498 232 232 0 0 944 809 0 0 1528 1180 0 0 232 232 0 0 4998 1099 0 0 5937 946 0 0 232 0 0 0 0 0 232 0 0 1.02145 1.02145 -12.529 -1.02145 0 0 585099. 2024.56 0.32 0.01 0.10 -1 -1 0.32 0.00160998 0.00132224 16 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 3.06 vpr 62.11 MiB -1 -1 0.07 19884 1 0.01 -1 -1 32924 -1 -1 4 13 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63596 13 7 48 49 1 32 24 17 17 289 -1 unnamed_device 23.5 MiB 0.01 78 62.1 MiB 0.00 0.00 0.704848 -10.9187 -0.704848 0.704848 0.89 2.5633e-05 1.9305e-05 0.000751681 0.000596515 26 279 27 6.64007e+06 50232 477104. 1650.88 0.53 0.00539609 0.00436895 21682 110474 -1 220 16 180 180 14507 4652 0 0 14507 4652 180 180 0 0 706 547 0 0 1079 853 0 0 180 180 0 0 5656 1464 0 0 6706 1428 0 0 180 0 0 0 0 0 180 0 0 1.06545 1.06545 -16.3277 -1.06545 0 0 585099. 2024.56 0.28 0.02 0.07 -1 -1 0.28 0.00146245 0.00124459 20 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 4.64 vpr 62.23 MiB -1 -1 0.07 20096 1 0.00 -1 -1 32880 -1 -1 3 15 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63728 15 8 55 56 1 38 26 17 17 289 -1 unnamed_device 23.7 MiB 0.01 109 62.2 MiB 0.01 0.00 0.944958 -13.5599 -0.944958 0.944958 0.75 2.6962e-05 1.9922e-05 0.00113682 0.000895722 32 232 11 6.64007e+06 37674 554710. 1919.41 2.16 0.00794336 0.00642038 22834 132086 -1 230 9 125 125 6580 1940 0 0 6580 1940 125 125 0 0 455 360 0 0 641 520 0 0 125 125 0 0 2537 422 0 0 2697 388 0 0 125 0 0 0 0 0 125 0 0 0.834048 0.834048 -16.5924 -0.834048 0 0 701300. 2426.64 0.27 0.00 0.10 -1 -1 0.27 0.00127474 0.00112686 22 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 4.10 vpr 62.17 MiB -1 -1 0.07 20024 1 0.00 -1 -1 32992 -1 -1 4 17 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63660 17 9 62 63 1 41 30 17 17 289 -1 unnamed_device 23.5 MiB 0.04 125 62.2 MiB 0.01 0.00 0.955958 -15.7312 -0.955958 0.955958 0.81 3.2344e-05 2.4425e-05 0.00159967 0.00125043 28 334 11 6.64007e+06 50232 500653. 1732.36 1.53 0.0116894 0.00943068 21970 115934 -1 292 14 175 175 10074 3120 0 0 10074 3120 175 175 0 0 725 618 0 0 1012 865 0 0 175 175 0 0 3410 737 0 0 4577 550 0 0 175 0 0 0 0 0 175 0 0 0.943248 0.943248 -20.6052 -0.943248 0 0 612192. 2118.31 0.23 0.01 0.07 -1 -1 0.23 0.00168505 0.00146175 25 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 3.40 vpr 62.19 MiB -1 -1 0.08 19944 1 0.00 -1 -1 32888 -1 -1 4 19 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63680 19 10 69 70 1 44 33 17 17 289 -1 unnamed_device 23.8 MiB 0.02 130 62.2 MiB 0.01 0.00 0.966958 -18.0338 -0.966958 0.966958 0.91 3.5677e-05 2.7166e-05 0.00139986 0.00111003 26 376 20 6.64007e+06 50232 477104. 1650.88 0.56 0.00739945 0.00604275 21682 110474 -1 325 13 180 180 10068 2780 0 0 10068 2780 180 180 0 0 661 493 0 0 870 698 0 0 180 180 0 0 3768 684 0 0 4409 545 0 0 180 0 0 0 0 0 180 0 0 1.09645 1.09645 -23.7262 -1.09645 0 0 585099. 2024.56 0.21 0.01 0.07 -1 -1 0.21 0.00171788 0.00149496 28 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 4.04 vpr 62.34 MiB -1 -1 0.07 19864 1 0.01 -1 -1 33124 -1 -1 5 21 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63840 21 11 76 77 1 49 37 17 17 289 -1 unnamed_device 23.9 MiB 0.02 149 62.3 MiB 0.01 0.00 0.977958 -19.6261 -0.977958 0.977958 0.75 3.8141e-05 2.9107e-05 0.00159859 0.00127888 28 393 11 6.64007e+06 62790 500653. 1732.36 1.75 0.0202842 0.0178116 21970 115934 -1 379 14 262 262 20258 6291 0 0 20258 6291 262 262 0 0 1040 884 0 0 1421 1201 0 0 262 262 0 0 7880 1978 0 0 9393 1704 0 0 262 0 0 0 0 0 262 0 0 0.998248 0.998248 -26.8613 -0.998248 0 0 612192. 2118.31 0.23 0.01 0.07 -1 -1 0.23 0.00207764 0.00181124 31 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 3.05 vpr 62.27 MiB -1 -1 0.07 19872 1 0.01 -1 -1 32920 -1 -1 5 23 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63764 23 12 83 84 1 55 40 17 17 289 -1 unnamed_device 23.8 MiB 0.02 183 62.3 MiB 0.01 0.00 0.988958 -22.3112 -0.988958 0.988958 0.74 4.1749e-05 3.1571e-05 0.0022251 0.00174344 28 435 15 6.64007e+06 62790 500653. 1732.36 0.61 0.00888342 0.00732586 21970 115934 -1 380 21 314 314 18524 5394 0 0 18524 5394 314 314 0 0 1173 902 0 0 1689 1355 0 0 314 314 0 0 6697 1400 0 0 8337 1109 0 0 314 0 0 0 0 0 314 0 0 1.02145 1.02145 -27.3237 -1.02145 0 0 612192. 2118.31 0.25 0.01 0.07 -1 -1 0.25 0.00259909 0.00224677 34 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 4.28 vpr 62.33 MiB -1 -1 0.08 20152 1 0.01 -1 -1 33080 -1 -1 5 25 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63824 25 13 90 91 1 61 43 17 17 289 -1 unnamed_device 23.9 MiB 0.02 222 62.3 MiB 0.02 0.00 0.999958 -25.0074 -0.999958 0.999958 0.82 4.6142e-05 3.5519e-05 0.00269434 0.00215559 28 561 16 6.64007e+06 62790 500653. 1732.36 1.63 0.0220038 0.0188386 21970 115934 -1 491 11 255 255 19661 5101 0 0 19661 5101 255 255 0 0 1027 832 0 0 1343 1143 0 0 255 255 0 0 8066 1422 0 0 8715 1194 0 0 255 0 0 0 0 0 255 0 0 1.15145 1.15145 -33.2485 -1.15145 0 0 612192. 2118.31 0.40 0.01 0.07 -1 -1 0.40 0.00201505 0.00177679 37 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 3.37 vpr 62.34 MiB -1 -1 0.07 20048 1 0.01 -1 -1 33156 -1 -1 6 27 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63832 27 14 97 98 1 67 47 17 17 289 -1 unnamed_device 23.8 MiB 0.02 203 62.3 MiB 0.02 0.00 1.01096 -26.5125 -1.01096 1.01096 0.83 4.9366e-05 3.7938e-05 0.00263216 0.00210475 28 633 24 6.64007e+06 75348 500653. 1732.36 0.61 0.0116219 0.00961623 21970 115934 -1 570 23 420 420 33504 9138 0 0 33504 9138 420 420 0 0 1633 1330 0 0 2308 1897 0 0 420 420 0 0 13267 2710 0 0 15456 2361 0 0 420 0 0 0 0 0 420 0 0 1.17465 1.17465 -36.1815 -1.17465 0 0 612192. 2118.31 0.21 0.01 0.07 -1 -1 0.21 0.00341635 0.00293719 40 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 4.15 vpr 62.64 MiB -1 -1 0.07 20132 1 0.01 -1 -1 33048 -1 -1 7 29 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64144 29 15 104 105 1 73 51 17 17 289 -1 unnamed_device 24.1 MiB 0.02 264 62.6 MiB 0.02 0.00 1.02196 -28.6296 -1.02196 1.02196 0.74 5.3687e-05 4.1661e-05 0.00317455 0.00253243 30 642 18 6.64007e+06 87906 526063. 1820.29 1.67 0.0255025 0.0219875 22546 126617 -1 475 11 253 253 12493 3725 0 0 12493 3725 253 253 0 0 901 741 0 0 1129 943 0 0 253 253 0 0 5019 782 0 0 4938 753 0 0 253 0 0 0 0 0 253 0 0 0.956248 0.956248 -33.521 -0.956248 0 0 666494. 2306.21 0.30 0.01 0.08 -1 -1 0.30 0.0022962 0.00203459 44 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 4.15 vpr 62.50 MiB -1 -1 0.07 20512 1 0.01 -1 -1 32724 -1 -1 7 31 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64000 31 16 111 112 1 79 54 17 17 289 -1 unnamed_device 23.9 MiB 0.03 288 62.5 MiB 0.02 0.00 1.26207 -31.7081 -1.26207 1.26207 0.74 5.8486e-05 4.5753e-05 0.00298297 0.00240088 28 665 12 6.64007e+06 87906 500653. 1732.36 1.70 0.0231936 0.0193728 21970 115934 -1 640 14 385 385 28824 7516 0 0 28824 7516 385 385 0 0 1452 1196 0 0 2008 1605 0 0 385 385 0 0 12026 2099 0 0 12568 1846 0 0 385 0 0 0 0 0 385 0 0 1.08425 1.08425 -39.9542 -1.08425 0 0 612192. 2118.31 0.24 0.01 0.07 -1 -1 0.24 0.00298908 0.00264054 46 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 4.19 vpr 62.61 MiB -1 -1 0.08 20360 1 0.01 -1 -1 32908 -1 -1 7 33 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64108 33 17 118 119 1 82 57 17 17 289 -1 unnamed_device 24.2 MiB 0.03 278 62.6 MiB 0.02 0.00 1.27307 -33.1147 -1.27307 1.27307 0.94 5.9755e-05 4.6761e-05 0.00307304 0.00249147 30 575 17 6.64007e+06 87906 526063. 1820.29 1.61 0.023346 0.0194181 22546 126617 -1 495 14 214 214 12161 3747 0 0 12161 3747 214 214 0 0 845 679 0 0 1022 887 0 0 214 214 0 0 4778 965 0 0 5088 788 0 0 214 0 0 0 0 0 214 0 0 0.964048 0.964048 -37.7696 -0.964048 0 0 666494. 2306.21 0.24 0.01 0.08 -1 -1 0.24 0.00297281 0.00264606 49 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 4.78 vpr 62.67 MiB -1 -1 0.07 20420 1 0.00 -1 -1 32940 -1 -1 8 37 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64176 37 19 132 133 1 90 64 17 17 289 -1 unnamed_device 24.2 MiB 0.03 450 62.7 MiB 0.02 0.00 1.29507 -41.7306 -1.29507 1.29507 0.85 6.8952e-05 5.4679e-05 0.00438265 0.00355566 32 922 12 6.64007e+06 100464 554710. 1919.41 2.14 0.0228023 0.0191226 22834 132086 -1 820 14 356 356 25781 6391 0 0 25781 6391 356 356 0 0 1364 1127 0 0 2057 1635 0 0 356 356 0 0 10948 1522 0 0 10700 1395 0 0 356 0 0 0 0 0 356 0 0 1.20445 1.20445 -50.2315 -1.20445 0 0 701300. 2426.64 0.25 0.01 0.08 -1 -1 0.25 0.00325038 0.00287761 55 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 4.26 vpr 62.61 MiB -1 -1 0.08 19980 1 0.01 -1 -1 32968 -1 -1 8 41 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64112 41 21 146 147 1 102 70 17 17 289 -1 unnamed_device 24.0 MiB 0.03 384 62.6 MiB 0.03 0.00 1.31707 -42.5775 -1.31707 1.31707 0.77 7.6622e-05 6.078e-05 0.00598531 0.00488994 30 981 24 6.64007e+06 100464 526063. 1820.29 1.67 0.0331684 0.0276836 22546 126617 -1 765 17 511 511 32242 9205 0 0 32242 9205 511 511 0 0 1867 1507 0 0 2416 2015 0 0 511 511 0 0 13085 2421 0 0 13852 2240 0 0 511 0 0 0 0 0 511 0 0 1.12945 1.12945 -50.6718 -1.12945 0 0 666494. 2306.21 0.24 0.01 0.08 -1 -1 0.24 0.00405642 0.00357854 61 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 3.26 vpr 62.67 MiB -1 -1 0.08 20276 1 0.01 -1 -1 33040 -1 -1 10 45 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64176 45 23 160 161 1 114 78 17 17 289 -1 unnamed_device 24.0 MiB 0.02 578 62.7 MiB 0.03 0.00 1.33907 -52.3632 -1.33907 1.33907 0.76 8.1982e-05 6.5734e-05 0.00589503 0.00482363 32 1138 16 6.64007e+06 125580 554710. 1919.41 0.63 0.0188743 0.0159271 22834 132086 -1 967 15 431 431 30195 7481 0 0 30195 7481 431 431 0 0 1625 1342 0 0 2204 1788 0 0 431 431 0 0 13858 1657 0 0 11646 1832 0 0 431 0 0 0 0 0 431 0 0 1.15025 1.15025 -59.8518 -1.15025 0 0 701300. 2426.64 0.25 0.01 0.14 -1 -1 0.25 0.00404252 0.00359121 68 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 4.75 vpr 62.80 MiB -1 -1 0.07 20124 1 0.01 -1 -1 33040 -1 -1 10 49 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64308 49 25 174 175 1 123 84 17 17 289 -1 unnamed_device 24.4 MiB 0.03 794 62.8 MiB 0.04 0.00 1.59018 -63.2522 -1.59018 1.59018 0.76 0.000101302 8.3557e-05 0.00627933 0.00517207 30 1432 16 6.64007e+06 125580 526063. 1820.29 2.18 0.0333449 0.028348 22546 126617 -1 1259 18 530 530 36366 8560 0 0 36366 8560 530 530 0 0 1881 1527 0 0 2376 1994 0 0 530 530 0 0 16881 1903 0 0 14168 2076 0 0 530 0 0 0 0 0 530 0 0 1.17025 1.17025 -71.1517 -1.17025 0 0 666494. 2306.21 0.30 0.02 0.08 -1 -1 0.30 0.00515217 0.00456815 73 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 4.69 vpr 62.86 MiB -1 -1 0.08 20148 1 0.00 -1 -1 32964 -1 -1 11 57 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64364 57 29 202 203 1 143 97 17 17 289 -1 unnamed_device 24.3 MiB 0.08 793 62.9 MiB 0.04 0.00 1.63418 -71.2188 -1.63418 1.63418 0.77 0.000111925 9.1778e-05 0.00712962 0.00587944 30 1571 17 6.64007e+06 138138 526063. 1820.29 2.22 0.039206 0.0334032 22546 126617 -1 1387 15 538 538 37863 9009 0 0 37863 9009 538 538 0 0 1934 1533 0 0 2335 2007 0 0 538 538 0 0 15424 2422 0 0 17094 1971 0 0 538 0 0 0 0 0 538 0 0 1.20325 1.20325 -79.9752 -1.20325 0 0 666494. 2306.21 0.24 0.02 0.08 -1 -1 0.24 0.00513032 0.00460288 85 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 3.55 vpr 63.08 MiB -1 -1 0.08 20016 1 0.01 -1 -1 32988 -1 -1 13 65 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64592 65 33 230 231 1 164 111 17 17 289 -1 unnamed_device 24.7 MiB 0.07 1052 63.1 MiB 0.06 0.00 1.90729 -88.9548 -1.90729 1.90729 0.92 0.000135708 0.000113344 0.0104943 0.00904605 28 1917 20 6.64007e+06 163254 500653. 1732.36 0.74 0.0339855 0.0296285 21970 115934 -1 1767 17 729 729 65975 15033 0 0 65975 15033 729 729 0 0 2805 2197 0 0 3844 3165 0 0 729 729 0 0 30086 4093 0 0 27782 4120 0 0 729 0 0 0 0 0 729 0 0 1.25625 1.25625 -96.6275 -1.25625 0 0 612192. 2118.31 0.24 0.04 0.07 -1 -1 0.24 0.00734537 0.00628097 97 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 3.63 vpr 63.79 MiB -1 -1 0.08 20580 1 0.02 -1 -1 33224 -1 -1 19 97 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65324 97 49 342 343 1 246 165 17 17 289 -1 unnamed_device 25.0 MiB 0.04 1578 63.8 MiB 0.12 0.00 2.54151 -146.769 -2.54151 2.54151 0.86 0.000214834 0.000181456 0.0177484 0.0151874 32 2859 14 6.64007e+06 238602 554710. 1919.41 0.71 0.050507 0.0444166 22834 132086 -1 2571 15 1103 1103 93954 21507 0 0 93954 21507 1103 1103 0 0 4270 3484 0 0 6018 4810 0 0 1103 1103 0 0 42578 5394 0 0 38882 5613 0 0 1103 0 0 0 0 0 1103 0 0 1.51745 1.51745 -149.472 -1.51745 0 0 701300. 2426.64 0.26 0.04 0.09 -1 -1 0.26 0.0095106 0.00859984 145 -1 -1 -1 -1 -1 - fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 3.93 vpr 64.48 MiB -1 -1 0.09 20716 1 0.01 -1 -1 33600 -1 -1 25 129 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66032 129 65 454 455 1 328 219 17 17 289 -1 unnamed_device 25.9 MiB 0.06 1985 64.5 MiB 0.27 0.01 3.17573 -209.442 -3.17573 3.17573 0.76 0.000331329 0.000288144 0.0306229 0.0269238 32 4085 26 6.64007e+06 313950 554710. 1919.41 0.84 0.0885901 0.0793588 22834 132086 -1 3438 13 1324 1324 118678 27515 0 0 118678 27515 1324 1324 0 0 5166 4152 0 0 7087 5653 0 0 1324 1324 0 0 52251 7356 0 0 51526 7706 0 0 1324 0 0 0 0 0 1324 0 0 1.83045 1.83045 -211.548 -1.83045 0 0 701300. 2426.64 0.26 0.04 0.09 -1 -1 0.26 0.0128623 0.0118248 193 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 2.81 vpr 62.10 MiB -1 -1 0.06 20128 1 0.01 -1 -1 33104 -1 -1 2 7 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63592 7 4 27 28 1 14 13 17 17 289 -1 unnamed_device 23.6 MiB 0.00 30 62.1 MiB 0.00 0.00 0.649848 -5.93533 -0.649848 0.649848 0.96 1.7867e-05 1.3093e-05 0.000418027 0.000328918 14 113 8 6.65987e+06 25356 279208. 966.117 0.33 0.00283539 0.00224662 19378 63921 -1 103 11 62 62 3397 1147 0 0 3397 1147 62 62 0 0 257 206 0 0 307 286 0 0 62 62 0 0 1089 310 0 0 1620 221 0 0 62 0 0 0 0 0 62 0 0 0.890248 0.890248 -7.97873 -0.890248 0 0 355633. 1230.56 0.13 0.00 0.04 -1 -1 0.13 0.00108386 0.000964278 10 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 3.35 vpr 61.80 MiB -1 -1 0.06 19980 1 0.00 -1 -1 33120 -1 -1 2 9 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63280 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 23.3 MiB 0.01 43 61.8 MiB 0.00 0.00 0.660848 -7.17696 -0.660848 0.660848 0.75 1.9311e-05 1.4105e-05 0.000718818 0.000536827 18 153 10 6.65987e+06 25356 355633. 1230.56 1.06 0.0048621 0.00380332 20242 81429 -1 135 17 148 148 6812 2329 0 0 6812 2329 148 148 0 0 556 405 0 0 785 586 0 0 148 148 0 0 2255 508 0 0 2920 534 0 0 148 0 0 0 0 0 148 0 0 0.790989 0.790989 -10.324 -0.790989 0 0 448715. 1552.65 0.16 0.01 0.06 -1 -1 0.16 0.00107941 0.000896919 13 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 4.51 vpr 62.22 MiB -1 -1 0.07 19800 1 0.00 -1 -1 32892 -1 -1 2 11 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63712 11 6 41 42 1 26 19 17 17 289 -1 unnamed_device 23.7 MiB 0.01 60 62.2 MiB 0.00 0.00 0.682848 -9.22145 -0.682848 0.682848 0.75 2.3203e-05 1.7082e-05 0.000898156 0.000694822 28 214 25 6.65987e+06 25356 500653. 1732.36 1.92 0.00882029 0.00692739 21970 115934 -1 164 20 198 198 9941 3205 0 0 9941 3205 198 198 0 0 717 589 0 0 1061 832 0 0 198 198 0 0 3391 804 0 0 4376 584 0 0 198 0 0 0 0 0 198 0 0 1.02145 1.02145 -11.5674 -1.02145 0 0 612192. 2118.31 0.33 0.01 0.07 -1 -1 0.33 0.00199016 0.00174176 16 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 4.91 vpr 62.06 MiB -1 -1 0.07 19880 1 0.01 -1 -1 32888 -1 -1 4 13 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63552 13 7 48 49 1 32 24 17 17 289 -1 unnamed_device 23.5 MiB 0.02 105 62.1 MiB 0.00 0.00 0.704848 -11.7601 -0.704848 0.704848 0.76 2.3856e-05 1.7529e-05 0.000808604 0.000634251 32 253 15 6.65987e+06 50712 554710. 1919.41 1.99 0.00999329 0.00793827 22834 132086 -1 237 14 163 163 11129 3082 0 0 11129 3082 163 163 0 0 672 571 0 0 1072 868 0 0 163 163 0 0 4566 634 0 0 4493 683 0 0 163 0 0 0 0 0 163 0 0 0.972389 0.972389 -16.2582 -0.972389 0 0 701300. 2426.64 0.36 0.02 0.14 -1 -1 0.36 0.00147597 0.00126506 20 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 4.49 vpr 61.86 MiB -1 -1 0.07 19792 1 0.01 -1 -1 32824 -1 -1 3 15 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63340 15 8 55 56 1 38 26 17 17 289 -1 unnamed_device 23.2 MiB 0.01 110 61.9 MiB 0.01 0.00 0.944958 -13.8003 -0.944958 0.944958 0.80 2.8446e-05 2.1096e-05 0.00114354 0.000896579 30 277 15 6.65987e+06 38034 526063. 1820.29 1.85 0.0110606 0.00883289 22546 126617 -1 213 13 122 122 5687 1781 0 0 5687 1781 122 122 0 0 441 349 0 0 606 517 0 0 122 122 0 0 2280 328 0 0 2116 343 0 0 122 0 0 0 0 0 122 0 0 0.834048 0.834048 -16.5924 -0.834048 0 0 666494. 2306.21 0.23 0.01 0.08 -1 -1 0.23 0.00151176 0.00131867 22 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 2.90 vpr 62.11 MiB -1 -1 0.07 20008 1 0.01 -1 -1 33140 -1 -1 4 17 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63600 17 9 62 63 1 41 30 17 17 289 -1 unnamed_device 23.5 MiB 0.01 123 62.1 MiB 0.01 0.00 0.955958 -15.9716 -0.955958 0.955958 0.75 3.2026e-05 2.3608e-05 0.00175107 0.0013477 26 373 15 6.65987e+06 50712 477104. 1650.88 0.58 0.0174711 0.016006 21682 110474 -1 316 14 196 196 20827 5470 0 0 20827 5470 196 196 0 0 801 675 0 0 1564 1253 0 0 196 196 0 0 8627 1636 0 0 9443 1514 0 0 196 0 0 0 0 0 196 0 0 1.22765 1.22765 -23.126 -1.22765 0 0 585099. 2024.56 0.22 0.01 0.07 -1 -1 0.22 0.00170252 0.00147464 25 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 3.18 vpr 62.04 MiB -1 -1 0.06 19760 1 0.01 -1 -1 32960 -1 -1 4 19 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63528 19 10 69 70 1 44 33 17 17 289 -1 unnamed_device 23.6 MiB 0.01 130 62.0 MiB 0.01 0.00 0.966958 -17.6732 -0.966958 0.966958 0.76 3.4655e-05 2.613e-05 0.00163591 0.00129254 32 388 16 6.65987e+06 50712 554710. 1919.41 0.79 0.00738058 0.00606041 22834 132086 -1 305 12 173 173 10957 3146 0 0 10957 3146 173 173 0 0 701 571 0 0 1076 882 0 0 173 173 0 0 3945 773 0 0 4889 574 0 0 173 0 0 0 0 0 173 0 0 1.07445 1.07445 -23.0152 -1.07445 0 0 701300. 2426.64 0.31 0.01 0.08 -1 -1 0.31 0.00177656 0.00157002 28 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 4.14 vpr 62.04 MiB -1 -1 0.07 19860 1 0.00 -1 -1 32968 -1 -1 5 21 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63528 21 11 76 77 1 49 37 17 17 289 -1 unnamed_device 23.6 MiB 0.01 146 62.0 MiB 0.01 0.00 0.977958 -20.1069 -0.977958 0.977958 0.78 3.8089e-05 2.9087e-05 0.00227139 0.00178564 30 423 25 6.65987e+06 63390 526063. 1820.29 1.47 0.0149484 0.0121896 22546 126617 -1 334 14 240 240 12728 3903 0 0 12728 3903 240 240 0 0 917 784 0 0 1215 1058 0 0 240 240 0 0 5049 775 0 0 5067 806 0 0 240 0 0 0 0 0 240 0 0 0.987248 0.987248 -25.1256 -0.987248 0 0 666494. 2306.21 0.24 0.01 0.09 -1 -1 0.24 0.0019859 0.00173488 31 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 4.35 vpr 62.06 MiB -1 -1 0.06 20136 1 0.01 -1 -1 33068 -1 -1 5 23 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63552 23 12 83 84 1 55 40 17 17 289 -1 unnamed_device 23.6 MiB 0.01 167 62.1 MiB 0.01 0.00 0.988958 -21.59 -0.988958 0.988958 0.75 4.2098e-05 3.2642e-05 0.00175093 0.00142586 32 462 21 6.65987e+06 63390 554710. 1919.41 2.08 0.0197578 0.0164197 22834 132086 -1 394 19 310 310 21728 6370 0 0 21728 6370 310 310 0 0 1359 1171 0 0 2221 1768 0 0 310 310 0 0 7975 1470 0 0 9553 1341 0 0 310 0 0 0 0 0 310 0 0 1.02025 1.02025 -27.8788 -1.02025 0 0 701300. 2426.64 0.24 0.01 0.08 -1 -1 0.24 0.0025492 0.00219966 34 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 3.09 vpr 62.24 MiB -1 -1 0.07 19904 1 0.01 -1 -1 33096 -1 -1 5 25 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63736 25 13 90 91 1 61 43 17 17 289 -1 unnamed_device 23.7 MiB 0.02 219 62.2 MiB 0.01 0.00 0.999958 -24.6468 -0.999958 0.999958 0.74 4.4921e-05 3.4216e-05 0.00259812 0.00206854 30 494 18 6.65987e+06 63390 526063. 1820.29 0.59 0.0100002 0.00824473 22546 126617 -1 450 18 244 244 15168 4066 0 0 15168 4066 244 244 0 0 904 715 0 0 1215 1031 0 0 244 244 0 0 6540 912 0 0 6021 920 0 0 244 0 0 0 0 0 244 0 0 1.12945 1.12945 -32.1701 -1.12945 0 0 666494. 2306.21 0.28 0.01 0.08 -1 -1 0.28 0.00278625 0.00243423 37 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 3.91 vpr 62.55 MiB -1 -1 0.07 19916 1 0.01 -1 -1 32908 -1 -1 6 27 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64056 27 14 97 98 1 67 47 17 17 289 -1 unnamed_device 24.0 MiB 0.01 241 62.6 MiB 0.02 0.00 1.01096 -26.6327 -1.01096 1.01096 0.85 5.0297e-05 3.8875e-05 0.00272725 0.00220924 30 580 15 6.65987e+06 76068 526063. 1820.29 1.55 0.0178237 0.0148855 22546 126617 -1 472 13 300 300 16127 4843 0 0 16127 4843 300 300 0 0 1182 1019 0 0 1496 1337 0 0 300 300 0 0 6218 1015 0 0 6631 872 0 0 300 0 0 0 0 0 300 0 0 1.00925 1.00925 -32.6892 -1.00925 0 0 666494. 2306.21 0.25 0.01 0.08 -1 -1 0.25 0.0024604 0.00218426 40 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 4.92 vpr 62.11 MiB -1 -1 0.07 19952 1 0.01 -1 -1 32924 -1 -1 7 29 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63600 29 15 104 105 1 73 51 17 17 289 -1 unnamed_device 23.5 MiB 0.01 264 62.1 MiB 0.02 0.00 1.02196 -29.1104 -1.02196 1.02196 0.90 5.3831e-05 4.1667e-05 0.0027004 0.00214936 30 584 17 6.65987e+06 88746 526063. 1820.29 2.14 0.0180588 0.014999 22546 126617 -1 505 14 298 298 16381 4655 0 0 16381 4655 298 298 0 0 1110 900 0 0 1470 1269 0 0 298 298 0 0 6992 895 0 0 6213 995 0 0 298 0 0 0 0 0 298 0 0 1.04225 1.04225 -35.946 -1.04225 0 0 666494. 2306.21 0.28 0.01 0.08 -1 -1 0.28 0.00280604 0.00249325 44 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 3.22 vpr 62.16 MiB -1 -1 0.07 20488 1 0.01 -1 -1 32932 -1 -1 7 31 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63648 31 16 111 112 1 79 54 17 17 289 -1 unnamed_device 23.6 MiB 0.01 288 62.2 MiB 0.02 0.00 1.26207 -31.3475 -1.26207 1.26207 0.86 5.8077e-05 4.4132e-05 0.00288873 0.00228026 32 722 14 6.65987e+06 88746 554710. 1919.41 0.68 0.0118886 0.00993717 22834 132086 -1 614 17 373 373 32089 8455 0 0 32089 8455 373 373 0 0 1554 1324 0 0 2746 2252 0 0 373 373 0 0 13402 2104 0 0 13641 2029 0 0 373 0 0 0 0 0 373 0 0 1.28065 1.28065 -42.7998 -1.28065 0 0 701300. 2426.64 0.25 0.01 0.08 -1 -1 0.25 0.00338189 0.0029862 46 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 4.53 vpr 62.43 MiB -1 -1 0.08 20284 1 0.01 -1 -1 32924 -1 -1 7 33 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63928 33 17 118 119 1 82 57 17 17 289 -1 unnamed_device 24.0 MiB 0.01 292 62.4 MiB 0.06 0.00 1.27307 -33.3551 -1.27307 1.27307 0.95 6.0357e-05 4.7151e-05 0.00460899 0.00395481 28 796 37 6.65987e+06 88746 500653. 1732.36 1.86 0.0313521 0.0255857 21970 115934 -1 652 16 373 373 31736 8443 0 0 31736 8443 373 373 0 0 1461 1214 0 0 2109 1758 0 0 373 373 0 0 13489 2531 0 0 13931 2194 0 0 373 0 0 0 0 0 373 0 0 1.20565 1.20565 -44.0458 -1.20565 0 0 612192. 2118.31 0.22 0.01 0.07 -1 -1 0.22 0.00338232 0.00298209 49 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 4.45 vpr 62.39 MiB -1 -1 0.07 20152 1 0.01 -1 -1 32984 -1 -1 8 37 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63884 37 19 132 133 1 90 64 17 17 289 -1 unnamed_device 23.9 MiB 0.02 392 62.4 MiB 0.03 0.00 1.29507 -39.6872 -1.29507 1.29507 0.81 6.8064e-05 5.3897e-05 0.00449432 0.00364587 28 926 38 6.65987e+06 101424 500653. 1732.36 1.97 0.0337131 0.0283501 21970 115934 -1 754 14 382 382 31267 7884 0 0 31267 7884 382 382 0 0 1513 1256 0 0 2127 1799 0 0 382 382 0 0 13311 2125 0 0 13552 1940 0 0 382 0 0 0 0 0 382 0 0 1.08425 1.08425 -46.9422 -1.08425 0 0 612192. 2118.31 0.23 0.01 0.07 -1 -1 0.23 0.00364889 0.00326274 55 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 3.44 vpr 62.77 MiB -1 -1 0.07 20108 1 0.01 -1 -1 32928 -1 -1 8 41 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64276 41 21 146 147 1 102 70 17 17 289 -1 unnamed_device 24.2 MiB 0.02 386 62.8 MiB 0.03 0.00 1.31707 -43.4189 -1.31707 1.31707 0.77 7.7829e-05 6.2035e-05 0.00609323 0.00496568 32 1113 38 6.65987e+06 101424 554710. 1919.41 0.68 0.0221179 0.0186856 22834 132086 -1 870 17 515 515 46001 11695 0 0 46001 11695 515 515 0 0 2111 1780 0 0 3671 2903 0 0 515 515 0 0 19329 3077 0 0 19860 2905 0 0 515 0 0 0 0 0 515 0 0 1.36865 1.36865 -57.6558 -1.36865 0 0 701300. 2426.64 0.40 0.02 0.08 -1 -1 0.40 0.00412444 0.00364829 61 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 5.66 vpr 62.49 MiB -1 -1 0.08 20156 1 0.01 -1 -1 32904 -1 -1 10 45 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63992 45 23 160 161 1 114 78 17 17 289 -1 unnamed_device 24.1 MiB 0.02 499 62.5 MiB 0.03 0.00 1.33907 -49.7188 -1.33907 1.33907 0.84 8.4397e-05 6.7519e-05 0.0064121 0.00530621 36 1011 19 6.65987e+06 126780 612192. 2118.31 2.82 0.0341019 0.0281392 23410 145293 -1 889 17 414 414 32968 8306 0 0 32968 8306 414 414 0 0 1633 1368 0 0 2310 1905 0 0 414 414 0 0 13933 2233 0 0 14264 1972 0 0 414 0 0 0 0 0 414 0 0 1.15025 1.15025 -58.0488 -1.15025 0 0 782063. 2706.10 0.27 0.02 0.14 -1 -1 0.27 0.00481016 0.00428958 68 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 3.26 vpr 62.55 MiB -1 -1 0.07 20292 1 0.01 -1 -1 32908 -1 -1 10 49 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64048 49 25 174 175 1 123 84 17 17 289 -1 unnamed_device 24.1 MiB 0.02 794 62.5 MiB 0.04 0.00 1.59018 -63.0118 -1.59018 1.59018 0.77 9.2549e-05 7.4668e-05 0.00631525 0.0051979 32 1492 38 6.65987e+06 126780 554710. 1919.41 0.73 0.0271005 0.0233462 22834 132086 -1 1381 16 592 592 59162 13443 0 0 59162 13443 592 592 0 0 2437 2061 0 0 3955 3219 0 0 592 592 0 0 26999 3554 0 0 24587 3425 0 0 592 0 0 0 0 0 592 0 0 1.30145 1.30145 -75.6278 -1.30145 0 0 701300. 2426.64 0.25 0.02 0.08 -1 -1 0.25 0.00491022 0.00438903 73 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 3.10 vpr 62.74 MiB -1 -1 0.08 20296 1 0.00 -1 -1 33200 -1 -1 11 57 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64248 57 29 202 203 1 143 97 17 17 289 -1 unnamed_device 24.1 MiB 0.02 850 62.7 MiB 0.05 0.00 1.63418 -73.9834 -1.63418 1.63418 0.75 0.000119329 9.9345e-05 0.00781504 0.00657464 30 1616 17 6.65987e+06 139458 526063. 1820.29 0.65 0.0256105 0.0221116 22546 126617 -1 1425 15 563 563 43403 10139 0 0 43403 10139 563 563 0 0 2114 1684 0 0 2613 2268 0 0 563 563 0 0 18218 2677 0 0 19332 2384 0 0 563 0 0 0 0 0 563 0 0 1.24725 1.24725 -83.351 -1.24725 0 0 666494. 2306.21 0.27 0.02 0.08 -1 -1 0.27 0.00551933 0.00496738 85 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 4.91 vpr 62.97 MiB -1 -1 0.08 20104 1 0.01 -1 -1 33012 -1 -1 13 65 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64480 65 33 230 231 1 164 111 17 17 289 -1 unnamed_device 24.5 MiB 0.02 1051 63.0 MiB 0.06 0.00 1.90729 -88.9548 -1.90729 1.90729 0.93 0.000127384 0.00010537 0.00860757 0.00715879 32 1970 19 6.65987e+06 164814 554710. 1919.41 2.15 0.0472319 0.0405193 22834 132086 -1 1757 17 783 783 64920 14968 0 0 64920 14968 783 783 0 0 3046 2503 0 0 4692 3688 0 0 783 783 0 0 28670 3626 0 0 26946 3585 0 0 783 0 0 0 0 0 783 0 0 1.28925 1.28925 -96.2835 -1.28925 0 0 701300. 2426.64 0.31 0.02 0.09 -1 -1 0.31 0.00721646 0.00648147 97 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 5.14 vpr 63.75 MiB -1 -1 0.08 20416 1 0.01 -1 -1 33160 -1 -1 19 97 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65280 97 49 342 343 1 246 165 17 17 289 -1 unnamed_device 24.9 MiB 0.03 1550 63.8 MiB 0.12 0.00 2.54151 -146.288 -2.54151 2.54151 0.76 0.000221626 0.000190527 0.0171015 0.0145444 36 2735 17 6.65987e+06 240882 612192. 2118.31 2.45 0.092384 0.0812177 23410 145293 -1 2474 16 921 921 74637 17068 0 0 74637 17068 921 921 0 0 3518 2787 0 0 4925 4058 0 0 921 921 0 0 33217 4274 0 0 31135 4107 0 0 921 0 0 0 0 0 921 0 0 1.52845 1.52845 -146.508 -1.52845 0 0 782063. 2706.10 0.33 0.03 0.09 -1 -1 0.33 0.0108476 0.00990369 145 -1 -1 -1 -1 -1 - fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 5.83 vpr 64.48 MiB -1 -1 0.09 20664 1 0.02 -1 -1 33296 -1 -1 25 129 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66024 129 65 454 455 1 328 219 17 17 289 -1 unnamed_device 25.9 MiB 0.05 1949 64.5 MiB 0.18 0.00 3.17573 -211.846 -3.17573 3.17573 0.89 0.000353029 0.000310239 0.0285208 0.0249814 36 3778 18 6.65987e+06 316950 612192. 2118.31 2.64 0.156103 0.135419 23410 145293 -1 3242 15 1293 1293 106994 25701 0 0 106994 25701 1293 1293 0 0 4974 4074 0 0 6829 5669 0 0 1293 1293 0 0 46668 6468 0 0 45937 6904 0 0 1293 0 0 0 0 0 1293 0 0 1.77039 1.77039 -203.07 -1.77039 0 0 782063. 2706.10 0.27 0.05 0.09 -1 -1 0.27 0.0140198 0.0128862 193 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_003bits.v common 2.53 vpr 62.84 MiB -1 -1 0.06 20084 1 0.00 -1 -1 33108 -1 -1 1 7 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64348 7 4 27 28 1 12 12 17 17 289 -1 unnamed_device 24.4 MiB 0.01 77 62.8 MiB 0.00 0.00 0.942216 -8.23033 -0.942216 0.942216 0.86 2.0778e-05 1.3657e-05 0.000196851 0.000166374 8 125 9 6.95648e+06 14475.7 166176. 575.005 0.23 0.00102943 0.000869229 20866 45572 -1 121 5 20 20 1899 476 0 0 1899 476 20 20 0 0 79 54 0 0 88 79 0 0 20 20 0 0 845 145 0 0 847 158 0 0 20 0 0 0 0 0 20 0 0 0.942216 0.942216 -9.23274 -0.942216 0 0 202963. 702.294 0.08 0.00 0.03 -1 -1 0.08 0.000565629 0.000497204 5 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_004bits.v common 4.10 vpr 62.89 MiB -1 -1 0.07 19828 1 0.00 -1 -1 32980 -1 -1 1 9 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64400 9 5 34 35 1 15 15 17 17 289 -1 unnamed_device 24.4 MiB 0.02 33 62.9 MiB 0.00 0.00 0.583992 -7.62477 -0.583992 0.583992 0.94 1.8769e-05 1.3214e-05 0.000743785 0.00056405 18 138 11 6.95648e+06 14475.7 376052. 1301.22 1.25 0.00456886 0.00358671 22882 88689 -1 98 7 44 44 1942 698 0 0 1942 698 44 44 0 0 164 143 0 0 223 175 0 0 44 44 0 0 616 157 0 0 851 135 0 0 44 0 0 0 0 0 44 0 0 0.834592 0.834592 -9.50427 -0.834592 0 0 470940. 1629.55 0.18 0.00 0.06 -1 -1 0.18 0.000741296 0.000650684 7 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_005bits.v common 3.10 vpr 63.06 MiB -1 -1 0.08 20112 1 0.00 -1 -1 32892 -1 -1 1 11 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64576 11 6 41 42 1 19 18 17 17 289 -1 unnamed_device 24.5 MiB 0.03 45 63.1 MiB 0.00 0.00 0.701895 -10.0315 -0.701895 0.701895 0.91 2.1586e-05 1.554e-05 0.000827469 0.000648735 26 162 16 6.95648e+06 14475.7 503264. 1741.40 0.59 0.00454648 0.00366697 24322 120374 -1 138 10 66 66 4464 1386 0 0 4464 1386 66 66 0 0 274 235 0 0 342 295 0 0 66 66 0 0 1721 358 0 0 1995 366 0 0 66 0 0 0 0 0 66 0 0 0.74674 0.74674 -12.5375 -0.74674 0 0 618332. 2139.56 0.24 0.00 0.08 -1 -1 0.24 0.00109895 0.000963707 8 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_006bits.v common 3.18 vpr 62.66 MiB -1 -1 0.06 19780 1 0.01 -1 -1 32932 -1 -1 2 13 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64164 13 7 48 49 1 25 22 17 17 289 -1 unnamed_device 24.1 MiB 0.03 58 62.7 MiB 0.01 0.00 0.745895 -12.7431 -0.745895 0.745895 0.79 2.5224e-05 1.8445e-05 0.00111902 0.000863795 26 176 10 6.95648e+06 28951.4 503264. 1741.40 0.69 0.00515298 0.00417575 24322 120374 -1 166 10 89 89 3722 1353 0 0 3722 1353 89 89 0 0 337 285 0 0 471 393 0 0 89 89 0 0 1277 288 0 0 1459 209 0 0 89 0 0 0 0 0 89 0 0 0.802432 0.802432 -15.6773 -0.802432 0 0 618332. 2139.56 0.21 0.00 0.08 -1 -1 0.21 0.00124805 0.00110335 10 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_007bits.v common 3.96 vpr 62.85 MiB -1 -1 0.07 20128 1 0.01 -1 -1 32908 -1 -1 2 15 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64356 15 8 55 56 1 32 25 17 17 289 -1 unnamed_device 24.2 MiB 0.03 84 62.8 MiB 0.00 0.00 0.727332 -14.8036 -0.727332 0.727332 0.89 2.8649e-05 2.1705e-05 0.000881576 0.000714259 20 293 9 6.95648e+06 28951.4 414966. 1435.87 1.39 0.00767109 0.00624226 23170 95770 -1 267 11 161 161 10957 3380 0 0 10957 3380 161 161 0 0 680 582 0 0 896 747 0 0 161 161 0 0 3797 877 0 0 5262 852 0 0 161 0 0 0 0 0 161 0 0 1.04203 1.04203 -19.7843 -1.04203 0 0 503264. 1741.40 0.18 0.01 0.06 -1 -1 0.18 0.00138121 0.00120802 11 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_008bits.v common 4.89 vpr 62.81 MiB -1 -1 0.07 19944 1 0.00 -1 -1 32956 -1 -1 2 17 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64316 17 9 62 63 1 37 28 17 17 289 -1 unnamed_device 24.5 MiB 0.03 103 62.8 MiB 0.01 0.00 0.942216 -16.9019 -0.942216 0.942216 0.81 3.1956e-05 2.3766e-05 0.001046 0.000848463 32 327 24 6.95648e+06 28951.4 586450. 2029.24 2.27 0.0148055 0.0121329 25474 144626 -1 263 9 146 146 7662 2529 0 0 7662 2529 146 146 0 0 588 517 0 0 884 683 0 0 146 146 0 0 2777 544 0 0 3121 493 0 0 146 0 0 0 0 0 146 0 0 0.960732 0.960732 -20.9096 -0.960732 0 0 744469. 2576.02 0.25 0.01 0.09 -1 -1 0.25 0.00137963 0.00123131 13 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_009bits.v common 4.67 vpr 63.00 MiB -1 -1 0.08 20064 1 0.00 -1 -1 33068 -1 -1 2 19 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64512 19 10 69 70 1 44 31 17 17 289 -1 unnamed_device 24.6 MiB 0.03 168 63.0 MiB 0.01 0.00 0.760332 -18.4143 -0.760332 0.760332 0.85 3.4799e-05 2.6884e-05 0.00150125 0.00122015 30 419 15 6.95648e+06 28951.4 556674. 1926.21 1.97 0.0143203 0.011703 25186 138497 -1 405 16 253 253 18478 4518 0 0 18478 4518 253 253 0 0 908 747 0 0 1290 999 0 0 253 253 0 0 8360 1014 0 0 7414 1252 0 0 253 0 0 0 0 0 253 0 0 1.08603 1.08603 -26.1011 -1.08603 0 0 706193. 2443.58 0.26 0.01 0.08 -1 -1 0.26 0.00205937 0.00179515 14 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_010bits.v common 5.51 vpr 63.16 MiB -1 -1 0.06 19892 1 0.01 -1 -1 33000 -1 -1 2 21 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64676 21 11 76 77 1 49 34 17 17 289 -1 unnamed_device 24.7 MiB 0.03 127 63.2 MiB 0.01 0.00 0.771332 -20.8321 -0.771332 0.771332 0.80 4.2584e-05 3.2978e-05 0.00193603 0.00156216 36 432 32 6.95648e+06 28951.4 648988. 2245.63 2.93 0.0181196 0.0147541 26050 158493 -1 358 22 333 333 19934 6070 0 0 19934 6070 333 333 0 0 1184 1054 0 0 1901 1353 0 0 333 333 0 0 6868 1715 0 0 9315 1282 0 0 333 0 0 0 0 0 333 0 0 1.14723 1.14723 -27.3447 -1.14723 0 0 828058. 2865.25 0.28 0.01 0.10 -1 -1 0.28 0.00276904 0.00237989 16 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_011bits.v common 4.07 vpr 63.29 MiB -1 -1 0.08 20016 1 0.01 -1 -1 32908 -1 -1 3 23 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64812 23 12 83 84 1 55 38 17 17 289 -1 unnamed_device 24.8 MiB 0.03 285 63.3 MiB 0.01 0.00 0.765132 -25.7294 -0.765132 0.765132 0.78 4.2584e-05 3.1952e-05 0.00155378 0.00125338 30 659 23 6.95648e+06 43427 556674. 1926.21 1.48 0.0153849 0.0126151 25186 138497 -1 590 15 335 335 33884 7251 0 0 33884 7251 335 335 0 0 1200 1008 0 0 1818 1362 0 0 335 335 0 0 15567 2051 0 0 14629 2160 0 0 335 0 0 0 0 0 335 0 0 1.16733 1.16733 -33.6052 -1.16733 0 0 706193. 2443.58 0.24 0.01 0.09 -1 -1 0.24 0.00240645 0.00212247 17 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_012bits.v common 4.11 vpr 63.13 MiB -1 -1 0.07 20044 1 0.01 -1 -1 32964 -1 -1 3 25 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64644 25 13 90 91 1 60 41 17 17 289 -1 unnamed_device 24.6 MiB 0.03 204 63.1 MiB 0.01 0.00 0.816915 -24.4477 -0.816915 0.816915 0.85 4.3231e-05 3.3072e-05 0.00152426 0.00123845 30 596 19 6.95648e+06 43427 556674. 1926.21 1.47 0.017158 0.0139873 25186 138497 -1 477 16 318 318 20202 5759 0 0 20202 5759 318 318 0 0 1101 940 0 0 1667 1235 0 0 318 318 0 0 7533 1421 0 0 9265 1527 0 0 318 0 0 0 0 0 318 0 0 1.20033 1.20033 -35.5436 -1.20033 0 0 706193. 2443.58 0.25 0.01 0.08 -1 -1 0.25 0.00255272 0.00223926 19 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_013bits.v common 3.96 vpr 63.09 MiB -1 -1 0.07 19880 1 0.01 -1 -1 32904 -1 -1 3 27 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64600 27 14 97 98 1 66 44 17 17 289 -1 unnamed_device 24.6 MiB 0.03 436 63.1 MiB 0.03 0.00 0.826332 -34.4783 -0.826332 0.826332 0.88 5.3348e-05 4.1859e-05 0.00222185 0.00185062 34 880 16 6.95648e+06 43427 618332. 2139.56 1.25 0.0131852 0.0109946 25762 151098 -1 829 13 357 357 42262 8653 0 0 42262 8653 357 357 0 0 1363 1182 0 0 2290 1596 0 0 357 357 0 0 19459 2717 0 0 18436 2444 0 0 357 0 0 0 0 0 357 0 0 1.27733 1.27733 -45.9127 -1.27733 0 0 787024. 2723.27 0.27 0.01 0.10 -1 -1 0.27 0.00255998 0.0022649 20 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_014bits.v common 3.85 vpr 63.08 MiB -1 -1 0.08 19828 1 0.01 -1 -1 32884 -1 -1 4 29 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64596 29 15 104 105 1 72 48 17 17 289 -1 unnamed_device 24.6 MiB 0.02 469 63.1 MiB 0.01 0.00 0.826332 -37.0057 -0.826332 0.826332 0.89 5.1384e-05 4.1019e-05 0.00265928 0.00220733 34 972 14 6.95648e+06 57902.7 618332. 2139.56 1.13 0.0167619 0.0140226 25762 151098 -1 916 19 461 461 56404 11191 0 0 56404 11191 461 461 0 0 1608 1415 0 0 2791 1850 0 0 461 461 0 0 25783 3791 0 0 25300 3213 0 0 461 0 0 0 0 0 461 0 0 1.15203 1.15203 -48.5262 -1.15203 0 0 787024. 2723.27 0.33 0.02 0.11 -1 -1 0.33 0.00350085 0.00306696 23 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_015bits.v common 3.94 vpr 63.19 MiB -1 -1 0.07 20204 1 0.01 -1 -1 33032 -1 -1 3 31 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64704 31 16 111 112 1 78 50 17 17 289 -1 unnamed_device 24.9 MiB 0.04 264 63.2 MiB 0.02 0.00 1.08336 -32.6216 -1.08336 1.08336 0.77 5.6338e-05 4.4314e-05 0.00335799 0.00272262 32 898 31 6.95648e+06 43427 586450. 2029.24 1.20 0.0189299 0.0159762 25474 144626 -1 653 24 491 491 52434 12757 0 0 52434 12757 491 491 0 0 1781 1554 0 0 3129 2045 0 0 491 491 0 0 22848 4026 0 0 23694 4150 0 0 491 0 0 0 0 0 491 0 0 1.31453 1.31453 -46.3757 -1.31453 0 0 744469. 2576.02 0.25 0.02 0.09 -1 -1 0.25 0.00428191 0.00374381 24 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_016bits.v common 3.99 vpr 63.24 MiB -1 -1 0.06 20548 1 0.00 -1 -1 32996 -1 -1 4 33 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64756 33 17 118 119 1 81 54 17 17 289 -1 unnamed_device 24.8 MiB 0.06 280 63.2 MiB 0.02 0.00 1.09436 -35.1295 -1.09436 1.09436 0.79 6.3565e-05 5.0428e-05 0.00374796 0.00306497 34 867 18 6.95648e+06 57902.7 618332. 2139.56 1.15 0.0214524 0.0185472 25762 151098 -1 654 18 447 447 37952 9614 0 0 37952 9614 447 447 0 0 1632 1418 0 0 2744 1938 0 0 447 447 0 0 15127 2889 0 0 17555 2475 0 0 447 0 0 0 0 0 447 0 0 1.31933 1.31933 -49.0729 -1.31933 0 0 787024. 2723.27 0.27 0.01 0.10 -1 -1 0.27 0.00368181 0.00323176 25 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_018bits.v common 3.94 vpr 63.21 MiB -1 -1 0.07 20180 1 0.00 -1 -1 32720 -1 -1 4 37 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64724 37 19 132 133 1 87 60 17 17 289 -1 unnamed_device 24.8 MiB 0.07 310 63.2 MiB 0.03 0.00 1.11636 -39.6418 -1.11636 1.11636 0.84 9.7823e-05 8.1657e-05 0.00471496 0.00390367 34 889 28 6.95648e+06 57902.7 618332. 2139.56 1.23 0.0265108 0.0224273 25762 151098 -1 713 18 512 512 46721 11700 0 0 46721 11700 512 512 0 0 1898 1695 0 0 3254 2334 0 0 512 512 0 0 20329 3215 0 0 20216 3432 0 0 512 0 0 0 0 0 512 0 0 1.35233 1.35233 -54.2252 -1.35233 0 0 787024. 2723.27 0.26 0.02 0.10 -1 -1 0.26 0.00435942 0.00387072 28 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_020bits.v common 4.24 vpr 63.66 MiB -1 -1 0.08 20020 1 0.01 -1 -1 33128 -1 -1 4 41 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65192 41 21 146 147 1 96 66 17 17 289 -1 unnamed_device 25.1 MiB 0.07 350 63.7 MiB 0.02 0.00 1.13836 -44.3233 -1.13836 1.13836 0.76 7.5058e-05 5.9607e-05 0.00495286 0.00401632 34 1075 28 6.95648e+06 57902.7 618332. 2139.56 1.48 0.0298285 0.0251595 25762 151098 -1 833 17 513 513 52208 12213 0 0 52208 12213 513 513 0 0 1839 1599 0 0 3018 2030 0 0 513 513 0 0 22144 3947 0 0 24181 3611 0 0 513 0 0 0 0 0 513 0 0 1.27723 1.27723 -59.1063 -1.27723 0 0 787024. 2723.27 0.45 0.05 0.10 -1 -1 0.45 0.0214118 0.0208519 31 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_022bits.v common 4.06 vpr 63.26 MiB -1 -1 0.07 20340 1 0.01 -1 -1 33028 -1 -1 5 45 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64776 45 23 160 161 1 108 73 17 17 289 -1 unnamed_device 24.7 MiB 0.08 398 63.3 MiB 0.03 0.00 1.16036 -49.0488 -1.16036 1.16036 0.77 8.513e-05 6.8494e-05 0.0058991 0.00488477 36 1127 23 6.95648e+06 72378.4 648988. 2245.63 1.43 0.0325613 0.0276788 26050 158493 -1 944 22 661 661 70162 16241 0 0 70162 16241 661 661 0 0 2331 2052 0 0 3924 2707 0 0 661 661 0 0 30079 5227 0 0 32506 4933 0 0 661 0 0 0 0 0 661 0 0 1.41833 1.41833 -68.7529 -1.41833 0 0 828058. 2865.25 0.28 0.02 0.10 -1 -1 0.28 0.00794832 0.00722832 34 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_024bits.v common 4.51 vpr 63.79 MiB -1 -1 0.08 20124 1 0.01 -1 -1 32900 -1 -1 5 49 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65324 49 25 174 175 1 119 79 17 17 289 -1 unnamed_device 25.4 MiB 0.08 454 63.8 MiB 0.04 0.00 1.18236 -53.693 -1.18236 1.18236 1.03 9.0751e-05 7.2569e-05 0.00739754 0.00615064 38 1291 38 6.95648e+06 72378.4 678818. 2348.85 1.57 0.0399406 0.03423 26626 170182 -1 1033 18 725 725 60715 16971 0 0 60715 16971 725 725 0 0 2533 2236 0 0 3986 2817 0 0 725 725 0 0 24711 5491 0 0 28035 4977 0 0 725 0 0 0 0 0 725 0 0 1.47293 1.47293 -71.9016 -1.47293 0 0 902133. 3121.57 0.30 0.02 0.11 -1 -1 0.30 0.00579795 0.00519465 37 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_028bits.v common 6.64 vpr 63.35 MiB -1 -1 0.07 20320 1 0.01 -1 -1 32976 -1 -1 6 57 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64872 57 29 202 203 1 142 92 17 17 289 -1 unnamed_device 24.8 MiB 0.06 720 63.4 MiB 0.04 0.00 1.22636 -68.3761 -1.22636 1.22636 0.76 0.000105901 8.6762e-05 0.00799504 0.00663199 36 1630 50 6.95648e+06 86854.1 648988. 2245.63 4.13 0.0704574 0.0602201 26050 158493 -1 1337 17 770 770 85936 18635 0 0 85936 18635 770 770 0 0 2747 2410 0 0 4375 3198 0 0 770 770 0 0 39290 5945 0 0 37984 5542 0 0 770 0 0 0 0 0 770 0 0 1.45133 1.45133 -88.764 -1.45133 0 0 828058. 2865.25 0.28 0.02 0.10 -1 -1 0.28 0.00613179 0.00550864 43 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_032bits.v common 6.20 vpr 63.61 MiB -1 -1 0.08 20152 1 0.01 -1 -1 32992 -1 -1 7 65 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65132 65 33 230 231 1 162 105 17 17 289 -1 unnamed_device 25.2 MiB 0.07 753 63.6 MiB 0.05 0.00 1.50539 -78.0667 -1.50539 1.50539 0.90 0.000126253 0.000103192 0.00922406 0.00767664 44 1563 15 6.95648e+06 101330 787024. 2723.27 3.13 0.0589574 0.0508205 27778 195446 -1 1278 14 795 795 63045 14749 0 0 63045 14749 795 795 0 0 2718 2422 0 0 4499 3163 0 0 795 795 0 0 26727 3961 0 0 27511 3613 0 0 795 0 0 0 0 0 795 0 0 1.30393 1.30393 -90.3271 -1.30393 0 0 997811. 3452.63 0.42 0.04 0.12 -1 -1 0.42 0.0065108 0.00591406 49 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_048bits.v common 6.80 vpr 64.46 MiB -1 -1 0.09 20452 1 0.01 -1 -1 33396 -1 -1 10 97 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66004 97 49 342 343 1 243 156 17 17 289 -1 unnamed_device 25.7 MiB 0.08 1453 64.5 MiB 0.09 0.00 1.91642 -137.228 -1.91642 1.91642 0.77 0.000213653 0.00018202 0.0160223 0.0137481 50 2733 37 6.95648e+06 144757 902133. 3121.57 3.90 0.148794 0.133909 28642 213929 -1 2443 17 1110 1110 118780 25374 0 0 118780 25374 1110 1110 0 0 4023 3507 0 0 6503 4756 0 0 1110 1110 0 0 53180 7140 0 0 52854 7751 0 0 1110 0 0 0 0 0 1110 0 0 1.59703 1.59703 -158.976 -1.59703 0 0 1.08113e+06 3740.92 0.37 0.04 0.16 -1 -1 0.37 0.0112007 0.0101985 73 -1 -1 -1 -1 -1 - fixed_k6_frac_2ripple_N8_22nm.xml adder_064bits.v common 5.92 vpr 65.25 MiB -1 -1 0.10 20656 1 0.01 -1 -1 33468 -1 -1 13 129 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66812 129 65 454 455 1 324 207 17 17 289 -1 unnamed_device 26.4 MiB 0.17 2042 65.2 MiB 0.13 0.00 2.32745 -201.714 -2.32745 2.32745 0.80 0.000333429 0.000291028 0.0222511 0.0195904 50 3914 48 6.95648e+06 188184 902133. 3121.57 2.63 0.154346 0.140807 28642 213929 -1 3483 19 1438 1438 159180 32034 0 0 159180 32034 1438 1438 0 0 5067 4384 0 0 8321 5842 0 0 1438 1438 0 0 71880 9691 0 0 71036 9241 0 0 1438 0 0 0 0 0 1438 0 0 1.73803 1.73803 -217.561 -1.73803 0 0 1.08113e+06 3740.92 0.36 0.06 0.14 -1 -1 0.36 0.0186169 0.0171151 97 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_003bits.v common 3.15 vpr 62.59 MiB -1 -1 0.07 20108 1 0.00 -1 -1 33132 -1 -1 1 7 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64092 7 4 27 28 1 13 12 17 17 289 -1 unnamed_device 24.2 MiB 0.01 62 62.6 MiB 0.00 0.00 0.816915 -8.12034 -0.816915 0.816915 0.90 2.1868e-05 1.4993e-05 0.000198598 0.000167496 14 112 10 6.99608e+06 14715.7 292583. 1012.40 0.59 0.00150327 0.00122895 22018 70521 -1 146 8 38 38 3136 964 0 0 3136 964 38 38 0 0 178 164 0 0 231 216 0 0 38 38 0 0 1158 286 0 0 1493 222 0 0 38 0 0 0 0 0 38 0 0 0.942216 0.942216 -10.8769 -0.942216 0 0 376052. 1301.22 0.13 0.00 0.05 -1 -1 0.13 0.000637288 0.00055024 5 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_004bits.v common 3.17 vpr 62.88 MiB -1 -1 0.07 19708 1 0.01 -1 -1 32964 -1 -1 1 9 0 0 exited with return code 2 v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64392 9 5 34 35 1 17 15 17 17 289 -1 unnamed_device 24.4 MiB 0.01 35 62.9 MiB 0.00 0.00 0.712895 -8.47096 -0.712895 0.712895 1.05 2.1394e-05 1.5874e-05 0.00083861 0.000653329 18 149 17 6.99608e+06 14715.7 376052. 1301.22 0.42 0.00205775 0.00167702 22882 88689 -1 -1 -1 363 363 733654 210989 0 0 733654 210989 363 363 0 0 1159 842 0 0 7695 1263 0 0 363 363 0 0 514294 99963 0 0 209780 108195 0 0 363 0 0 0 0 0 363 0 0 -1 -1 -1 -1 -1 -1 -1 -1 0.16 0.14 0.06 -1 -1 0.16 -1 -1 7 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_005bits.v common 3.04 vpr 62.69 MiB -1 -1 0.06 19952 1 0.00 -1 -1 32700 -1 -1 1 11 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64196 11 6 41 42 1 20 18 17 17 289 -1 unnamed_device 24.2 MiB 0.01 46 62.7 MiB 0.00 0.00 0.837432 -11.8241 -0.837432 0.837432 0.82 2.2253e-05 1.6154e-05 0.000663897 0.000529632 28 146 5 6.99608e+06 14715.7 531479. 1839.03 0.57 0.00358838 0.0029183 24610 126494 -1 143 6 41 41 3002 931 0 0 3002 931 41 41 0 0 176 156 0 0 224 196 0 0 41 41 0 0 1147 256 0 0 1373 241 0 0 41 0 0 0 0 0 41 0 0 0.837432 0.837432 -14.0795 -0.837432 0 0 648988. 2245.63 0.23 0.00 0.08 -1 -1 0.23 0.000838838 0.000749994 8 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_006bits.v common 3.40 vpr 62.94 MiB -1 -1 0.07 19916 1 0.01 -1 -1 32904 -1 -1 2 13 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64452 13 7 48 49 1 25 22 17 17 289 -1 unnamed_device 24.4 MiB 0.01 63 62.9 MiB 0.01 0.00 0.699132 -12.7017 -0.699132 0.699132 0.80 2.8326e-05 2.1437e-05 0.00140711 0.00109842 20 188 11 6.99608e+06 29431.4 414966. 1435.87 1.00 0.00882818 0.00707052 23170 95770 -1 163 11 108 108 5539 1901 0 0 5539 1901 108 108 0 0 432 373 0 0 537 468 0 0 108 108 0 0 1851 481 0 0 2503 363 0 0 108 0 0 0 0 0 108 0 0 0.74674 0.74674 -14.8318 -0.74674 0 0 503264. 1741.40 0.17 0.00 0.06 -1 -1 0.17 0.00116341 0.00101702 10 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_007bits.v common 4.57 vpr 62.70 MiB -1 -1 0.06 20156 1 0.00 -1 -1 32888 -1 -1 2 15 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64200 15 8 55 56 1 32 25 17 17 289 -1 unnamed_device 24.1 MiB 0.01 81 62.7 MiB 0.01 0.00 0.859432 -15.6972 -0.859432 0.859432 0.76 2.7965e-05 2.0756e-05 0.0010553 0.000836151 26 255 12 6.99608e+06 29431.4 503264. 1741.40 1.74 0.0115092 0.00927422 24322 120374 -1 229 12 151 151 13146 4002 0 0 13146 4002 151 151 0 0 653 566 0 0 892 750 0 0 151 151 0 0 4861 1308 0 0 6438 1076 0 0 151 0 0 0 0 0 151 0 0 0.99734 0.99734 -19.4185 -0.99734 0 0 618332. 2139.56 0.22 0.01 0.09 -1 -1 0.22 0.00138874 0.00120173 11 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_008bits.v common 4.09 vpr 62.80 MiB -1 -1 0.07 19856 1 0.01 -1 -1 33020 -1 -1 2 17 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64308 17 9 62 63 1 36 28 17 17 289 -1 unnamed_device 24.1 MiB 0.01 100 62.8 MiB 0.01 0.00 0.710132 -15.8578 -0.710132 0.710132 0.78 3.2491e-05 2.4159e-05 0.00105742 0.000816533 36 230 21 6.99608e+06 29431.4 648988. 2245.63 1.73 0.0143474 0.0115451 26050 158493 -1 224 14 186 186 8873 3042 0 0 8873 3042 186 186 0 0 735 629 0 0 1030 840 0 0 186 186 0 0 3283 602 0 0 3453 599 0 0 186 0 0 0 0 0 186 0 0 1.07503 1.07503 -19.8204 -1.07503 0 0 828058. 2865.25 0.28 0.01 0.10 -1 -1 0.28 0.00185702 0.00162904 13 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_009bits.v common 4.88 vpr 62.60 MiB -1 -1 0.07 20080 1 0.01 -1 -1 32720 -1 -1 2 19 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64104 19 10 69 70 1 44 31 17 17 289 -1 unnamed_device 24.2 MiB 0.01 116 62.6 MiB 0.01 0.00 0.743132 -18.2879 -0.743132 0.743132 0.75 3.5188e-05 2.685e-05 0.00129422 0.00103082 30 416 14 6.99608e+06 29431.4 556674. 1926.21 2.33 0.0110753 0.00895514 25186 138497 -1 318 14 214 214 12527 3787 0 0 12527 3787 214 214 0 0 763 628 0 0 1020 816 0 0 214 214 0 0 4509 954 0 0 5807 961 0 0 214 0 0 0 0 0 214 0 0 0.973679 0.973679 -24.4206 -0.973679 0 0 706193. 2443.58 0.26 0.01 0.23 -1 -1 0.26 0.00196644 0.00172217 14 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_010bits.v common 4.90 vpr 62.70 MiB -1 -1 0.07 19828 1 0.00 -1 -1 32824 -1 -1 2 21 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64200 21 11 76 77 1 49 34 17 17 289 -1 unnamed_device 24.2 MiB 0.01 128 62.7 MiB 0.01 0.00 0.732132 -20.0804 -0.732132 0.732132 0.77 3.9502e-05 3.0291e-05 0.00150579 0.00120551 34 442 39 6.99608e+06 29431.4 618332. 2139.56 2.31 0.0181121 0.0147241 25762 151098 -1 359 16 287 287 17623 5297 0 0 17623 5297 287 287 0 0 1013 850 0 0 1544 1122 0 0 287 287 0 0 6322 1508 0 0 8170 1243 0 0 287 0 0 0 0 0 287 0 0 1.08603 1.08603 -25.9857 -1.08603 0 0 787024. 2723.27 0.40 0.01 0.13 -1 -1 0.40 0.00213433 0.00184835 16 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_011bits.v common 4.88 vpr 62.78 MiB -1 -1 0.07 19920 1 0.01 -1 -1 32836 -1 -1 3 23 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64284 23 12 83 84 1 54 38 17 17 289 -1 unnamed_device 24.3 MiB 0.01 263 62.8 MiB 0.01 0.00 0.834592 -24.7199 -0.834592 0.834592 0.76 4.3525e-05 3.2374e-05 0.00171758 0.00137872 34 620 15 6.99608e+06 44147 618332. 2139.56 2.11 0.0160455 0.0131479 25762 151098 -1 559 13 220 220 19730 4552 0 0 19730 4552 220 220 0 0 821 677 0 0 1226 951 0 0 220 220 0 0 8623 1208 0 0 8620 1276 0 0 220 0 0 0 0 0 220 0 0 1.08603 1.08603 -32.2403 -1.08603 0 0 787024. 2723.27 0.27 0.01 0.10 -1 -1 0.27 0.00208377 0.0018335 17 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_012bits.v common 4.31 vpr 62.93 MiB -1 -1 0.08 19692 1 0.01 -1 -1 33028 -1 -1 3 25 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64444 25 13 90 91 1 60 41 17 17 289 -1 unnamed_device 24.5 MiB 0.01 197 62.9 MiB 0.01 0.00 0.765132 -24.2158 -0.765132 0.765132 0.98 4.2935e-05 3.3112e-05 0.00148999 0.00121165 26 723 17 6.99608e+06 44147 503264. 1741.40 1.69 0.0150449 0.0123237 24322 120374 -1 572 14 334 334 29884 8481 0 0 29884 8481 334 334 0 0 1334 1182 0 0 2034 1559 0 0 334 334 0 0 12169 2300 0 0 13679 2772 0 0 334 0 0 0 0 0 334 0 0 1.15398 1.15398 -37.0055 -1.15398 0 0 618332. 2139.56 0.21 0.01 0.08 -1 -1 0.21 0.00241772 0.00212353 19 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_013bits.v common 3.68 vpr 62.68 MiB -1 -1 0.07 20020 1 0.01 -1 -1 33028 -1 -1 3 27 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64188 27 14 97 98 1 66 44 17 17 289 -1 unnamed_device 24.2 MiB 0.01 432 62.7 MiB 0.01 0.00 0.787132 -33.7773 -0.787132 0.787132 0.76 4.7229e-05 3.7086e-05 0.00198104 0.00163001 34 884 12 6.99608e+06 44147 618332. 2139.56 1.10 0.0146612 0.0121414 25762 151098 -1 840 16 358 358 37993 7912 0 0 37993 7912 358 358 0 0 1280 1113 0 0 2182 1549 0 0 358 358 0 0 17105 2374 0 0 16710 2160 0 0 358 0 0 0 0 0 358 0 0 1.15203 1.15203 -43.3033 -1.15203 0 0 787024. 2723.27 0.40 0.01 0.14 -1 -1 0.40 0.00282319 0.00246392 20 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_014bits.v common 4.54 vpr 63.02 MiB -1 -1 0.07 19872 1 0.00 -1 -1 33120 -1 -1 4 29 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64532 29 15 104 105 1 72 48 17 17 289 -1 unnamed_device 24.4 MiB 0.01 521 63.0 MiB 0.01 0.00 0.798132 -35.6277 -0.798132 0.798132 0.78 5.1493e-05 4.0522e-05 0.00249584 0.00183271 34 972 14 6.99608e+06 58862.7 618332. 2139.56 1.94 0.0252505 0.0208742 25762 151098 -1 914 14 353 353 38898 8040 0 0 38898 8040 353 353 0 0 1347 1166 0 0 1991 1534 0 0 353 353 0 0 18805 2274 0 0 16049 2360 0 0 353 0 0 0 0 0 353 0 0 1.13003 1.13003 -46.7311 -1.13003 0 0 787024. 2723.27 0.27 0.01 0.12 -1 -1 0.27 0.00269864 0.00238043 23 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_015bits.v common 4.57 vpr 62.97 MiB -1 -1 0.08 20324 1 0.01 -1 -1 32992 -1 -1 3 31 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64480 31 16 111 112 1 78 50 17 17 289 -1 unnamed_device 24.4 MiB 0.02 266 63.0 MiB 0.02 0.00 1.04416 -32.4115 -1.04416 1.04416 0.83 5.7979e-05 4.5419e-05 0.00356962 0.00292961 30 879 32 6.99608e+06 44147 556674. 1926.21 1.95 0.0264354 0.022097 25186 138497 -1 550 14 360 360 19919 5402 0 0 19919 5402 360 360 0 0 1199 1041 0 0 1747 1270 0 0 360 360 0 0 7807 1227 0 0 8446 1144 0 0 360 0 0 0 0 0 360 0 0 1.16103 1.16103 -40.7421 -1.16103 0 0 706193. 2443.58 0.24 0.01 0.09 -1 -1 0.24 0.00291894 0.00258425 24 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_016bits.v common 3.81 vpr 62.94 MiB -1 -1 0.06 20092 1 0.01 -1 -1 32900 -1 -1 4 33 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64452 33 17 118 119 1 81 54 17 17 289 -1 unnamed_device 24.3 MiB 0.02 280 62.9 MiB 0.02 0.00 1.05516 -34.379 -1.05516 1.05516 0.90 5.965e-05 4.6796e-05 0.00358087 0.00289246 34 801 16 6.99608e+06 58862.7 618332. 2139.56 1.02 0.0163016 0.0136407 25762 151098 -1 613 18 394 394 36074 9197 0 0 36074 9197 394 394 0 0 1525 1370 0 0 2626 1839 0 0 394 394 0 0 14799 2646 0 0 16336 2554 0 0 394 0 0 0 0 0 394 0 0 1.34133 1.34133 -48.4889 -1.34133 0 0 787024. 2723.27 0.26 0.01 0.09 -1 -1 0.26 0.00364797 0.00321321 25 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_018bits.v common 3.83 vpr 63.00 MiB -1 -1 0.08 20320 1 0.01 -1 -1 32732 -1 -1 4 37 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64516 37 19 132 133 1 87 60 17 17 289 -1 unnamed_device 24.6 MiB 0.02 365 63.0 MiB 0.02 0.00 1.08816 -40.2538 -1.08816 1.08816 0.77 7.3611e-05 5.9625e-05 0.00445878 0.00364622 34 1005 50 6.99608e+06 58862.7 618332. 2139.56 1.25 0.0233505 0.019594 25762 151098 -1 767 14 430 430 39121 9099 0 0 39121 9099 430 430 0 0 1506 1316 0 0 2328 1702 0 0 430 430 0 0 16522 2782 0 0 17905 2439 0 0 430 0 0 0 0 0 430 0 0 1.24903 1.24903 -54.0538 -1.24903 0 0 787024. 2723.27 0.40 0.01 0.09 -1 -1 0.40 0.00345785 0.00308041 28 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_020bits.v common 3.84 vpr 63.11 MiB -1 -1 0.08 20136 1 0.01 -1 -1 32908 -1 -1 4 41 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64620 41 21 146 147 1 94 66 17 17 289 -1 unnamed_device 24.7 MiB 0.02 346 63.1 MiB 0.02 0.00 1.09916 -44.1677 -1.09916 1.09916 0.86 7.3764e-05 5.8453e-05 0.00475998 0.003878 34 1110 29 6.99608e+06 58862.7 618332. 2139.56 1.11 0.0232789 0.0196588 25762 151098 -1 792 21 529 529 52785 12921 0 0 52785 12921 529 529 0 0 1935 1691 0 0 3360 2202 0 0 529 529 0 0 22434 4042 0 0 23998 3928 0 0 529 0 0 0 0 0 529 0 0 1.19403 1.19403 -56.5346 -1.19403 0 0 787024. 2723.27 0.36 0.02 0.10 -1 -1 0.36 0.00481206 0.00424912 31 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_022bits.v common 5.37 vpr 63.21 MiB -1 -1 0.07 20240 1 0.01 -1 -1 33212 -1 -1 5 45 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64732 45 23 160 161 1 107 73 17 17 289 -1 unnamed_device 24.7 MiB 0.02 464 63.2 MiB 0.07 0.00 1.12116 -49.1907 -1.12116 1.12116 0.79 8.9899e-05 7.3912e-05 0.0163892 0.0152992 30 1288 29 6.99608e+06 73578.4 556674. 1926.21 2.80 0.0552934 0.0485105 25186 138497 -1 870 15 626 626 54005 16626 0 0 54005 16626 626 626 0 0 2308 2050 0 0 3076 2432 0 0 626 626 0 0 23493 5643 0 0 23876 5249 0 0 626 0 0 0 0 0 626 0 0 1.29498 1.29498 -67.0436 -1.29498 0 0 706193. 2443.58 0.24 0.02 0.09 -1 -1 0.24 0.00471483 0.00423295 34 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_024bits.v common 4.13 vpr 63.23 MiB -1 -1 0.08 20364 1 0.01 -1 -1 33036 -1 -1 5 49 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64752 49 25 174 175 1 118 79 17 17 289 -1 unnamed_device 24.8 MiB 0.02 443 63.2 MiB 0.04 0.00 1.14316 -53.0048 -1.14316 1.14316 0.76 9.6691e-05 7.877e-05 0.00693051 0.00568162 36 1373 24 6.99608e+06 73578.4 648988. 2245.63 1.39 0.0306227 0.026151 26050 158493 -1 1004 17 635 635 54060 13300 0 0 54060 13300 635 635 0 0 2284 1970 0 0 3626 2595 0 0 635 635 0 0 22713 3786 0 0 24167 3679 0 0 635 0 0 0 0 0 635 0 0 1.33033 1.33033 -69.9442 -1.33033 0 0 828058. 2865.25 0.28 0.02 0.10 -1 -1 0.28 0.00501991 0.0044766 37 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_028bits.v common 4.43 vpr 63.38 MiB -1 -1 0.08 20424 1 0.00 -1 -1 33096 -1 -1 6 57 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64900 57 29 202 203 1 141 92 17 17 289 -1 unnamed_device 24.8 MiB 0.03 563 63.4 MiB 0.04 0.00 1.18716 -62.7696 -1.18716 1.18716 0.78 0.000125862 0.000102292 0.00818708 0.0067827 40 1524 35 6.99608e+06 88294.1 706193. 2443.58 1.79 0.04703 0.0402429 26914 176310 -1 1229 17 847 847 85010 21210 0 0 85010 21210 847 847 0 0 3125 2723 0 0 5338 3738 0 0 847 847 0 0 36068 6649 0 0 38785 6406 0 0 847 0 0 0 0 0 847 0 0 1.35618 1.35618 -82.1548 -1.35618 0 0 926341. 3205.33 0.32 0.03 0.12 -1 -1 0.32 0.0064501 0.00580517 43 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_032bits.v common 4.85 vpr 63.63 MiB -1 -1 0.08 20208 1 0.01 -1 -1 33020 -1 -1 7 65 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65156 65 33 230 231 1 162 105 17 17 289 -1 unnamed_device 25.2 MiB 0.03 752 63.6 MiB 0.05 0.00 1.47719 -78.6599 -1.47719 1.47719 0.76 0.00012519 0.000102335 0.00907963 0.00750609 38 1746 50 6.99608e+06 103010 678818. 2348.85 1.96 0.0582654 0.0503493 26626 170182 -1 1428 16 820 820 80240 18069 0 0 80240 18069 820 820 0 0 2910 2541 0 0 4646 3301 0 0 820 820 0 0 36579 5180 0 0 34465 5407 0 0 820 0 0 0 0 0 820 0 0 1.44933 1.44933 -98.3496 -1.44933 0 0 902133. 3121.57 0.39 0.02 0.11 -1 -1 0.39 0.00673128 0.00605421 49 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_048bits.v common 7.10 vpr 64.55 MiB -1 -1 0.09 20420 1 0.02 -1 -1 33236 -1 -1 10 97 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66096 97 49 342 343 1 243 156 17 17 289 -1 unnamed_device 25.8 MiB 0.11 1410 64.5 MiB 0.09 0.00 1.88822 -134.864 -1.88822 1.88822 0.89 0.000227693 0.000195479 0.0164655 0.0141915 52 2729 18 6.99608e+06 147157 926341. 3205.33 4.01 0.10151 0.089571 29218 227130 -1 2302 17 987 987 106104 21984 0 0 106104 21984 987 987 0 0 3540 2987 0 0 5567 4050 0 0 987 987 0 0 46175 6716 0 0 48848 6257 0 0 987 0 0 0 0 0 987 0 0 1.50903 1.50903 -150.391 -1.50903 0 0 1.14541e+06 3963.36 0.39 0.04 0.15 -1 -1 0.39 0.0115392 0.0105572 73 -1 -1 -1 -1 -1 - fixed_k6_frac_2uripple_N8_22nm.xml adder_064bits.v common 5.35 vpr 64.95 MiB -1 -1 0.09 20576 1 0.02 -1 -1 33472 -1 -1 13 129 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66504 129 65 454 455 1 324 207 17 17 289 -1 unnamed_device 26.2 MiB 0.06 2173 64.9 MiB 0.14 0.00 2.29925 -202.532 -2.29925 2.29925 0.86 0.000324211 0.000283473 0.0232953 0.0204609 52 3996 46 6.99608e+06 191304 926341. 3205.33 2.16 0.118497 0.106431 29218 227130 -1 3449 17 1441 1441 174648 34761 0 0 174648 34761 1441 1441 0 0 4961 4284 0 0 8691 5753 0 0 1441 1441 0 0 83299 10413 0 0 74815 11429 0 0 1441 0 0 0 0 0 1441 0 0 1.77103 1.77103 -220.94 -1.77103 0 0 1.14541e+06 3963.36 0.40 0.06 0.16 -1 -1 0.40 0.0174204 0.0160875 97 -1 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_003bits.v common 3.03 vpr 61.98 MiB -1 -1 0.06 20020 1 0.03 -1 -1 35380 -1 -1 1 7 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63464 7 4 21 25 1 11 12 17 17 289 -1 unnamed_device 23.6 MiB 0.00 64 62.0 MiB 0.01 0.00 0.942216 -7.18451 -0.942216 0.942216 1.03 1.9809e-05 1.2823e-05 0.000201231 0.000169788 18 95 2 6.79088e+06 13472 376052. 1301.22 0.42 0.000744669 0.000646915 22222 88205 -1 93 2 12 12 598 176 0 0 598 176 12 12 0 0 47 30 0 0 58 47 0 0 12 12 0 0 267 37 0 0 202 38 0 0 12 0 0 0 0 0 12 0 0 0.942216 0.942216 -7.93631 -0.942216 0 0 470940. 1629.55 0.16 0.00 0.06 -1 -1 0.16 0.000485788 0.000437432 6 4 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_004bits.v common 3.15 vpr 62.24 MiB -1 -1 0.07 19800 2 0.03 -1 -1 35172 -1 -1 1 9 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63732 9 5 28 33 1 16 15 17 17 289 -1 unnamed_device 23.8 MiB 0.01 35 62.2 MiB 0.00 0.00 0.883748 -8.8411 -0.883748 0.883748 0.87 2.047e-05 1.4909e-05 0.000776618 0.000603557 24 114 7 6.79088e+06 13472 470940. 1629.55 0.59 0.00332163 0.00264848 23374 113417 -1 87 8 46 46 1300 526 0 0 1300 526 46 46 0 0 161 118 0 0 230 182 0 0 46 46 0 0 335 102 0 0 482 32 0 0 46 0 0 0 0 0 46 0 0 0.883748 0.883748 -9.5929 -0.883748 0 0 586450. 2029.24 0.20 0.00 0.07 -1 -1 0.20 0.000789424 0.000694047 8 6 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_005bits.v common 3.93 vpr 61.99 MiB -1 -1 0.07 19784 2 0.03 -1 -1 35132 -1 -1 2 11 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63476 11 6 34 40 1 23 19 17 17 289 -1 unnamed_device 23.6 MiB 0.01 59 62.0 MiB 0.00 0.00 1.02368 -11.2072 -1.02368 1.02368 0.76 2.2705e-05 1.6338e-05 0.000610891 0.000491717 22 190 13 6.79088e+06 26944 443629. 1535.05 1.53 0.00717227 0.00571703 22798 101617 -1 167 8 60 68 3327 1053 0 0 3327 1053 68 62 0 0 237 201 0 0 320 257 0 0 68 63 0 0 1166 253 0 0 1468 217 0 0 68 0 0 8 6 2 100 0 0 1.02368 1.02368 -14.4258 -1.02368 0 0 531479. 1839.03 0.19 0.00 0.09 -1 -1 0.19 0.000946106 0.000837631 10 7 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_006bits.v common 4.32 vpr 61.94 MiB -1 -1 0.07 19868 3 0.03 -1 -1 35156 -1 -1 2 13 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63424 13 7 41 48 1 30 22 17 17 289 -1 unnamed_device 23.5 MiB 0.01 86 61.9 MiB 0.00 0.00 1.05944 -13.8628 -1.05944 1.05944 0.91 2.5001e-05 1.8634e-05 0.000577402 0.000472423 26 235 8 6.79088e+06 26944 503264. 1741.40 1.78 0.00807482 0.00650366 23662 119890 -1 214 10 93 97 5083 1675 0 0 5083 1675 97 94 0 0 387 332 0 0 546 451 0 0 97 96 0 0 1821 344 0 0 2135 358 0 0 97 0 0 4 2 2 113 0 0 1.05944 1.05944 -17.4181 -1.05944 0 0 618332. 2139.56 0.21 0.00 0.13 -1 -1 0.21 0.00116519 0.00102848 11 9 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_007bits.v common 4.46 vpr 62.21 MiB -1 -1 0.07 19808 3 0.03 -1 -1 35356 -1 -1 2 15 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63708 15 8 47 55 1 36 25 17 17 289 -1 unnamed_device 23.7 MiB 0.01 90 62.2 MiB 0.01 0.00 1.13784 -16.3026 -1.13784 1.13784 0.85 2.9669e-05 2.2385e-05 0.00114849 0.00091185 26 340 10 6.79088e+06 26944 503264. 1741.40 1.96 0.00799352 0.00651583 23662 119890 -1 271 10 158 179 7439 2692 0 0 7439 2692 179 170 0 0 633 515 0 0 1003 774 0 0 179 172 0 0 2354 582 0 0 3091 479 0 0 179 0 0 21 11 19 272 0 0 1.13784 1.13784 -19.2706 -1.13784 0 0 618332. 2139.56 0.21 0.01 0.07 -1 -1 0.21 0.00136675 0.00121308 13 10 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_008bits.v common 4.26 vpr 62.33 MiB -1 -1 0.08 20036 3 0.04 -1 -1 35440 -1 -1 2 17 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63828 17 9 56 65 1 43 28 17 17 289 -1 unnamed_device 23.8 MiB 0.04 259 62.3 MiB 0.01 0.00 1.27433 -22.4371 -1.27433 1.27433 0.89 3.6666e-05 2.8066e-05 0.00122118 0.000992798 28 512 12 6.79088e+06 26944 531479. 1839.03 1.58 0.0115094 0.00944994 23950 126010 -1 498 12 197 236 21242 4861 0 0 21242 4861 236 223 0 0 897 772 0 0 1405 1066 0 0 236 225 0 0 9541 1211 0 0 8927 1364 0 0 236 0 0 39 27 39 439 0 0 1.27433 1.27433 -27.1593 -1.27433 0 0 648988. 2245.63 0.34 0.01 0.11 -1 -1 0.34 0.00181355 0.00161511 16 14 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_009bits.v common 4.41 vpr 62.14 MiB -1 -1 0.06 19736 4 0.03 -1 -1 35176 -1 -1 3 19 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63628 19 10 60 70 1 49 32 17 17 289 -1 unnamed_device 23.6 MiB 0.04 132 62.1 MiB 0.01 0.00 1.1736 -20.6259 -1.1736 1.1736 0.94 3.8086e-05 2.9079e-05 0.00176592 0.00140821 28 481 45 6.79088e+06 40416 531479. 1839.03 1.68 0.0183592 0.014997 23950 126010 -1 400 12 244 254 15313 4813 0 0 15313 4813 254 247 0 0 942 829 0 0 1366 1088 0 0 254 249 0 0 5927 1210 0 0 6570 1190 0 0 254 0 0 10 11 14 309 0 0 1.34919 1.34919 -26.2115 -1.34919 0 0 648988. 2245.63 0.23 0.01 0.08 -1 -1 0.23 0.0018321 0.00161759 17 13 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_010bits.v common 3.33 vpr 62.32 MiB -1 -1 0.07 20024 4 0.04 -1 -1 35112 -1 -1 3 21 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63816 21 11 69 80 1 55 35 17 17 289 -1 unnamed_device 24.0 MiB 0.16 159 62.3 MiB 0.01 0.00 1.60338 -26.0076 -1.60338 1.60338 0.86 4.1426e-05 3.185e-05 0.00257023 0.00203649 28 598 26 6.79088e+06 40416 531479. 1839.03 0.65 0.0113728 0.00942098 23950 126010 -1 515 14 306 366 20049 6422 0 0 20049 6422 366 322 0 0 1338 1152 0 0 2133 1666 0 0 366 328 0 0 7378 1543 0 0 8468 1411 0 0 366 0 0 60 68 34 648 0 0 1.60338 1.60338 -32.3979 -1.60338 0 0 648988. 2245.63 0.21 0.01 0.08 -1 -1 0.21 0.00236702 0.0020968 21 17 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_011bits.v common 3.50 vpr 62.22 MiB -1 -1 0.06 19928 5 0.05 -1 -1 34624 -1 -1 3 23 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63712 23 12 76 88 1 61 38 17 17 289 -1 unnamed_device 23.8 MiB 0.09 207 62.2 MiB 0.01 0.00 1.67834 -28.9869 -1.67834 1.67834 0.74 5.1262e-05 4.035e-05 0.00223683 0.00184574 34 522 15 6.79088e+06 40416 618332. 2139.56 0.95 0.0145695 0.0121691 25102 150614 -1 468 11 230 278 16053 4659 0 0 16053 4659 278 253 0 0 1097 942 0 0 1629 1299 0 0 278 255 0 0 5566 1086 0 0 7205 824 0 0 278 0 0 48 50 10 490 0 0 1.72519 1.72519 -33.2384 -1.72519 0 0 787024. 2723.27 0.26 0.01 0.09 -1 -1 0.26 0.00239149 0.00215511 22 19 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_012bits.v common 5.09 vpr 62.56 MiB -1 -1 0.07 20084 5 0.04 -1 -1 35100 -1 -1 3 25 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64064 25 13 83 96 1 66 41 17 17 289 -1 unnamed_device 24.1 MiB 0.16 395 62.6 MiB 0.01 0.00 1.67834 -38.0476 -1.67834 1.67834 0.74 5.5477e-05 4.4303e-05 0.00274077 0.00223234 34 812 13 6.79088e+06 40416 618332. 2139.56 2.40 0.0246888 0.0206201 25102 150614 -1 738 13 246 294 19211 4497 0 0 19211 4497 294 262 0 0 1047 834 0 0 1552 1202 0 0 294 266 0 0 8455 942 0 0 7569 991 0 0 294 0 0 48 15 43 496 0 0 1.68948 1.68948 -43.8671 -1.68948 0 0 787024. 2723.27 0.27 0.01 0.09 -1 -1 0.27 0.00273652 0.00244498 23 21 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_013bits.v common 5.11 vpr 62.37 MiB -1 -1 0.08 20104 5 0.05 -1 -1 35212 -1 -1 4 27 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63868 27 14 91 105 1 72 45 17 17 289 -1 unnamed_device 23.9 MiB 0.25 335 62.4 MiB 0.01 0.00 1.81483 -36.8868 -1.81483 1.81483 0.83 5.6195e-05 4.4292e-05 0.00279486 0.00228044 34 748 14 6.79088e+06 53888 618332. 2139.56 2.30 0.022438 0.0188421 25102 150614 -1 687 14 268 365 30390 7128 0 0 30390 7128 365 298 0 0 1304 1088 0 0 2333 1592 0 0 365 304 0 0 13217 1898 0 0 12806 1948 0 0 365 0 0 97 53 100 819 0 0 1.81483 1.81483 -44.0289 -1.81483 0 0 787024. 2723.27 0.36 0.03 0.10 -1 -1 0.36 0.00333413 0.00300244 27 24 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_014bits.v common 4.88 vpr 62.43 MiB -1 -1 0.08 20380 6 0.04 -1 -1 35156 -1 -1 4 29 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63924 29 15 95 110 1 77 48 17 17 289 -1 unnamed_device 23.9 MiB 0.18 230 62.4 MiB 0.02 0.00 2.06549 -38.9139 -2.06549 2.06549 1.00 6.3924e-05 5.1345e-05 0.00370408 0.00305221 30 764 49 6.79088e+06 53888 556674. 1926.21 2.01 0.0289213 0.0242351 24526 138013 -1 573 27 408 477 81681 51038 0 0 81681 51038 477 426 0 0 1665 1460 0 0 3766 2607 0 0 477 431 0 0 39220 23780 0 0 36076 22334 0 0 477 0 0 69 73 42 799 0 0 2.06549 2.06549 -45.9307 -2.06549 0 0 706193. 2443.58 0.24 0.03 0.09 -1 -1 0.24 0.00477458 0.00417776 28 23 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_015bits.v common 4.23 vpr 62.51 MiB -1 -1 0.08 20168 6 0.04 -1 -1 35164 -1 -1 5 31 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64012 31 16 104 120 1 82 52 17 17 289 -1 unnamed_device 24.0 MiB 0.34 239 62.5 MiB 0.01 0.00 2.14389 -42.4289 -2.14389 2.14389 0.91 6.2211e-05 4.9396e-05 0.00307133 0.00254929 36 728 50 6.79088e+06 67360 648988. 2245.63 1.20 0.0218706 0.0183596 25390 158009 -1 591 16 393 555 31490 10203 0 0 31490 10203 555 414 0 0 1900 1620 0 0 3029 2216 0 0 555 426 0 0 12377 2741 0 0 13074 2786 0 0 555 0 0 162 183 105 1417 0 0 2.31598 2.31598 -50.8908 -2.31598 0 0 828058. 2865.25 0.33 0.01 0.13 -1 -1 0.33 0.00374942 0.00333443 31 27 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_016bits.v common 4.12 vpr 62.59 MiB -1 -1 0.08 20212 7 0.04 -1 -1 35228 -1 -1 5 33 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64092 33 17 112 129 1 88 55 17 17 289 -1 unnamed_device 24.2 MiB 0.62 556 62.6 MiB 0.03 0.00 2.39454 -57.2401 -2.39454 2.39454 0.90 6.9486e-05 5.5494e-05 0.0052807 0.00434155 34 1114 15 6.79088e+06 67360 618332. 2139.56 0.97 0.0232246 0.0195951 25102 150614 -1 1022 12 344 445 36019 8191 0 0 36019 8191 445 386 0 0 1661 1390 0 0 2726 2004 0 0 445 406 0 0 15886 2038 0 0 14856 1967 0 0 445 0 0 101 98 86 978 0 0 2.39454 2.39454 -63.3406 -2.39454 0 0 787024. 2723.27 0.26 0.01 0.09 -1 -1 0.26 0.00386796 0.00348179 32 30 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_018bits.v common 5.67 vpr 62.75 MiB -1 -1 0.09 20104 7 0.05 -1 -1 35396 -1 -1 6 37 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64252 37 19 127 146 1 99 62 17 17 289 -1 unnamed_device 24.3 MiB 1.09 365 62.7 MiB 0.01 0.00 3.00001 -61.4437 -3.00001 3.00001 0.83 8.5815e-05 7.0265e-05 0.00306396 0.00260118 26 1105 46 6.79088e+06 80832 503264. 1741.40 1.92 0.0282967 0.0242808 23662 119890 -1 926 11 377 462 28459 8277 0 0 28459 8277 462 398 0 0 1697 1397 0 0 2671 1933 0 0 462 416 0 0 10525 1976 0 0 12642 2157 0 0 462 0 0 85 83 67 867 0 0 3.12531 3.12531 -73.5978 -3.12531 0 0 618332. 2139.56 0.39 0.01 0.07 -1 -1 0.39 0.00434328 0.003977 37 35 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_020bits.v common 3.68 vpr 62.73 MiB -1 -1 0.08 20252 8 0.04 -1 -1 35124 -1 -1 6 41 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64236 41 21 139 160 1 106 68 17 17 289 -1 unnamed_device 24.2 MiB 0.40 488 62.7 MiB 0.02 0.00 2.60599 -64.8181 -2.60599 2.60599 0.76 8.913e-05 7.241e-05 0.0036273 0.00305602 30 1266 30 6.79088e+06 80832 556674. 1926.21 0.72 0.0213524 0.0183555 24526 138013 -1 1073 14 469 593 48159 11835 0 0 48159 11835 593 505 0 0 2071 1777 0 0 3262 2422 0 0 593 510 0 0 20031 3313 0 0 21609 3308 0 0 593 0 0 124 72 141 1194 0 0 2.60599 2.60599 -77.3481 -2.60599 0 0 706193. 2443.58 0.34 0.02 0.10 -1 -1 0.34 0.00475294 0.00430766 41 37 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_022bits.v common 3.99 vpr 62.74 MiB -1 -1 0.09 20356 9 0.05 -1 -1 35024 -1 -1 6 45 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64244 45 23 153 176 1 119 74 17 17 289 -1 unnamed_device 24.2 MiB 0.36 488 62.7 MiB 0.03 0.00 2.98195 -75.096 -2.98195 2.98195 0.74 9.6051e-05 7.7368e-05 0.00623628 0.00517535 34 1162 32 6.79088e+06 80832 618332. 2139.56 1.15 0.0297926 0.0256582 25102 150614 -1 990 16 406 495 33959 8793 0 0 33959 8793 495 427 0 0 1816 1562 0 0 2740 2082 0 0 495 434 0 0 14526 2117 0 0 13887 2171 0 0 495 0 0 89 55 87 932 0 0 2.98195 2.98195 -85.582 -2.98195 0 0 787024. 2723.27 0.27 0.02 0.10 -1 -1 0.27 0.00546738 0.00492702 43 41 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_024bits.v common 6.90 vpr 62.95 MiB -1 -1 0.09 20220 10 0.05 -1 -1 35404 -1 -1 8 49 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64460 49 25 166 191 1 133 82 17 17 289 -1 unnamed_device 24.5 MiB 0.84 417 62.9 MiB 0.03 0.00 3.1857 -81.7769 -3.1857 3.1857 0.75 0.000103454 8.3196e-05 0.00726505 0.00608279 42 1223 42 6.79088e+06 107776 744469. 2576.02 3.29 0.0624513 0.0534964 26542 182613 -1 859 23 591 687 90067 46576 0 0 90067 46576 687 630 0 0 2513 2199 0 0 4921 3565 0 0 687 643 0 0 41151 19783 0 0 40108 19756 0 0 687 0 0 96 66 111 1152 0 0 3.1857 3.1857 -88.1672 -3.1857 0 0 949917. 3286.91 0.40 0.03 0.12 -1 -1 0.40 0.0078382 0.00702426 48 44 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_028bits.v common 7.03 vpr 62.95 MiB -1 -1 0.09 20144 11 0.05 -1 -1 35176 -1 -1 8 57 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64464 57 29 198 227 1 158 94 17 17 289 -1 unnamed_device 24.3 MiB 1.13 739 63.0 MiB 0.04 0.00 3.77654 -110.336 -3.77654 3.77654 0.75 0.000255203 0.000231613 0.00933438 0.00797875 36 1787 26 6.79088e+06 107776 648988. 2245.63 3.24 0.0682585 0.0599672 25390 158009 -1 1554 13 630 871 61399 14860 0 0 61399 14860 871 705 0 0 3124 2676 0 0 5165 3653 0 0 871 734 0 0 24111 3763 0 0 27257 3329 0 0 871 0 0 241 215 206 2097 0 0 3.90184 3.90184 -126.336 -3.90184 0 0 828058. 2865.25 0.25 0.02 0.10 -1 -1 0.25 0.00669981 0.00613233 59 56 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_032bits.v common 5.92 vpr 63.09 MiB -1 -1 0.08 20404 13 0.06 -1 -1 35196 -1 -1 9 65 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64600 65 33 224 257 1 176 107 17 17 289 -1 unnamed_device 24.6 MiB 1.38 978 63.1 MiB 0.06 0.00 4.44928 -138.947 -4.44928 4.44928 0.76 0.000147123 0.000121454 0.0121151 0.0101285 30 2113 19 6.79088e+06 121248 556674. 1926.21 2.04 0.0628112 0.054227 24526 138013 -1 1752 13 638 823 49472 12407 0 0 49472 12407 823 674 0 0 2898 2408 0 0 3942 3063 0 0 823 688 0 0 20657 2738 0 0 20329 2836 0 0 823 0 0 185 90 204 1680 0 0 4.44928 4.44928 -153.106 -4.44928 0 0 706193. 2443.58 0.24 0.02 0.08 -1 -1 0.24 0.00781818 0.00712236 66 62 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_048bits.v common 7.31 vpr 64.07 MiB -1 -1 0.12 20652 19 0.09 -1 -1 35224 -1 -1 13 97 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65608 97 49 340 389 1 267 159 17 17 289 -1 unnamed_device 25.4 MiB 2.73 1350 64.1 MiB 0.07 0.00 6.71973 -260.111 -6.71973 6.71973 0.79 0.000258713 0.000219546 0.0142828 0.0123068 34 3400 44 6.79088e+06 175136 618332. 2139.56 1.67 0.0869368 0.0775065 25102 150614 -1 2874 14 1086 1469 111661 26701 0 0 111661 26701 1469 1253 0 0 5301 4488 0 0 8750 6399 0 0 1469 1279 0 0 47799 6473 0 0 46873 6809 0 0 1469 0 0 383 322 371 3389 0 0 6.80583 6.80583 -290.76 -6.80583 0 0 787024. 2723.27 0.24 0.04 0.09 -1 -1 0.24 0.0135979 0.0125698 100 98 -1 -1 -1 -1 - fixed_k6_frac_N8_22nm.xml adder_064bits.v common 7.97 vpr 64.83 MiB -1 -1 0.12 21008 26 0.09 -1 -1 35696 -1 -1 18 129 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66384 129 65 453 518 1 350 212 17 17 289 -1 unnamed_device 26.1 MiB 3.61 1996 64.8 MiB 0.16 0.00 9.19737 -440.937 -9.19737 9.19737 0.76 0.000377527 0.000327523 0.0349416 0.0305215 36 4210 30 6.79088e+06 242496 648988. 2245.63 1.37 0.12314 0.110208 25390 158009 -1 3458 13 1274 1710 114779 27867 0 0 114779 27867 1710 1412 0 0 6056 5047 0 0 9571 7081 0 0 1710 1445 0 0 48317 6406 0 0 47415 6476 0 0 1710 0 0 436 312 382 3784 0 0 9.19737 9.19737 -464.618 -9.19737 0 0 828058. 2865.25 0.38 0.04 0.10 -1 -1 0.38 0.0182077 0.0169171 129 131 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_003bits.v common 2.77 vpr 62.43 MiB -1 -1 0.07 19996 1 0.01 -1 -1 32976 -1 -1 1 7 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63924 7 4 27 28 1 13 12 17 17 289 -1 unnamed_device 24.0 MiB 0.02 38 62.4 MiB 0.00 0.00 0.488083 -5.72471 -0.488083 0.488083 0.88 1.8175e-05 1.1892e-05 0.000330992 0.000252048 12 80 4 6.87369e+06 13973.8 243793. 843.575 0.32 0.000971923 0.000804442 21730 64085 -1 89 5 32 32 2061 627 0 0 2061 627 32 32 0 0 135 91 0 0 167 135 0 0 32 32 0 0 698 192 0 0 997 145 0 0 32 0 0 0 0 0 32 0 0 0.74674 0.74674 -7.98012 -0.74674 0 0 332735. 1151.33 0.13 0.00 0.05 -1 -1 0.13 0.000582792 0.000513938 8 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_004bits.v common 3.79 vpr 62.30 MiB -1 -1 0.07 19824 1 0.01 -1 -1 33020 -1 -1 2 9 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63796 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 23.9 MiB 0.03 41 62.3 MiB 0.00 0.00 0.663773 -8.29102 -0.663773 0.663773 0.80 1.9208e-05 1.3724e-05 0.000543111 0.000423266 26 108 8 6.87369e+06 27947.7 503264. 1741.40 1.32 0.0062435 0.00489364 24322 120374 -1 121 11 55 55 3150 1018 0 0 3150 1018 55 55 0 0 218 172 0 0 284 233 0 0 55 55 0 0 1210 264 0 0 1328 239 0 0 55 0 0 0 0 0 55 0 0 0.789073 0.789073 -10.2958 -0.789073 0 0 618332. 2139.56 0.22 0.00 0.08 -1 -1 0.22 0.000885137 0.000758912 10 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_005bits.v common 3.09 vpr 62.52 MiB -1 -1 0.07 20068 1 0.00 -1 -1 33004 -1 -1 3 11 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64024 11 6 41 42 1 27 20 17 17 289 -1 unnamed_device 24.0 MiB 0.04 91 62.5 MiB 0.00 0.00 0.685773 -10.5905 -0.685773 0.685773 0.76 2.3069e-05 1.6448e-05 0.000466995 0.000369053 16 234 10 6.87369e+06 41921.5 332735. 1151.33 0.82 0.00213905 0.00176006 22306 75877 -1 215 10 133 133 7015 2206 0 0 7015 2206 133 133 0 0 480 382 0 0 587 492 0 0 133 133 0 0 2402 566 0 0 3280 500 0 0 133 0 0 0 0 0 133 0 0 1.02867 1.02867 -15.1686 -1.02867 0 0 414966. 1435.87 0.14 0.00 0.05 -1 -1 0.14 0.000957704 0.000820831 13 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_006bits.v common 5.29 vpr 62.68 MiB -1 -1 0.08 20112 1 0.00 -1 -1 32896 -1 -1 3 13 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64188 13 7 48 49 1 33 23 17 17 289 -1 unnamed_device 24.1 MiB 0.04 80 62.7 MiB 0.00 0.00 0.707773 -12.5849 -0.707773 0.707773 0.76 2.4111e-05 1.7871e-05 0.000933683 0.000723202 34 271 33 6.87369e+06 41921.5 618332. 2139.56 2.32 0.0135672 0.0105314 25762 151098 -1 218 20 301 301 17367 5523 0 0 17367 5523 301 301 0 0 1216 1041 0 0 1703 1403 0 0 301 301 0 0 6602 1132 0 0 7244 1345 0 0 301 0 0 0 0 0 301 0 0 0.958373 0.958373 -16.5945 -0.958373 0 0 787024. 2723.27 0.38 0.03 0.10 -1 -1 0.38 0.0125413 0.0122443 15 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_007bits.v common 3.18 vpr 62.59 MiB -1 -1 0.06 20084 1 0.01 -1 -1 33120 -1 -1 3 15 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64092 15 8 55 56 1 39 26 17 17 289 -1 unnamed_device 24.1 MiB 0.08 112 62.6 MiB 0.01 0.00 1.13846 -15.98 -1.13846 1.13846 0.88 2.8794e-05 2.1429e-05 0.00137984 0.00109913 26 304 17 6.87369e+06 41921.5 503264. 1741.40 0.53 0.00588592 0.00475905 24322 120374 -1 240 16 161 161 6837 2474 0 0 6837 2474 161 161 0 0 635 543 0 0 972 778 0 0 161 161 0 0 2371 437 0 0 2537 394 0 0 161 0 0 0 0 0 161 0 0 1.12264 1.12264 -18.7281 -1.12264 0 0 618332. 2139.56 0.21 0.01 0.08 -1 -1 0.21 0.0016185 0.00139953 17 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_008bits.v common 3.22 vpr 62.52 MiB -1 -1 0.06 20144 1 0.01 -1 -1 32924 -1 -1 3 17 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64016 17 9 62 63 1 42 29 17 17 289 -1 unnamed_device 23.9 MiB 0.05 123 62.5 MiB 0.01 0.00 0.964803 -17.8777 -0.964803 0.964803 0.76 3.6032e-05 2.7638e-05 0.00201013 0.00158931 26 319 15 6.87369e+06 41921.5 503264. 1741.40 0.80 0.00757369 0.00594565 24322 120374 -1 286 17 175 175 10718 3393 0 0 10718 3393 175 175 0 0 707 624 0 0 1203 1010 0 0 175 175 0 0 3866 770 0 0 4592 639 0 0 175 0 0 0 0 0 175 0 0 1.20697 1.20697 -23.626 -1.20697 0 0 618332. 2139.56 0.24 0.01 0.11 -1 -1 0.24 0.00214307 0.00187705 18 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_009bits.v common 4.43 vpr 62.43 MiB -1 -1 0.06 19956 1 0.01 -1 -1 33028 -1 -1 3 19 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63932 19 10 69 70 1 45 32 17 17 289 -1 unnamed_device 23.8 MiB 0.05 132 62.4 MiB 0.01 0.00 0.975803 -19.7482 -0.975803 0.975803 0.76 3.987e-05 3.077e-05 0.00229654 0.00183054 28 386 18 6.87369e+06 41921.5 531479. 1839.03 1.90 0.0384589 0.0125133 24610 126494 -1 326 13 214 214 14496 4104 0 0 14496 4104 214 214 0 0 834 733 0 0 1180 973 0 0 214 214 0 0 5524 1084 0 0 6530 886 0 0 214 0 0 0 0 0 214 0 0 1.13667 1.13667 -26.1199 -1.13667 0 0 648988. 2245.63 0.24 0.01 0.08 -1 -1 0.24 0.00174029 0.00151337 20 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_010bits.v common 3.14 vpr 62.82 MiB -1 -1 0.07 19984 1 0.01 -1 -1 32892 -1 -1 3 21 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64324 21 11 76 77 1 48 35 17 17 289 -1 unnamed_device 24.4 MiB 0.05 153 62.8 MiB 0.01 0.00 0.986803 -22.4034 -0.986803 0.986803 0.82 3.8826e-05 2.9667e-05 0.00237388 0.00185956 28 442 24 6.87369e+06 41921.5 531479. 1839.03 0.60 0.00910422 0.00743675 24610 126494 -1 321 19 305 305 15557 4886 0 0 15557 4886 305 305 0 0 1140 991 0 0 1802 1412 0 0 305 305 0 0 5914 905 0 0 6091 968 0 0 305 0 0 0 0 0 305 0 0 1.14767 1.14767 -28.1842 -1.14767 0 0 648988. 2245.63 0.22 0.01 0.08 -1 -1 0.22 0.00232385 0.00199243 22 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_011bits.v common 5.15 vpr 62.88 MiB -1 -1 0.07 20016 1 0.00 -1 -1 32912 -1 -1 4 23 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64392 23 12 83 84 1 53 39 17 17 289 -1 unnamed_device 24.4 MiB 0.05 160 62.9 MiB 0.01 0.00 0.997803 -24.6718 -0.997803 0.997803 1.04 4.1025e-05 3.123e-05 0.00294112 0.00237866 32 451 12 6.87369e+06 55895.4 586450. 2029.24 2.22 0.0138935 0.0113748 25474 144626 -1 401 13 238 238 18203 4910 0 0 18203 4910 238 238 0 0 988 841 0 0 1458 1186 0 0 238 238 0 0 7501 1156 0 0 7780 1251 0 0 238 0 0 0 0 0 238 0 0 1.11467 1.11467 -31.1105 -1.11467 0 0 744469. 2576.02 0.28 0.01 0.09 -1 -1 0.28 0.00198468 0.00173206 24 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_012bits.v common 3.48 vpr 62.82 MiB -1 -1 0.07 19868 1 0.01 -1 -1 32904 -1 -1 4 25 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64328 25 13 90 91 1 60 42 17 17 289 -1 unnamed_device 24.4 MiB 0.05 197 62.8 MiB 0.01 0.00 1.0088 -27.5776 -1.0088 1.0088 0.77 4.5197e-05 3.4592e-05 0.0026224 0.00207088 32 666 20 6.87369e+06 55895.4 586450. 2029.24 0.71 0.0105093 0.00871659 25474 144626 -1 501 17 373 373 32112 8189 0 0 32112 8189 373 373 0 0 1443 1251 0 0 2280 1758 0 0 373 373 0 0 12748 2405 0 0 14895 2029 0 0 373 0 0 0 0 0 373 0 0 1.27297 1.27297 -35.8269 -1.27297 0 0 744469. 2576.02 0.38 0.01 0.10 -1 -1 0.38 0.00264124 0.00229599 26 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_013bits.v common 5.17 vpr 62.69 MiB -1 -1 0.07 20072 1 0.01 -1 -1 33016 -1 -1 4 27 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64196 27 14 97 98 1 67 45 17 17 289 -1 unnamed_device 24.2 MiB 0.05 211 62.7 MiB 0.02 0.00 1.0198 -28.9909 -1.0198 1.0198 0.78 4.9137e-05 3.7862e-05 0.00335875 0.00266566 34 760 33 6.87369e+06 55895.4 618332. 2139.56 2.57 0.0273812 0.0230697 25762 151098 -1 569 20 477 477 40000 10484 0 0 40000 10484 477 477 0 0 1850 1549 0 0 2758 2194 0 0 477 477 0 0 15365 3184 0 0 19073 2603 0 0 477 0 0 0 0 0 477 0 0 1.17597 1.17597 -38.285 -1.17597 0 0 787024. 2723.27 0.27 0.01 0.09 -1 -1 0.27 0.00316329 0.0027227 28 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_014bits.v common 3.81 vpr 62.78 MiB -1 -1 0.07 19784 1 0.00 -1 -1 32708 -1 -1 5 29 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64288 29 15 104 105 1 74 49 17 17 289 -1 unnamed_device 24.3 MiB 0.08 223 62.8 MiB 0.02 0.00 1.0308 -31.2922 -1.0308 1.0308 0.76 5.1352e-05 3.984e-05 0.0030693 0.00245236 34 797 32 6.87369e+06 69869.2 618332. 2139.56 1.08 0.0187325 0.0155147 25762 151098 -1 626 15 448 448 34542 10578 0 0 34542 10578 448 448 0 0 1742 1522 0 0 2542 2079 0 0 448 448 0 0 13676 3201 0 0 15686 2880 0 0 448 0 0 0 0 0 448 0 0 1.19167 1.19167 -41.2249 -1.19167 0 0 787024. 2723.27 0.27 0.01 0.10 -1 -1 0.27 0.00281145 0.00246102 31 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_015bits.v common 5.17 vpr 62.82 MiB -1 -1 0.08 20084 1 0.01 -1 -1 32988 -1 -1 5 31 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64324 31 16 111 112 1 80 52 17 17 289 -1 unnamed_device 24.3 MiB 0.10 290 62.8 MiB 0.02 0.00 1.27683 -33.8219 -1.27683 1.27683 0.76 6.4421e-05 5.1676e-05 0.00393255 0.00319237 36 641 13 6.87369e+06 69869.2 648988. 2245.63 2.46 0.0241641 0.0201201 26050 158493 -1 568 15 373 373 29444 7578 0 0 29444 7578 373 373 0 0 1458 1256 0 0 2033 1640 0 0 373 373 0 0 12916 1954 0 0 12291 1982 0 0 373 0 0 0 0 0 373 0 0 1.22267 1.22267 -43.074 -1.22267 0 0 828058. 2865.25 0.28 0.01 0.10 -1 -1 0.28 0.00275581 0.00241357 33 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_016bits.v common 3.20 vpr 62.84 MiB -1 -1 0.07 20024 1 0.01 -1 -1 33016 -1 -1 5 33 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64348 33 17 118 119 1 83 55 17 17 289 -1 unnamed_device 24.2 MiB 0.09 305 62.8 MiB 0.02 0.00 1.28783 -36.5233 -1.28783 1.28783 0.76 6.0864e-05 4.786e-05 0.00401562 0.00322596 32 807 20 6.87369e+06 69869.2 586450. 2029.24 0.64 0.0138472 0.0114974 25474 144626 -1 659 11 399 399 29624 8099 0 0 29624 8099 399 399 0 0 1658 1444 0 0 2427 2023 0 0 399 399 0 0 12330 1919 0 0 12411 1915 0 0 399 0 0 0 0 0 399 0 0 1.30397 1.30397 -48.266 -1.30397 0 0 744469. 2576.02 0.25 0.01 0.09 -1 -1 0.25 0.00284267 0.00256046 34 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_018bits.v common 3.24 vpr 63.00 MiB -1 -1 0.07 20112 1 0.01 -1 -1 33036 -1 -1 5 37 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64516 37 19 132 133 1 89 61 17 17 289 -1 unnamed_device 24.6 MiB 0.08 336 63.0 MiB 0.02 0.00 1.30983 -42.093 -1.30983 1.30983 0.85 6.8145e-05 5.3792e-05 0.0045456 0.00368288 32 1005 23 6.87369e+06 69869.2 586450. 2029.24 0.67 0.0161676 0.0135236 25474 144626 -1 813 18 527 527 53719 12759 0 0 53719 12759 527 527 0 0 2135 1882 0 0 3414 2642 0 0 527 527 0 0 22865 3761 0 0 24251 3420 0 0 527 0 0 0 0 0 527 0 0 1.35897 1.35897 -56.455 -1.35897 0 0 744469. 2576.02 0.28 0.02 0.09 -1 -1 0.28 0.00396399 0.0034818 38 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_020bits.v common 3.91 vpr 62.95 MiB -1 -1 0.08 20152 1 0.01 -1 -1 32904 -1 -1 6 41 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64460 41 21 146 147 1 101 68 17 17 289 -1 unnamed_device 24.4 MiB 0.08 390 62.9 MiB 0.03 0.00 1.33183 -48.3704 -1.33183 1.33183 0.79 7.4236e-05 5.925e-05 0.00490329 0.00399213 34 1186 33 6.87369e+06 83843 618332. 2139.56 1.26 0.0288413 0.0242224 25762 151098 -1 914 19 625 625 59108 14554 0 0 59108 14554 625 625 0 0 2402 2117 0 0 3546 2867 0 0 625 625 0 0 27307 3795 0 0 24603 4525 0 0 625 0 0 0 0 0 625 0 0 1.25567 1.25567 -60.7006 -1.25567 0 0 787024. 2723.27 0.26 0.02 0.10 -1 -1 0.26 0.00430959 0.00377666 42 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_022bits.v common 4.06 vpr 63.11 MiB -1 -1 0.08 20388 1 0.01 -1 -1 33196 -1 -1 7 45 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64624 45 23 160 161 1 115 75 17 17 289 -1 unnamed_device 24.5 MiB 0.11 461 63.1 MiB 0.03 0.00 1.35383 -52.9004 -1.35383 1.35383 0.78 8.5313e-05 6.7999e-05 0.00552054 0.00443607 36 1179 22 6.87369e+06 97816.9 648988. 2245.63 1.26 0.0299977 0.0252712 26050 158493 -1 989 18 693 693 59044 14540 0 0 59044 14540 693 693 0 0 2572 2238 0 0 3828 2987 0 0 693 693 0 0 26198 3844 0 0 25060 4085 0 0 693 0 0 0 0 0 693 0 0 1.26667 1.26667 -64.8803 -1.26667 0 0 828058. 2865.25 0.32 0.02 0.17 -1 -1 0.32 0.00451701 0.00399678 47 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_024bits.v common 4.02 vpr 63.19 MiB -1 -1 0.08 20212 1 0.01 -1 -1 32840 -1 -1 7 49 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64708 49 25 174 175 1 124 81 17 17 289 -1 unnamed_device 24.9 MiB 0.14 593 63.2 MiB 0.04 0.00 1.61086 -62.2859 -1.61086 1.61086 0.76 9.1151e-05 7.356e-05 0.00649089 0.00533009 34 1376 20 6.87369e+06 97816.9 618332. 2139.56 1.11 0.0315428 0.0268085 25762 151098 -1 1196 16 600 600 54974 12968 0 0 54974 12968 600 600 0 0 2404 2078 0 0 3412 2773 0 0 600 600 0 0 23435 3468 0 0 24523 3449 0 0 600 0 0 0 0 0 600 0 0 1.47327 1.47327 -77.646 -1.47327 0 0 787024. 2723.27 0.27 0.02 0.09 -1 -1 0.27 0.00492615 0.00438304 50 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_028bits.v common 3.82 vpr 63.11 MiB -1 -1 0.08 20292 1 0.01 -1 -1 32900 -1 -1 8 57 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64620 57 29 202 203 1 142 94 17 17 289 -1 unnamed_device 24.6 MiB 0.09 839 63.1 MiB 0.04 0.00 1.65486 -79.936 -1.65486 1.65486 0.75 0.000107903 8.8732e-05 0.00698204 0.00584868 34 1730 23 6.87369e+06 111791 618332. 2139.56 1.09 0.0389282 0.0346115 25762 151098 -1 1538 19 813 813 77020 17360 0 0 77020 17360 813 813 0 0 3138 2726 0 0 4882 3779 0 0 813 813 0 0 32765 4863 0 0 34609 4366 0 0 813 0 0 0 0 0 813 0 0 1.26037 1.26037 -90.0756 -1.26037 0 0 787024. 2723.27 0.27 0.03 0.10 -1 -1 0.27 0.00625639 0.00553823 58 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_032bits.v common 4.13 vpr 63.46 MiB -1 -1 0.08 20356 1 0.01 -1 -1 33184 -1 -1 9 65 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64984 65 33 230 231 1 165 107 17 17 289 -1 unnamed_device 25.1 MiB 0.09 932 63.5 MiB 0.05 0.00 1.93389 -92.6375 -1.93389 1.93389 0.77 0.000121927 0.000100721 0.00899717 0.00758259 34 1944 27 6.87369e+06 125765 618332. 2139.56 1.03 0.0443307 0.0380912 25762 151098 -1 1709 17 840 840 67579 16371 0 0 67579 16371 840 840 0 0 3324 2860 0 0 4909 3872 0 0 840 840 0 0 29442 3793 0 0 28224 4166 0 0 840 0 0 0 0 0 840 0 0 1.42297 1.42297 -105.235 -1.42297 0 0 787024. 2723.27 0.43 0.02 0.09 -1 -1 0.43 0.00629463 0.00559701 66 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_048bits.v common 4.21 vpr 64.35 MiB -1 -1 0.09 20440 1 0.02 -1 -1 33360 -1 -1 13 97 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65892 97 49 342 343 1 247 159 17 17 289 -1 unnamed_device 25.6 MiB 0.09 1457 64.3 MiB 0.11 0.00 2.57995 -155.956 -2.57995 2.57995 0.85 0.000210397 0.000179583 0.0171147 0.0146379 34 3232 21 6.87369e+06 181660 618332. 2139.56 1.37 0.0776454 0.0684068 25762 151098 -1 2758 19 1279 1279 149428 32476 0 0 149428 32476 1279 1279 0 0 5018 4361 0 0 7448 6006 0 0 1279 1279 0 0 66170 10042 0 0 68234 9509 0 0 1279 0 0 0 0 0 1279 0 0 1.55767 1.55767 -161.699 -1.55767 0 0 787024. 2723.27 0.28 0.04 0.10 -1 -1 0.28 0.0115317 0.0104301 98 -1 -1 -1 -1 -1 - fixed_k6_frac_ripple_N8_22nm.xml adder_064bits.v common 5.52 vpr 64.68 MiB -1 -1 0.09 20952 1 0.02 -1 -1 33464 -1 -1 17 129 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66228 129 65 454 455 1 329 211 17 17 289 -1 unnamed_device 26.0 MiB 0.11 1996 64.7 MiB 0.18 0.00 3.22602 -227.983 -3.22602 3.22602 0.92 0.000334683 0.000292457 0.0294185 0.025802 34 4846 36 6.87369e+06 237555 618332. 2139.56 2.16 0.134703 0.1209 25762 151098 -1 3862 18 1663 1663 179620 41011 0 0 179620 41011 1663 1663 0 0 6479 5557 0 0 9924 7929 0 0 1663 1663 0 0 78998 11578 0 0 80893 12621 0 0 1663 0 0 0 0 0 1663 0 0 2.00227 2.00227 -237.661 -2.00227 0 0 787024. 2723.27 0.28 0.06 0.10 -1 -1 0.28 0.0161181 0.0147457 130 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_003bits.v common 2.51 vpr 62.36 MiB -1 -1 0.07 19900 1 0.00 -1 -1 33056 -1 -1 1 7 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63852 7 4 27 28 1 13 12 17 17 289 -1 unnamed_device 23.9 MiB 0.02 38 62.4 MiB 0.00 0.00 0.488083 -5.72471 -0.488083 0.488083 0.77 1.87e-05 1.2284e-05 0.000350869 0.000270629 12 80 4 6.89349e+06 14093.8 243793. 843.575 0.29 0.00097457 0.000808007 21730 64085 -1 89 5 32 32 2061 627 0 0 2061 627 32 32 0 0 135 91 0 0 167 135 0 0 32 32 0 0 698 192 0 0 997 145 0 0 32 0 0 0 0 0 32 0 0 0.74674 0.74674 -7.98012 -0.74674 0 0 332735. 1151.33 0.13 0.00 0.04 -1 -1 0.13 0.000534735 0.000464911 8 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_004bits.v common 4.43 vpr 62.46 MiB -1 -1 0.07 19804 1 0.01 -1 -1 32708 -1 -1 2 9 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63964 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 24.0 MiB 0.06 44 62.5 MiB 0.00 0.00 0.663773 -8.45852 -0.663773 0.663773 0.78 1.9243e-05 1.379e-05 0.000535061 0.000412772 22 152 9 6.89349e+06 28187.7 443629. 1535.05 1.90 0.00493574 0.00389231 23458 102101 -1 110 20 103 103 5696 2019 0 0 5696 2019 103 103 0 0 423 385 0 0 684 580 0 0 103 103 0 0 2073 408 0 0 2310 440 0 0 103 0 0 0 0 0 103 0 0 0.79102 0.79102 -10.0933 -0.79102 0 0 531479. 1839.03 0.18 0.01 0.06 -1 -1 0.18 0.00115647 0.000937789 10 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_005bits.v common 3.45 vpr 62.46 MiB -1 -1 0.08 20080 1 0.00 -1 -1 32984 -1 -1 3 11 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63956 11 6 41 42 1 27 20 17 17 289 -1 unnamed_device 24.0 MiB 0.03 75 62.5 MiB 0.00 0.00 0.691973 -10.697 -0.691973 0.691973 0.78 2.3649e-05 1.7143e-05 0.000502505 0.000401322 16 276 30 6.89349e+06 42281.5 332735. 1151.33 0.84 0.00366967 0.00295557 22306 75877 -1 224 11 108 108 6460 2034 0 0 6460 2034 108 108 0 0 411 354 0 0 516 453 0 0 108 108 0 0 2162 518 0 0 3155 493 0 0 108 0 0 0 0 0 108 0 0 0.942573 0.942573 -15.3211 -0.942573 0 0 414966. 1435.87 0.15 0.00 0.14 -1 -1 0.15 0.000965131 0.000828931 13 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_006bits.v common 3.20 vpr 62.21 MiB -1 -1 0.06 19828 1 0.00 -1 -1 32956 -1 -1 3 13 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63708 13 7 48 49 1 33 23 17 17 289 -1 unnamed_device 23.7 MiB 0.04 80 62.2 MiB 0.00 0.00 0.707773 -12.3375 -0.707773 0.707773 0.79 2.4329e-05 1.8167e-05 0.00110832 0.000646301 28 293 34 6.89349e+06 42281.5 531479. 1839.03 0.61 0.00606129 0.00464147 24610 126494 -1 261 20 254 254 16945 5294 0 0 16945 5294 254 254 0 0 962 845 0 0 1664 1300 0 0 254 254 0 0 6186 1421 0 0 7625 1220 0 0 254 0 0 0 0 0 254 0 0 1.08367 1.08367 -17.2242 -1.08367 0 0 648988. 2245.63 0.23 0.01 0.08 -1 -1 0.23 0.00154127 0.00127976 15 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_007bits.v common 2.90 vpr 62.45 MiB -1 -1 0.07 19992 1 0.00 -1 -1 32932 -1 -1 3 15 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63948 15 8 55 56 1 39 26 17 17 289 -1 unnamed_device 23.9 MiB 0.06 110 62.4 MiB 0.01 0.00 1.13846 -15.98 -1.13846 1.13846 0.74 2.7601e-05 2.0159e-05 0.00122857 0.000952939 26 266 11 6.89349e+06 42281.5 503264. 1741.40 0.53 0.00542952 0.00437636 24322 120374 -1 251 12 144 144 6626 2203 0 0 6626 2203 144 144 0 0 563 459 0 0 783 639 0 0 144 144 0 0 2382 416 0 0 2610 401 0 0 144 0 0 0 0 0 144 0 0 0.96932 0.96932 -19.1597 -0.96932 0 0 618332. 2139.56 0.27 0.00 0.08 -1 -1 0.27 0.00125738 0.00109218 17 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_008bits.v common 2.96 vpr 62.34 MiB -1 -1 0.07 20108 1 0.00 -1 -1 33132 -1 -1 3 17 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63832 17 9 62 63 1 42 29 17 17 289 -1 unnamed_device 23.8 MiB 0.04 125 62.3 MiB 0.01 0.00 0.964803 -18.1535 -0.964803 0.964803 0.77 3.3704e-05 2.4859e-05 0.00189875 0.00148351 26 324 18 6.89349e+06 42281.5 503264. 1741.40 0.55 0.00725969 0.00584262 24322 120374 -1 280 14 215 215 17058 4813 0 0 17058 4813 215 215 0 0 892 787 0 0 1464 1189 0 0 215 215 0 0 6556 1299 0 0 7716 1108 0 0 215 0 0 0 0 0 215 0 0 1.00232 1.00232 -22.1233 -1.00232 0 0 618332. 2139.56 0.21 0.01 0.07 -1 -1 0.21 0.00170731 0.00148174 18 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_009bits.v common 4.59 vpr 62.60 MiB -1 -1 0.07 19884 1 0.00 -1 -1 32960 -1 -1 3 19 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64104 19 10 69 70 1 46 32 17 17 289 -1 unnamed_device 24.0 MiB 0.04 134 62.6 MiB 0.01 0.00 0.975803 -20.1021 -0.975803 0.975803 0.76 3.5952e-05 2.715e-05 0.00181677 0.0014168 28 359 16 6.89349e+06 42281.5 531479. 1839.03 1.94 0.0115861 0.00936133 24610 126494 -1 296 10 180 180 12065 3431 0 0 12065 3431 180 180 0 0 722 598 0 0 1004 851 0 0 180 180 0 0 4561 920 0 0 5418 702 0 0 180 0 0 0 0 0 180 0 0 1.13667 1.13667 -25.4714 -1.13667 0 0 648988. 2245.63 0.23 0.01 0.09 -1 -1 0.23 0.00160534 0.00140887 20 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_010bits.v common 4.24 vpr 62.61 MiB -1 -1 0.07 20120 1 0.01 -1 -1 33068 -1 -1 3 21 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64112 21 11 76 77 1 48 35 17 17 289 -1 unnamed_device 24.2 MiB 0.04 153 62.6 MiB 0.01 0.00 0.986803 -22.4254 -0.986803 0.986803 0.77 3.8721e-05 2.9203e-05 0.00237349 0.00185262 28 446 19 6.89349e+06 42281.5 531479. 1839.03 1.55 0.0149397 0.0121196 24610 126494 -1 345 15 230 230 17182 4895 0 0 17182 4895 230 230 0 0 941 815 0 0 1330 1129 0 0 230 230 0 0 6612 1339 0 0 7839 1152 0 0 230 0 0 0 0 0 230 0 0 1.11467 1.11467 -28.5767 -1.11467 0 0 648988. 2245.63 0.30 0.01 0.11 -1 -1 0.30 0.00193384 0.00166799 22 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_011bits.v common 3.92 vpr 62.52 MiB -1 -1 0.08 20076 1 0.01 -1 -1 33068 -1 -1 4 23 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64020 23 12 83 84 1 53 39 17 17 289 -1 unnamed_device 24.1 MiB 0.04 160 62.5 MiB 0.01 0.00 0.997803 -24.8191 -0.997803 0.997803 0.76 4.6611e-05 3.6778e-05 0.00286671 0.00230389 30 470 19 6.89349e+06 56375.4 556674. 1926.21 1.41 0.0159916 0.0130708 25186 138497 -1 361 17 269 269 15701 4339 0 0 15701 4339 269 269 0 0 956 810 0 0 1266 1056 0 0 269 269 0 0 6727 906 0 0 6214 1029 0 0 269 0 0 0 0 0 269 0 0 1.01137 1.01137 -28.6692 -1.01137 0 0 706193. 2443.58 0.28 0.01 0.10 -1 -1 0.28 0.00230915 0.00200057 24 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_012bits.v common 4.97 vpr 62.63 MiB -1 -1 0.08 20028 1 0.01 -1 -1 32724 -1 -1 4 25 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64132 25 13 90 91 1 60 42 17 17 289 -1 unnamed_device 24.2 MiB 0.05 188 62.6 MiB 0.01 0.00 1.0088 -26.8478 -1.0088 1.0088 0.92 4.531e-05 3.47e-05 0.00283174 0.00212768 32 652 27 6.89349e+06 56375.4 586450. 2029.24 2.29 0.0177745 0.0144421 25474 144626 -1 483 14 292 292 27366 6990 0 0 27366 6990 292 292 0 0 1166 986 0 0 1925 1506 0 0 292 292 0 0 10992 2119 0 0 12699 1795 0 0 292 0 0 0 0 0 292 0 0 1.15867 1.15867 -34.0813 -1.15867 0 0 744469. 2576.02 0.25 0.01 0.09 -1 -1 0.25 0.00225507 0.00195704 26 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_013bits.v common 4.57 vpr 62.53 MiB -1 -1 0.07 20172 1 0.01 -1 -1 32892 -1 -1 4 27 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64032 27 14 97 98 1 67 45 17 17 289 -1 unnamed_device 24.0 MiB 0.05 211 62.5 MiB 0.02 0.00 1.0198 -29.2635 -1.0198 1.0198 0.79 4.6835e-05 3.5901e-05 0.00324734 0.002558 32 670 34 6.89349e+06 56375.4 586450. 2029.24 2.12 0.026086 0.0215309 25474 144626 -1 549 14 327 327 28499 7706 0 0 28499 7706 327 327 0 0 1367 1157 0 0 2221 1781 0 0 327 327 0 0 11847 2010 0 0 12410 2104 0 0 327 0 0 0 0 0 327 0 0 1.30597 1.30597 -40.0377 -1.30597 0 0 744469. 2576.02 0.27 0.01 0.09 -1 -1 0.27 0.00243228 0.00212975 28 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_014bits.v common 5.66 vpr 62.74 MiB -1 -1 0.06 19824 1 0.01 -1 -1 32904 -1 -1 5 29 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64248 29 15 104 105 1 74 49 17 17 289 -1 unnamed_device 24.2 MiB 0.07 228 62.7 MiB 0.02 0.00 1.0308 -31.4175 -1.0308 1.0308 0.89 5.1523e-05 4.0252e-05 0.00300805 0.00239951 44 629 17 6.89349e+06 70469.2 787024. 2723.27 2.74 0.024864 0.0205786 27778 195446 -1 488 17 396 396 26155 7053 0 0 26155 7053 396 396 0 0 1424 1204 0 0 2129 1737 0 0 396 396 0 0 10060 1738 0 0 11750 1582 0 0 396 0 0 0 0 0 396 0 0 0.947373 0.947373 -35.0232 -0.947373 0 0 997811. 3452.63 0.34 0.01 0.13 -1 -1 0.34 0.00295815 0.00256704 31 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_015bits.v common 3.51 vpr 62.60 MiB -1 -1 0.07 20492 1 0.01 -1 -1 32996 -1 -1 5 31 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64104 31 16 111 112 1 80 52 17 17 289 -1 unnamed_device 24.0 MiB 0.09 290 62.6 MiB 0.02 0.00 1.27683 -33.8219 -1.27683 1.27683 0.99 5.7246e-05 4.4986e-05 0.00371065 0.00298039 30 732 24 6.89349e+06 70469.2 556674. 1926.21 0.67 0.0137643 0.0113737 25186 138497 -1 570 13 374 374 21817 6118 0 0 21817 6118 374 374 0 0 1396 1168 0 0 1812 1539 0 0 374 374 0 0 9234 1294 0 0 8627 1369 0 0 374 0 0 0 0 0 374 0 0 1.06437 1.06437 -41.5171 -1.06437 0 0 706193. 2443.58 0.27 0.01 0.09 -1 -1 0.27 0.00282418 0.00251312 33 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_016bits.v common 3.28 vpr 62.55 MiB -1 -1 0.07 20256 1 0.01 -1 -1 33044 -1 -1 5 33 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64052 33 17 118 119 1 83 55 17 17 289 -1 unnamed_device 24.0 MiB 0.10 305 62.6 MiB 0.02 0.00 1.28783 -36.5265 -1.28783 1.28783 0.77 6.07e-05 4.7577e-05 0.00391733 0.00313487 30 763 24 6.89349e+06 70469.2 556674. 1926.21 0.66 0.0143956 0.0119021 25186 138497 -1 631 16 408 408 27345 7375 0 0 27345 7375 408 408 0 0 1570 1332 0 0 2226 1908 0 0 408 408 0 0 12010 1608 0 0 10723 1711 0 0 408 0 0 0 0 0 408 0 0 1.23367 1.23367 -47.4754 -1.23367 0 0 706193. 2443.58 0.32 0.01 0.08 -1 -1 0.32 0.00306399 0.00267569 34 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_018bits.v common 4.27 vpr 62.77 MiB -1 -1 0.07 20092 1 0.01 -1 -1 32900 -1 -1 5 37 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64280 37 19 132 133 1 90 61 17 17 289 -1 unnamed_device 24.4 MiB 0.07 340 62.8 MiB 0.02 0.00 1.30983 -42.5349 -1.30983 1.30983 0.76 6.9685e-05 5.5546e-05 0.00448678 0.00361604 30 924 21 6.89349e+06 70469.2 556674. 1926.21 1.86 0.0280123 0.0234128 25186 138497 -1 765 18 476 476 37469 9211 0 0 37469 9211 476 476 0 0 1723 1406 0 0 2182 1854 0 0 476 476 0 0 16018 2619 0 0 16594 2380 0 0 476 0 0 0 0 0 476 0 0 1.11467 1.11467 -51.366 -1.11467 0 0 706193. 2443.58 0.25 0.01 0.08 -1 -1 0.25 0.00378465 0.00331495 38 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_020bits.v common 3.77 vpr 62.91 MiB -1 -1 0.07 20280 1 0.01 -1 -1 32916 -1 -1 6 41 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64416 41 21 146 147 1 102 68 17 17 289 -1 unnamed_device 24.4 MiB 0.07 384 62.9 MiB 0.03 0.00 1.33183 -47.7879 -1.33183 1.33183 0.81 7.4998e-05 5.94e-05 0.00511893 0.00419008 34 1192 23 6.89349e+06 84563 618332. 2139.56 1.25 0.0294717 0.0250602 25762 151098 -1 876 22 578 578 75397 24455 0 0 75397 24455 578 578 0 0 2167 1763 0 0 3970 2949 0 0 578 578 0 0 34304 9418 0 0 33800 9169 0 0 578 0 0 0 0 0 578 0 0 1.53457 1.53457 -61.0012 -1.53457 0 0 787024. 2723.27 0.26 0.02 0.10 -1 -1 0.26 0.00489754 0.00424409 42 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_022bits.v common 6.08 vpr 63.27 MiB -1 -1 0.08 20228 1 0.00 -1 -1 33196 -1 -1 7 45 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64784 45 23 160 161 1 115 75 17 17 289 -1 unnamed_device 24.7 MiB 0.09 436 63.3 MiB 0.03 0.00 1.35383 -53.0257 -1.35383 1.35383 0.76 8.4718e-05 6.816e-05 0.00515711 0.00421732 38 1139 28 6.89349e+06 98656.9 678818. 2348.85 3.47 0.0492148 0.0420098 26626 170182 -1 930 15 636 636 48508 12290 0 0 48508 12290 636 636 0 0 2297 1915 0 0 3263 2651 0 0 636 636 0 0 21810 3071 0 0 19866 3381 0 0 636 0 0 0 0 0 636 0 0 1.20462 1.20462 -62.5171 -1.20462 0 0 902133. 3121.57 0.29 0.02 0.11 -1 -1 0.29 0.00421138 0.00372277 47 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_024bits.v common 3.77 vpr 63.09 MiB -1 -1 0.08 20104 1 0.00 -1 -1 33156 -1 -1 7 49 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64608 49 25 174 175 1 124 81 17 17 289 -1 unnamed_device 24.5 MiB 0.09 657 63.1 MiB 0.04 0.00 1.61086 -63.9148 -1.61086 1.61086 0.84 9.7114e-05 7.8951e-05 0.00603868 0.00499161 34 1354 18 6.89349e+06 98656.9 618332. 2139.56 1.07 0.023843 0.0202966 25762 151098 -1 1243 11 520 520 47607 11018 0 0 47607 11018 520 520 0 0 1998 1679 0 0 2786 2292 0 0 520 520 0 0 21104 2961 0 0 20679 3046 0 0 520 0 0 0 0 0 520 0 0 1.25087 1.25087 -75.1898 -1.25087 0 0 787024. 2723.27 0.27 0.02 0.09 -1 -1 0.27 0.00414377 0.00373523 50 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_028bits.v common 3.94 vpr 63.32 MiB -1 -1 0.06 20192 1 0.01 -1 -1 33112 -1 -1 8 57 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64840 57 29 202 203 1 143 94 17 17 289 -1 unnamed_device 24.9 MiB 0.07 894 63.3 MiB 0.04 0.00 1.65486 -81.8847 -1.65486 1.65486 0.78 0.00011697 9.7535e-05 0.00704155 0.00583436 34 1760 21 6.89349e+06 112751 618332. 2139.56 1.28 0.0315232 0.0270537 25762 151098 -1 1611 16 743 743 71332 15953 0 0 71332 15953 743 743 0 0 2892 2451 0 0 4544 3665 0 0 743 743 0 0 31305 4196 0 0 31105 4155 0 0 743 0 0 0 0 0 743 0 0 1.28867 1.28867 -90.9124 -1.28867 0 0 787024. 2723.27 0.29 0.03 0.10 -1 -1 0.29 0.00636389 0.00573336 58 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_032bits.v common 4.61 vpr 63.20 MiB -1 -1 0.08 20336 1 0.01 -1 -1 33100 -1 -1 9 65 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 64716 65 33 230 231 1 165 107 17 17 289 -1 unnamed_device 24.9 MiB 0.12 937 63.2 MiB 0.08 0.00 1.93389 -92.387 -1.93389 1.93389 1.15 0.000160862 0.000136083 0.0167586 0.0136789 34 1976 19 6.89349e+06 126845 618332. 2139.56 1.17 0.0505661 0.0428915 25762 151098 -1 1763 16 798 798 75945 17453 0 0 75945 17453 798 798 0 0 3209 2677 0 0 4607 3767 0 0 798 798 0 0 34302 4455 0 0 32231 4958 0 0 798 0 0 0 0 0 798 0 0 1.43397 1.43397 -104.441 -1.43397 0 0 787024. 2723.27 0.31 0.03 0.10 -1 -1 0.31 0.00689383 0.00616947 66 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_048bits.v common 5.16 vpr 64.42 MiB -1 -1 0.08 20400 1 0.01 -1 -1 33176 -1 -1 13 97 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65964 97 49 342 343 1 247 159 17 17 289 -1 unnamed_device 25.7 MiB 0.10 1547 64.4 MiB 0.16 0.00 2.57995 -158.212 -2.57995 2.57995 0.99 0.000213606 0.000180883 0.0260243 0.0232267 34 3172 19 6.89349e+06 183220 618332. 2139.56 1.70 0.0991204 0.089339 25762 151098 -1 2822 14 1126 1126 112200 24280 0 0 112200 24280 1126 1126 0 0 4279 3532 0 0 6034 4847 0 0 1126 1126 0 0 49337 6970 0 0 50298 6679 0 0 1126 0 0 0 0 0 1126 0 0 1.61067 1.61067 -166.885 -1.61067 0 0 787024. 2723.27 0.33 0.04 0.17 -1 -1 0.33 0.00932628 0.00846771 98 -1 -1 -1 -1 -1 - fixed_k6_frac_uripple_N8_22nm.xml adder_064bits.v common 5.33 vpr 64.70 MiB -1 -1 0.09 20748 1 0.02 -1 -1 33360 -1 -1 17 129 0 0 success v8.0.0-8315-ga34adbee3 release IPO VTR_ASSERT_LEVEL=2 GNU 11.3.0 on Linux-5.19.0-46-generic x86_64 2023-07-20T17:59:21 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66252 129 65 454 455 1 329 211 17 17 289 -1 unnamed_device 26.0 MiB 0.20 2069 64.7 MiB 0.20 0.00 3.22602 -231.867 -3.22602 3.22602 0.95 0.000322693 0.00028285 0.0287281 0.0255126 34 4582 22 6.89349e+06 239595 618332. 2139.56 1.71 0.141234 0.128328 25762 151098 -1 3943 19 1530 1530 175078 36774 0 0 175078 36774 1530 1530 0 0 5923 4921 0 0 8643 6911 0 0 1530 1530 0 0 77972 11242 0 0 79480 10640 0 0 1530 0 0 0 0 0 1530 0 0 1.75832 1.75832 -225.369 -1.75832 0 0 787024. 2723.27 0.33 0.06 0.10 -1 -1 0.33 0.017955 0.0158629 130 -1 -1 -1 -1 -1 +arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_003bits.v common 4.02 vpr 62.72 MiB -1 -1 0.10 19672 1 0.06 -1 -1 35948 -1 -1 2 7 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64224 7 4 21 25 1 15 13 17 17 289 -1 unnamed_device 24.3 MiB 0.01 55 283 70 210 3 62.7 MiB 0.00 0.00 0.581048 -5.30553 -0.581048 0.581048 0.97 4.9656e-05 4.3464e-05 0.00118933 0.00104039 20 130 6 6.55708e+06 24110 394039. 1363.46 1.19 0.00472275 0.00410105 19870 87366 -1 118 11 54 54 2990 907 0.662048 0.662048 -7.30973 -0.662048 0 0 477104. 1650.88 0.22 0.01 0.08 -1 -1 0.22 0.00251089 0.0022427 10 4 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_004bits.v common 3.38 vpr 62.60 MiB -1 -1 0.10 19572 2 0.06 -1 -1 35956 -1 -1 2 9 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64100 9 5 28 33 1 21 16 17 17 289 -1 unnamed_device 24.2 MiB 0.01 137 256 71 181 4 62.6 MiB 0.00 0.00 0.819447 -10.1544 -0.819447 0.819447 0.97 5.877e-05 5.2378e-05 0.0010335 0.000928441 20 241 7 6.55708e+06 24110 394039. 1363.46 0.55 0.00385067 0.00346363 19870 87366 -1 227 9 81 84 5260 1433 0.819447 0.819447 -11.798 -0.819447 0 0 477104. 1650.88 0.21 0.01 0.09 -1 -1 0.21 0.00292221 0.00261754 13 6 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_005bits.v common 4.38 vpr 62.58 MiB -1 -1 0.10 19564 2 0.06 -1 -1 35664 -1 -1 2 11 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64080 11 6 34 40 1 24 19 17 17 289 -1 unnamed_device 24.2 MiB 0.01 71 594 163 423 8 62.6 MiB 0.01 0.00 0.819447 -9.98644 -0.819447 0.819447 0.95 7.7086e-05 6.8338e-05 0.00216681 0.00192572 20 195 7 6.55708e+06 24110 394039. 1363.46 1.59 0.0103615 0.00878221 19870 87366 -1 171 11 87 97 5050 1830 0.902448 0.902448 -12.5936 -0.902448 0 0 477104. 1650.88 0.20 0.01 0.09 -1 -1 0.20 0.00324041 0.00287926 16 7 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_006bits.v common 4.30 vpr 62.31 MiB -1 -1 0.11 19724 3 0.06 -1 -1 35432 -1 -1 3 13 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 63804 13 7 41 48 1 32 23 17 17 289 -1 unnamed_device 23.9 MiB 0.01 119 791 157 626 8 62.3 MiB 0.01 0.00 1.50711 -14.288 -1.50711 1.50711 0.98 8.6812e-05 7.7334e-05 0.00257562 0.00230719 24 300 13 6.55708e+06 36165 448715. 1552.65 1.40 0.0163907 0.0137529 20734 103517 -1 291 9 119 139 8701 2321 1.62731 1.62731 -18.6152 -1.62731 0 0 554710. 1919.41 0.25 0.01 0.10 -1 -1 0.25 0.00349331 0.00314096 19 9 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_007bits.v common 3.63 vpr 62.58 MiB -1 -1 0.10 19524 3 0.06 -1 -1 35508 -1 -1 3 15 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64084 15 8 47 55 1 38 26 17 17 289 -1 unnamed_device 24.1 MiB 0.01 94 1014 227 644 143 62.6 MiB 0.01 0.00 1.05785 -14.1112 -1.05785 1.05785 0.98 0.00010026 8.9717e-05 0.00317369 0.00285648 26 358 20 6.55708e+06 36165 477104. 1650.88 0.72 0.0170987 0.0144074 21022 109990 -1 298 18 217 243 12970 4443 1.13885 1.13885 -19.204 -1.13885 0 0 585099. 2024.56 0.25 0.02 0.11 -1 -1 0.25 0.00509041 0.00440527 23 10 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_008bits.v common 3.53 vpr 62.46 MiB -1 -1 0.10 19668 3 0.06 -1 -1 35732 -1 -1 4 17 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 63956 17 9 56 65 1 42 30 17 17 289 -1 unnamed_device 24.0 MiB 0.06 237 1180 226 846 108 62.5 MiB 0.01 0.00 1.46791 -19.6682 -1.46791 1.46791 0.93 0.000104475 9.2795e-05 0.00328861 0.00293363 26 431 17 6.55708e+06 48220 477104. 1650.88 0.68 0.0179995 0.0151645 21022 109990 -1 416 8 129 143 10617 2652 1.46791 1.46791 -24.1216 -1.46791 0 0 585099. 2024.56 0.26 0.01 0.10 -1 -1 0.26 0.00371663 0.00334236 25 14 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_009bits.v common 4.56 vpr 62.78 MiB -1 -1 0.10 19476 4 0.06 -1 -1 35540 -1 -1 4 19 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64288 19 10 60 70 1 48 33 17 17 289 -1 unnamed_device 24.3 MiB 0.01 137 2581 729 1297 555 62.8 MiB 0.02 0.00 1.50711 -20.906 -1.50711 1.50711 0.97 0.000139487 0.000126534 0.00692825 0.0062509 26 459 20 6.55708e+06 48220 477104. 1650.88 1.63 0.0398751 0.0335068 21022 109990 -1 403 16 240 279 18099 5515 1.70831 1.70831 -28.084 -1.70831 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00561487 0.00490489 29 13 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_010bits.v common 4.94 vpr 62.52 MiB -1 -1 0.10 19776 4 0.07 -1 -1 36188 -1 -1 5 21 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64020 21 11 69 80 1 53 37 17 17 289 -1 unnamed_device 23.9 MiB 0.03 203 1928 535 1049 344 62.5 MiB 0.02 0.00 1.46791 -23.4192 -1.46791 1.46791 0.97 0.000153279 0.000138347 0.00535021 0.00480766 26 552 24 6.55708e+06 60275 477104. 1650.88 1.95 0.044978 0.0377586 21022 109990 -1 507 12 209 276 18283 4963 1.46791 1.46791 -29.7114 -1.46791 0 0 585099. 2024.56 0.27 0.02 0.11 -1 -1 0.27 0.00555137 0.00495003 33 17 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_011bits.v common 3.70 vpr 62.95 MiB -1 -1 0.10 19524 5 0.07 -1 -1 35688 -1 -1 6 23 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64456 23 12 76 88 1 61 41 17 17 289 -1 unnamed_device 24.4 MiB 0.02 247 2561 709 1293 559 62.9 MiB 0.02 0.00 1.7455 -27.722 -1.7455 1.7455 0.97 0.000161774 0.000146245 0.00650364 0.00588734 26 643 19 6.55708e+06 72330 477104. 1650.88 0.74 0.0271061 0.0233334 21022 109990 -1 544 12 261 334 18025 4948 1.9859 1.9859 -34.8138 -1.9859 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00589986 0.00526102 37 19 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_012bits.v common 3.88 vpr 62.82 MiB -1 -1 0.10 19556 5 0.07 -1 -1 35424 -1 -1 6 25 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64328 25 13 83 96 1 66 44 17 17 289 -1 unnamed_device 24.2 MiB 0.02 270 1738 319 1398 21 62.8 MiB 0.01 0.00 1.53464 -29.676 -1.53464 1.53464 0.97 0.000171314 0.000153716 0.00464701 0.00420931 26 743 11 6.55708e+06 72330 477104. 1650.88 0.88 0.0269142 0.0232245 21022 109990 -1 658 11 276 382 22416 5711 1.70831 1.70831 -38.002 -1.70831 0 0 585099. 2024.56 0.25 0.02 0.11 -1 -1 0.25 0.00576487 0.00514867 40 21 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_013bits.v common 3.64 vpr 62.83 MiB -1 -1 0.10 19600 5 0.06 -1 -1 35472 -1 -1 7 27 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64340 27 14 91 105 1 70 48 17 17 289 -1 unnamed_device 24.5 MiB 0.02 262 4746 1651 2391 704 62.8 MiB 0.03 0.00 1.49544 -30.6033 -1.49544 1.49544 0.93 0.000169773 0.000151956 0.0101095 0.00907748 26 692 13 6.55708e+06 84385 477104. 1650.88 0.73 0.0314472 0.0271344 21022 109990 -1 598 14 300 430 20728 6057 1.61564 1.61564 -37.7761 -1.61564 0 0 585099. 2024.56 0.26 0.02 0.10 -1 -1 0.26 0.00683197 0.0060341 42 24 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_014bits.v common 4.43 vpr 62.79 MiB -1 -1 0.11 19868 6 0.07 -1 -1 35704 -1 -1 7 29 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64292 29 15 95 110 1 74 51 17 17 289 -1 unnamed_device 24.4 MiB 0.04 452 4845 1150 3218 477 62.8 MiB 0.03 0.00 2.15556 -42.209 -2.15556 2.15556 0.96 0.000202006 0.000182623 0.0113757 0.010253 24 936 9 6.55708e+06 84385 448715. 1552.65 1.43 0.0377397 0.0327191 20734 103517 -1 853 11 247 357 24224 5910 2.15556 2.15556 -50.1462 -2.15556 0 0 554710. 1919.41 0.24 0.02 0.10 -1 -1 0.24 0.00664127 0.00594946 45 23 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_015bits.v common 5.77 vpr 62.99 MiB -1 -1 0.11 20060 6 0.07 -1 -1 35568 -1 -1 10 31 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64500 31 16 104 120 1 81 57 17 17 289 -1 unnamed_device 24.6 MiB 0.04 433 4199 1264 2253 682 63.0 MiB 0.03 0.00 1.73384 -41.3001 -1.73384 1.73384 0.98 0.000215252 0.000195106 0.00939379 0.00854242 30 949 13 6.55708e+06 120550 526063. 1820.29 2.69 0.0616782 0.0528433 21886 126133 -1 824 12 287 458 27402 6619 1.85404 1.85404 -48.3919 -1.85404 0 0 666494. 2306.21 0.28 0.02 0.12 -1 -1 0.28 0.00747792 0.00666195 50 27 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_016bits.v common 3.79 vpr 63.09 MiB -1 -1 0.11 20164 7 0.07 -1 -1 35468 -1 -1 7 33 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64608 33 17 112 129 1 86 57 17 17 289 -1 unnamed_device 24.7 MiB 0.05 375 5071 1442 2595 1034 63.1 MiB 0.03 0.00 2.3425 -44.7474 -2.3425 2.3425 0.97 0.000222257 0.00020083 0.0114908 0.010428 26 868 10 6.55708e+06 84385 477104. 1650.88 0.74 0.0374739 0.0327668 21022 109990 -1 804 10 301 392 23128 6562 2.55536 2.55536 -56.7674 -2.55536 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00738571 0.00662554 52 30 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_018bits.v common 4.07 vpr 63.38 MiB -1 -1 0.12 20080 7 0.08 -1 -1 36072 -1 -1 10 37 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64900 37 19 127 146 1 99 66 17 17 289 -1 unnamed_device 24.9 MiB 0.03 435 7248 2171 3474 1603 63.4 MiB 0.04 0.00 2.63236 -57.0799 -2.63236 2.63236 1.00 0.000257403 0.000233419 0.01522 0.0138414 26 1202 15 6.55708e+06 120550 477104. 1650.88 0.95 0.0507069 0.04466 21022 109990 -1 985 12 354 489 32570 8323 2.84522 2.84522 -68.2611 -2.84522 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00831374 0.00743562 59 35 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_020bits.v common 5.86 vpr 63.27 MiB -1 -1 0.11 19908 8 0.08 -1 -1 36088 -1 -1 11 41 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64788 41 21 139 160 1 110 73 17 17 289 -1 unnamed_device 24.7 MiB 0.05 601 9345 2218 6077 1050 63.3 MiB 0.05 0.00 2.4215 -63.5322 -2.4215 2.4215 1.00 0.000270611 0.000244278 0.0183158 0.0166161 28 1389 27 6.55708e+06 132605 500653. 1732.36 2.68 0.0853367 0.074058 21310 115450 -1 1172 14 426 563 38637 9489 2.6619 2.6619 -77.3552 -2.6619 0 0 612192. 2118.31 0.27 0.03 0.11 -1 -1 0.27 0.0103329 0.00921202 67 37 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_022bits.v common 6.14 vpr 63.49 MiB -1 -1 0.11 19928 9 0.08 -1 -1 35836 -1 -1 13 45 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65012 45 23 153 176 1 123 81 17 17 289 -1 unnamed_device 24.9 MiB 0.26 553 9706 3286 4714 1706 63.5 MiB 0.05 0.00 2.78916 -69.7397 -2.78916 2.78916 1.00 0.000304267 0.000276446 0.0181125 0.0164557 30 1302 29 6.55708e+06 156715 526063. 1820.29 2.72 0.0895325 0.0776616 21886 126133 -1 1096 16 419 534 28928 7752 2.99036 2.99036 -83.6201 -2.99036 0 0 666494. 2306.21 0.28 0.02 0.12 -1 -1 0.28 0.0108134 0.00963996 74 41 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_024bits.v common 4.14 vpr 63.35 MiB -1 -1 0.13 20176 10 0.08 -1 -1 35804 -1 -1 12 49 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64868 49 25 166 191 1 129 86 17 17 289 -1 unnamed_device 25.0 MiB 0.07 718 10292 2840 5459 1993 63.3 MiB 0.05 0.00 3.51862 -88.6322 -3.51862 3.51862 0.99 0.000323055 0.000292613 0.0195178 0.0177959 28 1518 22 6.55708e+06 144660 500653. 1732.36 0.91 0.0653992 0.0577138 21310 115450 -1 1296 15 471 635 34584 9379 3.51862 3.51862 -99.0896 -3.51862 0 0 612192. 2118.31 0.28 0.03 0.11 -1 -1 0.28 0.0125975 0.011265 79 44 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_028bits.v common 6.69 vpr 63.55 MiB -1 -1 0.13 19968 11 0.09 -1 -1 35920 -1 -1 14 57 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65076 57 29 198 227 1 159 100 17 17 289 -1 unnamed_device 25.1 MiB 0.21 946 15180 4226 9217 1737 63.6 MiB 0.07 0.00 3.64848 -108.143 -3.64848 3.64848 0.98 0.000391077 0.000355263 0.0273612 0.024927 34 1807 14 6.55708e+06 168770 585099. 2024.56 3.25 0.161851 0.140826 22462 138074 -1 1696 12 627 842 55868 13548 3.76868 3.76868 -121.005 -3.76868 0 0 742403. 2568.87 0.31 0.03 0.14 -1 -1 0.31 0.0130288 0.011726 93 56 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_032bits.v common 4.62 vpr 63.71 MiB -1 -1 0.13 20192 13 0.09 -1 -1 36152 -1 -1 16 65 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65240 65 33 224 257 1 180 114 17 17 289 -1 unnamed_device 25.1 MiB 0.27 1020 17778 4726 10708 2344 63.7 MiB 0.08 0.00 4.18236 -134.222 -4.18236 4.18236 0.99 0.00043419 0.000395117 0.0292927 0.0266247 28 2088 27 6.55708e+06 192880 500653. 1732.36 1.07 0.094323 0.083494 21310 115450 -1 1901 27 757 1030 206086 112032 4.54296 4.54296 -156.58 -4.54296 0 0 612192. 2118.31 0.27 0.10 0.11 -1 -1 0.27 0.0250547 0.0221507 107 62 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_048bits.v common 6.86 vpr 64.95 MiB -1 -1 0.14 20016 19 0.12 -1 -1 35812 -1 -1 24 97 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 97 49 340 389 1 266 170 17 17 289 -1 unnamed_device 26.2 MiB 0.26 1351 38240 11656 22611 3973 65.0 MiB 0.16 0.00 6.61559 -245.7 -6.61559 6.61559 1.00 0.000633163 0.000577875 0.0540596 0.0491605 28 3197 25 6.55708e+06 289320 500653. 1732.36 3.18 0.227013 0.200939 21310 115450 -1 2667 19 1053 1507 95607 24799 6.97819 6.97819 -278.845 -6.97819 0 0 612192. 2118.31 0.26 0.06 0.12 -1 -1 0.26 0.0282543 0.025274 161 98 -1 -1 -1 -1 +fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_064bits.v common 5.93 vpr 65.25 MiB -1 -1 0.17 20952 26 0.13 -1 -1 36232 -1 -1 35 129 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 129 65 453 518 1 353 229 17 17 289 -1 unnamed_device 26.5 MiB 0.21 1967 50629 14687 30404 5538 65.2 MiB 0.21 0.00 9.03516 -414.342 -9.03516 9.03516 0.96 0.000838729 0.000762152 0.0660421 0.0602515 36 3846 27 6.55708e+06 421925 612192. 2118.31 2.13 0.262822 0.235126 22750 144809 -1 3487 11 1097 1526 102802 24229 9.27556 9.27556 -455.451 -9.27556 0 0 782063. 2706.10 0.32 0.06 0.14 -1 -1 0.32 0.0243928 0.0224156 213 131 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 0.27 abc 32.75 MiB -1 -1 0.09 19552 1 0.02 -1 -1 33532 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25112 7 4 24 25 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 0.28 abc 32.75 MiB -1 -1 0.10 19568 1 0.02 -1 -1 33532 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24676 9 5 30 31 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 0.28 abc 32.83 MiB -1 -1 0.10 19528 1 0.02 -1 -1 33620 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24896 11 6 36 37 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 0.27 abc 32.89 MiB -1 -1 0.11 19568 1 0.02 -1 -1 33684 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25088 13 7 42 43 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 0.28 abc 32.58 MiB -1 -1 0.11 19640 1 0.02 -1 -1 33364 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25148 15 8 49 50 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 0.27 abc 32.82 MiB -1 -1 0.09 19892 1 0.02 -1 -1 33604 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25088 17 9 55 56 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 0.29 abc 32.88 MiB -1 -1 0.09 19696 1 0.02 -1 -1 33672 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24980 19 10 61 62 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 0.27 abc 32.78 MiB -1 -1 0.09 19524 1 0.03 -1 -1 33564 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25044 21 11 67 68 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 0.28 abc 32.84 MiB -1 -1 0.10 19848 1 0.03 -1 -1 33628 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25104 23 12 74 75 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 0.28 abc 32.86 MiB -1 -1 0.10 19628 1 0.02 -1 -1 33648 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25260 25 13 80 81 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 0.28 abc 32.75 MiB -1 -1 0.08 19664 1 0.02 -1 -1 33540 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25144 27 14 86 87 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 0.28 abc 32.87 MiB -1 -1 0.10 19652 1 0.03 -1 -1 33656 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25168 29 15 92 93 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 0.29 abc 32.72 MiB -1 -1 0.10 19620 1 0.03 -1 -1 33504 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25392 31 16 99 100 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 0.29 abc 32.62 MiB -1 -1 0.10 19804 1 0.03 -1 -1 33408 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24960 33 17 105 106 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 0.30 abc 33.13 MiB -1 -1 0.11 19772 1 0.03 -1 -1 33928 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25264 37 19 117 118 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 0.32 abc 33.27 MiB -1 -1 0.11 19440 1 0.03 -1 -1 34068 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24916 41 21 130 131 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 0.30 abc 32.88 MiB -1 -1 0.11 19592 1 0.03 -1 -1 33664 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25224 45 23 142 143 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 0.29 abc 33.12 MiB -1 -1 0.11 19768 1 0.03 -1 -1 33920 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25148 49 25 155 156 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 0.30 abc 33.03 MiB -1 -1 0.11 19924 1 0.03 -1 -1 33824 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24952 57 29 180 181 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 0.30 abc 32.87 MiB -1 -1 0.11 20104 1 0.03 -1 -1 33656 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25216 65 33 205 206 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 0.33 abc 32.99 MiB -1 -1 0.12 19904 1 0.03 -1 -1 33780 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25316 97 49 305 306 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 0.34 abc 33.23 MiB -1 -1 0.13 20100 1 0.03 -1 -1 34024 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25876 129 65 405 406 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 0.27 abc 32.79 MiB -1 -1 0.09 19656 1 0.02 -1 -1 33580 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24720 7 4 24 25 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 0.27 abc 32.79 MiB -1 -1 0.10 19432 1 0.02 -1 -1 33572 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24680 9 5 30 31 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 0.27 abc 32.80 MiB -1 -1 0.08 19572 1 0.02 -1 -1 33592 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24648 11 6 36 37 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 0.29 abc 32.88 MiB -1 -1 0.10 19524 1 0.02 -1 -1 33664 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24744 13 7 42 43 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 0.28 abc 32.48 MiB -1 -1 0.10 19484 1 0.02 -1 -1 33260 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24916 15 8 49 50 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 0.28 abc 33.01 MiB -1 -1 0.11 19696 1 0.02 -1 -1 33800 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24824 17 9 55 56 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 0.26 abc 32.88 MiB -1 -1 0.09 19496 1 0.02 -1 -1 33664 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24696 19 10 61 62 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 0.27 abc 32.89 MiB -1 -1 0.10 19528 1 0.02 -1 -1 33676 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24788 21 11 67 68 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 0.28 abc 32.88 MiB -1 -1 0.09 19508 1 0.02 -1 -1 33672 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24908 23 12 74 75 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 0.27 abc 32.54 MiB -1 -1 0.09 19916 1 0.02 -1 -1 33324 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24568 25 13 80 81 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 0.27 abc 32.73 MiB -1 -1 0.09 19656 1 0.03 -1 -1 33520 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25008 27 14 86 87 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 0.28 abc 32.75 MiB -1 -1 0.10 19640 1 0.03 -1 -1 33532 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25032 29 15 92 93 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 0.28 abc 32.85 MiB -1 -1 0.10 19680 1 0.03 -1 -1 33640 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24860 31 16 99 100 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 0.29 abc 32.81 MiB -1 -1 0.10 19788 1 0.03 -1 -1 33596 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24924 33 17 105 106 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 0.28 abc 33.07 MiB -1 -1 0.10 19552 1 0.03 -1 -1 33864 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25024 37 19 117 118 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 0.28 abc 33.04 MiB -1 -1 0.11 19508 1 0.02 -1 -1 33832 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24936 41 21 130 131 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 0.27 abc 33.12 MiB -1 -1 0.10 19532 1 0.03 -1 -1 33920 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24844 45 23 142 143 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 0.28 abc 33.16 MiB -1 -1 0.09 20080 1 0.03 -1 -1 33960 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25036 49 25 155 156 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 0.30 abc 32.72 MiB -1 -1 0.11 20108 1 0.03 -1 -1 33508 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25128 57 29 180 181 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 0.30 abc 32.79 MiB -1 -1 0.11 20088 1 0.03 -1 -1 33576 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25120 65 33 205 206 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 0.32 abc 32.94 MiB -1 -1 0.12 19636 1 0.03 -1 -1 33728 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25552 97 49 305 306 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 0.32 abc 33.41 MiB -1 -1 0.12 20356 1 0.03 -1 -1 34212 -1 -1 -1 -1 -1 -1 exited with return code 134 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25700 129 65 405 406 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 3.68 vpr 62.80 MiB -1 -1 0.10 19664 1 0.02 -1 -1 33588 -1 -1 2 7 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64304 7 4 27 28 1 14 13 17 17 289 -1 unnamed_device 24.4 MiB 0.01 35 163 52 107 4 62.8 MiB 0.00 0.00 0.649848 -6.09173 -0.649848 0.649848 0.98 5.2958e-05 4.6576e-05 0.000850801 0.000745156 12 127 20 6.64007e+06 25116 231691. 801.699 0.94 0.00686147 0.00576676 19090 58805 -1 95 12 46 46 1993 710 0.95891 0.95891 -7.65433 -0.95891 0 0 318358. 1101.58 0.14 0.01 0.06 -1 -1 0.14 0.00268075 0.00238861 10 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 4.23 vpr 62.87 MiB -1 -1 0.09 19616 1 0.02 -1 -1 33292 -1 -1 2 9 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64376 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 24.4 MiB 0.01 47 516 138 334 44 62.9 MiB 0.01 0.00 0.671848 -7.44342 -0.671848 0.671848 0.99 6.068e-05 5.3769e-05 0.00189816 0.00167909 16 164 19 6.64007e+06 25116 318358. 1101.58 1.47 0.015776 0.0128331 19666 69277 -1 133 17 117 117 3549 1450 1.14165 1.14165 -10.4234 -1.14165 0 0 394039. 1363.46 0.17 0.01 0.07 -1 -1 0.17 0.0033338 0.00289327 13 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 3.61 vpr 63.07 MiB -1 -1 0.09 19636 1 0.02 -1 -1 33636 -1 -1 2 11 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64580 11 6 41 42 1 26 19 17 17 289 -1 unnamed_device 24.6 MiB 0.01 58 769 230 467 72 63.1 MiB 0.01 0.00 0.682848 -9.22145 -0.682848 0.682848 0.98 7.867e-05 7.0254e-05 0.00273302 0.00244692 26 210 25 6.64007e+06 25116 477104. 1650.88 0.70 0.0144365 0.0120099 21682 110474 -1 178 22 214 214 11976 4004 1.03245 1.03245 -12.7914 -1.03245 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00467652 0.00400752 16 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 3.62 vpr 63.21 MiB -1 -1 0.10 19660 1 0.02 -1 -1 33432 -1 -1 4 13 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64724 13 7 48 49 1 32 24 17 17 289 -1 unnamed_device 24.7 MiB 0.01 115 908 293 498 117 63.2 MiB 0.01 0.00 0.704848 -12.2409 -0.704848 0.704848 0.99 8.8046e-05 7.8482e-05 0.00274311 0.00245992 26 284 15 6.64007e+06 50232 477104. 1650.88 0.72 0.0143859 0.0119846 21682 110474 -1 288 12 177 177 11939 3230 0.923248 0.923248 -16.5833 -0.923248 0 0 585099. 2024.56 0.25 0.01 0.11 -1 -1 0.25 0.00370249 0.00326877 20 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 4.90 vpr 63.22 MiB -1 -1 0.09 19636 1 0.03 -1 -1 33496 -1 -1 3 15 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64740 15 8 55 56 1 38 26 17 17 289 -1 unnamed_device 24.7 MiB 0.02 109 1318 393 660 265 63.2 MiB 0.01 0.00 0.944958 -13.8003 -0.944958 0.944958 0.97 9.6693e-05 8.6732e-05 0.00391102 0.00351898 26 282 12 6.64007e+06 37674 477104. 1650.88 1.95 0.0223209 0.0187747 21682 110474 -1 259 10 138 138 7653 2384 0.976248 0.976248 -18.6396 -0.976248 0 0 585099. 2024.56 0.26 0.01 0.11 -1 -1 0.26 0.00381481 0.00341558 22 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 5.62 vpr 62.72 MiB -1 -1 0.09 19588 1 0.02 -1 -1 33576 -1 -1 4 17 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64224 17 9 62 63 1 41 30 17 17 289 -1 unnamed_device 24.2 MiB 0.02 120 2008 589 1019 400 62.7 MiB 0.02 0.00 0.955958 -15.4908 -0.955958 0.955958 0.98 0.000108696 9.706e-05 0.0054263 0.00487457 32 303 12 6.64007e+06 50232 554710. 1919.41 2.57 0.0352297 0.0294113 22834 132086 -1 270 12 188 188 9755 3039 1.10745 1.10745 -21.5634 -1.10745 0 0 701300. 2426.64 0.30 0.01 0.14 -1 -1 0.30 0.00449781 0.003979 25 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 3.66 vpr 63.16 MiB -1 -1 0.09 19428 1 0.02 -1 -1 33412 -1 -1 4 19 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64672 19 10 69 70 1 44 33 17 17 289 -1 unnamed_device 24.6 MiB 0.03 130 2269 836 1246 187 63.2 MiB 0.02 0.00 0.966958 -17.6732 -0.966958 0.966958 0.98 0.000115984 0.000103392 0.00594454 0.00536406 26 365 13 6.64007e+06 50232 477104. 1650.88 0.71 0.0212117 0.018129 21682 110474 -1 324 10 186 186 10839 3102 1.07445 1.07445 -23.8816 -1.07445 0 0 585099. 2024.56 0.25 0.01 0.11 -1 -1 0.25 0.00434426 0.00387177 28 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 3.82 vpr 62.91 MiB -1 -1 0.10 19644 1 0.03 -1 -1 33552 -1 -1 5 21 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64416 21 11 76 77 1 49 37 17 17 289 -1 unnamed_device 24.4 MiB 0.03 153 2355 630 1310 415 62.9 MiB 0.02 0.00 0.977958 -19.9867 -0.977958 0.977958 1.00 0.0001374 0.00012373 0.00578371 0.00521142 28 406 16 6.64007e+06 62790 500653. 1732.36 0.81 0.0232007 0.0198053 21970 115934 -1 339 17 199 199 11418 3387 0.998248 0.998248 -25.2987 -0.998248 0 0 612192. 2118.31 0.28 0.02 0.11 -1 -1 0.28 0.00622967 0.00548287 31 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 3.75 vpr 63.18 MiB -1 -1 0.10 19564 1 0.03 -1 -1 33584 -1 -1 5 23 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64692 23 12 83 84 1 55 40 17 17 289 -1 unnamed_device 24.6 MiB 0.03 165 2624 702 1377 545 63.2 MiB 0.02 0.00 0.988958 -21.59 -0.988958 0.988958 0.97 0.000144934 0.000130419 0.00622095 0.0056139 28 486 21 6.64007e+06 62790 500653. 1732.36 0.78 0.0252432 0.0216032 21970 115934 -1 400 21 351 351 21475 6154 1.02145 1.02145 -27.2175 -1.02145 0 0 612192. 2118.31 0.28 0.02 0.12 -1 -1 0.28 0.00734274 0.00636225 34 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 5.42 vpr 63.45 MiB -1 -1 0.10 19592 1 0.02 -1 -1 33672 -1 -1 5 25 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64968 25 13 90 91 1 61 43 17 17 289 -1 unnamed_device 24.9 MiB 0.03 184 3568 1163 1666 739 63.4 MiB 0.02 0.00 0.999958 -24.5266 -0.999958 0.999958 0.94 0.000132432 0.000117944 0.00745892 0.00669162 32 515 24 6.64007e+06 62790 554710. 1919.41 2.52 0.050179 0.0421495 22834 132086 -1 431 14 279 279 16646 4729 1.00925 1.00925 -30.2469 -1.00925 0 0 701300. 2426.64 0.30 0.02 0.12 -1 -1 0.30 0.00585767 0.00513921 37 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 5.71 vpr 62.97 MiB -1 -1 0.09 19660 1 0.03 -1 -1 33456 -1 -1 6 27 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64480 27 14 97 98 1 67 47 17 17 289 -1 unnamed_device 24.4 MiB 0.03 246 3995 1377 1731 887 63.0 MiB 0.02 0.00 1.01096 -26.8731 -1.01096 1.01096 0.99 0.000160366 0.000143977 0.00858957 0.00777973 32 548 15 6.64007e+06 75348 554710. 1919.41 2.65 0.0535852 0.0455559 22834 132086 -1 492 17 271 271 17226 4682 1.02025 1.02025 -33.2067 -1.02025 0 0 701300. 2426.64 0.31 0.02 0.13 -1 -1 0.31 0.00726832 0.00635439 40 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 5.79 vpr 63.21 MiB -1 -1 0.09 19560 1 0.03 -1 -1 33612 -1 -1 7 29 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64732 29 15 104 105 1 73 51 17 17 289 -1 unnamed_device 24.9 MiB 0.02 264 4657 1672 2272 713 63.2 MiB 0.03 0.00 1.02196 -28.5094 -1.02196 1.02196 0.93 0.000182139 0.000164507 0.00855513 0.00772421 32 646 16 6.64007e+06 87906 554710. 1919.41 2.82 0.0477803 0.0407998 22834 132086 -1 539 12 314 314 16989 4637 1.10745 1.10745 -36.1802 -1.10745 0 0 701300. 2426.64 0.31 0.01 0.13 -1 -1 0.31 0.00562952 0.00498684 44 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 5.68 vpr 63.42 MiB -1 -1 0.10 19908 1 0.03 -1 -1 33928 -1 -1 7 31 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64944 31 16 111 112 1 79 54 17 17 289 -1 unnamed_device 25.0 MiB 0.02 288 5766 2110 2274 1382 63.4 MiB 0.03 0.00 1.26207 -31.3475 -1.26207 1.26207 0.96 0.000194223 0.00017624 0.0117191 0.0106359 32 643 20 6.64007e+06 87906 554710. 1919.41 2.65 0.062048 0.0529575 22834 132086 -1 569 9 292 292 16155 4566 1.07325 1.07325 -38.9558 -1.07325 0 0 701300. 2426.64 0.31 0.02 0.13 -1 -1 0.31 0.00570904 0.00514302 46 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 5.18 vpr 63.36 MiB -1 -1 0.10 19700 1 0.03 -1 -1 33932 -1 -1 7 33 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64876 33 17 118 119 1 82 57 17 17 289 -1 unnamed_device 25.0 MiB 0.03 401 5071 2050 2946 75 63.4 MiB 0.03 0.00 1.27307 -35.8793 -1.27307 1.27307 0.98 0.000204074 0.000185137 0.0102523 0.00931895 26 831 19 6.64007e+06 87906 477104. 1650.88 2.19 0.0664543 0.0567011 21682 110474 -1 740 14 371 371 23600 6265 1.08425 1.08425 -43.8998 -1.08425 0 0 585099. 2024.56 0.25 0.02 0.11 -1 -1 0.25 0.00727049 0.00641944 49 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 3.93 vpr 63.75 MiB -1 -1 0.11 19636 1 0.03 -1 -1 34008 -1 -1 8 37 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65280 37 19 132 133 1 90 64 17 17 289 -1 unnamed_device 25.3 MiB 0.03 557 6287 2306 3181 800 63.8 MiB 0.04 0.00 1.29507 -44.8559 -1.29507 1.29507 0.97 0.000225109 0.000204563 0.0121878 0.011104 32 995 18 6.64007e+06 100464 554710. 1919.41 0.86 0.0398979 0.0347898 22834 132086 -1 934 14 425 425 39496 9017 1.11725 1.11725 -54.0109 -1.11725 0 0 701300. 2426.64 0.30 0.03 0.13 -1 -1 0.30 0.00805073 0.00711884 55 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 3.96 vpr 63.77 MiB -1 -1 0.10 20136 1 0.03 -1 -1 33952 -1 -1 8 41 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65300 41 21 146 147 1 102 70 17 17 289 -1 unnamed_device 25.2 MiB 0.03 384 9574 4009 5090 475 63.8 MiB 0.05 0.00 1.31707 -43.2987 -1.31707 1.31707 0.98 0.000255142 0.000226161 0.0176905 0.0160786 30 1025 26 6.64007e+06 100464 526063. 1820.29 0.88 0.0513108 0.044718 22546 126617 -1 814 13 511 511 30710 8364 1.15145 1.15145 -52.6186 -1.15145 0 0 666494. 2306.21 0.30 0.02 0.12 -1 -1 0.30 0.00825283 0.00730251 61 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 5.61 vpr 63.53 MiB -1 -1 0.11 19748 1 0.03 -1 -1 33932 -1 -1 10 45 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65052 45 23 160 161 1 114 78 17 17 289 -1 unnamed_device 25.0 MiB 0.03 558 10204 4231 5873 100 63.5 MiB 0.05 0.00 1.33907 -51.642 -1.33907 1.33907 0.98 0.000277204 0.000251841 0.0178577 0.0162589 28 1257 27 6.64007e+06 125580 500653. 1732.36 2.52 0.0980486 0.0847981 21970 115934 -1 1044 13 539 539 47019 11468 1.28145 1.28145 -65.1342 -1.28145 0 0 612192. 2118.31 0.28 0.03 0.11 -1 -1 0.28 0.00898242 0.00798283 68 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 5.99 vpr 63.91 MiB -1 -1 0.11 20052 1 0.03 -1 -1 33676 -1 -1 10 49 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65448 49 25 174 175 1 123 84 17 17 289 -1 unnamed_device 25.3 MiB 0.04 754 10698 2765 7201 732 63.9 MiB 0.06 0.00 1.59018 -62.7714 -1.59018 1.59018 0.98 0.000293549 0.000267105 0.0184928 0.0168313 32 1427 16 6.64007e+06 125580 554710. 1919.41 2.84 0.0835489 0.0726293 22834 132086 -1 1262 18 614 614 51379 11554 1.08305 1.08305 -68.9989 -1.08305 0 0 701300. 2426.64 0.30 0.03 0.13 -1 -1 0.30 0.0121954 0.0107954 73 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 5.34 vpr 63.79 MiB -1 -1 0.11 19816 1 0.03 -1 -1 33676 -1 -1 11 57 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65316 57 29 202 203 1 143 97 17 17 289 -1 unnamed_device 25.4 MiB 0.04 729 13639 3084 9998 557 63.8 MiB 0.07 0.00 1.63418 -70.6178 -1.63418 1.63418 0.98 0.00034171 0.00031148 0.0217859 0.0198252 28 1624 32 6.64007e+06 138138 500653. 1732.36 2.22 0.11192 0.0977693 21970 115934 -1 1449 12 615 615 54307 13433 1.30145 1.30145 -83.7934 -1.30145 0 0 612192. 2118.31 0.28 0.03 0.12 -1 -1 0.28 0.0103164 0.00920806 85 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 6.01 vpr 64.22 MiB -1 -1 0.11 19796 1 0.03 -1 -1 33772 -1 -1 13 65 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65764 65 33 230 231 1 164 111 17 17 289 -1 unnamed_device 25.8 MiB 0.04 880 14209 3395 10146 668 64.2 MiB 0.08 0.00 1.90729 -82.9449 -1.90729 1.90729 0.98 0.000389513 0.000355736 0.0219049 0.0199968 32 1818 18 6.64007e+06 163254 554710. 1919.41 2.83 0.127556 0.110828 22834 132086 -1 1633 16 718 718 60614 14123 1.28925 1.28925 -93.8795 -1.28925 0 0 701300. 2426.64 0.29 0.04 0.13 -1 -1 0.29 0.0140055 0.012376 97 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 6.43 vpr 64.73 MiB -1 -1 0.12 20084 1 0.03 -1 -1 33888 -1 -1 19 97 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 97 49 342 343 1 246 165 17 17 289 -1 unnamed_device 25.9 MiB 0.06 1566 34969 11882 20157 2930 64.7 MiB 0.18 0.00 2.54151 -147.731 -2.54151 2.54151 0.97 0.000575834 0.0005298 0.0467062 0.0427478 30 2870 23 6.64007e+06 238602 526063. 1820.29 3.11 0.18449 0.163749 22546 126617 -1 2484 13 854 854 60852 14149 1.39605 1.39605 -143.648 -1.39605 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0180093 0.0162833 145 -1 -1 -1 -1 -1 +fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 6.70 vpr 65.30 MiB -1 -1 0.13 20316 1 0.04 -1 -1 34076 -1 -1 25 129 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 129 65 454 455 1 328 219 17 17 289 -1 unnamed_device 26.8 MiB 0.07 2019 52280 18021 30866 3393 65.3 MiB 0.28 0.01 3.17573 -213.288 -3.17573 3.17573 0.97 0.000823572 0.000757728 0.0669141 0.0614881 30 3782 21 6.64007e+06 313950 526063. 1820.29 3.15 0.266626 0.238976 22546 126617 -1 3282 19 1289 1289 106083 24092 1.74445 1.74445 -205.338 -1.74445 0 0 666494. 2306.21 0.30 0.08 0.12 -1 -1 0.30 0.0326314 0.0295407 193 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 3.39 vpr 62.84 MiB -1 -1 0.10 19848 1 0.02 -1 -1 33428 -1 -1 2 7 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64348 7 4 27 28 1 14 13 17 17 289 -1 unnamed_device 24.4 MiB 0.01 35 163 52 107 4 62.8 MiB 0.00 0.00 0.649848 -6.05553 -0.649848 0.649848 0.99 5.4599e-05 4.819e-05 0.000858382 0.000758899 12 115 9 6.65987e+06 25356 231691. 801.699 0.68 0.00448092 0.00389631 19090 58805 -1 85 9 46 46 2019 768 0.890248 0.890248 -7.25753 -0.890248 0 0 318358. 1101.58 0.14 0.01 0.06 -1 -1 0.14 0.00247928 0.00223998 10 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 4.42 vpr 62.82 MiB -1 -1 0.10 19732 1 0.02 -1 -1 33492 -1 -1 2 9 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64332 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 24.4 MiB 0.01 55 396 81 266 49 62.8 MiB 0.01 0.00 0.660848 -7.29716 -0.660848 0.660848 0.99 6.5514e-05 5.8309e-05 0.00147499 0.00130186 24 170 10 6.65987e+06 25356 448715. 1552.65 1.57 0.0175766 0.0142596 21394 104001 -1 138 17 100 100 6238 1767 0.781048 0.781048 -10.182 -0.781048 0 0 554710. 1919.41 0.23 0.01 0.09 -1 -1 0.23 0.00366139 0.00319228 13 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 3.70 vpr 62.81 MiB -1 -1 0.10 19444 1 0.02 -1 -1 33288 -1 -1 2 11 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64320 11 6 41 42 1 26 19 17 17 289 -1 unnamed_device 24.4 MiB 0.01 57 794 216 487 91 62.8 MiB 0.01 0.00 0.682848 -9.10125 -0.682848 0.682848 0.98 7.8174e-05 6.9954e-05 0.00285073 0.00255278 28 217 23 6.65987e+06 25356 500653. 1732.36 0.78 0.0141405 0.0118835 21970 115934 -1 186 26 236 236 13339 4297 0.923248 0.923248 -12.3466 -0.923248 0 0 612192. 2118.31 0.28 0.02 0.12 -1 -1 0.28 0.00523028 0.0044749 16 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 4.59 vpr 62.73 MiB -1 -1 0.09 19592 1 0.02 -1 -1 33604 -1 -1 4 13 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64240 13 7 48 49 1 32 24 17 17 289 -1 unnamed_device 24.3 MiB 0.01 109 908 283 509 116 62.7 MiB 0.01 0.00 0.704848 -11.8803 -0.704848 0.704848 0.97 8.5682e-05 7.6128e-05 0.00276641 0.00248338 20 313 15 6.65987e+06 50712 394039. 1363.46 1.76 0.014455 0.0122026 20530 87850 -1 274 14 163 163 13481 3734 1.14165 1.14165 -17.2548 -1.14165 0 0 477104. 1650.88 0.22 0.01 0.09 -1 -1 0.22 0.0041356 0.00365393 20 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 4.85 vpr 63.01 MiB -1 -1 0.10 19632 1 0.03 -1 -1 33384 -1 -1 3 15 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64524 15 8 55 56 1 38 26 17 17 289 -1 unnamed_device 24.5 MiB 0.01 110 1204 358 624 222 63.0 MiB 0.01 0.00 0.944958 -13.9205 -0.944958 0.944958 0.98 9.7738e-05 8.7345e-05 0.00358461 0.00322577 26 324 14 6.65987e+06 38034 477104. 1650.88 1.92 0.0299314 0.0249499 21682 110474 -1 285 17 212 212 20819 5577 1.18365 1.18365 -19.911 -1.18365 0 0 585099. 2024.56 0.27 0.02 0.11 -1 -1 0.27 0.00488151 0.00426098 22 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 3.68 vpr 63.12 MiB -1 -1 0.10 19560 1 0.02 -1 -1 33544 -1 -1 4 17 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64636 17 9 62 63 1 41 30 17 17 289 -1 unnamed_device 24.6 MiB 0.01 120 1686 530 931 225 63.1 MiB 0.01 0.00 0.955958 -15.9716 -0.955958 0.955958 0.99 0.00011176 0.000100192 0.00458477 0.00412671 26 375 17 6.65987e+06 50712 477104. 1650.88 0.75 0.0197418 0.0167617 21682 110474 -1 323 15 197 197 18815 5093 1.32585 1.32585 -23.578 -1.32585 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00496481 0.00436794 25 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 4.69 vpr 62.90 MiB -1 -1 0.10 19544 1 0.02 -1 -1 33384 -1 -1 4 19 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64408 19 10 69 70 1 44 33 17 17 289 -1 unnamed_device 24.3 MiB 0.01 131 1749 451 1020 278 62.9 MiB 0.01 0.00 0.966958 -17.6732 -0.966958 0.966958 0.99 0.000122181 0.000109982 0.00471617 0.0042622 30 334 13 6.65987e+06 50712 526063. 1820.29 1.70 0.0339784 0.028545 22546 126617 -1 272 12 166 166 7594 2339 0.954248 0.954248 -21.2364 -0.954248 0 0 666494. 2306.21 0.30 0.01 0.12 -1 -1 0.30 0.00483903 0.00428877 28 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 4.69 vpr 62.80 MiB -1 -1 0.10 19516 1 0.02 -1 -1 33548 -1 -1 5 21 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64308 21 11 76 77 1 49 37 17 17 289 -1 unnamed_device 24.2 MiB 0.01 147 2599 750 1295 554 62.8 MiB 0.02 0.00 0.977958 -19.9867 -0.977958 0.977958 1.00 0.000146701 0.000133203 0.006481 0.00586351 28 416 14 6.65987e+06 63390 500653. 1732.36 1.72 0.0397738 0.0335944 21970 115934 -1 354 17 255 255 17315 4686 1.01439 1.01439 -25.3919 -1.01439 0 0 612192. 2118.31 0.27 0.02 0.11 -1 -1 0.27 0.00620201 0.00543949 31 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 5.03 vpr 63.30 MiB -1 -1 0.10 19504 1 0.03 -1 -1 33668 -1 -1 5 23 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64824 23 12 83 84 1 55 40 17 17 289 -1 unnamed_device 24.7 MiB 0.01 184 3032 1051 1425 556 63.3 MiB 0.02 0.00 0.988958 -22.5516 -0.988958 0.988958 1.00 0.000143309 0.000129235 0.00705651 0.00637451 26 576 22 6.65987e+06 63390 477104. 1650.88 2.07 0.0419531 0.0354603 21682 110474 -1 420 14 266 266 20313 5520 1.11845 1.11845 -29.3475 -1.11845 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00579634 0.00510585 34 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 5.73 vpr 63.18 MiB -1 -1 0.10 19660 1 0.02 -1 -1 33396 -1 -1 5 25 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64696 25 13 90 91 1 61 43 17 17 289 -1 unnamed_device 24.6 MiB 0.02 184 3568 1223 1766 579 63.2 MiB 0.02 0.00 0.999958 -24.5266 -0.999958 0.999958 0.97 0.000153574 0.000137807 0.00798949 0.00722851 32 563 17 6.65987e+06 63390 554710. 1919.41 2.74 0.0460843 0.039001 22834 132086 -1 445 15 314 314 23119 6606 1.15145 1.15145 -32.6475 -1.15145 0 0 701300. 2426.64 0.30 0.02 0.14 -1 -1 0.30 0.0063005 0.00554481 37 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 5.99 vpr 63.36 MiB -1 -1 0.10 19612 1 0.03 -1 -1 33616 -1 -1 6 27 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64880 27 14 97 98 1 67 47 17 17 289 -1 unnamed_device 25.0 MiB 0.02 204 3995 1183 1919 893 63.4 MiB 0.02 0.00 1.01096 -26.2721 -1.01096 1.01096 0.99 0.000164155 0.000147802 0.00867923 0.00781646 36 579 23 6.65987e+06 76068 612192. 2118.31 2.92 0.0627667 0.0528668 23410 145293 -1 500 17 388 388 27011 7695 1.11845 1.11845 -33.9616 -1.11845 0 0 782063. 2706.10 0.32 0.02 0.13 -1 -1 0.32 0.00664791 0.00581171 40 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 5.70 vpr 63.00 MiB -1 -1 0.09 19748 1 0.03 -1 -1 33532 -1 -1 7 29 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64516 29 15 104 105 1 73 51 17 17 289 -1 unnamed_device 24.7 MiB 0.02 225 4657 1422 2169 1066 63.0 MiB 0.02 0.00 1.02196 -27.9084 -1.02196 1.02196 0.94 0.000161598 0.000146199 0.00857116 0.00769204 32 760 24 6.65987e+06 88746 554710. 1919.41 2.76 0.0556316 0.0471648 22834 132086 -1 588 19 411 411 33281 9441 1.26065 1.26065 -39.0116 -1.26065 0 0 701300. 2426.64 0.30 0.02 0.13 -1 -1 0.30 0.00835086 0.00732976 44 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 5.28 vpr 63.14 MiB -1 -1 0.09 19684 1 0.03 -1 -1 33924 -1 -1 7 31 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64656 31 16 111 112 1 79 54 17 17 289 -1 unnamed_device 24.8 MiB 0.02 289 5766 2123 2335 1308 63.1 MiB 0.03 0.00 1.26207 -31.5879 -1.26207 1.26207 0.98 0.000189364 0.000170506 0.0114567 0.0103605 28 715 23 6.65987e+06 88746 500653. 1732.36 2.28 0.077435 0.0660189 21970 115934 -1 666 12 322 322 21709 6071 1.09645 1.09645 -40.2312 -1.09645 0 0 612192. 2118.31 0.28 0.02 0.11 -1 -1 0.28 0.00677172 0.00605798 46 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 3.89 vpr 63.05 MiB -1 -1 0.10 19632 1 0.03 -1 -1 33936 -1 -1 7 33 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64560 33 17 118 119 1 82 57 17 17 289 -1 unnamed_device 24.6 MiB 0.02 313 5071 2061 2931 79 63.0 MiB 0.03 0.00 1.27307 -34.1965 -1.27307 1.27307 0.96 0.000194497 0.000174787 0.0103441 0.00941904 28 810 16 6.65987e+06 88746 500653. 1732.36 0.85 0.0356019 0.0309161 21970 115934 -1 683 19 378 378 31313 7977 1.30265 1.30265 -45.7986 -1.30265 0 0 612192. 2118.31 0.27 0.02 0.11 -1 -1 0.27 0.0087602 0.00769576 49 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 3.80 vpr 63.29 MiB -1 -1 0.09 19520 1 0.03 -1 -1 33788 -1 -1 8 37 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64812 37 19 132 133 1 90 64 17 17 289 -1 unnamed_device 24.8 MiB 0.02 565 6287 1771 3748 768 63.3 MiB 0.04 0.00 1.29507 -44.8559 -1.29507 1.29507 0.97 0.000228965 0.000207987 0.0123573 0.0112543 28 1028 16 6.65987e+06 101424 500653. 1732.36 0.80 0.0392933 0.0342935 21970 115934 -1 985 17 377 377 29772 7191 1.12239 1.12239 -53.8468 -1.12239 0 0 612192. 2118.31 0.28 0.03 0.12 -1 -1 0.28 0.00950104 0.00840922 55 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 4.02 vpr 63.17 MiB -1 -1 0.10 19560 1 0.03 -1 -1 33952 -1 -1 8 41 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64688 41 21 146 147 1 102 70 17 17 289 -1 unnamed_device 24.6 MiB 0.02 384 9574 3990 5436 148 63.2 MiB 0.05 0.00 1.31707 -43.4189 -1.31707 1.31707 0.97 0.000262901 0.000239855 0.0176179 0.0160523 32 1123 29 6.65987e+06 101424 554710. 1919.41 0.92 0.0534912 0.0468501 22834 132086 -1 878 16 540 540 42653 11405 1.21545 1.21545 -55.7748 -1.21545 0 0 701300. 2426.64 0.31 0.03 0.13 -1 -1 0.31 0.00980909 0.00866266 61 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 5.10 vpr 63.59 MiB -1 -1 0.09 19992 1 0.03 -1 -1 33696 -1 -1 10 45 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65120 45 23 160 161 1 114 78 17 17 289 -1 unnamed_device 25.1 MiB 0.02 735 9872 2812 5912 1148 63.6 MiB 0.05 0.00 1.33907 -56.45 -1.33907 1.33907 0.99 0.000265345 0.000241295 0.0182719 0.0166662 26 1347 16 6.65987e+06 126780 477104. 1650.88 2.12 0.0738049 0.0641459 21682 110474 -1 1282 12 491 491 42193 10179 1.39065 1.39065 -72.2324 -1.39065 0 0 585099. 2024.56 0.25 0.02 0.10 -1 -1 0.25 0.00850143 0.00761073 68 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 3.99 vpr 63.61 MiB -1 -1 0.11 20064 1 0.03 -1 -1 34004 -1 -1 10 49 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65140 49 25 174 175 1 123 84 17 17 289 -1 unnamed_device 25.3 MiB 0.03 756 10698 2862 7088 748 63.6 MiB 0.06 0.00 1.59018 -62.4108 -1.59018 1.59018 0.97 0.000298542 0.000272134 0.0182198 0.0165903 32 1424 19 6.65987e+06 126780 554710. 1919.41 0.89 0.0537665 0.0471718 22834 132086 -1 1327 19 625 625 59836 14017 1.31245 1.31245 -74.3923 -1.31245 0 0 701300. 2426.64 0.31 0.03 0.13 -1 -1 0.31 0.011934 0.0105406 73 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 4.02 vpr 63.71 MiB -1 -1 0.10 19932 1 0.03 -1 -1 33740 -1 -1 11 57 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65240 57 29 202 203 1 143 97 17 17 289 -1 unnamed_device 25.3 MiB 0.03 731 13639 2970 10133 536 63.7 MiB 0.07 0.00 1.63418 -70.137 -1.63418 1.63418 0.96 0.000340021 0.000309396 0.0221181 0.0201634 30 1474 25 6.65987e+06 139458 526063. 1820.29 0.93 0.0673368 0.0592938 22546 126617 -1 1343 16 649 649 44693 11463 1.34545 1.34545 -82.8852 -1.34545 0 0 666494. 2306.21 0.29 0.03 0.12 -1 -1 0.29 0.0125545 0.0111662 85 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 4.18 vpr 63.91 MiB -1 -1 0.11 19984 1 0.03 -1 -1 34056 -1 -1 13 65 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65444 65 33 230 231 1 164 111 17 17 289 -1 unnamed_device 25.4 MiB 0.03 868 15539 3457 11557 525 63.9 MiB 0.08 0.00 1.90729 -83.1853 -1.90729 1.90729 0.97 0.000397481 0.000363468 0.024523 0.0223559 32 1866 40 6.65987e+06 164814 554710. 1919.41 0.98 0.0853849 0.0748434 22834 132086 -1 1590 25 756 756 110477 44135 1.42559 1.42559 -96.7947 -1.42559 0 0 701300. 2426.64 0.29 0.06 0.14 -1 -1 0.29 0.0200462 0.0176806 97 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 6.46 vpr 64.97 MiB -1 -1 0.12 20432 1 0.03 -1 -1 34008 -1 -1 19 97 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66532 97 49 342 343 1 246 165 17 17 289 -1 unnamed_device 26.4 MiB 0.05 1562 34969 11904 20422 2643 65.0 MiB 0.17 0.00 2.54151 -147.731 -2.54151 2.54151 0.97 0.00051599 0.000471868 0.0457394 0.0418962 32 2996 18 6.65987e+06 240882 554710. 1919.41 3.11 0.227022 0.201078 22834 132086 -1 2681 21 1005 1005 95192 22013 1.53239 1.53239 -150.543 -1.53239 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0249215 0.0222525 145 -1 -1 -1 -1 -1 +fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 7.82 vpr 65.45 MiB -1 -1 0.14 20376 1 0.03 -1 -1 34092 -1 -1 25 129 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67024 129 65 454 455 1 328 219 17 17 289 -1 unnamed_device 26.9 MiB 0.07 2066 52280 17634 30772 3874 65.5 MiB 0.27 0.01 3.17573 -214.851 -3.17573 3.17573 0.99 0.0008238 0.0007545 0.0649369 0.0596213 38 3536 19 6.65987e+06 316950 638502. 2209.35 4.17 0.289481 0.258837 23986 155662 -1 3100 25 1195 1195 112551 36888 1.63919 1.63919 -194.332 -1.63919 0 0 851065. 2944.86 0.36 0.09 0.15 -1 -1 0.36 0.0389721 0.035055 193 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_003bits.v common 3.06 vpr 63.59 MiB -1 -1 0.09 19796 1 0.02 -1 -1 33668 -1 -1 1 7 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65120 7 4 27 28 1 12 12 17 17 289 -1 unnamed_device 25.2 MiB 0.02 77 38 20 18 0 63.6 MiB 0.00 0.00 0.942216 -8.23033 -0.942216 0.942216 1.01 5.9153e-05 4.9799e-05 0.00044228 0.000399508 8 125 9 6.95648e+06 14475.7 166176. 575.005 0.30 0.00325915 0.00290898 20866 45572 -1 121 5 20 20 1899 476 0.942216 0.942216 -9.23274 -0.942216 0 0 202963. 702.294 0.11 0.01 0.05 -1 -1 0.11 0.00217303 0.00200477 5 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_004bits.v common 3.43 vpr 63.43 MiB -1 -1 0.10 19788 1 0.02 -1 -1 33604 -1 -1 1 9 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64952 9 5 34 35 1 15 15 17 17 289 -1 unnamed_device 25.0 MiB 0.03 33 519 172 322 25 63.4 MiB 0.01 0.00 0.583992 -7.62477 -0.583992 0.583992 0.98 7.4454e-05 6.6726e-05 0.00219537 0.00193853 18 138 11 6.95648e+06 14475.7 376052. 1301.22 0.57 0.0106051 0.00883615 22882 88689 -1 98 7 44 44 1942 698 0.834592 0.834592 -9.50427 -0.834592 0 0 470940. 1629.55 0.20 0.01 0.08 -1 -1 0.20 0.00265514 0.00240665 7 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_005bits.v common 4.69 vpr 63.63 MiB -1 -1 0.10 19520 1 0.02 -1 -1 33572 -1 -1 1 11 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65156 11 6 41 42 1 19 18 17 17 289 -1 unnamed_device 25.1 MiB 0.03 50 455 107 320 28 63.6 MiB 0.01 0.00 0.701895 -10.2821 -0.701895 0.701895 1.01 7.3827e-05 6.578e-05 0.00194262 0.00174182 22 159 8 6.95648e+06 14475.7 443629. 1535.05 1.71 0.0149297 0.0124729 23458 102101 -1 130 10 52 52 2992 952 0.87204 0.87204 -12.4122 -0.87204 0 0 531479. 1839.03 0.24 0.01 0.10 -1 -1 0.24 0.00306938 0.00271399 8 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_006bits.v common 4.82 vpr 63.98 MiB -1 -1 0.10 19556 1 0.02 -1 -1 33260 -1 -1 2 13 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65520 13 7 48 49 1 25 22 17 17 289 -1 unnamed_device 25.4 MiB 0.04 60 982 279 510 193 64.0 MiB 0.01 0.00 0.745895 -12.8684 -0.745895 0.745895 1.02 8.5592e-05 7.6002e-05 0.00331455 0.00296799 22 190 13 6.95648e+06 28951.4 443629. 1535.05 1.82 0.0334236 0.027515 23458 102101 -1 150 9 82 82 3919 1379 0.802432 0.802432 -14.9255 -0.802432 0 0 531479. 1839.03 0.23 0.01 0.10 -1 -1 0.23 0.0032926 0.00296746 10 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_007bits.v common 4.85 vpr 63.71 MiB -1 -1 0.11 19572 1 0.02 -1 -1 33636 -1 -1 2 15 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65240 15 8 55 56 1 32 25 17 17 289 -1 unnamed_device 25.2 MiB 0.04 173 925 234 575 116 63.7 MiB 0.01 0.00 0.727332 -16.0566 -0.727332 0.727332 1.01 0.000100443 9.0113e-05 0.00305924 0.00275532 26 334 16 6.95648e+06 28951.4 503264. 1741.40 1.82 0.0275764 0.0229808 24322 120374 -1 303 11 140 140 9922 2445 0.959892 0.959892 -20.1665 -0.959892 0 0 618332. 2139.56 0.26 0.01 0.12 -1 -1 0.26 0.00382698 0.00341561 11 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_008bits.v common 3.94 vpr 63.68 MiB -1 -1 0.10 19620 1 0.02 -1 -1 33460 -1 -1 2 17 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65212 17 9 62 63 1 37 28 17 17 289 -1 unnamed_device 25.1 MiB 0.04 245 1162 326 697 139 63.7 MiB 0.01 0.00 0.732132 -19.7838 -0.732132 0.732132 1.00 0.000109827 9.8887e-05 0.00361834 0.00328341 32 443 13 6.95648e+06 28951.4 586450. 2029.24 0.84 0.0175118 0.0149206 25474 144626 -1 433 11 135 135 12374 2788 0.949732 0.949732 -25.4987 -0.949732 0 0 744469. 2576.02 0.32 0.01 0.14 -1 -1 0.32 0.00435912 0.00387475 13 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_009bits.v common 5.99 vpr 64.07 MiB -1 -1 0.10 19912 1 0.02 -1 -1 33732 -1 -1 2 19 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65608 19 10 69 70 1 44 31 17 17 289 -1 unnamed_device 25.5 MiB 0.04 110 2431 711 1232 488 64.1 MiB 0.02 0.00 0.760332 -18.6649 -0.760332 0.760332 1.00 0.000126464 0.000114058 0.00690198 0.00624632 32 397 27 6.95648e+06 28951.4 586450. 2029.24 2.85 0.0490173 0.0409016 25474 144626 -1 300 24 386 386 22853 7080 0.960732 0.960732 -23.2224 -0.960732 0 0 744469. 2576.02 0.32 0.02 0.14 -1 -1 0.32 0.00738572 0.00638461 14 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_010bits.v common 4.48 vpr 64.03 MiB -1 -1 0.10 19632 1 0.03 -1 -1 33612 -1 -1 2 21 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65564 21 11 76 77 1 49 34 17 17 289 -1 unnamed_device 25.7 MiB 0.04 139 1904 618 1068 218 64.0 MiB 0.01 0.00 0.771332 -21.208 -0.771332 0.771332 1.00 0.000137106 0.000123602 0.00523281 0.00473329 34 392 28 6.95648e+06 28951.4 618332. 2139.56 1.35 0.0313119 0.026425 25762 151098 -1 405 21 384 384 25260 7070 1.02193 1.02193 -28.0965 -1.02193 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.0072157 0.00630037 16 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_011bits.v common 5.89 vpr 64.21 MiB -1 -1 0.09 19648 1 0.02 -1 -1 33748 -1 -1 3 23 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65748 23 12 83 84 1 55 38 17 17 289 -1 unnamed_device 25.6 MiB 0.04 268 1865 477 1343 45 64.2 MiB 0.01 0.00 0.816915 -25.4788 -0.816915 0.816915 0.97 0.000153841 0.000139281 0.00464162 0.00420439 34 626 21 6.95648e+06 43427 618332. 2139.56 2.82 0.0490204 0.0409975 25762 151098 -1 565 15 305 305 27510 6277 1.21133 1.21133 -33.3686 -1.21133 0 0 787024. 2723.27 0.32 0.02 0.14 -1 -1 0.32 0.00619508 0.00545344 17 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_012bits.v common 5.33 vpr 63.76 MiB -1 -1 0.08 19572 1 0.02 -1 -1 33684 -1 -1 3 25 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65288 25 13 90 91 1 60 41 17 17 289 -1 unnamed_device 25.4 MiB 0.04 190 1721 354 1306 61 63.8 MiB 0.01 0.00 0.816915 -25.1995 -0.816915 0.816915 0.97 0.000152974 0.000137184 0.00483636 0.0043624 26 676 36 6.95648e+06 43427 503264. 1741.40 2.32 0.0572973 0.0483005 24322 120374 -1 533 14 365 365 26310 7779 1.21133 1.21133 -37.9916 -1.21133 0 0 618332. 2139.56 0.26 0.02 0.12 -1 -1 0.26 0.0063901 0.00567592 19 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_013bits.v common 4.57 vpr 64.25 MiB -1 -1 0.10 19784 1 0.03 -1 -1 33464 -1 -1 3 27 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65796 27 14 97 98 1 66 44 17 17 289 -1 unnamed_device 25.9 MiB 0.04 435 2431 656 1473 302 64.3 MiB 0.02 0.00 0.826332 -34.4783 -0.826332 0.826332 1.00 0.000162807 0.00014656 0.00604362 0.00549616 34 930 27 6.95648e+06 43427 618332. 2139.56 1.43 0.0442022 0.0374788 25762 151098 -1 845 14 354 354 45399 9353 1.30553 1.30553 -45.9803 -1.30553 0 0 787024. 2723.27 0.31 0.02 0.15 -1 -1 0.31 0.00668813 0.00589601 20 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_014bits.v common 4.52 vpr 64.23 MiB -1 -1 0.10 19528 1 0.03 -1 -1 33440 -1 -1 4 29 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65776 29 15 104 105 1 72 48 17 17 289 -1 unnamed_device 25.8 MiB 0.03 474 4311 1353 2257 701 64.2 MiB 0.02 0.00 0.826332 -37.2563 -0.826332 0.826332 0.99 0.000175284 0.000158964 0.00965133 0.00876729 34 975 19 6.95648e+06 57902.7 618332. 2139.56 1.37 0.046869 0.0400861 25762 151098 -1 882 20 433 433 55338 10868 1.26633 1.26633 -48.9958 -1.26633 0 0 787024. 2723.27 0.33 0.03 0.15 -1 -1 0.33 0.00866248 0.00761607 23 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_015bits.v common 6.30 vpr 63.89 MiB -1 -1 0.10 19728 1 0.03 -1 -1 33556 -1 -1 3 31 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65424 31 16 111 112 1 78 50 17 17 289 -1 unnamed_device 25.5 MiB 0.05 264 4650 1879 2727 44 63.9 MiB 0.03 0.00 1.08336 -32.371 -1.08336 1.08336 0.99 0.000189348 0.000170995 0.0104906 0.00954071 36 735 21 6.95648e+06 43427 648988. 2245.63 3.12 0.0675345 0.0575294 26050 158493 -1 608 14 419 419 32498 8333 1.16723 1.16723 -42.8702 -1.16723 0 0 828058. 2865.25 0.33 0.02 0.15 -1 -1 0.33 0.00758397 0.00673695 24 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_016bits.v common 6.94 vpr 64.04 MiB -1 -1 0.09 19660 1 0.03 -1 -1 33892 -1 -1 4 33 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65580 33 17 118 119 1 81 54 17 17 289 -1 unnamed_device 25.6 MiB 0.07 279 5052 2108 2905 39 64.0 MiB 0.03 0.00 1.09436 -35.3801 -1.09436 1.09436 1.01 0.000202395 0.000183489 0.0109893 0.00999715 36 732 25 6.95648e+06 57902.7 648988. 2245.63 3.71 0.0690947 0.0588233 26050 158493 -1 621 15 421 421 36499 9183 1.29733 1.29733 -46.5146 -1.29733 0 0 828058. 2865.25 0.33 0.02 0.16 -1 -1 0.33 0.00783368 0.00690406 25 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_018bits.v common 4.81 vpr 63.93 MiB -1 -1 0.11 19540 1 0.03 -1 -1 33992 -1 -1 4 37 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65464 37 19 132 133 1 87 60 17 17 289 -1 unnamed_device 25.5 MiB 0.09 309 6378 2655 3680 43 63.9 MiB 0.04 0.00 1.11636 -39.2659 -1.11636 1.11636 1.03 0.000225079 0.000202824 0.0133484 0.0121143 34 995 38 6.95648e+06 57902.7 618332. 2139.56 1.48 0.0678879 0.0583806 25762 151098 -1 781 19 504 504 57617 14821 1.22703 1.22703 -53.6878 -1.22703 0 0 787024. 2723.27 0.31 0.03 0.15 -1 -1 0.31 0.0105639 0.00930509 28 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_020bits.v common 5.09 vpr 64.36 MiB -1 -1 0.10 20032 1 0.03 -1 -1 33796 -1 -1 4 41 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65908 41 21 146 147 1 96 66 17 17 289 -1 unnamed_device 25.9 MiB 0.09 352 7381 3021 4316 44 64.4 MiB 0.04 0.00 1.13836 -45.2004 -1.13836 1.13836 1.04 0.000243678 0.000220814 0.0149451 0.0136106 34 1238 32 6.95648e+06 57902.7 618332. 2139.56 1.74 0.0773178 0.0671098 25762 151098 -1 851 27 631 631 68466 15886 1.44463 1.44463 -62.7154 -1.44463 0 0 787024. 2723.27 0.31 0.04 0.15 -1 -1 0.31 0.0131786 0.0115051 31 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_022bits.v common 5.26 vpr 64.50 MiB -1 -1 0.10 20044 1 0.03 -1 -1 33804 -1 -1 5 45 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66044 45 23 160 161 1 108 73 17 17 289 -1 unnamed_device 26.0 MiB 0.10 399 9041 3703 5284 54 64.5 MiB 0.05 0.00 1.16036 -48.7982 -1.16036 1.16036 1.00 0.000264538 0.00024177 0.017085 0.015506 36 1115 41 6.95648e+06 72378.4 648988. 2245.63 1.95 0.089136 0.0774848 26050 158493 -1 892 20 642 642 63479 15544 1.51683 1.51683 -66.6499 -1.51683 0 0 828058. 2865.25 0.32 0.04 0.15 -1 -1 0.32 0.0127873 0.0113134 34 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_024bits.v common 5.58 vpr 63.52 MiB -1 -1 0.10 19920 1 0.03 -1 -1 33496 -1 -1 5 49 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65040 49 25 174 175 1 119 79 17 17 289 -1 unnamed_device 24.9 MiB 0.10 446 11402 4788 6558 56 63.5 MiB 0.06 0.00 1.18236 -54.0689 -1.18236 1.18236 1.03 0.000320801 0.000293336 0.0209454 0.0190636 38 1388 45 6.95648e+06 72378.4 678818. 2348.85 2.12 0.100361 0.0876757 26626 170182 -1 1028 15 683 683 55387 13993 1.31933 1.31933 -71.5089 -1.31933 0 0 902133. 3121.57 0.35 0.03 0.17 -1 -1 0.35 0.0113358 0.0101411 37 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_028bits.v common 8.23 vpr 63.69 MiB -1 -1 0.11 19688 1 0.03 -1 -1 33184 -1 -1 6 57 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65220 57 29 202 203 1 142 92 17 17 289 -1 unnamed_device 25.1 MiB 0.08 569 13754 5730 7952 72 63.7 MiB 0.07 0.00 1.22636 -64.993 -1.22636 1.22636 1.03 0.00033309 0.000303046 0.0236915 0.0215694 46 1349 23 6.95648e+06 86854.1 828058. 2865.25 4.69 0.150727 0.131211 28066 200906 -1 1025 17 674 674 49948 12991 1.23993 1.23993 -76.1255 -1.23993 0 0 1.01997e+06 3529.29 0.41 0.04 0.20 -1 -1 0.41 0.0137821 0.0123454 43 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_032bits.v common 10.52 vpr 64.59 MiB -1 -1 0.11 19800 1 0.03 -1 -1 33604 -1 -1 7 65 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 65 33 230 231 1 162 105 17 17 289 -1 unnamed_device 26.2 MiB 0.09 751 14925 6336 8453 136 64.6 MiB 0.07 0.00 1.50539 -78.6931 -1.50539 1.50539 1.01 0.000390398 0.000353305 0.0246682 0.0224453 38 1832 33 6.95648e+06 101330 678818. 2348.85 7.12 0.20885 0.181583 26626 170182 -1 1406 15 868 868 82295 18774 1.55453 1.55453 -100.727 -1.55453 0 0 902133. 3121.57 0.35 0.04 0.16 -1 -1 0.35 0.0149211 0.0133387 49 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_048bits.v common 6.21 vpr 65.09 MiB -1 -1 0.11 20048 1 0.03 -1 -1 33872 -1 -1 10 97 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 97 49 342 343 1 243 156 17 17 289 -1 unnamed_device 26.3 MiB 0.11 1409 26972 7248 18400 1324 65.1 MiB 0.12 0.00 1.91642 -137.228 -1.91642 1.91642 1.00 0.00056226 0.000514525 0.0376044 0.0343993 48 2911 29 6.95648e+06 144757 865456. 2994.66 2.54 0.144565 0.128358 28354 207349 -1 2527 28 1149 1149 260800 97328 1.72233 1.72233 -166.87 -1.72233 0 0 1.05005e+06 3633.38 0.43 0.12 0.20 -1 -1 0.43 0.0329389 0.0293488 73 -1 -1 -1 -1 -1 +fixed_k6_frac_2ripple_N8_22nm.xml adder_064bits.v common 7.38 vpr 65.58 MiB -1 -1 0.13 20480 1 0.04 -1 -1 34060 -1 -1 13 129 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67156 129 65 454 455 1 324 207 17 17 289 -1 unnamed_device 26.8 MiB 0.12 2050 40599 14001 23823 2775 65.6 MiB 0.19 0.01 2.32745 -199.959 -2.32745 2.32745 1.00 0.000811493 0.000747509 0.0555105 0.0510996 50 3793 42 6.95648e+06 188184 902133. 3121.57 3.54 0.27885 0.251916 28642 213929 -1 3453 20 1493 1493 170019 34802 1.86333 1.86333 -225.975 -1.86333 0 0 1.08113e+06 3740.92 0.44 0.09 0.21 -1 -1 0.44 0.0351805 0.0319561 97 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_003bits.v common 3.24 vpr 63.68 MiB -1 -1 0.09 19740 1 0.02 -1 -1 33596 -1 -1 1 7 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65204 7 4 27 28 1 13 12 17 17 289 -1 unnamed_device 25.3 MiB 0.01 62 38 18 20 0 63.7 MiB 0.00 0.00 0.816915 -8.12034 -0.816915 0.816915 0.99 6.1607e-05 5.1969e-05 0.000424987 0.000382472 14 112 10 6.99608e+06 14715.7 292583. 1012.40 0.44 0.00325292 0.00289493 22018 70521 -1 146 8 38 38 3136 964 0.942216 0.942216 -10.8769 -0.942216 0 0 376052. 1301.22 0.17 0.00 0.07 -1 -1 0.17 0.00195775 0.00180026 5 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_004bits.v common 3.41 vpr 63.16 MiB -1 -1 0.09 19476 1 0.02 -1 -1 33648 -1 -1 1 9 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64672 9 5 34 35 1 17 15 17 17 289 -1 unnamed_device 24.7 MiB 0.01 37 573 189 341 43 63.2 MiB 0.01 0.00 0.712895 -8.22036 -0.712895 0.712895 1.00 6.3513e-05 5.5906e-05 0.00244094 0.00217204 18 115 7 6.99608e+06 14715.7 376052. 1301.22 0.53 0.00539383 0.00484412 22882 88689 -1 112 8 64 64 2610 993 0.834592 0.834592 -10.3505 -0.834592 0 0 470940. 1629.55 0.20 0.01 0.09 -1 -1 0.20 0.00275267 0.00250334 7 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_005bits.v common 4.53 vpr 63.43 MiB -1 -1 0.10 19908 1 0.02 -1 -1 33664 -1 -1 1 11 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64948 11 6 41 42 1 20 18 17 17 289 -1 unnamed_device 25.0 MiB 0.01 47 501 118 366 17 63.4 MiB 0.01 0.00 0.837432 -11.6988 -0.837432 0.837432 1.00 7.5228e-05 6.7171e-05 0.00207486 0.00185675 26 143 4 6.99608e+06 14715.7 503264. 1741.40 1.55 0.018961 0.0157405 24322 120374 -1 136 5 42 42 2337 782 0.837432 0.837432 -13.8289 -0.837432 0 0 618332. 2139.56 0.28 0.01 0.12 -1 -1 0.28 0.00270062 0.0024778 8 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_006bits.v common 3.49 vpr 63.62 MiB -1 -1 0.09 19688 1 0.02 -1 -1 33568 -1 -1 2 13 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65144 13 7 48 49 1 25 22 17 17 289 -1 unnamed_device 25.1 MiB 0.01 63 1042 311 583 148 63.6 MiB 0.01 0.00 0.699132 -12.3258 -0.699132 0.699132 0.98 8.6721e-05 7.7732e-05 0.00335941 0.00300802 20 187 10 6.99608e+06 29431.4 414966. 1435.87 0.61 0.0145498 0.0123369 23170 95770 -1 160 11 90 90 3599 1388 0.793379 0.793379 -14.1512 -0.793379 0 0 503264. 1741.40 0.22 0.01 0.10 -1 -1 0.22 0.00363811 0.00324101 10 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_007bits.v common 3.78 vpr 63.40 MiB -1 -1 0.11 19528 1 0.02 -1 -1 33704 -1 -1 2 15 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64924 15 8 55 56 1 32 25 17 17 289 -1 unnamed_device 24.9 MiB 0.01 74 925 268 574 83 63.4 MiB 0.01 0.00 0.859432 -15.8225 -0.859432 0.859432 1.01 9.7725e-05 8.729e-05 0.00299138 0.00269395 26 279 28 6.99608e+06 29431.4 503264. 1741.40 0.77 0.0180065 0.015156 24322 120374 -1 210 14 152 152 6903 2454 1.04203 1.04203 -18.2418 -1.04203 0 0 618332. 2139.56 0.27 0.01 0.12 -1 -1 0.27 0.00447044 0.00396787 11 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_008bits.v common 4.89 vpr 63.58 MiB -1 -1 0.09 19596 1 0.02 -1 -1 33572 -1 -1 2 17 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65104 17 9 62 63 1 36 28 17 17 289 -1 unnamed_device 25.1 MiB 0.02 227 1204 345 698 161 63.6 MiB 0.01 0.00 0.710132 -19.8674 -0.710132 0.710132 0.98 0.000108517 9.6836e-05 0.00365684 0.00331292 22 478 17 6.99608e+06 29431.4 443629. 1535.05 1.97 0.0252972 0.0212549 23458 102101 -1 421 12 158 158 14990 3529 0.960732 0.960732 -24.7541 -0.960732 0 0 531479. 1839.03 0.22 0.01 0.10 -1 -1 0.22 0.00445513 0.00395094 13 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_009bits.v common 5.92 vpr 63.58 MiB -1 -1 0.10 19544 1 0.02 -1 -1 33480 -1 -1 2 19 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65108 19 10 69 70 1 44 31 17 17 289 -1 unnamed_device 25.0 MiB 0.02 111 1903 539 1091 273 63.6 MiB 0.02 0.00 0.743132 -18.5385 -0.743132 0.743132 0.98 0.00012047 0.000108525 0.00543502 0.00491136 34 400 24 6.99608e+06 29431.4 618332. 2139.56 2.84 0.0471714 0.0393551 25762 151098 -1 282 22 268 268 17082 5187 1.07503 1.07503 -22.0534 -1.07503 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.00693083 0.00601804 14 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_010bits.v common 4.37 vpr 64.01 MiB -1 -1 0.10 19732 1 0.02 -1 -1 33652 -1 -1 2 21 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65548 21 11 76 77 1 49 34 17 17 289 -1 unnamed_device 25.4 MiB 0.02 133 1574 419 875 280 64.0 MiB 0.01 0.00 0.732132 -19.4539 -0.732132 0.732132 0.99 0.000128758 0.000115174 0.00438447 0.00393356 34 399 27 6.99608e+06 29431.4 618332. 2139.56 1.30 0.0344769 0.0288827 25762 151098 -1 349 21 365 365 22790 6876 1.14918 1.14918 -26.2957 -1.14918 0 0 787024. 2723.27 0.33 0.02 0.15 -1 -1 0.33 0.00701857 0.00608003 16 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_011bits.v common 5.14 vpr 63.98 MiB -1 -1 0.11 19636 1 0.03 -1 -1 33388 -1 -1 3 23 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65512 23 12 83 84 1 54 38 17 17 289 -1 unnamed_device 25.4 MiB 0.02 188 1424 337 1058 29 64.0 MiB 0.01 0.00 0.87204 -22.3392 -0.87204 0.87204 0.99 0.000155172 0.000139636 0.00406093 0.00366598 26 598 16 6.99608e+06 44147 503264. 1741.40 2.12 0.0345923 0.0292513 24322 120374 -1 493 14 266 266 29373 6971 1.12264 1.12264 -32.0855 -1.12264 0 0 618332. 2139.56 0.27 0.02 0.12 -1 -1 0.27 0.00579136 0.00512249 17 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_012bits.v common 3.89 vpr 63.78 MiB -1 -1 0.10 19636 1 0.02 -1 -1 33724 -1 -1 3 25 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65312 25 13 90 91 1 60 41 17 17 289 -1 unnamed_device 25.2 MiB 0.02 200 1861 348 1436 77 63.8 MiB 0.01 0.00 0.816915 -24.4664 -0.816915 0.816915 0.99 0.000160952 0.000144731 0.00485639 0.00439914 26 699 19 6.99608e+06 44147 503264. 1741.40 0.90 0.0266809 0.022882 24322 120374 -1 538 14 335 335 28000 8295 1.06403 1.06403 -35.8983 -1.06403 0 0 618332. 2139.56 0.26 0.02 0.12 -1 -1 0.26 0.00633165 0.0056096 19 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_013bits.v common 4.46 vpr 63.64 MiB -1 -1 0.10 19500 1 0.02 -1 -1 33364 -1 -1 3 27 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65168 27 14 97 98 1 66 44 17 17 289 -1 unnamed_device 25.1 MiB 0.02 437 2431 667 1464 300 63.6 MiB 0.02 0.00 0.787132 -33.9026 -0.787132 0.787132 0.99 0.000167563 0.000151463 0.00597291 0.00543727 34 877 17 6.99608e+06 44147 618332. 2139.56 1.35 0.0407483 0.0346687 25762 151098 -1 840 14 366 366 41884 8558 1.16303 1.16303 -44.553 -1.16303 0 0 787024. 2723.27 0.33 0.02 0.15 -1 -1 0.33 0.00725875 0.00645772 20 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_014bits.v common 4.64 vpr 63.77 MiB -1 -1 0.10 19792 1 0.03 -1 -1 33544 -1 -1 4 29 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65304 29 15 104 105 1 72 48 17 17 289 -1 unnamed_device 25.2 MiB 0.02 437 2832 716 1721 395 63.8 MiB 0.02 0.00 0.798132 -34.5 -0.798132 0.798132 0.99 0.000170105 0.000153775 0.006534 0.00592032 34 892 27 6.99608e+06 58862.7 618332. 2139.56 1.52 0.0482655 0.041253 25762 151098 -1 785 16 392 392 37649 8303 1.13003 1.13003 -43.8164 -1.13003 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.00750499 0.00664996 23 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_015bits.v common 6.18 vpr 63.85 MiB -1 -1 0.09 19848 1 0.03 -1 -1 33940 -1 -1 3 31 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65384 31 16 111 112 1 78 50 17 17 289 -1 unnamed_device 25.5 MiB 0.02 264 4742 1935 2757 50 63.9 MiB 0.03 0.00 1.04416 -31.9103 -1.04416 1.04416 0.99 0.000186564 0.000168178 0.0106052 0.00958891 34 847 28 6.99608e+06 44147 618332. 2139.56 3.06 0.0750859 0.0638042 25762 151098 -1 612 16 432 432 37149 8959 1.41163 1.41163 -44.9208 -1.41163 0 0 787024. 2723.27 0.31 0.02 0.15 -1 -1 0.31 0.00804487 0.00709616 24 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_016bits.v common 6.96 vpr 63.79 MiB -1 -1 0.11 19480 1 0.03 -1 -1 33644 -1 -1 4 33 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65316 33 17 118 119 1 81 54 17 17 289 -1 unnamed_device 25.4 MiB 0.02 279 5154 2132 2980 42 63.8 MiB 0.03 0.00 1.05516 -34.1284 -1.05516 1.05516 1.02 0.000176504 0.000160532 0.0108646 0.00987541 36 799 25 6.99608e+06 58862.7 648988. 2245.63 3.74 0.0652163 0.0556511 26050 158493 -1 602 14 379 379 29093 7587 1.19403 1.19403 -46.0575 -1.19403 0 0 828058. 2865.25 0.34 0.02 0.15 -1 -1 0.34 0.00769472 0.00681454 25 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_018bits.v common 4.70 vpr 63.94 MiB -1 -1 0.10 19416 1 0.03 -1 -1 33988 -1 -1 4 37 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65476 37 19 132 133 1 87 60 17 17 289 -1 unnamed_device 25.5 MiB 0.02 364 6144 2566 3518 60 63.9 MiB 0.03 0.00 1.08816 -40.2538 -1.08816 1.08816 1.01 0.00022106 0.000199715 0.0126397 0.0114702 34 969 34 6.99608e+06 58862.7 618332. 2139.56 1.48 0.0666125 0.0572364 25762 151098 -1 829 16 489 489 56327 12910 1.38248 1.38248 -56.9348 -1.38248 0 0 787024. 2723.27 0.32 0.03 0.15 -1 -1 0.32 0.00923158 0.00816987 28 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_020bits.v common 7.00 vpr 64.18 MiB -1 -1 0.11 19616 1 0.03 -1 -1 33924 -1 -1 4 41 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65724 41 21 146 147 1 94 66 17 17 289 -1 unnamed_device 25.7 MiB 0.03 346 7248 2978 4228 42 64.2 MiB 0.04 0.00 1.09916 -43.2906 -1.09916 1.09916 1.00 0.000252775 0.000229136 0.0145663 0.0132574 36 1029 25 6.99608e+06 58862.7 648988. 2245.63 3.81 0.0884851 0.0762984 26050 158493 -1 854 17 489 489 53435 12588 1.31933 1.31933 -59.1807 -1.31933 0 0 828058. 2865.25 0.33 0.03 0.15 -1 -1 0.33 0.0105526 0.00932181 31 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_022bits.v common 6.67 vpr 64.24 MiB -1 -1 0.11 20020 1 0.03 -1 -1 33928 -1 -1 5 45 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65784 45 23 160 161 1 107 73 17 17 289 -1 unnamed_device 25.8 MiB 0.03 397 9041 3731 5250 60 64.2 MiB 0.05 0.00 1.12116 -48.1883 -1.12116 1.12116 1.00 0.000268863 0.000244812 0.0171827 0.0156578 36 1152 42 6.99608e+06 73578.4 648988. 2245.63 3.43 0.110093 0.09541 26050 158493 -1 931 14 603 603 57326 13895 1.24903 1.24903 -63.2919 -1.24903 0 0 828058. 2865.25 0.33 0.03 0.15 -1 -1 0.33 0.0100649 0.00896168 34 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_024bits.v common 7.46 vpr 64.20 MiB -1 -1 0.12 19792 1 0.03 -1 -1 33808 -1 -1 5 49 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65736 49 25 174 175 1 118 79 17 17 289 -1 unnamed_device 25.7 MiB 0.03 445 11402 4724 6587 91 64.2 MiB 0.06 0.00 1.14316 -53.3807 -1.14316 1.14316 1.03 0.000296153 0.000269744 0.0210362 0.0191816 38 1248 22 6.99608e+06 73578.4 678818. 2348.85 4.11 0.12262 0.106215 26626 170182 -1 946 17 672 672 56309 13809 1.40733 1.40733 -71.1962 -1.40733 0 0 902133. 3121.57 0.37 0.03 0.16 -1 -1 0.37 0.0119872 0.0106278 37 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_028bits.v common 7.33 vpr 64.58 MiB -1 -1 0.11 19820 1 0.03 -1 -1 33428 -1 -1 6 57 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66128 57 29 202 203 1 141 92 17 17 289 -1 unnamed_device 26.0 MiB 0.04 809 13754 5810 7878 66 64.6 MiB 0.07 0.00 1.18716 -70.1623 -1.18716 1.18716 1.00 0.000332408 0.000301556 0.0239955 0.021909 36 1683 43 6.99608e+06 88294.1 648988. 2245.63 4.04 0.163038 0.142166 26050 158493 -1 1437 19 786 786 89401 18887 1.35863 1.35863 -87.0424 -1.35863 0 0 828058. 2865.25 0.34 0.05 0.15 -1 -1 0.34 0.0147816 0.0131213 43 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_032bits.v common 5.46 vpr 64.64 MiB -1 -1 0.11 19920 1 0.03 -1 -1 33828 -1 -1 7 65 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66192 65 33 230 231 1 162 105 17 17 289 -1 unnamed_device 26.2 MiB 0.04 756 14925 6321 8491 113 64.6 MiB 0.07 0.00 1.47719 -77.2815 -1.47719 1.47719 1.00 0.000387023 0.000352027 0.0249646 0.0227717 36 1940 41 6.99608e+06 103010 648988. 2245.63 2.14 0.107525 0.0945729 26050 158493 -1 1465 18 846 846 91478 21344 1.56363 1.56363 -100.65 -1.56363 0 0 828058. 2865.25 0.33 0.05 0.15 -1 -1 0.33 0.0160863 0.0143404 49 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_048bits.v common 15.84 vpr 65.15 MiB -1 -1 0.13 20164 1 0.03 -1 -1 33776 -1 -1 10 97 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66716 97 49 342 343 1 243 156 17 17 289 -1 unnamed_device 26.4 MiB 0.06 1422 26972 7306 18279 1387 65.2 MiB 0.13 0.00 1.88822 -136.368 -1.88822 1.88822 1.01 0.000546625 0.000500427 0.0389285 0.0355084 48 2748 22 6.99608e+06 147157 865456. 2994.66 12.21 0.300726 0.265514 28354 207349 -1 2557 22 1201 1201 212689 67924 1.48273 1.48273 -159.07 -1.48273 0 0 1.05005e+06 3633.38 0.42 0.10 0.21 -1 -1 0.42 0.0277203 0.0248571 73 -1 -1 -1 -1 -1 +fixed_k6_frac_2uripple_N8_22nm.xml adder_064bits.v common 18.52 vpr 65.88 MiB -1 -1 0.13 20460 1 0.04 -1 -1 34176 -1 -1 13 129 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67456 129 65 454 455 1 324 207 17 17 289 -1 unnamed_device 27.1 MiB 0.07 2157 43659 16529 25394 1736 65.9 MiB 0.20 0.00 2.29925 -200.527 -2.29925 2.29925 1.00 0.00075797 0.000695543 0.0574893 0.0527315 44 3989 45 6.99608e+06 191304 787024. 2723.27 14.78 0.463368 0.412376 27778 195446 -1 3464 20 1394 1394 143480 28715 1.61468 1.61468 -209.56 -1.61468 0 0 997811. 3452.63 0.41 0.08 0.19 -1 -1 0.41 0.032722 0.0295084 97 -1 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_003bits.v common 3.37 vpr 63.23 MiB -1 -1 0.09 19448 1 0.06 -1 -1 35760 -1 -1 1 7 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64748 7 4 21 25 1 11 12 17 17 289 -1 unnamed_device 24.8 MiB 0.01 64 38 20 18 0 63.2 MiB 0.00 0.00 0.942216 -7.18451 -0.942216 0.942216 0.99 5.4937e-05 4.6627e-05 0.000391448 0.0003517 18 95 2 6.79088e+06 13472 376052. 1301.22 0.53 0.00229307 0.00211208 22222 88205 -1 93 2 12 12 598 176 0.942216 0.942216 -7.93631 -0.942216 0 0 470940. 1629.55 0.19 0.00 0.09 -1 -1 0.19 0.00180255 0.00170268 6 4 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_004bits.v common 3.64 vpr 63.00 MiB -1 -1 0.10 19768 2 0.06 -1 -1 35912 -1 -1 1 9 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64516 9 5 28 33 1 16 15 17 17 289 -1 unnamed_device 24.6 MiB 0.01 35 519 186 312 21 63.0 MiB 0.01 0.00 0.883748 -8.8411 -0.883748 0.883748 0.99 6.0402e-05 5.2519e-05 0.00212597 0.00186396 24 114 7 6.79088e+06 13472 470940. 1629.55 0.68 0.00995297 0.00835263 23374 113417 -1 87 8 46 46 1300 526 0.883748 0.883748 -9.5929 -0.883748 0 0 586450. 2029.24 0.25 0.01 0.11 -1 -1 0.25 0.00265951 0.00240613 8 6 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_005bits.v common 5.17 vpr 63.02 MiB -1 -1 0.09 19544 2 0.06 -1 -1 35344 -1 -1 2 11 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64532 11 6 34 40 1 23 19 17 17 289 -1 unnamed_device 24.6 MiB 0.01 59 469 105 349 15 63.0 MiB 0.01 0.00 1.02368 -11.3325 -1.02368 1.02368 1.00 7.4332e-05 6.5417e-05 0.00181993 0.00163295 24 172 7 6.79088e+06 26944 470940. 1629.55 2.20 0.0166529 0.0137902 23374 113417 -1 181 5 59 69 4352 1333 1.02368 1.02368 -14.7156 -1.02368 0 0 586450. 2029.24 0.25 0.01 0.11 -1 -1 0.25 0.00261284 0.00239731 10 7 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_006bits.v common 3.71 vpr 63.08 MiB -1 -1 0.10 19636 3 0.06 -1 -1 35992 -1 -1 2 13 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64596 13 7 41 48 1 30 22 17 17 289 -1 unnamed_device 24.6 MiB 0.01 118 412 92 314 6 63.1 MiB 0.01 0.00 1.05944 -14.2387 -1.05944 1.05944 0.99 8.607e-05 7.6725e-05 0.00167088 0.0015064 26 249 12 6.79088e+06 26944 503264. 1741.40 0.73 0.01285 0.0108282 23662 119890 -1 230 8 91 96 4427 1344 1.05944 1.05944 -17.1675 -1.05944 0 0 618332. 2139.56 0.27 0.01 0.12 -1 -1 0.27 0.00328733 0.0029781 11 9 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_007bits.v common 3.74 vpr 62.95 MiB -1 -1 0.10 19644 3 0.06 -1 -1 35340 -1 -1 2 15 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64460 15 8 47 55 1 36 25 17 17 289 -1 unnamed_device 24.4 MiB 0.01 90 1321 401 733 187 62.9 MiB 0.01 0.00 1.13784 -16.3026 -1.13784 1.13784 0.98 9.9479e-05 8.8693e-05 0.0042104 0.00376139 26 332 24 6.79088e+06 26944 503264. 1741.40 0.75 0.0189404 0.0160395 23662 119890 -1 258 14 155 173 6951 2437 1.31348 1.31348 -19.3959 -1.31348 0 0 618332. 2139.56 0.26 0.02 0.12 -1 -1 0.26 0.00530146 0.0046426 13 10 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_008bits.v common 5.84 vpr 63.11 MiB -1 -1 0.10 19684 3 0.07 -1 -1 35504 -1 -1 2 17 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64624 17 9 56 65 1 43 28 17 17 289 -1 unnamed_device 24.6 MiB 0.05 239 952 234 678 40 63.1 MiB 0.01 0.00 1.27433 -22.3118 -1.27433 1.27433 1.00 0.000119299 0.0001068 0.00336018 0.00305104 34 499 10 6.79088e+06 26944 618332. 2139.56 2.69 0.034614 0.0289399 25102 150614 -1 485 11 168 198 17162 3900 1.27433 1.27433 -27.1593 -1.27433 0 0 787024. 2723.27 0.33 0.01 0.15 -1 -1 0.33 0.00472929 0.00422296 16 14 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_009bits.v common 3.92 vpr 62.85 MiB -1 -1 0.11 19492 4 0.07 -1 -1 35424 -1 -1 3 19 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64356 19 10 60 70 1 49 32 17 17 289 -1 unnamed_device 24.3 MiB 0.05 130 1832 622 1030 180 62.8 MiB 0.01 0.00 1.1736 -21.0018 -1.1736 1.1736 1.01 0.000126611 0.000113215 0.00526196 0.00474035 28 479 22 6.79088e+06 40416 531479. 1839.03 0.79 0.022796 0.0194198 23950 126010 -1 360 9 198 203 11127 3418 1.26314 1.26314 -25.0832 -1.26314 0 0 648988. 2245.63 0.27 0.01 0.12 -1 -1 0.27 0.00438495 0.0039403 17 13 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_010bits.v common 6.48 vpr 63.59 MiB -1 -1 0.10 19544 4 0.07 -1 -1 35592 -1 -1 3 21 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65112 21 11 69 80 1 55 35 17 17 289 -1 unnamed_device 25.0 MiB 0.19 161 2144 559 1197 388 63.6 MiB 0.02 0.00 1.60338 -26.0076 -1.60338 1.60338 1.01 0.000149397 0.000133996 0.00635744 0.00569969 38 457 13 6.79088e+06 40416 678818. 2348.85 3.10 0.0506794 0.0430627 25966 169698 -1 336 13 251 298 11193 3814 1.60338 1.60338 -28.5136 -1.60338 0 0 902133. 3121.57 0.35 0.01 0.16 -1 -1 0.35 0.00576773 0.00513393 21 17 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_011bits.v common 5.11 vpr 63.61 MiB -1 -1 0.11 19580 5 0.07 -1 -1 35408 -1 -1 3 23 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65132 23 12 76 88 1 61 38 17 17 289 -1 unnamed_device 25.0 MiB 0.12 228 1991 739 1188 64 63.6 MiB 0.02 0.00 1.67834 -29.2375 -1.67834 1.67834 1.00 0.000154771 0.000139619 0.00577953 0.00523435 30 611 13 6.79088e+06 40416 556674. 1926.21 1.93 0.0441138 0.0374598 24526 138013 -1 497 12 219 265 15624 4058 1.67834 1.67834 -34.6254 -1.67834 0 0 706193. 2443.58 0.29 0.01 0.13 -1 -1 0.29 0.00570639 0.00510903 22 19 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_012bits.v common 4.67 vpr 62.95 MiB -1 -1 0.11 19624 5 0.07 -1 -1 35492 -1 -1 3 25 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64464 25 13 83 96 1 66 41 17 17 289 -1 unnamed_device 24.4 MiB 0.20 402 3681 1455 2067 159 63.0 MiB 0.02 0.00 1.67834 -38.4235 -1.67834 1.67834 1.02 0.000164787 0.00014789 0.00981211 0.00886619 34 818 24 6.79088e+06 40416 618332. 2139.56 1.30 0.0463357 0.0395932 25102 150614 -1 729 10 244 299 20271 4790 1.67834 1.67834 -43.0596 -1.67834 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.00583038 0.00525863 23 21 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_013bits.v common 4.83 vpr 63.27 MiB -1 -1 0.11 19520 5 0.07 -1 -1 35848 -1 -1 4 27 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64788 27 14 91 105 1 72 45 17 17 289 -1 unnamed_device 24.7 MiB 0.33 347 3165 878 1780 507 63.3 MiB 0.02 0.00 1.81483 -37.7639 -1.81483 1.81483 1.00 0.000191328 0.000173744 0.00859696 0.00782325 34 777 10 6.79088e+06 53888 618332. 2139.56 1.34 0.0461765 0.0394343 25102 150614 -1 678 13 237 312 19530 4762 1.81483 1.81483 -44.1542 -1.81483 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.00720646 0.0064302 27 24 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_014bits.v common 4.20 vpr 63.58 MiB -1 -1 0.10 19632 6 0.07 -1 -1 35544 -1 -1 4 29 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65104 29 15 95 110 1 77 48 17 17 289 -1 unnamed_device 25.2 MiB 0.24 298 4224 1573 2187 464 63.6 MiB 0.03 0.00 2.06549 -40.1669 -2.06549 2.06549 1.00 0.00019824 0.000179368 0.0105177 0.00952551 30 828 16 6.79088e+06 53888 556674. 1926.21 0.86 0.0354258 0.0306263 24526 138013 -1 656 11 318 378 21373 5611 2.06549 2.06549 -47.1837 -2.06549 0 0 706193. 2443.58 0.28 0.02 0.13 -1 -1 0.28 0.00695728 0.00623066 28 23 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_015bits.v common 5.07 vpr 63.30 MiB -1 -1 0.12 20224 6 0.07 -1 -1 35772 -1 -1 5 31 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64820 31 16 104 120 1 82 52 17 17 289 -1 unnamed_device 24.9 MiB 0.46 291 3835 1220 1872 743 63.3 MiB 0.02 0.00 2.14389 -44.0578 -2.14389 2.14389 1.02 0.000215223 0.000195175 0.00959517 0.00869854 34 777 15 6.79088e+06 67360 618332. 2139.56 1.41 0.0423173 0.0365 25102 150614 -1 541 10 315 434 19709 6018 2.14389 2.14389 -48.2752 -2.14389 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.00722389 0.00648585 31 27 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_016bits.v common 5.28 vpr 63.41 MiB -1 -1 0.11 19880 7 0.08 -1 -1 35364 -1 -1 5 33 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64936 33 17 112 129 1 88 55 17 17 289 -1 unnamed_device 25.0 MiB 0.78 552 6503 1893 3531 1079 63.4 MiB 0.04 0.00 2.39454 -55.7365 -2.39454 2.39454 1.01 0.000225171 0.000205119 0.015381 0.0140196 34 1129 13 6.79088e+06 67360 618332. 2139.56 1.33 0.0594935 0.0514717 25102 150614 -1 1005 14 344 432 29297 6868 2.48064 2.48064 -64.4599 -2.48064 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.00861513 0.007674 32 30 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_018bits.v common 7.37 vpr 63.33 MiB -1 -1 0.11 19900 7 0.08 -1 -1 35796 -1 -1 6 37 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64852 37 19 127 146 1 99 62 17 17 289 -1 unnamed_device 24.9 MiB 1.40 384 3356 689 2644 23 63.3 MiB 0.02 0.00 3.00001 -61.3184 -3.00001 3.00001 1.02 0.000257279 0.000232324 0.00821805 0.00747506 34 932 11 6.79088e+06 80832 618332. 2139.56 2.73 0.0887709 0.0757859 25102 150614 -1 830 12 355 433 24136 6893 3.00001 3.00001 -70.7159 -3.00001 0 0 787024. 2723.27 0.33 0.02 0.15 -1 -1 0.33 0.00922685 0.00829398 37 35 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_020bits.v common 7.04 vpr 63.65 MiB -1 -1 0.11 19876 8 0.08 -1 -1 36088 -1 -1 6 41 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65180 41 21 139 160 1 106 68 17 17 289 -1 unnamed_device 25.2 MiB 0.51 529 6278 1488 4656 134 63.7 MiB 0.04 0.00 2.60599 -66.5723 -2.60599 2.60599 1.02 0.000284046 0.000257411 0.0137554 0.0124968 34 1246 28 6.79088e+06 80832 618332. 2139.56 3.33 0.0992495 0.0859409 25102 150614 -1 1091 11 425 538 45389 10552 2.60599 2.60599 -77.5987 -2.60599 0 0 787024. 2723.27 0.33 0.03 0.14 -1 -1 0.33 0.00978614 0.00881932 41 37 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_022bits.v common 5.47 vpr 63.32 MiB -1 -1 0.12 19840 9 0.08 -1 -1 35616 -1 -1 6 45 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64836 45 23 153 176 1 119 74 17 17 289 -1 unnamed_device 24.8 MiB 0.46 395 7824 1925 5250 649 63.3 MiB 0.04 0.00 3.10725 -76.349 -3.10725 3.10725 1.01 0.000297975 0.000270265 0.0169651 0.0154388 34 1200 37 6.79088e+06 80832 618332. 2139.56 1.81 0.0963359 0.0842227 25102 150614 -1 967 11 445 539 38572 10810 3.23255 3.23255 -87.2109 -3.23255 0 0 787024. 2723.27 0.31 0.03 0.15 -1 -1 0.31 0.0103378 0.00933454 43 41 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_024bits.v common 7.31 vpr 63.82 MiB -1 -1 0.12 19748 10 0.08 -1 -1 35976 -1 -1 8 49 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65348 49 25 166 191 1 133 82 17 17 289 -1 unnamed_device 25.2 MiB 1.01 601 10406 3390 4906 2110 63.8 MiB 0.05 0.00 3.311 -86.9142 -3.311 3.311 0.99 0.000317502 0.000289535 0.0207567 0.0188892 36 1391 25 6.79088e+06 107776 648988. 2245.63 3.11 0.141465 0.122319 25390 158009 -1 1179 12 431 503 33054 8278 3.311 3.311 -96.8206 -3.311 0 0 828058. 2865.25 0.32 0.03 0.15 -1 -1 0.32 0.0111748 0.00999113 48 44 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_028bits.v common 6.30 vpr 63.90 MiB -1 -1 0.13 19868 11 0.09 -1 -1 35512 -1 -1 8 57 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65432 57 29 198 227 1 158 94 17 17 289 -1 unnamed_device 25.5 MiB 1.49 875 11383 3600 6817 966 63.9 MiB 0.06 0.00 3.77654 -114.847 -3.77654 3.77654 1.02 0.00038869 0.000353213 0.0228731 0.020897 34 1968 13 6.79088e+06 107776 618332. 2139.56 1.48 0.0843124 0.0746532 25102 150614 -1 1673 16 620 868 60325 14076 3.77654 3.77654 -127.377 -3.77654 0 0 787024. 2723.27 0.33 0.04 0.15 -1 -1 0.33 0.0164139 0.0147745 59 56 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_032bits.v common 6.03 vpr 64.25 MiB -1 -1 0.13 20332 13 0.09 -1 -1 35932 -1 -1 9 65 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65792 65 33 224 257 1 176 107 17 17 289 -1 unnamed_device 25.8 MiB 1.80 821 17564 5870 9601 2093 64.2 MiB 0.08 0.00 4.57458 -136.315 -4.57458 4.57458 0.97 0.000371437 0.000337527 0.0297911 0.0270191 30 2055 27 6.79088e+06 121248 556674. 1926.21 1.00 0.0913782 0.0805512 24526 138013 -1 1748 15 761 971 69561 18556 4.57458 4.57458 -156.403 -4.57458 0 0 706193. 2443.58 0.31 0.04 0.13 -1 -1 0.31 0.0168012 0.0150847 66 62 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_048bits.v common 11.68 vpr 65.14 MiB -1 -1 0.15 20056 19 0.12 -1 -1 35756 -1 -1 13 97 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66704 97 49 340 389 1 267 159 17 17 289 -1 unnamed_device 26.5 MiB 3.53 1378 29399 6963 20451 1985 65.1 MiB 0.13 0.00 6.84503 -264.872 -6.84503 6.84503 1.00 0.000636644 0.000568715 0.046502 0.0423777 38 2927 16 6.79088e+06 175136 678818. 2348.85 4.63 0.276882 0.24426 25966 169698 -1 2539 14 962 1305 82269 19662 6.97033 6.97033 -287.301 -6.97033 0 0 902133. 3121.57 0.33 0.05 0.16 -1 -1 0.33 0.0238561 0.0215795 100 98 -1 -1 -1 -1 +fixed_k6_frac_N8_22nm.xml adder_064bits.v common 13.13 vpr 65.87 MiB -1 -1 0.17 20968 26 0.13 -1 -1 36244 -1 -1 18 129 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67452 129 65 453 518 1 350 212 17 17 289 -1 unnamed_device 27.2 MiB 4.33 1901 51323 20275 28432 2616 65.9 MiB 0.21 0.00 9.19737 -433.794 -9.19737 9.19737 1.00 0.000814109 0.000730411 0.0723812 0.0659088 42 3878 42 6.79088e+06 242496 744469. 2576.02 4.96 0.430295 0.383787 26542 182613 -1 3171 35 1349 1869 316006 151990 9.19737 9.19737 -458.478 -9.19737 0 0 949917. 3286.91 0.37 0.18 0.18 -1 -1 0.37 0.0629716 0.0566144 129 131 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_003bits.v common 3.25 vpr 63.43 MiB -1 -1 0.10 19784 1 0.02 -1 -1 33556 -1 -1 1 7 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64948 7 4 27 28 1 13 12 17 17 289 -1 unnamed_device 25.0 MiB 0.02 38 142 60 81 1 63.4 MiB 0.00 0.00 0.488083 -5.72471 -0.488083 0.488083 1.01 5.596e-05 4.7801e-05 0.000872018 0.000767628 12 80 4 6.87369e+06 13973.8 243793. 843.575 0.40 0.00325086 0.00295325 21730 64085 -1 89 5 32 32 2061 627 0.74674 0.74674 -7.98012 -0.74674 0 0 332735. 1151.33 0.14 0.01 0.07 -1 -1 0.14 0.00208517 0.00192626 8 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_004bits.v common 4.32 vpr 63.20 MiB -1 -1 0.10 19532 1 0.02 -1 -1 33508 -1 -1 2 9 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64712 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 24.8 MiB 0.04 45 396 93 268 35 63.2 MiB 0.01 0.00 0.663773 -8.29102 -0.663773 0.663773 1.01 6.6729e-05 5.9152e-05 0.00162295 0.00142631 18 130 10 6.87369e+06 27947.7 376052. 1301.22 1.35 0.0139144 0.0115196 22882 88689 -1 142 17 112 112 5669 1892 1.03967 1.03967 -11.4235 -1.03967 0 0 470940. 1629.55 0.20 0.01 0.09 -1 -1 0.20 0.00344124 0.00299976 10 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_005bits.v common 4.41 vpr 63.65 MiB -1 -1 0.10 19420 1 0.03 -1 -1 33404 -1 -1 3 11 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65180 11 6 41 42 1 27 20 17 17 289 -1 unnamed_device 25.2 MiB 0.05 87 290 80 195 15 63.7 MiB 0.00 0.00 0.685773 -11.3423 -0.685773 0.685773 0.99 8.1995e-05 7.3634e-05 0.00122586 0.0011053 18 223 12 6.87369e+06 41921.5 376052. 1301.22 1.50 0.015634 0.0129112 22882 88689 -1 189 11 106 106 5862 1795 0.936373 0.936373 -14.8507 -0.936373 0 0 470940. 1629.55 0.20 0.01 0.09 -1 -1 0.20 0.00331365 0.0029653 13 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_006bits.v common 5.16 vpr 63.57 MiB -1 -1 0.10 19560 1 0.02 -1 -1 33616 -1 -1 3 13 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65096 13 7 48 49 1 33 23 17 17 289 -1 unnamed_device 25.1 MiB 0.06 81 887 246 548 93 63.6 MiB 0.01 0.00 0.707773 -12.4596 -0.707773 0.707773 1.01 8.9142e-05 7.9838e-05 0.00285941 0.00255345 28 281 23 6.87369e+06 41921.5 531479. 1839.03 2.08 0.0307587 0.0252621 24610 126494 -1 244 29 351 351 20808 6471 1.19797 1.19797 -17.4136 -1.19797 0 0 648988. 2245.63 0.27 0.02 0.12 -1 -1 0.27 0.00613659 0.00523611 15 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_007bits.v common 3.73 vpr 63.28 MiB -1 -1 0.08 19824 1 0.02 -1 -1 33264 -1 -1 3 15 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64800 15 8 55 56 1 39 26 17 17 289 -1 unnamed_device 24.8 MiB 0.09 112 1470 585 856 29 63.3 MiB 0.01 0.00 1.13846 -15.8547 -1.13846 1.13846 0.98 9.7642e-05 8.7377e-05 0.00427144 0.00384569 26 278 13 6.87369e+06 41921.5 503264. 1741.40 0.73 0.0167168 0.0142791 24322 120374 -1 277 13 171 171 9191 3100 1.09267 1.09267 -20.398 -1.09267 0 0 618332. 2139.56 0.26 0.01 0.12 -1 -1 0.26 0.00487842 0.00439451 17 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_008bits.v common 5.64 vpr 63.55 MiB -1 -1 0.10 19900 1 0.02 -1 -1 33536 -1 -1 3 17 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65080 17 9 62 63 1 42 29 17 17 289 -1 unnamed_device 25.1 MiB 0.06 120 2141 802 1123 216 63.6 MiB 0.02 0.00 0.964803 -17.7524 -0.964803 0.964803 1.02 0.000110331 9.8719e-05 0.00602649 0.00543596 30 272 20 6.87369e+06 41921.5 556674. 1926.21 2.55 0.0385748 0.0322767 25186 138497 -1 262 15 194 194 12587 3987 0.956373 0.956373 -21.3456 -0.956373 0 0 706193. 2443.58 0.28 0.01 0.13 -1 -1 0.28 0.00452201 0.00395576 18 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_009bits.v common 4.74 vpr 63.54 MiB -1 -1 0.09 19872 1 0.02 -1 -1 33740 -1 -1 3 19 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65068 19 10 69 70 1 45 32 17 17 289 -1 unnamed_device 25.0 MiB 0.06 132 2532 931 1335 266 63.5 MiB 0.02 0.00 0.975803 -20.1241 -0.975803 0.975803 1.00 0.000125075 0.000112281 0.00680779 0.00614138 26 376 13 6.87369e+06 41921.5 503264. 1741.40 1.67 0.0359297 0.0302507 24322 120374 -1 335 11 208 208 16764 4874 1.10367 1.10367 -26.5234 -1.10367 0 0 618332. 2139.56 0.26 0.01 0.12 -1 -1 0.26 0.0045043 0.00399484 20 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_010bits.v common 5.72 vpr 63.68 MiB -1 -1 0.08 19576 1 0.03 -1 -1 33700 -1 -1 3 21 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65212 21 11 76 77 1 48 35 17 17 289 -1 unnamed_device 25.1 MiB 0.06 144 2999 994 1350 655 63.7 MiB 0.02 0.00 0.986803 -22.0275 -0.986803 0.986803 0.99 0.000139491 0.000125659 0.00774831 0.00696416 32 425 13 6.87369e+06 41921.5 586450. 2029.24 2.66 0.0455262 0.0382999 25474 144626 -1 372 16 268 268 19689 5214 1.13667 1.13667 -29.0846 -1.13667 0 0 744469. 2576.02 0.29 0.02 0.14 -1 -1 0.29 0.00584591 0.0051096 22 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_011bits.v common 3.98 vpr 63.97 MiB -1 -1 0.10 19544 1 0.02 -1 -1 33612 -1 -1 4 23 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65504 23 12 83 84 1 53 39 17 17 289 -1 unnamed_device 25.4 MiB 0.06 162 3273 1147 1453 673 64.0 MiB 0.02 0.00 0.997803 -24.7971 -0.997803 0.997803 1.01 0.000151727 0.000136387 0.00789975 0.00714058 32 477 22 6.87369e+06 55895.4 586450. 2029.24 0.86 0.0271958 0.0233964 25474 144626 -1 400 11 254 254 18007 4739 1.14767 1.14767 -30.751 -1.14767 0 0 744469. 2576.02 0.29 0.01 0.14 -1 -1 0.29 0.00493092 0.00437607 24 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_012bits.v common 5.28 vpr 63.82 MiB -1 -1 0.11 19620 1 0.03 -1 -1 33648 -1 -1 4 25 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65348 25 13 90 91 1 60 42 17 17 289 -1 unnamed_device 25.3 MiB 0.07 202 3282 1314 1932 36 63.8 MiB 0.02 0.00 1.0088 -27.0764 -1.0088 1.0088 1.01 0.000154997 0.000139421 0.00711852 0.0064408 28 609 17 6.87369e+06 55895.4 531479. 1839.03 2.17 0.0509876 0.0430867 24610 126494 -1 553 23 422 422 38023 9529 1.16497 1.16497 -36.388 -1.16497 0 0 648988. 2245.63 0.26 0.03 0.12 -1 -1 0.26 0.00829004 0.00718407 26 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_013bits.v common 4.54 vpr 63.58 MiB -1 -1 0.10 19592 1 0.03 -1 -1 33628 -1 -1 4 27 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65108 27 14 97 98 1 67 45 17 17 289 -1 unnamed_device 25.0 MiB 0.07 211 4605 1795 2461 349 63.6 MiB 0.03 0.00 1.0198 -29.3668 -1.0198 1.0198 1.01 0.000157318 0.000141043 0.0103651 0.00938268 34 733 21 6.87369e+06 55895.4 618332. 2139.56 1.34 0.0461926 0.0394806 25762 151098 -1 615 17 416 416 34297 8976 1.17597 1.17597 -38.4103 -1.17597 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.00725084 0.00635552 28 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_014bits.v common 4.61 vpr 63.40 MiB -1 -1 0.10 19664 1 0.03 -1 -1 33544 -1 -1 5 29 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64920 29 15 104 105 1 74 49 17 17 289 -1 unnamed_device 24.8 MiB 0.11 236 4410 1774 2578 58 63.4 MiB 0.03 0.00 1.0308 -31.2922 -1.0308 1.0308 0.99 0.000194045 0.000175998 0.00891485 0.00807503 34 792 32 6.87369e+06 69869.2 618332. 2139.56 1.41 0.0498644 0.0424546 25762 151098 -1 603 21 494 494 37725 9765 1.18067 1.18067 -40.4524 -1.18067 0 0 787024. 2723.27 0.32 0.03 0.15 -1 -1 0.32 0.00860353 0.00752557 31 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_015bits.v common 5.47 vpr 63.66 MiB -1 -1 0.10 19904 1 0.03 -1 -1 33836 -1 -1 5 31 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65192 31 16 111 112 1 80 52 17 17 289 -1 unnamed_device 25.3 MiB 0.12 290 5484 2239 3156 89 63.7 MiB 0.03 0.00 1.27683 -33.8219 -1.27683 1.27683 0.97 0.000182213 0.000164085 0.0103848 0.00931959 30 706 18 6.87369e+06 69869.2 556674. 1926.21 2.33 0.0657448 0.0558168 25186 138497 -1 573 15 354 354 21572 5896 1.18967 1.18967 -43.1542 -1.18967 0 0 706193. 2443.58 0.30 0.02 0.13 -1 -1 0.30 0.00693964 0.00610906 33 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_016bits.v common 5.10 vpr 63.72 MiB -1 -1 0.10 19572 1 0.03 -1 -1 33936 -1 -1 5 33 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65248 33 17 118 119 1 83 55 17 17 289 -1 unnamed_device 25.4 MiB 0.10 305 5983 2444 3440 99 63.7 MiB 0.03 0.00 1.28783 -37.4004 -1.28783 1.28783 0.98 0.000201971 0.000182163 0.0125116 0.0113645 30 742 23 6.87369e+06 69869.2 556674. 1926.21 1.96 0.0655391 0.0561901 25186 138497 -1 577 14 397 397 23871 6547 1.09737 1.09737 -43.799 -1.09737 0 0 706193. 2443.58 0.28 0.02 0.13 -1 -1 0.28 0.00755142 0.006671 34 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_018bits.v common 4.18 vpr 63.89 MiB -1 -1 0.10 19692 1 0.03 -1 -1 33712 -1 -1 5 37 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65420 37 19 132 133 1 89 61 17 17 289 -1 unnamed_device 25.5 MiB 0.10 339 7141 2912 4111 118 63.9 MiB 0.04 0.00 1.30983 -43.0954 -1.30983 1.30983 1.01 0.000228957 0.000209666 0.014329 0.0130403 32 1082 36 6.87369e+06 69869.2 586450. 2029.24 0.94 0.0486693 0.0422652 25474 144626 -1 762 18 476 476 45190 11034 1.23367 1.23367 -53.4478 -1.23367 0 0 744469. 2576.02 0.30 0.03 0.14 -1 -1 0.30 0.00951145 0.00834587 38 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_020bits.v common 4.66 vpr 63.88 MiB -1 -1 0.10 19612 1 0.03 -1 -1 33988 -1 -1 6 41 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65412 41 21 146 147 1 101 68 17 17 289 -1 unnamed_device 25.4 MiB 0.10 373 8486 3468 4902 116 63.9 MiB 0.05 0.00 1.33183 -48.4957 -1.33183 1.33183 1.01 0.000237046 0.000213425 0.016288 0.0148064 34 1125 24 6.87369e+06 83843 618332. 2139.56 1.44 0.0701418 0.0606331 25762 151098 -1 927 15 551 551 49569 12371 1.43127 1.43127 -62.3919 -1.43127 0 0 787024. 2723.27 0.30 0.03 0.15 -1 -1 0.30 0.00935082 0.00827665 42 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_022bits.v common 5.04 vpr 64.02 MiB -1 -1 0.11 20024 1 0.03 -1 -1 33948 -1 -1 7 45 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65560 45 23 160 161 1 115 75 17 17 289 -1 unnamed_device 25.5 MiB 0.14 434 8923 3639 5132 152 64.0 MiB 0.05 0.00 1.35383 -52.9004 -1.35383 1.35383 1.02 0.000265683 0.000241495 0.0162526 0.0147779 36 1237 21 6.87369e+06 97816.9 648988. 2245.63 1.71 0.0766977 0.066653 26050 158493 -1 1015 13 603 603 56135 13652 1.27297 1.27297 -64.9436 -1.27297 0 0 828058. 2865.25 0.33 0.03 0.15 -1 -1 0.33 0.00906905 0.00807469 47 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_024bits.v common 4.68 vpr 64.17 MiB -1 -1 0.10 19772 1 0.03 -1 -1 33940 -1 -1 7 49 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65708 49 25 174 175 1 124 81 17 17 289 -1 unnamed_device 25.6 MiB 0.11 549 6556 1589 4684 283 64.2 MiB 0.04 0.00 1.61086 -62.1606 -1.61086 1.61086 0.99 0.000302286 0.000275017 0.0122919 0.0112331 34 1474 18 6.87369e+06 97816.9 618332. 2139.56 1.42 0.0724203 0.0627518 25762 151098 -1 1227 14 650 650 54960 14054 1.44497 1.44497 -79.5199 -1.44497 0 0 787024. 2723.27 0.32 0.03 0.14 -1 -1 0.32 0.00962151 0.00852365 50 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_028bits.v common 4.83 vpr 64.27 MiB -1 -1 0.10 19896 1 0.03 -1 -1 33752 -1 -1 8 57 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65808 57 29 202 203 1 142 94 17 17 289 -1 unnamed_device 25.7 MiB 0.11 764 10957 2530 8061 366 64.3 MiB 0.07 0.00 1.65486 -76.0517 -1.65486 1.65486 1.03 0.000328794 0.000297814 0.0186912 0.0170777 34 1577 20 6.87369e+06 111791 618332. 2139.56 1.43 0.0877229 0.0766248 25762 151098 -1 1468 14 658 658 57576 13433 1.23837 1.23837 -87.7354 -1.23837 0 0 787024. 2723.27 0.31 0.03 0.15 -1 -1 0.31 0.0116639 0.0103803 58 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_032bits.v common 7.35 vpr 64.25 MiB -1 -1 0.10 19784 1 0.03 -1 -1 33932 -1 -1 9 65 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65792 65 33 230 231 1 165 107 17 17 289 -1 unnamed_device 25.9 MiB 0.11 819 15540 6424 8815 301 64.2 MiB 0.08 0.00 1.93389 -87.3749 -1.93389 1.93389 1.03 0.000385077 0.000351501 0.0251218 0.0229304 36 1674 19 6.87369e+06 125765 648988. 2245.63 3.89 0.125978 0.110063 26050 158493 -1 1517 14 800 800 67501 16154 1.44967 1.44967 -101.27 -1.44967 0 0 828058. 2865.25 0.35 0.04 0.15 -1 -1 0.35 0.0139844 0.0125149 66 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_048bits.v common 5.75 vpr 65.06 MiB -1 -1 0.11 20448 1 0.03 -1 -1 33692 -1 -1 13 97 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 97 49 342 343 1 247 159 17 17 289 -1 unnamed_device 26.4 MiB 0.12 1386 34559 10913 21375 2271 65.1 MiB 0.18 0.00 2.57995 -153.074 -2.57995 2.57995 1.02 0.000612827 0.000565602 0.0491463 0.0450265 34 3136 19 6.87369e+06 181660 618332. 2139.56 2.19 0.190123 0.170229 25762 151098 -1 2748 21 1195 1195 127423 28777 1.67197 1.67197 -165.107 -1.67197 0 0 787024. 2723.27 0.34 0.07 0.15 -1 -1 0.34 0.0270408 0.0241651 98 -1 -1 -1 -1 -1 +fixed_k6_frac_ripple_N8_22nm.xml adder_064bits.v common 5.84 vpr 65.86 MiB -1 -1 0.13 20476 1 0.03 -1 -1 34148 -1 -1 17 129 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67436 129 65 454 455 1 329 211 17 17 289 -1 unnamed_device 27.1 MiB 0.15 1995 44101 13833 26969 3299 65.9 MiB 0.24 0.01 3.22602 -229.863 -3.22602 3.22602 1.01 0.000819486 0.00075322 0.0598672 0.0551525 34 4406 25 6.87369e+06 237555 618332. 2139.56 2.17 0.236725 0.212021 25762 151098 -1 3849 13 1510 1510 162038 36177 1.88797 1.88797 -229.54 -1.88797 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0235997 0.0213884 130 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_003bits.v common 3.14 vpr 63.43 MiB -1 -1 0.08 19520 1 0.02 -1 -1 33584 -1 -1 1 7 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64952 7 4 27 28 1 13 12 17 17 289 -1 unnamed_device 25.0 MiB 0.02 38 142 60 81 1 63.4 MiB 0.00 0.00 0.488083 -5.72471 -0.488083 0.488083 1.00 5.2227e-05 4.4269e-05 0.000862025 0.000759463 12 80 4 6.89349e+06 14093.8 243793. 843.575 0.40 0.00292072 0.00262431 21730 64085 -1 89 5 32 32 2061 627 0.74674 0.74674 -7.98012 -0.74674 0 0 332735. 1151.33 0.14 0.01 0.07 -1 -1 0.14 0.00212941 0.00196508 8 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_004bits.v common 4.21 vpr 63.28 MiB -1 -1 0.09 19560 1 0.02 -1 -1 33224 -1 -1 2 9 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64796 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 24.9 MiB 0.04 46 356 92 245 19 63.3 MiB 0.01 0.00 0.663773 -8.20792 -0.663773 0.663773 1.01 6.3593e-05 5.5822e-05 0.00145412 0.0012884 18 148 16 6.89349e+06 28187.7 376052. 1301.22 1.29 0.0133583 0.0109377 22882 88689 -1 126 11 86 86 3484 1325 0.79102 0.79102 -10.2186 -0.79102 0 0 470940. 1629.55 0.20 0.01 0.09 -1 -1 0.20 0.00295181 0.00262616 10 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_005bits.v common 4.66 vpr 63.40 MiB -1 -1 0.09 19628 1 0.02 -1 -1 33572 -1 -1 3 11 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64924 11 6 41 42 1 27 20 17 17 289 -1 unnamed_device 25.0 MiB 0.04 121 263 80 171 12 63.4 MiB 0.00 0.00 0.856592 -11.95 -0.856592 0.856592 0.99 7.6569e-05 6.8424e-05 0.00109457 0.000982049 26 259 15 6.89349e+06 42281.5 503264. 1741.40 1.69 0.0211461 0.0173144 24322 120374 -1 245 15 95 95 9268 2252 0.914373 0.914373 -14.8827 -0.914373 0 0 618332. 2139.56 0.25 0.01 0.12 -1 -1 0.25 0.00382649 0.00334158 13 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_006bits.v common 3.84 vpr 63.38 MiB -1 -1 0.10 19664 1 0.02 -1 -1 33620 -1 -1 3 13 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64896 13 7 48 49 1 33 23 17 17 289 -1 unnamed_device 24.9 MiB 0.05 81 759 176 467 116 63.4 MiB 0.01 0.00 0.707773 -12.2122 -0.707773 0.707773 0.99 8.8484e-05 7.9275e-05 0.00248819 0.00223624 28 310 30 6.89349e+06 42281.5 531479. 1839.03 0.82 0.0162105 0.0135659 24610 126494 -1 241 21 253 253 14240 4707 1.17597 1.17597 -17.097 -1.17597 0 0 648988. 2245.63 0.27 0.02 0.12 -1 -1 0.27 0.00505285 0.00434106 15 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_007bits.v common 3.81 vpr 63.46 MiB -1 -1 0.10 19564 1 0.02 -1 -1 33680 -1 -1 3 15 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64984 15 8 55 56 1 39 26 17 17 289 -1 unnamed_device 24.9 MiB 0.08 110 1470 581 848 41 63.5 MiB 0.01 0.00 1.13846 -15.98 -1.13846 1.13846 1.01 9.9251e-05 8.8803e-05 0.00428288 0.00385411 26 276 15 6.89349e+06 42281.5 503264. 1741.40 0.75 0.0168331 0.0143582 24322 120374 -1 248 10 163 163 8301 2709 1.04873 1.04873 -19.2264 -1.04873 0 0 618332. 2139.56 0.26 0.01 0.12 -1 -1 0.26 0.00371619 0.00332654 17 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_008bits.v common 3.78 vpr 63.52 MiB -1 -1 0.09 19584 1 0.02 -1 -1 33624 -1 -1 3 17 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65040 17 9 62 63 1 42 29 17 17 289 -1 unnamed_device 25.0 MiB 0.05 121 2141 721 956 464 63.5 MiB 0.02 0.00 0.964803 -17.6523 -0.964803 0.964803 1.00 0.000113506 0.000101696 0.00592279 0.0053212 26 286 12 6.89349e+06 42281.5 503264. 1741.40 0.75 0.0192167 0.0163662 24322 120374 -1 255 13 186 186 12651 3830 1.00232 1.00232 -21.8727 -1.00232 0 0 618332. 2139.56 0.26 0.01 0.12 -1 -1 0.26 0.00446122 0.00392282 18 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_009bits.v common 5.80 vpr 63.38 MiB -1 -1 0.10 19640 1 0.02 -1 -1 33728 -1 -1 3 19 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64900 19 10 69 70 1 46 32 17 17 289 -1 unnamed_device 24.9 MiB 0.06 135 2532 871 1352 309 63.4 MiB 0.02 0.00 0.975803 -19.7262 -0.975803 0.975803 1.00 0.000121996 0.000110046 0.00677652 0.00611318 32 368 16 6.89349e+06 42281.5 586450. 2029.24 2.69 0.0391758 0.0328371 25474 144626 -1 287 12 171 171 10653 3107 1.10367 1.10367 -24.6219 -1.10367 0 0 744469. 2576.02 0.31 0.01 0.14 -1 -1 0.31 0.00478266 0.00423951 20 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_010bits.v common 5.84 vpr 63.35 MiB -1 -1 0.10 19460 1 0.02 -1 -1 33580 -1 -1 3 21 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64872 21 11 76 77 1 48 35 17 17 289 -1 unnamed_device 24.8 MiB 0.06 145 2999 966 1341 692 63.4 MiB 0.02 0.00 0.986803 -22.1748 -0.986803 0.986803 1.01 0.000134065 0.000119726 0.00762573 0.00687494 32 413 15 6.89349e+06 42281.5 586450. 2029.24 2.70 0.0460698 0.0387658 25474 144626 -1 341 12 181 181 12325 3264 1.11467 1.11467 -27.6915 -1.11467 0 0 744469. 2576.02 0.31 0.01 0.15 -1 -1 0.31 0.00492334 0.00435365 22 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_011bits.v common 5.93 vpr 63.40 MiB -1 -1 0.10 19580 1 0.03 -1 -1 33264 -1 -1 4 23 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64920 23 12 83 84 1 53 39 17 17 289 -1 unnamed_device 24.9 MiB 0.06 161 3273 1095 1520 658 63.4 MiB 0.02 0.00 0.997803 -24.5685 -0.997803 0.997803 0.99 0.000148993 0.000133817 0.00703914 0.00633024 32 515 18 6.89349e+06 56375.4 586450. 2029.24 2.81 0.038185 0.0323159 25474 144626 -1 413 14 258 258 18685 4834 1.13667 1.13667 -31.555 -1.13667 0 0 744469. 2576.02 0.31 0.02 0.14 -1 -1 0.31 0.00563932 0.00494356 24 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_012bits.v common 4.04 vpr 63.42 MiB -1 -1 0.10 19488 1 0.03 -1 -1 33736 -1 -1 4 25 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64944 25 13 90 91 1 60 42 17 17 289 -1 unnamed_device 24.9 MiB 0.06 187 3354 1169 1536 649 63.4 MiB 0.02 0.00 1.0088 -26.8478 -1.0088 1.0088 1.01 0.000149726 0.000134549 0.00779315 0.00703731 32 651 22 6.89349e+06 56375.4 586450. 2029.24 0.89 0.0286413 0.0245736 25474 144626 -1 452 9 264 264 18293 5009 1.15867 1.15867 -33.8288 -1.15867 0 0 744469. 2576.02 0.31 0.01 0.14 -1 -1 0.31 0.00492784 0.00439846 26 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_013bits.v common 6.19 vpr 63.50 MiB -1 -1 0.10 19488 1 0.03 -1 -1 33588 -1 -1 4 27 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65024 27 14 97 98 1 67 45 17 17 289 -1 unnamed_device 25.0 MiB 0.06 212 4605 1846 2644 115 63.5 MiB 0.03 0.00 1.0198 -29.0129 -1.0198 1.0198 1.00 0.000163282 0.00014696 0.0102249 0.00922668 34 801 38 6.89349e+06 56375.4 618332. 2139.56 3.00 0.0573814 0.0486318 25762 151098 -1 571 18 419 419 31960 8697 1.15867 1.15867 -38.0264 -1.15867 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.0068382 0.00595812 28 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_014bits.v common 6.76 vpr 63.48 MiB -1 -1 0.11 19768 1 0.02 -1 -1 33556 -1 -1 5 29 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65008 29 15 104 105 1 74 49 17 17 289 -1 unnamed_device 24.9 MiB 0.09 243 4410 1774 2566 70 63.5 MiB 0.03 0.00 1.0308 -32.1693 -1.0308 1.0308 0.99 0.000179904 0.000161617 0.00956058 0.00863266 34 787 22 6.89349e+06 70469.2 618332. 2139.56 3.60 0.087999 0.0741676 25762 151098 -1 637 16 431 431 33913 9146 1.28397 1.28397 -42.3463 -1.28397 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.00702522 0.00615972 31 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_015bits.v common 4.10 vpr 63.74 MiB -1 -1 0.10 19728 1 0.02 -1 -1 33840 -1 -1 5 31 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65268 31 16 111 112 1 80 52 17 17 289 -1 unnamed_device 25.3 MiB 0.11 290 5484 2232 3142 110 63.7 MiB 0.03 0.00 1.27683 -33.9472 -1.27683 1.27683 0.98 0.000194125 0.000175249 0.0117407 0.0106563 30 769 34 6.89349e+06 70469.2 556674. 1926.21 0.93 0.040921 0.0353274 25186 138497 -1 552 12 355 355 23844 6520 1.21167 1.21167 -42.917 -1.21167 0 0 706193. 2443.58 0.30 0.02 0.13 -1 -1 0.30 0.00653938 0.00579828 33 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_016bits.v common 4.10 vpr 64.03 MiB -1 -1 0.10 19548 1 0.03 -1 -1 33720 -1 -1 5 33 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65564 33 17 118 119 1 83 55 17 17 289 -1 unnamed_device 25.7 MiB 0.10 305 5983 2459 3404 120 64.0 MiB 0.03 0.00 1.28783 -36.2759 -1.28783 1.28783 1.01 0.000201256 0.000182147 0.0125036 0.0113592 30 770 15 6.89349e+06 70469.2 556674. 1926.21 0.89 0.0371218 0.0323598 25186 138497 -1 596 15 429 429 28706 7859 1.08157 1.08157 -43.7714 -1.08157 0 0 706193. 2443.58 0.29 0.02 0.13 -1 -1 0.29 0.00787965 0.00693805 34 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_018bits.v common 4.08 vpr 63.98 MiB -1 -1 0.09 19508 1 0.03 -1 -1 33724 -1 -1 5 37 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65520 37 19 132 133 1 90 61 17 17 289 -1 unnamed_device 25.6 MiB 0.09 340 7141 2929 4104 108 64.0 MiB 0.04 0.00 1.30983 -42.5349 -1.30983 1.30983 0.99 0.000260896 0.000240647 0.0145027 0.0132181 30 907 24 6.89349e+06 70469.2 556674. 1926.21 0.89 0.0450692 0.0392423 25186 138497 -1 781 16 489 489 38614 9705 1.20067 1.20067 -52.9354 -1.20067 0 0 706193. 2443.58 0.30 0.03 0.13 -1 -1 0.30 0.00988378 0.00877636 38 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_020bits.v common 4.60 vpr 64.02 MiB -1 -1 0.10 20008 1 0.03 -1 -1 33988 -1 -1 6 41 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65552 41 21 146 147 1 102 68 17 17 289 -1 unnamed_device 25.6 MiB 0.09 445 8762 3178 4571 1013 64.0 MiB 0.05 0.00 1.33183 -48.9156 -1.33183 1.33183 0.98 0.000252969 0.000230778 0.0169545 0.0154345 34 1115 24 6.89349e+06 84563 618332. 2139.56 1.39 0.0689325 0.0595164 25762 151098 -1 955 20 542 542 61154 15230 1.14137 1.14137 -58.5651 -1.14137 0 0 787024. 2723.27 0.31 0.03 0.15 -1 -1 0.31 0.0113163 0.00990884 42 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_022bits.v common 7.15 vpr 63.75 MiB -1 -1 0.11 20160 1 0.03 -1 -1 33784 -1 -1 7 45 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65280 45 23 160 161 1 115 75 17 17 289 -1 unnamed_device 25.3 MiB 0.12 435 8923 3640 5131 152 63.8 MiB 0.05 0.00 1.35383 -53.0257 -1.35383 1.35383 0.98 0.000269444 0.000244379 0.0162046 0.0147382 44 1126 27 6.89349e+06 98656.9 787024. 2723.27 3.78 0.0983984 0.0848398 27778 195446 -1 900 17 599 599 51789 12476 1.29967 1.29967 -64.0287 -1.29967 0 0 997811. 3452.63 0.39 0.03 0.19 -1 -1 0.39 0.0107744 0.00952802 47 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_024bits.v common 4.72 vpr 63.63 MiB -1 -1 0.12 20052 1 0.03 -1 -1 33800 -1 -1 7 49 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65160 49 25 174 175 1 124 81 17 17 289 -1 unnamed_device 25.2 MiB 0.11 664 11281 2884 8017 380 63.6 MiB 0.06 0.00 1.61086 -64.2907 -1.61086 1.61086 0.99 0.000290356 0.000263956 0.0198132 0.018058 34 1465 33 6.89349e+06 98656.9 618332. 2139.56 1.45 0.086632 0.0752467 25762 151098 -1 1250 21 666 666 70618 16042 1.23367 1.23367 -74.451 -1.23367 0 0 787024. 2723.27 0.32 0.04 0.15 -1 -1 0.32 0.013378 0.0117731 50 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_028bits.v common 5.00 vpr 64.07 MiB -1 -1 0.11 19828 1 0.03 -1 -1 33548 -1 -1 8 57 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65608 57 29 202 203 1 143 94 17 17 289 -1 unnamed_device 25.6 MiB 0.10 764 10318 2450 7464 404 64.1 MiB 0.06 0.00 1.65486 -76.998 -1.65486 1.65486 0.99 0.000348093 0.000316986 0.0174622 0.0158918 34 1681 23 6.89349e+06 112751 618332. 2139.56 1.73 0.0928411 0.0811101 25762 151098 -1 1476 17 673 673 80619 18077 1.41397 1.41397 -91.0228 -1.41397 0 0 787024. 2723.27 0.31 0.04 0.15 -1 -1 0.31 0.0129879 0.0115019 58 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_032bits.v common 4.93 vpr 64.10 MiB -1 -1 0.12 20156 1 0.03 -1 -1 34024 -1 -1 9 65 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65640 65 33 230 231 1 165 107 17 17 289 -1 unnamed_device 25.7 MiB 0.12 952 15540 6351 9006 183 64.1 MiB 0.08 0.00 1.93389 -92.2616 -1.93389 1.93389 1.01 0.000377322 0.000344095 0.0250826 0.0229304 34 1969 18 6.89349e+06 126845 618332. 2139.56 1.54 0.106302 0.0932514 25762 151098 -1 1795 14 730 730 77278 16845 1.44967 1.44967 -106.157 -1.44967 0 0 787024. 2723.27 0.33 0.04 0.15 -1 -1 0.33 0.0138072 0.0123292 66 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_048bits.v common 5.18 vpr 65.05 MiB -1 -1 0.10 20128 1 0.03 -1 -1 33776 -1 -1 13 97 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 97 49 342 343 1 247 159 17 17 289 -1 unnamed_device 26.4 MiB 0.13 1395 33699 10344 21073 2282 65.0 MiB 0.17 0.00 2.57995 -155.079 -2.57995 2.57995 1.00 0.000580049 0.000531686 0.0474891 0.0434137 34 3096 18 6.89349e+06 183220 618332. 2139.56 1.68 0.162539 0.144047 25762 151098 -1 2687 15 1062 1062 102578 23309 1.81927 1.81927 -169.756 -1.81927 0 0 787024. 2723.27 0.31 0.05 0.15 -1 -1 0.31 0.0194062 0.0174144 98 -1 -1 -1 -1 -1 +fixed_k6_frac_uripple_N8_22nm.xml adder_064bits.v common 5.45 vpr 65.47 MiB -1 -1 0.13 20368 1 0.03 -1 -1 33872 -1 -1 17 129 0 0 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67040 129 65 454 455 1 329 211 17 17 289 -1 unnamed_device 26.8 MiB 0.15 2078 44101 18207 25626 268 65.5 MiB 0.23 0.01 3.22602 -228.359 -3.22602 3.22602 0.98 0.000741973 0.000677731 0.056065 0.0513719 34 4375 17 6.89349e+06 239595 618332. 2139.56 1.81 0.215956 0.193423 25762 151098 -1 3731 15 1472 1472 144755 31781 1.90997 1.90997 -229.676 -1.90997 0 0 787024. 2723.27 0.33 0.08 0.15 -1 -1 0.33 0.0264338 0.023925 130 -1 -1 -1 -1 -1 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/multless_consts/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/multless_consts/config/golden_results.txt index bf39cd13c71..8929f37c221 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/multless_consts/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/multless_consts/config/golden_results.txt @@ -1,1025 +1,1025 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_001.v common 13.01 vpr 64.62 MiB -1 -1 0.23 20776 14 0.32 -1 -1 37184 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 32 32 277 309 1 204 91 17 17 289 -1 unnamed_device 26.0 MiB 0.50 1378 7231 1744 4948 539 64.6 MiB 0.07 0.00 6.64956 -137.729 -6.64956 6.64956 0.92 0.000632716 0.000575072 0.0261479 0.0237632 30 3487 22 6.55708e+06 325485 526063. 1820.29 8.95 0.233637 0.204911 21886 126133 -1 2952 17 1291 4047 208898 48126 7.0397 7.0397 -159.496 -7.0397 0 0 666494. 2306.21 0.30 0.08 0.12 -1 -1 0.30 0.0300777 0.0271641 183 182 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_002.v common 5.92 vpr 64.54 MiB -1 -1 0.24 20920 14 0.37 -1 -1 36484 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66084 30 32 272 304 1 210 93 17 17 289 -1 unnamed_device 25.9 MiB 0.61 1311 9333 2235 6108 990 64.5 MiB 0.08 0.00 6.85276 -131.872 -6.85276 6.85276 0.92 0.000649129 0.000581203 0.032511 0.0294038 28 3614 50 6.55708e+06 373705 500653. 1732.36 1.71 0.158092 0.139325 21310 115450 -1 3174 18 1472 4182 254412 58624 6.97296 6.97296 -152.967 -6.97296 0 0 612192. 2118.31 0.27 0.09 0.11 -1 -1 0.27 0.0306368 0.0276364 184 181 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_003.v common 6.78 vpr 64.71 MiB -1 -1 0.21 20564 11 0.29 -1 -1 36548 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 32 32 280 312 1 205 90 17 17 289 -1 unnamed_device 26.1 MiB 0.40 1407 12150 3150 7318 1682 64.7 MiB 0.10 0.00 6.11164 -120.209 -6.11164 6.11164 0.94 0.00063414 0.000575954 0.0419915 0.0380829 38 3262 17 6.55708e+06 313430 638502. 2209.35 2.79 0.192962 0.170177 23326 155178 -1 2798 16 1199 4025 206043 47328 6.23184 6.23184 -135.315 -6.23184 0 0 851065. 2944.86 0.35 0.08 0.15 -1 -1 0.35 0.0286593 0.0259247 186 185 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_004.v common 11.72 vpr 64.52 MiB -1 -1 0.21 20460 12 0.41 -1 -1 36712 -1 -1 30 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66072 29 32 275 307 1 205 91 17 17 289 -1 unnamed_device 26.2 MiB 0.65 1294 5191 1004 3798 389 64.5 MiB 0.05 0.00 6.46824 -120.665 -6.46824 6.46824 0.94 0.000646145 0.0005803 0.0207791 0.0188519 34 3543 40 6.55708e+06 361650 585099. 2024.56 7.41 0.307186 0.269852 22462 138074 -1 2924 19 1385 4587 264846 60299 6.8013 6.8013 -136.028 -6.8013 0 0 742403. 2568.87 0.30 0.09 0.13 -1 -1 0.30 0.0309371 0.0276789 190 186 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_005.v common 5.67 vpr 64.99 MiB -1 -1 0.23 20456 13 0.35 -1 -1 36544 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 32 32 302 334 1 233 95 17 17 289 -1 unnamed_device 26.5 MiB 0.55 1524 8087 1945 5806 336 65.0 MiB 0.08 0.00 6.5981 -142.96 -6.5981 6.5981 0.94 0.00069246 0.000623756 0.0309153 0.0280035 30 3946 21 6.55708e+06 373705 526063. 1820.29 1.53 0.136509 0.121224 21886 126133 -1 3225 17 1489 4442 211441 49595 6.7993 6.7993 -158.191 -6.7993 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0324692 0.0294062 210 207 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_006.v common 8.12 vpr 64.79 MiB -1 -1 0.22 21052 13 0.29 -1 -1 36356 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66348 32 32 292 324 1 217 96 17 17 289 -1 unnamed_device 26.4 MiB 0.39 1398 13236 3407 8189 1640 64.8 MiB 0.11 0.00 6.4387 -129.863 -6.4387 6.4387 0.90 0.000634402 0.0005695 0.0428769 0.0386291 38 3046 28 6.55708e+06 385760 638502. 2209.35 4.19 0.25234 0.220661 23326 155178 -1 2655 15 1164 3591 179874 42540 6.70864 6.70864 -145.504 -6.70864 0 0 851065. 2944.86 0.34 0.07 0.15 -1 -1 0.34 0.0283232 0.0256826 198 197 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_007.v common 5.28 vpr 64.22 MiB -1 -1 0.18 20456 12 0.25 -1 -1 36456 -1 -1 27 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65760 27 32 229 261 1 176 86 17 17 289 -1 unnamed_device 25.6 MiB 0.34 1010 12182 3339 7276 1567 64.2 MiB 0.09 0.00 5.95024 -108.676 -5.95024 5.95024 0.92 0.000536394 0.000487834 0.0374739 0.0341014 28 2686 46 6.55708e+06 325485 500653. 1732.36 1.58 0.141127 0.12478 21310 115450 -1 2260 15 1045 2746 153564 36159 6.07044 6.07044 -122.346 -6.07044 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0221717 0.0200124 152 144 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_008.v common 7.90 vpr 64.38 MiB -1 -1 0.20 20416 12 0.23 -1 -1 36404 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 31 32 229 261 1 184 85 17 17 289 -1 unnamed_device 26.0 MiB 0.28 1184 11431 3105 6288 2038 64.4 MiB 0.09 0.00 5.3864 -117.646 -5.3864 5.3864 0.91 0.000521964 0.000473894 0.0352742 0.0320049 36 2899 19 6.55708e+06 265210 612192. 2118.31 4.19 0.189962 0.166583 22750 144809 -1 2511 16 1051 3100 169295 38755 5.5066 5.5066 -129.316 -5.5066 0 0 782063. 2706.10 0.31 0.06 0.14 -1 -1 0.31 0.0216413 0.0194703 140 136 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_009.v common 6.02 vpr 64.32 MiB -1 -1 0.21 20528 12 0.21 -1 -1 36280 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65868 31 32 235 267 1 192 89 17 17 289 -1 unnamed_device 26.0 MiB 0.29 1185 9197 2150 5824 1223 64.3 MiB 0.07 0.00 5.54278 -115.705 -5.54278 5.54278 0.97 0.00055144 0.000503883 0.0286503 0.0260112 34 3006 35 6.55708e+06 313430 585099. 2024.56 2.25 0.14768 0.129768 22462 138074 -1 2631 18 1108 2856 173701 39681 5.68226 5.68226 -132.833 -5.68226 0 0 742403. 2568.87 0.31 0.07 0.13 -1 -1 0.31 0.0249067 0.022333 150 142 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_010.v common 7.71 vpr 64.39 MiB -1 -1 0.21 20520 13 0.24 -1 -1 36312 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65936 32 32 250 282 1 193 89 17 17 289 -1 unnamed_device 26.0 MiB 0.37 1122 9989 2715 5777 1497 64.4 MiB 0.08 0.00 6.10764 -131.404 -6.10764 6.10764 0.97 0.000596416 0.00054126 0.0325684 0.0294866 30 3085 33 6.55708e+06 301375 526063. 1820.29 3.87 0.240858 0.210032 21886 126133 -1 2385 14 1092 3013 146281 35280 6.37758 6.37758 -150.865 -6.37758 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0226005 0.0203716 157 155 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_011.v common 8.11 vpr 63.77 MiB -1 -1 0.20 20648 12 0.23 -1 -1 36392 -1 -1 24 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65304 30 32 216 248 1 168 86 17 17 289 -1 unnamed_device 25.2 MiB 0.31 1000 10292 2838 6178 1276 63.8 MiB 0.08 0.00 6.15344 -116.886 -6.15344 6.15344 0.92 0.000514967 0.000469135 0.0306957 0.027747 28 2638 42 6.55708e+06 289320 500653. 1732.36 4.50 0.215538 0.188089 21310 115450 -1 2369 22 955 2525 180220 55628 6.27364 6.27364 -134.355 -6.27364 0 0 612192. 2118.31 0.26 0.07 0.10 -1 -1 0.26 0.0250283 0.022251 132 125 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_012.v common 7.05 vpr 64.16 MiB -1 -1 0.21 20396 12 0.19 -1 -1 36360 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65704 32 32 236 268 1 183 86 17 17 289 -1 unnamed_device 25.6 MiB 0.31 1183 8780 2369 5508 903 64.2 MiB 0.07 0.00 5.71546 -130.205 -5.71546 5.71546 0.94 0.000533119 0.00048396 0.0278292 0.025241 34 2865 18 6.55708e+06 265210 585099. 2024.56 3.37 0.192047 0.167456 22462 138074 -1 2356 15 938 2640 141312 33526 5.88912 5.88912 -144.215 -5.88912 0 0 742403. 2568.87 0.31 0.06 0.13 -1 -1 0.31 0.0226054 0.0204304 146 141 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_013.v common 10.02 vpr 64.76 MiB -1 -1 0.23 20888 13 0.32 -1 -1 36244 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 32 32 283 315 1 223 94 17 17 289 -1 unnamed_device 26.2 MiB 0.29 1389 8401 1844 5806 751 64.8 MiB 0.08 0.00 6.72796 -141.789 -6.72796 6.72796 0.92 0.000643931 0.000581807 0.0296784 0.0269347 30 3401 37 6.55708e+06 361650 526063. 1820.29 6.18 0.266636 0.233528 21886 126133 -1 2749 15 1220 3473 163985 39220 6.96836 6.96836 -158.997 -6.96836 0 0 666494. 2306.21 0.30 0.06 0.12 -1 -1 0.30 0.0262319 0.0236957 191 188 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_014.v common 5.58 vpr 64.97 MiB -1 -1 0.23 21060 14 0.39 -1 -1 36608 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 32 32 303 335 1 241 94 17 17 289 -1 unnamed_device 26.4 MiB 0.51 1619 10105 2395 6688 1022 65.0 MiB 0.09 0.00 7.36616 -155.403 -7.36616 7.36616 0.94 0.000704797 0.000638745 0.0365839 0.0330896 30 3946 18 6.55708e+06 361650 526063. 1820.29 1.40 0.135501 0.120144 21886 126133 -1 3177 18 1405 4026 196823 46411 7.96715 7.96715 -178.918 -7.96715 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0340585 0.0307399 210 208 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_015.v common 5.35 vpr 64.30 MiB -1 -1 0.19 20228 11 0.22 -1 -1 36100 -1 -1 27 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65844 29 32 225 257 1 174 88 17 17 289 -1 unnamed_device 25.9 MiB 0.30 960 11203 2717 6785 1701 64.3 MiB 0.09 0.00 5.53818 -107.159 -5.53818 5.53818 0.94 0.000533947 0.000474397 0.0332354 0.0299912 28 3232 24 6.55708e+06 325485 500653. 1732.36 1.71 0.112706 0.0992356 21310 115450 -1 2418 18 1081 2972 181531 42609 5.65838 5.65838 -122.851 -5.65838 0 0 612192. 2118.31 0.26 0.07 0.11 -1 -1 0.26 0.0249222 0.0223936 147 136 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_016.v common 8.72 vpr 64.84 MiB -1 -1 0.24 20956 12 0.35 -1 -1 36720 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 32 32 301 333 1 230 97 17 17 289 -1 unnamed_device 26.4 MiB 0.45 1284 9421 2208 5969 1244 64.8 MiB 0.09 0.00 6.15144 -124.661 -6.15144 6.15144 0.94 0.000717683 0.000646273 0.0345412 0.0311882 38 3555 31 6.55708e+06 397815 638502. 2209.35 4.53 0.217983 0.191663 23326 155178 -1 2784 17 1388 4500 212837 51932 6.19064 6.19064 -141.221 -6.19064 0 0 851065. 2944.86 0.36 0.09 0.15 -1 -1 0.36 0.0326869 0.0295619 209 206 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_017.v common 6.23 vpr 64.56 MiB -1 -1 0.23 20672 14 0.32 -1 -1 36632 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66112 32 32 277 309 1 217 93 17 17 289 -1 unnamed_device 26.0 MiB 0.36 1504 9753 2444 6369 940 64.6 MiB 0.09 0.00 6.10764 -131.576 -6.10764 6.10764 0.92 0.000633334 0.000568443 0.0335694 0.0303633 36 3622 29 6.55708e+06 349595 612192. 2118.31 2.24 0.166881 0.146889 22750 144809 -1 3119 20 1281 3728 215350 48553 6.74018 6.74018 -154.072 -6.74018 0 0 782063. 2706.10 0.32 0.08 0.14 -1 -1 0.32 0.031824 0.0285674 184 182 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_018.v common 6.05 vpr 64.13 MiB -1 -1 0.20 20496 12 0.20 -1 -1 36284 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65668 32 32 227 259 1 178 87 17 17 289 -1 unnamed_device 25.6 MiB 0.41 1142 8535 2157 5910 468 64.1 MiB 0.07 0.00 5.7221 -131.875 -5.7221 5.7221 0.93 0.000548873 0.000498364 0.0277512 0.0252215 28 3062 50 6.55708e+06 277265 500653. 1732.36 2.01 0.135694 0.119325 21310 115450 -1 2543 65 1691 5665 974591 562972 5.8835 5.8835 -148.756 -5.8835 0 0 612192. 2118.31 0.26 0.38 0.11 -1 -1 0.26 0.0688224 0.0600313 140 132 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_019.v common 6.92 vpr 63.70 MiB -1 -1 0.15 20220 10 0.11 -1 -1 36884 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65228 30 32 175 207 1 131 78 17 17 289 -1 unnamed_device 25.2 MiB 0.18 732 10370 2330 7597 443 63.7 MiB 0.06 0.00 4.61634 -101.866 -4.61634 4.61634 0.90 0.000368733 0.000332754 0.0253874 0.022912 26 2156 23 6.55708e+06 192880 477104. 1650.88 3.76 0.134454 0.117599 21022 109990 -1 1717 15 639 1566 95778 23027 4.88266 4.88266 -121.86 -4.88266 0 0 585099. 2024.56 0.25 0.04 0.09 -1 -1 0.25 0.0151002 0.0134979 91 84 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_020.v common 9.95 vpr 64.41 MiB -1 -1 0.21 20412 13 0.23 -1 -1 36040 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65952 31 32 231 263 1 184 87 17 17 289 -1 unnamed_device 26.1 MiB 0.47 1138 8919 2086 5645 1188 64.4 MiB 0.07 0.00 6.05818 -122.571 -6.05818 6.05818 0.91 0.000534172 0.000484472 0.0281547 0.0256546 28 3260 47 6.55708e+06 289320 500653. 1732.36 6.14 0.232342 0.203351 21310 115450 -1 2631 17 1064 2713 169790 40323 6.05818 6.05818 -140.947 -6.05818 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.024589 0.022129 144 138 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_021.v common 5.46 vpr 64.80 MiB -1 -1 0.23 20572 13 0.36 -1 -1 36784 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 32 32 304 336 1 224 95 17 17 289 -1 unnamed_device 26.4 MiB 0.51 1479 5927 1032 4596 299 64.8 MiB 0.06 0.00 6.4825 -130.643 -6.4825 6.4825 0.93 0.00068236 0.000607835 0.0228193 0.0207138 30 3785 36 6.55708e+06 373705 526063. 1820.29 1.35 0.139737 0.123206 21886 126133 -1 3121 19 1622 5032 245998 57132 7.3213 7.3213 -156.822 -7.3213 0 0 666494. 2306.21 0.28 0.09 0.12 -1 -1 0.28 0.0335089 0.0301314 211 209 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_022.v common 20.79 vpr 64.78 MiB -1 -1 0.24 20976 13 0.36 -1 -1 36872 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 32 32 288 320 1 221 91 17 17 289 -1 unnamed_device 26.4 MiB 0.53 1482 6007 1129 4709 169 64.8 MiB 0.07 0.00 6.46824 -139.434 -6.46824 6.46824 0.93 0.000651223 0.000591086 0.0245098 0.0222032 36 4192 28 6.55708e+06 325485 612192. 2118.31 16.60 0.314321 0.274995 22750 144809 -1 3378 18 1497 4951 325545 70959 6.8411 6.8411 -161.313 -6.8411 0 0 782063. 2706.10 0.31 0.10 0.13 -1 -1 0.31 0.0315664 0.0282712 194 193 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_023.v common 6.10 vpr 63.59 MiB -1 -1 0.17 20112 9 0.11 -1 -1 36056 -1 -1 24 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65120 26 32 152 184 1 120 82 17 17 289 -1 unnamed_device 25.1 MiB 0.21 693 11830 4244 5604 1982 63.6 MiB 0.07 0.00 4.4706 -82.7138 -4.4706 4.4706 0.91 0.000360952 0.000327032 0.0259736 0.0235309 28 1616 15 6.55708e+06 289320 500653. 1732.36 2.80 0.112263 0.0978064 21310 115450 -1 1570 15 612 1527 90091 21343 4.53934 4.53934 -96.6666 -4.53934 0 0 612192. 2118.31 0.26 0.04 0.11 -1 -1 0.26 0.014114 0.012618 87 69 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_024.v common 6.28 vpr 64.78 MiB -1 -1 0.20 20560 13 0.36 -1 -1 36564 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 32 32 287 319 1 210 89 17 17 289 -1 unnamed_device 26.2 MiB 0.30 1415 11573 3127 6460 1986 64.8 MiB 0.10 0.00 6.6419 -132.854 -6.6419 6.6419 0.92 0.000656451 0.000596353 0.04281 0.038766 30 3820 34 6.55708e+06 301375 526063. 1820.29 2.40 0.157933 0.139801 21886 126133 -1 3087 18 1351 4067 204319 47483 6.9633 6.9633 -152.455 -6.9633 0 0 666494. 2306.21 0.28 0.08 0.12 -1 -1 0.28 0.0300724 0.0270738 193 192 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_025.v common 4.19 vpr 63.59 MiB -1 -1 0.15 19912 8 0.11 -1 -1 36052 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65112 32 32 154 186 1 120 80 17 17 289 -1 unnamed_device 25.2 MiB 0.15 766 6788 2139 3405 1244 63.6 MiB 0.04 0.00 3.37088 -79.3912 -3.37088 3.37088 0.91 0.000345582 0.000312336 0.015629 0.0142279 26 1695 16 6.55708e+06 192880 477104. 1650.88 1.02 0.0625308 0.0546876 21022 109990 -1 1558 15 564 1195 65957 16159 3.73148 3.73148 -94.978 -3.73148 0 0 585099. 2024.56 0.26 0.03 0.11 -1 -1 0.26 0.0135232 0.0120353 77 59 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_026.v common 8.22 vpr 64.64 MiB -1 -1 0.20 20540 15 0.29 -1 -1 36468 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66188 32 32 254 286 1 199 92 17 17 289 -1 unnamed_device 26.2 MiB 0.42 1345 5267 929 3987 351 64.6 MiB 0.05 0.00 6.9593 -136.429 -6.9593 6.9593 0.95 0.000602616 0.000547865 0.0187914 0.0171524 38 2946 23 6.55708e+06 337540 638502. 2209.35 4.21 0.211064 0.183568 23326 155178 -1 2532 19 1094 3243 158376 36291 7.1605 7.1605 -153.186 -7.1605 0 0 851065. 2944.86 0.35 0.07 0.15 -1 -1 0.35 0.0280359 0.0251698 165 159 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_027.v common 12.21 vpr 64.28 MiB -1 -1 0.21 20412 13 0.29 -1 -1 36336 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65820 32 32 260 292 1 207 90 17 17 289 -1 unnamed_device 25.8 MiB 0.33 1203 13557 3365 8576 1616 64.3 MiB 0.11 0.00 6.13718 -133.384 -6.13718 6.13718 0.93 0.000601101 0.000544987 0.0447377 0.0405476 28 3584 38 6.55708e+06 313430 500653. 1732.36 8.39 0.264634 0.233659 21310 115450 -1 2846 19 1426 4169 235000 54646 6.24972 6.24972 -148.251 -6.24972 0 0 612192. 2118.31 0.27 0.09 0.10 -1 -1 0.27 0.0297801 0.0266476 168 165 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_028.v common 6.06 vpr 64.49 MiB -1 -1 0.21 20852 13 0.34 -1 -1 36544 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66040 32 32 279 311 1 212 93 17 17 289 -1 unnamed_device 25.9 MiB 0.29 1323 11433 2717 6838 1878 64.5 MiB 0.09 0.00 6.27164 -130.476 -6.27164 6.27164 0.94 0.000645306 0.000579878 0.0386628 0.0347725 34 3296 42 6.55708e+06 349595 585099. 2024.56 2.12 0.185924 0.163682 22462 138074 -1 2913 20 1587 4888 273544 64233 6.6791 6.6791 -152.766 -6.6791 0 0 742403. 2568.87 0.32 0.10 0.13 -1 -1 0.32 0.0325199 0.0291582 187 184 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_029.v common 6.93 vpr 64.04 MiB -1 -1 0.20 20336 12 0.20 -1 -1 36384 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65572 32 32 238 270 1 189 87 17 17 289 -1 unnamed_device 25.7 MiB 0.39 1185 6039 1279 4640 120 64.0 MiB 0.06 0.00 5.57998 -122.255 -5.57998 5.57998 0.94 0.000557278 0.000503529 0.0203025 0.0184324 36 2985 22 6.55708e+06 277265 612192. 2118.31 3.15 0.151966 0.133147 22750 144809 -1 2593 14 1035 3016 174080 39983 5.82038 5.82038 -137.361 -5.82038 0 0 782063. 2706.10 0.32 0.06 0.14 -1 -1 0.32 0.0219126 0.0197947 147 143 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_030.v common 4.64 vpr 64.16 MiB -1 -1 0.19 20456 11 0.19 -1 -1 36412 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65704 30 32 213 245 1 165 85 17 17 289 -1 unnamed_device 25.6 MiB 0.23 1000 12547 3434 7005 2108 64.2 MiB 0.09 0.00 5.38078 -112.862 -5.38078 5.38078 0.91 0.000513651 0.000459102 0.0364516 0.0329014 28 2491 15 6.55708e+06 277265 500653. 1732.36 1.12 0.102262 0.0904007 21310 115450 -1 2235 16 986 2552 136114 33383 5.74138 5.74138 -131.34 -5.74138 0 0 612192. 2118.31 0.28 0.06 0.11 -1 -1 0.28 0.021231 0.0190445 131 122 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_031.v common 7.26 vpr 64.26 MiB -1 -1 0.19 20580 11 0.21 -1 -1 36676 -1 -1 28 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65804 28 32 227 259 1 175 88 17 17 289 -1 unnamed_device 25.9 MiB 0.48 1033 12178 3269 6689 2220 64.3 MiB 0.09 0.00 5.50098 -107.86 -5.50098 5.50098 0.95 0.000501189 0.000452736 0.035122 0.0318292 28 2788 43 6.55708e+06 337540 500653. 1732.36 3.42 0.217502 0.189991 21310 115450 -1 2334 16 1048 2767 152540 36198 5.50098 5.50098 -121.368 -5.50098 0 0 612192. 2118.31 0.28 0.06 0.11 -1 -1 0.28 0.0231265 0.0207971 150 140 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_032.v common 6.82 vpr 64.28 MiB -1 -1 0.20 20736 12 0.26 -1 -1 36524 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65820 32 32 274 306 1 206 90 17 17 289 -1 unnamed_device 25.8 MiB 0.31 1294 5316 980 4103 233 64.3 MiB 0.05 0.00 5.8417 -130.983 -5.8417 5.8417 0.94 0.000618986 0.000560243 0.0196641 0.0178842 28 3160 20 6.55708e+06 313430 500653. 1732.36 3.15 0.201155 0.176067 21310 115450 -1 2697 18 1264 3284 174768 42987 6.51144 6.51144 -155.403 -6.51144 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0287327 0.025875 181 179 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_033.v common 7.84 vpr 64.37 MiB -1 -1 0.19 20556 12 0.20 -1 -1 36296 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65916 31 32 237 269 1 179 86 17 17 289 -1 unnamed_device 25.7 MiB 0.71 1222 5378 1108 3900 370 64.4 MiB 0.05 0.00 5.8835 -124.503 -5.8835 5.8835 0.93 0.00056451 0.000503516 0.0188166 0.0170283 28 3175 25 6.55708e+06 277265 500653. 1732.36 3.86 0.186166 0.161399 21310 115450 -1 2665 16 1121 2986 186856 42683 6.4845 6.4845 -145.408 -6.4845 0 0 612192. 2118.31 0.26 0.07 0.11 -1 -1 0.26 0.0228938 0.0205401 149 144 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_034.v common 6.94 vpr 64.14 MiB -1 -1 0.20 20544 10 0.18 -1 -1 36300 -1 -1 22 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65684 29 32 220 252 1 163 83 17 17 289 -1 unnamed_device 25.6 MiB 0.21 1054 10883 3078 5661 2144 64.1 MiB 0.08 0.00 4.95846 -103.343 -4.95846 4.95846 0.93 0.000512711 0.000460545 0.0341299 0.0307932 28 2663 48 6.55708e+06 265210 500653. 1732.36 3.43 0.203367 0.177496 21310 115450 -1 2189 14 835 2456 133447 31435 5.29412 5.29412 -121.911 -5.29412 0 0 612192. 2118.31 0.27 0.05 0.11 -1 -1 0.27 0.0202282 0.018189 137 131 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_035.v common 7.11 vpr 64.98 MiB -1 -1 0.24 21372 13 0.38 -1 -1 36744 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 315 347 1 239 95 17 17 289 -1 unnamed_device 26.4 MiB 0.30 1522 7871 1681 5622 568 65.0 MiB 0.08 0.00 6.6765 -138.374 -6.6765 6.6765 0.94 0.000744573 0.000670179 0.0305949 0.0277157 34 4031 22 6.55708e+06 373705 585099. 2024.56 3.10 0.20901 0.184459 22462 138074 -1 3537 15 1519 4674 280245 64085 7.0397 7.0397 -157.737 -7.0397 0 0 742403. 2568.87 0.31 0.09 0.13 -1 -1 0.31 0.0317101 0.0287911 221 220 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_036.v common 8.56 vpr 64.61 MiB -1 -1 0.23 21036 14 0.39 -1 -1 36760 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 32 32 282 314 1 220 92 17 17 289 -1 unnamed_device 26.3 MiB 0.57 1410 13133 3370 7361 2402 64.6 MiB 0.11 0.00 6.05418 -134.601 -6.05418 6.05418 0.90 0.000623291 0.000564896 0.0441753 0.0397931 40 3069 20 6.55708e+06 337540 666494. 2306.21 4.28 0.243234 0.212256 23614 160646 -1 3124 20 1558 4813 368110 110109 6.45398 6.45398 -154.763 -6.45398 0 0 872365. 3018.56 0.34 0.12 0.14 -1 -1 0.34 0.0338635 0.0303956 191 187 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_037.v common 7.68 vpr 64.36 MiB -1 -1 0.21 20556 12 0.19 -1 -1 36224 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65904 31 32 241 273 1 189 92 17 17 289 -1 unnamed_device 26.0 MiB 0.28 1170 15410 4449 8084 2877 64.4 MiB 0.11 0.00 6.1213 -124.138 -6.1213 6.1213 0.95 0.000532625 0.000482277 0.0431618 0.0391864 36 2944 27 6.55708e+06 349595 612192. 2118.31 3.93 0.232243 0.203205 22750 144809 -1 2400 16 970 2617 151475 34776 6.6021 6.6021 -143.652 -6.6021 0 0 782063. 2706.10 0.33 0.06 0.14 -1 -1 0.33 0.0234492 0.021155 156 148 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_038.v common 10.08 vpr 65.01 MiB -1 -1 0.24 20872 12 0.36 -1 -1 36696 -1 -1 33 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 31 32 307 339 1 235 96 17 17 289 -1 unnamed_device 26.4 MiB 0.51 1506 9951 2337 6622 992 65.0 MiB 0.09 0.00 6.5197 -135.086 -6.5197 6.5197 0.93 0.000711389 0.000641262 0.0364983 0.033146 30 3540 17 6.55708e+06 397815 526063. 1820.29 5.90 0.278094 0.244527 21886 126133 -1 3131 15 1353 3886 204978 47843 6.8803 6.8803 -155.831 -6.8803 0 0 666494. 2306.21 0.30 0.08 0.12 -1 -1 0.30 0.0308838 0.0280795 218 214 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_039.v common 7.34 vpr 64.86 MiB -1 -1 0.23 21044 14 0.44 -1 -1 36972 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 31 32 293 325 1 224 92 17 17 289 -1 unnamed_device 26.4 MiB 0.37 1561 5888 1079 4231 578 64.9 MiB 0.06 0.00 6.65922 -133.175 -6.65922 6.65922 0.93 0.000702753 0.000640645 0.0236496 0.0215318 28 4329 45 6.55708e+06 349595 500653. 1732.36 3.26 0.15608 0.137681 21310 115450 -1 3496 22 2038 6286 409428 95153 7.46142 7.46142 -162.358 -7.46142 0 0 612192. 2118.31 0.27 0.13 0.11 -1 -1 0.27 0.0392753 0.0351839 202 200 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_040.v common 8.16 vpr 64.70 MiB -1 -1 0.24 21120 13 0.32 -1 -1 36184 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 31 32 276 308 1 223 91 17 17 289 -1 unnamed_device 26.1 MiB 0.42 1425 13963 3681 8722 1560 64.7 MiB 0.12 0.00 6.4805 -134.563 -6.4805 6.4805 0.95 0.000629559 0.00056823 0.0486964 0.0440338 36 3523 25 6.55708e+06 337540 612192. 2118.31 4.06 0.287113 0.251527 22750 144809 -1 2923 21 1397 3957 214303 49858 6.7601 6.7601 -152.594 -6.7601 0 0 782063. 2706.10 0.33 0.08 0.14 -1 -1 0.33 0.0322986 0.0289017 185 183 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_041.v common 15.72 vpr 64.49 MiB -1 -1 0.23 20680 13 0.33 -1 -1 36480 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66040 31 32 269 301 1 203 89 17 17 289 -1 unnamed_device 25.9 MiB 0.44 1336 11969 3132 7203 1634 64.5 MiB 0.10 0.00 5.83004 -117.199 -5.83004 5.83004 0.91 0.00062464 0.000566497 0.0416488 0.0375198 30 3442 31 6.55708e+06 313430 526063. 1820.29 11.67 0.260729 0.229075 21886 126133 -1 2869 33 1290 4339 323730 114040 6.15144 6.15144 -136.211 -6.15144 0 0 666494. 2306.21 0.29 0.14 0.12 -1 -1 0.29 0.047008 0.0419008 179 176 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_042.v common 5.44 vpr 64.52 MiB -1 -1 0.21 20392 12 0.24 -1 -1 36328 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66072 32 32 264 296 1 196 88 17 17 289 -1 unnamed_device 26.0 MiB 0.26 1238 6913 1441 5073 399 64.5 MiB 0.06 0.00 5.71184 -117.572 -5.71184 5.71184 0.93 0.000595374 0.000540328 0.0244178 0.0221608 28 3264 21 6.55708e+06 289320 500653. 1732.36 1.77 0.114669 0.101529 21310 115450 -1 2989 20 1440 4129 251821 57754 5.91304 5.91304 -143.517 -5.91304 0 0 612192. 2118.31 0.27 0.09 0.11 -1 -1 0.27 0.0294693 0.0263452 171 169 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_043.v common 9.82 vpr 65.02 MiB -1 -1 0.26 21724 14 0.51 -1 -1 37020 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 32 32 324 356 1 249 95 17 17 289 -1 unnamed_device 26.4 MiB 0.50 1758 9167 1976 6514 677 65.0 MiB 0.09 0.00 7.04736 -151.984 -7.04736 7.04736 0.90 0.00073501 0.000650282 0.0367402 0.0329572 36 4307 32 6.55708e+06 373705 612192. 2118.31 5.47 0.239416 0.211074 22750 144809 -1 3846 16 1641 5394 321052 72394 7.40796 7.40796 -171.518 -7.40796 0 0 782063. 2706.10 0.32 0.11 0.14 -1 -1 0.32 0.0346522 0.0314991 230 229 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_044.v common 8.25 vpr 64.39 MiB -1 -1 0.20 20120 11 0.24 -1 -1 36364 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65940 31 32 249 281 1 192 89 17 17 289 -1 unnamed_device 25.9 MiB 0.43 1201 13157 3904 6958 2295 64.4 MiB 0.10 0.00 5.50098 -114.671 -5.50098 5.50098 0.94 0.000558387 0.000504429 0.0408273 0.036916 34 3559 24 6.55708e+06 313430 585099. 2024.56 4.35 0.218564 0.191302 22462 138074 -1 2846 16 1375 4036 260093 60490 5.89112 5.89112 -139.862 -5.89112 0 0 742403. 2568.87 0.31 0.08 0.13 -1 -1 0.31 0.0248399 0.0223554 163 156 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_045.v common 6.49 vpr 64.71 MiB -1 -1 0.23 20924 13 0.36 -1 -1 36520 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 31 32 284 316 1 206 91 17 17 289 -1 unnamed_device 26.1 MiB 0.42 1370 8047 1669 5529 849 64.7 MiB 0.07 0.00 6.72996 -130.875 -6.72996 6.72996 0.91 0.000648516 0.000581172 0.0291617 0.0263167 28 3741 40 6.55708e+06 337540 500653. 1732.36 2.49 0.150366 0.132294 21310 115450 -1 3192 19 1384 4579 306391 66414 7.09056 7.09056 -154.19 -7.09056 0 0 612192. 2118.31 0.27 0.10 0.11 -1 -1 0.27 0.0319026 0.028494 193 191 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_046.v common 8.61 vpr 64.75 MiB -1 -1 0.22 20828 12 0.33 -1 -1 36192 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 32 32 303 335 1 222 93 17 17 289 -1 unnamed_device 26.3 MiB 0.53 1525 9753 2284 6567 902 64.7 MiB 0.09 0.00 5.91304 -126.537 -5.91304 5.91304 0.92 0.000694652 0.000624603 0.0357254 0.0322753 48 3083 17 6.55708e+06 349595 816265. 2824.45 4.31 0.262237 0.22896 25054 189045 -1 2945 16 1147 4179 219085 49699 6.39384 6.39384 -142.766 -6.39384 0 0 986792. 3414.50 0.42 0.08 0.18 -1 -1 0.42 0.031172 0.0281849 210 208 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_047.v common 8.01 vpr 64.78 MiB -1 -1 0.20 20692 13 0.31 -1 -1 36860 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 32 32 272 304 1 203 93 17 17 289 -1 unnamed_device 26.2 MiB 0.30 1366 6813 1497 4509 807 64.8 MiB 0.07 0.00 6.22784 -133.731 -6.22784 6.22784 0.94 0.000651199 0.000590829 0.0253776 0.0230076 44 3022 17 6.55708e+06 349595 742403. 2568.87 4.04 0.239235 0.210313 24478 177802 -1 2524 15 1037 3002 153025 35384 6.70864 6.70864 -148.714 -6.70864 0 0 937218. 3242.97 0.40 0.07 0.16 -1 -1 0.40 0.0273225 0.0247722 183 177 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_048.v common 6.41 vpr 64.56 MiB -1 -1 0.21 20876 13 0.25 -1 -1 36980 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66112 32 32 271 303 1 212 90 17 17 289 -1 unnamed_device 26.0 MiB 0.36 1383 4914 889 3742 283 64.6 MiB 0.05 0.00 6.01698 -132.591 -6.01698 6.01698 0.91 0.000562885 0.000505441 0.0174735 0.0158109 34 3524 40 6.55708e+06 313430 585099. 2024.56 2.64 0.174957 0.153549 22462 138074 -1 2923 17 1246 3682 218860 49816 6.34038 6.34038 -149.397 -6.34038 0 0 742403. 2568.87 0.31 0.08 0.12 -1 -1 0.31 0.0276111 0.0247557 178 176 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_049.v common 6.84 vpr 64.88 MiB -1 -1 0.23 20736 12 0.32 -1 -1 36708 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 288 320 1 223 94 17 17 289 -1 unnamed_device 26.4 MiB 0.55 1478 11383 2761 6876 1746 64.9 MiB 0.10 0.00 6.02864 -133.293 -6.02864 6.02864 0.93 0.000635174 0.000564489 0.0398246 0.0357863 34 3934 42 6.55708e+06 361650 585099. 2024.56 2.65 0.194911 0.171554 22462 138074 -1 3368 18 1334 4442 275411 62134 6.67144 6.67144 -154.034 -6.67144 0 0 742403. 2568.87 0.31 0.10 0.13 -1 -1 0.31 0.0325749 0.0293794 197 193 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_050.v common 8.09 vpr 64.88 MiB -1 -1 0.24 21044 13 0.37 -1 -1 37336 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 306 338 1 233 95 17 17 289 -1 unnamed_device 26.3 MiB 0.50 1547 8087 1626 5819 642 64.9 MiB 0.08 0.00 6.46824 -137.216 -6.46824 6.46824 0.94 0.000704122 0.000627765 0.0306875 0.0278053 36 3843 21 6.55708e+06 373705 612192. 2118.31 3.89 0.205049 0.180816 22750 144809 -1 3316 15 1475 4535 251385 57419 6.70864 6.70864 -153.561 -6.70864 0 0 782063. 2706.10 0.32 0.09 0.13 -1 -1 0.32 0.0303038 0.0274368 212 211 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_051.v common 5.01 vpr 64.66 MiB -1 -1 0.21 20404 14 0.36 -1 -1 36312 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66208 32 32 262 294 1 191 88 17 17 289 -1 unnamed_device 26.1 MiB 0.31 1289 8473 2236 5614 623 64.7 MiB 0.08 0.00 6.84876 -137.901 -6.84876 6.84876 0.93 0.000633419 0.000569786 0.0305386 0.0276408 30 3000 22 6.55708e+06 289320 526063. 1820.29 1.18 0.118208 0.104325 21886 126133 -1 2617 17 1168 3578 168819 40175 7.1187 7.1187 -156.293 -7.1187 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0265899 0.0239601 168 167 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_052.v common 6.99 vpr 64.63 MiB -1 -1 0.22 21012 13 0.33 -1 -1 36504 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66184 32 32 291 323 1 224 94 17 17 289 -1 unnamed_device 26.3 MiB 0.43 1499 6271 1214 4551 506 64.6 MiB 0.06 0.00 6.65216 -135.411 -6.65216 6.65216 0.93 0.000649183 0.000586549 0.0226394 0.0205331 34 3903 44 6.55708e+06 361650 585099. 2024.56 2.98 0.18188 0.159792 22462 138074 -1 3365 16 1496 4410 260341 60234 7.13296 7.13296 -157.983 -7.13296 0 0 742403. 2568.87 0.30 0.09 0.13 -1 -1 0.30 0.0296399 0.0267521 198 196 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_053.v common 8.15 vpr 65.08 MiB -1 -1 0.26 20768 13 0.35 -1 -1 36440 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66644 31 32 302 334 1 235 94 17 17 289 -1 unnamed_device 26.5 MiB 0.33 1434 8401 1843 5875 683 65.1 MiB 0.08 0.00 6.4799 -135.748 -6.4799 6.4799 0.94 0.000674821 0.000613339 0.0312183 0.0282736 36 3518 25 6.55708e+06 373705 612192. 2118.31 4.17 0.275552 0.24142 22750 144809 -1 3057 16 1347 4037 212170 50138 6.8405 6.8405 -154.035 -6.8405 0 0 782063. 2706.10 0.32 0.08 0.14 -1 -1 0.32 0.0305108 0.027621 213 209 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_054.v common 7.76 vpr 64.90 MiB -1 -1 0.25 20712 12 0.38 -1 -1 36512 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 308 340 1 238 97 17 17 289 -1 unnamed_device 26.3 MiB 0.33 1589 11197 2983 6899 1315 64.9 MiB 0.10 0.00 6.10964 -134.46 -6.10964 6.10964 0.92 0.000713252 0.000643453 0.0404771 0.0365626 30 3846 21 6.55708e+06 397815 526063. 1820.29 3.77 0.262386 0.229736 21886 126133 -1 3227 16 1434 3949 189025 44884 6.55124 6.55124 -154.517 -6.55124 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0311517 0.0282864 216 213 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_055.v common 7.37 vpr 64.04 MiB -1 -1 0.17 20208 11 0.16 -1 -1 36544 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65572 32 32 216 248 1 160 82 17 17 289 -1 unnamed_device 25.6 MiB 0.29 1043 8270 2193 4722 1355 64.0 MiB 0.06 0.00 5.08892 -106.669 -5.08892 5.08892 0.95 0.000492579 0.000447672 0.0257161 0.0233624 34 2548 49 6.55708e+06 216990 585099. 2024.56 3.78 0.228629 0.19856 22462 138074 -1 2145 18 890 2376 135276 31753 5.16992 5.16992 -123.994 -5.16992 0 0 742403. 2568.87 0.31 0.06 0.13 -1 -1 0.31 0.0225682 0.0201984 125 121 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_056.v common 8.07 vpr 64.34 MiB -1 -1 0.22 20768 13 0.26 -1 -1 36560 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65880 32 32 254 286 1 194 88 17 17 289 -1 unnamed_device 25.9 MiB 0.43 1283 10033 2378 6116 1539 64.3 MiB 0.08 0.00 6.14684 -133.05 -6.14684 6.14684 0.96 0.000626423 0.000558938 0.0336692 0.0304084 36 3137 20 6.55708e+06 289320 612192. 2118.31 4.07 0.209254 0.183345 22750 144809 -1 2719 17 1118 3218 184518 41755 6.31084 6.31084 -146.175 -6.31084 0 0 782063. 2706.10 0.32 0.07 0.14 -1 -1 0.32 0.0270319 0.0244111 161 159 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_057.v common 5.96 vpr 65.25 MiB -1 -1 0.26 21544 14 0.55 -1 -1 36720 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 32 32 338 370 1 252 97 17 17 289 -1 unnamed_device 26.8 MiB 0.32 1645 7201 1587 4956 658 65.2 MiB 0.08 0.00 7.13802 -146.534 -7.13802 7.13802 0.95 0.000794868 0.000704122 0.0307742 0.0278751 30 4467 23 6.55708e+06 397815 526063. 1820.29 1.74 0.152349 0.135051 21886 126133 -1 3419 16 1725 5491 253979 60022 7.25822 7.25822 -163.606 -7.25822 0 0 666494. 2306.21 0.29 0.09 0.12 -1 -1 0.29 0.0351653 0.0319757 245 243 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_058.v common 11.44 vpr 64.62 MiB -1 -1 0.22 20812 13 0.36 -1 -1 36784 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 32 32 271 303 1 212 91 17 17 289 -1 unnamed_device 26.0 MiB 0.47 1483 8659 2075 5739 845 64.6 MiB 0.08 0.00 6.4779 -143.013 -6.4779 6.4779 0.96 0.000638719 0.000576815 0.0308211 0.0278798 30 3485 21 6.55708e+06 325485 526063. 1820.29 7.33 0.227493 0.198855 21886 126133 -1 2997 17 1272 3728 193414 44190 6.8385 6.8385 -164.022 -6.8385 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0293071 0.0264855 178 176 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_059.v common 6.71 vpr 64.13 MiB -1 -1 0.20 20628 11 0.21 -1 -1 36212 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65668 30 32 224 256 1 165 85 17 17 289 -1 unnamed_device 25.6 MiB 0.20 1056 13105 3637 7273 2195 64.1 MiB 0.09 0.00 5.73878 -119.706 -5.73878 5.73878 0.93 0.000509575 0.000459487 0.0392824 0.0355575 30 2470 20 6.55708e+06 277265 526063. 1820.29 3.15 0.196251 0.171228 21886 126133 -1 2084 19 882 2579 121506 29479 5.85898 5.85898 -134.37 -5.85898 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0244864 0.0218699 139 133 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_060.v common 9.26 vpr 65.03 MiB -1 -1 0.27 21260 15 0.65 -1 -1 36872 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 32 32 351 383 1 268 98 17 17 289 -1 unnamed_device 26.8 MiB 0.37 1738 6398 1188 4870 340 65.0 MiB 0.07 0.00 7.74667 -152.974 -7.74667 7.74667 0.91 0.000778125 0.000696602 0.027482 0.024552 36 4646 28 6.55708e+06 409870 612192. 2118.31 4.85 0.319472 0.279721 22750 144809 -1 3792 16 1760 5626 300520 70294 8.33801 8.33801 -177.387 -8.33801 0 0 782063. 2706.10 0.32 0.11 0.14 -1 -1 0.32 0.0381515 0.0346294 257 256 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_061.v common 6.27 vpr 64.79 MiB -1 -1 0.22 21064 13 0.40 -1 -1 36444 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 32 32 297 329 1 215 92 17 17 289 -1 unnamed_device 26.3 MiB 0.37 1341 16445 4319 9553 2573 64.8 MiB 0.14 0.00 6.89196 -139.203 -6.89196 6.89196 0.93 0.000689363 0.000616908 0.0589697 0.053121 28 4241 39 6.55708e+06 337540 500653. 1732.36 2.23 0.182231 0.161337 21310 115450 -1 3254 17 1479 4308 268014 62539 7.25256 7.25256 -163.427 -7.25256 0 0 612192. 2118.31 0.28 0.10 0.11 -1 -1 0.28 0.0327059 0.0296085 203 202 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_062.v common 10.53 vpr 64.25 MiB -1 -1 0.17 20136 11 0.16 -1 -1 36756 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65796 32 32 231 263 1 176 86 17 17 289 -1 unnamed_device 25.7 MiB 0.36 1079 10670 2760 6773 1137 64.3 MiB 0.08 0.00 5.16732 -114.648 -5.16732 5.16732 0.90 0.000524155 0.00047308 0.0325283 0.0293223 30 2635 29 6.55708e+06 265210 526063. 1820.29 6.94 0.240495 0.208944 21886 126133 -1 2348 15 1022 2912 146555 34817 5.28752 5.28752 -130.999 -5.28752 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0207041 0.0186029 141 136 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_063.v common 5.94 vpr 65.05 MiB -1 -1 0.22 20972 12 0.38 -1 -1 36684 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 305 337 1 231 94 17 17 289 -1 unnamed_device 26.5 MiB 0.53 1510 9892 2482 6147 1263 65.0 MiB 0.09 0.00 6.1611 -129.511 -6.1611 6.1611 0.92 0.00069135 0.000625651 0.0356349 0.0321028 30 3825 29 6.55708e+06 361650 526063. 1820.29 1.78 0.146479 0.129139 21886 126133 -1 3149 18 1480 4554 223719 51843 6.79164 6.79164 -148.996 -6.79164 0 0 666494. 2306.21 0.30 0.09 0.12 -1 -1 0.30 0.0344191 0.0310988 213 210 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_064.v common 10.31 vpr 64.33 MiB -1 -1 0.17 20136 12 0.23 -1 -1 36580 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65872 32 32 243 275 1 186 90 17 17 289 -1 unnamed_device 25.9 MiB 0.45 1168 10542 2561 6541 1440 64.3 MiB 0.08 0.00 6.06844 -127.107 -6.06844 6.06844 0.90 0.000601693 0.000543641 0.0315487 0.0285108 28 3149 38 6.55708e+06 313430 500653. 1732.36 6.62 0.205168 0.179413 21310 115450 -1 2691 15 1211 3433 198055 46191 6.38984 6.38984 -147.61 -6.38984 0 0 612192. 2118.31 0.27 0.07 0.10 -1 -1 0.27 0.0231827 0.0209031 153 148 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_065.v common 8.21 vpr 64.20 MiB -1 -1 0.21 20480 12 0.23 -1 -1 36408 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65744 30 32 228 260 1 161 83 17 17 289 -1 unnamed_device 25.6 MiB 0.24 980 11063 3215 5473 2375 64.2 MiB 0.08 0.00 5.82944 -117.747 -5.82944 5.82944 0.93 0.000550653 0.000501424 0.036561 0.0331869 26 3052 48 6.55708e+06 253155 477104. 1650.88 4.55 0.212905 0.18585 21022 109990 -1 2388 23 1260 3586 388887 145620 6.31284 6.31284 -138.224 -6.31284 0 0 585099. 2024.56 0.26 0.13 0.10 -1 -1 0.26 0.0304629 0.027075 140 137 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_066.v common 13.16 vpr 64.42 MiB -1 -1 0.23 20840 12 0.35 -1 -1 36396 -1 -1 31 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65968 29 32 275 307 1 206 92 17 17 289 -1 unnamed_device 25.8 MiB 0.29 1347 5681 1105 4130 446 64.4 MiB 0.06 0.00 5.58198 -108.434 -5.58198 5.58198 0.91 0.000658727 0.000585985 0.0220281 0.019911 30 3412 25 6.55708e+06 373705 526063. 1820.29 9.25 0.241865 0.21139 21886 126133 -1 2883 34 1302 4513 431927 192329 6.06278 6.06278 -126.548 -6.06278 0 0 666494. 2306.21 0.30 0.18 0.11 -1 -1 0.30 0.0498312 0.0442248 191 186 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_067.v common 7.35 vpr 65.07 MiB -1 -1 0.22 20956 13 0.43 -1 -1 36440 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 32 32 330 362 1 256 97 17 17 289 -1 unnamed_device 26.3 MiB 0.71 1596 6091 1106 4589 396 65.1 MiB 0.06 0.00 7.25056 -149.828 -7.25056 7.25056 0.91 0.000723801 0.000655234 0.0243608 0.0220643 36 3936 20 6.55708e+06 397815 612192. 2118.31 2.94 0.20257 0.178531 22750 144809 -1 3417 16 1582 4403 234662 55827 7.28976 7.28976 -166.224 -7.28976 0 0 782063. 2706.10 0.32 0.09 0.14 -1 -1 0.32 0.0327134 0.0297023 238 235 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_068.v common 6.43 vpr 64.84 MiB -1 -1 0.23 20648 12 0.29 -1 -1 36384 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 290 322 1 220 96 17 17 289 -1 unnamed_device 26.4 MiB 0.51 1327 12360 3501 7386 1473 64.8 MiB 0.11 0.00 6.2023 -126.011 -6.2023 6.2023 0.93 0.000673521 0.000610971 0.0418386 0.0379164 30 3690 33 6.55708e+06 385760 526063. 1820.29 2.31 0.158391 0.140719 21886 126133 -1 2976 29 1496 4347 308025 105107 6.7641 6.7641 -147.776 -6.7641 0 0 666494. 2306.21 0.29 0.13 0.12 -1 -1 0.29 0.0441246 0.0393626 200 195 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_069.v common 7.42 vpr 64.27 MiB -1 -1 0.18 20680 12 0.19 -1 -1 36732 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65812 32 32 214 246 1 164 84 17 17 289 -1 unnamed_device 25.7 MiB 0.64 1135 10149 2462 6257 1430 64.3 MiB 0.08 0.00 5.60752 -119.408 -5.60752 5.60752 0.92 0.000502799 0.000452076 0.0305093 0.0275446 30 2634 30 6.55708e+06 241100 526063. 1820.29 3.49 0.194843 0.169742 21886 126133 -1 2293 16 862 2574 131469 30510 5.72772 5.72772 -134.035 -5.72772 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0218434 0.0196604 126 119 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_070.v common 7.43 vpr 64.44 MiB -1 -1 0.22 20472 12 0.27 -1 -1 36568 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65984 31 32 244 276 1 182 87 17 17 289 -1 unnamed_device 26.0 MiB 0.33 1177 12375 3387 6891 2097 64.4 MiB 0.10 0.00 5.89878 -117.754 -5.89878 5.89878 0.93 0.000588772 0.000535227 0.0395517 0.0359014 30 3039 24 6.55708e+06 289320 526063. 1820.29 3.64 0.222238 0.194881 21886 126133 -1 2526 19 1183 3741 175898 41521 6.02158 6.02158 -135.21 -6.02158 0 0 666494. 2306.21 0.29 0.07 0.12 -1 -1 0.29 0.0271989 0.0243751 154 151 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_071.v common 7.39 vpr 64.64 MiB -1 -1 0.22 20692 11 0.24 -1 -1 36828 -1 -1 30 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66192 30 32 276 308 1 210 92 17 17 289 -1 unnamed_device 26.0 MiB 0.17 1415 11684 3005 6575 2104 64.6 MiB 0.10 0.00 5.55244 -111.164 -5.55244 5.55244 0.93 0.000647797 0.000587375 0.0398381 0.0359443 34 4089 40 6.55708e+06 361650 585099. 2024.56 3.72 0.192579 0.169651 22462 138074 -1 3205 17 1264 4093 272253 59262 6.15344 6.15344 -131.879 -6.15344 0 0 742403. 2568.87 0.31 0.09 0.13 -1 -1 0.31 0.0282435 0.0253851 190 185 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_072.v common 7.70 vpr 64.46 MiB -1 -1 0.20 20780 11 0.25 -1 -1 36472 -1 -1 27 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 28 32 253 285 1 181 87 17 17 289 -1 unnamed_device 26.0 MiB 0.18 1110 9879 2527 6538 814 64.5 MiB 0.08 0.00 5.44692 -100.796 -5.44692 5.44692 0.93 0.000591701 0.000534996 0.0333418 0.0300429 36 2693 31 6.55708e+06 325485 612192. 2118.31 4.03 0.242973 0.212343 22750 144809 -1 2264 15 922 3266 170122 39155 5.56712 5.56712 -113.853 -5.56712 0 0 782063. 2706.10 0.32 0.06 0.14 -1 -1 0.32 0.0237392 0.0213595 172 166 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_073.v common 7.07 vpr 64.30 MiB -1 -1 0.21 20564 13 0.27 -1 -1 36256 -1 -1 25 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65844 30 32 235 267 1 174 87 17 17 289 -1 unnamed_device 25.9 MiB 0.35 1100 4887 930 3736 221 64.3 MiB 0.05 0.00 6.0017 -114.095 -6.0017 6.0017 0.89 0.000533527 0.000481575 0.0169211 0.0154041 34 2741 21 6.55708e+06 301375 585099. 2024.56 3.31 0.161137 0.140335 22462 138074 -1 2425 15 921 2851 159241 36701 6.3623 6.3623 -130.551 -6.3623 0 0 742403. 2568.87 0.31 0.06 0.13 -1 -1 0.31 0.0223051 0.0201046 148 144 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_074.v common 5.10 vpr 64.51 MiB -1 -1 0.19 20720 12 0.23 -1 -1 36568 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66056 32 32 264 296 1 207 92 17 17 289 -1 unnamed_device 26.0 MiB 0.34 1297 12305 3023 7216 2066 64.5 MiB 0.09 0.00 5.8417 -128.186 -5.8417 5.8417 0.90 0.000554223 0.000495326 0.0375162 0.0337237 30 3234 22 6.55708e+06 337540 526063. 1820.29 1.43 0.12747 0.112424 21886 126133 -1 2577 15 1202 3317 168811 40013 6.2833 6.2833 -150.363 -6.2833 0 0 666494. 2306.21 0.28 0.06 0.11 -1 -1 0.28 0.0258241 0.023375 174 169 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_075.v common 7.05 vpr 64.46 MiB -1 -1 0.21 20564 13 0.36 -1 -1 36648 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 31 32 278 310 1 202 90 17 17 289 -1 unnamed_device 25.8 MiB 0.35 1311 5517 1031 4052 434 64.5 MiB 0.05 0.00 6.88936 -133.054 -6.88936 6.88936 0.92 0.000647762 0.000584347 0.0207517 0.0188527 28 3253 23 6.55708e+06 325485 500653. 1732.36 3.19 0.197463 0.172013 21310 115450 -1 2883 19 1436 4373 244079 55911 7.17156 7.17156 -153.12 -7.17156 0 0 612192. 2118.31 0.27 0.09 0.11 -1 -1 0.27 0.0320299 0.0288214 187 185 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_076.v common 5.20 vpr 64.83 MiB -1 -1 0.23 20712 14 0.33 -1 -1 36708 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 290 322 1 214 92 17 17 289 -1 unnamed_device 26.2 MiB 0.30 1361 13340 3813 7167 2360 64.8 MiB 0.11 0.00 6.8411 -135.771 -6.8411 6.8411 0.91 0.00062271 0.000561831 0.0457354 0.0413255 30 3144 23 6.55708e+06 337540 526063. 1820.29 1.34 0.144139 0.127572 21886 126133 -1 2588 19 1262 3534 163137 39516 7.22102 7.22102 -153.683 -7.22102 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0312138 0.0279127 196 195 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_077.v common 13.96 vpr 64.54 MiB -1 -1 0.22 21228 14 0.31 -1 -1 36396 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 269 301 1 199 89 17 17 289 -1 unnamed_device 26.0 MiB 0.34 1146 8009 1888 5047 1074 64.5 MiB 0.07 0.00 6.30884 -127.798 -6.30884 6.30884 0.97 0.000619234 0.000561601 0.0286023 0.0259184 30 3067 48 6.55708e+06 301375 526063. 1820.29 9.99 0.315543 0.27605 21886 126133 -1 2427 28 1375 4635 298215 91491 6.65518 6.65518 -145.715 -6.65518 0 0 666494. 2306.21 0.28 0.12 0.12 -1 -1 0.28 0.0395468 0.0351974 175 174 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_078.v common 14.37 vpr 64.90 MiB -1 -1 0.25 21336 13 0.42 -1 -1 36620 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 296 328 1 221 93 17 17 289 -1 unnamed_device 26.5 MiB 0.37 1422 6183 1209 4389 585 64.9 MiB 0.06 0.00 6.76916 -133.677 -6.76916 6.76916 0.96 0.000691048 0.000622609 0.0243303 0.0220396 28 4132 33 6.55708e+06 349595 500653. 1732.36 10.26 0.290677 0.254882 21310 115450 -1 3635 23 1844 5727 400675 91440 7.28916 7.28916 -158.916 -7.28916 0 0 612192. 2118.31 0.27 0.13 0.11 -1 -1 0.27 0.0406205 0.0364399 205 201 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_079.v common 5.47 vpr 64.18 MiB -1 -1 0.20 20800 13 0.23 -1 -1 36268 -1 -1 24 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65724 30 32 234 266 1 186 86 17 17 289 -1 unnamed_device 25.8 MiB 0.48 1247 8024 1931 5322 771 64.2 MiB 0.07 0.00 6.22784 -128.097 -6.22784 6.22784 0.90 0.000559115 0.000507955 0.0264477 0.0241007 28 3152 24 6.55708e+06 289320 500653. 1732.36 1.70 0.116309 0.10334 21310 115450 -1 2630 21 1216 3233 218773 57442 6.57618 6.57618 -146.95 -6.57618 0 0 612192. 2118.31 0.26 0.09 0.10 -1 -1 0.26 0.0288423 0.0256173 147 143 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_080.v common 6.19 vpr 64.78 MiB -1 -1 0.25 20932 13 0.56 -1 -1 36532 -1 -1 32 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 30 32 291 323 1 232 94 17 17 289 -1 unnamed_device 26.3 MiB 0.41 1415 6271 1187 4688 396 64.8 MiB 0.06 0.00 6.73256 -132.364 -6.73256 6.73256 0.92 0.000685535 0.000621806 0.0243063 0.022106 36 3617 20 6.55708e+06 385760 612192. 2118.31 1.94 0.150585 0.133445 22750 144809 -1 3016 19 1498 4248 213887 51415 7.0025 7.0025 -151.423 -7.0025 0 0 782063. 2706.10 0.32 0.09 0.13 -1 -1 0.32 0.0339842 0.0305829 203 200 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_081.v common 7.29 vpr 64.81 MiB -1 -1 0.23 20788 14 0.39 -1 -1 37040 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 32 32 274 306 1 210 91 17 17 289 -1 unnamed_device 26.2 MiB 0.56 1358 8659 1951 6310 398 64.8 MiB 0.06 0.00 6.61036 -137.215 -6.61036 6.61036 0.94 0.00038777 0.000353023 0.024411 0.0221825 28 3771 27 6.55708e+06 325485 500653. 1732.36 3.14 0.125966 0.111192 21310 115450 -1 3246 18 1370 4536 274705 61330 7.0815 7.0815 -164.534 -7.0815 0 0 612192. 2118.31 0.27 0.09 0.11 -1 -1 0.27 0.0308294 0.0278221 181 179 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_082.v common 7.24 vpr 64.45 MiB -1 -1 0.24 20768 13 0.29 -1 -1 36736 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65992 31 32 266 298 1 204 88 17 17 289 -1 unnamed_device 25.9 MiB 0.35 1349 8278 1974 5355 949 64.4 MiB 0.07 0.00 6.42704 -130.579 -6.42704 6.42704 0.92 0.000635303 0.000573579 0.0296981 0.0268644 34 3511 38 6.55708e+06 301375 585099. 2024.56 3.36 0.174852 0.153717 22462 138074 -1 2911 18 1302 3842 225853 50546 6.75044 6.75044 -151.174 -6.75044 0 0 742403. 2568.87 0.32 0.08 0.13 -1 -1 0.32 0.0283848 0.0254108 175 173 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_083.v common 8.46 vpr 64.55 MiB -1 -1 0.24 20836 13 0.27 -1 -1 36476 -1 -1 27 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 30 32 266 298 1 204 89 17 17 289 -1 unnamed_device 26.0 MiB 0.47 1263 13751 4201 7179 2371 64.5 MiB 0.11 0.00 6.1611 -115.224 -6.1611 6.1611 0.92 0.000600209 0.00054389 0.0456557 0.0413949 28 4205 49 6.55708e+06 325485 500653. 1732.36 4.44 0.172513 0.152729 21310 115450 -1 3289 20 1565 4686 376453 95353 7.07584 7.07584 -149.602 -7.07584 0 0 612192. 2118.31 0.27 0.12 0.11 -1 -1 0.27 0.0319662 0.0287041 178 175 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_084.v common 8.62 vpr 65.07 MiB -1 -1 0.24 20952 14 0.45 -1 -1 36524 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 32 32 310 342 1 238 101 17 17 289 -1 unnamed_device 26.5 MiB 0.44 1520 7151 1439 5129 583 65.1 MiB 0.07 0.00 6.7601 -141.653 -6.7601 6.7601 0.93 0.000727721 0.000653122 0.027031 0.0244932 36 3501 23 6.55708e+06 446035 612192. 2118.31 4.40 0.249541 0.219423 22750 144809 -1 3151 20 1703 5082 260911 60831 7.1579 7.1579 -163.412 -7.1579 0 0 782063. 2706.10 0.32 0.10 0.14 -1 -1 0.32 0.0364274 0.0327516 218 215 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_085.v common 15.12 vpr 64.48 MiB -1 -1 0.25 21024 11 0.35 -1 -1 36772 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 29 32 262 294 1 203 90 17 17 289 -1 unnamed_device 26.0 MiB 0.53 1295 6522 1299 4707 516 64.5 MiB 0.06 0.00 5.61152 -113.195 -5.61152 5.61152 0.93 0.000628334 0.000574666 0.023891 0.0215626 28 3697 38 6.55708e+06 349595 500653. 1732.36 11.04 0.218402 0.191186 21310 115450 -1 3005 17 1331 4059 255860 57412 6.09232 6.09232 -135.828 -6.09232 0 0 612192. 2118.31 0.27 0.09 0.11 -1 -1 0.27 0.0287617 0.0259795 177 173 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_086.v common 5.24 vpr 64.21 MiB -1 -1 0.18 20120 13 0.20 -1 -1 36448 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65752 32 32 222 254 1 180 88 17 17 289 -1 unnamed_device 25.7 MiB 0.35 1208 10033 2479 6508 1046 64.2 MiB 0.08 0.00 5.77918 -133.225 -5.77918 5.77918 0.94 0.000514932 0.00046849 0.0298369 0.027149 28 3106 18 6.55708e+06 289320 500653. 1732.36 1.56 0.105059 0.0931637 21310 115450 -1 2597 18 1078 2812 189582 42904 6.33838 6.33838 -157.264 -6.33838 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0237788 0.0212802 138 127 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_087.v common 8.03 vpr 64.62 MiB -1 -1 0.21 20680 14 0.28 -1 -1 36564 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 32 32 267 299 1 205 92 17 17 289 -1 unnamed_device 26.0 MiB 0.47 1338 8786 2060 6174 552 64.6 MiB 0.07 0.00 6.6771 -139.917 -6.6771 6.6771 0.91 0.000664958 0.000590804 0.0286533 0.0258537 36 3612 23 6.55708e+06 337540 612192. 2118.31 4.10 0.182971 0.160924 22750 144809 -1 2964 17 1178 3617 197428 46284 6.9175 6.9175 -155.344 -6.9175 0 0 782063. 2706.10 0.32 0.07 0.13 -1 -1 0.32 0.0271926 0.0244602 179 172 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_088.v common 7.10 vpr 64.93 MiB -1 -1 0.24 21384 15 0.53 -1 -1 36384 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 32 32 334 366 1 263 97 17 17 289 -1 unnamed_device 26.5 MiB 0.34 1709 5869 1164 4191 514 64.9 MiB 0.07 0.00 7.46001 -156.735 -7.46001 7.46001 0.92 0.000779393 0.000702614 0.0251001 0.0227855 30 4927 44 6.55708e+06 397815 526063. 1820.29 2.93 0.17053 0.150468 21886 126133 -1 3716 18 1751 5210 263598 60393 7.70041 7.70041 -177.924 -7.70041 0 0 666494. 2306.21 0.30 0.10 0.12 -1 -1 0.30 0.0385954 0.0350361 241 239 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_089.v common 6.55 vpr 64.16 MiB -1 -1 0.19 20760 11 0.21 -1 -1 36276 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65700 32 32 220 252 1 157 86 17 17 289 -1 unnamed_device 25.6 MiB 0.48 1028 5756 1180 4285 291 64.2 MiB 0.05 0.00 5.42258 -113.307 -5.42258 5.42258 0.92 0.000518568 0.000471845 0.0181037 0.0164088 26 2901 44 6.55708e+06 265210 477104. 1650.88 2.73 0.113908 0.0996964 21022 109990 -1 2375 24 1161 3732 428395 163376 6.18498 6.18498 -143.463 -6.18498 0 0 585099. 2024.56 0.26 0.14 0.10 -1 -1 0.26 0.029192 0.0259557 129 125 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_090.v common 6.47 vpr 64.32 MiB -1 -1 0.19 20168 12 0.23 -1 -1 36800 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65868 31 32 244 276 1 193 89 17 17 289 -1 unnamed_device 25.9 MiB 0.31 1205 6821 1354 4638 829 64.3 MiB 0.06 0.00 6.08312 -125.639 -6.08312 6.08312 0.92 0.000551924 0.00050105 0.0227346 0.0206703 36 3143 34 6.55708e+06 313430 612192. 2118.31 2.78 0.171254 0.150081 22750 144809 -1 2484 17 1108 3191 176457 41920 6.45798 6.45798 -141.47 -6.45798 0 0 782063. 2706.10 0.32 0.07 0.13 -1 -1 0.32 0.0258242 0.0232294 156 151 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_091.v common 14.09 vpr 64.67 MiB -1 -1 0.24 20720 12 0.38 -1 -1 36664 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 32 32 300 332 1 237 96 17 17 289 -1 unnamed_device 26.1 MiB 0.38 1469 9951 2618 6485 848 64.7 MiB 0.09 0.00 5.9201 -131.593 -5.9201 5.9201 0.94 0.000691472 0.000615095 0.0361073 0.032707 32 4445 48 6.55708e+06 385760 554710. 1919.41 9.95 0.331217 0.289268 22174 131602 -1 3594 22 1912 5637 423276 114987 6.6831 6.6831 -157.607 -6.6831 0 0 701300. 2426.64 0.31 0.13 0.13 -1 -1 0.31 0.0385667 0.034521 213 205 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_092.v common 13.09 vpr 64.33 MiB -1 -1 0.23 20700 12 0.30 -1 -1 36436 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65872 32 32 271 303 1 211 90 17 17 289 -1 unnamed_device 25.7 MiB 0.38 1389 8331 1865 6003 463 64.3 MiB 0.08 0.00 6.2813 -131.805 -6.2813 6.2813 0.95 0.000631393 0.000573655 0.0297449 0.0269517 30 3867 48 6.55708e+06 313430 526063. 1820.29 9.14 0.258339 0.226676 21886 126133 -1 3102 17 1277 3831 205589 46912 6.6027 6.6027 -153.6 -6.6027 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0285982 0.0257741 181 176 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_093.v common 8.07 vpr 64.80 MiB -1 -1 0.24 21392 14 0.57 -1 -1 36332 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 32 32 327 359 1 242 95 17 17 289 -1 unnamed_device 26.2 MiB 0.64 1671 11543 2996 7456 1091 64.8 MiB 0.11 0.00 7.09622 -146.756 -7.09622 7.09622 0.93 0.000749217 0.000677134 0.0456152 0.0412108 38 4115 22 6.55708e+06 373705 638502. 2209.35 3.42 0.236991 0.20901 23326 155178 -1 3573 19 1694 5651 296699 66773 7.53782 7.53782 -167.747 -7.53782 0 0 851065. 2944.86 0.34 0.11 0.15 -1 -1 0.34 0.0399025 0.0360068 234 232 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_094.v common 7.92 vpr 64.30 MiB -1 -1 0.21 20648 12 0.27 -1 -1 36624 -1 -1 25 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65848 30 32 246 278 1 191 87 17 17 289 -1 unnamed_device 26.0 MiB 0.52 1284 13527 3800 7239 2488 64.3 MiB 0.10 0.00 6.01898 -117.232 -6.01898 6.01898 0.95 0.000610399 0.000551044 0.044172 0.0398864 38 2876 18 6.55708e+06 301375 638502. 2209.35 3.86 0.268534 0.234987 23326 155178 -1 2423 14 947 3057 141901 33076 6.25738 6.25738 -129.556 -6.25738 0 0 851065. 2944.86 0.34 0.06 0.15 -1 -1 0.34 0.0236295 0.0213223 160 155 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_095.v common 6.97 vpr 64.08 MiB -1 -1 0.19 20864 11 0.25 -1 -1 36484 -1 -1 26 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65616 27 32 219 251 1 163 85 17 17 289 -1 unnamed_device 25.5 MiB 0.35 900 5851 1344 3581 926 64.1 MiB 0.05 0.00 5.51064 -100.013 -5.51064 5.51064 0.94 0.00050787 0.000460558 0.0190638 0.0173348 28 2818 39 6.55708e+06 313430 500653. 1732.36 3.28 0.173621 0.150582 21310 115450 -1 2314 18 1079 3038 170210 42049 5.87324 5.87324 -120.497 -5.87324 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0242292 0.0217345 140 134 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_096.v common 8.64 vpr 65.19 MiB -1 -1 0.27 21564 13 0.55 -1 -1 36556 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 32 32 380 412 1 282 104 17 17 289 -1 unnamed_device 27.0 MiB 0.53 1950 18404 4591 11225 2588 65.2 MiB 0.17 0.00 6.8013 -139.508 -6.8013 6.8013 0.93 0.000835112 0.000742362 0.0691776 0.0622924 34 5228 29 6.55708e+06 482200 585099. 2024.56 3.96 0.291099 0.257045 22462 138074 -1 4321 20 2156 6991 497672 127673 7.0417 7.0417 -163.002 -7.0417 0 0 742403. 2568.87 0.33 0.16 0.13 -1 -1 0.33 0.0464486 0.041989 286 285 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_097.v common 7.35 vpr 64.52 MiB -1 -1 0.23 20924 14 0.32 -1 -1 36368 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66064 31 32 277 309 1 210 91 17 17 289 -1 unnamed_device 25.9 MiB 0.27 1332 7639 1822 5338 479 64.5 MiB 0.07 0.00 6.88996 -136.389 -6.88996 6.88996 0.93 0.000661198 0.00060074 0.0281542 0.0256045 30 3296 25 6.55708e+06 337540 526063. 1820.29 3.51 0.233839 0.204181 21886 126133 -1 2888 16 1247 3422 170143 39665 7.16956 7.16956 -156.147 -7.16956 0 0 666494. 2306.21 0.30 0.07 0.12 -1 -1 0.30 0.0275974 0.0249193 188 184 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_098.v common 5.54 vpr 64.20 MiB -1 -1 0.22 20512 12 0.21 -1 -1 36292 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65736 32 32 229 261 1 178 91 17 17 289 -1 unnamed_device 25.6 MiB 0.38 1244 7843 1649 5230 964 64.2 MiB 0.06 0.00 5.95024 -133.449 -5.95024 5.95024 0.91 0.000540657 0.000489031 0.024244 0.0220683 28 3098 38 6.55708e+06 325485 500653. 1732.36 1.64 0.122343 0.10792 21310 115450 -1 2730 45 1092 3254 590813 313803 6.07044 6.07044 -147.877 -6.07044 0 0 612192. 2118.31 0.27 0.24 0.11 -1 -1 0.27 0.0511368 0.0450316 145 134 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_099.v common 7.68 vpr 64.59 MiB -1 -1 0.20 20388 13 0.34 -1 -1 36552 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 32 32 263 295 1 201 90 17 17 289 -1 unnamed_device 26.1 MiB 0.49 1287 7125 1609 5108 408 64.6 MiB 0.06 0.00 6.3623 -131.885 -6.3623 6.3623 0.91 0.00056857 0.000510895 0.0246196 0.0222799 34 3158 35 6.55708e+06 313430 585099. 2024.56 3.71 0.250384 0.21826 22462 138074 -1 2757 16 1170 3582 193816 44877 6.5635 6.5635 -147.052 -6.5635 0 0 742403. 2568.87 0.31 0.07 0.12 -1 -1 0.31 0.0269202 0.0242117 169 168 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_100.v common 8.53 vpr 64.97 MiB -1 -1 0.25 21012 13 0.41 -1 -1 37240 -1 -1 35 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 31 32 321 353 1 256 98 17 17 289 -1 unnamed_device 26.3 MiB 0.32 1670 11123 2853 7320 950 65.0 MiB 0.10 0.00 6.6399 -137.993 -6.6399 6.6399 0.92 0.000643554 0.000582611 0.0381795 0.0345114 36 3904 29 6.55708e+06 421925 612192. 2118.31 4.43 0.279975 0.245542 22750 144809 -1 3392 17 1464 4546 242752 55520 7.0815 7.0815 -156.658 -7.0815 0 0 782063. 2706.10 0.32 0.09 0.14 -1 -1 0.32 0.0348318 0.0316285 233 228 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_101.v common 8.20 vpr 64.57 MiB -1 -1 0.22 20748 11 0.30 -1 -1 36680 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 30 32 287 319 1 212 93 17 17 289 -1 unnamed_device 26.2 MiB 0.30 1371 11013 2777 6591 1645 64.6 MiB 0.10 0.00 5.55444 -107.668 -5.55444 5.55444 0.93 0.000670032 0.000600095 0.0386645 0.0349629 44 3158 17 6.55708e+06 373705 742403. 2568.87 4.21 0.251656 0.220745 24478 177802 -1 2704 16 1208 4255 214892 48886 5.74338 5.74338 -122.134 -5.74338 0 0 937218. 3242.97 0.38 0.07 0.17 -1 -1 0.38 0.0275925 0.0248925 199 196 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_102.v common 6.14 vpr 64.71 MiB -1 -1 0.24 20888 15 0.45 -1 -1 35920 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 32 32 296 328 1 223 93 17 17 289 -1 unnamed_device 26.3 MiB 0.61 1573 8283 1929 5503 851 64.7 MiB 0.08 0.00 7.25622 -151.279 -7.25622 7.25622 0.93 0.000703565 0.000630062 0.0310189 0.0281699 30 3633 31 6.55708e+06 349595 526063. 1820.29 1.82 0.146821 0.13006 21886 126133 -1 3123 17 1378 4357 216630 50087 7.40596 7.40596 -169.664 -7.40596 0 0 666494. 2306.21 0.28 0.08 0.12 -1 -1 0.28 0.0308618 0.027818 202 201 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_103.v common 8.33 vpr 64.52 MiB -1 -1 0.24 21352 13 0.41 -1 -1 36296 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 32 32 285 317 1 224 94 17 17 289 -1 unnamed_device 26.1 MiB 0.54 1476 9679 2155 6321 1203 64.5 MiB 0.08 0.00 6.6765 -142.241 -6.6765 6.6765 0.91 0.000631868 0.000570661 0.033028 0.0298123 30 3554 24 6.55708e+06 361650 526063. 1820.29 4.14 0.25306 0.221161 21886 126133 -1 2918 17 1260 3846 183753 42552 7.2383 7.2383 -164.859 -7.2383 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0297121 0.02673 194 190 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_104.v common 5.47 vpr 64.42 MiB -1 -1 0.21 20644 12 0.25 -1 -1 36572 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65964 29 32 239 271 1 189 90 17 17 289 -1 unnamed_device 26.0 MiB 0.51 1204 8934 2237 5876 821 64.4 MiB 0.07 0.00 6.0801 -125.534 -6.0801 6.0801 0.89 0.000532263 0.000483173 0.0274194 0.024957 28 3189 27 6.55708e+06 349595 500653. 1732.36 1.65 0.11716 0.103922 21310 115450 -1 2764 21 1452 3938 224981 53984 6.2813 6.2813 -146.197 -6.2813 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0288022 0.0257424 157 150 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_105.v common 6.46 vpr 64.10 MiB -1 -1 0.21 20516 11 0.20 -1 -1 36252 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65636 32 32 235 267 1 176 85 17 17 289 -1 unnamed_device 25.5 MiB 0.26 952 14035 4009 7528 2498 64.1 MiB 0.10 0.00 5.54018 -111.263 -5.54018 5.54018 0.91 0.000522678 0.000470316 0.0423549 0.0382632 36 2625 26 6.55708e+06 253155 612192. 2118.31 2.77 0.178806 0.157179 22750 144809 -1 2131 20 1087 2910 160403 39351 6.10198 6.10198 -130.971 -6.10198 0 0 782063. 2706.10 0.32 0.07 0.14 -1 -1 0.32 0.0261079 0.0233796 145 140 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_106.v common 16.33 vpr 64.80 MiB -1 -1 0.22 20920 13 0.41 -1 -1 36404 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 31 32 294 326 1 226 92 17 17 289 -1 unnamed_device 26.2 MiB 0.59 1439 12719 3244 7088 2387 64.8 MiB 0.11 0.00 6.4387 -131.153 -6.4387 6.4387 0.92 0.000687286 0.000624991 0.0453507 0.0410734 34 4660 48 6.55708e+06 349595 585099. 2024.56 12.03 0.371007 0.327747 22462 138074 -1 3478 21 1812 6041 410407 91825 7.3611 7.3611 -158.691 -7.3611 0 0 742403. 2568.87 0.30 0.13 0.12 -1 -1 0.30 0.0395341 0.0355585 203 201 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_107.v common 7.21 vpr 63.99 MiB -1 -1 0.20 20680 10 0.22 -1 -1 36704 -1 -1 24 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65524 29 32 219 251 1 164 85 17 17 289 -1 unnamed_device 25.4 MiB 0.22 913 14035 5246 6939 1850 64.0 MiB 0.10 0.00 5.09292 -99.2405 -5.09292 5.09292 0.90 0.000528602 0.000475427 0.0410118 0.0370443 34 2404 20 6.55708e+06 289320 585099. 2024.56 3.59 0.18377 0.160299 22462 138074 -1 2075 15 980 2835 152073 37736 5.33332 5.33332 -116.092 -5.33332 0 0 742403. 2568.87 0.32 0.06 0.13 -1 -1 0.32 0.0212317 0.019059 137 130 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_108.v common 6.29 vpr 64.24 MiB -1 -1 0.19 20420 14 0.24 -1 -1 36532 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65780 32 32 239 271 1 186 88 17 17 289 -1 unnamed_device 25.9 MiB 0.61 1158 13153 3647 7119 2387 64.2 MiB 0.10 0.00 6.58503 -138.344 -6.58503 6.58503 0.94 0.000566139 0.000510947 0.040771 0.0370424 28 3476 45 6.55708e+06 289320 500653. 1732.36 2.25 0.147147 0.129736 21310 115450 -1 2763 14 1137 3231 204538 47472 7.18603 7.18603 -165.083 -7.18603 0 0 612192. 2118.31 0.26 0.07 0.11 -1 -1 0.26 0.0232284 0.0209603 146 144 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_109.v common 5.39 vpr 64.48 MiB -1 -1 0.22 20924 13 0.32 -1 -1 36584 -1 -1 30 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 31 32 266 298 1 208 93 17 17 289 -1 unnamed_device 25.9 MiB 0.38 1220 13113 3406 7382 2325 64.5 MiB 0.10 0.00 5.98744 -129.966 -5.98744 5.98744 0.91 0.000549909 0.000496875 0.0408713 0.0368684 30 3420 24 6.55708e+06 361650 526063. 1820.29 1.53 0.137395 0.121776 21886 126133 -1 2679 17 1325 3747 181095 43888 6.34804 6.34804 -148.475 -6.34804 0 0 666494. 2306.21 0.28 0.07 0.11 -1 -1 0.28 0.0265092 0.0237858 180 173 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_110.v common 5.25 vpr 64.17 MiB -1 -1 0.20 20484 12 0.19 -1 -1 36296 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65712 31 32 225 257 1 178 89 17 17 289 -1 unnamed_device 25.6 MiB 0.40 1163 6029 1206 4357 466 64.2 MiB 0.05 0.00 5.32992 -116.93 -5.32992 5.32992 0.93 0.00053387 0.000487856 0.0186723 0.0169543 28 2915 31 6.55708e+06 313430 500653. 1732.36 1.54 0.104102 0.0918272 21310 115450 -1 2507 16 967 2480 149110 34103 5.60952 5.60952 -134.494 -5.60952 0 0 612192. 2118.31 0.28 0.06 0.11 -1 -1 0.28 0.0235686 0.0212053 138 132 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_111.v common 7.07 vpr 64.49 MiB -1 -1 0.23 20736 12 0.25 -1 -1 36780 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66040 32 32 288 320 1 216 90 17 17 289 -1 unnamed_device 26.2 MiB 0.36 1459 10743 2927 6675 1141 64.5 MiB 0.09 0.00 5.87384 -126.375 -5.87384 5.87384 0.93 0.000677481 0.000605397 0.037749 0.0340036 32 3941 50 6.55708e+06 313430 554710. 1919.41 3.10 0.218467 0.190946 22174 131602 -1 3383 24 1629 5368 500610 154602 6.30318 6.30318 -151.615 -6.30318 0 0 701300. 2426.64 0.30 0.15 0.13 -1 -1 0.30 0.0363726 0.0323708 195 193 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_112.v common 6.87 vpr 64.62 MiB -1 -1 0.23 21020 13 0.37 -1 -1 36408 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66168 31 32 282 314 1 222 92 17 17 289 -1 unnamed_device 26.2 MiB 0.57 1296 9614 2415 5873 1326 64.6 MiB 0.09 0.00 6.3205 -129.242 -6.3205 6.3205 0.91 0.000650327 0.00058757 0.0344984 0.0312529 34 3973 43 6.55708e+06 349595 585099. 2024.56 2.66 0.180458 0.158608 22462 138074 -1 3085 17 1414 4327 235656 56179 7.0809 7.0809 -148.998 -7.0809 0 0 742403. 2568.87 0.30 0.08 0.13 -1 -1 0.30 0.029509 0.0264764 193 189 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_113.v common 6.18 vpr 64.28 MiB -1 -1 0.19 20440 11 0.20 -1 -1 36488 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65824 32 32 233 265 1 183 89 17 17 289 -1 unnamed_device 25.9 MiB 0.27 1116 11177 2875 7084 1218 64.3 MiB 0.08 0.00 5.45012 -119.477 -5.45012 5.45012 0.95 0.000539557 0.000486958 0.0323996 0.0293783 28 3098 50 6.55708e+06 301375 500653. 1732.36 2.32 0.145332 0.128473 21310 115450 -1 2688 51 1180 3608 874816 535081 5.69052 5.69052 -139.612 -5.69052 0 0 612192. 2118.31 0.27 0.34 0.11 -1 -1 0.27 0.0571017 0.0501829 148 138 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_114.v common 5.12 vpr 64.23 MiB -1 -1 0.20 20556 13 0.27 -1 -1 36504 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65768 32 32 254 286 1 196 88 17 17 289 -1 unnamed_device 25.7 MiB 0.35 1165 7498 1705 5278 515 64.2 MiB 0.07 0.00 6.30884 -128.988 -6.30884 6.30884 0.88 0.000554165 0.000499976 0.0251904 0.0229136 30 3180 42 6.55708e+06 289320 526063. 1820.29 1.47 0.135334 0.119871 21886 126133 -1 2544 16 1203 3444 159747 40235 6.7229 6.7229 -152.17 -6.7229 0 0 666494. 2306.21 0.28 0.07 0.11 -1 -1 0.28 0.0253066 0.0228737 164 159 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_115.v common 8.91 vpr 64.75 MiB -1 -1 0.21 20592 13 0.32 -1 -1 36560 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 32 32 285 317 1 216 92 17 17 289 -1 unnamed_device 26.3 MiB 0.82 1369 12098 3252 7054 1792 64.8 MiB 0.10 0.00 6.3969 -138.761 -6.3969 6.3969 0.90 0.000652226 0.000590427 0.0421226 0.0380656 34 3997 31 6.55708e+06 337540 585099. 2024.56 4.55 0.273491 0.239561 22462 138074 -1 3109 22 1387 3983 289402 80028 7.1991 7.1991 -164.502 -7.1991 0 0 742403. 2568.87 0.30 0.10 0.11 -1 -1 0.30 0.0343756 0.0307464 193 190 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_116.v common 5.72 vpr 64.31 MiB -1 -1 0.22 20760 11 0.24 -1 -1 36532 -1 -1 27 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65856 29 32 243 275 1 185 88 17 17 289 -1 unnamed_device 25.9 MiB 0.24 1096 12958 3826 6869 2263 64.3 MiB 0.10 0.00 5.22078 -100.831 -5.22078 5.22078 0.93 0.00054846 0.000497186 0.0394362 0.0356952 36 2776 31 6.55708e+06 325485 612192. 2118.31 1.98 0.152785 0.134846 22750 144809 -1 2339 16 1018 3006 166395 38788 5.62318 5.62318 -116.985 -5.62318 0 0 782063. 2706.10 0.32 0.06 0.14 -1 -1 0.32 0.0251038 0.0226326 160 154 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_117.v common 7.77 vpr 65.01 MiB -1 -1 0.25 21284 14 0.42 -1 -1 36704 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 32 32 318 350 1 251 99 17 17 289 -1 unnamed_device 26.3 MiB 0.43 1594 7167 1380 5462 325 65.0 MiB 0.07 0.00 7.1971 -154.531 -7.1971 7.1971 0.93 0.000734123 0.000664018 0.027402 0.0248957 30 4580 33 6.55708e+06 421925 526063. 1820.29 3.59 0.153236 0.135447 21886 126133 -1 3517 17 1720 5336 269606 62842 7.32956 7.32956 -174.936 -7.32956 0 0 666494. 2306.21 0.29 0.10 0.11 -1 -1 0.29 0.0343201 0.0310915 224 223 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_118.v common 7.95 vpr 64.09 MiB -1 -1 0.18 20152 12 0.19 -1 -1 37048 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65628 31 32 222 254 1 184 91 17 17 289 -1 unnamed_device 25.5 MiB 0.34 1173 9271 2248 6318 705 64.1 MiB 0.07 0.00 5.61918 -122.422 -5.61918 5.61918 0.93 0.000511213 0.000467079 0.0262013 0.0238926 36 2677 17 6.55708e+06 337540 612192. 2118.31 4.24 0.179964 0.157139 22750 144809 -1 2356 16 906 2343 129428 30345 5.85958 5.85958 -138.52 -5.85958 0 0 782063. 2706.10 0.33 0.06 0.14 -1 -1 0.33 0.0219681 0.0197765 138 129 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_119.v common 7.05 vpr 64.63 MiB -1 -1 0.23 21132 13 0.35 -1 -1 36396 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 32 32 282 314 1 218 89 17 17 289 -1 unnamed_device 26.0 MiB 0.48 1324 14741 4283 8099 2359 64.6 MiB 0.12 0.00 6.6373 -131.168 -6.6373 6.6373 0.92 0.000672518 0.000604064 0.0485918 0.0436932 30 3834 46 6.55708e+06 301375 526063. 1820.29 2.97 0.17844 0.15772 21886 126133 -1 2834 18 1370 4192 195728 47049 6.7595 6.7595 -150.727 -6.7595 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0317002 0.0285814 189 187 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_120.v common 5.63 vpr 64.05 MiB -1 -1 0.22 20636 13 0.23 -1 -1 36084 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65592 32 32 238 270 1 186 90 17 17 289 -1 unnamed_device 25.7 MiB 0.42 1225 11145 2890 6998 1257 64.1 MiB 0.08 0.00 6.2003 -133.674 -6.2003 6.2003 0.92 0.000546077 0.000492558 0.0332906 0.0301232 28 3169 46 6.55708e+06 313430 500653. 1732.36 1.87 0.142114 0.125469 21310 115450 -1 2626 15 1114 2978 174876 40741 6.5217 6.5217 -155.697 -6.5217 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0231982 0.0209959 151 143 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_121.v common 6.45 vpr 64.59 MiB -1 -1 0.23 20552 12 0.27 -1 -1 36656 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 269 301 1 199 90 17 17 289 -1 unnamed_device 26.1 MiB 0.31 1321 8331 2279 5504 548 64.6 MiB 0.08 0.00 5.99144 -129.522 -5.99144 5.99144 0.95 0.000657534 0.000587476 0.0299881 0.0271478 28 3784 36 6.55708e+06 313430 500653. 1732.36 2.56 0.142494 0.125853 21310 115450 -1 3035 30 1622 5426 436136 117998 6.14118 6.14118 -146.104 -6.14118 0 0 612192. 2118.31 0.26 0.15 0.11 -1 -1 0.26 0.0443057 0.0395197 176 174 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_122.v common 11.44 vpr 65.10 MiB -1 -1 0.25 21468 15 0.63 -1 -1 37100 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 32 32 350 382 1 272 100 17 17 289 -1 unnamed_device 26.9 MiB 0.33 1872 6828 1323 5035 470 65.1 MiB 0.07 0.00 7.1187 -144.806 -7.1187 7.1187 0.90 0.000849897 0.000759187 0.0291873 0.0263507 36 4919 38 6.55708e+06 433980 612192. 2118.31 7.06 0.259598 0.228581 22750 144809 -1 4074 19 2274 7722 434993 96946 7.53076 7.53076 -165.403 -7.53076 0 0 782063. 2706.10 0.33 0.14 0.14 -1 -1 0.33 0.0434015 0.0393893 256 255 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_123.v common 6.13 vpr 63.57 MiB -1 -1 0.17 20500 10 0.12 -1 -1 36364 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65092 30 32 172 204 1 134 80 17 17 289 -1 unnamed_device 25.1 MiB 0.13 707 9196 2491 4714 1991 63.6 MiB 0.06 0.00 4.60046 -100.678 -4.60046 4.60046 0.95 0.000396246 0.000359522 0.0228545 0.0207453 28 2112 18 6.55708e+06 216990 500653. 1732.36 2.84 0.132804 0.115775 21310 115450 -1 1738 18 875 2136 123162 30526 4.72266 4.72266 -117.439 -4.72266 0 0 612192. 2118.31 0.27 0.05 0.10 -1 -1 0.27 0.0178686 0.0159235 90 81 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_124.v common 6.88 vpr 64.38 MiB -1 -1 0.21 20296 13 0.23 -1 -1 35940 -1 -1 25 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 30 32 228 260 1 171 87 17 17 289 -1 unnamed_device 25.8 MiB 0.20 1113 8727 2049 5683 995 64.4 MiB 0.07 0.00 5.93658 -124.205 -5.93658 5.93658 0.93 0.000553987 0.000501405 0.0278669 0.0252933 30 2630 38 6.55708e+06 301375 526063. 1820.29 3.32 0.196285 0.171215 21886 126133 -1 2207 14 918 2610 125370 30237 6.45658 6.45658 -139.784 -6.45658 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0221055 0.0200274 143 137 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_125.v common 5.84 vpr 64.26 MiB -1 -1 0.21 20784 12 0.25 -1 -1 36384 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65800 32 32 264 296 1 204 88 17 17 289 -1 unnamed_device 25.8 MiB 0.34 1277 10033 2500 6526 1007 64.3 MiB 0.09 0.00 5.98744 -129.532 -5.98744 5.98744 0.94 0.000580983 0.000523106 0.034432 0.0312128 28 3294 38 6.55708e+06 289320 500653. 1732.36 2.08 0.155408 0.137941 21310 115450 -1 2855 19 1297 3408 183985 44118 6.22784 6.22784 -150.422 -6.22784 0 0 612192. 2118.31 0.27 0.07 0.10 -1 -1 0.27 0.0279707 0.0249597 171 169 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_126.v common 7.28 vpr 63.59 MiB -1 -1 0.19 20324 9 0.16 -1 -1 36332 -1 -1 22 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65120 25 32 183 215 1 140 79 17 17 289 -1 unnamed_device 25.2 MiB 0.21 872 8360 2111 5229 1020 63.6 MiB 0.06 0.00 4.52146 -85.4086 -4.52146 4.52146 0.94 0.000420434 0.000381005 0.0246301 0.0223264 26 2632 28 6.55708e+06 265210 477104. 1650.88 3.85 0.154929 0.135367 21022 109990 -1 2049 14 820 2247 150399 35731 4.76186 4.76186 -100.49 -4.76186 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0168587 0.0151738 111 102 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_127.v common 8.41 vpr 64.94 MiB -1 -1 0.24 20696 12 0.33 -1 -1 36156 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 300 332 1 233 97 17 17 289 -1 unnamed_device 26.4 MiB 0.38 1505 6535 1419 4335 781 64.9 MiB 0.07 0.00 6.23184 -132.341 -6.23184 6.23184 0.92 0.000690553 0.00060238 0.0249273 0.0225572 44 3402 23 6.55708e+06 397815 742403. 2568.87 4.34 0.264036 0.231583 24478 177802 -1 2838 16 1288 3719 184424 43444 6.6439 6.6439 -150.47 -6.6439 0 0 937218. 3242.97 0.38 0.07 0.17 -1 -1 0.38 0.0288114 0.0260806 212 205 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_128.v common 7.08 vpr 64.79 MiB -1 -1 0.25 21548 13 0.39 -1 -1 36588 -1 -1 30 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 31 32 290 322 1 226 93 17 17 289 -1 unnamed_device 26.4 MiB 0.37 1471 4713 821 3565 327 64.8 MiB 0.05 0.00 6.6791 -139.471 -6.6791 6.6791 0.95 0.000688384 0.000612224 0.0192155 0.0174901 36 3676 24 6.55708e+06 361650 612192. 2118.31 2.96 0.189267 0.166802 22750 144809 -1 3219 17 1422 4455 244371 56018 7.3193 7.3193 -160.431 -7.3193 0 0 782063. 2706.10 0.32 0.09 0.14 -1 -1 0.32 0.0318411 0.0287376 200 197 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_001.v common 4.46 vpr 64.68 MiB -1 -1 0.17 20812 1 0.03 -1 -1 33796 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66236 32 32 354 285 1 202 96 17 17 289 -1 unnamed_device 26.2 MiB 0.27 1200 18711 5518 10873 2320 64.7 MiB 0.15 0.00 4.42712 -134.27 -4.42712 4.42712 0.91 0.000524758 0.00047705 0.0463698 0.0421739 30 2363 21 6.64007e+06 401856 526063. 1820.29 0.99 0.113744 0.100666 22546 126617 -1 2074 19 1171 1872 104132 24106 4.03148 4.03148 -143.212 -4.03148 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0230751 0.0205588 154 47 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_002.v common 4.41 vpr 65.00 MiB -1 -1 0.17 20620 1 0.03 -1 -1 33848 -1 -1 24 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 30 32 363 293 1 194 86 17 17 289 -1 unnamed_device 26.3 MiB 0.23 990 12560 3925 6298 2337 65.0 MiB 0.11 0.00 3.79642 -119.207 -3.79642 3.79642 0.91 0.000541321 0.000494289 0.0363701 0.0331503 32 2328 25 6.64007e+06 301392 554710. 1919.41 0.97 0.105729 0.0931798 22834 132086 -1 2086 22 1755 2609 155918 38088 4.06448 4.06448 -140.007 -4.06448 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0261499 0.0232219 139 58 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_003.v common 4.47 vpr 64.70 MiB -1 -1 0.16 20120 1 0.03 -1 -1 33932 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66252 32 32 299 247 1 188 87 17 17 289 -1 unnamed_device 26.2 MiB 0.25 1042 9879 2813 6425 641 64.7 MiB 0.08 0.00 3.51556 -105.741 -3.51556 3.51556 0.94 0.000457872 0.000416375 0.0255985 0.0233228 26 2737 36 6.64007e+06 288834 477104. 1650.88 1.12 0.105001 0.0926696 21682 110474 -1 2385 22 1371 1908 142211 32923 3.82183 3.82183 -127.011 -3.82183 0 0 585099. 2024.56 0.26 0.06 0.10 -1 -1 0.26 0.0233795 0.0207552 126 26 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_004.v common 4.06 vpr 64.65 MiB -1 -1 0.15 20472 1 0.03 -1 -1 33748 -1 -1 27 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66204 29 32 308 248 1 169 88 17 17 289 -1 unnamed_device 26.3 MiB 0.06 857 9643 2090 7038 515 64.7 MiB 0.08 0.00 3.62076 -98.2027 -3.62076 3.62076 0.90 0.00043624 0.000395332 0.0245947 0.0223306 32 2035 22 6.64007e+06 339066 554710. 1919.41 0.93 0.0821312 0.0718701 22834 132086 -1 1667 21 1365 2505 147655 34817 3.69582 3.69582 -115.082 -3.69582 0 0 701300. 2426.64 0.30 0.06 0.11 -1 -1 0.30 0.0207403 0.01833 126 25 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_005.v common 4.32 vpr 64.63 MiB -1 -1 0.17 20208 1 0.03 -1 -1 33768 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 32 32 336 268 1 174 87 17 17 289 -1 unnamed_device 26.2 MiB 0.07 1030 11607 3106 7421 1080 64.6 MiB 0.11 0.00 3.68447 -108.975 -3.68447 3.68447 0.97 0.000518376 0.000473681 0.0331709 0.0303128 28 2540 24 6.64007e+06 288834 500653. 1732.36 1.06 0.103419 0.0913204 21970 115934 -1 2272 22 1579 3046 187999 43547 3.74663 3.74663 -128.739 -3.74663 0 0 612192. 2118.31 0.26 0.07 0.11 -1 -1 0.26 0.0244576 0.0216447 130 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_006.v common 4.24 vpr 65.00 MiB -1 -1 0.16 20544 1 0.03 -1 -1 33568 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 32 32 366 295 1 189 98 17 17 289 -1 unnamed_device 26.3 MiB 0.11 1007 14048 3875 8350 1823 65.0 MiB 0.12 0.00 2.80439 -99.9308 -2.80439 2.80439 0.94 0.000564116 0.000514694 0.0353441 0.03215 32 2273 21 6.64007e+06 426972 554710. 1919.41 0.93 0.101094 0.0888459 22834 132086 -1 1969 20 1230 1967 127006 29498 2.88697 2.88697 -113.569 -2.88697 0 0 701300. 2426.64 0.29 0.06 0.12 -1 -1 0.29 0.0243209 0.0214969 142 55 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_007.v common 4.03 vpr 64.30 MiB -1 -1 0.15 20200 1 0.03 -1 -1 34076 -1 -1 19 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65840 27 32 259 221 1 130 78 17 17 289 -1 unnamed_device 25.9 MiB 0.09 662 9872 2684 6158 1030 64.3 MiB 0.07 0.00 3.15021 -83.3249 -3.15021 3.15021 0.94 0.000409601 0.00037251 0.0255079 0.0232527 28 1534 18 6.64007e+06 238602 500653. 1732.36 0.87 0.0751525 0.066042 21970 115934 -1 1439 16 751 1307 84098 20786 2.93397 2.93397 -97.2121 -2.93397 0 0 612192. 2118.31 0.28 0.04 0.11 -1 -1 0.28 0.016147 0.0143802 93 26 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_008.v common 4.07 vpr 64.38 MiB -1 -1 0.16 20120 1 0.03 -1 -1 33624 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 31 32 271 219 1 162 94 17 17 289 -1 unnamed_device 25.8 MiB 0.07 926 10318 2286 7425 607 64.4 MiB 0.08 0.00 2.7039 -83.4236 -2.7039 2.7039 0.94 0.00041205 0.000373034 0.0232497 0.0211856 30 2003 21 6.64007e+06 389298 526063. 1820.29 0.89 0.0772927 0.0679213 22546 126617 -1 1797 15 756 1372 77218 17648 2.57857 2.57857 -94.7281 -2.57857 0 0 666494. 2306.21 0.30 0.04 0.12 -1 -1 0.30 0.0157992 0.0140795 115 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_009.v common 4.30 vpr 64.24 MiB -1 -1 0.16 20292 1 0.03 -1 -1 33880 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65784 31 32 317 271 1 167 83 17 17 289 -1 unnamed_device 25.9 MiB 0.21 829 10163 2729 6557 877 64.2 MiB 0.08 0.00 2.88585 -95.7089 -2.88585 2.88585 0.96 0.000460682 0.000420772 0.0282516 0.0258388 32 2052 19 6.64007e+06 251160 554710. 1919.41 0.92 0.0855623 0.0754181 22834 132086 -1 1741 17 1055 1523 99192 24046 2.95417 2.95417 -114.4 -2.95417 0 0 701300. 2426.64 0.30 0.05 0.12 -1 -1 0.30 0.0191082 0.0169947 111 60 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_010.v common 4.28 vpr 64.48 MiB -1 -1 0.14 20148 1 0.03 -1 -1 34028 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66028 32 32 298 248 1 156 81 17 17 289 -1 unnamed_device 25.9 MiB 0.15 843 12681 4107 6589 1985 64.5 MiB 0.10 0.00 3.13721 -105.548 -3.13721 3.13721 0.93 0.000454058 0.000414092 0.0345998 0.0315823 32 2039 20 6.64007e+06 213486 554710. 1919.41 0.94 0.0913421 0.0806072 22834 132086 -1 1761 20 1157 1870 129550 29578 2.88297 2.88297 -116.419 -2.88297 0 0 701300. 2426.64 0.31 0.06 0.12 -1 -1 0.31 0.0207404 0.0184209 112 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_011.v common 4.17 vpr 64.56 MiB -1 -1 0.16 20264 1 0.03 -1 -1 33792 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66108 30 32 303 262 1 139 79 17 17 289 -1 unnamed_device 26.1 MiB 0.13 799 12247 3622 6888 1737 64.6 MiB 0.09 0.00 3.46461 -96.3089 -3.46461 3.46461 0.95 0.000438828 0.000397993 0.034161 0.0310861 32 1630 20 6.64007e+06 213486 554710. 1919.41 0.91 0.0894343 0.0787983 22834 132086 -1 1523 18 835 1333 88304 20554 3.08637 3.08637 -106.104 -3.08637 0 0 701300. 2426.64 0.28 0.05 0.13 -1 -1 0.28 0.0186587 0.016588 98 58 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_012.v common 4.44 vpr 64.46 MiB -1 -1 0.15 20604 1 0.03 -1 -1 33436 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 32 32 276 237 1 166 82 17 17 289 -1 unnamed_device 25.9 MiB 0.26 822 13788 4290 7344 2154 64.5 MiB 0.10 0.00 3.02301 -96.2485 -3.02301 3.02301 0.92 0.000424493 0.000388878 0.0354679 0.0323191 28 2144 22 6.64007e+06 226044 500653. 1732.36 1.08 0.099037 0.088017 21970 115934 -1 1783 20 1137 1549 107524 27817 3.17457 3.17457 -115.82 -3.17457 0 0 612192. 2118.31 0.27 0.05 0.11 -1 -1 0.27 0.0199797 0.0177791 109 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_013.v common 4.51 vpr 64.69 MiB -1 -1 0.17 20624 1 0.03 -1 -1 33996 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 32 32 344 272 1 202 88 17 17 289 -1 unnamed_device 26.1 MiB 0.25 976 11008 2637 7796 575 64.7 MiB 0.11 0.00 3.57727 -114.954 -3.57727 3.57727 0.94 0.000516449 0.000472034 0.0316943 0.0289187 28 2727 24 6.64007e+06 301392 500653. 1732.36 1.10 0.105367 0.0931493 21970 115934 -1 2283 18 1544 2273 150181 36410 3.41003 3.41003 -130.192 -3.41003 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0218796 0.0194564 139 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_014.v common 4.34 vpr 64.61 MiB -1 -1 0.16 20624 1 0.03 -1 -1 33656 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 32 32 363 295 1 181 95 17 17 289 -1 unnamed_device 26.1 MiB 0.14 967 13055 3737 7982 1336 64.6 MiB 0.12 0.00 4.12607 -118.057 -4.12607 4.12607 0.94 0.000546275 0.000495443 0.0342001 0.031122 32 2101 20 6.64007e+06 389298 554710. 1919.41 0.98 0.100737 0.088781 22834 132086 -1 1917 16 1121 1814 116086 26260 3.85063 3.85063 -131.913 -3.85063 0 0 701300. 2426.64 0.31 0.05 0.13 -1 -1 0.31 0.0211724 0.0189251 134 58 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_015.v common 3.85 vpr 64.32 MiB -1 -1 0.13 20404 1 0.03 -1 -1 33712 -1 -1 21 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65864 29 32 248 215 1 137 82 17 17 289 -1 unnamed_device 25.9 MiB 0.09 702 8804 2321 5810 673 64.3 MiB 0.06 0.00 2.68419 -77.7395 -2.68419 2.68419 0.92 0.000363806 0.000333425 0.0191469 0.0173521 28 1678 21 6.64007e+06 263718 500653. 1732.36 0.83 0.0651826 0.0569324 21970 115934 -1 1521 20 882 1468 101805 23563 2.74677 2.74677 -94.5772 -2.74677 0 0 612192. 2118.31 0.26 0.04 0.10 -1 -1 0.26 0.0166926 0.0147262 98 21 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_016.v common 5.03 vpr 64.79 MiB -1 -1 0.16 20644 1 0.03 -1 -1 34052 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 32 32 370 297 1 183 86 17 17 289 -1 unnamed_device 26.2 MiB 0.14 1051 7835 1955 5391 489 64.8 MiB 0.08 0.00 3.1755 -102.949 -3.1755 3.1755 0.97 0.00051423 0.000466984 0.0247333 0.0225963 26 2779 22 6.64007e+06 276276 477104. 1650.88 1.71 0.103157 0.0911675 21682 110474 -1 2329 18 1184 2149 141374 33294 3.41577 3.41577 -126.75 -3.41577 0 0 585099. 2024.56 0.26 0.06 0.10 -1 -1 0.26 0.0232139 0.0206982 133 55 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_017.v common 5.34 vpr 64.80 MiB -1 -1 0.16 20844 1 0.03 -1 -1 33912 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 32 32 338 269 1 196 87 17 17 289 -1 unnamed_device 26.3 MiB 0.25 1191 14103 4303 7979 1821 64.8 MiB 0.12 0.00 3.51127 -116.95 -3.51127 3.51127 0.97 0.000507738 0.000462619 0.0396737 0.0362072 36 2335 19 6.64007e+06 288834 612192. 2118.31 1.76 0.15049 0.132472 23410 145293 -1 2077 20 1248 1797 122609 27247 3.38723 3.38723 -126.769 -3.38723 0 0 782063. 2706.10 0.32 0.06 0.14 -1 -1 0.32 0.0243984 0.0217815 138 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_018.v common 4.11 vpr 64.46 MiB -1 -1 0.15 20196 1 0.03 -1 -1 33252 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 32 32 323 276 1 153 93 17 17 289 -1 unnamed_device 25.9 MiB 0.11 862 14373 3535 9309 1529 64.5 MiB 0.11 0.00 2.30864 -87.9994 -2.30864 2.30864 0.95 0.000505145 0.000459673 0.0345302 0.0313896 28 1961 20 6.64007e+06 364182 500653. 1732.36 0.85 0.0930277 0.0817837 21970 115934 -1 1781 22 1029 1630 108695 24471 2.15051 2.15051 -99.672 -2.15051 0 0 612192. 2118.31 0.27 0.05 0.11 -1 -1 0.27 0.0219985 0.0193637 110 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_019.v common 4.04 vpr 64.18 MiB -1 -1 0.14 20496 1 0.03 -1 -1 33756 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65720 30 32 222 206 1 117 77 17 17 289 -1 unnamed_device 25.7 MiB 0.06 696 12139 3818 6692 1629 64.2 MiB 0.07 0.00 1.89953 -66.1252 -1.89953 1.89953 0.95 0.000361436 0.000325199 0.0283004 0.0258802 32 1407 19 6.64007e+06 188370 554710. 1919.41 0.88 0.0718791 0.0634153 22834 132086 -1 1310 19 715 1024 78926 18595 2.07431 2.07431 -84.2067 -2.07431 0 0 701300. 2426.64 0.30 0.04 0.13 -1 -1 0.30 0.0159237 0.0140924 81 29 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_020.v common 5.28 vpr 64.36 MiB -1 -1 0.15 20252 1 0.03 -1 -1 34016 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65904 31 32 291 243 1 171 83 17 17 289 -1 unnamed_device 26.0 MiB 0.23 732 14483 4620 6823 3040 64.4 MiB 0.10 0.00 3.93687 -115.005 -3.93687 3.93687 0.98 0.000447816 0.000407088 0.0378872 0.0345524 28 2486 46 6.64007e+06 251160 500653. 1732.36 1.84 0.121863 0.107618 21970 115934 -1 1709 21 1252 1822 145800 39862 3.93503 3.93503 -138.184 -3.93503 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0216779 0.0192397 128 30 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_021.v common 4.19 vpr 64.60 MiB -1 -1 0.16 20944 1 0.03 -1 -1 33912 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66148 32 32 342 271 1 179 95 17 17 289 -1 unnamed_device 26.1 MiB 0.06 1026 10031 2477 6283 1271 64.6 MiB 0.09 0.00 3.49156 -112.285 -3.49156 3.49156 0.94 0.000485206 0.0004411 0.0267882 0.024407 32 2289 24 6.64007e+06 389298 554710. 1919.41 0.96 0.0949887 0.0835557 22834 132086 -1 2109 23 1453 2212 168706 37644 3.72563 3.72563 -130.056 -3.72563 0 0 701300. 2426.64 0.30 0.07 0.12 -1 -1 0.30 0.0258115 0.0228232 135 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_022.v common 4.69 vpr 64.96 MiB -1 -1 0.17 20540 1 0.03 -1 -1 34016 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66520 32 32 372 300 1 204 89 17 17 289 -1 unnamed_device 26.3 MiB 0.28 1003 14939 4038 8027 2874 65.0 MiB 0.13 0.00 3.77042 -113.976 -3.77042 3.77042 0.98 0.000535015 0.000488843 0.0432307 0.039426 32 2935 22 6.64007e+06 313950 554710. 1919.41 1.08 0.114943 0.101838 22834 132086 -1 2346 22 1580 2470 211174 46261 3.78029 3.78029 -131.671 -3.78029 0 0 701300. 2426.64 0.30 0.08 0.12 -1 -1 0.30 0.0265736 0.0235307 144 59 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_023.v common 4.16 vpr 63.81 MiB -1 -1 0.15 19980 1 0.03 -1 -1 33968 -1 -1 18 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65344 26 32 190 182 1 110 76 17 17 289 -1 unnamed_device 25.4 MiB 0.15 382 11116 4194 4894 2028 63.8 MiB 0.06 0.00 1.89953 -51.9576 -1.89953 1.89953 0.95 0.000309022 0.000274467 0.0225463 0.0205127 28 1285 33 6.64007e+06 226044 500653. 1732.36 0.98 0.073754 0.0648814 21970 115934 -1 996 18 627 886 67634 17264 1.99111 1.99111 -68.3768 -1.99111 0 0 612192. 2118.31 0.27 0.04 0.11 -1 -1 0.27 0.0130916 0.011596 77 21 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_024.v common 4.39 vpr 64.44 MiB -1 -1 0.16 20516 1 0.03 -1 -1 33800 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65984 32 32 285 227 1 165 85 17 17 289 -1 unnamed_device 26.1 MiB 0.05 891 5479 1091 4207 181 64.4 MiB 0.06 0.00 4.09606 -104.083 -4.09606 4.09606 0.93 0.000440807 0.000400924 0.0155281 0.0142018 28 2361 23 6.64007e+06 263718 500653. 1732.36 1.26 0.0822264 0.072561 21970 115934 -1 1903 20 1047 1887 129241 30402 3.69482 3.69482 -121.689 -3.69482 0 0 612192. 2118.31 0.28 0.06 0.11 -1 -1 0.28 0.0210594 0.0187565 118 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_025.v common 4.01 vpr 63.82 MiB -1 -1 0.14 20248 1 0.03 -1 -1 33500 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65348 32 32 173 169 1 116 78 17 17 289 -1 unnamed_device 25.4 MiB 0.05 445 9872 3098 4487 2287 63.8 MiB 0.05 0.00 2.08773 -60.0534 -2.08773 2.08773 0.95 0.00029495 0.000267522 0.0188884 0.017177 28 1274 35 6.64007e+06 175812 500653. 1732.36 0.93 0.0664363 0.0581943 21970 115934 -1 985 16 510 566 48315 14627 2.17251 2.17251 -72.6657 -2.17251 0 0 612192. 2118.31 0.28 0.03 0.11 -1 -1 0.28 0.0121255 0.0107834 79 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_026.v common 4.23 vpr 64.16 MiB -1 -1 0.15 20332 1 0.03 -1 -1 33976 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65696 32 32 300 245 1 165 94 17 17 289 -1 unnamed_device 25.8 MiB 0.06 945 17347 4996 9879 2472 64.2 MiB 0.13 0.00 3.53527 -103.097 -3.53527 3.53527 0.94 0.000452817 0.000412096 0.0399535 0.0364072 28 2142 20 6.64007e+06 376740 500653. 1732.36 1.01 0.101499 0.089715 21970 115934 -1 1941 19 1099 1807 125821 28580 3.53223 3.53223 -116.055 -3.53223 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0204616 0.0181722 123 21 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_027.v common 3.97 vpr 64.66 MiB -1 -1 0.14 20200 1 0.03 -1 -1 34072 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66208 32 32 297 233 1 177 95 17 17 289 -1 unnamed_device 26.3 MiB 0.05 919 7223 1423 5155 645 64.7 MiB 0.06 0.00 3.0905 -86.6383 -3.0905 3.0905 0.94 0.00042986 0.000390644 0.0169682 0.0154697 28 2086 22 6.64007e+06 389298 500653. 1732.36 0.84 0.0735966 0.064323 21970 115934 -1 1847 20 1017 1797 105514 27277 2.96317 2.96317 -103.765 -2.96317 0 0 612192. 2118.31 0.26 0.05 0.10 -1 -1 0.26 0.0205725 0.0182171 128 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_028.v common 4.31 vpr 64.69 MiB -1 -1 0.16 20900 1 0.03 -1 -1 33948 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 32 32 338 277 1 179 91 17 17 289 -1 unnamed_device 26.2 MiB 0.12 971 16819 5046 9728 2045 64.7 MiB 0.15 0.00 3.69347 -109.301 -3.69347 3.69347 0.91 0.000509483 0.000465778 0.0442872 0.0402638 26 2482 27 6.64007e+06 339066 477104. 1650.88 1.07 0.118834 0.10498 21682 110474 -1 2031 18 1053 1844 108786 27152 3.69963 3.69963 -126.409 -3.69963 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0206485 0.0183577 126 47 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_029.v common 4.13 vpr 64.43 MiB -1 -1 0.15 20352 1 0.03 -1 -1 33732 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 32 32 284 241 1 145 80 17 17 289 -1 unnamed_device 26.0 MiB 0.08 882 10744 2967 6502 1275 64.4 MiB 0.09 0.00 2.42079 -85.7817 -2.42079 2.42079 0.94 0.000443798 0.000405073 0.0294606 0.026891 32 1924 23 6.64007e+06 200928 554710. 1919.41 0.93 0.0874375 0.0770779 22834 132086 -1 1700 19 995 1628 109060 25217 2.58457 2.58457 -102.676 -2.58457 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0195405 0.0173108 101 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_030.v common 4.07 vpr 64.33 MiB -1 -1 0.16 20576 1 0.03 -1 -1 33428 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65876 30 32 262 227 1 135 85 17 17 289 -1 unnamed_device 25.9 MiB 0.08 689 6409 1351 4572 486 64.3 MiB 0.05 0.00 2.64019 -80.0435 -2.64019 2.64019 0.95 0.000395636 0.000358934 0.0159859 0.0145939 30 1444 18 6.64007e+06 288834 526063. 1820.29 0.90 0.0657175 0.0575031 22546 126617 -1 1310 15 588 898 50634 12182 2.56257 2.56257 -92.3011 -2.56257 0 0 666494. 2306.21 0.30 0.03 0.12 -1 -1 0.30 0.0154451 0.0138133 97 29 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_031.v common 4.19 vpr 64.39 MiB -1 -1 0.15 20440 1 0.03 -1 -1 33812 -1 -1 23 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65940 28 32 260 223 1 140 83 17 17 289 -1 unnamed_device 25.9 MiB 0.05 629 15023 5392 7050 2581 64.4 MiB 0.11 0.00 2.8541 -79.3333 -2.8541 2.8541 0.95 0.000418485 0.000374495 0.0358753 0.0325042 32 1660 27 6.64007e+06 288834 554710. 1919.41 0.97 0.0910866 0.0800768 22834 132086 -1 1318 22 1052 1709 113422 28086 2.75397 2.75397 -88.3961 -2.75397 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.019509 0.0171697 98 27 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_032.v common 4.10 vpr 64.26 MiB -1 -1 0.15 20420 1 0.03 -1 -1 33684 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65800 32 32 253 210 1 154 83 17 17 289 -1 unnamed_device 25.8 MiB 0.05 895 5483 1169 3854 460 64.3 MiB 0.05 0.00 3.19341 -98.0221 -3.19341 3.19341 0.97 0.000412832 0.000375546 0.014395 0.0131244 30 1868 15 6.64007e+06 238602 526063. 1820.29 0.91 0.065283 0.0574362 22546 126617 -1 1688 20 1007 1689 98702 22723 2.75257 2.75257 -110.299 -2.75257 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0187484 0.0165727 110 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_033.v common 4.07 vpr 64.29 MiB -1 -1 0.15 20320 1 0.03 -1 -1 33692 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65836 31 32 271 231 1 148 90 17 17 289 -1 unnamed_device 25.7 MiB 0.05 706 8532 1848 6324 360 64.3 MiB 0.07 0.00 2.8301 -84.4669 -2.8301 2.8301 0.94 0.000428451 0.00039017 0.0198057 0.0180274 30 1758 21 6.64007e+06 339066 526063. 1820.29 0.94 0.0743002 0.065153 22546 126617 -1 1444 16 676 1133 55665 13801 2.67557 2.67557 -96.6856 -2.67557 0 0 666494. 2306.21 0.28 0.04 0.12 -1 -1 0.28 0.0166702 0.014884 103 26 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_034.v common 4.15 vpr 64.31 MiB -1 -1 0.15 20428 1 0.03 -1 -1 33408 -1 -1 26 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65856 29 32 291 250 1 153 87 17 17 289 -1 unnamed_device 25.8 MiB 0.13 731 15831 5815 7225 2791 64.3 MiB 0.11 0.00 2.6377 -83.2904 -2.6377 2.6377 0.89 0.00043171 0.00039137 0.0381309 0.0346602 32 1741 21 6.64007e+06 326508 554710. 1919.41 0.91 0.0925877 0.0814414 22834 132086 -1 1437 16 1024 1529 89902 21988 2.36297 2.36297 -88.6699 -2.36297 0 0 701300. 2426.64 0.31 0.04 0.12 -1 -1 0.31 0.0175259 0.0156212 105 48 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_035.v common 4.69 vpr 64.55 MiB -1 -1 0.14 20500 1 0.03 -1 -1 33848 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 32 32 367 282 1 201 102 17 17 289 -1 unnamed_device 26.2 MiB 0.13 1061 9622 2162 6470 990 64.6 MiB 0.09 0.00 3.40636 -98.4167 -3.40636 3.40636 0.92 0.000502656 0.000452036 0.0233855 0.0212282 26 2803 25 6.64007e+06 477204 477104. 1650.88 1.53 0.103401 0.090966 21682 110474 -1 2279 19 1316 2396 160690 35426 3.70163 3.70163 -122.436 -3.70163 0 0 585099. 2024.56 0.25 0.06 0.09 -1 -1 0.25 0.0225748 0.0199728 151 26 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_036.v common 4.34 vpr 64.98 MiB -1 -1 0.16 20612 1 0.04 -1 -1 33672 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 391 311 1 192 101 17 17 289 -1 unnamed_device 26.3 MiB 0.14 1081 12791 3347 8418 1026 65.0 MiB 0.11 0.00 3.01701 -105.389 -3.01701 3.01701 0.96 0.000546244 0.000495966 0.0326986 0.0296928 26 2277 35 6.64007e+06 464646 477104. 1650.88 1.01 0.117979 0.103523 21682 110474 -1 1984 22 1507 2430 150796 35089 2.82477 2.82477 -117.13 -2.82477 0 0 585099. 2024.56 0.26 0.07 0.10 -1 -1 0.26 0.0274371 0.024406 147 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_037.v common 4.32 vpr 64.36 MiB -1 -1 0.14 20368 1 0.03 -1 -1 34048 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65904 31 32 279 237 1 161 82 17 17 289 -1 unnamed_device 25.8 MiB 0.23 916 10406 2538 6139 1729 64.4 MiB 0.08 0.00 3.48127 -103.954 -3.48127 3.48127 0.95 0.00042834 0.000390273 0.0273099 0.0249658 32 2055 18 6.64007e+06 238602 554710. 1919.41 0.94 0.0800924 0.0706814 22834 132086 -1 1849 20 1212 1772 135602 30447 3.22583 3.22583 -114.783 -3.22583 0 0 701300. 2426.64 0.29 0.05 0.12 -1 -1 0.29 0.0194449 0.0172357 112 30 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_038.v common 4.60 vpr 64.86 MiB -1 -1 0.16 20452 1 0.03 -1 -1 33900 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 31 32 370 297 1 186 88 17 17 289 -1 unnamed_device 26.2 MiB 0.13 997 11788 2979 6980 1829 64.9 MiB 0.10 0.00 3.41261 -107.545 -3.41261 3.41261 0.94 0.000522996 0.000477194 0.0340764 0.0310419 26 2647 34 6.64007e+06 313950 477104. 1650.88 1.32 0.12032 0.106147 21682 110474 -1 2146 19 1396 2470 170180 39447 3.01017 3.01017 -115.213 -3.01017 0 0 585099. 2024.56 0.25 0.07 0.10 -1 -1 0.25 0.0236164 0.0209857 138 57 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_039.v common 4.66 vpr 64.51 MiB -1 -1 0.17 20624 1 0.03 -1 -1 33764 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66060 31 32 377 302 1 233 92 17 17 289 -1 unnamed_device 26.3 MiB 0.40 1394 12098 3192 7301 1605 64.5 MiB 0.12 0.00 4.79918 -144.463 -4.79918 4.79918 0.95 0.000555482 0.000508291 0.0341144 0.0311775 28 3376 19 6.64007e+06 364182 500653. 1732.36 1.05 0.111106 0.0986504 21970 115934 -1 2835 21 1990 2853 199087 44185 5.06955 5.06955 -174.236 -5.06955 0 0 612192. 2118.31 0.27 0.08 0.10 -1 -1 0.27 0.0272501 0.0242606 172 60 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_040.v common 4.71 vpr 64.71 MiB -1 -1 0.16 20452 1 0.03 -1 -1 33552 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 31 32 383 305 1 209 90 17 17 289 -1 unnamed_device 26.3 MiB 0.37 975 16773 5551 8324 2898 64.7 MiB 0.15 0.00 4.11401 -119.791 -4.11401 4.11401 0.95 0.000547328 0.000500186 0.047761 0.0435352 32 2738 28 6.64007e+06 339066 554710. 1919.41 1.09 0.129332 0.11451 22834 132086 -1 2179 22 1787 2688 186992 44479 4.70968 4.70968 -149.457 -4.70968 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0265444 0.02357 164 60 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_041.v common 4.54 vpr 64.53 MiB -1 -1 0.17 20708 1 0.03 -1 -1 33732 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 31 32 352 285 1 184 94 17 17 289 -1 unnamed_device 26.0 MiB 0.14 988 10531 2804 6903 824 64.5 MiB 0.10 0.00 3.70647 -107.491 -3.70647 3.70647 0.94 0.000529319 0.000480818 0.0277704 0.0253187 26 2651 23 6.64007e+06 389298 477104. 1650.88 1.26 0.105114 0.0928279 21682 110474 -1 2234 23 1419 2405 156873 36774 3.46002 3.46002 -124.227 -3.46002 0 0 585099. 2024.56 0.25 0.07 0.10 -1 -1 0.25 0.0252888 0.0223151 135 51 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_042.v common 4.41 vpr 64.58 MiB -1 -1 0.15 20352 1 0.03 -1 -1 34020 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 32 32 291 242 1 179 87 17 17 289 -1 unnamed_device 26.2 MiB 0.22 993 15447 5333 7306 2808 64.6 MiB 0.12 0.00 3.46356 -96.491 -3.46356 3.46356 0.93 0.000454093 0.000413045 0.0386478 0.0351828 28 2392 18 6.64007e+06 288834 500653. 1732.36 1.03 0.0980556 0.0868311 21970 115934 -1 2108 22 1225 1945 143056 32591 3.95322 3.95322 -118.682 -3.95322 0 0 612192. 2118.31 0.26 0.07 0.11 -1 -1 0.26 0.0224309 0.0198927 119 24 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_043.v common 4.47 vpr 65.09 MiB -1 -1 0.18 20940 1 0.03 -1 -1 34136 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 32 32 457 356 1 223 104 17 17 289 -1 unnamed_device 26.7 MiB 0.19 1203 14500 4049 9162 1289 65.1 MiB 0.13 0.00 4.04253 -130.907 -4.04253 4.04253 0.94 0.000626718 0.000569777 0.0403256 0.0366368 32 2767 19 6.64007e+06 502320 554710. 1919.41 0.97 0.118874 0.104854 22834 132086 -1 2472 22 1724 2699 165419 39381 4.03949 4.03949 -149.029 -4.03949 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0306689 0.0271955 174 84 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_044.v common 4.09 vpr 64.23 MiB -1 -1 0.14 20268 1 0.03 -1 -1 34064 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65776 31 32 261 225 1 142 84 17 17 289 -1 unnamed_device 25.8 MiB 0.08 848 8685 2093 5796 796 64.2 MiB 0.07 0.00 3.1015 -86.7938 -3.1015 3.1015 0.93 0.000412549 0.000375331 0.0212912 0.0194479 30 1771 20 6.64007e+06 263718 526063. 1820.29 0.92 0.072391 0.0635229 22546 126617 -1 1590 17 677 1179 67650 16124 2.75757 2.75757 -100.169 -2.75757 0 0 666494. 2306.21 0.29 0.04 0.12 -1 -1 0.29 0.0164883 0.0146677 101 24 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_045.v common 5.33 vpr 65.00 MiB -1 -1 0.15 20588 1 0.03 -1 -1 33784 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 31 32 337 267 1 205 88 17 17 289 -1 unnamed_device 26.3 MiB 0.25 1110 9058 2024 6495 539 65.0 MiB 0.09 0.00 4.12053 -125.48 -4.12053 4.12053 0.95 0.000544788 0.000496502 0.0264421 0.0239466 26 3316 35 6.64007e+06 313950 477104. 1650.88 1.97 0.109097 0.0957298 21682 110474 -1 2401 17 1444 2047 136506 32228 4.95008 4.95008 -151.835 -4.95008 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0202306 0.0180289 144 30 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_046.v common 4.65 vpr 64.90 MiB -1 -1 0.16 20708 1 0.03 -1 -1 33584 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 32 32 349 284 1 183 97 17 17 289 -1 unnamed_device 26.4 MiB 0.13 1044 9643 2272 6962 409 64.9 MiB 0.09 0.00 3.1757 -97.2977 -3.1757 3.1757 0.93 0.00048425 0.000439449 0.0244786 0.0222571 28 2747 32 6.64007e+06 414414 500653. 1732.36 1.25 0.105411 0.0927828 21970 115934 -1 2217 22 1357 2569 174049 40866 2.95297 2.95297 -115.033 -2.95297 0 0 612192. 2118.31 0.28 0.07 0.11 -1 -1 0.28 0.025153 0.0222804 131 50 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_047.v common 4.26 vpr 64.43 MiB -1 -1 0.15 20180 1 0.03 -1 -1 33664 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65972 32 32 291 230 1 168 88 17 17 289 -1 unnamed_device 26.1 MiB 0.05 868 12568 4215 5967 2386 64.4 MiB 0.11 0.00 3.36216 -101.805 -3.36216 3.36216 0.93 0.000464478 0.000405814 0.0312792 0.0284961 30 2238 25 6.64007e+06 301392 526063. 1820.29 0.99 0.0950677 0.0838201 22546 126617 -1 1781 22 1230 2418 123469 29498 3.71263 3.71263 -120.333 -3.71263 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0222522 0.0196803 123 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_048.v common 4.71 vpr 64.76 MiB -1 -1 0.13 20572 1 0.03 -1 -1 33908 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 32 32 353 287 1 198 88 17 17 289 -1 unnamed_device 26.2 MiB 0.28 1104 15493 4624 8426 2443 64.8 MiB 0.12 0.00 3.67818 -114.268 -3.67818 3.67818 0.90 0.000500558 0.000452938 0.0405491 0.036769 26 2902 23 6.64007e+06 301392 477104. 1650.88 1.41 0.11579 0.102548 21682 110474 -1 2293 18 1073 1532 126208 28440 3.36923 3.36923 -124.055 -3.36923 0 0 585099. 2024.56 0.25 0.05 0.09 -1 -1 0.25 0.0212933 0.0189762 138 52 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_049.v common 4.59 vpr 64.92 MiB -1 -1 0.17 20516 1 0.03 -1 -1 33968 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 32 32 361 291 1 185 96 17 17 289 -1 unnamed_device 26.4 MiB 0.14 1015 18492 6680 9224 2588 64.9 MiB 0.15 0.00 2.9151 -98.0492 -2.9151 2.9151 0.95 0.000522227 0.000475185 0.0466249 0.042396 28 2748 28 6.64007e+06 401856 500653. 1732.36 1.28 0.128289 0.113595 21970 115934 -1 2186 19 1240 2237 161172 36196 2.89597 2.89597 -116.06 -2.89597 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0228796 0.0203081 133 52 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_050.v common 4.27 vpr 64.88 MiB -1 -1 0.16 20416 1 0.03 -1 -1 33856 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 382 305 1 192 101 17 17 289 -1 unnamed_device 26.3 MiB 0.14 1097 16316 4466 9393 2457 64.9 MiB 0.13 0.00 3.82667 -120.249 -3.82667 3.82667 0.91 0.000555628 0.000504253 0.0382509 0.0345956 32 2359 20 6.64007e+06 464646 554710. 1919.41 0.93 0.105601 0.092798 22834 132086 -1 2109 16 1122 1642 111103 25419 3.42303 3.42303 -131.929 -3.42303 0 0 701300. 2426.64 0.30 0.05 0.12 -1 -1 0.30 0.0219857 0.019701 145 59 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_051.v common 4.14 vpr 64.56 MiB -1 -1 0.15 20232 1 0.03 -1 -1 33640 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66112 32 32 306 248 1 166 93 17 17 289 -1 unnamed_device 26.1 MiB 0.06 850 14583 4378 8839 1366 64.6 MiB 0.12 0.00 3.38416 -99.6745 -3.38416 3.38416 0.88 0.000456123 0.000413675 0.0348323 0.0316886 32 2076 21 6.64007e+06 364182 554710. 1919.41 0.92 0.0935093 0.0823134 22834 132086 -1 1756 23 1282 2101 134730 32053 3.57842 3.57842 -115.625 -3.57842 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0241339 0.0213762 122 21 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_052.v common 4.28 vpr 64.81 MiB -1 -1 0.14 20236 1 0.03 -1 -1 33776 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 319 257 1 198 88 17 17 289 -1 unnamed_device 26.2 MiB 0.21 1165 14128 4153 7796 2179 64.8 MiB 0.12 0.00 4.07126 -117.916 -4.07126 4.07126 0.94 0.000451251 0.000411674 0.0365639 0.0334077 32 2572 22 6.64007e+06 301392 554710. 1919.41 0.94 0.0988122 0.0874425 22834 132086 -1 2338 19 1419 2056 155374 34681 4.18542 4.18542 -140.04 -4.18542 0 0 701300. 2426.64 0.29 0.06 0.12 -1 -1 0.29 0.0218298 0.0194426 133 26 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_053.v common 6.74 vpr 64.98 MiB -1 -1 0.17 20908 1 0.03 -1 -1 33860 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 31 32 373 299 1 202 88 17 17 289 -1 unnamed_device 26.3 MiB 0.29 1048 15688 5236 7551 2901 65.0 MiB 0.14 0.00 4.03253 -118.529 -4.03253 4.03253 0.92 0.000525256 0.000478657 0.0451559 0.0411788 30 2699 24 6.64007e+06 313950 526063. 1820.29 3.23 0.1994 0.17421 22546 126617 -1 2201 20 1428 2402 151903 34994 4.24989 4.24989 -135.295 -4.24989 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0234521 0.0207312 148 58 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_054.v common 5.49 vpr 64.60 MiB -1 -1 0.17 20736 1 0.03 -1 -1 33804 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 32 32 387 315 1 189 86 17 17 289 -1 unnamed_device 26.1 MiB 0.16 984 13883 4650 6915 2318 64.6 MiB 0.09 0.00 3.49656 -107.233 -3.49656 3.49656 0.90 0.000557585 0.000512099 0.0298748 0.0271745 28 3431 38 6.64007e+06 276276 500653. 1732.36 2.19 0.125674 0.110426 21970 115934 -1 2508 20 1506 2729 257454 62164 3.75182 3.75182 -135.793 -3.75182 0 0 612192. 2118.31 0.28 0.09 0.11 -1 -1 0.28 0.0263532 0.023264 136 74 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_055.v common 4.03 vpr 64.12 MiB -1 -1 0.15 20236 1 0.03 -1 -1 33732 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65656 32 32 251 219 1 140 88 17 17 289 -1 unnamed_device 25.7 MiB 0.05 729 15298 4392 9026 1880 64.1 MiB 0.11 0.00 2.7119 -83.0677 -2.7119 2.7119 0.95 0.000381733 0.000346332 0.0334844 0.0305294 30 1545 18 6.64007e+06 301392 526063. 1820.29 0.86 0.0828504 0.0732466 22546 126617 -1 1389 17 560 887 45983 11225 2.49037 2.49037 -89.9128 -2.49037 0 0 666494. 2306.21 0.30 0.03 0.12 -1 -1 0.30 0.0161708 0.0144059 97 20 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_056.v common 4.74 vpr 64.75 MiB -1 -1 0.16 20468 1 0.03 -1 -1 33828 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 32 32 341 285 1 187 86 17 17 289 -1 unnamed_device 26.3 MiB 0.25 985 9914 2672 6604 638 64.8 MiB 0.09 0.00 3.21396 -114.637 -3.21396 3.21396 0.93 0.000491966 0.000448092 0.027989 0.0255183 26 2814 24 6.64007e+06 276276 477104. 1650.88 1.29 0.102495 0.0903787 21682 110474 -1 2315 19 1529 2157 170237 37997 3.35877 3.35877 -135.145 -3.35877 0 0 585099. 2024.56 0.26 0.07 0.10 -1 -1 0.26 0.02193 0.0194044 127 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_057.v common 4.69 vpr 64.89 MiB -1 -1 0.17 20424 1 0.03 -1 -1 33872 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 387 293 1 234 93 17 17 289 -1 unnamed_device 26.6 MiB 0.25 1448 16263 4802 9323 2138 64.9 MiB 0.16 0.00 4.36321 -135.43 -4.36321 4.36321 0.95 0.000576409 0.000523846 0.0466547 0.0424935 32 3475 22 6.64007e+06 364182 554710. 1919.41 1.05 0.122514 0.108431 22834 132086 -1 2887 21 2056 3256 248178 53747 4.82288 4.82288 -158.033 -4.82288 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0275396 0.0245222 169 28 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_058.v common 4.24 vpr 64.39 MiB -1 -1 0.15 20192 1 0.03 -1 -1 33744 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 32 32 340 270 1 181 96 17 17 289 -1 unnamed_device 26.0 MiB 0.12 1034 10827 2607 7018 1202 64.4 MiB 0.10 0.00 3.67472 -113.027 -3.67472 3.67472 0.95 0.000497185 0.000451743 0.0277002 0.0252838 32 2063 19 6.64007e+06 401856 554710. 1919.41 0.95 0.0906717 0.0799952 22834 132086 -1 1880 18 1059 1648 100795 23472 3.06437 3.06437 -117.014 -3.06437 0 0 701300. 2426.64 0.29 0.05 0.12 -1 -1 0.29 0.021685 0.0192842 133 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_059.v common 4.20 vpr 64.30 MiB -1 -1 0.14 20268 1 0.03 -1 -1 33932 -1 -1 26 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65844 30 32 278 235 1 148 88 17 17 289 -1 unnamed_device 25.8 MiB 0.05 767 13153 3910 7980 1263 64.3 MiB 0.10 0.00 2.7859 -86.9546 -2.7859 2.7859 0.94 0.000435415 0.00039649 0.0312895 0.0285409 26 1980 21 6.64007e+06 326508 477104. 1650.88 1.05 0.0922599 0.0816958 21682 110474 -1 1739 20 1060 1667 118023 27388 2.73257 2.73257 -103.972 -2.73257 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0197291 0.0174806 104 29 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_060.v common 4.48 vpr 64.68 MiB -1 -1 0.17 21028 1 0.03 -1 -1 33860 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66236 32 32 431 332 1 235 91 17 17 289 -1 unnamed_device 26.4 MiB 0.32 1385 13963 4000 8588 1375 64.7 MiB 0.14 0.00 5.03129 -150.861 -5.03129 5.03129 0.91 0.000644883 0.000584623 0.042388 0.0384638 32 2867 24 6.64007e+06 339066 554710. 1919.41 0.96 0.118445 0.104364 22834 132086 -1 2460 22 1770 2550 156453 37983 5.12974 5.12974 -172.888 -5.12974 0 0 701300. 2426.64 0.29 0.07 0.11 -1 -1 0.29 0.0289724 0.0256433 170 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_061.v common 4.26 vpr 64.39 MiB -1 -1 0.16 20300 1 0.03 -1 -1 33800 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65936 32 32 336 268 1 174 97 17 17 289 -1 unnamed_device 25.9 MiB 0.14 938 8533 1741 6439 353 64.4 MiB 0.08 0.00 3.69147 -114.707 -3.69147 3.69147 0.92 0.000506625 0.000463884 0.021805 0.0199149 32 2294 22 6.64007e+06 414414 554710. 1919.41 0.98 0.0868042 0.0762416 22834 132086 -1 1978 22 1373 2107 151194 34342 3.84103 3.84103 -129.777 -3.84103 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0239521 0.021145 130 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_062.v common 6.61 vpr 64.02 MiB -1 -1 0.14 20264 1 0.03 -1 -1 33524 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65556 32 32 231 199 1 140 87 17 17 289 -1 unnamed_device 25.6 MiB 0.07 756 11991 4313 6225 1453 64.0 MiB 0.09 0.00 2.8441 -82.1212 -2.8441 2.8441 0.95 0.000393739 0.000359094 0.0260087 0.0237538 26 2189 42 6.64007e+06 288834 477104. 1650.88 3.50 0.147109 0.128075 21682 110474 -1 1867 21 1024 1678 141008 32016 3.12737 3.12737 -106.295 -3.12737 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0177505 0.0156695 100 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_063.v common 4.20 vpr 65.05 MiB -1 -1 0.17 20600 1 0.03 -1 -1 33740 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 349 273 1 191 98 17 17 289 -1 unnamed_device 26.4 MiB 0.10 993 13373 3403 9060 910 65.0 MiB 0.12 0.00 4.67452 -111.4 -4.67452 4.67452 0.91 0.000522566 0.00047437 0.0330296 0.0300644 32 2441 23 6.64007e+06 426972 554710. 1919.41 0.94 0.0988706 0.0869648 22834 132086 -1 2063 20 1317 2419 154920 36193 4.53928 4.53928 -133.218 -4.53928 0 0 701300. 2426.64 0.29 0.06 0.12 -1 -1 0.29 0.0229979 0.0203359 139 26 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_064.v common 3.97 vpr 64.44 MiB -1 -1 0.13 20392 1 0.03 -1 -1 33812 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65988 32 32 247 207 1 147 84 17 17 289 -1 unnamed_device 26.0 MiB 0.05 834 13992 4642 7291 2059 64.4 MiB 0.10 0.00 2.8171 -91.1457 -2.8171 2.8171 0.90 0.000335511 0.000304559 0.0312406 0.0283418 32 1921 19 6.64007e+06 251160 554710. 1919.41 0.90 0.0806062 0.0710541 22834 132086 -1 1771 22 1186 2046 145584 32746 3.00117 3.00117 -110.407 -3.00117 0 0 701300. 2426.64 0.29 0.06 0.12 -1 -1 0.29 0.0192519 0.0170073 104 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_065.v common 4.11 vpr 64.46 MiB -1 -1 0.16 20224 1 0.03 -1 -1 33460 -1 -1 33 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 30 32 278 235 1 147 95 17 17 289 -1 unnamed_device 25.9 MiB 0.09 858 15215 4246 9186 1783 64.5 MiB 0.11 0.00 3.22421 -90.1146 -3.22421 3.22421 0.95 0.000439312 0.000401731 0.0324044 0.0295577 28 1799 20 6.64007e+06 414414 500653. 1732.36 0.89 0.0868533 0.0765496 21970 115934 -1 1661 17 719 1261 74312 17388 2.62817 2.62817 -101.354 -2.62817 0 0 612192. 2118.31 0.27 0.04 0.11 -1 -1 0.27 0.0166479 0.0147888 105 29 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_066.v common 4.75 vpr 64.65 MiB -1 -1 0.17 20540 1 0.03 -1 -1 33916 -1 -1 26 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 29 32 355 287 1 198 87 17 17 289 -1 unnamed_device 26.1 MiB 0.30 1098 11799 3472 7108 1219 64.6 MiB 0.11 0.00 3.67395 -109.891 -3.67395 3.67395 0.94 0.000504676 0.000460278 0.0337567 0.0308169 26 2965 27 6.64007e+06 326508 477104. 1650.88 1.28 0.112413 0.0992188 21682 110474 -1 2368 21 1600 2432 173155 39458 3.63562 3.63562 -128.421 -3.63562 0 0 585099. 2024.56 0.25 0.07 0.10 -1 -1 0.25 0.0251069 0.0222516 139 56 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_067.v common 4.29 vpr 64.70 MiB -1 -1 0.16 20492 1 0.03 -1 -1 33920 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66248 32 32 358 289 1 175 88 17 17 289 -1 unnamed_device 26.3 MiB 0.12 917 8083 1747 5852 484 64.7 MiB 0.08 0.00 3.64276 -112.872 -3.64276 3.64276 0.96 0.000521207 0.000474995 0.0240128 0.0219629 32 2091 21 6.64007e+06 301392 554710. 1919.41 0.96 0.0894012 0.0785446 22834 132086 -1 1892 22 1556 2403 155849 36838 3.74782 3.74782 -130.415 -3.74782 0 0 701300. 2426.64 0.29 0.07 0.12 -1 -1 0.29 0.0255491 0.0226312 130 51 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_068.v common 4.70 vpr 64.87 MiB -1 -1 0.17 20868 1 0.03 -1 -1 34048 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 32 32 353 285 1 181 92 17 17 289 -1 unnamed_device 26.4 MiB 0.12 1015 14582 3560 9437 1585 64.9 MiB 0.14 0.00 3.99107 -121.69 -3.99107 3.99107 0.94 0.00053939 0.000489629 0.0391188 0.0356594 26 2734 26 6.64007e+06 351624 477104. 1650.88 1.39 0.119862 0.106022 21682 110474 -1 2243 20 1435 2441 181049 40203 3.85283 3.85283 -139.163 -3.85283 0 0 585099. 2024.56 0.27 0.07 0.10 -1 -1 0.27 0.0247301 0.0220127 133 48 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_069.v common 4.32 vpr 64.42 MiB -1 -1 0.14 20512 1 0.03 -1 -1 33736 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65964 32 32 276 237 1 159 81 17 17 289 -1 unnamed_device 25.9 MiB 0.26 1003 13381 4221 6932 2228 64.4 MiB 0.10 0.00 3.67818 -110.331 -3.67818 3.67818 0.93 0.000434158 0.000396164 0.0346014 0.0315596 32 2087 18 6.64007e+06 213486 554710. 1919.41 0.92 0.0869991 0.0770007 22834 132086 -1 1858 17 812 1066 72851 17000 3.37823 3.37823 -120.137 -3.37823 0 0 701300. 2426.64 0.31 0.04 0.13 -1 -1 0.31 0.017887 0.0159606 105 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_070.v common 4.32 vpr 64.50 MiB -1 -1 0.15 20276 1 0.03 -1 -1 33848 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 31 32 319 272 1 168 82 17 17 289 -1 unnamed_device 26.1 MiB 0.22 739 8626 1841 6026 759 64.5 MiB 0.07 0.00 3.12596 -96.872 -3.12596 3.12596 0.94 0.000494507 0.000453217 0.0246853 0.0225132 32 2072 19 6.64007e+06 238602 554710. 1919.41 0.97 0.0843757 0.0740738 22834 132086 -1 1618 20 1149 1727 108460 26754 3.25437 3.25437 -118.509 -3.25437 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0212979 0.0188908 113 60 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_071.v common 4.21 vpr 64.73 MiB -1 -1 0.14 20684 1 0.03 -1 -1 33948 -1 -1 33 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 30 32 329 273 1 166 95 17 17 289 -1 unnamed_device 26.3 MiB 0.11 911 9383 2139 6426 818 64.7 MiB 0.08 0.00 2.8221 -83.2193 -2.8221 2.8221 0.92 0.00048731 0.000446545 0.0217348 0.0197468 26 2190 24 6.64007e+06 414414 477104. 1650.88 1.10 0.089456 0.0785352 21682 110474 -1 1968 19 1047 1836 121328 28832 3.12537 3.12537 -104.706 -3.12537 0 0 585099. 2024.56 0.25 0.05 0.09 -1 -1 0.25 0.0205513 0.0181746 123 52 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_072.v common 5.26 vpr 64.57 MiB -1 -1 0.16 20540 1 0.03 -1 -1 33616 -1 -1 35 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 28 32 277 229 1 155 95 17 17 289 -1 unnamed_device 26.0 MiB 0.09 929 10247 2547 6712 988 64.6 MiB 0.08 0.00 3.51555 -88.3652 -3.51555 3.51555 0.93 0.000412353 0.000375515 0.0219296 0.0199814 22 2667 41 6.64007e+06 439530 420624. 1455.45 2.13 0.117396 0.102421 20818 92861 -1 2101 23 1262 2448 183259 39211 3.79982 3.79982 -112.787 -3.79982 0 0 500653. 1732.36 0.22 0.07 0.09 -1 -1 0.22 0.0216673 0.0190495 115 20 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_073.v common 4.40 vpr 64.30 MiB -1 -1 0.16 20268 1 0.03 -1 -1 33524 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65844 30 32 317 269 1 152 80 17 17 289 -1 unnamed_device 25.8 MiB 0.14 630 13152 4366 5924 2862 64.3 MiB 0.10 0.00 3.29461 -91.6276 -3.29461 3.29461 0.94 0.000478273 0.000432678 0.037499 0.0339659 32 1968 34 6.64007e+06 226044 554710. 1919.41 1.09 0.111234 0.0972197 22834 132086 -1 1591 20 1273 2169 148041 36356 3.09117 3.09117 -109.623 -3.09117 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.021054 0.0186081 108 58 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_074.v common 4.36 vpr 64.79 MiB -1 -1 0.15 20200 1 0.03 -1 -1 33516 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 32 32 335 282 1 184 85 17 17 289 -1 unnamed_device 26.3 MiB 0.24 1023 9385 2482 6091 812 64.8 MiB 0.08 0.00 3.14796 -106.886 -3.14796 3.14796 0.95 0.000472809 0.00042961 0.0261089 0.0237711 30 2207 18 6.64007e+06 263718 526063. 1820.29 0.97 0.0866133 0.0760161 22546 126617 -1 1844 17 1064 1516 87977 20525 3.03263 3.03263 -119.645 -3.03263 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0197323 0.0175435 121 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_075.v common 4.22 vpr 64.55 MiB -1 -1 0.16 20248 1 0.03 -1 -1 33692 -1 -1 32 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 31 32 293 230 1 175 95 17 17 289 -1 unnamed_device 26.1 MiB 0.05 1045 12191 3364 7726 1101 64.5 MiB 0.10 0.00 3.68447 -107.387 -3.68447 3.68447 0.95 0.000461541 0.000420562 0.0276066 0.025148 32 2314 23 6.64007e+06 401856 554710. 1919.41 0.95 0.0879886 0.0773677 22834 132086 -1 2040 19 1090 1931 121657 28243 3.81983 3.81983 -124.487 -3.81983 0 0 701300. 2426.64 0.30 0.05 0.12 -1 -1 0.30 0.0200911 0.0178477 127 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_076.v common 4.35 vpr 64.94 MiB -1 -1 0.15 20656 1 0.03 -1 -1 34024 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 350 275 1 209 88 17 17 289 -1 unnamed_device 26.2 MiB 0.27 1051 8083 1886 5144 1053 64.9 MiB 0.09 0.00 4.34793 -133.107 -4.34793 4.34793 0.88 0.000507105 0.00046373 0.0236609 0.0216466 32 2930 26 6.64007e+06 301392 554710. 1919.41 0.99 0.0916332 0.0807353 22834 132086 -1 2374 20 1488 2226 147028 34923 4.45708 4.45708 -149.869 -4.45708 0 0 701300. 2426.64 0.28 0.06 0.13 -1 -1 0.28 0.0242935 0.0215975 146 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_077.v common 4.51 vpr 64.68 MiB -1 -1 0.15 20552 1 0.03 -1 -1 33944 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 32 32 385 308 1 185 98 17 17 289 -1 unnamed_device 26.1 MiB 0.18 921 11123 2939 7368 816 64.7 MiB 0.10 0.00 4.17072 -114.904 -4.17072 4.17072 0.90 0.000506343 0.000462537 0.0289176 0.0264517 28 2601 24 6.64007e+06 426972 500653. 1732.36 1.29 0.113055 0.100507 21970 115934 -1 2087 17 1069 1860 114441 28969 3.91528 3.91528 -136.144 -3.91528 0 0 612192. 2118.31 0.26 0.06 0.10 -1 -1 0.26 0.0221192 0.0197548 144 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_078.v common 4.37 vpr 64.90 MiB -1 -1 0.17 20540 1 0.03 -1 -1 33892 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 387 309 1 190 101 17 17 289 -1 unnamed_device 26.3 MiB 0.13 1136 16081 4424 9548 2109 64.9 MiB 0.14 0.00 3.73647 -122.312 -3.73647 3.73647 0.96 0.000556928 0.000505498 0.0406239 0.0369691 30 2614 19 6.64007e+06 464646 526063. 1820.29 0.98 0.110682 0.0977358 22546 126617 -1 2163 19 1209 2160 109414 26358 3.58523 3.58523 -134.191 -3.58523 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0244194 0.0217883 140 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_079.v common 4.22 vpr 64.22 MiB -1 -1 0.16 20296 1 0.03 -1 -1 33588 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65764 30 32 272 232 1 147 81 17 17 289 -1 unnamed_device 25.8 MiB 0.10 797 11806 4058 5679 2069 64.2 MiB 0.09 0.00 3.00301 -90.9444 -3.00301 3.00301 0.96 0.000422145 0.000385014 0.0307688 0.0280371 32 1703 19 6.64007e+06 238602 554710. 1919.41 0.93 0.0834973 0.0736997 22834 132086 -1 1571 21 1067 1906 128544 29683 2.89197 2.89197 -99.3264 -2.89197 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0200092 0.0176843 104 29 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_080.v common 4.29 vpr 64.93 MiB -1 -1 0.18 20572 1 0.03 -1 -1 33964 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 30 32 375 299 1 187 85 17 17 289 -1 unnamed_device 26.4 MiB 0.15 1022 13477 3982 7289 2206 64.9 MiB 0.12 0.00 3.92987 -116.279 -3.92987 3.92987 0.92 0.000525308 0.000477682 0.0409063 0.0372572 28 2406 24 6.64007e+06 288834 500653. 1732.36 0.96 0.113454 0.100255 21970 115934 -1 2115 23 1599 2611 183131 40647 3.85963 3.85963 -135.626 -3.85963 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0277967 0.0245205 138 58 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_081.v common 4.88 vpr 64.79 MiB -1 -1 0.17 20632 1 0.03 -1 -1 33732 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 32 32 340 270 1 200 90 17 17 289 -1 unnamed_device 26.2 MiB 0.25 1214 16170 4598 9399 2173 64.8 MiB 0.14 0.00 4.18044 -127.637 -4.18044 4.18044 0.95 0.000510173 0.000465069 0.0433891 0.0395492 28 2786 24 6.64007e+06 326508 500653. 1732.36 1.39 0.118827 0.105252 21970 115934 -1 2329 20 1665 2768 197018 43313 4.06449 4.06449 -143.647 -4.06449 0 0 612192. 2118.31 0.28 0.07 0.11 -1 -1 0.28 0.0237939 0.0211636 140 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_082.v common 4.48 vpr 64.85 MiB -1 -1 0.17 20740 1 0.03 -1 -1 33916 -1 -1 30 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 31 32 340 275 1 195 93 17 17 289 -1 unnamed_device 26.3 MiB 0.28 1101 17523 5760 9336 2427 64.8 MiB 0.14 0.00 4.22421 -124.896 -4.22421 4.22421 0.93 0.000493096 0.000449749 0.0441803 0.0402564 32 2546 23 6.64007e+06 376740 554710. 1919.41 0.97 0.110766 0.0978969 22834 132086 -1 2226 20 1388 2035 147695 32663 4.38728 4.38728 -141.853 -4.38728 0 0 701300. 2426.64 0.29 0.06 0.11 -1 -1 0.29 0.0234042 0.0207851 148 43 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_083.v common 4.24 vpr 64.49 MiB -1 -1 0.16 20504 1 0.03 -1 -1 33928 -1 -1 33 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66036 30 32 377 310 1 177 95 17 17 289 -1 unnamed_device 25.9 MiB 0.21 1021 16511 4409 9765 2337 64.5 MiB 0.13 0.00 3.53327 -109.699 -3.53327 3.53327 0.90 0.000465976 0.00042093 0.0404861 0.0366876 32 2233 21 6.64007e+06 414414 554710. 1919.41 0.92 0.103409 0.0908185 22834 132086 -1 2011 19 1082 1765 108131 25453 3.16963 3.16963 -120.227 -3.16963 0 0 701300. 2426.64 0.29 0.05 0.12 -1 -1 0.29 0.022168 0.0195988 135 78 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_084.v common 4.40 vpr 64.71 MiB -1 -1 0.17 20584 1 0.03 -1 -1 33972 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 32 32 365 294 1 185 85 17 17 289 -1 unnamed_device 26.2 MiB 0.12 988 16453 5540 8537 2376 64.7 MiB 0.15 0.00 3.97286 -114.775 -3.97286 3.97286 0.94 0.000498789 0.000452847 0.0489273 0.044595 32 2553 20 6.64007e+06 263718 554710. 1919.41 1.02 0.117611 0.104167 22834 132086 -1 2197 21 1515 2675 178177 41761 3.76462 3.76462 -129.825 -3.76462 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0252037 0.022233 134 54 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_085.v common 4.28 vpr 64.90 MiB -1 -1 0.17 20612 1 0.03 -1 -1 33956 -1 -1 31 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 29 32 378 310 1 177 92 17 17 289 -1 unnamed_device 26.3 MiB 0.17 986 12926 3233 8004 1689 64.9 MiB 0.11 0.00 4.15226 -117.476 -4.15226 4.15226 0.91 0.000535186 0.000485136 0.0354388 0.0322269 30 2251 20 6.64007e+06 389298 526063. 1820.29 0.95 0.102934 0.0907415 22546 126617 -1 1927 16 927 1531 91197 20690 3.53923 3.53923 -123.039 -3.53923 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.020891 0.0186968 132 79 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_086.v common 4.05 vpr 64.34 MiB -1 -1 0.15 20364 1 0.03 -1 -1 33980 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65888 32 32 243 205 1 139 79 17 17 289 -1 unnamed_device 26.0 MiB 0.04 806 12923 4373 6606 1944 64.3 MiB 0.09 0.00 3.02901 -96.2276 -3.02901 3.02901 0.94 0.000389192 0.000348921 0.0319288 0.029098 26 1969 20 6.64007e+06 188370 477104. 1650.88 0.95 0.0864711 0.0765427 21682 110474 -1 1736 19 972 1459 129922 28908 2.93797 2.93797 -111.437 -2.93797 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0175087 0.0154996 96 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_087.v common 4.39 vpr 64.55 MiB -1 -1 0.16 20500 1 0.03 -1 -1 33928 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66100 32 32 373 302 1 176 96 17 17 289 -1 unnamed_device 26.1 MiB 0.22 927 16083 3992 9701 2390 64.6 MiB 0.13 0.00 3.69947 -113.313 -3.69947 3.69947 0.94 0.000546418 0.000496332 0.0416079 0.0378603 30 1943 19 6.64007e+06 401856 526063. 1820.29 0.95 0.108857 0.0961644 22546 126617 -1 1662 21 1118 1893 84033 21774 3.63163 3.63163 -126.674 -3.63163 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0247923 0.0220268 132 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_088.v common 4.73 vpr 64.77 MiB -1 -1 0.17 20684 1 0.03 -1 -1 33960 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 32 32 397 314 1 196 86 17 17 289 -1 unnamed_device 26.2 MiB 0.16 1038 7646 1661 5658 327 64.8 MiB 0.08 0.00 3.95187 -123.513 -3.95187 3.95187 0.92 0.000578932 0.000525275 0.0255413 0.0232122 26 2838 22 6.64007e+06 276276 477104. 1650.88 1.42 0.105687 0.0929542 21682 110474 -1 2322 22 1891 3161 222196 50864 3.91582 3.91582 -144.09 -3.91582 0 0 585099. 2024.56 0.27 0.08 0.10 -1 -1 0.27 0.0281049 0.0248962 148 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_089.v common 4.21 vpr 64.38 MiB -1 -1 0.15 20264 1 0.03 -1 -1 33832 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 32 32 269 231 1 170 84 17 17 289 -1 unnamed_device 25.8 MiB 0.24 832 8319 2000 5848 471 64.4 MiB 0.07 0.00 3.43261 -99.0262 -3.43261 3.43261 0.90 0.000407136 0.000372733 0.0209187 0.0191083 26 2328 19 6.64007e+06 251160 477104. 1650.88 1.02 0.07595 0.0669007 21682 110474 -1 1843 21 1066 1410 105645 24215 3.10363 3.10363 -113.971 -3.10363 0 0 585099. 2024.56 0.24 0.05 0.10 -1 -1 0.24 0.0192946 0.0169891 109 26 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_090.v common 4.02 vpr 64.15 MiB -1 -1 0.14 20344 1 0.03 -1 -1 33940 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65688 31 32 245 205 1 150 84 17 17 289 -1 unnamed_device 25.7 MiB 0.05 708 6672 1420 4967 285 64.1 MiB 0.06 0.00 3.02901 -87.4156 -3.02901 3.02901 0.94 0.000401075 0.000366314 0.0163366 0.0149803 30 1746 24 6.64007e+06 263718 526063. 1820.29 0.91 0.0685194 0.0600736 22546 126617 -1 1435 18 948 1595 87485 20862 2.80477 2.80477 -98.823 -2.80477 0 0 666494. 2306.21 0.29 0.04 0.12 -1 -1 0.29 0.0167031 0.0147597 106 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_091.v common 4.63 vpr 64.99 MiB -1 -1 0.15 20784 1 0.03 -1 -1 33892 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 32 32 348 274 1 211 90 17 17 289 -1 unnamed_device 26.2 MiB 0.23 939 8733 1902 6428 403 65.0 MiB 0.08 0.00 4.06553 -126.825 -4.06553 4.06553 0.90 0.000513214 0.00046938 0.0241152 0.0220669 28 2851 28 6.64007e+06 326508 500653. 1732.36 1.36 0.106171 0.0940707 21970 115934 -1 2274 21 1730 2302 181123 43563 4.30309 4.30309 -150.935 -4.30309 0 0 612192. 2118.31 0.27 0.07 0.10 -1 -1 0.27 0.0244833 0.0217725 144 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_092.v common 4.43 vpr 64.85 MiB -1 -1 0.16 20760 1 0.03 -1 -1 33912 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 356 289 1 202 93 17 17 289 -1 unnamed_device 26.2 MiB 0.22 1068 15423 4268 8888 2267 64.9 MiB 0.13 0.00 4.05281 -122.297 -4.05281 4.05281 0.94 0.000512813 0.000472067 0.0412203 0.0376085 32 2502 25 6.64007e+06 364182 554710. 1919.41 0.98 0.110627 0.0977328 22834 132086 -1 2251 18 1473 2252 143270 33995 4.33109 4.33109 -144.02 -4.33109 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0222111 0.0197937 155 53 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_093.v common 4.68 vpr 65.04 MiB -1 -1 0.16 20640 1 0.03 -1 -1 33768 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66604 32 32 349 260 1 204 100 17 17 289 -1 unnamed_device 26.5 MiB 0.08 1187 19124 5509 11212 2403 65.0 MiB 0.16 0.00 4.49732 -123.909 -4.49732 4.49732 0.93 0.000524048 0.000470508 0.04597 0.0418406 26 3053 26 6.64007e+06 452088 477104. 1650.88 1.37 0.128869 0.114576 21682 110474 -1 2612 19 1474 2750 211797 46129 4.78088 4.78088 -150.953 -4.78088 0 0 585099. 2024.56 0.26 0.07 0.11 -1 -1 0.26 0.0238205 0.0211983 153 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_094.v common 4.22 vpr 64.61 MiB -1 -1 0.17 20292 1 0.03 -1 -1 33848 -1 -1 32 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66164 30 32 316 264 1 162 94 17 17 289 -1 unnamed_device 26.3 MiB 0.13 794 9466 2086 6910 470 64.6 MiB 0.08 0.00 2.8471 -85.0982 -2.8471 2.8471 0.94 0.000482359 0.000436998 0.0232042 0.0211076 32 1890 20 6.64007e+06 401856 554710. 1919.41 0.94 0.0816135 0.071518 22834 132086 -1 1700 18 1180 2054 140247 33477 2.93917 2.93917 -102.027 -2.93917 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0198486 0.0175807 121 47 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_095.v common 4.01 vpr 64.36 MiB -1 -1 0.15 20484 1 0.03 -1 -1 33920 -1 -1 21 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65908 27 32 255 219 1 132 80 17 17 289 -1 unnamed_device 26.0 MiB 0.05 674 11776 4790 5774 1212 64.4 MiB 0.08 0.00 2.8251 -80.1721 -2.8251 2.8251 0.94 0.000391898 0.000357387 0.0286321 0.0261299 30 1427 20 6.64007e+06 263718 526063. 1820.29 0.89 0.0776547 0.0683993 22546 126617 -1 1278 17 686 1020 59031 13742 2.77497 2.77497 -92.8344 -2.77497 0 0 666494. 2306.21 0.28 0.04 0.12 -1 -1 0.28 0.0161 0.0143017 97 26 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_096.v common 4.47 vpr 65.06 MiB -1 -1 0.16 20492 1 0.03 -1 -1 33652 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 32 32 421 327 1 232 90 17 17 289 -1 unnamed_device 26.7 MiB 0.23 1359 16974 5069 10032 1873 65.1 MiB 0.16 0.00 3.53756 -116.72 -3.53756 3.53756 0.89 0.000542981 0.000491448 0.0504875 0.0457043 32 3660 23 6.64007e+06 326508 554710. 1919.41 1.05 0.131053 0.115892 22834 132086 -1 3035 23 2208 3702 281206 60198 4.03123 4.03123 -141.398 -4.03123 0 0 701300. 2426.64 0.29 0.09 0.11 -1 -1 0.29 0.0297366 0.026301 170 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_097.v common 4.56 vpr 64.98 MiB -1 -1 0.15 20600 1 0.03 -1 -1 33976 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 31 32 365 296 1 193 86 17 17 289 -1 unnamed_device 26.2 MiB 0.31 951 15206 4197 8608 2401 65.0 MiB 0.13 0.00 4.33341 -126.789 -4.33341 4.33341 0.94 0.000510912 0.000467075 0.0453836 0.0413596 32 2397 19 6.64007e+06 288834 554710. 1919.41 1.01 0.113088 0.100233 22834 132086 -1 1970 20 1361 2299 142685 35836 4.41229 4.41229 -145.198 -4.41229 0 0 701300. 2426.64 0.29 0.06 0.12 -1 -1 0.29 0.0244899 0.0217388 152 60 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_098.v common 4.45 vpr 64.54 MiB -1 -1 0.16 20744 1 0.03 -1 -1 33988 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66092 32 32 331 280 1 174 83 17 17 289 -1 unnamed_device 26.2 MiB 0.30 926 14483 5297 7170 2016 64.5 MiB 0.11 0.00 3.74495 -109.736 -3.74495 3.74495 0.92 0.000479829 0.000436666 0.0407552 0.0370684 32 2201 25 6.64007e+06 238602 554710. 1919.41 0.96 0.105995 0.0934927 22834 132086 -1 1861 18 1209 1761 134527 30349 3.60863 3.60863 -130.242 -3.60863 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0211179 0.0188317 128 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_099.v common 4.24 vpr 64.59 MiB -1 -1 0.16 20316 1 0.03 -1 -1 33880 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 326 263 1 176 94 17 17 289 -1 unnamed_device 26.2 MiB 0.06 1036 14365 4152 8683 1530 64.6 MiB 0.12 0.00 4.23518 -110.63 -4.23518 4.23518 0.94 0.000486163 0.000444499 0.0346607 0.0315455 32 2279 23 6.64007e+06 376740 554710. 1919.41 0.94 0.0990804 0.087291 22834 132086 -1 1967 22 1250 2039 135547 31812 3.69163 3.69163 -123.184 -3.69163 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0240845 0.0212923 126 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_100.v common 4.36 vpr 64.69 MiB -1 -1 0.17 20556 1 0.03 -1 -1 33384 -1 -1 34 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66240 31 32 373 294 1 196 97 17 17 289 -1 unnamed_device 26.2 MiB 0.14 1087 9643 2281 6657 705 64.7 MiB 0.10 0.00 4.20246 -118.632 -4.20246 4.20246 0.95 0.000545696 0.000495272 0.0261259 0.0238572 32 2318 21 6.64007e+06 426972 554710. 1919.41 0.95 0.0940724 0.0827293 22834 132086 -1 2114 18 1497 2473 160924 37402 3.62142 3.62142 -126.679 -3.62142 0 0 701300. 2426.64 0.31 0.06 0.12 -1 -1 0.31 0.023503 0.0208693 145 46 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_101.v common 4.26 vpr 64.54 MiB -1 -1 0.17 20264 1 0.03 -1 -1 34032 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 30 32 325 268 1 171 93 17 17 289 -1 unnamed_device 26.1 MiB 0.13 1009 8493 2078 5528 887 64.5 MiB 0.08 0.00 2.8933 -91.5477 -2.8933 2.8933 0.96 0.00047952 0.000436096 0.0219824 0.0200934 32 2234 21 6.64007e+06 389298 554710. 1919.41 0.95 0.0828285 0.0727219 22834 132086 -1 1920 17 1027 1794 115359 26727 2.87297 2.87297 -103.937 -2.87297 0 0 701300. 2426.64 0.28 0.05 0.12 -1 -1 0.28 0.0194434 0.0173473 124 46 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_102.v common 4.56 vpr 65.08 MiB -1 -1 0.16 20556 1 0.03 -1 -1 33628 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 350 275 1 214 89 17 17 289 -1 unnamed_device 26.6 MiB 0.28 1119 10781 2979 7147 655 65.1 MiB 0.10 0.00 4.13153 -129.919 -4.13153 4.13153 0.96 0.000514477 0.000469121 0.0305527 0.0278025 32 2706 23 6.64007e+06 313950 554710. 1919.41 1.00 0.0987509 0.0870087 22834 132086 -1 2273 19 1861 2789 166184 40299 3.98829 3.98829 -144.542 -3.98829 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0243561 0.0217875 148 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_103.v common 4.25 vpr 64.66 MiB -1 -1 0.17 20684 1 0.03 -1 -1 33644 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66208 32 32 386 307 1 195 100 17 17 289 -1 unnamed_device 26.1 MiB 0.15 1104 11700 2860 7980 860 64.7 MiB 0.11 0.00 3.87621 -121.227 -3.87621 3.87621 0.93 0.000576991 0.00052486 0.0304677 0.0276921 28 2487 20 6.64007e+06 452088 500653. 1732.36 0.92 0.0997756 0.0874845 21970 115934 -1 2147 20 1056 1758 109021 25582 3.53977 3.53977 -130.685 -3.53977 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0255423 0.022726 144 59 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_104.v common 3.91 vpr 64.39 MiB -1 -1 0.14 20212 1 0.03 -1 -1 33820 -1 -1 17 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 29 32 269 229 1 129 78 17 17 289 -1 unnamed_device 25.9 MiB 0.07 649 8544 2271 5215 1058 64.4 MiB 0.06 0.00 2.88681 -85.3419 -2.88681 2.88681 0.90 0.00040867 0.0003737 0.0223803 0.020455 32 1394 18 6.64007e+06 213486 554710. 1919.41 0.86 0.0709669 0.0624741 22834 132086 -1 1253 21 831 1206 77536 20313 2.84617 2.84617 -95.4283 -2.84617 0 0 701300. 2426.64 0.30 0.05 0.12 -1 -1 0.30 0.0198571 0.0173413 91 28 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_105.v common 4.18 vpr 64.60 MiB -1 -1 0.15 20648 1 0.03 -1 -1 33656 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 32 32 310 266 1 175 85 17 17 289 -1 unnamed_device 26.2 MiB 0.20 906 14407 4955 7380 2072 64.6 MiB 0.10 0.00 3.19816 -104.679 -3.19816 3.19816 0.91 0.000377594 0.000343427 0.0356255 0.0323493 32 2003 25 6.64007e+06 263718 554710. 1919.41 0.90 0.0891703 0.0784636 22834 132086 -1 1812 19 1390 1845 136228 31162 3.38223 3.38223 -123.94 -3.38223 0 0 701300. 2426.64 0.28 0.05 0.13 -1 -1 0.28 0.0191572 0.0170127 117 55 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_106.v common 4.36 vpr 64.38 MiB -1 -1 0.16 20532 1 0.03 -1 -1 33784 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65924 31 32 326 261 1 177 100 17 17 289 -1 unnamed_device 25.9 MiB 0.07 1074 10772 2559 6550 1663 64.4 MiB 0.09 0.00 3.82167 -106.687 -3.82167 3.82167 0.93 0.00047786 0.000436767 0.0252038 0.0230129 26 2543 22 6.64007e+06 464646 477104. 1650.88 1.15 0.095813 0.0847094 21682 110474 -1 2192 20 1457 2525 173779 38989 3.94703 3.94703 -130.551 -3.94703 0 0 585099. 2024.56 0.26 0.06 0.10 -1 -1 0.26 0.02196 0.0194091 129 29 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_107.v common 4.21 vpr 64.31 MiB -1 -1 0.15 20100 1 0.03 -1 -1 33868 -1 -1 22 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65856 29 32 262 224 1 168 83 17 17 289 -1 unnamed_device 25.8 MiB 0.26 863 8903 2450 5951 502 64.3 MiB 0.07 0.00 3.36661 -94.4008 -3.36661 3.36661 0.93 0.000422555 0.000386137 0.022391 0.0204565 26 2186 26 6.64007e+06 276276 477104. 1650.88 0.91 0.0809795 0.071017 21682 110474 -1 1870 19 1142 1477 98944 23738 3.32403 3.32403 -111.122 -3.32403 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0181348 0.0160919 109 25 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_108.v common 4.18 vpr 64.41 MiB -1 -1 0.14 20676 1 0.03 -1 -1 34008 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65952 32 32 278 238 1 149 81 17 17 289 -1 unnamed_device 25.9 MiB 0.14 780 12156 4109 5877 2170 64.4 MiB 0.09 0.00 3.14521 -97.6445 -3.14521 3.14521 0.94 0.000436705 0.00039693 0.0320065 0.0291305 30 1871 21 6.64007e+06 213486 526063. 1820.29 0.92 0.086778 0.0764246 22546 126617 -1 1526 21 1030 1705 94036 22210 2.68457 2.68457 -102.443 -2.68457 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0198803 0.0175421 108 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_109.v common 4.14 vpr 64.91 MiB -1 -1 0.16 20940 1 0.03 -1 -1 33916 -1 -1 36 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 31 32 373 300 1 181 99 17 17 289 -1 unnamed_device 26.3 MiB 0.13 996 14691 3901 8364 2426 64.9 MiB 0.11 0.00 3.26641 -99.9164 -3.26641 3.26641 0.91 0.000489342 0.000442814 0.0350554 0.0317478 30 2036 20 6.64007e+06 452088 526063. 1820.29 0.92 0.100646 0.0883024 22546 126617 -1 1818 19 1102 1810 100063 22915 2.96337 2.96337 -110.282 -2.96337 0 0 666494. 2306.21 0.29 0.05 0.11 -1 -1 0.29 0.0231508 0.0204581 136 60 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_110.v common 4.66 vpr 64.42 MiB -1 -1 0.15 20300 1 0.03 -1 -1 33640 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65968 31 32 265 230 1 162 83 17 17 289 -1 unnamed_device 25.9 MiB 0.21 982 12683 3621 7257 1805 64.4 MiB 0.09 0.00 3.15716 -100.932 -3.15716 3.15716 0.93 0.000421012 0.000382732 0.0315461 0.0287811 26 2409 38 6.64007e+06 251160 477104. 1650.88 1.38 0.105447 0.0930228 21682 110474 -1 2037 16 1033 1479 128978 28149 3.07163 3.07163 -114.128 -3.07163 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0167836 0.0149867 107 30 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_111.v common 4.21 vpr 64.45 MiB -1 -1 0.16 20476 1 0.03 -1 -1 33524 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66000 32 32 349 286 1 171 96 17 17 289 -1 unnamed_device 26.0 MiB 0.13 1075 16302 4705 9136 2461 64.5 MiB 0.13 0.00 3.01201 -100.358 -3.01201 3.01201 0.94 0.000498386 0.000452576 0.039752 0.0362025 28 2377 21 6.64007e+06 401856 500653. 1732.36 0.93 0.105316 0.0930148 21970 115934 -1 2095 22 1203 2004 129735 29346 2.79997 2.79997 -112.06 -2.79997 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0249498 0.0221348 127 54 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_112.v common 4.47 vpr 64.85 MiB -1 -1 0.16 20568 1 0.03 -1 -1 33948 -1 -1 32 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 31 32 396 325 1 183 95 17 17 289 -1 unnamed_device 26.4 MiB 0.28 913 16727 5100 9076 2551 64.9 MiB 0.14 0.00 3.50555 -110.684 -3.50555 3.50555 0.94 0.000573578 0.000521796 0.0457943 0.0416669 32 2126 21 6.64007e+06 401856 554710. 1919.41 0.94 0.115125 0.101522 22834 132086 -1 1821 18 1174 1713 109682 26171 3.19083 3.19083 -124.221 -3.19083 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0243479 0.021731 138 87 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_113.v common 4.22 vpr 64.43 MiB -1 -1 0.15 20404 1 0.03 -1 -1 33968 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 32 32 303 262 1 150 81 17 17 289 -1 unnamed_device 25.9 MiB 0.18 888 13381 3986 7743 1652 64.4 MiB 0.10 0.00 2.6639 -87.2845 -2.6639 2.6639 0.93 0.000443039 0.000403749 0.0362434 0.0327885 28 1944 19 6.64007e+06 213486 500653. 1732.36 0.93 0.0922144 0.0811775 21970 115934 -1 1801 22 966 1555 120817 27049 2.78577 2.78577 -105.27 -2.78577 0 0 612192. 2118.31 0.27 0.04 0.11 -1 -1 0.27 0.0174866 0.0155419 104 54 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_114.v common 4.25 vpr 64.66 MiB -1 -1 0.14 20264 1 0.03 -1 -1 33788 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66208 32 32 290 244 1 175 85 17 17 289 -1 unnamed_device 26.3 MiB 0.22 846 13291 3660 8053 1578 64.7 MiB 0.10 0.00 3.55527 -109.103 -3.55527 3.55527 0.91 0.000443481 0.000403392 0.033578 0.0306007 32 2247 19 6.64007e+06 263718 554710. 1919.41 0.94 0.0886153 0.0780852 22834 132086 -1 1876 19 1337 1984 140078 32977 3.14763 3.14763 -118.7 -3.14763 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0195836 0.0173792 117 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_115.v common 4.23 vpr 64.65 MiB -1 -1 0.15 20456 1 0.03 -1 -1 33868 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66204 32 32 318 257 1 194 87 17 17 289 -1 unnamed_device 26.1 MiB 0.20 1051 13911 3659 8243 2009 64.7 MiB 0.11 0.00 3.86215 -116.454 -3.86215 3.86215 0.94 0.000459497 0.000420384 0.0372946 0.0340072 28 2530 21 6.64007e+06 288834 500653. 1732.36 0.93 0.10131 0.0896302 21970 115934 -1 2203 23 1486 2051 135255 32228 3.90203 3.90203 -135.165 -3.90203 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0243505 0.0215231 130 27 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_116.v common 4.27 vpr 64.43 MiB -1 -1 0.16 20656 1 0.03 -1 -1 33768 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 29 32 324 268 1 168 90 17 17 289 -1 unnamed_device 26.0 MiB 0.18 859 15768 4529 8713 2526 64.4 MiB 0.13 0.00 3.68447 -96.6025 -3.68447 3.68447 0.94 0.000473785 0.000433542 0.0397998 0.0363194 26 2162 19 6.64007e+06 364182 477104. 1650.88 0.97 0.10322 0.0914219 21682 110474 -1 1905 18 892 1449 93432 22466 3.55022 3.55022 -113.116 -3.55022 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0202794 0.0180055 122 49 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_117.v common 4.49 vpr 64.88 MiB -1 -1 0.15 20464 1 0.03 -1 -1 33764 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 393 312 1 213 88 17 17 289 -1 unnamed_device 26.3 MiB 0.30 1157 9838 2543 6218 1077 64.9 MiB 0.10 0.00 4.33064 -141.129 -4.33064 4.33064 0.94 0.000556424 0.000504345 0.031223 0.0284527 32 2570 23 6.64007e+06 301392 554710. 1919.41 1.00 0.104699 0.0921975 22834 132086 -1 2304 22 1759 2560 175611 41828 4.09849 4.09849 -152.239 -4.09849 0 0 701300. 2426.64 0.29 0.07 0.12 -1 -1 0.29 0.0266466 0.0237105 154 62 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_118.v common 3.96 vpr 64.13 MiB -1 -1 0.14 20076 1 0.03 -1 -1 33412 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65668 31 32 229 197 1 138 81 17 17 289 -1 unnamed_device 25.8 MiB 0.04 706 6906 1534 4834 538 64.1 MiB 0.05 0.00 2.9133 -81.7891 -2.9133 2.9133 0.94 0.000383901 0.000350213 0.0168301 0.0153526 28 1672 18 6.64007e+06 226044 500653. 1732.36 0.85 0.0635507 0.0557477 21970 115934 -1 1535 21 718 1168 75546 17883 2.82396 2.82396 -94.3225 -2.82396 0 0 612192. 2118.31 0.26 0.04 0.11 -1 -1 0.26 0.0176137 0.0155676 96 -1 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_119.v common 4.50 vpr 64.99 MiB -1 -1 0.16 20512 1 0.03 -1 -1 33928 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 32 32 412 334 1 190 98 17 17 289 -1 unnamed_device 26.4 MiB 0.15 1105 16748 4968 9398 2382 65.0 MiB 0.14 0.00 3.56376 -119.795 -3.56376 3.56376 0.98 0.000571268 0.000518825 0.0449704 0.0408648 32 2545 21 6.64007e+06 426972 554710. 1919.41 1.02 0.119241 0.105211 22834 132086 -1 2199 22 1705 2531 190564 42792 3.74783 3.74783 -138.38 -3.74783 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0269783 0.0238399 145 87 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_120.v common 4.37 vpr 64.53 MiB -1 -1 0.17 20548 1 0.03 -1 -1 33528 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66076 32 32 376 318 1 155 81 17 17 289 -1 unnamed_device 26.2 MiB 0.25 824 9706 2362 5671 1673 64.5 MiB 0.09 0.00 2.8021 -101.477 -2.8021 2.8021 0.93 0.000533314 0.000483668 0.0315629 0.0287959 32 1768 17 6.64007e+06 213486 554710. 1919.41 0.95 0.0946222 0.0833028 22834 132086 -1 1618 21 1351 2031 133556 30224 2.85677 2.85677 -120.021 -2.85677 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0248141 0.0219546 114 93 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_121.v common 4.30 vpr 64.74 MiB -1 -1 0.15 20700 1 0.03 -1 -1 33716 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 32 32 360 293 1 179 96 17 17 289 -1 unnamed_device 26.2 MiB 0.13 1004 14550 3983 8870 1697 64.7 MiB 0.13 0.00 3.45707 -108.459 -3.45707 3.45707 0.94 0.000517969 0.000470878 0.0371967 0.0339467 32 2217 21 6.64007e+06 401856 554710. 1919.41 0.93 0.102843 0.0906547 22834 132086 -1 1811 16 866 1303 77073 18411 3.09343 3.09343 -111.369 -3.09343 0 0 701300. 2426.64 0.31 0.05 0.13 -1 -1 0.31 0.0211327 0.0188976 131 57 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_122.v common 4.57 vpr 64.77 MiB -1 -1 0.14 20608 1 0.03 -1 -1 33804 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 32 32 396 299 1 236 91 17 17 289 -1 unnamed_device 26.5 MiB 0.31 1295 17839 6169 8853 2817 64.8 MiB 0.16 0.00 5.15449 -155.274 -5.15449 5.15449 0.91 0.000511908 0.000461835 0.0504611 0.0458219 32 3235 26 6.64007e+06 339066 554710. 1919.41 1.04 0.130715 0.115535 22834 132086 -1 2704 21 1968 2788 222083 49560 5.14774 5.14774 -171.414 -5.14774 0 0 701300. 2426.64 0.29 0.08 0.11 -1 -1 0.29 0.027133 0.0240735 170 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_123.v common 4.16 vpr 64.23 MiB -1 -1 0.15 20204 1 0.03 -1 -1 33524 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65772 30 32 224 207 1 137 80 17 17 289 -1 unnamed_device 25.8 MiB 0.17 602 9368 2178 6608 582 64.2 MiB 0.06 0.00 2.5747 -78.1428 -2.5747 2.5747 0.95 0.000362368 0.000330507 0.0212551 0.0193939 28 1556 21 6.64007e+06 226044 500653. 1732.36 0.95 0.0700966 0.0615969 21970 115934 -1 1282 17 751 943 69499 17017 2.40817 2.40817 -89.7622 -2.40817 0 0 612192. 2118.31 0.26 0.04 0.11 -1 -1 0.26 0.014669 0.013018 87 29 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_124.v common 4.08 vpr 64.10 MiB -1 -1 0.15 20276 1 0.03 -1 -1 33996 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65640 30 32 286 239 1 134 78 17 17 289 -1 unnamed_device 25.6 MiB 0.11 610 7382 1813 5031 538 64.1 MiB 0.06 0.00 3.52781 -96.4169 -3.52781 3.52781 0.95 0.000455708 0.000414516 0.0209338 0.0190872 28 1663 19 6.64007e+06 200928 500653. 1732.36 0.91 0.077006 0.0674382 21970 115934 -1 1384 18 728 1074 69622 17765 3.29237 3.29237 -107.775 -3.29237 0 0 612192. 2118.31 0.26 0.04 0.11 -1 -1 0.26 0.0185906 0.0165762 92 29 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_125.v common 4.08 vpr 64.40 MiB -1 -1 0.14 20392 1 0.03 -1 -1 33616 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65948 32 32 296 247 1 157 85 17 17 289 -1 unnamed_device 25.9 MiB 0.08 741 10873 2389 7568 916 64.4 MiB 0.08 0.00 2.8981 -91.503 -2.8981 2.8981 0.92 0.00043478 0.000397278 0.0278067 0.0254297 32 2284 22 6.64007e+06 263718 554710. 1919.41 0.93 0.0851248 0.0750498 22834 132086 -1 1775 22 1367 2417 161621 38287 2.91017 2.91017 -108.948 -2.91017 0 0 701300. 2426.64 0.29 0.07 0.12 -1 -1 0.29 0.0223236 0.0197704 115 31 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_126.v common 4.02 vpr 64.19 MiB -1 -1 0.15 20236 1 0.03 -1 -1 33592 -1 -1 27 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65732 25 32 216 194 1 122 84 17 17 289 -1 unnamed_device 25.8 MiB 0.05 556 11247 2989 6164 2094 64.2 MiB 0.07 0.00 2.7119 -63.6186 -2.7119 2.7119 0.95 0.000342232 0.000312116 0.0231577 0.0211093 26 1468 20 6.64007e+06 339066 477104. 1650.88 0.91 0.0687129 0.0602792 21682 110474 -1 1215 21 776 1300 91156 21503 2.77777 2.77777 -77.531 -2.77777 0 0 585099. 2024.56 0.27 0.04 0.10 -1 -1 0.27 0.016541 0.0145811 89 19 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_127.v common 4.37 vpr 64.88 MiB -1 -1 0.16 20536 1 0.03 -1 -1 33912 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66432 32 32 376 307 1 185 85 17 17 289 -1 unnamed_device 26.4 MiB 0.16 1072 15337 4750 8718 1869 64.9 MiB 0.14 0.00 3.61676 -114.072 -3.61676 3.61676 0.96 0.000547809 0.000485502 0.0468529 0.0424652 30 2407 18 6.64007e+06 263718 526063. 1820.29 0.93 0.111501 0.0984814 22546 126617 -1 2105 20 1107 1987 113424 25922 3.47022 3.47022 -128.943 -3.47022 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0244153 0.0216606 136 69 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_128.v common 4.44 vpr 64.98 MiB -1 -1 0.18 20588 1 0.04 -1 -1 33872 -1 -1 35 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 31 32 409 331 1 191 98 17 17 289 -1 unnamed_device 26.4 MiB 0.18 995 17198 4860 9696 2642 65.0 MiB 0.15 0.00 3.48461 -115.73 -3.48461 3.48461 0.95 0.000570082 0.000518321 0.0465932 0.0424328 32 2320 17 6.64007e+06 439530 554710. 1919.41 0.98 0.11598 0.102656 22834 132086 -1 2068 19 1363 2140 144666 33127 3.44303 3.44303 -130.38 -3.44303 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0247196 0.0219481 143 86 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_001.v common 4.66 vpr 64.82 MiB -1 -1 0.17 20908 1 0.03 -1 -1 34040 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66380 32 32 354 285 1 202 94 17 17 289 -1 unnamed_device 26.3 MiB 0.39 1082 17347 4948 10194 2205 64.8 MiB 0.15 0.00 4.10361 -121.4 -4.10361 4.10361 0.95 0.000515203 0.000467641 0.0453745 0.0412516 32 2497 23 6.65987e+06 380340 554710. 1919.41 0.98 0.114856 0.101593 22834 132086 -1 2140 25 1788 2723 175966 43783 4.22077 4.22077 -140.27 -4.22077 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0288472 0.0255062 152 47 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_002.v common 4.34 vpr 64.46 MiB -1 -1 0.15 20712 1 0.03 -1 -1 33608 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 30 32 363 293 1 194 85 17 17 289 -1 unnamed_device 26.1 MiB 0.28 991 15523 5586 7790 2147 64.5 MiB 0.13 0.00 3.67516 -115.945 -3.67516 3.67516 0.89 0.000480952 0.000439414 0.044786 0.0408329 32 2444 23 6.65987e+06 291594 554710. 1919.41 0.95 0.112562 0.0997028 22834 132086 -1 2103 23 1775 2677 207960 46484 4.15863 4.15863 -138.726 -4.15863 0 0 701300. 2426.64 0.28 0.08 0.12 -1 -1 0.28 0.0267848 0.0237228 138 58 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_003.v common 4.35 vpr 64.54 MiB -1 -1 0.15 20340 1 0.03 -1 -1 33768 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 299 247 1 188 87 17 17 289 -1 unnamed_device 26.1 MiB 0.11 1069 9687 2852 6193 642 64.5 MiB 0.08 0.00 3.25104 -98.8467 -3.25104 3.25104 0.97 0.000427885 0.000390226 0.0247734 0.0226453 26 2480 20 6.65987e+06 291594 477104. 1650.88 1.13 0.0889777 0.0787486 21682 110474 -1 2284 19 1207 1670 121344 28933 3.62951 3.62951 -121.513 -3.62951 0 0 585099. 2024.56 0.26 0.05 0.11 -1 -1 0.26 0.020548 0.0183032 126 26 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_004.v common 4.22 vpr 64.08 MiB -1 -1 0.17 20196 1 0.03 -1 -1 33968 -1 -1 27 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65620 29 32 308 248 1 169 88 17 17 289 -1 unnamed_device 25.7 MiB 0.09 893 8278 2000 5724 554 64.1 MiB 0.07 0.00 3.3873 -93.5418 -3.3873 3.3873 0.92 0.00047763 0.000434184 0.0221133 0.020156 28 2101 24 6.65987e+06 342306 500653. 1732.36 1.00 0.0872825 0.0766169 21970 115934 -1 1901 28 1535 3012 240263 73368 3.69157 3.69157 -115.859 -3.69157 0 0 612192. 2118.31 0.28 0.09 0.11 -1 -1 0.28 0.0278407 0.0245189 126 25 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_005.v common 4.52 vpr 64.53 MiB -1 -1 0.15 20328 1 0.03 -1 -1 33716 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 32 32 336 268 1 174 87 17 17 289 -1 unnamed_device 26.0 MiB 0.11 1033 14679 4625 8400 1654 64.5 MiB 0.13 0.00 3.36095 -103.8 -3.36095 3.36095 0.92 0.00047934 0.000436742 0.0400422 0.0364503 32 2758 39 6.65987e+06 291594 554710. 1919.41 1.19 0.122646 0.107931 22834 132086 -1 2289 22 1637 3117 260871 60492 3.33385 3.33385 -125.572 -3.33385 0 0 701300. 2426.64 0.31 0.09 0.13 -1 -1 0.31 0.0270789 0.0240777 130 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_006.v common 4.40 vpr 64.50 MiB -1 -1 0.16 20588 1 0.03 -1 -1 33572 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 32 32 366 295 1 189 97 17 17 289 -1 unnamed_device 26.0 MiB 0.16 919 17413 5357 9150 2906 64.5 MiB 0.14 0.00 2.58864 -91.1676 -2.58864 2.58864 0.94 0.000522144 0.000473578 0.0442503 0.0401894 32 2503 18 6.65987e+06 418374 554710. 1919.41 0.98 0.110953 0.09799 22834 132086 -1 2000 20 1341 2148 140478 33987 2.97811 2.97811 -110.611 -2.97811 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0250638 0.0222705 141 55 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_007.v common 3.99 vpr 64.12 MiB -1 -1 0.13 20120 1 0.03 -1 -1 34192 -1 -1 18 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65656 27 32 259 221 1 130 77 17 17 289 -1 unnamed_device 25.7 MiB 0.17 644 11161 3052 7265 844 64.1 MiB 0.08 0.00 3.02895 -81.0603 -3.02895 3.02895 0.91 0.000359526 0.000325413 0.0275355 0.0250267 30 1460 18 6.65987e+06 228204 526063. 1820.29 0.84 0.0745232 0.0654327 22546 126617 -1 1196 17 609 1030 52113 12846 2.59551 2.59551 -89.2382 -2.59551 0 0 666494. 2306.21 0.28 0.03 0.11 -1 -1 0.28 0.0160934 0.0143451 94 26 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_008.v common 4.11 vpr 64.53 MiB -1 -1 0.15 20116 1 0.03 -1 -1 34052 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 31 32 271 219 1 162 94 17 17 289 -1 unnamed_device 26.1 MiB 0.05 870 11809 2706 8564 539 64.5 MiB 0.09 0.00 2.49244 -77.2921 -2.49244 2.49244 0.94 0.000435307 0.00039745 0.026006 0.0236707 30 2028 17 6.65987e+06 393018 526063. 1820.29 0.93 0.0792759 0.0698657 22546 126617 -1 1695 15 701 1200 76567 17585 2.39611 2.39611 -90.5274 -2.39611 0 0 666494. 2306.21 0.29 0.04 0.12 -1 -1 0.29 0.0168419 0.0151462 115 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_009.v common 4.31 vpr 64.52 MiB -1 -1 0.17 20576 1 0.03 -1 -1 33872 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66064 31 32 317 271 1 168 82 17 17 289 -1 unnamed_device 26.1 MiB 0.17 947 14500 4345 8336 1819 64.5 MiB 0.11 0.00 2.68253 -95.8496 -2.68253 2.68253 0.93 0.000459036 0.000417757 0.0396946 0.0361937 32 2174 26 6.65987e+06 240882 554710. 1919.41 0.94 0.102018 0.0900679 22834 132086 -1 1844 20 1225 1814 125579 28653 3.09771 3.09771 -121.689 -3.09771 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0223041 0.0198023 111 60 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_010.v common 4.35 vpr 64.20 MiB -1 -1 0.15 20136 1 0.03 -1 -1 33636 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65736 32 32 298 248 1 156 81 17 17 289 -1 unnamed_device 25.6 MiB 0.26 930 14431 4375 7912 2144 64.2 MiB 0.11 0.00 2.86455 -99.7586 -2.86455 2.86455 0.90 0.000426023 0.000389504 0.0382301 0.0349134 32 1946 19 6.65987e+06 215526 554710. 1919.41 0.91 0.0922618 0.0816977 22834 132086 -1 1763 21 1093 1756 125892 29398 2.70731 2.70731 -108.205 -2.70731 0 0 701300. 2426.64 0.29 0.06 0.12 -1 -1 0.29 0.0213982 0.0190394 113 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_011.v common 4.32 vpr 63.94 MiB -1 -1 0.15 20276 1 0.03 -1 -1 33852 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65472 30 32 303 262 1 139 79 17 17 289 -1 unnamed_device 25.4 MiB 0.36 715 4304 940 3213 151 63.9 MiB 0.04 0.00 3.13415 -87.8029 -3.13415 3.13415 0.94 0.00045064 0.00041087 0.0137011 0.0125365 28 1618 21 6.65987e+06 215526 500653. 1732.36 0.91 0.0716409 0.0625567 21970 115934 -1 1410 14 646 989 65070 15862 2.80291 2.80291 -98.7068 -2.80291 0 0 612192. 2118.31 0.27 0.04 0.11 -1 -1 0.27 0.0160211 0.0143656 98 58 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_012.v common 4.32 vpr 64.38 MiB -1 -1 0.15 20536 1 0.03 -1 -1 33732 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 32 32 276 237 1 166 81 17 17 289 -1 unnamed_device 26.0 MiB 0.26 1005 8131 2008 5241 882 64.4 MiB 0.07 0.00 2.91589 -97.8016 -2.91589 2.91589 0.94 0.000426234 0.000387861 0.0224884 0.020554 32 2129 23 6.65987e+06 215526 554710. 1919.41 0.94 0.079018 0.06939 22834 132086 -1 1837 20 1016 1363 97086 22484 2.72385 2.72385 -108.178 -2.72385 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0193916 0.0171728 106 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_013.v common 4.46 vpr 64.64 MiB -1 -1 0.17 20440 1 0.03 -1 -1 33740 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 32 32 344 272 1 202 88 17 17 289 -1 unnamed_device 26.3 MiB 0.23 1087 16468 5411 8415 2642 64.6 MiB 0.15 0.00 3.37501 -113.673 -3.37501 3.37501 0.94 0.00049588 0.000450918 0.0456554 0.0416192 30 2450 17 6.65987e+06 304272 526063. 1820.29 1.01 0.110801 0.0985065 22546 126617 -1 2094 20 1279 1903 113485 26060 3.13051 3.13051 -120.427 -3.13051 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0232462 0.0206385 139 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_014.v common 4.43 vpr 64.77 MiB -1 -1 0.17 20540 1 0.03 -1 -1 33996 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 363 295 1 181 94 17 17 289 -1 unnamed_device 26.2 MiB 0.20 986 17134 5267 9560 2307 64.8 MiB 0.14 0.00 3.76229 -109.603 -3.76229 3.76229 0.95 0.000534578 0.000485364 0.0446356 0.0406598 32 2329 24 6.65987e+06 380340 554710. 1919.41 0.98 0.113503 0.100269 22834 132086 -1 1971 19 1450 2287 164931 37989 3.78251 3.78251 -127.061 -3.78251 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0231237 0.0205181 133 58 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_015.v common 4.09 vpr 64.00 MiB -1 -1 0.15 20288 1 0.03 -1 -1 33708 -1 -1 21 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65540 29 32 248 215 1 137 82 17 17 289 -1 unnamed_device 25.6 MiB 0.14 698 9872 2621 6533 718 64.0 MiB 0.07 0.00 2.56293 -74.8303 -2.56293 2.56293 0.94 0.000408946 0.000373027 0.0238867 0.0218218 30 1649 20 6.65987e+06 266238 526063. 1820.29 0.89 0.073218 0.0645062 22546 126617 -1 1435 16 719 1151 63206 15652 2.53151 2.53151 -86.9201 -2.53151 0 0 666494. 2306.21 0.29 0.04 0.12 -1 -1 0.29 0.015417 0.0137943 98 21 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_016.v common 4.44 vpr 64.67 MiB -1 -1 0.16 20772 1 0.03 -1 -1 33888 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 32 32 370 297 1 183 85 17 17 289 -1 unnamed_device 26.2 MiB 0.40 1096 12361 3666 7320 1375 64.7 MiB 0.11 0.00 3.1755 -102.099 -3.1755 3.1755 0.90 0.000481735 0.000440371 0.0364183 0.0332877 32 2617 23 6.65987e+06 266238 554710. 1919.41 0.95 0.106077 0.0937424 22834 132086 -1 2323 22 1528 2740 215247 48326 3.13537 3.13537 -122.259 -3.13537 0 0 701300. 2426.64 0.29 0.08 0.11 -1 -1 0.29 0.0269411 0.0239323 132 55 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_017.v common 4.40 vpr 64.39 MiB -1 -1 0.14 20708 1 0.03 -1 -1 34048 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 32 32 338 269 1 196 85 17 17 289 -1 unnamed_device 25.8 MiB 0.23 1132 11059 2708 6964 1387 64.4 MiB 0.11 0.00 3.69641 -122.527 -3.69641 3.69641 0.92 0.00052072 0.000466677 0.0327203 0.0298691 32 2558 21 6.65987e+06 266238 554710. 1919.41 0.97 0.0993016 0.0877489 22834 132086 -1 2331 21 1457 1999 161310 37351 3.35197 3.35197 -128.82 -3.35197 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.02567 0.0228678 137 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_018.v common 4.32 vpr 64.34 MiB -1 -1 0.15 20292 1 0.03 -1 -1 33584 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65888 32 32 323 276 1 153 93 17 17 289 -1 unnamed_device 26.0 MiB 0.22 885 11433 3022 7683 728 64.3 MiB 0.09 0.00 2.30864 -87.3984 -2.30864 2.30864 0.93 0.000448899 0.00040752 0.0285026 0.0259465 32 1943 22 6.65987e+06 367662 554710. 1919.41 0.94 0.0896898 0.0787646 22834 132086 -1 1747 18 953 1468 102647 24244 2.15051 2.15051 -99.0054 -2.15051 0 0 701300. 2426.64 0.31 0.05 0.13 -1 -1 0.31 0.0202485 0.0179981 110 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_019.v common 3.97 vpr 63.94 MiB -1 -1 0.14 19840 1 0.03 -1 -1 33764 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65476 30 32 222 206 1 117 77 17 17 289 -1 unnamed_device 25.4 MiB 0.13 657 12465 3732 7266 1467 63.9 MiB 0.08 0.00 1.87027 -66.1942 -1.87027 1.87027 0.93 0.000363347 0.000331607 0.0289885 0.0264973 26 1441 19 6.65987e+06 190170 477104. 1650.88 0.79 0.0732062 0.0645249 21682 110474 -1 1354 16 611 858 65640 15679 1.83285 1.83285 -78.8705 -1.83285 0 0 585099. 2024.56 0.25 0.04 0.11 -1 -1 0.25 0.0141927 0.0125868 81 29 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_020.v common 4.25 vpr 64.38 MiB -1 -1 0.14 20484 1 0.03 -1 -1 33944 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 31 32 291 243 1 171 82 17 17 289 -1 unnamed_device 26.0 MiB 0.34 832 7736 1853 5457 426 64.4 MiB 0.07 0.00 3.73355 -112.498 -3.73355 3.73355 0.92 0.000419528 0.000377191 0.0207448 0.0188782 32 2122 20 6.65987e+06 240882 554710. 1919.41 0.88 0.0731231 0.0640029 22834 132086 -1 1767 19 1039 1504 111432 26880 3.56017 3.56017 -127.621 -3.56017 0 0 701300. 2426.64 0.29 0.05 0.12 -1 -1 0.29 0.0190543 0.0169107 127 30 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_021.v common 4.29 vpr 64.61 MiB -1 -1 0.16 20092 1 0.03 -1 -1 33940 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 32 32 342 271 1 179 95 17 17 289 -1 unnamed_device 26.0 MiB 0.06 1026 14351 3572 8513 2266 64.6 MiB 0.11 0.00 3.38856 -108.872 -3.38856 3.38856 0.95 0.000505548 0.000458312 0.0363655 0.0331661 32 2300 50 6.65987e+06 393018 554710. 1919.41 1.09 0.126277 0.110994 22834 132086 -1 2070 20 1311 1981 140162 33324 3.46643 3.46643 -126.077 -3.46643 0 0 701300. 2426.64 0.29 0.06 0.07 -1 -1 0.29 0.0241567 0.0214989 135 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_022.v common 4.69 vpr 64.86 MiB -1 -1 0.17 20480 1 0.03 -1 -1 33804 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 32 32 372 300 1 204 87 17 17 289 -1 unnamed_device 26.3 MiB 0.25 1213 10071 2587 6696 788 64.9 MiB 0.10 0.00 3.36484 -110.526 -3.36484 3.36484 0.94 0.000542008 0.000494716 0.0311251 0.0284202 30 2569 19 6.65987e+06 291594 526063. 1820.29 1.22 0.102914 0.0911783 22546 126617 -1 2118 20 1205 1987 115763 26098 3.20411 3.20411 -119.464 -3.20411 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0251505 0.0223342 142 59 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_023.v common 4.26 vpr 63.72 MiB -1 -1 0.13 20012 1 0.03 -1 -1 34140 -1 -1 18 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65252 26 32 190 182 1 110 76 17 17 289 -1 unnamed_device 25.3 MiB 0.28 367 10956 3949 4559 2448 63.7 MiB 0.06 0.00 1.89953 -52.3182 -1.89953 1.89953 0.91 0.000295676 0.000268848 0.0222832 0.0202766 28 1154 25 6.65987e+06 228204 500653. 1732.36 1.01 0.0681052 0.059924 21970 115934 -1 986 20 647 902 74712 21727 2.02411 2.02411 -68.1052 -2.02411 0 0 612192. 2118.31 0.28 0.04 0.11 -1 -1 0.28 0.0141793 0.0125285 77 21 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_024.v common 4.13 vpr 64.31 MiB -1 -1 0.13 20408 1 0.03 -1 -1 33832 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65856 32 32 285 227 1 165 85 17 17 289 -1 unnamed_device 25.9 MiB 0.10 929 5665 1132 4314 219 64.3 MiB 0.05 0.00 3.9748 -101.056 -3.9748 3.9748 0.90 0.000372729 0.000340239 0.0149717 0.0137113 28 2308 25 6.65987e+06 266238 500653. 1732.36 1.11 0.084581 0.0747593 21970 115934 -1 1997 21 978 1818 126245 29611 3.74256 3.74256 -117.061 -3.74256 0 0 612192. 2118.31 0.26 0.05 0.10 -1 -1 0.26 0.0213276 0.0190088 118 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_025.v common 4.05 vpr 63.75 MiB -1 -1 0.12 19984 1 0.03 -1 -1 33468 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65280 32 32 173 169 1 116 78 17 17 289 -1 unnamed_device 25.3 MiB 0.03 445 10038 3155 4475 2408 63.8 MiB 0.05 0.00 1.96647 -57.992 -1.96647 1.96647 0.95 0.000279802 0.000253753 0.0197132 0.0179678 28 1372 39 6.65987e+06 177492 500653. 1732.36 0.98 0.0687207 0.0603129 21970 115934 -1 1046 13 531 594 65791 18934 1.94431 1.94431 -71.9175 -1.94431 0 0 612192. 2118.31 0.28 0.03 0.11 -1 -1 0.28 0.0107858 0.00967614 79 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_026.v common 4.36 vpr 64.41 MiB -1 -1 0.15 20380 1 0.03 -1 -1 34024 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65960 32 32 300 245 1 165 94 17 17 289 -1 unnamed_device 26.0 MiB 0.10 952 15217 4231 8557 2429 64.4 MiB 0.12 0.00 3.42395 -99.6489 -3.42395 3.42395 0.95 0.000456153 0.000416571 0.0357519 0.0326393 32 2057 23 6.65987e+06 380340 554710. 1919.41 0.95 0.0970718 0.0858967 22834 132086 -1 1845 21 1129 1777 127226 29850 3.28665 3.28665 -110.197 -3.28665 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0216195 0.0191242 123 21 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_027.v common 4.23 vpr 64.31 MiB -1 -1 0.16 20120 1 0.03 -1 -1 33972 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65852 32 32 297 233 1 177 95 17 17 289 -1 unnamed_device 25.9 MiB 0.10 958 7007 1494 4955 558 64.3 MiB 0.07 0.00 3.02324 -88.0996 -3.02324 3.02324 0.95 0.000452974 0.000413294 0.0170439 0.0155431 32 2305 24 6.65987e+06 393018 554710. 1919.41 0.95 0.077965 0.0683549 22834 132086 -1 1995 20 1205 2109 142255 33292 2.82597 2.82597 -104.202 -2.82597 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.021428 0.0190304 128 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_028.v common 4.32 vpr 64.59 MiB -1 -1 0.17 20180 1 0.03 -1 -1 33976 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 32 32 338 277 1 179 90 17 17 289 -1 unnamed_device 26.1 MiB 0.12 1088 16371 5050 9180 2141 64.6 MiB 0.14 0.00 3.32969 -104.657 -3.32969 3.32969 0.95 0.000505414 0.000461088 0.0433339 0.0394649 30 2264 22 6.65987e+06 329628 526063. 1820.29 0.96 0.108071 0.0955544 22546 126617 -1 1975 20 1173 2077 116844 27378 3.28465 3.28465 -117.946 -3.28465 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0230795 0.0205074 125 47 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_029.v common 4.06 vpr 64.32 MiB -1 -1 0.15 20336 1 0.03 -1 -1 33708 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65860 32 32 284 241 1 145 80 17 17 289 -1 unnamed_device 25.7 MiB 0.05 780 7132 1689 4801 642 64.3 MiB 0.06 0.00 2.29953 -80.5951 -2.29953 2.29953 0.94 0.000425908 0.000387963 0.0200938 0.0183809 28 1888 23 6.65987e+06 202848 500653. 1732.36 0.96 0.0792776 0.0695635 21970 115934 -1 1757 17 967 1474 112737 26088 2.79185 2.79185 -103.87 -2.79185 0 0 612192. 2118.31 0.26 0.05 0.11 -1 -1 0.26 0.0184442 0.0165095 101 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_030.v common 4.01 vpr 64.20 MiB -1 -1 0.15 20260 1 0.03 -1 -1 33496 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65740 30 32 262 227 1 135 85 17 17 289 -1 unnamed_device 25.7 MiB 0.09 677 6781 1373 4947 461 64.2 MiB 0.05 0.00 2.39767 -75.3822 -2.39767 2.39767 0.93 0.000397726 0.000362924 0.0165157 0.0151031 26 1775 25 6.65987e+06 291594 477104. 1650.88 0.91 0.0736173 0.0644979 21682 110474 -1 1501 19 949 1491 104178 25148 2.63945 2.63945 -93.4285 -2.63945 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0182477 0.0162219 97 29 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_031.v common 6.19 vpr 63.99 MiB -1 -1 0.15 20348 1 0.03 -1 -1 33716 -1 -1 23 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65528 28 32 260 223 1 140 83 17 17 289 -1 unnamed_device 25.5 MiB 0.05 610 15023 6381 7775 867 64.0 MiB 0.10 0.00 2.58899 -72.1138 -2.58899 2.58899 0.91 0.00038067 0.000344737 0.0339003 0.030738 34 1712 24 6.65987e+06 291594 585099. 2024.56 3.03 0.14175 0.123204 23122 138558 -1 1296 23 964 1640 111241 28067 2.64271 2.64271 -85.5581 -2.64271 0 0 742403. 2568.87 0.30 0.05 0.12 -1 -1 0.30 0.0199189 0.0175676 98 27 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_032.v common 4.06 vpr 64.37 MiB -1 -1 0.14 20136 1 0.03 -1 -1 33788 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65916 32 32 253 210 1 154 83 17 17 289 -1 unnamed_device 25.8 MiB 0.10 842 4763 892 3641 230 64.4 MiB 0.05 0.00 2.97595 -94.2544 -2.97595 2.97595 0.95 0.000412141 0.000377838 0.0130203 0.0119489 30 1799 22 6.65987e+06 240882 526063. 1820.29 0.90 0.0657516 0.0576213 22546 126617 -1 1644 18 941 1590 90315 21554 2.60445 2.60445 -103.129 -2.60445 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0180133 0.0159394 110 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_033.v common 5.94 vpr 64.23 MiB -1 -1 0.15 20340 1 0.03 -1 -1 33716 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65776 31 32 271 231 1 148 90 17 17 289 -1 unnamed_device 25.7 MiB 0.10 756 7326 1472 5645 209 64.2 MiB 0.06 0.00 2.64264 -79.6038 -2.64264 2.64264 0.95 0.000387966 0.000354831 0.017679 0.0161415 28 1814 23 6.65987e+06 342306 500653. 1732.36 2.78 0.132388 0.114478 21970 115934 -1 1589 22 1074 1825 120107 29407 2.53031 2.53031 -95.3791 -2.53031 0 0 612192. 2118.31 0.26 0.05 0.11 -1 -1 0.26 0.0200295 0.0177006 103 26 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_034.v common 4.20 vpr 64.33 MiB -1 -1 0.14 20268 1 0.03 -1 -1 33568 -1 -1 25 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65876 29 32 291 250 1 153 86 17 17 289 -1 unnamed_device 25.7 MiB 0.22 845 8591 2206 5604 781 64.3 MiB 0.07 0.00 2.43438 -80.6856 -2.43438 2.43438 0.90 0.000423763 0.000387165 0.021457 0.0196102 30 1813 20 6.65987e+06 316950 526063. 1820.29 0.90 0.0758604 0.0666436 22546 126617 -1 1591 16 818 1278 69345 16927 2.03945 2.03945 -87.1229 -2.03945 0 0 666494. 2306.21 0.28 0.04 0.11 -1 -1 0.28 0.0170184 0.0151889 105 48 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_035.v common 4.45 vpr 65.00 MiB -1 -1 0.17 20676 1 0.03 -1 -1 33568 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 32 32 367 282 1 201 101 17 17 289 -1 unnamed_device 26.4 MiB 0.27 1195 11851 2786 7710 1355 65.0 MiB 0.10 0.00 3.40636 -102.404 -3.40636 3.40636 0.94 0.000544002 0.000493696 0.0298443 0.0271585 32 2753 19 6.65987e+06 469086 554710. 1919.41 0.96 0.0974798 0.0858617 22834 132086 -1 2355 20 1401 2338 158424 36552 3.72063 3.72063 -125.194 -3.72063 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0255826 0.022828 150 26 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_036.v common 4.63 vpr 64.91 MiB -1 -1 0.17 20532 1 0.03 -1 -1 33896 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 32 32 391 311 1 192 100 17 17 289 -1 unnamed_device 26.5 MiB 0.28 994 9380 1964 6772 644 64.9 MiB 0.10 0.00 3.23435 -108.791 -3.23435 3.23435 0.97 0.000562035 0.00051058 0.025568 0.0233225 28 2319 25 6.65987e+06 456408 500653. 1732.36 1.13 0.104543 0.0918597 21970 115934 -1 2109 18 1691 2670 165526 40765 2.84977 2.84977 -117.024 -2.84977 0 0 612192. 2118.31 0.26 0.07 0.11 -1 -1 0.26 0.0241024 0.0215028 146 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_037.v common 5.93 vpr 64.31 MiB -1 -1 0.15 20368 1 0.03 -1 -1 33952 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65856 31 32 279 237 1 161 80 17 17 289 -1 unnamed_device 26.0 MiB 0.26 839 10400 2738 6807 855 64.3 MiB 0.08 0.00 3.11855 -95.6325 -3.11855 3.11855 0.91 0.000404077 0.000360375 0.026496 0.0240913 28 2006 19 6.65987e+06 215526 500653. 1732.36 2.66 0.134844 0.117145 21970 115934 -1 1760 20 1123 1585 103200 25876 3.20371 3.20371 -114.451 -3.20371 0 0 612192. 2118.31 0.27 0.05 0.10 -1 -1 0.27 0.0188823 0.0167334 109 30 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_038.v common 4.47 vpr 64.55 MiB -1 -1 0.16 20748 1 0.03 -1 -1 33908 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 31 32 370 297 1 186 87 17 17 289 -1 unnamed_device 26.0 MiB 0.27 944 13335 3182 8688 1465 64.5 MiB 0.12 0.00 3.29135 -102.08 -3.29135 3.29135 0.97 0.000627452 0.000578395 0.0398324 0.0362878 28 2341 23 6.65987e+06 304272 500653. 1732.36 0.95 0.110626 0.0977307 21970 115934 -1 1929 17 1165 1998 120576 30886 2.99297 2.99297 -115.792 -2.99297 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0225702 0.0202157 137 57 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_039.v common 4.78 vpr 64.37 MiB -1 -1 0.18 20612 1 0.03 -1 -1 33820 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65912 31 32 377 302 1 233 90 17 17 289 -1 unnamed_device 26.4 MiB 0.36 1278 15366 4289 8800 2277 64.4 MiB 0.16 0.00 4.69513 -143.575 -4.69513 4.69513 0.94 0.000537027 0.000483401 0.0435568 0.0397172 32 3144 34 6.65987e+06 342306 554710. 1919.41 1.13 0.127325 0.112423 22834 132086 -1 2547 20 2121 3150 221640 52251 5.14489 5.14489 -173.452 -5.14489 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0258137 0.023048 170 60 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_040.v common 5.74 vpr 64.82 MiB -1 -1 0.18 20684 1 0.03 -1 -1 33764 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 31 32 383 305 1 210 88 17 17 289 -1 unnamed_device 26.2 MiB 1.37 979 10228 2485 6782 961 64.8 MiB 0.10 0.00 3.8685 -115.087 -3.8685 3.8685 0.96 0.000555267 0.000505776 0.0316147 0.0289005 30 2265 26 6.65987e+06 316950 526063. 1820.29 1.13 0.113756 0.100856 22546 126617 -1 1868 20 1176 1849 97531 23388 3.82617 3.82617 -131.865 -3.82617 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0257173 0.0229971 162 60 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_041.v common 4.46 vpr 64.61 MiB -1 -1 0.16 20520 1 0.03 -1 -1 34064 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66164 31 32 352 285 1 184 92 17 17 289 -1 unnamed_device 26.1 MiB 0.23 840 9821 2395 6460 966 64.6 MiB 0.09 0.00 3.49215 -102.722 -3.49215 3.49215 0.93 0.000511701 0.000465409 0.0268559 0.0245114 32 2431 31 6.65987e+06 367662 554710. 1919.41 1.03 0.102305 0.0898649 22834 132086 -1 1911 21 1241 2075 166440 42461 2.97631 2.97631 -111.568 -2.97631 0 0 701300. 2426.64 0.31 0.07 0.12 -1 -1 0.31 0.0252642 0.0225073 133 51 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_042.v common 4.57 vpr 64.42 MiB -1 -1 0.15 20440 1 0.03 -1 -1 34068 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65968 32 32 291 242 1 179 86 17 17 289 -1 unnamed_device 26.0 MiB 0.17 1063 12749 3886 7815 1048 64.4 MiB 0.10 0.00 3.22104 -94.7966 -3.22104 3.22104 0.95 0.000442884 0.000404384 0.0322319 0.0294264 26 2675 43 6.65987e+06 278916 477104. 1650.88 1.26 0.12042 0.106959 21682 110474 -1 2336 23 1519 2320 206531 47583 3.71865 3.71865 -120.121 -3.71865 0 0 585099. 2024.56 0.26 0.08 0.10 -1 -1 0.26 0.0239794 0.0212741 118 24 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_043.v common 4.49 vpr 64.95 MiB -1 -1 0.18 20872 1 0.03 -1 -1 33964 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 32 32 457 356 1 223 102 17 17 289 -1 unnamed_device 26.8 MiB 0.30 1158 10098 2280 7234 584 64.9 MiB 0.11 0.00 4.06967 -130.913 -4.06967 4.06967 0.92 0.000603353 0.000547585 0.029257 0.0266566 30 2693 19 6.65987e+06 481764 526063. 1820.29 0.97 0.106927 0.0941019 22546 126617 -1 2301 18 1233 2036 112610 26634 4.12657 4.12657 -147.574 -4.12657 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0287344 0.0258285 172 84 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_044.v common 4.00 vpr 64.13 MiB -1 -1 0.14 20288 1 0.03 -1 -1 33704 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65672 31 32 261 225 1 142 84 17 17 289 -1 unnamed_device 25.6 MiB 0.12 657 7404 1565 5181 658 64.1 MiB 0.06 0.00 2.74078 -77.1956 -2.74078 2.74078 0.90 0.000405556 0.000368464 0.0198922 0.0180369 32 1758 22 6.65987e+06 266238 554710. 1919.41 0.89 0.0719665 0.0629502 22834 132086 -1 1601 22 1157 1905 135870 35014 2.79785 2.79785 -100.617 -2.79785 0 0 701300. 2426.64 0.29 0.06 0.12 -1 -1 0.29 0.0195724 0.017311 101 24 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_045.v common 7.85 vpr 64.85 MiB -1 -1 0.16 20668 1 0.03 -1 -1 33784 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 31 32 337 267 1 205 86 17 17 289 -1 unnamed_device 26.3 MiB 0.24 1194 8213 1995 5407 811 64.9 MiB 0.08 0.00 4.03882 -126.169 -4.03882 4.03882 0.93 0.000509145 0.000464745 0.0242447 0.0221493 28 2885 20 6.65987e+06 291594 500653. 1732.36 4.46 0.19914 0.173497 21970 115934 -1 2513 22 1529 2215 161554 36715 4.00448 4.00448 -139.936 -4.00448 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0252442 0.022473 142 30 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_046.v common 6.68 vpr 64.39 MiB -1 -1 0.16 20472 1 0.03 -1 -1 33780 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65936 32 32 349 284 1 183 97 17 17 289 -1 unnamed_device 25.8 MiB 0.15 1105 10975 2907 7171 897 64.4 MiB 0.10 0.00 3.1757 -99.4614 -3.1757 3.1757 0.96 0.000500207 0.000454407 0.0275933 0.0251202 26 2882 30 6.65987e+06 418374 477104. 1650.88 3.34 0.175696 0.153478 21682 110474 -1 2332 19 1166 2063 151132 34234 3.21931 3.21931 -119.38 -3.21931 0 0 585099. 2024.56 0.26 0.06 0.11 -1 -1 0.26 0.0233538 0.0208302 131 50 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_047.v common 4.35 vpr 64.40 MiB -1 -1 0.14 20196 1 0.03 -1 -1 33552 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65944 32 32 291 230 1 168 88 17 17 289 -1 unnamed_device 25.9 MiB 0.10 935 12568 4209 6533 1826 64.4 MiB 0.11 0.00 3.27104 -101.948 -3.27104 3.27104 0.96 0.000483362 0.000441413 0.0320859 0.0293007 28 2380 22 6.65987e+06 304272 500653. 1732.36 1.05 0.0961024 0.0851895 21970 115934 -1 2035 22 1499 2824 192795 44421 3.62125 3.62125 -122.109 -3.62125 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0228376 0.0202907 123 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_048.v common 5.08 vpr 64.71 MiB -1 -1 0.17 20632 1 0.03 -1 -1 33948 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 32 32 353 287 1 198 86 17 17 289 -1 unnamed_device 26.4 MiB 0.37 1116 7268 1692 5167 409 64.7 MiB 0.08 0.00 3.4346 -106.79 -3.4346 3.4346 0.94 0.000517368 0.000473779 0.0225166 0.0205776 26 2889 33 6.65987e+06 278916 477104. 1650.88 1.57 0.106515 0.093671 21682 110474 -1 2359 24 1293 1862 207774 61931 3.27491 3.27491 -122.259 -3.27491 0 0 585099. 2024.56 0.26 0.09 0.10 -1 -1 0.26 0.0289008 0.0257373 136 52 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_049.v common 4.40 vpr 64.62 MiB -1 -1 0.15 20444 1 0.03 -1 -1 33848 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 32 32 361 291 1 185 95 17 17 289 -1 unnamed_device 26.1 MiB 0.37 979 18023 5753 9211 3059 64.6 MiB 0.14 0.00 2.9071 -96.889 -2.9071 2.9071 0.92 0.000499324 0.000454125 0.0425529 0.0385303 30 2200 15 6.65987e+06 393018 526063. 1820.29 0.91 0.101834 0.0897752 22546 126617 -1 1896 16 953 1630 96428 22151 2.75951 2.75951 -109.697 -2.75951 0 0 666494. 2306.21 0.28 0.05 0.11 -1 -1 0.28 0.0202317 0.0180418 132 52 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_050.v common 4.59 vpr 64.77 MiB -1 -1 0.17 20508 1 0.03 -1 -1 33716 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 382 305 1 192 100 17 17 289 -1 unnamed_device 26.4 MiB 0.39 1074 17500 4856 10083 2561 64.8 MiB 0.15 0.00 3.47495 -108.457 -3.47495 3.47495 0.94 0.000561224 0.000512648 0.0442097 0.0402914 28 2706 21 6.65987e+06 456408 500653. 1732.36 0.98 0.115763 0.102498 21970 115934 -1 2340 20 1358 2079 161170 35545 3.30071 3.30071 -125.12 -3.30071 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0259193 0.0230627 144 59 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_051.v common 4.59 vpr 64.51 MiB -1 -1 0.15 20192 1 0.03 -1 -1 33812 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66060 32 32 306 248 1 166 93 17 17 289 -1 unnamed_device 26.1 MiB 0.10 837 13113 3767 8202 1144 64.5 MiB 0.11 0.00 3.17284 -95.5583 -3.17284 3.17284 0.94 0.000457997 0.000417195 0.0312005 0.0284387 26 2199 26 6.65987e+06 367662 477104. 1650.88 1.34 0.099493 0.0877397 21682 110474 -1 1881 18 1201 1979 126397 31562 3.31905 3.31905 -113.899 -3.31905 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0202436 0.0180516 122 21 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_052.v common 4.20 vpr 64.77 MiB -1 -1 0.16 20464 1 0.03 -1 -1 33716 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 319 257 1 198 87 17 17 289 -1 unnamed_device 26.1 MiB 0.12 1082 7575 1544 5531 500 64.8 MiB 0.08 0.00 3.83975 -114.873 -3.83975 3.83975 0.93 0.000507082 0.00046293 0.0216547 0.0198004 30 2403 22 6.65987e+06 291594 526063. 1820.29 0.96 0.0874331 0.0769656 22546 126617 -1 2036 18 1163 1700 95574 22681 3.45505 3.45505 -122.956 -3.45505 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0206769 0.0184053 133 26 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_053.v common 5.31 vpr 65.01 MiB -1 -1 0.17 20544 1 0.03 -1 -1 34096 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 31 32 373 299 1 202 86 17 17 289 -1 unnamed_device 26.5 MiB 0.29 1011 10859 3024 7192 643 65.0 MiB 0.11 0.00 3.91127 -116.488 -3.91127 3.91127 0.97 0.000555188 0.000497047 0.0345358 0.031299 30 2667 30 6.65987e+06 291594 526063. 1820.29 1.79 0.121672 0.107601 22546 126617 -1 2076 25 1435 2395 130264 32555 3.98043 3.98043 -130.373 -3.98043 0 0 666494. 2306.21 0.27 0.07 0.12 -1 -1 0.27 0.0298231 0.0264025 146 58 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_054.v common 4.47 vpr 64.54 MiB -1 -1 0.16 20616 1 0.03 -1 -1 33992 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66084 32 32 387 315 1 189 85 17 17 289 -1 unnamed_device 25.9 MiB 0.18 997 14407 4900 6840 2667 64.5 MiB 0.13 0.00 3.25298 -104.391 -3.25298 3.25298 0.96 0.000478399 0.000434607 0.044965 0.0410048 32 2790 23 6.65987e+06 266238 554710. 1919.41 1.02 0.11996 0.106141 22834 132086 -1 2291 23 1669 2893 218043 49735 3.45919 3.45919 -124.054 -3.45919 0 0 701300. 2426.64 0.31 0.08 0.12 -1 -1 0.31 0.028945 0.0256146 135 74 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_055.v common 4.06 vpr 64.25 MiB -1 -1 0.13 20292 1 0.03 -1 -1 33772 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65792 32 32 251 219 1 140 88 17 17 289 -1 unnamed_device 25.7 MiB 0.09 768 15688 4431 9441 1816 64.2 MiB 0.10 0.00 2.59064 -80.8644 -2.59064 2.59064 0.91 0.000377755 0.000343968 0.0331297 0.0302952 26 1818 33 6.65987e+06 304272 477104. 1650.88 1.01 0.0980777 0.0868009 21682 110474 -1 1643 20 784 1234 96298 24028 2.65551 2.65551 -94.985 -2.65551 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0182893 0.0162279 97 20 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_056.v common 4.38 vpr 64.45 MiB -1 -1 0.15 20440 1 0.03 -1 -1 33740 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66000 32 32 341 285 1 187 84 17 17 289 -1 unnamed_device 26.0 MiB 0.16 893 10881 3119 6879 883 64.5 MiB 0.10 0.00 3.1319 -108.409 -3.1319 3.1319 0.94 0.00050555 0.00045867 0.0316925 0.0287722 32 2445 25 6.65987e+06 253560 554710. 1919.41 1.00 0.0992626 0.0871717 22834 132086 -1 2109 22 1631 2322 181640 42344 3.05837 3.05837 -123.946 -3.05837 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0250638 0.0222055 125 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_057.v common 4.59 vpr 64.60 MiB -1 -1 0.16 20480 1 0.03 -1 -1 34080 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 32 32 387 293 1 234 92 17 17 289 -1 unnamed_device 26.6 MiB 0.18 1365 17894 5620 9896 2378 64.6 MiB 0.17 0.00 4.23387 -130.947 -4.23387 4.23387 0.98 0.000566669 0.000515109 0.0521362 0.0475379 30 2828 21 6.65987e+06 354984 526063. 1820.29 1.02 0.127943 0.11361 22546 126617 -1 2266 22 1407 2297 119997 29417 4.49337 4.49337 -149.347 -4.49337 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0277752 0.0246098 168 28 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_058.v common 4.48 vpr 64.46 MiB -1 -1 0.16 20160 1 0.03 -1 -1 33636 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66008 32 32 340 270 1 181 95 17 17 289 -1 unnamed_device 25.9 MiB 0.26 950 9815 2017 7316 482 64.5 MiB 0.09 0.00 3.56446 -108.073 -3.56446 3.56446 0.98 0.000510944 0.000467707 0.0256401 0.0234545 32 2179 19 6.65987e+06 393018 554710. 1919.41 0.95 0.0893721 0.0787258 22834 132086 -1 1901 18 1130 1822 127002 30936 3.12451 3.12451 -117.777 -3.12451 0 0 701300. 2426.64 0.30 0.06 0.12 -1 -1 0.30 0.022332 0.0199777 133 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_059.v common 4.17 vpr 64.25 MiB -1 -1 0.14 20592 1 0.03 -1 -1 33548 -1 -1 26 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65796 30 32 278 235 1 148 88 17 17 289 -1 unnamed_device 25.7 MiB 0.05 797 16468 5182 9134 2152 64.3 MiB 0.11 0.00 2.54444 -82.4839 -2.54444 2.54444 0.93 0.000388082 0.000350982 0.0368352 0.0334097 28 1946 23 6.65987e+06 329628 500653. 1732.36 1.05 0.0965491 0.0853818 21970 115934 -1 1729 22 1207 1995 148673 33989 2.77871 2.77871 -100.946 -2.77871 0 0 612192. 2118.31 0.27 0.06 0.10 -1 -1 0.27 0.0200556 0.0177011 104 29 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_060.v common 4.81 vpr 64.93 MiB -1 -1 0.17 20732 1 0.03 -1 -1 33676 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 32 32 431 332 1 235 89 17 17 289 -1 unnamed_device 26.8 MiB 0.36 1389 13355 3617 7994 1744 64.9 MiB 0.14 0.00 5.14349 -155.118 -5.14349 5.14349 0.94 0.0006577 0.000600962 0.0434142 0.0395196 28 3339 22 6.65987e+06 316950 500653. 1732.36 1.18 0.130097 0.115349 21970 115934 -1 2809 22 1913 2774 199125 44985 5.39214 5.39214 -172.722 -5.39214 0 0 612192. 2118.31 0.26 0.08 0.11 -1 -1 0.26 0.029735 0.0264447 168 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_061.v common 4.45 vpr 64.61 MiB -1 -1 0.16 20276 1 0.03 -1 -1 33540 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 32 32 336 268 1 174 96 17 17 289 -1 unnamed_device 26.1 MiB 0.29 868 12579 3577 7733 1269 64.6 MiB 0.10 0.00 3.54535 -106.254 -3.54535 3.54535 0.93 0.000498398 0.000454871 0.0310812 0.0283726 32 2162 21 6.65987e+06 405696 554710. 1919.41 0.94 0.0946215 0.0834925 22834 132086 -1 1875 21 1346 1958 126475 30762 3.45705 3.45705 -119.955 -3.45705 0 0 701300. 2426.64 0.30 0.06 0.12 -1 -1 0.30 0.023738 0.0211169 130 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_062.v common 4.23 vpr 64.11 MiB -1 -1 0.15 20220 1 0.03 -1 -1 33720 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65644 32 32 231 199 1 140 87 17 17 289 -1 unnamed_device 25.7 MiB 0.05 758 11991 4460 6230 1301 64.1 MiB 0.08 0.00 2.48032 -74.2415 -2.48032 2.48032 0.94 0.000364643 0.00032886 0.0254374 0.0231704 28 1937 21 6.65987e+06 291594 500653. 1732.36 1.10 0.0794012 0.070111 21970 115934 -1 1711 19 952 1603 127811 29712 2.93479 2.93479 -97.5474 -2.93479 0 0 612192. 2118.31 0.26 0.05 0.11 -1 -1 0.26 0.0168571 0.014932 100 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_063.v common 4.43 vpr 64.70 MiB -1 -1 0.16 20948 1 0.03 -1 -1 33792 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66252 32 32 349 273 1 191 98 17 17 289 -1 unnamed_device 26.4 MiB 0.13 991 12698 3408 8389 901 64.7 MiB 0.11 0.00 4.55326 -107.965 -4.55326 4.55326 0.94 0.000527982 0.00047501 0.0321477 0.0293049 32 2689 23 6.65987e+06 431052 554710. 1919.41 1.06 0.104281 0.0921313 22834 132086 -1 2047 22 1423 2650 176317 42540 4.40602 4.40602 -127.214 -4.40602 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0263105 0.0233556 139 26 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_064.v common 4.11 vpr 64.18 MiB -1 -1 0.15 20148 1 0.03 -1 -1 33764 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65720 32 32 247 207 1 147 84 17 17 289 -1 unnamed_device 25.7 MiB 0.10 849 13992 4392 7270 2330 64.2 MiB 0.10 0.00 2.57564 -85.1096 -2.57564 2.57564 0.93 0.00043147 0.000394263 0.0322141 0.0292852 30 1826 19 6.65987e+06 253560 526063. 1820.29 0.91 0.0830771 0.0732732 22546 126617 -1 1582 17 867 1458 86231 20276 2.51031 2.51031 -98.3607 -2.51031 0 0 666494. 2306.21 0.30 0.04 0.12 -1 -1 0.30 0.0170887 0.0152837 104 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_065.v common 4.20 vpr 64.07 MiB -1 -1 0.16 20544 1 0.03 -1 -1 33580 -1 -1 33 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65612 30 32 278 235 1 147 95 17 17 289 -1 unnamed_device 25.5 MiB 0.16 870 16727 4543 10066 2118 64.1 MiB 0.12 0.00 2.98169 -84.6118 -2.98169 2.98169 0.96 0.000419041 0.000380615 0.0355285 0.0324078 28 1841 21 6.65987e+06 418374 500653. 1732.36 0.89 0.0921536 0.0814518 21970 115934 -1 1661 18 809 1451 96866 22479 2.62605 2.62605 -97.3403 -2.62605 0 0 612192. 2118.31 0.27 0.05 0.11 -1 -1 0.27 0.0182042 0.0162123 105 29 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_066.v common 9.25 vpr 65.00 MiB -1 -1 0.17 20764 1 0.03 -1 -1 33808 -1 -1 24 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 29 32 355 287 1 198 85 17 17 289 -1 unnamed_device 26.4 MiB 0.27 905 15151 4340 8002 2809 65.0 MiB 0.13 0.00 3.37101 -98.2294 -3.37101 3.37101 0.93 0.000524598 0.000477756 0.0437121 0.0398233 28 3180 49 6.65987e+06 304272 500653. 1732.36 5.79 0.214291 0.18732 21970 115934 -1 2311 25 1612 2502 197594 48740 4.24677 4.24677 -121.834 -4.24677 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0279351 0.0247132 138 56 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_067.v common 4.13 vpr 64.52 MiB -1 -1 0.16 20576 1 0.03 -1 -1 33652 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66072 32 32 358 289 1 175 88 17 17 289 -1 unnamed_device 26.0 MiB 0.17 1007 6133 1179 4542 412 64.5 MiB 0.06 0.00 3.5135 -109.739 -3.5135 3.5135 0.90 0.000517037 0.000471767 0.0183711 0.0168542 32 2205 22 6.65987e+06 304272 554710. 1919.41 0.93 0.0846087 0.0743861 22834 132086 -1 1931 20 1337 2042 135957 32370 3.43997 3.43997 -125.809 -3.43997 0 0 701300. 2426.64 0.29 0.06 0.12 -1 -1 0.29 0.024152 0.0215301 130 51 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_068.v common 4.53 vpr 64.68 MiB -1 -1 0.16 20528 1 0.03 -1 -1 34016 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66236 32 32 353 285 1 181 91 17 17 289 -1 unnamed_device 26.2 MiB 0.22 1113 13351 3564 7777 2010 64.7 MiB 0.12 0.00 3.63564 -112.148 -3.63564 3.63564 0.96 0.000514743 0.000468241 0.0362417 0.033087 28 2580 21 6.65987e+06 342306 500653. 1732.36 1.08 0.11201 0.0994623 21970 115934 -1 2291 22 1406 2587 181000 40335 3.64631 3.64631 -128.989 -3.64631 0 0 612192. 2118.31 0.27 0.07 0.10 -1 -1 0.27 0.0267317 0.0237203 132 48 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_069.v common 4.34 vpr 64.41 MiB -1 -1 0.15 20572 1 0.03 -1 -1 33748 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65956 32 32 276 237 1 159 80 17 17 289 -1 unnamed_device 25.8 MiB 0.27 822 12464 4139 6011 2314 64.4 MiB 0.10 0.00 3.5308 -102.471 -3.5308 3.5308 0.93 0.000427764 0.000391411 0.0330274 0.0301597 32 2163 22 6.65987e+06 202848 554710. 1919.41 0.94 0.08957 0.0790745 22834 132086 -1 1711 20 1025 1379 107074 24826 3.26497 3.26497 -110.536 -3.26497 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0201013 0.0178654 103 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_070.v common 4.26 vpr 64.38 MiB -1 -1 0.14 20808 1 0.03 -1 -1 33996 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 31 32 319 272 1 168 82 17 17 289 -1 unnamed_device 25.9 MiB 0.20 910 12008 3937 6027 2044 64.4 MiB 0.09 0.00 2.85458 -96.8905 -2.85458 2.85458 0.93 0.000420352 0.000379308 0.0316346 0.0287192 32 2232 22 6.65987e+06 240882 554710. 1919.41 0.92 0.0887482 0.0779483 22834 132086 -1 1873 21 1370 2083 159130 36977 2.80825 2.80825 -111.275 -2.80825 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0228415 0.0202591 111 60 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_071.v common 4.32 vpr 64.59 MiB -1 -1 0.16 20260 1 0.03 -1 -1 34072 -1 -1 33 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 30 32 329 273 1 166 95 17 17 289 -1 unnamed_device 26.1 MiB 0.22 917 13919 3702 7731 2486 64.6 MiB 0.11 0.00 2.72184 -81.6865 -2.72184 2.72184 0.93 0.000454834 0.000411525 0.0332609 0.0301357 32 2134 21 6.65987e+06 418374 554710. 1919.41 0.92 0.0948879 0.0834723 22834 132086 -1 1846 20 1018 1828 119292 28128 2.54119 2.54119 -91.7936 -2.54119 0 0 701300. 2426.64 0.30 0.06 0.12 -1 -1 0.30 0.0228146 0.0202042 123 52 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_072.v common 4.43 vpr 64.20 MiB -1 -1 0.15 20392 1 0.03 -1 -1 33712 -1 -1 35 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65740 28 32 277 229 1 155 95 17 17 289 -1 unnamed_device 25.9 MiB 0.12 923 14999 3716 9776 1507 64.2 MiB 0.10 0.00 3.3533 -84.4628 -3.3533 3.3533 0.95 0.000428004 0.000391016 0.0317225 0.0288968 26 2238 28 6.65987e+06 443730 477104. 1650.88 1.16 0.0973195 0.0858826 21682 110474 -1 1916 20 1103 2216 166686 37487 3.74877 3.74877 -105.521 -3.74877 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0199829 0.0176679 115 20 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_073.v common 4.36 vpr 64.23 MiB -1 -1 0.16 20252 1 0.03 -1 -1 33676 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65772 30 32 317 269 1 152 79 17 17 289 -1 unnamed_device 25.7 MiB 0.24 876 8360 2693 4247 1420 64.2 MiB 0.07 0.00 3.29355 -97.3708 -3.29355 3.29355 0.94 0.000464408 0.000423727 0.0253261 0.0231802 32 2024 23 6.65987e+06 215526 554710. 1919.41 0.96 0.0863492 0.0758428 22834 132086 -1 1848 22 1310 2294 201059 44191 2.92671 2.92671 -111.048 -2.92671 0 0 701300. 2426.64 0.28 0.07 0.13 -1 -1 0.28 0.0230467 0.0203838 108 58 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_074.v common 4.36 vpr 64.45 MiB -1 -1 0.16 20668 1 0.03 -1 -1 33524 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65996 32 32 335 282 1 184 84 17 17 289 -1 unnamed_device 26.0 MiB 0.20 1076 12528 3691 6971 1866 64.4 MiB 0.11 0.00 2.94464 -104.132 -2.94464 2.94464 0.92 0.000478569 0.000439282 0.0350928 0.0319531 28 2489 18 6.65987e+06 253560 500653. 1732.36 1.02 0.0981437 0.0868082 21970 115934 -1 2237 17 1175 1706 133543 29540 3.32391 3.32391 -129.613 -3.32391 0 0 612192. 2118.31 0.26 0.05 0.11 -1 -1 0.26 0.019909 0.0176984 120 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_075.v common 4.64 vpr 64.48 MiB -1 -1 0.16 20332 1 0.03 -1 -1 33828 -1 -1 32 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66032 31 32 293 230 1 175 95 17 17 289 -1 unnamed_device 26.0 MiB 0.09 1043 11543 3169 7474 900 64.5 MiB 0.10 0.00 3.57527 -104.665 -3.57527 3.57527 0.94 0.000452336 0.000411988 0.0267623 0.0244335 26 2660 43 6.65987e+06 405696 477104. 1650.88 1.43 0.10909 0.0961479 21682 110474 -1 2293 20 1391 2426 182538 42415 3.93902 3.93902 -124.708 -3.93902 0 0 585099. 2024.56 0.25 0.07 0.11 -1 -1 0.25 0.0219598 0.0195562 127 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_076.v common 4.86 vpr 64.61 MiB -1 -1 0.15 20696 1 0.03 -1 -1 33796 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66164 32 32 350 275 1 209 86 17 17 289 -1 unnamed_device 26.1 MiB 0.28 1218 10103 2562 6213 1328 64.6 MiB 0.11 0.00 4.10541 -132.01 -4.10541 4.10541 0.94 0.00055425 0.000506848 0.0310843 0.028456 28 3197 21 6.65987e+06 278916 500653. 1732.36 1.38 0.104985 0.0931682 21970 115934 -1 2627 23 1615 2346 183297 40463 4.31371 4.31371 -155.451 -4.31371 0 0 612192. 2118.31 0.26 0.08 0.11 -1 -1 0.26 0.0276669 0.0246201 144 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_077.v common 4.92 vpr 64.54 MiB -1 -1 0.16 20724 1 0.03 -1 -1 33784 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 385 308 1 185 96 17 17 289 -1 unnamed_device 26.3 MiB 0.33 881 11922 3030 7936 956 64.5 MiB 0.11 0.00 3.92821 -107.518 -3.92821 3.92821 0.95 0.000576944 0.000527432 0.0334269 0.0305158 28 2640 46 6.65987e+06 405696 500653. 1732.36 1.38 0.133788 0.118105 21970 115934 -1 2027 20 1110 2064 120131 30552 3.78603 3.78603 -130.049 -3.78603 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0257311 0.0229033 142 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_078.v common 4.47 vpr 64.89 MiB -1 -1 0.16 20532 1 0.03 -1 -1 33996 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 32 32 387 309 1 190 101 17 17 289 -1 unnamed_device 26.5 MiB 0.27 1143 14201 3555 9036 1610 64.9 MiB 0.13 0.00 3.25355 -109.31 -3.25355 3.25355 0.93 0.000576436 0.000525559 0.0365979 0.0332712 30 2397 23 6.65987e+06 469086 526063. 1820.29 0.97 0.110874 0.0977915 22546 126617 -1 2160 19 1097 1990 106900 25606 3.28671 3.28671 -123.766 -3.28671 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.024468 0.0218793 140 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_079.v common 4.35 vpr 64.35 MiB -1 -1 0.15 20724 1 0.03 -1 -1 33920 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65896 30 32 272 232 1 147 81 17 17 289 -1 unnamed_device 25.8 MiB 0.22 835 13556 4620 6640 2296 64.4 MiB 0.10 0.00 2.90104 -91.6576 -2.90104 2.90104 0.94 0.000427033 0.000388698 0.0344923 0.0314263 32 2018 24 6.65987e+06 240882 554710. 1919.41 0.98 0.0923349 0.0815122 22834 132086 -1 1710 20 1063 1799 133917 30462 2.51705 2.51705 -97.8856 -2.51705 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.019697 0.0175123 105 29 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_080.v common 4.26 vpr 64.63 MiB -1 -1 0.15 20688 1 0.03 -1 -1 33940 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66184 30 32 375 299 1 187 83 17 17 289 -1 unnamed_device 26.1 MiB 0.25 882 12503 2705 8987 811 64.6 MiB 0.11 0.00 3.77847 -108.414 -3.77847 3.77847 0.90 0.000514338 0.000468547 0.0386742 0.0353015 30 2270 24 6.65987e+06 266238 526063. 1820.29 0.95 0.110827 0.0981024 22546 126617 -1 1711 22 1354 2126 106713 27724 3.44203 3.44203 -122.731 -3.44203 0 0 666494. 2306.21 0.28 0.06 0.11 -1 -1 0.28 0.0259892 0.0230241 137 58 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_081.v common 5.13 vpr 64.39 MiB -1 -1 0.15 20496 1 0.03 -1 -1 33940 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65940 32 32 340 270 1 200 88 17 17 289 -1 unnamed_device 26.0 MiB 0.29 1286 10033 2525 6558 950 64.4 MiB 0.09 0.00 3.8156 -118.226 -3.8156 3.8156 0.95 0.000501463 0.00045606 0.0284562 0.0259918 26 3105 42 6.65987e+06 304272 477104. 1650.88 1.65 0.120393 0.106074 21682 110474 -1 2487 23 1805 2926 267821 55333 3.76251 3.76251 -133.109 -3.76251 0 0 585099. 2024.56 0.27 0.09 0.10 -1 -1 0.27 0.027711 0.0246566 138 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_082.v common 4.42 vpr 64.77 MiB -1 -1 0.16 20364 1 0.03 -1 -1 34004 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 31 32 340 275 1 195 91 17 17 289 -1 unnamed_device 26.1 MiB 0.36 1100 9067 2054 6281 732 64.8 MiB 0.08 0.00 4.10296 -123.19 -4.10296 4.10296 0.93 0.000514703 0.000458799 0.0238417 0.0216921 28 2657 19 6.65987e+06 354984 500653. 1732.36 1.00 0.0894301 0.0788046 21970 115934 -1 2285 20 1324 1983 140863 32587 4.29697 4.29697 -144.686 -4.29697 0 0 612192. 2118.31 0.27 0.06 0.10 -1 -1 0.27 0.023217 0.0206506 146 43 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_083.v common 5.51 vpr 64.84 MiB -1 -1 0.17 20588 1 0.03 -1 -1 33876 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 30 32 377 310 1 177 93 17 17 289 -1 unnamed_device 26.3 MiB 1.12 924 15843 4862 7882 3099 64.8 MiB 0.13 0.00 3.34201 -101.96 -3.34201 3.34201 0.93 0.000525423 0.000480329 0.0435678 0.0397328 28 2375 24 6.65987e+06 393018 500653. 1732.36 1.19 0.124116 0.110164 21970 115934 -1 2005 19 1410 2381 168628 38843 3.21031 3.21031 -116.537 -3.21031 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0238914 0.0212421 133 78 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_084.v common 4.57 vpr 64.55 MiB -1 -1 0.16 20528 1 0.03 -1 -1 33896 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66100 32 32 365 294 1 185 84 17 17 289 -1 unnamed_device 26.0 MiB 0.21 983 16371 5129 8896 2346 64.6 MiB 0.15 0.00 3.76955 -109.292 -3.76955 3.76955 0.97 0.000522664 0.000475661 0.0502952 0.0458479 32 2804 21 6.65987e+06 253560 554710. 1919.41 1.03 0.118724 0.10523 22834 132086 -1 2326 18 1533 2659 192369 45436 3.80851 3.80851 -131.034 -3.80851 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0245368 0.0218613 133 54 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_085.v common 4.77 vpr 64.64 MiB -1 -1 0.18 20464 1 0.03 -1 -1 33856 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66188 29 32 378 310 1 177 90 17 17 289 -1 unnamed_device 26.1 MiB 0.39 871 10341 2605 7142 594 64.6 MiB 0.10 0.00 3.57869 -99.9377 -3.57869 3.57869 0.98 0.000544973 0.000494875 0.0298604 0.0272567 26 2335 22 6.65987e+06 367662 477104. 1650.88 1.16 0.103705 0.0913987 21682 110474 -1 1997 22 1366 2111 149210 36145 3.14557 3.14557 -116.718 -3.14557 0 0 585099. 2024.56 0.25 0.07 0.10 -1 -1 0.25 0.0255823 0.0225838 131 79 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_086.v common 4.18 vpr 64.04 MiB -1 -1 0.14 20204 1 0.03 -1 -1 33876 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65580 32 32 243 205 1 139 79 17 17 289 -1 unnamed_device 25.7 MiB 0.10 756 12923 4307 6520 2096 64.0 MiB 0.09 0.00 2.87075 -89.3775 -2.87075 2.87075 0.95 0.000404846 0.000369112 0.0329213 0.0300362 28 1643 20 6.65987e+06 190170 500653. 1732.36 0.98 0.0853036 0.0757198 21970 115934 -1 1524 18 819 1223 87947 20885 2.56325 2.56325 -100.08 -2.56325 0 0 612192. 2118.31 0.26 0.04 0.11 -1 -1 0.26 0.017121 0.0152499 96 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_087.v common 4.43 vpr 64.59 MiB -1 -1 0.16 20700 1 0.03 -1 -1 33908 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 32 32 373 302 1 176 94 17 17 289 -1 unnamed_device 26.1 MiB 0.28 1050 9253 2058 6158 1037 64.6 MiB 0.09 0.00 3.45695 -110.861 -3.45695 3.45695 0.93 0.000530534 0.000483307 0.0254768 0.0233002 28 2405 20 6.65987e+06 380340 500653. 1732.36 1.00 0.0964612 0.0851085 21970 115934 -1 2126 20 1265 2082 148463 33625 3.74671 3.74671 -130.335 -3.74671 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0242052 0.0214918 130 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_088.v common 4.61 vpr 64.84 MiB -1 -1 0.16 20544 1 0.04 -1 -1 33688 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 397 314 1 196 84 17 17 289 -1 unnamed_device 26.5 MiB 0.28 1074 11979 3319 7350 1310 64.8 MiB 0.11 0.00 3.74961 -118.449 -3.74961 3.74961 0.97 0.0005589 0.000508428 0.0401145 0.0365061 32 2502 24 6.65987e+06 253560 554710. 1919.41 1.02 0.116911 0.103222 22834 132086 -1 2197 24 1980 3198 273333 81858 3.78583 3.78583 -140.199 -3.78583 0 0 701300. 2426.64 0.31 0.10 0.13 -1 -1 0.31 0.0303811 0.027011 147 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_089.v common 4.69 vpr 64.16 MiB -1 -1 0.15 20276 1 0.03 -1 -1 33780 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65696 32 32 269 231 1 170 83 17 17 289 -1 unnamed_device 25.8 MiB 0.22 1013 12323 3571 6806 1946 64.2 MiB 0.10 0.00 3.19629 -98.5902 -3.19629 3.19629 0.94 0.000415889 0.000378743 0.0312264 0.0285571 26 2297 33 6.65987e+06 240882 477104. 1650.88 1.40 0.101294 0.0897224 21682 110474 -1 2043 18 1145 1516 124245 28150 3.24225 3.24225 -118.26 -3.24225 0 0 585099. 2024.56 0.27 0.05 0.10 -1 -1 0.27 0.0185079 0.0165064 111 26 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_090.v common 5.92 vpr 63.90 MiB -1 -1 0.13 20356 1 0.03 -1 -1 33856 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65436 31 32 245 205 1 150 84 17 17 289 -1 unnamed_device 25.4 MiB 0.10 828 9051 2110 6405 536 63.9 MiB 0.07 0.00 3.02101 -91.2154 -3.02101 3.02101 0.94 0.000401075 0.000367204 0.0216782 0.019774 28 1877 25 6.65987e+06 266238 500653. 1732.36 2.76 0.133225 0.115302 21970 115934 -1 1706 20 1018 1688 120417 27952 2.81771 2.81771 -101.704 -2.81771 0 0 612192. 2118.31 0.27 0.05 0.11 -1 -1 0.27 0.0184208 0.0163636 106 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_091.v common 4.27 vpr 65.01 MiB -1 -1 0.15 20772 1 0.03 -1 -1 33720 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 32 32 348 274 1 211 89 17 17 289 -1 unnamed_device 26.4 MiB 0.14 1226 13157 3645 7075 2437 65.0 MiB 0.12 0.00 3.94427 -126.759 -3.94427 3.94427 0.90 0.000501343 0.000457031 0.0358432 0.0327602 28 2879 19 6.65987e+06 316950 500653. 1732.36 1.06 0.110574 0.0983986 21970 115934 -1 2428 21 1359 1840 138328 30838 3.77103 3.77103 -142.296 -3.77103 0 0 612192. 2118.31 0.26 0.06 0.10 -1 -1 0.26 0.0248891 0.0220508 144 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_092.v common 5.20 vpr 64.86 MiB -1 -1 0.16 20924 1 0.03 -1 -1 34028 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 32 32 356 289 1 202 92 17 17 289 -1 unnamed_device 26.5 MiB 0.47 1179 6509 1367 4878 264 64.9 MiB 0.07 0.00 3.93949 -123.064 -3.93949 3.93949 0.95 0.000526668 0.000480286 0.0190098 0.0174082 26 3137 32 6.65987e+06 354984 477104. 1650.88 1.57 0.0993709 0.0872153 21682 110474 -1 2564 23 1838 2827 234096 52582 4.56757 4.56757 -149.073 -4.56757 0 0 585099. 2024.56 0.26 0.09 0.10 -1 -1 0.26 0.0283294 0.0251312 151 53 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_093.v common 4.43 vpr 64.75 MiB -1 -1 0.16 20416 1 0.03 -1 -1 33756 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 32 32 349 260 1 204 100 17 17 289 -1 unnamed_device 26.1 MiB 0.06 1199 18660 5307 10782 2571 64.7 MiB 0.16 0.00 4.29287 -118.291 -4.29287 4.29287 0.94 0.000536 0.000476835 0.044945 0.0406909 32 2880 24 6.65987e+06 456408 554710. 1919.41 1.07 0.12008 0.106202 22834 132086 -1 2510 22 1754 3131 261952 57720 4.71462 4.71462 -140.982 -4.71462 0 0 701300. 2426.64 0.31 0.09 0.13 -1 -1 0.31 0.0281673 0.0251025 153 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_094.v common 4.37 vpr 64.39 MiB -1 -1 0.15 20248 1 0.03 -1 -1 33644 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65940 30 32 316 264 1 162 93 17 17 289 -1 unnamed_device 26.0 MiB 0.22 737 8283 1703 5690 890 64.4 MiB 0.07 0.00 2.60458 -77.596 -2.60458 2.60458 0.92 0.000422846 0.000381977 0.0199861 0.0181969 26 2289 24 6.65987e+06 393018 477104. 1650.88 1.14 0.0872226 0.0766822 21682 110474 -1 1872 18 1251 2084 145515 37174 2.84165 2.84165 -100.606 -2.84165 0 0 585099. 2024.56 0.25 0.06 0.09 -1 -1 0.25 0.020218 0.0178976 120 47 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_095.v common 4.10 vpr 64.21 MiB -1 -1 0.15 20328 1 0.03 -1 -1 34272 -1 -1 21 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65756 27 32 255 219 1 132 80 17 17 289 -1 unnamed_device 25.8 MiB 0.05 641 11948 4988 6313 647 64.2 MiB 0.08 0.00 2.7331 -77.2835 -2.7331 2.7331 0.95 0.000386651 0.000352579 0.0287538 0.0262054 28 1656 19 6.65987e+06 266238 500653. 1732.36 0.98 0.0810217 0.0714689 21970 115934 -1 1368 18 1015 1477 106865 25414 2.73577 2.73577 -90.7482 -2.73577 0 0 612192. 2118.31 0.26 0.05 0.11 -1 -1 0.26 0.0173513 0.0154071 97 26 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_096.v common 4.76 vpr 64.85 MiB -1 -1 0.17 20924 1 0.03 -1 -1 33872 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 421 327 1 232 90 17 17 289 -1 unnamed_device 26.7 MiB 0.18 1442 16773 4789 10056 1928 64.9 MiB 0.16 0.00 3.4163 -115.859 -3.4163 3.4163 0.94 0.000572233 0.000520475 0.0512764 0.0466484 32 3752 28 6.65987e+06 329628 554710. 1919.41 1.22 0.139885 0.123879 22834 132086 -1 3046 22 2208 3592 292704 64558 3.93103 3.93103 -139.098 -3.93103 0 0 701300. 2426.64 0.31 0.10 0.13 -1 -1 0.31 0.0309617 0.0275322 170 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_097.v common 5.30 vpr 64.88 MiB -1 -1 0.17 20448 1 0.03 -1 -1 33928 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 31 32 365 296 1 194 84 17 17 289 -1 unnamed_device 26.1 MiB 1.05 995 12345 3297 7914 1134 64.9 MiB 0.11 0.00 4.27986 -124.137 -4.27986 4.27986 0.92 0.000592252 0.000542435 0.0381356 0.0347905 32 2446 23 6.65987e+06 266238 554710. 1919.41 1.02 0.107264 0.0944841 22834 132086 -1 2140 21 1622 2516 194664 44494 4.51549 4.51549 -150.421 -4.51549 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0265821 0.0236482 150 60 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_098.v common 5.16 vpr 64.33 MiB -1 -1 0.17 20920 1 0.03 -1 -1 33932 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65872 32 32 331 280 1 175 82 17 17 289 -1 unnamed_device 25.9 MiB 1.00 888 12542 4328 5992 2222 64.3 MiB 0.11 0.00 3.4165 -105.247 -3.4165 3.4165 0.94 0.000504925 0.00045316 0.0368681 0.0334331 32 2289 20 6.65987e+06 228204 554710. 1919.41 0.98 0.0984887 0.0868132 22834 132086 -1 1883 19 1349 1944 135407 31846 3.37017 3.37017 -124.699 -3.37017 0 0 701300. 2426.64 0.29 0.06 0.12 -1 -1 0.29 0.0226848 0.0201613 126 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_099.v common 4.29 vpr 64.39 MiB -1 -1 0.16 20220 1 0.03 -1 -1 34044 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 32 32 326 263 1 176 94 17 17 289 -1 unnamed_device 25.9 MiB 0.11 1020 17773 5302 9942 2529 64.4 MiB 0.15 0.00 3.7622 -101.594 -3.7622 3.7622 0.94 0.00049749 0.0004542 0.0436759 0.0398209 32 2387 26 6.65987e+06 380340 554710. 1919.41 0.97 0.109888 0.0970845 22834 132086 -1 2004 17 1073 1697 127625 29327 3.46705 3.46705 -115.414 -3.46705 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0204295 0.018286 126 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_100.v common 4.32 vpr 64.84 MiB -1 -1 0.18 20532 1 0.03 -1 -1 33848 -1 -1 33 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 31 32 373 294 1 196 96 17 17 289 -1 unnamed_device 26.3 MiB 0.24 1052 10170 2582 6954 634 64.8 MiB 0.09 0.00 3.77855 -110.561 -3.77855 3.77855 0.93 0.000585335 0.000535318 0.0281759 0.0256222 26 2463 21 6.65987e+06 418374 477104. 1650.88 0.93 0.100451 0.0884641 21682 110474 -1 2233 23 1670 2702 179679 43075 3.73657 3.73657 -127.566 -3.73657 0 0 585099. 2024.56 0.27 0.08 0.10 -1 -1 0.27 0.0282773 0.0250986 144 46 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_101.v common 4.29 vpr 64.45 MiB -1 -1 0.16 20308 1 0.03 -1 -1 33880 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65996 30 32 325 268 1 171 93 17 17 289 -1 unnamed_device 26.0 MiB 0.15 1006 12273 2952 7730 1591 64.4 MiB 0.10 0.00 2.8321 -88.9367 -2.8321 2.8321 0.94 0.00047943 0.000437648 0.0301416 0.027567 30 2169 20 6.65987e+06 393018 526063. 1820.29 0.97 0.0920938 0.0813801 22546 126617 -1 1923 18 1003 1724 119554 25395 2.57525 2.57525 -99.9419 -2.57525 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0208723 0.0186602 124 46 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_102.v common 4.26 vpr 64.90 MiB -1 -1 0.14 20756 1 0.03 -1 -1 33896 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 350 275 1 214 88 17 17 289 -1 unnamed_device 26.3 MiB 0.16 1406 14128 3971 8464 1693 64.9 MiB 0.13 0.00 3.8505 -125.328 -3.8505 3.8505 0.90 0.000498106 0.000454446 0.0394869 0.0361454 30 2967 19 6.65987e+06 304272 526063. 1820.29 1.02 0.109821 0.097692 22546 126617 -1 2507 20 1575 2398 159070 34311 3.89311 3.89311 -141.894 -3.89311 0 0 666494. 2306.21 0.28 0.07 0.11 -1 -1 0.28 0.0244394 0.0217523 147 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_103.v common 5.08 vpr 64.54 MiB -1 -1 0.16 20632 1 0.03 -1 -1 33944 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 386 307 1 195 98 17 17 289 -1 unnamed_device 26.1 MiB 0.40 1103 14723 4237 8862 1624 64.5 MiB 0.13 0.00 3.71641 -117.038 -3.71641 3.71641 0.91 0.000557028 0.000508951 0.0386581 0.0351868 26 2815 30 6.65987e+06 431052 477104. 1650.88 1.50 0.125868 0.111379 21682 110474 -1 2309 23 1508 2332 222576 54088 3.61237 3.61237 -134.789 -3.61237 0 0 585099. 2024.56 0.27 0.09 0.10 -1 -1 0.27 0.0295486 0.0262318 143 59 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_104.v common 4.04 vpr 64.23 MiB -1 -1 0.14 20256 1 0.03 -1 -1 33928 -1 -1 17 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65768 29 32 269 229 1 129 78 17 17 289 -1 unnamed_device 25.7 MiB 0.13 631 12528 3950 6757 1821 64.2 MiB 0.08 0.00 2.88681 -85.1602 -2.88681 2.88681 0.91 0.000414632 0.000375006 0.0315063 0.0286314 32 1394 24 6.65987e+06 215526 554710. 1919.41 0.88 0.0828607 0.0727767 22834 132086 -1 1283 22 941 1336 102217 24508 2.69797 2.69797 -92.737 -2.69797 0 0 701300. 2426.64 0.29 0.05 0.12 -1 -1 0.29 0.019617 0.0172959 92 28 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_105.v common 4.33 vpr 64.41 MiB -1 -1 0.15 20320 1 0.03 -1 -1 33980 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65960 32 32 310 266 1 175 84 17 17 289 -1 unnamed_device 26.0 MiB 0.29 876 9417 2598 6408 411 64.4 MiB 0.08 0.00 3.1971 -103.02 -3.1971 3.1971 0.94 0.000466365 0.000425035 0.0257878 0.0235006 28 2256 21 6.65987e+06 253560 500653. 1732.36 0.94 0.0849631 0.0745141 21970 115934 -1 1932 21 1434 1922 143741 33763 3.12377 3.12377 -118.232 -3.12377 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0226747 0.0200695 116 55 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_106.v common 4.17 vpr 64.61 MiB -1 -1 0.15 20400 1 0.03 -1 -1 33824 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 31 32 326 261 1 177 100 17 17 289 -1 unnamed_device 26.0 MiB 0.10 900 7060 1371 5010 679 64.6 MiB 0.07 0.00 3.68941 -99.0075 -3.68941 3.68941 0.92 0.000484658 0.000441307 0.0173321 0.0158101 30 2286 23 6.65987e+06 469086 526063. 1820.29 0.96 0.0818374 0.071487 22546 126617 -1 1902 19 1108 1916 107889 25022 3.50016 3.50016 -113.917 -3.50016 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0222921 0.0198254 129 29 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_107.v common 4.24 vpr 64.25 MiB -1 -1 0.15 20348 1 0.03 -1 -1 33952 -1 -1 21 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65796 29 32 262 224 1 168 82 17 17 289 -1 unnamed_device 25.7 MiB 0.22 859 7024 1599 4884 541 64.3 MiB 0.06 0.00 3.18595 -87.8969 -3.18595 3.18595 0.94 0.000428096 0.000376801 0.0183615 0.0167456 32 2011 23 6.65987e+06 266238 554710. 1919.41 0.90 0.0717776 0.0629264 22834 132086 -1 1767 21 1190 1532 108399 26601 3.05071 3.05071 -100.627 -3.05071 0 0 701300. 2426.64 0.29 0.05 0.12 -1 -1 0.29 0.0200689 0.0178234 110 25 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_108.v common 4.24 vpr 64.23 MiB -1 -1 0.15 20624 1 0.03 -1 -1 33888 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65768 32 32 278 238 1 149 80 17 17 289 -1 unnamed_device 25.7 MiB 0.21 904 8164 2338 5284 542 64.2 MiB 0.07 0.00 2.78249 -92.7899 -2.78249 2.78249 0.94 0.000435164 0.000396491 0.0228713 0.0209237 30 1803 22 6.65987e+06 202848 526063. 1820.29 0.92 0.0783446 0.0689152 22546 126617 -1 1607 21 991 1677 90645 21837 2.56625 2.56625 -100.614 -2.56625 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.019973 0.0176601 109 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_109.v common 4.36 vpr 64.46 MiB -1 -1 0.17 20784 1 0.03 -1 -1 33688 -1 -1 35 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 31 32 373 300 1 181 98 17 17 289 -1 unnamed_device 25.8 MiB 0.26 913 10448 2494 7272 682 64.5 MiB 0.09 0.00 3.33161 -98.3149 -3.33161 3.33161 0.92 0.000540984 0.000495436 0.0274057 0.0249539 32 2055 21 6.65987e+06 443730 554710. 1919.41 0.96 0.0960676 0.0844903 22834 132086 -1 1786 17 1234 1812 113512 28145 2.98817 2.98817 -113.261 -2.98817 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0218632 0.019488 135 60 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_110.v common 4.18 vpr 64.17 MiB -1 -1 0.14 20352 1 0.03 -1 -1 33952 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65708 31 32 265 230 1 162 82 17 17 289 -1 unnamed_device 25.6 MiB 0.17 909 9694 2517 6382 795 64.2 MiB 0.08 0.00 3.0359 -98.1422 -3.0359 3.0359 0.92 0.000417116 0.000381307 0.0243682 0.0223109 32 2131 22 6.65987e+06 240882 554710. 1919.41 0.93 0.0793017 0.0700539 22834 132086 -1 1794 21 1239 1810 138601 32182 3.07377 3.07377 -113.823 -3.07377 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0201234 0.01788 108 30 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_111.v common 4.43 vpr 64.72 MiB -1 -1 0.15 20460 1 0.03 -1 -1 33688 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 32 32 349 286 1 171 95 17 17 289 -1 unnamed_device 26.1 MiB 0.27 864 16727 5149 8695 2883 64.7 MiB 0.13 0.00 2.92995 -93.2427 -2.92995 2.92995 0.92 0.000507193 0.000460413 0.0419054 0.0381268 30 2177 21 6.65987e+06 393018 526063. 1820.29 1.00 0.107954 0.0953172 22546 126617 -1 1758 20 1042 1724 106709 24700 2.72871 2.72871 -101.145 -2.72871 0 0 666494. 2306.21 0.30 0.06 0.12 -1 -1 0.30 0.0238642 0.0212901 126 54 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_112.v common 5.11 vpr 64.38 MiB -1 -1 0.17 20768 1 0.03 -1 -1 33932 -1 -1 32 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65924 31 32 396 325 1 183 95 17 17 289 -1 unnamed_device 25.9 MiB 0.95 890 13271 3516 8185 1570 64.4 MiB 0.11 0.00 3.3843 -107.194 -3.3843 3.3843 0.91 0.000570436 0.000519932 0.0356452 0.0323929 32 2140 21 6.65987e+06 405696 554710. 1919.41 0.96 0.105665 0.0930178 22834 132086 -1 1907 19 1443 2024 135440 32895 3.45123 3.45123 -129.258 -3.45123 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0244128 0.0217046 138 87 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_113.v common 4.16 vpr 64.09 MiB -1 -1 0.13 20400 1 0.03 -1 -1 33888 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65628 32 32 303 262 1 150 81 17 17 289 -1 unnamed_device 25.5 MiB 0.24 861 10581 2934 6437 1210 64.1 MiB 0.08 0.00 2.54264 -84.4966 -2.54264 2.54264 0.91 0.000462434 0.000419245 0.0278661 0.0253831 32 1979 23 6.65987e+06 215526 554710. 1919.41 0.90 0.0853296 0.0750674 22834 132086 -1 1816 20 969 1506 118613 27362 2.62851 2.62851 -101.973 -2.62851 0 0 701300. 2426.64 0.29 0.05 0.12 -1 -1 0.29 0.0206104 0.0182625 104 54 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_114.v common 4.20 vpr 64.29 MiB -1 -1 0.15 20224 1 0.03 -1 -1 33500 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65828 32 32 290 244 1 175 83 17 17 289 -1 unnamed_device 25.9 MiB 0.16 890 9083 2349 5816 918 64.3 MiB 0.08 0.00 3.26875 -101.502 -3.26875 3.26875 0.91 0.00045013 0.000408793 0.0246858 0.0225595 32 2242 26 6.65987e+06 240882 554710. 1919.41 0.93 0.0838115 0.0736116 22834 132086 -1 1793 19 1182 1818 122915 30789 2.82891 2.82891 -110.431 -2.82891 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0200161 0.0178665 115 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_115.v common 4.15 vpr 64.87 MiB -1 -1 0.16 20320 1 0.03 -1 -1 33908 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 32 32 318 257 1 194 86 17 17 289 -1 unnamed_device 26.2 MiB 0.13 1061 9347 2357 6088 902 64.9 MiB 0.08 0.00 3.8213 -118.261 -3.8213 3.8213 0.90 0.000427899 0.000386636 0.0246489 0.0223975 32 2494 22 6.65987e+06 278916 554710. 1919.41 0.92 0.0849528 0.0744116 22834 132086 -1 2166 22 1371 1958 134718 32412 3.49351 3.49351 -125.702 -3.49351 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0242346 0.0215165 130 27 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_116.v common 4.66 vpr 64.41 MiB -1 -1 0.16 20456 1 0.03 -1 -1 33776 -1 -1 28 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65960 29 32 324 268 1 168 89 17 17 289 -1 unnamed_device 26.0 MiB 0.40 981 13157 3778 7962 1417 64.4 MiB 0.11 0.00 3.80467 -100.309 -3.80467 3.80467 0.92 0.000465149 0.000423406 0.0335712 0.0305996 26 2275 29 6.65987e+06 354984 477104. 1650.88 1.18 0.102822 0.0905806 21682 110474 -1 1987 20 993 1604 109037 25950 3.20862 3.20862 -110.032 -3.20862 0 0 585099. 2024.56 0.27 0.05 0.10 -1 -1 0.27 0.0217646 0.0193075 121 49 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_117.v common 4.78 vpr 64.67 MiB -1 -1 0.17 20884 1 0.03 -1 -1 33452 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 32 32 393 312 1 213 87 17 17 289 -1 unnamed_device 26.4 MiB 0.27 1044 10071 2617 6793 661 64.7 MiB 0.10 0.00 3.94486 -124.626 -3.94486 3.94486 0.93 0.000565232 0.000516345 0.0319424 0.0291594 28 2651 30 6.65987e+06 291594 500653. 1732.36 1.33 0.116447 0.102707 21970 115934 -1 2280 22 1695 2442 165525 39833 4.08051 4.08051 -147.566 -4.08051 0 0 612192. 2118.31 0.28 0.07 0.11 -1 -1 0.28 0.0282779 0.0251127 153 62 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_118.v common 4.02 vpr 64.20 MiB -1 -1 0.15 20128 1 0.03 -1 -1 33572 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65744 31 32 229 197 1 138 81 17 17 289 -1 unnamed_device 25.8 MiB 0.09 786 10581 2950 5553 2078 64.2 MiB 0.07 0.00 2.91224 -81.8808 -2.91224 2.91224 0.91 0.000364862 0.000332669 0.0233497 0.0212279 32 1719 21 6.65987e+06 228204 554710. 1919.41 0.87 0.0715318 0.0629541 22834 132086 -1 1573 19 715 1155 88650 21277 2.77391 2.77391 -99.3858 -2.77391 0 0 701300. 2426.64 0.29 0.04 0.13 -1 -1 0.29 0.0172679 0.0153988 96 -1 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_119.v common 5.60 vpr 64.89 MiB -1 -1 0.17 20576 1 0.03 -1 -1 33960 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 32 32 412 334 1 190 97 17 17 289 -1 unnamed_device 26.5 MiB 0.48 1037 16969 5496 8942 2531 64.9 MiB 0.15 0.00 3.3113 -113.537 -3.3113 3.3113 0.94 0.000593703 0.000542141 0.047049 0.0428773 26 2923 41 6.65987e+06 418374 477104. 1650.88 1.90 0.149468 0.132246 21682 110474 -1 2357 23 1766 2573 242369 59621 4.07037 4.07037 -144.031 -4.07037 0 0 585099. 2024.56 0.25 0.09 0.10 -1 -1 0.25 0.0291136 0.0256455 144 87 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_120.v common 4.16 vpr 64.38 MiB -1 -1 0.16 20764 1 0.03 -1 -1 33796 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65924 32 32 376 318 1 156 80 17 17 289 -1 unnamed_device 26.0 MiB 0.22 785 10916 2751 7007 1158 64.4 MiB 0.09 0.00 2.8021 -99.434 -2.8021 2.8021 0.89 0.000548348 0.000496465 0.0343772 0.0313541 30 1816 19 6.65987e+06 202848 526063. 1820.29 0.89 0.0978891 0.0862311 22546 126617 -1 1552 22 1171 1689 106884 24767 2.71757 2.71757 -112.357 -2.71757 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.025023 0.0220644 115 93 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_121.v common 4.44 vpr 64.31 MiB -1 -1 0.15 20948 1 0.03 -1 -1 33888 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65852 32 32 360 293 1 179 95 17 17 289 -1 unnamed_device 25.8 MiB 0.36 1063 16295 4623 9233 2439 64.3 MiB 0.14 0.00 3.33475 -107.709 -3.33475 3.33475 0.91 0.000516217 0.000470309 0.0412749 0.0376348 32 2289 22 6.65987e+06 393018 554710. 1919.41 0.92 0.107838 0.0953427 22834 132086 -1 1967 18 987 1395 96634 22848 3.21151 3.21151 -118.206 -3.21151 0 0 701300. 2426.64 0.29 0.05 0.12 -1 -1 0.29 0.022182 0.0197476 130 57 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_122.v common 5.27 vpr 64.79 MiB -1 -1 0.16 20528 1 0.03 -1 -1 33996 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 32 32 396 299 1 236 89 17 17 289 -1 unnamed_device 26.7 MiB 0.35 1370 10781 2624 6881 1276 64.8 MiB 0.11 0.00 5.00309 -153.912 -5.00309 5.00309 0.95 0.000574305 0.000522792 0.0343626 0.0313533 28 3829 34 6.65987e+06 316950 500653. 1732.36 1.68 0.13011 0.114948 21970 115934 -1 2935 21 2033 2838 240775 52868 5.30794 5.30794 -178.122 -5.30794 0 0 612192. 2118.31 0.26 0.09 0.10 -1 -1 0.26 0.0291311 0.0259866 168 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_123.v common 4.32 vpr 64.07 MiB -1 -1 0.15 20268 1 0.03 -1 -1 33780 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65612 30 32 224 207 1 137 79 17 17 289 -1 unnamed_device 25.7 MiB 0.18 641 8022 1825 5800 397 64.1 MiB 0.06 0.00 2.57364 -80.2125 -2.57364 2.57364 0.94 0.000362528 0.000331839 0.018764 0.0171392 26 1710 21 6.65987e+06 215526 477104. 1650.88 1.04 0.0685077 0.0601986 21682 110474 -1 1533 39 1208 1576 350005 178859 2.29591 2.29591 -91.75 -2.29591 0 0 585099. 2024.56 0.25 0.14 0.10 -1 -1 0.25 0.0279239 0.0243715 86 29 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_124.v common 4.10 vpr 64.27 MiB -1 -1 0.14 20168 1 0.03 -1 -1 33824 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65808 30 32 286 239 1 134 78 17 17 289 -1 unnamed_device 25.8 MiB 0.11 633 12694 3970 6865 1859 64.3 MiB 0.09 0.00 3.13515 -90.5807 -3.13515 3.13515 0.89 0.000395827 0.000348686 0.0329434 0.029738 26 1842 28 6.65987e+06 202848 477104. 1650.88 1.07 0.0962375 0.0845804 21682 110474 -1 1517 16 886 1338 96633 23430 2.93217 2.93217 -106.78 -2.93217 0 0 585099. 2024.56 0.25 0.04 0.09 -1 -1 0.25 0.0167821 0.0149806 92 29 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_125.v common 6.36 vpr 64.33 MiB -1 -1 0.15 20364 1 0.03 -1 -1 33540 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65876 32 32 296 247 1 157 85 17 17 289 -1 unnamed_device 26.1 MiB 0.05 702 8269 1694 5881 694 64.3 MiB 0.06 0.00 2.77684 -87.1649 -2.77684 2.77684 0.91 0.000432755 0.0003941 0.0217462 0.0198546 34 2111 23 6.65987e+06 266238 585099. 2024.56 3.24 0.148036 0.128158 23122 138558 -1 1638 23 1249 2260 156096 37830 2.78877 2.78877 -102.547 -2.78877 0 0 742403. 2568.87 0.27 0.06 0.13 -1 -1 0.27 0.0227077 0.0199805 115 31 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_126.v common 6.05 vpr 64.04 MiB -1 -1 0.14 20224 1 0.03 -1 -1 33560 -1 -1 27 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65572 25 32 216 194 1 122 84 17 17 289 -1 unnamed_device 25.6 MiB 0.09 498 12894 4814 5185 2895 64.0 MiB 0.07 0.00 2.55958 -61.0518 -2.55958 2.55958 0.94 0.000348724 0.000310021 0.026147 0.0236766 32 1352 22 6.65987e+06 342306 554710. 1919.41 2.88 0.12081 0.104349 22834 132086 -1 1088 25 872 1438 103533 25638 2.89005 2.89005 -72.0533 -2.89005 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0184137 0.0161411 89 19 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_127.v common 4.43 vpr 64.61 MiB -1 -1 0.17 20764 1 0.03 -1 -1 34000 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 32 32 376 307 1 185 84 17 17 289 -1 unnamed_device 26.1 MiB 0.20 1064 10515 3150 6516 849 64.6 MiB 0.10 0.00 3.13278 -106.341 -3.13278 3.13278 0.93 0.000549656 0.000502001 0.0338392 0.0308 32 2757 23 6.65987e+06 253560 554710. 1919.41 1.00 0.106162 0.0937629 22834 132086 -1 2412 23 1616 2936 219603 50180 3.44705 3.44705 -126.916 -3.44705 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0280797 0.0249531 135 69 -1 -1 -1 -1 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_128.v common 4.57 vpr 64.57 MiB -1 -1 0.18 20628 1 0.03 -1 -1 33980 -1 -1 33 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66124 31 32 409 331 1 191 96 17 17 289 -1 unnamed_device 26.1 MiB 0.41 855 9075 1977 6598 500 64.6 MiB 0.09 0.00 3.36335 -108.866 -3.36335 3.36335 0.95 0.000564117 0.000514713 0.0263298 0.0240056 30 2208 22 6.65987e+06 418374 526063. 1820.29 0.97 0.100516 0.0882406 22546 126617 -1 1804 18 1212 1888 96038 24391 3.11991 3.11991 -118.31 -3.11991 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0234791 0.0209101 142 86 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_001.v common 21.57 vpr 65.30 MiB -1 -1 0.16 20368 1 0.03 -1 -1 33496 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66872 32 32 354 285 1 193 77 17 17 289 -1 unnamed_device 26.9 MiB 2.67 794 13769 5964 7282 523 65.3 MiB 0.10 0.00 4.4212 -127.216 -4.4212 4.4212 0.97 0.000505962 0.000460382 0.0457972 0.0417489 48 2659 38 6.95648e+06 188184 865456. 2994.66 15.32 0.327372 0.285127 28354 207349 -1 2126 35 2088 3037 426806 164156 4.40976 4.40976 -150.306 -4.40976 0 0 1.05005e+06 3633.38 0.41 0.16 0.20 -1 -1 0.41 0.0390199 0.0344593 81 47 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_002.v common 9.34 vpr 65.45 MiB -1 -1 0.17 20796 1 0.03 -1 -1 33984 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 30 32 363 293 1 187 77 17 17 289 -1 unnamed_device 27.0 MiB 2.23 838 13769 5931 7339 499 65.4 MiB 0.10 0.00 3.66177 -114.959 -3.66177 3.66177 1.00 0.000513212 0.000465643 0.0455253 0.041467 38 2737 40 6.95648e+06 217135 678818. 2348.85 3.70 0.183425 0.160853 26626 170182 -1 2177 23 2004 2832 232255 49412 4.68491 4.68491 -151.852 -4.68491 0 0 902133. 3121.57 0.35 0.08 0.16 -1 -1 0.35 0.0276753 0.0245995 80 58 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_003.v common 7.71 vpr 65.18 MiB -1 -1 0.15 20304 1 0.03 -1 -1 33900 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 32 32 299 247 1 182 79 17 17 289 -1 unnamed_device 26.6 MiB 1.26 993 14613 6027 7246 1340 65.2 MiB 0.10 0.00 3.10314 -103.161 -3.10314 3.10314 0.95 0.000431034 0.000392587 0.0407669 0.0371914 38 2505 49 6.95648e+06 217135 678818. 2348.85 3.22 0.178947 0.15801 26626 170182 -1 2081 20 1354 1783 135640 28913 3.57762 3.57762 -128.363 -3.57762 0 0 902133. 3121.57 0.33 0.06 0.15 -1 -1 0.33 0.0212944 0.0190143 76 26 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_004.v common 6.89 vpr 64.99 MiB -1 -1 0.16 20268 1 0.03 -1 -1 33608 -1 -1 19 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 29 32 308 248 1 162 80 17 17 289 -1 unnamed_device 26.4 MiB 0.39 698 10056 4228 5390 438 65.0 MiB 0.07 0.00 3.50318 -98.6968 -3.50318 3.50318 0.95 0.00045375 0.000413504 0.029333 0.026815 40 2221 26 6.95648e+06 275038 706193. 2443.58 3.09 0.143715 0.126447 26914 176310 -1 1960 21 1621 2614 321440 80259 4.12382 4.12382 -128.245 -4.12382 0 0 926341. 3205.33 0.37 0.10 0.17 -1 -1 0.37 0.0237835 0.0212107 71 25 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_005.v common 8.05 vpr 65.27 MiB -1 -1 0.15 20584 1 0.03 -1 -1 33364 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 32 32 336 268 1 172 80 17 17 289 -1 unnamed_device 26.9 MiB 0.90 764 12120 5015 6641 464 65.3 MiB 0.09 0.00 3.67069 -107.059 -3.67069 3.67069 0.98 0.000496589 0.000451725 0.0371217 0.0338394 46 2589 25 6.95648e+06 231611 828058. 2865.25 3.73 0.161191 0.141944 28066 200906 -1 1690 20 1255 2117 148020 33150 4.25256 4.25256 -129.606 -4.25256 0 0 1.01997e+06 3529.29 0.40 0.06 0.19 -1 -1 0.40 0.0231067 0.0205344 73 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_006.v common 6.46 vpr 65.41 MiB -1 -1 0.14 20368 1 0.03 -1 -1 33944 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66984 32 32 366 295 1 182 85 17 17 289 -1 unnamed_device 26.9 MiB 1.02 826 14965 6409 8202 354 65.4 MiB 0.10 0.00 2.5924 -96.4327 -2.5924 2.5924 0.93 0.000468339 0.000426823 0.0417081 0.0377571 44 2311 22 6.95648e+06 303989 787024. 2723.27 2.15 0.163344 0.143326 27778 195446 -1 1904 23 1527 2342 180717 38268 3.00882 3.00882 -117.035 -3.00882 0 0 997811. 3452.63 0.38 0.07 0.17 -1 -1 0.38 0.0258678 0.0228496 79 55 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_007.v common 10.25 vpr 64.75 MiB -1 -1 0.16 20528 1 0.03 -1 -1 34296 -1 -1 13 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 27 32 259 221 1 125 72 17 17 289 -1 unnamed_device 26.2 MiB 5.17 521 8863 3662 4622 579 64.8 MiB 0.06 0.00 2.92458 -77.4796 -2.92458 2.92458 0.96 0.000402542 0.000366696 0.0259174 0.0236817 38 1630 27 6.95648e+06 188184 678818. 2348.85 1.84 0.118701 0.103624 26626 170182 -1 1244 21 838 1289 104138 23273 3.09302 3.09302 -95.6084 -3.09302 0 0 902133. 3121.57 0.34 0.05 0.16 -1 -1 0.34 0.0197248 0.0175884 52 26 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_008.v common 8.49 vpr 65.09 MiB -1 -1 0.16 20440 1 0.03 -1 -1 33832 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 31 32 271 219 1 157 88 17 17 289 -1 unnamed_device 26.5 MiB 0.42 679 12373 3541 6497 2335 65.1 MiB 0.08 0.00 2.5154 -76.9069 -2.5154 2.5154 0.98 0.000427882 0.00038277 0.0296259 0.0269154 46 1807 26 6.95648e+06 361892 828058. 2865.25 4.65 0.161194 0.140094 28066 200906 -1 1429 21 899 1522 96442 22477 2.74702 2.74702 -95.5367 -2.74702 0 0 1.01997e+06 3529.29 0.41 0.05 0.19 -1 -1 0.41 0.0205304 0.0182523 69 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_009.v common 8.12 vpr 65.12 MiB -1 -1 0.16 20728 1 0.03 -1 -1 34048 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 31 32 317 271 1 163 74 17 17 289 -1 unnamed_device 26.6 MiB 2.12 653 8909 3566 4813 530 65.1 MiB 0.07 0.00 2.76819 -94.7229 -2.76819 2.76819 0.94 0.000442995 0.000401025 0.0286417 0.0260756 38 2241 30 6.95648e+06 159232 678818. 2348.85 2.74 0.145722 0.127292 26626 170182 -1 1679 22 1348 1898 163990 36787 3.73576 3.73576 -124.304 -3.73576 0 0 902133. 3121.57 0.34 0.07 0.16 -1 -1 0.34 0.0230158 0.0204645 66 60 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_010.v common 7.65 vpr 65.13 MiB -1 -1 0.15 20348 1 0.03 -1 -1 33576 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 32 32 298 248 1 150 74 17 17 289 -1 unnamed_device 26.6 MiB 1.10 628 8444 3417 4796 231 65.1 MiB 0.06 0.00 2.66488 -91.5447 -2.66488 2.66488 0.95 0.000444004 0.000397625 0.0268897 0.0245902 38 1885 46 6.95648e+06 144757 678818. 2348.85 3.30 0.150527 0.131428 26626 170182 -1 1504 23 1265 1808 141410 31755 3.24832 3.24832 -122.525 -3.24832 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.0233534 0.0206854 59 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_011.v common 6.88 vpr 64.98 MiB -1 -1 0.14 20376 1 0.03 -1 -1 33616 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 30 32 303 262 1 137 74 17 17 289 -1 unnamed_device 26.5 MiB 1.82 505 10614 4449 5703 462 65.0 MiB 0.07 0.00 2.79013 -84.2419 -2.79013 2.79013 0.91 0.000419709 0.000380997 0.031188 0.0284304 40 1663 27 6.95648e+06 173708 706193. 2443.58 1.90 0.136237 0.119304 26914 176310 -1 1360 22 1118 1569 126995 31404 3.53182 3.53182 -110.439 -3.53182 0 0 926341. 3205.33 0.35 0.06 0.15 -1 -1 0.35 0.0216667 0.0191708 55 58 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_012.v common 7.77 vpr 65.03 MiB -1 -1 0.15 20556 1 0.03 -1 -1 33756 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 32 32 276 237 1 160 74 17 17 289 -1 unnamed_device 26.5 MiB 1.59 619 11079 4601 6102 376 65.0 MiB 0.08 0.00 2.85923 -96.1121 -2.85923 2.85923 0.96 0.000444284 0.000396865 0.0327582 0.0298953 46 1958 36 6.95648e+06 144757 828058. 2865.25 2.83 0.143616 0.1261 28066 200906 -1 1547 24 1268 1598 146873 36111 3.16047 3.16047 -119.444 -3.16047 0 0 1.01997e+06 3529.29 0.38 0.07 0.19 -1 -1 0.38 0.0228453 0.020153 62 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_013.v common 7.88 vpr 65.09 MiB -1 -1 0.16 20572 1 0.03 -1 -1 33908 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 32 32 344 272 1 194 79 17 17 289 -1 unnamed_device 26.7 MiB 1.95 1075 12585 4301 6481 1803 65.1 MiB 0.10 0.00 3.17248 -111.603 -3.17248 3.17248 0.96 0.000505595 0.000460894 0.0403878 0.0369342 40 2757 22 6.95648e+06 217135 706193. 2443.58 2.52 0.160274 0.141055 26914 176310 -1 2496 23 2076 3092 367918 83234 3.62917 3.62917 -138.006 -3.62917 0 0 926341. 3205.33 0.35 0.11 0.17 -1 -1 0.35 0.0286759 0.0256468 83 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_014.v common 9.25 vpr 65.09 MiB -1 -1 0.16 20644 1 0.03 -1 -1 33792 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66656 32 32 363 295 1 174 86 17 17 289 -1 unnamed_device 26.7 MiB 0.90 788 9347 3776 5294 277 65.1 MiB 0.07 0.00 3.72883 -113.103 -3.72883 3.72883 0.94 0.000513805 0.000466874 0.0282767 0.0257975 38 2665 22 6.95648e+06 318465 678818. 2348.85 5.04 0.231185 0.201132 26626 170182 -1 1974 24 2010 2958 269938 57179 4.14596 4.14596 -136.121 -4.14596 0 0 902133. 3121.57 0.33 0.09 0.16 -1 -1 0.33 0.0279904 0.0246661 75 58 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_015.v common 9.12 vpr 64.76 MiB -1 -1 0.16 20296 1 0.03 -1 -1 33720 -1 -1 13 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 29 32 248 215 1 136 74 17 17 289 -1 unnamed_device 26.2 MiB 1.43 641 8444 3506 4526 412 64.8 MiB 0.06 0.00 2.60155 -73.105 -2.60155 2.60155 0.95 0.000386372 0.000352902 0.0227672 0.0208349 38 1978 22 6.95648e+06 188184 678818. 2348.85 4.49 0.152776 0.132745 26626 170182 -1 1495 18 929 1452 108040 24108 3.12117 3.12117 -99.1389 -3.12117 0 0 902133. 3121.57 0.33 0.05 0.16 -1 -1 0.33 0.017209 0.0152973 55 21 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_016.v common 8.20 vpr 65.18 MiB -1 -1 0.17 20568 1 0.03 -1 -1 33960 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 370 297 1 180 81 17 17 289 -1 unnamed_device 26.8 MiB 1.17 766 10931 4537 5938 456 65.2 MiB 0.08 0.00 2.6254 -93.1189 -2.6254 2.6254 0.97 0.000509819 0.000462554 0.0353875 0.0323076 46 2547 44 6.95648e+06 246087 828058. 2865.25 3.59 0.166868 0.146011 28066 200906 -1 1812 21 1581 2495 240587 60086 3.36557 3.36557 -124.579 -3.36557 0 0 1.01997e+06 3529.29 0.38 0.08 0.19 -1 -1 0.38 0.0258636 0.0229304 76 55 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_017.v common 9.58 vpr 65.17 MiB -1 -1 0.15 20528 1 0.03 -1 -1 33984 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 32 32 338 269 1 190 78 17 17 289 -1 unnamed_device 26.8 MiB 1.95 824 12528 4284 6507 1737 65.2 MiB 0.09 0.00 3.53151 -112.935 -3.53151 3.53151 0.92 0.000434116 0.000391781 0.0372548 0.0338472 40 2720 34 6.95648e+06 202660 706193. 2443.58 4.33 0.209309 0.181403 26914 176310 -1 2190 33 1987 2708 322477 109276 3.62621 3.62621 -137.708 -3.62621 0 0 926341. 3205.33 0.35 0.12 0.15 -1 -1 0.35 0.0342812 0.0302114 79 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_018.v common 6.56 vpr 64.80 MiB -1 -1 0.15 20296 1 0.03 -1 -1 33656 -1 -1 9 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 32 32 323 276 1 148 73 17 17 289 -1 unnamed_device 26.3 MiB 0.81 926 9193 2920 5081 1192 64.8 MiB 0.07 0.00 1.91376 -83.6912 -1.91376 1.91376 0.95 0.000471337 0.000428681 0.0310177 0.0283172 36 2292 30 6.95648e+06 130281 648988. 2245.63 2.51 0.129187 0.113459 26050 158493 -1 2029 19 1340 1943 206232 39799 2.26783 2.26783 -108.102 -2.26783 0 0 828058. 2865.25 0.33 0.07 0.15 -1 -1 0.33 0.0220899 0.0197639 57 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_019.v common 5.75 vpr 64.46 MiB -1 -1 0.14 20012 1 0.03 -1 -1 33788 -1 -1 9 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66008 30 32 222 206 1 116 71 17 17 289 -1 unnamed_device 26.1 MiB 0.39 463 7955 3253 4430 272 64.5 MiB 0.05 0.00 1.85256 -62.2361 -1.85256 1.85256 0.97 0.000354805 0.000323074 0.0212358 0.0194271 38 1701 33 6.95648e+06 130281 678818. 2348.85 2.14 0.0923927 0.0807957 26626 170182 -1 1140 19 766 979 100418 22397 2.09953 2.09953 -83.2001 -2.09953 0 0 902133. 3121.57 0.36 0.05 0.16 -1 -1 0.36 0.0160914 0.0142347 43 29 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_020.v common 14.63 vpr 64.96 MiB -1 -1 0.15 20444 1 0.03 -1 -1 33756 -1 -1 12 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 31 32 291 243 1 169 75 17 17 289 -1 unnamed_device 26.4 MiB 2.48 903 9397 3000 5648 749 65.0 MiB 0.07 0.00 3.36378 -112.731 -3.36378 3.36378 0.96 0.000438335 0.000399863 0.028059 0.0256496 38 2376 23 6.95648e+06 173708 678818. 2348.85 8.85 0.220312 0.191223 26626 170182 -1 1994 19 1468 1966 189497 37738 3.90817 3.90817 -142.643 -3.90817 0 0 902133. 3121.57 0.36 0.07 0.16 -1 -1 0.36 0.0217081 0.0193629 69 30 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_021.v common 8.59 vpr 65.25 MiB -1 -1 0.15 20280 1 0.03 -1 -1 33892 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 32 32 342 271 1 173 84 17 17 289 -1 unnamed_device 26.9 MiB 0.76 702 13992 5276 6845 1871 65.3 MiB 0.10 0.00 3.07689 -100.888 -3.07689 3.07689 0.96 0.000501776 0.000456109 0.0408979 0.0372585 40 2048 26 6.95648e+06 289514 706193. 2443.58 4.48 0.215766 0.187491 26914 176310 -1 1893 21 1595 2301 221103 47120 3.84716 3.84716 -135.648 -3.84716 0 0 926341. 3205.33 0.35 0.08 0.16 -1 -1 0.35 0.0253464 0.0225696 75 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_022.v common 20.85 vpr 65.20 MiB -1 -1 0.16 20552 1 0.03 -1 -1 33876 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66768 32 32 372 300 1 197 78 17 17 289 -1 unnamed_device 26.7 MiB 1.50 847 14022 4952 6952 2118 65.2 MiB 0.11 0.00 3.8447 -111.917 -3.8447 3.8447 0.96 0.000540041 0.000491226 0.0481057 0.0438412 50 2485 44 6.95648e+06 202660 902133. 3121.57 15.85 0.312752 0.272268 28642 213929 -1 1964 23 1537 2440 251975 61289 4.49962 4.49962 -136.003 -4.49962 0 0 1.08113e+06 3740.92 0.42 0.09 0.20 -1 -1 0.42 0.0275855 0.0244356 82 59 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_023.v common 5.83 vpr 64.45 MiB -1 -1 0.14 19920 1 0.03 -1 -1 34236 -1 -1 13 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65992 26 32 190 182 1 104 71 17 17 289 -1 unnamed_device 26.1 MiB 0.99 313 9999 4244 5041 714 64.4 MiB 0.05 0.00 1.86056 -53.5017 -1.86056 1.86056 0.95 0.000302915 0.000275742 0.0222567 0.0202513 38 1009 24 6.95648e+06 188184 678818. 2348.85 1.66 0.0906448 0.0789421 26626 170182 -1 747 20 549 650 46366 12156 1.97423 1.97423 -65.1302 -1.97423 0 0 902133. 3121.57 0.34 0.03 0.16 -1 -1 0.34 0.0140197 0.0124194 44 21 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_024.v common 6.64 vpr 65.04 MiB -1 -1 0.15 20240 1 0.03 -1 -1 33884 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 32 32 285 227 1 161 79 17 17 289 -1 unnamed_device 26.5 MiB 0.84 660 8698 2943 3730 2025 65.0 MiB 0.06 0.00 3.81446 -97.2097 -3.81446 3.81446 0.95 0.000438188 0.000398935 0.0250769 0.0228889 44 2376 31 6.95648e+06 217135 787024. 2723.27 2.48 0.118854 0.104368 27778 195446 -1 1349 20 1146 1826 118557 31629 3.74672 3.74672 -118.81 -3.74672 0 0 997811. 3452.63 0.40 0.06 0.18 -1 -1 0.40 0.0211561 0.018878 66 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_025.v common 5.19 vpr 64.54 MiB -1 -1 0.14 19984 1 0.03 -1 -1 33424 -1 -1 8 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 173 169 1 112 72 17 17 289 -1 unnamed_device 26.1 MiB 0.32 371 9012 3687 5059 266 64.5 MiB 0.05 0.00 1.77736 -57.0815 -1.77736 1.77736 0.94 0.000299327 0.000271227 0.0206464 0.0187248 36 1269 28 6.95648e+06 115805 648988. 2245.63 1.72 0.0931085 0.0811956 26050 158493 -1 969 19 657 773 67117 17095 2.01818 2.01818 -75.1981 -2.01818 0 0 828058. 2865.25 0.34 0.04 0.15 -1 -1 0.34 0.0133745 0.011852 42 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_026.v common 9.82 vpr 65.20 MiB -1 -1 0.16 20340 1 0.03 -1 -1 33924 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66760 32 32 300 245 1 165 79 17 17 289 -1 unnamed_device 26.7 MiB 1.11 957 14444 5407 7273 1764 65.2 MiB 0.10 0.00 3.51735 -103.645 -3.51735 3.51735 0.97 0.000463088 0.000416709 0.0416005 0.0379553 36 2691 41 6.95648e+06 217135 648988. 2245.63 5.40 0.164759 0.144639 26050 158493 -1 2109 19 1305 2072 208487 41234 4.07236 4.07236 -128.811 -4.07236 0 0 828058. 2865.25 0.31 0.07 0.15 -1 -1 0.31 0.0217223 0.0194517 68 21 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_027.v common 8.68 vpr 65.21 MiB -1 -1 0.16 20392 1 0.03 -1 -1 34024 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 32 32 297 233 1 170 85 17 17 289 -1 unnamed_device 26.6 MiB 0.60 712 11803 4315 5662 1826 65.2 MiB 0.08 0.00 2.4561 -81.7184 -2.4561 2.4561 0.98 0.000466846 0.000422713 0.0314689 0.0286528 44 2149 27 6.95648e+06 303989 787024. 2723.27 4.67 0.2048 0.177766 27778 195446 -1 1687 22 1403 2157 147331 34733 3.18412 3.18412 -110.815 -3.18412 0 0 997811. 3452.63 0.39 0.06 0.19 -1 -1 0.39 0.0224871 0.0198566 74 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_028.v common 9.12 vpr 65.29 MiB -1 -1 0.16 20596 1 0.03 -1 -1 33968 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66860 32 32 338 277 1 172 83 17 17 289 -1 unnamed_device 26.9 MiB 0.83 829 15203 6556 8070 577 65.3 MiB 0.11 0.00 3.60953 -107.489 -3.60953 3.60953 0.98 0.000498549 0.000452389 0.0435546 0.0396105 46 2454 23 6.95648e+06 275038 828058. 2865.25 4.84 0.207344 0.179877 28066 200906 -1 1786 21 1190 1929 126676 29656 3.92242 3.92242 -127.221 -3.92242 0 0 1.01997e+06 3529.29 0.39 0.06 0.19 -1 -1 0.39 0.0247181 0.0219779 72 47 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_029.v common 9.27 vpr 65.07 MiB -1 -1 0.14 20176 1 0.03 -1 -1 33688 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 32 32 284 241 1 141 74 17 17 289 -1 unnamed_device 26.7 MiB 1.05 564 11234 4780 6078 376 65.1 MiB 0.08 0.00 2.58755 -78.0095 -2.58755 2.58755 0.96 0.000416139 0.000378408 0.0333527 0.0304223 44 1848 28 6.95648e+06 144757 787024. 2723.27 4.91 0.195013 0.169173 27778 195446 -1 1288 22 930 1406 97879 24267 3.21722 3.21722 -109.812 -3.21722 0 0 997811. 3452.63 0.39 0.05 0.18 -1 -1 0.39 0.0213294 0.0188598 55 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_030.v common 8.21 vpr 64.65 MiB -1 -1 0.15 20172 1 0.03 -1 -1 33824 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 30 32 262 227 1 134 80 17 17 289 -1 unnamed_device 26.3 MiB 0.23 509 10400 3286 5020 2094 64.6 MiB 0.06 0.00 2.86043 -79.3085 -2.86043 2.86043 0.94 0.000387828 0.000353081 0.0258655 0.0235433 48 1164 21 6.95648e+06 260562 865456. 2994.66 4.65 0.13762 0.119312 28354 207349 -1 988 22 797 1174 95158 25461 3.25942 3.25942 -99.7984 -3.25942 0 0 1.05005e+06 3633.38 0.41 0.05 0.19 -1 -1 0.41 0.0202022 0.0179355 57 29 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_031.v common 8.78 vpr 64.82 MiB -1 -1 0.15 20144 1 0.03 -1 -1 33836 -1 -1 16 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66380 28 32 260 223 1 135 76 17 17 289 -1 unnamed_device 26.2 MiB 0.55 454 11276 4681 5830 765 64.8 MiB 0.07 0.00 2.5594 -74.4713 -2.5594 2.5594 0.94 0.000404273 0.000368589 0.0298032 0.0271871 44 1804 49 6.95648e+06 231611 787024. 2723.27 4.95 0.213706 0.185371 27778 195446 -1 1287 18 950 1456 106263 27477 3.14492 3.14492 -103.577 -3.14492 0 0 997811. 3452.63 0.38 0.05 0.18 -1 -1 0.38 0.0168537 0.0149428 57 27 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_032.v common 6.34 vpr 64.95 MiB -1 -1 0.14 20152 1 0.03 -1 -1 33620 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 32 32 253 210 1 149 74 17 17 289 -1 unnamed_device 26.6 MiB 0.51 547 8444 3421 4696 327 64.9 MiB 0.06 0.00 2.79923 -88.9447 -2.79923 2.79923 0.95 0.000411427 0.000375055 0.0238744 0.0218274 44 2021 42 6.95648e+06 144757 787024. 2723.27 2.51 0.121224 0.106139 27778 195446 -1 1310 21 1150 1618 158205 50727 2.84242 2.84242 -104.722 -2.84242 0 0 997811. 3452.63 0.38 0.06 0.18 -1 -1 0.38 0.0200139 0.0177376 58 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_033.v common 6.82 vpr 64.82 MiB -1 -1 0.16 20280 1 0.03 -1 -1 33580 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66380 31 32 271 231 1 143 82 17 17 289 -1 unnamed_device 26.4 MiB 0.44 621 10050 4109 5619 322 64.8 MiB 0.07 0.00 2.57678 -82.6789 -2.57678 2.57678 0.96 0.000425386 0.000387894 0.0256925 0.0234267 36 2437 37 6.95648e+06 275038 648988. 2245.63 3.12 0.114431 0.0998143 26050 158493 -1 1793 23 1251 1905 163388 36080 3.24657 3.24657 -114.44 -3.24657 0 0 828058. 2865.25 0.34 0.06 0.15 -1 -1 0.34 0.0211911 0.0187061 61 26 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_034.v common 13.08 vpr 65.02 MiB -1 -1 0.16 20336 1 0.03 -1 -1 33744 -1 -1 12 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66580 29 32 291 250 1 148 73 17 17 289 -1 unnamed_device 26.5 MiB 1.26 651 12993 5578 6861 554 65.0 MiB 0.09 0.00 2.4721 -85.1338 -2.4721 2.4721 0.98 0.000428884 0.000390662 0.0389915 0.035555 40 1849 19 6.95648e+06 173708 706193. 2443.58 8.49 0.234912 0.204045 26914 176310 -1 1684 19 1089 1475 125494 28475 2.48767 2.48767 -102 -2.48767 0 0 926341. 3205.33 0.35 0.05 0.16 -1 -1 0.35 0.0201664 0.0179211 61 48 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_035.v common 7.67 vpr 65.24 MiB -1 -1 0.16 20716 1 0.03 -1 -1 33784 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 32 32 367 282 1 193 85 17 17 289 -1 unnamed_device 26.7 MiB 0.90 809 13849 5162 6254 2433 65.2 MiB 0.10 0.00 3.52658 -102.24 -3.52658 3.52658 0.96 0.000519755 0.000472629 0.0423173 0.0386017 44 3191 48 6.95648e+06 303989 787024. 2723.27 3.32 0.177774 0.156856 27778 195446 -1 2008 37 1909 3126 227142 50553 4.38232 4.38232 -128.198 -4.38232 0 0 997811. 3452.63 0.38 0.10 0.18 -1 -1 0.38 0.0401831 0.0352808 84 26 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_036.v common 16.15 vpr 65.54 MiB -1 -1 0.16 20868 1 0.03 -1 -1 33588 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67108 32 32 391 311 1 184 88 17 17 289 -1 unnamed_device 27.1 MiB 0.99 750 13933 5829 7615 489 65.5 MiB 0.10 0.00 2.75098 -96.7793 -2.75098 2.75098 0.93 0.000503707 0.000453055 0.0401677 0.0361842 40 2451 33 6.95648e+06 347416 706193. 2443.58 11.89 0.314873 0.273254 26914 176310 -1 1985 21 1827 2610 242668 54304 3.51427 3.51427 -128.223 -3.51427 0 0 926341. 3205.33 0.35 0.08 0.15 -1 -1 0.35 0.0267151 0.0237583 82 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_037.v common 9.09 vpr 65.02 MiB -1 -1 0.14 20188 1 0.03 -1 -1 34048 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66580 31 32 279 237 1 153 74 17 17 289 -1 unnamed_device 26.5 MiB 2.04 804 9374 2347 6688 339 65.0 MiB 0.07 0.00 3.28867 -109.886 -3.28867 3.28867 0.97 0.000420216 0.000380751 0.0278044 0.0253548 36 2297 24 6.95648e+06 159232 648988. 2245.63 3.83 0.132448 0.11627 26050 158493 -1 1958 22 1342 1858 182168 36158 3.80182 3.80182 -138.446 -3.80182 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.0219621 0.0194709 63 30 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_038.v common 20.64 vpr 65.36 MiB -1 -1 0.16 20640 1 0.03 -1 -1 33976 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66924 31 32 370 297 1 179 79 17 17 289 -1 unnamed_device 26.9 MiB 0.86 782 13430 5739 6985 706 65.4 MiB 0.10 0.00 3.10309 -100.182 -3.10309 3.10309 0.98 0.000526954 0.0004801 0.044445 0.0405962 50 2420 45 6.95648e+06 231611 902133. 3121.57 16.32 0.334433 0.293456 28642 213929 -1 1846 25 1647 2477 238160 59072 3.40057 3.40057 -126.251 -3.40057 0 0 1.08113e+06 3740.92 0.41 0.09 0.19 -1 -1 0.41 0.0291025 0.0257599 76 57 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_039.v common 9.91 vpr 65.23 MiB -1 -1 0.16 20776 1 0.03 -1 -1 33984 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66792 31 32 377 302 1 225 79 17 17 289 -1 unnamed_device 27.0 MiB 2.33 1038 12585 5323 6818 444 65.2 MiB 0.10 0.00 4.49406 -141.673 -4.49406 4.49406 0.98 0.000517039 0.000469322 0.0425609 0.0387558 46 2957 39 6.95648e+06 231611 828058. 2865.25 4.09 0.185731 0.163026 28066 200906 -1 2411 23 2036 2961 300995 60245 5.1637 5.1637 -176.797 -5.1637 0 0 1.01997e+06 3529.29 0.39 0.09 0.19 -1 -1 0.39 0.0285877 0.0253285 97 60 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_040.v common 8.80 vpr 65.35 MiB -1 -1 0.15 20560 1 0.03 -1 -1 33836 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66920 31 32 383 305 1 204 79 17 17 289 -1 unnamed_device 26.8 MiB 2.66 864 15120 6584 7985 551 65.4 MiB 0.12 0.00 3.71649 -118.457 -3.71649 3.71649 0.97 0.000558549 0.000508632 0.0518477 0.0472871 44 2851 34 6.95648e+06 231611 787024. 2723.27 2.61 0.1662 0.147367 27778 195446 -1 2173 22 1847 2657 272045 57093 4.59311 4.59311 -151.598 -4.59311 0 0 997811. 3452.63 0.40 0.09 0.18 -1 -1 0.40 0.0280055 0.024987 88 60 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_041.v common 9.32 vpr 65.21 MiB -1 -1 0.15 20492 1 0.03 -1 -1 33836 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 31 32 352 285 1 177 85 17 17 289 -1 unnamed_device 26.8 MiB 1.16 785 14965 5244 7173 2548 65.2 MiB 0.11 0.00 3.35282 -107.681 -3.35282 3.35282 0.92 0.000490427 0.000447927 0.0431932 0.0394566 46 2190 32 6.95648e+06 318465 828058. 2865.25 4.84 0.212263 0.185253 28066 200906 -1 1680 22 1304 1952 134480 30636 3.59616 3.59616 -123.771 -3.59616 0 0 1.01997e+06 3529.29 0.39 0.06 0.19 -1 -1 0.39 0.026091 0.0232575 78 51 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_042.v common 9.56 vpr 65.02 MiB -1 -1 0.15 20432 1 0.03 -1 -1 34000 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66580 32 32 291 242 1 173 78 17 17 289 -1 unnamed_device 26.4 MiB 1.40 790 12362 4384 6114 1864 65.0 MiB 0.09 0.00 3.40898 -95.5313 -3.40898 3.40898 0.95 0.000436809 0.000397089 0.0350416 0.0319713 46 2250 23 6.95648e+06 202660 828058. 2865.25 4.77 0.180705 0.157355 28066 200906 -1 1815 25 1262 1782 143969 30449 3.72192 3.72192 -117.376 -3.72192 0 0 1.01997e+06 3529.29 0.40 0.06 0.19 -1 -1 0.40 0.0246028 0.0218097 71 24 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_043.v common 10.33 vpr 65.79 MiB -1 -1 0.17 21156 1 0.03 -1 -1 34084 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67368 32 32 457 356 1 214 86 17 17 289 -1 unnamed_device 27.2 MiB 1.62 906 16718 5469 8712 2537 65.8 MiB 0.14 0.00 3.98456 -128.516 -3.98456 3.98456 0.94 0.000618166 0.000562473 0.0577085 0.0525525 46 2932 29 6.95648e+06 318465 828058. 2865.25 5.22 0.276483 0.241363 28066 200906 -1 2129 25 1964 2826 199367 45720 4.59501 4.59501 -161.985 -4.59501 0 0 1.01997e+06 3529.29 0.40 0.09 0.19 -1 -1 0.40 0.0343355 0.0305302 93 84 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_044.v common 6.02 vpr 64.84 MiB -1 -1 0.15 20272 1 0.03 -1 -1 33512 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 31 32 261 225 1 137 78 17 17 289 -1 unnamed_device 26.5 MiB 0.86 472 10868 3817 4451 2600 64.8 MiB 0.06 0.00 2.86325 -81.3593 -2.86325 2.86325 0.96 0.000418083 0.000381468 0.0281626 0.0256297 40 1541 44 6.95648e+06 217135 706193. 2443.58 1.90 0.120461 0.104925 26914 176310 -1 1257 21 1130 1536 109204 28643 3.33287 3.33287 -104.661 -3.33287 0 0 926341. 3205.33 0.34 0.05 0.16 -1 -1 0.34 0.0191247 0.0169059 56 24 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_045.v common 7.30 vpr 65.39 MiB -1 -1 0.16 20532 1 0.03 -1 -1 33756 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66956 31 32 337 267 1 199 78 17 17 289 -1 unnamed_device 26.9 MiB 1.38 931 13856 5963 7458 435 65.4 MiB 0.11 0.00 3.94062 -123.085 -3.94062 3.94062 0.97 0.000494474 0.000451185 0.0444139 0.0405434 46 2695 28 6.95648e+06 217135 828058. 2865.25 2.50 0.139712 0.122774 28066 200906 -1 2094 22 1680 2429 211420 43063 4.32046 4.32046 -147.365 -4.32046 0 0 1.01997e+06 3529.29 0.39 0.08 0.19 -1 -1 0.39 0.0252589 0.022416 84 30 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_046.v common 18.24 vpr 65.15 MiB -1 -1 0.16 20820 1 0.03 -1 -1 34052 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66716 32 32 349 284 1 175 81 17 17 289 -1 unnamed_device 26.7 MiB 1.16 873 15656 6805 8467 384 65.2 MiB 0.12 0.00 2.70675 -94.7044 -2.70675 2.70675 0.94 0.000509809 0.000462193 0.0471021 0.042834 38 2892 30 6.95648e+06 246087 678818. 2348.85 13.72 0.277569 0.241697 26626 170182 -1 2062 20 1584 2547 210837 45013 3.32152 3.32152 -123.054 -3.32152 0 0 902133. 3121.57 0.34 0.07 0.16 -1 -1 0.34 0.0236813 0.0210346 73 50 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_047.v common 7.03 vpr 65.13 MiB -1 -1 0.13 20232 1 0.03 -1 -1 33948 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66692 32 32 291 230 1 166 80 17 17 289 -1 unnamed_device 26.6 MiB 1.14 702 9368 3293 4591 1484 65.1 MiB 0.07 0.00 3.85208 -99.8778 -3.85208 3.85208 0.94 0.00043951 0.000400224 0.0265353 0.0242087 44 2380 26 6.95648e+06 231611 787024. 2723.27 2.59 0.115795 0.101718 27778 195446 -1 1650 21 1109 1963 164260 36274 3.82682 3.82682 -122.275 -3.82682 0 0 997811. 3452.63 0.39 0.06 0.18 -1 -1 0.39 0.0220772 0.0196434 68 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_048.v common 8.79 vpr 65.43 MiB -1 -1 0.15 20800 1 0.03 -1 -1 33888 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67000 32 32 353 287 1 185 78 17 17 289 -1 unnamed_device 27.0 MiB 2.89 810 11698 4533 5470 1695 65.4 MiB 0.09 0.00 3.53145 -110.258 -3.53145 3.53145 0.97 0.000526153 0.000479929 0.0392531 0.0358492 44 2518 45 6.95648e+06 202660 787024. 2723.27 2.50 0.15361 0.134842 27778 195446 -1 1858 20 1322 1825 120235 28433 3.76266 3.76266 -127.404 -3.76266 0 0 997811. 3452.63 0.39 0.06 0.18 -1 -1 0.39 0.0241925 0.021534 78 52 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_049.v common 11.18 vpr 65.34 MiB -1 -1 0.16 20636 1 0.03 -1 -1 33892 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66908 32 32 361 291 1 179 81 17 17 289 -1 unnamed_device 27.0 MiB 1.96 761 10756 3778 5366 1612 65.3 MiB 0.08 0.00 2.6818 -92.9296 -2.6818 2.6818 0.92 0.000474061 0.000430125 0.0322351 0.0293373 38 2910 50 6.95648e+06 246087 678818. 2348.85 5.96 0.182697 0.159505 26626 170182 -1 2010 21 1525 2291 187064 41475 3.78062 3.78062 -125.124 -3.78062 0 0 902133. 3121.57 0.35 0.07 0.16 -1 -1 0.35 0.0253787 0.0226031 75 52 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_050.v common 6.93 vpr 65.27 MiB -1 -1 0.17 20588 1 0.03 -1 -1 33604 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66840 32 32 382 305 1 184 90 17 17 289 -1 unnamed_device 26.8 MiB 0.95 912 16572 6299 9066 1207 65.3 MiB 0.12 0.00 3.54708 -116.83 -3.54708 3.54708 0.98 0.000545141 0.000494245 0.0461035 0.0419516 44 2436 41 6.95648e+06 376368 787024. 2723.27 2.52 0.166961 0.146897 27778 195446 -1 1888 23 1447 2082 156388 33138 3.60616 3.60616 -129.986 -3.60616 0 0 997811. 3452.63 0.39 0.07 0.18 -1 -1 0.39 0.0275246 0.0244808 83 59 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_051.v common 7.34 vpr 65.02 MiB -1 -1 0.13 20312 1 0.03 -1 -1 33780 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 32 32 306 248 1 164 86 17 17 289 -1 unnamed_device 26.5 MiB 1.19 688 12371 4121 5342 2908 65.0 MiB 0.08 0.00 3.63883 -96.8071 -3.63883 3.63883 0.96 0.000474078 0.000433852 0.0334108 0.030538 44 2564 48 6.95648e+06 318465 787024. 2723.27 2.76 0.155256 0.136817 27778 195446 -1 1718 23 1275 2026 153607 36817 3.87346 3.87346 -124.314 -3.87346 0 0 997811. 3452.63 0.40 0.07 0.18 -1 -1 0.40 0.0237761 0.0210929 69 21 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_052.v common 9.51 vpr 65.12 MiB -1 -1 0.16 20316 1 0.03 -1 -1 33768 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 32 32 319 257 1 191 77 17 17 289 -1 unnamed_device 26.7 MiB 2.89 788 9694 3739 5087 868 65.1 MiB 0.07 0.00 3.53127 -106.029 -3.53127 3.53127 0.96 0.000490384 0.000444432 0.0306874 0.0279559 40 2478 32 6.95648e+06 188184 706193. 2443.58 3.30 0.148412 0.12956 26914 176310 -1 2070 20 1722 2270 187892 44804 4.34022 4.34022 -141.176 -4.34022 0 0 926341. 3205.33 0.33 0.07 0.16 -1 -1 0.33 0.0224912 0.0200348 79 26 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_053.v common 9.88 vpr 65.45 MiB -1 -1 0.17 20456 1 0.03 -1 -1 33748 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67024 31 32 373 299 1 194 78 17 17 289 -1 unnamed_device 26.9 MiB 1.62 861 10702 4450 5852 400 65.5 MiB 0.09 0.00 3.78527 -117.676 -3.78527 3.78527 0.96 0.000524889 0.000476992 0.0365624 0.033354 40 3187 34 6.95648e+06 217135 706193. 2443.58 4.87 0.19346 0.170567 26914 176310 -1 2666 22 2006 3219 350443 75949 4.83522 4.83522 -153.949 -4.83522 0 0 926341. 3205.33 0.36 0.11 0.16 -1 -1 0.36 0.0295029 0.0262622 85 58 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_054.v common 9.77 vpr 65.28 MiB -1 -1 0.16 20396 1 0.03 -1 -1 33936 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 32 32 387 315 1 182 77 17 17 289 -1 unnamed_device 26.9 MiB 2.68 833 11813 4936 6458 419 65.3 MiB 0.09 0.00 3.495 -109.002 -3.495 3.495 0.97 0.000518983 0.000472432 0.0420168 0.0382932 46 3112 29 6.95648e+06 188184 828058. 2865.25 3.68 0.178886 0.157483 28066 200906 -1 2119 22 1557 2596 192962 44663 3.94132 3.94132 -135.141 -3.94132 0 0 1.01997e+06 3529.29 0.39 0.07 0.18 -1 -1 0.39 0.0271592 0.0240503 76 74 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_055.v common 5.67 vpr 64.75 MiB -1 -1 0.12 20468 1 0.03 -1 -1 33432 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 32 32 251 219 1 136 82 17 17 289 -1 unnamed_device 26.2 MiB 0.27 615 12898 5353 7173 372 64.8 MiB 0.08 0.00 2.50468 -77.473 -2.50468 2.50468 0.94 0.000421125 0.00038343 0.0305718 0.0278594 38 1795 27 6.95648e+06 260562 678818. 2348.85 2.18 0.11268 0.0990723 26626 170182 -1 1523 23 1261 1912 159710 34806 3.34077 3.34077 -104.266 -3.34077 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.0202014 0.0177818 57 20 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_056.v common 7.93 vpr 65.31 MiB -1 -1 0.14 20528 1 0.03 -1 -1 33456 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 32 32 341 285 1 181 76 17 17 289 -1 unnamed_device 26.9 MiB 1.54 697 9516 3957 5288 271 65.3 MiB 0.07 0.00 3.24955 -114.323 -3.24955 3.24955 0.94 0.000467726 0.00042318 0.0314877 0.028647 40 2649 44 6.95648e+06 173708 706193. 2443.58 3.05 0.161479 0.140748 26914 176310 -1 2098 36 2440 3489 410053 116670 3.82682 3.82682 -145.22 -3.82682 0 0 926341. 3205.33 0.35 0.14 0.17 -1 -1 0.35 0.0353768 0.0311337 76 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_057.v common 10.54 vpr 65.56 MiB -1 -1 0.16 20512 1 0.03 -1 -1 33772 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67132 32 32 387 293 1 225 80 17 17 289 -1 unnamed_device 26.9 MiB 2.20 1301 12120 4478 6062 1580 65.6 MiB 0.11 0.00 4.02972 -131.543 -4.02972 4.02972 0.98 0.000516987 0.000467788 0.0413356 0.0376409 44 3466 35 6.95648e+06 231611 787024. 2723.27 4.81 0.191805 0.168855 27778 195446 -1 2774 22 2215 3389 331580 64828 4.60236 4.60236 -161.758 -4.60236 0 0 997811. 3452.63 0.41 0.11 0.18 -1 -1 0.41 0.0316621 0.0284013 97 28 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_058.v common 9.43 vpr 65.00 MiB -1 -1 0.15 20380 1 0.03 -1 -1 33796 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 32 32 340 270 1 175 81 17 17 289 -1 unnamed_device 26.7 MiB 0.91 697 15306 6645 8045 616 65.0 MiB 0.11 0.00 3.78211 -117.569 -3.78211 3.78211 0.96 0.000444484 0.000401048 0.0445329 0.0404977 44 2358 37 6.95648e+06 246087 787024. 2723.27 5.12 0.246436 0.213987 27778 195446 -1 1602 21 1423 1864 156768 34372 3.61816 3.61816 -132.124 -3.61816 0 0 997811. 3452.63 0.38 0.07 0.18 -1 -1 0.38 0.0250324 0.022372 74 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_059.v common 6.36 vpr 65.06 MiB -1 -1 0.15 20524 1 0.03 -1 -1 33540 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66620 30 32 278 235 1 143 82 17 17 289 -1 unnamed_device 26.5 MiB 0.59 641 12364 5137 6738 489 65.1 MiB 0.08 0.00 2.44995 -80.8493 -2.44995 2.44995 0.99 0.000408784 0.000371904 0.0317695 0.0289641 44 1955 28 6.95648e+06 289514 787024. 2723.27 2.38 0.135954 0.119584 27778 195446 -1 1401 21 1061 1550 109241 25294 3.04982 3.04982 -104.978 -3.04982 0 0 997811. 3452.63 0.38 0.05 0.19 -1 -1 0.38 0.0205342 0.018208 62 29 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_060.v common 8.47 vpr 65.75 MiB -1 -1 0.17 20876 1 0.03 -1 -1 33648 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67332 32 32 431 332 1 224 79 17 17 289 -1 unnamed_device 27.4 MiB 1.83 1093 14444 4851 7545 2048 65.8 MiB 0.13 0.00 4.99359 -148.63 -4.99359 4.99359 0.97 0.000596507 0.000538956 0.0547813 0.0499169 46 2979 25 6.95648e+06 217135 828058. 2865.25 3.11 0.205092 0.181526 28066 200906 -1 2376 22 1980 2932 229262 47119 5.05225 5.05225 -167.912 -5.05225 0 0 1.01997e+06 3529.29 0.39 0.09 0.19 -1 -1 0.39 0.0315611 0.0280706 95 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_061.v common 6.88 vpr 65.17 MiB -1 -1 0.15 20260 1 0.03 -1 -1 33472 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66736 32 32 336 268 1 169 87 17 17 289 -1 unnamed_device 26.8 MiB 1.27 728 9879 2703 5263 1913 65.2 MiB 0.07 0.00 3.8241 -107.1 -3.8241 3.8241 0.97 0.000492923 0.000447647 0.028177 0.0257281 40 2157 44 6.95648e+06 332941 706193. 2443.58 2.25 0.160703 0.140011 26914 176310 -1 1739 22 1394 2073 177511 38703 3.78602 3.78602 -128.672 -3.78602 0 0 926341. 3205.33 0.35 0.07 0.17 -1 -1 0.35 0.0245549 0.0217667 74 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_062.v common 6.50 vpr 64.89 MiB -1 -1 0.14 20460 1 0.03 -1 -1 33636 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 32 32 231 199 1 136 77 17 17 289 -1 unnamed_device 26.3 MiB 0.28 491 9857 3051 5184 1622 64.9 MiB 0.06 0.00 2.5344 -75.6616 -2.5344 2.5344 0.95 0.00039363 0.000359625 0.0247977 0.0225202 48 1281 38 6.95648e+06 188184 865456. 2994.66 2.86 0.125438 0.109782 28354 207349 -1 1052 21 923 1407 153829 57451 3.16047 3.16047 -93.465 -3.16047 0 0 1.05005e+06 3633.38 0.42 0.06 0.20 -1 -1 0.42 0.018073 0.0159722 51 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_063.v common 9.23 vpr 65.34 MiB -1 -1 0.15 20580 1 0.03 -1 -1 33760 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66912 32 32 349 273 1 184 88 17 17 289 -1 unnamed_device 26.9 MiB 0.56 1009 11398 4579 5536 1283 65.3 MiB 0.09 0.00 4.09207 -110.099 -4.09207 4.09207 0.95 0.000482308 0.000437833 0.0326551 0.0297521 44 2760 26 6.95648e+06 347416 787024. 2723.27 5.31 0.222055 0.193518 27778 195446 -1 2157 22 1528 2825 249874 48680 4.58521 4.58521 -134.803 -4.58521 0 0 997811. 3452.63 0.38 0.08 0.18 -1 -1 0.38 0.0250373 0.0221635 80 26 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_064.v common 9.22 vpr 64.94 MiB -1 -1 0.14 20328 1 0.03 -1 -1 33852 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 247 207 1 142 78 17 17 289 -1 unnamed_device 26.6 MiB 1.15 494 10702 3609 4745 2348 64.9 MiB 0.07 0.00 2.6034 -82.9158 -2.6034 2.6034 0.97 0.000381624 0.000345721 0.0277776 0.0253585 44 1602 25 6.95648e+06 202660 787024. 2723.27 4.75 0.168057 0.145732 27778 195446 -1 1095 24 1189 1651 99668 25241 2.95567 2.95567 -100.179 -2.95567 0 0 997811. 3452.63 0.40 0.05 0.18 -1 -1 0.40 0.0207614 0.0182668 57 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_065.v common 8.58 vpr 64.66 MiB -1 -1 0.15 20384 1 0.03 -1 -1 33756 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66216 30 32 278 235 1 144 79 17 17 289 -1 unnamed_device 26.2 MiB 0.97 563 9205 3754 5062 389 64.7 MiB 0.07 0.00 2.93563 -88.1206 -2.93563 2.93563 0.99 0.000449991 0.000411532 0.0256908 0.0235091 40 1685 21 6.95648e+06 246087 706193. 2443.58 4.27 0.158212 0.13684 26914 176310 -1 1550 21 1136 1684 151494 33344 3.14947 3.14947 -107.191 -3.14947 0 0 926341. 3205.33 0.37 0.06 0.16 -1 -1 0.37 0.0212944 0.0189171 60 29 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_066.v common 8.77 vpr 65.26 MiB -1 -1 0.17 20492 1 0.03 -1 -1 34068 -1 -1 16 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 29 32 355 287 1 186 77 17 17 289 -1 unnamed_device 26.8 MiB 1.64 837 13769 6011 7203 555 65.3 MiB 0.11 0.00 3.16908 -99.2771 -3.16908 3.16908 0.97 0.000510873 0.000467349 0.0451123 0.0412563 40 2823 25 6.95648e+06 231611 706193. 2443.58 3.70 0.168387 0.148125 26914 176310 -1 2422 21 1982 2927 278937 58854 4.19166 4.19166 -138.015 -4.19166 0 0 926341. 3205.33 0.35 0.09 0.16 -1 -1 0.35 0.0253984 0.0225842 80 56 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_067.v common 7.72 vpr 65.07 MiB -1 -1 0.15 20580 1 0.03 -1 -1 33988 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 32 32 358 289 1 173 80 17 17 289 -1 unnamed_device 26.7 MiB 1.40 606 13324 4333 6357 2634 65.1 MiB 0.09 0.00 3.91028 -109.378 -3.91028 3.91028 0.97 0.000520899 0.000475011 0.0424432 0.0387756 46 2105 36 6.95648e+06 231611 828058. 2865.25 2.83 0.177741 0.156291 28066 200906 -1 1652 37 2019 2893 206083 52759 4.18822 4.18822 -139.379 -4.18822 0 0 1.01997e+06 3529.29 0.41 0.10 0.19 -1 -1 0.41 0.0382213 0.0335725 72 51 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_068.v common 8.53 vpr 65.34 MiB -1 -1 0.15 20664 1 0.03 -1 -1 33548 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66912 32 32 353 285 1 178 78 17 17 289 -1 unnamed_device 26.9 MiB 2.11 726 13192 5553 7168 471 65.3 MiB 0.10 0.00 3.66779 -114.583 -3.66779 3.66779 0.95 0.000504891 0.000456826 0.0428815 0.0390032 46 2453 41 6.95648e+06 202660 828058. 2865.25 3.02 0.182017 0.160173 28066 200906 -1 1813 23 1325 1984 141018 32701 4.45516 4.45516 -139.816 -4.45516 0 0 1.01997e+06 3529.29 0.40 0.07 0.19 -1 -1 0.40 0.0264707 0.0235304 73 48 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_069.v common 9.12 vpr 65.03 MiB -1 -1 0.15 20480 1 0.03 -1 -1 33576 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 32 32 276 237 1 155 74 17 17 289 -1 unnamed_device 26.6 MiB 3.26 691 10459 4366 5768 325 65.0 MiB 0.07 0.00 3.30448 -104.445 -3.30448 3.30448 0.98 0.000419185 0.000382425 0.0303892 0.0277029 44 1994 46 6.95648e+06 144757 787024. 2723.27 2.50 0.137514 0.121136 27778 195446 -1 1563 20 1128 1474 105558 24349 3.74352 3.74352 -129.058 -3.74352 0 0 997811. 3452.63 0.40 0.05 0.18 -1 -1 0.40 0.020227 0.0180215 61 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_070.v common 7.49 vpr 65.08 MiB -1 -1 0.16 20648 1 0.03 -1 -1 33988 -1 -1 12 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 31 32 319 272 1 165 75 17 17 289 -1 unnamed_device 26.6 MiB 2.17 628 11925 5013 6568 344 65.1 MiB 0.09 0.00 3.15532 -100.374 -3.15532 3.15532 0.95 0.000451819 0.000410473 0.037012 0.0337624 42 2314 25 6.95648e+06 173708 744469. 2576.02 1.97 0.144073 0.126329 27202 183097 -1 1645 22 1347 1965 164420 36812 3.32487 3.32487 -123.573 -3.32487 0 0 949917. 3286.91 0.38 0.07 0.17 -1 -1 0.38 0.0236707 0.0210165 68 60 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_071.v common 6.43 vpr 65.31 MiB -1 -1 0.13 20536 1 0.03 -1 -1 33796 -1 -1 22 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 30 32 329 273 1 160 84 17 17 289 -1 unnamed_device 26.6 MiB 0.84 618 11430 3607 5327 2496 65.3 MiB 0.07 0.00 2.4971 -76.2077 -2.4971 2.4971 0.94 0.000439215 0.000402304 0.0307882 0.0279052 46 1930 32 6.95648e+06 318465 828058. 2865.25 2.30 0.146736 0.12818 28066 200906 -1 1387 20 1068 1653 108719 26519 2.85337 2.85337 -94.9484 -2.85337 0 0 1.01997e+06 3529.29 0.39 0.05 0.18 -1 -1 0.39 0.0213167 0.0189037 71 52 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_072.v common 8.20 vpr 65.07 MiB -1 -1 0.16 20256 1 0.03 -1 -1 33728 -1 -1 28 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 28 32 277 229 1 155 88 17 17 289 -1 unnamed_device 26.5 MiB 0.61 783 10813 4174 5490 1149 65.1 MiB 0.07 0.00 3.09514 -86.8271 -3.09514 3.09514 0.95 0.000409994 0.000371254 0.0252664 0.0230059 44 1843 42 6.95648e+06 405319 787024. 2723.27 4.27 0.18145 0.157121 27778 195446 -1 1539 20 974 1605 115439 23566 3.27956 3.27956 -102.872 -3.27956 0 0 997811. 3452.63 0.39 0.05 0.18 -1 -1 0.39 0.0195166 0.0172999 72 20 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_073.v common 6.16 vpr 64.90 MiB -1 -1 0.16 20204 1 0.03 -1 -1 33412 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 30 32 317 269 1 149 74 17 17 289 -1 unnamed_device 26.4 MiB 0.85 579 11234 4744 6037 453 64.9 MiB 0.08 0.00 2.79633 -89.7531 -2.79633 2.79633 0.97 0.000463286 0.000420936 0.0358388 0.032711 38 1989 30 6.95648e+06 173708 678818. 2348.85 2.01 0.148663 0.130103 26626 170182 -1 1444 23 1391 1959 134947 31908 3.12912 3.12912 -111.187 -3.12912 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.0237824 0.0209779 60 58 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_074.v common 8.44 vpr 65.26 MiB -1 -1 0.15 20620 1 0.03 -1 -1 33756 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66824 32 32 335 282 1 178 75 17 17 289 -1 unnamed_device 26.7 MiB 1.70 654 12873 4787 5987 2099 65.3 MiB 0.09 0.00 2.80395 -97.9853 -2.80395 2.80395 0.98 0.000458796 0.00041758 0.0416631 0.0379204 50 1972 35 6.95648e+06 159232 902133. 3121.57 3.29 0.162405 0.14231 28642 213929 -1 1591 21 1391 2030 142295 35044 3.51016 3.51016 -129.728 -3.51016 0 0 1.08113e+06 3740.92 0.41 0.06 0.20 -1 -1 0.41 0.0241686 0.0215449 72 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_075.v common 7.01 vpr 65.07 MiB -1 -1 0.16 20056 1 0.03 -1 -1 34056 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 31 32 293 230 1 168 87 17 17 289 -1 unnamed_device 26.5 MiB 0.47 714 12951 4459 6132 2360 65.1 MiB 0.08 0.00 3.89128 -102.001 -3.89128 3.89128 0.93 0.0004252 0.000386632 0.0319909 0.0290941 46 2348 36 6.95648e+06 347416 828058. 2865.25 3.15 0.156133 0.137132 28066 200906 -1 1574 32 1330 2242 267076 112694 3.90317 3.90317 -118.696 -3.90317 0 0 1.01997e+06 3529.29 0.41 0.11 0.18 -1 -1 0.41 0.031266 0.0275286 74 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_076.v common 8.13 vpr 65.31 MiB -1 -1 0.15 20632 1 0.03 -1 -1 33776 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 32 32 350 275 1 196 77 17 17 289 -1 unnamed_device 26.9 MiB 1.75 858 12628 5370 6844 414 65.3 MiB 0.10 0.00 3.94537 -126.254 -3.94537 3.94537 0.99 0.000479883 0.000436132 0.0438306 0.0399653 50 2876 25 6.95648e+06 188184 902133. 3121.57 2.91 0.171027 0.151007 28642 213929 -1 2343 21 1673 2455 235804 51349 4.40486 4.40486 -155.605 -4.40486 0 0 1.08113e+06 3740.92 0.42 0.08 0.20 -1 -1 0.42 0.0257669 0.0230413 82 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_077.v common 9.03 vpr 65.41 MiB -1 -1 0.15 20460 1 0.03 -1 -1 33940 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66980 32 32 385 308 1 179 88 17 17 289 -1 unnamed_device 27.0 MiB 1.40 969 16273 5452 8511 2310 65.4 MiB 0.12 0.00 3.62123 -113.1 -3.62123 3.62123 0.91 0.000557195 0.000504968 0.0482996 0.0438269 40 2673 33 6.95648e+06 347416 706193. 2443.58 4.29 0.208518 0.184806 26914 176310 -1 2301 23 1478 2450 316187 67926 4.18746 4.18746 -144.97 -4.18746 0 0 926341. 3205.33 0.36 0.10 0.16 -1 -1 0.36 0.0308272 0.0274325 80 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_078.v common 10.07 vpr 65.50 MiB -1 -1 0.16 20800 1 0.03 -1 -1 33644 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67076 32 32 387 309 1 182 87 17 17 289 -1 unnamed_device 27.1 MiB 1.03 926 12183 4866 6701 616 65.5 MiB 0.10 0.00 3.42782 -114.006 -3.42782 3.42782 0.95 0.000620455 0.000569605 0.0359793 0.0326288 46 3043 48 6.95648e+06 332941 828058. 2865.25 5.65 0.239978 0.208689 28066 200906 -1 2266 20 1605 2712 224832 45569 4.05246 4.05246 -144.058 -4.05246 0 0 1.01997e+06 3529.29 0.39 0.08 0.19 -1 -1 0.39 0.0258879 0.0230235 80 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_079.v common 6.73 vpr 64.88 MiB -1 -1 0.16 20264 1 0.03 -1 -1 34088 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 30 32 272 232 1 142 74 17 17 289 -1 unnamed_device 26.4 MiB 0.90 546 10304 3573 4673 2058 64.9 MiB 0.07 0.00 3.22376 -89.0525 -3.22376 3.22376 0.95 0.000423576 0.000372789 0.0296398 0.0270984 38 1898 25 6.95648e+06 173708 678818. 2348.85 2.56 0.131622 0.115494 26626 170182 -1 1418 23 1195 1873 148814 32243 3.13482 3.13482 -107.911 -3.13482 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.0216359 0.0192017 57 29 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_080.v common 9.69 vpr 65.47 MiB -1 -1 0.17 20488 1 0.03 -1 -1 33940 -1 -1 14 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67044 30 32 375 299 1 179 76 17 17 289 -1 unnamed_device 27.0 MiB 1.01 630 10956 4606 5679 671 65.5 MiB 0.08 0.00 3.71763 -111.147 -3.71763 3.71763 0.98 0.000515555 0.000467285 0.0390631 0.0356122 50 1913 28 6.95648e+06 202660 902133. 3121.57 5.20 0.222167 0.193475 28642 213929 -1 1583 22 1748 2463 173069 42874 4.11166 4.11166 -132.96 -4.11166 0 0 1.08113e+06 3740.92 0.42 0.07 0.20 -1 -1 0.42 0.026689 0.0237239 76 58 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_081.v common 21.10 vpr 65.30 MiB -1 -1 0.15 20436 1 0.03 -1 -1 33780 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66872 32 32 340 270 1 193 78 17 17 289 -1 unnamed_device 26.9 MiB 1.56 825 11698 4924 6293 481 65.3 MiB 0.09 0.00 4.0079 -119.402 -4.0079 4.0079 0.93 0.000490119 0.000445068 0.0367643 0.0335915 46 2814 43 6.95648e+06 202660 828058. 2865.25 16.21 0.293256 0.255618 28066 200906 -1 2001 21 1612 2584 222065 49068 4.54461 4.54461 -144.48 -4.54461 0 0 1.01997e+06 3529.29 0.38 0.08 0.19 -1 -1 0.38 0.0242805 0.0215798 80 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_082.v common 18.90 vpr 65.19 MiB -1 -1 0.16 20680 1 0.03 -1 -1 33888 -1 -1 14 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 31 32 340 275 1 187 77 17 17 289 -1 unnamed_device 26.8 MiB 2.32 876 10183 4265 5558 360 65.2 MiB 0.08 0.00 4.77836 -130.82 -4.77836 4.77836 0.97 0.000501817 0.000456682 0.0341669 0.031246 40 2497 23 6.95648e+06 202660 706193. 2443.58 13.20 0.281218 0.245097 26914 176310 -1 2270 20 1459 2160 237380 51718 4.66051 4.66051 -153.754 -4.66051 0 0 926341. 3205.33 0.36 0.08 0.17 -1 -1 0.36 0.0252021 0.022515 79 43 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_083.v common 9.46 vpr 65.31 MiB -1 -1 0.18 20652 1 0.03 -1 -1 34016 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66880 30 32 377 310 1 170 83 17 17 289 -1 unnamed_device 26.9 MiB 1.76 833 15023 6429 8046 548 65.3 MiB 0.11 0.00 3.74802 -117.262 -3.74802 3.74802 0.94 0.000520997 0.000474711 0.0458971 0.0418569 38 2617 29 6.95648e+06 303989 678818. 2348.85 4.35 0.178921 0.157754 26626 170182 -1 2104 21 1299 1926 171214 36181 4.31236 4.31236 -150.477 -4.31236 0 0 902133. 3121.57 0.35 0.07 0.16 -1 -1 0.35 0.0255461 0.0226574 74 78 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_084.v common 8.67 vpr 65.11 MiB -1 -1 0.16 20880 1 0.03 -1 -1 33808 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 32 32 365 294 1 177 77 17 17 289 -1 unnamed_device 26.7 MiB 1.21 725 9368 3271 4251 1846 65.1 MiB 0.07 0.00 3.77393 -114.341 -3.77393 3.77393 0.97 0.000513855 0.000467736 0.0323405 0.0295041 48 2651 32 6.95648e+06 188184 865456. 2994.66 4.03 0.165783 0.145525 28354 207349 -1 1915 18 1480 2425 235058 53004 4.11146 4.11146 -146.2 -4.11146 0 0 1.05005e+06 3633.38 0.41 0.08 0.19 -1 -1 0.41 0.0239784 0.021488 72 54 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_085.v common 13.18 vpr 65.37 MiB -1 -1 0.17 20800 1 0.03 -1 -1 34008 -1 -1 16 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 29 32 378 310 1 170 77 17 17 289 -1 unnamed_device 26.9 MiB 1.24 685 9531 3728 4876 927 65.4 MiB 0.08 0.00 3.26967 -101.645 -3.26967 3.26967 0.95 0.000518236 0.000471267 0.033404 0.030501 38 2686 27 6.95648e+06 231611 678818. 2348.85 8.65 0.253495 0.220352 26626 170182 -1 1895 22 1421 2087 191242 42299 3.80202 3.80202 -132.153 -3.80202 0 0 902133. 3121.57 0.35 0.07 0.15 -1 -1 0.35 0.0247672 0.0217891 73 79 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_086.v common 8.23 vpr 64.83 MiB -1 -1 0.15 20452 1 0.03 -1 -1 33768 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 243 205 1 139 74 17 17 289 -1 unnamed_device 26.3 MiB 0.98 655 9529 3529 5033 967 64.8 MiB 0.06 0.00 2.91658 -88.9369 -2.91658 2.91658 0.94 0.000387954 0.000353204 0.0261108 0.0238455 40 1765 22 6.95648e+06 144757 706193. 2443.58 4.05 0.143668 0.124375 26914 176310 -1 1612 19 1082 1614 160464 33313 3.27042 3.27042 -113.669 -3.27042 0 0 926341. 3205.33 0.34 0.06 0.16 -1 -1 0.34 0.0175577 0.0156463 53 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_087.v common 20.72 vpr 65.21 MiB -1 -1 0.15 20484 1 0.03 -1 -1 33888 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 32 32 373 302 1 174 87 17 17 289 -1 unnamed_device 26.8 MiB 3.28 821 15063 5515 6831 2717 65.2 MiB 0.11 0.00 3.91556 -109.001 -3.91556 3.91556 0.94 0.000524658 0.000478076 0.0448732 0.0409033 40 2670 45 6.95648e+06 332941 706193. 2443.58 14.00 0.31547 0.274013 26914 176310 -1 2141 30 1715 2819 406909 128640 4.2433 4.2433 -141.702 -4.2433 0 0 926341. 3205.33 0.37 0.15 0.16 -1 -1 0.37 0.0366104 0.032339 76 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_088.v common 8.62 vpr 65.60 MiB -1 -1 0.14 20400 1 0.03 -1 -1 33948 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67176 32 32 397 314 1 188 77 17 17 289 -1 unnamed_device 27.1 MiB 0.66 756 8390 2985 3891 1514 65.6 MiB 0.07 0.00 3.49708 -113.705 -3.49708 3.49708 0.92 0.000501105 0.000452266 0.0302969 0.0275665 54 2258 37 6.95648e+06 188184 949917. 3286.91 4.60 0.217163 0.187562 29506 232905 -1 1653 20 1619 2381 167214 42610 4.13672 4.13672 -142.863 -4.13672 0 0 1.17392e+06 4061.99 0.46 0.07 0.21 -1 -1 0.46 0.0257923 0.0229669 78 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_089.v common 16.41 vpr 64.94 MiB -1 -1 0.15 20336 1 0.03 -1 -1 33920 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 269 231 1 166 75 17 17 289 -1 unnamed_device 26.4 MiB 1.71 764 12399 5479 6607 313 64.9 MiB 0.08 0.00 3.28067 -100.55 -3.28067 3.28067 0.95 0.000419529 0.000382919 0.034353 0.0313479 40 2149 31 6.95648e+06 159232 706193. 2443.58 11.43 0.237478 0.206917 26914 176310 -1 1851 21 1291 1610 162419 37705 3.56242 3.56242 -124.245 -3.56242 0 0 926341. 3205.33 0.35 0.06 0.17 -1 -1 0.35 0.0201878 0.0179053 68 26 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_090.v common 8.04 vpr 64.66 MiB -1 -1 0.14 20292 1 0.03 -1 -1 33888 -1 -1 13 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66208 31 32 245 205 1 144 76 17 17 289 -1 unnamed_device 26.3 MiB 1.28 516 12236 4558 5320 2358 64.7 MiB 0.07 0.00 2.78823 -84.0827 -2.78823 2.78823 0.97 0.000389476 0.000354511 0.031779 0.0289949 40 1745 42 6.95648e+06 188184 706193. 2443.58 3.51 0.145953 0.128486 26914 176310 -1 1410 22 1296 1782 164249 39759 3.23432 3.23432 -114.789 -3.23432 0 0 926341. 3205.33 0.34 0.06 0.15 -1 -1 0.34 0.0192924 0.0170828 57 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_091.v common 7.82 vpr 65.38 MiB -1 -1 0.16 20468 1 0.03 -1 -1 33516 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66952 32 32 348 274 1 202 79 17 17 289 -1 unnamed_device 26.9 MiB 1.71 789 12416 5201 6749 466 65.4 MiB 0.10 0.00 3.75407 -122.757 -3.75407 3.75407 0.94 0.000515943 0.000469442 0.0401075 0.0365766 44 3303 43 6.95648e+06 217135 787024. 2723.27 2.69 0.158436 0.138784 27778 195446 -1 2001 20 1701 2309 175121 39473 4.30641 4.30641 -147.362 -4.30641 0 0 997811. 3452.63 0.40 0.07 0.18 -1 -1 0.40 0.0239191 0.0213191 85 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_092.v common 6.99 vpr 64.98 MiB -1 -1 0.17 20644 1 0.03 -1 -1 33960 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 356 289 1 196 78 17 17 289 -1 unnamed_device 26.6 MiB 1.18 781 11698 4906 6346 446 65.0 MiB 0.09 0.00 4.05782 -121.625 -4.05782 4.05782 0.97 0.000510136 0.00046362 0.0389118 0.0355466 46 2670 38 6.95648e+06 202660 828058. 2865.25 2.37 0.153546 0.134911 28066 200906 -1 1903 30 1859 2643 273548 80339 4.83876 4.83876 -155.206 -4.83876 0 0 1.01997e+06 3529.29 0.39 0.10 0.19 -1 -1 0.39 0.0319188 0.0281032 82 53 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_093.v common 6.21 vpr 65.37 MiB -1 -1 0.16 20772 1 0.03 -1 -1 33836 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66936 32 32 349 260 1 195 81 17 17 289 -1 unnamed_device 26.9 MiB 0.51 862 15656 6438 7724 1494 65.4 MiB 0.12 0.00 4.06272 -117.727 -4.06272 4.06272 0.95 0.000518299 0.00047184 0.0501348 0.0457198 48 2780 29 6.95648e+06 246087 865456. 2994.66 2.25 0.152064 0.134145 28354 207349 -1 2032 21 1821 2937 231206 53492 4.72236 4.72236 -149.788 -4.72236 0 0 1.05005e+06 3633.38 0.41 0.08 0.19 -1 -1 0.41 0.026663 0.023814 83 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_094.v common 8.55 vpr 65.11 MiB -1 -1 0.16 20292 1 0.03 -1 -1 33792 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 30 32 316 264 1 159 83 17 17 289 -1 unnamed_device 26.5 MiB 0.95 632 11963 3545 6042 2376 65.1 MiB 0.08 0.00 2.83043 -79.56 -2.83043 2.83043 0.97 0.000471541 0.000430225 0.0331392 0.0302174 40 1875 25 6.95648e+06 303989 706193. 2443.58 4.26 0.183196 0.158532 26914 176310 -1 1551 25 1438 2241 167582 38702 3.14017 3.14017 -105.094 -3.14017 0 0 926341. 3205.33 0.35 0.07 0.17 -1 -1 0.35 0.0251477 0.022181 69 47 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_095.v common 5.87 vpr 64.85 MiB -1 -1 0.16 20496 1 0.03 -1 -1 34288 -1 -1 14 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 27 32 255 219 1 130 73 17 17 289 -1 unnamed_device 26.3 MiB 0.55 469 8889 3709 4674 506 64.9 MiB 0.06 0.00 2.4231 -73.3364 -2.4231 2.4231 0.95 0.000395281 0.000361451 0.0249043 0.022719 36 1601 31 6.95648e+06 202660 648988. 2245.63 2.14 0.121919 0.106152 26050 158493 -1 1245 18 923 1130 89155 20671 3.02397 3.02397 -97.6379 -3.02397 0 0 828058. 2865.25 0.32 0.04 0.15 -1 -1 0.32 0.017493 0.0154293 54 26 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_096.v common 8.70 vpr 65.79 MiB -1 -1 0.17 20508 1 0.03 -1 -1 33956 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67368 32 32 421 327 1 224 80 17 17 289 -1 unnamed_device 27.3 MiB 1.39 958 15732 6790 8189 753 65.8 MiB 0.14 0.00 3.20225 -108.346 -3.20225 3.20225 0.98 0.000579778 0.000528123 0.0569393 0.0519736 54 2925 44 6.95648e+06 231611 949917. 3286.91 3.69 0.221495 0.195632 29506 232905 -1 2080 21 1927 3030 215982 51504 3.97732 3.97732 -134.461 -3.97732 0 0 1.17392e+06 4061.99 0.44 0.08 0.22 -1 -1 0.44 0.0290559 0.0258887 95 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_097.v common 14.62 vpr 65.35 MiB -1 -1 0.17 20708 1 0.03 -1 -1 33644 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66920 31 32 365 296 1 190 78 17 17 289 -1 unnamed_device 27.0 MiB 5.11 1028 12030 4049 6241 1740 65.4 MiB 0.10 0.00 4.5044 -130.841 -4.5044 4.5044 0.94 0.000508432 0.00046413 0.0400382 0.0366029 38 2769 40 6.95648e+06 217135 678818. 2348.85 6.14 0.18243 0.160754 26626 170182 -1 2351 23 1871 2816 309390 58807 4.66226 4.66226 -158.746 -4.66226 0 0 902133. 3121.57 0.35 0.10 0.16 -1 -1 0.35 0.0278066 0.0246954 82 60 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_098.v common 8.93 vpr 64.91 MiB -1 -1 0.14 20652 1 0.03 -1 -1 33768 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 331 280 1 171 75 17 17 289 -1 unnamed_device 26.4 MiB 3.17 823 12083 5247 6681 155 64.9 MiB 0.08 0.00 3.30244 -111.934 -3.30244 3.30244 0.93 0.000479407 0.000431912 0.0358148 0.0323954 38 2373 38 6.95648e+06 159232 678818. 2348.85 2.58 0.158513 0.138457 26626 170182 -1 2031 18 1284 1865 160082 32589 3.68266 3.68266 -139.508 -3.68266 0 0 902133. 3121.57 0.33 0.06 0.14 -1 -1 0.33 0.0194495 0.0172273 70 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_099.v common 8.89 vpr 64.98 MiB -1 -1 0.15 20200 1 0.03 -1 -1 33940 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 326 263 1 169 86 17 17 289 -1 unnamed_device 26.6 MiB 0.40 813 15584 6687 8396 501 65.0 MiB 0.11 0.00 3.46513 -100.524 -3.46513 3.46513 0.97 0.000477555 0.00043104 0.0419145 0.0381577 48 2166 24 6.95648e+06 318465 865456. 2994.66 5.03 0.197571 0.17232 28354 207349 -1 1801 23 1194 1866 151142 33141 3.75646 3.75646 -119.578 -3.75646 0 0 1.05005e+06 3633.38 0.42 0.07 0.19 -1 -1 0.42 0.0249821 0.0221043 74 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_100.v common 17.32 vpr 65.54 MiB -1 -1 0.18 20520 1 0.03 -1 -1 33772 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67108 31 32 373 294 1 188 88 17 17 289 -1 unnamed_device 27.0 MiB 0.90 763 15103 4963 7050 3090 65.5 MiB 0.10 0.00 3.58273 -103.837 -3.58273 3.58273 0.94 0.000507727 0.000459777 0.0428806 0.0389939 44 2483 47 6.95648e+06 361892 787024. 2723.27 13.01 0.314115 0.2734 27778 195446 -1 1683 21 1392 2037 141933 34964 4.17392 4.17392 -128.557 -4.17392 0 0 997811. 3452.63 0.38 0.06 0.18 -1 -1 0.38 0.0250438 0.0221637 83 46 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_101.v common 18.54 vpr 65.20 MiB -1 -1 0.16 20780 1 0.03 -1 -1 34124 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 30 32 325 268 1 166 78 17 17 289 -1 unnamed_device 26.6 MiB 1.13 754 11698 4895 6184 619 65.2 MiB 0.08 0.00 2.87605 -84.5862 -2.87605 2.87605 0.94 0.000466789 0.000418235 0.0353413 0.0321199 48 2015 28 6.95648e+06 231611 865456. 2994.66 14.02 0.263086 0.228756 28354 207349 -1 1762 20 1272 2023 167001 39196 4.03747 4.03747 -109.257 -4.03747 0 0 1.05005e+06 3633.38 0.41 0.07 0.20 -1 -1 0.41 0.0229518 0.0204836 68 46 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_102.v common 11.77 vpr 65.45 MiB -1 -1 0.17 20484 1 0.03 -1 -1 34016 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 32 32 350 275 1 208 78 17 17 289 -1 unnamed_device 27.0 MiB 1.68 897 11864 4930 6458 476 65.4 MiB 0.10 0.00 3.74967 -121.549 -3.74967 3.74967 0.95 0.00051308 0.000465682 0.0396053 0.0361239 52 3296 50 6.95648e+06 202660 926341. 3205.33 6.53 0.279429 0.243228 29218 227130 -1 2096 23 1956 2823 254239 56775 4.12906 4.12906 -144.621 -4.12906 0 0 1.14541e+06 3963.36 0.46 0.09 0.22 -1 -1 0.46 0.0280519 0.0250249 88 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_103.v common 21.55 vpr 65.37 MiB -1 -1 0.16 20404 1 0.03 -1 -1 33612 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 32 32 386 307 1 187 82 17 17 289 -1 unnamed_device 26.9 MiB 0.97 781 12186 5044 6563 579 65.4 MiB 0.09 0.00 3.70063 -117.46 -3.70063 3.70063 0.97 0.000578102 0.000528016 0.0404268 0.0368954 48 2477 44 6.95648e+06 260562 865456. 2994.66 17.15 0.349902 0.306037 28354 207349 -1 1870 22 1540 2100 195235 45697 3.82202 3.82202 -139.334 -3.82202 0 0 1.05005e+06 3633.38 0.38 0.08 0.18 -1 -1 0.38 0.0275394 0.0243241 80 59 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_104.v common 10.15 vpr 64.90 MiB -1 -1 0.15 20472 1 0.03 -1 -1 33680 -1 -1 12 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 29 32 269 229 1 132 73 17 17 289 -1 unnamed_device 26.5 MiB 5.14 489 8737 3610 4703 424 64.9 MiB 0.06 0.00 3.26592 -84.8562 -3.26592 3.26592 0.96 0.000414497 0.000373293 0.0256625 0.0234402 36 1479 29 6.95648e+06 173708 648988. 2245.63 1.83 0.123574 0.107715 26050 158493 -1 1217 22 839 1115 87146 19971 3.03502 3.03502 -103.018 -3.03502 0 0 828058. 2865.25 0.31 0.05 0.14 -1 -1 0.31 0.020664 0.0182692 53 28 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_105.v common 12.56 vpr 64.88 MiB -1 -1 0.16 20288 1 0.03 -1 -1 33636 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 310 266 1 163 75 17 17 289 -1 unnamed_device 26.4 MiB 1.29 700 8607 3070 3768 1769 64.9 MiB 0.06 0.00 3.06285 -104.202 -3.06285 3.06285 0.98 0.000461903 0.000419629 0.0270803 0.0247129 40 1887 28 6.95648e+06 159232 706193. 2443.58 7.93 0.240668 0.209017 26914 176310 -1 1607 20 1281 1632 156936 34804 3.88511 3.88511 -130.835 -3.88511 0 0 926341. 3205.33 0.35 0.06 0.16 -1 -1 0.35 0.0205793 0.0182653 64 55 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_106.v common 6.71 vpr 65.25 MiB -1 -1 0.16 20284 1 0.03 -1 -1 33648 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 31 32 326 261 1 172 86 17 17 289 -1 unnamed_device 26.9 MiB 1.07 749 12938 4452 6522 1964 65.2 MiB 0.09 0.00 3.43718 -100.911 -3.43718 3.43718 0.96 0.00048833 0.000437363 0.0354608 0.0323057 44 2570 35 6.95648e+06 332941 787024. 2723.27 2.23 0.152837 0.134689 27778 195446 -1 1766 22 1442 2306 198681 43500 4.12876 4.12876 -133.262 -4.12876 0 0 997811. 3452.63 0.40 0.07 0.19 -1 -1 0.40 0.0246869 0.021964 77 29 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_107.v common 8.70 vpr 65.08 MiB -1 -1 0.15 20240 1 0.03 -1 -1 33816 -1 -1 13 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 29 32 262 224 1 161 74 17 17 289 -1 unnamed_device 26.6 MiB 1.75 616 10149 4479 5234 436 65.1 MiB 0.07 0.00 3.40298 -96.0998 -3.40298 3.40298 0.96 0.000407118 0.00037155 0.0286397 0.0262302 38 2239 31 6.95648e+06 188184 678818. 2348.85 3.67 0.131707 0.115172 26626 170182 -1 1593 21 1276 1604 133073 30569 3.41492 3.41492 -114.825 -3.41492 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.0202302 0.0179409 67 25 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_108.v common 8.54 vpr 64.94 MiB -1 -1 0.14 20236 1 0.03 -1 -1 34000 -1 -1 9 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 278 238 1 144 73 17 17 289 -1 unnamed_device 26.6 MiB 1.38 694 11625 5131 6255 239 64.9 MiB 0.08 0.00 3.31656 -97.2168 -3.31656 3.31656 0.94 0.000425163 0.000387729 0.0346162 0.0315055 44 1789 21 6.95648e+06 130281 787024. 2723.27 3.85 0.168742 0.146241 27778 195446 -1 1442 21 1104 1671 118049 25710 3.28217 3.28217 -114.531 -3.28217 0 0 997811. 3452.63 0.38 0.05 0.18 -1 -1 0.38 0.0199512 0.0176602 56 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_109.v common 9.49 vpr 65.33 MiB -1 -1 0.17 20504 1 0.03 -1 -1 33844 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66900 31 32 373 300 1 174 87 17 17 289 -1 unnamed_device 26.9 MiB 1.09 659 13335 4385 6152 2798 65.3 MiB 0.09 0.00 2.96863 -94.5196 -2.96863 2.96863 0.95 0.000536339 0.000489369 0.0407063 0.0372368 46 1882 29 6.95648e+06 347416 828058. 2865.25 5.01 0.245847 0.214057 28066 200906 -1 1410 20 1541 2077 126132 31726 3.14967 3.14967 -114.325 -3.14967 0 0 1.01997e+06 3529.29 0.39 0.06 0.19 -1 -1 0.39 0.0240821 0.021397 79 60 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_110.v common 8.29 vpr 65.03 MiB -1 -1 0.16 20324 1 0.03 -1 -1 33728 -1 -1 12 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 31 32 265 230 1 159 75 17 17 289 -1 unnamed_device 26.6 MiB 2.68 786 7975 2578 3727 1670 65.0 MiB 0.06 0.00 3.35097 -102.439 -3.35097 3.35097 0.98 0.000401941 0.00036583 0.0229415 0.0209756 36 2230 45 6.95648e+06 173708 648988. 2245.63 2.28 0.125731 0.11082 26050 158493 -1 1949 28 1422 2045 284830 86212 3.49622 3.49622 -127.839 -3.49622 0 0 828058. 2865.25 0.34 0.10 0.14 -1 -1 0.34 0.0258579 0.0229173 64 30 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_111.v common 12.06 vpr 65.28 MiB -1 -1 0.16 20584 1 0.03 -1 -1 33964 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 32 32 349 286 1 165 86 17 17 289 -1 unnamed_device 26.8 MiB 1.38 853 13316 4623 6305 2388 65.3 MiB 0.10 0.00 2.5815 -91.5934 -2.5815 2.5815 0.96 0.000499398 0.000454525 0.0387352 0.0353595 36 2563 47 6.95648e+06 318465 648988. 2245.63 7.36 0.247443 0.2157 26050 158493 -1 1957 23 1417 2070 170573 35952 3.32967 3.32967 -124.083 -3.32967 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.0252132 0.0222817 71 54 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_112.v common 10.16 vpr 65.53 MiB -1 -1 0.17 20464 1 0.03 -1 -1 33824 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67100 31 32 396 325 1 176 78 17 17 289 -1 unnamed_device 27.1 MiB 1.85 675 13026 5521 6955 550 65.5 MiB 0.10 0.00 3.3685 -110.466 -3.3685 3.3685 0.97 0.000533344 0.000484848 0.0463765 0.0421344 44 2231 21 6.95648e+06 217135 787024. 2723.27 4.79 0.248022 0.216299 27778 195446 -1 1598 20 1319 1796 143907 32780 3.74072 3.74072 -134.009 -3.74072 0 0 997811. 3452.63 0.40 0.07 0.18 -1 -1 0.40 0.0259669 0.0231709 73 87 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_113.v common 7.31 vpr 64.96 MiB -1 -1 0.15 20492 1 0.03 -1 -1 33920 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66520 32 32 303 262 1 145 74 17 17 289 -1 unnamed_device 26.5 MiB 1.45 545 10149 3367 5084 1698 65.0 MiB 0.07 0.00 2.4011 -79.9159 -2.4011 2.4011 0.94 0.000446501 0.000400741 0.0307607 0.0280058 46 1451 25 6.95648e+06 144757 828058. 2865.25 2.49 0.134874 0.117715 28066 200906 -1 1109 21 940 1464 89892 22097 2.66912 2.66912 -95.8011 -2.66912 0 0 1.01997e+06 3529.29 0.40 0.05 0.19 -1 -1 0.40 0.0214335 0.0190052 57 54 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_114.v common 7.50 vpr 65.13 MiB -1 -1 0.15 20268 1 0.03 -1 -1 33724 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66692 32 32 290 244 1 170 75 17 17 289 -1 unnamed_device 26.6 MiB 1.59 702 11293 3981 5488 1824 65.1 MiB 0.08 0.00 3.29168 -104.399 -3.29168 3.29168 0.95 0.000435203 0.000396695 0.0332749 0.0304243 48 2043 47 6.95648e+06 159232 865456. 2994.66 2.53 0.154354 0.135644 28354 207349 -1 1535 23 1394 2015 146250 37873 3.58222 3.58222 -124.185 -3.58222 0 0 1.05005e+06 3633.38 0.40 0.07 0.19 -1 -1 0.40 0.0238417 0.0212015 70 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_115.v common 9.46 vpr 65.15 MiB -1 -1 0.16 20196 1 0.03 -1 -1 33560 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66712 32 32 318 257 1 188 78 17 17 289 -1 unnamed_device 26.8 MiB 2.52 714 11366 3981 5046 2339 65.1 MiB 0.08 0.00 3.45418 -103.596 -3.45418 3.45418 0.94 0.000440091 0.000400207 0.0335438 0.0305957 46 2580 38 6.95648e+06 202660 828058. 2865.25 3.59 0.163776 0.143862 28066 200906 -1 1813 23 1584 2222 163546 42548 4.11471 4.11471 -131.937 -4.11471 0 0 1.01997e+06 3529.29 0.41 0.07 0.18 -1 -1 0.41 0.0259538 0.0231127 79 27 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_116.v common 9.54 vpr 65.27 MiB -1 -1 0.17 20240 1 0.03 -1 -1 33596 -1 -1 21 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 29 32 324 268 1 162 82 17 17 289 -1 unnamed_device 26.7 MiB 1.19 683 11118 4647 5857 614 65.3 MiB 0.08 0.00 3.53128 -97.3988 -3.53128 3.53128 0.95 0.000467236 0.000426702 0.031633 0.0289063 44 2142 33 6.95648e+06 303989 787024. 2723.27 4.99 0.234249 0.203585 27778 195446 -1 1603 17 1076 1613 117718 27631 3.45706 3.45706 -111.992 -3.45706 0 0 997811. 3452.63 0.39 0.05 0.18 -1 -1 0.39 0.020444 0.0183169 71 49 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_117.v common 9.06 vpr 65.53 MiB -1 -1 0.17 20756 1 0.03 -1 -1 33736 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67104 32 32 393 312 1 206 78 17 17 289 -1 unnamed_device 27.0 MiB 1.62 818 12860 5105 6367 1388 65.5 MiB 0.10 0.00 4.0452 -128.08 -4.0452 4.0452 0.96 0.000580143 0.000528002 0.044855 0.0407795 46 2808 30 6.95648e+06 202660 828058. 2865.25 3.95 0.181936 0.159644 28066 200906 -1 2094 26 2270 3227 297533 66273 4.9578 4.9578 -161.9 -4.9578 0 0 1.01997e+06 3529.29 0.39 0.10 0.19 -1 -1 0.39 0.0320894 0.0285342 89 62 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_118.v common 7.63 vpr 64.78 MiB -1 -1 0.14 20588 1 0.03 -1 -1 33644 -1 -1 13 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 31 32 229 197 1 137 76 17 17 289 -1 unnamed_device 26.2 MiB 1.63 843 12556 3958 7345 1253 64.8 MiB 0.08 0.00 3.10444 -86.1242 -3.10444 3.10444 0.96 0.000374066 0.000343176 0.0315207 0.0288031 36 1997 24 6.95648e+06 188184 648988. 2245.63 2.71 0.1216 0.106925 26050 158493 -1 1770 17 811 1280 119417 24250 2.89862 2.89862 -105.465 -2.89862 0 0 828058. 2865.25 0.34 0.05 0.15 -1 -1 0.34 0.0163314 0.0145777 54 -1 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_119.v common 8.60 vpr 65.57 MiB -1 -1 0.16 20988 1 0.03 -1 -1 33912 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67140 32 32 412 334 1 182 89 17 17 289 -1 unnamed_device 27.1 MiB 1.08 1057 12563 3798 7083 1682 65.6 MiB 0.09 0.00 3.08489 -115.661 -3.08489 3.08489 0.91 0.000558952 0.000505812 0.0392594 0.035455 38 2585 23 6.95648e+06 361892 678818. 2348.85 4.30 0.215332 0.186454 26626 170182 -1 2159 20 1655 2175 182803 36217 3.68256 3.68256 -145.706 -3.68256 0 0 902133. 3121.57 0.33 0.07 0.16 -1 -1 0.33 0.0265843 0.0236078 81 87 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_120.v common 17.90 vpr 65.30 MiB -1 -1 0.17 20584 1 0.03 -1 -1 33760 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 32 32 376 318 1 154 74 17 17 289 -1 unnamed_device 26.7 MiB 3.29 613 12009 5237 6469 303 65.3 MiB 0.09 0.00 2.45985 -91.5837 -2.45985 2.45985 0.95 0.000505834 0.000460025 0.0421182 0.0383693 46 1829 25 6.95648e+06 144757 828058. 2865.25 11.21 0.287703 0.250862 28066 200906 -1 1425 20 1413 1972 145978 33230 3.18412 3.18412 -125.025 -3.18412 0 0 1.01997e+06 3529.29 0.40 0.06 0.19 -1 -1 0.40 0.0234905 0.0208758 61 93 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_121.v common 9.50 vpr 65.11 MiB -1 -1 0.17 20424 1 0.03 -1 -1 33976 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 32 32 360 293 1 172 86 17 17 289 -1 unnamed_device 26.7 MiB 1.14 713 11615 3844 5849 1922 65.1 MiB 0.09 0.00 3.41878 -102.821 -3.41878 3.41878 0.94 0.00050698 0.00046212 0.0339751 0.0310075 44 2464 49 6.95648e+06 318465 787024. 2723.27 5.01 0.255314 0.221292 27778 195446 -1 1679 29 1309 2007 180352 53937 3.85782 3.85782 -118.747 -3.85782 0 0 997811. 3452.63 0.39 0.07 0.18 -1 -1 0.39 0.0253763 0.0222602 75 57 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_122.v common 21.19 vpr 65.66 MiB -1 -1 0.15 20568 1 0.04 -1 -1 34048 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67236 32 32 396 299 1 224 79 17 17 289 -1 unnamed_device 27.3 MiB 1.80 932 13768 4560 6694 2514 65.7 MiB 0.11 0.00 4.78047 -141.161 -4.78047 4.78047 0.97 0.000586654 0.000535429 0.0498172 0.045456 50 2706 45 6.95648e+06 217135 902133. 3121.57 15.84 0.333124 0.290451 28642 213929 -1 2008 21 1869 2696 222730 49991 4.52605 4.52605 -154.306 -4.52605 0 0 1.08113e+06 3740.92 0.40 0.08 0.21 -1 -1 0.40 0.0280202 0.0249853 95 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_123.v common 13.33 vpr 64.70 MiB -1 -1 0.14 20508 1 0.03 -1 -1 33764 -1 -1 11 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 30 32 224 207 1 132 73 17 17 289 -1 unnamed_device 26.2 MiB 2.70 546 11169 4818 5896 455 64.7 MiB 0.06 0.00 2.26495 -77.3411 -2.26495 2.26495 0.93 0.000280742 0.000252198 0.0254594 0.0231518 44 1368 19 6.95648e+06 159232 787024. 2723.27 7.37 0.184055 0.158631 27778 195446 -1 1151 19 840 1074 93973 21159 2.24132 2.24132 -88.7244 -2.24132 0 0 997811. 3452.63 0.41 0.04 0.19 -1 -1 0.41 0.0159698 0.0141216 52 29 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_124.v common 7.40 vpr 65.05 MiB -1 -1 0.15 20248 1 0.03 -1 -1 33872 -1 -1 11 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66612 30 32 286 239 1 135 73 17 17 289 -1 unnamed_device 26.5 MiB 1.62 452 9041 2987 4074 1980 65.1 MiB 0.06 0.00 3.12499 -90.986 -3.12499 3.12499 0.94 0.00043569 0.000394009 0.0275304 0.0250484 50 1175 40 6.95648e+06 159232 902133. 3121.57 2.42 0.139291 0.121532 28642 213929 -1 912 18 883 1284 94455 25212 3.30143 3.30143 -107.559 -3.30143 0 0 1.08113e+06 3740.92 0.43 0.05 0.20 -1 -1 0.43 0.0187971 0.0167563 54 29 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_125.v common 7.86 vpr 64.85 MiB -1 -1 0.15 20396 1 0.03 -1 -1 33944 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 296 247 1 152 74 17 17 289 -1 unnamed_device 26.4 MiB 0.52 548 8754 2604 4261 1889 64.9 MiB 0.06 0.00 2.6818 -88.2907 -2.6818 2.6818 0.98 0.000437485 0.000396394 0.0278191 0.0254072 56 1624 44 6.95648e+06 144757 973134. 3367.25 3.90 0.168707 0.146873 29794 239141 -1 1140 22 1109 1758 141451 35356 2.98687 2.98687 -102.37 -2.98687 0 0 1.19926e+06 4149.71 0.43 0.06 0.22 -1 -1 0.43 0.0216469 0.0192143 59 31 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_126.v common 6.07 vpr 64.85 MiB -1 -1 0.15 20560 1 0.03 -1 -1 33628 -1 -1 18 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 25 32 216 194 1 121 75 17 17 289 -1 unnamed_device 26.3 MiB 0.51 493 9239 3830 4708 701 64.8 MiB 0.05 0.00 2.59693 -61.9274 -2.59693 2.59693 0.94 0.000341732 0.000311123 0.0220149 0.0201416 36 1644 35 6.95648e+06 260562 648988. 2245.63 2.40 0.0977435 0.0851221 26050 158493 -1 1132 22 976 1480 121215 33267 2.77222 2.77222 -84.3498 -2.77222 0 0 828058. 2865.25 0.32 0.05 0.15 -1 -1 0.32 0.0176763 0.0155799 53 19 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_127.v common 26.25 vpr 65.38 MiB -1 -1 0.17 20912 1 0.03 -1 -1 33920 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 32 32 376 307 1 178 76 17 17 289 -1 unnamed_device 27.0 MiB 1.93 724 9516 3927 5101 488 65.4 MiB 0.08 0.00 3.43255 -106.707 -3.43255 3.43255 0.97 0.000554731 0.000506637 0.0352963 0.0322683 48 2568 37 6.95648e+06 173708 865456. 2994.66 20.83 0.310698 0.27083 28354 207349 -1 2154 23 1633 2717 264190 64417 5.05302 5.05302 -151.99 -5.05302 0 0 1.05005e+06 3633.38 0.41 0.09 0.20 -1 -1 0.41 0.0283809 0.0252123 73 69 -1 -1 -1 -1 -fixed_k6_frac_2ripple_N8_22nm.xml mult_128.v common 8.35 vpr 65.55 MiB -1 -1 0.17 20508 1 0.03 -1 -1 33848 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67120 31 32 409 331 1 183 80 17 17 289 -1 unnamed_device 27.0 MiB 1.10 871 11604 4828 6355 421 65.5 MiB 0.09 0.00 3.32468 -114.951 -3.32468 3.32468 0.91 0.000539709 0.000492064 0.0395376 0.0360537 44 2417 23 6.95648e+06 246087 787024. 2723.27 3.96 0.230687 0.201446 27778 195446 -1 1899 24 1594 2103 173326 37103 4.01031 4.01031 -140.943 -4.01031 0 0 997811. 3452.63 0.38 0.07 0.17 -1 -1 0.38 0.0279818 0.0248583 80 86 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_001.v common 8.78 vpr 65.11 MiB -1 -1 0.16 20676 1 0.03 -1 -1 33916 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 32 32 354 285 1 206 79 17 17 289 -1 unnamed_device 26.7 MiB 1.85 927 13768 5859 7582 327 65.1 MiB 0.11 0.00 4.0552 -122.848 -4.0552 4.0552 0.98 0.000518695 0.000471131 0.0453262 0.0413155 38 3445 50 6.99608e+06 220735 678818. 2348.85 3.57 0.17572 0.154397 26626 170182 -1 2292 21 1855 2627 216395 45678 4.60485 4.60485 -156.518 -4.60485 0 0 902133. 3121.57 0.35 0.08 0.16 -1 -1 0.35 0.0253485 0.022532 88 47 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_002.v common 8.40 vpr 65.09 MiB -1 -1 0.16 20564 1 0.03 -1 -1 33936 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 30 32 363 293 1 224 79 17 17 289 -1 unnamed_device 26.7 MiB 1.51 1020 13261 4330 6888 2043 65.1 MiB 0.11 0.00 3.9687 -120.128 -3.9687 3.9687 0.97 0.00051526 0.000470788 0.0430438 0.0393906 46 2917 38 6.99608e+06 250167 828058. 2865.25 3.41 0.183681 0.161845 28066 200906 -1 2049 22 1958 2953 209500 50394 4.7413 4.7413 -159.34 -4.7413 0 0 1.01997e+06 3529.29 0.39 0.08 0.19 -1 -1 0.39 0.0269321 0.0239901 99 58 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_003.v common 6.59 vpr 64.95 MiB -1 -1 0.15 20212 1 0.03 -1 -1 33584 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 32 32 299 247 1 183 78 17 17 289 -1 unnamed_device 26.5 MiB 0.86 801 12528 4387 6432 1709 64.9 MiB 0.10 0.00 2.87639 -92.2213 -2.87639 2.87639 0.96 0.000441238 0.000403026 0.0362311 0.0331088 38 2589 46 6.99608e+06 206020 678818. 2348.85 2.43 0.145111 0.128329 26626 170182 -1 1910 21 1433 1921 151314 32924 3.75371 3.75371 -120.9 -3.75371 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.0223511 0.0198884 76 26 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_004.v common 9.65 vpr 65.06 MiB -1 -1 0.16 20264 1 0.03 -1 -1 33728 -1 -1 16 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66620 29 32 308 248 1 179 77 17 17 289 -1 unnamed_device 26.5 MiB 1.48 778 12139 5133 6279 727 65.1 MiB 0.09 0.00 3.42478 -96.0081 -3.42478 3.42478 0.96 0.000459511 0.000417584 0.0361517 0.032953 48 1842 24 6.99608e+06 235451 865456. 2994.66 4.80 0.183773 0.159463 28354 207349 -1 1586 20 1249 1961 125600 33624 3.79276 3.79276 -118.174 -3.79276 0 0 1.05005e+06 3633.38 0.39 0.06 0.20 -1 -1 0.39 0.0208902 0.0185405 78 25 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_005.v common 9.19 vpr 64.94 MiB -1 -1 0.15 20208 1 0.03 -1 -1 33680 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 336 268 1 194 78 17 17 289 -1 unnamed_device 26.6 MiB 2.89 836 13192 5559 7251 382 64.9 MiB 0.10 0.00 3.89209 -118.75 -3.89209 3.89209 0.97 0.000464834 0.000407376 0.0415626 0.0378914 44 3090 43 6.99608e+06 206020 787024. 2723.27 2.88 0.163209 0.144456 27778 195446 -1 2007 21 1434 2392 185106 39868 4.18515 4.18515 -138.516 -4.18515 0 0 997811. 3452.63 0.36 0.07 0.18 -1 -1 0.36 0.0238176 0.0212645 81 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_006.v common 12.76 vpr 65.42 MiB -1 -1 0.17 20572 1 0.03 -1 -1 33644 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66988 32 32 366 295 1 221 81 17 17 289 -1 unnamed_device 26.9 MiB 3.23 908 13206 3715 7987 1504 65.4 MiB 0.11 0.00 2.79566 -97.2249 -2.79566 2.79566 0.99 0.000485229 0.00044138 0.0416089 0.0377994 50 2472 35 6.99608e+06 250167 902133. 3121.57 6.04 0.279657 0.243745 28642 213929 -1 1935 20 1796 2774 219808 52792 3.11121 3.11121 -119.386 -3.11121 0 0 1.08113e+06 3740.92 0.40 0.08 0.20 -1 -1 0.40 0.0250863 0.0222623 97 55 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_007.v common 8.73 vpr 64.59 MiB -1 -1 0.15 20320 1 0.03 -1 -1 34256 -1 -1 15 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 27 32 259 221 1 154 74 17 17 289 -1 unnamed_device 26.2 MiB 1.74 588 9529 4152 4821 556 64.6 MiB 0.06 0.00 3.25142 -90.777 -3.25142 3.25142 0.94 0.000388824 0.000356427 0.0258349 0.0235769 38 2099 42 6.99608e+06 220735 678818. 2348.85 3.78 0.131326 0.114365 26626 170182 -1 1499 21 1190 1763 137447 30978 3.86496 3.86496 -120.685 -3.86496 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.0188932 0.0166943 66 26 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_008.v common 8.67 vpr 64.79 MiB -1 -1 0.16 20184 1 0.03 -1 -1 33692 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 31 32 271 219 1 157 88 17 17 289 -1 unnamed_device 26.3 MiB 0.38 644 11788 4331 5937 1520 64.8 MiB 0.07 0.00 2.36085 -72.6768 -2.36085 2.36085 0.94 0.000415307 0.00037554 0.0274217 0.0249478 46 1848 37 6.99608e+06 367892 828058. 2865.25 4.92 0.175423 0.15216 28066 200906 -1 1423 22 1187 1952 133496 33016 2.74432 2.74432 -90.805 -2.74432 0 0 1.01997e+06 3529.29 0.42 0.06 0.19 -1 -1 0.42 0.0216109 0.0191651 69 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_009.v common 9.45 vpr 65.08 MiB -1 -1 0.16 20248 1 0.03 -1 -1 33792 -1 -1 14 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66644 31 32 317 271 1 204 77 17 17 289 -1 unnamed_device 26.7 MiB 1.02 859 10672 3444 5262 1966 65.1 MiB 0.08 0.00 2.73924 -97.2893 -2.73924 2.73924 0.95 0.000477972 0.00043075 0.0332903 0.0304084 44 2672 35 6.99608e+06 206020 787024. 2723.27 5.07 0.192673 0.167095 27778 195446 -1 1769 21 1476 1975 140203 32617 3.21651 3.21651 -119.635 -3.21651 0 0 997811. 3452.63 0.38 0.06 0.18 -1 -1 0.38 0.0227556 0.0202168 87 60 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_010.v common 9.02 vpr 64.71 MiB -1 -1 0.15 20360 1 0.03 -1 -1 33708 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 32 32 298 248 1 181 77 17 17 289 -1 unnamed_device 26.2 MiB 0.99 873 12791 5436 7046 309 64.7 MiB 0.09 0.00 3.18112 -113.032 -3.18112 3.18112 0.95 0.000447949 0.00040805 0.0375582 0.0342656 44 2173 24 6.99608e+06 191304 787024. 2723.27 4.68 0.188644 0.164862 27778 195446 -1 1823 18 1292 1648 147943 36048 3.49406 3.49406 -135.036 -3.49406 0 0 997811. 3452.63 0.39 0.06 0.18 -1 -1 0.39 0.0200279 0.0179253 75 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_011.v common 6.88 vpr 64.96 MiB -1 -1 0.16 20624 1 0.03 -1 -1 33708 -1 -1 14 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 30 32 303 262 1 188 76 17 17 289 -1 unnamed_device 26.4 MiB 0.86 821 11436 4748 6325 363 65.0 MiB 0.09 0.00 3.18013 -104.101 -3.18013 3.18013 0.95 0.000448626 0.000409179 0.0335646 0.0306358 38 2599 38 6.99608e+06 206020 678818. 2348.85 2.75 0.151499 0.133033 26626 170182 -1 1945 17 1419 1923 142730 31005 4.0848 4.0848 -130.385 -4.0848 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.019075 0.0170488 83 58 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_012.v common 7.42 vpr 64.91 MiB -1 -1 0.14 20352 1 0.03 -1 -1 33596 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 32 32 276 237 1 165 75 17 17 289 -1 unnamed_device 26.5 MiB 0.75 831 9397 2155 6994 248 64.9 MiB 0.07 0.00 2.61058 -94.9371 -2.61058 2.61058 0.97 0.000417597 0.000380836 0.0272269 0.0248649 38 2234 25 6.99608e+06 161872 678818. 2348.85 3.37 0.139568 0.122996 26626 170182 -1 1897 19 1170 1521 138701 28458 3.30957 3.30957 -116.635 -3.30957 0 0 902133. 3121.57 0.36 0.05 0.16 -1 -1 0.36 0.0187861 0.0166786 66 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_013.v common 9.68 vpr 65.12 MiB -1 -1 0.17 20368 1 0.03 -1 -1 33652 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 344 272 1 201 79 17 17 289 -1 unnamed_device 26.8 MiB 0.92 979 14613 6276 7820 517 65.1 MiB 0.11 0.00 3.18112 -109.79 -3.18112 3.18112 0.97 0.000506638 0.000464219 0.0468365 0.0428089 48 2891 28 6.99608e+06 220735 865456. 2994.66 5.33 0.224085 0.196451 28354 207349 -1 2275 20 1637 2363 233851 49182 3.47716 3.47716 -130.359 -3.47716 0 0 1.05005e+06 3633.38 0.39 0.08 0.20 -1 -1 0.39 0.0233422 0.0207537 87 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_014.v common 8.54 vpr 65.30 MiB -1 -1 0.16 20664 1 0.03 -1 -1 33604 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66864 32 32 363 295 1 228 81 17 17 289 -1 unnamed_device 26.8 MiB 1.62 987 12506 4294 6105 2107 65.3 MiB 0.10 0.00 3.86116 -115.099 -3.86116 3.86116 0.95 0.000518851 0.000470315 0.0399736 0.0365206 46 2726 27 6.99608e+06 250167 828058. 2865.25 3.47 0.174737 0.154034 28066 200906 -1 1867 23 2072 2905 178127 43812 4.66511 4.66511 -153.623 -4.66511 0 0 1.01997e+06 3529.29 0.41 0.08 0.18 -1 -1 0.41 0.0289684 0.0258054 97 58 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_015.v common 9.24 vpr 64.80 MiB -1 -1 0.14 20340 1 0.03 -1 -1 33508 -1 -1 13 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 29 32 248 215 1 155 74 17 17 289 -1 unnamed_device 26.4 MiB 3.24 617 8909 3623 4879 407 64.8 MiB 0.06 0.00 2.5552 -73.4298 -2.5552 2.5552 0.95 0.000369362 0.000335767 0.0234581 0.0213973 38 2038 34 6.99608e+06 191304 678818. 2348.85 2.76 0.123279 0.107632 26626 170182 -1 1472 19 1133 1584 118572 27366 3.09197 3.09197 -95.9133 -3.09197 0 0 902133. 3121.57 0.35 0.05 0.16 -1 -1 0.35 0.0173904 0.0154344 64 21 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_016.v common 7.67 vpr 65.34 MiB -1 -1 0.16 20476 1 0.03 -1 -1 33908 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66908 32 32 370 297 1 222 80 17 17 289 -1 unnamed_device 26.8 MiB 1.46 1124 13840 4038 8421 1381 65.3 MiB 0.11 0.00 3.11689 -107.741 -3.11689 3.11689 0.93 0.000539153 0.000489687 0.0458405 0.0416973 44 3093 34 6.99608e+06 235451 787024. 2723.27 2.83 0.160104 0.141365 27778 195446 -1 2265 22 2061 3141 240006 49722 3.60341 3.60341 -133.058 -3.60341 0 0 997811. 3452.63 0.39 0.08 0.18 -1 -1 0.39 0.0271487 0.0242024 96 55 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_017.v common 14.45 vpr 65.12 MiB -1 -1 0.17 20544 1 0.03 -1 -1 33872 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 32 32 338 269 1 198 79 17 17 289 -1 unnamed_device 26.8 MiB 0.86 870 10050 2659 6005 1386 65.1 MiB 0.09 0.00 3.53345 -112.815 -3.53345 3.53345 0.95 0.000493357 0.000448684 0.031822 0.0291062 38 2570 25 6.99608e+06 220735 678818. 2348.85 10.25 0.232816 0.201584 26626 170182 -1 1973 18 1474 1962 139642 30384 3.47486 3.47486 -127.867 -3.47486 0 0 902133. 3121.57 0.36 0.06 0.16 -1 -1 0.36 0.0220076 0.0196575 84 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_018.v common 7.35 vpr 65.22 MiB -1 -1 0.16 20500 1 0.03 -1 -1 33624 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66784 32 32 323 276 1 210 79 17 17 289 -1 unnamed_device 26.8 MiB 0.88 819 12923 3779 6948 2196 65.2 MiB 0.10 0.00 2.59239 -95.5898 -2.59239 2.59239 0.94 0.000461019 0.000420311 0.0380544 0.0347663 44 2651 37 6.99608e+06 220735 787024. 2723.27 3.11 0.163225 0.143677 27778 195446 -1 1866 21 1656 2150 153754 35641 3.32082 3.32082 -121.315 -3.32082 0 0 997811. 3452.63 0.38 0.06 0.18 -1 -1 0.38 0.022448 0.019831 89 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_019.v common 7.40 vpr 64.43 MiB -1 -1 0.13 19912 1 0.03 -1 -1 33596 -1 -1 10 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65972 30 32 222 206 1 131 72 17 17 289 -1 unnamed_device 26.0 MiB 1.94 483 9012 3027 4543 1442 64.4 MiB 0.06 0.00 1.95956 -69.6963 -1.95956 1.95956 0.97 0.000349502 0.000317372 0.0231619 0.0211085 36 1484 33 6.99608e+06 147157 648988. 2245.63 2.28 0.119605 0.10483 26050 158493 -1 1016 17 653 732 56865 15029 2.26878 2.26878 -83.5035 -2.26878 0 0 828058. 2865.25 0.33 0.04 0.14 -1 -1 0.33 0.0147314 0.0131513 52 29 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_020.v common 8.46 vpr 65.02 MiB -1 -1 0.16 20504 1 0.03 -1 -1 33928 -1 -1 13 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 31 32 291 243 1 171 76 17 17 289 -1 unnamed_device 26.5 MiB 2.37 909 8236 2437 5131 668 65.0 MiB 0.06 0.00 3.02472 -102.518 -3.02472 3.02472 0.96 0.000441501 0.000402268 0.0247195 0.0225937 38 2352 24 6.99608e+06 191304 678818. 2348.85 2.81 0.130465 0.114375 26626 170182 -1 1988 21 1581 2208 204073 40756 3.69436 3.69436 -137.176 -3.69436 0 0 902133. 3121.57 0.34 0.07 0.16 -1 -1 0.34 0.0223373 0.0197844 72 30 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_021.v common 21.37 vpr 64.82 MiB -1 -1 0.16 20544 1 0.03 -1 -1 33852 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 32 32 342 271 1 201 84 17 17 289 -1 unnamed_device 26.4 MiB 1.48 756 16005 6181 7383 2441 64.8 MiB 0.11 0.00 3.25624 -105.856 -3.25624 3.25624 0.97 0.000505478 0.000459698 0.0463869 0.0422824 46 2645 35 6.99608e+06 294314 828058. 2865.25 16.45 0.332062 0.292175 28066 200906 -1 1818 28 2288 3197 201729 49210 3.8402 3.8402 -135.932 -3.8402 0 0 1.01997e+06 3529.29 0.41 0.08 0.18 -1 -1 0.41 0.0307703 0.0272138 88 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_022.v common 31.90 vpr 65.44 MiB -1 -1 0.17 20628 1 0.03 -1 -1 33872 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67008 32 32 372 300 1 225 80 17 17 289 -1 unnamed_device 26.9 MiB 2.48 1242 15044 5400 7537 2107 65.4 MiB 0.13 0.00 3.72134 -119.716 -3.72134 3.72134 0.97 0.000530889 0.000482676 0.0496276 0.0453098 40 3345 49 6.99608e+06 235451 706193. 2443.58 25.95 0.325516 0.284381 26914 176310 -1 3062 26 2331 3517 438300 96872 4.413 4.413 -150.033 -4.413 0 0 926341. 3205.33 0.36 0.13 0.16 -1 -1 0.36 0.0317874 0.0282569 100 59 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_023.v common 9.79 vpr 64.14 MiB -1 -1 0.15 20200 1 0.03 -1 -1 34036 -1 -1 13 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65676 26 32 190 182 1 123 71 17 17 289 -1 unnamed_device 25.7 MiB 2.35 404 9269 3844 4746 679 64.1 MiB 0.05 0.00 2.2286 -62.3611 -2.2286 2.2286 0.95 0.000299954 0.000273858 0.0208854 0.019114 36 1230 36 6.99608e+06 191304 648988. 2245.63 4.28 0.152361 0.132288 26050 158493 -1 800 31 650 725 95497 49920 2.34227 2.34227 -74.805 -2.34227 0 0 828058. 2865.25 0.32 0.06 0.15 -1 -1 0.32 0.019728 0.0172405 53 21 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_024.v common 6.96 vpr 64.91 MiB -1 -1 0.15 20164 1 0.03 -1 -1 33924 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 32 32 285 227 1 162 79 17 17 289 -1 unnamed_device 26.4 MiB 1.09 719 9205 4002 4865 338 64.9 MiB 0.06 0.00 3.7303 -92.7553 -3.7303 3.7303 0.96 0.000444817 0.000405889 0.0263714 0.0240918 44 2469 29 6.99608e+06 220735 787024. 2723.27 2.52 0.132686 0.11565 27778 195446 -1 1706 23 1337 2217 176483 38411 3.57936 3.57936 -119.755 -3.57936 0 0 997811. 3452.63 0.38 0.07 0.18 -1 -1 0.38 0.0233562 0.0206459 66 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_025.v common 4.94 vpr 64.23 MiB -1 -1 0.13 20128 1 0.03 -1 -1 33772 -1 -1 8 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65772 32 32 173 169 1 112 72 17 17 289 -1 unnamed_device 25.6 MiB 0.22 367 8863 3405 4307 1151 64.2 MiB 0.05 0.00 1.68521 -55.2113 -1.68521 1.68521 0.96 0.000297975 0.00027041 0.0191932 0.0174784 38 1117 22 6.99608e+06 117725 678818. 2348.85 1.60 0.0836524 0.0727432 26626 170182 -1 871 20 598 681 46446 12084 1.84172 1.84172 -70.5592 -1.84172 0 0 902133. 3121.57 0.34 0.03 0.16 -1 -1 0.34 0.0138411 0.0122198 42 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_026.v common 14.96 vpr 64.83 MiB -1 -1 0.16 20188 1 0.03 -1 -1 33956 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 32 32 300 245 1 178 78 17 17 289 -1 unnamed_device 26.3 MiB 1.30 894 14188 6142 7635 411 64.8 MiB 0.10 0.00 3.68643 -101.798 -3.68643 3.68643 0.96 0.000453209 0.00041209 0.0404415 0.0368651 36 2951 45 6.99608e+06 206020 648988. 2245.63 10.37 0.256392 0.223344 26050 158493 -1 2214 22 1420 2009 217898 44237 4.22771 4.22771 -135.9 -4.22771 0 0 828058. 2865.25 0.33 0.08 0.15 -1 -1 0.33 0.0234999 0.0209087 73 21 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_027.v common 14.95 vpr 65.01 MiB -1 -1 0.15 20168 1 0.03 -1 -1 33864 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 32 32 297 233 1 170 85 17 17 289 -1 unnamed_device 26.5 MiB 0.56 699 13291 4925 6211 2155 65.0 MiB 0.09 0.00 2.46605 -78.7522 -2.46605 2.46605 0.94 0.000431651 0.000389856 0.0347271 0.0315807 48 1958 47 6.99608e+06 309029 865456. 2994.66 10.97 0.299945 0.261233 28354 207349 -1 1623 27 1451 2406 241046 75148 2.82232 2.82232 -103.342 -2.82232 0 0 1.05005e+06 3633.38 0.42 0.09 0.19 -1 -1 0.42 0.0267619 0.0236285 74 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_028.v common 10.97 vpr 65.03 MiB -1 -1 0.16 20520 1 0.03 -1 -1 33944 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 32 32 338 277 1 205 79 17 17 289 -1 unnamed_device 26.7 MiB 1.72 837 13599 5022 6053 2524 65.0 MiB 0.10 0.00 3.44978 -102.261 -3.44978 3.44978 0.93 0.000479344 0.000437081 0.0436673 0.0400075 52 2813 33 6.99608e+06 220735 926341. 3205.33 5.84 0.237839 0.206775 29218 227130 -1 2046 21 1745 2654 200488 48878 3.75996 3.75996 -128.259 -3.75996 0 0 1.14541e+06 3963.36 0.43 0.07 0.21 -1 -1 0.43 0.0241126 0.0214701 87 47 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_029.v common 10.10 vpr 64.86 MiB -1 -1 0.15 20524 1 0.03 -1 -1 33704 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 32 32 284 241 1 168 76 17 17 289 -1 unnamed_device 26.4 MiB 2.41 700 10956 4650 6053 253 64.9 MiB 0.08 0.00 2.6695 -91.049 -2.6695 2.6695 0.97 0.000426731 0.000388278 0.0314707 0.0287253 40 2160 24 6.99608e+06 176588 706193. 2443.58 4.37 0.1812 0.157798 26914 176310 -1 1844 23 1382 1900 184462 40158 2.95862 2.95862 -116.424 -2.95862 0 0 926341. 3205.33 0.36 0.07 0.16 -1 -1 0.36 0.0222971 0.0197398 69 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_030.v common 8.99 vpr 64.87 MiB -1 -1 0.16 20388 1 0.03 -1 -1 33748 -1 -1 14 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 30 32 262 227 1 160 76 17 17 289 -1 unnamed_device 26.4 MiB 1.57 699 10156 4235 5569 352 64.9 MiB 0.07 0.00 2.92097 -88.9275 -2.92097 2.92097 0.93 0.000389894 0.000355918 0.0269266 0.02461 46 1877 24 6.99608e+06 206020 828058. 2865.25 4.16 0.16329 0.141794 28066 200906 -1 1418 19 1123 1716 119412 26900 3.09461 3.09461 -103.258 -3.09461 0 0 1.01997e+06 3529.29 0.41 0.05 0.18 -1 -1 0.41 0.0188889 0.016847 66 29 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_031.v common 8.08 vpr 64.86 MiB -1 -1 0.14 20464 1 0.03 -1 -1 33812 -1 -1 18 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 28 32 260 223 1 152 78 17 17 289 -1 unnamed_device 26.4 MiB 0.83 727 9872 3925 4215 1732 64.9 MiB 0.07 0.00 2.6537 -83.2658 -2.6537 2.6537 0.91 0.000394878 0.000360622 0.0256479 0.0234505 36 2330 27 6.99608e+06 264882 648988. 2245.63 4.18 0.159189 0.138137 26050 158493 -1 1817 22 1262 1902 171554 35303 3.44331 3.44331 -114.858 -3.44331 0 0 828058. 2865.25 0.31 0.06 0.14 -1 -1 0.31 0.019675 0.0173474 69 27 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_032.v common 5.53 vpr 64.43 MiB -1 -1 0.14 20260 1 0.03 -1 -1 33760 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65980 32 32 253 210 1 149 74 17 17 289 -1 unnamed_device 25.9 MiB 0.43 581 11699 4938 6474 287 64.4 MiB 0.08 0.00 2.81485 -90.4049 -2.81485 2.81485 0.93 0.000389132 0.000353757 0.031804 0.0290134 42 1985 44 6.99608e+06 147157 744469. 2576.02 1.90 0.135348 0.118332 27202 183097 -1 1445 17 1010 1423 109311 25639 3.22627 3.22627 -107.4 -3.22627 0 0 949917. 3286.91 0.36 0.05 0.17 -1 -1 0.36 0.0166359 0.0148239 58 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_033.v common 7.05 vpr 64.76 MiB -1 -1 0.16 20256 1 0.03 -1 -1 33492 -1 -1 13 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 31 32 271 231 1 165 76 17 17 289 -1 unnamed_device 26.3 MiB 0.99 801 9196 3028 4477 1691 64.8 MiB 0.07 0.00 2.75428 -90.3488 -2.75428 2.75428 0.95 0.00042099 0.000384353 0.0258612 0.0236315 36 2621 47 6.99608e+06 191304 648988. 2245.63 2.85 0.129044 0.112897 26050 158493 -1 1933 18 1207 1637 133340 29577 2.82222 2.82222 -109.255 -2.82222 0 0 828058. 2865.25 0.33 0.06 0.15 -1 -1 0.33 0.0186536 0.0166492 69 26 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_034.v common 12.98 vpr 65.08 MiB -1 -1 0.16 20280 1 0.03 -1 -1 33700 -1 -1 15 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 29 32 291 250 1 180 76 17 17 289 -1 unnamed_device 26.5 MiB 2.89 970 7756 2053 5065 638 65.1 MiB 0.06 0.00 2.45385 -89.9013 -2.45385 2.45385 0.95 0.000438991 0.000400798 0.0230192 0.0210734 34 2563 49 6.99608e+06 220735 618332. 2139.56 6.81 0.20478 0.177659 25762 151098 -1 2124 33 1710 2235 319766 113758 2.96682 2.96682 -115.032 -2.96682 0 0 787024. 2723.27 0.33 0.12 0.14 -1 -1 0.33 0.0308618 0.027183 77 48 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_035.v common 9.54 vpr 65.18 MiB -1 -1 0.16 20448 1 0.03 -1 -1 33760 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 32 32 367 282 1 217 80 17 17 289 -1 unnamed_device 26.7 MiB 1.32 945 14356 5639 6727 1990 65.2 MiB 0.12 0.00 3.66263 -104.012 -3.66263 3.66263 0.94 0.000493183 0.000447232 0.0466311 0.0423114 40 3376 46 6.99608e+06 235451 706193. 2443.58 4.86 0.200715 0.176701 26914 176310 -1 2635 23 1798 2946 257111 57941 4.08962 4.08962 -137.95 -4.08962 0 0 926341. 3205.33 0.35 0.09 0.16 -1 -1 0.35 0.0294096 0.0261869 92 26 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_036.v common 25.27 vpr 65.31 MiB -1 -1 0.16 20468 1 0.03 -1 -1 33572 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66880 32 32 391 311 1 244 83 17 17 289 -1 unnamed_device 26.7 MiB 1.74 1018 14483 5447 6922 2114 65.3 MiB 0.12 0.00 3.37416 -117.445 -3.37416 3.37416 0.93 0.000530865 0.000483589 0.0461493 0.0420548 40 3413 43 6.99608e+06 279598 706193. 2443.58 20.12 0.329589 0.286557 26914 176310 -1 2714 24 2575 3667 320082 71275 4.6983 4.6983 -156.784 -4.6983 0 0 926341. 3205.33 0.36 0.10 0.17 -1 -1 0.36 0.0298239 0.0264909 106 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_037.v common 9.16 vpr 64.88 MiB -1 -1 0.14 20432 1 0.03 -1 -1 33972 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 31 32 279 237 1 157 74 17 17 289 -1 unnamed_device 26.4 MiB 1.34 814 12009 5035 6571 403 64.9 MiB 0.08 0.00 2.87547 -96.8837 -2.87547 2.87547 0.92 0.000457941 0.000415339 0.0330488 0.0302092 36 2342 44 6.99608e+06 161872 648988. 2245.63 4.69 0.147177 0.128528 26050 158493 -1 1923 21 1393 2010 200469 38344 3.43981 3.43981 -123.897 -3.43981 0 0 828058. 2865.25 0.31 0.06 0.15 -1 -1 0.31 0.0201989 0.0178581 66 30 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_038.v common 8.29 vpr 65.46 MiB -1 -1 0.16 20544 1 0.03 -1 -1 33964 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67032 31 32 370 297 1 226 80 17 17 289 -1 unnamed_device 27.0 MiB 1.71 947 15044 5879 6654 2511 65.5 MiB 0.12 0.00 2.98339 -99.7781 -2.98339 2.98339 0.98 0.000495411 0.000449823 0.0484328 0.0441154 46 2696 48 6.99608e+06 250167 828058. 2865.25 3.12 0.209745 0.184918 28066 200906 -1 2085 16 1631 2214 156528 35636 3.63746 3.63746 -129.221 -3.63746 0 0 1.01997e+06 3529.29 0.40 0.06 0.18 -1 -1 0.40 0.0208543 0.0186279 99 57 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_039.v common 27.81 vpr 65.71 MiB -1 -1 0.16 20688 1 0.03 -1 -1 33928 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67288 31 32 377 302 1 235 80 17 17 289 -1 unnamed_device 26.9 MiB 1.68 1040 13152 5086 6352 1714 65.7 MiB 0.11 0.00 4.27366 -133.02 -4.27366 4.27366 0.99 0.000533911 0.000484917 0.0432281 0.0393647 44 3757 47 6.99608e+06 250167 787024. 2723.27 22.59 0.332212 0.289872 27778 195446 -1 2527 21 2244 3246 295869 60813 4.94329 4.94329 -161.864 -4.94329 0 0 997811. 3452.63 0.41 0.10 0.18 -1 -1 0.41 0.0287902 0.025718 104 60 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_040.v common 11.69 vpr 65.32 MiB -1 -1 0.14 20572 1 0.03 -1 -1 33980 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66892 31 32 383 305 1 233 81 17 17 289 -1 unnamed_device 26.7 MiB 3.26 978 14431 5170 6849 2412 65.3 MiB 0.11 0.00 4.14878 -130.965 -4.14878 4.14878 0.91 0.000542279 0.000480112 0.046928 0.0425795 42 3645 44 6.99608e+06 264882 744469. 2576.02 5.08 0.268922 0.233222 27202 183097 -1 2599 22 2266 3173 293833 62394 5.304 5.304 -174.788 -5.304 0 0 949917. 3286.91 0.36 0.09 0.17 -1 -1 0.36 0.0270958 0.0239971 103 60 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_041.v common 8.61 vpr 65.16 MiB -1 -1 0.17 20684 1 0.03 -1 -1 33948 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 31 32 352 285 1 215 79 17 17 289 -1 unnamed_device 26.8 MiB 2.35 1037 13599 5550 6544 1505 65.2 MiB 0.11 0.00 3.12612 -104.757 -3.12612 3.12612 0.95 0.00051049 0.000466654 0.0434637 0.0397461 38 3251 25 6.99608e+06 235451 678818. 2348.85 2.91 0.15926 0.140637 26626 170182 -1 2478 22 1909 2559 225388 46206 3.30256 3.30256 -123.534 -3.30256 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.026083 0.0231895 93 51 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_042.v common 8.12 vpr 64.77 MiB -1 -1 0.16 20448 1 0.03 -1 -1 33796 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 291 242 1 178 78 17 17 289 -1 unnamed_device 26.3 MiB 1.09 843 12196 5125 6603 468 64.8 MiB 0.08 0.00 3.22248 -91.914 -3.22248 3.22248 0.99 0.000457045 0.000416461 0.034821 0.0317353 40 2447 43 6.99608e+06 206020 706193. 2443.58 3.55 0.156825 0.137407 26914 176310 -1 2025 33 1838 2507 387406 166212 3.90012 3.90012 -123.018 -3.90012 0 0 926341. 3205.33 0.36 0.14 0.17 -1 -1 0.36 0.0308465 0.0272282 72 24 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_043.v common 10.27 vpr 65.22 MiB -1 -1 0.17 20896 1 0.03 -1 -1 34136 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66784 32 32 457 356 1 282 85 17 17 289 -1 unnamed_device 26.9 MiB 1.48 1486 13849 4526 7238 2085 65.2 MiB 0.12 0.00 4.125 -141.675 -4.125 4.125 0.92 0.000597474 0.000541622 0.0482901 0.0439907 40 4167 26 6.99608e+06 309029 706193. 2443.58 5.17 0.201596 0.177863 26914 176310 -1 3517 41 4264 6041 909119 317492 4.80264 4.80264 -173.887 -4.80264 0 0 926341. 3205.33 0.35 0.30 0.16 -1 -1 0.35 0.0543731 0.048116 129 84 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_044.v common 13.73 vpr 64.64 MiB -1 -1 0.15 20284 1 0.03 -1 -1 33772 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 31 32 261 225 1 158 74 17 17 289 -1 unnamed_device 26.2 MiB 3.64 620 9064 3735 4947 382 64.6 MiB 0.06 0.00 2.4909 -81.579 -2.4909 2.4909 0.98 0.000408854 0.000370854 0.0260177 0.0237092 38 2164 40 6.99608e+06 161872 678818. 2348.85 6.77 0.21242 0.183365 26626 170182 -1 1449 20 1181 1580 95606 24117 3.01197 3.01197 -103.613 -3.01197 0 0 902133. 3121.57 0.36 0.05 0.16 -1 -1 0.36 0.0189809 0.01686 65 24 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_045.v common 25.88 vpr 64.88 MiB -1 -1 0.15 20716 1 0.03 -1 -1 33784 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66432 31 32 337 267 1 200 78 17 17 289 -1 unnamed_device 26.5 MiB 0.69 970 13856 5895 7462 499 64.9 MiB 0.10 0.00 3.70767 -116.074 -3.70767 3.70767 0.94 0.000440702 0.000396639 0.0407504 0.0368862 46 3188 45 6.99608e+06 220735 828058. 2865.25 21.86 0.327701 0.284953 28066 200906 -1 2300 21 1603 2301 213195 46096 4.35961 4.35961 -147.195 -4.35961 0 0 1.01997e+06 3529.29 0.39 0.08 0.17 -1 -1 0.39 0.0241546 0.0214428 85 30 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_046.v common 10.44 vpr 65.12 MiB -1 -1 0.15 20744 1 0.03 -1 -1 33964 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 349 284 1 213 79 17 17 289 -1 unnamed_device 26.7 MiB 1.39 1125 11233 4225 5159 1849 65.1 MiB 0.09 0.00 3.12594 -108.005 -3.12594 3.12594 0.93 0.00048817 0.000446178 0.0357616 0.0326435 38 3263 37 6.99608e+06 220735 678818. 2348.85 5.82 0.176455 0.155852 26626 170182 -1 2556 19 1524 2371 199047 40412 3.40412 3.40412 -132.433 -3.40412 0 0 902133. 3121.57 0.33 0.07 0.15 -1 -1 0.33 0.0238721 0.0213322 91 50 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_047.v common 7.43 vpr 64.90 MiB -1 -1 0.15 20256 1 0.03 -1 -1 33992 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 291 230 1 166 80 17 17 289 -1 unnamed_device 26.4 MiB 0.93 669 11088 2858 6458 1772 64.9 MiB 0.08 0.00 3.61243 -98.5885 -3.61243 3.61243 0.93 0.000456405 0.000414447 0.0313771 0.0285903 48 2200 47 6.99608e+06 235451 865456. 2994.66 3.14 0.153574 0.134229 28354 207349 -1 1649 32 1430 2623 300973 102664 3.73582 3.73582 -121.018 -3.73582 0 0 1.05005e+06 3633.38 0.39 0.11 0.19 -1 -1 0.39 0.0308292 0.027091 68 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_048.v common 17.74 vpr 64.88 MiB -1 -1 0.16 20504 1 0.03 -1 -1 33620 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 32 32 353 287 1 204 79 17 17 289 -1 unnamed_device 26.4 MiB 1.46 953 9712 4034 5432 246 64.9 MiB 0.08 0.00 3.52245 -109.707 -3.52245 3.52245 0.94 0.000492066 0.000447361 0.0311599 0.0284314 38 3068 38 6.99608e+06 220735 678818. 2348.85 13.00 0.255897 0.22256 26626 170182 -1 2325 20 1548 2085 194746 40496 3.46386 3.46386 -130.045 -3.46386 0 0 902133. 3121.57 0.34 0.07 0.16 -1 -1 0.34 0.0239624 0.0212572 90 52 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_049.v common 10.32 vpr 65.21 MiB -1 -1 0.16 20596 1 0.03 -1 -1 33928 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66772 32 32 361 291 1 216 79 17 17 289 -1 unnamed_device 26.7 MiB 1.77 1076 13768 5464 6508 1796 65.2 MiB 0.11 0.00 2.90529 -102.96 -2.90529 2.90529 0.97 0.000527446 0.000481651 0.0441414 0.0402928 44 2878 22 6.99608e+06 220735 787024. 2723.27 5.10 0.229335 0.200813 27778 195446 -1 2381 20 1640 2410 179650 37680 3.56736 3.56736 -132.198 -3.56736 0 0 997811. 3452.63 0.40 0.07 0.18 -1 -1 0.40 0.024265 0.021611 92 52 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_050.v common 8.55 vpr 65.05 MiB -1 -1 0.16 20424 1 0.03 -1 -1 33652 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 32 32 382 305 1 237 80 17 17 289 -1 unnamed_device 26.5 MiB 2.68 1123 14872 5822 7422 1628 65.1 MiB 0.12 0.00 3.04477 -106.857 -3.04477 3.04477 0.96 0.000518244 0.000471586 0.0486599 0.0443086 44 3229 25 6.99608e+06 235451 787024. 2723.27 2.45 0.151293 0.133098 27778 195446 -1 2454 20 1808 2390 184765 39304 3.58611 3.58611 -137.042 -3.58611 0 0 997811. 3452.63 0.38 0.07 0.19 -1 -1 0.38 0.0258933 0.0229724 101 59 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_051.v common 7.33 vpr 64.99 MiB -1 -1 0.15 20308 1 0.03 -1 -1 33688 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 32 32 306 248 1 178 78 17 17 289 -1 unnamed_device 26.4 MiB 1.08 764 10536 3249 4839 2448 65.0 MiB 0.07 0.00 3.71143 -99.7777 -3.71143 3.71143 0.96 0.00046189 0.000421594 0.0315693 0.0288753 44 2544 39 6.99608e+06 206020 787024. 2723.27 2.91 0.134537 0.1182 27778 195446 -1 1628 20 1122 1685 114467 29833 3.84381 3.84381 -123.601 -3.84381 0 0 997811. 3452.63 0.38 0.05 0.18 -1 -1 0.38 0.0209991 0.0186552 74 21 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_052.v common 11.03 vpr 65.07 MiB -1 -1 0.15 20288 1 0.03 -1 -1 33412 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 32 32 319 257 1 192 77 17 17 289 -1 unnamed_device 26.4 MiB 2.18 706 10835 4447 5904 484 65.1 MiB 0.08 0.00 3.44198 -102.523 -3.44198 3.44198 0.97 0.000485536 0.000441596 0.0344405 0.0314495 50 2255 26 6.99608e+06 191304 902133. 3121.57 5.42 0.242722 0.212423 28642 213929 -1 1740 22 1559 2152 162771 38417 3.80082 3.80082 -126.221 -3.80082 0 0 1.08113e+06 3740.92 0.43 0.07 0.20 -1 -1 0.43 0.0241324 0.0214781 81 26 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_053.v common 7.51 vpr 65.32 MiB -1 -1 0.16 20544 1 0.03 -1 -1 33904 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66888 31 32 373 299 1 224 79 17 17 289 -1 unnamed_device 26.8 MiB 1.00 1122 12078 5051 6678 349 65.3 MiB 0.10 0.00 3.56031 -113.625 -3.56031 3.56031 0.97 0.000526479 0.000478543 0.0403886 0.0368357 44 3431 34 6.99608e+06 235451 787024. 2723.27 3.03 0.17884 0.157126 27778 195446 -1 2579 23 2015 3129 309178 78757 4.22195 4.22195 -144.39 -4.22195 0 0 997811. 3452.63 0.39 0.11 0.18 -1 -1 0.39 0.029973 0.0268192 99 58 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_054.v common 6.89 vpr 65.30 MiB -1 -1 0.14 20576 1 0.03 -1 -1 33924 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 32 32 387 315 1 241 80 17 17 289 -1 unnamed_device 26.7 MiB 1.07 1112 14528 5975 6903 1650 65.3 MiB 0.12 0.00 3.36392 -112.351 -3.36392 3.36392 0.92 0.000492515 0.000443329 0.0455124 0.0412582 46 3535 29 6.99608e+06 235451 828058. 2865.25 2.47 0.161919 0.142741 28066 200906 -1 2697 22 2153 3200 258421 54227 3.78082 3.78082 -135.468 -3.78082 0 0 1.01997e+06 3529.29 0.39 0.09 0.17 -1 -1 0.39 0.0274968 0.0242944 104 74 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_055.v common 5.75 vpr 64.74 MiB -1 -1 0.13 20288 1 0.03 -1 -1 33764 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 32 32 251 219 1 152 74 17 17 289 -1 unnamed_device 26.4 MiB 0.62 652 9684 3987 5324 373 64.7 MiB 0.06 0.00 2.58978 -78.8686 -2.58978 2.58978 0.92 0.000406342 0.000368707 0.0262706 0.0239697 40 2121 36 6.99608e+06 147157 706193. 2443.58 1.96 0.110249 0.0966601 26914 176310 -1 1615 22 1147 1630 137130 34190 3.05292 3.05292 -105.142 -3.05292 0 0 926341. 3205.33 0.35 0.06 0.16 -1 -1 0.35 0.0187062 0.0165528 60 20 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_056.v common 12.12 vpr 65.18 MiB -1 -1 0.15 20688 1 0.03 -1 -1 33692 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 341 285 1 214 79 17 17 289 -1 unnamed_device 26.7 MiB 0.94 970 11571 4543 4967 2061 65.2 MiB 0.09 0.00 3.31348 -119.997 -3.31348 3.31348 0.96 0.000484648 0.000441437 0.0358499 0.0327304 38 3742 43 6.99608e+06 220735 678818. 2348.85 7.80 0.173179 0.151709 26626 170182 -1 2797 21 2384 3210 344583 68244 4.21815 4.21815 -159.692 -4.21815 0 0 902133. 3121.57 0.34 0.11 0.16 -1 -1 0.34 0.0268024 0.0239315 93 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_057.v common 7.47 vpr 65.30 MiB -1 -1 0.17 20584 1 0.03 -1 -1 34000 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66872 32 32 387 293 1 226 80 17 17 289 -1 unnamed_device 26.8 MiB 1.16 1157 14700 6315 8054 331 65.3 MiB 0.12 0.00 3.99514 -125.321 -3.99514 3.99514 0.97 0.000549987 0.000499175 0.0503377 0.0458334 48 2898 27 6.99608e+06 235451 865456. 2994.66 2.74 0.179163 0.158792 28354 207349 -1 2559 25 2356 3559 386042 88092 4.62596 4.62596 -154.896 -4.62596 0 0 1.05005e+06 3633.38 0.43 0.12 0.19 -1 -1 0.43 0.0345525 0.0307661 98 28 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_058.v common 10.50 vpr 64.90 MiB -1 -1 0.16 20828 1 0.03 -1 -1 33456 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 32 32 340 270 1 203 79 17 17 289 -1 unnamed_device 26.5 MiB 0.72 1018 10388 3249 6500 639 64.9 MiB 0.09 0.00 3.52245 -120.884 -3.52245 3.52245 0.93 0.000496176 0.000452544 0.0331965 0.0303195 36 3082 35 6.99608e+06 220735 648988. 2245.63 6.53 0.159505 0.139514 26050 158493 -1 2497 21 1785 2413 229885 45914 3.85976 3.85976 -148.759 -3.85976 0 0 828058. 2865.25 0.32 0.08 0.15 -1 -1 0.32 0.0240979 0.0213956 85 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_059.v common 7.71 vpr 64.95 MiB -1 -1 0.16 20264 1 0.03 -1 -1 33696 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 30 32 278 235 1 166 82 17 17 289 -1 unnamed_device 26.4 MiB 1.42 659 11474 4753 6219 502 64.9 MiB 0.08 0.00 3.02694 -91.1422 -3.02694 3.02694 0.96 0.000428495 0.000390796 0.0295082 0.0269852 40 2208 35 6.99608e+06 294314 706193. 2443.58 2.99 0.145291 0.127995 26914 176310 -1 1573 19 1234 1843 161008 37643 3.37001 3.37001 -117.718 -3.37001 0 0 926341. 3205.33 0.35 0.06 0.16 -1 -1 0.35 0.0201593 0.017977 72 29 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_060.v common 11.06 vpr 65.77 MiB -1 -1 0.17 21020 1 0.03 -1 -1 33860 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67344 32 32 431 332 1 261 82 17 17 289 -1 unnamed_device 27.1 MiB 1.87 1458 16102 5599 8635 1868 65.8 MiB 0.14 0.00 4.69828 -148.633 -4.69828 4.69828 0.95 0.000615017 0.000557461 0.0579126 0.0526594 46 3902 23 6.99608e+06 264882 828058. 2865.25 5.68 0.287933 0.253259 28066 200906 -1 3101 23 2578 3904 306816 61254 5.26619 5.26619 -179.715 -5.26619 0 0 1.01997e+06 3529.29 0.39 0.10 0.18 -1 -1 0.39 0.0331757 0.0295976 116 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_061.v common 6.58 vpr 64.78 MiB -1 -1 0.14 20248 1 0.03 -1 -1 33764 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 32 32 336 268 1 199 78 17 17 289 -1 unnamed_device 26.2 MiB 0.68 867 13856 5938 7553 365 64.8 MiB 0.10 0.00 3.85334 -116.528 -3.85334 3.85334 0.94 0.000490656 0.000446648 0.0416651 0.0377599 42 2760 36 6.99608e+06 206020 744469. 2576.02 2.62 0.172913 0.15182 27202 183097 -1 1980 21 1651 2264 199781 42307 4.05242 4.05242 -138.272 -4.05242 0 0 949917. 3286.91 0.37 0.07 0.16 -1 -1 0.37 0.0233787 0.0207582 83 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_062.v common 5.34 vpr 64.41 MiB -1 -1 0.15 20440 1 0.03 -1 -1 33380 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65956 32 32 231 199 1 136 77 17 17 289 -1 unnamed_device 25.9 MiB 0.24 652 9694 2938 5089 1667 64.4 MiB 0.06 0.00 2.4029 -78.4802 -2.4029 2.4029 0.95 0.000380572 0.000347829 0.0243191 0.0222563 38 1819 18 6.99608e+06 191304 678818. 2348.85 1.88 0.108658 0.0953026 26626 170182 -1 1577 23 1073 1708 150359 30984 2.90967 2.90967 -102.461 -2.90967 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.019641 0.0173358 51 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_063.v common 8.04 vpr 65.29 MiB -1 -1 0.17 20508 1 0.03 -1 -1 33696 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66852 32 32 349 273 1 207 80 17 17 289 -1 unnamed_device 26.9 MiB 1.43 948 15732 6849 7886 997 65.3 MiB 0.12 0.00 4.00152 -109.55 -4.00152 4.00152 0.95 0.000481337 0.000437908 0.048904 0.0443714 44 3147 35 6.99608e+06 235451 787024. 2723.27 3.22 0.176041 0.154549 27778 195446 -1 2180 22 1545 2580 190135 42624 4.94095 4.94095 -139.209 -4.94095 0 0 997811. 3452.63 0.37 0.07 0.18 -1 -1 0.37 0.0254681 0.0224355 85 26 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_064.v common 8.73 vpr 64.36 MiB -1 -1 0.14 20180 1 0.03 -1 -1 34104 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65908 32 32 247 207 1 142 78 17 17 289 -1 unnamed_device 25.8 MiB 1.05 483 9706 3182 4454 2070 64.4 MiB 0.06 0.00 2.5722 -81.3565 -2.5722 2.5722 0.93 0.000396469 0.000362374 0.0245154 0.0224029 42 1807 49 6.99608e+06 206020 744469. 2576.02 4.48 0.176142 0.15273 27202 183097 -1 1322 21 1162 1717 131663 33345 3.16407 3.16407 -111.533 -3.16407 0 0 949917. 3286.91 0.36 0.05 0.17 -1 -1 0.36 0.0186304 0.0164522 57 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_065.v common 7.48 vpr 64.96 MiB -1 -1 0.15 20448 1 0.03 -1 -1 33528 -1 -1 13 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66520 30 32 278 235 1 170 75 17 17 289 -1 unnamed_device 26.5 MiB 0.65 687 11925 5028 6439 458 65.0 MiB 0.08 0.00 3.03377 -95.0567 -3.03377 3.03377 0.93 0.00038807 0.000349626 0.0324266 0.0294355 38 2272 40 6.99608e+06 191304 678818. 2348.85 3.64 0.145689 0.127406 26626 170182 -1 1599 21 1350 1809 138103 31290 3.34751 3.34751 -115.982 -3.34751 0 0 902133. 3121.57 0.35 0.06 0.15 -1 -1 0.35 0.0200551 0.0177278 69 29 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_066.v common 9.01 vpr 65.27 MiB -1 -1 0.17 20572 1 0.03 -1 -1 33856 -1 -1 18 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66836 29 32 355 287 1 213 79 17 17 289 -1 unnamed_device 26.7 MiB 1.91 1017 7515 2624 3331 1560 65.3 MiB 0.07 0.00 3.40046 -105.096 -3.40046 3.40046 0.95 0.000505239 0.000461207 0.0253985 0.0232689 40 3012 25 6.99608e+06 264882 706193. 2443.58 3.75 0.152587 0.13398 26914 176310 -1 2611 21 2004 2954 307332 62284 3.7222 3.7222 -130.464 -3.7222 0 0 926341. 3205.33 0.36 0.09 0.16 -1 -1 0.36 0.0260633 0.0232389 97 56 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_067.v common 19.30 vpr 65.30 MiB -1 -1 0.16 20760 1 0.03 -1 -1 33896 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66872 32 32 358 289 1 217 79 17 17 289 -1 unnamed_device 26.8 MiB 1.60 1094 10219 4205 5773 241 65.3 MiB 0.08 0.00 3.50518 -117.692 -3.50518 3.50518 0.92 0.00051433 0.000466056 0.0341036 0.0310379 42 3057 31 6.99608e+06 220735 744469. 2576.02 14.43 0.292201 0.255073 27202 183097 -1 2531 18 1824 2515 228274 47764 4.69841 4.69841 -160.562 -4.69841 0 0 949917. 3286.91 0.38 0.08 0.16 -1 -1 0.38 0.0256638 0.023077 93 51 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_068.v common 21.65 vpr 65.24 MiB -1 -1 0.17 20496 1 0.03 -1 -1 33976 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 32 32 353 285 1 213 79 17 17 289 -1 unnamed_device 26.8 MiB 2.50 1136 12585 3548 7783 1254 65.2 MiB 0.10 0.00 3.79817 -125.159 -3.79817 3.79817 0.96 0.000507054 0.000461286 0.0409886 0.0374317 40 2860 44 6.99608e+06 220735 706193. 2443.58 15.77 0.307025 0.267789 26914 176310 -1 2603 21 1806 2674 273839 53617 4.54991 4.54991 -157.572 -4.54991 0 0 926341. 3205.33 0.35 0.09 0.16 -1 -1 0.35 0.0256612 0.0228234 90 48 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_069.v common 7.68 vpr 64.62 MiB -1 -1 0.14 20184 1 0.03 -1 -1 33728 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 32 32 276 237 1 163 75 17 17 289 -1 unnamed_device 26.1 MiB 2.16 846 11925 5171 6514 240 64.6 MiB 0.08 0.00 3.18112 -104.147 -3.18112 3.18112 0.90 0.000410478 0.000374513 0.033279 0.0304344 46 2056 50 6.99608e+06 161872 828058. 2865.25 2.32 0.13241 0.116482 28066 200906 -1 1736 20 1225 1613 124667 26828 3.42936 3.42936 -118.543 -3.42936 0 0 1.01997e+06 3529.29 0.37 0.05 0.19 -1 -1 0.37 0.0196605 0.0174598 67 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_070.v common 6.26 vpr 65.14 MiB -1 -1 0.16 20660 1 0.03 -1 -1 34040 -1 -1 14 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66708 31 32 319 272 1 200 77 17 17 289 -1 unnamed_device 26.7 MiB 0.96 790 9042 2534 5268 1240 65.1 MiB 0.07 0.00 3.00077 -96.7127 -3.00077 3.00077 0.94 0.000476243 0.00043161 0.0269271 0.024469 46 2207 24 6.99608e+06 206020 828058. 2865.25 2.00 0.110202 0.0962267 28066 200906 -1 1499 21 1541 2135 126452 30546 2.97491 2.97491 -109.517 -2.97491 0 0 1.01997e+06 3529.29 0.40 0.06 0.18 -1 -1 0.40 0.0224141 0.0198411 86 60 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_071.v common 20.46 vpr 65.29 MiB -1 -1 0.17 20284 1 0.03 -1 -1 34036 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66860 30 32 329 273 1 202 81 17 17 289 -1 unnamed_device 26.8 MiB 1.37 841 10231 2948 5073 2210 65.3 MiB 0.08 0.00 2.70194 -87.7568 -2.70194 2.70194 0.98 0.000479241 0.000434223 0.0307192 0.0279828 40 2812 39 6.99608e+06 279598 706193. 2443.58 15.69 0.265545 0.231586 26914 176310 -1 2075 20 1444 2066 191007 41507 3.32481 3.32481 -117.624 -3.32481 0 0 926341. 3205.33 0.37 0.07 0.17 -1 -1 0.37 0.0232446 0.0207478 91 52 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_072.v common 7.26 vpr 64.81 MiB -1 -1 0.16 20120 1 0.03 -1 -1 33692 -1 -1 17 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 28 32 277 229 1 170 77 17 17 289 -1 unnamed_device 26.3 MiB 0.51 857 13443 4623 7041 1779 64.8 MiB 0.09 0.00 3.06285 -91.2465 -3.06285 3.06285 0.92 0.000415127 0.000378422 0.0362605 0.0330721 38 2322 29 6.99608e+06 250167 678818. 2348.85 3.54 0.144589 0.127068 26626 170182 -1 1850 23 1373 2153 172724 34707 3.92746 3.92746 -117.596 -3.92746 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.0216588 0.019149 71 20 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_073.v common 8.72 vpr 64.74 MiB -1 -1 0.17 20592 1 0.03 -1 -1 33608 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66292 30 32 317 269 1 200 77 17 17 289 -1 unnamed_device 26.3 MiB 2.23 824 10835 4518 5855 462 64.7 MiB 0.08 0.00 3.54051 -110.83 -3.54051 3.54051 0.95 0.000444651 0.000404532 0.032177 0.029329 46 2477 26 6.99608e+06 220735 828058. 2865.25 3.16 0.141425 0.123503 28066 200906 -1 1759 18 1406 1948 140548 31722 3.96755 3.96755 -138.889 -3.96755 0 0 1.01997e+06 3529.29 0.39 0.06 0.19 -1 -1 0.39 0.0200587 0.017841 87 58 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_074.v common 18.73 vpr 64.89 MiB -1 -1 0.16 20176 1 0.03 -1 -1 33620 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 335 282 1 216 78 17 17 289 -1 unnamed_device 26.4 MiB 0.95 958 11532 4419 4440 2673 64.9 MiB 0.09 0.00 2.7677 -100.015 -2.7677 2.7677 0.97 0.000494274 0.000451624 0.0358655 0.0327935 40 3081 40 6.99608e+06 206020 706193. 2443.58 14.38 0.288233 0.251511 26914 176310 -1 2474 23 2073 2822 317660 70259 3.51211 3.51211 -136.822 -3.51211 0 0 926341. 3205.33 0.35 0.10 0.16 -1 -1 0.35 0.0259292 0.0230244 93 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_075.v common 8.66 vpr 64.93 MiB -1 -1 0.16 20400 1 0.03 -1 -1 33852 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 31 32 293 230 1 168 87 17 17 289 -1 unnamed_device 26.4 MiB 0.44 748 8919 2572 5135 1212 64.9 MiB 0.07 0.00 3.86008 -100.236 -3.86008 3.86008 0.98 0.000475434 0.000433299 0.0235716 0.0214841 46 2203 34 6.99608e+06 353176 828058. 2865.25 4.89 0.167225 0.144969 28066 200906 -1 1595 15 909 1573 103628 23762 3.55532 3.55532 -113.694 -3.55532 0 0 1.01997e+06 3529.29 0.37 0.04 0.18 -1 -1 0.37 0.0170747 0.0152357 74 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_076.v common 13.06 vpr 65.02 MiB -1 -1 0.16 20700 1 0.03 -1 -1 33832 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 32 32 350 275 1 202 78 17 17 289 -1 unnamed_device 26.6 MiB 2.28 988 11200 4704 6275 221 65.0 MiB 0.09 0.00 3.51478 -119.446 -3.51478 3.51478 0.96 0.000541334 0.0004863 0.0373691 0.0341261 38 3610 33 6.99608e+06 206020 678818. 2348.85 7.36 0.169831 0.148734 26626 170182 -1 2763 33 2355 3461 435996 115873 4.4649 4.4649 -155.662 -4.4649 0 0 902133. 3121.57 0.34 0.15 0.16 -1 -1 0.34 0.0360334 0.0317689 86 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_077.v common 27.37 vpr 65.36 MiB -1 -1 0.15 20620 1 0.03 -1 -1 34048 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66928 32 32 385 308 1 237 81 17 17 289 -1 unnamed_device 26.8 MiB 0.85 1069 10581 3820 4375 2386 65.4 MiB 0.09 0.00 4.0077 -127.842 -4.0077 4.0077 0.96 0.000551932 0.000504231 0.0362968 0.0331687 44 3663 45 6.99608e+06 250167 787024. 2723.27 23.08 0.321668 0.28098 27778 195446 -1 2443 22 2275 3275 309106 76325 4.55314 4.55314 -158.421 -4.55314 0 0 997811. 3452.63 0.40 0.10 0.18 -1 -1 0.40 0.0286466 0.0255524 102 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_078.v common 8.52 vpr 65.49 MiB -1 -1 0.17 20576 1 0.03 -1 -1 33740 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67060 32 32 387 309 1 244 81 17 17 289 -1 unnamed_device 26.9 MiB 0.95 1098 13206 4825 6600 1781 65.5 MiB 0.10 0.00 3.47616 -116.907 -3.47616 3.47616 0.98 0.000302563 0.00027639 0.0404144 0.0368362 46 3837 28 6.99608e+06 250167 828058. 2865.25 4.10 0.176098 0.154786 28066 200906 -1 2833 22 2129 3124 289159 58732 3.87 3.87 -147.27 -3.87 0 0 1.01997e+06 3529.29 0.39 0.09 0.19 -1 -1 0.39 0.0284485 0.0253631 104 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_079.v common 7.50 vpr 64.84 MiB -1 -1 0.15 20308 1 0.03 -1 -1 33416 -1 -1 13 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 30 32 272 232 1 171 75 17 17 289 -1 unnamed_device 26.4 MiB 1.03 592 9081 2599 4640 1842 64.8 MiB 0.06 0.00 3.63675 -103.141 -3.63675 3.63675 0.97 0.000410476 0.000374335 0.0257983 0.0235806 48 1841 31 6.99608e+06 191304 865456. 2994.66 3.07 0.138945 0.121961 28354 207349 -1 1441 18 1150 1627 127170 31905 3.45286 3.45286 -118.706 -3.45286 0 0 1.05005e+06 3633.38 0.40 0.05 0.19 -1 -1 0.40 0.0182821 0.0163386 71 29 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_080.v common 10.13 vpr 65.50 MiB -1 -1 0.16 20484 1 0.03 -1 -1 33700 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67076 30 32 375 299 1 233 80 17 17 289 -1 unnamed_device 26.9 MiB 1.04 898 11088 3619 4989 2480 65.5 MiB 0.08 0.00 4.22166 -128.126 -4.22166 4.22166 0.94 0.000560292 0.000508228 0.0349088 0.0317119 54 2507 44 6.99608e+06 264882 949917. 3286.91 5.64 0.246516 0.213111 29506 232905 -1 1948 25 2196 3078 227374 54686 4.57911 4.57911 -151.941 -4.57911 0 0 1.17392e+06 4061.99 0.46 0.09 0.20 -1 -1 0.46 0.0291283 0.025766 104 58 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_081.v common 10.03 vpr 65.11 MiB -1 -1 0.15 20616 1 0.03 -1 -1 34012 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 32 32 340 270 1 197 78 17 17 289 -1 unnamed_device 26.8 MiB 1.27 846 12694 5333 6865 496 65.1 MiB 0.10 0.00 3.85334 -114.876 -3.85334 3.85334 0.98 0.000493213 0.00044912 0.04077 0.0372314 46 2761 26 6.99608e+06 206020 828058. 2865.25 5.27 0.219864 0.19215 28066 200906 -1 1998 26 1633 2643 238122 51775 4.28795 4.28795 -141.139 -4.28795 0 0 1.01997e+06 3529.29 0.40 0.09 0.19 -1 -1 0.40 0.0297618 0.0263053 82 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_082.v common 8.10 vpr 65.15 MiB -1 -1 0.17 20716 1 0.03 -1 -1 33872 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66712 31 32 340 275 1 199 80 17 17 289 -1 unnamed_device 26.7 MiB 1.33 824 10916 3457 5321 2138 65.1 MiB 0.09 0.00 4.27285 -115.768 -4.27285 4.27285 0.97 0.000495 0.000451045 0.0341111 0.0312247 46 2309 46 6.99608e+06 250167 828058. 2865.25 3.37 0.175917 0.154662 28066 200906 -1 1800 23 1339 1910 121612 28768 4.45681 4.45681 -139.856 -4.45681 0 0 1.01997e+06 3529.29 0.38 0.06 0.19 -1 -1 0.38 0.0253869 0.0224012 87 43 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_083.v common 9.12 vpr 65.40 MiB -1 -1 0.18 20500 1 0.03 -1 -1 33892 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66972 30 32 377 310 1 234 82 17 17 289 -1 unnamed_device 26.8 MiB 2.27 1045 15212 5515 7525 2172 65.4 MiB 0.12 0.00 3.44926 -107.329 -3.44926 3.44926 0.98 0.000535124 0.000486869 0.0476775 0.0434423 44 3455 44 6.99608e+06 294314 787024. 2723.27 3.39 0.196307 0.1728 27778 195446 -1 2379 21 2233 3109 243962 52982 4.03731 4.03731 -142.38 -4.03731 0 0 997811. 3452.63 0.39 0.09 0.18 -1 -1 0.39 0.0274744 0.0245583 108 78 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_084.v common 10.35 vpr 65.05 MiB -1 -1 0.16 20436 1 0.03 -1 -1 33928 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66612 32 32 365 294 1 223 81 17 17 289 -1 unnamed_device 26.5 MiB 1.90 1271 16531 5984 8406 2141 65.1 MiB 0.13 0.00 3.75306 -124.358 -3.75306 3.75306 0.94 0.000510682 0.000465314 0.0515018 0.0469561 46 2982 20 6.99608e+06 250167 828058. 2865.25 5.06 0.228023 0.198794 28066 200906 -1 2420 21 1772 2563 204143 42577 4.15291 4.15291 -150.07 -4.15291 0 0 1.01997e+06 3529.29 0.38 0.07 0.19 -1 -1 0.38 0.0248452 0.0220949 95 54 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_085.v common 10.45 vpr 65.32 MiB -1 -1 0.17 20724 1 0.03 -1 -1 33896 -1 -1 20 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66892 29 32 378 310 1 237 81 17 17 289 -1 unnamed_device 26.7 MiB 2.84 1165 9531 3101 4544 1886 65.3 MiB 0.08 0.00 3.11675 -104.42 -3.11675 3.11675 0.94 0.000529978 0.000482384 0.0316476 0.0288258 38 3375 26 6.99608e+06 294314 678818. 2348.85 4.27 0.166373 0.146228 26626 170182 -1 2655 23 2151 2812 244626 50145 3.80196 3.80196 -132.455 -3.80196 0 0 902133. 3121.57 0.36 0.09 0.16 -1 -1 0.36 0.0279646 0.0247511 109 79 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_086.v common 12.56 vpr 64.62 MiB -1 -1 0.14 20244 1 0.03 -1 -1 33880 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 32 32 243 205 1 140 74 17 17 289 -1 unnamed_device 26.1 MiB 1.38 624 10149 3858 5233 1058 64.6 MiB 0.07 0.00 2.91658 -85.962 -2.91658 2.91658 0.92 0.000400307 0.000365767 0.0273554 0.0250278 38 2105 23 6.99608e+06 147157 678818. 2348.85 8.01 0.202127 0.175442 26626 170182 -1 1584 21 1115 1728 136337 28984 2.88437 2.88437 -107.331 -2.88437 0 0 902133. 3121.57 0.33 0.05 0.16 -1 -1 0.33 0.018566 0.0163989 54 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_087.v common 10.27 vpr 65.39 MiB -1 -1 0.17 20728 1 0.03 -1 -1 33588 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 32 32 373 302 1 234 81 17 17 289 -1 unnamed_device 26.7 MiB 0.75 1079 14956 5560 6924 2472 65.4 MiB 0.12 0.00 4.21916 -133.906 -4.21916 4.21916 0.98 0.000528401 0.000478421 0.047609 0.0433195 56 2477 23 6.99608e+06 250167 973134. 3367.25 5.89 0.220746 0.192834 29794 239141 -1 2151 19 1592 2288 231625 47587 4.5129 4.5129 -152.827 -4.5129 0 0 1.19926e+06 4149.71 0.47 0.08 0.23 -1 -1 0.47 0.0256972 0.0230801 100 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_088.v common 7.68 vpr 65.20 MiB -1 -1 0.16 20628 1 0.03 -1 -1 33640 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66760 32 32 397 314 1 249 81 17 17 289 -1 unnamed_device 26.6 MiB 1.03 1038 11806 4600 6230 976 65.2 MiB 0.10 0.00 4.125 -136.873 -4.125 4.125 0.98 0.000566307 0.000516443 0.0408714 0.0372801 48 3340 27 6.99608e+06 250167 865456. 2994.66 3.10 0.184773 0.162759 28354 207349 -1 2683 20 2373 3332 331649 69240 4.78344 4.78344 -172.184 -4.78344 0 0 1.05005e+06 3633.38 0.41 0.10 0.20 -1 -1 0.41 0.0284198 0.0254571 109 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_089.v common 7.99 vpr 64.93 MiB -1 -1 0.14 20224 1 0.03 -1 -1 33836 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 32 32 269 231 1 168 75 17 17 289 -1 unnamed_device 26.4 MiB 1.09 782 12715 5398 7027 290 64.9 MiB 0.08 0.00 3.03397 -94.935 -3.03397 3.03397 0.97 0.000402033 0.000367165 0.035295 0.0322032 36 2278 38 6.99608e+06 161872 648988. 2245.63 3.64 0.159494 0.140524 26050 158493 -1 1696 20 1180 1468 124635 26959 3.05391 3.05391 -109.828 -3.05391 0 0 828058. 2865.25 0.34 0.06 0.14 -1 -1 0.34 0.020681 0.0184061 69 26 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_090.v common 6.05 vpr 64.54 MiB -1 -1 0.16 20408 1 0.03 -1 -1 33692 -1 -1 13 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 31 32 245 205 1 144 76 17 17 289 -1 unnamed_device 26.0 MiB 0.56 520 10156 4208 5460 488 64.5 MiB 0.06 0.00 2.78823 -83.3973 -2.78823 2.78823 0.98 0.00038541 0.00035254 0.027093 0.0247675 40 1986 43 6.99608e+06 191304 706193. 2443.58 2.17 0.120287 0.105938 26914 176310 -1 1531 19 1159 1692 141978 36628 3.44082 3.44082 -116.803 -3.44082 0 0 926341. 3205.33 0.36 0.06 0.16 -1 -1 0.36 0.0177805 0.0158211 56 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_091.v common 9.10 vpr 65.30 MiB -1 -1 0.15 20552 1 0.03 -1 -1 33488 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66864 32 32 348 274 1 208 79 17 17 289 -1 unnamed_device 26.9 MiB 0.87 904 12585 3591 6489 2505 65.3 MiB 0.09 0.00 3.57951 -115.674 -3.57951 3.57951 0.95 0.000492524 0.000443955 0.0383023 0.0348045 44 2631 37 6.99608e+06 220735 787024. 2723.27 4.90 0.210713 0.183281 27778 195446 -1 1886 22 1561 2117 148664 34042 3.93935 3.93935 -136.751 -3.93935 0 0 997811. 3452.63 0.39 0.06 0.17 -1 -1 0.39 0.0244827 0.0216884 88 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_092.v common 10.11 vpr 65.29 MiB -1 -1 0.16 20904 1 0.03 -1 -1 33892 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66856 32 32 356 289 1 218 79 17 17 289 -1 unnamed_device 26.8 MiB 1.99 1011 12923 5460 7214 249 65.3 MiB 0.10 0.00 3.63687 -114.181 -3.63687 3.63687 1.00 0.000512184 0.000466437 0.042575 0.0387467 38 3385 47 6.99608e+06 220735 678818. 2348.85 4.74 0.190678 0.167487 26626 170182 -1 2370 24 1901 2606 192658 41420 4.54021 4.54021 -145.164 -4.54021 0 0 902133. 3121.57 0.33 0.07 0.16 -1 -1 0.33 0.0270122 0.0238555 95 53 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_093.v common 10.00 vpr 65.08 MiB -1 -1 0.16 20540 1 0.03 -1 -1 33764 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 349 260 1 195 81 17 17 289 -1 unnamed_device 26.7 MiB 0.48 834 15481 6763 7987 731 65.1 MiB 0.12 0.00 3.77681 -111.474 -3.77681 3.77681 0.99 0.000516362 0.000469858 0.0487555 0.0443729 60 2791 23 6.99608e+06 250167 1.01997e+06 3529.29 5.91 0.223303 0.195086 30658 258169 -1 1638 20 1441 2475 151299 35025 3.93725 3.93725 -132.612 -3.93725 0 0 1.27783e+06 4421.56 0.48 0.06 0.25 -1 -1 0.48 0.0239108 0.0212626 83 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_094.v common 7.43 vpr 64.95 MiB -1 -1 0.16 20232 1 0.03 -1 -1 33600 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 30 32 316 264 1 197 78 17 17 289 -1 unnamed_device 26.6 MiB 1.28 788 9706 3488 4525 1693 65.0 MiB 0.07 0.00 3.02754 -88.8726 -3.02754 3.02754 0.95 0.000458375 0.00041713 0.0290752 0.0265676 44 2913 40 6.99608e+06 235451 787024. 2723.27 2.74 0.140387 0.122689 27778 195446 -1 1819 30 1874 2785 293285 88250 3.44887 3.44887 -111.408 -3.44887 0 0 997811. 3452.63 0.40 0.11 0.18 -1 -1 0.40 0.0304349 0.0267978 86 47 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_095.v common 6.50 vpr 64.73 MiB -1 -1 0.15 20244 1 0.03 -1 -1 34044 -1 -1 15 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66280 27 32 255 219 1 145 74 17 17 289 -1 unnamed_device 26.3 MiB 1.07 487 10459 4407 5408 644 64.7 MiB 0.07 0.00 2.96122 -84.2305 -2.96122 2.96122 0.98 0.000381696 0.000346765 0.0282647 0.0257799 38 1689 31 6.99608e+06 220735 678818. 2348.85 2.14 0.13637 0.119461 26626 170182 -1 1252 18 926 1390 88619 22352 3.33712 3.33712 -109.295 -3.33712 0 0 902133. 3121.57 0.35 0.05 0.15 -1 -1 0.35 0.0177372 0.0158279 66 26 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_096.v common 10.72 vpr 65.58 MiB -1 -1 0.17 20760 1 0.03 -1 -1 33916 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67156 32 32 421 327 1 257 82 17 17 289 -1 unnamed_device 27.2 MiB 0.97 1215 16280 7180 8676 424 65.6 MiB 0.15 0.00 3.41284 -117.869 -3.41284 3.41284 0.95 0.000548929 0.000505518 0.0567989 0.0515993 54 3476 33 6.99608e+06 264882 949917. 3286.91 5.97 0.291098 0.25581 29506 232905 -1 2711 22 2270 3461 285867 58254 4.65241 4.65241 -148.813 -4.65241 0 0 1.17392e+06 4061.99 0.45 0.09 0.21 -1 -1 0.45 0.0295072 0.0263227 111 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_097.v common 9.75 vpr 65.36 MiB -1 -1 0.16 20740 1 0.03 -1 -1 33968 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66932 31 32 365 296 1 229 80 17 17 289 -1 unnamed_device 26.7 MiB 1.96 1215 14528 4935 7929 1664 65.4 MiB 0.12 0.00 4.34903 -133.1 -4.34903 4.34903 0.93 0.00051112 0.000464557 0.0453993 0.0415107 40 3218 29 6.99608e+06 250167 706193. 2443.58 4.43 0.181345 0.160258 26914 176310 -1 2739 22 2360 3274 340418 65338 5.12834 5.12834 -174.894 -5.12834 0 0 926341. 3205.33 0.36 0.11 0.16 -1 -1 0.36 0.0288488 0.0258211 100 60 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_098.v common 9.26 vpr 65.25 MiB -1 -1 0.16 20272 1 0.03 -1 -1 33872 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 32 32 331 280 1 215 78 17 17 289 -1 unnamed_device 26.8 MiB 1.03 1014 9706 2762 6061 883 65.3 MiB 0.08 0.00 3.46994 -124.611 -3.46994 3.46994 0.96 0.000479452 0.000437065 0.0301405 0.0275462 40 2743 48 6.99608e+06 206020 706193. 2443.58 4.87 0.240694 0.209773 26914 176310 -1 2245 21 1656 2079 174161 38358 4.02985 4.02985 -152.533 -4.02985 0 0 926341. 3205.33 0.35 0.07 0.17 -1 -1 0.35 0.0235657 0.0209855 91 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_099.v common 6.45 vpr 64.75 MiB -1 -1 0.15 20592 1 0.03 -1 -1 34032 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 32 32 326 263 1 197 79 17 17 289 -1 unnamed_device 26.5 MiB 0.78 907 12585 5304 6821 460 64.7 MiB 0.10 0.00 3.34348 -104.597 -3.34348 3.34348 0.96 0.00049053 0.000444341 0.0388069 0.0352728 44 2900 25 6.99608e+06 220735 787024. 2723.27 2.29 0.154157 0.135085 27778 195446 -1 2073 21 1348 1901 145786 31983 3.92011 3.92011 -132.242 -3.92011 0 0 997811. 3452.63 0.38 0.06 0.18 -1 -1 0.38 0.0232979 0.0206639 81 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_100.v common 8.01 vpr 65.61 MiB -1 -1 0.16 20732 1 0.03 -1 -1 33816 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67188 31 32 373 294 1 221 80 17 17 289 -1 unnamed_device 26.9 MiB 1.53 977 14012 5601 6789 1622 65.6 MiB 0.11 0.00 3.45118 -103.39 -3.45118 3.45118 0.94 0.000487669 0.00043951 0.0428142 0.0387028 40 2838 37 6.99608e+06 250167 706193. 2443.58 3.16 0.184942 0.162284 26914 176310 -1 2428 22 2149 3018 264099 63254 4.29696 4.29696 -144.871 -4.29696 0 0 926341. 3205.33 0.35 0.09 0.15 -1 -1 0.35 0.0264751 0.0234588 97 46 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_101.v common 8.09 vpr 65.21 MiB -1 -1 0.17 20800 1 0.03 -1 -1 34144 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 30 32 325 268 1 198 79 17 17 289 -1 unnamed_device 26.8 MiB 1.68 904 12416 5191 6608 617 65.2 MiB 0.09 0.00 2.85029 -90.0497 -2.85029 2.85029 0.95 0.000463741 0.00042177 0.037138 0.0338314 44 2642 49 6.99608e+06 250167 787024. 2723.27 3.02 0.172713 0.151214 27778 195446 -1 2048 23 1616 2336 183815 41116 3.26176 3.26176 -116.813 -3.26176 0 0 997811. 3452.63 0.41 0.07 0.18 -1 -1 0.41 0.025229 0.0222529 88 46 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_102.v common 7.47 vpr 65.25 MiB -1 -1 0.15 20592 1 0.03 -1 -1 33800 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 32 32 350 275 1 209 78 17 17 289 -1 unnamed_device 26.8 MiB 0.90 919 12196 5093 6690 413 65.2 MiB 0.10 0.00 3.51478 -114.727 -3.51478 3.51478 0.97 0.000507971 0.000461267 0.0408408 0.0372989 50 3182 49 6.99608e+06 206020 902133. 3121.57 3.07 0.20776 0.183573 28642 213929 -1 2187 23 1788 2679 232016 57047 4.25631 4.25631 -146.563 -4.25631 0 0 1.08113e+06 3740.92 0.43 0.09 0.19 -1 -1 0.43 0.0289611 0.0258246 88 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_103.v common 8.68 vpr 65.12 MiB -1 -1 0.16 20516 1 0.03 -1 -1 34008 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 32 32 386 307 1 240 80 17 17 289 -1 unnamed_device 26.6 MiB 2.95 1027 12636 4739 6959 938 65.1 MiB 0.11 0.00 2.94423 -103.749 -2.94423 2.94423 0.95 0.000534481 0.000487304 0.0428307 0.0390638 44 3028 30 6.99608e+06 235451 787024. 2723.27 2.33 0.172678 0.151186 27778 195446 -1 2163 19 1758 2350 158249 36072 3.45481 3.45481 -130.296 -3.45481 0 0 997811. 3452.63 0.39 0.07 0.18 -1 -1 0.39 0.0245364 0.021883 103 59 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_104.v common 7.01 vpr 64.86 MiB -1 -1 0.15 20344 1 0.03 -1 -1 34052 -1 -1 14 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 29 32 269 229 1 168 75 17 17 289 -1 unnamed_device 26.4 MiB 1.52 667 10977 4403 5653 921 64.9 MiB 0.07 0.00 3.37515 -99.403 -3.37515 3.37515 0.95 0.000396754 0.00036073 0.0306185 0.0279585 38 1802 35 6.99608e+06 206020 678818. 2348.85 2.23 0.138219 0.121445 26626 170182 -1 1447 21 1351 1796 124241 27656 3.44186 3.44186 -117.802 -3.44186 0 0 902133. 3121.57 0.35 0.06 0.16 -1 -1 0.35 0.0201409 0.0178349 70 28 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_105.v common 9.07 vpr 64.78 MiB -1 -1 0.16 20280 1 0.03 -1 -1 33964 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 32 32 310 266 1 182 78 17 17 289 -1 unnamed_device 26.2 MiB 2.50 818 12362 5466 6567 329 64.8 MiB 0.09 0.00 3.25048 -108.694 -3.25048 3.25048 0.96 0.000444862 0.000404868 0.0357191 0.0325779 40 2210 28 6.99608e+06 206020 706193. 2443.58 3.21 0.148636 0.130524 26914 176310 -1 2012 22 1655 2267 286511 78662 4.24811 4.24811 -142.004 -4.24811 0 0 926341. 3205.33 0.36 0.10 0.16 -1 -1 0.36 0.0250155 0.0223058 79 55 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_106.v common 6.59 vpr 64.80 MiB -1 -1 0.16 20132 1 0.03 -1 -1 33548 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 31 32 326 261 1 193 78 17 17 289 -1 unnamed_device 26.5 MiB 0.90 757 11200 3996 5321 1883 64.8 MiB 0.08 0.00 3.35878 -99.9459 -3.35878 3.35878 0.97 0.000484968 0.000442575 0.0349173 0.0318944 50 2011 21 6.99608e+06 220735 902133. 3121.57 2.23 0.147991 0.13032 28642 213929 -1 1551 21 1572 2290 155842 38434 3.65252 3.65252 -123.358 -3.65252 0 0 1.08113e+06 3740.92 0.42 0.07 0.20 -1 -1 0.42 0.0240295 0.0214374 80 29 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_107.v common 6.76 vpr 64.62 MiB -1 -1 0.16 20500 1 0.03 -1 -1 33956 -1 -1 13 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 29 32 262 224 1 162 74 17 17 289 -1 unnamed_device 26.2 MiB 1.02 606 9839 4101 5178 560 64.6 MiB 0.07 0.00 3.02297 -87.5909 -3.02297 3.02297 0.98 0.000389322 0.000353832 0.0279307 0.0255056 44 2020 30 6.99608e+06 191304 787024. 2723.27 2.35 0.140383 0.123915 27778 195446 -1 1178 20 1005 1304 78034 21735 3.09411 3.09411 -101.553 -3.09411 0 0 997811. 3452.63 0.41 0.05 0.18 -1 -1 0.41 0.0197001 0.0175046 68 25 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_108.v common 13.84 vpr 64.94 MiB -1 -1 0.15 20332 1 0.03 -1 -1 33728 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 278 238 1 178 76 17 17 289 -1 unnamed_device 26.5 MiB 0.89 938 11596 4367 5545 1684 64.9 MiB 0.08 0.00 3.40815 -110.366 -3.40815 3.40815 0.96 0.000434145 0.00039395 0.033045 0.0301025 40 2354 29 6.99608e+06 176588 706193. 2443.58 9.62 0.252249 0.219281 26914 176310 -1 2125 20 1377 1843 204005 38838 3.62816 3.62816 -132.197 -3.62816 0 0 926341. 3205.33 0.37 0.07 0.16 -1 -1 0.37 0.0210658 0.0187801 73 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_109.v common 7.51 vpr 65.45 MiB -1 -1 0.17 20632 1 0.03 -1 -1 33940 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 31 32 373 300 1 231 80 17 17 289 -1 unnamed_device 26.9 MiB 1.03 998 10572 3647 5212 1713 65.4 MiB 0.09 0.00 3.61381 -116.286 -3.61381 3.61381 0.96 0.000507003 0.000461733 0.0345076 0.0314936 46 2875 28 6.99608e+06 250167 828058. 2865.25 3.07 0.16209 0.141525 28066 200906 -1 2240 19 1864 2542 200459 44742 4.01336 4.01336 -145.536 -4.01336 0 0 1.01997e+06 3529.29 0.39 0.07 0.19 -1 -1 0.39 0.0245254 0.0218616 101 60 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_110.v common 14.56 vpr 64.88 MiB -1 -1 0.15 20408 1 0.03 -1 -1 33848 -1 -1 13 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 31 32 265 230 1 171 76 17 17 289 -1 unnamed_device 26.4 MiB 0.89 668 11596 4832 6379 385 64.9 MiB 0.08 0.00 3.10427 -93.1977 -3.10427 3.10427 0.98 0.000404131 0.000367465 0.0319099 0.0290986 40 2299 33 6.99608e+06 191304 706193. 2443.58 10.32 0.254422 0.222495 26914 176310 -1 1792 18 1151 1599 146060 31943 3.36681 3.36681 -115.791 -3.36681 0 0 926341. 3205.33 0.37 0.06 0.16 -1 -1 0.37 0.0193097 0.0172908 71 30 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_111.v common 7.72 vpr 65.33 MiB -1 -1 0.17 20712 1 0.03 -1 -1 33996 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66900 32 32 349 286 1 207 79 17 17 289 -1 unnamed_device 26.9 MiB 1.22 1039 11064 4217 5765 1082 65.3 MiB 0.09 0.00 2.87229 -99.4775 -2.87229 2.87229 0.97 0.00051102 0.000465645 0.0361615 0.0329621 36 3357 31 6.99608e+06 220735 648988. 2245.63 3.18 0.139673 0.122676 26050 158493 -1 2432 20 1571 2102 206496 41871 3.64366 3.64366 -133.317 -3.64366 0 0 828058. 2865.25 0.33 0.08 0.15 -1 -1 0.33 0.0249069 0.0222391 91 54 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_112.v common 24.88 vpr 65.61 MiB -1 -1 0.18 20736 1 0.03 -1 -1 33924 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67184 31 32 396 325 1 255 83 17 17 289 -1 unnamed_device 27.2 MiB 2.97 1134 11063 4202 5771 1090 65.6 MiB 0.10 0.00 3.80112 -129.442 -3.80112 3.80112 0.98 0.000536483 0.000486807 0.0364354 0.0331968 48 3134 39 6.99608e+06 294314 865456. 2994.66 18.35 0.347674 0.303087 28354 207349 -1 2640 20 2468 3444 362405 73401 4.62739 4.62739 -166.299 -4.62739 0 0 1.05005e+06 3633.38 0.40 0.11 0.20 -1 -1 0.40 0.0271731 0.0243006 113 87 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_113.v common 19.63 vpr 64.97 MiB -1 -1 0.15 20144 1 0.03 -1 -1 33660 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66532 32 32 303 262 1 192 76 17 17 289 -1 unnamed_device 26.3 MiB 2.11 722 9676 3479 4475 1722 65.0 MiB 0.07 0.00 2.79904 -93.1152 -2.79904 2.79904 0.99 0.000460878 0.000415165 0.0294562 0.0268722 48 2432 30 6.99608e+06 176588 865456. 2994.66 14.03 0.250813 0.2173 28354 207349 -1 1886 21 1665 2183 180068 43416 3.33581 3.33581 -124.822 -3.33581 0 0 1.05005e+06 3633.38 0.42 0.07 0.20 -1 -1 0.42 0.0220414 0.0195123 80 54 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_114.v common 13.46 vpr 64.91 MiB -1 -1 0.14 20284 1 0.03 -1 -1 33688 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 32 32 290 244 1 172 75 17 17 289 -1 unnamed_device 26.4 MiB 0.76 722 11609 3927 5546 2136 64.9 MiB 0.08 0.00 3.13712 -100.64 -3.13712 3.13712 0.94 0.000392717 0.000355736 0.0317736 0.0287117 40 2156 44 6.99608e+06 161872 706193. 2443.58 9.48 0.256115 0.221875 26914 176310 -1 1595 22 1339 1908 131390 34537 3.59811 3.59811 -121.496 -3.59811 0 0 926341. 3205.33 0.35 0.06 0.15 -1 -1 0.35 0.0207767 0.0184099 72 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_115.v common 10.02 vpr 65.09 MiB -1 -1 0.15 20340 1 0.03 -1 -1 33700 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66656 32 32 318 257 1 191 78 17 17 289 -1 unnamed_device 26.5 MiB 1.67 834 11200 4634 6158 408 65.1 MiB 0.08 0.00 3.36978 -103.576 -3.36978 3.36978 0.95 0.000469698 0.000426148 0.0351273 0.0320726 48 2169 28 6.99608e+06 206020 865456. 2994.66 4.94 0.192013 0.166685 28354 207349 -1 1753 20 1517 2128 148194 34854 3.72172 3.72172 -126.699 -3.72172 0 0 1.05005e+06 3633.38 0.42 0.06 0.20 -1 -1 0.42 0.0227501 0.0202683 79 27 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_116.v common 8.62 vpr 65.17 MiB -1 -1 0.17 20544 1 0.03 -1 -1 34056 -1 -1 18 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 29 32 324 268 1 195 79 17 17 289 -1 unnamed_device 26.8 MiB 1.68 862 10219 4251 5344 624 65.2 MiB 0.07 0.00 2.89747 -87.1647 -2.89747 2.89747 0.96 0.000446244 0.000405626 0.0306753 0.0279005 40 2685 41 6.99608e+06 264882 706193. 2443.58 3.56 0.16372 0.14361 26914 176310 -1 2080 31 1868 2619 313123 107781 3.55882 3.55882 -112.689 -3.55882 0 0 926341. 3205.33 0.35 0.12 0.17 -1 -1 0.35 0.0316679 0.0278551 88 49 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_117.v common 9.89 vpr 65.39 MiB -1 -1 0.16 20528 1 0.03 -1 -1 33784 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 32 32 393 312 1 235 81 17 17 289 -1 unnamed_device 26.8 MiB 1.61 1292 11981 4470 5947 1564 65.4 MiB 0.10 0.00 4.35209 -146.514 -4.35209 4.35209 0.94 0.00054555 0.000490914 0.041382 0.0375227 40 3621 23 6.99608e+06 250167 706193. 2443.58 4.89 0.237975 0.206987 26914 176310 -1 3228 19 2397 3654 355978 70721 5.0221 5.0221 -186.27 -5.0221 0 0 926341. 3205.33 0.35 0.11 0.16 -1 -1 0.35 0.0279932 0.0249959 105 62 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_118.v common 8.76 vpr 64.63 MiB -1 -1 0.14 20208 1 0.03 -1 -1 33784 -1 -1 13 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 31 32 229 197 1 137 76 17 17 289 -1 unnamed_device 26.1 MiB 0.98 841 12716 4556 6340 1820 64.6 MiB 0.08 0.00 2.70223 -81.2143 -2.70223 2.70223 0.94 0.000366298 0.000334202 0.0313375 0.0286493 34 2046 27 6.99608e+06 191304 618332. 2139.56 4.60 0.165794 0.143763 25762 151098 -1 1788 21 999 1600 152648 30780 2.78632 2.78632 -103.263 -2.78632 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0181277 0.0159848 54 -1 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_119.v common 9.43 vpr 65.81 MiB -1 -1 0.16 20540 1 0.03 -1 -1 33696 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67388 32 32 412 334 1 258 84 17 17 289 -1 unnamed_device 27.2 MiB 2.97 1180 15822 6054 7062 2706 65.8 MiB 0.12 0.00 3.87123 -131.912 -3.87123 3.87123 0.94 0.000554264 0.000502457 0.0505685 0.0459954 38 3994 33 6.99608e+06 294314 678818. 2348.85 3.09 0.175861 0.15545 26626 170182 -1 3057 21 2449 3067 292386 61744 5.2379 5.2379 -186.718 -5.2379 0 0 902133. 3121.57 0.35 0.10 0.15 -1 -1 0.35 0.0303609 0.0270597 116 87 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_120.v common 10.85 vpr 65.36 MiB -1 -1 0.16 20516 1 0.03 -1 -1 33728 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66924 32 32 376 318 1 253 80 17 17 289 -1 unnamed_device 26.6 MiB 0.97 945 11604 4837 6431 336 65.4 MiB 0.09 0.00 3.63182 -126.713 -3.63182 3.63182 0.96 0.000547097 0.000495629 0.0377244 0.0343465 46 3220 47 6.99608e+06 235451 828058. 2865.25 6.41 0.187138 0.16403 28066 200906 -1 2157 22 2576 3248 307437 67830 4.3546 4.3546 -157.593 -4.3546 0 0 1.01997e+06 3529.29 0.39 0.10 0.19 -1 -1 0.39 0.0280082 0.0250149 110 93 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_121.v common 9.81 vpr 65.14 MiB -1 -1 0.17 20836 1 0.03 -1 -1 33836 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66700 32 32 360 293 1 219 79 17 17 289 -1 unnamed_device 26.7 MiB 1.57 998 9036 3650 5045 341 65.1 MiB 0.08 0.00 3.03377 -100.173 -3.03377 3.03377 0.96 0.000504787 0.000459073 0.0302188 0.0276032 44 2815 41 6.99608e+06 220735 787024. 2723.27 4.85 0.230104 0.200698 27778 195446 -1 2022 21 1521 2038 138886 31608 3.34951 3.34951 -122.125 -3.34951 0 0 997811. 3452.63 0.39 0.07 0.19 -1 -1 0.39 0.0257737 0.0229309 94 57 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_122.v common 8.07 vpr 65.62 MiB -1 -1 0.17 20512 1 0.03 -1 -1 33764 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67196 32 32 396 299 1 228 79 17 17 289 -1 unnamed_device 27.0 MiB 1.04 1132 14444 5309 6767 2368 65.6 MiB 0.13 0.00 4.65368 -140.023 -4.65368 4.65368 0.98 0.00057248 0.000520431 0.0519823 0.0474227 46 3038 33 6.99608e+06 220735 828058. 2865.25 3.48 0.197569 0.174086 28066 200906 -1 2440 22 2102 3144 258061 51832 4.8595 4.8595 -165.481 -4.8595 0 0 1.01997e+06 3529.29 0.40 0.09 0.19 -1 -1 0.40 0.0292925 0.0261703 98 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_123.v common 11.61 vpr 64.32 MiB -1 -1 0.14 20304 1 0.03 -1 -1 33812 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65868 30 32 224 207 1 132 74 17 17 289 -1 unnamed_device 25.8 MiB 0.72 479 9529 3121 5078 1330 64.3 MiB 0.06 0.00 2.28455 -79.4386 -2.28455 2.28455 0.98 0.000350518 0.000321301 0.0234997 0.0214708 40 1375 29 6.99608e+06 176588 706193. 2443.58 7.62 0.192607 0.166255 26914 176310 -1 1167 21 896 1114 106318 25749 2.65968 2.65968 -99.1298 -2.65968 0 0 926341. 3205.33 0.34 0.05 0.17 -1 -1 0.34 0.0170752 0.0150924 53 29 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_124.v common 11.09 vpr 64.67 MiB -1 -1 0.15 20276 1 0.03 -1 -1 33644 -1 -1 14 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 30 32 286 239 1 157 76 17 17 289 -1 unnamed_device 26.2 MiB 3.70 622 11276 3909 5778 1589 64.7 MiB 0.08 0.00 3.15062 -95.7915 -3.15062 3.15062 0.94 0.000396666 0.000359625 0.0311551 0.0283115 46 1580 20 6.99608e+06 206020 828058. 2865.25 4.08 0.195191 0.16905 28066 200906 -1 1390 23 889 1416 160748 38954 3.56606 3.56606 -122.412 -3.56606 0 0 1.01997e+06 3529.29 0.40 0.06 0.18 -1 -1 0.40 0.0215859 0.0190333 68 29 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_125.v common 19.82 vpr 65.00 MiB -1 -1 0.15 20144 1 0.03 -1 -1 33880 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 32 32 296 247 1 182 81 17 17 289 -1 unnamed_device 26.5 MiB 0.63 727 11106 4168 5512 1426 65.0 MiB 0.08 0.00 3.05994 -96.9807 -3.05994 3.05994 0.97 0.000447098 0.000407399 0.0310514 0.0283238 50 2260 31 6.99608e+06 250167 902133. 3121.57 15.77 0.252176 0.219428 28642 213929 -1 1777 24 1401 2211 229794 50355 3.60636 3.60636 -129.999 -3.60636 0 0 1.08113e+06 3740.92 0.41 0.08 0.20 -1 -1 0.41 0.0239596 0.0211671 78 31 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_126.v common 7.29 vpr 64.48 MiB -1 -1 0.15 20300 1 0.03 -1 -1 33840 -1 -1 16 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66032 25 32 216 194 1 136 73 17 17 289 -1 unnamed_device 25.9 MiB 1.16 490 7825 3171 3964 690 64.5 MiB 0.05 0.00 2.77723 -63.3331 -2.77723 2.77723 0.98 0.000339224 0.000308425 0.0192032 0.0175167 38 1645 28 6.99608e+06 235451 678818. 2348.85 2.91 0.107179 0.093396 26626 170182 -1 1037 20 796 1065 63026 16013 2.95662 2.95662 -78.8281 -2.95662 0 0 902133. 3121.57 0.36 0.04 0.16 -1 -1 0.36 0.0162875 0.01445 59 19 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_127.v common 11.39 vpr 65.43 MiB -1 -1 0.16 20576 1 0.03 -1 -1 33972 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67004 32 32 376 307 1 234 81 17 17 289 -1 unnamed_device 26.9 MiB 3.34 1234 10581 2568 6699 1314 65.4 MiB 0.09 0.00 3.12752 -107.9 -3.12752 3.12752 0.95 0.000538578 0.000492222 0.0347053 0.0317499 46 2988 21 6.99608e+06 250167 828058. 2865.25 4.62 0.233571 0.205414 28066 200906 -1 2475 20 1945 2876 207905 43904 3.66072 3.66072 -131.363 -3.66072 0 0 1.01997e+06 3529.29 0.40 0.08 0.19 -1 -1 0.40 0.0273253 0.0244891 103 69 -1 -1 -1 -1 -fixed_k6_frac_2uripple_N8_22nm.xml mult_128.v common 11.20 vpr 65.35 MiB -1 -1 0.18 20760 1 0.03 -1 -1 33752 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66916 31 32 409 331 1 258 82 17 17 289 -1 unnamed_device 26.8 MiB 2.62 1162 15568 6070 6724 2774 65.3 MiB 0.13 0.00 3.58081 -118.825 -3.58081 3.58081 0.97 0.000564026 0.000513035 0.0524486 0.0477896 46 3130 26 6.99608e+06 279598 828058. 2865.25 5.06 0.254341 0.222835 28066 200906 -1 2322 24 2126 2851 208153 45875 4.23845 4.23845 -148.194 -4.23845 0 0 1.01997e+06 3529.29 0.40 0.09 0.19 -1 -1 0.40 0.0318388 0.0283159 117 86 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_001.v common 17.26 vpr 64.68 MiB -1 -1 0.23 20956 14 0.32 -1 -1 37192 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 32 32 277 309 1 203 83 17 17 289 -1 unnamed_device 26.3 MiB 1.97 1299 10523 2778 6382 1363 64.7 MiB 0.09 0.00 6.81046 -146.858 -6.81046 6.81046 0.93 0.000628061 0.000567725 0.0400117 0.0362747 36 3672 24 6.79088e+06 255968 648988. 2245.63 11.60 0.285878 0.249661 25390 158009 -1 3031 22 1600 4520 284403 61028 7.33618 7.33618 -169.083 -7.33618 0 0 828058. 2865.25 0.33 0.11 0.15 -1 -1 0.33 0.037231 0.0334405 130 182 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_002.v common 10.40 vpr 64.80 MiB -1 -1 0.23 20788 14 0.35 -1 -1 36468 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 30 32 272 304 1 194 81 17 17 289 -1 unnamed_device 26.4 MiB 2.57 1040 10581 2735 5587 2259 64.8 MiB 0.09 0.00 6.24419 -126.365 -6.24419 6.24419 0.95 0.000612963 0.000560092 0.0408935 0.0370097 34 3433 36 6.79088e+06 255968 618332. 2139.56 4.15 0.220851 0.194832 25102 150614 -1 2846 22 1563 4302 293522 65894 7.20733 7.20733 -160.059 -7.20733 0 0 787024. 2723.27 0.31 0.10 0.13 -1 -1 0.31 0.0348505 0.0311806 125 181 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_003.v common 12.81 vpr 64.81 MiB -1 -1 0.21 20672 11 0.29 -1 -1 36684 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 32 32 280 312 1 193 83 17 17 289 -1 unnamed_device 26.4 MiB 3.92 1253 8543 2297 5708 538 64.8 MiB 0.08 0.00 5.55944 -125.582 -5.55944 5.55944 0.94 0.000618069 0.000560342 0.0335358 0.0303955 36 3229 30 6.79088e+06 255968 648988. 2245.63 5.25 0.268414 0.235052 25390 158009 -1 2765 17 1269 3695 216110 48332 6.0572 6.0572 -145.754 -6.0572 0 0 828058. 2865.25 0.34 0.08 0.14 -1 -1 0.34 0.0310439 0.0281058 130 185 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_004.v common 7.46 vpr 65.03 MiB -1 -1 0.22 20528 12 0.41 -1 -1 36236 -1 -1 24 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 29 32 275 307 1 202 85 17 17 289 -1 unnamed_device 26.6 MiB 1.30 1191 5665 1381 3728 556 65.0 MiB 0.06 0.00 6.16917 -123.049 -6.16917 6.16917 0.93 0.000626297 0.000565894 0.0229646 0.0209245 38 2917 22 6.79088e+06 323328 678818. 2348.85 2.43 0.173228 0.15181 25966 169698 -1 2430 17 1253 3534 170307 39210 6.36938 6.36938 -137.392 -6.36938 0 0 902133. 3121.57 0.36 0.07 0.16 -1 -1 0.36 0.031901 0.0289424 136 186 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_005.v common 9.22 vpr 65.04 MiB -1 -1 0.23 20980 13 0.35 -1 -1 36300 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 32 32 302 334 1 234 86 17 17 289 -1 unnamed_device 26.5 MiB 2.10 1366 11615 3128 7379 1108 65.0 MiB 0.11 0.00 6.88531 -147.057 -6.88531 6.88531 0.96 0.000710471 0.000647554 0.047762 0.0433863 38 3674 31 6.79088e+06 296384 678818. 2348.85 3.34 0.233362 0.206369 25966 169698 -1 2989 15 1447 3795 198280 45178 7.13591 7.13591 -163.814 -7.13591 0 0 902133. 3121.57 0.33 0.07 0.16 -1 -1 0.33 0.0295655 0.0267772 152 207 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_006.v common 22.19 vpr 64.95 MiB -1 -1 0.24 20772 13 0.31 -1 -1 36456 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 32 32 292 324 1 210 83 17 17 289 -1 unnamed_device 26.5 MiB 1.95 1303 11243 2808 6626 1809 64.9 MiB 0.10 0.00 6.45897 -132.965 -6.45897 6.45897 0.94 0.000660496 0.000595336 0.0451985 0.0407985 38 3327 26 6.79088e+06 255968 678818. 2348.85 16.54 0.356729 0.310076 25966 169698 -1 2881 19 1343 4141 211307 47509 6.83487 6.83487 -155.001 -6.83487 0 0 902133. 3121.57 0.33 0.08 0.16 -1 -1 0.33 0.0325155 0.0292254 137 197 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_007.v common 6.24 vpr 64.51 MiB -1 -1 0.18 20548 12 0.23 -1 -1 36552 -1 -1 21 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66060 27 32 229 261 1 168 80 17 17 289 -1 unnamed_device 26.1 MiB 1.54 855 8336 2203 5398 735 64.5 MiB 0.07 0.00 5.62102 -103.783 -5.62102 5.62102 0.93 0.000542666 0.000492072 0.0283114 0.0256968 30 2561 37 6.79088e+06 282912 556674. 1926.21 1.37 0.123378 0.108344 24526 138013 -1 1946 18 1103 2594 138224 32534 6.20483 6.20483 -124.443 -6.20483 0 0 706193. 2443.58 0.29 0.06 0.12 -1 -1 0.29 0.025055 0.022392 106 144 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_008.v common 22.59 vpr 64.38 MiB -1 -1 0.19 20536 12 0.24 -1 -1 36388 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 31 32 229 261 1 188 80 17 17 289 -1 unnamed_device 25.9 MiB 3.29 1145 12636 4174 6508 1954 64.4 MiB 0.10 0.00 5.2739 -114.048 -5.2739 5.2739 0.93 0.000515105 0.000468095 0.0414477 0.0377673 36 3442 48 6.79088e+06 229024 648988. 2245.63 15.82 0.294262 0.257836 25390 158009 -1 2797 20 1293 3311 228694 49212 5.65324 5.65324 -137.45 -5.65324 0 0 828058. 2865.25 0.31 0.08 0.15 -1 -1 0.31 0.0268302 0.0237972 106 136 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_009.v common 9.96 vpr 64.34 MiB -1 -1 0.22 20424 12 0.21 -1 -1 36592 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65884 31 32 235 267 1 194 83 17 17 289 -1 unnamed_device 25.8 MiB 3.63 1133 5483 1060 4224 199 64.3 MiB 0.05 0.00 5.70019 -124.604 -5.70019 5.70019 0.98 0.00054621 0.000496898 0.0201244 0.0183905 38 3034 45 6.79088e+06 269440 678818. 2348.85 2.79 0.176588 0.155028 25966 169698 -1 2434 16 1179 3097 179690 39241 6.07609 6.07609 -142.229 -6.07609 0 0 902133. 3121.57 0.33 0.07 0.16 -1 -1 0.33 0.0234633 0.0211285 113 142 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_010.v common 11.07 vpr 64.75 MiB -1 -1 0.21 20540 13 0.24 -1 -1 36708 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 32 32 250 282 1 182 79 17 17 289 -1 unnamed_device 26.2 MiB 2.50 1138 11402 3072 6495 1835 64.8 MiB 0.09 0.00 6.15798 -138.641 -6.15798 6.15798 0.93 0.000572512 0.000517884 0.0413511 0.0375159 36 3056 31 6.79088e+06 202080 648988. 2245.63 5.07 0.270493 0.235884 25390 158009 -1 2449 17 1076 2621 152862 35035 6.49817 6.49817 -160.078 -6.49817 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.0267893 0.024218 106 155 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_011.v common 12.42 vpr 64.50 MiB -1 -1 0.21 20508 12 0.23 -1 -1 36404 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 30 32 216 248 1 161 79 17 17 289 -1 unnamed_device 26.1 MiB 2.06 989 12078 3726 6350 2002 64.5 MiB 0.09 0.00 5.74288 -123.577 -5.74288 5.74288 0.96 0.000516599 0.000466833 0.0392753 0.0355871 30 2636 34 6.79088e+06 229024 556674. 1926.21 6.88 0.196744 0.171888 24526 138013 -1 1984 17 854 2069 104428 24689 6.02149 6.02149 -139.714 -6.02149 0 0 706193. 2443.58 0.30 0.05 0.13 -1 -1 0.30 0.0235041 0.0212064 96 125 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_012.v common 10.79 vpr 64.61 MiB -1 -1 0.20 20624 12 0.19 -1 -1 36548 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 32 32 236 268 1 171 81 17 17 289 -1 unnamed_device 26.1 MiB 2.80 1051 8831 2517 5014 1300 64.6 MiB 0.07 0.00 5.05901 -126.733 -5.05901 5.05901 0.97 0.000532786 0.000484359 0.0300436 0.0272463 44 2602 16 6.79088e+06 229024 787024. 2723.27 4.45 0.200732 0.175305 27118 194962 -1 2163 15 938 2513 132834 29872 5.30961 5.30961 -140.806 -5.30961 0 0 997811. 3452.63 0.38 0.05 0.18 -1 -1 0.38 0.0217292 0.0195989 101 141 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_013.v common 8.05 vpr 64.83 MiB -1 -1 0.23 20908 13 0.32 -1 -1 35964 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 32 32 283 315 1 215 84 17 17 289 -1 unnamed_device 26.4 MiB 2.28 1365 12528 3458 6809 2261 64.8 MiB 0.11 0.00 6.68505 -140.507 -6.68505 6.68505 0.93 0.000628268 0.000557401 0.0475346 0.0430928 38 3314 27 6.79088e+06 269440 678818. 2348.85 2.05 0.179962 0.159061 25966 169698 -1 2830 15 1238 3320 186698 41099 7.06095 7.06095 -163.164 -7.06095 0 0 902133. 3121.57 0.36 0.07 0.16 -1 -1 0.36 0.0277323 0.025187 134 188 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_014.v common 8.59 vpr 65.01 MiB -1 -1 0.23 20732 14 0.38 -1 -1 36788 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 32 32 303 335 1 230 86 17 17 289 -1 unnamed_device 26.5 MiB 2.28 1404 6890 1519 4936 435 65.0 MiB 0.07 0.00 7.01072 -151.737 -7.01072 7.01072 0.98 0.000720525 0.000644078 0.0301508 0.0272419 40 3266 31 6.79088e+06 296384 706193. 2443.58 2.47 0.231133 0.204221 26254 175826 -1 3053 20 1628 4095 242186 54877 7.47267 7.47267 -172.737 -7.47267 0 0 926341. 3205.33 0.37 0.09 0.16 -1 -1 0.37 0.035579 0.0319821 151 208 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_015.v common 11.05 vpr 64.16 MiB -1 -1 0.19 20408 11 0.22 -1 -1 36496 -1 -1 21 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65696 29 32 225 257 1 176 82 17 17 289 -1 unnamed_device 25.7 MiB 2.82 923 11474 4154 5232 2088 64.2 MiB 0.09 0.00 5.52794 -112.023 -5.52794 5.52794 0.93 0.000505177 0.000457215 0.0360539 0.032755 44 2485 23 6.79088e+06 282912 787024. 2723.27 4.62 0.238476 0.208243 27118 194962 -1 1950 32 1011 2478 312238 153704 5.77854 5.77854 -126.753 -5.77854 0 0 997811. 3452.63 0.40 0.14 0.18 -1 -1 0.40 0.0373262 0.0330992 106 136 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_016.v common 10.22 vpr 65.07 MiB -1 -1 0.23 20728 12 0.35 -1 -1 36416 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 32 32 301 333 1 221 88 17 17 289 -1 unnamed_device 26.5 MiB 1.71 1140 13348 3535 7104 2709 65.1 MiB 0.12 0.00 6.12997 -130.612 -6.12997 6.12997 0.97 0.000692136 0.000625187 0.0521465 0.0472679 46 3419 42 6.79088e+06 323328 828058. 2865.25 4.58 0.246546 0.216735 27406 200422 -1 2644 31 1506 4789 398275 142505 6.83138 6.83138 -155.028 -6.83138 0 0 1.01997e+06 3529.29 0.38 0.15 0.19 -1 -1 0.38 0.0475451 0.0422937 145 206 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_017.v common 12.52 vpr 64.91 MiB -1 -1 0.22 20808 14 0.30 -1 -1 36584 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 277 309 1 210 83 17 17 289 -1 unnamed_device 26.5 MiB 2.62 1341 7103 1796 4851 456 64.9 MiB 0.07 0.00 6.59895 -142.265 -6.59895 6.59895 0.93 0.00059692 0.000538126 0.0280339 0.0254169 38 3648 31 6.79088e+06 255968 678818. 2348.85 6.30 0.201566 0.177794 25966 169698 -1 2977 15 1310 3722 217820 46492 7.22545 7.22545 -165.27 -7.22545 0 0 902133. 3121.57 0.34 0.08 0.14 -1 -1 0.34 0.0279766 0.0253782 126 182 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_018.v common 12.60 vpr 64.50 MiB -1 -1 0.20 20780 12 0.20 -1 -1 36392 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 32 32 227 259 1 172 79 17 17 289 -1 unnamed_device 26.0 MiB 2.08 918 12078 5073 6627 378 64.5 MiB 0.09 0.00 5.71487 -130.672 -5.71487 5.71487 0.94 0.000521764 0.000471102 0.0405879 0.0367122 36 2889 44 6.79088e+06 202080 648988. 2245.63 7.06 0.257809 0.224273 25390 158009 -1 2217 17 1036 2566 160123 36453 5.84017 5.84017 -145.994 -5.84017 0 0 828058. 2865.25 0.32 0.06 0.15 -1 -1 0.32 0.0236909 0.021327 105 132 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_019.v common 9.79 vpr 63.75 MiB -1 -1 0.18 20168 10 0.12 -1 -1 36728 -1 -1 13 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65280 30 32 175 207 1 133 75 17 17 289 -1 unnamed_device 25.3 MiB 2.41 792 8765 2915 4474 1376 63.8 MiB 0.06 0.00 4.04526 -100.707 -4.04526 4.04526 0.93 0.000404718 0.000367681 0.0234848 0.0213098 36 2040 23 6.79088e+06 175136 648988. 2245.63 4.14 0.141632 0.12273 25390 158009 -1 1689 15 651 1453 98002 21538 4.20278 4.20278 -117.736 -4.20278 0 0 828058. 2865.25 0.33 0.04 0.15 -1 -1 0.33 0.0170487 0.0153682 66 84 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_020.v common 10.21 vpr 64.31 MiB -1 -1 0.20 20512 13 0.23 -1 -1 36096 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65856 31 32 231 263 1 186 81 17 17 289 -1 unnamed_device 25.8 MiB 2.58 1123 12156 3644 6546 1966 64.3 MiB 0.10 0.00 6.16922 -132.125 -6.16922 6.16922 0.96 0.000535341 0.000486143 0.0412404 0.0375444 36 2955 20 6.79088e+06 242496 648988. 2245.63 4.10 0.173362 0.15268 25390 158009 -1 2369 19 1080 2563 166156 39708 6.41628 6.41628 -148.504 -6.41628 0 0 828058. 2865.25 0.31 0.07 0.15 -1 -1 0.31 0.0273252 0.0244994 107 138 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_021.v common 10.91 vpr 65.12 MiB -1 -1 0.23 20800 13 0.36 -1 -1 36300 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 304 336 1 224 85 17 17 289 -1 unnamed_device 26.6 MiB 2.24 1341 14035 4079 8203 1753 65.1 MiB 0.13 0.00 6.38406 -139.509 -6.38406 6.38406 0.94 0.000692484 0.000628013 0.0563446 0.0510414 44 3467 21 6.79088e+06 282912 787024. 2723.27 4.84 0.290169 0.255028 27118 194962 -1 2831 18 1401 3916 212274 47405 6.54507 6.54507 -154.76 -6.54507 0 0 997811. 3452.63 0.38 0.08 0.18 -1 -1 0.38 0.0320077 0.0288544 143 209 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_022.v common 11.33 vpr 64.98 MiB -1 -1 0.24 20676 13 0.36 -1 -1 36740 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66536 32 32 288 320 1 216 85 17 17 289 -1 unnamed_device 26.5 MiB 2.76 1414 10129 2962 5945 1222 65.0 MiB 0.09 0.00 6.21612 -140.759 -6.21612 6.21612 0.93 0.000656887 0.000587007 0.0396089 0.0357035 38 3926 40 6.79088e+06 282912 678818. 2348.85 4.78 0.227354 0.199854 25966 169698 -1 3305 18 1408 4168 262278 55329 6.71732 6.71732 -161.021 -6.71732 0 0 902133. 3121.57 0.35 0.09 0.16 -1 -1 0.35 0.0339237 0.0307966 141 193 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_023.v common 5.62 vpr 64.03 MiB -1 -1 0.16 20128 9 0.11 -1 -1 36160 -1 -1 18 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65564 26 32 152 184 1 122 76 17 17 289 -1 unnamed_device 25.6 MiB 1.38 674 11276 4270 5797 1209 64.0 MiB 0.07 0.00 3.8527 -78.6612 -3.8527 3.8527 0.98 0.000367706 0.000332699 0.0275103 0.0250869 30 1649 19 6.79088e+06 242496 556674. 1926.21 0.99 0.075689 0.0667521 24526 138013 -1 1320 15 627 1410 70100 16893 3.8527 3.8527 -88.9122 -3.8527 0 0 706193. 2443.58 0.29 0.04 0.13 -1 -1 0.29 0.0156302 0.013982 67 69 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_024.v common 10.68 vpr 64.86 MiB -1 -1 0.21 20552 13 0.35 -1 -1 36380 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 32 32 287 319 1 214 87 17 17 289 -1 unnamed_device 26.4 MiB 2.26 1311 8919 2297 6321 301 64.9 MiB 0.09 0.00 6.87423 -142.05 -6.87423 6.87423 0.97 0.000625599 0.000557094 0.0356567 0.032218 44 3190 21 6.79088e+06 309856 787024. 2723.27 4.56 0.275027 0.242591 27118 194962 -1 2618 16 1363 3645 195802 43997 7.12483 7.12483 -157.277 -7.12483 0 0 997811. 3452.63 0.40 0.08 0.18 -1 -1 0.40 0.0314589 0.0286075 136 192 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_025.v common 11.61 vpr 64.04 MiB -1 -1 0.16 20044 8 0.11 -1 -1 36056 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65580 32 32 154 186 1 126 75 17 17 289 -1 unnamed_device 25.7 MiB 2.37 594 4973 1132 3695 146 64.0 MiB 0.04 0.00 3.54052 -79.1271 -3.54052 3.54052 0.93 0.000358044 0.000325899 0.0128407 0.0117094 30 2154 45 6.79088e+06 148192 556674. 1926.21 6.13 0.130205 0.112843 24526 138013 -1 1510 20 698 1510 80703 20544 3.73718 3.73718 -97.2866 -3.73718 0 0 706193. 2443.58 0.29 0.04 0.13 -1 -1 0.29 0.0165499 0.0146817 60 59 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_026.v common 9.77 vpr 64.84 MiB -1 -1 0.22 20556 15 0.29 -1 -1 36328 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 254 286 1 202 82 17 17 289 -1 unnamed_device 26.5 MiB 2.64 1261 13254 4224 6686 2344 64.8 MiB 0.11 0.00 7.39781 -151.302 -7.39781 7.39781 0.98 0.000605673 0.000541739 0.0489778 0.0445019 36 3847 36 6.79088e+06 242496 648988. 2245.63 3.43 0.178509 0.15746 25390 158009 -1 3034 18 1444 4127 268813 58703 7.55107 7.55107 -170.138 -7.55107 0 0 828058. 2865.25 0.31 0.09 0.15 -1 -1 0.31 0.0281639 0.025349 121 159 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_027.v common 9.68 vpr 64.49 MiB -1 -1 0.20 20480 13 0.27 -1 -1 36700 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66040 32 32 260 292 1 195 82 17 17 289 -1 unnamed_device 26.1 MiB 2.12 1140 10762 2946 5653 2163 64.5 MiB 0.09 0.00 5.68905 -123.926 -5.68905 5.68905 0.93 0.000545438 0.00049081 0.0377908 0.0341748 40 2978 31 6.79088e+06 242496 706193. 2443.58 3.88 0.201496 0.17762 26254 175826 -1 2964 31 1370 4034 650022 302772 6.19025 6.19025 -145.399 -6.19025 0 0 926341. 3205.33 0.35 0.23 0.15 -1 -1 0.35 0.0455394 0.0407566 117 165 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_028.v common 10.13 vpr 64.91 MiB -1 -1 0.21 20808 13 0.34 -1 -1 36648 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 32 32 279 311 1 202 82 17 17 289 -1 unnamed_device 26.5 MiB 1.94 1164 12186 3851 6304 2031 64.9 MiB 0.11 0.00 6.49822 -139.112 -6.49822 6.49822 0.93 0.000627234 0.000563757 0.0468911 0.042438 46 2847 21 6.79088e+06 242496 828058. 2865.25 4.44 0.265316 0.231698 27406 200422 -1 2419 16 1279 3637 185296 42770 6.87412 6.87412 -157.813 -6.87412 0 0 1.01997e+06 3529.29 0.38 0.07 0.19 -1 -1 0.38 0.0285758 0.0258481 136 184 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_029.v common 10.04 vpr 64.51 MiB -1 -1 0.20 20400 12 0.20 -1 -1 36456 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66060 32 32 238 270 1 186 80 17 17 289 -1 unnamed_device 26.0 MiB 2.37 1104 11260 3726 5788 1746 64.5 MiB 0.09 0.00 5.61414 -128.399 -5.61414 5.61414 0.96 0.00049585 0.000442432 0.0383478 0.0346578 36 2820 31 6.79088e+06 215552 648988. 2245.63 4.17 0.175228 0.153174 25390 158009 -1 2302 16 969 2305 148969 32803 5.86474 5.86474 -145.44 -5.86474 0 0 828058. 2865.25 0.33 0.06 0.15 -1 -1 0.33 0.0253163 0.0229384 103 143 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_030.v common 8.83 vpr 64.34 MiB -1 -1 0.21 20496 11 0.19 -1 -1 36432 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65888 30 32 213 245 1 164 80 17 17 289 -1 unnamed_device 25.9 MiB 2.26 1022 9024 2221 5386 1417 64.3 MiB 0.08 0.00 5.07364 -114.347 -5.07364 5.07364 0.98 0.000526609 0.000481526 0.0290015 0.0263833 34 2870 38 6.79088e+06 242496 618332. 2139.56 3.12 0.135793 0.119064 25102 150614 -1 2402 22 1151 2765 196108 42621 5.64199 5.64199 -136.607 -5.64199 0 0 787024. 2723.27 0.30 0.07 0.14 -1 -1 0.30 0.026204 0.0233053 95 122 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_031.v common 8.16 vpr 64.48 MiB -1 -1 0.19 20480 11 0.21 -1 -1 36324 -1 -1 21 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66032 28 32 227 259 1 171 81 17 17 289 -1 unnamed_device 26.1 MiB 1.80 997 7781 1903 4744 1134 64.5 MiB 0.06 0.00 5.49223 -108.467 -5.49223 5.49223 0.93 0.000542882 0.000484705 0.0255346 0.0231583 34 2798 45 6.79088e+06 282912 618332. 2139.56 3.00 0.183018 0.16108 25102 150614 -1 2220 17 974 2652 172430 38216 5.99343 5.99343 -126.373 -5.99343 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0244641 0.0220213 109 140 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_032.v common 9.08 vpr 64.65 MiB -1 -1 0.19 20608 12 0.25 -1 -1 36700 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 32 32 274 306 1 209 81 17 17 289 -1 unnamed_device 26.3 MiB 3.04 1143 12506 4276 5841 2389 64.6 MiB 0.10 0.00 5.90738 -136.439 -5.90738 5.90738 0.94 0.000598377 0.000538195 0.0468526 0.0423895 36 3324 46 6.79088e+06 229024 648988. 2245.63 2.49 0.207605 0.182973 25390 158009 -1 2648 16 1362 3298 196291 45445 6.15798 6.15798 -154.707 -6.15798 0 0 828058. 2865.25 0.33 0.07 0.15 -1 -1 0.33 0.0269554 0.0242479 119 179 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_033.v common 8.40 vpr 64.51 MiB -1 -1 0.17 20504 12 0.18 -1 -1 36300 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66056 31 32 237 269 1 176 80 17 17 289 -1 unnamed_device 26.0 MiB 2.54 971 7648 1699 5716 233 64.5 MiB 0.06 0.00 5.55148 -116.926 -5.55148 5.55148 0.90 0.000512583 0.000467471 0.0258266 0.0236038 34 2955 22 6.79088e+06 229024 618332. 2139.56 2.59 0.125165 0.109637 25102 150614 -1 2255 20 1380 3595 201195 46352 5.98224 5.98224 -140.501 -5.98224 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0267726 0.0238963 101 144 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_034.v common 8.44 vpr 64.31 MiB -1 -1 0.20 20348 10 0.18 -1 -1 36328 -1 -1 17 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65852 29 32 220 252 1 166 78 17 17 289 -1 unnamed_device 25.8 MiB 1.80 976 9872 2681 6406 785 64.3 MiB 0.08 0.00 4.98748 -113.133 -4.98748 4.98748 0.92 0.000500068 0.000452085 0.0331072 0.0300179 36 2609 20 6.79088e+06 229024 648988. 2245.63 3.24 0.158722 0.139227 25390 158009 -1 2083 14 857 2337 135720 30390 5.23808 5.23808 -125.914 -5.23808 0 0 828058. 2865.25 0.33 0.05 0.15 -1 -1 0.33 0.0212025 0.0192177 103 131 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_035.v common 9.58 vpr 65.15 MiB -1 -1 0.23 21344 13 0.35 -1 -1 36668 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66716 32 32 315 347 1 232 85 17 17 289 -1 unnamed_device 26.6 MiB 2.11 1344 14035 4538 7322 2175 65.2 MiB 0.12 0.00 6.6382 -140.913 -6.6382 6.6382 0.92 0.000657345 0.000590431 0.0553058 0.0498077 46 3254 22 6.79088e+06 282912 828058. 2865.25 3.68 0.238632 0.210494 27406 200422 -1 2749 18 1485 4253 211608 47882 6.6851 6.6851 -154.139 -6.6851 0 0 1.01997e+06 3529.29 0.39 0.08 0.17 -1 -1 0.39 0.034676 0.0312681 149 220 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_036.v common 9.27 vpr 64.75 MiB -1 -1 0.23 21268 14 0.41 -1 -1 36800 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 32 32 282 314 1 225 82 17 17 289 -1 unnamed_device 26.3 MiB 2.62 1246 6668 1385 5059 224 64.8 MiB 0.07 0.00 6.74118 -146.348 -6.74118 6.74118 0.93 0.000633444 0.000572397 0.0280726 0.0254779 44 3474 26 6.79088e+06 242496 787024. 2723.27 2.79 0.186893 0.163896 27118 194962 -1 2713 17 1366 3757 196074 44765 7.07788 7.07788 -164.183 -7.07788 0 0 997811. 3452.63 0.38 0.08 0.18 -1 -1 0.38 0.0306914 0.0278111 136 187 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_037.v common 9.27 vpr 64.59 MiB -1 -1 0.20 20672 12 0.19 -1 -1 36380 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 31 32 241 273 1 173 79 17 17 289 -1 unnamed_device 26.1 MiB 2.62 1100 8867 2378 5663 826 64.6 MiB 0.07 0.00 5.82898 -130.14 -5.82898 5.82898 0.96 0.000560435 0.000506892 0.03194 0.0289122 34 2989 36 6.79088e+06 215552 618332. 2139.56 3.19 0.154907 0.135813 25102 150614 -1 2483 19 1094 3030 201715 43922 6.49119 6.49119 -154.028 -6.49119 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0252326 0.0225166 101 148 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_038.v common 12.79 vpr 64.75 MiB -1 -1 0.22 20672 12 0.34 -1 -1 36624 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 31 32 307 339 1 226 87 17 17 289 -1 unnamed_device 26.2 MiB 2.66 1378 8919 2182 5703 1034 64.8 MiB 0.08 0.00 6.09421 -131.718 -6.09421 6.09421 0.91 0.000758874 0.000685128 0.0351807 0.0320019 44 3592 40 6.79088e+06 323328 787024. 2723.27 6.44 0.290285 0.254007 27118 194962 -1 2809 17 1369 4155 223401 48918 6.34481 6.34481 -143.707 -6.34481 0 0 997811. 3452.63 0.37 0.08 0.18 -1 -1 0.37 0.0312757 0.0283403 146 214 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_039.v common 7.89 vpr 65.05 MiB -1 -1 0.23 20952 14 0.41 -1 -1 37052 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 31 32 293 325 1 209 85 17 17 289 -1 unnamed_device 26.6 MiB 1.56 1297 9757 2667 6293 797 65.1 MiB 0.09 0.00 6.88537 -142.73 -6.88537 6.88537 0.94 0.000675978 0.000614496 0.039528 0.0359191 36 3328 21 6.79088e+06 296384 648988. 2245.63 2.58 0.216543 0.191683 25390 158009 -1 2849 18 1261 3519 201520 46536 7.42577 7.42577 -159.939 -7.42577 0 0 828058. 2865.25 0.33 0.08 0.14 -1 -1 0.33 0.0340674 0.0309425 142 200 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_040.v common 9.40 vpr 64.86 MiB -1 -1 0.25 21152 13 0.32 -1 -1 36236 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 31 32 276 308 1 215 86 17 17 289 -1 unnamed_device 26.4 MiB 2.49 1206 4433 888 3276 269 64.9 MiB 0.05 0.00 7.31166 -143.361 -7.31166 7.31166 0.96 0.000645939 0.000585724 0.0194826 0.017825 36 3828 50 6.79088e+06 309856 648988. 2245.63 3.26 0.195938 0.171679 25390 158009 -1 2885 17 1357 3476 208327 47434 7.43696 7.43696 -159.65 -7.43696 0 0 828058. 2865.25 0.31 0.08 0.15 -1 -1 0.31 0.030141 0.0272386 136 183 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_041.v common 10.05 vpr 64.91 MiB -1 -1 0.21 20724 13 0.30 -1 -1 36348 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 31 32 269 301 1 204 84 17 17 289 -1 unnamed_device 26.5 MiB 2.15 1198 12162 3885 6108 2169 64.9 MiB 0.10 0.00 6.67042 -135.628 -6.67042 6.67042 0.91 0.000588828 0.000534691 0.0441593 0.0401473 40 3209 25 6.79088e+06 282912 706193. 2443.58 4.25 0.214297 0.191199 26254 175826 -1 3004 31 1535 4503 575928 217053 7.04632 7.04632 -156.016 -7.04632 0 0 926341. 3205.33 0.34 0.20 0.15 -1 -1 0.34 0.0488638 0.044089 125 176 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_042.v common 10.44 vpr 64.55 MiB -1 -1 0.20 20380 12 0.23 -1 -1 36592 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 32 32 264 296 1 184 80 17 17 289 -1 unnamed_device 26.0 MiB 2.40 1008 12120 4187 5866 2067 64.5 MiB 0.10 0.00 5.64559 -119.642 -5.64559 5.64559 0.94 0.000567431 0.000512455 0.0449688 0.0407435 36 3080 33 6.79088e+06 215552 648988. 2245.63 4.48 0.241625 0.211212 25390 158009 -1 2312 15 1073 2913 171077 39853 5.99343 5.99343 -138.765 -5.99343 0 0 828058. 2865.25 0.34 0.07 0.15 -1 -1 0.34 0.0257298 0.0233742 111 169 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_043.v common 11.64 vpr 65.20 MiB -1 -1 0.26 21440 14 0.50 -1 -1 36872 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 32 32 324 356 1 241 85 17 17 289 -1 unnamed_device 26.8 MiB 1.41 1568 9199 2388 6033 778 65.2 MiB 0.10 0.00 6.7243 -147.587 -6.7243 6.7243 0.95 0.000752028 0.000681722 0.0424814 0.038511 44 4095 27 6.79088e+06 282912 787024. 2723.27 6.18 0.301037 0.26417 27118 194962 -1 3300 16 1502 4562 253187 56557 7.4761 7.4761 -172.344 -7.4761 0 0 997811. 3452.63 0.39 0.09 0.18 -1 -1 0.39 0.0357206 0.0326359 159 229 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_044.v common 9.48 vpr 64.36 MiB -1 -1 0.18 20568 11 0.23 -1 -1 36152 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65900 31 32 249 281 1 186 79 17 17 289 -1 unnamed_device 25.8 MiB 2.54 1170 6501 1525 4634 342 64.4 MiB 0.06 0.00 5.48104 -120.034 -5.48104 5.48104 0.92 0.000522657 0.000470557 0.0238407 0.0215797 38 3174 42 6.79088e+06 215552 678818. 2348.85 3.54 0.189396 0.1662 25966 169698 -1 2582 16 1250 3485 194607 42620 5.61747 5.61747 -135.279 -5.61747 0 0 902133. 3121.57 0.34 0.07 0.14 -1 -1 0.34 0.0265283 0.023866 112 156 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_045.v common 11.70 vpr 65.09 MiB -1 -1 0.24 20620 13 0.34 -1 -1 36424 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 31 32 284 316 1 193 83 17 17 289 -1 unnamed_device 26.6 MiB 2.15 1191 11423 2968 6267 2188 65.1 MiB 0.10 0.00 6.38411 -136.826 -6.38411 6.38411 0.94 0.000631518 0.00057457 0.0442223 0.0400526 36 3540 21 6.79088e+06 269440 648988. 2245.63 5.81 0.196602 0.172393 25390 158009 -1 2714 33 1522 5056 418383 148136 7.04632 7.04632 -159.692 -7.04632 0 0 828058. 2865.25 0.31 0.16 0.15 -1 -1 0.31 0.0464501 0.0411636 137 191 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_046.v common 11.42 vpr 65.17 MiB -1 -1 0.22 20740 12 0.32 -1 -1 36580 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 32 32 303 335 1 212 85 17 17 289 -1 unnamed_device 26.7 MiB 2.33 1242 14965 5585 7301 2079 65.2 MiB 0.14 0.00 5.95428 -129.63 -5.95428 5.95428 0.97 0.000653731 0.000588702 0.0595986 0.053713 38 3764 29 6.79088e+06 282912 678818. 2348.85 5.31 0.243883 0.215738 25966 169698 -1 2949 16 1451 4566 255556 56373 6.33362 6.33362 -151.413 -6.33362 0 0 902133. 3121.57 0.33 0.09 0.15 -1 -1 0.33 0.0321632 0.0292558 146 208 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_047.v common 10.70 vpr 64.81 MiB -1 -1 0.20 20332 13 0.31 -1 -1 36404 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 32 32 272 304 1 200 86 17 17 289 -1 unnamed_device 26.4 MiB 1.65 1153 11804 3670 6382 1752 64.8 MiB 0.10 0.00 6.47021 -137.224 -6.47021 6.47021 0.98 0.000600263 0.000543594 0.0441221 0.0400862 34 3287 41 6.79088e+06 296384 618332. 2139.56 5.41 0.343904 0.303673 25102 150614 -1 2742 18 1317 3498 192578 44683 6.75652 6.75652 -157.838 -6.75652 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0286335 0.0258291 131 177 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_048.v common 11.50 vpr 64.84 MiB -1 -1 0.22 20784 13 0.27 -1 -1 37144 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 32 32 271 303 1 212 82 17 17 289 -1 unnamed_device 26.4 MiB 3.17 1131 12008 4148 5800 2060 64.8 MiB 0.10 0.00 6.13346 -131.55 -6.13346 6.13346 0.96 0.000614758 0.000551341 0.0456324 0.0411897 38 3529 34 6.79088e+06 242496 678818. 2348.85 4.69 0.211758 0.186065 25966 169698 -1 2562 16 1343 3507 198373 44501 6.21956 6.21956 -146.458 -6.21956 0 0 902133. 3121.57 0.34 0.07 0.16 -1 -1 0.34 0.0271971 0.0245642 124 176 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_049.v common 10.53 vpr 64.91 MiB -1 -1 0.22 20660 12 0.29 -1 -1 36508 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 32 32 288 320 1 218 84 17 17 289 -1 unnamed_device 26.4 MiB 2.24 1384 7221 1754 4791 676 64.9 MiB 0.07 0.00 6.20837 -138.171 -6.20837 6.20837 0.89 0.000608406 0.000551267 0.0283204 0.0256835 44 3380 36 6.79088e+06 269440 787024. 2723.27 4.76 0.286734 0.253803 27118 194962 -1 2829 16 1256 4111 231336 49661 6.41207 6.41207 -151.778 -6.41207 0 0 997811. 3452.63 0.37 0.08 0.16 -1 -1 0.37 0.0301487 0.0274113 140 193 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_050.v common 8.33 vpr 65.18 MiB -1 -1 0.23 21008 13 0.37 -1 -1 37080 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 306 338 1 225 84 17 17 289 -1 unnamed_device 26.7 MiB 1.91 1323 4110 692 3301 117 65.2 MiB 0.05 0.00 6.76001 -142.904 -6.76001 6.76001 0.93 0.000676756 0.000610725 0.0195992 0.0178809 38 3405 20 6.79088e+06 269440 678818. 2348.85 2.73 0.19213 0.169214 25966 169698 -1 2818 17 1423 4075 198266 46895 7.01061 7.01061 -162.029 -7.01061 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.033176 0.0300544 145 211 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_051.v common 7.89 vpr 64.80 MiB -1 -1 0.20 20740 14 0.35 -1 -1 36536 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 32 32 262 294 1 194 84 17 17 289 -1 unnamed_device 26.4 MiB 1.82 1242 13992 4125 7675 2192 64.8 MiB 0.11 0.00 6.67048 -139.801 -6.67048 6.67048 0.94 0.000606725 0.000550505 0.049722 0.0450177 36 3455 36 6.79088e+06 269440 648988. 2245.63 2.42 0.177718 0.156752 25390 158009 -1 2903 18 1348 3737 232802 51080 7.46497 7.46497 -165.286 -7.46497 0 0 828058. 2865.25 0.32 0.08 0.14 -1 -1 0.32 0.028705 0.0258503 125 167 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_052.v common 13.59 vpr 65.01 MiB -1 -1 0.23 20844 13 0.33 -1 -1 36608 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 32 32 291 323 1 214 85 17 17 289 -1 unnamed_device 26.5 MiB 2.75 1289 14221 4071 8219 1931 65.0 MiB 0.13 0.00 6.51285 -133.328 -6.51285 6.51285 0.95 0.000650425 0.000591775 0.0543698 0.0493995 36 3581 27 6.79088e+06 282912 648988. 2245.63 7.11 0.228304 0.202444 25390 158009 -1 3132 18 1532 4201 254439 56749 6.84955 6.84955 -157.417 -6.84955 0 0 828058. 2865.25 0.33 0.09 0.15 -1 -1 0.33 0.0332088 0.0300985 136 196 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_053.v common 10.76 vpr 64.93 MiB -1 -1 0.24 20880 13 0.33 -1 -1 36616 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 31 32 302 334 1 224 84 17 17 289 -1 unnamed_device 26.4 MiB 2.13 1358 6123 1356 3867 900 64.9 MiB 0.06 0.00 6.45902 -141.579 -6.45902 6.45902 0.93 0.000641123 0.000565222 0.0257229 0.0231997 38 3861 37 6.79088e+06 282912 678818. 2348.85 5.00 0.218598 0.192089 25966 169698 -1 2958 23 1795 4946 271739 59113 6.99942 6.99942 -161.933 -6.99942 0 0 902133. 3121.57 0.34 0.10 0.15 -1 -1 0.34 0.0374585 0.0333664 144 209 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_054.v common 10.90 vpr 64.96 MiB -1 -1 0.24 20964 12 0.38 -1 -1 36684 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 32 32 308 340 1 225 85 17 17 289 -1 unnamed_device 26.4 MiB 1.81 1293 13663 4448 6578 2637 65.0 MiB 0.12 0.00 6.36178 -135.889 -6.36178 6.36178 0.97 0.000696114 0.000630613 0.0549403 0.0498411 46 3261 27 6.79088e+06 282912 828058. 2865.25 5.17 0.284384 0.250893 27406 200422 -1 2628 17 1461 4068 195006 45914 6.57319 6.57319 -150.831 -6.57319 0 0 1.01997e+06 3529.29 0.41 0.08 0.18 -1 -1 0.41 0.0339686 0.0308726 147 213 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_055.v common 7.68 vpr 64.15 MiB -1 -1 0.19 20212 11 0.16 -1 -1 36356 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65688 32 32 216 248 1 160 78 17 17 289 -1 unnamed_device 25.8 MiB 1.54 794 5888 1237 4556 95 64.1 MiB 0.05 0.00 5.10508 -108.421 -5.10508 5.10508 0.96 0.000495437 0.000449839 0.0202063 0.0184396 34 2564 37 6.79088e+06 188608 618332. 2139.56 2.76 0.143497 0.126287 25102 150614 -1 2106 18 993 2380 161179 39315 5.56703 5.56703 -134.723 -5.56703 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0234791 0.0210947 91 121 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_056.v common 9.63 vpr 64.91 MiB -1 -1 0.20 20608 13 0.25 -1 -1 36244 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 32 32 254 286 1 197 84 17 17 289 -1 unnamed_device 26.6 MiB 2.05 1142 5391 1044 4126 221 64.9 MiB 0.05 0.00 6.36948 -134.926 -6.36948 6.36948 0.90 0.000553945 0.000502595 0.0201236 0.0184322 38 2855 37 6.79088e+06 269440 678818. 2348.85 4.19 0.221949 0.194274 25966 169698 -1 2477 16 1154 3022 168586 39433 6.74882 6.74882 -159.334 -6.74882 0 0 902133. 3121.57 0.33 0.07 0.14 -1 -1 0.33 0.0265242 0.0240159 118 159 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_057.v common 10.70 vpr 65.45 MiB -1 -1 0.25 21504 14 0.55 -1 -1 36656 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67024 32 32 338 370 1 251 88 17 17 289 -1 unnamed_device 26.9 MiB 1.57 1624 8668 2292 5827 549 65.5 MiB 0.10 0.00 7.64076 -154.409 -7.64076 7.64076 0.99 0.00079716 0.000714665 0.0412668 0.0372426 46 4035 24 6.79088e+06 323328 828058. 2865.25 5.04 0.240997 0.212948 27406 200422 -1 3284 17 1695 4937 251855 55567 8.1923 8.1923 -175.792 -8.1923 0 0 1.01997e+06 3529.29 0.38 0.09 0.19 -1 -1 0.38 0.0367989 0.0333663 171 243 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_058.v common 26.03 vpr 64.84 MiB -1 -1 0.22 20724 13 0.36 -1 -1 36768 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 32 32 271 303 1 215 85 17 17 289 -1 unnamed_device 26.4 MiB 1.93 1376 8827 2531 5567 729 64.8 MiB 0.08 0.00 6.76001 -145.356 -6.76001 6.76001 0.95 0.000643103 0.000583904 0.0343106 0.0311897 40 3300 27 6.79088e+06 282912 706193. 2443.58 20.26 0.372833 0.325878 26254 175826 -1 3132 26 1360 3642 422049 173601 7.13591 7.13591 -171.004 -7.13591 0 0 926341. 3205.33 0.35 0.16 0.17 -1 -1 0.35 0.0408352 0.036534 134 176 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_059.v common 7.95 vpr 64.29 MiB -1 -1 0.19 20484 11 0.20 -1 -1 36244 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65836 30 32 224 256 1 163 79 17 17 289 -1 unnamed_device 25.8 MiB 0.81 1031 4980 1094 3561 325 64.3 MiB 0.04 0.00 5.69249 -122.087 -5.69249 5.69249 0.92 0.000479061 0.000434995 0.0182445 0.0166493 36 2870 23 6.79088e+06 229024 648988. 2245.63 3.80 0.192606 0.167484 25390 158009 -1 2316 17 1043 2986 180608 39590 5.9788 5.9788 -139.027 -5.9788 0 0 828058. 2865.25 0.32 0.06 0.14 -1 -1 0.32 0.0233686 0.0209889 101 133 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_060.v common 8.80 vpr 65.50 MiB -1 -1 0.27 21436 15 0.66 -1 -1 36948 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67072 32 32 351 383 1 259 89 17 17 289 -1 unnamed_device 27.0 MiB 1.38 1508 9197 2375 5998 824 65.5 MiB 0.10 0.00 7.85565 -160.53 -7.85565 7.85565 0.94 0.000805577 0.000720974 0.0420727 0.0379966 44 4033 44 6.79088e+06 336800 787024. 2723.27 3.24 0.219093 0.19281 27118 194962 -1 3095 18 1586 4602 228067 53299 8.35685 8.35685 -182.505 -8.35685 0 0 997811. 3452.63 0.38 0.09 0.18 -1 -1 0.38 0.0387409 0.0350632 179 256 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_061.v common 8.86 vpr 64.97 MiB -1 -1 0.22 20752 13 0.40 -1 -1 36316 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 32 32 297 329 1 217 84 17 17 289 -1 unnamed_device 26.5 MiB 1.37 1287 12345 3324 7419 1602 65.0 MiB 0.11 0.00 6.76001 -145.768 -6.76001 6.76001 0.94 0.00068696 0.00062303 0.0511042 0.0462777 34 3713 40 6.79088e+06 269440 618332. 2139.56 3.74 0.206251 0.18228 25102 150614 -1 3073 17 1369 3623 224509 50111 7.01061 7.01061 -164.038 -7.01061 0 0 787024. 2723.27 0.31 0.08 0.14 -1 -1 0.31 0.0324735 0.0295063 139 202 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_062.v common 6.85 vpr 64.14 MiB -1 -1 0.17 20208 11 0.15 -1 -1 36288 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65684 32 32 231 263 1 165 77 17 17 289 -1 unnamed_device 25.7 MiB 1.45 1049 10998 3160 6693 1145 64.1 MiB 0.09 0.00 5.40613 -119.346 -5.40613 5.40613 0.92 0.000540628 0.000483971 0.0379051 0.0344268 38 2434 18 6.79088e+06 175136 678818. 2348.85 2.07 0.158369 0.139226 25966 169698 -1 2046 15 814 2149 113275 25508 5.65673 5.65673 -134.722 -5.65673 0 0 902133. 3121.57 0.33 0.05 0.16 -1 -1 0.33 0.0213151 0.0191983 94 136 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_063.v common 10.27 vpr 65.08 MiB -1 -1 0.22 20932 12 0.38 -1 -1 36528 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66644 32 32 305 337 1 217 84 17 17 289 -1 unnamed_device 26.4 MiB 1.39 1356 9600 2570 6006 1024 65.1 MiB 0.09 0.00 6.42326 -135.664 -6.42326 6.42326 0.95 0.000676368 0.000610746 0.0401354 0.0363367 44 3223 21 6.79088e+06 269440 787024. 2723.27 5.07 0.279579 0.245552 27118 194962 -1 2728 17 1226 3894 208072 45745 6.58776 6.58776 -153.699 -6.58776 0 0 997811. 3452.63 0.38 0.08 0.18 -1 -1 0.38 0.031108 0.028037 146 210 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_064.v common 22.17 vpr 64.36 MiB -1 -1 0.17 20216 12 0.23 -1 -1 36544 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65908 32 32 243 275 1 187 82 17 17 289 -1 unnamed_device 25.8 MiB 1.43 1012 13788 4962 6947 1879 64.4 MiB 0.11 0.00 6.07963 -128.905 -6.07963 6.07963 0.93 0.000587147 0.000530635 0.0471194 0.0429002 40 2543 31 6.79088e+06 242496 706193. 2443.58 17.13 0.347093 0.305147 26254 175826 -1 2333 32 1666 4908 476357 172022 6.33023 6.33023 -145.025 -6.33023 0 0 926341. 3205.33 0.37 0.18 0.16 -1 -1 0.37 0.0438871 0.0390837 113 148 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_065.v common 8.08 vpr 64.35 MiB -1 -1 0.20 20460 12 0.23 -1 -1 36608 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65892 30 32 228 260 1 166 79 17 17 289 -1 unnamed_device 25.9 MiB 1.21 926 5656 1193 4227 236 64.3 MiB 0.05 0.00 6.16917 -122.538 -6.16917 6.16917 0.96 0.000589448 0.000490214 0.0210122 0.0190363 36 2522 27 6.79088e+06 229024 648988. 2245.63 3.37 0.161516 0.142006 25390 158009 -1 2066 17 875 2408 136826 32070 6.41977 6.41977 -138.947 -6.41977 0 0 828058. 2865.25 0.33 0.06 0.15 -1 -1 0.33 0.0234934 0.0211161 106 137 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_066.v common 9.27 vpr 64.89 MiB -1 -1 0.22 20904 12 0.32 -1 -1 36436 -1 -1 26 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 29 32 275 307 1 201 87 17 17 289 -1 unnamed_device 26.4 MiB 2.43 1225 4887 997 3512 378 64.9 MiB 0.05 0.00 6.25527 -120.607 -6.25527 6.25527 0.93 0.000578961 0.000519214 0.0199595 0.0181273 38 3205 48 6.79088e+06 350272 678818. 2348.85 3.28 0.212257 0.186769 25966 169698 -1 2782 19 1292 3862 221336 48352 6.41972 6.41972 -135.807 -6.41972 0 0 902133. 3121.57 0.34 0.08 0.14 -1 -1 0.34 0.0311523 0.0279613 140 186 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_067.v common 11.77 vpr 65.32 MiB -1 -1 0.21 20876 13 0.40 -1 -1 36384 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66892 32 32 330 362 1 257 87 17 17 289 -1 unnamed_device 26.9 MiB 1.18 1481 9303 2299 6055 949 65.3 MiB 0.10 0.00 6.67386 -141.288 -6.67386 6.67386 0.90 0.000732999 0.000666313 0.0406909 0.0369725 36 4265 36 6.79088e+06 309856 648988. 2245.63 6.96 0.262682 0.233826 25390 158009 -1 3451 20 2170 5380 318815 70080 7.08547 7.08547 -167.686 -7.08547 0 0 828058. 2865.25 0.31 0.11 0.13 -1 -1 0.31 0.0402154 0.0364794 160 235 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_068.v common 10.44 vpr 64.86 MiB -1 -1 0.23 20672 12 0.29 -1 -1 36612 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 290 322 1 218 84 17 17 289 -1 unnamed_device 26.4 MiB 1.53 1320 6489 1374 4569 546 64.9 MiB 0.07 0.00 6.70187 -141.173 -6.70187 6.70187 0.99 0.000690179 0.000619727 0.0282579 0.0255968 46 3197 22 6.79088e+06 269440 828058. 2865.25 5.16 0.24666 0.215701 27406 200422 -1 2761 17 1545 4505 235462 51481 6.82717 6.82717 -158.411 -6.82717 0 0 1.01997e+06 3529.29 0.39 0.09 0.19 -1 -1 0.39 0.0313824 0.028321 140 195 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_069.v common 9.16 vpr 64.46 MiB -1 -1 0.20 20484 12 0.18 -1 -1 37024 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 32 32 214 246 1 160 79 17 17 289 -1 unnamed_device 26.0 MiB 2.34 952 4304 892 3266 146 64.5 MiB 0.04 0.00 6.12227 -127.798 -6.12227 6.12227 0.97 0.000489011 0.000443965 0.0156134 0.0142343 36 2407 24 6.79088e+06 202080 648988. 2245.63 3.43 0.141964 0.124647 25390 158009 -1 2199 17 885 2317 151629 33771 6.12227 6.12227 -142.207 -6.12227 0 0 828058. 2865.25 0.32 0.06 0.14 -1 -1 0.32 0.022082 0.0198501 93 119 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_070.v common 8.54 vpr 64.66 MiB -1 -1 0.22 20596 12 0.27 -1 -1 36628 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66212 31 32 244 276 1 178 82 17 17 289 -1 unnamed_device 26.1 MiB 1.73 1153 9160 2665 5629 866 64.7 MiB 0.08 0.00 5.97433 -125.395 -5.97433 5.97433 0.95 0.00056748 0.000515788 0.0327936 0.0298901 34 3251 35 6.79088e+06 255968 618332. 2139.56 3.26 0.166288 0.147044 25102 150614 -1 2599 16 1081 2901 183753 40904 6.47553 6.47553 -147.196 -6.47553 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0247962 0.0224157 111 151 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_071.v common 8.29 vpr 64.77 MiB -1 -1 0.23 21104 11 0.24 -1 -1 36416 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 30 32 276 308 1 190 82 17 17 289 -1 unnamed_device 26.4 MiB 1.78 1156 8626 2147 5545 934 64.8 MiB 0.08 0.00 5.62872 -116.366 -5.62872 5.62872 0.96 0.000621954 0.000564788 0.0339082 0.0307897 38 2914 22 6.79088e+06 269440 678818. 2348.85 2.89 0.186278 0.163854 25966 169698 -1 2499 20 1137 3624 292407 106077 5.87932 5.87932 -131.862 -5.87932 0 0 902133. 3121.57 0.33 0.11 0.16 -1 -1 0.33 0.0308774 0.0276428 125 185 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_072.v common 9.54 vpr 64.52 MiB -1 -1 0.19 20460 11 0.23 -1 -1 36480 -1 -1 19 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66072 28 32 253 285 1 176 79 17 17 289 -1 unnamed_device 25.9 MiB 1.44 1024 5149 1225 3564 360 64.5 MiB 0.05 0.00 5.48104 -107.687 -5.48104 5.48104 0.91 0.000593419 0.000533309 0.0205326 0.0187392 36 2795 20 6.79088e+06 255968 648988. 2245.63 4.76 0.172987 0.153175 25390 158009 -1 2508 17 1190 3493 214213 47156 5.60634 5.60634 -124.534 -5.60634 0 0 828058. 2865.25 0.31 0.07 0.13 -1 -1 0.31 0.0273424 0.0247155 116 166 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_073.v common 10.38 vpr 64.58 MiB -1 -1 0.20 20452 13 0.25 -1 -1 36564 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66128 30 32 235 267 1 172 80 17 17 289 -1 unnamed_device 26.1 MiB 2.07 1061 12292 3804 6727 1761 64.6 MiB 0.09 0.00 5.9509 -124.204 -5.9509 5.9509 0.92 0.000504798 0.000455857 0.0403284 0.0364346 36 2967 26 6.79088e+06 242496 648988. 2245.63 4.85 0.184058 0.162221 25390 158009 -1 2403 19 1033 2891 172166 38640 6.0762 6.0762 -139.404 -6.0762 0 0 828058. 2865.25 0.32 0.07 0.13 -1 -1 0.32 0.026318 0.0235405 108 144 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_074.v common 10.15 vpr 64.82 MiB -1 -1 0.22 20928 12 0.24 -1 -1 36400 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 32 32 264 296 1 200 82 17 17 289 -1 unnamed_device 26.5 MiB 2.51 1225 6490 1526 4609 355 64.8 MiB 0.06 0.00 5.66792 -136.48 -5.66792 5.66792 0.92 0.000582894 0.00052805 0.0257649 0.0233795 38 3115 19 6.79088e+06 242496 678818. 2348.85 4.12 0.173859 0.153022 25966 169698 -1 2534 14 1086 2891 154118 34918 6.12992 6.12992 -155.325 -6.12992 0 0 902133. 3121.57 0.35 0.06 0.16 -1 -1 0.35 0.0256125 0.0233314 120 169 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_075.v common 8.22 vpr 64.82 MiB -1 -1 0.20 20388 13 0.36 -1 -1 36412 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 31 32 278 310 1 200 84 17 17 289 -1 unnamed_device 26.4 MiB 2.04 1261 9051 2499 5595 957 64.8 MiB 0.08 0.00 6.92806 -142.643 -6.92806 6.92806 0.97 0.000649815 0.000589687 0.0363101 0.0330291 34 3402 34 6.79088e+06 282912 618332. 2139.56 2.46 0.196185 0.173903 25102 150614 -1 2792 20 1487 4128 232712 53737 7.39006 7.39006 -161.916 -7.39006 0 0 787024. 2723.27 0.32 0.09 0.14 -1 -1 0.32 0.035044 0.031523 137 185 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_076.v common 24.00 vpr 64.58 MiB -1 -1 0.23 20840 14 0.33 -1 -1 36676 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 32 32 290 322 1 212 84 17 17 289 -1 unnamed_device 26.1 MiB 1.59 1354 13809 4092 7816 1901 64.6 MiB 0.13 0.00 7.26476 -155.727 -7.26476 7.26476 0.95 0.000654308 0.00059231 0.0556446 0.0503682 40 3155 19 6.79088e+06 269440 706193. 2443.58 18.62 0.367468 0.322716 26254 175826 -1 3001 18 1297 3595 222936 48514 7.76595 7.76595 -175.878 -7.76595 0 0 926341. 3205.33 0.36 0.08 0.16 -1 -1 0.36 0.03102 0.0278973 132 195 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_077.v common 24.26 vpr 64.59 MiB -1 -1 0.23 20716 14 0.31 -1 -1 36432 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 269 301 1 198 81 17 17 289 -1 unnamed_device 26.1 MiB 2.62 995 13206 4190 6602 2414 64.6 MiB 0.11 0.00 6.75231 -131.012 -6.75231 6.75231 0.94 0.000621012 0.000548667 0.0500608 0.0452284 38 3582 47 6.79088e+06 229024 678818. 2348.85 17.96 0.330166 0.287754 25966 169698 -1 2364 17 1281 3632 205653 52632 6.87761 6.87761 -148.347 -6.87761 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.0285233 0.0257242 122 174 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_078.v common 10.36 vpr 64.94 MiB -1 -1 0.23 21220 13 0.42 -1 -1 36748 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 296 328 1 223 86 17 17 289 -1 unnamed_device 26.4 MiB 2.15 1453 7457 1751 5135 571 64.9 MiB 0.08 0.00 6.99948 -143.294 -6.99948 6.99948 0.93 0.000665064 0.000591127 0.0310576 0.0280702 38 3794 31 6.79088e+06 296384 678818. 2348.85 4.39 0.212301 0.186507 25966 169698 -1 3253 18 1799 4911 276642 60087 7.62598 7.62598 -168.089 -7.62598 0 0 902133. 3121.57 0.34 0.10 0.16 -1 -1 0.34 0.0342193 0.0309198 144 201 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_079.v common 9.69 vpr 64.32 MiB -1 -1 0.19 20412 13 0.22 -1 -1 36352 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65864 30 32 234 266 1 175 80 17 17 289 -1 unnamed_device 25.8 MiB 2.28 1067 11948 3595 6419 1934 64.3 MiB 0.09 0.00 5.91857 -125.062 -5.91857 5.91857 0.91 0.000516756 0.000470483 0.0393065 0.0357861 44 2488 18 6.79088e+06 242496 787024. 2723.27 3.98 0.213019 0.187404 27118 194962 -1 2012 14 930 2422 127714 28931 6.29447 6.29447 -140.493 -6.29447 0 0 997811. 3452.63 0.38 0.05 0.16 -1 -1 0.38 0.022138 0.0201394 104 143 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_080.v common 10.21 vpr 65.08 MiB -1 -1 0.23 21012 13 0.53 -1 -1 36760 -1 -1 22 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 30 32 291 323 1 225 84 17 17 289 -1 unnamed_device 26.5 MiB 2.05 1324 11796 3320 6990 1486 65.1 MiB 0.11 0.00 6.54518 -135.575 -6.54518 6.54518 0.93 0.000639972 0.000576226 0.0469741 0.0424668 38 3664 23 6.79088e+06 296384 678818. 2348.85 4.28 0.221644 0.195586 25966 169698 -1 2930 22 1787 4889 246794 56715 7.10661 7.10661 -159.61 -7.10661 0 0 902133. 3121.57 0.34 0.10 0.14 -1 -1 0.34 0.0385902 0.0346575 145 200 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_081.v common 21.98 vpr 64.59 MiB -1 -1 0.23 20628 14 0.39 -1 -1 36760 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 274 306 1 205 82 17 17 289 -1 unnamed_device 26.1 MiB 1.95 1283 6134 1394 4015 725 64.6 MiB 0.06 0.00 7.05762 -149.408 -7.05762 7.05762 0.97 0.000577061 0.000522808 0.0258454 0.0235516 36 3568 38 6.79088e+06 242496 648988. 2245.63 16.28 0.337437 0.297567 25390 158009 -1 3037 19 1330 3764 263962 55885 7.43352 7.43352 -169.916 -7.43352 0 0 828058. 2865.25 0.31 0.09 0.14 -1 -1 0.31 0.0314869 0.0284108 128 179 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_082.v common 10.26 vpr 64.75 MiB -1 -1 0.22 21044 13 0.27 -1 -1 36868 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 31 32 266 298 1 196 82 17 17 289 -1 unnamed_device 26.4 MiB 2.10 1171 11474 3141 6554 1779 64.7 MiB 0.10 0.00 6.28333 -136.535 -6.28333 6.28333 0.92 0.000627389 0.000567028 0.0440367 0.0398312 38 3063 24 6.79088e+06 255968 678818. 2348.85 4.58 0.255302 0.221785 25966 169698 -1 2573 18 1260 3430 184395 40872 6.60884 6.60884 -155.353 -6.60884 0 0 902133. 3121.57 0.36 0.08 0.15 -1 -1 0.36 0.030465 0.0274192 124 173 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_083.v common 8.88 vpr 64.74 MiB -1 -1 0.24 20728 13 0.27 -1 -1 36636 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66292 30 32 266 298 1 199 81 17 17 289 -1 unnamed_device 26.3 MiB 2.05 1189 9531 3169 4648 1714 64.7 MiB 0.08 0.00 6.13113 -122.629 -6.13113 6.13113 0.95 0.000598421 0.00054122 0.0372858 0.0338795 38 3331 28 6.79088e+06 255968 678818. 2348.85 3.18 0.189329 0.166284 25966 169698 -1 2734 18 1406 3864 217751 47461 6.24519 6.24519 -138.227 -6.24519 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.0302968 0.0273289 121 175 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_084.v common 14.54 vpr 65.09 MiB -1 -1 0.24 20928 14 0.45 -1 -1 36256 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 32 32 310 342 1 231 85 17 17 289 -1 unnamed_device 26.5 MiB 2.02 1563 10687 2688 6174 1825 65.1 MiB 0.11 0.00 7.30047 -154.524 -7.30047 7.30047 0.96 0.00071827 0.000639379 0.0459123 0.0414861 38 4295 25 6.79088e+06 282912 678818. 2348.85 8.55 0.229579 0.202813 25966 169698 -1 3400 17 1589 4550 251176 54820 7.42577 7.42577 -169.932 -7.42577 0 0 902133. 3121.57 0.33 0.09 0.16 -1 -1 0.33 0.0336697 0.0304311 154 215 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_085.v common 8.27 vpr 64.94 MiB -1 -1 0.24 20956 11 0.35 -1 -1 36384 -1 -1 23 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 29 32 262 294 1 201 84 17 17 289 -1 unnamed_device 26.5 MiB 2.51 1042 10332 2854 5719 1759 64.9 MiB 0.09 0.00 6.13002 -115.481 -6.13002 6.13002 0.93 0.000601706 0.000537505 0.0377249 0.0341954 38 2958 26 6.79088e+06 309856 678818. 2348.85 2.06 0.168475 0.148152 25966 169698 -1 2314 17 1243 3652 181315 43534 6.38062 6.38062 -131.318 -6.38062 0 0 902133. 3121.57 0.34 0.07 0.16 -1 -1 0.34 0.0295673 0.0267632 136 173 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_086.v common 11.68 vpr 64.40 MiB -1 -1 0.17 20132 13 0.20 -1 -1 36364 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65944 32 32 222 254 1 182 78 17 17 289 -1 unnamed_device 26.0 MiB 3.69 970 6552 1513 4811 228 64.4 MiB 0.06 0.00 5.95084 -134.489 -5.95084 5.95084 0.93 0.000497874 0.000451927 0.023167 0.0211162 44 2697 18 6.79088e+06 188608 787024. 2723.27 4.51 0.189612 0.164716 27118 194962 -1 2087 19 1078 2497 145412 32906 6.03694 6.03694 -148.625 -6.03694 0 0 997811. 3452.63 0.38 0.06 0.18 -1 -1 0.38 0.0250788 0.0224553 98 127 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_087.v common 8.36 vpr 64.70 MiB -1 -1 0.22 20972 14 0.28 -1 -1 36432 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66248 32 32 267 299 1 200 81 17 17 289 -1 unnamed_device 26.3 MiB 1.90 1036 6731 1426 5215 90 64.7 MiB 0.06 0.00 7.17517 -141.92 -7.17517 7.17517 0.90 0.000582923 0.000528681 0.0264023 0.0240449 38 3181 21 6.79088e+06 229024 678818. 2348.85 3.03 0.192275 0.170791 25966 169698 -1 2513 17 1178 3120 166363 37899 7.17517 7.17517 -158.683 -7.17517 0 0 902133. 3121.57 0.33 0.07 0.14 -1 -1 0.33 0.0289855 0.0262765 122 172 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_088.v common 8.70 vpr 65.19 MiB -1 -1 0.22 21284 15 0.50 -1 -1 36768 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 32 32 334 366 1 254 87 17 17 289 -1 unnamed_device 26.8 MiB 1.78 1439 7575 1712 5351 512 65.2 MiB 0.08 0.00 7.43275 -158.86 -7.43275 7.43275 0.92 0.000767028 0.00069238 0.0356628 0.0322408 44 3994 31 6.79088e+06 309856 787024. 2723.27 3.04 0.194744 0.171536 27118 194962 -1 3191 18 1676 4490 247381 55257 7.89474 7.89474 -177.665 -7.89474 0 0 997811. 3452.63 0.38 0.09 0.18 -1 -1 0.38 0.0370239 0.0335502 163 239 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_089.v common 10.72 vpr 64.30 MiB -1 -1 0.17 20408 11 0.19 -1 -1 36348 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65848 32 32 220 252 1 168 79 17 17 289 -1 unnamed_device 25.9 MiB 1.88 972 10388 3119 5289 1980 64.3 MiB 0.08 0.00 5.50342 -119.473 -5.50342 5.50342 0.94 0.000478189 0.000430473 0.0324153 0.0292983 34 2827 47 6.79088e+06 202080 618332. 2139.56 5.50 0.228796 0.19976 25102 150614 -1 2238 20 991 2574 162582 36112 5.91503 5.91503 -140.895 -5.91503 0 0 787024. 2723.27 0.31 0.06 0.13 -1 -1 0.31 0.0243444 0.0216912 97 125 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_090.v common 9.97 vpr 64.71 MiB -1 -1 0.18 20220 12 0.23 -1 -1 36620 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 31 32 244 276 1 193 80 17 17 289 -1 unnamed_device 26.1 MiB 1.92 1184 6272 1478 4198 596 64.7 MiB 0.06 0.00 5.44959 -123.238 -5.44959 5.44959 0.97 0.000583779 0.000512289 0.0249385 0.0226163 44 3071 23 6.79088e+06 229024 787024. 2723.27 4.45 0.216129 0.188143 27118 194962 -1 2577 17 1218 3375 182447 41209 5.70019 5.70019 -141.54 -5.70019 0 0 997811. 3452.63 0.38 0.07 0.18 -1 -1 0.38 0.0251659 0.0225725 112 151 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_091.v common 21.52 vpr 65.20 MiB -1 -1 0.23 20764 12 0.38 -1 -1 36460 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 32 32 300 332 1 219 83 17 17 289 -1 unnamed_device 26.6 MiB 1.49 1382 5123 1131 3579 413 65.2 MiB 0.06 0.00 6.21181 -135.633 -6.21181 6.21181 0.96 0.0007123 0.000646852 0.0240753 0.0219781 36 4269 35 6.79088e+06 255968 648988. 2245.63 16.27 0.340809 0.29929 25390 158009 -1 3259 21 1810 5309 333145 72280 6.67381 6.67381 -163.514 -6.67381 0 0 828058. 2865.25 0.33 0.11 0.15 -1 -1 0.33 0.0380572 0.0342479 143 205 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_092.v common 11.66 vpr 64.52 MiB -1 -1 0.23 20780 12 0.30 -1 -1 36376 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 32 32 271 303 1 209 82 17 17 289 -1 unnamed_device 26.1 MiB 2.37 1312 9338 2701 6024 613 64.5 MiB 0.09 0.00 6.08307 -132.83 -6.08307 6.08307 0.98 0.000641795 0.000584407 0.0372035 0.0338276 38 3626 28 6.79088e+06 242496 678818. 2348.85 5.60 0.295968 0.26082 25966 169698 -1 2861 17 1274 3667 206363 45402 6.41977 6.41977 -152.257 -6.41977 0 0 902133. 3121.57 0.34 0.07 0.15 -1 -1 0.34 0.0284249 0.0257009 130 176 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_093.v common 9.68 vpr 65.26 MiB -1 -1 0.23 21040 14 0.57 -1 -1 36420 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66824 32 32 327 359 1 233 86 17 17 289 -1 unnamed_device 26.9 MiB 2.23 1384 6890 1438 5172 280 65.3 MiB 0.08 0.00 7.5658 -152.044 -7.5658 7.5658 0.94 0.000755641 0.000676807 0.0323682 0.0292362 44 3667 21 6.79088e+06 296384 787024. 2723.27 3.19 0.224294 0.198017 27118 194962 -1 3024 43 1568 4772 750523 409017 7.64071 7.64071 -169.873 -7.64071 0 0 997811. 3452.63 0.39 0.32 0.18 -1 -1 0.39 0.0737501 0.0656703 167 232 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_094.v common 7.18 vpr 64.75 MiB -1 -1 0.22 20420 12 0.25 -1 -1 36576 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 30 32 246 278 1 185 81 17 17 289 -1 unnamed_device 26.3 MiB 1.80 1057 10581 3212 4923 2446 64.7 MiB 0.09 0.00 6.07188 -116.532 -6.07188 6.07188 0.90 0.000563898 0.000513116 0.0375569 0.0340868 38 2962 21 6.79088e+06 255968 678818. 2348.85 1.94 0.15854 0.140876 25966 169698 -1 2496 17 1142 3292 185497 41142 6.49468 6.49468 -135.198 -6.49468 0 0 902133. 3121.57 0.33 0.07 0.14 -1 -1 0.33 0.0272273 0.0246792 121 155 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_095.v common 7.16 vpr 64.38 MiB -1 -1 0.19 20524 11 0.21 -1 -1 36528 -1 -1 19 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65924 27 32 219 251 1 163 78 17 17 289 -1 unnamed_device 25.9 MiB 2.33 900 11200 2933 6530 1737 64.4 MiB 0.08 0.00 5.66792 -104.013 -5.66792 5.66792 0.92 0.000497409 0.000454219 0.0363439 0.0330877 28 2640 28 6.79088e+06 255968 531479. 1839.03 1.59 0.125199 0.111113 23950 126010 -1 2286 20 1149 3022 194444 43917 5.82893 5.82893 -122.99 -5.82893 0 0 648988. 2245.63 0.26 0.07 0.11 -1 -1 0.26 0.025653 0.0229299 104 134 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_096.v common 11.74 vpr 65.45 MiB -1 -1 0.26 21484 13 0.54 -1 -1 36532 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 32 32 380 412 1 276 90 17 17 289 -1 unnamed_device 26.8 MiB 2.00 1693 10743 2712 6835 1196 65.4 MiB 0.12 0.00 6.75763 -141.164 -6.75763 6.75763 0.93 0.000853533 0.00076789 0.0498985 0.044994 46 4284 31 6.79088e+06 350272 828058. 2865.25 5.64 0.343085 0.30068 27406 200422 -1 3614 18 1786 5554 286648 62901 7.00823 7.00823 -156.875 -7.00823 0 0 1.01997e+06 3529.29 0.39 0.10 0.18 -1 -1 0.39 0.0407509 0.0368656 188 285 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_097.v common 8.42 vpr 65.01 MiB -1 -1 0.23 20668 14 0.30 -1 -1 36388 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 31 32 277 309 1 197 85 17 17 289 -1 unnamed_device 26.6 MiB 2.04 1195 6037 1209 4595 233 65.0 MiB 0.06 0.00 6.8027 -140.243 -6.8027 6.8027 0.95 0.000637226 0.000574929 0.0240898 0.0218654 38 3035 22 6.79088e+06 296384 678818. 2348.85 2.79 0.184183 0.161751 25966 169698 -1 2404 17 1215 3194 155647 36432 7.0533 7.0533 -155.24 -7.0533 0 0 902133. 3121.57 0.34 0.07 0.15 -1 -1 0.34 0.0290538 0.0261707 130 184 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_098.v common 8.85 vpr 64.55 MiB -1 -1 0.22 20348 12 0.21 -1 -1 36224 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 32 32 229 261 1 174 82 17 17 289 -1 unnamed_device 26.1 MiB 2.00 1163 8804 2510 5532 762 64.5 MiB 0.07 0.00 6.02467 -132.982 -6.02467 6.02467 0.97 0.000543213 0.000494544 0.0301991 0.0275467 34 3096 39 6.79088e+06 242496 618332. 2139.56 3.34 0.176782 0.154525 25102 150614 -1 2589 18 1107 2774 182103 40367 6.52587 6.52587 -154.91 -6.52587 0 0 787024. 2723.27 0.30 0.07 0.14 -1 -1 0.30 0.0248866 0.0222372 109 134 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_099.v common 18.64 vpr 64.71 MiB -1 -1 0.22 20356 13 0.36 -1 -1 36508 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 32 32 263 295 1 199 82 17 17 289 -1 unnamed_device 26.3 MiB 1.73 1285 8092 1940 5248 904 64.7 MiB 0.08 0.00 6.71317 -144.222 -6.71317 6.71317 0.96 0.000640103 0.000580825 0.0319053 0.0290014 38 3111 36 6.79088e+06 242496 678818. 2348.85 13.05 0.30333 0.266479 25966 169698 -1 2688 33 1265 3540 442922 207124 6.71317 6.71317 -156.85 -6.71317 0 0 902133. 3121.57 0.35 0.18 0.16 -1 -1 0.35 0.0477802 0.0427108 128 168 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_100.v common 11.36 vpr 65.24 MiB -1 -1 0.25 21024 13 0.40 -1 -1 36844 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 31 32 321 353 1 241 87 17 17 289 -1 unnamed_device 26.8 MiB 1.98 1388 9687 2321 6371 995 65.2 MiB 0.10 0.00 6.07958 -131.417 -6.07958 6.07958 0.97 0.000764774 0.00068035 0.0425707 0.0382951 50 3299 29 6.79088e+06 323328 902133. 3121.57 5.40 0.320499 0.282447 27982 213445 -1 3031 20 1695 4935 263516 58127 6.11534 6.11534 -143.353 -6.11534 0 0 1.08113e+06 3740.92 0.43 0.10 0.19 -1 -1 0.43 0.0410977 0.0370893 157 228 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_101.v common 9.95 vpr 65.14 MiB -1 -1 0.22 20940 11 0.31 -1 -1 36324 -1 -1 22 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66700 30 32 287 319 1 201 84 17 17 289 -1 unnamed_device 26.6 MiB 2.05 1263 9783 2507 6146 1130 65.1 MiB 0.09 0.00 5.66792 -118.324 -5.66792 5.66792 0.92 0.000641522 0.00057991 0.0381952 0.0345342 34 3512 47 6.79088e+06 296384 618332. 2139.56 4.27 0.195455 0.171968 25102 150614 -1 2948 18 1524 4784 307271 66672 6.11867 6.11867 -138.758 -6.11867 0 0 787024. 2723.27 0.32 0.10 0.14 -1 -1 0.32 0.0330424 0.0299581 141 196 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_102.v common 10.86 vpr 64.85 MiB -1 -1 0.23 20692 15 0.43 -1 -1 36192 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 296 328 1 220 86 17 17 289 -1 unnamed_device 26.3 MiB 1.79 1350 9536 2644 6436 456 64.8 MiB 0.09 0.00 7.21442 -154.203 -7.21442 7.21442 0.97 0.000682671 0.000618614 0.0389416 0.0352462 44 3495 33 6.79088e+06 296384 787024. 2723.27 5.15 0.306472 0.270096 27118 194962 -1 2705 17 1181 3849 194899 43457 7.67991 7.67991 -172.825 -7.67991 0 0 997811. 3452.63 0.39 0.08 0.18 -1 -1 0.39 0.0311282 0.0283135 147 201 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_103.v common 9.46 vpr 65.02 MiB -1 -1 0.23 21256 13 0.39 -1 -1 36232 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 32 32 285 317 1 217 85 17 17 289 -1 unnamed_device 26.5 MiB 2.28 1369 7153 1830 4835 488 65.0 MiB 0.07 0.00 6.57668 -145.772 -6.57668 6.57668 0.91 0.000650847 0.000591576 0.0288332 0.026184 38 3314 29 6.79088e+06 282912 678818. 2348.85 3.54 0.2116 0.187761 25966 169698 -1 2772 17 1341 3903 186448 43363 7.03867 7.03867 -166.5 -7.03867 0 0 902133. 3121.57 0.33 0.08 0.14 -1 -1 0.33 0.0315647 0.0286542 143 190 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_104.v common 9.19 vpr 64.65 MiB -1 -1 0.20 20800 12 0.25 -1 -1 36572 -1 -1 18 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66204 29 32 239 271 1 185 79 17 17 289 -1 unnamed_device 26.2 MiB 2.08 1011 5487 1182 4084 221 64.7 MiB 0.05 0.00 6.04731 -123.992 -6.04731 6.04731 0.93 0.000553749 0.000503136 0.0208663 0.0190335 36 3061 28 6.79088e+06 242496 648988. 2245.63 3.66 0.158077 0.138046 25390 158009 -1 2442 15 1162 2883 178919 40092 6.58771 6.58771 -145.619 -6.58771 0 0 828058. 2865.25 0.32 0.06 0.15 -1 -1 0.32 0.0227971 0.0206115 111 150 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_105.v common 16.51 vpr 64.43 MiB -1 -1 0.21 20628 11 0.20 -1 -1 36020 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65972 32 32 235 267 1 172 78 17 17 289 -1 unnamed_device 26.0 MiB 1.89 1018 6552 1549 4725 278 64.4 MiB 0.06 0.00 5.57833 -123.024 -5.57833 5.57833 0.95 0.000523832 0.000475252 0.0241892 0.0220572 30 3147 46 6.79088e+06 188608 556674. 1926.21 11.23 0.215713 0.188413 24526 138013 -1 2376 17 1108 2657 148360 34056 5.86813 5.86813 -142.262 -5.86813 0 0 706193. 2443.58 0.29 0.06 0.13 -1 -1 0.29 0.0246756 0.0222883 98 140 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_106.v common 10.50 vpr 64.84 MiB -1 -1 0.22 20784 13 0.41 -1 -1 36584 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 31 32 294 326 1 212 84 17 17 289 -1 unnamed_device 26.3 MiB 1.38 1312 8685 2280 5635 770 64.8 MiB 0.08 0.00 6.9357 -137.041 -6.9357 6.9357 0.95 0.000652659 0.000591019 0.0353886 0.0321694 42 3440 44 6.79088e+06 282912 744469. 2576.02 5.28 0.328998 0.287995 26542 182613 -1 2777 19 1547 4589 265937 58454 7.38651 7.38651 -153.418 -7.38651 0 0 949917. 3286.91 0.37 0.10 0.17 -1 -1 0.37 0.0351348 0.0316132 143 201 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_107.v common 8.47 vpr 64.39 MiB -1 -1 0.20 20476 10 0.21 -1 -1 36556 -1 -1 17 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 29 32 219 251 1 163 78 17 17 289 -1 unnamed_device 26.0 MiB 2.31 784 9374 2284 6546 544 64.4 MiB 0.08 0.00 5.03782 -104.747 -5.03782 5.03782 0.95 0.000509545 0.000462057 0.0322615 0.0292727 34 2501 38 6.79088e+06 229024 618332. 2139.56 2.69 0.172803 0.151867 25102 150614 -1 2047 20 1032 2697 156619 37868 5.66432 5.66432 -127.96 -5.66432 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0258018 0.0230674 101 130 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_108.v common 11.35 vpr 64.60 MiB -1 -1 0.19 20544 14 0.23 -1 -1 36292 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 32 32 239 271 1 184 82 17 17 289 -1 unnamed_device 26.0 MiB 3.22 1042 12898 3923 6584 2391 64.6 MiB 0.10 0.00 6.62358 -137.051 -6.62358 6.62358 0.96 0.00054222 0.000486935 0.0433006 0.0390499 36 2986 24 6.79088e+06 242496 648988. 2245.63 4.59 0.237487 0.20765 25390 158009 -1 2369 20 1317 3506 214749 47763 6.96022 6.96022 -158.149 -6.96022 0 0 828058. 2865.25 0.33 0.08 0.14 -1 -1 0.33 0.0293912 0.0262559 110 144 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_109.v common 20.26 vpr 64.84 MiB -1 -1 0.24 20864 13 0.35 -1 -1 36432 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 31 32 266 298 1 209 83 17 17 289 -1 unnamed_device 26.4 MiB 3.04 1245 9083 2390 5842 851 64.8 MiB 0.08 0.00 6.34835 -135.308 -6.34835 6.34835 0.96 0.000653431 0.000586688 0.0351627 0.0319257 36 3545 27 6.79088e+06 269440 648988. 2245.63 13.49 0.300173 0.261548 25390 158009 -1 2917 17 1353 3628 237934 51726 6.79916 6.79916 -157.614 -6.79916 0 0 828058. 2865.25 0.34 0.08 0.15 -1 -1 0.34 0.0289301 0.0260336 125 173 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_110.v common 21.33 vpr 64.18 MiB -1 -1 0.17 20432 12 0.18 -1 -1 36616 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65724 31 32 225 257 1 172 80 17 17 289 -1 unnamed_device 25.8 MiB 3.89 889 7648 2444 3880 1324 64.2 MiB 0.06 0.00 5.57833 -115.945 -5.57833 5.57833 0.94 0.000462552 0.000410998 0.0253298 0.0228811 38 2985 42 6.79088e+06 229024 678818. 2348.85 13.99 0.297304 0.258528 25966 169698 -1 2072 30 1202 3202 325699 137617 5.98988 5.98988 -133.721 -5.98988 0 0 902133. 3121.57 0.34 0.13 0.15 -1 -1 0.34 0.034761 0.0308369 99 132 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_111.v common 18.69 vpr 64.89 MiB -1 -1 0.23 20820 12 0.24 -1 -1 36468 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 288 320 1 203 82 17 17 289 -1 unnamed_device 26.4 MiB 2.39 1075 7914 1789 5922 203 64.9 MiB 0.08 0.00 5.91508 -127.079 -5.91508 5.91508 0.97 0.000642479 0.000581284 0.0322955 0.0292435 36 3322 45 6.79088e+06 242496 648988. 2245.63 12.72 0.332641 0.289973 25390 158009 -1 2535 18 1264 3639 220621 50395 6.29098 6.29098 -143.668 -6.29098 0 0 828058. 2865.25 0.31 0.08 0.15 -1 -1 0.31 0.0309178 0.027728 130 193 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_112.v common 23.87 vpr 64.93 MiB -1 -1 0.25 20948 13 0.37 -1 -1 36660 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 31 32 282 314 1 212 83 17 17 289 -1 unnamed_device 26.4 MiB 1.39 1245 13223 4004 7203 2016 64.9 MiB 0.12 0.00 6.69391 -144.564 -6.69391 6.69391 0.97 0.000638975 0.000577229 0.0518291 0.0467988 38 3420 27 6.79088e+06 269440 678818. 2348.85 18.63 0.345573 0.303172 25966 169698 -1 2787 16 1319 3730 202886 44701 6.78001 6.78001 -158.236 -6.78001 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.0301294 0.0274353 143 189 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_113.v common 9.75 vpr 64.52 MiB -1 -1 0.20 20400 11 0.21 -1 -1 36284 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 32 32 233 265 1 183 80 17 17 289 -1 unnamed_device 26.1 MiB 2.34 1038 11948 3403 6315 2230 64.5 MiB 0.09 0.00 5.0702 -121.482 -5.0702 5.0702 0.94 0.000497916 0.000446661 0.0404193 0.0366476 36 3304 26 6.79088e+06 215552 648988. 2245.63 3.82 0.174553 0.153181 25390 158009 -1 2698 29 1255 3265 331779 125427 5.52445 5.52445 -144.69 -5.52445 0 0 828058. 2865.25 0.34 0.13 0.15 -1 -1 0.34 0.0374073 0.0332957 106 138 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_114.v common 9.70 vpr 64.86 MiB -1 -1 0.20 20804 13 0.26 -1 -1 36560 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 254 286 1 188 79 17 17 289 -1 unnamed_device 26.4 MiB 3.06 1103 9881 3364 4500 2017 64.9 MiB 0.08 0.00 6.29458 -136.168 -6.29458 6.29458 0.97 0.000574089 0.000520085 0.0378474 0.0343364 36 3428 28 6.79088e+06 202080 648988. 2245.63 3.06 0.172133 0.152513 25390 158009 -1 2698 18 1365 3625 223830 50427 6.67042 6.67042 -157.556 -6.67042 0 0 828058. 2865.25 0.33 0.08 0.14 -1 -1 0.33 0.0303564 0.0273789 113 159 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_115.v common 10.47 vpr 64.82 MiB -1 -1 0.21 20976 13 0.32 -1 -1 36548 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 32 32 285 317 1 214 83 17 17 289 -1 unnamed_device 26.4 MiB 1.43 1307 9443 2471 5673 1299 64.8 MiB 0.09 0.00 6.49473 -143.781 -6.49473 6.49473 0.93 0.000637249 0.000577474 0.0376595 0.0340674 44 3378 21 6.79088e+06 255968 787024. 2723.27 5.29 0.265376 0.232807 27118 194962 -1 2778 16 1214 3313 189638 41601 6.94909 6.94909 -162.451 -6.94909 0 0 997811. 3452.63 0.39 0.07 0.18 -1 -1 0.39 0.0293898 0.0267179 136 190 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_116.v common 20.36 vpr 64.65 MiB -1 -1 0.23 21060 11 0.24 -1 -1 36732 -1 -1 19 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 29 32 243 275 1 184 80 17 17 289 -1 unnamed_device 26.1 MiB 2.57 973 11776 4225 5456 2095 64.6 MiB 0.09 0.00 5.38344 -106.741 -5.38344 5.38344 0.94 0.000551354 0.000498727 0.0411007 0.0371166 36 3121 34 6.79088e+06 255968 648988. 2245.63 14.26 0.278656 0.241684 25390 158009 -1 2439 18 1203 3384 216371 48934 5.70008 5.70008 -128.025 -5.70008 0 0 828058. 2865.25 0.32 0.08 0.15 -1 -1 0.32 0.0266334 0.0238598 116 154 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_117.v common 22.93 vpr 65.08 MiB -1 -1 0.21 21304 14 0.39 -1 -1 36508 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 318 350 1 238 87 17 17 289 -1 unnamed_device 26.6 MiB 1.70 1358 12375 2986 7056 2333 65.1 MiB 0.11 0.00 7.68761 -161.022 -7.68761 7.68761 0.91 0.00072224 0.000655567 0.0508565 0.0461461 30 4256 31 6.79088e+06 309856 556674. 1926.21 17.63 0.389889 0.345286 24526 138013 -1 3075 18 1643 4276 227079 52192 7.68761 7.68761 -182.724 -7.68761 0 0 706193. 2443.58 0.28 0.09 0.12 -1 -1 0.28 0.0357621 0.032477 159 223 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_118.v common 8.79 vpr 64.62 MiB -1 -1 0.18 20084 12 0.19 -1 -1 36884 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 31 32 222 254 1 188 82 17 17 289 -1 unnamed_device 26.1 MiB 2.93 1087 12898 4279 6278 2341 64.6 MiB 0.10 0.00 5.36349 -125.306 -5.36349 5.36349 0.94 0.000504063 0.000456283 0.0406693 0.0368045 38 2804 28 6.79088e+06 255968 678818. 2348.85 2.38 0.165215 0.144518 25966 169698 -1 2362 17 1089 2546 147865 32801 5.82549 5.82549 -142.245 -5.82549 0 0 902133. 3121.57 0.36 0.06 0.16 -1 -1 0.36 0.024242 0.0218656 106 129 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_119.v common 9.00 vpr 64.93 MiB -1 -1 0.22 21336 13 0.35 -1 -1 37216 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 32 32 282 314 1 211 84 17 17 289 -1 unnamed_device 26.5 MiB 1.67 1333 5391 1085 3738 568 64.9 MiB 0.05 0.00 6.66283 -141.183 -6.66283 6.66283 0.93 0.000601133 0.000530871 0.0219843 0.019746 38 3726 21 6.79088e+06 269440 678818. 2348.85 3.71 0.184953 0.162577 25966 169698 -1 2942 17 1339 3928 203382 45739 7.17511 7.17511 -159.487 -7.17511 0 0 902133. 3121.57 0.34 0.08 0.14 -1 -1 0.34 0.0304568 0.0275063 136 187 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_120.v common 7.92 vpr 64.60 MiB -1 -1 0.21 20864 13 0.22 -1 -1 36124 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 32 32 238 270 1 180 84 17 17 289 -1 unnamed_device 26.1 MiB 1.41 1076 12345 3840 6601 1904 64.6 MiB 0.10 0.00 6.33716 -140.535 -6.33716 6.33716 0.96 0.000541184 0.000490138 0.040831 0.0370746 34 3212 34 6.79088e+06 269440 618332. 2139.56 2.98 0.178858 0.15855 25102 150614 -1 2547 17 1075 2709 171537 38994 6.71306 6.71306 -162.652 -6.71306 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0254325 0.0229354 107 143 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_121.v common 9.76 vpr 64.67 MiB -1 -1 0.23 20768 12 0.27 -1 -1 36624 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 32 32 269 301 1 190 83 17 17 289 -1 unnamed_device 26.3 MiB 1.90 1198 7283 1663 5251 369 64.7 MiB 0.07 0.00 5.87167 -132.399 -5.87167 5.87167 0.95 0.000642338 0.000578338 0.0301157 0.0272929 36 3081 34 6.79088e+06 255968 648988. 2245.63 4.24 0.196378 0.172206 25390 158009 -1 2579 18 1106 3194 175812 40433 6.24757 6.24757 -148.261 -6.24757 0 0 828058. 2865.25 0.34 0.08 0.15 -1 -1 0.34 0.0319011 0.0288055 128 174 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_122.v common 9.71 vpr 65.60 MiB -1 -1 0.25 21484 15 0.63 -1 -1 36984 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67172 32 32 350 382 1 256 89 17 17 289 -1 unnamed_device 27.0 MiB 1.44 1565 12761 3559 7102 2100 65.6 MiB 0.13 0.00 7.68761 -162.589 -7.68761 7.68761 0.95 0.000826814 0.00074838 0.0593456 0.0538307 44 4271 34 6.79088e+06 336800 787024. 2723.27 4.03 0.260196 0.229303 27118 194962 -1 3279 17 1694 5262 281396 63186 8.22801 8.22801 -181.699 -8.22801 0 0 997811. 3452.63 0.39 0.10 0.18 -1 -1 0.39 0.0399569 0.0362672 183 255 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_123.v common 6.57 vpr 63.90 MiB -1 -1 0.17 20072 10 0.11 -1 -1 36332 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65436 30 32 172 204 1 133 74 17 17 289 -1 unnamed_device 25.5 MiB 1.76 777 7359 2276 4279 804 63.9 MiB 0.05 0.00 4.08102 -100.592 -4.08102 4.08102 0.91 0.000386609 0.000351527 0.0205512 0.0187024 36 1872 32 6.79088e+06 161664 648988. 2245.63 1.70 0.0976677 0.0861597 25390 158009 -1 1650 18 712 1677 106704 24100 4.08102 4.08102 -110.694 -4.08102 0 0 828058. 2865.25 0.31 0.05 0.13 -1 -1 0.31 0.018023 0.016169 66 81 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_124.v common 8.76 vpr 64.34 MiB -1 -1 0.21 20448 13 0.23 -1 -1 35960 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65880 30 32 228 260 1 176 79 17 17 289 -1 unnamed_device 25.8 MiB 1.96 921 6332 1442 4159 731 64.3 MiB 0.06 0.00 6.47021 -131.827 -6.47021 6.47021 0.94 0.000570455 0.00051858 0.0235782 0.0214858 30 3138 43 6.79088e+06 229024 556674. 1926.21 3.41 0.122059 0.107171 24526 138013 -1 2376 18 1140 2846 155678 36056 6.72081 6.72081 -154.772 -6.72081 0 0 706193. 2443.58 0.29 0.06 0.13 -1 -1 0.29 0.0246467 0.0221134 103 137 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_125.v common 10.46 vpr 64.84 MiB -1 -1 0.19 20484 12 0.24 -1 -1 36728 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 32 32 264 296 1 200 82 17 17 289 -1 unnamed_device 26.2 MiB 2.41 1186 13610 3872 7549 2189 64.8 MiB 0.11 0.00 5.90733 -133.846 -5.90733 5.90733 0.96 0.000587544 0.000533215 0.0497203 0.0450299 38 2877 20 6.79088e+06 242496 678818. 2348.85 4.47 0.269376 0.237029 25966 169698 -1 2442 14 1172 2809 146376 33364 6.36938 6.36938 -156.721 -6.36938 0 0 902133. 3121.57 0.35 0.06 0.15 -1 -1 0.35 0.0253846 0.0230833 117 169 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_126.v common 10.11 vpr 64.24 MiB -1 -1 0.17 20560 9 0.16 -1 -1 36172 -1 -1 18 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65784 25 32 183 215 1 134 75 17 17 289 -1 unnamed_device 25.7 MiB 1.08 672 12715 3976 7561 1178 64.2 MiB 0.08 0.00 4.27129 -82.6904 -4.27129 4.27129 0.96 0.000424367 0.000385184 0.0375155 0.0339834 30 2031 49 6.79088e+06 242496 556674. 1926.21 5.69 0.200751 0.174669 24526 138013 -1 1538 15 699 1898 95796 22443 4.39659 4.39659 -95.9929 -4.39659 0 0 706193. 2443.58 0.29 0.04 0.13 -1 -1 0.29 0.0179927 0.0162444 86 102 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_127.v common 8.86 vpr 64.88 MiB -1 -1 0.23 20772 12 0.31 -1 -1 36424 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 32 32 300 332 1 226 85 17 17 289 -1 unnamed_device 26.3 MiB 1.78 1452 14407 4182 8030 2195 64.9 MiB 0.12 0.00 6.04387 -138.13 -6.04387 6.04387 0.92 0.000627177 0.000557029 0.0549257 0.0495392 40 3474 23 6.79088e+06 282912 706193. 2443.58 3.36 0.227596 0.201462 26254 175826 -1 3216 17 1617 4470 289231 63641 6.41977 6.41977 -160.487 -6.41977 0 0 926341. 3205.33 0.35 0.09 0.15 -1 -1 0.35 0.0321502 0.0291154 143 205 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_128.v common 9.24 vpr 64.98 MiB -1 -1 0.24 21320 13 0.40 -1 -1 36624 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 31 32 290 322 1 215 85 17 17 289 -1 unnamed_device 26.5 MiB 2.39 1318 9199 2062 5460 1677 65.0 MiB 0.09 0.00 6.928 -146.391 -6.928 6.928 0.93 0.00067371 0.000606249 0.0364128 0.0330318 38 3613 36 6.79088e+06 296384 678818. 2348.85 3.05 0.217515 0.190986 25966 169698 -1 2912 20 1392 3935 198701 45115 6.9672 6.9672 -159.514 -6.9672 0 0 902133. 3121.57 0.35 0.08 0.16 -1 -1 0.35 0.0344967 0.0310278 147 197 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_001.v common 8.86 vpr 65.05 MiB -1 -1 0.16 20396 1 0.03 -1 -1 33808 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66612 32 32 354 285 1 207 90 17 17 289 -1 unnamed_device 26.6 MiB 3.53 1204 13155 4344 7859 952 65.1 MiB 0.11 0.00 4.31702 -132.808 -4.31702 4.31702 0.95 0.000521476 0.000473583 0.0359013 0.0326456 34 2934 35 6.87369e+06 363320 618332. 2139.56 2.10 0.158732 0.138466 25762 151098 -1 2432 20 1570 2484 209620 45462 4.5446 4.5446 -158.127 -4.5446 0 0 787024. 2723.27 0.30 0.07 0.14 -1 -1 0.30 0.0223984 0.0198099 142 47 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_002.v common 7.15 vpr 65.08 MiB -1 -1 0.17 20492 1 0.03 -1 -1 33904 -1 -1 24 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 30 32 363 293 1 199 86 17 17 289 -1 unnamed_device 26.7 MiB 2.96 1023 9536 2567 5956 1013 65.1 MiB 0.09 0.00 3.65445 -111.378 -3.65445 3.65445 0.93 0.000498532 0.000445261 0.0276475 0.0251543 30 2160 22 6.87369e+06 335372 556674. 1926.21 1.01 0.0944837 0.0827122 25186 138497 -1 1828 21 1459 2264 106361 28478 3.82346 3.82346 -132.599 -3.82346 0 0 706193. 2443.58 0.30 0.06 0.13 -1 -1 0.30 0.0234211 0.0205627 138 58 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_003.v common 7.96 vpr 64.84 MiB -1 -1 0.16 20100 1 0.03 -1 -1 33900 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 299 247 1 190 85 17 17 289 -1 unnamed_device 26.3 MiB 3.08 1042 7153 1647 5062 444 64.8 MiB 0.07 0.00 3.45035 -102.032 -3.45035 3.45035 0.94 0.000448327 0.00040825 0.0194691 0.0177807 34 2480 22 6.87369e+06 293451 618332. 2139.56 1.64 0.119136 0.103743 25762 151098 -1 2114 22 1293 1787 134358 31515 3.86676 3.86676 -124.86 -3.86676 0 0 787024. 2723.27 0.33 0.06 0.14 -1 -1 0.33 0.0226174 0.0199506 124 26 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_004.v common 6.01 vpr 64.86 MiB -1 -1 0.15 20160 1 0.03 -1 -1 33848 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 29 32 308 248 1 172 90 17 17 289 -1 unnamed_device 26.3 MiB 1.18 978 12552 3794 7466 1292 64.9 MiB 0.09 0.00 3.69012 -105.3 -3.69012 3.69012 0.94 0.000393678 0.000357506 0.0298305 0.0270459 34 2391 27 6.87369e+06 405241 618332. 2139.56 1.60 0.132936 0.115132 25762 151098 -1 2064 22 1500 2748 209721 48063 3.8767 3.8767 -122.674 -3.8767 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0232706 0.0204809 124 25 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_005.v common 8.79 vpr 65.04 MiB -1 -1 0.15 20276 1 0.03 -1 -1 33728 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 32 32 336 268 1 181 91 17 17 289 -1 unnamed_device 26.4 MiB 1.44 1069 12127 3256 8126 745 65.0 MiB 0.11 0.00 3.56782 -109.183 -3.56782 3.56782 0.91 0.000480234 0.000439725 0.0310812 0.0283147 30 2608 25 6.87369e+06 377294 556674. 1926.21 4.29 0.175205 0.15402 25186 138497 -1 2006 22 1332 2726 158196 37725 3.7914 3.7914 -129.809 -3.7914 0 0 706193. 2443.58 0.28 0.06 0.12 -1 -1 0.28 0.0226307 0.019972 131 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_006.v common 5.87 vpr 64.97 MiB -1 -1 0.16 20532 1 0.03 -1 -1 33984 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 32 32 366 295 1 189 94 17 17 289 -1 unnamed_device 26.5 MiB 1.71 1066 10957 2969 7191 797 65.0 MiB 0.10 0.00 2.67957 -99.0661 -2.67957 2.67957 0.92 0.000645805 0.000577123 0.0290258 0.0264695 32 2655 25 6.87369e+06 419215 586450. 2029.24 0.99 0.0994742 0.0875588 25474 144626 -1 2190 19 1399 2219 174510 40656 3.25191 3.25191 -128.049 -3.25191 0 0 744469. 2576.02 0.29 0.06 0.14 -1 -1 0.29 0.0216857 0.0191528 136 55 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_007.v common 8.80 vpr 64.64 MiB -1 -1 0.15 20236 1 0.03 -1 -1 34288 -1 -1 19 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 27 32 259 221 1 141 78 17 17 289 -1 unnamed_device 26.1 MiB 2.69 623 12528 3238 8291 999 64.6 MiB 0.09 0.00 2.94598 -84.4417 -2.94598 2.94598 0.94 0.000402978 0.000368104 0.0322232 0.0294079 34 1709 24 6.87369e+06 265503 618332. 2139.56 2.96 0.153273 0.13228 25762 151098 -1 1373 18 998 1670 118225 28272 3.08026 3.08026 -101.482 -3.08026 0 0 787024. 2723.27 0.31 0.05 0.14 -1 -1 0.31 0.0162842 0.0143502 97 26 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_008.v common 7.31 vpr 64.79 MiB -1 -1 0.15 20136 1 0.03 -1 -1 33756 -1 -1 32 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 31 32 271 219 1 164 95 17 17 289 -1 unnamed_device 26.2 MiB 1.06 910 16295 5327 8217 2751 64.8 MiB 0.11 0.00 2.74825 -84.2401 -2.74825 2.74825 0.98 0.000431785 0.000391873 0.0341963 0.0309963 28 2330 20 6.87369e+06 447163 531479. 1839.03 3.04 0.15153 0.131719 24610 126494 -1 2079 22 1213 2059 167561 37296 3.18286 3.18286 -104.863 -3.18286 0 0 648988. 2245.63 0.26 0.06 0.12 -1 -1 0.26 0.0199977 0.0175049 119 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_009.v common 9.82 vpr 64.63 MiB -1 -1 0.16 20228 1 0.03 -1 -1 33812 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66184 31 32 317 271 1 175 80 17 17 289 -1 unnamed_device 26.1 MiB 2.79 740 7992 1853 5030 1109 64.6 MiB 0.07 0.00 2.65757 -87.8608 -2.65757 2.65757 0.96 0.000474247 0.000432758 0.0234168 0.0213722 36 1984 21 6.87369e+06 237555 648988. 2245.63 3.75 0.152264 0.131356 26050 158493 -1 1752 19 1270 1840 125195 30682 3.20291 3.20291 -112.3 -3.20291 0 0 828058. 2865.25 0.34 0.06 0.15 -1 -1 0.34 0.0199735 0.0176705 113 60 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_010.v common 9.03 vpr 64.85 MiB -1 -1 0.14 20480 1 0.03 -1 -1 33988 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 298 248 1 162 80 17 17 289 -1 unnamed_device 26.4 MiB 4.33 788 7476 1809 5291 376 64.9 MiB 0.07 0.00 3.21683 -107.397 -3.21683 3.21683 0.95 0.00041261 0.000371338 0.0204939 0.0186087 34 2093 31 6.87369e+06 223581 618332. 2139.56 1.56 0.118859 0.102687 25762 151098 -1 1751 23 1264 2093 155104 37960 3.11946 3.11946 -122.645 -3.11946 0 0 787024. 2723.27 0.31 0.06 0.13 -1 -1 0.31 0.0208153 0.0182127 107 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_011.v common 8.32 vpr 64.52 MiB -1 -1 0.16 20448 1 0.03 -1 -1 33596 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 30 32 303 262 1 148 78 17 17 289 -1 unnamed_device 26.1 MiB 3.63 738 6884 1779 4589 516 64.5 MiB 0.06 0.00 3.28893 -97.5252 -3.28893 3.28893 0.97 0.000445127 0.000409318 0.0206551 0.0188528 34 1823 20 6.87369e+06 223581 618332. 2139.56 1.49 0.111835 0.0969993 25762 151098 -1 1519 16 835 1373 86991 21118 3.11326 3.11326 -111.636 -3.11326 0 0 787024. 2723.27 0.32 0.04 0.14 -1 -1 0.32 0.0170362 0.0151378 98 58 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_012.v common 7.33 vpr 64.73 MiB -1 -1 0.15 20404 1 0.03 -1 -1 33632 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 32 32 276 237 1 171 81 17 17 289 -1 unnamed_device 26.3 MiB 2.68 1005 11631 3362 7063 1206 64.7 MiB 0.09 0.00 3.0081 -102.337 -3.0081 3.0081 0.95 0.000417634 0.000381196 0.0291661 0.0264804 34 2345 23 6.87369e+06 237555 618332. 2139.56 1.47 0.117094 0.101793 25762 151098 -1 1982 23 1148 1581 114812 27612 3.22011 3.22011 -122.431 -3.22011 0 0 787024. 2723.27 0.30 0.05 0.14 -1 -1 0.30 0.0204415 0.0179717 107 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_013.v common 9.43 vpr 64.95 MiB -1 -1 0.16 20716 1 0.03 -1 -1 33992 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 32 32 344 272 1 209 87 17 17 289 -1 unnamed_device 26.6 MiB 4.39 1017 16983 5386 9533 2064 64.9 MiB 0.15 0.00 3.36593 -110.453 -3.36593 3.36593 0.94 0.000497899 0.000446717 0.0468123 0.042451 34 2720 21 6.87369e+06 321398 618332. 2139.56 1.73 0.158225 0.138527 25762 151098 -1 2293 20 1893 2883 222845 51693 3.38291 3.38291 -130.537 -3.38291 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0227666 0.0200752 142 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_014.v common 7.47 vpr 64.84 MiB -1 -1 0.14 20456 1 0.03 -1 -1 33768 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 363 295 1 181 95 17 17 289 -1 unnamed_device 26.5 MiB 2.65 1021 17375 4684 10530 2161 64.8 MiB 0.14 0.00 3.88148 -120.44 -3.88148 3.88148 0.91 0.000501448 0.000456287 0.0430929 0.0393343 26 2807 42 6.87369e+06 433189 503264. 1741.40 1.73 0.143095 0.126919 24322 120374 -1 2414 20 1717 2810 242102 55388 4.38366 4.38366 -148.989 -4.38366 0 0 618332. 2139.56 0.25 0.08 0.10 -1 -1 0.25 0.0236976 0.0209379 133 58 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_015.v common 6.13 vpr 64.62 MiB -1 -1 0.13 20088 1 0.03 -1 -1 33872 -1 -1 19 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66168 29 32 248 215 1 142 80 17 17 289 -1 unnamed_device 26.1 MiB 1.96 596 9368 2305 6541 522 64.6 MiB 0.07 0.00 2.63557 -78.8285 -2.63557 2.63557 0.94 0.000398021 0.000363123 0.0234792 0.0214267 28 1905 20 6.87369e+06 265503 531479. 1839.03 1.07 0.0752195 0.0660376 24610 126494 -1 1623 21 1059 1657 123015 30350 2.94131 2.94131 -102.953 -2.94131 0 0 648988. 2245.63 0.27 0.05 0.12 -1 -1 0.27 0.0179044 0.0157042 94 21 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_016.v common 7.65 vpr 64.89 MiB -1 -1 0.16 20524 1 0.03 -1 -1 34000 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 32 32 370 297 1 191 88 17 17 289 -1 unnamed_device 26.5 MiB 2.46 865 11398 3123 6712 1563 64.9 MiB 0.10 0.00 2.9366 -95.9942 -2.9366 2.9366 0.94 0.000509431 0.000464526 0.0323889 0.0295157 34 2741 39 6.87369e+06 335372 618332. 2139.56 1.94 0.16289 0.141901 25762 151098 -1 1950 21 1520 2674 205372 48483 3.22491 3.22491 -118.443 -3.22491 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0239714 0.0211317 135 55 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_017.v common 9.51 vpr 65.08 MiB -1 -1 0.16 20728 1 0.03 -1 -1 33852 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 338 269 1 204 85 17 17 289 -1 unnamed_device 26.7 MiB 4.64 1050 9013 2192 6322 499 65.1 MiB 0.08 0.00 3.24063 -108.847 -3.24063 3.24063 0.97 0.000512182 0.000466693 0.0260107 0.0237014 34 2627 20 6.87369e+06 293451 618332. 2139.56 1.62 0.137403 0.120076 25762 151098 -1 2189 19 1588 2311 166927 38727 3.09951 3.09951 -121.942 -3.09951 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0221263 0.0196305 140 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_018.v common 7.71 vpr 64.92 MiB -1 -1 0.16 20248 1 0.03 -1 -1 33592 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 32 32 323 276 1 156 92 17 17 289 -1 unnamed_device 26.4 MiB 2.97 895 15410 4821 8560 2029 64.9 MiB 0.12 0.00 2.46506 -93.2432 -2.46506 2.46506 0.94 0.000478338 0.000423195 0.0366778 0.0332926 34 2087 19 6.87369e+06 391268 618332. 2139.56 1.50 0.131534 0.114239 25762 151098 -1 1796 22 1102 1594 115623 27756 2.43847 2.43847 -106.232 -2.43847 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0216493 0.0190173 109 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_019.v common 4.69 vpr 64.32 MiB -1 -1 0.14 20072 1 0.03 -1 -1 33668 -1 -1 14 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65864 30 32 222 206 1 117 76 17 17 289 -1 unnamed_device 25.9 MiB 0.69 678 11276 4126 5716 1434 64.3 MiB 0.07 0.00 2.10903 -75.4981 -2.10903 2.10903 0.94 0.000358611 0.000327857 0.0265206 0.0241706 32 1581 19 6.87369e+06 195634 586450. 2029.24 0.91 0.0696673 0.0611567 25474 144626 -1 1375 20 726 1023 88047 20100 2.13612 2.13612 -89.7402 -2.13612 0 0 744469. 2576.02 0.29 0.04 0.13 -1 -1 0.29 0.0154275 0.013528 71 29 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_020.v common 7.97 vpr 64.68 MiB -1 -1 0.14 20296 1 0.03 -1 -1 33884 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66236 31 32 291 243 1 178 82 17 17 289 -1 unnamed_device 26.2 MiB 3.28 998 10050 3228 6176 646 64.7 MiB 0.08 0.00 3.93483 -123.477 -3.93483 3.93483 0.94 0.000483747 0.000440093 0.02557 0.0232288 34 2181 22 6.87369e+06 265503 618332. 2139.56 1.53 0.116639 0.101005 25762 151098 -1 1885 21 1113 1678 120286 27636 3.69321 3.69321 -138.177 -3.69321 0 0 787024. 2723.27 0.31 0.05 0.13 -1 -1 0.31 0.0200179 0.0176058 116 30 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_021.v common 5.35 vpr 65.00 MiB -1 -1 0.16 20268 1 0.03 -1 -1 34024 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 32 32 342 271 1 181 99 17 17 289 -1 unnamed_device 26.6 MiB 1.05 1192 18111 4986 10816 2309 65.0 MiB 0.14 0.00 3.33899 -111.682 -3.33899 3.33899 0.94 0.000499936 0.000455802 0.041982 0.0381774 32 2551 31 6.87369e+06 489084 586450. 2029.24 1.03 0.112742 0.0991361 25474 144626 -1 2148 23 1645 2489 187712 42901 3.7534 3.7534 -136.772 -3.7534 0 0 744469. 2576.02 0.30 0.07 0.14 -1 -1 0.30 0.023991 0.0210731 137 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_022.v common 7.53 vpr 65.18 MiB -1 -1 0.17 20512 1 0.03 -1 -1 33632 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 32 32 372 300 1 206 86 17 17 289 -1 unnamed_device 26.8 MiB 2.50 1104 8213 1851 5940 422 65.2 MiB 0.08 0.00 3.42215 -106.583 -3.42215 3.42215 0.95 0.000522067 0.000474725 0.0250722 0.0228999 38 2390 20 6.87369e+06 307425 678818. 2348.85 1.69 0.135639 0.11773 26626 170182 -1 2147 20 1388 2314 165765 36600 3.84876 3.84876 -126.255 -3.84876 0 0 902133. 3121.57 0.35 0.07 0.16 -1 -1 0.35 0.0243532 0.0216094 142 59 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_023.v common 6.29 vpr 64.23 MiB -1 -1 0.13 20288 1 0.03 -1 -1 34224 -1 -1 17 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65776 26 32 190 182 1 108 75 17 17 289 -1 unnamed_device 25.8 MiB 1.93 344 9713 3545 4055 2113 64.2 MiB 0.05 0.00 2.06503 -56.4036 -2.06503 2.06503 0.92 0.000291269 0.000265801 0.0193546 0.0176799 34 1258 24 6.87369e+06 237555 618332. 2139.56 1.41 0.0841063 0.0731692 25762 151098 -1 799 17 583 775 49767 14736 2.37877 2.37877 -75.4641 -2.37877 0 0 787024. 2723.27 0.30 0.03 0.13 -1 -1 0.30 0.0118268 0.0104665 67 21 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_024.v common 5.98 vpr 64.92 MiB -1 -1 0.15 20272 1 0.03 -1 -1 33892 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 32 32 285 227 1 169 87 17 17 289 -1 unnamed_device 26.4 MiB 1.24 998 5271 1082 3713 476 64.9 MiB 0.05 0.00 3.71512 -108.094 -3.71512 3.71512 0.95 0.000445844 0.00040592 0.0138268 0.0126496 34 2339 23 6.87369e+06 321398 618332. 2139.56 1.57 0.108093 0.093502 25762 151098 -1 2091 21 1329 2391 183586 40616 3.7824 3.7824 -127.825 -3.7824 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0199969 0.0176192 119 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_025.v common 4.45 vpr 64.14 MiB -1 -1 0.12 19900 1 0.03 -1 -1 33732 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65676 32 32 173 169 1 114 76 17 17 289 -1 unnamed_device 25.9 MiB 0.49 533 10636 4408 5985 243 64.1 MiB 0.06 0.00 2.08703 -66.0984 -2.08703 2.08703 0.96 0.000303485 0.000274629 0.0203051 0.0183961 28 1388 27 6.87369e+06 167686 531479. 1839.03 0.94 0.061918 0.0540805 24610 126494 -1 1231 20 676 820 66783 16500 2.40077 2.40077 -85.6913 -2.40077 0 0 648988. 2245.63 0.27 0.04 0.11 -1 -1 0.27 0.0129243 0.011422 65 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_026.v common 7.24 vpr 64.43 MiB -1 -1 0.15 20244 1 0.03 -1 -1 33976 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 32 32 300 245 1 169 94 17 17 289 -1 unnamed_device 25.9 MiB 1.02 827 10957 2485 7973 499 64.4 MiB 0.09 0.00 3.63082 -102.435 -3.63082 3.63082 0.95 0.000461967 0.000420725 0.0254304 0.0231775 28 2080 24 6.87369e+06 419215 531479. 1839.03 3.06 0.165141 0.143126 24610 126494 -1 1840 20 1191 1964 129299 32456 4.0267 4.0267 -130.181 -4.0267 0 0 648988. 2245.63 0.27 0.06 0.12 -1 -1 0.27 0.0205055 0.0181528 120 21 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_027.v common 5.28 vpr 64.88 MiB -1 -1 0.16 20212 1 0.03 -1 -1 34020 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66432 32 32 297 233 1 177 95 17 17 289 -1 unnamed_device 26.3 MiB 1.03 1035 13703 3871 8512 1320 64.9 MiB 0.11 0.00 2.73725 -91.0691 -2.73725 2.73725 0.98 0.00045818 0.000408627 0.0313355 0.0283538 26 2481 21 6.87369e+06 433189 503264. 1741.40 1.00 0.0912344 0.0799291 24322 120374 -1 2170 19 1310 2271 168982 38295 3.23386 3.23386 -117.253 -3.23386 0 0 618332. 2139.56 0.25 0.06 0.12 -1 -1 0.25 0.0194589 0.0171508 130 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_028.v common 7.01 vpr 64.87 MiB -1 -1 0.15 20596 1 0.03 -1 -1 33524 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 32 32 338 277 1 186 92 17 17 289 -1 unnamed_device 26.5 MiB 2.08 1001 11270 2968 7533 769 64.9 MiB 0.10 0.00 3.71518 -107.036 -3.71518 3.71518 0.98 0.000789847 0.0007212 0.0292094 0.026616 34 2482 20 6.87369e+06 391268 618332. 2139.56 1.62 0.137374 0.119845 25762 151098 -1 2025 23 1451 2527 167137 39800 3.91776 3.91776 -130.692 -3.91776 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0250282 0.0220785 131 47 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_029.v common 5.60 vpr 64.40 MiB -1 -1 0.15 20264 1 0.03 -1 -1 33684 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65948 32 32 284 241 1 148 80 17 17 289 -1 unnamed_device 26.0 MiB 1.10 758 12292 4348 5539 2405 64.4 MiB 0.09 0.00 2.61357 -89.9597 -2.61357 2.61357 0.96 0.000425814 0.000388002 0.0327362 0.0298893 28 2224 31 6.87369e+06 223581 531479. 1839.03 1.33 0.102279 0.090353 24610 126494 -1 1770 23 1090 1699 143707 33934 3.00781 3.00781 -111.1 -3.00781 0 0 648988. 2245.63 0.27 0.06 0.12 -1 -1 0.27 0.0212513 0.0186693 99 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_030.v common 5.57 vpr 64.57 MiB -1 -1 0.15 20284 1 0.03 -1 -1 33528 -1 -1 26 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66124 30 32 262 227 1 138 88 17 17 289 -1 unnamed_device 26.0 MiB 1.42 725 10033 2465 6301 1267 64.6 MiB 0.07 0.00 2.60257 -83.4629 -2.60257 2.60257 0.94 0.000406058 0.000369268 0.0227774 0.0207728 32 1803 21 6.87369e+06 363320 586450. 2029.24 0.97 0.0759823 0.0665884 25474 144626 -1 1551 19 977 1587 117708 26928 2.78301 2.78301 -99.246 -2.78301 0 0 744469. 2576.02 0.29 0.05 0.14 -1 -1 0.29 0.0173777 0.0152791 97 29 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_031.v common 5.39 vpr 64.75 MiB -1 -1 0.14 20352 1 0.03 -1 -1 33800 -1 -1 18 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 28 32 260 223 1 140 78 17 17 289 -1 unnamed_device 26.2 MiB 1.03 653 12860 4741 6584 1535 64.8 MiB 0.09 0.00 2.8296 -82.4227 -2.8296 2.8296 0.91 0.000379827 0.000346202 0.030761 0.0280665 32 1913 23 6.87369e+06 251529 586450. 2029.24 1.32 0.0940469 0.0824229 25474 144626 -1 1544 22 1048 1852 142763 35752 2.98326 2.98326 -101.314 -2.98326 0 0 744469. 2576.02 0.29 0.06 0.13 -1 -1 0.29 0.0186891 0.0164764 95 27 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_032.v common 4.97 vpr 64.62 MiB -1 -1 0.14 20328 1 0.03 -1 -1 33456 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66168 32 32 253 210 1 156 81 17 17 289 -1 unnamed_device 26.3 MiB 0.84 819 9181 2266 6333 582 64.6 MiB 0.07 0.00 3.20393 -100.286 -3.20393 3.20393 0.96 0.000420769 0.000381316 0.0223019 0.0202964 32 2245 24 6.87369e+06 237555 586450. 2029.24 0.98 0.0755272 0.0662389 25474 144626 -1 1843 18 1150 1888 138606 32445 3.01161 3.01161 -115.801 -3.01161 0 0 744469. 2576.02 0.30 0.05 0.13 -1 -1 0.30 0.0167707 0.0148639 101 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_033.v common 5.10 vpr 64.73 MiB -1 -1 0.15 20648 1 0.03 -1 -1 33692 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 31 32 271 231 1 149 89 17 17 289 -1 unnamed_device 26.4 MiB 1.03 778 9197 1989 6831 377 64.7 MiB 0.07 0.00 2.8296 -88.0864 -2.8296 2.8296 0.94 0.000422663 0.000383634 0.0211721 0.0192411 30 1908 22 6.87369e+06 363320 556674. 1926.21 0.95 0.0763 0.0667212 25186 138497 -1 1586 22 792 1531 91147 22199 2.83496 2.83496 -104.851 -2.83496 0 0 706193. 2443.58 0.30 0.05 0.12 -1 -1 0.30 0.0198373 0.0174776 102 26 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_034.v common 8.24 vpr 64.61 MiB -1 -1 0.14 20160 1 0.03 -1 -1 33800 -1 -1 25 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 29 32 291 250 1 154 86 17 17 289 -1 unnamed_device 26.2 MiB 3.56 860 13505 3573 8124 1808 64.6 MiB 0.10 0.00 2.42106 -82.6823 -2.42106 2.42106 0.95 0.000420707 0.000383346 0.0321181 0.0292594 34 1953 18 6.87369e+06 349346 618332. 2139.56 1.48 0.118061 0.102774 25762 151098 -1 1722 21 1157 1723 123276 29507 2.51977 2.51977 -102.353 -2.51977 0 0 787024. 2723.27 0.31 0.05 0.14 -1 -1 0.31 0.0192361 0.0168655 106 48 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_035.v common 12.94 vpr 65.07 MiB -1 -1 0.16 20604 1 0.03 -1 -1 33912 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 32 32 367 282 1 201 104 17 17 289 -1 unnamed_device 26.6 MiB 4.20 1171 15232 4033 9175 2024 65.1 MiB 0.13 0.00 3.28579 -102.179 -3.28579 3.28579 0.95 0.00054489 0.000495039 0.0358423 0.0325445 26 3163 37 6.87369e+06 558954 503264. 1741.40 5.48 0.200949 0.175133 24322 120374 -1 2708 23 1798 3441 338593 71179 3.956 3.956 -130.961 -3.956 0 0 618332. 2139.56 0.26 0.10 0.11 -1 -1 0.26 0.0271762 0.023909 156 26 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_036.v common 8.79 vpr 65.36 MiB -1 -1 0.16 20540 1 0.03 -1 -1 33968 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66924 32 32 391 311 1 194 102 17 17 289 -1 unnamed_device 26.9 MiB 3.85 1097 17000 4575 10194 2231 65.4 MiB 0.14 0.00 3.09148 -109.588 -3.09148 3.09148 0.97 0.000561673 0.000515558 0.0424422 0.0384944 34 2312 24 6.87369e+06 531006 618332. 2139.56 1.58 0.160458 0.139743 25762 151098 -1 1980 20 1668 2708 159232 37076 2.77866 2.77866 -117.934 -2.77866 0 0 787024. 2723.27 0.33 0.07 0.14 -1 -1 0.33 0.0255908 0.0226236 148 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_037.v common 6.94 vpr 64.77 MiB -1 -1 0.13 20176 1 0.03 -1 -1 33796 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 31 32 279 237 1 167 81 17 17 289 -1 unnamed_device 26.3 MiB 2.30 884 14081 5194 6489 2398 64.8 MiB 0.10 0.00 3.32193 -102.37 -3.32193 3.32193 0.91 0.000406387 0.000364464 0.0349167 0.0318773 34 2327 21 6.87369e+06 251529 618332. 2139.56 1.57 0.129906 0.114094 25762 151098 -1 1888 22 1281 1935 153390 35118 3.30791 3.30791 -119.359 -3.30791 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.0200198 0.0176557 109 30 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_038.v common 8.10 vpr 64.96 MiB -1 -1 0.17 20472 1 0.03 -1 -1 33972 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66520 31 32 370 297 1 187 89 17 17 289 -1 unnamed_device 26.6 MiB 3.10 877 15533 4576 8222 2735 65.0 MiB 0.13 0.00 2.9678 -96.0281 -2.9678 2.9678 0.94 0.000519691 0.000469477 0.0433536 0.0393652 34 2623 25 6.87369e+06 363320 618332. 2139.56 1.69 0.160032 0.139481 25762 151098 -1 2014 20 1620 2716 182708 44176 3.02256 3.02256 -115.855 -3.02256 0 0 787024. 2723.27 0.33 0.07 0.14 -1 -1 0.33 0.0244652 0.0216354 136 57 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_039.v common 10.49 vpr 65.13 MiB -1 -1 0.17 20656 1 0.03 -1 -1 33916 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66692 31 32 377 302 1 237 88 17 17 289 -1 unnamed_device 26.6 MiB 4.65 1235 17053 5614 8644 2795 65.1 MiB 0.15 0.00 4.36902 -137.043 -4.36902 4.36902 0.97 0.00055412 0.000506154 0.0492069 0.0448328 34 3428 24 6.87369e+06 349346 618332. 2139.56 2.42 0.190351 0.168113 25762 151098 -1 2749 24 2432 3627 308454 68875 5.11439 5.11439 -168.979 -5.11439 0 0 787024. 2723.27 0.32 0.10 0.13 -1 -1 0.32 0.0306002 0.027019 159 60 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_040.v common 8.58 vpr 65.16 MiB -1 -1 0.17 20404 1 0.03 -1 -1 33788 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 31 32 383 305 1 212 90 17 17 289 -1 unnamed_device 26.7 MiB 4.16 1074 16773 5661 8063 3049 65.2 MiB 0.15 0.00 4.33584 -133.913 -4.33584 4.33584 0.94 0.000535582 0.000486098 0.0472253 0.0429385 30 2768 25 6.87369e+06 377294 556674. 1926.21 1.14 0.124722 0.110181 25186 138497 -1 2042 18 1379 2123 125125 29660 4.42655 4.42655 -155.407 -4.42655 0 0 706193. 2443.58 0.30 0.06 0.13 -1 -1 0.30 0.023487 0.0209009 152 60 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_041.v common 7.84 vpr 65.10 MiB -1 -1 0.15 20728 1 0.03 -1 -1 33648 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 31 32 352 285 1 186 88 17 17 289 -1 unnamed_device 26.7 MiB 3.29 972 10423 2904 6299 1220 65.1 MiB 0.10 0.00 3.22963 -104.153 -3.22963 3.22963 0.96 0.000494236 0.00044846 0.0283985 0.0257985 32 3175 50 6.87369e+06 349346 586450. 2029.24 1.35 0.120971 0.105761 25474 144626 -1 2369 23 1650 2773 219384 52186 3.31991 3.31991 -125.166 -3.31991 0 0 744469. 2576.02 0.30 0.08 0.13 -1 -1 0.30 0.0250962 0.0219926 131 51 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_042.v common 7.57 vpr 64.53 MiB -1 -1 0.14 20508 1 0.03 -1 -1 33816 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 32 32 291 242 1 183 84 17 17 289 -1 unnamed_device 26.0 MiB 2.87 1056 14541 5276 7305 1960 64.5 MiB 0.11 0.00 3.52545 -100.891 -3.52545 3.52545 0.93 0.000436049 0.000398093 0.0375726 0.0342622 34 2529 22 6.87369e+06 279477 618332. 2139.56 1.54 0.132015 0.115254 25762 151098 -1 2054 18 1289 1947 139144 32676 3.82676 3.82676 -119.483 -3.82676 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0188593 0.0166444 119 24 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_043.v common 8.69 vpr 65.58 MiB -1 -1 0.17 20468 1 0.03 -1 -1 33892 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67152 32 32 457 356 1 225 102 17 17 289 -1 unnamed_device 27.0 MiB 4.08 1268 13192 3427 8863 902 65.6 MiB 0.13 0.00 3.94568 -130.369 -3.94568 3.94568 0.94 0.000605258 0.000549924 0.0362587 0.0329305 32 3530 49 6.87369e+06 531006 586450. 2029.24 1.31 0.143367 0.125437 25474 144626 -1 2620 21 1880 2960 219971 51457 4.18326 4.18326 -154.256 -4.18326 0 0 744469. 2576.02 0.29 0.08 0.13 -1 -1 0.29 0.0279296 0.0246702 173 84 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_044.v common 8.44 vpr 64.42 MiB -1 -1 0.16 20432 1 0.03 -1 -1 33588 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65964 31 32 261 225 1 148 85 17 17 289 -1 unnamed_device 26.1 MiB 2.06 885 13291 3761 8364 1166 64.4 MiB 0.10 0.00 2.78925 -88.8806 -2.78925 2.78925 0.97 0.000407684 0.000371656 0.030884 0.028092 34 1941 49 6.87369e+06 307425 618332. 2139.56 3.18 0.152237 0.131718 25762 151098 -1 1697 16 900 1502 105210 24220 2.94126 2.94126 -105.794 -2.94126 0 0 787024. 2723.27 0.30 0.04 0.14 -1 -1 0.30 0.0150911 0.0133616 96 24 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_045.v common 7.98 vpr 64.88 MiB -1 -1 0.17 20488 1 0.03 -1 -1 33848 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 31 32 337 267 1 207 86 17 17 289 -1 unnamed_device 26.4 MiB 2.81 1163 15017 4305 8854 1858 64.9 MiB 0.13 0.00 3.78918 -119.277 -3.78918 3.78918 0.97 0.000502147 0.000456389 0.0419302 0.0382363 34 3071 25 6.87369e+06 321398 618332. 2139.56 1.84 0.156473 0.13691 25762 151098 -1 2480 21 1800 2711 225667 51596 4.12426 4.12426 -143.841 -4.12426 0 0 787024. 2723.27 0.31 0.08 0.14 -1 -1 0.31 0.0229527 0.0202377 140 30 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_046.v common 6.78 vpr 64.65 MiB -1 -1 0.17 20600 1 0.03 -1 -1 33656 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 32 32 349 284 1 183 96 17 17 289 -1 unnamed_device 26.3 MiB 2.32 960 16959 5005 8975 2979 64.6 MiB 0.14 0.00 2.9146 -93.1402 -2.9146 2.9146 0.96 0.000519924 0.000473697 0.0425879 0.0388142 30 2407 29 6.87369e+06 447163 556674. 1926.21 1.18 0.118573 0.104568 25186 138497 -1 1852 22 1141 1984 112146 26846 2.86001 2.86001 -108.023 -2.86001 0 0 706193. 2443.58 0.29 0.06 0.13 -1 -1 0.29 0.0240247 0.0211493 132 50 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_047.v common 4.95 vpr 64.96 MiB -1 -1 0.15 20004 1 0.03 -1 -1 33976 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 32 32 291 230 1 175 90 17 17 289 -1 unnamed_device 26.4 MiB 0.78 1057 14562 4411 8073 2078 65.0 MiB 0.11 0.00 3.35979 -108.146 -3.35979 3.35979 0.93 0.000404877 0.000363783 0.0323277 0.0291994 28 2584 26 6.87369e+06 363320 531479. 1839.03 1.06 0.0954066 0.0837081 24610 126494 -1 2254 20 1455 2777 202758 46339 3.6041 3.6041 -128.763 -3.6041 0 0 648988. 2245.63 0.27 0.07 0.11 -1 -1 0.27 0.0199 0.0175515 123 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_048.v common 7.80 vpr 65.02 MiB -1 -1 0.16 20420 1 0.03 -1 -1 33900 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 32 32 353 287 1 203 86 17 17 289 -1 unnamed_device 26.7 MiB 3.57 1082 9725 2417 6372 936 65.0 MiB 0.09 0.00 3.93315 -121.002 -3.93315 3.93315 0.94 0.000539008 0.000487153 0.0290561 0.0264652 30 2602 31 6.87369e+06 307425 556674. 1926.21 1.05 0.103735 0.0908468 25186 138497 -1 2032 19 1105 1558 93768 23218 3.3592 3.3592 -126.593 -3.3592 0 0 706193. 2443.58 0.29 0.05 0.13 -1 -1 0.29 0.0220622 0.0194974 136 52 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_049.v common 8.58 vpr 65.05 MiB -1 -1 0.17 20612 1 0.03 -1 -1 34012 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 361 291 1 189 96 17 17 289 -1 unnamed_device 26.7 MiB 3.59 1027 15864 4682 8227 2955 65.0 MiB 0.13 0.00 2.9366 -98.844 -2.9366 2.9366 0.98 0.000501592 0.000456178 0.0396511 0.0361264 34 2577 27 6.87369e+06 447163 618332. 2139.56 1.67 0.161009 0.141034 25762 151098 -1 2066 24 1534 2778 183704 43950 3.02331 3.02331 -119.254 -3.02331 0 0 787024. 2723.27 0.32 0.08 0.13 -1 -1 0.32 0.0274699 0.0241041 136 52 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_050.v common 10.65 vpr 64.90 MiB -1 -1 0.15 20540 1 0.03 -1 -1 33968 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 32 32 382 305 1 193 99 17 17 289 -1 unnamed_device 26.5 MiB 3.36 920 18567 5784 8597 4186 64.9 MiB 0.13 0.00 3.24063 -105.558 -3.24063 3.24063 0.91 0.000513979 0.000468232 0.0446636 0.040658 38 2332 21 6.87369e+06 489084 678818. 2348.85 4.09 0.217921 0.190817 26626 170182 -1 1880 21 1518 2576 168568 39475 2.87101 2.87101 -111.87 -2.87101 0 0 902133. 3121.57 0.33 0.07 0.14 -1 -1 0.33 0.0247736 0.0219321 144 59 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_051.v common 5.70 vpr 64.83 MiB -1 -1 0.15 20524 1 0.03 -1 -1 33540 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 306 248 1 170 97 17 17 289 -1 unnamed_device 26.3 MiB 1.00 900 10975 2629 7859 487 64.8 MiB 0.08 0.00 3.39279 -101.124 -3.39279 3.39279 0.94 0.000441919 0.000405899 0.0231985 0.0209736 26 2541 44 6.87369e+06 461137 503264. 1741.40 1.65 0.10589 0.0925643 24322 120374 -1 2169 21 1473 2597 224969 50994 3.7421 3.7421 -126.793 -3.7421 0 0 618332. 2139.56 0.25 0.07 0.10 -1 -1 0.25 0.0200996 0.0176449 124 21 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_052.v common 7.46 vpr 65.08 MiB -1 -1 0.16 20312 1 0.03 -1 -1 33796 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 319 257 1 203 86 17 17 289 -1 unnamed_device 26.7 MiB 2.58 1105 9347 2191 6389 767 65.1 MiB 0.09 0.00 3.84368 -115.344 -3.84368 3.84368 0.96 0.000477745 0.000428015 0.0257494 0.0234609 34 2848 33 6.87369e+06 307425 618332. 2139.56 1.65 0.136671 0.118916 25762 151098 -1 2302 23 1636 2360 168534 38916 3.93776 3.93776 -135.388 -3.93776 0 0 787024. 2723.27 0.30 0.07 0.14 -1 -1 0.30 0.0233408 0.0205443 135 26 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_053.v common 7.53 vpr 65.21 MiB -1 -1 0.15 20832 1 0.03 -1 -1 33972 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 31 32 373 299 1 204 85 17 17 289 -1 unnamed_device 26.7 MiB 2.37 1153 16081 5272 8365 2444 65.2 MiB 0.14 0.00 3.72318 -119.527 -3.72318 3.72318 0.94 0.00052355 0.0004774 0.0468075 0.0426396 34 2910 24 6.87369e+06 307425 618332. 2139.56 1.92 0.161763 0.141632 25762 151098 -1 2541 23 1689 2660 235193 51628 4.17236 4.17236 -144.061 -4.17236 0 0 787024. 2723.27 0.31 0.08 0.14 -1 -1 0.31 0.0254213 0.022311 141 58 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_054.v common 10.64 vpr 65.09 MiB -1 -1 0.16 20880 1 0.03 -1 -1 33924 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 32 32 387 315 1 194 85 17 17 289 -1 unnamed_device 26.7 MiB 3.28 1055 11803 3443 7648 712 65.1 MiB 0.11 0.00 3.65075 -115.066 -3.65075 3.65075 0.97 0.000555756 0.000507135 0.037157 0.0339026 36 2770 29 6.87369e+06 293451 648988. 2245.63 4.03 0.217044 0.188411 26050 158493 -1 2336 22 1528 2746 204033 47052 3.84676 3.84676 -135.608 -3.84676 0 0 828058. 2865.25 0.31 0.07 0.14 -1 -1 0.31 0.025885 0.0227214 135 74 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_055.v common 4.89 vpr 64.54 MiB -1 -1 0.14 20620 1 0.03 -1 -1 33720 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 251 219 1 141 86 17 17 289 -1 unnamed_device 26.0 MiB 0.87 730 8780 2126 6228 426 64.5 MiB 0.07 0.00 2.7886 -85.3614 -2.7886 2.7886 0.93 0.00040654 0.000370019 0.0202677 0.0184844 30 1824 22 6.87369e+06 307425 556674. 1926.21 0.93 0.0700839 0.0613498 25186 138497 -1 1532 20 815 1372 84323 20474 2.67866 2.67866 -98.9811 -2.67866 0 0 706193. 2443.58 0.29 0.04 0.13 -1 -1 0.29 0.0173836 0.0153004 93 20 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_056.v common 6.92 vpr 64.92 MiB -1 -1 0.16 20584 1 0.03 -1 -1 33744 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 32 32 341 285 1 188 82 17 17 289 -1 unnamed_device 26.3 MiB 1.96 981 15568 5714 7507 2347 64.9 MiB 0.12 0.00 3.03076 -110.051 -3.03076 3.03076 0.91 0.000464721 0.000422446 0.0431427 0.039278 34 2609 24 6.87369e+06 251529 618332. 2139.56 1.73 0.149682 0.13057 25762 151098 -1 2294 22 1727 2481 224167 50561 3.41421 3.41421 -136.54 -3.41421 0 0 787024. 2723.27 0.30 0.08 0.14 -1 -1 0.30 0.0228664 0.0200589 124 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_057.v common 11.22 vpr 65.11 MiB -1 -1 0.17 20816 1 0.03 -1 -1 34136 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 32 32 387 293 1 236 88 17 17 289 -1 unnamed_device 26.5 MiB 3.46 1259 15688 5171 8446 2071 65.1 MiB 0.16 0.00 4.25892 -128.132 -4.25892 4.25892 0.94 0.00057676 0.00052625 0.0474182 0.0431688 36 3098 37 6.87369e+06 335372 648988. 2245.63 4.43 0.239546 0.208325 26050 158493 -1 2496 20 1738 2773 191309 45586 4.6669 4.6669 -151.556 -4.6669 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.0247563 0.0219151 166 28 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_058.v common 8.40 vpr 65.10 MiB -1 -1 0.16 20196 1 0.03 -1 -1 33504 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 32 32 340 270 1 185 98 17 17 289 -1 unnamed_device 26.7 MiB 3.53 1017 18998 6042 10452 2504 65.1 MiB 0.15 0.00 3.45661 -114.141 -3.45661 3.45661 0.97 0.00049769 0.000454324 0.0480193 0.0440021 34 2322 18 6.87369e+06 475111 618332. 2139.56 1.52 0.152535 0.134006 25762 151098 -1 1930 21 1282 2051 143937 32799 2.79286 2.79286 -115.751 -2.79286 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0234022 0.0206908 137 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_059.v common 5.47 vpr 64.58 MiB -1 -1 0.15 20152 1 0.03 -1 -1 33544 -1 -1 25 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 30 32 278 235 1 150 87 17 17 289 -1 unnamed_device 26.2 MiB 0.88 861 12567 3393 7231 1943 64.6 MiB 0.09 0.00 2.9769 -95.6358 -2.9769 2.9769 0.93 0.000398068 0.000362168 0.0283236 0.0257312 34 1933 21 6.87369e+06 349346 618332. 2139.56 1.46 0.116602 0.101678 25762 151098 -1 1676 22 1191 1948 145735 33816 3.07561 3.07561 -110.983 -3.07561 0 0 787024. 2723.27 0.31 0.06 0.13 -1 -1 0.31 0.0191922 0.0168107 104 29 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_060.v common 11.67 vpr 65.32 MiB -1 -1 0.17 20828 1 0.03 -1 -1 33812 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66884 32 32 431 332 1 239 89 17 17 289 -1 unnamed_device 26.8 MiB 6.06 1397 15335 4325 9308 1702 65.3 MiB 0.15 0.00 4.57575 -141.302 -4.57575 4.57575 0.95 0.000593268 0.000539106 0.0498317 0.0454016 34 3374 22 6.87369e+06 349346 618332. 2139.56 2.26 0.192191 0.168988 25762 151098 -1 2732 23 2425 3552 286351 63171 5.1025 5.1025 -171.346 -5.1025 0 0 787024. 2723.27 0.31 0.09 0.14 -1 -1 0.31 0.0294469 0.0259397 171 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_061.v common 8.03 vpr 65.08 MiB -1 -1 0.16 20368 1 0.03 -1 -1 33844 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 336 268 1 182 99 17 17 289 -1 unnamed_device 26.6 MiB 3.82 1027 11043 2706 7378 959 65.1 MiB 0.10 0.00 3.70602 -113.448 -3.70602 3.70602 0.94 0.000506052 0.000460588 0.0262685 0.0239063 32 2367 22 6.87369e+06 489084 586450. 2029.24 1.00 0.0893972 0.0783688 25474 144626 -1 2027 22 1610 2646 231441 50696 3.8824 3.8824 -132.113 -3.8824 0 0 744469. 2576.02 0.29 0.08 0.14 -1 -1 0.29 0.0232413 0.0204454 135 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_062.v common 5.54 vpr 64.48 MiB -1 -1 0.15 20292 1 0.03 -1 -1 33704 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 32 32 231 199 1 142 88 17 17 289 -1 unnamed_device 25.9 MiB 0.83 774 14713 4478 8191 2044 64.5 MiB 0.10 0.00 2.8436 -83.7272 -2.8436 2.8436 0.97 0.000383035 0.000347915 0.0305998 0.0278041 26 2050 34 6.87369e+06 335372 503264. 1741.40 1.56 0.0932447 0.0819789 24322 120374 -1 1792 22 1189 2015 170227 41007 3.33146 3.33146 -107.706 -3.33146 0 0 618332. 2139.56 0.25 0.06 0.11 -1 -1 0.25 0.0183023 0.0160142 94 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_063.v common 8.80 vpr 65.11 MiB -1 -1 0.17 20480 1 0.03 -1 -1 33768 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 32 32 349 273 1 191 101 17 17 289 -1 unnamed_device 26.7 MiB 2.42 1148 18196 5448 10152 2596 65.1 MiB 0.15 0.00 4.06437 -112.431 -4.06437 4.06437 0.91 0.000494259 0.00044022 0.0409588 0.0368965 28 2666 26 6.87369e+06 517032 531479. 1839.03 3.25 0.197286 0.172309 24610 126494 -1 2431 22 1685 3102 222029 51355 4.41425 4.41425 -142.211 -4.41425 0 0 648988. 2245.63 0.26 0.08 0.11 -1 -1 0.26 0.0243242 0.0214437 145 26 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_064.v common 4.97 vpr 64.47 MiB -1 -1 0.14 20124 1 0.03 -1 -1 33728 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66016 32 32 247 207 1 153 83 17 17 289 -1 unnamed_device 25.9 MiB 0.90 671 8003 1757 5740 506 64.5 MiB 0.06 0.00 2.8626 -89.6716 -2.8626 2.8626 0.93 0.000385446 0.000353492 0.0184136 0.0166797 30 1909 31 6.87369e+06 265503 556674. 1926.21 1.03 0.0766418 0.0666733 25186 138497 -1 1511 20 835 1451 84067 21244 2.78466 2.78466 -108.573 -2.78466 0 0 706193. 2443.58 0.28 0.04 0.12 -1 -1 0.28 0.0163369 0.0144045 98 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_065.v common 7.98 vpr 64.78 MiB -1 -1 0.15 20364 1 0.03 -1 -1 33496 -1 -1 34 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 30 32 278 235 1 151 96 17 17 289 -1 unnamed_device 26.3 MiB 2.97 876 16302 5171 8678 2453 64.8 MiB 0.12 0.00 2.97898 -93.3988 -2.97898 2.97898 0.93 0.000414857 0.000378205 0.0338865 0.030833 26 2168 35 6.87369e+06 475111 503264. 1741.40 1.89 0.102556 0.0901181 24322 120374 -1 1861 19 1193 2137 155747 35428 2.96596 2.96596 -110.765 -2.96596 0 0 618332. 2139.56 0.25 0.06 0.11 -1 -1 0.25 0.0177053 0.0155505 109 29 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_066.v common 9.78 vpr 64.75 MiB -1 -1 0.16 20628 1 0.03 -1 -1 33812 -1 -1 24 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 29 32 355 287 1 200 85 17 17 289 -1 unnamed_device 26.4 MiB 4.60 939 10315 2373 7375 567 64.8 MiB 0.10 0.00 3.21063 -97.8768 -3.21063 3.21063 0.95 0.000502438 0.000457039 0.0298817 0.0271595 34 3031 27 6.87369e+06 335372 618332. 2139.56 1.95 0.144056 0.125291 25762 151098 -1 2197 21 1807 2722 195288 48465 3.35911 3.35911 -121.42 -3.35911 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0230819 0.0203152 138 56 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_067.v common 7.60 vpr 64.55 MiB -1 -1 0.17 20548 1 0.03 -1 -1 33780 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 32 32 358 289 1 183 90 17 17 289 -1 unnamed_device 26.2 MiB 2.64 1098 14964 4275 8653 2036 64.5 MiB 0.12 0.00 3.48515 -116.696 -3.48515 3.48515 0.94 0.000526117 0.000479964 0.0405708 0.0369304 34 2497 23 6.87369e+06 363320 618332. 2139.56 1.59 0.152167 0.132617 25762 151098 -1 2108 22 1661 2578 183010 42137 3.6964 3.6964 -135.545 -3.6964 0 0 787024. 2723.27 0.32 0.07 0.13 -1 -1 0.32 0.0256833 0.0226479 132 51 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_068.v common 6.97 vpr 65.13 MiB -1 -1 0.15 20908 1 0.03 -1 -1 33600 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 32 32 353 285 1 188 91 17 17 289 -1 unnamed_device 26.6 MiB 2.63 1149 11923 3179 7779 965 65.1 MiB 0.10 0.00 3.69318 -116.202 -3.69318 3.69318 0.97 0.000503688 0.000457279 0.0317652 0.0289161 32 2969 28 6.87369e+06 377294 586450. 2029.24 1.08 0.107236 0.0943431 25474 144626 -1 2361 21 1537 2568 212777 49610 4.29666 4.29666 -146.718 -4.29666 0 0 744469. 2576.02 0.30 0.08 0.13 -1 -1 0.30 0.0246765 0.0218211 133 48 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_069.v common 8.75 vpr 64.68 MiB -1 -1 0.15 20488 1 0.03 -1 -1 33536 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66228 32 32 276 237 1 165 79 17 17 289 -1 unnamed_device 26.3 MiB 3.97 1003 12585 3734 7404 1447 64.7 MiB 0.10 0.00 3.74452 -113.984 -3.74452 3.74452 0.93 0.000410782 0.000372992 0.0327498 0.0298829 34 2234 22 6.87369e+06 209608 618332. 2139.56 1.59 0.124557 0.108848 25762 151098 -1 2061 20 1114 1549 129935 29211 3.4398 3.4398 -121.871 -3.4398 0 0 787024. 2723.27 0.32 0.05 0.14 -1 -1 0.32 0.0186147 0.0164263 103 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_070.v common 7.81 vpr 64.73 MiB -1 -1 0.17 20352 1 0.03 -1 -1 33892 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 31 32 319 272 1 176 80 17 17 289 -1 unnamed_device 26.2 MiB 3.03 998 13152 3741 7657 1754 64.7 MiB 0.10 0.00 2.99776 -103.303 -2.99776 2.99776 0.94 0.000445245 0.00040515 0.0363163 0.0330697 34 2417 21 6.87369e+06 237555 618332. 2139.56 1.56 0.132283 0.115264 25762 151098 -1 2114 21 1319 1954 151422 36189 3.1782 3.1782 -125.163 -3.1782 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0210481 0.0185052 114 60 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_071.v common 7.35 vpr 65.03 MiB -1 -1 0.16 20356 1 0.03 -1 -1 34088 -1 -1 34 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 30 32 329 273 1 167 96 17 17 289 -1 unnamed_device 26.4 MiB 3.06 1003 17178 4924 10225 2029 65.0 MiB 0.12 0.00 2.84355 -85.591 -2.84355 2.84355 0.95 0.000470483 0.000427438 0.0391841 0.0355661 32 2457 27 6.87369e+06 475111 586450. 2029.24 1.03 0.106719 0.0938765 25474 144626 -1 1980 20 1151 2121 151333 35049 2.67966 2.67966 -99.7046 -2.67966 0 0 744469. 2576.02 0.30 0.06 0.13 -1 -1 0.30 0.0204465 0.0179924 124 52 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_072.v common 6.41 vpr 64.92 MiB -1 -1 0.14 20124 1 0.03 -1 -1 34056 -1 -1 35 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 28 32 277 229 1 156 95 17 17 289 -1 unnamed_device 26.4 MiB 2.14 904 10679 2591 7120 968 64.9 MiB 0.08 0.00 3.27479 -88.419 -3.27479 3.27479 0.95 0.000452793 0.000411427 0.0216025 0.01958 26 2184 21 6.87369e+06 489084 503264. 1741.40 1.15 0.0819372 0.0719462 24322 120374 -1 2059 23 1467 2722 232194 51168 3.8707 3.8707 -117.227 -3.8707 0 0 618332. 2139.56 0.26 0.07 0.11 -1 -1 0.26 0.0202581 0.0177243 117 20 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_073.v common 8.75 vpr 64.80 MiB -1 -1 0.15 20392 1 0.03 -1 -1 33784 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 30 32 317 269 1 155 79 17 17 289 -1 unnamed_device 26.4 MiB 3.30 728 11402 4740 5897 765 64.8 MiB 0.09 0.00 3.16363 -95.7832 -3.16363 3.16363 0.95 0.000451443 0.000411342 0.0326225 0.0297411 34 2424 43 6.87369e+06 237555 618332. 2139.56 2.26 0.132959 0.115872 25762 151098 -1 1779 21 1391 2387 197551 48694 3.39216 3.39216 -122.884 -3.39216 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0208013 0.0183039 105 58 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_074.v common 8.31 vpr 64.96 MiB -1 -1 0.16 20888 1 0.03 -1 -1 33772 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 32 32 335 282 1 189 81 17 17 289 -1 unnamed_device 26.4 MiB 3.28 1013 14256 4326 7839 2091 65.0 MiB 0.12 0.00 2.9238 -103.215 -2.9238 2.9238 0.98 0.000485041 0.000443128 0.0413837 0.0377475 34 2613 24 6.87369e+06 237555 618332. 2139.56 1.71 0.156453 0.137244 25762 151098 -1 2287 20 1414 2127 182122 41253 3.50651 3.50651 -130.188 -3.50651 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0218841 0.0192342 122 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_075.v common 5.81 vpr 64.50 MiB -1 -1 0.16 20156 1 0.03 -1 -1 33832 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 31 32 293 230 1 175 94 17 17 289 -1 unnamed_device 25.9 MiB 0.93 946 9466 2399 6334 733 64.5 MiB 0.09 0.00 3.58982 -105.213 -3.58982 3.58982 0.96 0.000460683 0.000420433 0.0223358 0.0203493 34 2375 24 6.87369e+06 433189 618332. 2139.56 1.64 0.120859 0.104796 25762 151098 -1 2013 23 1351 2366 157369 37320 3.6931 3.6931 -122.103 -3.6931 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.0219472 0.0192709 129 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_076.v common 9.61 vpr 65.02 MiB -1 -1 0.16 20660 1 0.03 -1 -1 33868 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 32 32 350 275 1 214 87 17 17 289 -1 unnamed_device 26.6 MiB 3.90 1027 12375 3563 7137 1675 65.0 MiB 0.12 0.00 3.78918 -118.751 -3.78918 3.78918 0.95 0.000520482 0.000473642 0.0355831 0.0324122 34 3252 24 6.87369e+06 321398 618332. 2139.56 2.40 0.161652 0.142231 25762 151098 -1 2475 22 1962 2909 219696 53494 4.12106 4.12106 -143.095 -4.12106 0 0 787024. 2723.27 0.31 0.08 0.14 -1 -1 0.31 0.0248782 0.0220244 147 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_077.v common 10.37 vpr 65.01 MiB -1 -1 0.17 20468 1 0.03 -1 -1 33700 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 32 32 385 308 1 196 100 17 17 289 -1 unnamed_device 26.6 MiB 4.62 985 13556 3401 8710 1445 65.0 MiB 0.10 0.00 4.24987 -125.238 -4.24987 4.24987 0.93 0.000532878 0.000485437 0.0336696 0.0305563 34 2955 23 6.87369e+06 503058 618332. 2139.56 2.49 0.153612 0.13407 25762 151098 -1 2312 24 1760 3037 228366 56089 4.47055 4.47055 -149.687 -4.47055 0 0 787024. 2723.27 0.30 0.08 0.14 -1 -1 0.30 0.0270067 0.0237301 147 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_078.v common 11.78 vpr 65.18 MiB -1 -1 0.15 20576 1 0.03 -1 -1 33748 -1 -1 41 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 387 309 1 192 105 17 17 289 -1 unnamed_device 26.7 MiB 3.53 1135 20359 6258 10748 3353 65.2 MiB 0.16 0.00 3.61982 -117.192 -3.61982 3.61982 0.91 0.000532559 0.000484564 0.0463581 0.0419697 30 2831 33 6.87369e+06 572927 556674. 1926.21 5.07 0.227688 0.200051 25186 138497 -1 2115 23 1474 2774 181826 41674 3.4945 3.4945 -130.413 -3.4945 0 0 706193. 2443.58 0.28 0.07 0.12 -1 -1 0.28 0.0257807 0.022738 148 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_079.v common 7.05 vpr 64.37 MiB -1 -1 0.15 20180 1 0.03 -1 -1 33856 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65916 30 32 272 232 1 151 79 17 17 289 -1 unnamed_device 26.0 MiB 2.94 875 14613 4926 7902 1785 64.4 MiB 0.11 0.00 3.28893 -103.003 -3.28893 3.28893 0.94 0.00040717 0.000370974 0.036944 0.0337209 28 2175 32 6.87369e+06 237555 531479. 1839.03 0.98 0.0969508 0.0854076 24610 126494 -1 1870 21 1223 2068 134638 32162 3.32821 3.32821 -118.433 -3.32821 0 0 648988. 2245.63 0.26 0.06 0.12 -1 -1 0.26 0.0190057 0.0166869 99 29 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_080.v common 8.42 vpr 65.09 MiB -1 -1 0.17 20544 1 0.03 -1 -1 34048 -1 -1 22 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 30 32 375 299 1 188 84 17 17 289 -1 unnamed_device 26.6 MiB 4.13 1020 10515 2939 6379 1197 65.1 MiB 0.10 0.00 3.68402 -118.486 -3.68402 3.68402 0.94 0.00053208 0.000485367 0.0332836 0.0303892 30 2232 29 6.87369e+06 307425 556674. 1926.21 1.05 0.110656 0.0972707 25186 138497 -1 1889 21 1399 2347 149285 33981 3.4927 3.4927 -131.482 -3.4927 0 0 706193. 2443.58 0.28 0.06 0.13 -1 -1 0.28 0.0246834 0.0217895 136 58 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_081.v common 8.15 vpr 65.04 MiB -1 -1 0.17 20652 1 0.03 -1 -1 33916 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 32 32 340 270 1 204 87 17 17 289 -1 unnamed_device 26.6 MiB 3.08 1128 11415 3028 7564 823 65.0 MiB 0.10 0.00 4.00821 -123.654 -4.00821 4.00821 0.94 0.000522763 0.000478939 0.0314377 0.0286675 34 2766 24 6.87369e+06 321398 618332. 2139.56 1.84 0.142078 0.123768 25762 151098 -1 2293 22 1731 2910 212855 50304 4.20336 4.20336 -142.998 -4.20336 0 0 787024. 2723.27 0.31 0.08 0.14 -1 -1 0.31 0.0236843 0.0208294 140 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_082.v common 7.85 vpr 65.18 MiB -1 -1 0.17 20536 1 0.03 -1 -1 33936 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 31 32 340 275 1 201 91 17 17 289 -1 unnamed_device 26.7 MiB 2.82 1112 17023 4936 10304 1783 65.2 MiB 0.14 0.00 4.43294 -126.224 -4.43294 4.43294 0.94 0.000489998 0.000446016 0.0434913 0.0396168 34 2956 23 6.87369e+06 391268 618332. 2139.56 1.75 0.153136 0.133661 25762 151098 -1 2359 21 1644 2654 204474 47602 4.61485 4.61485 -150.449 -4.61485 0 0 787024. 2723.27 0.30 0.07 0.14 -1 -1 0.30 0.0228998 0.0201414 141 43 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_083.v common 7.99 vpr 65.13 MiB -1 -1 0.18 20628 1 0.03 -1 -1 33752 -1 -1 32 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 30 32 377 310 1 183 94 17 17 289 -1 unnamed_device 26.7 MiB 3.18 997 16921 5396 8944 2581 65.1 MiB 0.14 0.00 3.69518 -115.863 -3.69518 3.69518 0.94 0.000522469 0.000474343 0.0440576 0.0400218 32 2753 35 6.87369e+06 447163 586450. 2029.24 1.50 0.14035 0.122725 25474 144626 -1 2149 19 1362 2172 186191 42775 3.21096 3.21096 -123.154 -3.21096 0 0 744469. 2576.02 0.31 0.07 0.14 -1 -1 0.31 0.0231814 0.0204425 135 78 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_084.v common 7.86 vpr 65.01 MiB -1 -1 0.16 20452 1 0.03 -1 -1 33712 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 32 32 365 294 1 187 85 17 17 289 -1 unnamed_device 26.6 MiB 2.89 1057 15709 5104 8282 2323 65.0 MiB 0.14 0.00 3.73418 -120.089 -3.73418 3.73418 0.93 0.000500751 0.000455553 0.0453139 0.0412898 34 2749 23 6.87369e+06 293451 618332. 2139.56 1.70 0.158356 0.138701 25762 151098 -1 2397 20 1639 2934 247420 54505 4.089 4.089 -146.676 -4.089 0 0 787024. 2723.27 0.30 0.08 0.14 -1 -1 0.30 0.0226774 0.0199875 132 54 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_085.v common 7.61 vpr 65.10 MiB -1 -1 0.16 20468 1 0.03 -1 -1 33764 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 29 32 378 310 1 179 90 17 17 289 -1 unnamed_device 26.7 MiB 2.98 982 12954 3602 7806 1546 65.1 MiB 0.11 0.00 3.18563 -100.418 -3.18563 3.18563 0.91 0.000510128 0.000465921 0.0345471 0.0314746 34 2232 22 6.87369e+06 405241 618332. 2139.56 1.50 0.144886 0.126087 25762 151098 -1 1924 20 1451 2451 165628 39241 2.91201 2.91201 -111.049 -2.91201 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.0228858 0.0202095 132 79 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_086.v common 4.85 vpr 64.41 MiB -1 -1 0.15 20176 1 0.03 -1 -1 33960 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65960 32 32 243 205 1 149 81 17 17 289 -1 unnamed_device 25.9 MiB 0.79 835 9006 2438 6072 496 64.4 MiB 0.07 0.00 3.18563 -100.403 -3.18563 3.18563 0.94 0.000392745 0.000359492 0.0221433 0.0201982 28 1900 21 6.87369e+06 237555 531479. 1839.03 0.95 0.0731314 0.0640615 24610 126494 -1 1783 19 993 1452 111603 26810 3.06931 3.06931 -114.951 -3.06931 0 0 648988. 2245.63 0.27 0.05 0.12 -1 -1 0.27 0.0169251 0.0149542 96 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_087.v common 10.07 vpr 65.15 MiB -1 -1 0.14 20396 1 0.03 -1 -1 34008 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66712 32 32 373 302 1 184 98 17 17 289 -1 unnamed_device 26.8 MiB 5.21 1060 14273 3801 9156 1316 65.1 MiB 0.12 0.00 3.66382 -116.633 -3.66382 3.66382 0.95 0.000496745 0.000454466 0.0349074 0.0316085 34 2505 22 6.87369e+06 475111 618332. 2139.56 1.60 0.147676 0.128675 25762 151098 -1 2101 21 1395 2321 154380 37630 3.8011 3.8011 -131.916 -3.8011 0 0 787024. 2723.27 0.31 0.07 0.13 -1 -1 0.31 0.0238341 0.020928 137 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_088.v common 9.68 vpr 64.90 MiB -1 -1 0.17 20412 1 0.03 -1 -1 33964 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 397 314 1 197 85 17 17 289 -1 unnamed_device 26.5 MiB 4.76 1162 13663 3892 7971 1800 64.9 MiB 0.12 0.00 3.54952 -124.484 -3.54952 3.54952 0.92 0.000557118 0.000503641 0.0416893 0.0380132 34 2634 22 6.87369e+06 293451 618332. 2139.56 1.67 0.168805 0.148149 25762 151098 -1 2195 22 1857 3091 216983 48717 3.7984 3.7984 -149.032 -3.7984 0 0 787024. 2723.27 0.31 0.08 0.13 -1 -1 0.31 0.0267061 0.0235967 142 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_089.v common 8.19 vpr 64.73 MiB -1 -1 0.15 20256 1 0.03 -1 -1 33844 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 32 32 269 231 1 170 80 17 17 289 -1 unnamed_device 26.3 MiB 3.59 1057 14184 4438 8343 1403 64.7 MiB 0.10 0.00 3.34852 -102.009 -3.34852 3.34852 0.91 0.000394767 0.000358867 0.0354424 0.0323994 34 2287 22 6.87369e+06 223581 618332. 2139.56 1.50 0.125532 0.109998 25762 151098 -1 1960 20 1189 1623 125972 29342 3.4708 3.4708 -120.506 -3.4708 0 0 787024. 2723.27 0.30 0.05 0.14 -1 -1 0.30 0.0183519 0.0162112 106 26 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_090.v common 4.98 vpr 64.42 MiB -1 -1 0.15 20260 1 0.03 -1 -1 33868 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65964 31 32 245 205 1 153 83 17 17 289 -1 unnamed_device 25.8 MiB 0.86 688 8003 1882 5278 843 64.4 MiB 0.06 0.00 3.17463 -94.6151 -3.17463 3.17463 0.94 0.000384152 0.000349518 0.0187119 0.0170692 32 1947 25 6.87369e+06 279477 586450. 2029.24 1.00 0.0711336 0.0622621 25474 144626 -1 1668 19 1094 1754 127281 31263 3.18361 3.18361 -111.757 -3.18361 0 0 744469. 2576.02 0.29 0.05 0.14 -1 -1 0.29 0.0168879 0.014885 99 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_091.v common 8.69 vpr 65.12 MiB -1 -1 0.16 20596 1 0.03 -1 -1 33872 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 348 274 1 215 87 17 17 289 -1 unnamed_device 26.6 MiB 3.56 1048 13143 3762 8265 1116 65.1 MiB 0.12 0.00 3.74338 -121.833 -3.74338 3.74338 0.94 0.00050466 0.000459197 0.0364019 0.0332101 34 3058 47 6.87369e+06 321398 618332. 2139.56 1.88 0.166275 0.144966 25762 151098 -1 2232 21 1949 2618 185567 44871 4.02406 4.02406 -144.917 -4.02406 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0234322 0.0206718 145 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_092.v common 8.15 vpr 64.93 MiB -1 -1 0.17 20668 1 0.03 -1 -1 34048 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 32 32 356 289 1 202 91 17 17 289 -1 unnamed_device 26.5 MiB 3.10 1147 9271 2181 6560 530 64.9 MiB 0.09 0.00 4.30764 -129.95 -4.30764 4.30764 0.95 0.000514456 0.000468928 0.0256082 0.0233825 34 2934 28 6.87369e+06 377294 618332. 2139.56 1.78 0.142547 0.123911 25762 151098 -1 2475 24 1827 2957 220122 50875 5.01085 5.01085 -157.81 -5.01085 0 0 787024. 2723.27 0.30 0.08 0.14 -1 -1 0.30 0.0270726 0.0237349 142 53 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_093.v common 5.74 vpr 65.14 MiB -1 -1 0.15 20560 1 0.03 -1 -1 33868 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66700 32 32 349 260 1 204 100 17 17 289 -1 unnamed_device 26.7 MiB 0.92 1313 20052 5969 11572 2511 65.1 MiB 0.16 0.00 4.13357 -123.907 -4.13357 4.13357 0.93 0.000484005 0.000435469 0.0463892 0.0420538 32 3190 26 6.87369e+06 503058 586450. 2029.24 1.55 0.141928 0.124396 25474 144626 -1 2652 22 1917 3529 307003 67679 4.70185 4.70185 -152.097 -4.70185 0 0 744469. 2576.02 0.30 0.09 0.12 -1 -1 0.30 0.0255492 0.0225133 157 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_094.v common 7.15 vpr 64.98 MiB -1 -1 0.16 20292 1 0.03 -1 -1 33652 -1 -1 34 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 30 32 316 264 1 165 96 17 17 289 -1 unnamed_device 26.5 MiB 2.84 824 15864 4441 8350 3073 65.0 MiB 0.11 0.00 2.83325 -86.0399 -2.83325 2.83325 0.91 0.000450565 0.000411783 0.0344959 0.0311818 28 2201 33 6.87369e+06 475111 531479. 1839.03 1.22 0.113225 0.100048 24610 126494 -1 1911 21 1361 2342 186297 44266 3.05726 3.05726 -107.924 -3.05726 0 0 648988. 2245.63 0.26 0.07 0.11 -1 -1 0.26 0.0209486 0.0184007 119 47 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_095.v common 5.51 vpr 64.37 MiB -1 -1 0.15 20124 1 0.03 -1 -1 34232 -1 -1 21 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65912 27 32 255 219 1 139 80 17 17 289 -1 unnamed_device 25.8 MiB 1.08 599 13324 3844 8199 1281 64.4 MiB 0.09 0.00 2.8908 -78.0905 -2.8908 2.8908 0.92 0.00038237 0.000348495 0.0308447 0.0281399 34 1446 22 6.87369e+06 293451 618332. 2139.56 1.36 0.10882 0.0945292 25762 151098 -1 1228 20 882 1279 77946 19578 2.83301 2.83301 -91.374 -2.83301 0 0 787024. 2723.27 0.30 0.04 0.13 -1 -1 0.30 0.0167669 0.0147553 96 26 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_096.v common 12.57 vpr 65.38 MiB -1 -1 0.18 20672 1 0.03 -1 -1 33916 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 32 32 421 327 1 233 88 17 17 289 -1 unnamed_device 26.8 MiB 4.31 1381 16468 4888 9543 2037 65.4 MiB 0.17 0.00 3.58845 -117.662 -3.58845 3.58845 0.96 0.00060939 0.000555297 0.0537989 0.0490754 36 3594 23 6.87369e+06 335372 648988. 2245.63 4.81 0.249311 0.217934 26050 158493 -1 2937 20 1888 3080 244813 52865 3.90776 3.90776 -142.094 -3.90776 0 0 828058. 2865.25 0.35 0.09 0.15 -1 -1 0.35 0.0276637 0.0245652 165 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_097.v common 10.81 vpr 65.01 MiB -1 -1 0.18 20520 1 0.03 -1 -1 33664 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 31 32 365 296 1 203 85 17 17 289 -1 unnamed_device 26.6 MiB 5.06 916 12547 3429 7930 1188 65.0 MiB 0.12 0.00 4.46437 -133.819 -4.46437 4.46437 0.97 0.00051287 0.0004664 0.0374223 0.0341161 36 2396 23 6.87369e+06 307425 648988. 2245.63 2.38 0.161117 0.141604 26050 158493 -1 2018 19 1533 2408 169434 40228 4.356 4.356 -146.536 -4.356 0 0 828058. 2865.25 0.33 0.07 0.15 -1 -1 0.33 0.0233754 0.0207828 139 60 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_098.v common 9.65 vpr 65.06 MiB -1 -1 0.15 20672 1 0.03 -1 -1 33720 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66620 32 32 331 280 1 185 82 17 17 289 -1 unnamed_device 26.5 MiB 4.99 995 10584 2811 6901 872 65.1 MiB 0.09 0.00 3.45235 -118.525 -3.45235 3.45235 0.92 0.00047136 0.000421161 0.0299486 0.0272857 34 2474 22 6.87369e+06 251529 618332. 2139.56 1.51 0.131769 0.114971 25762 151098 -1 2171 20 1339 1982 145396 33441 3.49286 3.49286 -141.409 -3.49286 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.0204453 0.0180044 118 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_099.v common 8.06 vpr 64.87 MiB -1 -1 0.16 20680 1 0.03 -1 -1 34096 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 32 32 326 263 1 176 97 17 17 289 -1 unnamed_device 26.3 MiB 1.37 1092 18079 5031 10968 2080 64.9 MiB 0.15 0.00 4.22895 -118.87 -4.22895 4.22895 0.95 0.000501901 0.000456116 0.0414588 0.0376466 34 2566 22 6.87369e+06 461137 618332. 2139.56 3.40 0.174367 0.151643 25762 151098 -1 2232 19 1190 1939 167229 36336 3.8656 3.8656 -128.978 -3.8656 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0203413 0.0179812 129 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_100.v common 6.32 vpr 64.86 MiB -1 -1 0.15 20616 1 0.03 -1 -1 33640 -1 -1 34 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 31 32 373 294 1 197 97 17 17 289 -1 unnamed_device 26.5 MiB 2.22 1073 18745 5536 10630 2579 64.9 MiB 0.15 0.00 3.46135 -105.573 -3.46135 3.46135 0.91 0.000512357 0.000466701 0.0459176 0.0418597 32 2621 23 6.87369e+06 475111 586450. 2029.24 0.96 0.113971 0.10056 25474 144626 -1 2063 21 1312 2288 152944 36349 3.61536 3.61536 -122.498 -3.61536 0 0 744469. 2576.02 0.29 0.06 0.12 -1 -1 0.29 0.0246383 0.0217906 149 46 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_101.v common 6.91 vpr 64.89 MiB -1 -1 0.16 20764 1 0.03 -1 -1 33664 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 30 32 325 268 1 172 93 17 17 289 -1 unnamed_device 26.4 MiB 2.39 912 12063 3171 8275 617 64.9 MiB 0.10 0.00 2.8846 -86.2435 -2.8846 2.8846 0.93 0.000440619 0.000397253 0.0283016 0.0256561 28 2502 22 6.87369e+06 433189 531479. 1839.03 1.39 0.0952014 0.0836622 24610 126494 -1 2110 23 1401 2402 186414 43103 3.18291 3.18291 -108.618 -3.18291 0 0 648988. 2245.63 0.27 0.07 0.11 -1 -1 0.27 0.0224353 0.0195897 124 46 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_102.v common 10.21 vpr 64.95 MiB -1 -1 0.16 20544 1 0.03 -1 -1 33528 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 32 32 350 275 1 216 86 17 17 289 -1 unnamed_device 26.5 MiB 3.99 1107 17096 6507 8128 2461 65.0 MiB 0.15 0.00 3.95364 -125.973 -3.95364 3.95364 0.94 0.00050434 0.000459132 0.0475126 0.0432955 34 3212 26 6.87369e+06 307425 618332. 2139.56 2.92 0.166809 0.146212 25762 151098 -1 2603 21 2156 3274 278539 62261 4.17765 4.17765 -149.454 -4.17765 0 0 787024. 2723.27 0.30 0.09 0.14 -1 -1 0.30 0.0237971 0.0210149 148 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_103.v common 9.70 vpr 65.20 MiB -1 -1 0.15 20628 1 0.03 -1 -1 33664 -1 -1 36 32 0 0 exited with return code 2 c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 32 32 386 307 1 196 100 17 17 289 -1 unnamed_device 26.7 MiB 3.66 1031 12628 3253 8377 998 65.2 MiB 0.11 0.00 3.24063 -108.952 -3.24063 3.24063 0.95 0.000537609 0.000488019 0.0318201 0.0289264 24 3147 45 6.87369e+06 503058 470940. 1629.55 2.28 0.12908 0.112854 24034 113901 -1 -1 -1 5799 10424 2343232 602328 -1 -1 -1 -1 -1 -1 -1 -1 0.23 0.70 0.11 -1 -1 0.23 -1 -1 147 59 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_104.v common 6.31 vpr 64.45 MiB -1 -1 0.15 20396 1 0.03 -1 -1 34000 -1 -1 19 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65992 29 32 269 229 1 150 80 17 17 289 -1 unnamed_device 26.1 MiB 2.24 680 8852 2485 5092 1275 64.4 MiB 0.07 0.00 3.00718 -91.0226 -3.00718 3.00718 0.94 0.00042133 0.000380734 0.0230407 0.0210239 32 1643 20 6.87369e+06 265503 586450. 2029.24 0.96 0.0739909 0.0648532 25474 144626 -1 1401 21 1225 1786 115749 27170 3.10146 3.10146 -107.201 -3.10146 0 0 744469. 2576.02 0.32 0.06 0.13 -1 -1 0.32 0.0195572 0.0172587 101 28 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_105.v common 6.88 vpr 64.75 MiB -1 -1 0.15 20424 1 0.03 -1 -1 33844 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 32 32 310 266 1 176 81 17 17 289 -1 unnamed_device 26.2 MiB 1.92 930 14956 4511 8442 2003 64.7 MiB 0.12 0.00 3.5666 -103.336 -3.5666 3.5666 0.97 0.000457254 0.000416126 0.041721 0.0379867 34 2322 21 6.87369e+06 237555 618332. 2139.56 1.71 0.136937 0.119629 25762 151098 -1 1995 23 1154 1602 136185 29731 3.36121 3.36121 -125.023 -3.36121 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.022115 0.0194703 112 55 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_106.v common 6.41 vpr 65.04 MiB -1 -1 0.16 20132 1 0.03 -1 -1 33828 -1 -1 39 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 31 32 326 261 1 178 102 17 17 289 -1 unnamed_device 26.7 MiB 1.98 888 16048 4648 8537 2863 65.0 MiB 0.13 0.00 3.70112 -104.79 -3.70112 3.70112 0.98 0.000483565 0.000439757 0.0352122 0.0319673 32 2743 37 6.87369e+06 544980 586450. 2029.24 1.14 0.112598 0.0989473 25474 144626 -1 1978 22 1563 2742 201859 47327 3.9197 3.9197 -126.208 -3.9197 0 0 744469. 2576.02 0.30 0.07 0.13 -1 -1 0.30 0.0234428 0.0205917 135 29 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_107.v common 8.47 vpr 64.60 MiB -1 -1 0.15 20204 1 0.03 -1 -1 33940 -1 -1 19 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 29 32 262 224 1 168 80 17 17 289 -1 unnamed_device 26.2 MiB 3.82 807 8336 2181 5185 970 64.6 MiB 0.07 0.00 3.70248 -100.07 -3.70248 3.70248 0.95 0.000405506 0.000370531 0.0213662 0.0195484 34 2095 28 6.87369e+06 265503 618332. 2139.56 1.52 0.108543 0.0939806 25762 151098 -1 1748 18 1064 1428 111280 26819 3.46886 3.46886 -110.713 -3.46886 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.0162409 0.0143493 107 25 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_108.v common 8.16 vpr 64.77 MiB -1 -1 0.14 20320 1 0.03 -1 -1 33952 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 278 238 1 158 79 17 17 289 -1 unnamed_device 26.4 MiB 3.60 870 7684 1744 5441 499 64.8 MiB 0.06 0.00 3.31093 -107.104 -3.31093 3.31093 0.91 0.000408956 0.000374264 0.0204114 0.0186564 34 2100 22 6.87369e+06 209608 618332. 2139.56 1.51 0.111728 0.097243 25762 151098 -1 1791 23 1489 2545 191568 43975 2.99596 2.99596 -117.268 -2.99596 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0203807 0.0178641 101 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_109.v common 7.75 vpr 65.08 MiB -1 -1 0.15 20864 1 0.03 -1 -1 33968 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66644 31 32 373 300 1 185 100 17 17 289 -1 unnamed_device 26.7 MiB 3.52 989 12860 3598 7966 1296 65.1 MiB 0.11 0.00 3.11528 -104.533 -3.11528 3.11528 0.94 0.00052142 0.000474708 0.0317721 0.0289199 30 2144 20 6.87369e+06 517032 556674. 1926.21 1.00 0.0980581 0.0859984 25186 138497 -1 1777 21 1273 2085 118474 28071 2.87286 2.87286 -116.302 -2.87286 0 0 706193. 2443.58 0.29 0.06 0.13 -1 -1 0.29 0.0233981 0.0206127 141 60 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_110.v common 7.85 vpr 64.30 MiB -1 -1 0.15 20188 1 0.03 -1 -1 33808 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65848 31 32 265 230 1 169 80 17 17 289 -1 unnamed_device 25.9 MiB 3.53 844 5756 1165 4184 407 64.3 MiB 0.05 0.00 3.0319 -94.5954 -3.0319 3.0319 0.94 0.000410437 0.000373344 0.0153951 0.0140497 28 2744 41 6.87369e+06 237555 531479. 1839.03 1.31 0.089208 0.0780324 24610 126494 -1 1961 20 1220 1709 142127 37972 3.13061 3.13061 -120.072 -3.13061 0 0 648988. 2245.63 0.26 0.06 0.11 -1 -1 0.26 0.0186385 0.0164896 105 30 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_111.v common 11.45 vpr 64.80 MiB -1 -1 0.14 20712 1 0.03 -1 -1 34032 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 32 32 349 286 1 177 95 17 17 289 -1 unnamed_device 26.4 MiB 3.60 981 10031 2195 7405 431 64.8 MiB 0.09 0.00 2.9036 -92.5407 -2.9036 2.9036 0.93 0.000485153 0.000441026 0.0250436 0.0227837 30 2472 22 6.87369e+06 433189 556674. 1926.21 4.70 0.158309 0.137728 25186 138497 -1 1927 21 1028 1771 101432 24876 2.73171 2.73171 -107.166 -2.73171 0 0 706193. 2443.58 0.28 0.05 0.12 -1 -1 0.28 0.0221884 0.0195454 129 54 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_112.v common 8.46 vpr 65.08 MiB -1 -1 0.17 20584 1 0.03 -1 -1 33944 -1 -1 32 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 31 32 396 325 1 185 95 17 17 289 -1 unnamed_device 26.7 MiB 4.07 955 16295 5564 8035 2696 65.1 MiB 0.13 0.00 2.9696 -103.404 -2.9696 2.9696 0.98 0.000559059 0.000497946 0.0441059 0.0400536 32 2648 26 6.87369e+06 447163 586450. 2029.24 1.07 0.118122 0.103713 25474 144626 -1 2111 21 1837 2698 220232 50479 3.24676 3.24676 -128.281 -3.24676 0 0 744469. 2576.02 0.29 0.08 0.14 -1 -1 0.29 0.0247474 0.0217903 137 87 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_113.v common 7.65 vpr 64.41 MiB -1 -1 0.12 20348 1 0.03 -1 -1 33628 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65952 32 32 303 262 1 154 80 17 17 289 -1 unnamed_device 26.0 MiB 2.87 708 8336 1826 5706 804 64.4 MiB 0.06 0.00 2.8516 -87.9482 -2.8516 2.8516 0.96 0.000428631 0.000388558 0.0227876 0.0207718 34 1958 32 6.87369e+06 223581 618332. 2139.56 1.63 0.124501 0.107776 25762 151098 -1 1550 16 972 1577 108053 27710 2.66571 2.66571 -103.859 -2.66571 0 0 787024. 2723.27 0.31 0.05 0.14 -1 -1 0.31 0.016583 0.0146872 99 54 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_114.v common 6.71 vpr 64.93 MiB -1 -1 0.13 20276 1 0.03 -1 -1 33808 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 32 32 290 244 1 177 82 17 17 289 -1 unnamed_device 26.4 MiB 1.83 989 14322 5003 7418 1901 64.9 MiB 0.11 0.00 3.36109 -108.361 -3.36109 3.36109 0.98 0.000467466 0.00042137 0.0374669 0.0341946 34 2438 22 6.87369e+06 251529 618332. 2139.56 1.59 0.136247 0.119348 25762 151098 -1 2085 21 1527 2277 192017 42393 3.3345 3.3345 -123.807 -3.3345 0 0 787024. 2723.27 0.33 0.07 0.14 -1 -1 0.33 0.0204364 0.0179965 114 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_115.v common 8.15 vpr 65.09 MiB -1 -1 0.15 20428 1 0.03 -1 -1 33856 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 32 32 318 257 1 197 86 17 17 289 -1 unnamed_device 26.4 MiB 3.19 941 7079 1617 5049 413 65.1 MiB 0.07 0.00 4.03908 -110.471 -4.03908 4.03908 0.96 0.000480984 0.000437866 0.0201003 0.0183819 34 2467 22 6.87369e+06 307425 618332. 2139.56 1.69 0.125018 0.108947 25762 151098 -1 2099 21 1530 2121 147128 35361 3.98006 3.98006 -131.826 -3.98006 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0219791 0.0193214 132 27 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_116.v common 8.86 vpr 64.83 MiB -1 -1 0.16 20720 1 0.03 -1 -1 33572 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 29 32 324 268 1 169 90 17 17 289 -1 unnamed_device 26.3 MiB 3.08 910 15366 4626 8253 2487 64.8 MiB 0.12 0.00 3.20763 -92.8782 -3.20763 3.20763 0.91 0.00046478 0.00042173 0.0370081 0.0337976 30 2026 23 6.87369e+06 405241 556674. 1926.21 2.69 0.16199 0.141854 25186 138497 -1 1631 16 772 1352 71335 17792 2.82701 2.82701 -99.0818 -2.82701 0 0 706193. 2443.58 0.28 0.04 0.12 -1 -1 0.28 0.0179969 0.0159788 123 49 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_117.v common 9.20 vpr 65.00 MiB -1 -1 0.17 20764 1 0.03 -1 -1 33636 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 32 32 393 312 1 215 86 17 17 289 -1 unnamed_device 26.5 MiB 3.57 1112 16151 5093 8311 2747 65.0 MiB 0.14 0.00 4.14151 -131.605 -4.14151 4.14151 0.99 0.000554612 0.000503229 0.0488332 0.0444126 34 2977 24 6.87369e+06 307425 618332. 2139.56 2.23 0.180555 0.158575 25762 151098 -1 2472 23 1925 2962 282001 60494 4.33386 4.33386 -151.112 -4.33386 0 0 787024. 2723.27 0.32 0.10 0.14 -1 -1 0.32 0.029078 0.025767 151 62 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_118.v common 5.36 vpr 64.43 MiB -1 -1 0.15 20080 1 0.03 -1 -1 33716 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65972 31 32 229 197 1 143 80 17 17 289 -1 unnamed_device 25.9 MiB 0.81 840 10400 2691 6334 1375 64.4 MiB 0.07 0.00 2.9769 -91.9689 -2.9769 2.9769 0.93 0.000372109 0.000340196 0.0240568 0.021978 34 1848 24 6.87369e+06 237555 618332. 2139.56 1.42 0.102694 0.0893349 25762 151098 -1 1654 19 933 1462 108457 24819 2.69971 2.69971 -101.877 -2.69971 0 0 787024. 2723.27 0.31 0.05 0.14 -1 -1 0.31 0.0163242 0.0144396 92 -1 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_119.v common 6.56 vpr 65.27 MiB -1 -1 0.17 20764 1 0.03 -1 -1 33844 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66836 32 32 412 334 1 194 99 17 17 289 -1 unnamed_device 26.8 MiB 2.30 1078 19251 6137 10457 2657 65.3 MiB 0.15 0.00 3.50715 -119.693 -3.50715 3.50715 0.94 0.000557874 0.000507533 0.0494262 0.0448808 30 2539 22 6.87369e+06 489084 556674. 1926.21 1.01 0.124475 0.109819 25186 138497 -1 2083 19 1254 1793 106871 25490 3.72316 3.72316 -136.306 -3.72316 0 0 706193. 2443.58 0.29 0.06 0.13 -1 -1 0.29 0.0235527 0.0207513 145 87 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_120.v common 10.06 vpr 65.07 MiB -1 -1 0.16 20488 1 0.03 -1 -1 33604 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 32 32 376 318 1 168 80 17 17 289 -1 unnamed_device 26.5 MiB 5.25 961 10744 2764 7013 967 65.1 MiB 0.09 0.00 2.9898 -111.33 -2.9898 2.9898 0.96 0.000523275 0.000476003 0.0356114 0.0324515 34 2355 21 6.87369e+06 223581 618332. 2139.56 1.58 0.14415 0.125476 25762 151098 -1 1931 21 1521 2184 167217 38221 3.21381 3.21381 -135.019 -3.21381 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0233046 0.0204312 114 93 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_121.v common 8.06 vpr 64.92 MiB -1 -1 0.16 20508 1 0.03 -1 -1 33960 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 32 32 360 293 1 182 96 17 17 289 -1 unnamed_device 26.6 MiB 3.37 1117 16302 4782 9127 2393 64.9 MiB 0.14 0.00 3.24063 -105.014 -3.24063 3.24063 0.91 0.000505708 0.000459155 0.0399767 0.0364024 34 2410 22 6.87369e+06 447163 618332. 2139.56 1.51 0.149931 0.13143 25762 151098 -1 2112 22 1290 2026 142416 32941 3.00701 3.00701 -113.423 -3.00701 0 0 787024. 2723.27 0.31 0.06 0.13 -1 -1 0.31 0.024084 0.0211538 134 57 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_122.v common 10.61 vpr 64.96 MiB -1 -1 0.17 20620 1 0.03 -1 -1 33956 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66516 32 32 396 299 1 240 89 17 17 289 -1 unnamed_device 26.5 MiB 4.81 1274 12563 3567 7498 1498 65.0 MiB 0.13 0.00 4.69005 -144.336 -4.69005 4.69005 0.98 0.000554238 0.00050356 0.0387391 0.0353642 34 3374 27 6.87369e+06 349346 618332. 2139.56 2.42 0.191806 0.169178 25762 151098 -1 2705 19 2145 3237 258765 59938 4.8851 4.8851 -161.868 -4.8851 0 0 787024. 2723.27 0.32 0.09 0.14 -1 -1 0.32 0.0262923 0.0234179 171 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_123.v common 5.80 vpr 64.22 MiB -1 -1 0.13 20472 1 0.03 -1 -1 33468 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65760 30 32 224 207 1 137 77 17 17 289 -1 unnamed_device 25.8 MiB 1.44 809 9205 2544 4967 1694 64.2 MiB 0.06 0.00 2.40522 -81.1084 -2.40522 2.40522 0.91 0.000335549 0.000305289 0.0211247 0.0192232 34 1666 21 6.87369e+06 209608 618332. 2139.56 1.37 0.0919083 0.0797353 25762 151098 -1 1521 19 646 864 77984 16878 2.44836 2.44836 -99.2186 -2.44836 0 0 787024. 2723.27 0.31 0.04 0.13 -1 -1 0.31 0.0151302 0.0134147 81 29 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_124.v common 5.82 vpr 64.63 MiB -1 -1 0.15 20272 1 0.03 -1 -1 34020 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 30 32 286 239 1 151 81 17 17 289 -1 unnamed_device 26.2 MiB 1.28 830 11981 4007 5980 1994 64.6 MiB 0.08 0.00 3.14163 -100.812 -3.14163 3.14163 0.91 0.000409079 0.000371875 0.0302757 0.0276562 34 1868 22 6.87369e+06 265503 618332. 2139.56 1.41 0.117405 0.102106 25762 151098 -1 1644 20 1137 1672 120889 28158 2.99331 2.99331 -114.185 -2.99331 0 0 787024. 2723.27 0.31 0.05 0.14 -1 -1 0.31 0.0190778 0.0167633 105 29 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_125.v common 5.41 vpr 64.82 MiB -1 -1 0.15 20204 1 0.03 -1 -1 33992 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 32 32 296 247 1 158 87 17 17 289 -1 unnamed_device 26.4 MiB 1.24 898 15255 5007 8419 1829 64.8 MiB 0.11 0.00 2.9879 -101.502 -2.9879 2.9879 0.93 0.000437524 0.000398007 0.0374136 0.0339925 30 2265 21 6.87369e+06 321398 556674. 1926.21 1.01 0.0955059 0.0841829 25186 138497 -1 1918 18 1024 1879 126126 28685 3.09461 3.09461 -119.72 -3.09461 0 0 706193. 2443.58 0.29 0.05 0.13 -1 -1 0.29 0.018182 0.0160201 109 31 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_126.v common 5.05 vpr 64.23 MiB -1 -1 0.16 20144 1 0.03 -1 -1 33696 -1 -1 29 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65772 25 32 216 194 1 123 86 17 17 289 -1 unnamed_device 25.6 MiB 0.91 504 12938 4287 5737 2914 64.2 MiB 0.08 0.00 2.9029 -68.0577 -2.9029 2.9029 0.98 0.000358006 0.000327439 0.0253652 0.0231158 32 1589 26 6.87369e+06 405241 586450. 2029.24 0.97 0.0720271 0.0630957 25474 144626 -1 1157 20 839 1490 97968 24770 2.83296 2.83296 -80.1632 -2.83296 0 0 744469. 2576.02 0.31 0.04 0.14 -1 -1 0.31 0.015213 0.0133534 87 19 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_127.v common 8.49 vpr 64.85 MiB -1 -1 0.16 20580 1 0.03 -1 -1 34060 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 376 307 1 193 84 17 17 289 -1 unnamed_device 26.5 MiB 3.21 1061 15090 4808 7967 2315 64.8 MiB 0.13 0.00 3.64275 -112.262 -3.64275 3.64275 0.97 0.00052737 0.000474941 0.0471716 0.0428136 34 3021 49 6.87369e+06 279477 618332. 2139.56 1.94 0.162132 0.142267 25762 151098 -1 2430 23 1564 2692 206805 49334 3.85476 3.85476 -136.73 -3.85476 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0253753 0.0223075 133 69 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_128.v common 10.07 vpr 65.27 MiB -1 -1 0.17 20452 1 0.03 -1 -1 34008 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 31 32 409 331 1 193 94 17 17 289 -1 unnamed_device 26.8 MiB 3.59 1032 13939 3814 9136 989 65.3 MiB 0.13 0.00 3.48023 -114.653 -3.48023 3.48023 0.95 0.000556285 0.000505159 0.0386667 0.0351638 34 2398 21 6.87369e+06 433189 618332. 2139.56 3.20 0.213059 0.184203 25762 151098 -1 2011 19 1620 2483 160187 39582 3.06831 3.06831 -123.298 -3.06831 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.0233703 0.0205988 143 86 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_001.v common 7.82 vpr 65.02 MiB -1 -1 0.15 20624 1 0.03 -1 -1 34000 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 32 32 354 285 1 223 88 17 17 289 -1 unnamed_device 26.4 MiB 2.90 1214 14713 4233 9054 1426 65.0 MiB 0.14 0.00 4.26107 -127.141 -4.26107 4.26107 0.92 0.000519511 0.000475804 0.0407336 0.037231 34 2940 25 6.89349e+06 338252 618332. 2139.56 1.75 0.163145 0.143678 25762 151098 -1 2393 20 1532 2333 171083 41069 4.32415 4.32415 -147.557 -4.32415 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.022997 0.0203697 149 47 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_002.v common 6.64 vpr 65.03 MiB -1 -1 0.16 20536 1 0.03 -1 -1 33848 -1 -1 26 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 30 32 363 293 1 228 88 17 17 289 -1 unnamed_device 26.7 MiB 1.83 1167 11983 2953 7809 1221 65.0 MiB 0.10 0.00 3.89968 -122.519 -3.89968 3.89968 0.92 0.000495581 0.000452628 0.0332321 0.0303443 34 2943 27 6.89349e+06 366440 618332. 2139.56 1.68 0.154811 0.135219 25762 151098 -1 2442 22 2076 3125 224734 51232 4.16144 4.16144 -147.245 -4.16144 0 0 787024. 2723.27 0.30 0.08 0.13 -1 -1 0.30 0.0251299 0.0221548 156 58 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_003.v common 7.35 vpr 64.75 MiB -1 -1 0.15 20392 1 0.03 -1 -1 34008 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 32 32 299 247 1 190 85 17 17 289 -1 unnamed_device 26.3 MiB 2.26 1099 15523 4948 8573 2002 64.7 MiB 0.13 0.00 3.32519 -100.006 -3.32519 3.32519 0.97 0.000451044 0.000411583 0.0400291 0.036436 34 2532 48 6.89349e+06 295971 618332. 2139.56 1.82 0.158083 0.137976 25762 151098 -1 2108 25 1223 1799 126011 29675 3.33865 3.33865 -117.65 -3.33865 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.0248917 0.0218884 125 26 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_004.v common 6.83 vpr 64.73 MiB -1 -1 0.16 20136 1 0.03 -1 -1 33884 -1 -1 24 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 29 32 308 248 1 195 85 17 17 289 -1 unnamed_device 26.2 MiB 1.96 938 16081 6466 7389 2226 64.7 MiB 0.13 0.00 3.92328 -106.805 -3.92328 3.92328 0.94 0.000463717 0.000423645 0.0426725 0.038938 34 2486 30 6.89349e+06 338252 618332. 2139.56 1.63 0.147218 0.128558 25762 151098 -1 1848 18 1208 1920 115171 27976 3.72556 3.72556 -116.85 -3.72556 0 0 787024. 2723.27 0.32 0.05 0.14 -1 -1 0.32 0.0190792 0.0169543 134 25 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_005.v common 10.40 vpr 64.79 MiB -1 -1 0.14 20244 1 0.03 -1 -1 33644 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 32 32 336 268 1 212 87 17 17 289 -1 unnamed_device 26.3 MiB 1.61 1287 11415 3479 5825 2111 64.8 MiB 0.10 0.00 4.24401 -124.601 -4.24401 4.24401 0.92 0.000474674 0.000432812 0.0308667 0.0281937 34 3402 40 6.89349e+06 324158 618332. 2139.56 5.65 0.247351 0.217273 25762 151098 -1 2752 21 1878 3365 309935 64821 4.66699 4.66699 -153.877 -4.66699 0 0 787024. 2723.27 0.30 0.09 0.13 -1 -1 0.30 0.0237766 0.0210573 142 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_006.v common 7.65 vpr 65.05 MiB -1 -1 0.17 20612 1 0.03 -1 -1 33552 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 32 32 366 295 1 231 97 17 17 289 -1 unnamed_device 26.6 MiB 2.52 1308 19855 6635 10787 2433 65.1 MiB 0.17 0.00 3.42286 -111.444 -3.42286 3.42286 0.97 0.000519887 0.000470246 0.0494929 0.0449577 34 3103 25 6.89349e+06 465097 618332. 2139.56 1.74 0.152636 0.133593 25762 151098 -1 2495 20 1690 2878 194745 45020 3.35765 3.35765 -126.989 -3.35765 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0230734 0.0202935 162 55 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_007.v common 6.48 vpr 64.36 MiB -1 -1 0.15 20192 1 0.03 -1 -1 34080 -1 -1 21 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65900 27 32 259 221 1 160 80 17 17 289 -1 unnamed_device 25.8 MiB 1.57 834 13324 3953 7741 1630 64.4 MiB 0.09 0.00 3.25123 -92.5861 -3.25123 3.25123 0.94 0.000387558 0.000351289 0.0326661 0.0298275 36 1829 21 6.89349e+06 295971 648988. 2245.63 1.74 0.119765 0.104888 26050 158493 -1 1563 19 1125 1642 125405 27836 2.97416 2.97416 -103.932 -2.97416 0 0 828058. 2865.25 0.32 0.05 0.15 -1 -1 0.32 0.0166625 0.014693 107 26 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_008.v common 7.20 vpr 64.68 MiB -1 -1 0.16 20172 1 0.03 -1 -1 33784 -1 -1 32 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 31 32 271 219 1 164 95 17 17 289 -1 unnamed_device 26.3 MiB 0.87 870 15647 5073 7866 2708 64.7 MiB 0.11 0.00 2.54074 -78.8558 -2.54074 2.54074 0.95 0.000428919 0.000390873 0.0326825 0.029682 34 2153 22 6.89349e+06 451003 618332. 2139.56 3.07 0.166079 0.143549 25762 151098 -1 1743 22 1018 1697 112177 26553 2.55831 2.55831 -94.0253 -2.55831 0 0 787024. 2723.27 0.32 0.05 0.14 -1 -1 0.32 0.0202621 0.0177456 119 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_009.v common 6.96 vpr 64.44 MiB -1 -1 0.17 20360 1 0.03 -1 -1 33900 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65988 31 32 317 271 1 207 83 17 17 289 -1 unnamed_device 25.9 MiB 1.97 1110 13583 4929 5993 2661 64.4 MiB 0.11 0.00 2.80245 -99.26 -2.80245 2.80245 0.93 0.000446008 0.000404873 0.0355215 0.032393 34 2731 22 6.89349e+06 281877 618332. 2139.56 1.82 0.141728 0.124451 25762 151098 -1 2204 21 1574 2114 182239 38913 3.05496 3.05496 -118.574 -3.05496 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0215036 0.0189699 130 60 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_010.v common 7.15 vpr 64.69 MiB -1 -1 0.14 20552 1 0.03 -1 -1 34008 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66240 32 32 298 248 1 185 82 17 17 289 -1 unnamed_device 26.2 MiB 2.51 941 9516 2381 6135 1000 64.7 MiB 0.08 0.00 3.15648 -104.965 -3.15648 3.15648 0.92 0.000444593 0.00040543 0.0252618 0.0230757 34 2331 20 6.89349e+06 253689 618332. 2139.56 1.54 0.119878 0.104677 25762 151098 -1 1929 17 1042 1405 96026 22422 3.2305 3.2305 -124.014 -3.2305 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.0173192 0.0153675 120 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_011.v common 7.24 vpr 64.64 MiB -1 -1 0.16 20208 1 0.03 -1 -1 33748 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66192 30 32 303 262 1 191 83 17 17 289 -1 unnamed_device 26.1 MiB 2.38 1118 14483 4527 7969 1987 64.6 MiB 0.11 0.00 3.58297 -108.561 -3.58297 3.58297 0.91 0.000420507 0.00038429 0.0364185 0.033259 34 2354 21 6.89349e+06 295971 618332. 2139.56 1.74 0.136405 0.119592 25762 151098 -1 2122 19 1306 1788 132678 29797 3.6325 3.6325 -127.379 -3.6325 0 0 787024. 2723.27 0.29 0.05 0.15 -1 -1 0.29 0.0187501 0.0164767 124 58 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_012.v common 6.51 vpr 64.46 MiB -1 -1 0.14 20276 1 0.03 -1 -1 33720 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66008 32 32 276 237 1 171 81 17 17 289 -1 unnamed_device 26.1 MiB 1.74 956 14256 4096 8723 1437 64.5 MiB 0.10 0.00 2.911 -95.433 -2.911 2.911 0.91 0.000395985 0.00036063 0.0348336 0.0318287 34 2290 43 6.89349e+06 239595 618332. 2139.56 1.67 0.144513 0.126599 25762 151098 -1 1914 21 987 1375 106533 24480 2.79396 2.79396 -110.557 -2.79396 0 0 787024. 2723.27 0.33 0.05 0.14 -1 -1 0.33 0.0200465 0.017686 108 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_013.v common 9.40 vpr 64.80 MiB -1 -1 0.15 20584 1 0.03 -1 -1 33736 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 32 32 344 272 1 209 87 17 17 289 -1 unnamed_device 26.3 MiB 2.31 997 16791 5555 8237 2999 64.8 MiB 0.14 0.00 3.19568 -104.214 -3.19568 3.19568 0.92 0.000485185 0.000443078 0.0447622 0.0408646 36 2494 24 6.89349e+06 324158 648988. 2245.63 3.92 0.208551 0.182857 26050 158493 -1 2056 18 1497 2317 165763 37476 3.19906 3.19906 -116.896 -3.19906 0 0 828058. 2865.25 0.31 0.06 0.13 -1 -1 0.31 0.0203772 0.0180226 143 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_014.v common 7.12 vpr 64.86 MiB -1 -1 0.15 20860 1 0.03 -1 -1 33936 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 32 32 363 295 1 232 88 17 17 289 -1 unnamed_device 26.6 MiB 2.14 1237 16273 4603 9085 2585 64.9 MiB 0.14 0.00 4.42931 -129.469 -4.42931 4.42931 0.91 0.000483489 0.000439862 0.0440965 0.0401478 34 3069 27 6.89349e+06 338252 618332. 2139.56 1.79 0.148441 0.131432 25762 151098 -1 2487 21 1829 2525 187149 44185 4.61295 4.61295 -154.299 -4.61295 0 0 787024. 2723.27 0.30 0.07 0.14 -1 -1 0.30 0.0240911 0.0213215 153 58 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_015.v common 7.01 vpr 64.44 MiB -1 -1 0.15 20176 1 0.03 -1 -1 33508 -1 -1 18 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65988 29 32 248 215 1 160 79 17 17 289 -1 unnamed_device 25.9 MiB 2.28 828 9543 2408 6323 812 64.4 MiB 0.07 0.00 2.55142 -81.9482 -2.55142 2.55142 0.95 0.000390582 0.000355746 0.0234629 0.0214464 34 1977 20 6.89349e+06 253689 618332. 2139.56 1.55 0.104838 0.0910372 25762 151098 -1 1666 19 1044 1489 108412 25698 2.64866 2.64866 -94.7448 -2.64866 0 0 787024. 2723.27 0.30 0.05 0.14 -1 -1 0.30 0.0162489 0.0143261 102 21 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_016.v common 7.95 vpr 65.00 MiB -1 -1 0.16 20476 1 0.03 -1 -1 33860 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 32 32 370 297 1 234 88 17 17 289 -1 unnamed_device 26.6 MiB 2.66 1341 15298 4523 8737 2038 65.0 MiB 0.13 0.00 3.3439 -110.98 -3.3439 3.3439 0.93 0.000529202 0.000483669 0.0437947 0.039863 34 3308 25 6.89349e+06 338252 618332. 2139.56 2.00 0.171482 0.150255 25762 151098 -1 2752 22 2047 3308 281262 59839 3.57225 3.57225 -132.703 -3.57225 0 0 787024. 2723.27 0.29 0.09 0.14 -1 -1 0.29 0.0250714 0.0219765 159 55 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_017.v common 7.26 vpr 64.87 MiB -1 -1 0.16 20452 1 0.03 -1 -1 34084 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 32 32 338 269 1 205 86 17 17 289 -1 unnamed_device 26.3 MiB 2.27 1142 13694 4281 7359 2054 64.9 MiB 0.11 0.00 3.18768 -107.577 -3.18768 3.18768 0.91 0.000472906 0.000430443 0.0371077 0.0338562 36 2536 22 6.89349e+06 310065 648988. 2245.63 1.85 0.157272 0.138805 26050 158493 -1 2236 16 1301 1917 158203 33449 3.19711 3.19711 -121.769 -3.19711 0 0 828058. 2865.25 0.32 0.06 0.14 -1 -1 0.32 0.0189809 0.0169209 142 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_018.v common 7.17 vpr 64.85 MiB -1 -1 0.15 20584 1 0.03 -1 -1 33488 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 323 276 1 215 85 17 17 289 -1 unnamed_device 26.3 MiB 1.98 1179 16267 4856 9680 1731 64.8 MiB 0.13 0.00 2.80245 -104.61 -2.80245 2.80245 0.92 0.000437656 0.000399415 0.041631 0.0379831 34 2776 41 6.89349e+06 295971 618332. 2139.56 2.05 0.175624 0.155302 25762 151098 -1 2349 19 1449 1911 146028 32588 2.89221 2.89221 -122.703 -2.89221 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.020422 0.0180828 131 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_019.v common 5.09 vpr 64.32 MiB -1 -1 0.14 20480 1 0.03 -1 -1 33640 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65864 30 32 222 206 1 141 77 17 17 289 -1 unnamed_device 25.9 MiB 1.20 715 5456 1202 3908 346 64.3 MiB 0.04 0.00 2.15123 -73.4367 -2.15123 2.15123 0.93 0.000348667 0.000318147 0.0131737 0.0120456 30 1579 19 6.89349e+06 211408 556674. 1926.21 0.89 0.0564477 0.0491161 25186 138497 -1 1363 18 564 679 45907 10995 2.11002 2.11002 -87.7289 -2.11002 0 0 706193. 2443.58 0.28 0.03 0.13 -1 -1 0.28 0.0144593 0.0127243 82 29 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_020.v common 7.82 vpr 64.68 MiB -1 -1 0.16 20236 1 0.03 -1 -1 33844 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66228 31 32 291 243 1 179 82 17 17 289 -1 unnamed_device 26.3 MiB 2.57 931 14678 5107 7399 2172 64.7 MiB 0.12 0.00 3.72732 -118.161 -3.72732 3.72732 0.98 0.000440085 0.00040149 0.0380296 0.0346313 36 2163 24 6.89349e+06 267783 648988. 2245.63 1.97 0.141437 0.124144 26050 158493 -1 1798 22 1256 2001 146002 33310 3.36035 3.36035 -125.331 -3.36035 0 0 828058. 2865.25 0.32 0.06 0.13 -1 -1 0.32 0.0208374 0.0183587 117 30 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_021.v common 6.15 vpr 64.57 MiB -1 -1 0.14 20560 1 0.03 -1 -1 33940 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66120 32 32 342 271 1 207 98 17 17 289 -1 unnamed_device 26.0 MiB 1.24 1121 18098 5847 9989 2262 64.6 MiB 0.14 0.00 3.68693 -121.727 -3.68693 3.68693 0.91 0.000491501 0.000449583 0.0410945 0.0374848 34 2624 22 6.89349e+06 479191 618332. 2139.56 1.78 0.158561 0.13954 25762 151098 -1 2122 22 1495 2241 153724 35133 3.91094 3.91094 -140.255 -3.91094 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.0231134 0.020409 151 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_022.v common 9.11 vpr 64.91 MiB -1 -1 0.16 20644 1 0.03 -1 -1 33924 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 372 300 1 229 87 17 17 289 -1 unnamed_device 26.5 MiB 1.56 1311 9111 2463 5760 888 64.9 MiB 0.09 0.00 3.53795 -113.225 -3.53795 3.53795 0.93 0.000517898 0.000471227 0.026783 0.024461 36 2999 19 6.89349e+06 324158 648988. 2245.63 4.27 0.190436 0.16506 26050 158493 -1 2518 21 1748 2739 194441 42650 3.7065 3.7065 -133.858 -3.7065 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.0241141 0.0212572 155 59 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_023.v common 5.90 vpr 64.15 MiB -1 -1 0.14 19984 1 0.03 -1 -1 34244 -1 -1 19 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65688 26 32 190 182 1 126 77 17 17 289 -1 unnamed_device 25.7 MiB 1.39 442 11813 4730 5237 1846 64.1 MiB 0.06 0.00 2.20251 -59.9837 -2.20251 2.20251 0.91 0.000293716 0.000267942 0.0224558 0.0204621 34 1397 21 6.89349e+06 267783 618332. 2139.56 1.50 0.0902635 0.0787196 25762 151098 -1 1075 19 772 917 79348 21035 2.38625 2.38625 -74.8051 -2.38625 0 0 787024. 2723.27 0.30 0.04 0.13 -1 -1 0.30 0.0128172 0.0112624 76 21 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_024.v common 5.18 vpr 64.57 MiB -1 -1 0.16 20396 1 0.03 -1 -1 33952 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66120 32 32 285 227 1 169 87 17 17 289 -1 unnamed_device 26.2 MiB 1.04 992 5655 1153 4209 293 64.6 MiB 0.06 0.00 3.65437 -106.778 -3.65437 3.65437 0.93 0.000438961 0.000399951 0.0147308 0.0134218 28 2375 24 6.89349e+06 324158 531479. 1839.03 1.09 0.0759754 0.0663427 24610 126494 -1 2252 20 1425 2492 194269 44207 3.76845 3.76845 -129.081 -3.76845 0 0 648988. 2245.63 0.26 0.07 0.12 -1 -1 0.26 0.0194734 0.017154 119 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_025.v common 5.04 vpr 63.96 MiB -1 -1 0.13 20028 1 0.03 -1 -1 33600 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65492 32 32 173 169 1 114 76 17 17 289 -1 unnamed_device 25.5 MiB 0.43 431 9516 3885 5180 451 64.0 MiB 0.05 0.00 1.84032 -58.7538 -1.84032 1.84032 0.96 0.000311697 0.000284895 0.0190384 0.017264 34 1283 45 6.89349e+06 169126 618332. 2139.56 1.51 0.0831767 0.0719603 25762 151098 -1 1054 19 645 827 66903 17570 2.02876 2.02876 -75.5818 -2.02876 0 0 787024. 2723.27 0.31 0.04 0.13 -1 -1 0.31 0.0131531 0.011548 65 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_026.v common 6.52 vpr 64.66 MiB -1 -1 0.16 20212 1 0.03 -1 -1 33696 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66212 32 32 300 245 1 187 84 17 17 289 -1 unnamed_device 26.2 MiB 1.86 962 14175 3766 8385 2024 64.7 MiB 0.11 0.00 3.95808 -113.056 -3.95808 3.95808 0.92 0.000445359 0.000405652 0.0371632 0.0339548 34 2461 20 6.89349e+06 281877 618332. 2139.56 1.50 0.134528 0.117901 25762 151098 -1 2034 18 1132 1660 115564 28077 4.00226 4.00226 -125.417 -4.00226 0 0 787024. 2723.27 0.33 0.05 0.14 -1 -1 0.33 0.0194303 0.017263 125 21 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_027.v common 5.06 vpr 64.52 MiB -1 -1 0.15 20396 1 0.03 -1 -1 33804 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66072 32 32 297 233 1 177 95 17 17 289 -1 unnamed_device 26.1 MiB 0.88 1065 17375 5092 9935 2348 64.5 MiB 0.13 0.00 2.7033 -91.5418 -2.7033 2.7033 0.93 0.000456451 0.000417859 0.0381814 0.0346926 28 2592 30 6.89349e+06 436909 531479. 1839.03 1.05 0.10327 0.090764 24610 126494 -1 2274 22 1360 2495 185371 41365 2.67775 2.67775 -108.068 -2.67775 0 0 648988. 2245.63 0.26 0.07 0.12 -1 -1 0.26 0.0210041 0.0183952 130 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_028.v common 7.60 vpr 64.89 MiB -1 -1 0.16 20804 1 0.03 -1 -1 33656 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 32 32 338 277 1 215 87 17 17 289 -1 unnamed_device 26.3 MiB 2.61 1126 11031 2881 6858 1292 64.9 MiB 0.10 0.00 3.79978 -109.038 -3.79978 3.79978 0.96 0.000499036 0.000452989 0.0311822 0.0283481 34 2782 21 6.89349e+06 324158 618332. 2139.56 1.72 0.138059 0.120148 25762 151098 -1 2358 21 1605 2409 164688 39006 3.83476 3.83476 -126.659 -3.83476 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0225646 0.019856 142 47 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_029.v common 6.96 vpr 64.54 MiB -1 -1 0.14 20324 1 0.03 -1 -1 33840 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 284 241 1 177 81 17 17 289 -1 unnamed_device 26.1 MiB 2.08 995 11456 3373 6255 1828 64.5 MiB 0.09 0.00 2.9839 -102.38 -2.9839 2.9839 0.94 0.000435457 0.000395693 0.0305097 0.0278119 34 2282 31 6.89349e+06 239595 618332. 2139.56 1.68 0.134155 0.117207 25762 151098 -1 1907 19 1264 1816 129053 29357 2.82416 2.82416 -113.888 -2.82416 0 0 787024. 2723.27 0.33 0.05 0.14 -1 -1 0.33 0.018401 0.0162155 112 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_030.v common 6.87 vpr 64.53 MiB -1 -1 0.15 20220 1 0.03 -1 -1 33720 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66076 30 32 262 227 1 161 79 17 17 289 -1 unnamed_device 26.0 MiB 2.11 883 13092 4667 6018 2407 64.5 MiB 0.09 0.00 3.26582 -95.078 -3.26582 3.26582 0.96 0.000392066 0.000355991 0.0327671 0.02983 34 2191 25 6.89349e+06 239595 618332. 2139.56 1.57 0.123803 0.107771 25762 151098 -1 1840 20 1025 1666 125288 28583 3.5863 3.5863 -115.942 -3.5863 0 0 787024. 2723.27 0.31 0.05 0.13 -1 -1 0.31 0.0184313 0.0163111 104 29 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_031.v common 6.04 vpr 64.36 MiB -1 -1 0.16 20224 1 0.03 -1 -1 33800 -1 -1 20 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65904 28 32 260 223 1 163 80 17 17 289 -1 unnamed_device 25.8 MiB 1.92 897 13324 4235 7704 1385 64.4 MiB 0.10 0.00 3.27894 -97.2693 -3.27894 3.27894 0.92 0.000396871 0.000361544 0.0317795 0.0289331 30 2291 25 6.89349e+06 281877 556674. 1926.21 1.06 0.089978 0.0793328 25186 138497 -1 1849 18 957 1597 107369 24604 3.45875 3.45875 -117.488 -3.45875 0 0 706193. 2443.58 0.28 0.05 0.12 -1 -1 0.28 0.0160969 0.0142538 107 27 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_032.v common 4.86 vpr 64.27 MiB -1 -1 0.14 20460 1 0.03 -1 -1 33636 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65808 32 32 253 210 1 156 81 17 17 289 -1 unnamed_device 25.8 MiB 0.71 799 12156 3105 8175 876 64.3 MiB 0.10 0.00 3.24508 -101.69 -3.24508 3.24508 0.98 0.000404013 0.000370459 0.0310671 0.0283457 30 2111 19 6.89349e+06 239595 556674. 1926.21 0.97 0.0834402 0.0735788 25186 138497 -1 1749 21 1057 1811 122196 27245 2.79386 2.79386 -111.876 -2.79386 0 0 706193. 2443.58 0.29 0.05 0.13 -1 -1 0.29 0.0187111 0.0164912 101 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_033.v common 7.01 vpr 64.53 MiB -1 -1 0.15 20608 1 0.03 -1 -1 33448 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 31 32 271 231 1 172 81 17 17 289 -1 unnamed_device 25.9 MiB 1.87 891 14431 4881 6988 2562 64.5 MiB 0.11 0.00 2.82865 -91.106 -2.82865 2.82865 0.93 0.000404218 0.000367446 0.0361453 0.0329066 34 2243 49 6.89349e+06 253689 618332. 2139.56 1.97 0.14967 0.130459 25762 151098 -1 1861 21 1039 1539 114731 26737 2.79006 2.79006 -107.109 -2.79006 0 0 787024. 2723.27 0.33 0.05 0.14 -1 -1 0.33 0.0195305 0.0172319 108 26 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_034.v common 7.25 vpr 64.63 MiB -1 -1 0.16 20364 1 0.03 -1 -1 33736 -1 -1 22 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 29 32 291 250 1 185 83 17 17 289 -1 unnamed_device 26.2 MiB 2.18 871 14123 3525 9365 1233 64.6 MiB 0.10 0.00 2.84275 -83.5485 -2.84275 2.84275 0.97 0.000436278 0.000390566 0.0363799 0.0331567 36 2050 22 6.89349e+06 310065 648988. 2245.63 1.81 0.13391 0.117179 26050 158493 -1 1699 18 986 1343 83541 21086 2.72096 2.72096 -96.9431 -2.72096 0 0 828058. 2865.25 0.32 0.04 0.15 -1 -1 0.32 0.0174321 0.0154169 120 48 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_035.v common 7.18 vpr 65.00 MiB -1 -1 0.16 20376 1 0.03 -1 -1 33572 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 32 32 367 282 1 224 89 17 17 289 -1 unnamed_device 26.7 MiB 1.91 1321 14345 3951 8541 1853 65.0 MiB 0.14 0.00 3.60205 -109.719 -3.60205 3.60205 0.96 0.000532056 0.000485675 0.0401283 0.0365646 34 3204 25 6.89349e+06 352346 618332. 2139.56 1.99 0.179931 0.158412 25762 151098 -1 2583 21 1457 2439 192212 41693 3.60416 3.60416 -124.443 -3.60416 0 0 787024. 2723.27 0.31 0.07 0.13 -1 -1 0.31 0.0258964 0.0229676 159 26 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_036.v common 8.49 vpr 64.80 MiB -1 -1 0.17 20804 1 0.03 -1 -1 33784 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 32 32 391 311 1 250 88 17 17 289 -1 unnamed_device 26.4 MiB 2.46 1342 16078 5333 8863 1882 64.8 MiB 0.14 0.00 3.57677 -122.298 -3.57677 3.57677 0.95 0.000540233 0.000490725 0.0474274 0.043135 34 3631 31 6.89349e+06 338252 618332. 2139.56 2.70 0.185939 0.162883 25762 151098 -1 2853 21 2352 3233 315530 66528 3.75255 3.75255 -145.95 -3.75255 0 0 787024. 2723.27 0.30 0.10 0.14 -1 -1 0.30 0.0265541 0.0234512 168 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_037.v common 6.05 vpr 64.64 MiB -1 -1 0.14 20592 1 0.03 -1 -1 34032 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 31 32 279 237 1 167 81 17 17 289 -1 unnamed_device 26.3 MiB 1.37 933 9706 2569 6078 1059 64.6 MiB 0.08 0.00 3.21878 -100.089 -3.21878 3.21878 0.91 0.000428977 0.000382741 0.0248366 0.022676 34 2122 20 6.89349e+06 253689 618332. 2139.56 1.63 0.120089 0.105287 25762 151098 -1 1847 23 1171 1843 176030 36127 3.05485 3.05485 -114.037 -3.05485 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.0202954 0.0177433 109 30 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_038.v common 7.88 vpr 65.00 MiB -1 -1 0.17 20584 1 0.03 -1 -1 34020 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 31 32 370 297 1 235 88 17 17 289 -1 unnamed_device 26.6 MiB 2.57 1278 11593 3170 7401 1022 65.0 MiB 0.11 0.00 3.42249 -111.085 -3.42249 3.42249 0.93 0.000523598 0.000466452 0.0336009 0.0304175 34 3269 23 6.89349e+06 352346 618332. 2139.56 2.04 0.156743 0.136876 25762 151098 -1 2758 20 1712 2544 193286 42979 3.7144 3.7144 -137.223 -3.7144 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0243319 0.0214832 160 57 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_039.v common 10.79 vpr 65.12 MiB -1 -1 0.17 20688 1 0.03 -1 -1 33740 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 31 32 377 302 1 241 88 17 17 289 -1 unnamed_device 26.7 MiB 3.08 1178 13933 4197 7735 2001 65.1 MiB 0.14 0.00 4.34127 -130.272 -4.34127 4.34127 0.97 0.00056193 0.000512868 0.041116 0.0374947 38 2852 24 6.89349e+06 352346 678818. 2348.85 4.28 0.218808 0.190764 26626 170182 -1 2448 18 1758 2559 190924 40178 4.66428 4.66428 -155.12 -4.66428 0 0 902133. 3121.57 0.34 0.07 0.16 -1 -1 0.34 0.0230058 0.020461 163 60 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_040.v common 7.83 vpr 64.81 MiB -1 -1 0.17 20548 1 0.03 -1 -1 33720 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 31 32 383 305 1 240 88 17 17 289 -1 unnamed_device 26.4 MiB 2.61 1138 15688 4816 8173 2699 64.8 MiB 0.14 0.00 4.74618 -136.117 -4.74618 4.74618 1.00 0.000540554 0.00049406 0.0461577 0.0419961 34 2972 25 6.89349e+06 352346 618332. 2139.56 1.86 0.171335 0.149912 25762 151098 -1 2320 22 1874 2811 192911 44258 4.73554 4.73554 -163.324 -4.73554 0 0 787024. 2723.27 0.30 0.08 0.14 -1 -1 0.30 0.0269936 0.0238681 166 60 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_041.v common 7.26 vpr 64.83 MiB -1 -1 0.16 20668 1 0.03 -1 -1 33968 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 31 32 352 285 1 223 87 17 17 289 -1 unnamed_device 26.2 MiB 2.26 1126 12759 3721 7822 1216 64.8 MiB 0.12 0.00 3.17668 -101.657 -3.17668 3.17668 0.96 0.000555448 0.000510034 0.0363065 0.0331522 34 2939 23 6.89349e+06 338252 618332. 2139.56 1.73 0.157418 0.137886 25762 151098 -1 2256 18 1554 2292 142706 35261 2.95831 2.95831 -113.195 -2.95831 0 0 787024. 2723.27 0.32 0.06 0.13 -1 -1 0.32 0.021461 0.0190177 148 51 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_042.v common 6.92 vpr 64.50 MiB -1 -1 0.16 20460 1 0.03 -1 -1 33712 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 32 32 291 242 1 188 84 17 17 289 -1 unnamed_device 26.1 MiB 2.19 989 14175 5590 7349 1236 64.5 MiB 0.11 0.00 3.64925 -99.1057 -3.64925 3.64925 0.91 0.000422547 0.000384029 0.0345252 0.0314547 34 2559 26 6.89349e+06 281877 618332. 2139.56 1.60 0.136169 0.119127 25762 151098 -1 2082 21 1195 1728 126769 29863 3.70276 3.70276 -117.849 -3.70276 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.0199562 0.0176377 120 24 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_043.v common 8.99 vpr 65.48 MiB -1 -1 0.16 21176 1 0.03 -1 -1 33740 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67056 32 32 457 356 1 296 95 17 17 289 -1 unnamed_device 27.0 MiB 2.68 1522 11543 2757 8138 648 65.5 MiB 0.13 0.00 4.19571 -136.492 -4.19571 4.19571 0.96 0.000621024 0.000564257 0.0360505 0.0327646 34 4736 48 6.89349e+06 436909 618332. 2139.56 2.93 0.18424 0.161022 25762 151098 -1 3237 25 2604 3916 312438 71846 4.99139 4.99139 -176.994 -4.99139 0 0 787024. 2723.27 0.30 0.11 0.14 -1 -1 0.30 0.0323735 0.0284669 203 84 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_044.v common 6.61 vpr 64.36 MiB -1 -1 0.15 20284 1 0.03 -1 -1 33804 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65900 31 32 261 225 1 171 81 17 17 289 -1 unnamed_device 25.8 MiB 1.97 1018 10056 2694 6355 1007 64.4 MiB 0.07 0.00 2.974 -92.1126 -2.974 2.974 0.94 0.000399657 0.000364878 0.024508 0.0223658 34 2204 23 6.89349e+06 253689 618332. 2139.56 1.49 0.10941 0.0950114 25762 151098 -1 1933 17 1145 1554 117683 26662 3.03351 3.03351 -108.752 -3.03351 0 0 787024. 2723.27 0.32 0.05 0.14 -1 -1 0.32 0.0161304 0.014249 106 24 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_045.v common 8.84 vpr 64.81 MiB -1 -1 0.16 20736 1 0.03 -1 -1 33752 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 31 32 337 267 1 207 86 17 17 289 -1 unnamed_device 26.2 MiB 1.77 1236 10481 2814 6547 1120 64.8 MiB 0.10 0.00 3.75642 -119.135 -3.75642 3.75642 0.95 0.000502581 0.000450352 0.029568 0.0269731 30 2808 32 6.89349e+06 324158 556674. 1926.21 3.84 0.18554 0.161059 25186 138497 -1 2216 22 1409 2078 116007 27803 3.9346 3.9346 -137.838 -3.9346 0 0 706193. 2443.58 0.29 0.06 0.13 -1 -1 0.29 0.0238599 0.0211326 140 30 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_046.v common 7.78 vpr 64.98 MiB -1 -1 0.15 20532 1 0.03 -1 -1 33964 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 32 32 349 284 1 222 87 17 17 289 -1 unnamed_device 26.6 MiB 2.53 1301 16023 5316 8071 2636 65.0 MiB 0.14 0.00 3.41329 -109.461 -3.41329 3.41329 0.96 0.000482653 0.000439413 0.0438142 0.0398272 34 3230 24 6.89349e+06 324158 618332. 2139.56 1.96 0.172899 0.151942 25762 151098 -1 2593 20 1421 2289 177595 39579 3.6724 3.6724 -129.599 -3.6724 0 0 787024. 2723.27 0.32 0.07 0.13 -1 -1 0.32 0.0225673 0.0199423 149 50 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_047.v common 5.79 vpr 64.58 MiB -1 -1 0.14 20252 1 0.03 -1 -1 33952 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 32 32 291 230 1 175 90 17 17 289 -1 unnamed_device 26.2 MiB 0.70 1058 12552 3287 7737 1528 64.6 MiB 0.10 0.00 3.37229 -107.321 -3.37229 3.37229 0.93 0.000471267 0.00043018 0.0300709 0.027368 34 2366 20 6.89349e+06 366440 618332. 2139.56 1.86 0.130755 0.114563 25762 151098 -1 2098 22 1387 2615 185855 40765 3.6232 3.6232 -125.916 -3.6232 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0220779 0.0195113 123 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_048.v common 9.27 vpr 64.78 MiB -1 -1 0.17 20668 1 0.03 -1 -1 33624 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 32 32 353 287 1 220 87 17 17 289 -1 unnamed_device 26.5 MiB 2.06 1074 13911 4654 6551 2706 64.8 MiB 0.12 0.00 3.42271 -103.027 -3.42271 3.42271 0.93 0.000506156 0.000460523 0.0390261 0.0355354 36 2555 22 6.89349e+06 324158 648988. 2245.63 3.96 0.192267 0.166744 26050 158493 -1 2223 19 1499 2115 168064 37572 3.02926 3.02926 -114.863 -3.02926 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.0237567 0.0210661 148 52 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_049.v common 8.46 vpr 64.91 MiB -1 -1 0.17 20684 1 0.03 -1 -1 33820 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 361 291 1 233 88 17 17 289 -1 unnamed_device 26.6 MiB 2.44 1108 14908 4824 7385 2699 64.9 MiB 0.12 0.00 3.31619 -102.977 -3.31619 3.31619 0.93 0.000506741 0.000461114 0.0408111 0.0371008 36 3281 34 6.89349e+06 338252 648988. 2245.63 2.72 0.166873 0.145395 26050 158493 -1 2470 19 1642 2455 190923 44162 3.90705 3.90705 -129.732 -3.90705 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.0221305 0.0194443 154 52 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_050.v common 7.37 vpr 64.80 MiB -1 -1 0.16 20648 1 0.03 -1 -1 33652 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 32 32 382 305 1 243 90 17 17 289 -1 unnamed_device 26.4 MiB 2.10 1356 13758 4192 7257 2309 64.8 MiB 0.13 0.00 3.22384 -110.279 -3.22384 3.22384 0.95 0.000480718 0.000438021 0.0380414 0.0344812 34 3283 29 6.89349e+06 366440 618332. 2139.56 1.95 0.141419 0.123996 25762 151098 -1 2666 21 1810 2537 198013 43136 3.12551 3.12551 -127.459 -3.12551 0 0 787024. 2723.27 0.33 0.08 0.14 -1 -1 0.33 0.026069 0.023094 164 59 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_051.v common 6.90 vpr 64.72 MiB -1 -1 0.16 20564 1 0.03 -1 -1 33756 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66276 32 32 306 248 1 188 85 17 17 289 -1 unnamed_device 26.3 MiB 1.92 954 14221 3790 8871 1560 64.7 MiB 0.12 0.00 3.61195 -107.106 -3.61195 3.61195 0.98 0.000436795 0.000396498 0.037029 0.0337158 34 2377 31 6.89349e+06 295971 618332. 2139.56 1.69 0.149937 0.131477 25762 151098 -1 1935 20 1177 1910 128213 31756 3.66526 3.66526 -123.89 -3.66526 0 0 787024. 2723.27 0.32 0.06 0.14 -1 -1 0.32 0.0199684 0.0176263 128 21 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_052.v common 6.80 vpr 64.57 MiB -1 -1 0.14 20244 1 0.03 -1 -1 33756 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66124 32 32 319 257 1 203 86 17 17 289 -1 unnamed_device 26.1 MiB 1.94 1095 11048 2744 7222 1082 64.6 MiB 0.10 0.00 3.93308 -117.677 -3.93308 3.93308 0.94 0.000468175 0.000427164 0.0291171 0.02659 34 2822 43 6.89349e+06 310065 618332. 2139.56 1.65 0.132226 0.115653 25762 151098 -1 2312 20 1380 2031 146501 33630 3.8428 3.8428 -130.75 -3.8428 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.0212992 0.0188294 135 26 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_053.v common 6.71 vpr 65.00 MiB -1 -1 0.15 20460 1 0.03 -1 -1 34032 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 31 32 373 299 1 227 87 17 17 289 -1 unnamed_device 26.6 MiB 1.49 1438 14871 4798 8065 2008 65.0 MiB 0.14 0.00 3.81572 -120.928 -3.81572 3.81572 0.92 0.000508764 0.00046484 0.041477 0.037815 34 3496 45 6.89349e+06 338252 618332. 2139.56 2.00 0.187808 0.164703 25762 151098 -1 2801 23 1798 2879 252245 52500 3.90996 3.90996 -142.025 -3.90996 0 0 787024. 2723.27 0.30 0.08 0.13 -1 -1 0.30 0.025779 0.0227172 156 58 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_054.v common 10.41 vpr 65.09 MiB -1 -1 0.17 20640 1 0.03 -1 -1 33880 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 32 32 387 315 1 249 89 17 17 289 -1 unnamed_device 26.6 MiB 3.00 1313 8801 1909 6412 480 65.1 MiB 0.09 0.00 3.80725 -116.552 -3.80725 3.80725 0.93 0.000524585 0.000477304 0.0259615 0.0236177 36 3220 28 6.89349e+06 352346 648988. 2245.63 4.16 0.20007 0.173007 26050 158493 -1 2747 22 1886 2814 192181 44062 3.63536 3.63536 -133.834 -3.63536 0 0 828058. 2865.25 0.31 0.07 0.15 -1 -1 0.31 0.0251804 0.0220782 166 74 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_055.v common 6.36 vpr 64.39 MiB -1 -1 0.15 20236 1 0.03 -1 -1 33520 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65936 32 32 251 219 1 156 79 17 17 289 -1 unnamed_device 25.9 MiB 1.83 846 8867 2360 6012 495 64.4 MiB 0.07 0.00 2.79059 -89.1076 -2.79059 2.79059 0.93 0.000376881 0.000342391 0.0215083 0.0195347 34 1978 24 6.89349e+06 211408 618332. 2139.56 1.44 0.102205 0.0883822 25762 151098 -1 1754 21 998 1615 103948 24750 2.89726 2.89726 -101.525 -2.89726 0 0 787024. 2723.27 0.31 0.05 0.13 -1 -1 0.31 0.0175102 0.0153958 96 20 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_056.v common 6.80 vpr 64.88 MiB -1 -1 0.16 20824 1 0.03 -1 -1 33800 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 341 285 1 219 84 17 17 289 -1 unnamed_device 26.3 MiB 1.51 1015 10881 2467 7293 1121 64.9 MiB 0.09 0.00 3.45729 -116.703 -3.45729 3.45729 0.95 0.000492895 0.000442133 0.0311408 0.0283939 36 2726 22 6.89349e+06 281877 648988. 2245.63 2.04 0.122481 0.107739 26050 158493 -1 2144 22 1876 2555 188538 44365 3.65205 3.65205 -139.988 -3.65205 0 0 828058. 2865.25 0.33 0.07 0.14 -1 -1 0.33 0.0234877 0.0206998 138 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_057.v common 7.10 vpr 65.00 MiB -1 -1 0.17 20516 1 0.03 -1 -1 33840 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 32 32 387 293 1 237 89 17 17 289 -1 unnamed_device 26.5 MiB 1.99 1416 17117 5679 9084 2354 65.0 MiB 0.16 0.00 4.49577 -134.492 -4.49577 4.49577 0.91 0.000536614 0.000490818 0.0494236 0.0450555 36 3175 26 6.89349e+06 352346 648988. 2245.63 1.88 0.155986 0.138074 26050 158493 -1 2748 21 1844 2988 212566 45951 4.38245 4.38245 -148.382 -4.38245 0 0 828058. 2865.25 0.32 0.08 0.13 -1 -1 0.32 0.0264275 0.0233945 168 28 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_058.v common 9.55 vpr 64.91 MiB -1 -1 0.15 20296 1 0.03 -1 -1 33588 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 32 32 340 270 1 212 86 17 17 289 -1 unnamed_device 26.4 MiB 2.21 1004 14450 4790 7027 2633 64.9 MiB 0.12 0.00 3.53796 -113.493 -3.53796 3.53796 0.97 0.000484011 0.000440171 0.0409764 0.0373766 36 2660 19 6.89349e+06 310065 648988. 2245.63 4.03 0.196771 0.171311 26050 158493 -1 2186 20 1621 2381 180525 41091 3.22686 3.22686 -122.753 -3.22686 0 0 828058. 2865.25 0.33 0.07 0.14 -1 -1 0.33 0.0233578 0.0206877 144 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_059.v common 6.69 vpr 64.62 MiB -1 -1 0.16 20340 1 0.03 -1 -1 33792 -1 -1 27 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 30 32 278 235 1 175 89 17 17 289 -1 unnamed_device 26.2 MiB 1.70 1008 17711 5346 10399 1966 64.6 MiB 0.13 0.00 3.17564 -102.032 -3.17564 3.17564 0.94 0.000412242 0.00037446 0.0390578 0.035545 34 2221 22 6.89349e+06 380534 618332. 2139.56 1.72 0.115141 0.101216 25762 151098 -1 1986 22 1257 2111 154249 35358 3.48495 3.48495 -124.405 -3.48495 0 0 787024. 2723.27 0.33 0.06 0.14 -1 -1 0.33 0.0202894 0.0178336 118 29 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_060.v common 11.38 vpr 65.21 MiB -1 -1 0.17 21004 1 0.03 -1 -1 33700 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66772 32 32 431 332 1 270 91 17 17 289 -1 unnamed_device 26.7 MiB 3.72 1598 14983 4019 9208 1756 65.2 MiB 0.18 0.00 5.53985 -161.329 -5.53985 5.53985 0.95 0.000619456 0.000564081 0.0467677 0.0425621 38 3685 21 6.89349e+06 380534 678818. 2348.85 4.24 0.236912 0.205834 26626 170182 -1 3193 21 2232 3463 259707 55282 5.55253 5.55253 -187.141 -5.55253 0 0 902133. 3121.57 0.35 0.09 0.16 -1 -1 0.35 0.0292415 0.026039 188 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_061.v common 6.26 vpr 64.79 MiB -1 -1 0.15 20604 1 0.03 -1 -1 33676 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 32 32 336 268 1 205 85 17 17 289 -1 unnamed_device 26.3 MiB 1.59 1069 15709 4543 9110 2056 64.8 MiB 0.12 0.00 3.82232 -121.404 -3.82232 3.82232 0.91 0.000466732 0.000424441 0.0428751 0.0390839 34 2588 24 6.89349e+06 295971 618332. 2139.56 1.54 0.151806 0.133292 25762 151098 -1 2238 21 1746 2446 177923 41013 3.9728 3.9728 -141.708 -3.9728 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0226602 0.0200557 139 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_062.v common 6.21 vpr 64.14 MiB -1 -1 0.14 20384 1 0.03 -1 -1 33652 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65680 32 32 231 199 1 142 88 17 17 289 -1 unnamed_device 25.7 MiB 0.66 700 11203 2591 7175 1437 64.1 MiB 0.08 0.00 2.8828 -80.534 -2.8828 2.8828 0.95 0.000391969 0.000358306 0.0231761 0.0211679 30 1745 28 6.89349e+06 338252 556674. 1926.21 2.42 0.127794 0.11071 25186 138497 -1 1525 20 847 1528 99174 23222 2.75811 2.75811 -94.3849 -2.75811 0 0 706193. 2443.58 0.31 0.05 0.13 -1 -1 0.31 0.0184708 0.0162603 94 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_063.v common 7.28 vpr 64.93 MiB -1 -1 0.16 20744 1 0.03 -1 -1 33516 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 32 32 349 273 1 214 87 17 17 289 -1 unnamed_device 26.4 MiB 2.12 1248 13527 4219 7847 1461 64.9 MiB 0.12 0.00 4.19497 -117.606 -4.19497 4.19497 0.98 0.000494773 0.000450892 0.0381212 0.0346179 34 3070 21 6.89349e+06 324158 618332. 2139.56 1.85 0.152422 0.133042 25762 151098 -1 2513 21 1466 2566 175916 39733 4.3393 4.3393 -139.268 -4.3393 0 0 787024. 2723.27 0.30 0.07 0.14 -1 -1 0.30 0.0229944 0.0202818 149 26 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_064.v common 6.89 vpr 64.40 MiB -1 -1 0.12 20148 1 0.03 -1 -1 34104 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65948 32 32 247 207 1 153 83 17 17 289 -1 unnamed_device 25.9 MiB 0.73 705 7283 1575 5151 557 64.4 MiB 0.05 0.00 2.81765 -87.6139 -2.81765 2.81765 0.96 0.000393352 0.000358835 0.0171488 0.0156369 34 1860 18 6.89349e+06 267783 618332. 2139.56 3.08 0.139117 0.120173 25762 151098 -1 1459 18 1032 1776 113105 28197 2.70506 2.70506 -101.131 -2.70506 0 0 787024. 2723.27 0.32 0.05 0.13 -1 -1 0.32 0.0163255 0.0143852 98 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_065.v common 6.39 vpr 64.38 MiB -1 -1 0.14 20320 1 0.03 -1 -1 33552 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 30 32 278 235 1 175 82 17 17 289 -1 unnamed_device 26.0 MiB 1.45 854 9516 2323 6740 453 64.4 MiB 0.08 0.00 3.17368 -94.5914 -3.17368 3.17368 0.95 0.000419711 0.000382706 0.0243987 0.0223467 34 2168 29 6.89349e+06 281877 618332. 2139.56 1.79 0.133959 0.118062 25762 151098 -1 1948 21 1262 1797 139742 32371 3.16966 3.16966 -112.864 -3.16966 0 0 787024. 2723.27 0.31 0.06 0.13 -1 -1 0.31 0.0197819 0.0174855 113 29 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_066.v common 8.77 vpr 64.98 MiB -1 -1 0.14 20624 1 0.03 -1 -1 33968 -1 -1 26 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66536 29 32 355 287 1 224 87 17 17 289 -1 unnamed_device 26.6 MiB 3.52 1099 11991 3115 8122 754 65.0 MiB 0.11 0.00 3.60013 -107.086 -3.60013 3.60013 0.97 0.000494764 0.000451822 0.0335819 0.0305811 34 2992 39 6.89349e+06 366440 618332. 2139.56 1.96 0.175667 0.15351 25762 151098 -1 2348 20 1655 2441 188687 43471 3.53834 3.53834 -125.749 -3.53834 0 0 787024. 2723.27 0.32 0.07 0.13 -1 -1 0.32 0.0238848 0.0210845 154 56 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_067.v common 7.68 vpr 65.07 MiB -1 -1 0.15 20604 1 0.03 -1 -1 33804 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 32 32 358 289 1 230 86 17 17 289 -1 unnamed_device 26.7 MiB 2.18 1279 16907 6119 8984 1804 65.1 MiB 0.15 0.00 4.11834 -130.881 -4.11834 4.11834 0.98 0.000516161 0.000469825 0.0488176 0.0445301 34 3169 32 6.89349e+06 310065 618332. 2139.56 2.20 0.19066 0.168344 25762 151098 -1 2462 22 1857 2710 183402 43528 4.20505 4.20505 -150.53 -4.20505 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0242008 0.0213203 151 51 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_068.v common 7.38 vpr 65.00 MiB -1 -1 0.15 20564 1 0.03 -1 -1 34028 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 32 32 353 285 1 228 87 17 17 289 -1 unnamed_device 26.4 MiB 1.81 1306 11223 2863 7379 981 65.0 MiB 0.10 0.00 4.28447 -128.177 -4.28447 4.28447 0.96 0.000515612 0.000456219 0.0327213 0.0297851 36 3144 29 6.89349e+06 324158 648988. 2245.63 2.28 0.173512 0.152446 26050 158493 -1 2718 20 1950 2794 239587 50893 4.36935 4.36935 -150.518 -4.36935 0 0 828058. 2865.25 0.33 0.08 0.14 -1 -1 0.33 0.0241533 0.021376 150 48 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_069.v common 5.98 vpr 64.52 MiB -1 -1 0.14 20364 1 0.03 -1 -1 33492 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 32 32 276 237 1 165 79 17 17 289 -1 unnamed_device 25.9 MiB 1.90 935 12247 4169 6567 1511 64.5 MiB 0.10 0.00 3.71247 -110.557 -3.71247 3.71247 0.96 0.000423098 0.000386604 0.0326571 0.0297873 30 2156 19 6.89349e+06 211408 556674. 1926.21 0.96 0.0886619 0.0782416 25186 138497 -1 1793 20 855 1193 82557 18816 3.18905 3.18905 -116.88 -3.18905 0 0 706193. 2443.58 0.28 0.05 0.12 -1 -1 0.28 0.0185029 0.0163965 105 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_070.v common 6.84 vpr 64.81 MiB -1 -1 0.15 20180 1 0.03 -1 -1 34000 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 31 32 319 272 1 203 83 17 17 289 -1 unnamed_device 26.3 MiB 1.78 1000 15203 5165 7372 2666 64.8 MiB 0.12 0.00 2.9155 -100.463 -2.9155 2.9155 0.92 0.000486505 0.000443383 0.0410309 0.0372276 34 2702 23 6.89349e+06 281877 618332. 2139.56 1.87 0.148838 0.129774 25762 151098 -1 2189 24 1668 2295 177165 39693 3.10515 3.10515 -119.924 -3.10515 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0249192 0.021872 131 60 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_071.v common 7.85 vpr 64.86 MiB -1 -1 0.14 20456 1 0.03 -1 -1 34012 -1 -1 26 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 30 32 329 273 1 213 88 17 17 289 -1 unnamed_device 26.3 MiB 2.39 1176 12373 3727 7538 1108 64.9 MiB 0.10 0.00 3.0363 -92.5923 -3.0363 3.0363 0.97 0.000473946 0.000432056 0.0316512 0.0288082 34 2745 45 6.89349e+06 366440 618332. 2139.56 2.25 0.170859 0.149688 25762 151098 -1 2291 20 1389 2033 159759 35231 2.97821 2.97821 -109.878 -2.97821 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.0219403 0.0194123 142 52 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_072.v common 6.52 vpr 64.48 MiB -1 -1 0.16 20412 1 0.03 -1 -1 33780 -1 -1 23 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 28 32 277 229 1 171 83 17 17 289 -1 unnamed_device 26.1 MiB 1.66 887 13583 5697 6722 1164 64.5 MiB 0.09 0.00 3.50369 -90.3791 -3.50369 3.50369 0.94 0.000416476 0.000377862 0.0333537 0.0303302 36 1956 18 6.89349e+06 324158 648988. 2245.63 1.72 0.122605 0.106885 26050 158493 -1 1526 20 1059 1719 96726 23337 3.70146 3.70146 -101.634 -3.70146 0 0 828058. 2865.25 0.31 0.05 0.14 -1 -1 0.31 0.018048 0.0159176 119 20 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_073.v common 10.13 vpr 64.83 MiB -1 -1 0.15 20352 1 0.03 -1 -1 33820 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 30 32 317 269 1 202 83 17 17 289 -1 unnamed_device 26.3 MiB 2.79 1085 14663 4703 7768 2192 64.8 MiB 0.12 0.00 3.54502 -110.802 -3.54502 3.54502 0.97 0.000456049 0.000415576 0.0389052 0.0354138 36 2551 21 6.89349e+06 295971 648988. 2245.63 4.03 0.191689 0.167054 26050 158493 -1 2203 20 1682 2370 195612 40702 3.68864 3.68864 -133.051 -3.68864 0 0 828058. 2865.25 0.33 0.07 0.14 -1 -1 0.33 0.0214228 0.0189379 130 58 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_074.v common 8.34 vpr 64.71 MiB -1 -1 0.16 20844 1 0.03 -1 -1 33756 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 32 32 335 282 1 222 84 17 17 289 -1 unnamed_device 26.1 MiB 2.44 1246 9783 2582 5736 1465 64.7 MiB 0.09 0.00 3.03554 -108.938 -3.03554 3.03554 0.99 0.000466707 0.000423903 0.0274906 0.0250641 34 3052 41 6.89349e+06 281877 618332. 2139.56 2.57 0.137574 0.120504 25762 151098 -1 2577 21 1912 2633 236169 50591 3.09105 3.09105 -128.22 -3.09105 0 0 787024. 2723.27 0.31 0.08 0.14 -1 -1 0.31 0.0219815 0.0194632 138 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_075.v common 5.06 vpr 64.66 MiB -1 -1 0.15 20204 1 0.03 -1 -1 33732 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66216 31 32 293 230 1 175 94 17 17 289 -1 unnamed_device 26.2 MiB 0.76 1068 17134 4658 10392 2084 64.7 MiB 0.14 0.00 3.69462 -109.783 -3.69462 3.69462 0.91 0.000459736 0.000417642 0.039119 0.0354728 32 2745 25 6.89349e+06 436909 586450. 2029.24 1.11 0.101611 0.0893276 25474 144626 -1 2182 20 1365 2592 193748 43413 3.7948 3.7948 -125.086 -3.7948 0 0 744469. 2576.02 0.29 0.07 0.14 -1 -1 0.29 0.0196465 0.0172299 129 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_076.v common 7.57 vpr 64.71 MiB -1 -1 0.15 20748 1 0.03 -1 -1 34020 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 32 32 350 275 1 214 87 17 17 289 -1 unnamed_device 26.2 MiB 2.24 1013 14487 4470 7256 2761 64.7 MiB 0.12 0.00 3.78342 -121.532 -3.78342 3.78342 0.91 0.000502758 0.000459433 0.0398568 0.0364458 34 3268 26 6.89349e+06 324158 618332. 2139.56 2.20 0.170384 0.150119 25762 151098 -1 2437 21 1852 2810 241205 53301 4.10436 4.10436 -147.681 -4.10436 0 0 787024. 2723.27 0.30 0.08 0.13 -1 -1 0.30 0.0239865 0.0211035 148 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_077.v common 8.70 vpr 65.12 MiB -1 -1 0.15 20524 1 0.03 -1 -1 33912 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 385 308 1 244 91 17 17 289 -1 unnamed_device 26.7 MiB 2.12 1402 15391 5331 8291 1769 65.1 MiB 0.15 0.00 4.36021 -136.876 -4.36021 4.36021 0.92 0.000527155 0.00047874 0.0432255 0.0395019 34 3562 48 6.89349e+06 380534 618332. 2139.56 3.29 0.204674 0.180691 25762 151098 -1 2809 23 2144 2987 379566 121941 4.44565 4.44565 -159.116 -4.44565 0 0 787024. 2723.27 0.31 0.12 0.13 -1 -1 0.31 0.0282927 0.02511 164 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_078.v common 9.05 vpr 64.98 MiB -1 -1 0.16 20520 1 0.03 -1 -1 33612 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 32 32 387 309 1 248 90 17 17 289 -1 unnamed_device 26.5 MiB 2.28 1383 12753 3253 7703 1797 65.0 MiB 0.13 0.00 3.66297 -123.421 -3.66297 3.66297 0.96 0.000556675 0.000507239 0.0372182 0.0338495 36 3133 31 6.89349e+06 366440 648988. 2245.63 3.45 0.194884 0.171714 26050 158493 -1 2800 17 1645 2409 188156 40122 3.6625 3.6625 -139.69 -3.6625 0 0 828058. 2865.25 0.33 0.07 0.14 -1 -1 0.33 0.0238237 0.0212197 164 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_079.v common 6.94 vpr 64.15 MiB -1 -1 0.16 20272 1 0.03 -1 -1 33736 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65688 30 32 272 232 1 176 83 17 17 289 -1 unnamed_device 25.8 MiB 2.16 961 15383 5315 7803 2265 64.1 MiB 0.11 0.00 3.29223 -102.912 -3.29223 3.29223 0.93 0.000431998 0.000389963 0.038421 0.0350016 34 2339 24 6.89349e+06 295971 618332. 2139.56 1.62 0.128929 0.11276 25762 151098 -1 1904 22 1371 1972 157146 35008 3.23721 3.23721 -111.729 -3.23721 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.0193195 0.0169991 112 29 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_080.v common 10.31 vpr 65.07 MiB -1 -1 0.17 20540 1 0.03 -1 -1 33980 -1 -1 26 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 30 32 375 299 1 236 88 17 17 289 -1 unnamed_device 26.6 MiB 2.98 1248 10813 2534 7525 754 65.1 MiB 0.11 0.00 4.46357 -133.845 -4.46357 4.46357 0.94 0.000540176 0.000490626 0.032281 0.0293236 38 2685 22 6.89349e+06 366440 678818. 2348.85 4.02 0.196271 0.169559 26626 170182 -1 2304 23 1673 2398 167871 36823 4.38215 4.38215 -151.569 -4.38215 0 0 902133. 3121.57 0.36 0.07 0.15 -1 -1 0.36 0.0262533 0.0231725 162 58 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_081.v common 7.09 vpr 64.98 MiB -1 -1 0.15 20476 1 0.03 -1 -1 33984 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 32 32 340 270 1 204 87 17 17 289 -1 unnamed_device 26.4 MiB 1.44 987 8535 1959 5883 693 65.0 MiB 0.08 0.00 4.12775 -120.614 -4.12775 4.12775 0.91 0.000481612 0.000438345 0.0237416 0.0215891 34 2883 26 6.89349e+06 324158 618332. 2139.56 2.55 0.126858 0.111781 25762 151098 -1 2274 21 1501 2563 237348 52678 3.90816 3.90816 -133.869 -3.90816 0 0 787024. 2723.27 0.30 0.08 0.13 -1 -1 0.30 0.0233921 0.0206391 139 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_082.v common 7.09 vpr 64.96 MiB -1 -1 0.17 20540 1 0.03 -1 -1 33792 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 31 32 340 275 1 211 86 17 17 289 -1 unnamed_device 26.4 MiB 2.16 1112 7457 1593 5369 495 65.0 MiB 0.08 0.00 3.97284 -116.355 -3.97284 3.97284 0.93 0.000515161 0.000468958 0.0220662 0.0201341 34 2891 31 6.89349e+06 324158 618332. 2139.56 1.74 0.139933 0.121576 25762 151098 -1 2296 23 1705 2538 168455 40249 4.55469 4.55469 -147.076 -4.55469 0 0 787024. 2723.27 0.31 0.07 0.13 -1 -1 0.31 0.0243133 0.0213743 142 43 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_083.v common 8.01 vpr 64.91 MiB -1 -1 0.17 20612 1 0.03 -1 -1 33888 -1 -1 27 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 30 32 377 310 1 241 89 17 17 289 -1 unnamed_device 26.6 MiB 2.35 1409 14741 4394 7895 2452 64.9 MiB 0.13 0.00 3.74362 -115.714 -3.74362 3.74362 0.96 0.000521988 0.000474656 0.0409219 0.0372023 34 3333 50 6.89349e+06 380534 618332. 2139.56 2.33 0.178328 0.156775 25762 151098 -1 2713 18 1798 2634 241905 59575 3.91785 3.91785 -139.433 -3.91785 0 0 787024. 2723.27 0.30 0.08 0.14 -1 -1 0.30 0.0221577 0.0196016 162 78 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_084.v common 9.63 vpr 64.90 MiB -1 -1 0.17 20580 1 0.03 -1 -1 33448 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 32 32 365 294 1 230 87 17 17 289 -1 unnamed_device 26.6 MiB 3.39 1168 12567 3277 8211 1079 64.9 MiB 0.12 0.00 4.53067 -134.342 -4.53067 4.53067 0.98 0.000530955 0.000483246 0.0366762 0.033341 36 2953 42 6.89349e+06 324158 648988. 2245.63 2.87 0.190015 0.167186 26050 158493 -1 2548 21 1927 2846 206600 48193 4.40635 4.40635 -152.47 -4.40635 0 0 828058. 2865.25 0.34 0.08 0.14 -1 -1 0.34 0.0252298 0.0223355 155 54 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_085.v common 9.10 vpr 65.10 MiB -1 -1 0.16 20620 1 0.03 -1 -1 33912 -1 -1 30 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 29 32 378 310 1 247 91 17 17 289 -1 unnamed_device 26.7 MiB 1.94 1324 14575 3657 8994 1924 65.1 MiB 0.13 0.00 3.68595 -113.583 -3.68595 3.68595 0.95 0.000532534 0.000477847 0.039986 0.0361876 36 2925 24 6.89349e+06 422815 648988. 2245.63 3.91 0.194549 0.168693 26050 158493 -1 2574 20 1701 2305 160193 35546 3.6264 3.6264 -127.966 -3.6264 0 0 828058. 2865.25 0.31 0.06 0.15 -1 -1 0.31 0.0234377 0.020649 166 79 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_086.v common 5.38 vpr 64.37 MiB -1 -1 0.15 20168 1 0.03 -1 -1 33696 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65912 32 32 243 205 1 149 81 17 17 289 -1 unnamed_device 25.9 MiB 0.63 856 9181 2604 5846 731 64.4 MiB 0.07 0.00 3.26403 -101.059 -3.26403 3.26403 0.98 0.000383169 0.000348897 0.022671 0.0207186 34 1889 20 6.89349e+06 239595 618332. 2139.56 1.55 0.108808 0.0950698 25762 151098 -1 1697 19 883 1441 108087 24433 2.87996 2.87996 -108.661 -2.87996 0 0 787024. 2723.27 0.30 0.05 0.14 -1 -1 0.30 0.0166559 0.0146552 96 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_087.v common 9.28 vpr 65.07 MiB -1 -1 0.13 20592 1 0.03 -1 -1 33932 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 32 32 373 302 1 241 89 17 17 289 -1 unnamed_device 26.6 MiB 1.90 1340 16127 4634 8947 2546 65.1 MiB 0.14 0.00 4.4438 -137.071 -4.4438 4.4438 0.92 0.000508906 0.000463992 0.0444113 0.0405477 38 2706 21 6.89349e+06 352346 678818. 2348.85 4.15 0.243955 0.213264 26626 170182 -1 2512 21 1668 2399 186102 38958 4.62115 4.62115 -157.766 -4.62115 0 0 902133. 3121.57 0.34 0.07 0.14 -1 -1 0.34 0.0247169 0.0219392 156 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_088.v common 10.04 vpr 65.07 MiB -1 -1 0.16 20872 1 0.03 -1 -1 34052 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 32 32 397 314 1 256 89 17 17 289 -1 unnamed_device 26.6 MiB 3.57 1296 8999 1856 6486 657 65.1 MiB 0.10 0.00 4.41647 -143.96 -4.41647 4.41647 0.97 0.000556847 0.000505563 0.0275307 0.0250836 36 3363 29 6.89349e+06 352346 648988. 2245.63 3.09 0.18693 0.16475 26050 158493 -1 2915 22 2248 3276 277200 59277 4.81268 4.81268 -171.588 -4.81268 0 0 828058. 2865.25 0.33 0.09 0.14 -1 -1 0.33 0.0288398 0.0254638 171 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_089.v common 7.59 vpr 64.49 MiB -1 -1 0.15 20420 1 0.03 -1 -1 34000 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66036 32 32 269 231 1 172 82 17 17 289 -1 unnamed_device 25.9 MiB 2.92 946 12720 3584 7651 1485 64.5 MiB 0.09 0.00 3.14102 -93.6681 -3.14102 3.14102 0.94 0.000413706 0.00037632 0.0311629 0.028334 34 2088 30 6.89349e+06 253689 618332. 2139.56 1.50 0.122745 0.106668 25762 151098 -1 1826 16 854 1159 84461 20727 2.96031 2.96031 -107.038 -2.96031 0 0 787024. 2723.27 0.32 0.04 0.14 -1 -1 0.32 0.0156205 0.0137792 108 26 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_090.v common 4.70 vpr 64.02 MiB -1 -1 0.13 20340 1 0.03 -1 -1 33648 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65552 31 32 245 205 1 153 83 17 17 289 -1 unnamed_device 25.5 MiB 0.68 814 8723 2270 5729 724 64.0 MiB 0.07 0.00 3.20583 -100.243 -3.20583 3.20583 0.92 0.000361853 0.00032985 0.0202288 0.0184575 32 2107 23 6.89349e+06 281877 586450. 2029.24 0.96 0.0692526 0.0606462 25474 144626 -1 1818 20 1176 1921 152303 34818 3.04631 3.04631 -115.125 -3.04631 0 0 744469. 2576.02 0.29 0.05 0.13 -1 -1 0.29 0.0168682 0.0148134 99 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_091.v common 7.44 vpr 64.79 MiB -1 -1 0.15 20628 1 0.03 -1 -1 33788 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66348 32 32 348 274 1 215 87 17 17 289 -1 unnamed_device 26.2 MiB 2.24 1127 10647 2738 6893 1016 64.8 MiB 0.10 0.00 3.58702 -118.784 -3.58702 3.58702 0.94 0.00047364 0.000431581 0.0290139 0.026452 34 2942 22 6.89349e+06 324158 618332. 2139.56 1.96 0.154355 0.135272 25762 151098 -1 2394 19 1778 2537 195157 43447 3.73055 3.73055 -137.709 -3.73055 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.023494 0.0208426 145 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_092.v common 7.05 vpr 64.85 MiB -1 -1 0.16 20500 1 0.03 -1 -1 33884 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 356 289 1 224 87 17 17 289 -1 unnamed_device 26.3 MiB 2.05 1223 13527 3789 7324 2414 64.9 MiB 0.11 0.00 3.87394 -119.268 -3.87394 3.87394 0.92 0.000506359 0.000464809 0.0368284 0.0335894 34 3200 23 6.89349e+06 324158 618332. 2139.56 1.84 0.159856 0.140547 25762 151098 -1 2573 23 1655 2422 199408 44640 4.10759 4.10759 -140.261 -4.10759 0 0 787024. 2723.27 0.30 0.08 0.13 -1 -1 0.30 0.0260298 0.0230274 149 53 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_093.v common 5.65 vpr 64.86 MiB -1 -1 0.15 20680 1 0.03 -1 -1 33856 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 32 32 349 260 1 204 100 17 17 289 -1 unnamed_device 26.2 MiB 0.77 1215 19356 6311 10204 2841 64.9 MiB 0.17 0.00 4.04336 -119.003 -4.04336 4.04336 0.95 0.000528387 0.000473749 0.0456573 0.041421 28 3296 31 6.89349e+06 507378 531479. 1839.03 1.63 0.140806 0.125189 24610 126494 -1 2646 23 1967 3523 284786 61075 4.27994 4.27994 -147.011 -4.27994 0 0 648988. 2245.63 0.26 0.10 0.11 -1 -1 0.26 0.0281187 0.0247291 157 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_094.v common 6.92 vpr 64.40 MiB -1 -1 0.16 20392 1 0.03 -1 -1 33884 -1 -1 25 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65944 30 32 316 264 1 208 87 17 17 289 -1 unnamed_device 25.9 MiB 1.72 1094 16407 5366 8502 2539 64.4 MiB 0.13 0.00 2.95499 -90.7028 -2.95499 2.95499 0.95 0.000455124 0.000415117 0.0402022 0.0365645 34 2470 23 6.89349e+06 352346 618332. 2139.56 1.61 0.137664 0.120226 25762 151098 -1 2048 21 1575 2340 148123 35732 3.00456 3.00456 -104.686 -3.00456 0 0 787024. 2723.27 0.32 0.06 0.14 -1 -1 0.32 0.0218414 0.0192671 136 47 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_095.v common 7.89 vpr 64.57 MiB -1 -1 0.16 20324 1 0.03 -1 -1 34236 -1 -1 20 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66120 27 32 255 219 1 162 79 17 17 289 -1 unnamed_device 26.0 MiB 1.62 801 13261 5556 6838 867 64.6 MiB 0.09 0.00 3.41829 -92.4304 -3.41829 3.41829 0.98 0.000401327 0.000365789 0.0319765 0.0291096 30 2135 25 6.89349e+06 281877 556674. 1926.21 3.07 0.153115 0.134533 25186 138497 -1 1582 23 942 1404 107247 24248 3.1524 3.1524 -105.593 -3.1524 0 0 706193. 2443.58 0.28 0.05 0.13 -1 -1 0.28 0.0187613 0.0163967 106 26 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_096.v common 11.32 vpr 65.16 MiB -1 -1 0.17 20660 1 0.03 -1 -1 33764 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66724 32 32 421 327 1 271 91 17 17 289 -1 unnamed_device 26.7 MiB 3.34 1526 18247 5360 10462 2425 65.2 MiB 0.17 0.00 3.70801 -120.691 -3.70801 3.70801 0.94 0.000564683 0.000508778 0.0539288 0.0491061 36 3772 47 6.89349e+06 380534 648988. 2245.63 4.60 0.275007 0.240832 26050 158493 -1 3131 21 2006 3106 233002 50570 4.16595 4.16595 -145.67 -4.16595 0 0 828058. 2865.25 0.31 0.08 0.15 -1 -1 0.31 0.0270213 0.0238792 185 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_097.v common 7.72 vpr 65.07 MiB -1 -1 0.16 20564 1 0.03 -1 -1 33980 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 31 32 365 296 1 233 87 17 17 289 -1 unnamed_device 26.7 MiB 2.23 1045 17175 5962 8664 2549 65.1 MiB 0.15 0.00 4.58387 -130.323 -4.58387 4.58387 0.94 0.000506729 0.000463241 0.0481233 0.043928 34 3313 29 6.89349e+06 338252 618332. 2139.56 2.20 0.191272 0.169086 25762 151098 -1 2383 21 1937 2815 197030 46528 4.52998 4.52998 -145.998 -4.52998 0 0 787024. 2723.27 0.31 0.08 0.13 -1 -1 0.31 0.0251521 0.0222683 155 60 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_098.v common 7.27 vpr 64.51 MiB -1 -1 0.15 20744 1 0.03 -1 -1 33756 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66060 32 32 331 280 1 221 85 17 17 289 -1 unnamed_device 26.0 MiB 2.24 1152 11617 3158 7466 993 64.5 MiB 0.10 0.00 3.42429 -116.689 -3.42429 3.42429 0.94 0.000480645 0.000439489 0.0323762 0.0295721 34 2916 21 6.89349e+06 295971 618332. 2139.56 1.79 0.146048 0.128214 25762 151098 -1 2448 23 1773 2307 192931 42238 3.7426 3.7426 -141.52 -3.7426 0 0 787024. 2723.27 0.30 0.07 0.14 -1 -1 0.30 0.0231235 0.0202441 137 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_099.v common 8.16 vpr 64.89 MiB -1 -1 0.15 20596 1 0.03 -1 -1 34076 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 32 32 326 263 1 203 85 17 17 289 -1 unnamed_device 26.4 MiB 2.34 1083 13291 3890 6982 2419 64.9 MiB 0.12 0.00 4.09751 -117.709 -4.09751 4.09751 0.98 0.000541305 0.000496219 0.0376711 0.0344457 34 2925 49 6.89349e+06 295971 618332. 2139.56 2.51 0.189874 0.167879 25762 151098 -1 2273 19 1326 1968 162803 36288 3.9857 3.9857 -137.085 -3.9857 0 0 787024. 2723.27 0.32 0.07 0.13 -1 -1 0.32 0.0221378 0.0196706 135 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_100.v common 7.41 vpr 64.60 MiB -1 -1 0.17 20872 1 0.03 -1 -1 33852 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66148 31 32 373 294 1 231 89 17 17 289 -1 unnamed_device 26.2 MiB 2.14 1187 14939 4277 8596 2066 64.6 MiB 0.14 0.00 3.52995 -104.612 -3.52995 3.52995 0.94 0.000532332 0.000484604 0.0430428 0.0391437 34 3256 35 6.89349e+06 366440 618332. 2139.56 1.99 0.162936 0.143646 25762 151098 -1 2552 19 1981 3029 218597 49196 3.8087 3.8087 -128.894 -3.8087 0 0 787024. 2723.27 0.30 0.08 0.14 -1 -1 0.30 0.0232977 0.0205036 163 46 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_101.v common 7.32 vpr 64.93 MiB -1 -1 0.17 20816 1 0.03 -1 -1 33580 -1 -1 24 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 30 32 325 268 1 210 86 17 17 289 -1 unnamed_device 26.3 MiB 2.13 1234 14450 4387 8487 1576 64.9 MiB 0.13 0.00 3.48179 -99.3124 -3.48179 3.48179 0.96 0.000478947 0.000438105 0.0386764 0.0353461 34 2912 34 6.89349e+06 338252 618332. 2139.56 1.91 0.163933 0.143898 25762 151098 -1 2360 15 1255 2027 135242 31031 3.6096 3.6096 -117.325 -3.6096 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.01816 0.0161855 140 46 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_102.v common 9.13 vpr 64.91 MiB -1 -1 0.17 20572 1 0.03 -1 -1 33932 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 350 275 1 215 86 17 17 289 -1 unnamed_device 26.3 MiB 2.85 1282 16151 5835 7649 2667 64.9 MiB 0.14 0.00 3.88598 -128.15 -3.88598 3.88598 0.97 0.000509025 0.000462065 0.0458124 0.0417864 36 3129 31 6.89349e+06 310065 648988. 2245.63 2.93 0.190137 0.16826 26050 158493 -1 2599 19 1639 2566 221216 47236 4.13269 4.13269 -148.311 -4.13269 0 0 828058. 2865.25 0.32 0.08 0.14 -1 -1 0.32 0.0235636 0.020927 148 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_103.v common 9.83 vpr 64.96 MiB -1 -1 0.17 20556 1 0.03 -1 -1 33836 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 32 32 386 307 1 246 90 17 17 289 -1 unnamed_device 26.5 MiB 2.97 1373 15969 4551 9068 2350 65.0 MiB 0.15 0.00 3.31614 -114.102 -3.31614 3.31614 0.93 0.000522425 0.000474093 0.0444939 0.0404887 34 3325 32 6.89349e+06 366440 618332. 2139.56 3.54 0.252358 0.220272 25762 151098 -1 2588 20 1772 2527 182006 40918 3.31711 3.31711 -130.405 -3.31711 0 0 787024. 2723.27 0.31 0.07 0.13 -1 -1 0.31 0.0252116 0.0223085 167 59 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_104.v common 7.52 vpr 64.50 MiB -1 -1 0.15 20104 1 0.03 -1 -1 33944 -1 -1 20 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66044 29 32 269 229 1 173 81 17 17 289 -1 unnamed_device 25.9 MiB 1.49 748 11456 3180 6534 1742 64.5 MiB 0.09 0.00 3.40033 -100.227 -3.40033 3.40033 0.96 0.000367852 0.000330665 0.0289684 0.0264332 28 2030 19 6.89349e+06 281877 531479. 1839.03 2.89 0.1472 0.128869 24610 126494 -1 1724 20 1388 1861 128465 30715 3.38931 3.38931 -118.625 -3.38931 0 0 648988. 2245.63 0.27 0.05 0.11 -1 -1 0.27 0.0178104 0.0157646 110 28 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_105.v common 7.37 vpr 64.45 MiB -1 -1 0.14 20368 1 0.03 -1 -1 34040 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65992 32 32 310 266 1 200 84 17 17 289 -1 unnamed_device 26.0 MiB 1.38 1092 14541 4346 8272 1923 64.4 MiB 0.12 0.00 3.42429 -108.008 -3.42429 3.42429 0.98 0.000455121 0.000414242 0.0378091 0.0343291 36 2558 29 6.89349e+06 281877 648988. 2245.63 2.65 0.16403 0.144476 26050 158493 -1 2176 22 1646 2293 194311 41180 3.5422 3.5422 -126.588 -3.5422 0 0 828058. 2865.25 0.34 0.07 0.14 -1 -1 0.34 0.0223945 0.0196997 125 55 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_106.v common 6.70 vpr 64.77 MiB -1 -1 0.16 20180 1 0.03 -1 -1 33860 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 31 32 326 261 1 204 85 17 17 289 -1 unnamed_device 26.3 MiB 1.72 1201 14221 4217 8174 1830 64.8 MiB 0.12 0.00 3.81078 -114.366 -3.81078 3.81078 0.98 0.000480549 0.000437879 0.0390503 0.0355981 34 2702 21 6.89349e+06 310065 618332. 2139.56 1.66 0.147392 0.129089 25762 151098 -1 2290 21 1557 2500 172448 38990 3.49076 3.49076 -126.443 -3.49076 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0232234 0.0205084 137 29 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_107.v common 8.04 vpr 64.62 MiB -1 -1 0.15 20100 1 0.03 -1 -1 33736 -1 -1 19 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 29 32 262 224 1 168 80 17 17 289 -1 unnamed_device 26.1 MiB 3.26 760 9540 2523 5670 1347 64.6 MiB 0.07 0.00 3.36962 -90.8618 -3.36962 3.36962 0.97 0.000394709 0.000358811 0.0238074 0.0217253 34 2076 23 6.89349e+06 267783 618332. 2139.56 1.57 0.0961953 0.0840936 25762 151098 -1 1703 17 992 1339 100198 24324 2.9715 2.9715 -102.07 -2.9715 0 0 787024. 2723.27 0.32 0.05 0.14 -1 -1 0.32 0.0167383 0.0148499 108 25 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_108.v common 6.89 vpr 64.55 MiB -1 -1 0.15 20260 1 0.03 -1 -1 33836 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 32 32 278 238 1 182 82 17 17 289 -1 unnamed_device 26.2 MiB 2.20 936 7736 1970 5270 496 64.5 MiB 0.06 0.00 3.26703 -103.618 -3.26703 3.26703 0.94 0.000456129 0.000415943 0.0205 0.0187102 34 2159 22 6.89349e+06 253689 618332. 2139.56 1.55 0.11487 0.0998526 25762 151098 -1 1899 21 1352 1954 155470 34896 3.04016 3.04016 -116.209 -3.04016 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.0189733 0.0166931 114 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_109.v common 9.37 vpr 65.07 MiB -1 -1 0.17 20380 1 0.03 -1 -1 33988 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 31 32 373 300 1 236 89 17 17 289 -1 unnamed_device 26.7 MiB 1.89 1199 10781 2506 7373 902 65.1 MiB 0.10 0.00 3.60497 -116.633 -3.60497 3.60497 0.97 0.000558284 0.000504586 0.0308531 0.0281257 36 2939 25 6.89349e+06 366440 648988. 2245.63 4.17 0.222861 0.193657 26050 158493 -1 2505 22 2219 3020 244204 53571 3.64625 3.64625 -136.582 -3.64625 0 0 828058. 2865.25 0.32 0.08 0.15 -1 -1 0.32 0.0255533 0.0225245 160 60 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_110.v common 6.25 vpr 64.58 MiB -1 -1 0.15 20476 1 0.03 -1 -1 33556 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 31 32 265 230 1 175 80 17 17 289 -1 unnamed_device 26.0 MiB 2.12 871 10400 2220 7543 637 64.6 MiB 0.08 0.00 2.93195 -93.9974 -2.93195 2.93195 0.94 0.000416817 0.000378178 0.0265377 0.0242012 30 2201 24 6.89349e+06 239595 556674. 1926.21 1.03 0.082695 0.0725098 25186 138497 -1 1894 22 1199 1661 108169 24844 3.03066 3.03066 -110.59 -3.03066 0 0 706193. 2443.58 0.28 0.05 0.13 -1 -1 0.28 0.0195316 0.0171219 108 30 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_111.v common 7.13 vpr 64.93 MiB -1 -1 0.16 20728 1 0.03 -1 -1 33908 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 32 32 349 286 1 221 86 17 17 289 -1 unnamed_device 26.4 MiB 2.06 1253 14261 4543 7356 2362 64.9 MiB 0.12 0.00 3.27699 -103.618 -3.27699 3.27699 0.98 0.000503353 0.000458349 0.0399821 0.0364855 34 3082 24 6.89349e+06 310065 618332. 2139.56 1.74 0.163907 0.143884 25762 151098 -1 2486 18 1375 1978 146636 33095 3.6346 3.6346 -126.36 -3.6346 0 0 787024. 2723.27 0.32 0.06 0.14 -1 -1 0.32 0.022121 0.0196394 146 54 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_112.v common 7.63 vpr 65.04 MiB -1 -1 0.16 20488 1 0.03 -1 -1 33740 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66604 31 32 396 325 1 259 89 17 17 289 -1 unnamed_device 26.6 MiB 2.27 1336 15137 4686 8668 1783 65.0 MiB 0.14 0.00 3.92778 -127.361 -3.92778 3.92778 0.94 0.000539367 0.000491665 0.0437692 0.0399116 36 3194 28 6.89349e+06 366440 648988. 2245.63 2.05 0.184301 0.162447 26050 158493 -1 2690 20 2260 3258 227778 51151 4.15979 4.15979 -152.236 -4.15979 0 0 828058. 2865.25 0.32 0.08 0.14 -1 -1 0.32 0.024677 0.0218154 170 87 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_113.v common 9.93 vpr 64.80 MiB -1 -1 0.15 20348 1 0.03 -1 -1 33248 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 32 32 303 262 1 200 82 17 17 289 -1 unnamed_device 26.3 MiB 2.79 1074 8804 2303 5981 520 64.8 MiB 0.08 0.00 3.0513 -97.8122 -3.0513 3.0513 0.99 0.00044469 0.000398254 0.0239302 0.0217823 36 2367 38 6.89349e+06 253689 648988. 2245.63 3.91 0.174747 0.150717 26050 158493 -1 2024 22 1575 2160 150962 33777 2.80696 2.80696 -110.178 -2.80696 0 0 828058. 2865.25 0.34 0.06 0.14 -1 -1 0.34 0.0217944 0.0192035 124 54 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_114.v common 8.53 vpr 64.65 MiB -1 -1 0.15 20272 1 0.03 -1 -1 33676 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66204 32 32 290 244 1 177 82 17 17 289 -1 unnamed_device 26.3 MiB 1.31 871 8626 2091 6236 299 64.7 MiB 0.08 0.00 3.24503 -100.934 -3.24503 3.24503 0.98 0.000453379 0.000413781 0.0233702 0.0213386 36 2166 22 6.89349e+06 253689 648988. 2245.63 3.97 0.163194 0.141727 26050 158493 -1 1866 19 1156 1726 126877 30580 3.23286 3.23286 -119.86 -3.23286 0 0 828058. 2865.25 0.32 0.05 0.14 -1 -1 0.32 0.0191706 0.0169522 115 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_115.v common 6.77 vpr 64.77 MiB -1 -1 0.16 20624 1 0.03 -1 -1 33628 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 32 32 318 257 1 198 86 17 17 289 -1 unnamed_device 26.2 MiB 1.96 1058 13694 3846 7638 2210 64.8 MiB 0.11 0.00 3.98738 -115.138 -3.98738 3.98738 0.94 0.00045413 0.000415172 0.0359257 0.0327882 34 2657 23 6.89349e+06 310065 618332. 2139.56 1.61 0.140431 0.12263 25762 151098 -1 2230 20 1386 1991 145983 33516 3.72976 3.72976 -127.704 -3.72976 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.0206248 0.0181071 133 27 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_116.v common 6.93 vpr 64.90 MiB -1 -1 0.15 20692 1 0.03 -1 -1 33736 -1 -1 25 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 29 32 324 268 1 207 86 17 17 289 -1 unnamed_device 26.3 MiB 2.20 1151 13316 3581 7864 1871 64.9 MiB 0.11 0.00 3.15468 -91.5834 -3.15468 3.15468 0.94 0.000478923 0.000439396 0.0355045 0.0324828 34 2501 22 6.89349e+06 352346 618332. 2139.56 1.53 0.139181 0.121696 25762 151098 -1 2189 21 1277 1825 134297 30600 3.19991 3.19991 -108.908 -3.19991 0 0 787024. 2723.27 0.31 0.06 0.13 -1 -1 0.31 0.0225263 0.0199148 138 49 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_117.v common 8.62 vpr 65.16 MiB -1 -1 0.17 20488 1 0.03 -1 -1 33332 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66724 32 32 393 312 1 243 88 17 17 289 -1 unnamed_device 26.7 MiB 2.31 1226 12373 3452 8177 744 65.2 MiB 0.12 0.00 4.55604 -146.357 -4.55604 4.55604 0.98 0.000583973 0.000532775 0.0379112 0.0345587 36 3152 44 6.89349e+06 338252 648988. 2245.63 2.92 0.204545 0.179644 26050 158493 -1 2741 22 1936 3026 226289 51486 4.69519 4.69519 -168.908 -4.69519 0 0 828058. 2865.25 0.35 0.09 0.14 -1 -1 0.35 0.0278602 0.0246033 166 62 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_118.v common 5.12 vpr 64.06 MiB -1 -1 0.14 20184 1 0.03 -1 -1 33712 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65600 31 32 229 197 1 143 80 17 17 289 -1 unnamed_device 25.6 MiB 0.64 760 11432 3583 5618 2231 64.1 MiB 0.08 0.00 2.85355 -89.4893 -2.85355 2.85355 0.94 0.00038833 0.000353428 0.0264942 0.0241939 30 1827 19 6.89349e+06 239595 556674. 1926.21 0.98 0.0774989 0.0683602 25186 138497 -1 1472 21 679 1045 63861 15096 2.55636 2.55636 -98.7819 -2.55636 0 0 706193. 2443.58 0.28 0.04 0.12 -1 -1 0.28 0.017647 0.0155761 92 -1 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_119.v common 7.74 vpr 64.98 MiB -1 -1 0.16 20540 1 0.03 -1 -1 33760 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66536 32 32 412 334 1 269 91 17 17 289 -1 unnamed_device 26.5 MiB 2.16 1395 11719 3171 7242 1306 65.0 MiB 0.12 0.00 4.61883 -140.281 -4.61883 4.61883 0.93 0.000571314 0.000517333 0.0338417 0.0307112 36 3234 28 6.89349e+06 380534 648988. 2245.63 2.30 0.168204 0.146478 26050 158493 -1 2635 23 1967 2712 209662 45288 5.02024 5.02024 -171.248 -5.02024 0 0 828058. 2865.25 0.33 0.09 0.14 -1 -1 0.33 0.0307617 0.0271689 175 87 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_120.v common 8.37 vpr 65.11 MiB -1 -1 0.15 20596 1 0.03 -1 -1 33744 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 32 32 376 318 1 259 87 17 17 289 -1 unnamed_device 26.7 MiB 2.56 1317 16023 5065 8713 2245 65.1 MiB 0.14 0.00 3.86068 -135.313 -3.86068 3.86068 0.94 0.000530038 0.000484235 0.0454628 0.0415039 36 3134 23 6.89349e+06 324158 648988. 2245.63 2.48 0.187308 0.165634 26050 158493 -1 2633 22 2407 3016 249715 53596 4.23489 4.23489 -160.086 -4.23489 0 0 828058. 2865.25 0.33 0.09 0.14 -1 -1 0.33 0.027915 0.0247842 160 93 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_121.v common 7.29 vpr 64.85 MiB -1 -1 0.16 20536 1 0.03 -1 -1 33980 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 360 293 1 227 86 17 17 289 -1 unnamed_device 26.2 MiB 2.23 1278 16907 5618 9461 1828 64.8 MiB 0.15 0.00 3.34918 -108.188 -3.34918 3.34918 0.94 0.000513289 0.000466847 0.046561 0.0423952 34 3145 24 6.89349e+06 310065 618332. 2139.56 1.81 0.17184 0.1508 25762 151098 -1 2486 20 1440 1940 165903 35802 3.41336 3.41336 -126.588 -3.41336 0 0 787024. 2723.27 0.31 0.07 0.13 -1 -1 0.31 0.0241385 0.021367 152 57 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_122.v common 8.47 vpr 65.16 MiB -1 -1 0.17 20532 1 0.03 -1 -1 34064 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 32 32 396 299 1 241 90 17 17 289 -1 unnamed_device 26.7 MiB 2.92 1239 12552 3723 6357 2472 65.2 MiB 0.13 0.00 4.8408 -145.59 -4.8408 4.8408 0.99 0.000543263 0.000492553 0.0378975 0.0345616 34 3426 29 6.89349e+06 366440 618332. 2139.56 2.13 0.18374 0.161361 25762 151098 -1 2706 21 2277 3549 290634 63186 4.72775 4.72775 -158.843 -4.72775 0 0 787024. 2723.27 0.32 0.10 0.14 -1 -1 0.32 0.0283461 0.0250897 172 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_123.v common 5.54 vpr 64.36 MiB -1 -1 0.14 20608 1 0.03 -1 -1 33436 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65908 30 32 224 207 1 138 77 17 17 289 -1 unnamed_device 25.9 MiB 0.99 755 10020 3028 5884 1108 64.4 MiB 0.07 0.00 2.51156 -81.974 -2.51156 2.51156 0.95 0.000346649 0.000316076 0.0232262 0.0212137 34 1782 24 6.89349e+06 211408 618332. 2139.56 1.43 0.0827624 0.0721407 25762 151098 -1 1552 18 811 1061 90999 20069 2.36421 2.36421 -94.9409 -2.36421 0 0 787024. 2723.27 0.32 0.04 0.14 -1 -1 0.32 0.0149198 0.0131717 82 29 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_124.v common 6.24 vpr 64.73 MiB -1 -1 0.15 20368 1 0.03 -1 -1 33732 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 30 32 286 239 1 176 82 17 17 289 -1 unnamed_device 26.3 MiB 1.36 943 12364 4183 6677 1504 64.7 MiB 0.10 0.00 3.72389 -116.987 -3.72389 3.72389 0.98 0.000441984 0.000402275 0.0318294 0.0290072 34 2196 23 6.89349e+06 281877 618332. 2139.56 1.60 0.13078 0.114201 25762 151098 -1 1914 21 1122 1660 139718 30057 3.5289 3.5289 -129.793 -3.5289 0 0 787024. 2723.27 0.33 0.06 0.14 -1 -1 0.33 0.0208245 0.0183758 119 29 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_125.v common 9.63 vpr 64.48 MiB -1 -1 0.15 20348 1 0.03 -1 -1 33760 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 32 32 296 247 1 187 82 17 17 289 -1 unnamed_device 26.1 MiB 2.12 992 12898 4263 6273 2362 64.5 MiB 0.11 0.00 3.40529 -111.019 -3.40529 3.40529 0.95 0.000435931 0.00039642 0.0344582 0.0313074 36 2719 33 6.89349e+06 253689 648988. 2245.63 4.31 0.192433 0.167765 26050 158493 -1 2195 20 1407 2492 190629 41898 3.512 3.512 -131.705 -3.512 0 0 828058. 2865.25 0.32 0.07 0.14 -1 -1 0.32 0.0204006 0.0181103 120 31 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_126.v common 5.86 vpr 64.30 MiB -1 -1 0.14 20144 1 0.03 -1 -1 33712 -1 -1 21 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65840 25 32 216 194 1 138 78 17 17 289 -1 unnamed_device 25.8 MiB 1.29 634 11366 4025 4802 2539 64.3 MiB 0.07 0.00 2.8908 -71.862 -2.8908 2.8908 0.93 0.000338268 0.00030769 0.0251105 0.0228529 34 1622 25 6.89349e+06 295971 618332. 2139.56 1.44 0.0986347 0.0853086 25762 151098 -1 1361 21 827 1261 86707 21080 2.97146 2.97146 -82.4196 -2.97146 0 0 787024. 2723.27 0.30 0.04 0.14 -1 -1 0.30 0.0156244 0.0136772 92 19 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_127.v common 10.46 vpr 64.91 MiB -1 -1 0.16 20420 1 0.03 -1 -1 33940 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 32 32 376 307 1 242 87 17 17 289 -1 unnamed_device 26.5 MiB 2.67 1431 16407 5046 9207 2154 64.9 MiB 0.16 0.00 3.47055 -111.327 -3.47055 3.47055 0.95 0.000518285 0.000471877 0.0474259 0.0431758 36 3671 26 6.89349e+06 324158 648988. 2245.63 4.45 0.24247 0.212893 26050 158493 -1 2906 19 1915 2856 224024 47007 3.70535 3.70535 -135.787 -3.70535 0 0 828058. 2865.25 0.33 0.08 0.14 -1 -1 0.33 0.0240607 0.0213422 161 69 -1 -1 -1 -1 -fixed_k6_frac_uripple_N8_22nm.xml mult_128.v common 8.33 vpr 65.00 MiB -1 -1 0.16 20540 1 0.03 -1 -1 34048 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:12 gh-actions-runner-vtr-auto-spawned3 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 31 32 409 331 1 264 92 17 17 289 -1 unnamed_device 26.5 MiB 2.59 1295 14168 4435 7120 2613 65.0 MiB 0.13 0.00 3.87458 -125.043 -3.87458 3.87458 1.00 0.000539437 0.000488516 0.0405004 0.0367629 34 3670 23 6.89349e+06 408721 618332. 2139.56 2.30 0.181462 0.159365 25762 151098 -1 2825 26 2420 3378 281049 60817 4.47449 4.47449 -159.389 -4.47449 0 0 787024. 2723.27 0.31 0.11 0.13 -1 -1 0.31 0.0340305 0.0299541 179 86 -1 -1 -1 -1 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_001.v common 8.75 vpr 64.40 MiB -1 -1 0.23 20820 14 0.32 -1 -1 36636 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65948 32 32 277 309 1 204 91 17 17 289 -1 unnamed_device 25.9 MiB 0.50 1305 9475 2289 6457 729 64.4 MiB 0.08 0.00 6.52936 -137.86 -6.52936 6.52936 0.95 0.000654721 0.000591261 0.0338329 0.0306193 36 3243 30 6.55708e+06 325485 612192. 2118.31 4.56 0.252899 0.222039 22750 144809 -1 2825 19 1250 3824 208242 47961 6.8823 6.8823 -156.428 -6.8823 0 0 782063. 2706.10 0.34 0.09 0.15 -1 -1 0.34 0.0342584 0.0309298 183 182 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_002.v common 7.75 vpr 64.78 MiB -1 -1 0.25 21092 14 0.36 -1 -1 36388 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 30 32 272 304 1 210 93 17 17 289 -1 unnamed_device 26.2 MiB 0.62 1351 11223 2638 7227 1358 64.8 MiB 0.10 0.00 6.73056 -133.153 -6.73056 6.73056 0.99 0.000705225 0.000643428 0.0391215 0.035697 28 4036 50 6.55708e+06 373705 500653. 1732.36 3.06 0.18859 0.168208 21310 115450 -1 3000 51 2454 7991 1075572 565248 7.01276 7.01276 -153.063 -7.01276 0 0 612192. 2118.31 0.28 0.45 0.11 -1 -1 0.28 0.0828925 0.0743964 184 181 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_003.v common 6.26 vpr 64.69 MiB -1 -1 0.21 20404 11 0.28 -1 -1 36492 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66240 32 32 280 312 1 205 90 17 17 289 -1 unnamed_device 26.1 MiB 0.41 1367 5919 1179 4458 282 64.7 MiB 0.06 0.00 5.78058 -118.397 -5.78058 5.78058 0.99 0.000651119 0.000584191 0.0229667 0.0208258 34 3428 24 6.55708e+06 313430 585099. 2024.56 2.21 0.155841 0.137742 22462 138074 -1 2978 20 1374 4580 249627 58201 6.06278 6.06278 -137.308 -6.06278 0 0 742403. 2568.87 0.31 0.09 0.14 -1 -1 0.31 0.0332583 0.029629 186 185 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_004.v common 9.35 vpr 64.84 MiB -1 -1 0.21 20680 12 0.41 -1 -1 36444 -1 -1 30 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 29 32 275 307 1 205 91 17 17 289 -1 unnamed_device 26.5 MiB 0.68 1323 6415 1209 4650 556 64.8 MiB 0.07 0.00 6.54924 -122.486 -6.54924 6.54924 1.02 0.00073744 0.00067424 0.0272449 0.0249881 36 3265 32 6.55708e+06 361650 612192. 2118.31 4.81 0.300258 0.26676 22750 144809 -1 2867 17 1322 4230 234793 53224 6.7993 6.7993 -139.791 -6.7993 0 0 782063. 2706.10 0.34 0.09 0.14 -1 -1 0.34 0.0337031 0.0305619 190 186 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_005.v common 6.65 vpr 64.88 MiB -1 -1 0.24 21064 13 0.35 -1 -1 36788 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 302 334 1 233 95 17 17 289 -1 unnamed_device 26.4 MiB 0.54 1489 7655 1694 5620 341 64.9 MiB 0.07 0.00 6.4779 -140.597 -6.4779 6.4779 0.99 0.000717777 0.000639794 0.0286069 0.0259501 30 4049 42 6.55708e+06 373705 526063. 1820.29 2.37 0.166593 0.147441 21886 126133 -1 3311 20 1537 4485 236854 54342 6.58844 6.58844 -158.245 -6.58844 0 0 666494. 2306.21 0.29 0.09 0.12 -1 -1 0.29 0.0362586 0.0326286 210 207 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_006.v common 9.06 vpr 64.91 MiB -1 -1 0.23 20764 13 0.31 -1 -1 36324 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 32 32 292 324 1 217 96 17 17 289 -1 unnamed_device 26.5 MiB 0.42 1424 11703 2763 7064 1876 64.9 MiB 0.10 0.00 6.4387 -131.425 -6.4387 6.4387 0.98 0.000663526 0.000589847 0.039998 0.0362178 34 3695 34 6.55708e+06 385760 585099. 2024.56 4.89 0.314178 0.275693 22462 138074 -1 3145 17 1257 3910 230145 52712 6.7209 6.7209 -151.13 -6.7209 0 0 742403. 2568.87 0.32 0.09 0.14 -1 -1 0.32 0.031793 0.0288372 198 197 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_007.v common 5.41 vpr 64.27 MiB -1 -1 0.19 20076 12 0.24 -1 -1 36504 -1 -1 27 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65808 27 32 229 261 1 176 86 17 17 289 -1 unnamed_device 25.7 MiB 0.34 1034 9536 2779 5894 863 64.3 MiB 0.08 0.00 5.83004 -108.556 -5.83004 5.83004 0.98 0.000548333 0.000493933 0.0306204 0.0279009 30 2468 41 6.55708e+06 325485 526063. 1820.29 1.58 0.129366 0.114137 21886 126133 -1 2111 17 1028 2693 127842 30974 6.10964 6.10964 -121.434 -6.10964 0 0 666494. 2306.21 0.30 0.06 0.12 -1 -1 0.30 0.0238501 0.0213349 152 144 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_008.v common 15.95 vpr 64.34 MiB -1 -1 0.21 20620 12 0.24 -1 -1 36416 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65884 31 32 229 261 1 184 85 17 17 289 -1 unnamed_device 25.9 MiB 0.28 1177 9757 2244 6204 1309 64.3 MiB 0.08 0.00 5.19746 -113.682 -5.19746 5.19746 0.94 0.000542445 0.000482651 0.0309448 0.0280347 28 3506 45 6.55708e+06 265210 500653. 1732.36 12.23 0.229221 0.200253 21310 115450 -1 2962 19 1226 3596 265281 61585 5.43986 5.43986 -132.124 -5.43986 0 0 612192. 2118.31 0.28 0.09 0.11 -1 -1 0.28 0.0274696 0.0246789 140 136 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_009.v common 5.95 vpr 64.31 MiB -1 -1 0.21 20320 12 0.20 -1 -1 36636 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65852 31 32 235 267 1 192 89 17 17 289 -1 unnamed_device 25.9 MiB 0.30 1138 9593 2290 6107 1196 64.3 MiB 0.08 0.00 5.31766 -112.822 -5.31766 5.31766 1.02 0.000580781 0.000530867 0.0310229 0.0284041 34 2743 28 6.55708e+06 313430 585099. 2024.56 2.05 0.152788 0.136443 22462 138074 -1 2436 19 1083 2734 158421 37250 5.99966 5.99966 -135.069 -5.99966 0 0 742403. 2568.87 0.32 0.07 0.14 -1 -1 0.32 0.0266747 0.0239768 150 142 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_010.v common 7.84 vpr 64.57 MiB -1 -1 0.20 20492 13 0.24 -1 -1 36372 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66124 32 32 250 282 1 193 89 17 17 289 -1 unnamed_device 26.1 MiB 0.37 1181 13949 3717 7911 2321 64.6 MiB 0.11 0.00 6.22784 -135.737 -6.22784 6.22784 0.98 0.00054735 0.000496465 0.0436165 0.039558 36 2872 16 6.55708e+06 301375 612192. 2118.31 3.85 0.270247 0.237058 22750 144809 -1 2460 15 1077 2926 166986 38973 6.34804 6.34804 -149.343 -6.34804 0 0 782063. 2706.10 0.33 0.07 0.14 -1 -1 0.33 0.0250947 0.0227805 157 155 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_011.v common 5.31 vpr 63.90 MiB -1 -1 0.21 20704 12 0.23 -1 -1 36480 -1 -1 24 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65432 30 32 216 248 1 168 86 17 17 289 -1 unnamed_device 25.4 MiB 0.32 1042 7835 1833 5075 927 63.9 MiB 0.06 0.00 5.67264 -114.771 -5.67264 5.67264 0.98 0.000512262 0.000465629 0.0242893 0.0221044 28 2903 36 6.55708e+06 289320 500653. 1732.36 1.55 0.119644 0.10582 21310 115450 -1 2455 18 1014 2703 167196 39105 6.18298 6.18298 -136.468 -6.18298 0 0 612192. 2118.31 0.27 0.07 0.12 -1 -1 0.27 0.0234548 0.0209856 132 125 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_012.v common 7.48 vpr 64.12 MiB -1 -1 0.19 20532 12 0.18 -1 -1 36324 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65656 32 32 236 268 1 183 86 17 17 289 -1 unnamed_device 25.5 MiB 0.31 1159 7268 1564 5252 452 64.1 MiB 0.06 0.00 5.70018 -128.605 -5.70018 5.70018 0.97 0.00056285 0.000513961 0.0237747 0.0216354 34 2865 28 6.55708e+06 265210 585099. 2024.56 3.73 0.200243 0.176874 22462 138074 -1 2502 14 946 2598 152673 35456 6.06078 6.06078 -146.692 -6.06078 0 0 742403. 2568.87 0.32 0.06 0.14 -1 -1 0.32 0.0242532 0.0220475 146 141 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_013.v common 6.57 vpr 64.70 MiB -1 -1 0.24 20968 13 0.32 -1 -1 36016 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 32 32 283 315 1 223 94 17 17 289 -1 unnamed_device 26.1 MiB 0.30 1412 13939 3510 8947 1482 64.7 MiB 0.11 0.00 6.60776 -140.256 -6.60776 6.60776 0.96 0.000637552 0.000577901 0.0456211 0.0413292 28 3995 46 6.55708e+06 361650 500653. 1732.36 2.60 0.174303 0.154146 21310 115450 -1 3276 17 1378 3989 274205 61420 7.28976 7.28976 -163.306 -7.28976 0 0 612192. 2118.31 0.29 0.10 0.12 -1 -1 0.29 0.0327449 0.029635 191 188 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_014.v common 8.25 vpr 64.98 MiB -1 -1 0.24 20612 14 0.38 -1 -1 36536 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 32 32 303 335 1 241 94 17 17 289 -1 unnamed_device 26.4 MiB 0.52 1563 13087 3312 8425 1350 65.0 MiB 0.11 0.00 7.44976 -155.952 -7.44976 7.44976 0.96 0.000660455 0.000584734 0.0460462 0.041489 28 4776 39 6.55708e+06 361650 500653. 1732.36 3.97 0.179064 0.158463 21310 115450 -1 3757 19 1713 4748 299308 68763 7.88875 7.88875 -179.789 -7.88875 0 0 612192. 2118.31 0.27 0.11 0.11 -1 -1 0.27 0.0362698 0.0327498 210 208 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_015.v common 10.23 vpr 64.24 MiB -1 -1 0.20 20100 11 0.22 -1 -1 36304 -1 -1 27 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65780 29 32 225 257 1 174 88 17 17 289 -1 unnamed_device 25.7 MiB 0.29 1027 13933 4563 7052 2318 64.2 MiB 0.10 0.00 5.53818 -107.413 -5.53818 5.53818 0.99 0.000568968 0.000503615 0.0410701 0.0371831 28 3089 50 6.55708e+06 325485 500653. 1732.36 6.48 0.221974 0.194647 21310 115450 -1 2565 23 1224 3396 295318 89153 6.01898 6.01898 -127.013 -6.01898 0 0 612192. 2118.31 0.27 0.11 0.11 -1 -1 0.27 0.0310815 0.0278827 147 136 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_016.v common 7.65 vpr 64.77 MiB -1 -1 0.23 20628 12 0.35 -1 -1 36644 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 301 333 1 230 97 17 17 289 -1 unnamed_device 26.4 MiB 0.45 1403 8533 2108 5372 1053 64.8 MiB 0.09 0.00 6.03124 -123.067 -6.03124 6.03124 0.98 0.000713277 0.000647501 0.0319667 0.0290109 46 3431 23 6.55708e+06 397815 782063. 2706.10 3.32 0.206126 0.181892 24766 183262 -1 2832 19 1384 4641 217792 52223 6.31084 6.31084 -139.767 -6.31084 0 0 958460. 3316.47 0.41 0.09 0.18 -1 -1 0.41 0.0358249 0.0324141 209 206 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_017.v common 9.53 vpr 64.76 MiB -1 -1 0.23 20680 14 0.31 -1 -1 36428 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 32 32 277 309 1 217 93 17 17 289 -1 unnamed_device 26.2 MiB 0.37 1487 13743 3679 8586 1478 64.8 MiB 0.12 0.00 6.22784 -133.565 -6.22784 6.22784 0.96 0.000632464 0.000574422 0.0462363 0.0419461 40 3151 18 6.55708e+06 349595 666494. 2306.21 4.97 0.291474 0.257483 23614 160646 -1 3009 47 2002 7150 1128163 640229 6.54924 6.54924 -149.734 -6.54924 0 0 872365. 3018.56 0.38 0.46 0.16 -1 -1 0.38 0.0750844 0.0673129 184 182 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_018.v common 5.17 vpr 64.25 MiB -1 -1 0.21 20460 12 0.20 -1 -1 36252 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65792 32 32 227 259 1 178 87 17 17 289 -1 unnamed_device 25.7 MiB 0.41 1168 9687 2742 6169 776 64.2 MiB 0.08 0.00 5.8423 -132.957 -5.8423 5.8423 0.98 0.0005575 0.0005073 0.0309814 0.0281091 32 2998 27 6.55708e+06 277265 554710. 1919.41 1.25 0.125873 0.111941 22174 131602 -1 2621 14 957 2613 166231 38344 6.3231 6.3231 -154.703 -6.3231 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0232133 0.0211229 140 132 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_019.v common 4.35 vpr 63.67 MiB -1 -1 0.17 20376 10 0.12 -1 -1 36560 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65200 30 32 175 207 1 131 78 17 17 289 -1 unnamed_device 25.2 MiB 0.19 771 9042 2031 6495 516 63.7 MiB 0.06 0.00 4.52206 -103.266 -4.52206 4.52206 0.98 0.0003911 0.000356137 0.0241625 0.0220297 28 2021 16 6.55708e+06 192880 500653. 1732.36 0.94 0.0804745 0.0713135 21310 115450 -1 1699 13 675 1629 90463 22606 4.88266 4.88266 -122.258 -4.88266 0 0 612192. 2118.31 0.27 0.04 0.11 -1 -1 0.27 0.0156038 0.0140883 91 84 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_020.v common 7.95 vpr 64.26 MiB -1 -1 0.21 20452 13 0.22 -1 -1 36228 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65804 31 32 231 263 1 184 87 17 17 289 -1 unnamed_device 25.9 MiB 0.47 1051 8727 2150 5652 925 64.3 MiB 0.07 0.00 6.05818 -124.146 -6.05818 6.05818 0.98 0.000528196 0.000474392 0.0282802 0.0257104 30 2717 21 6.55708e+06 289320 526063. 1820.29 4.01 0.194257 0.169861 21886 126133 -1 2266 16 1146 3025 146539 35221 6.17838 6.17838 -139.951 -6.17838 0 0 666494. 2306.21 0.29 0.07 0.12 -1 -1 0.29 0.0252689 0.0228313 144 138 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_021.v common 8.05 vpr 64.97 MiB -1 -1 0.24 20748 13 0.35 -1 -1 36416 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 32 32 304 336 1 224 95 17 17 289 -1 unnamed_device 26.4 MiB 0.51 1492 6143 1128 4748 267 65.0 MiB 0.06 0.00 6.57056 -132.132 -6.57056 6.57056 0.94 0.000690562 0.00062649 0.0237612 0.0215696 38 3330 19 6.55708e+06 373705 638502. 2209.35 3.82 0.258445 0.226652 23326 155178 -1 2840 17 1179 3727 176263 40833 7.33096 7.33096 -152.254 -7.33096 0 0 851065. 2944.86 0.35 0.08 0.15 -1 -1 0.35 0.031866 0.0287912 211 209 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_022.v common 10.01 vpr 64.69 MiB -1 -1 0.24 20812 13 0.36 -1 -1 36900 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 32 32 288 320 1 221 91 17 17 289 -1 unnamed_device 26.3 MiB 0.54 1502 6211 1232 4757 222 64.7 MiB 0.07 0.00 6.3185 -137.624 -6.3185 6.3185 0.98 0.000749034 0.000671162 0.0255278 0.0232328 44 3436 24 6.55708e+06 325485 742403. 2568.87 5.56 0.287002 0.255158 24478 177802 -1 3133 17 1358 4605 264908 58119 6.7601 6.7601 -152.927 -6.7601 0 0 937218. 3242.97 0.41 0.10 0.18 -1 -1 0.41 0.0348672 0.0317662 194 193 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_023.v common 6.28 vpr 63.72 MiB -1 -1 0.16 20312 9 0.11 -1 -1 36076 -1 -1 24 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65252 26 32 152 184 1 120 82 17 17 289 -1 unnamed_device 25.2 MiB 0.21 717 11118 4147 4951 2020 63.7 MiB 0.06 0.00 4.2302 -80.7906 -4.2302 4.2302 0.95 0.000352233 0.00031914 0.0235821 0.0214986 28 1724 25 6.55708e+06 289320 500653. 1732.36 2.90 0.125446 0.108643 21310 115450 -1 1582 18 601 1508 92415 21183 4.3524 4.3524 -94.657 -4.3524 0 0 612192. 2118.31 0.27 0.04 0.11 -1 -1 0.27 0.0160611 0.0143002 87 69 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_024.v common 6.41 vpr 64.43 MiB -1 -1 0.20 20432 13 0.36 -1 -1 36512 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65972 32 32 287 319 1 210 89 17 17 289 -1 unnamed_device 25.9 MiB 0.30 1374 8603 1996 5232 1375 64.4 MiB 0.09 0.00 6.4825 -128.401 -6.4825 6.4825 0.99 0.000669585 0.000608957 0.0339895 0.0309542 30 3815 27 6.55708e+06 301375 526063. 1820.29 2.37 0.147184 0.131266 21886 126133 -1 2956 32 1293 4209 364401 144743 6.7621 6.7621 -149.04 -6.7621 0 0 666494. 2306.21 0.28 0.15 0.12 -1 -1 0.28 0.0467676 0.041719 193 192 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_025.v common 4.59 vpr 63.40 MiB -1 -1 0.16 19856 8 0.11 -1 -1 36256 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64924 32 32 154 186 1 120 80 17 17 289 -1 unnamed_device 25.0 MiB 0.15 762 7648 2103 4089 1456 63.4 MiB 0.05 0.00 3.49108 -80.6742 -3.49108 3.49108 0.97 0.000348966 0.000317367 0.0178251 0.0162759 26 1964 43 6.55708e+06 192880 477104. 1650.88 1.26 0.0842688 0.0740552 21022 109990 -1 1672 27 779 1852 218731 94551 3.86594 3.86594 -99.0872 -3.86594 0 0 585099. 2024.56 0.26 0.09 0.11 -1 -1 0.26 0.0219802 0.0193259 77 59 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_026.v common 6.59 vpr 64.48 MiB -1 -1 0.21 20544 15 0.29 -1 -1 36740 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66032 32 32 254 286 1 199 92 17 17 289 -1 unnamed_device 26.0 MiB 0.42 1325 7751 1762 5311 678 64.5 MiB 0.07 0.00 6.9985 -140.814 -6.9985 6.9985 0.97 0.00060823 0.000553418 0.026745 0.0242818 34 3315 33 6.55708e+06 337540 585099. 2024.56 2.51 0.16587 0.145911 22462 138074 -1 3060 20 1491 4330 278417 61779 7.5185 7.5185 -157.549 -7.5185 0 0 742403. 2568.87 0.33 0.10 0.14 -1 -1 0.33 0.0327122 0.0293793 165 159 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_027.v common 6.63 vpr 64.55 MiB -1 -1 0.21 20456 13 0.29 -1 -1 36396 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66100 32 32 260 292 1 207 90 17 17 289 -1 unnamed_device 26.0 MiB 0.33 1313 6723 1380 4779 564 64.6 MiB 0.06 0.00 5.93858 -133.8 -5.93858 5.93858 0.98 0.000612384 0.000556586 0.0240469 0.0219437 34 3373 35 6.55708e+06 313430 585099. 2024.56 2.67 0.176035 0.155755 22462 138074 -1 2839 18 1228 3471 194892 45438 6.41938 6.41938 -152.998 -6.41938 0 0 742403. 2568.87 0.31 0.08 0.14 -1 -1 0.31 0.0295415 0.0266968 168 165 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_028.v common 5.60 vpr 64.47 MiB -1 -1 0.22 20944 13 0.34 -1 -1 36344 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66020 32 32 279 311 1 212 93 17 17 289 -1 unnamed_device 25.9 MiB 0.28 1280 15213 4267 8901 2045 64.5 MiB 0.12 0.00 6.4779 -136.184 -6.4779 6.4779 0.98 0.000648311 0.000580765 0.0504516 0.0455061 30 3382 49 6.55708e+06 349595 526063. 1820.29 1.62 0.185591 0.164519 21886 126133 -1 2753 20 1448 4280 195825 47599 6.5217 6.5217 -150.365 -6.5217 0 0 666494. 2306.21 0.29 0.09 0.12 -1 -1 0.29 0.0350567 0.0316001 187 184 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_029.v common 15.28 vpr 64.13 MiB -1 -1 0.20 20348 12 0.20 -1 -1 36352 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65672 32 32 238 270 1 189 87 17 17 289 -1 unnamed_device 25.8 MiB 0.39 1193 6231 1379 4604 248 64.1 MiB 0.06 0.00 5.57998 -124.411 -5.57998 5.57998 0.96 0.00055335 0.000508079 0.0208727 0.0190001 36 3092 21 6.55708e+06 277265 612192. 2118.31 11.41 0.23564 0.205255 22750 144809 -1 2566 16 1053 3021 165870 38725 5.70018 5.70018 -137.004 -5.70018 0 0 782063. 2706.10 0.32 0.07 0.15 -1 -1 0.32 0.0240218 0.0216124 147 143 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_030.v common 5.15 vpr 64.11 MiB -1 -1 0.20 20396 11 0.19 -1 -1 36536 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65644 30 32 213 245 1 165 85 17 17 289 -1 unnamed_device 25.6 MiB 0.24 879 12175 3931 5728 2516 64.1 MiB 0.09 0.00 5.26058 -108.974 -5.26058 5.26058 0.95 0.000487768 0.000441697 0.0347378 0.031368 28 2665 23 6.55708e+06 277265 500653. 1732.36 1.54 0.110917 0.0978518 21310 115450 -1 2252 20 1044 2681 168004 40330 5.85132 5.85132 -131.581 -5.85132 0 0 612192. 2118.31 0.26 0.07 0.12 -1 -1 0.26 0.0256026 0.0229417 131 122 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_031.v common 7.18 vpr 63.97 MiB -1 -1 0.20 20172 11 0.22 -1 -1 36344 -1 -1 28 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65508 28 32 227 259 1 175 88 17 17 289 -1 unnamed_device 25.6 MiB 0.51 1040 9448 2328 5605 1515 64.0 MiB 0.08 0.00 5.29978 -104.646 -5.29978 5.29978 0.98 0.000525716 0.000477444 0.0289089 0.0263045 28 2850 22 6.55708e+06 337540 500653. 1732.36 3.23 0.185394 0.162937 21310 115450 -1 2424 19 1150 3069 171376 40979 5.54018 5.54018 -123.762 -5.54018 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0263489 0.0236347 150 140 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_032.v common 7.60 vpr 64.47 MiB -1 -1 0.19 20624 12 0.24 -1 -1 36668 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66016 32 32 274 306 1 206 90 17 17 289 -1 unnamed_device 26.0 MiB 0.31 1316 5919 1228 4278 413 64.5 MiB 0.06 0.00 5.9619 -132.673 -5.9619 5.9619 0.99 0.000648085 0.000583321 0.0223146 0.0203694 28 3491 33 6.55708e+06 313430 500653. 1732.36 3.81 0.252289 0.22319 21310 115450 -1 3056 16 1348 3452 193430 46479 6.6831 6.6831 -161.735 -6.6831 0 0 612192. 2118.31 0.28 0.08 0.11 -1 -1 0.28 0.0293946 0.0266412 181 179 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_033.v common 5.49 vpr 64.42 MiB -1 -1 0.20 20400 12 0.20 -1 -1 36492 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65968 31 32 237 269 1 179 86 17 17 289 -1 unnamed_device 26.1 MiB 0.72 978 5756 1096 4515 145 64.4 MiB 0.05 0.00 5.95024 -119.216 -5.95024 5.95024 0.97 0.000540398 0.000481716 0.0197853 0.0177915 30 2749 27 6.55708e+06 277265 526063. 1820.29 1.34 0.110661 0.0977451 21886 126133 -1 2180 18 1138 3146 142832 35430 6.0037 6.0037 -133.555 -6.0037 0 0 666494. 2306.21 0.29 0.07 0.12 -1 -1 0.29 0.0264054 0.023778 149 144 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_034.v common 9.93 vpr 64.20 MiB -1 -1 0.20 20548 10 0.18 -1 -1 36080 -1 -1 22 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65736 29 32 220 252 1 163 83 17 17 289 -1 unnamed_device 25.7 MiB 0.20 1058 6563 1604 4377 582 64.2 MiB 0.06 0.00 4.79906 -103.748 -4.79906 4.79906 1.00 0.000559101 0.000501657 0.0224826 0.0203964 28 2626 42 6.55708e+06 265210 500653. 1732.36 6.29 0.22643 0.199658 21310 115450 -1 2238 17 821 2434 134361 31048 5.36086 5.36086 -123.396 -5.36086 0 0 612192. 2118.31 0.28 0.06 0.11 -1 -1 0.28 0.0258099 0.0233095 137 131 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_035.v common 16.29 vpr 64.80 MiB -1 -1 0.24 21084 13 0.37 -1 -1 36424 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 32 32 315 347 1 239 95 17 17 289 -1 unnamed_device 26.2 MiB 0.29 1568 8735 2118 5987 630 64.8 MiB 0.09 0.00 6.5563 -141.268 -6.5563 6.5563 0.96 0.000725244 0.000652687 0.033856 0.0306489 30 4096 23 6.55708e+06 373705 526063. 1820.29 12.25 0.316627 0.278339 21886 126133 -1 3393 19 1468 4606 241935 55007 6.7967 6.7967 -159.619 -6.7967 0 0 666494. 2306.21 0.28 0.09 0.12 -1 -1 0.28 0.0358423 0.032117 221 220 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_036.v common 7.35 vpr 64.46 MiB -1 -1 0.23 21208 14 0.41 -1 -1 36316 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 32 32 282 314 1 220 92 17 17 289 -1 unnamed_device 26.1 MiB 0.62 1455 8372 2159 5319 894 64.5 MiB 0.08 0.00 6.33378 -141.2 -6.33378 6.33378 0.98 0.000680231 0.000619371 0.0312271 0.028391 36 3605 19 6.55708e+06 337540 612192. 2118.31 2.87 0.190566 0.168036 22750 144809 -1 3220 18 1423 4209 243314 54837 6.77538 6.77538 -163.451 -6.77538 0 0 782063. 2706.10 0.33 0.09 0.14 -1 -1 0.33 0.0322009 0.0291436 191 187 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_037.v common 14.00 vpr 64.12 MiB -1 -1 0.20 20448 12 0.19 -1 -1 36240 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65660 31 32 241 273 1 189 92 17 17 289 -1 unnamed_device 25.8 MiB 0.28 1145 14375 4034 7984 2357 64.1 MiB 0.10 0.00 6.0821 -122.829 -6.0821 6.0821 1.01 0.000544285 0.000493098 0.0412687 0.0374705 30 2890 40 6.55708e+06 349595 526063. 1820.29 10.12 0.294203 0.257102 21886 126133 -1 2348 30 1020 2922 358545 162264 6.3617 6.3617 -139.411 -6.3617 0 0 666494. 2306.21 0.30 0.15 0.12 -1 -1 0.30 0.0386942 0.0345768 156 148 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_038.v common 5.66 vpr 65.07 MiB -1 -1 0.26 20880 12 0.35 -1 -1 36184 -1 -1 33 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 31 32 307 339 1 235 96 17 17 289 -1 unnamed_device 26.5 MiB 0.50 1549 9075 2190 5868 1017 65.1 MiB 0.09 0.00 6.2793 -131.706 -6.2793 6.2793 0.98 0.000719612 0.000653247 0.0341263 0.031051 30 3541 18 6.55708e+06 397815 526063. 1820.29 1.33 0.135888 0.120784 21886 126133 -1 3141 28 1447 4271 364533 143124 6.5197 6.5197 -150.558 -6.5197 0 0 666494. 2306.21 0.29 0.16 0.12 -1 -1 0.29 0.0482466 0.0433397 218 214 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_039.v common 8.70 vpr 64.64 MiB -1 -1 0.25 20892 14 0.43 -1 -1 37088 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66188 31 32 293 325 1 224 92 17 17 289 -1 unnamed_device 26.2 MiB 0.37 1514 10442 2734 6429 1279 64.6 MiB 0.10 0.00 6.89962 -138.519 -6.89962 6.89962 0.99 0.000699363 0.000633448 0.0398651 0.0361603 34 3742 26 6.55708e+06 349595 585099. 2024.56 4.44 0.321227 0.284079 22462 138074 -1 3190 17 1537 4552 246120 58202 7.34122 7.34122 -159.612 -7.34122 0 0 742403. 2568.87 0.32 0.10 0.14 -1 -1 0.32 0.0376377 0.0341851 202 200 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_040.v common 12.47 vpr 64.52 MiB -1 -1 0.26 21068 13 0.33 -1 -1 36368 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66072 31 32 276 308 1 223 91 17 17 289 -1 unnamed_device 25.9 MiB 0.43 1453 11923 3326 7688 909 64.5 MiB 0.11 0.00 6.3995 -134.539 -6.3995 6.3995 0.98 0.000661954 0.000603618 0.0421931 0.0383629 30 3939 29 6.55708e+06 337540 526063. 1820.29 8.31 0.263857 0.232407 21886 126133 -1 3109 21 1473 4239 209891 48764 7.01778 7.01778 -156.662 -7.01778 0 0 666494. 2306.21 0.30 0.09 0.12 -1 -1 0.30 0.0329875 0.029518 185 183 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_041.v common 6.73 vpr 64.63 MiB -1 -1 0.23 20644 13 0.33 -1 -1 36564 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 31 32 269 301 1 203 89 17 17 289 -1 unnamed_device 26.1 MiB 0.45 1292 14147 3945 7776 2426 64.6 MiB 0.12 0.00 5.86924 -114.846 -5.86924 5.86924 0.98 0.000620724 0.000564344 0.0485298 0.0440128 30 3768 28 6.55708e+06 313430 526063. 1820.29 2.47 0.155231 0.137829 21886 126133 -1 2892 32 1756 6471 474372 148572 6.19064 6.19064 -136.094 -6.19064 0 0 666494. 2306.21 0.28 0.18 0.12 -1 -1 0.28 0.0498141 0.0446306 179 176 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_042.v common 7.38 vpr 64.48 MiB -1 -1 0.20 20448 12 0.23 -1 -1 36540 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66028 32 32 264 296 1 196 88 17 17 289 -1 unnamed_device 26.0 MiB 0.27 1242 5743 1096 4296 351 64.5 MiB 0.06 0.00 5.71184 -117.407 -5.71184 5.71184 0.99 0.000615584 0.000560092 0.0217762 0.0198907 30 2894 31 6.55708e+06 289320 526063. 1820.29 3.60 0.245153 0.216988 21886 126133 -1 2554 16 1158 3483 169174 39813 6.19264 6.19264 -139.181 -6.19264 0 0 666494. 2306.21 0.30 0.07 0.12 -1 -1 0.30 0.0290275 0.0263363 171 169 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_043.v common 8.99 vpr 65.16 MiB -1 -1 0.27 21800 14 0.50 -1 -1 36704 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 32 32 324 356 1 249 95 17 17 289 -1 unnamed_device 26.5 MiB 0.50 1693 8735 1854 6352 529 65.2 MiB 0.09 0.00 6.92716 -149.269 -6.92716 6.92716 0.98 0.000766879 0.000683342 0.0351809 0.0317928 34 4500 40 6.55708e+06 373705 585099. 2024.56 4.41 0.24741 0.217863 22462 138074 -1 3810 25 1544 5277 498999 181399 7.3983 7.3983 -170.272 -7.3983 0 0 742403. 2568.87 0.34 0.18 0.14 -1 -1 0.34 0.0484342 0.0436795 230 229 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_044.v common 5.62 vpr 64.36 MiB -1 -1 0.20 20340 11 0.24 -1 -1 36324 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65900 31 32 249 281 1 192 89 17 17 289 -1 unnamed_device 25.9 MiB 0.43 1215 14543 4258 7926 2359 64.4 MiB 0.11 0.00 5.41998 -118.192 -5.41998 5.41998 0.98 0.000595518 0.000539746 0.0433682 0.0393764 30 3285 21 6.55708e+06 313430 526063. 1820.29 1.70 0.131141 0.116402 21886 126133 -1 2626 17 1226 3634 176567 41799 5.74138 5.74138 -136.061 -5.74138 0 0 666494. 2306.21 0.29 0.07 0.13 -1 -1 0.29 0.0274982 0.0248227 163 156 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_045.v common 7.82 vpr 65.03 MiB -1 -1 0.24 21092 13 0.34 -1 -1 36540 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 31 32 284 316 1 206 91 17 17 289 -1 unnamed_device 26.5 MiB 0.43 1318 8251 1929 5434 888 65.0 MiB 0.08 0.00 6.4381 -127.269 -6.4381 6.4381 0.98 0.000636486 0.000576586 0.0300518 0.0273167 28 3810 41 6.55708e+06 337540 500653. 1732.36 3.74 0.158566 0.140685 21310 115450 -1 3191 17 1302 4333 268566 59800 6.8797 6.8797 -150.663 -6.8797 0 0 612192. 2118.31 0.26 0.09 0.11 -1 -1 0.26 0.0305669 0.0275799 193 191 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_046.v common 8.04 vpr 64.79 MiB -1 -1 0.22 20960 12 0.33 -1 -1 36440 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66348 32 32 303 335 1 222 93 17 17 289 -1 unnamed_device 26.3 MiB 0.55 1565 14793 4256 8328 2209 64.8 MiB 0.13 0.00 5.91304 -127.426 -5.91304 5.91304 0.97 0.000722563 0.000650372 0.0532314 0.048014 36 3994 32 6.55708e+06 349595 612192. 2118.31 3.71 0.241448 0.213698 22750 144809 -1 3273 19 1464 4958 275497 62686 6.18298 6.18298 -143.379 -6.18298 0 0 782063. 2706.10 0.34 0.10 0.14 -1 -1 0.34 0.0357202 0.0323456 210 208 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_047.v common 6.32 vpr 64.67 MiB -1 -1 0.20 20384 13 0.31 -1 -1 36316 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 32 32 272 304 1 203 93 17 17 289 -1 unnamed_device 26.1 MiB 0.32 1284 6813 1378 4809 626 64.7 MiB 0.07 0.00 6.38724 -131.296 -6.38724 6.38724 1.00 0.000641612 0.000576708 0.024611 0.0223181 28 3714 26 6.55708e+06 349595 500653. 1732.36 2.42 0.13116 0.116645 21310 115450 -1 3058 16 1239 3554 209148 47871 6.87064 6.87064 -156.51 -6.87064 0 0 612192. 2118.31 0.27 0.08 0.12 -1 -1 0.27 0.0298039 0.0270838 183 177 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_048.v common 16.60 vpr 64.57 MiB -1 -1 0.23 20788 13 0.27 -1 -1 36936 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66120 32 32 271 303 1 212 90 17 17 289 -1 unnamed_device 26.1 MiB 0.37 1388 6723 1519 4586 618 64.6 MiB 0.07 0.00 5.81838 -131.133 -5.81838 5.81838 0.99 0.000624314 0.000567643 0.0254456 0.0230858 28 3805 43 6.55708e+06 313430 500653. 1732.36 12.63 0.232463 0.204553 21310 115450 -1 3150 21 1367 4061 346725 107415 6.17898 6.17898 -153.077 -6.17898 0 0 612192. 2118.31 0.28 0.12 0.12 -1 -1 0.28 0.0346779 0.0311732 178 176 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_049.v common 6.09 vpr 64.89 MiB -1 -1 0.23 20784 12 0.31 -1 -1 36636 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 32 32 288 320 1 223 94 17 17 289 -1 unnamed_device 26.5 MiB 0.53 1506 9040 2318 6054 668 64.9 MiB 0.09 0.00 5.90844 -131.606 -5.90844 5.90844 0.99 0.000684363 0.000622258 0.033445 0.0302426 30 3491 22 6.55708e+06 361650 526063. 1820.29 1.85 0.151031 0.134797 21886 126133 -1 3054 16 1229 4378 208932 48020 6.50944 6.50944 -151.766 -6.50944 0 0 666494. 2306.21 0.30 0.08 0.12 -1 -1 0.30 0.0324537 0.0295015 197 193 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_050.v common 9.35 vpr 64.82 MiB -1 -1 0.24 21124 13 0.37 -1 -1 37036 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 32 32 306 338 1 233 95 17 17 289 -1 unnamed_device 26.4 MiB 0.50 1631 7439 1501 5330 608 64.8 MiB 0.08 0.00 6.42904 -137.905 -6.42904 6.42904 0.94 0.000709395 0.000634941 0.0285045 0.025753 36 4186 34 6.55708e+06 373705 612192. 2118.31 5.05 0.221218 0.194869 22750 144809 -1 3395 24 1959 6289 333852 75193 6.99084 6.99084 -160.282 -6.99084 0 0 782063. 2706.10 0.33 0.12 0.14 -1 -1 0.33 0.0440883 0.0396355 212 211 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_051.v common 16.70 vpr 64.57 MiB -1 -1 0.21 20368 14 0.34 -1 -1 36372 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 32 32 262 294 1 191 88 17 17 289 -1 unnamed_device 26.0 MiB 0.31 1310 9643 2648 6001 994 64.6 MiB 0.08 0.00 6.92976 -138.957 -6.92976 6.92976 0.96 0.000605034 0.000550521 0.0333066 0.0302466 28 3841 32 6.55708e+06 289320 500653. 1732.36 12.75 0.227868 0.200008 21310 115450 -1 3160 23 1563 4987 333892 82448 7.5185 7.5185 -166.55 -7.5185 0 0 612192. 2118.31 0.27 0.12 0.11 -1 -1 0.27 0.0378562 0.0341386 168 167 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_052.v common 8.63 vpr 64.70 MiB -1 -1 0.22 20536 13 0.33 -1 -1 36656 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 32 32 291 323 1 224 94 17 17 289 -1 unnamed_device 26.3 MiB 0.43 1450 8401 1821 5706 874 64.7 MiB 0.08 0.00 6.57316 -134.834 -6.57316 6.57316 0.98 0.000661507 0.00059945 0.0303407 0.0275546 44 3358 25 6.55708e+06 361650 742403. 2568.87 4.40 0.261073 0.230119 24478 177802 -1 2800 16 1233 3767 191504 43521 7.13296 7.13296 -152.015 -7.13296 0 0 937218. 3242.97 0.39 0.07 0.18 -1 -1 0.39 0.0290135 0.0261639 198 196 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_053.v common 6.97 vpr 65.01 MiB -1 -1 0.25 20756 13 0.35 -1 -1 36548 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 31 32 302 334 1 235 94 17 17 289 -1 unnamed_device 26.4 MiB 0.33 1455 7975 1649 5433 893 65.0 MiB 0.08 0.00 6.3603 -133.574 -6.3603 6.3603 0.95 0.000703316 0.000635159 0.0295384 0.02673 36 3560 18 6.55708e+06 373705 612192. 2118.31 2.89 0.196415 0.173227 22750 144809 -1 3198 17 1493 4448 251518 58577 6.55124 6.55124 -150.759 -6.55124 0 0 782063. 2706.10 0.34 0.09 0.15 -1 -1 0.34 0.0331799 0.0300008 213 209 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_054.v common 15.64 vpr 64.97 MiB -1 -1 0.24 20976 12 0.37 -1 -1 36564 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 32 32 308 340 1 238 97 17 17 289 -1 unnamed_device 26.4 MiB 0.34 1470 11863 2975 7139 1749 65.0 MiB 0.11 0.00 6.1219 -131.533 -6.1219 6.1219 0.97 0.000739621 0.000676397 0.0423714 0.0384554 28 4507 36 6.55708e+06 397815 500653. 1732.36 11.47 0.274596 0.241784 21310 115450 -1 3679 30 2135 5929 457148 130025 6.4015 6.4015 -154.245 -6.4015 0 0 612192. 2118.31 0.29 0.17 0.11 -1 -1 0.29 0.0486138 0.0434263 216 213 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_055.v common 7.61 vpr 64.02 MiB -1 -1 0.18 20424 11 0.16 -1 -1 36492 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65560 32 32 216 248 1 160 82 17 17 289 -1 unnamed_device 25.6 MiB 0.29 1086 8804 2031 5408 1365 64.0 MiB 0.07 0.00 5.20912 -107.655 -5.20912 5.20912 0.98 0.000504254 0.000456082 0.0283988 0.025777 28 2790 22 6.55708e+06 216990 500653. 1732.36 3.97 0.205326 0.180026 21310 115450 -1 2469 20 1077 2803 176381 40833 5.48366 5.48366 -135.361 -5.48366 0 0 612192. 2118.31 0.27 0.07 0.12 -1 -1 0.27 0.0251874 0.0225153 125 121 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_056.v common 10.46 vpr 64.41 MiB -1 -1 0.22 20688 13 0.27 -1 -1 36360 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65960 32 32 254 286 1 194 88 17 17 289 -1 unnamed_device 26.0 MiB 0.43 1252 9838 2209 6020 1609 64.4 MiB 0.08 0.00 6.26704 -133.589 -6.26704 6.26704 0.93 0.000587048 0.000533163 0.0328908 0.0298932 30 3161 20 6.55708e+06 289320 526063. 1820.29 6.55 0.204648 0.180218 21886 126133 -1 2429 15 1011 2759 130051 30831 6.50744 6.50744 -148.253 -6.50744 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.026139 0.0237039 161 159 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_057.v common 8.50 vpr 65.21 MiB -1 -1 0.24 21280 14 0.54 -1 -1 36480 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 32 32 338 370 1 252 97 17 17 289 -1 unnamed_device 26.8 MiB 0.31 1678 7645 1538 5658 449 65.2 MiB 0.08 0.00 7.13802 -144.226 -7.13802 7.13802 0.99 0.000778359 0.000712877 0.0304888 0.0276817 30 4674 24 6.55708e+06 397815 526063. 1820.29 4.24 0.300158 0.264448 21886 126133 -1 3504 17 1725 5454 266876 62122 7.37842 7.37842 -164.642 -7.37842 0 0 666494. 2306.21 0.29 0.10 0.12 -1 -1 0.29 0.0384072 0.0349218 245 243 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_058.v common 8.32 vpr 64.64 MiB -1 -1 0.23 20696 13 0.36 -1 -1 36708 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66192 32 32 271 303 1 212 91 17 17 289 -1 unnamed_device 26.1 MiB 0.47 1464 6415 1327 4565 523 64.6 MiB 0.07 0.00 6.3557 -142.114 -6.3557 6.3557 0.99 0.000652136 0.000589224 0.0246336 0.0223634 36 3664 30 6.55708e+06 325485 612192. 2118.31 4.08 0.276118 0.244645 22750 144809 -1 2981 14 1195 3413 186276 42397 6.8365 6.8365 -161.23 -6.8365 0 0 782063. 2706.10 0.34 0.08 0.14 -1 -1 0.34 0.02893 0.0263568 178 176 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_059.v common 5.66 vpr 64.12 MiB -1 -1 0.20 20724 11 0.21 -1 -1 36500 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65664 30 32 224 256 1 165 85 17 17 289 -1 unnamed_device 25.6 MiB 0.21 1031 12733 3633 7511 1589 64.1 MiB 0.09 0.00 5.48612 -115.818 -5.48612 5.48612 0.98 0.000526042 0.000475577 0.0373298 0.0337935 28 2692 44 6.55708e+06 277265 500653. 1732.36 1.98 0.135119 0.118676 21310 115450 -1 2324 22 985 2926 250877 87803 5.85898 5.85898 -135.101 -5.85898 0 0 612192. 2118.31 0.28 0.10 0.12 -1 -1 0.28 0.0297873 0.0266736 139 133 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_060.v common 20.00 vpr 65.11 MiB -1 -1 0.26 21612 15 0.66 -1 -1 36764 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 351 383 1 268 98 17 17 289 -1 unnamed_device 26.9 MiB 0.38 1736 8423 1815 6098 510 65.1 MiB 0.09 0.00 7.89901 -156.348 -7.89901 7.89901 0.95 0.000891908 0.000802594 0.0371136 0.0334689 30 5118 40 6.55708e+06 409870 526063. 1820.29 15.45 0.341607 0.300651 21886 126133 -1 3785 29 1918 6054 471742 177868 8.21781 8.21781 -177.632 -8.21781 0 0 666494. 2306.21 0.28 0.18 0.13 -1 -1 0.28 0.0545621 0.0488656 257 256 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_061.v common 8.70 vpr 65.00 MiB -1 -1 0.23 20708 13 0.40 -1 -1 36360 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 32 32 297 329 1 215 92 17 17 289 -1 unnamed_device 26.5 MiB 0.37 1505 5888 1126 4279 483 65.0 MiB 0.06 0.00 6.41116 -132.676 -6.41116 6.41116 1.02 0.000776058 0.000708449 0.0252365 0.0230013 34 3542 26 6.55708e+06 337540 585099. 2024.56 4.50 0.310118 0.275151 22462 138074 -1 3091 20 1315 3995 225811 52831 7.31164 7.31164 -163.027 -7.31164 0 0 742403. 2568.87 0.33 0.10 0.14 -1 -1 0.33 0.0389102 0.0352189 203 202 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_062.v common 5.37 vpr 64.24 MiB -1 -1 0.18 20132 11 0.16 -1 -1 36632 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65780 32 32 231 263 1 176 86 17 17 289 -1 unnamed_device 25.7 MiB 0.37 1150 11804 3166 7215 1423 64.2 MiB 0.09 0.00 5.24832 -114.705 -5.24832 5.24832 0.98 0.000529172 0.000480691 0.035461 0.0322519 28 3053 21 6.55708e+06 265210 500653. 1732.36 1.60 0.114655 0.101733 21310 115450 -1 2651 17 1149 3270 196538 44748 5.60892 5.60892 -137.872 -5.60892 0 0 612192. 2118.31 0.26 0.07 0.11 -1 -1 0.26 0.0230355 0.0206505 141 136 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_063.v common 12.95 vpr 65.14 MiB -1 -1 0.22 20980 12 0.37 -1 -1 36304 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66708 32 32 305 337 1 231 94 17 17 289 -1 unnamed_device 26.5 MiB 0.53 1453 9253 2133 6198 922 65.1 MiB 0.09 0.00 6.4407 -128.315 -6.4407 6.4407 0.98 0.000706023 0.000641003 0.0355159 0.032268 30 3696 29 6.55708e+06 361650 526063. 1820.29 8.70 0.292849 0.259889 21886 126133 -1 3030 19 1525 4964 245996 56155 6.7229 6.7229 -145.72 -6.7229 0 0 666494. 2306.21 0.28 0.09 0.12 -1 -1 0.28 0.0355654 0.0320562 213 210 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_064.v common 5.69 vpr 64.48 MiB -1 -1 0.18 20376 12 0.24 -1 -1 36332 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 32 32 243 275 1 186 90 17 17 289 -1 unnamed_device 26.0 MiB 0.49 1251 12753 3201 7447 2105 64.5 MiB 0.10 0.00 6.02924 -127.779 -6.02924 6.02924 0.94 0.000577277 0.000524284 0.040315 0.0365404 28 3295 29 6.55708e+06 313430 500653. 1732.36 1.72 0.137156 0.12172 21310 115450 -1 2931 17 1193 3376 206263 47434 6.42904 6.42904 -152.224 -6.42904 0 0 612192. 2118.31 0.27 0.08 0.12 -1 -1 0.27 0.0270692 0.0245513 153 148 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_065.v common 5.60 vpr 64.46 MiB -1 -1 0.20 20456 12 0.23 -1 -1 36252 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 30 32 228 260 1 161 83 17 17 289 -1 unnamed_device 25.9 MiB 0.24 992 7823 1908 4654 1261 64.5 MiB 0.07 0.00 5.82944 -115.735 -5.82944 5.82944 0.97 0.000545435 0.000488206 0.0270922 0.0245797 26 2940 41 6.55708e+06 253155 477104. 1650.88 1.94 0.127441 0.112162 21022 109990 -1 2420 18 1074 3210 202373 46425 6.79104 6.79104 -143.924 -6.79104 0 0 585099. 2024.56 0.26 0.08 0.11 -1 -1 0.26 0.0264708 0.0237934 140 137 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_066.v common 7.00 vpr 64.62 MiB -1 -1 0.25 20920 12 0.35 -1 -1 36388 -1 -1 31 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66168 29 32 275 307 1 206 92 17 17 289 -1 unnamed_device 26.0 MiB 0.30 1365 6923 1406 5081 436 64.6 MiB 0.07 0.00 5.98178 -110.428 -5.98178 5.98178 0.97 0.000665912 0.000588854 0.0258718 0.0235122 34 3478 39 6.55708e+06 373705 585099. 2024.56 2.96 0.188269 0.166434 22462 138074 -1 3149 19 1316 4377 261058 58744 6.10198 6.10198 -124.336 -6.10198 0 0 742403. 2568.87 0.32 0.09 0.14 -1 -1 0.32 0.0333872 0.0301711 191 186 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_067.v common 13.20 vpr 65.13 MiB -1 -1 0.24 20844 13 0.42 -1 -1 36420 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66692 32 32 330 362 1 256 97 17 17 289 -1 unnamed_device 26.5 MiB 0.70 1655 8533 1730 5988 815 65.1 MiB 0.08 0.00 6.64956 -144.479 -6.64956 6.64956 0.96 0.000699918 0.000626423 0.0324886 0.0294824 30 4238 47 6.55708e+06 397815 526063. 1820.29 8.72 0.3371 0.295563 21886 126133 -1 3557 20 1866 5263 273546 62400 7.1599 7.1599 -166.842 -7.1599 0 0 666494. 2306.21 0.30 0.11 0.12 -1 -1 0.30 0.0401414 0.0362589 238 235 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_068.v common 7.08 vpr 64.54 MiB -1 -1 0.23 20732 12 0.29 -1 -1 36648 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66084 32 32 290 322 1 220 96 17 17 289 -1 unnamed_device 26.2 MiB 0.51 1432 13893 3910 8108 1875 64.5 MiB 0.12 0.00 6.2415 -124.275 -6.2415 6.2415 0.99 0.000692357 0.000628765 0.0484321 0.0440643 38 3351 18 6.55708e+06 385760 638502. 2209.35 2.78 0.228146 0.203457 23326 155178 -1 2854 18 1352 4105 197962 45419 6.41818 6.41818 -141.482 -6.41818 0 0 851065. 2944.86 0.36 0.09 0.15 -1 -1 0.36 0.0342551 0.0310216 200 195 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_069.v common 7.36 vpr 64.19 MiB -1 -1 0.21 20500 12 0.18 -1 -1 36864 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65728 32 32 214 246 1 164 84 17 17 289 -1 unnamed_device 25.7 MiB 0.64 1091 5025 982 3533 510 64.2 MiB 0.05 0.00 5.54078 -119.299 -5.54078 5.54078 0.97 0.00050213 0.000456186 0.0167582 0.0152651 30 2540 20 6.55708e+06 241100 526063. 1820.29 3.34 0.17928 0.157002 21886 126133 -1 2231 17 860 2477 114133 27622 5.72772 5.72772 -133.439 -5.72772 0 0 666494. 2306.21 0.30 0.06 0.12 -1 -1 0.30 0.0235747 0.021215 126 119 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_070.v common 12.08 vpr 64.47 MiB -1 -1 0.22 20544 12 0.27 -1 -1 36404 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66020 31 32 244 276 1 182 87 17 17 289 -1 unnamed_device 26.1 MiB 0.33 1174 6999 1573 4827 599 64.5 MiB 0.06 0.00 5.77858 -116.505 -5.77858 5.77858 0.96 0.00056865 0.000517604 0.0240497 0.0219258 28 3437 39 6.55708e+06 289320 500653. 1732.36 8.25 0.214302 0.188305 21310 115450 -1 2893 19 1257 3838 225903 51930 6.12952 6.12952 -141.075 -6.12952 0 0 612192. 2118.31 0.26 0.08 0.12 -1 -1 0.26 0.0280255 0.0251957 154 151 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_071.v common 8.16 vpr 64.75 MiB -1 -1 0.22 20448 11 0.23 -1 -1 36372 -1 -1 30 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 30 32 276 308 1 210 92 17 17 289 -1 unnamed_device 26.4 MiB 0.18 1242 13961 3883 7687 2391 64.8 MiB 0.11 0.00 5.62118 -109.985 -5.62118 5.62118 0.94 0.000595877 0.000540045 0.0447864 0.0404971 36 3617 49 6.55708e+06 361650 612192. 2118.31 4.39 0.242132 0.213978 22750 144809 -1 2799 14 1212 3778 214920 49987 5.62118 5.62118 -125.445 -5.62118 0 0 782063. 2706.10 0.33 0.08 0.14 -1 -1 0.33 0.0287202 0.0261492 190 185 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_072.v common 9.51 vpr 64.31 MiB -1 -1 0.21 20612 11 0.25 -1 -1 36260 -1 -1 27 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65852 28 32 253 285 1 181 87 17 17 289 -1 unnamed_device 25.9 MiB 0.19 1200 13527 3638 7996 1893 64.3 MiB 0.10 0.00 5.54218 -102.707 -5.54218 5.54218 0.96 0.000546963 0.000495513 0.042689 0.0386564 28 3219 45 6.55708e+06 325485 500653. 1732.36 5.78 0.25572 0.22438 21310 115450 -1 2792 27 1154 3922 403652 148836 5.80752 5.80752 -121.285 -5.80752 0 0 612192. 2118.31 0.25 0.14 0.11 -1 -1 0.25 0.0373891 0.0332744 172 166 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_073.v common 8.07 vpr 64.31 MiB -1 -1 0.22 20380 13 0.27 -1 -1 36464 -1 -1 25 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65856 30 32 235 267 1 174 87 17 17 289 -1 unnamed_device 26.0 MiB 0.34 1046 5079 1052 3778 249 64.3 MiB 0.05 0.00 6.1219 -115.535 -6.1219 6.1219 0.98 0.000498235 0.000447817 0.0173826 0.0158385 38 2419 18 6.55708e+06 301375 638502. 2209.35 4.13 0.193047 0.168765 23326 155178 -1 2073 16 877 2699 120620 29886 6.3623 6.3623 -127.622 -6.3623 0 0 851065. 2944.86 0.35 0.06 0.16 -1 -1 0.35 0.0246122 0.0222076 148 144 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_074.v common 8.44 vpr 64.46 MiB -1 -1 0.20 20996 12 0.25 -1 -1 36516 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 32 32 264 296 1 207 92 17 17 289 -1 unnamed_device 25.9 MiB 0.36 1150 7544 1782 4745 1017 64.5 MiB 0.07 0.00 6.0821 -129.548 -6.0821 6.0821 0.98 0.000601834 0.000546363 0.0258904 0.0235342 36 3069 36 6.55708e+06 337540 612192. 2118.31 4.49 0.262801 0.230744 22750 144809 -1 2488 16 1101 3014 168288 41260 6.5237 6.5237 -150.606 -6.5237 0 0 782063. 2706.10 0.33 0.07 0.14 -1 -1 0.33 0.0274944 0.0248962 174 169 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_075.v common 10.46 vpr 64.60 MiB -1 -1 0.21 20464 13 0.36 -1 -1 36456 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 31 32 278 310 1 202 90 17 17 289 -1 unnamed_device 26.1 MiB 0.35 1310 4512 797 3365 350 64.6 MiB 0.05 0.00 6.64896 -130.697 -6.64896 6.64896 0.97 0.000681594 0.000617699 0.0178528 0.0162467 26 3881 47 6.55708e+06 325485 477104. 1650.88 6.23 0.256788 0.224999 21022 109990 -1 3038 49 2343 8474 1036289 497268 7.2429 7.2429 -154.92 -7.2429 0 0 585099. 2024.56 0.26 0.38 0.11 -1 -1 0.26 0.0707413 0.0628687 187 185 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_076.v common 15.02 vpr 64.80 MiB -1 -1 0.25 21056 14 0.33 -1 -1 36620 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 32 32 290 322 1 214 92 17 17 289 -1 unnamed_device 26.5 MiB 0.31 1319 14168 3745 8192 2231 64.8 MiB 0.12 0.00 6.88996 -134.384 -6.88996 6.88996 1.00 0.000674063 0.000611824 0.0504241 0.04582 28 3852 38 6.55708e+06 337540 500653. 1732.36 10.91 0.292232 0.259305 21310 115450 -1 3152 23 1828 5409 431731 124407 7.53016 7.53016 -163.463 -7.53016 0 0 612192. 2118.31 0.28 0.16 0.11 -1 -1 0.28 0.0430683 0.0389158 196 195 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_077.v common 12.80 vpr 64.70 MiB -1 -1 0.24 20752 14 0.31 -1 -1 36544 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66252 32 32 269 301 1 199 89 17 17 289 -1 unnamed_device 26.1 MiB 0.35 1235 8207 2035 5117 1055 64.7 MiB 0.07 0.00 6.58644 -132.185 -6.58644 6.58644 0.96 0.000644203 0.000586282 0.0294069 0.0267538 30 3059 49 6.55708e+06 301375 526063. 1820.29 8.85 0.316228 0.276573 21886 126133 -1 2479 17 1118 3354 166569 39018 6.58644 6.58644 -145.488 -6.58644 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0279061 0.0250592 175 174 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_078.v common 8.57 vpr 64.72 MiB -1 -1 0.24 21184 13 0.42 -1 -1 36360 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66276 32 32 296 328 1 221 93 17 17 289 -1 unnamed_device 26.2 MiB 0.37 1437 6393 1250 4452 691 64.7 MiB 0.07 0.00 6.72996 -135.023 -6.72996 6.72996 0.98 0.000689254 0.000623977 0.0254145 0.0231817 36 3722 23 6.55708e+06 349595 612192. 2118.31 4.36 0.252185 0.220899 22750 144809 -1 3154 18 1418 4240 227440 53172 7.21076 7.21076 -153.256 -7.21076 0 0 782063. 2706.10 0.32 0.09 0.14 -1 -1 0.32 0.0324917 0.0291949 205 201 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_079.v common 5.87 vpr 64.38 MiB -1 -1 0.20 20400 13 0.23 -1 -1 36240 -1 -1 24 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 30 32 234 266 1 186 86 17 17 289 -1 unnamed_device 26.0 MiB 0.51 1184 6134 1255 4418 461 64.4 MiB 0.06 0.00 6.14684 -124.956 -6.14684 6.14684 0.97 0.000541482 0.00049178 0.0209018 0.0190726 28 3099 37 6.55708e+06 289320 500653. 1732.36 1.92 0.123795 0.109546 21310 115450 -1 2582 16 1169 3154 171598 41297 6.74784 6.74784 -148.469 -6.74784 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0245072 0.0220173 147 143 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_080.v common 7.02 vpr 64.89 MiB -1 -1 0.24 20712 13 0.54 -1 -1 36428 -1 -1 32 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 30 32 291 323 1 232 94 17 17 289 -1 unnamed_device 26.5 MiB 0.40 1516 6697 1322 4832 543 64.9 MiB 0.07 0.00 6.56856 -135.645 -6.56856 6.56856 0.99 0.00071645 0.000650001 0.0261896 0.0237128 36 3690 26 6.55708e+06 385760 612192. 2118.31 2.64 0.189943 0.169125 22750 144809 -1 3066 19 1528 4354 229856 53813 7.13236 7.13236 -153.255 -7.13236 0 0 782063. 2706.10 0.34 0.09 0.14 -1 -1 0.34 0.0370058 0.0334239 203 200 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_081.v common 10.73 vpr 64.76 MiB -1 -1 0.22 20808 14 0.39 -1 -1 37024 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 32 32 274 306 1 210 91 17 17 289 -1 unnamed_device 26.2 MiB 0.57 1344 7843 1709 5848 286 64.8 MiB 0.07 0.00 6.7209 -139.662 -6.7209 6.7209 0.94 0.000637666 0.00057654 0.0284339 0.025789 30 3447 41 6.55708e+06 325485 526063. 1820.29 6.48 0.300459 0.263487 21886 126133 -1 2901 20 1299 4301 215777 50367 6.81356 6.81356 -157.736 -6.81356 0 0 666494. 2306.21 0.29 0.09 0.12 -1 -1 0.29 0.0345737 0.0312804 181 179 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_082.v common 8.77 vpr 64.78 MiB -1 -1 0.24 20992 13 0.28 -1 -1 36340 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 31 32 266 298 1 204 88 17 17 289 -1 unnamed_device 26.2 MiB 0.36 1301 14323 4035 8140 2148 64.8 MiB 0.12 0.00 6.4785 -130.802 -6.4785 6.4785 0.98 0.00060924 0.000552017 0.0493651 0.0449241 28 3860 34 6.55708e+06 301375 500653. 1732.36 4.65 0.160104 0.141949 21310 115450 -1 3240 32 1897 6375 677797 245849 6.98884 6.98884 -155.797 -6.98884 0 0 612192. 2118.31 0.27 0.23 0.12 -1 -1 0.27 0.0468921 0.0418506 175 173 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_083.v common 7.49 vpr 64.55 MiB -1 -1 0.24 20688 13 0.27 -1 -1 36356 -1 -1 27 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66100 30 32 266 298 1 204 89 17 17 289 -1 unnamed_device 26.1 MiB 0.48 1264 10979 2870 6212 1897 64.6 MiB 0.09 0.00 6.1611 -116.304 -6.1611 6.1611 0.98 0.00060273 0.000547189 0.0372719 0.033784 28 4039 48 6.55708e+06 325485 500653. 1732.36 3.43 0.164927 0.145948 21310 115450 -1 3116 19 1390 4097 266666 58920 6.8431 6.8431 -140.509 -6.8431 0 0 612192. 2118.31 0.27 0.10 0.11 -1 -1 0.27 0.0316438 0.0285471 178 175 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_084.v common 13.18 vpr 65.06 MiB -1 -1 0.23 20740 14 0.45 -1 -1 36728 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 32 32 310 342 1 238 101 17 17 289 -1 unnamed_device 26.5 MiB 0.44 1632 8326 1769 5833 724 65.1 MiB 0.08 0.00 6.7973 -145.828 -6.7973 6.7973 1.00 0.000785566 0.000716757 0.0322333 0.0294243 30 3779 46 6.55708e+06 446035 526063. 1820.29 8.88 0.380406 0.33739 21886 126133 -1 3139 17 1581 4370 208675 49972 7.1599 7.1599 -164.359 -7.1599 0 0 666494. 2306.21 0.30 0.09 0.12 -1 -1 0.30 0.0361984 0.032935 218 215 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_085.v common 6.58 vpr 64.41 MiB -1 -1 0.24 20748 11 0.35 -1 -1 36664 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65952 29 32 262 294 1 203 90 17 17 289 -1 unnamed_device 25.9 MiB 0.53 1238 7929 1789 5525 615 64.4 MiB 0.08 0.00 5.71184 -112.612 -5.71184 5.71184 1.01 0.000672986 0.000609091 0.0295586 0.0268201 34 3256 39 6.55708e+06 349595 585099. 2024.56 2.27 0.189405 0.168598 22462 138074 -1 2544 16 1047 3185 169022 39844 6.14118 6.14118 -130.283 -6.14118 0 0 742403. 2568.87 0.33 0.08 0.13 -1 -1 0.33 0.0323269 0.0293651 177 173 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_086.v common 5.15 vpr 64.20 MiB -1 -1 0.18 20384 13 0.19 -1 -1 36252 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65744 32 32 222 254 1 180 88 17 17 289 -1 unnamed_device 25.7 MiB 0.36 1173 14713 3936 8889 1888 64.2 MiB 0.11 0.00 5.80872 -132.614 -5.80872 5.80872 0.98 0.000524988 0.00047887 0.0424362 0.0385955 28 3039 19 6.55708e+06 289320 500653. 1732.36 1.38 0.121483 0.108274 21310 115450 -1 2578 17 1133 3074 174402 40721 6.28952 6.28952 -156.613 -6.28952 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0238414 0.0214236 138 127 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_087.v common 8.81 vpr 64.68 MiB -1 -1 0.24 20552 14 0.30 -1 -1 36416 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 32 32 267 299 1 205 92 17 17 289 -1 unnamed_device 26.2 MiB 0.49 1307 7337 1639 5087 611 64.7 MiB 0.07 0.00 6.78764 -138.621 -6.78764 6.78764 0.98 0.000634384 0.000576796 0.0257033 0.0234383 40 3043 20 6.55708e+06 337540 666494. 2306.21 4.55 0.220929 0.19343 23614 160646 -1 2953 16 1220 3754 239686 53861 7.1579 7.1579 -159.458 -7.1579 0 0 872365. 3018.56 0.37 0.09 0.16 -1 -1 0.37 0.0298935 0.0271608 179 172 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_088.v common 14.10 vpr 65.41 MiB -1 -1 0.25 21388 15 0.53 -1 -1 36608 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66980 32 32 334 366 1 263 97 17 17 289 -1 unnamed_device 26.9 MiB 0.34 1656 5203 882 4015 306 65.4 MiB 0.06 0.00 7.49921 -155.842 -7.49921 7.49921 0.99 0.000795354 0.00072394 0.0228433 0.0207766 30 4568 38 6.55708e+06 397815 526063. 1820.29 9.80 0.282545 0.247964 21886 126133 -1 3577 19 1707 5132 253888 58670 7.73961 7.73961 -175.539 -7.73961 0 0 666494. 2306.21 0.29 0.10 0.12 -1 -1 0.29 0.0400474 0.0362701 241 239 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_089.v common 7.07 vpr 64.30 MiB -1 -1 0.20 20692 11 0.21 -1 -1 36508 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65840 32 32 220 252 1 157 86 17 17 289 -1 unnamed_device 25.7 MiB 0.49 1050 5189 1060 3811 318 64.3 MiB 0.04 0.00 5.26058 -111.374 -5.26058 5.26058 0.99 0.000491601 0.000442066 0.0158041 0.014419 28 2586 18 6.55708e+06 265210 500653. 1732.36 3.24 0.15271 0.133504 21310 115450 -1 2310 16 847 2755 163872 37497 5.98178 5.98178 -131.564 -5.98178 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0231741 0.0208869 129 125 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_090.v common 5.44 vpr 64.43 MiB -1 -1 0.19 20292 12 0.23 -1 -1 36656 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65980 31 32 244 276 1 193 89 17 17 289 -1 unnamed_device 26.0 MiB 0.31 1277 12761 3103 7993 1665 64.4 MiB 0.10 0.00 5.97718 -125.16 -5.97718 5.97718 0.99 0.000585233 0.000534013 0.0414236 0.0374968 28 3255 22 6.55708e+06 313430 500653. 1732.36 1.49 0.141417 0.126089 21310 115450 -1 2944 27 1362 3925 517482 212113 6.33778 6.33778 -147.822 -6.33778 0 0 612192. 2118.31 0.28 0.19 0.11 -1 -1 0.28 0.0422355 0.037944 156 151 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_091.v common 6.43 vpr 64.99 MiB -1 -1 0.21 20860 12 0.35 -1 -1 36352 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 32 32 300 332 1 237 96 17 17 289 -1 unnamed_device 26.4 MiB 0.36 1509 15864 4261 9502 2101 65.0 MiB 0.13 0.00 5.99144 -132.623 -5.99144 5.99144 0.95 0.000667853 0.000602766 0.0509864 0.045736 34 3963 29 6.55708e+06 385760 585099. 2024.56 2.36 0.239321 0.211376 22462 138074 -1 3207 18 1577 4471 264359 60105 6.4009 6.4009 -152.998 -6.4009 0 0 742403. 2568.87 0.31 0.10 0.14 -1 -1 0.31 0.0342292 0.0309576 213 205 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_092.v common 6.49 vpr 64.57 MiB -1 -1 0.22 20744 12 0.30 -1 -1 36300 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66124 32 32 271 303 1 211 90 17 17 289 -1 unnamed_device 26.0 MiB 0.38 1441 6321 1292 4518 511 64.6 MiB 0.06 0.00 6.22984 -133.478 -6.22984 6.22984 0.98 0.000628589 0.000571056 0.0244115 0.0221861 30 3950 33 6.55708e+06 313430 526063. 1820.29 2.50 0.138501 0.122963 21886 126133 -1 3127 18 1334 4088 215553 48797 6.62964 6.62964 -153.759 -6.62964 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0307224 0.0277284 181 176 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_093.v common 9.91 vpr 65.22 MiB -1 -1 0.24 20904 14 0.57 -1 -1 36616 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66788 32 32 327 359 1 242 95 17 17 289 -1 unnamed_device 26.8 MiB 0.65 1719 11111 2953 7159 999 65.2 MiB 0.11 0.00 7.41762 -149.215 -7.41762 7.41762 0.99 0.000773122 0.000703986 0.045562 0.0413266 38 3999 22 6.55708e+06 373705 638502. 2209.35 5.12 0.332234 0.292417 23326 155178 -1 3586 19 1690 5568 295730 65827 7.76856 7.76856 -168.668 -7.76856 0 0 851065. 2944.86 0.35 0.11 0.15 -1 -1 0.35 0.0411588 0.037308 234 232 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_094.v common 18.85 vpr 64.59 MiB -1 -1 0.23 20672 12 0.27 -1 -1 36472 -1 -1 25 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 30 32 246 278 1 191 87 17 17 289 -1 unnamed_device 26.1 MiB 0.52 1271 10071 2559 6195 1317 64.6 MiB 0.09 0.00 6.01898 -116.357 -6.01898 6.01898 0.99 0.000586413 0.000534263 0.0345079 0.0312823 28 3720 36 6.55708e+06 301375 500653. 1732.36 14.41 0.235106 0.206358 21310 115450 -1 3018 63 1947 7426 1195381 615591 6.70098 6.70098 -138.163 -6.70098 0 0 612192. 2118.31 0.27 0.45 0.12 -1 -1 0.27 0.0784075 0.0691169 160 155 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_095.v common 6.99 vpr 64.26 MiB -1 -1 0.20 20608 11 0.23 -1 -1 36436 -1 -1 26 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65804 27 32 219 251 1 163 85 17 17 289 -1 unnamed_device 25.7 MiB 0.36 966 9199 2718 4523 1958 64.3 MiB 0.07 0.00 5.54984 -101.82 -5.54984 5.54984 0.96 0.000530667 0.000481538 0.0283277 0.0257031 30 2434 16 6.55708e+06 313430 526063. 1820.29 3.20 0.200252 0.174876 21886 126133 -1 2060 17 867 2516 117949 27698 5.91044 5.91044 -117.186 -5.91044 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0230795 0.0206717 140 134 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_096.v common 10.58 vpr 65.10 MiB -1 -1 0.27 21472 13 0.54 -1 -1 36736 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 32 32 380 412 1 282 104 17 17 289 -1 unnamed_device 27.1 MiB 0.54 2014 16208 4001 10076 2131 65.1 MiB 0.17 0.00 6.74784 -141.337 -6.74784 6.74784 0.99 0.0010454 0.00093274 0.0686051 0.0622061 36 5245 34 6.55708e+06 482200 612192. 2118.31 5.83 0.440641 0.392363 22750 144809 -1 4265 17 1858 5984 350586 77283 7.0025 7.0025 -159.382 -7.0025 0 0 782063. 2706.10 0.34 0.13 0.14 -1 -1 0.34 0.0461776 0.0421045 286 285 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_097.v common 5.82 vpr 64.80 MiB -1 -1 0.24 20940 14 0.32 -1 -1 36468 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 31 32 277 309 1 210 91 17 17 289 -1 unnamed_device 26.2 MiB 0.26 1317 9883 2377 6293 1213 64.8 MiB 0.09 0.00 6.76976 -136.909 -6.76976 6.76976 1.01 0.000641262 0.000567466 0.0376069 0.0341581 28 3800 28 6.55708e+06 337540 500653. 1732.36 1.86 0.15838 0.14123 21310 115450 -1 3057 21 1439 3944 216629 51305 7.25056 7.25056 -161.449 -7.25056 0 0 612192. 2118.31 0.28 0.09 0.11 -1 -1 0.28 0.0353157 0.0317567 188 184 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_098.v common 5.85 vpr 64.29 MiB -1 -1 0.22 20400 12 0.21 -1 -1 36336 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65836 32 32 229 261 1 178 91 17 17 289 -1 unnamed_device 25.7 MiB 0.38 1209 5803 1153 4272 378 64.3 MiB 0.05 0.00 5.74904 -129.467 -5.74904 5.74904 0.96 0.000551817 0.000496646 0.0193162 0.0175293 28 3377 27 6.55708e+06 325485 500653. 1732.36 2.06 0.110963 0.0981573 21310 115450 -1 2691 17 971 2710 157184 36793 6.59044 6.59044 -152.216 -6.59044 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0249123 0.0224161 145 134 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_099.v common 7.14 vpr 64.68 MiB -1 -1 0.21 20416 13 0.33 -1 -1 36552 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 32 32 263 295 1 201 90 17 17 289 -1 unnamed_device 26.1 MiB 0.49 1245 6723 1348 5024 351 64.7 MiB 0.06 0.00 6.4825 -132.876 -6.4825 6.4825 0.95 0.000575497 0.00052226 0.0239018 0.0217134 30 3035 17 6.55708e+06 313430 526063. 1820.29 3.15 0.191632 0.168669 21886 126133 -1 2607 14 1040 3159 152222 35906 6.9241 6.9241 -149.633 -6.9241 0 0 666494. 2306.21 0.29 0.06 0.11 -1 -1 0.29 0.0254699 0.0231428 169 168 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_100.v common 9.17 vpr 65.09 MiB -1 -1 0.24 21248 13 0.40 -1 -1 37160 -1 -1 35 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 31 32 321 353 1 256 98 17 17 289 -1 unnamed_device 26.4 MiB 0.33 1646 10673 2541 7619 513 65.1 MiB 0.11 0.00 6.3995 -133.329 -6.3995 6.3995 0.99 0.000783403 0.000697343 0.0420153 0.0378781 36 4459 18 6.55708e+06 421925 612192. 2118.31 4.99 0.321039 0.284281 22750 144809 -1 3498 17 1598 4669 258698 59829 6.5589 6.5589 -150.892 -6.5589 0 0 782063. 2706.10 0.31 0.09 0.14 -1 -1 0.31 0.0340887 0.0307107 233 228 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_101.v common 6.47 vpr 64.68 MiB -1 -1 0.22 21072 11 0.30 -1 -1 36472 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 30 32 287 319 1 212 93 17 17 289 -1 unnamed_device 26.3 MiB 0.30 1403 11013 3057 6717 1239 64.7 MiB 0.10 0.00 5.31404 -108.115 -5.31404 5.31404 0.99 0.000670854 0.000604288 0.0387113 0.0349019 36 3575 42 6.55708e+06 373705 612192. 2118.31 2.43 0.188799 0.166527 22750 144809 -1 2955 17 1230 4145 219684 50443 5.82438 5.82438 -123.766 -5.82438 0 0 782063. 2706.10 0.33 0.09 0.14 -1 -1 0.33 0.0326427 0.0296198 199 196 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_102.v common 8.99 vpr 64.77 MiB -1 -1 0.24 20704 15 0.43 -1 -1 36376 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 296 328 1 223 93 17 17 289 -1 unnamed_device 26.3 MiB 0.64 1457 7653 1626 5517 510 64.8 MiB 0.07 0.00 7.57501 -156.601 -7.57501 7.57501 0.98 0.000733547 0.000662912 0.0288319 0.0261761 36 3360 16 6.55708e+06 349595 612192. 2118.31 4.50 0.306801 0.269639 22750 144809 -1 3046 15 1292 4106 214554 50002 7.73701 7.73701 -172.267 -7.73701 0 0 782063. 2706.10 0.32 0.08 0.14 -1 -1 0.32 0.0291475 0.0262804 202 201 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_103.v common 20.21 vpr 64.57 MiB -1 -1 0.24 21284 13 0.40 -1 -1 36824 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 32 32 285 317 1 224 94 17 17 289 -1 unnamed_device 26.1 MiB 0.55 1440 7549 1494 5236 819 64.6 MiB 0.08 0.00 6.6765 -142.437 -6.6765 6.6765 0.99 0.000735997 0.000662004 0.0292803 0.0265711 28 4852 50 6.55708e+06 361650 500653. 1732.36 15.87 0.291605 0.257631 21310 115450 -1 3418 19 1665 4910 310687 71481 7.2775 7.2775 -168.505 -7.2775 0 0 612192. 2118.31 0.27 0.11 0.12 -1 -1 0.27 0.0356673 0.0321997 194 190 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_104.v common 10.10 vpr 64.41 MiB -1 -1 0.20 20672 12 0.25 -1 -1 36216 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65956 29 32 239 271 1 189 90 17 17 289 -1 unnamed_device 26.0 MiB 0.51 1140 7728 1874 5153 701 64.4 MiB 0.07 0.00 6.0409 -123.312 -6.0409 6.0409 0.99 0.000575075 0.000521056 0.0256449 0.023276 26 3509 40 6.55708e+06 349595 477104. 1650.88 6.15 0.2462 0.215108 21022 109990 -1 2824 18 1249 3354 207236 48201 6.7621 6.7621 -152.094 -6.7621 0 0 585099. 2024.56 0.26 0.08 0.10 -1 -1 0.26 0.0281638 0.0253347 157 150 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_105.v common 8.80 vpr 64.25 MiB -1 -1 0.22 20296 11 0.19 -1 -1 36264 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65796 32 32 235 267 1 176 85 17 17 289 -1 unnamed_device 25.7 MiB 0.25 1035 9199 2539 5604 1056 64.3 MiB 0.07 0.00 5.51064 -114.209 -5.51064 5.51064 0.98 0.000537603 0.00049128 0.0294058 0.026714 30 2701 18 6.55708e+06 253155 526063. 1820.29 4.99 0.199118 0.174808 21886 126133 -1 2281 37 1061 2936 356264 174363 5.83204 5.83204 -130.974 -5.83204 0 0 666494. 2306.21 0.30 0.15 0.13 -1 -1 0.30 0.0415215 0.0364325 145 140 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_106.v common 9.64 vpr 64.74 MiB -1 -1 0.23 20636 13 0.42 -1 -1 36248 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 31 32 294 326 1 226 92 17 17 289 -1 unnamed_device 26.2 MiB 0.59 1588 9200 2221 5587 1392 64.7 MiB 0.09 0.00 6.5197 -136.714 -6.5197 6.5197 0.97 0.000669028 0.000606203 0.0354221 0.0319304 34 4699 41 6.55708e+06 349595 585099. 2024.56 5.20 0.202378 0.178494 22462 138074 -1 3698 20 1822 5744 382066 82130 7.03004 7.03004 -156.968 -7.03004 0 0 742403. 2568.87 0.32 0.13 0.14 -1 -1 0.32 0.0377471 0.0339913 203 201 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_107.v common 5.87 vpr 63.95 MiB -1 -1 0.20 20524 10 0.21 -1 -1 36532 -1 -1 24 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65484 29 32 219 251 1 164 85 17 17 289 -1 unnamed_device 25.4 MiB 0.22 888 12919 4197 6050 2672 63.9 MiB 0.10 0.00 4.85252 -95.7521 -4.85252 4.85252 1.00 0.000521739 0.00047513 0.0392699 0.0356356 28 2578 37 6.55708e+06 289320 500653. 1732.36 2.11 0.142421 0.1267 21310 115450 -1 2049 19 950 2768 177386 54492 5.09292 5.09292 -112.706 -5.09292 0 0 612192. 2118.31 0.28 0.08 0.11 -1 -1 0.28 0.027246 0.0245105 137 130 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_108.v common 7.61 vpr 64.55 MiB -1 -1 0.21 20784 14 0.24 -1 -1 36432 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 32 32 239 271 1 186 88 17 17 289 -1 unnamed_device 26.1 MiB 0.62 1160 6133 1327 4111 695 64.5 MiB 0.06 0.00 6.58503 -138.837 -6.58503 6.58503 0.98 0.000592229 0.000538071 0.021313 0.0193848 30 3009 23 6.55708e+06 289320 526063. 1820.29 3.53 0.185065 0.16206 21886 126133 -1 2560 18 1070 3052 162016 37649 6.94563 6.94563 -157.895 -6.94563 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0265553 0.0238226 146 144 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_109.v common 5.78 vpr 64.51 MiB -1 -1 0.24 20820 13 0.34 -1 -1 36656 -1 -1 30 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66056 31 32 266 298 1 208 93 17 17 289 -1 unnamed_device 26.0 MiB 0.39 1299 7233 1684 4721 828 64.5 MiB 0.07 0.00 6.01698 -127.978 -6.01698 6.01698 1.00 0.0006657 0.000605533 0.0263776 0.0240293 30 3329 27 6.55708e+06 361650 526063. 1820.29 1.67 0.140394 0.125583 21886 126133 -1 2624 16 1222 3448 165262 39645 6.42904 6.42904 -148.171 -6.42904 0 0 666494. 2306.21 0.30 0.08 0.12 -1 -1 0.30 0.0321481 0.02927 180 173 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_110.v common 4.94 vpr 64.22 MiB -1 -1 0.19 20764 12 0.18 -1 -1 36472 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65764 31 32 225 257 1 178 89 17 17 289 -1 unnamed_device 25.7 MiB 0.40 1181 6425 1457 4464 504 64.2 MiB 0.06 0.00 5.40832 -119.105 -5.40832 5.40832 1.00 0.000516774 0.000470324 0.0203006 0.0184362 30 2714 19 6.55708e+06 313430 526063. 1820.29 1.08 0.0981573 0.0869888 21886 126133 -1 2272 15 937 2472 120437 28523 5.57032 5.57032 -134.225 -5.57032 0 0 666494. 2306.21 0.30 0.06 0.12 -1 -1 0.30 0.0222166 0.0200881 138 132 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_111.v common 7.49 vpr 64.60 MiB -1 -1 0.23 21064 12 0.24 -1 -1 36700 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 32 32 288 320 1 216 90 17 17 289 -1 unnamed_device 26.0 MiB 0.36 1423 11949 3325 7202 1422 64.6 MiB 0.10 0.00 5.87384 -125.684 -5.87384 5.87384 0.95 0.000607924 0.000552624 0.0408583 0.0368307 34 3441 32 6.55708e+06 313430 585099. 2024.56 3.44 0.213603 0.187929 22462 138074 -1 2980 36 1303 4335 622556 305370 6.11424 6.11424 -144.877 -6.11424 0 0 742403. 2568.87 0.31 0.24 0.14 -1 -1 0.31 0.0526399 0.0465941 195 193 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_112.v common 7.73 vpr 64.86 MiB -1 -1 0.25 20816 13 0.37 -1 -1 36616 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 31 32 282 314 1 222 92 17 17 289 -1 unnamed_device 26.4 MiB 0.58 1324 9614 2499 5702 1413 64.9 MiB 0.10 0.00 6.1585 -127.708 -6.1585 6.1585 1.00 0.000662199 0.000598859 0.0367823 0.0334416 34 3883 44 6.55708e+06 349595 585099. 2024.56 3.32 0.207837 0.183575 22462 138074 -1 3083 18 1480 4426 256752 60519 7.0397 7.0397 -152.401 -7.0397 0 0 742403. 2568.87 0.33 0.09 0.14 -1 -1 0.33 0.0328678 0.0297402 193 189 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_113.v common 5.22 vpr 64.43 MiB -1 -1 0.21 20716 11 0.21 -1 -1 36060 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 32 32 233 265 1 183 89 17 17 289 -1 unnamed_device 25.7 MiB 0.29 1134 12365 2979 7949 1437 64.4 MiB 0.09 0.00 5.32992 -118.677 -5.32992 5.32992 0.98 0.0005452 0.000498499 0.036376 0.0329445 28 3012 25 6.55708e+06 301375 500653. 1732.36 1.46 0.122091 0.107939 21310 115450 -1 2548 15 1091 3031 178787 41158 5.45212 5.45212 -133.744 -5.45212 0 0 612192. 2118.31 0.28 0.07 0.12 -1 -1 0.28 0.0250549 0.0227411 148 138 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_114.v common 8.14 vpr 64.41 MiB -1 -1 0.18 20472 13 0.26 -1 -1 36488 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65956 32 32 254 286 1 196 88 17 17 289 -1 unnamed_device 26.0 MiB 0.34 1242 6718 1503 4843 372 64.4 MiB 0.06 0.00 6.06844 -129.387 -6.06844 6.06844 0.95 0.00057108 0.000505691 0.0235121 0.0211851 36 3262 21 6.55708e+06 289320 612192. 2118.31 4.33 0.224722 0.196465 22750 144809 -1 2656 16 1073 3129 163760 39668 6.4035 6.4035 -148.285 -6.4035 0 0 782063. 2706.10 0.33 0.07 0.13 -1 -1 0.33 0.0259773 0.0234841 164 159 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_115.v common 7.09 vpr 64.63 MiB -1 -1 0.22 21044 13 0.32 -1 -1 36336 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 32 32 285 317 1 216 92 17 17 289 -1 unnamed_device 26.3 MiB 0.82 1338 8165 1919 5191 1055 64.6 MiB 0.08 0.00 6.5981 -140.056 -6.5981 6.5981 0.97 0.000692242 0.000621313 0.0310369 0.0282108 28 4208 45 6.55708e+06 337540 500653. 1732.36 2.66 0.162722 0.14424 21310 115450 -1 3306 19 1471 4190 274375 64458 7.0789 7.0789 -165.11 -7.0789 0 0 612192. 2118.31 0.26 0.10 0.12 -1 -1 0.26 0.0318735 0.0286215 193 190 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_116.v common 10.32 vpr 64.37 MiB -1 -1 0.23 20544 11 0.24 -1 -1 36572 -1 -1 27 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65916 29 32 243 275 1 185 88 17 17 289 -1 unnamed_device 26.0 MiB 0.24 1157 12958 3912 6886 2160 64.4 MiB 0.10 0.00 5.14238 -100.472 -5.14238 5.14238 0.96 0.000568128 0.000512308 0.0408979 0.0371463 30 2773 17 6.55708e+06 325485 526063. 1820.29 6.56 0.248091 0.217239 21886 126133 -1 2406 20 1056 3183 153838 36976 5.66238 5.66238 -117.749 -5.66238 0 0 666494. 2306.21 0.28 0.07 0.13 -1 -1 0.28 0.0264335 0.0237086 160 154 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_117.v common 8.96 vpr 65.05 MiB -1 -1 0.25 21408 14 0.41 -1 -1 36484 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 318 350 1 251 99 17 17 289 -1 unnamed_device 26.4 MiB 0.43 1540 9219 1921 6673 625 65.0 MiB 0.09 0.00 7.08916 -153.35 -7.08916 7.08916 0.92 0.000737114 0.000657968 0.0342254 0.0309081 36 4009 24 6.55708e+06 421925 612192. 2118.31 4.75 0.2807 0.246365 22750 144809 -1 3551 19 1706 5192 297710 67807 7.20936 7.20936 -171.853 -7.20936 0 0 782063. 2706.10 0.31 0.11 0.14 -1 -1 0.31 0.0373363 0.0336014 224 223 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_118.v common 6.20 vpr 64.28 MiB -1 -1 0.19 20240 12 0.19 -1 -1 36700 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65820 31 32 222 254 1 184 91 17 17 289 -1 unnamed_device 25.7 MiB 0.33 1141 5803 1019 4397 387 64.3 MiB 0.05 0.00 5.57998 -122.603 -5.57998 5.57998 0.99 0.000536314 0.000481598 0.0180867 0.0165552 36 2710 50 6.55708e+06 337540 612192. 2118.31 2.38 0.156451 0.138923 22750 144809 -1 2456 15 987 2590 150302 34867 5.73938 5.73938 -136.06 -5.73938 0 0 782063. 2706.10 0.34 0.06 0.15 -1 -1 0.34 0.0233755 0.0211385 138 129 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_119.v common 6.20 vpr 64.68 MiB -1 -1 0.24 21072 13 0.37 -1 -1 37164 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 32 32 282 314 1 218 89 17 17 289 -1 unnamed_device 26.1 MiB 0.51 1401 5831 1162 4151 518 64.7 MiB 0.06 0.00 6.3179 -130.828 -6.3179 6.3179 0.94 0.000661308 0.000597398 0.02329 0.0211559 30 3961 33 6.55708e+06 301375 526063. 1820.29 2.06 0.139704 0.123762 21886 126133 -1 3056 17 1326 4132 213132 48480 6.74784 6.74784 -149.527 -6.74784 0 0 666494. 2306.21 0.28 0.08 0.13 -1 -1 0.28 0.0292388 0.0262586 189 187 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_120.v common 5.00 vpr 64.23 MiB -1 -1 0.21 20924 13 0.21 -1 -1 36036 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65772 32 32 238 270 1 186 90 17 17 289 -1 unnamed_device 25.9 MiB 0.39 1154 8532 1821 6117 594 64.2 MiB 0.07 0.00 6.0801 -131.077 -6.0801 6.0801 0.95 0.000504908 0.000455152 0.0254649 0.0230913 28 3033 18 6.55708e+06 313430 500653. 1732.36 1.27 0.105928 0.0940583 21310 115450 -1 2656 16 1139 2988 178745 41681 6.4015 6.4015 -150.591 -6.4015 0 0 612192. 2118.31 0.27 0.07 0.10 -1 -1 0.27 0.0226043 0.0203378 151 143 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_121.v common 6.28 vpr 64.76 MiB -1 -1 0.22 20884 12 0.27 -1 -1 36692 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 32 32 269 301 1 199 90 17 17 289 -1 unnamed_device 26.2 MiB 0.31 1328 9135 2290 5829 1016 64.8 MiB 0.08 0.00 5.75104 -128.523 -5.75104 5.75104 0.97 0.000635186 0.000573064 0.0326405 0.029547 36 2969 16 6.55708e+06 313430 612192. 2118.31 2.32 0.184601 0.163081 22750 144809 -1 2680 16 1054 3200 171565 39452 6.11164 6.11164 -145.787 -6.11164 0 0 782063. 2706.10 0.33 0.07 0.14 -1 -1 0.33 0.0291771 0.0264758 176 174 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_122.v common 7.11 vpr 65.30 MiB -1 -1 0.25 21716 15 0.61 -1 -1 36728 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66864 32 32 350 382 1 272 100 17 17 289 -1 unnamed_device 27.0 MiB 0.34 1738 15412 3838 9104 2470 65.3 MiB 0.15 0.00 7.29036 -147.596 -7.29036 7.29036 0.98 0.000833482 0.000756139 0.0597125 0.0538945 40 4166 21 6.55708e+06 433980 666494. 2306.21 2.53 0.267753 0.237541 23614 160646 -1 3840 19 1886 6260 347347 79576 7.44976 7.44976 -165.676 -7.44976 0 0 872365. 3018.56 0.35 0.12 0.16 -1 -1 0.35 0.0429246 0.0387662 256 255 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_123.v common 4.70 vpr 63.58 MiB -1 -1 0.18 20284 10 0.12 -1 -1 36284 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65104 30 32 172 204 1 134 80 17 17 289 -1 unnamed_device 25.1 MiB 0.13 662 9540 2457 5184 1899 63.6 MiB 0.06 0.00 4.48026 -96.9856 -4.48026 4.48026 0.96 0.000411174 0.000373406 0.0241978 0.0220168 28 2152 40 6.55708e+06 216990 500653. 1732.36 1.35 0.0933388 0.0817259 21310 115450 -1 1719 16 764 1817 110155 27660 4.80366 4.80366 -116.401 -4.80366 0 0 612192. 2118.31 0.28 0.05 0.12 -1 -1 0.28 0.0178031 0.0160226 90 81 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_124.v common 11.11 vpr 64.49 MiB -1 -1 0.21 20316 13 0.19 -1 -1 36016 -1 -1 25 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66040 30 32 228 260 1 171 87 17 17 289 -1 unnamed_device 25.9 MiB 0.20 1123 7383 1761 5235 387 64.5 MiB 0.06 0.00 6.05678 -125.888 -6.05678 6.05678 0.99 0.000534325 0.000488751 0.0248231 0.0225925 26 3170 45 6.55708e+06 301375 477104. 1650.88 7.52 0.23496 0.205949 21022 109990 -1 2683 21 1179 3262 257322 62420 6.29718 6.29718 -145.375 -6.29718 0 0 585099. 2024.56 0.25 0.09 0.11 -1 -1 0.25 0.0289153 0.0259004 143 137 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_125.v common 10.98 vpr 64.41 MiB -1 -1 0.20 20776 12 0.25 -1 -1 36620 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65960 32 32 264 296 1 204 88 17 17 289 -1 unnamed_device 25.9 MiB 0.33 1356 7888 1776 5562 550 64.4 MiB 0.07 0.00 6.22784 -134.147 -6.22784 6.22784 0.98 0.000618506 0.000560951 0.0282207 0.0257283 28 3600 32 6.55708e+06 289320 500653. 1732.36 7.08 0.245508 0.215174 21310 115450 -1 3170 25 1765 4936 455151 136992 6.58844 6.58844 -160.201 -6.58844 0 0 612192. 2118.31 0.28 0.16 0.11 -1 -1 0.28 0.0412691 0.0371373 171 169 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_126.v common 5.46 vpr 63.93 MiB -1 -1 0.18 20088 9 0.16 -1 -1 35988 -1 -1 22 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65460 25 32 183 215 1 140 79 17 17 289 -1 unnamed_device 25.5 MiB 0.20 720 10388 2791 6885 712 63.9 MiB 0.07 0.00 4.64166 -82.1817 -4.64166 4.64166 0.98 0.000434977 0.000395531 0.0291387 0.0264173 26 2334 45 6.55708e+06 265210 477104. 1650.88 1.97 0.11637 0.102578 21022 109990 -1 1894 15 817 2246 147446 34756 4.64166 4.64166 -98.9873 -4.64166 0 0 585099. 2024.56 0.25 0.05 0.11 -1 -1 0.25 0.0174369 0.0156996 111 102 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_127.v common 8.77 vpr 65.01 MiB -1 -1 0.24 20756 12 0.33 -1 -1 36352 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 32 32 300 332 1 233 97 17 17 289 -1 unnamed_device 26.5 MiB 0.38 1439 13639 3498 7531 2610 65.0 MiB 0.12 0.00 5.97778 -129.757 -5.97778 5.97778 0.97 0.000692828 0.000635549 0.0466387 0.0421544 36 3694 45 6.55708e+06 397815 612192. 2118.31 4.63 0.325157 0.285608 22750 144809 -1 3219 17 1509 4428 244142 57351 6.2833 6.2833 -149.356 -6.2833 0 0 782063. 2706.10 0.33 0.09 0.14 -1 -1 0.33 0.0303485 0.0274391 212 205 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_128.v common 9.36 vpr 64.73 MiB -1 -1 0.25 20880 13 0.39 -1 -1 36388 -1 -1 30 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 31 32 290 322 1 226 93 17 17 289 -1 unnamed_device 26.3 MiB 0.37 1525 5343 1047 3821 475 64.7 MiB 0.06 0.00 6.88996 -143.277 -6.88996 6.88996 1.00 0.000762515 0.00069176 0.0228156 0.0208188 40 3210 16 6.55708e+06 361650 666494. 2306.21 5.10 0.31831 0.282019 23614 160646 -1 3203 14 1280 3994 241443 56663 7.49096 7.49096 -162.067 -7.49096 0 0 872365. 3018.56 0.36 0.08 0.16 -1 -1 0.36 0.0289428 0.0263518 200 197 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_001.v common 4.47 vpr 65.12 MiB -1 -1 0.15 20612 1 0.03 -1 -1 33660 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 32 32 354 285 1 202 96 17 17 289 -1 unnamed_device 26.4 MiB 0.26 1196 14550 4530 9060 960 65.1 MiB 0.12 0.00 4.30693 -132.707 -4.30693 4.30693 0.94 0.000536483 0.000487568 0.0362865 0.0330681 28 2623 21 6.64007e+06 401856 500653. 1732.36 0.99 0.109921 0.0974563 21970 115934 -1 2365 19 1376 2099 134381 32371 4.36809 4.36809 -152.345 -4.36809 0 0 612192. 2118.31 0.28 0.07 0.12 -1 -1 0.28 0.0250107 0.0223817 154 47 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_002.v common 4.67 vpr 65.17 MiB -1 -1 0.17 20712 1 0.03 -1 -1 33668 -1 -1 24 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 30 32 363 293 1 194 86 17 17 289 -1 unnamed_device 26.4 MiB 0.23 1116 15206 5768 7612 1826 65.2 MiB 0.14 0.00 3.90562 -123.085 -3.90562 3.90562 0.99 0.000527577 0.000483028 0.0456454 0.0417411 32 2480 25 6.64007e+06 301392 554710. 1919.41 1.06 0.126601 0.112562 22834 132086 -1 2244 20 1694 2553 203787 44450 4.22389 4.22389 -146.893 -4.22389 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0270152 0.0241365 139 58 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_003.v common 4.71 vpr 64.42 MiB -1 -1 0.15 20268 1 0.03 -1 -1 33788 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65968 32 32 299 247 1 188 87 17 17 289 -1 unnamed_device 26.0 MiB 0.24 1100 8343 2206 5665 472 64.4 MiB 0.07 0.00 3.63576 -105.397 -3.63576 3.63576 0.95 0.000425829 0.000384928 0.0211366 0.0192439 26 2778 30 6.64007e+06 288834 477104. 1650.88 1.40 0.09531 0.0839849 21682 110474 -1 2263 19 1307 1839 134696 31384 3.73283 3.73283 -124.863 -3.73283 0 0 585099. 2024.56 0.26 0.06 0.10 -1 -1 0.26 0.0199429 0.0177112 126 26 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_004.v common 4.38 vpr 64.55 MiB -1 -1 0.17 20232 1 0.03 -1 -1 33780 -1 -1 27 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 29 32 308 248 1 169 88 17 17 289 -1 unnamed_device 26.2 MiB 0.06 914 8473 2066 5244 1163 64.5 MiB 0.08 0.00 3.59876 -98.7241 -3.59876 3.59876 1.00 0.000471088 0.00043507 0.0227339 0.0208388 32 2021 21 6.64007e+06 339066 554710. 1919.41 0.98 0.0830219 0.0731168 22834 132086 -1 1780 19 1259 2406 137513 33063 3.52743 3.52743 -113.6 -3.52743 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0205628 0.018283 126 25 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_005.v common 4.46 vpr 64.39 MiB -1 -1 0.16 20380 1 0.03 -1 -1 33668 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65940 32 32 336 268 1 174 87 17 17 289 -1 unnamed_device 26.0 MiB 0.07 1035 13143 3355 8253 1535 64.4 MiB 0.12 0.00 3.68447 -111.481 -3.68447 3.68447 1.00 0.000494659 0.000454377 0.0367896 0.0336305 32 2698 23 6.64007e+06 288834 554710. 1919.41 1.05 0.104579 0.0923738 22834 132086 -1 2181 20 1477 2829 197009 43960 3.58463 3.58463 -126.784 -3.58463 0 0 701300. 2426.64 0.29 0.07 0.14 -1 -1 0.29 0.0234818 0.0208334 130 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_006.v common 4.47 vpr 64.97 MiB -1 -1 0.17 20940 1 0.03 -1 -1 33564 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66532 32 32 366 295 1 189 98 17 17 289 -1 unnamed_device 26.3 MiB 0.11 937 16973 5028 9108 2837 65.0 MiB 0.14 0.00 2.80439 -97.2864 -2.80439 2.80439 0.99 0.0005473 0.000501157 0.0438886 0.0399658 32 2260 22 6.64007e+06 426972 554710. 1919.41 1.00 0.118754 0.105164 22834 132086 -1 1949 19 1334 2106 136646 32579 3.06017 3.06017 -117.926 -3.06017 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0228884 0.0202566 142 55 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_007.v common 4.17 vpr 64.39 MiB -1 -1 0.15 20728 1 0.03 -1 -1 34016 -1 -1 19 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65940 27 32 259 221 1 130 78 17 17 289 -1 unnamed_device 25.9 MiB 0.09 653 12196 3652 7586 958 64.4 MiB 0.09 0.00 3.15021 -83.6855 -3.15021 3.15021 0.97 0.000400755 0.000366485 0.0311778 0.028489 28 1529 22 6.64007e+06 238602 500653. 1732.36 0.91 0.0860406 0.0760254 21970 115934 -1 1332 17 762 1300 95990 22111 3.01517 3.01517 -99.8738 -3.01517 0 0 612192. 2118.31 0.26 0.04 0.12 -1 -1 0.26 0.0165556 0.0146572 93 26 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_008.v common 4.10 vpr 64.49 MiB -1 -1 0.14 20236 1 0.03 -1 -1 33616 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66036 31 32 271 219 1 162 94 17 17 289 -1 unnamed_device 25.9 MiB 0.07 956 7549 1719 5275 555 64.5 MiB 0.06 0.00 2.7039 -85.3108 -2.7039 2.7039 0.99 0.000442791 0.000404865 0.0175829 0.0160845 26 2187 20 6.64007e+06 389298 477104. 1650.88 0.86 0.0734231 0.0645452 21682 110474 -1 1930 18 872 1565 106364 24482 2.68577 2.68577 -99.8152 -2.68577 0 0 585099. 2024.56 0.25 0.05 0.11 -1 -1 0.25 0.0181389 0.0161697 115 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_009.v common 4.44 vpr 64.67 MiB -1 -1 0.16 20192 1 0.03 -1 -1 33688 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 31 32 317 271 1 167 83 17 17 289 -1 unnamed_device 26.3 MiB 0.21 888 15203 5232 7676 2295 64.7 MiB 0.11 0.00 2.88585 -99.0745 -2.88585 2.88585 0.99 0.000465298 0.000421863 0.0384827 0.035149 32 2105 22 6.64007e+06 251160 554710. 1919.41 0.96 0.0988279 0.0875006 22834 132086 -1 1775 15 918 1303 86543 20589 3.42123 3.42123 -123.28 -3.42123 0 0 701300. 2426.64 0.30 0.04 0.13 -1 -1 0.30 0.0174907 0.0156067 111 60 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_010.v common 4.30 vpr 64.32 MiB -1 -1 0.15 20128 1 0.03 -1 -1 33952 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65864 32 32 298 248 1 156 81 17 17 289 -1 unnamed_device 25.8 MiB 0.15 847 12681 3700 6629 2352 64.3 MiB 0.10 0.00 3.13721 -104.586 -3.13721 3.13721 0.99 0.000445312 0.000403765 0.0334141 0.0305726 30 1781 21 6.64007e+06 213486 526063. 1820.29 0.96 0.0939345 0.0830484 22546 126617 -1 1567 20 920 1471 86694 20060 2.64937 2.64937 -109.103 -2.64937 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0206731 0.0183223 112 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_011.v common 4.31 vpr 64.50 MiB -1 -1 0.16 20104 1 0.03 -1 -1 33752 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66044 30 32 303 262 1 139 79 17 17 289 -1 unnamed_device 26.0 MiB 0.13 829 12416 3816 6763 1837 64.5 MiB 0.09 0.00 3.22421 -90.9311 -3.22421 3.22421 1.00 0.000460608 0.000419217 0.0340907 0.0311279 32 1625 18 6.64007e+06 213486 554710. 1919.41 0.92 0.0877301 0.0774997 22834 132086 -1 1495 18 788 1261 87782 19635 2.77276 2.77276 -100.737 -2.77276 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0191301 0.017045 98 58 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_012.v common 4.36 vpr 64.43 MiB -1 -1 0.16 20284 1 0.03 -1 -1 33740 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 32 32 276 237 1 166 82 17 17 289 -1 unnamed_device 25.9 MiB 0.25 848 9160 2551 6191 418 64.4 MiB 0.08 0.00 2.9925 -96.4036 -2.9925 2.9925 1.00 0.000413216 0.000377581 0.0242771 0.0221762 30 1833 19 6.64007e+06 226044 526063. 1820.29 0.90 0.077423 0.0681899 22546 126617 -1 1536 16 626 826 40453 10212 2.72177 2.72177 -108.297 -2.72177 0 0 666494. 2306.21 0.29 0.04 0.12 -1 -1 0.29 0.017142 0.0153264 109 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_013.v common 4.70 vpr 64.63 MiB -1 -1 0.16 20760 1 0.03 -1 -1 33876 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 32 32 344 272 1 202 88 17 17 289 -1 unnamed_device 26.1 MiB 0.25 1097 16468 5083 8989 2396 64.6 MiB 0.16 0.00 3.57727 -118.56 -3.57727 3.57727 0.99 0.000512338 0.000460972 0.0475599 0.0433735 28 2618 22 6.64007e+06 301392 500653. 1732.36 1.09 0.126834 0.113281 21970 115934 -1 2226 21 1682 2532 168018 38595 3.43323 3.43323 -129.99 -3.43323 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0267844 0.0239094 139 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_014.v common 4.24 vpr 64.76 MiB -1 -1 0.15 20708 1 0.03 -1 -1 33744 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 32 32 363 295 1 181 95 17 17 289 -1 unnamed_device 26.3 MiB 0.14 885 11975 3159 7689 1127 64.8 MiB 0.10 0.00 4.00586 -111.845 -4.00586 4.00586 0.96 0.000512356 0.00046547 0.0306154 0.027843 28 2323 21 6.64007e+06 389298 500653. 1732.36 0.95 0.100837 0.0886585 21970 115934 -1 1985 19 1273 2181 136796 33376 3.98282 3.98282 -133.029 -3.98282 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0225152 0.0199999 134 58 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_015.v common 4.20 vpr 64.19 MiB -1 -1 0.15 20476 1 0.03 -1 -1 33596 -1 -1 21 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65728 29 32 248 215 1 137 82 17 17 289 -1 unnamed_device 25.8 MiB 0.09 775 13254 3691 7976 1587 64.2 MiB 0.09 0.00 2.74319 -79.3909 -2.74319 2.74319 0.98 0.000385224 0.000350714 0.0300486 0.0274803 32 1649 20 6.64007e+06 263718 554710. 1919.41 0.92 0.0795916 0.0702946 22834 132086 -1 1496 21 828 1417 96091 22472 2.73997 2.73997 -91.0174 -2.73997 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.017698 0.0155926 98 21 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_016.v common 4.42 vpr 64.66 MiB -1 -1 0.16 20648 1 0.03 -1 -1 33768 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66212 32 32 370 297 1 183 86 17 17 289 -1 unnamed_device 26.2 MiB 0.15 1006 9158 2333 6038 787 64.7 MiB 0.09 0.00 3.2847 -102.377 -3.2847 3.2847 0.98 0.000534114 0.000489583 0.0281857 0.0257678 32 2391 19 6.64007e+06 276276 554710. 1919.41 0.98 0.098493 0.0871764 22834 132086 -1 1978 19 1287 2280 149252 34651 2.93997 2.93997 -116.434 -2.93997 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0270469 0.0242011 133 55 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_017.v common 4.53 vpr 64.77 MiB -1 -1 0.16 20612 1 0.03 -1 -1 33676 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 32 32 338 269 1 196 87 17 17 289 -1 unnamed_device 26.2 MiB 0.25 1076 16215 5267 8185 2763 64.8 MiB 0.13 0.00 3.45707 -116.188 -3.45707 3.45707 0.97 0.000511065 0.000464329 0.0451384 0.0412493 30 2575 23 6.64007e+06 288834 526063. 1820.29 1.00 0.115144 0.102265 22546 126617 -1 1987 21 1248 1825 114713 25819 3.10603 3.10603 -121.655 -3.10603 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0244883 0.0217786 138 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_018.v common 4.30 vpr 64.31 MiB -1 -1 0.16 20316 1 0.03 -1 -1 33724 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65856 32 32 323 276 1 153 93 17 17 289 -1 unnamed_device 25.7 MiB 0.11 733 9963 2112 7465 386 64.3 MiB 0.09 0.00 2.30864 -82.5904 -2.30864 2.30864 1.00 0.000511583 0.000465455 0.0256474 0.0234816 30 1696 16 6.64007e+06 364182 526063. 1820.29 0.95 0.0880969 0.0778411 22546 126617 -1 1461 18 949 1531 77686 19458 2.03831 2.03831 -93.6283 -2.03831 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0217778 0.0193725 110 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_019.v common 4.13 vpr 63.64 MiB -1 -1 0.14 20056 1 0.03 -1 -1 33596 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65172 30 32 222 206 1 117 77 17 17 289 -1 unnamed_device 25.2 MiB 0.06 632 10020 2791 6388 841 63.6 MiB 0.06 0.00 1.99153 -69.4618 -1.99153 1.99153 1.00 0.000358268 0.000326701 0.0235151 0.0214684 32 1332 20 6.64007e+06 188370 554710. 1919.41 0.91 0.0688364 0.0605742 22834 132086 -1 1255 19 645 959 78018 17341 2.11931 2.11931 -83.4311 -2.11931 0 0 701300. 2426.64 0.30 0.04 0.13 -1 -1 0.30 0.0156971 0.0138346 81 29 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_020.v common 4.68 vpr 64.46 MiB -1 -1 0.16 20444 1 0.03 -1 -1 33964 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 31 32 291 243 1 171 83 17 17 289 -1 unnamed_device 26.1 MiB 0.23 765 14483 4660 7000 2823 64.5 MiB 0.10 0.00 4.05707 -118.01 -4.05707 4.05707 0.98 0.000439317 0.000404576 0.0380062 0.0347406 32 2345 41 6.64007e+06 251160 554710. 1919.41 1.18 0.116931 0.103406 22834 132086 -1 1661 22 1191 1703 124618 31396 3.69763 3.69763 -131.871 -3.69763 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0226852 0.020162 128 30 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_021.v common 4.28 vpr 64.74 MiB -1 -1 0.15 20324 1 0.03 -1 -1 33992 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 32 32 342 271 1 179 95 17 17 289 -1 unnamed_device 26.3 MiB 0.06 953 9383 2164 6346 873 64.7 MiB 0.09 0.00 3.30836 -104.599 -3.30836 3.30836 0.98 0.00051547 0.000471362 0.0254095 0.0231902 32 2193 24 6.64007e+06 389298 554710. 1919.41 0.97 0.092093 0.0809914 22834 132086 -1 1899 22 1475 2334 159406 36981 3.56663 3.56663 -127.04 -3.56663 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0267615 0.0238231 135 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_022.v common 4.61 vpr 65.13 MiB -1 -1 0.16 20468 1 0.03 -1 -1 33948 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66692 32 32 372 300 1 204 89 17 17 289 -1 unnamed_device 26.3 MiB 0.27 1202 12959 3246 7904 1809 65.1 MiB 0.12 0.00 3.65022 -114.817 -3.65022 3.65022 0.95 0.000557351 0.000511571 0.0381016 0.0347333 32 2653 22 6.64007e+06 313950 554710. 1919.41 1.04 0.112643 0.0996246 22834 132086 -1 2362 21 1431 2289 170954 36763 3.77383 3.77383 -133.19 -3.77383 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0267357 0.0238208 144 59 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_023.v common 4.25 vpr 63.85 MiB -1 -1 0.15 20056 1 0.03 -1 -1 33908 -1 -1 18 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65380 26 32 190 182 1 110 76 17 17 289 -1 unnamed_device 25.4 MiB 0.15 386 10796 4374 4933 1489 63.8 MiB 0.06 0.00 1.89953 -52.9192 -1.89953 1.89953 1.00 0.000311886 0.000284661 0.0228553 0.0209389 30 1152 29 6.64007e+06 226044 526063. 1820.29 0.95 0.0702676 0.0619859 22546 126617 -1 731 16 473 635 36604 10089 2.07431 2.07431 -63.1772 -2.07431 0 0 666494. 2306.21 0.30 0.03 0.12 -1 -1 0.30 0.0125516 0.0112033 77 21 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_024.v common 4.05 vpr 64.50 MiB -1 -1 0.14 20420 1 0.03 -1 -1 33568 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 32 32 285 227 1 165 85 17 17 289 -1 unnamed_device 26.2 MiB 0.05 909 5107 1010 3648 449 64.5 MiB 0.05 0.00 4.21626 -107.088 -4.21626 4.21626 0.97 0.000418946 0.000381305 0.014015 0.0128281 30 2004 19 6.64007e+06 263718 526063. 1820.29 0.93 0.0696948 0.0609645 22546 126617 -1 1782 17 861 1591 83260 19930 3.61942 3.61942 -116.953 -3.61942 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0183194 0.0163202 118 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_025.v common 4.03 vpr 63.98 MiB -1 -1 0.14 19888 1 0.03 -1 -1 33304 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65520 32 32 173 169 1 116 78 17 17 289 -1 unnamed_device 25.6 MiB 0.05 458 10868 3761 4800 2307 64.0 MiB 0.06 0.00 2.08773 -59.5726 -2.08773 2.08773 0.97 0.00029146 0.000265664 0.0203523 0.0185308 30 1117 22 6.64007e+06 175812 526063. 1820.29 0.89 0.0597709 0.0524666 22546 126617 -1 876 14 460 507 31939 8456 2.14231 2.14231 -68.8186 -2.14231 0 0 666494. 2306.21 0.30 0.03 0.12 -1 -1 0.30 0.0112457 0.0100977 79 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_026.v common 4.21 vpr 64.38 MiB -1 -1 0.15 20172 1 0.03 -1 -1 34032 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 32 32 300 245 1 165 94 17 17 289 -1 unnamed_device 26.0 MiB 0.05 967 10318 2612 7198 508 64.4 MiB 0.09 0.00 3.62727 -104.611 -3.62727 3.62727 0.97 0.000486968 0.000435213 0.0242439 0.0221763 32 2046 21 6.64007e+06 376740 554710. 1919.41 0.94 0.082918 0.0730088 22834 132086 -1 1922 19 1057 1725 113632 26926 3.52423 3.52423 -117.948 -3.52423 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0211678 0.0188105 123 21 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_027.v common 4.12 vpr 64.55 MiB -1 -1 0.15 20240 1 0.03 -1 -1 33772 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 32 32 297 233 1 177 95 17 17 289 -1 unnamed_device 26.2 MiB 0.05 945 6791 1345 5207 239 64.6 MiB 0.07 0.00 3.0905 -88.1475 -3.0905 3.0905 0.94 0.000461977 0.000420819 0.0169493 0.0154914 28 2213 20 6.64007e+06 389298 500653. 1732.36 0.93 0.0760478 0.06681 21970 115934 -1 1969 20 1232 2137 133592 32301 2.95517 2.95517 -106.466 -2.95517 0 0 612192. 2118.31 0.27 0.06 0.12 -1 -1 0.27 0.0205659 0.0182959 128 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_028.v common 6.59 vpr 64.49 MiB -1 -1 0.16 20272 1 0.03 -1 -1 33580 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66040 32 32 338 277 1 179 91 17 17 289 -1 unnamed_device 26.1 MiB 0.13 920 18043 6772 8097 3174 64.5 MiB 0.15 0.00 3.69347 -107.378 -3.69347 3.69347 0.96 0.000505478 0.000460411 0.0473065 0.0431296 30 2294 34 6.64007e+06 339066 526063. 1820.29 3.19 0.202684 0.177103 22546 126617 -1 1864 17 1175 2011 120347 28711 4.05323 4.05323 -127.157 -4.05323 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0212105 0.0189833 126 47 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_029.v common 4.29 vpr 64.51 MiB -1 -1 0.15 20212 1 0.03 -1 -1 33572 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66056 32 32 284 241 1 145 80 17 17 289 -1 unnamed_device 26.0 MiB 0.08 842 11948 3523 6824 1601 64.5 MiB 0.09 0.00 2.42079 -85.1807 -2.42079 2.42079 0.99 0.000442932 0.000405297 0.032766 0.029997 32 1785 21 6.64007e+06 200928 554710. 1919.41 0.96 0.0908047 0.0803229 22834 132086 -1 1594 19 936 1559 112369 26334 2.70477 2.70477 -104.017 -2.70477 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0219319 0.0195797 101 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_030.v common 4.31 vpr 64.21 MiB -1 -1 0.15 20444 1 0.03 -1 -1 33740 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65752 30 32 262 227 1 135 85 17 17 289 -1 unnamed_device 25.8 MiB 0.07 696 13105 3093 9300 712 64.2 MiB 0.09 0.00 2.64019 -81.3657 -2.64019 2.64019 0.98 0.000398097 0.000362615 0.0310944 0.0283577 28 1681 20 6.64007e+06 288834 500653. 1732.36 1.08 0.0909756 0.0808327 21970 115934 -1 1529 21 892 1485 105450 24277 2.65557 2.65557 -97.1541 -2.65557 0 0 612192. 2118.31 0.28 0.05 0.12 -1 -1 0.28 0.020256 0.0177884 97 29 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_031.v common 4.20 vpr 64.23 MiB -1 -1 0.16 20456 1 0.03 -1 -1 33800 -1 -1 23 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65772 28 32 260 223 1 140 83 17 17 289 -1 unnamed_device 25.8 MiB 0.05 708 11243 2847 7686 710 64.2 MiB 0.09 0.00 2.6437 -77.5759 -2.6437 2.6437 0.97 0.000404747 0.000367665 0.0272796 0.0248458 32 1692 23 6.64007e+06 288834 554710. 1919.41 0.96 0.0803271 0.0706378 22834 132086 -1 1422 19 908 1572 104687 24124 2.48917 2.48917 -90.9197 -2.48917 0 0 701300. 2426.64 0.30 0.05 0.14 -1 -1 0.30 0.017803 0.0157959 98 27 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_032.v common 3.97 vpr 64.34 MiB -1 -1 0.13 20296 1 0.03 -1 -1 33792 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65880 32 32 253 210 1 154 83 17 17 289 -1 unnamed_device 25.9 MiB 0.05 822 6563 1459 4734 370 64.3 MiB 0.06 0.00 3.07321 -93.4545 -3.07321 3.07321 0.96 0.000400605 0.000368882 0.016264 0.0148656 26 2073 24 6.64007e+06 238602 477104. 1650.88 0.91 0.0741977 0.0652527 21682 110474 -1 1784 17 1102 1796 119920 28780 3.05617 3.05617 -116.597 -3.05617 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.017137 0.0152456 110 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_033.v common 4.22 vpr 64.48 MiB -1 -1 0.15 20440 1 0.03 -1 -1 33532 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66028 31 32 271 231 1 148 90 17 17 289 -1 unnamed_device 26.0 MiB 0.05 814 7326 1575 5462 289 64.5 MiB 0.06 0.00 2.8301 -85.1991 -2.8301 2.8301 0.96 0.000428675 0.000390828 0.0175767 0.0160923 28 1826 20 6.64007e+06 339066 500653. 1732.36 1.03 0.0777799 0.0685677 21970 115934 -1 1612 16 852 1442 89338 21296 2.72157 2.72157 -101.305 -2.72157 0 0 612192. 2118.31 0.28 0.04 0.12 -1 -1 0.28 0.0171248 0.015266 103 26 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_034.v common 4.38 vpr 63.18 MiB -1 -1 0.16 20564 1 0.03 -1 -1 33668 -1 -1 26 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64692 29 32 291 250 1 153 87 17 17 289 -1 unnamed_device 24.6 MiB 0.13 734 11799 3838 5828 2133 63.2 MiB 0.09 0.00 2.6377 -83.8914 -2.6377 2.6377 1.00 0.000439624 0.000401481 0.0291539 0.0266696 32 1680 20 6.64007e+06 326508 554710. 1919.41 0.95 0.0837427 0.0738426 22834 132086 -1 1454 21 1092 1618 93688 22944 2.24871 2.24871 -87.4391 -2.24871 0 0 701300. 2426.64 0.31 0.05 0.13 -1 -1 0.31 0.0210347 0.0186015 105 48 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_035.v common 4.48 vpr 63.77 MiB -1 -1 0.17 20924 1 0.03 -1 -1 33580 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65304 32 32 367 282 1 201 102 17 17 289 -1 unnamed_device 25.4 MiB 0.14 1147 14858 3644 9759 1455 63.8 MiB 0.14 0.00 3.51556 -103.209 -3.51556 3.51556 1.00 0.000497996 0.000454146 0.0371016 0.0338759 30 2508 17 6.64007e+06 477204 526063. 1820.29 0.99 0.105031 0.0928928 22546 126617 -1 2129 19 1106 2113 119083 26614 3.47242 3.47242 -117.403 -3.47242 0 0 666494. 2306.21 0.29 0.06 0.13 -1 -1 0.29 0.0247909 0.0221136 151 26 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_036.v common 4.36 vpr 64.73 MiB -1 -1 0.16 20804 1 0.03 -1 -1 33856 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66280 32 32 391 311 1 192 101 17 17 289 -1 unnamed_device 26.2 MiB 0.14 1097 12321 2991 8150 1180 64.7 MiB 0.11 0.00 3.13721 -109.154 -3.13721 3.13721 0.97 0.000535349 0.000482872 0.031654 0.028847 28 2342 23 6.64007e+06 464646 500653. 1732.36 1.00 0.107206 0.0944727 21970 115934 -1 2078 21 1594 2636 172336 38610 2.99017 2.99017 -120.389 -2.99017 0 0 612192. 2118.31 0.28 0.08 0.11 -1 -1 0.28 0.0283157 0.0252162 147 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_037.v common 4.36 vpr 64.45 MiB -1 -1 0.15 20264 1 0.03 -1 -1 34028 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65992 31 32 279 237 1 161 82 17 17 289 -1 unnamed_device 25.9 MiB 0.24 954 10584 2982 5750 1852 64.4 MiB 0.09 0.00 3.36107 -100.828 -3.36107 3.36107 0.96 0.000435714 0.000396895 0.0278013 0.0254553 32 1948 18 6.64007e+06 238602 554710. 1919.41 0.93 0.0809135 0.0715305 22834 132086 -1 1725 19 1072 1555 109198 24207 3.13083 3.13083 -111.391 -3.13083 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0192089 0.0170227 112 30 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_038.v common 4.52 vpr 64.80 MiB -1 -1 0.17 20744 1 0.03 -1 -1 33928 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 31 32 370 297 1 186 88 17 17 289 -1 unnamed_device 26.3 MiB 0.12 1043 15883 5026 8205 2652 64.8 MiB 0.15 0.00 3.41261 -107.064 -3.41261 3.41261 0.99 0.000524655 0.000477893 0.0480781 0.0432842 32 2529 23 6.64007e+06 313950 554710. 1919.41 1.05 0.121191 0.106877 22834 132086 -1 2164 16 1283 2203 147359 34588 3.02517 3.02517 -114.432 -3.02517 0 0 701300. 2426.64 0.30 0.06 0.14 -1 -1 0.30 0.0230483 0.0206885 138 57 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_039.v common 4.85 vpr 64.88 MiB -1 -1 0.17 20476 1 0.03 -1 -1 33708 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 31 32 377 302 1 233 92 17 17 289 -1 unnamed_device 26.6 MiB 0.40 1340 13547 3729 8310 1508 64.9 MiB 0.14 0.00 4.79918 -147.108 -4.79918 4.79918 0.97 0.000683002 0.000630776 0.04064 0.0372532 32 3086 21 6.64007e+06 364182 554710. 1919.41 1.10 0.121019 0.107894 22834 132086 -1 2575 20 2230 3316 235230 52013 4.65594 4.65594 -162.951 -4.65594 0 0 701300. 2426.64 0.31 0.09 0.13 -1 -1 0.31 0.0288654 0.0258638 172 60 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_040.v common 4.83 vpr 65.06 MiB -1 -1 0.18 20412 1 0.03 -1 -1 33944 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 31 32 383 305 1 209 90 17 17 289 -1 unnamed_device 26.7 MiB 0.39 1177 15768 4837 9550 1381 65.1 MiB 0.15 0.00 4.00182 -123.782 -4.00182 4.00182 0.99 0.000556974 0.000509207 0.0467394 0.0427746 32 2766 21 6.64007e+06 339066 554710. 1919.41 1.05 0.123799 0.11025 22834 132086 -1 2460 21 1763 2696 184464 41992 4.43229 4.43229 -150.43 -4.43229 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0291276 0.0259629 164 60 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_041.v common 4.41 vpr 64.62 MiB -1 -1 0.17 20560 1 0.03 -1 -1 33788 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66168 31 32 352 285 1 184 94 17 17 289 -1 unnamed_device 26.1 MiB 0.14 1019 16495 5182 8759 2554 64.6 MiB 0.15 0.00 3.70647 -110.255 -3.70647 3.70647 0.96 0.000523601 0.00047657 0.0431395 0.0394941 32 2438 17 6.64007e+06 389298 554710. 1919.41 0.98 0.107556 0.095629 22834 132086 -1 2063 19 1116 1974 135829 29952 3.11043 3.11043 -116.992 -3.11043 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0228689 0.020403 135 51 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_042.v common 4.29 vpr 64.38 MiB -1 -1 0.15 20176 1 0.03 -1 -1 33940 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 32 32 291 242 1 179 87 17 17 289 -1 unnamed_device 26.0 MiB 0.20 1049 9303 2544 6213 546 64.4 MiB 0.08 0.00 3.40636 -99.2596 -3.40636 3.40636 0.93 0.000410419 0.000372057 0.0222385 0.0202711 26 2667 21 6.64007e+06 288834 477104. 1650.88 1.04 0.0861826 0.0761024 21682 110474 -1 2198 21 1328 1987 143434 33593 3.70963 3.70963 -121.504 -3.70963 0 0 585099. 2024.56 0.25 0.06 0.10 -1 -1 0.25 0.0204909 0.0181711 119 24 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_043.v common 4.69 vpr 65.01 MiB -1 -1 0.17 21160 1 0.03 -1 -1 34056 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 32 32 457 356 1 223 104 17 17 289 -1 unnamed_device 26.9 MiB 0.19 1280 21332 6196 12657 2479 65.0 MiB 0.20 0.00 4.15173 -137.021 -4.15173 4.15173 0.98 0.000626405 0.000567653 0.0586591 0.0533108 28 2976 20 6.64007e+06 502320 500653. 1732.36 1.14 0.144789 0.128772 21970 115934 -1 2627 21 1587 2380 162638 36475 4.23689 4.23689 -156.017 -4.23689 0 0 612192. 2118.31 0.27 0.08 0.12 -1 -1 0.27 0.0311726 0.0277816 174 84 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_044.v common 4.30 vpr 64.37 MiB -1 -1 0.14 20196 1 0.03 -1 -1 34100 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65912 31 32 261 225 1 142 84 17 17 289 -1 unnamed_device 25.9 MiB 0.08 787 13992 4358 7332 2302 64.4 MiB 0.10 0.00 3.1015 -86.2321 -3.1015 3.1015 0.99 0.000410523 0.000375054 0.0331133 0.0302013 32 1731 22 6.64007e+06 263718 554710. 1919.41 0.95 0.0865693 0.0764358 22834 132086 -1 1564 21 1078 1830 126689 29104 2.96617 2.96617 -101.084 -2.96617 0 0 701300. 2426.64 0.31 0.05 0.13 -1 -1 0.31 0.0190773 0.0168421 101 24 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_045.v common 4.57 vpr 64.73 MiB -1 -1 0.17 20564 1 0.03 -1 -1 33800 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66280 31 32 337 267 1 205 88 17 17 289 -1 unnamed_device 26.2 MiB 0.24 1174 11593 2951 7330 1312 64.7 MiB 0.11 0.00 4.03882 -123.607 -4.03882 4.03882 1.00 0.000526068 0.000481983 0.0328794 0.0300702 32 2669 18 6.64007e+06 313950 554710. 1919.41 1.00 0.0969182 0.085888 22834 132086 -1 2253 18 1330 1909 124860 28554 4.19688 4.19688 -142.553 -4.19688 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0225028 0.020029 144 30 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_046.v common 5.26 vpr 64.65 MiB -1 -1 0.16 20624 1 0.03 -1 -1 33752 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66204 32 32 349 284 1 183 97 17 17 289 -1 unnamed_device 26.2 MiB 0.13 1040 9865 2231 7045 589 64.7 MiB 0.09 0.00 3.2959 -102.587 -3.2959 3.2959 0.94 0.000520889 0.000474322 0.0246588 0.0224973 26 2902 30 6.64007e+06 414414 477104. 1650.88 1.94 0.105655 0.0929888 21682 110474 -1 2296 21 1429 2558 211416 45419 2.94797 2.94797 -115.483 -2.94797 0 0 585099. 2024.56 0.26 0.08 0.11 -1 -1 0.26 0.0269288 0.0240241 131 50 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_047.v common 4.31 vpr 64.50 MiB -1 -1 0.15 20232 1 0.03 -1 -1 33988 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 32 32 291 230 1 168 88 17 17 289 -1 unnamed_device 26.1 MiB 0.08 921 13153 4725 6202 2226 64.5 MiB 0.11 0.00 3.34016 -101.938 -3.34016 3.34016 0.98 0.000493426 0.000448881 0.0330024 0.0302003 32 2178 20 6.64007e+06 301392 554710. 1919.41 0.99 0.0921015 0.0815581 22834 132086 -1 1947 16 1018 1860 129068 28630 3.71263 3.71263 -121.645 -3.71263 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0184248 0.01654 123 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_048.v common 4.87 vpr 64.84 MiB -1 -1 0.16 20556 1 0.03 -1 -1 33824 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 32 32 353 287 1 198 88 17 17 289 -1 unnamed_device 26.3 MiB 0.30 1100 12568 3787 7275 1506 64.8 MiB 0.12 0.00 3.79838 -116.192 -3.79838 3.79838 0.93 0.000561676 0.000514255 0.0361806 0.0330962 26 2739 23 6.64007e+06 301392 477104. 1650.88 1.43 0.110575 0.0978548 21682 110474 -1 2223 17 1053 1458 101923 24470 3.50943 3.50943 -125.767 -3.50943 0 0 585099. 2024.56 0.25 0.05 0.11 -1 -1 0.25 0.0206545 0.0183778 138 52 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_049.v common 4.44 vpr 64.66 MiB -1 -1 0.17 20788 1 0.03 -1 -1 33768 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66208 32 32 361 291 1 185 96 17 17 289 -1 unnamed_device 26.2 MiB 0.14 1042 17835 5101 9890 2844 64.7 MiB 0.15 0.00 2.9151 -99.8849 -2.9151 2.9151 0.97 0.000497796 0.000452624 0.0447294 0.0408126 32 2375 18 6.64007e+06 401856 554710. 1919.41 0.99 0.113639 0.100927 22834 132086 -1 2022 21 1185 2129 136369 31052 2.87277 2.87277 -112.362 -2.87277 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0268521 0.0238569 133 52 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_050.v common 4.43 vpr 64.94 MiB -1 -1 0.16 20676 1 0.03 -1 -1 33908 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 382 305 1 192 101 17 17 289 -1 unnamed_device 26.4 MiB 0.14 1059 13261 3502 8387 1372 64.9 MiB 0.12 0.00 3.83767 -116.965 -3.83767 3.83767 0.96 0.000557441 0.000508039 0.0333277 0.0303985 28 2715 23 6.64007e+06 464646 500653. 1732.36 1.05 0.113884 0.100955 21970 115934 -1 2155 19 1120 1713 106321 24990 3.36183 3.36183 -127.659 -3.36183 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0254801 0.0226758 145 59 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_051.v common 4.16 vpr 64.56 MiB -1 -1 0.16 20164 1 0.03 -1 -1 33736 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66108 32 32 306 248 1 166 93 17 17 289 -1 unnamed_device 26.2 MiB 0.06 956 14793 4143 9325 1325 64.6 MiB 0.12 0.00 3.36216 -101.555 -3.36216 3.36216 0.97 0.000449888 0.000409508 0.0352049 0.0320668 28 2013 21 6.64007e+06 364182 500653. 1732.36 0.92 0.0956067 0.0844962 21970 115934 -1 1879 18 1106 1792 104750 25146 3.67063 3.67063 -122.562 -3.67063 0 0 612192. 2118.31 0.27 0.05 0.10 -1 -1 0.27 0.0196788 0.0175179 122 21 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_052.v common 4.40 vpr 64.83 MiB -1 -1 0.15 20572 1 0.03 -1 -1 33592 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 32 32 319 257 1 198 88 17 17 289 -1 unnamed_device 26.2 MiB 0.23 1128 6523 1329 4737 457 64.8 MiB 0.06 0.00 4.08226 -117.341 -4.08226 4.08226 0.97 0.000530529 0.000484178 0.0175982 0.016104 28 2496 20 6.64007e+06 301392 500653. 1732.36 1.02 0.0840263 0.0740224 21970 115934 -1 2197 18 1415 2046 132547 31268 3.90803 3.90803 -136.423 -3.90803 0 0 612192. 2118.31 0.28 0.06 0.12 -1 -1 0.28 0.0214844 0.0191472 133 26 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_053.v common 6.73 vpr 65.19 MiB -1 -1 0.15 20492 1 0.03 -1 -1 33976 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 31 32 373 299 1 202 88 17 17 289 -1 unnamed_device 26.7 MiB 0.30 1098 9058 2195 6134 729 65.2 MiB 0.10 0.00 4.03253 -119.13 -4.03253 4.03253 0.99 0.0005677 0.000512263 0.0284372 0.0260464 28 2913 21 6.64007e+06 313950 500653. 1732.36 3.13 0.197005 0.173191 21970 115934 -1 2385 21 1621 2614 177259 41649 4.22989 4.22989 -142.416 -4.22989 0 0 612192. 2118.31 0.28 0.08 0.12 -1 -1 0.28 0.0272343 0.0242963 148 58 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_054.v common 4.51 vpr 64.95 MiB -1 -1 0.16 20704 1 0.03 -1 -1 33660 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 32 32 387 315 1 189 86 17 17 289 -1 unnamed_device 26.4 MiB 0.15 1124 14072 4385 7271 2416 65.0 MiB 0.13 0.00 3.49656 -112.385 -3.49656 3.49656 0.98 0.000557676 0.000509438 0.0427732 0.0389698 32 2588 21 6.64007e+06 276276 554710. 1919.41 1.01 0.114237 0.100926 22834 132086 -1 2243 20 1467 2570 184071 40258 3.43623 3.43623 -130.069 -3.43623 0 0 701300. 2426.64 0.30 0.07 0.14 -1 -1 0.30 0.0252534 0.0224082 136 74 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_055.v common 4.17 vpr 64.15 MiB -1 -1 0.14 20524 1 0.03 -1 -1 33672 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65692 32 32 251 219 1 140 88 17 17 289 -1 unnamed_device 25.8 MiB 0.05 774 16078 5363 7580 3135 64.2 MiB 0.10 0.00 2.7229 -81.7933 -2.7229 2.7229 0.95 0.000393036 0.000357289 0.0346989 0.0316635 30 1691 20 6.64007e+06 301392 526063. 1820.29 0.96 0.0890608 0.0789943 22546 126617 -1 1364 21 774 1267 72239 17345 2.59057 2.59057 -90.4198 -2.59057 0 0 666494. 2306.21 0.30 0.05 0.13 -1 -1 0.30 0.0192536 0.0170144 97 20 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_056.v common 4.55 vpr 64.85 MiB -1 -1 0.17 20672 1 0.03 -1 -1 33632 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 341 285 1 187 86 17 17 289 -1 unnamed_device 26.4 MiB 0.24 922 8780 2034 6321 425 64.9 MiB 0.09 0.00 3.21396 -111.632 -3.21396 3.21396 1.00 0.000497604 0.000452582 0.0254333 0.0232526 30 2176 22 6.64007e+06 276276 526063. 1820.29 1.05 0.0946968 0.0835215 22546 126617 -1 1942 19 1118 1634 109074 24567 3.17963 3.17963 -127.682 -3.17963 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0220299 0.0196321 127 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_057.v common 4.62 vpr 64.78 MiB -1 -1 0.17 20736 1 0.03 -1 -1 33820 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 32 32 387 293 1 234 93 17 17 289 -1 unnamed_device 26.5 MiB 0.25 1444 15213 4558 9260 1395 64.8 MiB 0.15 0.00 4.36321 -134.472 -4.36321 4.36321 0.95 0.000537471 0.000489229 0.0438769 0.0400562 32 3354 22 6.64007e+06 364182 554710. 1919.41 1.04 0.121704 0.107779 22834 132086 -1 2787 23 1988 3211 225946 50228 4.80188 4.80188 -156.736 -4.80188 0 0 701300. 2426.64 0.29 0.09 0.13 -1 -1 0.29 0.0303861 0.026968 169 28 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_058.v common 4.25 vpr 64.71 MiB -1 -1 0.16 20232 1 0.03 -1 -1 33428 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 32 32 340 270 1 181 96 17 17 289 -1 unnamed_device 26.3 MiB 0.11 970 11046 2705 7294 1047 64.7 MiB 0.10 0.00 3.50652 -106.961 -3.50652 3.50652 0.98 0.000503438 0.000458033 0.028426 0.026028 28 2125 17 6.64007e+06 401856 500653. 1732.36 0.92 0.0928608 0.0821091 21970 115934 -1 1889 18 1109 1737 104039 25355 3.01997 3.01997 -117.937 -3.01997 0 0 612192. 2118.31 0.26 0.05 0.12 -1 -1 0.26 0.0213373 0.0189948 133 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_059.v common 4.20 vpr 64.29 MiB -1 -1 0.14 20312 1 0.03 -1 -1 33364 -1 -1 26 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65836 30 32 278 235 1 148 88 17 17 289 -1 unnamed_device 25.8 MiB 0.05 709 10423 2778 7222 423 64.3 MiB 0.09 0.00 2.7749 -85.4094 -2.7749 2.7749 0.95 0.000425777 0.000388785 0.0254038 0.0232145 26 1861 25 6.64007e+06 326508 477104. 1650.88 1.06 0.0899459 0.0796328 21682 110474 -1 1493 18 839 1439 89753 21987 2.79397 2.79397 -101.473 -2.79397 0 0 585099. 2024.56 0.25 0.05 0.11 -1 -1 0.25 0.018637 0.0165591 104 29 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_060.v common 4.75 vpr 65.01 MiB -1 -1 0.16 20988 1 0.03 -1 -1 34040 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 32 32 431 332 1 235 91 17 17 289 -1 unnamed_device 26.9 MiB 0.32 1341 15391 4315 9004 2072 65.0 MiB 0.16 0.00 5.2717 -157.472 -5.2717 5.2717 0.97 0.000612051 0.000552761 0.0491874 0.0449588 32 3154 21 6.64007e+06 339066 554710. 1919.41 1.04 0.1306 0.116148 22834 132086 -1 2694 19 1987 2877 203634 45161 5.05954 5.05954 -170.322 -5.05954 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0282235 0.0252331 170 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_061.v common 4.38 vpr 64.70 MiB -1 -1 0.16 20176 1 0.03 -1 -1 33604 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66248 32 32 336 268 1 174 97 17 17 289 -1 unnamed_device 26.2 MiB 0.14 940 10753 2281 7717 755 64.7 MiB 0.10 0.00 3.68047 -113.183 -3.68047 3.68047 0.99 0.000533147 0.000487699 0.0270945 0.0247966 32 2149 23 6.64007e+06 414414 554710. 1919.41 0.98 0.0929355 0.08191 22834 132086 -1 1930 19 1370 2099 141276 33648 3.63983 3.63983 -128.928 -3.63983 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0226651 0.0201491 130 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_062.v common 4.47 vpr 64.02 MiB -1 -1 0.15 20028 1 0.03 -1 -1 33528 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65552 32 32 231 199 1 140 87 17 17 289 -1 unnamed_device 25.7 MiB 0.07 799 12183 3544 6697 1942 64.0 MiB 0.09 0.00 2.8441 -84.2168 -2.8441 2.8441 0.99 0.000395066 0.000360856 0.0269446 0.0245206 26 2010 28 6.64007e+06 288834 477104. 1650.88 1.23 0.0948056 0.0842404 21682 110474 -1 1708 19 918 1519 118842 26575 3.12737 3.12737 -103.162 -3.12737 0 0 585099. 2024.56 0.27 0.06 0.11 -1 -1 0.27 0.0186484 0.0166402 100 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_063.v common 4.35 vpr 64.85 MiB -1 -1 0.17 20460 1 0.03 -1 -1 33540 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 349 273 1 191 98 17 17 289 -1 unnamed_device 26.2 MiB 0.10 1240 16523 4907 9980 1636 64.9 MiB 0.14 0.00 4.79472 -119.275 -4.79472 4.79472 0.94 0.000521529 0.000475443 0.0415695 0.0379014 30 2494 19 6.64007e+06 426972 526063. 1820.29 0.99 0.110635 0.09811 22546 126617 -1 2210 23 1043 2148 121961 26950 4.50728 4.50728 -136.58 -4.50728 0 0 666494. 2306.21 0.28 0.06 0.13 -1 -1 0.28 0.025935 0.0229878 139 26 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_064.v common 4.21 vpr 64.40 MiB -1 -1 0.15 20064 1 0.03 -1 -1 33756 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65948 32 32 247 207 1 147 84 17 17 289 -1 unnamed_device 26.0 MiB 0.05 842 9417 2371 6149 897 64.4 MiB 0.07 0.00 2.8171 -87.5396 -2.8171 2.8171 1.00 0.000418621 0.000383394 0.0225717 0.0206793 30 1812 20 6.64007e+06 251160 526063. 1820.29 0.94 0.0736452 0.0648699 22546 126617 -1 1593 20 839 1528 81527 19610 2.91097 2.91097 -107.186 -2.91097 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0184999 0.0164539 104 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_065.v common 4.24 vpr 64.54 MiB -1 -1 0.14 20148 1 0.03 -1 -1 33728 -1 -1 33 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66092 30 32 278 235 1 147 95 17 17 289 -1 unnamed_device 26.0 MiB 0.09 873 16727 5033 9118 2576 64.5 MiB 0.11 0.00 3.32241 -94.3365 -3.32241 3.32241 0.94 0.000391929 0.000355195 0.0327167 0.0297152 26 2046 27 6.64007e+06 414414 477104. 1650.88 1.06 0.0993687 0.0877634 21682 110474 -1 1758 18 928 1690 112533 25382 3.14437 3.14437 -108.592 -3.14437 0 0 585099. 2024.56 0.25 0.05 0.11 -1 -1 0.25 0.0176577 0.0156306 105 29 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_066.v common 4.65 vpr 64.93 MiB -1 -1 0.15 20476 1 0.03 -1 -1 33612 -1 -1 26 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 29 32 355 287 1 198 87 17 17 289 -1 unnamed_device 26.2 MiB 0.29 1146 14487 4222 8798 1467 64.9 MiB 0.13 0.00 3.72767 -113.402 -3.72767 3.72767 1.00 0.000527677 0.00048039 0.0419746 0.0383383 32 2617 20 6.64007e+06 326508 554710. 1919.41 0.99 0.108889 0.0965473 22834 132086 -1 2228 19 1236 1855 125248 28049 3.62762 3.62762 -125.123 -3.62762 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0234775 0.0209683 139 56 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_067.v common 6.32 vpr 64.52 MiB -1 -1 0.16 20748 1 0.03 -1 -1 33592 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66072 32 32 358 289 1 175 88 17 17 289 -1 unnamed_device 26.1 MiB 0.12 846 5353 1008 3834 511 64.5 MiB 0.05 0.00 3.64276 -108.786 -3.64276 3.64276 0.95 0.000521856 0.000474587 0.0167325 0.0153519 28 2239 22 6.64007e+06 301392 500653. 1732.36 3.05 0.180457 0.157085 21970 115934 -1 1806 17 1325 2074 131473 32877 3.93703 3.93703 -135.491 -3.93703 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0214185 0.0190526 130 51 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_068.v common 4.50 vpr 64.56 MiB -1 -1 0.16 20524 1 0.03 -1 -1 33724 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66108 32 32 353 285 1 181 92 17 17 289 -1 unnamed_device 26.1 MiB 0.12 1095 15617 4548 8970 2099 64.6 MiB 0.14 0.00 3.79167 -119.015 -3.79167 3.79167 1.01 0.000544936 0.000494764 0.0429534 0.0390266 28 2456 19 6.64007e+06 351624 500653. 1732.36 1.02 0.119085 0.105866 21970 115934 -1 2174 17 1087 1929 123561 28639 3.62043 3.62043 -134.07 -3.62043 0 0 612192. 2118.31 0.28 0.07 0.11 -1 -1 0.28 0.0249964 0.0225023 133 48 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_069.v common 4.32 vpr 64.59 MiB -1 -1 0.13 20212 1 0.03 -1 -1 33612 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 276 237 1 159 81 17 17 289 -1 unnamed_device 26.0 MiB 0.25 819 13381 4116 7846 1419 64.6 MiB 0.09 0.00 3.75438 -106.266 -3.75438 3.75438 0.99 0.000448798 0.000412335 0.0292369 0.0268078 30 1818 19 6.64007e+06 213486 526063. 1820.29 0.91 0.0827525 0.0732131 22546 126617 -1 1526 16 662 949 56422 13919 3.26602 3.26602 -111.851 -3.26602 0 0 666494. 2306.21 0.30 0.04 0.12 -1 -1 0.30 0.0167457 0.0149499 105 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_070.v common 4.45 vpr 64.64 MiB -1 -1 0.15 20256 1 0.03 -1 -1 33804 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66192 31 32 319 272 1 168 82 17 17 289 -1 unnamed_device 26.3 MiB 0.23 942 13432 3940 8131 1361 64.6 MiB 0.11 0.00 3.24616 -106.665 -3.24616 3.24616 0.98 0.000489247 0.000432437 0.0380138 0.0346353 30 2058 18 6.64007e+06 238602 526063. 1820.29 0.94 0.0990536 0.0878262 22546 126617 -1 1809 17 1014 1494 86388 20344 3.20383 3.20383 -119.023 -3.20383 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0190259 0.0169487 113 60 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_071.v common 4.31 vpr 64.68 MiB -1 -1 0.15 20388 1 0.03 -1 -1 34012 -1 -1 33 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66236 30 32 329 273 1 166 95 17 17 289 -1 unnamed_device 26.3 MiB 0.12 930 13055 3042 8031 1982 64.7 MiB 0.10 0.00 2.9203 -82.6225 -2.9203 2.9203 0.98 0.000497119 0.00045423 0.0317575 0.029017 28 2055 22 6.64007e+06 414414 500653. 1732.36 0.94 0.102494 0.0908089 21970 115934 -1 1856 21 1077 1929 126833 28747 2.88297 2.88297 -98.3961 -2.88297 0 0 612192. 2118.31 0.26 0.06 0.12 -1 -1 0.26 0.0234311 0.0206957 123 52 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_072.v common 4.20 vpr 64.61 MiB -1 -1 0.16 20560 1 0.03 -1 -1 34000 -1 -1 35 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66164 28 32 277 229 1 155 95 17 17 289 -1 unnamed_device 26.0 MiB 0.09 930 11111 2883 7214 1014 64.6 MiB 0.08 0.00 3.47456 -87.8898 -3.47456 3.47456 0.99 0.000453522 0.000413622 0.0241602 0.0220271 26 2224 20 6.64007e+06 439530 477104. 1650.88 0.97 0.0844724 0.0746492 21682 110474 -1 1888 20 1011 2055 139029 30435 3.56842 3.56842 -106.077 -3.56842 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0198888 0.017609 115 20 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_073.v common 4.34 vpr 64.25 MiB -1 -1 0.15 20524 1 0.03 -1 -1 33760 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65796 30 32 317 269 1 152 80 17 17 289 -1 unnamed_device 25.7 MiB 0.13 748 14012 4480 7511 2021 64.3 MiB 0.11 0.00 3.29461 -93.3105 -3.29461 3.29461 0.99 0.000432096 0.000394056 0.0384997 0.0351553 30 1618 23 6.64007e+06 226044 526063. 1820.29 0.94 0.100663 0.0889568 22546 126617 -1 1430 19 1090 1932 98206 23553 2.82877 2.82877 -103.142 -2.82877 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0215366 0.0190584 108 58 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_074.v common 4.51 vpr 64.66 MiB -1 -1 0.15 20944 1 0.03 -1 -1 33652 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66208 32 32 335 282 1 184 85 17 17 289 -1 unnamed_device 26.2 MiB 0.22 984 15151 4305 8837 2009 64.7 MiB 0.13 0.00 3.14796 -108.448 -3.14796 3.14796 0.98 0.000504249 0.000461631 0.0429209 0.0392851 32 2324 18 6.64007e+06 263718 554710. 1919.41 0.98 0.105837 0.0940618 22834 132086 -1 1969 17 1199 1753 121002 28006 3.08563 3.08563 -120.351 -3.08563 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0213989 0.0191553 121 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_075.v common 4.21 vpr 64.77 MiB -1 -1 0.14 20196 1 0.03 -1 -1 33972 -1 -1 32 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 31 32 293 230 1 175 95 17 17 289 -1 unnamed_device 26.3 MiB 0.05 933 10679 2838 6798 1043 64.8 MiB 0.10 0.00 3.70647 -105.802 -3.70647 3.70647 0.98 0.000491489 0.000450586 0.0244405 0.0223763 28 2250 22 6.64007e+06 401856 500653. 1732.36 0.95 0.0853514 0.075406 21970 115934 -1 2050 17 1133 1983 121787 28476 3.73283 3.73283 -121.348 -3.73283 0 0 612192. 2118.31 0.28 0.05 0.11 -1 -1 0.28 0.0193714 0.0172929 127 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_076.v common 4.62 vpr 65.09 MiB -1 -1 0.15 20520 1 0.03 -1 -1 34000 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 32 32 350 275 1 209 88 17 17 289 -1 unnamed_device 26.3 MiB 0.28 1074 15688 5456 7507 2725 65.1 MiB 0.15 0.00 4.22773 -133.948 -4.22773 4.22773 0.95 0.000523193 0.000480384 0.0447326 0.0408241 32 2897 20 6.64007e+06 301392 554710. 1919.41 1.04 0.115116 0.102359 22834 132086 -1 2406 21 1623 2378 170602 38476 4.43709 4.43709 -154.904 -4.43709 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0263276 0.0235311 146 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_077.v common 4.60 vpr 65.07 MiB -1 -1 0.16 20420 1 0.03 -1 -1 33624 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 32 32 385 308 1 185 98 17 17 289 -1 unnamed_device 26.4 MiB 0.19 1077 18323 5205 10853 2265 65.1 MiB 0.16 0.00 4.17072 -121.395 -4.17072 4.17072 0.99 0.000552592 0.000504595 0.0479682 0.043781 32 2452 22 6.64007e+06 426972 554710. 1919.41 1.03 0.120767 0.107053 22834 132086 -1 2167 18 1134 2022 123505 29587 4.26788 4.26788 -137.146 -4.26788 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0238831 0.0212981 144 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_078.v common 5.01 vpr 64.88 MiB -1 -1 0.16 20804 1 0.03 -1 -1 33956 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 387 309 1 190 101 17 17 289 -1 unnamed_device 26.3 MiB 0.12 1143 15141 4246 9025 1870 64.9 MiB 0.14 0.00 3.49607 -115.357 -3.49607 3.49607 0.98 0.000565734 0.000519433 0.039001 0.0355702 26 2960 28 6.64007e+06 464646 477104. 1650.88 1.56 0.12338 0.109047 21682 110474 -1 2452 21 1687 2988 211590 46337 3.69763 3.69763 -136.117 -3.69763 0 0 585099. 2024.56 0.26 0.08 0.11 -1 -1 0.26 0.0268151 0.0238066 140 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_079.v common 4.27 vpr 64.46 MiB -1 -1 0.14 20288 1 0.03 -1 -1 33740 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 30 32 272 232 1 147 81 17 17 289 -1 unnamed_device 26.0 MiB 0.10 823 11631 3600 5891 2140 64.5 MiB 0.10 0.00 3.00301 -92.1464 -3.00301 3.00301 0.98 0.000475739 0.000423193 0.0313985 0.0287701 32 1818 20 6.64007e+06 238602 554710. 1919.41 0.98 0.0907887 0.080685 22834 132086 -1 1623 19 1048 1871 123041 28498 2.91097 2.91097 -102.44 -2.91097 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0197904 0.0175651 104 29 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_080.v common 4.52 vpr 64.99 MiB -1 -1 0.17 20680 1 0.03 -1 -1 33672 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 30 32 375 299 1 187 85 17 17 289 -1 unnamed_device 26.3 MiB 0.15 982 12361 3297 6808 2256 65.0 MiB 0.12 0.00 3.80967 -114.546 -3.80967 3.80967 1.01 0.000540083 0.000493922 0.0396696 0.0363188 30 2071 20 6.64007e+06 288834 526063. 1820.29 1.02 0.117392 0.104448 22546 126617 -1 1830 21 1326 2140 114381 26656 3.46843 3.46843 -127.125 -3.46843 0 0 666494. 2306.21 0.30 0.06 0.12 -1 -1 0.30 0.0271167 0.0240829 138 58 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_081.v common 4.81 vpr 64.60 MiB -1 -1 0.16 20500 1 0.03 -1 -1 33608 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 32 32 340 270 1 200 90 17 17 289 -1 unnamed_device 26.1 MiB 0.25 1122 10341 2573 7020 748 64.6 MiB 0.10 0.00 4.18044 -127.397 -4.18044 4.18044 0.98 0.0005372 0.000473871 0.0288639 0.0263837 28 2776 31 6.64007e+06 326508 500653. 1732.36 1.29 0.112248 0.0994895 21970 115934 -1 2333 17 1418 2317 185556 40731 3.97629 3.97629 -140.036 -3.97629 0 0 612192. 2118.31 0.27 0.07 0.12 -1 -1 0.27 0.022298 0.0200276 140 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_082.v common 4.69 vpr 64.61 MiB -1 -1 0.16 20600 1 0.03 -1 -1 33824 -1 -1 30 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 31 32 340 275 1 195 93 17 17 289 -1 unnamed_device 26.1 MiB 0.28 1161 15003 4116 8173 2714 64.6 MiB 0.13 0.00 4.34441 -128.021 -4.34441 4.34441 1.00 0.00048742 0.000444629 0.0397408 0.0364316 32 2396 20 6.64007e+06 376740 554710. 1919.41 1.04 0.110439 0.098083 22834 132086 -1 2047 17 1213 1851 110280 27374 4.39928 4.39928 -143.195 -4.39928 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0236005 0.0211473 148 43 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_083.v common 4.58 vpr 64.77 MiB -1 -1 0.17 20552 1 0.03 -1 -1 33948 -1 -1 33 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 30 32 377 310 1 177 95 17 17 289 -1 unnamed_device 26.2 MiB 0.23 1044 11759 2989 7383 1387 64.8 MiB 0.11 0.00 3.42407 -106.623 -3.42407 3.42407 1.00 0.000583787 0.000532365 0.0331882 0.0303699 32 2160 17 6.64007e+06 414414 554710. 1919.41 0.99 0.104374 0.0924178 22834 132086 -1 1923 18 1040 1757 107490 24755 3.06843 3.06843 -118.146 -3.06843 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0246184 0.0220427 135 78 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_084.v common 7.20 vpr 64.63 MiB -1 -1 0.15 20812 1 0.03 -1 -1 33972 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 32 32 365 294 1 185 85 17 17 289 -1 unnamed_device 26.1 MiB 0.13 1104 15709 4957 8968 1784 64.6 MiB 0.14 0.00 3.97286 -117.882 -3.97286 3.97286 0.98 0.00053125 0.000484357 0.0458681 0.041935 26 3139 25 6.64007e+06 263718 477104. 1650.88 3.83 0.194187 0.170888 21682 110474 -1 2468 21 1564 2737 211300 46232 4.05803 4.05803 -141.547 -4.05803 0 0 585099. 2024.56 0.25 0.08 0.11 -1 -1 0.25 0.0246671 0.0217727 134 54 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_085.v common 4.33 vpr 64.66 MiB -1 -1 0.16 20376 1 0.03 -1 -1 33792 -1 -1 31 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66216 29 32 378 310 1 177 92 17 17 289 -1 unnamed_device 26.2 MiB 0.16 959 8786 2264 5705 817 64.7 MiB 0.09 0.00 4.04306 -115.296 -4.04306 4.04306 0.99 0.00053947 0.000495535 0.0253143 0.0231648 30 1959 20 6.64007e+06 389298 526063. 1820.29 0.93 0.0928506 0.0817607 22546 126617 -1 1762 19 981 1595 82514 20381 3.44702 3.44702 -122.484 -3.44702 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.023415 0.0207633 132 79 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_086.v common 4.10 vpr 64.21 MiB -1 -1 0.14 20492 1 0.03 -1 -1 33780 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65748 32 32 243 205 1 139 79 17 17 289 -1 unnamed_device 25.9 MiB 0.04 808 7853 2278 5197 378 64.2 MiB 0.07 0.00 3.02901 -94.3044 -3.02901 3.02901 0.98 0.000413744 0.000378805 0.0205003 0.0187953 30 1667 17 6.64007e+06 188370 526063. 1820.29 0.91 0.0694179 0.0612508 22546 126617 -1 1529 18 704 1063 62391 14707 2.82697 2.82697 -103.932 -2.82697 0 0 666494. 2306.21 0.28 0.04 0.13 -1 -1 0.28 0.0169374 0.015018 96 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_087.v common 4.55 vpr 64.48 MiB -1 -1 0.15 20708 1 0.03 -1 -1 33912 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 32 32 373 302 1 176 96 17 17 289 -1 unnamed_device 26.0 MiB 0.22 1041 11265 2953 7098 1214 64.5 MiB 0.10 0.00 3.57927 -111.63 -3.57927 3.57927 0.97 0.000553713 0.000506808 0.0304148 0.0277906 32 2373 25 6.64007e+06 401856 554710. 1919.41 1.01 0.10481 0.0926654 22834 132086 -1 1993 23 1446 2407 160444 37354 3.68843 3.68843 -133.275 -3.68843 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0275471 0.0243376 132 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_088.v common 4.61 vpr 64.78 MiB -1 -1 0.16 20456 1 0.03 -1 -1 33940 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 32 32 397 314 1 196 86 17 17 289 -1 unnamed_device 26.2 MiB 0.16 1085 10481 2712 6564 1205 64.8 MiB 0.11 0.00 3.83167 -122.912 -3.83167 3.83167 0.99 0.000564435 0.000516177 0.035008 0.0320825 32 2500 19 6.64007e+06 276276 554710. 1919.41 1.07 0.115522 0.1027 22834 132086 -1 2234 22 1836 2896 232480 49794 3.79862 3.79862 -141.658 -3.79862 0 0 701300. 2426.64 0.31 0.09 0.13 -1 -1 0.31 0.0329513 0.0294564 148 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_089.v common 4.95 vpr 64.57 MiB -1 -1 0.15 20360 1 0.03 -1 -1 33912 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 32 32 269 231 1 170 84 17 17 289 -1 unnamed_device 26.0 MiB 0.26 849 10515 2434 7374 707 64.6 MiB 0.08 0.00 3.43261 -99.0662 -3.43261 3.43261 0.99 0.000434558 0.000396566 0.0254274 0.023257 26 2474 36 6.64007e+06 251160 477104. 1650.88 1.59 0.100528 0.0888612 21682 110474 -1 1784 18 1017 1333 92579 25045 3.21157 3.21157 -113.975 -3.21157 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0178542 0.0158177 109 26 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_090.v common 4.08 vpr 64.19 MiB -1 -1 0.15 20320 1 0.03 -1 -1 33940 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65732 31 32 245 205 1 150 84 17 17 289 -1 unnamed_device 25.8 MiB 0.05 725 6855 1556 4919 380 64.2 MiB 0.06 0.00 2.90881 -86.0934 -2.90881 2.90881 0.97 0.000437131 0.000385488 0.0167543 0.01533 26 1979 19 6.64007e+06 263718 477104. 1650.88 0.91 0.0702125 0.0617877 21682 110474 -1 1707 20 1164 1937 137855 32173 2.87477 2.87477 -107.68 -2.87477 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0180437 0.0159782 106 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_091.v common 4.64 vpr 65.26 MiB -1 -1 0.14 20700 1 0.03 -1 -1 33368 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 32 32 348 274 1 211 90 17 17 289 -1 unnamed_device 26.5 MiB 0.23 1077 15366 4010 9290 2066 65.3 MiB 0.13 0.00 4.06553 -131.449 -4.06553 4.06553 0.95 0.000468386 0.000424926 0.0386111 0.0351066 26 2955 30 6.64007e+06 326508 477104. 1650.88 1.25 0.12225 0.108373 21682 110474 -1 2360 21 1604 2071 138474 33193 4.76389 4.76389 -162.532 -4.76389 0 0 585099. 2024.56 0.26 0.07 0.10 -1 -1 0.26 0.0248021 0.0220097 144 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_092.v common 4.67 vpr 64.78 MiB -1 -1 0.16 20580 1 0.03 -1 -1 33600 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 32 32 356 289 1 202 93 17 17 289 -1 unnamed_device 26.3 MiB 0.23 1017 14793 4169 8845 1779 64.8 MiB 0.13 0.00 4.05281 -120 -4.05281 4.05281 0.99 0.000532514 0.000487685 0.0400897 0.036684 32 2729 23 6.64007e+06 364182 554710. 1919.41 1.06 0.121781 0.108695 22834 132086 -1 2273 20 1545 2382 162027 37644 4.21889 4.21889 -142.679 -4.21889 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0261985 0.0233989 155 53 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_093.v common 4.95 vpr 64.93 MiB -1 -1 0.16 20464 1 0.03 -1 -1 33608 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 32 32 349 260 1 204 100 17 17 289 -1 unnamed_device 26.5 MiB 0.09 1196 12860 3267 8782 811 64.9 MiB 0.12 0.00 4.37712 -120.717 -4.37712 4.37712 1.00 0.000560421 0.000513981 0.0332555 0.0304533 26 3061 23 6.64007e+06 452088 477104. 1650.88 1.55 0.120785 0.107879 21682 110474 -1 2518 19 1452 2693 199168 46967 4.77088 4.77088 -150.603 -4.77088 0 0 585099. 2024.56 0.27 0.08 0.11 -1 -1 0.27 0.0268803 0.0240308 153 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_094.v common 4.52 vpr 64.28 MiB -1 -1 0.16 20308 1 0.03 -1 -1 33816 -1 -1 32 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65820 30 32 316 264 1 162 94 17 17 289 -1 unnamed_device 25.9 MiB 0.13 753 9253 2090 6561 602 64.3 MiB 0.08 0.00 2.8471 -83.1749 -2.8471 2.8471 1.01 0.00049148 0.000450447 0.0234486 0.0214842 26 2163 24 6.64007e+06 401856 477104. 1650.88 1.12 0.101242 0.0900749 21682 110474 -1 1801 20 1329 2326 142211 35348 2.80897 2.80897 -101.756 -2.80897 0 0 585099. 2024.56 0.27 0.07 0.11 -1 -1 0.27 0.0241313 0.0215534 121 47 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_095.v common 4.15 vpr 64.03 MiB -1 -1 0.16 20524 1 0.03 -1 -1 34268 -1 -1 21 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65568 27 32 255 219 1 132 80 17 17 289 -1 unnamed_device 25.6 MiB 0.05 723 12292 3852 6881 1559 64.0 MiB 0.09 0.00 2.8251 -81.6115 -2.8251 2.8251 0.99 0.000395231 0.000361846 0.0302604 0.0277055 26 1687 20 6.64007e+06 263718 477104. 1650.88 0.92 0.0824434 0.0728839 21682 110474 -1 1547 20 1023 1524 112376 26620 2.85597 2.85597 -98.2357 -2.85597 0 0 585099. 2024.56 0.25 0.05 0.11 -1 -1 0.25 0.0178132 0.0156778 97 26 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_096.v common 5.47 vpr 65.04 MiB -1 -1 0.16 20716 1 0.03 -1 -1 33972 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 32 32 421 327 1 232 90 17 17 289 -1 unnamed_device 26.7 MiB 0.25 1339 10944 3100 7197 647 65.0 MiB 0.11 0.00 3.53756 -117.737 -3.53756 3.53756 0.97 0.000611299 0.000561507 0.034323 0.0313316 26 3834 31 6.64007e+06 326508 477104. 1650.88 1.97 0.133814 0.118418 21682 110474 -1 2912 20 2008 3288 221889 50519 3.99822 3.99822 -141.168 -3.99822 0 0 585099. 2024.56 0.26 0.08 0.11 -1 -1 0.26 0.0280368 0.0249784 170 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_097.v common 4.70 vpr 64.75 MiB -1 -1 0.18 20496 1 0.03 -1 -1 33764 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 31 32 365 296 1 193 86 17 17 289 -1 unnamed_device 26.2 MiB 0.31 1099 15584 5902 7667 2015 64.8 MiB 0.13 0.00 4.45361 -132.679 -4.45361 4.45361 0.97 0.000525464 0.000479624 0.0460611 0.042081 28 2920 22 6.64007e+06 288834 500653. 1732.36 1.13 0.122884 0.109209 21970 115934 -1 2330 21 1368 2131 162182 37074 4.66349 4.66349 -156.612 -4.66349 0 0 612192. 2118.31 0.26 0.07 0.11 -1 -1 0.26 0.0250595 0.0221552 152 60 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_098.v common 5.01 vpr 64.48 MiB -1 -1 0.15 20408 1 0.03 -1 -1 33740 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 32 32 331 280 1 174 83 17 17 289 -1 unnamed_device 26.2 MiB 0.30 943 14483 5421 7069 1993 64.5 MiB 0.12 0.00 3.74495 -109.733 -3.74495 3.74495 1.00 0.000503275 0.00045859 0.0392806 0.0357229 28 2391 35 6.64007e+06 238602 500653. 1732.36 1.49 0.122112 0.107894 21970 115934 -1 1969 20 1103 1627 128632 28971 3.47022 3.47022 -129.385 -3.47022 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0222521 0.0197711 128 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_099.v common 4.50 vpr 64.65 MiB -1 -1 0.15 20380 1 0.03 -1 -1 34056 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 32 32 326 263 1 176 94 17 17 289 -1 unnamed_device 26.2 MiB 0.06 899 18838 5683 10673 2482 64.6 MiB 0.16 0.00 4.00578 -103.806 -4.00578 4.00578 0.99 0.000506623 0.000463345 0.047307 0.0432776 28 2436 25 6.64007e+06 376740 500653. 1732.36 1.13 0.131132 0.11738 21970 115934 -1 1877 19 1000 1699 113324 28189 4.08822 4.08822 -124.897 -4.08822 0 0 612192. 2118.31 0.27 0.06 0.12 -1 -1 0.27 0.0231012 0.0205971 126 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_100.v common 4.38 vpr 64.97 MiB -1 -1 0.17 20612 1 0.03 -1 -1 33736 -1 -1 34 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 31 32 373 294 1 196 97 17 17 289 -1 unnamed_device 26.4 MiB 0.14 1114 12529 3161 8274 1094 65.0 MiB 0.11 0.00 4.08226 -117.397 -4.08226 4.08226 0.98 0.000575357 0.000526609 0.0337881 0.0308698 26 2637 22 6.64007e+06 426972 477104. 1650.88 1.01 0.113028 0.100238 21682 110474 -1 2178 18 1140 2021 139636 31457 3.76082 3.76082 -126.757 -3.76082 0 0 585099. 2024.56 0.26 0.06 0.11 -1 -1 0.26 0.0240334 0.0214883 145 46 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_101.v common 4.17 vpr 64.75 MiB -1 -1 0.14 20320 1 0.03 -1 -1 33956 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 30 32 325 268 1 171 93 17 17 289 -1 unnamed_device 26.3 MiB 0.12 998 8913 2184 6122 607 64.8 MiB 0.07 0.00 3.0025 -94.8947 -3.0025 3.0025 0.95 0.000440513 0.000394765 0.0212298 0.0193127 32 2188 21 6.64007e+06 389298 554710. 1919.41 0.94 0.080506 0.070408 22834 132086 -1 1882 16 925 1657 113566 25502 2.79777 2.79777 -104.294 -2.79777 0 0 701300. 2426.64 0.30 0.05 0.12 -1 -1 0.30 0.0190754 0.0170449 124 46 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_102.v common 4.60 vpr 65.11 MiB -1 -1 0.16 20712 1 0.03 -1 -1 33760 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 32 32 350 275 1 214 89 17 17 289 -1 unnamed_device 26.6 MiB 0.28 1257 15533 4914 8349 2270 65.1 MiB 0.14 0.00 4.01133 -130.52 -4.01133 4.01133 0.96 0.000527009 0.000485949 0.0432244 0.039461 32 2854 22 6.64007e+06 313950 554710. 1919.41 1.04 0.114919 0.10194 22834 132086 -1 2488 19 1689 2647 182503 42274 4.06769 4.06769 -149.514 -4.06769 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0242304 0.0216162 148 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_103.v common 4.66 vpr 64.95 MiB -1 -1 0.16 20764 1 0.03 -1 -1 33968 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 32 32 386 307 1 195 100 17 17 289 -1 unnamed_device 26.4 MiB 0.15 1083 15412 3866 9802 1744 64.9 MiB 0.15 0.00 3.83767 -120.784 -3.83767 3.83767 1.00 0.000610616 0.000560725 0.0415749 0.0380638 26 2731 26 6.64007e+06 452088 477104. 1650.88 1.18 0.139548 0.124672 21682 110474 -1 2184 20 1303 1993 129383 30872 3.73363 3.73363 -134.905 -3.73363 0 0 585099. 2024.56 0.26 0.07 0.11 -1 -1 0.26 0.0273078 0.0244184 144 59 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_104.v common 4.22 vpr 64.41 MiB -1 -1 0.14 20136 1 0.03 -1 -1 33848 -1 -1 17 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65952 29 32 269 229 1 129 78 17 17 289 -1 unnamed_device 26.0 MiB 0.08 798 8212 2604 3998 1610 64.4 MiB 0.06 0.00 2.88681 -90.1499 -2.88681 2.88681 0.99 0.000405309 0.000370641 0.0224854 0.0206273 32 1525 21 6.64007e+06 213486 554710. 1919.41 0.93 0.0764795 0.0673228 22834 132086 -1 1465 22 1073 1604 138862 31039 2.80997 2.80997 -102.234 -2.80997 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0212389 0.0188582 91 28 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_105.v common 4.53 vpr 64.38 MiB -1 -1 0.16 20292 1 0.03 -1 -1 33948 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65924 32 32 310 266 1 175 85 17 17 289 -1 unnamed_device 26.0 MiB 0.21 933 14221 5048 7423 1750 64.4 MiB 0.11 0.00 3.19816 -104.438 -3.19816 3.19816 0.99 0.000467211 0.000427622 0.0383199 0.0350658 32 2139 20 6.64007e+06 263718 554710. 1919.41 0.99 0.101313 0.0899653 22834 132086 -1 1841 21 1470 1954 165913 36494 3.25603 3.25603 -121.52 -3.25603 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0238219 0.021177 117 55 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_106.v common 4.67 vpr 64.70 MiB -1 -1 0.15 20316 1 0.03 -1 -1 33780 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 31 32 326 261 1 177 100 17 17 289 -1 unnamed_device 26.3 MiB 0.07 1013 14716 3681 8653 2382 64.7 MiB 0.12 0.00 3.81067 -106.754 -3.81067 3.81067 0.97 0.000483155 0.000441019 0.0335725 0.0305836 26 2544 33 6.64007e+06 464646 477104. 1650.88 1.35 0.114363 0.101133 21682 110474 -1 2050 20 1446 2516 166403 38098 3.65163 3.65163 -123.062 -3.65163 0 0 585099. 2024.56 0.26 0.07 0.11 -1 -1 0.26 0.0247096 0.022054 129 29 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_107.v common 4.74 vpr 64.46 MiB -1 -1 0.15 20432 1 0.03 -1 -1 34012 -1 -1 22 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 29 32 262 224 1 168 83 17 17 289 -1 unnamed_device 26.0 MiB 0.26 840 11963 2910 8349 704 64.5 MiB 0.09 0.00 3.36661 -93.92 -3.36661 3.36661 0.98 0.000416618 0.000382218 0.0296484 0.0271687 26 2169 21 6.64007e+06 276276 477104. 1650.88 1.24 0.0964174 0.0859473 21682 110474 -1 1777 18 996 1290 87696 21593 3.20383 3.20383 -107.02 -3.20383 0 0 585099. 2024.56 0.27 0.05 0.11 -1 -1 0.27 0.0182444 0.0162779 109 25 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_108.v common 4.44 vpr 64.07 MiB -1 -1 0.14 20188 1 0.03 -1 -1 33944 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65608 32 32 278 238 1 149 81 17 17 289 -1 unnamed_device 25.6 MiB 0.13 761 12856 5330 7056 470 64.1 MiB 0.10 0.00 3.14521 -97.0435 -3.14521 3.14521 0.98 0.000429244 0.000392398 0.0335134 0.0306109 30 1986 25 6.64007e+06 213486 526063. 1820.29 1.11 0.0950024 0.08407 22546 126617 -1 1521 19 1131 1895 112832 26060 2.79377 2.79377 -104.879 -2.79377 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0188951 0.0167183 108 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_109.v common 4.39 vpr 64.92 MiB -1 -1 0.17 20576 1 0.03 -1 -1 33720 -1 -1 36 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 31 32 373 300 1 181 99 17 17 289 -1 unnamed_device 26.4 MiB 0.13 904 11043 2567 7918 558 64.9 MiB 0.10 0.00 3.26641 -98.7144 -3.26641 3.26641 0.98 0.000551122 0.000501662 0.0282918 0.0257501 26 2199 22 6.64007e+06 452088 477104. 1650.88 1.05 0.103089 0.0908384 21682 110474 -1 1966 21 1520 2377 158388 37700 3.26337 3.26337 -117.713 -3.26337 0 0 585099. 2024.56 0.26 0.07 0.11 -1 -1 0.26 0.0263552 0.0234125 136 60 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_110.v common 4.25 vpr 64.23 MiB -1 -1 0.15 20248 1 0.03 -1 -1 34004 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65768 31 32 265 230 1 162 83 17 17 289 -1 unnamed_device 25.7 MiB 0.21 943 13043 4080 7132 1831 64.2 MiB 0.09 0.00 3.15716 -100.02 -3.15716 3.15716 0.96 0.000422325 0.000385347 0.0314506 0.0287264 28 2021 19 6.64007e+06 251160 500653. 1732.36 0.89 0.0840394 0.0743031 21970 115934 -1 1765 19 921 1320 87424 20203 2.83123 2.83123 -109.185 -2.83123 0 0 612192. 2118.31 0.27 0.04 0.12 -1 -1 0.27 0.0172601 0.0152336 107 30 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_111.v common 4.42 vpr 64.78 MiB -1 -1 0.16 20612 1 0.03 -1 -1 33668 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 32 32 349 286 1 171 96 17 17 289 -1 unnamed_device 26.3 MiB 0.12 1047 11265 2939 7372 954 64.8 MiB 0.10 0.00 2.90281 -97.1946 -2.90281 2.90281 0.98 0.000536233 0.000489188 0.0291112 0.0265445 26 2511 35 6.64007e+06 401856 477104. 1650.88 1.10 0.111643 0.0984952 21682 110474 -1 2187 18 1125 1957 143169 31768 2.88097 2.88097 -111.716 -2.88097 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0214708 0.0190674 127 54 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_112.v common 4.40 vpr 64.80 MiB -1 -1 0.15 20524 1 0.03 -1 -1 33904 -1 -1 32 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 31 32 396 325 1 183 95 17 17 289 -1 unnamed_device 26.3 MiB 0.26 816 14999 3334 10731 934 64.8 MiB 0.12 0.00 3.50555 -107.438 -3.50555 3.50555 0.94 0.000507917 0.000459642 0.0382775 0.0347371 32 2163 22 6.64007e+06 401856 554710. 1919.41 0.96 0.108645 0.0954685 22834 132086 -1 1914 20 1360 2011 128262 31811 3.35903 3.35903 -128.113 -3.35903 0 0 701300. 2426.64 0.30 0.06 0.12 -1 -1 0.30 0.0248583 0.0219848 138 87 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_113.v common 4.41 vpr 64.22 MiB -1 -1 0.15 20460 1 0.03 -1 -1 33232 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65764 32 32 303 262 1 150 81 17 17 289 -1 unnamed_device 25.7 MiB 0.18 839 7956 2116 5376 464 64.2 MiB 0.07 0.00 2.6639 -87.6451 -2.6639 2.6639 0.99 0.000465796 0.000426829 0.0236327 0.0217045 26 2101 19 6.64007e+06 213486 477104. 1650.88 1.02 0.09737 0.0866877 21682 110474 -1 1852 19 905 1466 109737 24796 2.90297 2.90297 -107.411 -2.90297 0 0 585099. 2024.56 0.27 0.05 0.11 -1 -1 0.27 0.0204827 0.0182055 104 54 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_114.v common 4.78 vpr 64.48 MiB -1 -1 0.16 20276 1 0.03 -1 -1 33720 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66032 32 32 290 244 1 175 85 17 17 289 -1 unnamed_device 26.1 MiB 0.24 876 9571 2654 6186 731 64.5 MiB 0.09 0.00 3.43507 -108.022 -3.43507 3.43507 0.99 0.000458795 0.000419654 0.0266126 0.0244254 26 2426 25 6.64007e+06 263718 477104. 1650.88 1.32 0.103552 0.0925107 21682 110474 -1 2008 21 1342 1952 150257 34877 3.53223 3.53223 -127 -3.53223 0 0 585099. 2024.56 0.27 0.07 0.11 -1 -1 0.27 0.0230702 0.0204034 117 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_115.v common 4.45 vpr 64.58 MiB -1 -1 0.16 20428 1 0.03 -1 -1 33780 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 32 32 318 257 1 194 87 17 17 289 -1 unnamed_device 26.2 MiB 0.21 1003 8919 2216 6292 411 64.6 MiB 0.08 0.00 3.92735 -113.653 -3.92735 3.92735 0.97 0.00050181 0.00045491 0.0252281 0.0228855 26 2719 25 6.64007e+06 288834 477104. 1650.88 1.02 0.0947708 0.0833888 21682 110474 -1 2271 22 1750 2380 170906 40867 4.01402 4.01402 -137.726 -4.01402 0 0 585099. 2024.56 0.27 0.07 0.11 -1 -1 0.27 0.0260448 0.0232319 130 27 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_116.v common 4.38 vpr 64.37 MiB -1 -1 0.16 20232 1 0.03 -1 -1 33416 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65916 29 32 324 268 1 168 90 17 17 289 -1 unnamed_device 26.0 MiB 0.18 930 12753 3587 7852 1314 64.4 MiB 0.11 0.00 3.79367 -101.001 -3.79367 3.79367 0.98 0.00050042 0.000461648 0.0332006 0.0304385 32 1927 18 6.64007e+06 364182 554710. 1919.41 0.92 0.0929577 0.082203 22834 132086 -1 1728 20 784 1300 71983 17596 3.28982 3.28982 -106.845 -3.28982 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0214474 0.0189939 122 49 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_117.v common 5.26 vpr 64.90 MiB -1 -1 0.18 20644 1 0.03 -1 -1 33700 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 393 312 1 213 88 17 17 289 -1 unnamed_device 26.4 MiB 0.29 1144 8668 2132 6053 483 64.9 MiB 0.10 0.00 4.33064 -139.566 -4.33064 4.33064 1.00 0.000640171 0.000587821 0.0294391 0.0269935 28 2907 21 6.64007e+06 301392 500653. 1732.36 1.63 0.121532 0.108552 21970 115934 -1 2557 20 1543 2267 154005 36321 4.32789 4.32789 -159.138 -4.32789 0 0 612192. 2118.31 0.28 0.08 0.12 -1 -1 0.28 0.0293549 0.026246 154 62 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_118.v common 4.14 vpr 64.09 MiB -1 -1 0.15 20484 1 0.03 -1 -1 33532 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65624 31 32 229 197 1 138 81 17 17 289 -1 unnamed_device 25.7 MiB 0.05 786 7256 1736 5040 480 64.1 MiB 0.06 0.00 3.1145 -86.7799 -3.1145 3.1145 0.97 0.000393412 0.00035758 0.0180642 0.0164658 32 1729 15 6.64007e+06 226044 554710. 1919.41 0.93 0.0644118 0.0567236 22834 132086 -1 1523 16 717 1183 77762 18330 2.83577 2.83577 -99.0185 -2.83577 0 0 701300. 2426.64 0.30 0.04 0.13 -1 -1 0.30 0.0152351 0.013624 96 -1 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_119.v common 4.48 vpr 64.98 MiB -1 -1 0.16 20592 1 0.03 -1 -1 33596 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 32 32 412 334 1 190 98 17 17 289 -1 unnamed_device 26.4 MiB 0.14 1024 8423 1695 6215 513 65.0 MiB 0.09 0.00 3.32336 -115.72 -3.32336 3.32336 0.93 0.000571384 0.000520466 0.0240255 0.0219261 26 2633 26 6.64007e+06 426972 477104. 1650.88 1.24 0.106359 0.0937309 21682 110474 -1 2184 22 1722 2634 193476 44249 4.21763 4.21763 -147.371 -4.21763 0 0 585099. 2024.56 0.25 0.08 0.10 -1 -1 0.25 0.0282812 0.0250506 145 87 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_120.v common 4.50 vpr 64.60 MiB -1 -1 0.16 20676 1 0.03 -1 -1 33800 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66148 32 32 376 318 1 155 81 17 17 289 -1 unnamed_device 26.3 MiB 0.24 862 5856 1259 3969 628 64.6 MiB 0.06 0.00 2.8021 -101.718 -2.8021 2.8021 0.98 0.00044474 0.00040639 0.0185597 0.0169511 32 1885 22 6.64007e+06 213486 554710. 1919.41 1.00 0.0889713 0.0780844 22834 132086 -1 1730 23 1407 2126 149627 32991 2.75357 2.75357 -119.537 -2.75357 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0277198 0.0245828 114 93 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_121.v common 4.49 vpr 64.38 MiB -1 -1 0.16 20852 1 0.03 -1 -1 33952 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65924 32 32 360 293 1 179 96 17 17 289 -1 unnamed_device 25.9 MiB 0.14 1055 17178 4663 10401 2114 64.4 MiB 0.15 0.00 3.57727 -113.507 -3.57727 3.57727 1.00 0.000572032 0.000524789 0.0464209 0.0425692 32 2191 17 6.64007e+06 401856 554710. 1919.41 0.96 0.115529 0.103111 22834 132086 -1 1900 16 755 1136 72812 16463 3.19363 3.19363 -117.171 -3.19363 0 0 701300. 2426.64 0.31 0.05 0.13 -1 -1 0.31 0.0214001 0.0192163 131 57 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_122.v common 4.72 vpr 64.95 MiB -1 -1 0.15 20476 1 0.03 -1 -1 34076 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 32 32 396 299 1 236 91 17 17 289 -1 unnamed_device 26.7 MiB 0.31 1335 9271 2305 6498 468 65.0 MiB 0.10 0.00 5.15449 -157.077 -5.15449 5.15449 0.95 0.000561035 0.000511572 0.027637 0.0251899 28 3346 25 6.64007e+06 339066 500653. 1732.36 1.24 0.118958 0.105358 21970 115934 -1 2761 20 1906 2716 195918 45456 5.17074 5.17074 -175.159 -5.17074 0 0 612192. 2118.31 0.26 0.08 0.10 -1 -1 0.26 0.0275004 0.0245149 170 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_123.v common 4.69 vpr 64.25 MiB -1 -1 0.15 20420 1 0.03 -1 -1 33664 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65788 30 32 224 207 1 137 80 17 17 289 -1 unnamed_device 25.9 MiB 0.18 694 11776 2901 8194 681 64.2 MiB 0.08 0.00 2.6949 -83.5518 -2.6949 2.6949 0.99 0.000374346 0.000343575 0.0268099 0.0246115 26 1822 19 6.64007e+06 226044 477104. 1650.88 1.36 0.0863419 0.0771202 21682 110474 -1 1537 15 706 867 79118 18448 2.53637 2.53637 -99.7786 -2.53637 0 0 585099. 2024.56 0.27 0.04 0.11 -1 -1 0.27 0.0145912 0.0130638 87 29 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_124.v common 4.35 vpr 64.22 MiB -1 -1 0.15 20332 1 0.03 -1 -1 33588 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65760 30 32 286 239 1 134 78 17 17 289 -1 unnamed_device 25.8 MiB 0.11 622 8046 2217 5453 376 64.2 MiB 0.07 0.00 3.52781 -98.0813 -3.52781 3.52781 1.01 0.000451171 0.000412404 0.023879 0.0219203 32 1513 20 6.64007e+06 200928 554710. 1919.41 0.95 0.0817668 0.0722297 22834 132086 -1 1383 23 1057 1740 120517 29235 3.29237 3.29237 -112.18 -3.29237 0 0 701300. 2426.64 0.32 0.06 0.14 -1 -1 0.32 0.0246545 0.0218787 92 29 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_125.v common 4.33 vpr 64.26 MiB -1 -1 0.16 20388 1 0.03 -1 -1 33584 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65804 32 32 296 247 1 157 85 17 17 289 -1 unnamed_device 25.8 MiB 0.09 973 9943 2727 6389 827 64.3 MiB 0.09 0.00 2.8981 -98.4746 -2.8981 2.8981 0.98 0.000459411 0.000420202 0.0254648 0.0232434 32 2095 24 6.64007e+06 263718 554710. 1919.41 0.98 0.0860139 0.0756808 22834 132086 -1 1899 22 1346 2422 161326 36354 2.67657 2.67657 -109.893 -2.67657 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0237523 0.0211509 115 31 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_126.v common 4.41 vpr 64.29 MiB -1 -1 0.15 20408 1 0.03 -1 -1 33524 -1 -1 27 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65828 25 32 216 194 1 122 84 17 17 289 -1 unnamed_device 25.9 MiB 0.05 492 9051 3183 3832 2036 64.3 MiB 0.06 0.00 2.66619 -62.337 -2.66619 2.66619 1.00 0.000352873 0.000320317 0.0192158 0.0174647 28 1544 44 6.64007e+06 339066 500653. 1732.36 1.22 0.082483 0.0721512 21970 115934 -1 1178 21 769 1308 82674 21746 2.82897 2.82897 -79.5017 -2.82897 0 0 612192. 2118.31 0.26 0.04 0.12 -1 -1 0.26 0.0164335 0.0144591 89 19 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_127.v common 4.57 vpr 64.84 MiB -1 -1 0.16 20536 1 0.03 -1 -1 34016 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 376 307 1 185 85 17 17 289 -1 unnamed_device 26.4 MiB 0.16 968 10129 2752 6860 517 64.8 MiB 0.10 0.00 3.49656 -109.326 -3.49656 3.49656 1.02 0.000553519 0.000508528 0.0333131 0.0305767 32 2517 21 6.64007e+06 263718 554710. 1919.41 1.04 0.11396 0.101427 22834 132086 -1 2145 18 1304 2393 147266 35328 3.64862 3.64862 -125.118 -3.64862 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0262658 0.0235768 136 69 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_128.v common 4.36 vpr 64.88 MiB -1 -1 0.16 20464 1 0.03 -1 -1 33992 -1 -1 35 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 31 32 409 331 1 191 98 17 17 289 -1 unnamed_device 26.3 MiB 0.17 994 18098 5248 10145 2705 64.9 MiB 0.15 0.00 3.48461 -115.489 -3.48461 3.48461 0.95 0.000554583 0.000503299 0.0470752 0.0429682 32 2223 17 6.64007e+06 439530 554710. 1919.41 0.93 0.116376 0.103178 22834 132086 -1 1997 21 1275 1983 132465 30382 3.32283 3.32283 -127.153 -3.32283 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0260486 0.023022 143 86 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_001.v common 4.83 vpr 64.76 MiB -1 -1 0.16 20480 1 0.03 -1 -1 33932 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 32 32 354 285 1 202 94 17 17 289 -1 unnamed_device 26.2 MiB 0.40 1201 11596 3183 7644 769 64.8 MiB 0.12 0.00 4.10361 -125.812 -4.10361 4.10361 0.99 0.000566582 0.00051932 0.0331957 0.030449 32 2695 22 6.65987e+06 380340 554710. 1919.41 1.08 0.114135 0.101695 22834 132086 -1 2370 21 1689 2663 192122 44267 4.37097 4.37097 -146.045 -4.37097 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0279969 0.0250534 152 47 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_002.v common 4.69 vpr 64.87 MiB -1 -1 0.17 20536 1 0.03 -1 -1 33908 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 30 32 363 293 1 194 85 17 17 289 -1 unnamed_device 26.4 MiB 0.29 1028 12919 3478 7430 2011 64.9 MiB 0.11 0.00 3.67516 -116.546 -3.67516 3.67516 1.00 0.000461485 0.000423311 0.0382822 0.0349704 32 2300 22 6.65987e+06 291594 554710. 1919.41 1.03 0.110855 0.0981785 22834 132086 -1 2087 23 1773 2681 217847 48889 4.06163 4.06163 -139.49 -4.06163 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0282674 0.0252199 138 58 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_003.v common 4.71 vpr 64.54 MiB -1 -1 0.14 20292 1 0.03 -1 -1 33896 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 299 247 1 188 87 17 17 289 -1 unnamed_device 26.0 MiB 0.11 990 9111 2326 6160 625 64.5 MiB 0.08 0.00 3.45444 -101.198 -3.45444 3.45444 0.96 0.000470591 0.000432616 0.0228682 0.0208925 26 2754 34 6.65987e+06 291594 477104. 1650.88 1.43 0.102504 0.0905233 21682 110474 -1 2159 21 1419 1933 139005 33080 3.65971 3.65971 -125.591 -3.65971 0 0 585099. 2024.56 0.26 0.06 0.11 -1 -1 0.26 0.0227927 0.0203261 126 26 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_004.v common 4.49 vpr 64.47 MiB -1 -1 0.16 20316 1 0.03 -1 -1 33864 -1 -1 27 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66016 29 32 308 248 1 169 88 17 17 289 -1 unnamed_device 26.0 MiB 0.10 961 9448 2377 6434 637 64.5 MiB 0.09 0.00 3.42544 -95.0241 -3.42544 3.42544 0.99 0.000490797 0.000449643 0.0253326 0.0232181 32 2274 32 6.65987e+06 342306 554710. 1919.41 1.08 0.102717 0.0908526 22834 132086 -1 1949 23 1477 2751 205317 48053 3.77077 3.77077 -115.394 -3.77077 0 0 701300. 2426.64 0.32 0.08 0.13 -1 -1 0.32 0.028072 0.0251183 126 25 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_005.v common 4.95 vpr 64.52 MiB -1 -1 0.13 20228 1 0.03 -1 -1 33340 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66064 32 32 336 268 1 174 87 17 17 289 -1 unnamed_device 26.1 MiB 0.11 1038 11223 3297 6820 1106 64.5 MiB 0.10 0.00 3.48115 -105.918 -3.48115 3.48115 0.96 0.000534501 0.000487641 0.0301776 0.027372 26 2841 36 6.65987e+06 291594 477104. 1650.88 1.71 0.118117 0.104075 21682 110474 -1 2429 21 1642 3124 244971 56234 3.44211 3.44211 -127.418 -3.44211 0 0 585099. 2024.56 0.26 0.08 0.10 -1 -1 0.26 0.0254797 0.0226422 130 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_006.v common 4.56 vpr 64.79 MiB -1 -1 0.16 20920 1 0.03 -1 -1 33632 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 32 32 366 295 1 189 97 17 17 289 -1 unnamed_device 26.2 MiB 0.17 975 16747 5055 8850 2842 64.8 MiB 0.15 0.00 2.68684 -95.2732 -2.68684 2.68684 1.01 0.00053023 0.000482633 0.0437104 0.0399946 32 2436 21 6.65987e+06 418374 554710. 1919.41 1.00 0.118809 0.105588 22834 132086 -1 2122 20 1341 2085 163043 38121 2.86591 2.86591 -112.582 -2.86591 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0282469 0.0253099 141 55 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_007.v common 4.34 vpr 64.08 MiB -1 -1 0.15 20244 1 0.03 -1 -1 34248 -1 -1 18 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65616 27 32 259 221 1 130 77 17 17 289 -1 unnamed_device 25.7 MiB 0.19 599 11487 3197 7530 760 64.1 MiB 0.08 0.00 3.02895 -78.8967 -3.02895 3.02895 0.99 0.000405613 0.000372318 0.0304327 0.0278339 32 1510 21 6.65987e+06 228204 554710. 1919.41 0.93 0.081934 0.0722272 22834 132086 -1 1339 22 876 1460 114115 26601 2.79271 2.79271 -90.8246 -2.79271 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0189023 0.0166774 94 26 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_008.v common 4.36 vpr 64.12 MiB -1 -1 0.16 20064 1 0.03 -1 -1 33884 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65656 31 32 271 219 1 162 94 17 17 289 -1 unnamed_device 25.7 MiB 0.05 1016 13726 3515 8501 1710 64.1 MiB 0.10 0.00 2.49244 -79.5759 -2.49244 2.49244 0.97 0.000409699 0.000369733 0.0294193 0.0268447 28 2181 17 6.65987e+06 393018 500653. 1732.36 1.13 0.0881704 0.0782155 21970 115934 -1 1936 20 881 1615 113371 25610 2.69671 2.69671 -95.456 -2.69671 0 0 612192. 2118.31 0.26 0.05 0.11 -1 -1 0.26 0.0202224 0.0179372 115 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_009.v common 4.44 vpr 64.60 MiB -1 -1 0.16 20368 1 0.03 -1 -1 33752 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 31 32 317 271 1 168 82 17 17 289 -1 unnamed_device 26.2 MiB 0.16 916 10050 2738 6635 677 64.6 MiB 0.09 0.00 2.68253 -95.7293 -2.68253 2.68253 0.98 0.000490594 0.000450709 0.0289334 0.0265542 32 2266 18 6.65987e+06 240882 554710. 1919.41 0.99 0.0922004 0.0818578 22834 132086 -1 1945 22 1307 1967 154501 34998 2.93031 2.93031 -112.163 -2.93031 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0241893 0.0214841 111 60 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_010.v common 4.38 vpr 64.23 MiB -1 -1 0.14 20104 1 0.03 -1 -1 33736 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65772 32 32 298 248 1 156 81 17 17 289 -1 unnamed_device 25.7 MiB 0.27 887 8831 2540 5709 582 64.2 MiB 0.08 0.00 2.98475 -102.648 -2.98475 2.98475 0.98 0.000452789 0.000412229 0.0242785 0.0221865 32 2024 19 6.65987e+06 215526 554710. 1919.41 0.93 0.0819476 0.0724143 22834 132086 -1 1766 17 1079 1734 126415 29621 2.76171 2.76171 -112.682 -2.76171 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0192993 0.0172654 113 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_011.v common 4.49 vpr 64.39 MiB -1 -1 0.15 20568 1 0.03 -1 -1 33712 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 30 32 303 262 1 139 79 17 17 289 -1 unnamed_device 25.9 MiB 0.26 581 7008 1624 4728 656 64.4 MiB 0.05 0.00 3.37455 -89.5123 -3.37455 3.37455 1.01 0.00045425 0.000415204 0.0213438 0.0195969 28 1642 20 6.65987e+06 215526 500653. 1732.36 1.02 0.0926543 0.0822668 21970 115934 -1 1388 20 808 1245 81726 21338 3.19451 3.19451 -104.795 -3.19451 0 0 612192. 2118.31 0.28 0.05 0.11 -1 -1 0.28 0.0219008 0.0195325 98 58 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_012.v common 4.55 vpr 64.08 MiB -1 -1 0.15 20364 1 0.03 -1 -1 33520 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65616 32 32 276 237 1 166 81 17 17 289 -1 unnamed_device 25.7 MiB 0.26 808 12156 4131 6101 1924 64.1 MiB 0.09 0.00 2.91589 -93.835 -2.91589 2.91589 0.95 0.000418456 0.000380958 0.0317682 0.0288935 32 2320 26 6.65987e+06 215526 554710. 1919.41 1.07 0.0972366 0.0859711 22834 132086 -1 1805 20 1252 1676 131364 31687 2.78465 2.78465 -105.169 -2.78465 0 0 701300. 2426.64 0.32 0.06 0.13 -1 -1 0.32 0.0215071 0.0192235 106 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_013.v common 4.64 vpr 64.74 MiB -1 -1 0.17 20228 1 0.03 -1 -1 33968 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 32 32 344 272 1 202 88 17 17 289 -1 unnamed_device 26.4 MiB 0.24 1134 17053 5329 9325 2399 64.7 MiB 0.16 0.00 3.37501 -114.033 -3.37501 3.37501 0.97 0.000539533 0.000492926 0.0485792 0.0443339 30 2375 24 6.65987e+06 304272 526063. 1820.29 1.09 0.124653 0.11085 22546 126617 -1 1938 22 1401 2047 113639 26257 2.87011 2.87011 -116.367 -2.87011 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0254554 0.0226272 139 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_014.v common 4.42 vpr 64.62 MiB -1 -1 0.15 20580 1 0.03 -1 -1 33892 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 32 32 363 295 1 181 94 17 17 289 -1 unnamed_device 26.1 MiB 0.18 1010 13939 4008 8223 1708 64.6 MiB 0.12 0.00 3.76229 -111.647 -3.76229 3.76229 0.98 0.000503291 0.000456325 0.0352141 0.0320718 32 2336 22 6.65987e+06 380340 554710. 1919.41 0.98 0.104248 0.0919638 22834 132086 -1 2100 23 1465 2415 195731 43326 3.61105 3.61105 -126.836 -3.61105 0 0 701300. 2426.64 0.31 0.08 0.12 -1 -1 0.31 0.0272824 0.0241797 133 58 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_015.v common 4.35 vpr 64.12 MiB -1 -1 0.15 20260 1 0.03 -1 -1 33444 -1 -1 21 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65664 29 32 248 215 1 137 82 17 17 289 -1 unnamed_device 25.7 MiB 0.15 786 10940 3196 6656 1088 64.1 MiB 0.08 0.00 2.56293 -76.3929 -2.56293 2.56293 1.00 0.000415456 0.000380897 0.0267714 0.0245548 32 1725 21 6.65987e+06 266238 554710. 1919.41 0.96 0.0805393 0.0713508 22834 132086 -1 1642 19 906 1553 120438 28419 2.96711 2.96711 -93.207 -2.96711 0 0 701300. 2426.64 0.31 0.05 0.13 -1 -1 0.31 0.0187396 0.0166862 98 21 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_016.v common 4.83 vpr 64.64 MiB -1 -1 0.16 20536 1 0.03 -1 -1 33872 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66188 32 32 370 297 1 183 85 17 17 289 -1 unnamed_device 26.2 MiB 0.43 1067 15151 4792 8291 2068 64.6 MiB 0.14 0.00 3.1755 -102.34 -3.1755 3.1755 1.00 0.000557195 0.000509813 0.0488027 0.0446619 28 2507 21 6.65987e+06 266238 500653. 1732.36 1.05 0.133279 0.119294 21970 115934 -1 2185 20 1301 2379 171123 39104 3.17331 3.17331 -120.445 -3.17331 0 0 612192. 2118.31 0.28 0.08 0.11 -1 -1 0.28 0.0290113 0.0259955 132 55 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_017.v common 4.55 vpr 64.67 MiB -1 -1 0.17 20096 1 0.03 -1 -1 34032 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 32 32 338 269 1 196 85 17 17 289 -1 unnamed_device 26.1 MiB 0.24 1111 8641 1896 5966 779 64.7 MiB 0.08 0.00 3.39001 -115.173 -3.39001 3.39001 0.98 0.00051641 0.00047068 0.025245 0.0231013 32 2594 31 6.65987e+06 266238 554710. 1919.41 1.02 0.101014 0.0888572 22834 132086 -1 2207 21 1473 2069 149549 35332 3.35197 3.35197 -129.342 -3.35197 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0251769 0.0224465 137 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_018.v common 4.31 vpr 64.40 MiB -1 -1 0.15 20104 1 0.03 -1 -1 33488 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65944 32 32 323 276 1 153 93 17 17 289 -1 unnamed_device 26.0 MiB 0.22 860 15633 4213 9926 1494 64.4 MiB 0.12 0.00 2.30864 -87.9994 -2.30864 2.30864 0.96 0.000478534 0.00043662 0.037529 0.0342561 28 2005 20 6.65987e+06 367662 500653. 1732.36 0.88 0.0975772 0.0863078 21970 115934 -1 1750 21 949 1465 100623 23403 2.25971 2.25971 -99.4661 -2.25971 0 0 612192. 2118.31 0.28 0.06 0.11 -1 -1 0.28 0.0237282 0.021122 110 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_019.v common 4.22 vpr 63.86 MiB -1 -1 0.14 19972 1 0.03 -1 -1 33716 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65392 30 32 222 206 1 117 77 17 17 289 -1 unnamed_device 25.3 MiB 0.13 642 12139 3393 7690 1056 63.9 MiB 0.08 0.00 1.87027 -67.1558 -1.87027 1.87027 1.00 0.000351543 0.000313783 0.0286748 0.026311 26 1552 23 6.65987e+06 190170 477104. 1650.88 0.93 0.0846916 0.0753263 21682 110474 -1 1319 23 738 1077 88432 19795 1.83285 1.83285 -79.8323 -1.83285 0 0 585099. 2024.56 0.27 0.05 0.11 -1 -1 0.27 0.0186043 0.0164128 81 29 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_020.v common 4.58 vpr 64.47 MiB -1 -1 0.15 20400 1 0.03 -1 -1 33856 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66020 31 32 291 243 1 171 82 17 17 289 -1 unnamed_device 26.0 MiB 0.36 877 9516 2678 5817 1021 64.5 MiB 0.08 0.00 3.85375 -114.422 -3.85375 3.85375 0.98 0.000461513 0.00042258 0.0258398 0.0236376 28 2073 21 6.65987e+06 240882 500653. 1732.36 1.03 0.0951113 0.0844467 21970 115934 -1 1822 17 988 1441 98436 23906 3.58731 3.58731 -128.516 -3.58731 0 0 612192. 2118.31 0.28 0.05 0.11 -1 -1 0.28 0.0198769 0.0178346 127 30 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_021.v common 4.29 vpr 64.60 MiB -1 -1 0.15 20516 1 0.03 -1 -1 33824 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66148 32 32 342 271 1 179 95 17 17 289 -1 unnamed_device 26.1 MiB 0.06 945 10247 2466 6489 1292 64.6 MiB 0.09 0.00 3.36036 -105.343 -3.36036 3.36036 0.95 0.000504333 0.000459715 0.0270029 0.0247071 32 2202 24 6.65987e+06 393018 554710. 1919.41 1.00 0.0995191 0.0877951 22834 132086 -1 1840 22 1389 2190 140546 33893 3.45443 3.45443 -121.348 -3.45443 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0250186 0.0221837 135 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_022.v common 4.62 vpr 64.88 MiB -1 -1 0.17 20540 1 0.03 -1 -1 33988 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 372 300 1 204 87 17 17 289 -1 unnamed_device 26.4 MiB 0.25 1179 11415 3272 7551 592 64.9 MiB 0.12 0.00 3.48504 -112.69 -3.48504 3.48504 1.00 0.000612406 0.000563017 0.036354 0.0332921 30 2666 20 6.65987e+06 291594 526063. 1820.29 1.03 0.118081 0.105188 22546 126617 -1 2242 20 1199 1952 118111 26954 3.45251 3.45251 -122.755 -3.45251 0 0 666494. 2306.21 0.31 0.06 0.12 -1 -1 0.31 0.0254163 0.0226199 142 59 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_023.v common 4.45 vpr 63.75 MiB -1 -1 0.14 19916 1 0.03 -1 -1 34232 -1 -1 18 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65280 26 32 190 182 1 110 76 17 17 289 -1 unnamed_device 25.3 MiB 0.28 366 10796 3597 4768 2431 63.8 MiB 0.06 0.00 1.89953 -51.8374 -1.89953 1.89953 0.95 0.000298869 0.000271654 0.0216368 0.019606 28 1163 25 6.65987e+06 228204 500653. 1732.36 1.11 0.0706546 0.0621231 21970 115934 -1 871 21 679 932 69942 18806 1.95411 1.95411 -66.6483 -1.95411 0 0 612192. 2118.31 0.28 0.04 0.12 -1 -1 0.28 0.0150919 0.0133215 77 21 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_024.v common 4.31 vpr 64.31 MiB -1 -1 0.15 20320 1 0.03 -1 -1 33752 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65852 32 32 285 227 1 165 85 17 17 289 -1 unnamed_device 25.9 MiB 0.10 968 8827 2402 4710 1715 64.3 MiB 0.07 0.00 3.9748 -101.657 -3.9748 3.9748 0.99 0.000400898 0.000363753 0.0225256 0.0205643 32 2265 25 6.65987e+06 266238 554710. 1919.41 0.98 0.0855027 0.0751442 22834 132086 -1 1993 24 1340 2514 197903 45477 3.82377 3.82377 -121.72 -3.82377 0 0 701300. 2426.64 0.30 0.07 0.12 -1 -1 0.30 0.0248499 0.0219799 118 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_025.v common 4.08 vpr 63.32 MiB -1 -1 0.12 20204 1 0.03 -1 -1 33380 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64844 32 32 173 169 1 116 78 17 17 289 -1 unnamed_device 24.9 MiB 0.03 561 10868 4123 5529 1216 63.3 MiB 0.06 0.00 1.96647 -60.997 -1.96647 1.96647 0.98 0.000285294 0.00026138 0.0206226 0.0188222 26 1431 37 6.65987e+06 177492 477104. 1650.88 0.97 0.0720203 0.0635024 21682 110474 -1 1131 15 571 634 48829 12265 1.90885 1.90885 -74.1277 -1.90885 0 0 585099. 2024.56 0.25 0.03 0.11 -1 -1 0.25 0.0109808 0.00979004 79 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_026.v common 4.43 vpr 64.20 MiB -1 -1 0.15 20668 1 0.03 -1 -1 33700 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65740 32 32 300 245 1 165 94 17 17 289 -1 unnamed_device 25.8 MiB 0.10 910 8827 2117 6350 360 64.2 MiB 0.08 0.00 3.42395 -99.0479 -3.42395 3.42395 1.01 0.000478175 0.000437842 0.0226204 0.0207081 30 2048 33 6.65987e+06 380340 526063. 1820.29 1.03 0.0975189 0.0861622 22546 126617 -1 1718 19 816 1390 79849 19289 3.06045 3.06045 -106.198 -3.06045 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0224186 0.0200587 123 21 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_027.v common 4.67 vpr 64.44 MiB -1 -1 0.15 20436 1 0.03 -1 -1 33860 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65984 32 32 297 233 1 177 95 17 17 289 -1 unnamed_device 26.0 MiB 0.10 957 7871 1511 5756 604 64.4 MiB 0.07 0.00 3.00424 -87.8585 -3.00424 3.00424 1.01 0.00049659 0.000456227 0.0194883 0.0179225 28 2425 22 6.65987e+06 393018 500653. 1732.36 1.31 0.0939542 0.083725 21970 115934 -1 2069 20 1240 2276 150563 37159 2.89297 2.89297 -106.454 -2.89297 0 0 612192. 2118.31 0.28 0.07 0.12 -1 -1 0.28 0.0236455 0.0211403 128 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_028.v common 4.43 vpr 64.62 MiB -1 -1 0.16 20340 1 0.03 -1 -1 33620 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66168 32 32 338 277 1 179 90 17 17 289 -1 unnamed_device 26.1 MiB 0.13 1074 11949 3257 7525 1167 64.6 MiB 0.11 0.00 3.32969 -104.177 -3.32969 3.32969 0.98 0.000525303 0.000471542 0.0325974 0.0297648 30 2153 23 6.65987e+06 329628 526063. 1820.29 1.02 0.099091 0.0874562 22546 126617 -1 1901 20 1151 2074 107999 25958 3.17245 3.17245 -118.917 -3.17245 0 0 666494. 2306.21 0.31 0.06 0.12 -1 -1 0.31 0.0255995 0.0228721 125 47 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_029.v common 4.33 vpr 64.15 MiB -1 -1 0.15 20148 1 0.03 -1 -1 33696 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65692 32 32 284 241 1 145 80 17 17 289 -1 unnamed_device 25.6 MiB 0.05 866 10916 2732 6859 1325 64.2 MiB 0.09 0.00 2.29953 -83.7203 -2.29953 2.29953 1.01 0.000454162 0.000415839 0.0306597 0.0280475 32 1924 20 6.65987e+06 202848 554710. 1919.41 0.98 0.0920248 0.0814833 22834 132086 -1 1700 22 1087 1765 140324 31237 2.47431 2.47431 -100.981 -2.47431 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0235405 0.0209254 101 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_030.v common 4.26 vpr 64.30 MiB -1 -1 0.15 20192 1 0.03 -1 -1 33328 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65848 30 32 262 227 1 135 85 17 17 289 -1 unnamed_device 25.8 MiB 0.09 692 12361 2896 8859 606 64.3 MiB 0.09 0.00 2.39767 -77.2396 -2.39767 2.39767 1.00 0.000405664 0.000369213 0.028876 0.0263639 28 1676 25 6.65987e+06 291594 500653. 1732.36 0.99 0.0930189 0.0824315 21970 115934 -1 1516 23 992 1567 120306 27297 2.69071 2.69071 -94.1487 -2.69071 0 0 612192. 2118.31 0.28 0.06 0.11 -1 -1 0.28 0.0214639 0.0190811 97 29 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_031.v common 4.67 vpr 64.10 MiB -1 -1 0.15 20436 1 0.03 -1 -1 33692 -1 -1 23 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65636 28 32 260 223 1 140 83 17 17 289 -1 unnamed_device 25.6 MiB 0.05 705 13223 3574 8883 766 64.1 MiB 0.10 0.00 2.56864 -75.4387 -2.56864 2.56864 0.97 0.000427056 0.000381216 0.030313 0.0275644 32 1739 21 6.65987e+06 291594 554710. 1919.41 1.41 0.099327 0.0870548 22834 132086 -1 1553 25 1147 2037 168435 38318 2.67865 2.67865 -92.2998 -2.67865 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0221237 0.0194925 98 27 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_032.v common 5.56 vpr 64.10 MiB -1 -1 0.14 20404 1 0.03 -1 -1 33564 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65636 32 32 253 210 1 154 83 17 17 289 -1 unnamed_device 25.6 MiB 0.10 819 7103 1550 5206 347 64.1 MiB 0.06 0.00 2.87775 -89.6738 -2.87775 2.87775 0.99 0.000411314 0.000375929 0.0186133 0.017099 26 2029 26 6.65987e+06 240882 477104. 1650.88 2.30 0.148981 0.131259 21682 110474 -1 1882 23 1233 2020 155194 36094 2.96291 2.96291 -110.275 -2.96291 0 0 585099. 2024.56 0.27 0.07 0.11 -1 -1 0.27 0.02316 0.02069 110 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_033.v common 4.20 vpr 64.28 MiB -1 -1 0.16 20288 1 0.03 -1 -1 33472 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65820 31 32 271 231 1 148 90 17 17 289 -1 unnamed_device 25.8 MiB 0.10 832 7125 1484 5327 314 64.3 MiB 0.06 0.00 2.64264 -81.6472 -2.64264 2.64264 0.98 0.000386752 0.00035269 0.0168775 0.0153937 30 1757 20 6.65987e+06 342306 526063. 1820.29 0.92 0.0711108 0.0624054 22546 126617 -1 1521 16 638 1036 51699 12863 2.84071 2.84071 -96.2187 -2.84071 0 0 666494. 2306.21 0.31 0.04 0.12 -1 -1 0.31 0.017718 0.0159182 103 26 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_034.v common 4.46 vpr 64.16 MiB -1 -1 0.15 20260 1 0.03 -1 -1 33812 -1 -1 25 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65696 29 32 291 250 1 153 86 17 17 289 -1 unnamed_device 25.6 MiB 0.23 867 12371 3225 7529 1617 64.2 MiB 0.09 0.00 2.43438 -81.2866 -2.43438 2.43438 0.96 0.00039137 0.000352952 0.0300786 0.0274532 32 1892 40 6.65987e+06 316950 554710. 1919.41 1.06 0.10276 0.0904537 22834 132086 -1 1759 17 1067 1633 120795 28637 2.48105 2.48105 -100.241 -2.48105 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0237051 0.021325 105 48 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_035.v common 4.65 vpr 65.00 MiB -1 -1 0.16 20556 1 0.03 -1 -1 33892 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 32 32 367 282 1 201 101 17 17 289 -1 unnamed_device 26.4 MiB 0.28 1197 11851 2939 7491 1421 65.0 MiB 0.11 0.00 3.51556 -102.262 -3.51556 3.51556 0.98 0.000616575 0.000566938 0.0304742 0.027943 32 2743 22 6.65987e+06 469086 554710. 1919.41 1.02 0.108504 0.096207 22834 132086 -1 2428 19 1399 2418 176579 40985 3.81083 3.81083 -124.054 -3.81083 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0290478 0.0251605 150 26 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_036.v common 4.54 vpr 64.81 MiB -1 -1 0.15 20476 1 0.03 -1 -1 33660 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 391 311 1 192 100 17 17 289 -1 unnamed_device 26.3 MiB 0.28 925 7988 1523 6148 317 64.8 MiB 0.08 0.00 2.98295 -101.27 -2.98295 2.98295 0.96 0.00058634 0.000526598 0.022152 0.0201407 28 2254 20 6.65987e+06 456408 500653. 1732.36 1.05 0.102059 0.0901713 21970 115934 -1 1979 21 1533 2373 162847 39744 2.81651 2.81651 -116.721 -2.81651 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0288908 0.0258629 146 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_037.v common 7.06 vpr 64.20 MiB -1 -1 0.14 20384 1 0.03 -1 -1 33684 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65744 31 32 279 237 1 161 80 17 17 289 -1 unnamed_device 25.9 MiB 0.26 930 12980 3848 7123 2009 64.2 MiB 0.10 0.00 3.35895 -103.085 -3.35895 3.35895 0.96 0.000414757 0.00037825 0.0326208 0.0297399 26 2437 36 6.65987e+06 215526 477104. 1650.88 3.70 0.163884 0.143477 21682 110474 -1 2068 21 1255 1818 162486 35867 3.24371 3.24371 -118.674 -3.24371 0 0 585099. 2024.56 0.26 0.06 0.10 -1 -1 0.26 0.0208948 0.0184544 109 30 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_038.v common 4.66 vpr 64.47 MiB -1 -1 0.17 20508 1 0.03 -1 -1 33704 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66020 31 32 370 297 1 186 87 17 17 289 -1 unnamed_device 25.9 MiB 0.27 984 9495 2466 6339 690 64.5 MiB 0.10 0.00 3.29135 -101.719 -3.29135 3.29135 1.00 0.000603549 0.000542059 0.0305483 0.0279414 32 2423 24 6.65987e+06 304272 554710. 1919.41 1.03 0.111622 0.0989242 22834 132086 -1 2165 20 1569 2662 197766 45777 2.98197 2.98197 -113.19 -2.98197 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0282385 0.0253173 137 57 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_039.v common 4.78 vpr 64.75 MiB -1 -1 0.17 20756 1 0.03 -1 -1 33652 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 31 32 377 302 1 233 90 17 17 289 -1 unnamed_device 26.7 MiB 0.36 1325 15969 5079 8615 2275 64.7 MiB 0.16 0.00 4.59693 -140.865 -4.59693 4.59693 0.96 0.000539008 0.000493953 0.0470465 0.0429834 30 2923 22 6.65987e+06 342306 526063. 1820.29 1.11 0.12724 0.113187 22546 126617 -1 2430 21 1724 2572 139702 33519 4.58483 4.58483 -158.954 -4.58483 0 0 666494. 2306.21 0.29 0.07 0.12 -1 -1 0.29 0.0268688 0.0239653 170 60 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_040.v common 6.12 vpr 65.04 MiB -1 -1 0.18 20408 1 0.03 -1 -1 33856 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 31 32 383 305 1 210 88 17 17 289 -1 unnamed_device 26.5 MiB 1.39 960 15493 5019 7264 3210 65.0 MiB 0.14 0.00 3.8685 -115.065 -3.8685 3.8685 1.00 0.000550277 0.000502549 0.0482428 0.0441347 32 2999 46 6.65987e+06 316950 554710. 1919.41 1.33 0.158973 0.141759 22834 132086 -1 2251 20 1713 2455 205929 51092 4.40017 4.40017 -144.997 -4.40017 0 0 701300. 2426.64 0.32 0.08 0.13 -1 -1 0.32 0.0293244 0.0263483 162 60 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_041.v common 4.88 vpr 64.75 MiB -1 -1 0.17 20724 1 0.03 -1 -1 33988 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 31 32 352 285 1 184 92 17 17 289 -1 unnamed_device 26.2 MiB 0.24 986 10028 2689 6335 1004 64.8 MiB 0.10 0.00 3.49215 -105.367 -3.49215 3.49215 0.99 0.000545496 0.000499392 0.0284813 0.0260912 28 2660 41 6.65987e+06 367662 500653. 1732.36 1.39 0.132953 0.118227 21970 115934 -1 2210 18 1241 2073 150736 35953 3.13651 3.13651 -116.06 -3.13651 0 0 612192. 2118.31 0.28 0.07 0.11 -1 -1 0.28 0.0243752 0.021844 133 51 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_042.v common 4.66 vpr 64.20 MiB -1 -1 0.15 20212 1 0.03 -1 -1 33928 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65740 32 32 291 242 1 179 86 17 17 289 -1 unnamed_device 25.8 MiB 0.18 1047 12749 3689 7720 1340 64.2 MiB 0.10 0.00 3.22104 -94.436 -3.22104 3.22104 0.97 0.000460627 0.000418892 0.0326124 0.0297341 26 2717 28 6.65987e+06 278916 477104. 1650.88 1.31 0.109601 0.0974883 21682 110474 -1 2304 22 1396 2066 171498 37759 3.53425 3.53425 -116.786 -3.53425 0 0 585099. 2024.56 0.26 0.07 0.11 -1 -1 0.26 0.0242955 0.0216001 118 24 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_043.v common 4.84 vpr 64.84 MiB -1 -1 0.17 20408 1 0.03 -1 -1 33800 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 32 32 457 356 1 223 102 17 17 289 -1 unnamed_device 26.7 MiB 0.35 1168 9860 2102 7315 443 64.8 MiB 0.10 0.00 3.94947 -127.563 -3.94947 3.94947 0.97 0.000643293 0.000580099 0.0295889 0.0270427 28 3118 30 6.65987e+06 481764 500653. 1732.36 1.21 0.126022 0.111001 21970 115934 -1 2514 20 1600 2560 172529 41584 4.02637 4.02637 -148.775 -4.02637 0 0 612192. 2118.31 0.27 0.07 0.12 -1 -1 0.27 0.0280017 0.0248526 172 84 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_044.v common 4.35 vpr 64.08 MiB -1 -1 0.15 20328 1 0.03 -1 -1 33792 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65620 31 32 261 225 1 142 84 17 17 289 -1 unnamed_device 25.6 MiB 0.13 861 13992 4603 7259 2130 64.1 MiB 0.10 0.00 2.75978 -83.8234 -2.75978 2.75978 1.00 0.000400831 0.000365714 0.0332463 0.0303548 32 1879 24 6.65987e+06 266238 554710. 1919.41 0.96 0.0861922 0.0759865 22834 132086 -1 1713 23 1207 2070 169903 37716 2.70651 2.70651 -100.28 -2.70651 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0208783 0.0184798 101 24 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_045.v common 4.52 vpr 64.54 MiB -1 -1 0.17 20132 1 0.03 -1 -1 33788 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 31 32 337 267 1 205 86 17 17 289 -1 unnamed_device 26.0 MiB 0.22 1148 6512 1358 4648 506 64.5 MiB 0.07 0.00 4.03882 -119.799 -4.03882 4.03882 0.96 0.000532343 0.000488312 0.0192027 0.0175485 30 2533 19 6.65987e+06 291594 526063. 1820.29 1.15 0.0892214 0.0789651 22546 126617 -1 2151 17 1030 1532 99474 22742 3.98448 3.98448 -136.029 -3.98448 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0206087 0.0184433 142 30 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_046.v common 5.40 vpr 64.69 MiB -1 -1 0.16 20652 1 0.03 -1 -1 33948 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 32 32 349 284 1 183 97 17 17 289 -1 unnamed_device 26.1 MiB 0.15 1060 10753 2622 7412 719 64.7 MiB 0.10 0.00 3.1757 -100.669 -3.1757 3.1757 0.99 0.000551551 0.000506252 0.0280845 0.0257073 26 2754 23 6.65987e+06 418374 477104. 1650.88 1.99 0.11241 0.100065 21682 110474 -1 2275 20 1272 2307 172178 38188 2.94691 2.94691 -115.162 -2.94691 0 0 585099. 2024.56 0.26 0.07 0.11 -1 -1 0.26 0.0261884 0.0234417 131 50 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_047.v common 6.47 vpr 64.51 MiB -1 -1 0.15 20504 1 0.03 -1 -1 33976 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66056 32 32 291 230 1 168 88 17 17 289 -1 unnamed_device 26.1 MiB 0.10 967 13153 4757 6487 1909 64.5 MiB 0.10 0.00 3.15084 -98.9488 -3.15084 3.15084 0.96 0.000449007 0.000409773 0.0331916 0.0303285 30 2076 23 6.65987e+06 304272 526063. 1820.29 3.21 0.170067 0.148725 22546 126617 -1 1779 21 1161 2238 136445 32381 3.65971 3.65971 -119.015 -3.65971 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0222986 0.0198215 123 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_048.v common 4.58 vpr 64.66 MiB -1 -1 0.16 20808 1 0.03 -1 -1 33932 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66216 32 32 353 287 1 198 86 17 17 289 -1 unnamed_device 26.3 MiB 0.38 1202 8969 2123 6204 642 64.7 MiB 0.09 0.00 3.4346 -106.55 -3.4346 3.4346 0.93 0.000462548 0.000421259 0.0268087 0.0244756 32 2722 21 6.65987e+06 278916 554710. 1919.41 0.99 0.0944652 0.0831672 22834 132086 -1 2411 19 1273 1730 141963 32568 3.28691 3.28691 -120.568 -3.28691 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0242316 0.021623 136 52 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_049.v common 4.74 vpr 64.75 MiB -1 -1 0.17 20536 1 0.03 -1 -1 33504 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 32 32 361 291 1 185 95 17 17 289 -1 unnamed_device 26.0 MiB 0.40 1072 9383 2297 6524 562 64.8 MiB 0.09 0.00 2.9071 -99.894 -2.9071 2.9071 0.99 0.000529655 0.000482291 0.0258421 0.0236483 30 2237 18 6.65987e+06 393018 526063. 1820.29 1.08 0.102287 0.0908407 22546 126617 -1 1967 15 899 1617 92671 21588 2.79871 2.79871 -111.69 -2.79871 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0219087 0.0197229 132 52 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_050.v common 4.67 vpr 64.82 MiB -1 -1 0.17 20716 1 0.03 -1 -1 34016 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66380 32 32 382 305 1 192 100 17 17 289 -1 unnamed_device 26.5 MiB 0.39 1116 12860 3688 8379 793 64.8 MiB 0.12 0.00 3.47495 -110.14 -3.47495 3.47495 0.98 0.000593381 0.000543382 0.0342974 0.0313816 30 2352 18 6.65987e+06 456408 526063. 1820.29 0.97 0.107592 0.0953984 22546 126617 -1 2095 22 993 1509 92172 20741 3.06831 3.06831 -121.578 -3.06831 0 0 666494. 2306.21 0.30 0.06 0.12 -1 -1 0.30 0.0290128 0.0259445 144 59 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_051.v common 4.25 vpr 64.34 MiB -1 -1 0.13 20340 1 0.03 -1 -1 33624 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65880 32 32 306 248 1 166 93 17 17 289 -1 unnamed_device 25.9 MiB 0.10 924 12273 3344 8097 832 64.3 MiB 0.10 0.00 3.20104 -96.4277 -3.20104 3.20104 0.92 0.000481338 0.000437316 0.0298662 0.0271879 26 2393 24 6.65987e+06 367662 477104. 1650.88 1.13 0.0988203 0.0871059 21682 110474 -1 2017 22 1424 2383 188794 42921 3.40605 3.40605 -117.666 -3.40605 0 0 585099. 2024.56 0.27 0.07 0.11 -1 -1 0.27 0.0246737 0.0219386 122 21 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_052.v common 4.34 vpr 64.86 MiB -1 -1 0.16 20244 1 0.03 -1 -1 33844 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 32 32 319 257 1 198 87 17 17 289 -1 unnamed_device 26.2 MiB 0.12 1067 6615 1379 4941 295 64.9 MiB 0.07 0.00 3.95995 -116.796 -3.95995 3.95995 0.99 0.000490741 0.000450135 0.019515 0.0179392 30 2362 22 6.65987e+06 291594 526063. 1820.29 0.98 0.0873792 0.0771307 22546 126617 -1 2029 19 1071 1543 90555 21559 3.45637 3.45637 -124.213 -3.45637 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0230569 0.020667 133 26 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_053.v common 4.87 vpr 64.97 MiB -1 -1 0.17 20744 1 0.03 -1 -1 33984 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 31 32 373 299 1 202 86 17 17 289 -1 unnamed_device 26.4 MiB 0.31 1134 9725 2428 6723 574 65.0 MiB 0.10 0.00 3.79107 -114.561 -3.79107 3.79107 0.97 0.000565179 0.000513974 0.0301263 0.0274881 28 2924 24 6.65987e+06 291594 500653. 1732.36 1.30 0.10836 0.0955594 21970 115934 -1 2504 20 1465 2253 165583 38529 3.90023 3.90023 -137.067 -3.90023 0 0 612192. 2118.31 0.28 0.07 0.12 -1 -1 0.28 0.0266364 0.0238107 146 58 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_054.v common 4.35 vpr 64.99 MiB -1 -1 0.17 20616 1 0.03 -1 -1 33696 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 32 32 387 315 1 189 85 17 17 289 -1 unnamed_device 26.4 MiB 0.17 992 7525 1849 5294 382 65.0 MiB 0.08 0.00 3.23098 -101.189 -3.23098 3.23098 0.98 0.000551691 0.000503474 0.0250231 0.0229108 30 2452 21 6.65987e+06 266238 526063. 1820.29 0.96 0.0959551 0.0842333 22546 126617 -1 2077 19 1232 2187 117151 28321 3.18465 3.18465 -120.308 -3.18465 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0244248 0.0218651 135 74 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_055.v common 4.20 vpr 63.95 MiB -1 -1 0.14 20204 1 0.03 -1 -1 33292 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65484 32 32 251 219 1 140 88 17 17 289 -1 unnamed_device 25.5 MiB 0.10 842 16273 4951 9411 1911 63.9 MiB 0.12 0.00 2.59064 -82.427 -2.59064 2.59064 0.99 0.000402581 0.000365511 0.0367062 0.0332989 28 1797 34 6.65987e+06 304272 500653. 1732.36 0.96 0.100077 0.0883378 21970 115934 -1 1598 20 808 1276 90345 22304 2.44711 2.44711 -93.2352 -2.44711 0 0 612192. 2118.31 0.26 0.05 0.12 -1 -1 0.26 0.0189529 0.0168192 97 20 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_056.v common 6.24 vpr 64.66 MiB -1 -1 0.15 20580 1 0.03 -1 -1 33760 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66216 32 32 341 285 1 187 84 17 17 289 -1 unnamed_device 26.2 MiB 0.14 886 10698 2989 7118 591 64.7 MiB 0.09 0.00 3.1319 -109.37 -3.1319 3.1319 0.92 0.000456255 0.000415076 0.028322 0.0257516 26 2631 30 6.65987e+06 253560 477104. 1650.88 3.03 0.173937 0.151743 21682 110474 -1 2182 24 1444 1982 182657 43755 3.53117 3.53117 -136.721 -3.53117 0 0 585099. 2024.56 0.26 0.07 0.10 -1 -1 0.26 0.0256184 0.0225709 125 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_057.v common 5.07 vpr 64.62 MiB -1 -1 0.16 20540 1 0.03 -1 -1 34020 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 32 32 387 293 1 234 92 17 17 289 -1 unnamed_device 26.6 MiB 0.18 1377 11477 3470 7138 869 64.6 MiB 0.13 0.00 4.23387 -131.466 -4.23387 4.23387 0.95 0.000593702 0.000534275 0.0344676 0.0314895 28 3309 28 6.65987e+06 354984 500653. 1732.36 1.60 0.124178 0.110129 21970 115934 -1 2716 22 1895 3018 199085 48032 4.42717 4.42717 -155.141 -4.42717 0 0 612192. 2118.31 0.28 0.09 0.12 -1 -1 0.28 0.0313951 0.0280695 168 28 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_058.v common 4.52 vpr 64.67 MiB -1 -1 0.16 20168 1 0.03 -1 -1 33516 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 32 32 340 270 1 181 95 17 17 289 -1 unnamed_device 26.1 MiB 0.26 886 5927 992 4740 195 64.7 MiB 0.06 0.00 3.50546 -104.167 -3.50546 3.50546 0.98 0.000557589 0.000492722 0.0172812 0.015875 30 2041 20 6.65987e+06 393018 526063. 1820.29 1.02 0.0889893 0.0786426 22546 126617 -1 1733 17 880 1457 73977 18180 2.80051 2.80051 -106.991 -2.80051 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0226402 0.0203752 133 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_059.v common 3.89 vpr 64.23 MiB -1 -1 0.15 20304 1 0.03 -1 -1 33968 -1 -1 26 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65772 30 32 278 235 1 148 88 17 17 289 -1 unnamed_device 25.7 MiB 0.05 831 14518 3974 8872 1672 64.2 MiB 0.11 0.00 2.66464 -84.2869 -2.66464 2.66464 0.95 0.000440369 0.00040437 0.0338002 0.0309194 20 2110 30 6.65987e+06 329628 394039. 1363.46 0.63 0.0612051 0.0549123 20530 87850 -1 1878 73 2272 4841 792816 301823 3.10311 3.10311 -113.032 -3.10311 0 0 477104. 1650.88 0.20 0.26 0.08 -1 -1 0.20 0.0535966 0.046474 104 29 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_060.v common 10.91 vpr 64.93 MiB -1 -1 0.18 20480 1 0.03 -1 -1 33916 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 32 32 431 332 1 235 89 17 17 289 -1 unnamed_device 26.8 MiB 0.37 1380 7019 1377 5096 546 64.9 MiB 0.10 0.00 5.14349 -151.873 -5.14349 5.14349 0.99 0.000621705 0.000570967 0.0256932 0.0236488 26 4281 45 6.65987e+06 316950 477104. 1650.88 7.17 0.250386 0.221031 21682 110474 -1 3172 26 2489 3741 373959 93326 5.74554 5.74554 -188.659 -5.74554 0 0 585099. 2024.56 0.26 0.14 0.11 -1 -1 0.26 0.0401506 0.0358787 168 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_061.v common 4.61 vpr 64.59 MiB -1 -1 0.16 20264 1 0.03 -1 -1 33368 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 32 32 336 268 1 174 96 17 17 289 -1 unnamed_device 26.1 MiB 0.29 911 10608 2581 7229 798 64.6 MiB 0.10 0.00 3.55635 -107.972 -3.55635 3.55635 1.00 0.000548322 0.000503335 0.0277779 0.0254658 32 2106 23 6.65987e+06 405696 554710. 1919.41 1.00 0.0977339 0.0864158 22834 132086 -1 1902 23 1451 2194 139250 33404 3.54611 3.54611 -122.858 -3.54611 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.026665 0.0237521 130 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_062.v common 4.23 vpr 64.05 MiB -1 -1 0.14 19864 1 0.03 -1 -1 33628 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65588 32 32 231 199 1 140 87 17 17 289 -1 unnamed_device 25.6 MiB 0.05 869 12183 3382 7024 1777 64.1 MiB 0.09 0.00 2.50867 -80.0561 -2.50867 2.50867 0.99 0.000373415 0.000341124 0.0262805 0.0240405 32 1870 21 6.65987e+06 291594 554710. 1919.41 0.98 0.0795275 0.0704174 22834 132086 -1 1679 20 921 1591 121036 27014 2.62251 2.62251 -96.0565 -2.62251 0 0 701300. 2426.64 0.31 0.05 0.13 -1 -1 0.31 0.0184074 0.0163792 100 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_063.v common 4.42 vpr 64.75 MiB -1 -1 0.15 20716 1 0.03 -1 -1 33824 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 32 32 349 273 1 191 98 17 17 289 -1 unnamed_device 26.4 MiB 0.14 1138 13373 4018 8266 1089 64.8 MiB 0.11 0.00 4.55326 -113.354 -4.55326 4.55326 0.97 0.000526123 0.000478128 0.0336614 0.0307388 32 2554 25 6.65987e+06 431052 554710. 1919.41 1.00 0.104274 0.092129 22834 132086 -1 2325 22 1323 2502 183808 41758 4.49822 4.49822 -132.931 -4.49822 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0259113 0.0229452 139 26 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_064.v common 4.17 vpr 63.97 MiB -1 -1 0.15 20204 1 0.03 -1 -1 34012 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65504 32 32 247 207 1 147 84 17 17 289 -1 unnamed_device 25.5 MiB 0.10 812 8502 2166 5475 861 64.0 MiB 0.07 0.00 2.66284 -83.6742 -2.66284 2.66284 0.96 0.000417136 0.00038284 0.0205749 0.0188383 30 1715 16 6.65987e+06 253560 526063. 1820.29 0.92 0.0702046 0.061999 22546 126617 -1 1548 19 877 1510 82884 20226 2.60745 2.60745 -99.4888 -2.60745 0 0 666494. 2306.21 0.29 0.04 0.12 -1 -1 0.29 0.0173363 0.0153943 104 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_065.v common 4.43 vpr 64.25 MiB -1 -1 0.14 20160 1 0.03 -1 -1 33844 -1 -1 33 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65788 30 32 278 235 1 147 95 17 17 289 -1 unnamed_device 25.7 MiB 0.16 846 16727 5168 9107 2452 64.2 MiB 0.12 0.00 2.98169 -85.2128 -2.98169 2.98169 0.96 0.000467982 0.000428424 0.0348201 0.0317664 26 1990 27 6.65987e+06 418374 477104. 1650.88 1.09 0.098042 0.086565 21682 110474 -1 1809 21 1051 1712 129917 29772 2.68525 2.68525 -100.111 -2.68525 0 0 585099. 2024.56 0.27 0.06 0.11 -1 -1 0.27 0.0215635 0.0191488 105 29 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_066.v common 4.39 vpr 64.96 MiB -1 -1 0.15 20756 1 0.03 -1 -1 33764 -1 -1 24 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66520 29 32 355 287 1 198 85 17 17 289 -1 unnamed_device 26.5 MiB 0.26 1044 15151 4487 8857 1807 65.0 MiB 0.13 0.00 3.37101 -100.513 -3.37101 3.37101 0.94 0.000537427 0.000488874 0.0418765 0.0381982 30 2348 24 6.65987e+06 304272 526063. 1820.29 0.98 0.114081 0.10082 22546 126617 -1 1987 18 1083 1701 95551 23827 3.38683 3.38683 -116.763 -3.38683 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0214662 0.0190898 138 56 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_067.v common 4.46 vpr 64.59 MiB -1 -1 0.15 20580 1 0.03 -1 -1 33948 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 32 32 358 289 1 175 88 17 17 289 -1 unnamed_device 26.1 MiB 0.18 833 5938 1099 4238 601 64.6 MiB 0.06 0.00 3.6117 -107.299 -3.6117 3.6117 1.00 0.000518406 0.000475754 0.0189598 0.0174416 30 2100 27 6.65987e+06 304272 526063. 1820.29 1.02 0.0985935 0.0869566 22546 126617 -1 1617 20 1122 1659 85773 21638 3.45917 3.45917 -124.551 -3.45917 0 0 666494. 2306.21 0.31 0.06 0.12 -1 -1 0.31 0.0257149 0.0230184 130 51 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_068.v common 4.41 vpr 64.60 MiB -1 -1 0.15 20460 1 0.03 -1 -1 33852 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 32 32 353 285 1 181 91 17 17 289 -1 unnamed_device 26.1 MiB 0.20 1104 13147 3623 8171 1353 64.6 MiB 0.12 0.00 3.63564 -112.148 -3.63564 3.63564 0.93 0.000506138 0.000462059 0.035122 0.0320992 28 2562 23 6.65987e+06 342306 500653. 1732.36 1.02 0.106759 0.0946722 21970 115934 -1 2349 23 1370 2399 186361 40426 3.69351 3.69351 -132.373 -3.69351 0 0 612192. 2118.31 0.26 0.08 0.11 -1 -1 0.26 0.0276223 0.0244735 132 48 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_069.v common 4.58 vpr 64.20 MiB -1 -1 0.14 20408 1 0.03 -1 -1 33664 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65736 32 32 276 237 1 159 80 17 17 289 -1 unnamed_device 25.6 MiB 0.27 939 8336 2360 5186 790 64.2 MiB 0.08 0.00 3.5308 -105.476 -3.5308 3.5308 0.96 0.000428403 0.000394688 0.0232882 0.0213212 26 2225 22 6.65987e+06 202848 477104. 1650.88 1.20 0.0867851 0.0767576 21682 110474 -1 1862 17 959 1286 94369 22268 3.37611 3.37611 -116.833 -3.37611 0 0 585099. 2024.56 0.26 0.05 0.11 -1 -1 0.26 0.0185469 0.0166277 103 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_070.v common 4.50 vpr 64.22 MiB -1 -1 0.16 20456 1 0.03 -1 -1 33720 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65764 31 32 319 272 1 168 82 17 17 289 -1 unnamed_device 25.8 MiB 0.22 918 8982 2408 5984 590 64.2 MiB 0.08 0.00 2.85458 -96.7703 -2.85458 2.85458 0.99 0.000492953 0.000450849 0.0266214 0.0243655 32 2230 20 6.65987e+06 240882 554710. 1919.41 0.99 0.0897937 0.0793301 22834 132086 -1 1998 19 1364 2032 160584 36880 2.93831 2.93831 -112.535 -2.93831 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0221663 0.0197797 111 60 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_071.v common 4.42 vpr 64.57 MiB -1 -1 0.15 20160 1 0.03 -1 -1 33804 -1 -1 33 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 30 32 329 273 1 166 95 17 17 289 -1 unnamed_device 26.1 MiB 0.23 860 10031 2263 6771 997 64.6 MiB 0.09 0.00 2.55652 -74.3027 -2.55652 2.55652 0.98 0.000503623 0.00046258 0.0258672 0.0237247 30 1837 17 6.65987e+06 418374 526063. 1820.29 0.94 0.0880178 0.0779153 22546 126617 -1 1608 18 800 1497 72886 17915 2.40999 2.40999 -88.1668 -2.40999 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0216517 0.0193137 123 52 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_072.v common 4.41 vpr 64.36 MiB -1 -1 0.15 20284 1 0.03 -1 -1 34080 -1 -1 35 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65900 28 32 277 229 1 155 95 17 17 289 -1 unnamed_device 26.0 MiB 0.12 945 15215 4217 9322 1676 64.4 MiB 0.11 0.00 3.3833 -85.6067 -3.3833 3.3833 0.98 0.000409758 0.000372392 0.032416 0.0294148 26 2104 23 6.65987e+06 443730 477104. 1650.88 1.11 0.09478 0.0838065 21682 110474 -1 1842 20 994 2058 143591 32531 3.44717 3.44717 -103.188 -3.44717 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0200918 0.0177773 115 20 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_073.v common 4.48 vpr 64.26 MiB -1 -1 0.16 20344 1 0.03 -1 -1 33780 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65800 30 32 317 269 1 152 79 17 17 289 -1 unnamed_device 25.7 MiB 0.24 843 12754 4375 6219 2160 64.3 MiB 0.11 0.00 3.17335 -94.2456 -3.17335 3.17335 0.97 0.000459431 0.000419648 0.037985 0.034759 32 2144 21 6.65987e+06 215526 554710. 1919.41 1.00 0.0998702 0.0884611 22834 132086 -1 1851 20 1230 2056 164060 37621 2.92991 2.92991 -108.502 -2.92991 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0216205 0.0191747 108 58 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_074.v common 4.45 vpr 64.31 MiB -1 -1 0.16 20304 1 0.03 -1 -1 33496 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65856 32 32 335 282 1 184 84 17 17 289 -1 unnamed_device 25.8 MiB 0.21 884 12345 4073 5681 2591 64.3 MiB 0.11 0.00 2.94464 -101.127 -2.94464 2.94464 0.97 0.000471115 0.000427808 0.0351061 0.0320788 32 2339 24 6.65987e+06 253560 554710. 1919.41 0.98 0.0992888 0.0875337 22834 132086 -1 1928 20 1416 2074 165245 37625 2.92531 2.92531 -115.185 -2.92531 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0235742 0.0209597 120 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_075.v common 4.16 vpr 64.48 MiB -1 -1 0.13 20068 1 0.03 -1 -1 33852 -1 -1 32 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66028 31 32 293 230 1 175 95 17 17 289 -1 unnamed_device 26.0 MiB 0.08 934 10679 2821 6816 1042 64.5 MiB 0.09 0.00 3.64047 -103.455 -3.64047 3.64047 0.94 0.000539953 0.000497913 0.0238557 0.0217014 28 2365 22 6.65987e+06 405696 500653. 1732.36 1.02 0.0898967 0.0793832 21970 115934 -1 2049 19 1226 2220 135969 33220 3.68043 3.68043 -121.175 -3.68043 0 0 612192. 2118.31 0.26 0.06 0.10 -1 -1 0.26 0.0205995 0.0183486 127 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_076.v common 4.65 vpr 64.85 MiB -1 -1 0.16 20580 1 0.03 -1 -1 33968 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 350 275 1 209 86 17 17 289 -1 unnamed_device 26.3 MiB 0.29 1246 15395 4285 8888 2222 64.9 MiB 0.15 0.00 3.98521 -128.644 -3.98521 3.98521 1.00 0.000535201 0.000490393 0.04648 0.0426504 30 2926 19 6.65987e+06 278916 526063. 1820.29 1.01 0.12121 0.108242 22546 126617 -1 2340 21 1229 1815 109091 24979 4.07331 4.07331 -148.204 -4.07331 0 0 666494. 2306.21 0.30 0.06 0.12 -1 -1 0.30 0.0273499 0.0244637 144 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_077.v common 4.59 vpr 64.80 MiB -1 -1 0.17 20472 1 0.03 -1 -1 33600 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 32 32 385 308 1 185 96 17 17 289 -1 unnamed_device 26.5 MiB 0.32 1111 10827 2825 7025 977 64.8 MiB 0.10 0.00 3.92821 -113.167 -3.92821 3.92821 0.96 0.000552445 0.000502242 0.0308413 0.0281815 32 2571 22 6.65987e+06 405696 554710. 1919.41 1.01 0.105524 0.0931395 22834 132086 -1 2259 20 1339 2329 167370 38913 3.91422 3.91422 -134.159 -3.91422 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0256302 0.0228202 142 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_078.v common 6.27 vpr 64.54 MiB -1 -1 0.16 20464 1 0.03 -1 -1 33952 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66092 32 32 387 309 1 190 101 17 17 289 -1 unnamed_device 26.2 MiB 0.28 1136 17726 4984 10545 2197 64.5 MiB 0.16 0.00 3.46095 -113.37 -3.46095 3.46095 1.00 0.00057176 0.000523219 0.0462301 0.0422641 26 3157 26 6.65987e+06 469086 477104. 1650.88 2.61 0.147362 0.131648 21682 110474 -1 2492 23 1569 2737 210408 47923 3.42691 3.42691 -131.848 -3.42691 0 0 585099. 2024.56 0.27 0.09 0.11 -1 -1 0.27 0.0313036 0.027984 140 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_079.v common 4.50 vpr 63.91 MiB -1 -1 0.15 20428 1 0.03 -1 -1 33836 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65448 30 32 272 232 1 147 81 17 17 289 -1 unnamed_device 25.4 MiB 0.23 847 14081 4357 8035 1689 63.9 MiB 0.11 0.00 2.88069 -90.2947 -2.88069 2.88069 1.01 0.000434612 0.000397958 0.0373258 0.0339808 32 1828 21 6.65987e+06 240882 554710. 1919.41 0.97 0.0962843 0.0851359 22834 132086 -1 1597 20 1075 1817 111821 26862 2.58405 2.58405 -98.4208 -2.58405 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0210337 0.018739 105 29 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_080.v common 4.61 vpr 64.93 MiB -1 -1 0.17 20472 1 0.03 -1 -1 33784 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 30 32 375 299 1 187 83 17 17 289 -1 unnamed_device 26.2 MiB 0.27 805 10523 2316 6417 1790 64.9 MiB 0.09 0.00 3.77847 -108.895 -3.77847 3.77847 0.99 0.00054186 0.000496642 0.0340512 0.0312162 32 2128 22 6.65987e+06 266238 554710. 1919.41 1.02 0.110269 0.0978342 22834 132086 -1 1748 21 1689 2659 161360 42398 3.65243 3.65243 -128.791 -3.65243 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0279023 0.024899 137 58 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_081.v common 7.27 vpr 64.43 MiB -1 -1 0.15 20544 1 0.03 -1 -1 33752 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 32 32 340 270 1 200 88 17 17 289 -1 unnamed_device 26.1 MiB 0.26 1212 10813 2505 7054 1254 64.4 MiB 0.10 0.00 3.8156 -117.944 -3.8156 3.8156 0.90 0.000548233 0.000504264 0.0299996 0.0274293 28 2776 23 6.65987e+06 304272 500653. 1732.36 3.87 0.19537 0.170776 21970 115934 -1 2409 22 1503 2398 181088 39864 3.81185 3.81185 -138.119 -3.81185 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0247588 0.0220118 138 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_082.v common 4.63 vpr 64.77 MiB -1 -1 0.16 20476 1 0.03 -1 -1 33724 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 31 32 340 275 1 195 91 17 17 289 -1 unnamed_device 26.2 MiB 0.39 1115 10495 2631 7096 768 64.8 MiB 0.10 0.00 4.22316 -125.353 -4.22316 4.22316 0.97 0.000502927 0.00045781 0.0290952 0.0265812 32 2688 20 6.65987e+06 354984 554710. 1919.41 1.00 0.0962438 0.0850455 22834 132086 -1 2178 20 1275 2071 149176 34640 4.23583 4.23583 -142.024 -4.23583 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0238322 0.0212497 146 43 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_083.v common 5.39 vpr 64.89 MiB -1 -1 0.17 20944 1 0.03 -1 -1 33800 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 30 32 377 310 1 177 93 17 17 289 -1 unnamed_device 26.2 MiB 1.10 996 15213 4356 8572 2285 64.9 MiB 0.13 0.00 3.46221 -106.407 -3.46221 3.46221 0.97 0.000537239 0.000490852 0.0407783 0.0372374 32 2330 21 6.65987e+06 393018 554710. 1919.41 0.99 0.111276 0.0984008 22834 132086 -1 1980 21 1519 2453 171249 40351 3.03937 3.03937 -115.413 -3.03937 0 0 701300. 2426.64 0.29 0.07 0.14 -1 -1 0.29 0.0247679 0.0219149 133 78 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_084.v common 4.56 vpr 64.51 MiB -1 -1 0.17 20496 1 0.03 -1 -1 33944 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66056 32 32 365 294 1 185 84 17 17 289 -1 unnamed_device 26.0 MiB 0.21 1047 15822 5099 8999 1724 64.5 MiB 0.15 0.00 3.76955 -112.057 -3.76955 3.76955 0.96 0.000537219 0.00049145 0.0479827 0.0437556 32 2706 24 6.65987e+06 253560 554710. 1919.41 1.01 0.118384 0.104718 22834 132086 -1 2250 22 1663 2920 213695 49788 3.48691 3.48691 -129.347 -3.48691 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0285664 0.0254788 133 54 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_085.v common 4.69 vpr 64.71 MiB -1 -1 0.16 20596 1 0.03 -1 -1 33908 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 29 32 378 310 1 177 90 17 17 289 -1 unnamed_device 26.1 MiB 0.37 825 7728 1643 5706 379 64.7 MiB 0.08 0.00 3.57869 -98.8559 -3.57869 3.57869 0.94 0.000479825 0.000436519 0.0220197 0.0200841 26 2518 36 6.65987e+06 367662 477104. 1650.88 1.24 0.111198 0.0976835 21682 110474 -1 2013 23 1459 2319 165586 40605 3.25777 3.25777 -117.379 -3.25777 0 0 585099. 2024.56 0.25 0.07 0.10 -1 -1 0.25 0.0258188 0.0227603 131 79 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_086.v common 4.21 vpr 64.07 MiB -1 -1 0.15 20344 1 0.03 -1 -1 33848 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65604 32 32 243 205 1 139 79 17 17 289 -1 unnamed_device 25.7 MiB 0.10 828 9205 2583 6101 521 64.1 MiB 0.07 0.00 2.87075 -91.3007 -2.87075 2.87075 0.98 0.000415599 0.00038076 0.023826 0.021872 30 1772 20 6.65987e+06 190170 526063. 1820.29 0.91 0.0766204 0.0679117 22546 126617 -1 1592 18 721 1100 75774 17303 2.69545 2.69545 -103.087 -2.69545 0 0 666494. 2306.21 0.30 0.04 0.12 -1 -1 0.30 0.0183379 0.0164838 96 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_087.v common 4.67 vpr 64.45 MiB -1 -1 0.16 20596 1 0.03 -1 -1 33884 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66000 32 32 373 302 1 176 94 17 17 289 -1 unnamed_device 25.9 MiB 0.29 1061 11809 2822 7993 994 64.5 MiB 0.12 0.00 3.4693 -111.628 -3.4693 3.4693 0.99 0.000584975 0.000529318 0.033809 0.0309703 28 2526 22 6.65987e+06 380340 500653. 1732.36 1.07 0.115231 0.102747 21970 115934 -1 2217 21 1402 2247 160779 36799 3.57411 3.57411 -131.841 -3.57411 0 0 612192. 2118.31 0.28 0.07 0.12 -1 -1 0.28 0.0277912 0.0248651 130 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_088.v common 5.07 vpr 64.90 MiB -1 -1 0.16 20720 1 0.03 -1 -1 33928 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 32 32 397 314 1 196 84 17 17 289 -1 unnamed_device 26.6 MiB 0.29 948 6123 1217 4347 559 64.9 MiB 0.07 0.00 3.74961 -115.204 -3.74961 3.74961 0.97 0.000595648 0.000542161 0.0213729 0.0195489 28 3082 30 6.65987e+06 253560 500653. 1732.36 1.55 0.113031 0.0996442 21970 115934 -1 2410 23 1968 3129 226343 53813 4.18257 4.18257 -149.264 -4.18257 0 0 612192. 2118.31 0.28 0.10 0.12 -1 -1 0.28 0.0314424 0.0278098 147 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_089.v common 4.33 vpr 64.09 MiB -1 -1 0.15 20268 1 0.03 -1 -1 33948 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65624 32 32 269 231 1 170 83 17 17 289 -1 unnamed_device 25.8 MiB 0.21 1011 12863 4265 7083 1515 64.1 MiB 0.10 0.00 3.19629 -97.1478 -3.19629 3.19629 0.99 0.000447194 0.00040835 0.0324386 0.029606 30 1946 22 6.65987e+06 240882 526063. 1820.29 0.90 0.086975 0.0769037 22546 126617 -1 1739 18 706 932 59194 13709 2.89951 2.89951 -108.629 -2.89951 0 0 666494. 2306.21 0.29 0.04 0.12 -1 -1 0.29 0.0187053 0.0167473 111 26 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_090.v common 4.12 vpr 64.10 MiB -1 -1 0.14 20152 1 0.03 -1 -1 34088 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65636 31 32 245 205 1 150 84 17 17 289 -1 unnamed_device 25.6 MiB 0.10 743 6672 1451 4770 451 64.1 MiB 0.06 0.00 2.90081 -86.2872 -2.90081 2.90081 0.95 0.000399052 0.000364 0.0165017 0.0150858 26 1919 22 6.65987e+06 266238 477104. 1650.88 0.91 0.0720707 0.063496 21682 110474 -1 1663 20 1191 1937 133915 32156 2.77977 2.77977 -100.798 -2.77977 0 0 585099. 2024.56 0.27 0.06 0.11 -1 -1 0.27 0.0199362 0.017777 106 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_091.v common 6.67 vpr 65.01 MiB -1 -1 0.16 20120 1 0.03 -1 -1 33616 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 32 32 348 274 1 211 89 17 17 289 -1 unnamed_device 26.5 MiB 0.15 1053 8603 1992 5978 633 65.0 MiB 0.09 0.00 3.91427 -122.672 -3.91427 3.91427 0.99 0.000529272 0.000484047 0.0259834 0.0238609 26 3003 32 6.65987e+06 316950 477104. 1650.88 3.24 0.19278 0.170307 21682 110474 -1 2427 22 1916 2518 191351 45020 4.20083 4.20083 -152.399 -4.20083 0 0 585099. 2024.56 0.26 0.08 0.11 -1 -1 0.26 0.0286203 0.0255475 144 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_092.v common 4.78 vpr 64.71 MiB -1 -1 0.15 20788 1 0.03 -1 -1 33704 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 32 32 356 289 1 202 92 17 17 289 -1 unnamed_device 26.4 MiB 0.46 1192 11477 2917 7554 1006 64.7 MiB 0.11 0.00 4.05969 -124.506 -4.05969 4.05969 0.98 0.000558718 0.000506004 0.0321154 0.0294401 30 2702 21 6.65987e+06 354984 526063. 1820.29 1.05 0.101684 0.0901431 22546 126617 -1 2219 19 1197 1808 112470 26220 3.88516 3.88516 -140.231 -3.88516 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0239515 0.0214574 151 53 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_093.v common 7.54 vpr 64.99 MiB -1 -1 0.16 20060 1 0.03 -1 -1 33544 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 32 32 349 260 1 204 100 17 17 289 -1 unnamed_device 26.4 MiB 0.06 1258 19356 5883 11076 2397 65.0 MiB 0.17 0.00 4.13461 -117.052 -4.13461 4.13461 1.00 0.000581644 0.000534284 0.0486231 0.0443391 28 2765 22 6.65987e+06 456408 500653. 1732.36 4.10 0.252202 0.223177 21970 115934 -1 2427 21 1609 2855 196342 44818 4.30997 4.30997 -140.833 -4.30997 0 0 612192. 2118.31 0.28 0.08 0.11 -1 -1 0.28 0.0283621 0.0254224 153 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_094.v common 4.32 vpr 64.24 MiB -1 -1 0.15 20464 1 0.03 -1 -1 33760 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65784 30 32 316 264 1 162 93 17 17 289 -1 unnamed_device 25.8 MiB 0.22 866 9123 2033 6188 902 64.2 MiB 0.07 0.00 2.57493 -78.3377 -2.57493 2.57493 0.97 0.000489084 0.000441822 0.0222071 0.0202314 30 1891 23 6.65987e+06 393018 526063. 1820.29 0.92 0.0826867 0.0725232 22546 126617 -1 1684 20 936 1585 84460 20297 2.60151 2.60151 -93.0412 -2.60151 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0235234 0.0209308 120 47 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_095.v common 4.11 vpr 64.12 MiB -1 -1 0.15 20648 1 0.03 -1 -1 33892 -1 -1 21 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65660 27 32 255 219 1 132 80 17 17 289 -1 unnamed_device 25.7 MiB 0.05 779 12292 4104 6547 1641 64.1 MiB 0.09 0.00 2.8251 -81.7347 -2.8251 2.8251 0.97 0.000418435 0.000382196 0.0307828 0.0281463 30 1492 22 6.65987e+06 266238 526063. 1820.29 0.90 0.0824624 0.0726883 22546 126617 -1 1353 19 635 967 51825 12646 2.52037 2.52037 -90.1506 -2.52037 0 0 666494. 2306.21 0.30 0.04 0.13 -1 -1 0.30 0.0174373 0.0154514 97 26 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_096.v common 4.72 vpr 64.91 MiB -1 -1 0.16 20576 1 0.03 -1 -1 33684 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 421 327 1 232 90 17 17 289 -1 unnamed_device 26.8 MiB 0.17 1311 12150 3370 8077 703 64.9 MiB 0.13 0.00 3.3481 -113.494 -3.3481 3.3481 1.00 0.000690678 0.000631108 0.0426411 0.0390254 32 3591 22 6.65987e+06 329628 554710. 1919.41 1.11 0.134535 0.119911 22834 132086 -1 2922 20 2099 3395 249070 58724 3.82383 3.82383 -137.37 -3.82383 0 0 701300. 2426.64 0.31 0.10 0.13 -1 -1 0.31 0.0325442 0.0293014 170 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_097.v common 7.56 vpr 64.63 MiB -1 -1 0.16 20716 1 0.03 -1 -1 33664 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 31 32 365 296 1 194 84 17 17 289 -1 unnamed_device 26.1 MiB 0.97 897 11064 2968 6739 1357 64.6 MiB 0.09 0.00 4.15967 -119.089 -4.15967 4.15967 0.96 0.000528151 0.000481837 0.033048 0.0301507 34 2237 23 6.65987e+06 266238 585099. 2024.56 3.40 0.175351 0.152461 23122 138558 -1 1807 20 1517 2369 150842 41080 4.26708 4.26708 -140.919 -4.26708 0 0 742403. 2568.87 0.29 0.06 0.13 -1 -1 0.29 0.022836 0.0202415 150 60 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_098.v common 5.38 vpr 64.64 MiB -1 -1 0.16 20380 1 0.03 -1 -1 33688 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 32 32 331 280 1 175 82 17 17 289 -1 unnamed_device 26.2 MiB 1.03 850 12542 3889 6331 2322 64.6 MiB 0.11 0.00 3.4165 -104.165 -3.4165 3.4165 1.01 0.000481164 0.000439117 0.0373299 0.0341396 32 2313 22 6.65987e+06 228204 554710. 1919.41 1.03 0.1079 0.0958743 22834 132086 -1 1892 20 1321 1887 147913 34405 3.47937 3.47937 -126.82 -3.47937 0 0 701300. 2426.64 0.30 0.06 0.12 -1 -1 0.30 0.0222297 0.0197151 126 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_099.v common 4.41 vpr 64.52 MiB -1 -1 0.16 20328 1 0.03 -1 -1 33736 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66072 32 32 326 263 1 176 94 17 17 289 -1 unnamed_device 26.0 MiB 0.11 1056 15856 4646 9763 1447 64.5 MiB 0.14 0.00 3.7622 -100.633 -3.7622 3.7622 0.99 0.000534503 0.000492573 0.0398541 0.0363921 30 2168 19 6.65987e+06 380340 526063. 1820.29 0.97 0.107986 0.0962509 22546 126617 -1 1852 18 844 1359 74876 17751 3.22665 3.22665 -112.425 -3.22665 0 0 666494. 2306.21 0.31 0.05 0.12 -1 -1 0.31 0.0223143 0.0200074 126 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_100.v common 4.72 vpr 64.67 MiB -1 -1 0.17 20500 1 0.03 -1 -1 33572 -1 -1 33 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 31 32 373 294 1 196 96 17 17 289 -1 unnamed_device 26.3 MiB 0.23 925 10389 2486 6905 998 64.7 MiB 0.10 0.00 3.75769 -107.247 -3.75769 3.75769 0.97 0.000525852 0.00046424 0.0284465 0.0259563 26 2508 23 6.65987e+06 418374 477104. 1650.88 1.28 0.106762 0.0943937 21682 110474 -1 2241 21 1343 2220 168472 41590 3.59657 3.59657 -127.74 -3.59657 0 0 585099. 2024.56 0.25 0.07 0.11 -1 -1 0.25 0.0260143 0.0230659 144 46 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_101.v common 4.38 vpr 64.50 MiB -1 -1 0.16 20496 1 0.03 -1 -1 34044 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 30 32 325 268 1 171 93 17 17 289 -1 unnamed_device 26.1 MiB 0.15 1025 13953 3561 8784 1608 64.5 MiB 0.11 0.00 2.8321 -90.0185 -2.8321 2.8321 0.96 0.000490848 0.000447557 0.0345862 0.0315545 32 2394 19 6.65987e+06 393018 554710. 1919.41 0.97 0.0947133 0.0836237 22834 132086 -1 2094 20 1169 1960 147434 33965 2.91585 2.91585 -106.157 -2.91585 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0230833 0.0205627 124 46 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_102.v common 5.08 vpr 64.94 MiB -1 -1 0.15 20412 1 0.03 -1 -1 33556 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 350 275 1 214 88 17 17 289 -1 unnamed_device 26.4 MiB 0.17 1216 15883 4659 9054 2170 64.9 MiB 0.15 0.00 3.71795 -121.921 -3.71795 3.71795 0.97 0.000537792 0.000489194 0.0446122 0.0407617 32 2907 20 6.65987e+06 304272 554710. 1919.41 1.54 0.138411 0.122319 22834 132086 -1 2442 21 1944 2978 229558 51167 3.90511 3.90511 -142.269 -3.90511 0 0 701300. 2426.64 0.31 0.09 0.13 -1 -1 0.31 0.0287094 0.0256839 147 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_103.v common 5.26 vpr 64.82 MiB -1 -1 0.16 20600 1 0.03 -1 -1 33792 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 32 32 386 307 1 195 98 17 17 289 -1 unnamed_device 26.4 MiB 0.40 1028 14048 3738 8905 1405 64.8 MiB 0.13 0.00 3.63475 -113.41 -3.63475 3.63475 0.99 0.000603501 0.000555005 0.03876 0.0354872 26 2724 35 6.65987e+06 431052 477104. 1650.88 1.55 0.14261 0.127043 21682 110474 -1 2274 20 1426 2158 148581 35944 3.73257 3.73257 -138.394 -3.73257 0 0 585099. 2024.56 0.27 0.07 0.11 -1 -1 0.27 0.0276995 0.0247689 143 59 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_104.v common 4.27 vpr 64.24 MiB -1 -1 0.16 20300 1 0.03 -1 -1 33644 -1 -1 17 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65780 29 32 269 229 1 129 78 17 17 289 -1 unnamed_device 25.8 MiB 0.13 565 12362 4398 5684 2280 64.2 MiB 0.08 0.00 2.88681 -83.7178 -2.88681 2.88681 0.95 0.000400088 0.000363743 0.0313731 0.0286653 32 1356 21 6.65987e+06 215526 554710. 1919.41 0.95 0.0842831 0.0744788 22834 132086 -1 1167 20 916 1330 89007 22545 2.87177 2.87177 -94.5281 -2.87177 0 0 701300. 2426.64 0.31 0.05 0.13 -1 -1 0.31 0.019041 0.0169193 92 28 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_105.v common 4.33 vpr 64.46 MiB -1 -1 0.15 20420 1 0.03 -1 -1 34036 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 32 32 310 266 1 175 84 17 17 289 -1 unnamed_device 26.0 MiB 0.26 958 12162 3433 7405 1324 64.5 MiB 0.10 0.00 3.1971 -103.621 -3.1971 3.1971 0.95 0.000450948 0.000412667 0.032916 0.0301319 30 1993 18 6.65987e+06 253560 526063. 1820.29 0.92 0.0914279 0.0809879 22546 126617 -1 1770 20 1110 1474 91003 20827 2.99537 2.99537 -114.562 -2.99537 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0210362 0.0187047 116 55 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_106.v common 4.59 vpr 64.68 MiB -1 -1 0.16 20476 1 0.03 -1 -1 33496 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 31 32 326 261 1 177 100 17 17 289 -1 unnamed_device 26.2 MiB 0.10 1133 9612 2200 6367 1045 64.7 MiB 0.09 0.00 3.77961 -104.432 -3.77961 3.77961 0.98 0.00054552 0.000498836 0.0236777 0.0216882 26 2607 23 6.65987e+06 469086 477104. 1650.88 1.24 0.104413 0.0928979 21682 110474 -1 2211 26 1652 2951 241553 52738 3.84385 3.84385 -124.774 -3.84385 0 0 585099. 2024.56 0.26 0.09 0.11 -1 -1 0.26 0.0290171 0.0257326 129 29 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_107.v common 4.46 vpr 64.45 MiB -1 -1 0.15 20256 1 0.03 -1 -1 33856 -1 -1 21 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65992 29 32 262 224 1 168 82 17 17 289 -1 unnamed_device 26.1 MiB 0.22 892 9338 2370 6144 824 64.4 MiB 0.08 0.00 3.30615 -94.6201 -3.30615 3.30615 0.98 0.000419184 0.000383299 0.0237979 0.0218247 26 2147 22 6.65987e+06 266238 477104. 1650.88 1.07 0.0909327 0.0808946 21682 110474 -1 1898 15 951 1252 91617 21872 3.14871 3.14871 -107.156 -3.14871 0 0 585099. 2024.56 0.26 0.04 0.11 -1 -1 0.26 0.0169179 0.015185 110 25 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_108.v common 6.95 vpr 64.14 MiB -1 -1 0.14 20308 1 0.03 -1 -1 33648 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65676 32 32 278 238 1 149 80 17 17 289 -1 unnamed_device 25.6 MiB 0.20 821 13840 5362 6683 1795 64.1 MiB 0.09 0.00 2.90269 -92.0687 -2.90269 2.90269 0.95 0.000404319 0.000366795 0.0338552 0.0308328 36 1842 26 6.65987e+06 202848 612192. 2118.31 3.57 0.203838 0.177615 23410 145293 -1 1656 20 1250 2083 177881 41428 2.76691 2.76691 -103.89 -2.76691 0 0 782063. 2706.10 0.33 0.06 0.13 -1 -1 0.33 0.0195562 0.0173295 109 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_109.v common 4.45 vpr 64.53 MiB -1 -1 0.16 20596 1 0.03 -1 -1 33916 -1 -1 35 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66076 31 32 373 300 1 181 98 17 17 289 -1 unnamed_device 26.0 MiB 0.25 1032 17648 5026 9849 2773 64.5 MiB 0.14 0.00 3.26641 -101.432 -3.26641 3.26641 0.97 0.000530902 0.00048446 0.0440614 0.0401421 30 1882 18 6.65987e+06 443730 526063. 1820.29 0.93 0.109299 0.0968432 22546 126617 -1 1692 17 885 1382 73454 17387 2.78991 2.78991 -105.776 -2.78991 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0221896 0.0198149 135 60 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_110.v common 4.31 vpr 64.33 MiB -1 -1 0.15 20476 1 0.03 -1 -1 33812 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65872 31 32 265 230 1 162 82 17 17 289 -1 unnamed_device 25.8 MiB 0.17 876 7914 1959 5549 406 64.3 MiB 0.07 0.00 3.0359 -96.9764 -3.0359 3.0359 0.98 0.000417989 0.000384091 0.0203547 0.0186735 32 1949 22 6.65987e+06 240882 554710. 1919.41 0.91 0.0727853 0.06408 22834 132086 -1 1780 20 1055 1527 119018 27187 3.15877 3.15877 -116.131 -3.15877 0 0 701300. 2426.64 0.32 0.05 0.13 -1 -1 0.32 0.0194234 0.0172022 108 30 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_111.v common 4.77 vpr 64.61 MiB -1 -1 0.16 20756 1 0.03 -1 -1 33516 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 32 32 349 286 1 171 95 17 17 289 -1 unnamed_device 26.1 MiB 0.28 989 11327 3090 7557 680 64.6 MiB 0.10 0.00 2.82075 -94.6465 -2.82075 2.82075 0.98 0.000554803 0.000507963 0.0298877 0.0271897 26 2559 30 6.65987e+06 393018 477104. 1650.88 1.32 0.112178 0.099124 21682 110474 -1 2219 20 1288 2224 175378 38230 2.66451 2.66451 -108.499 -2.66451 0 0 585099. 2024.56 0.25 0.07 0.11 -1 -1 0.25 0.0238709 0.0211838 126 54 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_112.v common 5.29 vpr 64.91 MiB -1 -1 0.16 20580 1 0.03 -1 -1 34004 -1 -1 32 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 31 32 396 325 1 183 95 17 17 289 -1 unnamed_device 26.6 MiB 0.96 1041 16511 4658 9476 2377 64.9 MiB 0.14 0.00 3.3843 -111.16 -3.3843 3.3843 1.00 0.000561296 0.000512219 0.0456277 0.0417327 28 2307 17 6.65987e+06 405696 500653. 1732.36 0.98 0.120915 0.107765 21970 115934 -1 2002 19 1356 1898 122455 28647 3.09863 3.09863 -124.349 -3.09863 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0263213 0.0235809 138 87 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_113.v common 4.52 vpr 64.11 MiB -1 -1 0.15 20288 1 0.03 -1 -1 33760 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65648 32 32 303 262 1 150 81 17 17 289 -1 unnamed_device 25.6 MiB 0.26 831 9881 2532 6649 700 64.1 MiB 0.08 0.00 2.54264 -84.8572 -2.54264 2.54264 1.00 0.000487778 0.000428649 0.0281879 0.0257943 32 1931 22 6.65987e+06 215526 554710. 1919.41 0.97 0.0912597 0.080471 22834 132086 -1 1793 22 1066 1697 126354 29480 2.75671 2.75671 -103.795 -2.75671 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0228022 0.0201755 104 54 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_114.v common 4.36 vpr 64.46 MiB -1 -1 0.15 20128 1 0.03 -1 -1 33712 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 32 32 290 244 1 175 83 17 17 289 -1 unnamed_device 26.0 MiB 0.15 796 7823 1753 5709 361 64.5 MiB 0.07 0.00 3.23175 -99.8478 -3.23175 3.23175 0.95 0.000456787 0.000415474 0.0205924 0.0188559 32 2277 24 6.65987e+06 240882 554710. 1919.41 1.01 0.0815034 0.0718176 22834 132086 -1 1908 18 1201 1767 122454 31357 3.30825 3.30825 -117.776 -3.30825 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0194498 0.0173106 115 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_115.v common 4.45 vpr 64.51 MiB -1 -1 0.16 20244 1 0.03 -1 -1 33724 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66060 32 32 318 257 1 194 86 17 17 289 -1 unnamed_device 26.0 MiB 0.13 1050 8024 1955 5521 548 64.5 MiB 0.08 0.00 3.7011 -114.174 -3.7011 3.7011 1.00 0.000505091 0.000462415 0.0236552 0.0217352 32 2452 22 6.65987e+06 278916 554710. 1919.41 1.01 0.0932263 0.0826824 22834 132086 -1 2182 21 1569 2206 156748 37868 3.66351 3.66351 -126.228 -3.66351 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0256067 0.0229169 130 27 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_116.v common 4.64 vpr 64.55 MiB -1 -1 0.16 20248 1 0.03 -1 -1 33800 -1 -1 28 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 29 32 324 268 1 168 89 17 17 289 -1 unnamed_device 26.1 MiB 0.44 933 11573 3234 7349 990 64.5 MiB 0.10 0.00 3.79367 -98.3368 -3.79367 3.79367 0.99 0.000511006 0.000468627 0.0315325 0.0288955 30 1818 18 6.65987e+06 354984 526063. 1820.29 0.93 0.0938464 0.0832164 22546 126617 -1 1651 17 644 1129 61990 15211 3.17762 3.17762 -102.544 -3.17762 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0213105 0.0191532 121 49 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_117.v common 4.68 vpr 64.70 MiB -1 -1 0.17 20504 1 0.04 -1 -1 33664 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66252 32 32 393 312 1 213 87 17 17 289 -1 unnamed_device 26.5 MiB 0.26 1168 16215 4927 8621 2667 64.7 MiB 0.16 0.00 4.06506 -132.319 -4.06506 4.06506 0.96 0.00057667 0.000529616 0.0517985 0.0474338 32 2863 22 6.65987e+06 291594 554710. 1919.41 1.02 0.135838 0.121144 22834 132086 -1 2453 23 1867 2652 195498 45478 3.77011 3.77011 -145.167 -3.77011 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0298267 0.0264721 153 62 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_118.v common 3.89 vpr 64.01 MiB -1 -1 0.14 20232 1 0.03 -1 -1 33536 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65544 31 32 229 197 1 138 81 17 17 289 -1 unnamed_device 25.6 MiB 0.09 802 7081 1675 4994 412 64.0 MiB 0.05 0.00 2.79204 -80.9584 -2.79204 2.79204 0.95 0.000335007 0.000306662 0.0161123 0.0147434 26 1879 17 6.65987e+06 228204 477104. 1650.88 0.81 0.0619275 0.0543264 21682 110474 -1 1571 19 776 1235 84421 20224 2.73471 2.73471 -96.9664 -2.73471 0 0 585099. 2024.56 0.26 0.04 0.10 -1 -1 0.26 0.0170198 0.0151213 96 -1 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_119.v common 4.90 vpr 64.93 MiB -1 -1 0.17 20404 1 0.03 -1 -1 33692 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 32 32 412 334 1 190 97 17 17 289 -1 unnamed_device 26.5 MiB 0.45 975 7201 1499 5200 502 64.9 MiB 0.08 0.00 3.3223 -110.271 -3.3223 3.3223 0.98 0.000581903 0.000528812 0.0214019 0.0195894 26 2451 26 6.65987e+06 418374 477104. 1650.88 1.24 0.108471 0.0956347 21682 110474 -1 2144 21 1621 2318 162748 38896 3.96997 3.96997 -137.26 -3.96997 0 0 585099. 2024.56 0.25 0.07 0.11 -1 -1 0.25 0.0269375 0.0238633 144 87 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_120.v common 4.47 vpr 64.45 MiB -1 -1 0.15 20420 1 0.03 -1 -1 33576 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65996 32 32 376 318 1 156 80 17 17 289 -1 unnamed_device 26.1 MiB 0.22 878 12120 3764 6684 1672 64.4 MiB 0.11 0.00 2.8021 -102.92 -2.8021 2.8021 0.98 0.000534743 0.000487217 0.0398982 0.0365087 32 2042 19 6.65987e+06 202848 554710. 1919.41 0.99 0.107647 0.0954508 22834 132086 -1 1809 21 1429 2067 161279 36513 3.06217 3.06217 -122.817 -3.06217 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0250023 0.0221588 115 93 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_121.v common 4.66 vpr 64.57 MiB -1 -1 0.17 20680 1 0.03 -1 -1 33652 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66124 32 32 360 293 1 179 95 17 17 289 -1 unnamed_device 26.1 MiB 0.36 1063 16511 4807 9266 2438 64.6 MiB 0.14 0.00 3.33475 -107.829 -3.33475 3.33475 1.00 0.000548358 0.000501349 0.0432375 0.0393867 32 2324 22 6.65987e+06 393018 554710. 1919.41 0.94 0.109192 0.0965148 22834 132086 -1 1959 18 1010 1420 101355 23463 3.21151 3.21151 -119.584 -3.21151 0 0 701300. 2426.64 0.31 0.05 0.13 -1 -1 0.31 0.0226888 0.0201656 130 57 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_122.v common 4.73 vpr 64.66 MiB -1 -1 0.17 20752 1 0.03 -1 -1 33896 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66216 32 32 396 299 1 236 89 17 17 289 -1 unnamed_device 26.6 MiB 0.34 1291 16127 4492 9131 2504 64.7 MiB 0.15 0.00 5.00309 -154.994 -5.00309 5.00309 0.96 0.000563699 0.000517182 0.0498551 0.045631 30 2963 24 6.65987e+06 316950 526063. 1820.29 1.09 0.140827 0.12572 22546 126617 -1 2391 21 1470 2189 129949 29853 4.83514 4.83514 -164.078 -4.83514 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.027116 0.0242649 168 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_123.v common 4.17 vpr 63.92 MiB -1 -1 0.16 20464 1 0.03 -1 -1 33700 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65456 30 32 224 207 1 137 79 17 17 289 -1 unnamed_device 25.6 MiB 0.19 605 8022 1727 6036 259 63.9 MiB 0.06 0.00 2.57364 -78.6499 -2.57364 2.57364 0.97 0.000360185 0.000329136 0.0190317 0.017368 30 1512 14 6.65987e+06 215526 526063. 1820.29 0.86 0.0618201 0.0544147 22546 126617 -1 1263 12 575 742 47328 11505 2.16671 2.16671 -84.3253 -2.16671 0 0 666494. 2306.21 0.30 0.03 0.12 -1 -1 0.30 0.0126716 0.0114542 86 29 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_124.v common 4.35 vpr 63.96 MiB -1 -1 0.15 20456 1 0.03 -1 -1 34000 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65500 30 32 286 239 1 134 78 17 17 289 -1 unnamed_device 25.5 MiB 0.12 652 12196 3867 6239 2090 64.0 MiB 0.10 0.00 3.32135 -96.7087 -3.32135 3.32135 1.01 0.000448665 0.000402027 0.0355368 0.0323225 30 1578 20 6.65987e+06 202848 526063. 1820.29 0.97 0.0966646 0.0856021 22546 126617 -1 1320 15 634 1019 68764 16363 2.74557 2.74557 -100.413 -2.74557 0 0 666494. 2306.21 0.30 0.04 0.12 -1 -1 0.30 0.0180485 0.0162798 92 29 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_125.v common 4.22 vpr 64.29 MiB -1 -1 0.15 20300 1 0.03 -1 -1 33984 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65828 32 32 296 247 1 157 85 17 17 289 -1 unnamed_device 26.0 MiB 0.06 869 13849 3984 8340 1525 64.3 MiB 0.10 0.00 2.77684 -95.9395 -2.77684 2.77684 0.96 0.00040976 0.00037342 0.0336521 0.0306002 32 2115 19 6.65987e+06 266238 554710. 1919.41 0.95 0.0894844 0.0788445 22834 132086 -1 1897 21 1362 2373 193185 43014 2.66051 2.66051 -109.164 -2.66051 0 0 701300. 2426.64 0.30 0.07 0.12 -1 -1 0.30 0.0218677 0.0193404 115 31 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_126.v common 6.32 vpr 63.97 MiB -1 -1 0.15 20312 1 0.03 -1 -1 33492 -1 -1 27 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65508 25 32 216 194 1 122 84 17 17 289 -1 unnamed_device 25.6 MiB 0.09 478 8868 2718 4101 2049 64.0 MiB 0.06 0.00 2.55958 -60.0902 -2.55958 2.55958 0.96 0.000356911 0.000319781 0.019046 0.0173006 28 1533 25 6.65987e+06 342306 500653. 1732.36 3.15 0.116457 0.101026 21970 115934 -1 1196 19 710 1129 73467 19595 2.83379 2.83379 -76.5265 -2.83379 0 0 612192. 2118.31 0.27 0.04 0.12 -1 -1 0.27 0.0157476 0.0139523 89 19 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_127.v common 4.54 vpr 64.48 MiB -1 -1 0.16 20584 1 0.03 -1 -1 33900 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 32 32 376 307 1 185 84 17 17 289 -1 unnamed_device 25.9 MiB 0.19 1085 13260 3957 7838 1465 64.5 MiB 0.14 0.00 3.13278 -104.836 -3.13278 3.13278 0.94 0.000594403 0.000543213 0.0421146 0.0383497 28 2720 20 6.65987e+06 253560 500653. 1732.36 1.12 0.120312 0.106953 21970 115934 -1 2436 19 1462 2620 199275 46711 3.45505 3.45505 -129.417 -3.45505 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0250774 0.0224293 135 69 -1 -1 -1 -1 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_128.v common 4.85 vpr 64.95 MiB -1 -1 0.18 20704 1 0.03 -1 -1 34000 -1 -1 33 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 31 32 409 331 1 191 96 17 17 289 -1 unnamed_device 26.5 MiB 0.40 836 8199 1622 6097 480 65.0 MiB 0.08 0.00 3.44501 -110.865 -3.44501 3.44501 0.98 0.000592248 0.000541635 0.0243925 0.0223434 28 2347 26 6.65987e+06 418374 500653. 1732.36 1.19 0.109937 0.0968871 21970 115934 -1 1987 20 1421 2155 145791 36555 3.30177 3.30177 -126.216 -3.30177 0 0 612192. 2118.31 0.27 0.07 0.12 -1 -1 0.27 0.0287225 0.0257163 142 86 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_001.v common 9.72 vpr 65.40 MiB -1 -1 0.16 20432 1 0.03 -1 -1 33640 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66972 32 32 354 285 1 193 77 17 17 289 -1 unnamed_device 27.0 MiB 2.66 881 11324 4027 5472 1825 65.4 MiB 0.10 0.00 4.4212 -127.091 -4.4212 4.4212 1.02 0.000513464 0.000468941 0.0393027 0.0359717 46 2529 34 6.95648e+06 188184 828058. 2865.25 3.47 0.194346 0.172762 28066 200906 -1 1976 19 1317 2040 173144 36392 4.40981 4.40981 -150.49 -4.40981 0 0 1.01997e+06 3529.29 0.43 0.07 0.20 -1 -1 0.43 0.0274985 0.0247226 81 47 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_002.v common 11.20 vpr 65.50 MiB -1 -1 0.17 20644 1 0.03 -1 -1 33808 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67072 30 32 363 293 1 187 77 17 17 289 -1 unnamed_device 27.1 MiB 2.24 791 11161 4642 5937 582 65.5 MiB 0.09 0.00 3.91237 -118.609 -3.91237 3.91237 1.02 0.000528593 0.000482563 0.0387428 0.0354938 46 2620 23 6.95648e+06 217135 828058. 2865.25 5.38 0.25295 0.222233 28066 200906 -1 1911 23 1800 2497 180912 41119 4.69741 4.69741 -148.397 -4.69741 0 0 1.01997e+06 3529.29 0.42 0.08 0.20 -1 -1 0.42 0.0303354 0.0270685 80 58 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_003.v common 8.38 vpr 64.91 MiB -1 -1 0.16 20196 1 0.03 -1 -1 33560 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 299 247 1 182 79 17 17 289 -1 unnamed_device 26.6 MiB 1.35 1029 14613 5406 7620 1587 64.9 MiB 0.11 0.00 3.10314 -104.055 -3.10314 3.10314 1.01 0.000457172 0.000418577 0.0421173 0.0386031 36 2940 37 6.95648e+06 217135 648988. 2245.63 3.61 0.166736 0.147964 26050 158493 -1 2389 19 1504 2019 194044 39752 3.83706 3.83706 -131.559 -3.83706 0 0 828058. 2865.25 0.34 0.07 0.16 -1 -1 0.34 0.0227882 0.0203911 76 26 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_004.v common 9.23 vpr 65.28 MiB -1 -1 0.16 20232 1 0.03 -1 -1 33936 -1 -1 19 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 29 32 308 248 1 162 80 17 17 289 -1 unnamed_device 26.7 MiB 0.40 622 14700 6434 7463 803 65.3 MiB 0.10 0.00 3.50318 -96.3161 -3.50318 3.50318 0.99 0.000474382 0.000433659 0.0420189 0.0384343 46 2104 32 6.95648e+06 275038 828058. 2865.25 5.33 0.214412 0.187067 28066 200906 -1 1651 20 1336 2184 162007 37952 3.67452 3.67452 -116.58 -3.67452 0 0 1.01997e+06 3529.29 0.40 0.07 0.20 -1 -1 0.40 0.0222173 0.0198043 71 25 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_005.v common 8.86 vpr 65.47 MiB -1 -1 0.16 20208 1 0.03 -1 -1 33508 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67044 32 32 336 268 1 172 80 17 17 289 -1 unnamed_device 27.1 MiB 0.91 733 11604 4109 5030 2465 65.5 MiB 0.09 0.00 3.54539 -105.515 -3.54539 3.54539 1.02 0.000514058 0.000471396 0.0379205 0.0347216 40 2655 46 6.95648e+06 231611 706193. 2443.58 4.43 0.204729 0.181764 26914 176310 -1 2221 20 1666 2761 257281 56992 4.68521 4.68521 -146.15 -4.68521 0 0 926341. 3205.33 0.38 0.09 0.17 -1 -1 0.38 0.0271775 0.0243641 73 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_006.v common 7.08 vpr 65.46 MiB -1 -1 0.17 20524 1 0.03 -1 -1 33640 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67028 32 32 366 295 1 182 85 17 17 289 -1 unnamed_device 27.0 MiB 1.08 987 14965 5506 7245 2214 65.5 MiB 0.11 0.00 2.5393 -98.6165 -2.5393 2.5393 0.97 0.000512261 0.000466537 0.044233 0.0403232 38 2475 25 6.95648e+06 303989 678818. 2348.85 2.58 0.16564 0.145363 26626 170182 -1 2151 23 1436 2211 182647 36945 3.64337 3.64337 -128.704 -3.64337 0 0 902133. 3121.57 0.37 0.08 0.17 -1 -1 0.37 0.029048 0.0258842 79 55 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_007.v common 10.90 vpr 64.59 MiB -1 -1 0.14 20096 1 0.03 -1 -1 34200 -1 -1 13 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 27 32 259 221 1 125 72 17 17 289 -1 unnamed_device 26.0 MiB 4.84 477 8714 3575 4627 512 64.6 MiB 0.05 0.00 2.92458 -77.1037 -2.92458 2.92458 0.97 0.00035179 0.000319074 0.022996 0.020972 36 1626 26 6.95648e+06 188184 648988. 2245.63 2.92 0.121568 0.106293 26050 158493 -1 1303 19 937 1402 111609 25169 3.02067 3.02067 -98.6877 -3.02067 0 0 828058. 2865.25 0.33 0.05 0.14 -1 -1 0.33 0.0173478 0.0153385 52 26 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_008.v common 8.36 vpr 65.18 MiB -1 -1 0.15 20140 1 0.03 -1 -1 33708 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 31 32 271 219 1 157 88 17 17 289 -1 unnamed_device 26.6 MiB 0.43 690 11593 4487 6287 819 65.2 MiB 0.08 0.00 2.41395 -78.1025 -2.41395 2.41395 1.02 0.000437231 0.000389985 0.0274025 0.0249401 44 1860 26 6.95648e+06 361892 787024. 2723.27 4.47 0.191484 0.167749 27778 195446 -1 1485 20 1033 1695 120438 27124 2.79442 2.79442 -96.6961 -2.79442 0 0 997811. 3452.63 0.41 0.06 0.19 -1 -1 0.41 0.0205943 0.0183973 69 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_009.v common 11.51 vpr 65.20 MiB -1 -1 0.15 20380 1 0.03 -1 -1 34076 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66768 31 32 317 271 1 163 74 17 17 289 -1 unnamed_device 26.7 MiB 2.17 559 10459 3193 5148 2118 65.2 MiB 0.08 0.00 2.76819 -92.7181 -2.76819 2.76819 1.00 0.000461602 0.000414806 0.0340954 0.0311908 54 1520 39 6.95648e+06 159232 949917. 3286.91 5.75 0.20659 0.180782 29506 232905 -1 1098 21 1130 1599 101532 25804 3.31057 3.31057 -108.167 -3.31057 0 0 1.17392e+06 4061.99 0.48 0.06 0.23 -1 -1 0.48 0.0248997 0.0222788 66 60 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_010.v common 7.46 vpr 65.00 MiB -1 -1 0.15 20216 1 0.03 -1 -1 33640 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 32 32 298 248 1 150 74 17 17 289 -1 unnamed_device 26.5 MiB 1.13 562 8444 2332 4810 1302 65.0 MiB 0.07 0.00 2.79018 -93.5495 -2.79018 2.79018 1.00 0.000439841 0.000401883 0.0266266 0.0244049 38 1878 28 6.95648e+06 144757 678818. 2348.85 2.97 0.139011 0.121945 26626 170182 -1 1410 19 1213 1727 137810 30656 3.38752 3.38752 -121.57 -3.38752 0 0 902133. 3121.57 0.36 0.06 0.17 -1 -1 0.36 0.022792 0.0204529 59 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_011.v common 7.42 vpr 64.98 MiB -1 -1 0.16 20448 1 0.03 -1 -1 33540 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 30 32 303 262 1 137 74 17 17 289 -1 unnamed_device 26.5 MiB 1.97 504 10769 4526 5806 437 65.0 MiB 0.08 0.00 2.79013 -84.2419 -2.79013 2.79013 1.01 0.000453016 0.000414884 0.0343447 0.0314358 40 1796 34 6.95648e+06 173708 706193. 2443.58 2.02 0.15827 0.139436 26914 176310 -1 1346 24 1161 1603 155945 40471 3.13832 3.13832 -109.688 -3.13832 0 0 926341. 3205.33 0.37 0.07 0.17 -1 -1 0.37 0.0245484 0.0217817 55 58 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_012.v common 10.62 vpr 65.11 MiB -1 -1 0.15 20368 1 0.03 -1 -1 33544 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 32 32 276 237 1 160 74 17 17 289 -1 unnamed_device 26.5 MiB 1.62 620 11079 4617 6106 356 65.1 MiB 0.08 0.00 2.85923 -95.6109 -2.85923 2.85923 1.01 0.000424448 0.000387435 0.0332586 0.0304973 48 1892 41 6.95648e+06 144757 865456. 2994.66 5.49 0.231346 0.203447 28354 207349 -1 1560 21 1198 1534 134929 33035 3.16097 3.16097 -121.639 -3.16097 0 0 1.05005e+06 3633.38 0.43 0.06 0.20 -1 -1 0.43 0.0220339 0.0196005 62 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_013.v common 8.69 vpr 65.24 MiB -1 -1 0.16 20652 1 0.03 -1 -1 33724 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 32 32 344 272 1 194 79 17 17 289 -1 unnamed_device 26.9 MiB 1.96 1062 14613 6085 6336 2192 65.2 MiB 0.12 0.00 3.17248 -109.223 -3.17248 3.17248 1.01 0.000502046 0.000451547 0.0471811 0.0432163 38 3156 43 6.95648e+06 217135 678818. 2348.85 3.22 0.186371 0.165809 26626 170182 -1 2620 19 1816 2704 257888 52615 3.78547 3.78547 -143.373 -3.78547 0 0 902133. 3121.57 0.37 0.09 0.16 -1 -1 0.37 0.027788 0.0251075 83 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_014.v common 11.30 vpr 65.12 MiB -1 -1 0.16 20512 1 0.03 -1 -1 33752 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 363 295 1 174 86 17 17 289 -1 unnamed_device 26.7 MiB 0.92 845 9158 2946 4721 1491 65.1 MiB 0.08 0.00 3.62058 -112.716 -3.62058 3.62058 1.00 0.00052171 0.000475289 0.0278311 0.0254159 36 2788 46 6.95648e+06 318465 648988. 2245.63 6.98 0.246838 0.214676 26050 158493 -1 2184 22 1718 2479 246504 50738 4.56546 4.56546 -149.894 -4.56546 0 0 828058. 2865.25 0.32 0.09 0.15 -1 -1 0.32 0.0267766 0.0237766 75 58 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_015.v common 14.33 vpr 64.74 MiB -1 -1 0.14 20532 1 0.03 -1 -1 33432 -1 -1 13 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 29 32 248 215 1 136 74 17 17 289 -1 unnamed_device 26.2 MiB 1.42 467 9064 3757 4873 434 64.7 MiB 0.06 0.00 2.6566 -73.6859 -2.6566 2.6566 0.98 0.000378937 0.000345839 0.0242287 0.0220833 42 1978 48 6.95648e+06 188184 744469. 2576.02 9.57 0.224821 0.194981 27202 183097 -1 1357 23 1060 1573 137844 34209 3.23252 3.23252 -99.1075 -3.23252 0 0 949917. 3286.91 0.37 0.06 0.18 -1 -1 0.37 0.0195806 0.0172548 55 21 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_016.v common 18.46 vpr 65.52 MiB -1 -1 0.17 20496 1 0.03 -1 -1 33776 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67088 32 32 370 297 1 180 81 17 17 289 -1 unnamed_device 27.1 MiB 1.16 796 10931 4551 5944 436 65.5 MiB 0.08 0.00 2.6756 -95.5869 -2.6756 2.6756 1.00 0.000472101 0.000423913 0.035071 0.0319399 40 2504 28 6.95648e+06 246087 706193. 2443.58 13.82 0.269778 0.235391 26914 176310 -1 2151 24 1715 2736 292920 66291 3.40052 3.40052 -133.331 -3.40052 0 0 926341. 3205.33 0.35 0.10 0.18 -1 -1 0.35 0.0320006 0.0286448 76 55 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_017.v common 11.01 vpr 65.27 MiB -1 -1 0.15 20452 1 0.03 -1 -1 34036 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66836 32 32 338 269 1 190 78 17 17 289 -1 unnamed_device 26.9 MiB 1.99 759 12030 4233 5733 2064 65.3 MiB 0.08 0.00 3.53151 -110.805 -3.53151 3.53151 0.97 0.000468645 0.00042696 0.0365848 0.0334127 56 1530 27 6.95648e+06 202660 973134. 3367.25 5.51 0.192177 0.166892 29794 239141 -1 1410 21 1415 1873 121862 30909 3.50092 3.50092 -124.218 -3.50092 0 0 1.19926e+06 4149.71 0.47 0.06 0.23 -1 -1 0.47 0.0249691 0.0223446 79 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_018.v common 8.48 vpr 65.07 MiB -1 -1 0.17 20472 1 0.03 -1 -1 33452 -1 -1 9 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 32 32 323 276 1 148 73 17 17 289 -1 unnamed_device 26.5 MiB 0.82 689 11929 3554 6500 1875 65.1 MiB 0.09 0.00 1.91376 -77.1756 -1.91376 1.91376 1.01 0.000473831 0.000432624 0.0399561 0.036594 42 1948 29 6.95648e+06 130281 744469. 2576.02 4.14 0.22341 0.196288 27202 183097 -1 1620 21 1205 1758 153831 30935 2.19737 2.19737 -98.8623 -2.19737 0 0 949917. 3286.91 0.40 0.07 0.18 -1 -1 0.40 0.0247383 0.0220452 57 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_019.v common 8.10 vpr 64.72 MiB -1 -1 0.15 20016 1 0.03 -1 -1 33688 -1 -1 9 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 30 32 222 206 1 116 71 17 17 289 -1 unnamed_device 26.4 MiB 0.41 394 7809 3226 4314 269 64.7 MiB 0.05 0.00 1.85256 -63.0645 -1.85256 1.85256 1.02 0.000364742 0.000333671 0.0217255 0.0199234 40 1399 29 6.95648e+06 130281 706193. 2443.58 4.30 0.143191 0.123982 26914 176310 -1 1118 22 800 1025 115826 30686 2.38018 2.38018 -87.5735 -2.38018 0 0 926341. 3205.33 0.38 0.05 0.17 -1 -1 0.38 0.0183334 0.0161823 43 29 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_020.v common 10.72 vpr 65.14 MiB -1 -1 0.15 20432 1 0.03 -1 -1 34092 -1 -1 12 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66704 31 32 291 243 1 169 75 17 17 289 -1 unnamed_device 26.6 MiB 2.52 875 8607 2665 5287 655 65.1 MiB 0.07 0.00 3.36378 -111.353 -3.36378 3.36378 1.02 0.000460806 0.0004218 0.0273879 0.0251349 40 2228 26 6.95648e+06 173708 706193. 2443.58 4.71 0.19595 0.172369 26914 176310 -1 1939 21 1586 2119 225127 47645 3.71866 3.71866 -140.257 -3.71866 0 0 926341. 3205.33 0.38 0.08 0.17 -1 -1 0.38 0.0255396 0.022948 69 30 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_021.v common 9.18 vpr 65.39 MiB -1 -1 0.16 20336 1 0.03 -1 -1 33720 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66956 32 32 342 271 1 173 84 17 17 289 -1 unnamed_device 27.0 MiB 0.79 842 13992 5887 7784 321 65.4 MiB 0.11 0.00 3.04869 -102.648 -3.04869 3.04869 1.03 0.000520987 0.000477076 0.0427228 0.0390621 40 2122 24 6.95648e+06 289514 706193. 2443.58 4.85 0.239932 0.211205 26914 176310 -1 1929 22 1620 2340 236348 63500 3.72946 3.72946 -134.27 -3.72946 0 0 926341. 3205.33 0.37 0.10 0.17 -1 -1 0.37 0.0306484 0.027394 75 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_022.v common 11.51 vpr 65.41 MiB -1 -1 0.16 20768 1 0.03 -1 -1 33968 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66984 32 32 372 300 1 197 78 17 17 289 -1 unnamed_device 27.0 MiB 1.53 847 14022 5063 6921 2038 65.4 MiB 0.11 0.00 3.8447 -112.293 -3.8447 3.8447 1.02 0.00054742 0.000497923 0.0466078 0.0424405 54 2309 47 6.95648e+06 202660 949917. 3286.91 6.30 0.261922 0.228379 29506 232905 -1 1746 19 1403 2176 175651 39251 4.2465 4.2465 -130.327 -4.2465 0 0 1.17392e+06 4061.99 0.47 0.07 0.24 -1 -1 0.47 0.0254863 0.0228455 82 59 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_023.v common 6.01 vpr 64.56 MiB -1 -1 0.13 19980 1 0.03 -1 -1 34056 -1 -1 13 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66112 26 32 190 182 1 104 71 17 17 289 -1 unnamed_device 26.2 MiB 0.99 312 10291 4337 5270 684 64.6 MiB 0.06 0.00 1.86056 -53.1258 -1.86056 1.86056 1.02 0.000312731 0.000286265 0.0234128 0.0214358 36 1191 43 6.95648e+06 188184 648988. 2245.63 1.72 0.0932885 0.0818391 26050 158493 -1 792 15 551 644 45621 12227 2.01343 2.01343 -68.7348 -2.01343 0 0 828058. 2865.25 0.34 0.03 0.15 -1 -1 0.34 0.012461 0.0111229 44 21 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_024.v common 8.57 vpr 64.89 MiB -1 -1 0.16 20180 1 0.03 -1 -1 33876 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 32 32 285 227 1 161 79 17 17 289 -1 unnamed_device 26.4 MiB 0.88 811 7684 1820 4857 1007 64.9 MiB 0.06 0.00 3.81446 -100.658 -3.81446 3.81446 1.02 0.000448908 0.000410168 0.022723 0.0208652 36 2535 27 6.95648e+06 217135 648988. 2245.63 4.31 0.135899 0.119209 26050 158493 -1 2033 22 1426 2331 241038 48576 4.10382 4.10382 -129.37 -4.10382 0 0 828058. 2865.25 0.32 0.08 0.15 -1 -1 0.32 0.0241687 0.0215595 66 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_025.v common 7.56 vpr 64.26 MiB -1 -1 0.13 19820 1 0.03 -1 -1 33468 -1 -1 8 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65804 32 32 173 169 1 112 72 17 17 289 -1 unnamed_device 25.9 MiB 0.33 365 9757 3621 4371 1765 64.3 MiB 0.05 0.00 1.77736 -57.3321 -1.77736 1.77736 1.00 0.000301168 0.000272977 0.0211947 0.0193115 38 1148 19 6.95648e+06 115805 678818. 2348.85 3.95 0.106332 0.0917735 26626 170182 -1 879 18 614 724 48623 12724 1.93388 1.93388 -72.6444 -1.93388 0 0 902133. 3121.57 0.36 0.04 0.17 -1 -1 0.36 0.0136828 0.0122189 42 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_026.v common 7.45 vpr 65.24 MiB -1 -1 0.15 20236 1 0.03 -1 -1 33864 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 32 32 300 245 1 165 79 17 17 289 -1 unnamed_device 26.7 MiB 1.12 883 14444 4779 8276 1389 65.2 MiB 0.11 0.00 3.67085 -106.418 -3.67085 3.67085 1.03 0.000475291 0.000435235 0.0419911 0.0384985 38 2267 34 6.95648e+06 217135 678818. 2348.85 2.83 0.175222 0.155362 26626 170182 -1 2001 21 1329 2088 166514 33494 3.83802 3.83802 -128.634 -3.83802 0 0 902133. 3121.57 0.37 0.07 0.17 -1 -1 0.37 0.0257315 0.0231025 68 21 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_027.v common 6.49 vpr 65.29 MiB -1 -1 0.15 20136 1 0.03 -1 -1 33704 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66856 32 32 297 233 1 170 85 17 17 289 -1 unnamed_device 26.7 MiB 0.60 746 11803 4439 5667 1697 65.3 MiB 0.08 0.00 2.4561 -82.9741 -2.4561 2.4561 1.02 0.000451454 0.000411131 0.0332006 0.0303738 44 2045 25 6.95648e+06 303989 787024. 2723.27 2.36 0.161738 0.143775 27778 195446 -1 1522 24 1328 2148 152092 36302 3.08717 3.08717 -106.422 -3.08717 0 0 997811. 3452.63 0.42 0.07 0.19 -1 -1 0.42 0.0271608 0.0242914 74 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_028.v common 6.82 vpr 65.26 MiB -1 -1 0.16 20272 1 0.03 -1 -1 33920 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66824 32 32 338 277 1 172 83 17 17 289 -1 unnamed_device 26.9 MiB 0.84 817 15383 6608 8304 471 65.3 MiB 0.11 0.00 3.73483 -109.744 -3.73483 3.73483 1.02 0.000502106 0.000457646 0.0457821 0.0419074 44 2697 32 6.95648e+06 275038 787024. 2723.27 2.39 0.169109 0.150364 27778 195446 -1 2009 22 1283 2003 172148 36633 4.21466 4.21466 -137.824 -4.21466 0 0 997811. 3452.63 0.42 0.08 0.19 -1 -1 0.42 0.0288885 0.0258889 72 47 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_029.v common 6.60 vpr 65.11 MiB -1 -1 0.15 20244 1 0.03 -1 -1 33696 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 32 32 284 241 1 141 74 17 17 289 -1 unnamed_device 26.7 MiB 1.07 539 12164 5242 6584 338 65.1 MiB 0.08 0.00 2.67985 -77.8742 -2.67985 2.67985 0.98 0.000421938 0.000385132 0.036195 0.0330201 42 2237 42 6.95648e+06 144757 744469. 2576.02 2.09 0.137026 0.120406 27202 183097 -1 1571 22 1169 1749 179648 51144 3.24963 3.24963 -110.839 -3.24963 0 0 949917. 3286.91 0.40 0.07 0.18 -1 -1 0.40 0.0232382 0.0206522 55 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_030.v common 5.75 vpr 65.02 MiB -1 -1 0.15 20416 1 0.03 -1 -1 33828 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 30 32 262 227 1 134 80 17 17 289 -1 unnamed_device 26.7 MiB 0.24 517 11776 4911 6304 561 65.0 MiB 0.07 0.00 2.86043 -80.4834 -2.86043 2.86043 1.01 0.000408369 0.000370853 0.0292531 0.0266765 42 1682 39 6.95648e+06 260562 744469. 2576.02 2.07 0.11576 0.101657 27202 183097 -1 1092 20 783 1106 88789 24860 2.77627 2.77627 -94.6208 -2.77627 0 0 949917. 3286.91 0.38 0.05 0.18 -1 -1 0.38 0.0194205 0.0172071 57 29 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_031.v common 6.55 vpr 64.57 MiB -1 -1 0.15 20548 1 0.03 -1 -1 33732 -1 -1 16 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 28 32 260 223 1 135 76 17 17 289 -1 unnamed_device 26.2 MiB 0.56 455 11116 3646 5381 2089 64.6 MiB 0.07 0.00 2.5594 -73.0136 -2.5594 2.5594 1.02 0.000393631 0.000357778 0.0298079 0.0271103 52 1331 25 6.95648e+06 231611 926341. 3205.33 2.49 0.129234 0.113291 29218 227130 -1 983 19 872 1371 97234 25682 2.67492 2.67492 -83.9127 -2.67492 0 0 1.14541e+06 3963.36 0.46 0.05 0.22 -1 -1 0.46 0.0190274 0.0169614 57 27 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_032.v common 9.37 vpr 64.90 MiB -1 -1 0.15 20212 1 0.03 -1 -1 33828 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 32 32 253 210 1 149 74 17 17 289 -1 unnamed_device 26.5 MiB 0.52 548 8444 3460 4719 265 64.9 MiB 0.06 0.00 2.79923 -89.2107 -2.79923 2.79923 1.02 0.000403526 0.000368026 0.0245824 0.0225298 48 1711 35 6.95648e+06 144757 865456. 2994.66 5.32 0.186607 0.163908 28354 207349 -1 1320 17 1028 1434 121489 29339 2.94767 2.94767 -112.695 -2.94767 0 0 1.05005e+06 3633.38 0.45 0.06 0.20 -1 -1 0.45 0.0202317 0.0181993 58 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_033.v common 13.84 vpr 64.95 MiB -1 -1 0.14 20492 1 0.03 -1 -1 33564 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 31 32 271 231 1 143 82 17 17 289 -1 unnamed_device 26.5 MiB 0.42 577 10228 3042 5864 1322 65.0 MiB 0.07 0.00 2.5656 -81.1429 -2.5656 2.5656 0.99 0.000377309 0.000340969 0.0249838 0.0227173 40 1807 31 6.95648e+06 275038 706193. 2443.58 10.11 0.251779 0.218984 26914 176310 -1 1464 21 1151 1811 161095 37086 3.14022 3.14022 -106.584 -3.14022 0 0 926341. 3205.33 0.37 0.06 0.16 -1 -1 0.37 0.0206474 0.0182859 61 26 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_034.v common 7.78 vpr 65.04 MiB -1 -1 0.16 20440 1 0.03 -1 -1 33800 -1 -1 12 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66604 29 32 291 250 1 148 73 17 17 289 -1 unnamed_device 26.6 MiB 1.27 664 12993 5517 6970 506 65.0 MiB 0.09 0.00 2.4721 -85.2591 -2.4721 2.4721 1.01 0.000431223 0.000393477 0.0392036 0.035892 38 2084 23 6.95648e+06 173708 678818. 2348.85 3.09 0.158701 0.140743 26626 170182 -1 1621 18 1107 1483 119099 27172 2.59377 2.59377 -101.862 -2.59377 0 0 902133. 3121.57 0.36 0.06 0.16 -1 -1 0.36 0.0207452 0.0185284 61 48 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_035.v common 9.69 vpr 65.45 MiB -1 -1 0.16 20564 1 0.03 -1 -1 33552 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 32 32 367 282 1 193 85 17 17 289 -1 unnamed_device 26.9 MiB 0.90 874 13105 5117 5856 2132 65.4 MiB 0.10 0.00 3.40128 -99.8589 -3.40128 3.40128 0.99 0.000526735 0.000480024 0.040683 0.0372322 48 2478 25 6.95648e+06 303989 865456. 2994.66 5.25 0.24868 0.21694 28354 207349 -1 2001 22 1472 2485 205471 46027 3.92832 3.92832 -126.982 -3.92832 0 0 1.05005e+06 3633.38 0.41 0.08 0.21 -1 -1 0.41 0.0298759 0.0266606 84 26 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_036.v common 7.48 vpr 65.34 MiB -1 -1 0.16 20724 1 0.03 -1 -1 33948 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66912 32 32 391 311 1 184 88 17 17 289 -1 unnamed_device 26.9 MiB 1.03 755 13933 5264 6834 1835 65.3 MiB 0.11 0.00 2.81508 -97.5119 -2.81508 2.81508 0.97 0.000545907 0.00050254 0.0425546 0.0387389 38 2849 37 6.95648e+06 347416 678818. 2348.85 3.02 0.17676 0.155384 26626 170182 -1 1982 21 1861 2588 206139 46054 3.67747 3.67747 -131.381 -3.67747 0 0 902133. 3121.57 0.35 0.09 0.17 -1 -1 0.35 0.0299711 0.0267213 82 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_037.v common 8.10 vpr 65.17 MiB -1 -1 0.17 20488 1 0.03 -1 -1 34016 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66736 31 32 279 237 1 153 74 17 17 289 -1 unnamed_device 26.7 MiB 2.12 792 9219 3785 5131 303 65.2 MiB 0.07 0.00 3.28867 -106.879 -3.28867 3.28867 1.01 0.000410418 0.000375336 0.028022 0.0256693 40 2034 24 6.95648e+06 159232 706193. 2443.58 2.52 0.147674 0.130465 26914 176310 -1 1912 19 1305 1857 215451 42005 3.57121 3.57121 -129.505 -3.57121 0 0 926341. 3205.33 0.39 0.08 0.17 -1 -1 0.39 0.0231728 0.0208249 63 30 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_038.v common 8.17 vpr 65.42 MiB -1 -1 0.17 20588 1 0.03 -1 -1 33628 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66992 31 32 370 297 1 179 79 17 17 289 -1 unnamed_device 27.0 MiB 0.86 911 11233 4701 6194 338 65.4 MiB 0.09 0.00 2.97779 -99.9314 -2.97779 2.97779 1.01 0.000534028 0.000488014 0.0385271 0.0353316 38 2632 32 6.95648e+06 231611 678818. 2348.85 3.86 0.178948 0.157727 26626 170182 -1 2025 25 1718 2592 216962 46874 3.49602 3.49602 -123.583 -3.49602 0 0 902133. 3121.57 0.36 0.08 0.17 -1 -1 0.36 0.0283584 0.0250642 76 57 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_039.v common 32.09 vpr 65.64 MiB -1 -1 0.17 20392 1 0.03 -1 -1 33952 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67216 31 32 377 302 1 225 79 17 17 289 -1 unnamed_device 27.4 MiB 2.26 974 13261 5378 6260 1623 65.6 MiB 0.10 0.00 4.64566 -142.703 -4.64566 4.64566 0.97 0.000526662 0.000479824 0.0445049 0.0407243 50 3413 37 6.95648e+06 231611 902133. 3121.57 26.25 0.336989 0.29574 28642 213929 -1 2532 30 2659 3892 370044 77324 5.3073 5.3073 -181.095 -5.3073 0 0 1.08113e+06 3740.92 0.44 0.13 0.21 -1 -1 0.44 0.0376918 0.0334542 97 60 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_040.v common 12.29 vpr 65.38 MiB -1 -1 0.16 20556 1 0.03 -1 -1 33900 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66948 31 32 383 305 1 204 79 17 17 289 -1 unnamed_device 26.9 MiB 2.88 835 15120 6584 7826 710 65.4 MiB 0.12 0.00 3.83514 -120.302 -3.83514 3.83514 1.03 0.000549972 0.000503064 0.0532785 0.0487681 46 2983 38 6.95648e+06 231611 828058. 2865.25 5.76 0.287284 0.25401 28066 200906 -1 2092 23 1783 2591 206687 46640 4.84371 4.84371 -163.895 -4.84371 0 0 1.01997e+06 3529.29 0.42 0.09 0.20 -1 -1 0.42 0.032204 0.0288234 88 60 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_041.v common 7.50 vpr 65.50 MiB -1 -1 0.16 20708 1 0.03 -1 -1 33912 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67068 31 32 352 285 1 177 85 17 17 289 -1 unnamed_device 27.1 MiB 1.14 826 14779 5675 7211 1893 65.5 MiB 0.11 0.00 3.44517 -107.539 -3.44517 3.44517 0.99 0.000467076 0.000422923 0.0414122 0.0375468 46 2285 38 6.95648e+06 318465 828058. 2865.25 2.92 0.179678 0.157994 28066 200906 -1 1835 22 1357 2019 156541 34065 3.47006 3.47006 -125.828 -3.47006 0 0 1.01997e+06 3529.29 0.40 0.07 0.18 -1 -1 0.40 0.0257249 0.0228743 78 51 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_042.v common 10.36 vpr 65.19 MiB -1 -1 0.15 20668 1 0.03 -1 -1 33732 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 32 32 291 242 1 173 78 17 17 289 -1 unnamed_device 26.6 MiB 1.38 727 12860 4967 6188 1705 65.2 MiB 0.09 0.00 3.40898 -94.1517 -3.40898 3.40898 1.00 0.000432243 0.000387045 0.0369648 0.033737 52 2139 25 6.95648e+06 202660 926341. 3205.33 5.46 0.184126 0.160775 29218 227130 -1 1582 21 1204 1657 145874 33210 3.63571 3.63571 -114.562 -3.63571 0 0 1.14541e+06 3963.36 0.44 0.06 0.22 -1 -1 0.44 0.0230541 0.020629 71 24 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_043.v common 9.18 vpr 65.96 MiB -1 -1 0.17 20752 1 0.03 -1 -1 34036 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67548 32 32 457 356 1 214 86 17 17 289 -1 unnamed_device 27.4 MiB 1.67 928 16907 6069 8568 2270 66.0 MiB 0.15 0.00 3.98456 -131.022 -3.98456 3.98456 1.02 0.000644389 0.000587467 0.0614059 0.0561461 46 2892 37 6.95648e+06 318465 828058. 2865.25 3.82 0.247762 0.220411 28066 200906 -1 2217 26 1959 2871 210623 46182 4.55661 4.55661 -158.48 -4.55661 0 0 1.01997e+06 3529.29 0.42 0.10 0.20 -1 -1 0.42 0.0391193 0.0348206 93 84 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_044.v common 7.47 vpr 64.72 MiB -1 -1 0.15 20564 1 0.03 -1 -1 33456 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66276 31 32 261 225 1 137 78 17 17 289 -1 unnamed_device 26.4 MiB 0.87 518 10702 3038 5758 1906 64.7 MiB 0.07 0.00 2.73795 -79.0651 -2.73795 2.73795 1.01 0.000444796 0.000409945 0.0282353 0.0258856 36 1850 46 6.95648e+06 217135 648988. 2245.63 3.25 0.154026 0.13539 26050 158493 -1 1199 21 944 1370 88022 21473 3.24657 3.24657 -103.705 -3.24657 0 0 828058. 2865.25 0.34 0.05 0.15 -1 -1 0.34 0.0208128 0.018481 56 24 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_045.v common 7.99 vpr 65.04 MiB -1 -1 0.17 20556 1 0.03 -1 -1 33764 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 31 32 337 267 1 199 78 17 17 289 -1 unnamed_device 26.6 MiB 1.47 841 13358 5793 6972 593 65.0 MiB 0.10 0.00 3.94062 -121.693 -3.94062 3.94062 1.00 0.000497379 0.000453464 0.0428694 0.0392057 52 2577 40 6.95648e+06 217135 926341. 3205.33 2.93 0.184715 0.163547 29218 227130 -1 1856 22 1568 2188 184478 46005 4.28926 4.28926 -144.242 -4.28926 0 0 1.14541e+06 3963.36 0.44 0.08 0.23 -1 -1 0.44 0.0268159 0.0239557 84 30 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_046.v common 7.08 vpr 65.45 MiB -1 -1 0.15 20884 1 0.03 -1 -1 33820 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67020 32 32 349 284 1 175 81 17 17 289 -1 unnamed_device 27.1 MiB 1.18 908 15656 6774 8530 352 65.4 MiB 0.12 0.00 2.70675 -96.0827 -2.70675 2.70675 1.00 0.000500994 0.000456914 0.0465993 0.0424136 44 2610 31 6.95648e+06 246087 787024. 2723.27 2.37 0.160314 0.142043 27778 195446 -1 1986 24 1587 2659 200414 42246 3.10392 3.10392 -115.893 -3.10392 0 0 997811. 3452.63 0.41 0.08 0.19 -1 -1 0.41 0.0290131 0.0257819 73 50 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_047.v common 7.35 vpr 65.14 MiB -1 -1 0.15 20228 1 0.03 -1 -1 33684 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66700 32 32 291 230 1 166 80 17 17 289 -1 unnamed_device 26.6 MiB 1.16 700 9712 2856 5070 1786 65.1 MiB 0.07 0.00 3.72678 -98.3034 -3.72678 3.72678 1.01 0.000397958 0.000364089 0.0276431 0.0253026 44 2515 30 6.95648e+06 231611 787024. 2723.27 2.69 0.136661 0.121045 27778 195446 -1 1735 19 1157 1997 191184 41960 3.70752 3.70752 -126.992 -3.70752 0 0 997811. 3452.63 0.41 0.08 0.19 -1 -1 0.41 0.0245892 0.0222011 68 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_048.v common 8.86 vpr 65.39 MiB -1 -1 0.15 20752 1 0.03 -1 -1 34012 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66960 32 32 353 287 1 185 78 17 17 289 -1 unnamed_device 27.0 MiB 2.78 839 12030 5018 6529 483 65.4 MiB 0.09 0.00 3.28085 -102.866 -3.28085 3.28085 0.97 0.000464458 0.000424216 0.0370921 0.0338199 46 2063 29 6.95648e+06 202660 828058. 2865.25 2.71 0.166785 0.146846 28066 200906 -1 1639 21 1226 1719 109901 26486 3.38676 3.38676 -123.385 -3.38676 0 0 1.01997e+06 3529.29 0.40 0.06 0.18 -1 -1 0.40 0.0240392 0.0214184 78 52 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_049.v common 11.21 vpr 65.25 MiB -1 -1 0.15 20564 1 0.03 -1 -1 33936 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 32 32 361 291 1 179 81 17 17 289 -1 unnamed_device 26.9 MiB 2.00 708 11456 4717 6238 501 65.2 MiB 0.09 0.00 2.6085 -91.2293 -2.6085 2.6085 1.02 0.000528231 0.000483378 0.0376979 0.0344731 48 2361 37 6.95648e+06 246087 865456. 2994.66 5.62 0.259919 0.228802 28354 207349 -1 1731 24 1526 2313 200301 47200 2.97277 2.97277 -113.708 -2.97277 0 0 1.05005e+06 3633.38 0.43 0.09 0.20 -1 -1 0.43 0.0298268 0.0264939 75 52 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_050.v common 9.16 vpr 65.59 MiB -1 -1 0.16 20480 1 0.03 -1 -1 33736 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67168 32 32 382 305 1 184 90 17 17 289 -1 unnamed_device 27.1 MiB 0.96 975 15768 5178 8147 2443 65.6 MiB 0.12 0.00 3.29648 -110.565 -3.29648 3.29648 1.01 0.00053477 0.000486702 0.0453144 0.0413675 38 2790 33 6.95648e+06 376368 678818. 2348.85 4.71 0.18968 0.167223 26626 170182 -1 2166 24 1431 2020 166935 33234 3.76266 3.76266 -138.511 -3.76266 0 0 902133. 3121.57 0.35 0.08 0.17 -1 -1 0.35 0.0296429 0.0263661 83 59 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_051.v common 10.05 vpr 65.37 MiB -1 -1 0.14 20224 1 0.03 -1 -1 33764 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 32 32 306 248 1 164 86 17 17 289 -1 unnamed_device 26.7 MiB 1.22 793 12182 4369 5126 2687 65.4 MiB 0.09 0.00 3.63883 -97.2819 -3.63883 3.63883 1.02 0.000463669 0.000423445 0.033421 0.030562 44 2278 27 6.95648e+06 318465 787024. 2723.27 5.26 0.24915 0.219202 27778 195446 -1 1588 18 934 1524 108854 24587 3.70272 3.70272 -117.818 -3.70272 0 0 997811. 3452.63 0.42 0.06 0.19 -1 -1 0.42 0.0221002 0.0199097 69 21 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_052.v common 17.11 vpr 65.27 MiB -1 -1 0.15 20160 1 0.03 -1 -1 33640 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 32 32 319 257 1 191 77 17 17 289 -1 unnamed_device 26.9 MiB 2.96 788 9694 3973 5384 337 65.3 MiB 0.08 0.00 3.53127 -106.53 -3.53127 3.53127 1.00 0.000474375 0.000432165 0.031118 0.0284585 44 2618 27 6.95648e+06 188184 787024. 2723.27 10.70 0.257804 0.224272 27778 195446 -1 1740 20 1466 1974 140477 32815 3.88922 3.88922 -126.697 -3.88922 0 0 997811. 3452.63 0.38 0.06 0.19 -1 -1 0.38 0.021821 0.0194299 79 26 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_053.v common 10.96 vpr 65.66 MiB -1 -1 0.17 20436 1 0.03 -1 -1 33800 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67240 31 32 373 299 1 194 78 17 17 289 -1 unnamed_device 27.2 MiB 1.68 893 12196 5149 6693 354 65.7 MiB 0.10 0.00 3.65997 -117.175 -3.65997 3.65997 1.01 0.000552281 0.000505705 0.0428334 0.0392515 48 2566 26 6.95648e+06 217135 865456. 2994.66 5.65 0.248524 0.218961 28354 207349 -1 2184 25 2013 3156 293811 59663 4.34842 4.34842 -145.051 -4.34842 0 0 1.05005e+06 3633.38 0.43 0.11 0.20 -1 -1 0.43 0.0334693 0.0298122 85 58 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_054.v common 9.85 vpr 65.48 MiB -1 -1 0.16 20536 1 0.03 -1 -1 33560 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67048 32 32 387 315 1 182 77 17 17 289 -1 unnamed_device 27.1 MiB 2.76 916 13280 4868 6811 1601 65.5 MiB 0.12 0.00 3.41 -113.664 -3.41 3.41 1.01 0.000548391 0.000501962 0.0486284 0.0445007 44 2987 46 6.95648e+06 188184 787024. 2723.27 3.46 0.225288 0.200068 27778 195446 -1 2424 21 1509 2507 267789 57883 4.00382 4.00382 -138.488 -4.00382 0 0 997811. 3452.63 0.42 0.10 0.19 -1 -1 0.42 0.0307578 0.0275499 76 74 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_055.v common 8.46 vpr 64.89 MiB -1 -1 0.16 20592 1 0.03 -1 -1 33696 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 251 219 1 136 82 17 17 289 -1 unnamed_device 26.3 MiB 0.29 611 11474 4764 6424 286 64.9 MiB 0.08 0.00 2.50468 -77.473 -2.50468 2.50468 1.00 0.000411767 0.000375301 0.0284082 0.0259893 40 1846 28 6.95648e+06 260562 706193. 2443.58 4.77 0.19559 0.171278 26914 176310 -1 1450 23 1119 1722 152091 32937 2.96487 2.96487 -101.415 -2.96487 0 0 926341. 3205.33 0.38 0.06 0.17 -1 -1 0.38 0.0213386 0.0188829 57 20 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_056.v common 18.93 vpr 65.21 MiB -1 -1 0.16 20724 1 0.03 -1 -1 33744 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 32 32 341 285 1 181 76 17 17 289 -1 unnamed_device 26.8 MiB 1.62 792 9676 3979 5527 170 65.2 MiB 0.08 0.00 3.24955 -116.703 -3.24955 3.24955 1.02 0.000505366 0.000461713 0.0325437 0.0297142 40 2730 46 6.95648e+06 173708 706193. 2443.58 13.84 0.295983 0.258244 26914 176310 -1 2281 23 1653 2327 273415 59967 4.44371 4.44371 -151.129 -4.44371 0 0 926341. 3205.33 0.35 0.09 0.18 -1 -1 0.35 0.0263236 0.023325 76 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_057.v common 9.29 vpr 65.84 MiB -1 -1 0.17 20536 1 0.03 -1 -1 34148 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67416 32 32 387 293 1 225 80 17 17 289 -1 unnamed_device 27.3 MiB 2.19 1250 12120 4663 5914 1543 65.8 MiB 0.11 0.00 4.14402 -134.568 -4.14402 4.14402 1.02 0.000529042 0.000482028 0.0434818 0.0398006 44 3593 37 6.95648e+06 231611 787024. 2723.27 3.48 0.174744 0.154699 27778 195446 -1 2893 21 2098 3179 324430 62197 4.58506 4.58506 -164.898 -4.58506 0 0 997811. 3452.63 0.40 0.11 0.19 -1 -1 0.40 0.0305107 0.0273296 97 28 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_058.v common 6.72 vpr 65.13 MiB -1 -1 0.15 20128 1 0.03 -1 -1 33792 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 32 32 340 270 1 175 81 17 17 289 -1 unnamed_device 26.8 MiB 0.94 703 15481 5944 6756 2781 65.1 MiB 0.11 0.00 3.65681 -114.437 -3.65681 3.65681 1.01 0.000522283 0.000478377 0.0473322 0.0432085 44 2501 30 6.95648e+06 246087 787024. 2723.27 2.27 0.153453 0.135997 27778 195446 -1 1728 16 1210 1685 139476 33396 3.74352 3.74352 -137.941 -3.74352 0 0 997811. 3452.63 0.40 0.06 0.19 -1 -1 0.40 0.0211321 0.0189757 74 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_059.v common 15.57 vpr 65.04 MiB -1 -1 0.15 20276 1 0.03 -1 -1 34028 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 30 32 278 235 1 143 82 17 17 289 -1 unnamed_device 26.6 MiB 0.58 493 11296 4038 5246 2012 65.0 MiB 0.07 0.00 2.5502 -80.9265 -2.5502 2.5502 0.99 0.000422933 0.00038417 0.02923 0.0266972 44 1946 45 6.95648e+06 289514 787024. 2723.27 11.58 0.255426 0.222081 27778 195446 -1 1296 20 1122 1652 138277 34766 2.83637 2.83637 -103.082 -2.83637 0 0 997811. 3452.63 0.40 0.06 0.19 -1 -1 0.40 0.0200578 0.0177907 62 29 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_060.v common 10.05 vpr 65.84 MiB -1 -1 0.18 20564 1 0.03 -1 -1 33956 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67424 32 32 431 332 1 224 79 17 17 289 -1 unnamed_device 27.5 MiB 1.92 1117 11740 3694 7229 817 65.8 MiB 0.12 0.00 4.77419 -139.583 -4.77419 4.77419 1.02 0.000693551 0.000631208 0.046862 0.0429774 48 2858 34 6.95648e+06 217135 865456. 2994.66 4.42 0.230985 0.205292 28354 207349 -1 2228 23 1874 2787 241672 52583 5.1614 5.1614 -169.28 -5.1614 0 0 1.05005e+06 3633.38 0.43 0.10 0.20 -1 -1 0.43 0.0366822 0.0328346 95 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_061.v common 15.20 vpr 65.35 MiB -1 -1 0.14 20436 1 0.03 -1 -1 33800 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66916 32 32 336 268 1 169 87 17 17 289 -1 unnamed_device 27.0 MiB 1.25 744 13527 5190 6116 2221 65.3 MiB 0.10 0.00 3.8791 -110.943 -3.8791 3.8791 0.98 0.000522994 0.00047744 0.0381434 0.0347721 38 2548 50 6.95648e+06 332941 678818. 2348.85 10.58 0.287897 0.25137 26626 170182 -1 1803 18 1331 1986 145428 31807 3.94131 3.94131 -132.706 -3.94131 0 0 902133. 3121.57 0.36 0.07 0.16 -1 -1 0.36 0.0237908 0.0212906 74 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_062.v common 5.68 vpr 64.55 MiB -1 -1 0.14 20584 1 0.03 -1 -1 33696 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 32 32 231 199 1 136 77 17 17 289 -1 unnamed_device 26.0 MiB 0.27 524 9531 3262 4735 1534 64.5 MiB 0.06 0.00 2.4091 -75.5035 -2.4091 2.4091 1.01 0.000371353 0.000338176 0.0242073 0.0221599 44 1320 32 6.95648e+06 188184 787024. 2723.27 2.01 0.101438 0.0890087 27778 195446 -1 1035 22 895 1327 76726 20211 2.83332 2.83332 -89.6824 -2.83332 0 0 997811. 3452.63 0.39 0.05 0.19 -1 -1 0.39 0.0192736 0.0170144 51 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_063.v common 7.27 vpr 65.43 MiB -1 -1 0.17 20448 1 0.03 -1 -1 33488 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66996 32 32 349 273 1 184 88 17 17 289 -1 unnamed_device 27.0 MiB 0.60 970 15883 6338 7924 1621 65.4 MiB 0.12 0.00 4.09207 -110.193 -4.09207 4.09207 1.00 0.000456343 0.000413579 0.0434221 0.0395697 40 2852 22 6.95648e+06 347416 706193. 2443.58 3.20 0.166712 0.146701 26914 176310 -1 2414 21 1676 3034 282887 57982 4.74156 4.74156 -142.409 -4.74156 0 0 926341. 3205.33 0.35 0.09 0.17 -1 -1 0.35 0.0274115 0.0244772 80 26 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_064.v common 6.79 vpr 64.81 MiB -1 -1 0.15 20572 1 0.03 -1 -1 33872 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 247 207 1 142 78 17 17 289 -1 unnamed_device 26.5 MiB 1.19 494 11366 4106 5307 1953 64.8 MiB 0.07 0.00 2.6034 -82.9973 -2.6034 2.6034 1.00 0.000398903 0.000364605 0.0291743 0.0266903 38 2090 35 6.95648e+06 202660 678818. 2348.85 2.21 0.127751 0.111965 26626 170182 -1 1394 25 1456 1995 142295 35759 3.27022 3.27022 -114.096 -3.27022 0 0 902133. 3121.57 0.36 0.07 0.17 -1 -1 0.36 0.0231774 0.0205594 57 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_065.v common 8.84 vpr 64.88 MiB -1 -1 0.16 20488 1 0.03 -1 -1 33688 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 30 32 278 235 1 144 79 17 17 289 -1 unnamed_device 26.4 MiB 1.00 571 9205 3778 5043 384 64.9 MiB 0.07 0.00 2.93563 -88.4965 -2.93563 2.93563 0.99 0.000443533 0.000405327 0.0259336 0.0237386 40 1786 23 6.95648e+06 246087 706193. 2443.58 4.45 0.169757 0.147391 26914 176310 -1 1549 22 1228 1898 196274 41447 2.95032 2.95032 -105.894 -2.95032 0 0 926341. 3205.33 0.35 0.07 0.18 -1 -1 0.35 0.0219175 0.0194197 60 29 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_066.v common 10.31 vpr 65.39 MiB -1 -1 0.18 20524 1 0.03 -1 -1 33652 -1 -1 16 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 29 32 355 287 1 186 77 17 17 289 -1 unnamed_device 26.9 MiB 1.67 1011 13932 6097 7158 677 65.4 MiB 0.12 0.00 3.07379 -102.002 -3.07379 3.07379 1.02 0.000507261 0.000463786 0.0473348 0.0433592 40 2732 19 6.95648e+06 231611 706193. 2443.58 5.06 0.255996 0.225741 26914 176310 -1 2451 21 1916 2829 284975 56814 3.41306 3.41306 -127.584 -3.41306 0 0 926341. 3205.33 0.38 0.10 0.17 -1 -1 0.38 0.0301286 0.0270126 80 56 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_067.v common 7.18 vpr 65.32 MiB -1 -1 0.17 20480 1 0.03 -1 -1 33940 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66884 32 32 358 289 1 173 80 17 17 289 -1 unnamed_device 27.0 MiB 1.40 672 12636 4375 5767 2494 65.3 MiB 0.09 0.00 3.91028 -109.879 -3.91028 3.91028 1.00 0.000512642 0.000469669 0.0410147 0.0375393 48 1869 30 6.95648e+06 231611 865456. 2994.66 2.27 0.183429 0.162316 28354 207349 -1 1499 21 1454 2096 151807 38178 4.44062 4.44062 -140.143 -4.44062 0 0 1.05005e+06 3633.38 0.43 0.07 0.20 -1 -1 0.43 0.0255126 0.0227215 72 51 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_068.v common 22.65 vpr 65.41 MiB -1 -1 0.15 20680 1 0.03 -1 -1 33856 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66980 32 32 353 285 1 178 78 17 17 289 -1 unnamed_device 27.0 MiB 2.03 818 11698 4892 6539 267 65.4 MiB 0.09 0.00 3.82419 -117.798 -3.82419 3.82419 0.99 0.000467176 0.000423105 0.0356341 0.0324748 42 2846 43 6.95648e+06 202660 744469. 2576.02 17.20 0.311244 0.272412 27202 183097 -1 2184 30 1888 2976 399633 111770 4.14626 4.14626 -144.157 -4.14626 0 0 949917. 3286.91 0.38 0.14 0.17 -1 -1 0.38 0.0344765 0.0305797 73 48 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_069.v common 11.20 vpr 65.18 MiB -1 -1 0.15 20304 1 0.03 -1 -1 33656 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 276 237 1 155 74 17 17 289 -1 unnamed_device 26.6 MiB 3.33 701 9374 3882 5196 296 65.2 MiB 0.07 0.00 3.30448 -104.32 -3.30448 3.30448 1.01 0.00042329 0.000384562 0.0277459 0.0253496 48 1676 26 6.95648e+06 144757 865456. 2994.66 4.33 0.177025 0.154502 28354 207349 -1 1518 33 1337 1686 256316 118437 3.61822 3.61822 -125.558 -3.61822 0 0 1.05005e+06 3633.38 0.43 0.11 0.20 -1 -1 0.43 0.0297435 0.0261942 61 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_070.v common 8.04 vpr 65.12 MiB -1 -1 0.16 20528 1 0.03 -1 -1 34024 -1 -1 12 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 31 32 319 272 1 165 75 17 17 289 -1 unnamed_device 26.6 MiB 2.14 667 11135 4728 6057 350 65.1 MiB 0.08 0.00 3.15532 -100.248 -3.15532 3.15532 0.97 0.000458672 0.000417762 0.034745 0.0317036 40 2228 39 6.95648e+06 173708 706193. 2443.58 2.48 0.157231 0.137451 26914 176310 -1 1853 22 1513 2154 195603 43006 3.65337 3.65337 -126.72 -3.65337 0 0 926341. 3205.33 0.38 0.08 0.17 -1 -1 0.38 0.0260856 0.0232263 68 60 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_071.v common 7.50 vpr 65.28 MiB -1 -1 0.17 20340 1 0.03 -1 -1 33852 -1 -1 22 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 30 32 329 273 1 160 84 17 17 289 -1 unnamed_device 26.7 MiB 0.90 713 11247 4291 5268 1688 65.3 MiB 0.09 0.00 2.4971 -77.8648 -2.4971 2.4971 0.99 0.000492489 0.000446462 0.0324274 0.0295724 38 2301 41 6.95648e+06 318465 678818. 2348.85 3.18 0.162718 0.142657 26626 170182 -1 1865 21 1329 2008 180652 39507 3.20627 3.20627 -108.169 -3.20627 0 0 902133. 3121.57 0.36 0.07 0.17 -1 -1 0.36 0.0247225 0.0219972 71 52 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_072.v common 8.56 vpr 65.18 MiB -1 -1 0.16 20648 1 0.03 -1 -1 33808 -1 -1 28 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 28 32 277 229 1 155 88 17 17 289 -1 unnamed_device 26.7 MiB 0.62 709 9643 2719 5410 1514 65.2 MiB 0.07 0.00 2.98569 -81.1818 -2.98569 2.98569 1.00 0.000437413 0.000400554 0.0231225 0.0211379 46 1636 25 6.95648e+06 405319 828058. 2865.25 4.47 0.174515 0.152311 28066 200906 -1 1366 20 1037 1770 105179 25673 3.51016 3.51016 -102.264 -3.51016 0 0 1.01997e+06 3529.29 0.41 0.06 0.20 -1 -1 0.41 0.0211471 0.0188919 72 20 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_073.v common 6.14 vpr 65.14 MiB -1 -1 0.15 20288 1 0.03 -1 -1 33724 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66708 30 32 317 269 1 149 74 17 17 289 -1 unnamed_device 26.6 MiB 0.81 577 11234 4698 6083 453 65.1 MiB 0.08 0.00 2.79633 -89.5025 -2.79633 2.79633 0.98 0.000426968 0.000389286 0.0341353 0.0310876 40 1675 26 6.95648e+06 173708 706193. 2443.58 2.00 0.140524 0.123088 26914 176310 -1 1377 26 1504 2135 153576 36067 3.28227 3.28227 -115.718 -3.28227 0 0 926341. 3205.33 0.37 0.07 0.16 -1 -1 0.37 0.0257654 0.0227158 60 58 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_074.v common 8.56 vpr 65.17 MiB -1 -1 0.14 20696 1 0.03 -1 -1 33436 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66736 32 32 335 282 1 178 75 17 17 289 -1 unnamed_device 26.8 MiB 1.70 653 12873 4955 6295 1623 65.2 MiB 0.09 0.00 2.80395 -98.1106 -2.80395 2.80395 1.00 0.000393397 0.000357732 0.038579 0.035137 50 2142 46 6.95648e+06 159232 902133. 3121.57 3.33 0.189609 0.167438 28642 213929 -1 1618 24 1455 2103 166009 39403 3.38763 3.38763 -121.292 -3.38763 0 0 1.08113e+06 3740.92 0.42 0.07 0.21 -1 -1 0.42 0.0280338 0.024951 72 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_075.v common 21.38 vpr 65.19 MiB -1 -1 0.16 20120 1 0.03 -1 -1 34044 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 31 32 293 230 1 168 87 17 17 289 -1 unnamed_device 26.6 MiB 0.50 742 12183 4232 5803 2148 65.2 MiB 0.08 0.00 3.89128 -102.316 -3.89128 3.89128 1.02 0.000446994 0.000406318 0.0314616 0.0287621 46 2472 45 6.95648e+06 347416 828058. 2865.25 17.30 0.279569 0.244183 28066 200906 -1 1752 30 1338 2390 329653 130663 4.03962 4.03962 -123.624 -4.03962 0 0 1.01997e+06 3529.29 0.41 0.13 0.20 -1 -1 0.41 0.0338789 0.030207 74 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_076.v common 10.92 vpr 65.46 MiB -1 -1 0.16 20436 1 0.03 -1 -1 34032 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67032 32 32 350 275 1 196 77 17 17 289 -1 unnamed_device 27.0 MiB 1.91 840 13606 5284 6859 1463 65.5 MiB 0.11 0.00 3.82007 -122.119 -3.82007 3.82007 1.02 0.00050979 0.000465962 0.0467314 0.0428006 46 2802 26 6.95648e+06 188184 828058. 2865.25 5.40 0.249486 0.220316 28066 200906 -1 2063 20 1676 2445 197733 42824 4.12626 4.12626 -143.444 -4.12626 0 0 1.01997e+06 3529.29 0.42 0.08 0.19 -1 -1 0.42 0.029466 0.0264613 82 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_077.v common 10.66 vpr 65.34 MiB -1 -1 0.17 20476 1 0.03 -1 -1 33580 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66904 32 32 385 308 1 179 88 17 17 289 -1 unnamed_device 26.9 MiB 1.45 870 15883 5919 8257 1707 65.3 MiB 0.13 0.00 3.74653 -114.854 -3.74653 3.74653 0.99 0.000545224 0.000498063 0.0478354 0.0436764 48 2325 24 6.95648e+06 347416 865456. 2994.66 5.66 0.265614 0.232149 28354 207349 -1 1975 25 1421 2381 241997 49088 4.32076 4.32076 -141.482 -4.32076 0 0 1.05005e+06 3633.38 0.41 0.09 0.20 -1 -1 0.41 0.0296984 0.0262351 80 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_078.v common 9.05 vpr 65.32 MiB -1 -1 0.16 20428 1 0.03 -1 -1 33924 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66888 32 32 387 309 1 182 87 17 17 289 -1 unnamed_device 26.8 MiB 1.09 955 14295 5074 7318 1903 65.3 MiB 0.11 0.00 3.25852 -109.048 -3.25852 3.25852 1.00 0.000543234 0.000494827 0.04384 0.0399913 46 2764 39 6.95648e+06 332941 828058. 2865.25 4.37 0.192964 0.169217 28066 200906 -1 2092 24 1843 3089 229891 49033 4.06046 4.06046 -144.377 -4.06046 0 0 1.01997e+06 3529.29 0.42 0.09 0.20 -1 -1 0.42 0.0295535 0.0261676 80 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_079.v common 7.10 vpr 65.00 MiB -1 -1 0.15 20088 1 0.03 -1 -1 34056 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 30 32 272 232 1 142 74 17 17 289 -1 unnamed_device 26.6 MiB 0.87 559 10769 4024 4781 1964 65.0 MiB 0.07 0.00 3.09846 -87.7994 -3.09846 3.09846 0.98 0.000381455 0.000348115 0.028256 0.025683 38 2032 24 6.95648e+06 173708 678818. 2348.85 2.96 0.131801 0.11558 26626 170182 -1 1550 23 1334 2040 157752 34218 3.32822 3.32822 -116.006 -3.32822 0 0 902133. 3121.57 0.35 0.07 0.15 -1 -1 0.35 0.02188 0.0193798 57 29 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_080.v common 10.25 vpr 65.20 MiB -1 -1 0.17 20480 1 0.03 -1 -1 33684 -1 -1 14 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66768 30 32 375 299 1 179 76 17 17 289 -1 unnamed_device 26.8 MiB 1.01 657 10156 4222 5320 614 65.2 MiB 0.08 0.00 3.71763 -111.774 -3.71763 3.71763 0.98 0.000530749 0.000485636 0.0365353 0.0333744 54 1929 25 6.95648e+06 202660 949917. 3286.91 5.66 0.234229 0.203547 29506 232905 -1 1584 21 1621 2309 163774 38162 3.80786 3.80786 -132.183 -3.80786 0 0 1.17392e+06 4061.99 0.46 0.07 0.23 -1 -1 0.46 0.0272265 0.024208 76 58 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_081.v common 23.72 vpr 65.50 MiB -1 -1 0.16 20552 1 0.03 -1 -1 33952 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67076 32 32 340 270 1 193 78 17 17 289 -1 unnamed_device 27.1 MiB 1.68 799 12196 5082 6479 635 65.5 MiB 0.10 0.00 4.0079 -117.648 -4.0079 4.0079 1.01 0.000508426 0.000464062 0.0400747 0.0366271 48 2501 44 6.95648e+06 202660 865456. 2994.66 18.41 0.31836 0.277344 28354 207349 -1 1867 24 1757 2691 284728 80816 4.18071 4.18071 -144.66 -4.18071 0 0 1.05005e+06 3633.38 0.42 0.11 0.21 -1 -1 0.42 0.0294526 0.0262261 80 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_082.v common 11.54 vpr 65.38 MiB -1 -1 0.18 20424 1 0.03 -1 -1 33644 -1 -1 14 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 31 32 340 275 1 187 77 17 17 289 -1 unnamed_device 26.9 MiB 2.38 804 10183 4196 5561 426 65.4 MiB 0.08 0.00 4.52776 -125.183 -4.52776 4.52776 1.00 0.000503436 0.000459865 0.0341107 0.0312424 52 2210 25 6.95648e+06 202660 926341. 3205.33 5.53 0.198412 0.173523 29218 227130 -1 1662 19 1061 1609 110326 25255 4.13326 4.13326 -137.42 -4.13326 0 0 1.14541e+06 3963.36 0.46 0.06 0.24 -1 -1 0.46 0.0234166 0.0209293 79 43 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_083.v common 10.34 vpr 65.51 MiB -1 -1 0.18 20540 1 0.03 -1 -1 33680 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67084 30 32 377 310 1 170 83 17 17 289 -1 unnamed_device 27.1 MiB 1.76 809 9983 3596 4533 1854 65.5 MiB 0.08 0.00 3.74802 -114.756 -3.74802 3.74802 1.02 0.000523148 0.000476276 0.0326348 0.0298991 46 2083 22 6.95648e+06 303989 828058. 2865.25 5.04 0.220539 0.193764 28066 200906 -1 1601 18 965 1525 144498 32137 3.47092 3.47092 -123.921 -3.47092 0 0 1.01997e+06 3529.29 0.42 0.06 0.19 -1 -1 0.42 0.023022 0.0205959 74 78 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_084.v common 10.95 vpr 65.37 MiB -1 -1 0.17 20528 1 0.03 -1 -1 33992 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66936 32 32 365 294 1 177 77 17 17 289 -1 unnamed_device 26.9 MiB 1.25 723 9205 3074 4084 2047 65.4 MiB 0.08 0.00 3.77393 -113.966 -3.77393 3.77393 1.03 0.000558341 0.000513031 0.033316 0.0305507 52 2272 26 6.95648e+06 188184 926341. 3205.33 6.05 0.244128 0.212857 29218 227130 -1 1815 21 1449 2390 221258 49260 3.94696 3.94696 -140.428 -3.94696 0 0 1.14541e+06 3963.36 0.46 0.08 0.23 -1 -1 0.46 0.0272965 0.0244061 72 54 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_085.v common 7.64 vpr 65.39 MiB -1 -1 0.17 20772 1 0.03 -1 -1 33892 -1 -1 16 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 29 32 378 310 1 170 77 17 17 289 -1 unnamed_device 27.0 MiB 1.26 736 7738 3089 4238 411 65.4 MiB 0.06 0.00 3.39497 -102.397 -3.39497 3.39497 1.02 0.000503495 0.000456878 0.02763 0.0251984 46 2215 24 6.95648e+06 231611 828058. 2865.25 2.85 0.156304 0.136807 28066 200906 -1 1756 20 1276 1838 138460 31046 3.65752 3.65752 -123.187 -3.65752 0 0 1.01997e+06 3529.29 0.39 0.07 0.19 -1 -1 0.39 0.0260732 0.0232213 73 79 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_086.v common 6.66 vpr 64.42 MiB -1 -1 0.14 20356 1 0.03 -1 -1 33808 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65964 32 32 243 205 1 139 74 17 17 289 -1 unnamed_device 25.9 MiB 1.00 622 9529 3978 5277 274 64.4 MiB 0.07 0.00 2.91658 -87.0574 -2.91658 2.91658 1.01 0.00039128 0.000355769 0.0267444 0.0244573 44 1653 49 6.95648e+06 144757 787024. 2723.27 2.20 0.122382 0.10778 27778 195446 -1 1243 20 811 1229 87383 20009 2.88007 2.88007 -103.119 -2.88007 0 0 997811. 3452.63 0.42 0.05 0.19 -1 -1 0.42 0.0199918 0.0177896 53 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_087.v common 9.97 vpr 65.20 MiB -1 -1 0.16 20612 1 0.03 -1 -1 33748 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66760 32 32 373 302 1 174 87 17 17 289 -1 unnamed_device 26.8 MiB 3.33 778 15255 5840 6960 2455 65.2 MiB 0.12 0.00 3.94236 -111.1 -3.94236 3.94236 1.00 0.000526425 0.000475156 0.0465157 0.0422444 44 2429 34 6.95648e+06 332941 787024. 2723.27 3.06 0.160843 0.141742 27778 195446 -1 1800 21 1336 2133 184778 38294 3.81156 3.81156 -131.227 -3.81156 0 0 997811. 3452.63 0.40 0.07 0.20 -1 -1 0.40 0.0271075 0.0240676 76 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_088.v common 6.84 vpr 65.69 MiB -1 -1 0.16 20668 1 0.03 -1 -1 33936 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67264 32 32 397 314 1 188 77 17 17 289 -1 unnamed_device 27.1 MiB 0.69 804 9205 3766 5160 279 65.7 MiB 0.08 0.00 3.49708 -114.018 -3.49708 3.49708 1.01 0.000580683 0.000529556 0.0356342 0.0325831 46 2191 27 6.95648e+06 188184 828058. 2865.25 2.56 0.172162 0.150887 28066 200906 -1 1634 21 1591 2387 143895 39270 3.79171 3.79171 -137.902 -3.79171 0 0 1.01997e+06 3529.29 0.43 0.08 0.20 -1 -1 0.43 0.0297919 0.0265705 78 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_089.v common 18.43 vpr 64.93 MiB -1 -1 0.15 20328 1 0.03 -1 -1 33868 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 32 32 269 231 1 166 75 17 17 289 -1 unnamed_device 26.4 MiB 1.74 691 12399 5458 6668 273 64.9 MiB 0.09 0.00 3.40598 -100.425 -3.40598 3.40598 1.05 0.000432979 0.000396243 0.0361478 0.0330939 42 2195 48 6.95648e+06 159232 744469. 2576.02 13.19 0.285215 0.250923 27202 183097 -1 1673 20 1116 1391 131425 29481 3.58242 3.58242 -124.743 -3.58242 0 0 949917. 3286.91 0.39 0.06 0.18 -1 -1 0.39 0.0215455 0.0192485 68 26 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_090.v common 9.03 vpr 64.84 MiB -1 -1 0.15 20232 1 0.03 -1 -1 33716 -1 -1 13 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 31 32 245 205 1 144 76 17 17 289 -1 unnamed_device 26.5 MiB 1.31 618 11756 4952 6427 377 64.8 MiB 0.07 0.00 2.67578 -85.6387 -2.67578 2.67578 0.98 0.000375008 0.000341498 0.0297872 0.0272361 40 1591 24 6.95648e+06 188184 706193. 2443.58 4.37 0.16294 0.142242 26914 176310 -1 1452 21 1235 1715 166399 50148 2.94267 2.94267 -109.73 -2.94267 0 0 926341. 3205.33 0.38 0.07 0.17 -1 -1 0.38 0.0216319 0.0193048 57 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_091.v common 9.45 vpr 65.20 MiB -1 -1 0.17 20640 1 0.03 -1 -1 33752 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66768 32 32 348 274 1 202 79 17 17 289 -1 unnamed_device 26.8 MiB 1.75 913 14613 6291 7910 412 65.2 MiB 0.11 0.00 3.87937 -127.143 -3.87937 3.87937 1.00 0.000503357 0.000458693 0.0469068 0.0429102 40 3068 49 6.95648e+06 217135 706193. 2443.58 4.13 0.196392 0.173211 26914 176310 -1 2515 28 2317 3053 525127 179693 4.537 4.537 -159.596 -4.537 0 0 926341. 3205.33 0.36 0.17 0.18 -1 -1 0.36 0.0343572 0.0306887 85 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_092.v common 17.71 vpr 65.39 MiB -1 -1 0.15 20532 1 0.03 -1 -1 33840 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 32 32 356 289 1 196 78 17 17 289 -1 unnamed_device 27.0 MiB 1.14 848 11366 4803 6266 297 65.4 MiB 0.09 0.00 4.05782 -123.254 -4.05782 4.05782 0.97 0.00049958 0.000454504 0.0356944 0.0325592 40 2648 41 6.95648e+06 202660 706193. 2443.58 13.18 0.301922 0.263446 26914 176310 -1 2131 25 1979 2797 248483 53738 4.78956 4.78956 -158.276 -4.78956 0 0 926341. 3205.33 0.38 0.09 0.16 -1 -1 0.38 0.0316174 0.0281394 82 53 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_093.v common 9.35 vpr 65.36 MiB -1 -1 0.15 20676 1 0.03 -1 -1 33692 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66928 32 32 349 260 1 195 81 17 17 289 -1 unnamed_device 26.9 MiB 0.53 877 15656 6176 7184 2296 65.4 MiB 0.12 0.00 4.06272 -116.866 -4.06272 4.06272 0.99 0.000518165 0.000472311 0.0499068 0.0455755 54 2442 46 6.95648e+06 246087 949917. 3286.91 5.17 0.252382 0.220793 29506 232905 -1 1713 19 1290 2074 138576 32835 4.19191 4.19191 -138.261 -4.19191 0 0 1.17392e+06 4061.99 0.48 0.07 0.24 -1 -1 0.48 0.0272207 0.0244445 83 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_094.v common 6.92 vpr 65.20 MiB -1 -1 0.16 20564 1 0.03 -1 -1 33676 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 30 32 316 264 1 159 83 17 17 289 -1 unnamed_device 26.6 MiB 0.97 680 12323 3535 6272 2516 65.2 MiB 0.08 0.00 2.83043 -80.1664 -2.83043 2.83043 1.02 0.000475849 0.000434917 0.0344363 0.0315355 46 1830 25 6.95648e+06 303989 828058. 2865.25 2.42 0.132434 0.117506 28066 200906 -1 1222 23 1326 2208 126783 32795 3.05562 3.05562 -97.6763 -3.05562 0 0 1.01997e+06 3529.29 0.42 0.07 0.19 -1 -1 0.42 0.0260323 0.0231507 69 47 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_095.v common 8.56 vpr 64.91 MiB -1 -1 0.15 20272 1 0.03 -1 -1 34332 -1 -1 14 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 27 32 255 219 1 130 73 17 17 289 -1 unnamed_device 26.3 MiB 0.54 413 9801 4107 5054 640 64.9 MiB 0.06 0.00 2.4231 -71.4569 -2.4231 2.4231 1.01 0.000413556 0.00037868 0.0277112 0.0253724 44 1293 30 6.95648e+06 202660 787024. 2723.27 4.64 0.158313 0.137182 27778 195446 -1 958 25 1009 1269 91941 23693 2.85967 2.85967 -90.6784 -2.85967 0 0 997811. 3452.63 0.40 0.05 0.19 -1 -1 0.40 0.0213816 0.0188102 54 26 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_096.v common 11.01 vpr 65.77 MiB -1 -1 0.16 20684 1 0.03 -1 -1 33988 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67348 32 32 421 327 1 224 80 17 17 289 -1 unnamed_device 27.4 MiB 1.37 1010 16076 6288 7576 2212 65.8 MiB 0.15 0.00 3.32755 -113.539 -3.32755 3.32755 1.01 0.000604427 0.000550578 0.0583118 0.0531125 50 3102 24 6.95648e+06 231611 902133. 3121.57 5.96 0.317204 0.278933 28642 213929 -1 2609 22 2058 3251 302111 63234 4.07581 4.07581 -144.384 -4.07581 0 0 1.08113e+06 3740.92 0.44 0.11 0.20 -1 -1 0.44 0.0339697 0.0304411 95 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_097.v common 20.46 vpr 65.13 MiB -1 -1 0.17 20360 1 0.03 -1 -1 33836 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 31 32 365 296 1 190 78 17 17 289 -1 unnamed_device 26.8 MiB 5.15 1000 11864 4270 5653 1941 65.1 MiB 0.10 0.00 4.51235 -130.083 -4.51235 4.51235 0.99 0.000515299 0.000464014 0.0396795 0.0363379 38 2748 24 6.95648e+06 217135 678818. 2348.85 11.82 0.273692 0.239627 26626 170182 -1 2345 23 1805 2737 279965 54387 4.78251 4.78251 -162.698 -4.78251 0 0 902133. 3121.57 0.37 0.10 0.17 -1 -1 0.37 0.0302159 0.0269492 82 60 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_098.v common 17.88 vpr 65.26 MiB -1 -1 0.14 20400 1 0.03 -1 -1 33956 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66824 32 32 331 280 1 171 75 17 17 289 -1 unnamed_device 26.7 MiB 3.36 670 11135 4694 6130 311 65.3 MiB 0.08 0.00 3.05184 -103.57 -3.05184 3.05184 1.00 0.000482199 0.000439448 0.0361127 0.0329312 44 2261 44 6.95648e+06 159232 787024. 2723.27 11.04 0.280817 0.244984 27778 195446 -1 1581 22 1388 1872 205632 56344 3.29876 3.29876 -128.412 -3.29876 0 0 997811. 3452.63 0.39 0.08 0.20 -1 -1 0.39 0.0243672 0.0215786 70 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_099.v common 6.84 vpr 64.94 MiB -1 -1 0.15 20396 1 0.03 -1 -1 34020 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 326 263 1 169 86 17 17 289 -1 unnamed_device 26.6 MiB 0.39 760 15395 5959 7790 1646 64.9 MiB 0.10 0.00 3.48277 -101.172 -3.48277 3.48277 0.97 0.00043877 0.000397267 0.0394961 0.0359412 46 2259 28 6.95648e+06 318465 828058. 2865.25 3.04 0.161978 0.142561 28066 200906 -1 1738 18 1183 1813 139007 31142 3.57306 3.57306 -121.721 -3.57306 0 0 1.01997e+06 3529.29 0.43 0.06 0.18 -1 -1 0.43 0.0219539 0.0194953 74 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_100.v common 8.84 vpr 65.53 MiB -1 -1 0.17 20484 1 0.03 -1 -1 33768 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67100 31 32 373 294 1 188 88 17 17 289 -1 unnamed_device 27.1 MiB 0.89 832 15103 4635 7782 2686 65.5 MiB 0.11 0.00 3.67183 -105.382 -3.67183 3.67183 0.97 0.00051903 0.000472263 0.0439186 0.0399659 38 2335 25 6.95648e+06 361892 678818. 2348.85 4.54 0.245953 0.214814 26626 170182 -1 1776 20 1386 2061 125980 29491 3.93437 3.93437 -129.529 -3.93437 0 0 902133. 3121.57 0.36 0.06 0.17 -1 -1 0.36 0.0256792 0.0228789 83 46 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_101.v common 7.41 vpr 65.12 MiB -1 -1 0.16 20528 1 0.03 -1 -1 34084 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 30 32 325 268 1 166 78 17 17 289 -1 unnamed_device 26.6 MiB 1.15 750 13026 5612 6791 623 65.1 MiB 0.09 0.00 2.87605 -84.9432 -2.87605 2.87605 1.00 0.000468248 0.000427528 0.0400798 0.0366087 46 2088 28 6.95648e+06 231611 828058. 2865.25 2.78 0.15901 0.139696 28066 200906 -1 1595 23 1320 2152 148531 34267 3.29367 3.29367 -104 -3.29367 0 0 1.01997e+06 3529.29 0.39 0.07 0.20 -1 -1 0.39 0.0243763 0.0215887 68 46 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_102.v common 24.04 vpr 65.43 MiB -1 -1 0.16 20480 1 0.03 -1 -1 34028 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67004 32 32 350 275 1 208 78 17 17 289 -1 unnamed_device 26.9 MiB 1.71 1053 11698 4858 6468 372 65.4 MiB 0.10 0.00 3.87497 -128.691 -3.87497 3.87497 0.97 0.000524393 0.000473854 0.0395046 0.0361108 46 3101 45 6.95648e+06 202660 828058. 2865.25 18.65 0.331613 0.288576 28066 200906 -1 2306 33 2456 3620 692279 284974 4.55581 4.55581 -155.858 -4.55581 0 0 1.01997e+06 3529.29 0.43 0.23 0.21 -1 -1 0.43 0.0386528 0.0342884 88 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_103.v common 9.83 vpr 65.52 MiB -1 -1 0.16 20616 1 0.03 -1 -1 33608 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67096 32 32 386 307 1 187 82 17 17 289 -1 unnamed_device 27.1 MiB 1.00 763 12542 4736 5981 1825 65.5 MiB 0.10 0.00 3.57533 -115.706 -3.57533 3.57533 1.02 0.000538938 0.000490548 0.0422703 0.0386206 52 2233 23 6.95648e+06 260562 926341. 3205.33 5.13 0.251253 0.22158 29218 227130 -1 1660 30 1696 2281 229714 67787 3.61822 3.61822 -134.012 -3.61822 0 0 1.14541e+06 3963.36 0.48 0.11 0.22 -1 -1 0.48 0.0409893 0.0364807 80 59 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_104.v common 10.46 vpr 65.04 MiB -1 -1 0.15 20256 1 0.03 -1 -1 34056 -1 -1 12 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66604 29 32 269 229 1 132 73 17 17 289 -1 unnamed_device 26.7 MiB 5.17 493 11321 4784 6000 537 65.0 MiB 0.08 0.00 3.26591 -84.8562 -3.26591 3.26591 0.99 0.000426676 0.000390287 0.0330665 0.0302476 36 1488 24 6.95648e+06 173708 648988. 2245.63 2.00 0.128474 0.11267 26050 158493 -1 1171 16 791 1027 70843 17149 2.96472 2.96472 -99.3772 -2.96472 0 0 828058. 2865.25 0.34 0.04 0.16 -1 -1 0.34 0.0169623 0.0151741 53 28 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_105.v common 6.96 vpr 65.23 MiB -1 -1 0.15 20292 1 0.03 -1 -1 33788 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 32 32 310 266 1 163 75 17 17 289 -1 unnamed_device 26.7 MiB 1.29 679 9555 3926 5402 227 65.2 MiB 0.07 0.00 3.06285 -104.703 -3.06285 3.06285 1.00 0.000449419 0.000407384 0.0289753 0.0264863 40 2024 23 6.95648e+06 159232 706193. 2443.58 2.27 0.137211 0.120436 26914 176310 -1 1757 22 1368 1726 197797 41166 3.75182 3.75182 -131.464 -3.75182 0 0 926341. 3205.33 0.35 0.07 0.18 -1 -1 0.35 0.0235332 0.020809 64 55 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_106.v common 9.75 vpr 65.24 MiB -1 -1 0.16 20204 1 0.03 -1 -1 33412 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 31 32 326 261 1 172 86 17 17 289 -1 unnamed_device 26.9 MiB 1.07 730 12182 3480 6577 2125 65.2 MiB 0.09 0.00 3.44822 -99.9114 -3.44822 3.44822 0.99 0.000486845 0.000443495 0.0341266 0.0312009 38 2972 40 6.95648e+06 332941 678818. 2348.85 5.26 0.165899 0.145402 26626 170182 -1 1620 21 1467 2252 149462 34522 3.85622 3.85622 -128.549 -3.85622 0 0 902133. 3121.57 0.36 0.06 0.17 -1 -1 0.36 0.0235806 0.0209187 77 29 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_107.v common 8.92 vpr 64.85 MiB -1 -1 0.14 20236 1 0.03 -1 -1 33804 -1 -1 13 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 29 32 262 224 1 161 74 17 17 289 -1 unnamed_device 26.4 MiB 1.66 675 9994 4196 5352 446 64.8 MiB 0.07 0.00 3.27767 -94.9092 -3.27767 3.27767 0.98 0.000363044 0.000330095 0.026929 0.024567 38 1968 36 6.95648e+06 188184 678818. 2348.85 3.96 0.139379 0.122136 26626 170182 -1 1497 30 1492 1857 218900 79167 3.42691 3.42691 -111.934 -3.42691 0 0 902133. 3121.57 0.35 0.09 0.15 -1 -1 0.35 0.0265667 0.023499 67 25 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_108.v common 7.27 vpr 64.91 MiB -1 -1 0.15 20460 1 0.03 -1 -1 33708 -1 -1 9 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 32 32 278 238 1 144 73 17 17 289 -1 unnamed_device 26.5 MiB 1.38 603 11625 5021 6321 283 64.9 MiB 0.08 0.00 3.19126 -90.7012 -3.19126 3.19126 0.98 0.000437748 0.000399517 0.0348406 0.0318476 38 1907 23 6.95648e+06 130281 678818. 2348.85 2.58 0.133059 0.116562 26626 170182 -1 1499 21 1219 1841 162863 34762 3.50177 3.50177 -117.735 -3.50177 0 0 902133. 3121.57 0.34 0.06 0.17 -1 -1 0.34 0.0205641 0.018226 56 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_109.v common 9.76 vpr 65.48 MiB -1 -1 0.16 20724 1 0.03 -1 -1 33868 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67056 31 32 373 300 1 174 87 17 17 289 -1 unnamed_device 27.1 MiB 1.07 672 13911 4660 6298 2953 65.5 MiB 0.09 0.00 2.84333 -93.3919 -2.84333 2.84333 0.98 0.000464439 0.000422722 0.0409591 0.0372878 46 1953 49 6.95648e+06 347416 828058. 2865.25 5.18 0.253931 0.220743 28066 200906 -1 1440 24 1640 2248 140199 35141 3.32047 3.32047 -117.802 -3.32047 0 0 1.01997e+06 3529.29 0.40 0.07 0.20 -1 -1 0.40 0.0282666 0.0250085 79 60 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_110.v common 8.88 vpr 65.00 MiB -1 -1 0.15 20476 1 0.03 -1 -1 34036 -1 -1 12 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 31 32 265 230 1 159 75 17 17 289 -1 unnamed_device 26.6 MiB 2.74 691 7817 3176 4379 262 65.0 MiB 0.06 0.00 3.35097 -98.8049 -3.35097 3.35097 1.05 0.000409014 0.000373663 0.0234773 0.0215976 40 2202 34 6.95648e+06 173708 706193. 2443.58 2.68 0.147024 0.130061 26914 176310 -1 1768 18 1217 1688 171779 36922 3.40212 3.40212 -121.106 -3.40212 0 0 926341. 3205.33 0.38 0.06 0.17 -1 -1 0.38 0.0198454 0.017795 64 30 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_111.v common 7.66 vpr 65.40 MiB -1 -1 0.16 20156 1 0.03 -1 -1 33716 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66972 32 32 349 286 1 165 86 17 17 289 -1 unnamed_device 27.0 MiB 1.37 773 13883 5809 7746 328 65.4 MiB 0.10 0.00 2.7068 -91.7659 -2.7068 2.7068 0.99 0.000477327 0.000432561 0.0386011 0.0352012 40 2197 35 6.95648e+06 318465 706193. 2443.58 2.84 0.169231 0.148485 26914 176310 -1 1798 23 1328 2068 220841 47852 3.07907 3.07907 -112.441 -3.07907 0 0 926341. 3205.33 0.37 0.08 0.17 -1 -1 0.37 0.0258285 0.0228516 71 54 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_112.v common 16.64 vpr 65.57 MiB -1 -1 0.17 20744 1 0.03 -1 -1 33976 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67148 31 32 396 325 1 176 78 17 17 289 -1 unnamed_device 27.2 MiB 1.79 771 11698 4881 6335 482 65.6 MiB 0.09 0.00 3.3685 -110.341 -3.3685 3.3685 0.99 0.000524601 0.000478238 0.0403882 0.0368829 38 2698 50 6.95648e+06 217135 678818. 2348.85 11.51 0.33588 0.292057 26626 170182 -1 2033 23 1596 2164 252654 64208 3.70152 3.70152 -143.58 -3.70152 0 0 902133. 3121.57 0.33 0.09 0.15 -1 -1 0.33 0.0273134 0.0241911 73 87 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_113.v common 14.23 vpr 64.97 MiB -1 -1 0.16 20292 1 0.03 -1 -1 33460 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 32 32 303 262 1 145 74 17 17 289 -1 unnamed_device 26.5 MiB 1.46 541 9994 3378 4996 1620 65.0 MiB 0.08 0.00 2.4011 -79.9159 -2.4011 2.4011 1.00 0.000439303 0.000400002 0.0306678 0.0280218 44 1647 44 6.95648e+06 144757 787024. 2723.27 9.32 0.25919 0.224945 27778 195446 -1 1173 24 1009 1550 109211 26866 3.04502 3.04502 -102.124 -3.04502 0 0 997811. 3452.63 0.41 0.06 0.19 -1 -1 0.41 0.0237949 0.0210192 57 54 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_114.v common 10.47 vpr 65.21 MiB -1 -1 0.15 20288 1 0.03 -1 -1 33836 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 32 32 290 244 1 170 75 17 17 289 -1 unnamed_device 26.7 MiB 1.59 763 11451 3987 5787 1677 65.2 MiB 0.09 0.00 3.29168 -105.903 -3.29168 3.29168 1.00 0.000441349 0.000403541 0.0343918 0.0315154 48 1874 35 6.95648e+06 159232 865456. 2994.66 5.38 0.221241 0.192721 28354 207349 -1 1676 18 1191 1816 134030 31824 3.58222 3.58222 -129.006 -3.58222 0 0 1.05005e+06 3633.38 0.42 0.06 0.21 -1 -1 0.42 0.020484 0.0183948 70 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_115.v common 8.41 vpr 65.23 MiB -1 -1 0.16 20424 1 0.03 -1 -1 33760 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66792 32 32 318 257 1 188 78 17 17 289 -1 unnamed_device 26.9 MiB 2.64 761 11366 4697 6285 384 65.2 MiB 0.09 0.00 3.45418 -105.601 -3.45418 3.45418 0.98 0.000486936 0.000443793 0.0353635 0.0322913 42 2829 47 6.95648e+06 202660 744469. 2576.02 2.34 0.153728 0.135319 27202 183097 -1 1995 23 1779 2441 209606 48927 4.45652 4.45652 -143.446 -4.45652 0 0 949917. 3286.91 0.39 0.08 0.18 -1 -1 0.39 0.0265238 0.0235813 79 27 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_116.v common 7.54 vpr 65.06 MiB -1 -1 0.16 20348 1 0.03 -1 -1 33748 -1 -1 21 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66620 29 32 324 268 1 162 82 17 17 289 -1 unnamed_device 26.5 MiB 1.16 694 11118 4579 5810 729 65.1 MiB 0.08 0.00 3.53128 -96.647 -3.53128 3.53128 0.97 0.00042014 0.000384612 0.0302069 0.0275954 46 1842 31 6.95648e+06 303989 828058. 2865.25 2.96 0.155148 0.136237 28066 200906 -1 1435 20 988 1462 104015 24766 3.37896 3.37896 -108.009 -3.37896 0 0 1.01997e+06 3529.29 0.41 0.05 0.20 -1 -1 0.41 0.0219165 0.0195128 71 49 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_117.v common 10.76 vpr 65.48 MiB -1 -1 0.16 20420 1 0.03 -1 -1 33392 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67052 32 32 393 312 1 206 78 17 17 289 -1 unnamed_device 26.9 MiB 1.55 821 13026 5576 6908 542 65.5 MiB 0.10 0.00 4.0079 -127.527 -4.0079 4.0079 0.96 0.000460343 0.000419488 0.0435994 0.0397822 52 2567 31 6.95648e+06 202660 926341. 3205.33 5.71 0.255952 0.223041 29218 227130 -1 1865 23 1915 2788 222808 52456 4.5838 4.5838 -153.965 -4.5838 0 0 1.14541e+06 3963.36 0.47 0.09 0.21 -1 -1 0.47 0.0304236 0.0270502 89 62 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_118.v common 12.55 vpr 64.89 MiB -1 -1 0.14 20560 1 0.03 -1 -1 33720 -1 -1 13 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 31 32 229 197 1 137 76 17 17 289 -1 unnamed_device 26.4 MiB 1.60 634 12716 5415 6966 335 64.9 MiB 0.08 0.00 3.22974 -79.1074 -3.22974 3.22974 0.99 0.000379117 0.00034646 0.0309805 0.0282252 36 2153 45 6.95648e+06 188184 648988. 2245.63 7.67 0.188902 0.16434 26050 158493 -1 1516 17 877 1371 133057 28077 3.01302 3.01302 -101.961 -3.01302 0 0 828058. 2865.25 0.33 0.05 0.15 -1 -1 0.33 0.0165628 0.0147962 54 -1 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_119.v common 8.69 vpr 65.44 MiB -1 -1 0.17 20404 1 0.03 -1 -1 33612 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67012 32 32 412 334 1 182 89 17 17 289 -1 unnamed_device 27.0 MiB 1.16 1017 14741 4584 8890 1267 65.4 MiB 0.11 0.00 3.12589 -116.566 -3.12589 3.12589 1.00 0.000554117 0.0005055 0.0449038 0.0409861 36 2851 49 6.95648e+06 361892 648988. 2245.63 4.06 0.175424 0.154086 26050 158493 -1 2272 29 2053 2636 327495 94284 4.05746 4.05746 -153.482 -4.05746 0 0 828058. 2865.25 0.32 0.13 0.15 -1 -1 0.32 0.0378815 0.0335109 81 87 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_120.v common 9.92 vpr 65.46 MiB -1 -1 0.16 20460 1 0.03 -1 -1 33696 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67036 32 32 376 318 1 154 74 17 17 289 -1 unnamed_device 26.9 MiB 3.29 642 12009 5101 6643 265 65.5 MiB 0.09 0.00 2.45985 -92.7114 -2.45985 2.45985 1.01 0.000530992 0.000483956 0.0437557 0.0400309 44 2057 35 6.95648e+06 144757 787024. 2723.27 3.09 0.200292 0.177772 27778 195446 -1 1542 23 1566 2199 236252 51578 3.24392 3.24392 -130.987 -3.24392 0 0 997811. 3452.63 0.42 0.09 0.19 -1 -1 0.42 0.0302702 0.0268779 61 93 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_121.v common 6.97 vpr 65.12 MiB -1 -1 0.16 20680 1 0.03 -1 -1 33704 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 32 32 360 293 1 172 86 17 17 289 -1 unnamed_device 26.7 MiB 1.15 712 11615 3691 5750 2174 65.1 MiB 0.09 0.00 3.41878 -102.947 -3.41878 3.41878 0.99 0.000514504 0.000468989 0.0346237 0.0316218 42 2664 42 6.95648e+06 318465 744469. 2576.02 2.32 0.157441 0.13836 27202 183097 -1 1775 34 1561 2443 316202 132440 3.73251 3.73251 -121.5 -3.73251 0 0 949917. 3286.91 0.37 0.13 0.18 -1 -1 0.37 0.0357593 0.0313714 75 57 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_122.v common 8.59 vpr 65.69 MiB -1 -1 0.17 20544 1 0.03 -1 -1 33832 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67268 32 32 396 299 1 224 79 17 17 289 -1 unnamed_device 27.1 MiB 1.78 1143 13937 4789 6448 2700 65.7 MiB 0.12 0.00 5.15637 -149.807 -5.15637 5.15637 1.00 0.000569979 0.000519626 0.0502598 0.0460146 46 3019 23 6.95648e+06 217135 828058. 2865.25 3.27 0.205486 0.182969 28066 200906 -1 2475 22 1853 2595 228090 45823 4.87075 4.87075 -166.899 -4.87075 0 0 1.01997e+06 3529.29 0.38 0.09 0.20 -1 -1 0.38 0.029813 0.0267458 95 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_123.v common 8.65 vpr 64.73 MiB -1 -1 0.15 20060 1 0.03 -1 -1 33756 -1 -1 11 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66280 30 32 224 207 1 132 73 17 17 289 -1 unnamed_device 26.2 MiB 2.77 518 11321 4853 6101 367 64.7 MiB 0.07 0.00 2.18845 -77.0562 -2.18845 2.18845 0.99 0.000373323 0.000340251 0.0287354 0.0262903 36 1812 37 6.95648e+06 159232 648988. 2245.63 2.61 0.126581 0.110897 26050 158493 -1 1405 21 958 1215 153083 41191 2.45253 2.45253 -96.9301 -2.45253 0 0 828058. 2865.25 0.33 0.06 0.16 -1 -1 0.33 0.017805 0.0157396 52 29 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_124.v common 9.56 vpr 64.84 MiB -1 -1 0.14 20444 1 0.03 -1 -1 34048 -1 -1 11 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 30 32 286 239 1 135 73 17 17 289 -1 unnamed_device 26.4 MiB 1.64 510 9041 3080 4595 1366 64.8 MiB 0.06 0.00 3.12499 -92.239 -3.12499 3.12499 0.98 0.000433046 0.000393928 0.0277709 0.0253618 40 1406 36 6.95648e+06 159232 706193. 2443.58 4.59 0.193319 0.168015 26914 176310 -1 1233 20 1058 1564 155400 35600 3.27642 3.27642 -113.807 -3.27642 0 0 926341. 3205.33 0.37 0.06 0.17 -1 -1 0.37 0.0198974 0.0176419 54 29 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_125.v common 7.82 vpr 65.09 MiB -1 -1 0.16 20212 1 0.03 -1 -1 33872 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 32 32 296 247 1 152 74 17 17 289 -1 unnamed_device 26.6 MiB 0.52 549 8754 2635 4376 1743 65.1 MiB 0.06 0.00 2.6818 -88.2907 -2.6818 2.6818 1.00 0.000454173 0.000414074 0.0268789 0.0245756 56 1443 35 6.95648e+06 144757 973134. 3367.25 3.76 0.160362 0.139904 29794 239141 -1 1061 21 1157 1843 146228 36111 2.97572 2.97572 -104.654 -2.97572 0 0 1.19926e+06 4149.71 0.47 0.06 0.25 -1 -1 0.47 0.0218315 0.0193695 59 31 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_126.v common 11.69 vpr 64.75 MiB -1 -1 0.14 20404 1 0.03 -1 -1 33732 -1 -1 18 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 25 32 216 194 1 121 75 17 17 289 -1 unnamed_device 26.2 MiB 0.52 446 8449 3541 4299 609 64.8 MiB 0.05 0.00 2.72223 -61.9243 -2.72223 2.72223 1.00 0.000348131 0.000317575 0.020437 0.0186969 38 1458 29 6.95648e+06 260562 678818. 2348.85 7.87 0.188952 0.163204 26626 170182 -1 1086 23 781 1179 96143 23358 2.80732 2.80732 -81.6504 -2.80732 0 0 902133. 3121.57 0.35 0.05 0.16 -1 -1 0.35 0.0180296 0.0159171 53 19 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_127.v common 10.41 vpr 65.43 MiB -1 -1 0.17 20540 1 0.03 -1 -1 33808 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67000 32 32 376 307 1 178 76 17 17 289 -1 unnamed_device 27.0 MiB 1.94 822 10476 4359 5744 373 65.4 MiB 0.09 0.00 3.18195 -104.866 -3.18195 3.18195 1.02 0.000531412 0.000485073 0.0382972 0.03505 46 2780 29 6.95648e+06 173708 828058. 2865.25 4.90 0.259897 0.229159 28066 200906 -1 2150 21 1641 2721 206407 45657 3.92532 3.92532 -132.926 -3.92532 0 0 1.01997e+06 3529.29 0.41 0.08 0.19 -1 -1 0.41 0.0280737 0.0250684 73 69 -1 -1 -1 -1 + fixed_k6_frac_2ripple_N8_22nm.xml mult_128.v common 7.95 vpr 65.60 MiB -1 -1 0.17 20540 1 0.03 -1 -1 33920 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67172 31 32 409 331 1 183 80 17 17 289 -1 unnamed_device 27.1 MiB 1.13 837 10228 4047 4614 1567 65.6 MiB 0.09 0.00 3.44998 -116.134 -3.44998 3.44998 1.03 0.000571448 0.000520571 0.0370386 0.033828 38 2463 41 6.95648e+06 246087 678818. 2348.85 3.31 0.193989 0.170482 26626 170182 -1 2037 25 1823 2500 236736 48577 3.54832 3.54832 -134.89 -3.54832 0 0 902133. 3121.57 0.35 0.09 0.17 -1 -1 0.35 0.0298683 0.0264577 80 86 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_001.v common 10.57 vpr 65.35 MiB -1 -1 0.16 20552 1 0.03 -1 -1 33956 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66920 32 32 354 285 1 206 79 17 17 289 -1 unnamed_device 27.0 MiB 1.86 926 13768 5881 7534 353 65.4 MiB 0.11 0.00 4.0552 -122.973 -4.0552 4.0552 1.01 0.000510421 0.000471413 0.0448876 0.0411077 44 2714 23 6.99608e+06 220735 787024. 2723.27 5.16 0.223288 0.1952 27778 195446 -1 2012 21 1502 2205 165316 34884 3.99661 3.99661 -141.557 -3.99661 0 0 997811. 3452.63 0.40 0.07 0.19 -1 -1 0.40 0.0252902 0.0225084 88 47 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_002.v common 12.01 vpr 65.49 MiB -1 -1 0.17 20608 1 0.03 -1 -1 33876 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67064 30 32 363 293 1 224 79 17 17 289 -1 unnamed_device 27.0 MiB 1.52 903 11909 3621 5904 2384 65.5 MiB 0.09 0.00 4.2193 -125.516 -4.2193 4.2193 1.03 0.000524698 0.000477676 0.0403958 0.0368995 64 2338 38 6.99608e+06 250167 1.08113e+06 3740.92 6.67 0.259458 0.226039 31522 276338 -1 1692 21 1845 2774 199897 46983 4.37654 4.37654 -145.444 -4.37654 0 0 1.36325e+06 4717.13 0.53 0.08 0.29 -1 -1 0.53 0.0278551 0.0249035 99 58 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_003.v common 15.42 vpr 64.18 MiB -1 -1 0.15 20100 1 0.03 -1 -1 33412 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65720 32 32 299 247 1 183 78 17 17 289 -1 unnamed_device 25.7 MiB 0.81 810 14188 4692 7635 1861 64.2 MiB 0.10 0.00 2.94444 -91.6196 -2.94444 2.94444 0.97 0.000455137 0.000412499 0.0386034 0.0351392 40 2326 21 6.99608e+06 206020 706193. 2443.58 11.28 0.255159 0.223119 26914 176310 -1 1991 19 1477 2015 173270 38285 3.75196 3.75196 -122.521 -3.75196 0 0 926341. 3205.33 0.36 0.06 0.16 -1 -1 0.36 0.0210908 0.0188163 76 26 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_004.v common 10.88 vpr 64.67 MiB -1 -1 0.16 20596 1 0.03 -1 -1 33884 -1 -1 16 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 29 32 308 248 1 179 77 17 17 289 -1 unnamed_device 26.1 MiB 1.39 684 14095 4549 7189 2357 64.7 MiB 0.09 0.00 3.29948 -92.3743 -3.29948 3.29948 0.96 0.00049887 0.000454293 0.0390654 0.0356197 58 1483 23 6.99608e+06 235451 997811. 3452.63 5.94 0.203012 0.177532 30370 251734 -1 1158 20 1224 1970 130405 33608 3.68461 3.68461 -107.779 -3.68461 0 0 1.25153e+06 4330.55 0.51 0.06 0.25 -1 -1 0.51 0.0224165 0.020015 78 25 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_005.v common 10.12 vpr 65.21 MiB -1 -1 0.16 20156 1 0.03 -1 -1 33560 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 32 32 336 268 1 194 78 17 17 289 -1 unnamed_device 26.9 MiB 2.94 835 11034 4569 6032 433 65.2 MiB 0.09 0.00 3.76679 -115.017 -3.76679 3.76679 1.03 0.000498094 0.000454453 0.035582 0.0325261 44 3461 42 6.99608e+06 206020 787024. 2723.27 3.64 0.174629 0.153537 27778 195446 -1 2229 25 1742 2911 226318 49269 4.53911 4.53911 -148.639 -4.53911 0 0 997811. 3452.63 0.42 0.09 0.19 -1 -1 0.42 0.0293789 0.0260927 81 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_006.v common 9.30 vpr 65.53 MiB -1 -1 0.16 20648 1 0.03 -1 -1 33932 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67100 32 32 366 295 1 221 81 17 17 289 -1 unnamed_device 27.0 MiB 3.23 967 13381 3902 7326 2153 65.5 MiB 0.11 0.00 2.79566 -99.1044 -2.79566 2.79566 0.97 0.000544309 0.000494534 0.0411727 0.0375391 44 2698 28 6.99608e+06 250167 787024. 2723.27 2.55 0.177158 0.155879 27778 195446 -1 2059 23 1691 2634 163462 38941 3.86936 3.86936 -128.357 -3.86936 0 0 997811. 3452.63 0.41 0.08 0.19 -1 -1 0.41 0.0289166 0.0258561 97 55 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_007.v common 9.37 vpr 64.66 MiB -1 -1 0.16 20364 1 0.03 -1 -1 34116 -1 -1 15 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66208 27 32 259 221 1 154 74 17 17 289 -1 unnamed_device 26.3 MiB 1.76 558 10614 4418 5600 596 64.7 MiB 0.07 0.00 3.12612 -89.7746 -3.12612 3.12612 0.99 0.000402135 0.000366729 0.0280851 0.0256363 38 1627 24 6.99608e+06 220735 678818. 2348.85 4.29 0.174269 0.150787 26626 170182 -1 1300 18 1041 1552 108721 24591 3.16926 3.16926 -105.024 -3.16926 0 0 902133. 3121.57 0.36 0.05 0.17 -1 -1 0.36 0.0181082 0.0161435 66 26 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_008.v common 6.27 vpr 64.57 MiB -1 -1 0.15 20172 1 0.03 -1 -1 33792 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66124 31 32 271 219 1 157 88 17 17 289 -1 unnamed_device 26.1 MiB 0.38 650 13153 4892 6011 2250 64.6 MiB 0.09 0.00 2.2514 -72.6922 -2.2514 2.2514 1.01 0.000432229 0.000393793 0.0312617 0.0284804 44 2112 49 6.99608e+06 367892 787024. 2723.27 2.43 0.151485 0.132535 27778 195446 -1 1373 24 1072 1806 114751 29122 3.11687 3.11687 -94.5515 -3.11687 0 0 997811. 3452.63 0.39 0.06 0.19 -1 -1 0.39 0.0227815 0.0201074 69 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_009.v common 6.99 vpr 65.32 MiB -1 -1 0.16 20224 1 0.03 -1 -1 33992 -1 -1 14 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66892 31 32 317 271 1 204 77 17 17 289 -1 unnamed_device 26.9 MiB 1.02 865 12791 5343 7084 364 65.3 MiB 0.10 0.00 2.71474 -97.6411 -2.71474 2.71474 1.00 0.000466816 0.000427305 0.0388742 0.0355363 44 2603 43 6.99608e+06 206020 787024. 2723.27 2.45 0.151221 0.133316 27778 195446 -1 1736 24 1515 2071 156443 36217 2.94847 2.94847 -117.511 -2.94847 0 0 997811. 3452.63 0.39 0.07 0.19 -1 -1 0.39 0.0258526 0.0229372 87 60 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_010.v common 9.16 vpr 65.00 MiB -1 -1 0.16 20344 1 0.03 -1 -1 34012 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 32 32 298 248 1 181 77 17 17 289 -1 unnamed_device 26.5 MiB 0.99 851 11813 4711 6193 909 65.0 MiB 0.09 0.00 3.18112 -111.904 -3.18112 3.18112 0.98 0.000463586 0.000423675 0.0345715 0.0316007 38 2262 35 6.99608e+06 191304 678818. 2348.85 4.81 0.20319 0.176975 26626 170182 -1 1856 24 1515 1907 157595 32296 3.36956 3.36956 -131.146 -3.36956 0 0 902133. 3121.57 0.35 0.07 0.17 -1 -1 0.35 0.0251568 0.0223439 75 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_011.v common 8.76 vpr 64.91 MiB -1 -1 0.14 20188 1 0.03 -1 -1 33412 -1 -1 14 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 30 32 303 262 1 188 76 17 17 289 -1 unnamed_device 26.6 MiB 0.81 738 11916 5062 6394 460 64.9 MiB 0.08 0.00 3.19389 -101.59 -3.19389 3.19389 0.94 0.000397457 0.000362882 0.033746 0.0308225 40 2559 33 6.99608e+06 206020 706193. 2443.58 4.70 0.221383 0.193966 26914 176310 -1 1967 24 1748 2369 206274 48321 4.0928 4.0928 -135.781 -4.0928 0 0 926341. 3205.33 0.35 0.08 0.18 -1 -1 0.35 0.0245773 0.0217489 83 58 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_012.v common 6.18 vpr 64.89 MiB -1 -1 0.16 20384 1 0.03 -1 -1 33756 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 276 237 1 165 75 17 17 289 -1 unnamed_device 26.4 MiB 0.76 683 5921 1326 4469 126 64.9 MiB 0.05 0.00 2.73588 -93.9348 -2.73588 2.73588 1.01 0.000420796 0.000383517 0.0175715 0.016117 40 2123 23 6.99608e+06 161872 706193. 2443.58 2.06 0.118973 0.104531 26914 176310 -1 1792 17 1283 1640 170412 36217 3.30957 3.30957 -121.595 -3.30957 0 0 926341. 3205.33 0.37 0.06 0.17 -1 -1 0.37 0.0184616 0.0164517 66 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_013.v common 9.67 vpr 65.25 MiB -1 -1 0.15 20724 1 0.03 -1 -1 33904 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 32 32 344 272 1 201 79 17 17 289 -1 unnamed_device 26.9 MiB 0.88 913 14275 6162 7632 481 65.2 MiB 0.10 0.00 3.18112 -107.408 -3.18112 3.18112 0.98 0.000533868 0.000486221 0.0425646 0.0387652 54 2478 30 6.99608e+06 220735 949917. 3286.91 5.28 0.227324 0.199212 29506 232905 -1 1952 18 1485 2145 170547 35998 3.72546 3.72546 -131.51 -3.72546 0 0 1.17392e+06 4061.99 0.46 0.06 0.22 -1 -1 0.46 0.0230638 0.0207281 87 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_014.v common 9.35 vpr 65.14 MiB -1 -1 0.15 20712 1 0.03 -1 -1 34032 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66704 32 32 363 295 1 228 81 17 17 289 -1 unnamed_device 26.7 MiB 1.60 938 12331 3531 6401 2399 65.1 MiB 0.10 0.00 3.86117 -115.133 -3.86117 3.86117 1.02 0.000502109 0.000456908 0.0402013 0.0367847 46 2942 30 6.99608e+06 250167 828058. 2865.25 4.20 0.17359 0.152654 28066 200906 -1 2105 21 1963 2678 238048 53704 4.57111 4.57111 -153.344 -4.57111 0 0 1.01997e+06 3529.29 0.39 0.08 0.20 -1 -1 0.39 0.0253735 0.0225057 97 58 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_015.v common 9.72 vpr 64.44 MiB -1 -1 0.15 20228 1 0.03 -1 -1 33532 -1 -1 13 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65984 29 32 248 215 1 155 74 17 17 289 -1 unnamed_device 26.1 MiB 3.27 706 9839 3752 4683 1404 64.4 MiB 0.06 0.00 2.5552 -75.9155 -2.5552 2.5552 1.00 0.000383003 0.000348312 0.0258593 0.0236309 36 1994 21 6.99608e+06 191304 648988. 2245.63 3.16 0.120431 0.10567 26050 158493 -1 1666 19 1106 1562 133654 27802 2.98682 2.98682 -97.7534 -2.98682 0 0 828058. 2865.25 0.35 0.06 0.15 -1 -1 0.35 0.0191182 0.0171333 64 21 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_016.v common 7.63 vpr 65.00 MiB -1 -1 0.16 20764 1 0.03 -1 -1 34004 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 32 32 370 297 1 222 80 17 17 289 -1 unnamed_device 26.6 MiB 1.47 1214 13840 4053 8825 962 65.0 MiB 0.11 0.00 2.99159 -108.884 -2.99159 2.99159 1.01 0.000518344 0.000473044 0.0455578 0.0415788 40 3188 26 6.99608e+06 235451 706193. 2443.58 2.67 0.174136 0.153119 26914 176310 -1 2848 23 2152 3366 333732 65027 3.64561 3.64561 -142.566 -3.64561 0 0 926341. 3205.33 0.35 0.11 0.17 -1 -1 0.35 0.0304452 0.0271909 96 55 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_017.v common 9.14 vpr 65.03 MiB -1 -1 0.17 20592 1 0.03 -1 -1 33740 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 32 32 338 269 1 198 79 17 17 289 -1 unnamed_device 26.7 MiB 0.81 1018 11571 4165 5957 1449 65.0 MiB 0.09 0.00 3.40815 -112.564 -3.40815 3.40815 0.93 0.00045714 0.000418297 0.0350207 0.0321444 46 2419 29 6.99608e+06 220735 828058. 2865.25 4.95 0.211811 0.185879 28066 200906 -1 1973 22 1544 2046 154634 31956 3.36956 3.36956 -129.035 -3.36956 0 0 1.01997e+06 3529.29 0.41 0.07 0.20 -1 -1 0.41 0.0265818 0.0236646 84 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_018.v common 17.47 vpr 65.06 MiB -1 -1 0.15 20580 1 0.03 -1 -1 33644 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 32 32 323 276 1 210 79 17 17 289 -1 unnamed_device 26.6 MiB 0.89 812 13937 4391 7676 1870 65.1 MiB 0.11 0.00 2.51429 -93.5184 -2.51429 2.51429 1.02 0.000474211 0.000431878 0.0424068 0.0387707 48 2071 24 6.99608e+06 220735 865456. 2994.66 12.99 0.304779 0.268362 28354 207349 -1 1615 17 1511 1917 134166 31999 3.08036 3.08036 -116.101 -3.08036 0 0 1.05005e+06 3633.38 0.44 0.06 0.20 -1 -1 0.44 0.0229613 0.020645 89 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_019.v common 7.91 vpr 64.39 MiB -1 -1 0.15 20072 1 0.03 -1 -1 33784 -1 -1 10 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 30 32 222 206 1 131 72 17 17 289 -1 unnamed_device 25.9 MiB 2.02 456 9012 3589 4747 676 64.4 MiB 0.05 0.00 1.95956 -70.1975 -1.95956 1.95956 1.03 0.00035905 0.000327616 0.0222837 0.0203951 38 1315 27 6.99608e+06 147157 678818. 2348.85 2.55 0.111061 0.0970922 26626 170182 -1 908 26 600 651 77925 33450 1.96713 1.96713 -82.7722 -1.96713 0 0 902133. 3121.57 0.34 0.05 0.17 -1 -1 0.34 0.0197506 0.0173879 52 29 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_020.v common 10.38 vpr 64.84 MiB -1 -1 0.15 20260 1 0.03 -1 -1 34044 -1 -1 13 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 31 32 291 243 1 171 76 17 17 289 -1 unnamed_device 26.3 MiB 2.38 812 5196 1080 3811 305 64.8 MiB 0.05 0.00 3.01177 -99.2942 -3.01177 3.01177 1.00 0.000456511 0.000416964 0.0169905 0.0156086 38 2181 25 6.99608e+06 191304 678818. 2348.85 4.64 0.184412 0.15957 26626 170182 -1 1877 22 1341 1947 167406 35702 3.70761 3.70761 -132.572 -3.70761 0 0 902133. 3121.57 0.36 0.07 0.16 -1 -1 0.36 0.0237024 0.0210246 72 30 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_021.v common 10.36 vpr 65.02 MiB -1 -1 0.16 20248 1 0.03 -1 -1 33860 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 32 32 342 271 1 201 84 17 17 289 -1 unnamed_device 26.6 MiB 1.54 780 15822 6491 7943 1388 65.0 MiB 0.12 0.00 3.25624 -105.717 -3.25624 3.25624 0.99 0.000498517 0.00045357 0.0451702 0.0410497 46 2521 23 6.99608e+06 294314 828058. 2865.25 5.34 0.234583 0.205043 28066 200906 -1 1857 21 1644 2406 194578 42361 4.0047 4.0047 -140.232 -4.0047 0 0 1.01997e+06 3529.29 0.39 0.07 0.20 -1 -1 0.39 0.0247663 0.0219419 88 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_022.v common 10.97 vpr 65.49 MiB -1 -1 0.17 20684 1 0.03 -1 -1 33668 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67060 32 32 372 300 1 225 80 17 17 289 -1 unnamed_device 26.9 MiB 2.41 1194 12636 4193 7521 922 65.5 MiB 0.11 0.00 3.72134 -118.635 -3.72134 3.72134 0.96 0.000522885 0.000469181 0.0401648 0.0366097 44 3055 26 6.99608e+06 235451 787024. 2723.27 5.10 0.234322 0.205647 27778 195446 -1 2477 22 1855 2816 196338 40978 3.93181 3.93181 -137.779 -3.93181 0 0 997811. 3452.63 0.40 0.08 0.17 -1 -1 0.40 0.0267952 0.0238122 100 59 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_023.v common 7.14 vpr 64.32 MiB -1 -1 0.14 19984 1 0.03 -1 -1 34208 -1 -1 13 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65860 26 32 190 182 1 123 71 17 17 289 -1 unnamed_device 25.9 MiB 2.23 394 9269 3865 4810 594 64.3 MiB 0.05 0.00 2.2286 -62.1105 -2.2286 2.2286 0.94 0.00029512 0.000269848 0.0199442 0.0182792 38 1182 39 6.99608e+06 191304 678818. 2348.85 1.82 0.0983212 0.0859835 26626 170182 -1 815 19 641 724 47181 12647 2.38147 2.38147 -72.9579 -2.38147 0 0 902133. 3121.57 0.34 0.03 0.15 -1 -1 0.34 0.013571 0.0120784 53 21 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_024.v common 9.77 vpr 65.02 MiB -1 -1 0.15 20388 1 0.03 -1 -1 33900 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 32 32 285 227 1 162 79 17 17 289 -1 unnamed_device 26.5 MiB 1.11 699 9881 4045 5441 395 65.0 MiB 0.07 0.00 3.605 -91.5023 -3.605 3.605 1.02 0.000430255 0.000391623 0.0282673 0.0258455 44 2039 26 6.99608e+06 220735 787024. 2723.27 5.11 0.237718 0.206172 27778 195446 -1 1581 47 2206 3830 254668 56990 3.93806 3.93806 -114.914 -3.93806 0 0 997811. 3452.63 0.42 0.11 0.19 -1 -1 0.42 0.0399723 0.0349728 66 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_025.v common 5.02 vpr 64.30 MiB -1 -1 0.15 19976 1 0.03 -1 -1 33356 -1 -1 8 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65840 32 32 173 169 1 112 72 17 17 289 -1 unnamed_device 26.0 MiB 0.23 380 9757 4064 5450 243 64.3 MiB 0.05 0.00 1.68521 -55.2113 -1.68521 1.68521 0.98 0.00028852 0.000262023 0.0196196 0.0178757 38 1109 37 6.99608e+06 117725 678818. 2348.85 1.59 0.0916509 0.0799079 26626 170182 -1 837 17 591 663 48460 12639 1.92302 1.92302 -69.0532 -1.92302 0 0 902133. 3121.57 0.34 0.03 0.15 -1 -1 0.34 0.0121979 0.0108378 42 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_026.v common 7.29 vpr 65.04 MiB -1 -1 0.15 20428 1 0.03 -1 -1 33736 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66604 32 32 300 245 1 178 78 17 17 289 -1 unnamed_device 26.5 MiB 1.33 697 13192 4731 6534 1927 65.0 MiB 0.10 0.00 3.59843 -97.5949 -3.59843 3.59843 1.01 0.000449488 0.000409429 0.0389645 0.0356124 44 2518 38 6.99608e+06 206020 787024. 2723.27 2.47 0.167534 0.14773 27778 195446 -1 1563 20 1138 1696 108186 25881 3.72457 3.72457 -117.348 -3.72457 0 0 997811. 3452.63 0.40 0.06 0.19 -1 -1 0.40 0.0224846 0.02002 73 21 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_027.v common 9.23 vpr 64.79 MiB -1 -1 0.16 20240 1 0.03 -1 -1 33820 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66348 32 32 297 233 1 170 85 17 17 289 -1 unnamed_device 26.3 MiB 0.56 685 13105 4801 6110 2194 64.8 MiB 0.09 0.00 2.46605 -79.661 -2.46605 2.46605 1.02 0.000440859 0.000400444 0.0344281 0.0314083 46 1966 49 6.99608e+06 309029 828058. 2865.25 5.15 0.210655 0.183967 28066 200906 -1 1483 21 1247 2020 130335 31733 3.18622 3.18622 -103.851 -3.18622 0 0 1.01997e+06 3529.29 0.40 0.06 0.20 -1 -1 0.40 0.0231645 0.0206474 74 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_028.v common 20.28 vpr 65.22 MiB -1 -1 0.15 20456 1 0.03 -1 -1 33976 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66784 32 32 338 277 1 205 79 17 17 289 -1 unnamed_device 26.9 MiB 1.70 847 11571 3857 5790 1924 65.2 MiB 0.09 0.00 3.45778 -102.251 -3.45778 3.45778 0.99 0.000503238 0.000452921 0.0367223 0.0335328 48 2945 31 6.99608e+06 220735 865456. 2994.66 15.05 0.301084 0.26176 28354 207349 -1 2181 21 1578 2443 200330 45519 3.75152 3.75152 -131.436 -3.75152 0 0 1.05005e+06 3633.38 0.41 0.08 0.21 -1 -1 0.41 0.0240381 0.0212958 87 47 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_029.v common 9.32 vpr 64.81 MiB -1 -1 0.14 20264 1 0.03 -1 -1 33752 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 32 32 284 241 1 168 76 17 17 289 -1 unnamed_device 26.4 MiB 2.38 686 11756 4961 6546 249 64.8 MiB 0.08 0.00 2.63455 -87.3526 -2.63455 2.63455 0.97 0.000414191 0.000376185 0.0318636 0.0289963 38 2350 49 6.99608e+06 176588 678818. 2348.85 3.66 0.159634 0.140158 26626 170182 -1 1672 20 1209 1663 137000 30949 2.93562 2.93562 -114.413 -2.93562 0 0 902133. 3121.57 0.36 0.06 0.15 -1 -1 0.36 0.0210048 0.0186512 69 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_030.v common 8.82 vpr 64.82 MiB -1 -1 0.14 20264 1 0.03 -1 -1 33576 -1 -1 14 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 30 32 262 227 1 160 76 17 17 289 -1 unnamed_device 26.4 MiB 1.63 648 9196 3790 4996 410 64.8 MiB 0.07 0.00 3.17157 -90.6759 -3.17157 3.17157 1.04 0.000405307 0.000369157 0.0262739 0.0239709 46 2015 28 6.99608e+06 206020 828058. 2865.25 3.71 0.133216 0.116828 28066 200906 -1 1459 22 1183 1859 141456 32975 3.55761 3.55761 -111.823 -3.55761 0 0 1.01997e+06 3529.29 0.41 0.06 0.20 -1 -1 0.41 0.0212138 0.0188468 66 29 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_031.v common 16.53 vpr 64.83 MiB -1 -1 0.15 20428 1 0.03 -1 -1 33792 -1 -1 18 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 28 32 260 223 1 152 78 17 17 289 -1 unnamed_device 26.4 MiB 0.88 570 9706 3978 5182 546 64.8 MiB 0.07 0.00 2.61364 -80.359 -2.61364 2.61364 1.03 0.000407861 0.000372584 0.0256053 0.0234306 40 1896 31 6.99608e+06 264882 706193. 2443.58 12.20 0.242058 0.21118 26914 176310 -1 1683 23 1312 2003 197114 45063 3.46211 3.46211 -115.364 -3.46211 0 0 926341. 3205.33 0.38 0.07 0.17 -1 -1 0.38 0.0226499 0.020102 69 27 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_032.v common 5.90 vpr 64.69 MiB -1 -1 0.14 20284 1 0.03 -1 -1 33568 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66240 32 32 253 210 1 149 74 17 17 289 -1 unnamed_device 26.1 MiB 0.44 583 11389 4822 6277 290 64.7 MiB 0.08 0.00 2.81485 -90.4029 -2.81485 2.81485 1.04 0.000411122 0.000376183 0.0331341 0.0303724 42 2044 30 6.99608e+06 147157 744469. 2576.02 1.97 0.146992 0.129954 27202 183097 -1 1401 20 1069 1498 112797 27170 2.97762 2.97762 -109.085 -2.97762 0 0 949917. 3286.91 0.41 0.06 0.18 -1 -1 0.41 0.0224423 0.0200145 58 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_033.v common 6.48 vpr 64.77 MiB -1 -1 0.15 20200 1 0.03 -1 -1 33616 -1 -1 13 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 31 32 271 231 1 165 76 17 17 289 -1 unnamed_device 26.3 MiB 1.00 817 9196 3779 5223 194 64.8 MiB 0.07 0.00 2.62898 -88.8953 -2.62898 2.62898 0.99 0.000421601 0.000384469 0.0260229 0.0238033 44 2128 20 6.99608e+06 191304 787024. 2723.27 2.03 0.122028 0.106951 27778 195446 -1 1653 21 1069 1495 103827 22484 2.64572 2.64572 -103.052 -2.64572 0 0 997811. 3452.63 0.43 0.06 0.19 -1 -1 0.43 0.0219553 0.0196043 69 26 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_034.v common 9.24 vpr 64.58 MiB -1 -1 0.15 20216 1 0.03 -1 -1 33580 -1 -1 15 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 29 32 291 250 1 180 76 17 17 289 -1 unnamed_device 26.0 MiB 2.72 912 10476 3003 6543 930 64.6 MiB 0.07 0.00 2.43005 -86.9513 -2.43005 2.43005 0.96 0.000408466 0.000374278 0.0299431 0.0274967 36 2470 27 6.99608e+06 220735 648988. 2245.63 3.33 0.14701 0.130045 26050 158493 -1 1958 20 1482 1941 168989 34917 2.59092 2.59092 -103.486 -2.59092 0 0 828058. 2865.25 0.32 0.06 0.14 -1 -1 0.32 0.0211684 0.0188708 77 48 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_035.v common 8.06 vpr 65.18 MiB -1 -1 0.16 20564 1 0.03 -1 -1 33736 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 32 32 367 282 1 217 80 17 17 289 -1 unnamed_device 26.7 MiB 1.34 1100 13840 5399 6347 2094 65.2 MiB 0.12 0.00 3.53733 -105.515 -3.53733 3.53733 1.00 0.000534272 0.000487625 0.0458613 0.041928 38 3529 45 6.99608e+06 235451 678818. 2348.85 3.20 0.180403 0.158721 26626 170182 -1 2566 22 1764 2729 215322 45483 4.24607 4.24607 -135.367 -4.24607 0 0 902133. 3121.57 0.38 0.08 0.17 -1 -1 0.38 0.028367 0.0251935 92 26 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_036.v common 9.06 vpr 65.44 MiB -1 -1 0.16 20500 1 0.03 -1 -1 33900 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67012 32 32 391 311 1 244 83 17 17 289 -1 unnamed_device 26.9 MiB 1.74 1094 12503 4313 6328 1862 65.4 MiB 0.10 0.00 3.55446 -126.064 -3.55446 3.55446 0.99 0.000549809 0.000501976 0.042002 0.0382711 40 3582 46 6.99608e+06 279598 706193. 2443.58 3.77 0.201614 0.177294 26914 176310 -1 2745 25 2745 3789 357223 77363 4.1929 4.1929 -163.537 -4.1929 0 0 926341. 3205.33 0.37 0.12 0.18 -1 -1 0.37 0.0342903 0.0306736 106 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_037.v common 9.52 vpr 65.00 MiB -1 -1 0.14 20424 1 0.03 -1 -1 33984 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 31 32 279 237 1 157 74 17 17 289 -1 unnamed_device 26.5 MiB 1.39 904 12009 5044 6695 270 65.0 MiB 0.08 0.00 2.87547 -97.7608 -2.87547 2.87547 1.01 0.000393177 0.000343913 0.0336673 0.0306858 44 1980 21 6.99608e+06 161872 787024. 2723.27 4.71 0.194051 0.169439 27778 195446 -1 1838 21 1207 1713 163538 31106 3.38016 3.38016 -116.27 -3.38016 0 0 997811. 3452.63 0.40 0.06 0.18 -1 -1 0.40 0.0209726 0.0185637 66 30 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_038.v common 8.25 vpr 65.35 MiB -1 -1 0.16 20628 1 0.03 -1 -1 33900 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66916 31 32 370 297 1 226 80 17 17 289 -1 unnamed_device 26.8 MiB 1.77 1020 15044 6472 8019 553 65.3 MiB 0.12 0.00 2.98339 -102.091 -2.98339 2.98339 1.05 0.00053568 0.000491198 0.0498141 0.045555 46 2697 50 6.99608e+06 250167 828058. 2865.25 2.82 0.20789 0.183465 28066 200906 -1 2014 19 1606 2201 162866 36403 3.51216 3.51216 -127.703 -3.51216 0 0 1.01997e+06 3529.29 0.42 0.07 0.20 -1 -1 0.42 0.0247329 0.0221161 99 57 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_039.v common 11.72 vpr 65.12 MiB -1 -1 0.17 20492 1 0.03 -1 -1 33900 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 31 32 377 302 1 235 80 17 17 289 -1 unnamed_device 26.7 MiB 1.70 1077 10400 3926 4513 1961 65.1 MiB 0.09 0.00 4.14835 -131.391 -4.14835 4.14835 1.01 0.000548694 0.000503678 0.0358705 0.0326985 54 2977 38 6.99608e+06 250167 949917. 3286.91 6.37 0.272612 0.238819 29506 232905 -1 2320 20 2028 2901 241737 51306 4.83 4.83 -164.611 -4.83 0 0 1.17392e+06 4061.99 0.46 0.09 0.24 -1 -1 0.46 0.0268458 0.0238842 104 60 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_040.v common 24.51 vpr 65.49 MiB -1 -1 0.18 20576 1 0.03 -1 -1 33960 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67060 31 32 383 305 1 233 81 17 17 289 -1 unnamed_device 26.9 MiB 3.46 984 10056 3405 4739 1912 65.5 MiB 0.09 0.00 4.27408 -130.809 -4.27408 4.27408 1.05 0.000551482 0.000499181 0.0344314 0.0314957 48 3112 32 6.99608e+06 264882 865456. 2994.66 17.38 0.309809 0.270761 28354 207349 -1 2342 22 1902 2692 254762 56103 4.7348 4.7348 -162.666 -4.7348 0 0 1.05005e+06 3633.38 0.43 0.09 0.20 -1 -1 0.43 0.0298571 0.0266829 103 60 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_041.v common 9.27 vpr 65.05 MiB -1 -1 0.17 20652 1 0.03 -1 -1 33520 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 31 32 352 285 1 215 79 17 17 289 -1 unnamed_device 26.7 MiB 2.36 908 13599 5758 7311 530 65.1 MiB 0.11 0.00 3.12612 -102.251 -3.12612 3.12612 0.98 0.000493705 0.000450548 0.0454356 0.0414564 48 2879 45 6.99608e+06 235451 865456. 2994.66 3.33 0.190673 0.16792 28354 207349 -1 2143 22 1589 2133 190460 42411 3.32256 3.32256 -124.619 -3.32256 0 0 1.05005e+06 3633.38 0.42 0.08 0.21 -1 -1 0.42 0.0275778 0.0246017 93 51 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_042.v common 10.82 vpr 64.97 MiB -1 -1 0.16 20200 1 0.03 -1 -1 33548 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 32 32 291 242 1 178 78 17 17 289 -1 unnamed_device 26.4 MiB 1.10 743 12528 4878 5586 2064 65.0 MiB 0.09 0.00 3.22248 -90.68 -3.22248 3.22248 1.02 0.000464791 0.000424119 0.0371661 0.0340254 44 2590 32 6.99608e+06 206020 787024. 2723.27 6.17 0.252665 0.222644 27778 195446 -1 1655 22 1234 1768 125372 29296 4.09272 4.09272 -118.443 -4.09272 0 0 997811. 3452.63 0.42 0.06 0.19 -1 -1 0.42 0.0241414 0.0215592 72 24 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_043.v common 8.18 vpr 65.70 MiB -1 -1 0.17 20768 1 0.03 -1 -1 33948 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67276 32 32 457 356 1 282 85 17 17 289 -1 unnamed_device 27.4 MiB 1.42 1439 14407 4256 8507 1644 65.7 MiB 0.13 0.00 3.9997 -140.296 -3.9997 3.9997 0.98 0.000571629 0.000517718 0.0505262 0.0459233 44 4003 25 6.99608e+06 309029 787024. 2723.27 3.20 0.209108 0.184439 27778 195446 -1 3219 20 2422 3557 279585 57161 4.55204 4.55204 -167.069 -4.55204 0 0 997811. 3452.63 0.41 0.10 0.18 -1 -1 0.41 0.0309481 0.0277048 129 84 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_044.v common 9.43 vpr 64.67 MiB -1 -1 0.15 20580 1 0.03 -1 -1 33528 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 31 32 261 225 1 158 74 17 17 289 -1 unnamed_device 26.3 MiB 3.67 635 9064 3193 4575 1296 64.7 MiB 0.06 0.00 2.4909 -82.0802 -2.4909 2.4909 1.03 0.000378872 0.000349005 0.0256771 0.0234948 38 1820 23 6.99608e+06 161872 678818. 2348.85 2.40 0.123421 0.107801 26626 170182 -1 1443 18 1146 1497 97760 22917 2.88637 2.88637 -102.768 -2.88637 0 0 902133. 3121.57 0.34 0.05 0.17 -1 -1 0.34 0.017775 0.0157574 65 24 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_045.v common 9.71 vpr 65.10 MiB -1 -1 0.17 20772 1 0.03 -1 -1 33580 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 31 32 337 267 1 200 78 17 17 289 -1 unnamed_device 26.7 MiB 0.74 971 14188 5860 7557 771 65.1 MiB 0.12 0.00 3.70767 -121.086 -3.70767 3.70767 1.00 0.00051005 0.000463762 0.0455303 0.0415889 46 2637 23 6.99608e+06 220735 828058. 2865.25 5.42 0.228389 0.19928 28066 200906 -1 2066 21 1570 2177 165478 34053 4.35731 4.35731 -145.216 -4.35731 0 0 1.01997e+06 3529.29 0.43 0.07 0.19 -1 -1 0.43 0.026078 0.0232739 85 30 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_046.v common 10.17 vpr 65.12 MiB -1 -1 0.16 20624 1 0.03 -1 -1 33716 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 32 32 349 284 1 213 79 17 17 289 -1 unnamed_device 26.7 MiB 1.44 1006 11402 4743 6382 277 65.1 MiB 0.10 0.00 3.25125 -106.732 -3.25125 3.25125 1.01 0.000501238 0.000457399 0.0368055 0.0336924 46 2819 28 6.99608e+06 220735 828058. 2865.25 5.21 0.214525 0.18741 28066 200906 -1 2138 20 1374 2111 147125 32557 3.52942 3.52942 -126.408 -3.52942 0 0 1.01997e+06 3529.29 0.39 0.06 0.20 -1 -1 0.39 0.0239389 0.0212866 91 50 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_047.v common 10.11 vpr 64.98 MiB -1 -1 0.15 20388 1 0.03 -1 -1 34028 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 291 230 1 166 80 17 17 289 -1 unnamed_device 26.4 MiB 0.99 711 9712 3951 5467 294 65.0 MiB 0.07 0.00 3.61243 -99.7162 -3.61243 3.61243 1.00 0.000452928 0.000412141 0.0276923 0.0252691 50 2078 23 6.99608e+06 235451 902133. 3121.57 5.63 0.211572 0.184633 28642 213929 -1 1672 21 1137 2025 143053 32607 3.51821 3.51821 -115.632 -3.51821 0 0 1.08113e+06 3740.92 0.43 0.07 0.22 -1 -1 0.43 0.0232705 0.0207284 68 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_048.v common 9.87 vpr 65.36 MiB -1 -1 0.16 20540 1 0.03 -1 -1 33684 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66932 32 32 353 287 1 204 79 17 17 289 -1 unnamed_device 26.9 MiB 1.45 900 8698 2616 4261 1821 65.4 MiB 0.07 0.00 3.39715 -105.447 -3.39715 3.39715 0.98 0.00051657 0.000469989 0.0283819 0.0259508 40 2323 24 6.99608e+06 220735 706193. 2443.58 4.93 0.23254 0.202518 26914 176310 -1 2133 27 1637 2213 309086 113728 3.71446 3.71446 -130.226 -3.71446 0 0 926341. 3205.33 0.38 0.12 0.18 -1 -1 0.38 0.0321532 0.0284943 90 52 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_049.v common 10.60 vpr 65.12 MiB -1 -1 0.16 20724 1 0.03 -1 -1 33976 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 361 291 1 216 79 17 17 289 -1 unnamed_device 26.7 MiB 1.82 930 14444 6166 7835 443 65.1 MiB 0.12 0.00 3.02259 -101.51 -3.02259 3.02259 1.01 0.000528059 0.000483965 0.0479427 0.0438358 46 3009 25 6.99608e+06 220735 828058. 2865.25 5.18 0.244376 0.215484 28066 200906 -1 2159 20 1581 2293 158315 37027 3.55146 3.55146 -129.828 -3.55146 0 0 1.01997e+06 3529.29 0.43 0.07 0.20 -1 -1 0.43 0.0285715 0.0255918 92 52 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_050.v common 11.61 vpr 65.39 MiB -1 -1 0.15 20732 1 0.03 -1 -1 33860 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66956 32 32 382 305 1 237 80 17 17 289 -1 unnamed_device 26.8 MiB 2.71 1166 14528 6184 7653 691 65.4 MiB 0.12 0.00 2.93047 -104.411 -2.93047 2.93047 0.98 0.000552411 0.000504056 0.0497344 0.0453343 40 3195 26 6.99608e+06 235451 706193. 2443.58 5.37 0.272013 0.238057 26914 176310 -1 2836 23 2146 2831 284204 58259 3.85071 3.85071 -139.052 -3.85071 0 0 926341. 3205.33 0.38 0.11 0.18 -1 -1 0.38 0.0325867 0.029221 101 59 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_051.v common 7.93 vpr 65.02 MiB -1 -1 0.15 20524 1 0.03 -1 -1 33744 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 32 32 306 248 1 178 78 17 17 289 -1 unnamed_device 26.5 MiB 1.04 764 11366 3709 5324 2333 65.0 MiB 0.08 0.00 3.71143 -99.1512 -3.71143 3.71143 1.00 0.00045854 0.000418829 0.0322075 0.0293255 46 2166 31 6.99608e+06 206020 828058. 2865.25 3.47 0.153852 0.135255 28066 200906 -1 1568 20 1082 1610 97458 25360 3.89581 3.89581 -120.894 -3.89581 0 0 1.01997e+06 3529.29 0.41 0.05 0.18 -1 -1 0.41 0.022102 0.0197768 74 21 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_052.v common 8.19 vpr 65.10 MiB -1 -1 0.15 20244 1 0.03 -1 -1 33736 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 32 32 319 257 1 192 77 17 17 289 -1 unnamed_device 26.5 MiB 2.27 771 10835 3829 5240 1766 65.1 MiB 0.09 0.00 3.36978 -103.004 -3.36978 3.36978 0.98 0.000479814 0.00043983 0.035165 0.0321565 44 2692 38 6.99608e+06 191304 787024. 2723.27 2.41 0.160422 0.140406 27778 195446 -1 1899 20 1565 2154 157711 35727 4.14272 4.14272 -131.397 -4.14272 0 0 997811. 3452.63 0.42 0.07 0.19 -1 -1 0.42 0.02382 0.021254 81 26 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_053.v common 8.67 vpr 65.25 MiB -1 -1 0.18 20700 1 0.03 -1 -1 33968 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 31 32 373 299 1 224 79 17 17 289 -1 unnamed_device 26.8 MiB 1.02 962 10050 3332 4680 2038 65.2 MiB 0.09 0.00 3.56031 -110.868 -3.56031 3.56031 0.99 0.000548158 0.000497241 0.0341307 0.0311798 46 3208 28 6.99608e+06 235451 828058. 2865.25 4.11 0.167607 0.146935 28066 200906 -1 2370 24 2006 3042 237110 51548 4.15072 4.15072 -136.045 -4.15072 0 0 1.01997e+06 3529.29 0.41 0.09 0.20 -1 -1 0.41 0.0306147 0.0272206 99 58 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_054.v common 8.27 vpr 65.40 MiB -1 -1 0.15 20536 1 0.03 -1 -1 33740 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66968 32 32 387 315 1 241 80 17 17 289 -1 unnamed_device 26.8 MiB 1.09 992 13324 4975 6120 2229 65.4 MiB 0.11 0.00 3.20742 -105.642 -3.20742 3.20742 1.00 0.000536708 0.000489056 0.0456952 0.0415733 54 3241 39 6.99608e+06 235451 949917. 3286.91 3.51 0.23319 0.204294 29506 232905 -1 2360 22 2076 3059 236976 54462 4.01142 4.01142 -137.781 -4.01142 0 0 1.17392e+06 4061.99 0.47 0.09 0.24 -1 -1 0.47 0.0288449 0.0256813 104 74 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_055.v common 8.19 vpr 64.36 MiB -1 -1 0.15 20152 1 0.03 -1 -1 33704 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65900 32 32 251 219 1 152 74 17 17 289 -1 unnamed_device 25.8 MiB 0.66 668 9529 3846 4845 838 64.4 MiB 0.07 0.00 2.58978 -80.2469 -2.58978 2.58978 0.99 0.000394001 0.000357937 0.0267923 0.0245045 44 1781 40 6.99608e+06 147157 787024. 2723.27 4.15 0.175221 0.15259 27778 195446 -1 1396 20 924 1199 78636 18158 2.80542 2.80542 -94.866 -2.80542 0 0 997811. 3452.63 0.41 0.05 0.19 -1 -1 0.41 0.019602 0.017461 60 20 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_056.v common 6.92 vpr 65.06 MiB -1 -1 0.16 20588 1 0.03 -1 -1 33768 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 32 32 341 285 1 214 79 17 17 289 -1 unnamed_device 26.6 MiB 0.96 838 11571 4367 5381 1823 65.1 MiB 0.09 0.00 3.31348 -118.994 -3.31348 3.31348 0.94 0.000469478 0.000429037 0.034618 0.0317136 44 2819 30 6.99608e+06 220735 787024. 2723.27 2.56 0.171914 0.152238 27778 195446 -1 2112 23 2115 2813 223537 47773 4.15095 4.15095 -148.411 -4.15095 0 0 997811. 3452.63 0.39 0.08 0.17 -1 -1 0.39 0.027722 0.0246753 93 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_057.v common 28.63 vpr 65.33 MiB -1 -1 0.16 20520 1 0.03 -1 -1 33876 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66896 32 32 387 293 1 226 80 17 17 289 -1 unnamed_device 26.8 MiB 1.20 1085 14700 5740 6772 2188 65.3 MiB 0.14 0.00 3.88084 -123.394 -3.88084 3.88084 1.03 0.000591203 0.000541625 0.0528959 0.0484146 44 3546 40 6.99608e+06 235451 787024. 2723.27 23.83 0.378343 0.333675 27778 195446 -1 2566 23 2094 3117 310146 62484 4.75846 4.75846 -157.21 -4.75846 0 0 997811. 3452.63 0.38 0.11 0.17 -1 -1 0.38 0.0317994 0.0284107 98 28 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_058.v common 7.07 vpr 65.24 MiB -1 -1 0.16 20456 1 0.03 -1 -1 33836 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 32 32 340 270 1 203 79 17 17 289 -1 unnamed_device 26.9 MiB 0.70 1033 10557 3204 6861 492 65.2 MiB 0.10 0.00 3.52245 -120.132 -3.52245 3.52245 1.01 0.00049986 0.00045675 0.0339657 0.0311087 40 2646 23 6.99608e+06 220735 706193. 2443.58 2.89 0.155596 0.137013 26914 176310 -1 2402 20 1679 2233 224397 45116 3.46386 3.46386 -140.085 -3.46386 0 0 926341. 3205.33 0.36 0.08 0.17 -1 -1 0.36 0.0258133 0.02312 85 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_059.v common 10.29 vpr 64.82 MiB -1 -1 0.16 20196 1 0.03 -1 -1 33540 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 30 32 278 235 1 166 82 17 17 289 -1 unnamed_device 26.3 MiB 1.46 636 11830 4920 6431 479 64.8 MiB 0.08 0.00 3.02694 -91.2909 -3.02694 3.02694 1.02 0.000430342 0.000393227 0.0303691 0.0277473 44 2084 28 6.99608e+06 294314 787024. 2723.27 5.36 0.205826 0.17925 27778 195446 -1 1394 19 1067 1605 99937 25235 3.16782 3.16782 -110.356 -3.16782 0 0 997811. 3452.63 0.40 0.05 0.20 -1 -1 0.40 0.0203726 0.0181462 72 29 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_060.v common 9.73 vpr 65.79 MiB -1 -1 0.17 20496 1 0.03 -1 -1 33760 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67372 32 32 431 332 1 261 82 17 17 289 -1 unnamed_device 27.2 MiB 1.84 1456 15924 5304 8963 1657 65.8 MiB 0.15 0.00 4.89138 -154.94 -4.89138 4.89138 0.98 0.000586135 0.000534275 0.0562447 0.0512622 46 3719 24 6.99608e+06 264882 828058. 2865.25 4.26 0.199248 0.17583 28066 200906 -1 3126 22 2616 3997 321780 62823 5.46029 5.46029 -188.205 -5.46029 0 0 1.01997e+06 3529.29 0.40 0.12 0.20 -1 -1 0.40 0.0358297 0.0322456 116 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_061.v common 15.82 vpr 65.04 MiB -1 -1 0.16 20188 1 0.03 -1 -1 33568 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 32 32 336 268 1 199 78 17 17 289 -1 unnamed_device 26.7 MiB 0.73 921 13358 5636 7404 318 65.0 MiB 0.11 0.00 3.97864 -121.289 -3.97864 3.97864 1.00 0.000492886 0.000449672 0.0429695 0.0394005 40 2454 28 6.99608e+06 206020 706193. 2443.58 11.60 0.284725 0.249271 26914 176310 -1 2133 23 1719 2328 308067 96763 4.30495 4.30495 -145.106 -4.30495 0 0 926341. 3205.33 0.36 0.11 0.17 -1 -1 0.36 0.0286812 0.0256193 83 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_062.v common 11.97 vpr 64.69 MiB -1 -1 0.13 20020 1 0.03 -1 -1 33712 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66240 32 32 231 199 1 136 77 17 17 289 -1 unnamed_device 26.2 MiB 0.24 492 9531 2918 4851 1762 64.7 MiB 0.06 0.00 2.5282 -75.3477 -2.5282 2.5282 0.99 0.000344406 0.000313731 0.0219087 0.0199323 50 1177 40 6.99608e+06 191304 902133. 3121.57 8.41 0.214927 0.186964 28642 213929 -1 927 19 795 1242 81579 21513 2.92367 2.92367 -88.1492 -2.92367 0 0 1.08113e+06 3740.92 0.43 0.04 0.19 -1 -1 0.43 0.0167418 0.0147705 51 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_063.v common 11.38 vpr 65.16 MiB -1 -1 0.17 20692 1 0.03 -1 -1 33468 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66724 32 32 349 273 1 207 80 17 17 289 -1 unnamed_device 26.8 MiB 1.52 1027 15904 6979 8337 588 65.2 MiB 0.13 0.00 4.00152 -109.799 -4.00152 4.00152 1.04 0.000526262 0.000481437 0.0509776 0.0466249 50 2697 42 6.99608e+06 235451 902133. 3121.57 6.17 0.299617 0.26447 28642 213929 -1 2358 20 1474 2485 253983 53626 4.52586 4.52586 -140.449 -4.52586 0 0 1.08113e+06 3740.92 0.45 0.09 0.21 -1 -1 0.45 0.0290194 0.0260981 85 26 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_064.v common 8.69 vpr 64.54 MiB -1 -1 0.14 20264 1 0.03 -1 -1 33800 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66092 32 32 247 207 1 142 78 17 17 289 -1 unnamed_device 26.0 MiB 1.04 515 9872 3511 4486 1875 64.5 MiB 0.07 0.00 2.4469 -79.9782 -2.4469 2.4469 1.02 0.000384991 0.00035323 0.025869 0.0237116 46 1392 25 6.99608e+06 206020 828058. 2865.25 4.23 0.166174 0.144675 28066 200906 -1 1250 22 1114 1639 94654 24583 2.84237 2.84237 -103.512 -2.84237 0 0 1.01997e+06 3529.29 0.40 0.05 0.20 -1 -1 0.40 0.0202761 0.018036 57 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_065.v common 17.19 vpr 64.96 MiB -1 -1 0.15 20460 1 0.03 -1 -1 33704 -1 -1 13 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66516 30 32 278 235 1 170 75 17 17 289 -1 unnamed_device 26.5 MiB 0.69 667 9397 3887 5119 391 65.0 MiB 0.07 0.00 2.90847 -91.7989 -2.90847 2.90847 0.99 0.000433508 0.000396782 0.0275446 0.0251664 40 2374 43 6.99608e+06 191304 706193. 2443.58 13.13 0.268786 0.233714 26914 176310 -1 1848 24 1727 2294 242478 58728 3.21352 3.21352 -114.489 -3.21352 0 0 926341. 3205.33 0.37 0.09 0.18 -1 -1 0.37 0.0250062 0.0222037 69 29 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_066.v common 9.95 vpr 65.08 MiB -1 -1 0.17 20568 1 0.03 -1 -1 33732 -1 -1 18 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 29 32 355 287 1 213 79 17 17 289 -1 unnamed_device 26.6 MiB 1.91 1150 11233 4622 6106 505 65.1 MiB 0.10 0.00 3.48226 -111.346 -3.48226 3.48226 1.01 0.000520528 0.000470213 0.0365651 0.033447 40 3314 41 6.99608e+06 264882 706193. 2443.58 4.53 0.182063 0.160285 26914 176310 -1 2866 20 1961 2835 312210 61487 3.9766 3.9766 -141.655 -3.9766 0 0 926341. 3205.33 0.37 0.10 0.17 -1 -1 0.37 0.026721 0.0239553 97 56 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_067.v common 18.09 vpr 65.28 MiB -1 -1 0.14 20264 1 0.03 -1 -1 33948 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66848 32 32 358 289 1 217 79 17 17 289 -1 unnamed_device 26.8 MiB 1.56 1209 12247 4067 6361 1819 65.3 MiB 0.10 0.00 3.50518 -122.328 -3.50518 3.50518 0.94 0.000478046 0.00043797 0.0385426 0.0352899 40 2662 24 6.99608e+06 220735 706193. 2443.58 13.26 0.293137 0.258426 26914 176310 -1 2522 21 1932 2649 231643 46664 4.38971 4.38971 -153.453 -4.38971 0 0 926341. 3205.33 0.35 0.08 0.16 -1 -1 0.35 0.0270006 0.0241142 93 51 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_068.v common 10.19 vpr 65.39 MiB -1 -1 0.16 20624 1 0.03 -1 -1 33632 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66956 32 32 353 285 1 213 79 17 17 289 -1 unnamed_device 26.9 MiB 2.55 1192 14106 4713 7609 1784 65.4 MiB 0.12 0.00 3.67287 -121.273 -3.67287 3.67287 1.01 0.000530226 0.000486051 0.0457776 0.0418776 38 3055 26 6.99608e+06 220735 678818. 2348.85 4.09 0.179488 0.158907 26626 170182 -1 2663 24 2032 2848 246183 48911 4.26925 4.26925 -153.766 -4.26925 0 0 902133. 3121.57 0.36 0.09 0.16 -1 -1 0.36 0.0303777 0.02718 90 48 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_069.v common 15.05 vpr 64.75 MiB -1 -1 0.15 20164 1 0.03 -1 -1 33760 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 32 32 276 237 1 163 75 17 17 289 -1 unnamed_device 26.3 MiB 2.30 978 11609 3654 6422 1533 64.7 MiB 0.08 0.00 3.18112 -107.154 -3.18112 3.18112 0.98 0.000428618 0.000391395 0.0329868 0.0302145 36 2565 28 6.99608e+06 161872 648988. 2245.63 9.43 0.209373 0.181975 26050 158493 -1 2113 21 1232 1720 190414 38227 3.44936 3.44936 -124.726 -3.44936 0 0 828058. 2865.25 0.34 0.07 0.15 -1 -1 0.34 0.0223954 0.0199352 67 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_070.v common 9.48 vpr 65.19 MiB -1 -1 0.16 20100 1 0.03 -1 -1 33812 -1 -1 14 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 31 32 319 272 1 200 77 17 17 289 -1 unnamed_device 26.8 MiB 0.96 841 12302 5190 6760 352 65.2 MiB 0.09 0.00 3.00077 -98.7175 -3.00077 3.00077 0.97 0.000444956 0.000405043 0.0351436 0.0319913 44 2847 31 6.99608e+06 206020 787024. 2723.27 5.14 0.228402 0.198905 27778 195446 -1 1880 23 1668 2373 191911 42525 3.54856 3.54856 -124.518 -3.54856 0 0 997811. 3452.63 0.40 0.08 0.18 -1 -1 0.40 0.0250367 0.0221236 86 60 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_071.v common 7.82 vpr 65.20 MiB -1 -1 0.17 20476 1 0.03 -1 -1 34044 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66768 30 32 329 273 1 202 81 17 17 289 -1 unnamed_device 26.8 MiB 1.38 913 10231 3162 5342 1727 65.2 MiB 0.08 0.00 2.78804 -88.9625 -2.78804 2.78804 0.99 0.000464093 0.000425123 0.0303658 0.0278139 40 2519 43 6.99608e+06 279598 706193. 2443.58 3.01 0.166995 0.146945 26914 176310 -1 2099 22 1727 2519 255507 54758 3.01722 3.01722 -109.543 -3.01722 0 0 926341. 3205.33 0.36 0.09 0.18 -1 -1 0.36 0.0253224 0.0223641 91 52 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_072.v common 10.79 vpr 64.79 MiB -1 -1 0.16 20252 1 0.03 -1 -1 34080 -1 -1 17 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 28 32 277 229 1 170 77 17 17 289 -1 unnamed_device 26.3 MiB 0.53 757 13443 5736 7022 685 64.8 MiB 0.09 0.00 3.06285 -88.8658 -3.06285 3.06285 0.97 0.000439926 0.000403686 0.0371636 0.0340206 36 2594 44 6.99608e+06 250167 648988. 2245.63 6.89 0.170847 0.150873 26050 158493 -1 1880 21 1481 2226 219569 45361 3.88312 3.88312 -116.899 -3.88312 0 0 828058. 2865.25 0.34 0.08 0.15 -1 -1 0.34 0.023131 0.0205351 71 20 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_073.v common 9.67 vpr 65.01 MiB -1 -1 0.15 20564 1 0.03 -1 -1 33584 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 30 32 317 269 1 200 77 17 17 289 -1 unnamed_device 26.6 MiB 2.19 788 12465 5261 6765 439 65.0 MiB 0.09 0.00 3.54051 -111.581 -3.54051 3.54051 1.00 0.000486931 0.000445161 0.038597 0.0352732 46 2531 43 6.99608e+06 220735 828058. 2865.25 4.01 0.164754 0.144223 28066 200906 -1 1865 22 1667 2243 171765 38026 3.85425 3.85425 -137.178 -3.85425 0 0 1.01997e+06 3529.29 0.39 0.08 0.20 -1 -1 0.39 0.0259829 0.0232232 87 58 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_074.v common 7.97 vpr 65.19 MiB -1 -1 0.16 20220 1 0.03 -1 -1 33800 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 32 32 335 282 1 216 78 17 17 289 -1 unnamed_device 26.8 MiB 0.97 1014 11698 4072 5758 1868 65.2 MiB 0.09 0.00 2.893 -100.015 -2.893 2.893 1.01 0.000475701 0.000433626 0.0367919 0.0335402 36 3637 49 6.99608e+06 206020 648988. 2245.63 3.56 0.170105 0.149619 26050 158493 -1 2644 23 2153 2989 289047 57285 3.46256 3.46256 -134.808 -3.46256 0 0 828058. 2865.25 0.33 0.10 0.15 -1 -1 0.33 0.0273754 0.0243709 93 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_075.v common 7.28 vpr 64.87 MiB -1 -1 0.15 20440 1 0.03 -1 -1 34024 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 31 32 293 230 1 168 87 17 17 289 -1 unnamed_device 26.4 MiB 0.42 741 13143 5420 7092 631 64.9 MiB 0.09 0.00 3.86008 -101.496 -3.86008 3.86008 0.99 0.000419463 0.000382916 0.0319228 0.0291055 46 2234 21 6.99608e+06 353176 828058. 2865.25 3.48 0.14574 0.128653 28066 200906 -1 1732 21 1115 1970 163262 37838 3.90317 3.90317 -122.497 -3.90317 0 0 1.01997e+06 3529.29 0.41 0.06 0.18 -1 -1 0.41 0.0217105 0.0192609 74 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_076.v common 10.09 vpr 65.15 MiB -1 -1 0.16 20536 1 0.03 -1 -1 34092 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66716 32 32 350 275 1 202 78 17 17 289 -1 unnamed_device 26.8 MiB 2.32 843 10370 4264 5677 429 65.2 MiB 0.09 0.00 3.51478 -115.311 -3.51478 3.51478 1.04 0.000531438 0.000482695 0.0369924 0.0338946 48 2810 50 6.99608e+06 206020 865456. 2994.66 4.13 0.217618 0.19318 28354 207349 -1 2193 22 1765 2604 203009 48324 4.15642 4.15642 -144.185 -4.15642 0 0 1.05005e+06 3633.38 0.44 0.09 0.20 -1 -1 0.44 0.0297731 0.026693 86 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_077.v common 27.07 vpr 65.29 MiB -1 -1 0.17 20712 1 0.03 -1 -1 33824 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66860 32 32 385 308 1 237 81 17 17 289 -1 unnamed_device 26.7 MiB 0.87 1069 10581 3838 5377 1366 65.3 MiB 0.09 0.00 4.133 -132.102 -4.133 4.133 1.00 0.000564538 0.000514068 0.0352275 0.0322025 40 3753 41 6.99608e+06 250167 706193. 2443.58 22.61 0.333876 0.290022 26914 176310 -1 2834 26 2720 3825 637999 156697 5.12561 5.12561 -173.305 -5.12561 0 0 926341. 3205.33 0.37 0.18 0.17 -1 -1 0.37 0.0344615 0.0306725 102 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_078.v common 10.19 vpr 65.50 MiB -1 -1 0.17 20568 1 0.03 -1 -1 33892 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67068 32 32 387 309 1 244 81 17 17 289 -1 unnamed_device 26.9 MiB 0.98 1077 10581 4112 5692 777 65.5 MiB 0.10 0.00 3.45716 -117.362 -3.45716 3.45716 1.01 0.000545761 0.000498516 0.0363698 0.0332301 44 3327 28 6.99608e+06 250167 787024. 2723.27 5.67 0.265448 0.232126 27778 195446 -1 2423 21 2059 2964 231777 48370 4.0225 4.0225 -145.926 -4.0225 0 0 997811. 3452.63 0.39 0.08 0.20 -1 -1 0.39 0.0272529 0.0242392 104 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_079.v common 7.94 vpr 64.79 MiB -1 -1 0.16 20332 1 0.03 -1 -1 33656 -1 -1 13 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66348 30 32 272 232 1 171 75 17 17 289 -1 unnamed_device 26.4 MiB 1.05 721 8607 2864 3900 1843 64.8 MiB 0.06 0.00 3.38615 -98.8809 -3.38615 3.38615 0.99 0.000424686 0.000387413 0.0253018 0.0231543 38 2350 24 6.99608e+06 191304 678818. 2348.85 3.53 0.129979 0.11354 26626 170182 -1 1854 18 1267 1776 140185 31110 3.98306 3.98306 -129.613 -3.98306 0 0 902133. 3121.57 0.36 0.06 0.17 -1 -1 0.36 0.0190566 0.0170268 71 29 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_080.v common 19.62 vpr 65.64 MiB -1 -1 0.17 20528 1 0.03 -1 -1 33764 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67216 30 32 375 299 1 233 80 17 17 289 -1 unnamed_device 26.9 MiB 1.10 905 12292 4177 5959 2156 65.6 MiB 0.10 0.00 4.34696 -131.509 -4.34696 4.34696 1.00 0.000515754 0.000470467 0.0410833 0.0374915 40 3345 48 6.99608e+06 264882 706193. 2443.58 14.98 0.329435 0.288019 26914 176310 -1 2603 24 2439 3438 345817 78596 5.27384 5.27384 -174.582 -5.27384 0 0 926341. 3205.33 0.37 0.11 0.18 -1 -1 0.37 0.0318973 0.028604 104 58 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_081.v common 9.78 vpr 64.91 MiB -1 -1 0.17 20576 1 0.03 -1 -1 33760 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 32 32 340 270 1 197 78 17 17 289 -1 unnamed_device 26.6 MiB 1.26 816 13524 5097 6748 1679 64.9 MiB 0.11 0.00 3.97864 -116.004 -3.97864 3.97864 1.02 0.000511286 0.000466851 0.0438343 0.0401191 42 3046 45 6.99608e+06 206020 744469. 2576.02 5.00 0.251926 0.220027 27202 183097 -1 2152 24 1799 2765 226345 51041 4.16265 4.16265 -144.168 -4.16265 0 0 949917. 3286.91 0.39 0.09 0.18 -1 -1 0.39 0.0280684 0.0248881 82 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_082.v common 19.55 vpr 65.26 MiB -1 -1 0.15 20560 1 0.03 -1 -1 33984 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 31 32 340 275 1 199 80 17 17 289 -1 unnamed_device 26.8 MiB 1.23 851 10916 3649 5536 1731 65.3 MiB 0.08 0.00 4.26485 -118.03 -4.26485 4.26485 0.95 0.000470613 0.000430933 0.0328516 0.030125 40 2554 48 6.99608e+06 250167 706193. 2443.58 15.05 0.308669 0.270891 26914 176310 -1 2176 25 1657 2407 220411 50512 4.25426 4.25426 -145.301 -4.25426 0 0 926341. 3205.33 0.35 0.09 0.16 -1 -1 0.35 0.0291158 0.0259595 87 43 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_083.v common 8.25 vpr 65.63 MiB -1 -1 0.17 20624 1 0.03 -1 -1 33704 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67204 30 32 377 310 1 234 82 17 17 289 -1 unnamed_device 27.0 MiB 2.31 1005 15212 6051 7763 1398 65.6 MiB 0.13 0.00 3.39158 -108.32 -3.39158 3.39158 0.99 0.000528885 0.000481713 0.0484706 0.0442504 46 2783 24 6.99608e+06 294314 828058. 2865.25 2.38 0.151349 0.13367 28066 200906 -1 2053 20 1929 2719 197285 42034 3.67775 3.67775 -129.3 -3.67775 0 0 1.01997e+06 3529.29 0.40 0.08 0.20 -1 -1 0.40 0.0271255 0.024217 108 78 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_084.v common 20.71 vpr 65.09 MiB -1 -1 0.16 20620 1 0.03 -1 -1 33712 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66656 32 32 365 294 1 223 81 17 17 289 -1 unnamed_device 26.6 MiB 1.91 1210 16531 6840 8472 1219 65.1 MiB 0.14 0.00 3.87837 -126.484 -3.87837 3.87837 1.03 0.000532865 0.000488491 0.0534646 0.0489759 40 2957 25 6.99608e+06 250167 706193. 2443.58 15.20 0.310787 0.271996 26914 176310 -1 2700 24 2135 3047 410179 115481 4.42165 4.42165 -158.916 -4.42165 0 0 926341. 3205.33 0.37 0.13 0.17 -1 -1 0.37 0.0309833 0.0276493 95 54 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_085.v common 11.64 vpr 65.37 MiB -1 -1 0.18 20480 1 0.03 -1 -1 33900 -1 -1 20 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 29 32 378 310 1 237 81 17 17 289 -1 unnamed_device 26.8 MiB 2.91 1157 13906 5693 6420 1793 65.4 MiB 0.12 0.00 3.11675 -104.044 -3.11675 3.11675 1.01 0.00051468 0.000471959 0.045416 0.0416059 44 3091 26 6.99608e+06 294314 787024. 2723.27 5.10 0.248247 0.219186 27778 195446 -1 2463 22 1842 2435 194501 40277 3.55746 3.55746 -123.243 -3.55746 0 0 997811. 3452.63 0.42 0.08 0.19 -1 -1 0.42 0.0310995 0.0278052 109 79 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_086.v common 7.18 vpr 64.50 MiB -1 -1 0.15 20248 1 0.03 -1 -1 33860 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 32 32 243 205 1 140 74 17 17 289 -1 unnamed_device 26.0 MiB 1.42 628 9529 3942 5346 241 64.5 MiB 0.07 0.00 2.91658 -86.3379 -2.91658 2.91658 1.00 0.000391512 0.000356693 0.0263503 0.0241452 38 2044 33 6.99608e+06 147157 678818. 2348.85 2.41 0.131838 0.116123 26626 170182 -1 1626 19 968 1495 117989 26335 3.01792 3.01792 -108.904 -3.01792 0 0 902133. 3121.57 0.35 0.05 0.16 -1 -1 0.35 0.0186512 0.0166509 54 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_087.v common 9.75 vpr 65.56 MiB -1 -1 0.17 20448 1 0.03 -1 -1 33972 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67136 32 32 373 302 1 234 81 17 17 289 -1 unnamed_device 26.8 MiB 0.77 1015 14956 4846 7419 2691 65.6 MiB 0.12 0.00 4.09386 -129.395 -4.09386 4.09386 1.02 0.000550026 0.000499561 0.0474117 0.0432537 46 3188 41 6.99608e+06 250167 828058. 2865.25 5.38 0.197609 0.174048 28066 200906 -1 2289 22 2016 2803 258982 54864 4.64714 4.64714 -160.582 -4.64714 0 0 1.01997e+06 3529.29 0.40 0.09 0.20 -1 -1 0.40 0.0282358 0.0251275 100 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_088.v common 10.06 vpr 65.61 MiB -1 -1 0.14 20408 1 0.03 -1 -1 33844 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67184 32 32 397 314 1 249 81 17 17 289 -1 unnamed_device 27.3 MiB 0.97 1040 11806 4361 5302 2143 65.6 MiB 0.10 0.00 4.125 -138.924 -4.125 4.125 0.99 0.000545042 0.000498518 0.0396479 0.0362802 44 3539 38 6.99608e+06 250167 787024. 2723.27 5.67 0.2703 0.238248 27778 195446 -1 2588 18 2364 3321 261631 55374 5.18654 5.18654 -182.073 -5.18654 0 0 997811. 3452.63 0.39 0.09 0.17 -1 -1 0.39 0.0282628 0.0255594 109 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_089.v common 8.85 vpr 64.89 MiB -1 -1 0.15 20244 1 0.03 -1 -1 33940 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 269 231 1 168 75 17 17 289 -1 unnamed_device 26.5 MiB 1.13 748 9713 2664 5973 1076 64.9 MiB 0.09 0.00 3.15927 -95.7814 -3.15927 3.15927 1.05 0.000418515 0.0003831 0.0284315 0.0260495 36 2400 37 6.99608e+06 161872 648988. 2245.63 4.31 0.144709 0.127043 26050 158493 -1 1823 20 1271 1628 132010 27711 3.23041 3.23041 -116.652 -3.23041 0 0 828058. 2865.25 0.34 0.06 0.15 -1 -1 0.34 0.0202966 0.0180802 69 26 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_090.v common 6.37 vpr 64.58 MiB -1 -1 0.15 20120 1 0.03 -1 -1 33908 -1 -1 13 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 31 32 245 205 1 144 76 17 17 289 -1 unnamed_device 26.1 MiB 0.57 468 10156 3469 4653 2034 64.6 MiB 0.07 0.00 2.91353 -84.1354 -2.91353 2.91353 1.01 0.000386839 0.00035202 0.0270031 0.0246897 44 1886 41 6.99608e+06 191304 787024. 2723.27 2.32 0.128625 0.112965 27778 195446 -1 1353 26 1227 1811 124789 31397 3.21527 3.21527 -105.863 -3.21527 0 0 997811. 3452.63 0.43 0.06 0.20 -1 -1 0.43 0.0227344 0.0200547 56 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_091.v common 7.77 vpr 65.09 MiB -1 -1 0.16 20552 1 0.03 -1 -1 33500 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 32 32 348 274 1 208 79 17 17 289 -1 unnamed_device 26.7 MiB 0.94 804 12923 3877 6748 2298 65.1 MiB 0.11 0.00 3.83011 -121.062 -3.83011 3.83011 1.03 0.000534467 0.000482748 0.0435785 0.0399329 44 3138 48 6.99608e+06 220735 787024. 2723.27 3.15 0.183125 0.162779 27778 195446 -1 1937 20 1635 2181 170809 37303 3.97855 3.97855 -142.426 -3.97855 0 0 997811. 3452.63 0.44 0.08 0.20 -1 -1 0.44 0.027291 0.0245145 88 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_092.v common 20.95 vpr 65.23 MiB -1 -1 0.14 20672 1 0.03 -1 -1 33940 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66800 32 32 356 289 1 218 79 17 17 289 -1 unnamed_device 26.8 MiB 1.90 898 12247 5117 6687 443 65.2 MiB 0.10 0.00 3.76217 -112.114 -3.76217 3.76217 1.00 0.000471647 0.000430653 0.0394999 0.0359764 40 2933 41 6.99608e+06 220735 706193. 2443.58 15.63 0.314201 0.27455 26914 176310 -1 2315 25 1806 2453 245921 56221 4.17995 4.17995 -148.756 -4.17995 0 0 926341. 3205.33 0.37 0.09 0.16 -1 -1 0.37 0.0294536 0.0261443 95 53 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_093.v common 16.79 vpr 65.10 MiB -1 -1 0.15 20628 1 0.03 -1 -1 33628 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 32 32 349 260 1 195 81 17 17 289 -1 unnamed_device 26.7 MiB 0.47 909 15656 5573 7939 2144 65.1 MiB 0.12 0.00 3.77681 -110.691 -3.77681 3.77681 1.01 0.000516715 0.000455961 0.0494505 0.0451469 48 2471 37 6.99608e+06 250167 865456. 2994.66 12.72 0.342526 0.29895 28354 207349 -1 1893 23 1618 2876 204095 48408 4.30635 4.30635 -140.133 -4.30635 0 0 1.05005e+06 3633.38 0.43 0.08 0.20 -1 -1 0.43 0.0281486 0.0250339 83 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_094.v common 16.99 vpr 65.21 MiB -1 -1 0.17 20204 1 0.03 -1 -1 33816 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 30 32 316 264 1 197 78 17 17 289 -1 unnamed_device 26.8 MiB 1.26 841 8710 2966 4267 1477 65.2 MiB 0.07 0.00 3.00069 -86.6521 -3.00069 3.00069 1.02 0.00048171 0.000438259 0.0270819 0.024762 38 2864 46 6.99608e+06 235451 678818. 2348.85 12.30 0.247368 0.214565 26626 170182 -1 2148 21 1646 2395 193437 43125 3.74271 3.74271 -118.314 -3.74271 0 0 902133. 3121.57 0.35 0.08 0.17 -1 -1 0.35 0.0256611 0.0229863 86 47 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_095.v common 8.90 vpr 64.77 MiB -1 -1 0.15 20144 1 0.03 -1 -1 34164 -1 -1 15 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 27 32 255 219 1 145 74 17 17 289 -1 unnamed_device 26.4 MiB 1.12 515 9839 4186 5007 646 64.8 MiB 0.07 0.00 2.96122 -84.6064 -2.96122 2.96122 1.01 0.000409751 0.000373712 0.0275759 0.0252753 40 1576 27 6.99608e+06 220735 706193. 2443.58 4.41 0.166898 0.145405 26914 176310 -1 1269 19 958 1397 112507 27740 3.46242 3.46242 -109.938 -3.46242 0 0 926341. 3205.33 0.36 0.05 0.18 -1 -1 0.36 0.0178349 0.0157912 66 26 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_096.v common 6.93 vpr 65.45 MiB -1 -1 0.16 20652 1 0.03 -1 -1 33752 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67020 32 32 421 327 1 257 82 17 17 289 -1 unnamed_device 27.1 MiB 0.90 1227 16280 6634 7911 1735 65.4 MiB 0.14 0.00 3.52714 -118.035 -3.52714 3.52714 0.94 0.000565583 0.000516729 0.0555852 0.0508938 50 3672 28 6.99608e+06 264882 902133. 3121.57 2.55 0.185816 0.165058 28642 213929 -1 2889 23 2390 3669 332745 66607 4.31402 4.31402 -148.624 -4.31402 0 0 1.08113e+06 3740.92 0.42 0.11 0.19 -1 -1 0.42 0.0345979 0.0310992 111 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_097.v common 11.21 vpr 65.39 MiB -1 -1 0.16 20852 1 0.03 -1 -1 33896 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 31 32 365 296 1 229 80 17 17 289 -1 unnamed_device 26.9 MiB 2.01 1205 14528 5060 7601 1867 65.4 MiB 0.12 0.00 4.34903 -132.473 -4.34903 4.34903 0.98 0.000518972 0.000473253 0.0460394 0.0419988 46 3180 30 6.99608e+06 250167 828058. 2865.25 5.59 0.238285 0.20844 28066 200906 -1 2623 19 2113 2942 270584 52138 4.62714 4.62714 -161.292 -4.62714 0 0 1.01997e+06 3529.29 0.41 0.10 0.20 -1 -1 0.41 0.028437 0.0256009 100 60 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_098.v common 9.54 vpr 65.18 MiB -1 -1 0.16 20184 1 0.03 -1 -1 33924 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 32 32 331 280 1 215 78 17 17 289 -1 unnamed_device 26.8 MiB 1.02 925 14686 6380 8000 306 65.2 MiB 0.11 0.00 3.46994 -122.857 -3.46994 3.46994 1.01 0.000481145 0.000438703 0.0448445 0.0409562 46 2455 22 6.99608e+06 206020 828058. 2865.25 4.95 0.204335 0.178796 28066 200906 -1 1884 23 1415 1752 120220 26796 3.99065 3.99065 -147.163 -3.99065 0 0 1.01997e+06 3529.29 0.43 0.07 0.20 -1 -1 0.43 0.0262803 0.023338 91 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_099.v common 9.63 vpr 65.14 MiB -1 -1 0.16 20540 1 0.03 -1 -1 34068 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66700 32 32 326 263 1 197 79 17 17 289 -1 unnamed_device 26.8 MiB 0.79 874 12585 5353 6846 386 65.1 MiB 0.10 0.00 3.34348 -104.912 -3.34348 3.34348 1.01 0.000485172 0.000443323 0.0387101 0.0353924 46 2739 37 6.99608e+06 220735 828058. 2865.25 5.32 0.231877 0.203107 28066 200906 -1 1931 16 1223 1715 127603 28175 3.52391 3.52391 -120.89 -3.52391 0 0 1.01997e+06 3529.29 0.43 0.06 0.20 -1 -1 0.43 0.021766 0.0196119 81 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_100.v common 8.53 vpr 65.50 MiB -1 -1 0.17 20632 1 0.03 -1 -1 33736 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67068 31 32 373 294 1 221 80 17 17 289 -1 unnamed_device 27.0 MiB 1.65 951 12980 5469 6791 720 65.5 MiB 0.11 0.00 3.32588 -102.513 -3.32588 3.32588 1.03 0.000542485 0.000502177 0.0449738 0.0412275 46 2569 33 6.99608e+06 250167 828058. 2865.25 3.26 0.210234 0.187019 28066 200906 -1 1906 21 1850 2635 170122 39519 3.95532 3.95532 -128.142 -3.95532 0 0 1.01997e+06 3529.29 0.42 0.08 0.20 -1 -1 0.42 0.029483 0.0264162 97 46 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_101.v common 8.56 vpr 65.24 MiB -1 -1 0.17 20212 1 0.03 -1 -1 33644 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 30 32 325 268 1 198 79 17 17 289 -1 unnamed_device 26.9 MiB 1.69 889 9374 3536 4551 1287 65.2 MiB 0.08 0.00 2.85029 -93.1822 -2.85029 2.85029 0.99 0.00044231 0.000396288 0.028649 0.0261384 40 2908 40 6.99608e+06 250167 706193. 2443.58 3.40 0.156652 0.136812 26914 176310 -1 2244 19 1464 2210 219071 48381 3.52036 3.52036 -120.305 -3.52036 0 0 926341. 3205.33 0.39 0.08 0.18 -1 -1 0.39 0.0247612 0.0221852 88 46 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_102.v common 11.29 vpr 65.25 MiB -1 -1 0.16 20848 1 0.03 -1 -1 33900 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 32 32 350 275 1 209 78 17 17 289 -1 unnamed_device 26.8 MiB 0.93 888 10868 3889 5035 1944 65.3 MiB 0.09 0.00 3.62631 -117.578 -3.62631 3.62631 1.02 0.000453712 0.000416076 0.0365417 0.0333045 58 2475 33 6.99608e+06 206020 997811. 3452.63 6.58 0.279813 0.243668 30370 251734 -1 1900 23 1814 2685 200644 49940 4.49891 4.49891 -144.681 -4.49891 0 0 1.25153e+06 4330.55 0.52 0.08 0.26 -1 -1 0.52 0.0273625 0.0242812 88 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_103.v common 11.85 vpr 65.54 MiB -1 -1 0.16 20568 1 0.03 -1 -1 33988 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67108 32 32 386 307 1 240 80 17 17 289 -1 unnamed_device 27.0 MiB 2.94 1066 12636 4434 6563 1639 65.5 MiB 0.11 0.00 2.94423 -103.08 -2.94423 2.94423 1.00 0.000534613 0.000485868 0.0422491 0.0386152 44 3230 31 6.99608e+06 235451 787024. 2723.27 5.39 0.28454 0.248115 27778 195446 -1 2003 19 1680 2231 136754 33531 3.46381 3.46381 -132.297 -3.46381 0 0 997811. 3452.63 0.40 0.06 0.18 -1 -1 0.40 0.025503 0.0228465 103 59 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_104.v common 7.98 vpr 64.95 MiB -1 -1 0.15 20656 1 0.03 -1 -1 33700 -1 -1 14 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 29 32 269 229 1 168 75 17 17 289 -1 unnamed_device 26.5 MiB 1.55 650 10977 3650 5831 1496 64.9 MiB 0.08 0.00 3.50045 -98.6512 -3.50045 3.50045 1.04 0.000413821 0.000378609 0.0316148 0.0290012 36 2093 32 6.99608e+06 206020 648988. 2245.63 3.03 0.153598 0.135915 26050 158493 -1 1553 20 1325 1736 134771 30093 3.32456 3.32456 -119.007 -3.32456 0 0 828058. 2865.25 0.35 0.06 0.15 -1 -1 0.35 0.0214188 0.0191716 70 28 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_105.v common 11.34 vpr 65.12 MiB -1 -1 0.16 20204 1 0.03 -1 -1 33996 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 310 266 1 182 78 17 17 289 -1 unnamed_device 26.6 MiB 2.38 769 12196 5195 6671 330 65.1 MiB 0.08 0.00 3.25048 -107.19 -3.25048 3.25048 0.98 0.000412853 0.000372833 0.0336141 0.0305272 46 2335 42 6.99608e+06 206020 828058. 2865.25 5.55 0.216426 0.188472 28066 200906 -1 1656 21 1450 1979 151483 35093 3.64195 3.64195 -126.772 -3.64195 0 0 1.01997e+06 3529.29 0.41 0.07 0.18 -1 -1 0.41 0.0230223 0.0204416 79 55 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_106.v common 7.49 vpr 65.18 MiB -1 -1 0.16 20248 1 0.03 -1 -1 33476 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 31 32 326 261 1 193 78 17 17 289 -1 unnamed_device 26.6 MiB 0.92 831 11366 4736 6148 482 65.2 MiB 0.09 0.00 3.28848 -100.76 -3.28848 3.28848 1.02 0.000474151 0.000432231 0.0358173 0.0327391 46 2519 33 6.99608e+06 220735 828058. 2865.25 3.02 0.166894 0.146884 28066 200906 -1 1959 23 1681 2452 201911 45606 4.09436 4.09436 -136.549 -4.09436 0 0 1.01997e+06 3529.29 0.40 0.08 0.20 -1 -1 0.40 0.0264308 0.0234794 80 29 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_107.v common 7.03 vpr 64.88 MiB -1 -1 0.16 20496 1 0.03 -1 -1 33952 -1 -1 13 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66432 29 32 262 224 1 162 74 17 17 289 -1 unnamed_device 26.5 MiB 1.08 654 9064 2965 4896 1203 64.9 MiB 0.07 0.00 3.02297 -87.8415 -3.02297 3.02297 1.00 0.000451006 0.000411606 0.0265904 0.0243684 36 2369 36 6.99608e+06 191304 648988. 2245.63 2.63 0.118673 0.104076 26050 158493 -1 1801 21 1359 1748 160346 34772 3.30876 3.30876 -111.906 -3.30876 0 0 828058. 2865.25 0.35 0.07 0.15 -1 -1 0.35 0.0214555 0.0191793 68 25 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_108.v common 7.12 vpr 64.74 MiB -1 -1 0.15 20412 1 0.03 -1 -1 33384 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 32 32 278 238 1 178 76 17 17 289 -1 unnamed_device 26.3 MiB 0.93 888 12076 5154 6742 180 64.7 MiB 0.09 0.00 3.53345 -112.872 -3.53345 3.53345 0.99 0.000429252 0.000392138 0.0343228 0.0313941 40 2434 28 6.99608e+06 176588 706193. 2443.58 2.77 0.148369 0.131135 26914 176310 -1 2176 21 1483 1992 265492 51625 3.75346 3.75346 -133.776 -3.75346 0 0 926341. 3205.33 0.37 0.09 0.17 -1 -1 0.37 0.0228511 0.0204376 73 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_109.v common 7.51 vpr 65.45 MiB -1 -1 0.17 20760 1 0.03 -1 -1 33980 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 31 32 373 300 1 231 80 17 17 289 -1 unnamed_device 26.9 MiB 1.04 1144 10400 2769 6600 1031 65.4 MiB 0.09 0.00 3.73911 -127.496 -3.73911 3.73911 1.02 0.000536982 0.000490926 0.0353885 0.0323882 44 2940 31 6.99608e+06 250167 787024. 2723.27 2.88 0.175025 0.154592 27778 195446 -1 2467 20 1789 2433 196776 41026 4.01765 4.01765 -149.622 -4.01765 0 0 997811. 3452.63 0.42 0.08 0.19 -1 -1 0.42 0.0279206 0.0250274 101 60 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_110.v common 8.33 vpr 64.89 MiB -1 -1 0.16 20588 1 0.03 -1 -1 33776 -1 -1 13 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 31 32 265 230 1 171 76 17 17 289 -1 unnamed_device 26.4 MiB 0.93 837 12556 4321 5836 2399 64.9 MiB 0.09 0.00 3.10427 -99.3374 -3.10427 3.10427 1.02 0.000415609 0.000380619 0.0353255 0.0323278 36 2386 34 6.99608e+06 191304 648988. 2245.63 3.99 0.150296 0.132411 26050 158493 -1 2034 23 1308 1855 188147 35717 3.16341 3.16341 -120.774 -3.16341 0 0 828058. 2865.25 0.34 0.07 0.14 -1 -1 0.34 0.0220759 0.0196067 71 30 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_111.v common 9.77 vpr 64.81 MiB -1 -1 0.16 20248 1 0.03 -1 -1 33604 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 349 286 1 207 79 17 17 289 -1 unnamed_device 26.4 MiB 1.23 1090 10388 4056 5260 1072 64.8 MiB 0.09 0.00 2.87229 -101.232 -2.87229 2.87229 1.00 0.000512376 0.00046211 0.0341386 0.0312048 40 2649 23 6.99608e+06 220735 706193. 2443.58 5.02 0.222959 0.194655 26914 176310 -1 2263 24 1474 2041 314975 118133 3.50546 3.50546 -126.638 -3.50546 0 0 926341. 3205.33 0.36 0.12 0.18 -1 -1 0.36 0.0296714 0.0265113 91 54 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_112.v common 12.58 vpr 65.53 MiB -1 -1 0.16 20924 1 0.03 -1 -1 33768 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67104 31 32 396 325 1 255 83 17 17 289 -1 unnamed_device 27.1 MiB 3.01 1308 5303 1208 3731 364 65.5 MiB 0.06 0.00 3.75392 -131.868 -3.75392 3.75392 1.00 0.000598172 0.000546537 0.0197902 0.0181546 50 3212 30 6.99608e+06 294314 902133. 3121.57 5.95 0.23509 0.204799 28642 213929 -1 2745 22 2238 3143 287645 57637 4.43499 4.43499 -165.312 -4.43499 0 0 1.08113e+06 3740.92 0.45 0.11 0.21 -1 -1 0.45 0.0352316 0.0317858 113 87 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_113.v common 10.54 vpr 65.15 MiB -1 -1 0.15 20328 1 0.03 -1 -1 33216 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66712 32 32 303 262 1 192 76 17 17 289 -1 unnamed_device 26.6 MiB 2.14 764 10156 4157 5666 333 65.1 MiB 0.08 0.00 2.76294 -92.5206 -2.76294 2.76294 1.03 0.000433898 0.000396628 0.030264 0.0275049 54 2026 23 6.99608e+06 176588 949917. 3286.91 4.83 0.183146 0.159324 29506 232905 -1 1690 20 1429 1906 163655 37172 3.26051 3.26051 -116.668 -3.26051 0 0 1.17392e+06 4061.99 0.47 0.06 0.22 -1 -1 0.47 0.0220346 0.0196132 80 54 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_114.v common 6.71 vpr 65.04 MiB -1 -1 0.15 20384 1 0.03 -1 -1 33704 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 32 32 290 244 1 172 75 17 17 289 -1 unnamed_device 26.5 MiB 0.81 734 11609 4434 6017 1158 65.0 MiB 0.08 0.00 3.13712 -100.014 -3.13712 3.13712 1.03 0.000416159 0.000361679 0.0329095 0.0298837 46 2169 29 6.99608e+06 161872 828058. 2865.25 2.39 0.124766 0.10965 28066 200906 -1 1502 19 1192 1778 121780 30133 3.30556 3.30556 -118.749 -3.30556 0 0 1.01997e+06 3529.29 0.42 0.06 0.18 -1 -1 0.42 0.0207567 0.0184748 72 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_115.v common 7.64 vpr 64.86 MiB -1 -1 0.16 20200 1 0.03 -1 -1 33440 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 32 32 318 257 1 191 78 17 17 289 -1 unnamed_device 26.3 MiB 1.67 730 11200 4643 6059 498 64.9 MiB 0.09 0.00 3.36978 -102.448 -3.36978 3.36978 1.00 0.000482752 0.000441558 0.0349629 0.0319884 48 2215 27 6.99608e+06 206020 865456. 2994.66 2.42 0.15373 0.135298 28354 207349 -1 1871 22 1641 2277 195246 51757 4.14566 4.14566 -135.869 -4.14566 0 0 1.05005e+06 3633.38 0.43 0.08 0.21 -1 -1 0.43 0.0248093 0.0220901 79 27 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_116.v common 16.82 vpr 65.21 MiB -1 -1 0.16 20308 1 0.03 -1 -1 33664 -1 -1 18 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 29 32 324 268 1 195 79 17 17 289 -1 unnamed_device 26.8 MiB 1.69 818 9712 3543 4628 1541 65.2 MiB 0.08 0.00 2.89747 -87.6659 -2.89747 2.89747 1.04 0.000478671 0.000438609 0.0307755 0.0282263 40 2845 36 6.99608e+06 264882 706193. 2443.58 11.58 0.320887 0.282938 26914 176310 -1 2216 24 1716 2414 239263 56587 4.42221 4.42221 -135.124 -4.42221 0 0 926341. 3205.33 0.39 0.09 0.17 -1 -1 0.39 0.0297865 0.0266188 88 49 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_117.v common 9.97 vpr 65.37 MiB -1 -1 0.18 20384 1 0.03 -1 -1 33608 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66936 32 32 393 312 1 235 81 17 17 289 -1 unnamed_device 26.8 MiB 1.70 1179 12506 4345 6140 2021 65.4 MiB 0.11 0.00 4.35209 -140.414 -4.35209 4.35209 1.00 0.000541561 0.000494345 0.0412931 0.0376704 38 4395 50 6.99608e+06 250167 678818. 2348.85 4.77 0.176176 0.1545 26626 170182 -1 2996 24 2517 3737 327811 67021 5.6598 5.6598 -192.378 -5.6598 0 0 902133. 3121.57 0.34 0.11 0.17 -1 -1 0.34 0.0308349 0.027299 105 62 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_118.v common 7.67 vpr 64.55 MiB -1 -1 0.13 20132 1 0.03 -1 -1 33688 -1 -1 13 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 31 32 229 197 1 137 76 17 17 289 -1 unnamed_device 26.1 MiB 0.92 515 10796 4505 5832 459 64.6 MiB 0.07 0.00 2.70223 -72.5255 -2.70223 2.70223 0.99 0.000340655 0.000308891 0.0255376 0.0232434 38 2055 39 6.99608e+06 191304 678818. 2348.85 3.53 0.129703 0.113306 26626 170182 -1 1334 20 1083 1723 127321 30105 2.79127 2.79127 -98.1378 -2.79127 0 0 902133. 3121.57 0.35 0.05 0.15 -1 -1 0.35 0.0171647 0.0151533 54 -1 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_119.v common 23.88 vpr 65.61 MiB -1 -1 0.17 20408 1 0.03 -1 -1 33780 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67188 32 32 412 334 1 258 84 17 17 289 -1 unnamed_device 27.2 MiB 3.17 1193 14907 5421 6863 2623 65.6 MiB 0.13 0.00 3.87123 -134.568 -3.87123 3.87123 0.98 0.000605356 0.00055167 0.049104 0.0447762 40 3912 36 6.99608e+06 294314 706193. 2443.58 17.17 0.345201 0.30172 26914 176310 -1 3107 21 2588 3298 368878 75478 5.7952 5.7952 -192.878 -5.7952 0 0 926341. 3205.33 0.36 0.12 0.18 -1 -1 0.36 0.0312545 0.0280483 116 87 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_120.v common 7.20 vpr 65.50 MiB -1 -1 0.16 20412 1 0.03 -1 -1 33680 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67076 32 32 376 318 1 253 80 17 17 289 -1 unnamed_device 26.9 MiB 0.98 1232 14184 4360 8265 1559 65.5 MiB 0.11 0.00 3.58352 -134.543 -3.58352 3.58352 0.97 0.000526383 0.000480928 0.0454992 0.041494 44 3325 39 6.99608e+06 235451 787024. 2723.27 2.67 0.156347 0.137362 27778 195446 -1 2671 23 2829 3575 322537 62397 4.45595 4.45595 -169.397 -4.45595 0 0 997811. 3452.63 0.43 0.11 0.19 -1 -1 0.43 0.0312159 0.027966 110 93 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_121.v common 10.51 vpr 65.36 MiB -1 -1 0.16 20732 1 0.03 -1 -1 33876 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66928 32 32 360 293 1 219 79 17 17 289 -1 unnamed_device 26.9 MiB 1.57 918 10557 4140 5242 1175 65.4 MiB 0.09 0.00 3.04477 -99.9251 -3.04477 3.04477 1.00 0.000524466 0.000475745 0.0353961 0.0323522 44 2856 37 6.99608e+06 220735 787024. 2723.27 5.40 0.262304 0.229448 27778 195446 -1 2061 21 1566 2113 216603 60774 3.22121 3.22121 -119.163 -3.22121 0 0 997811. 3452.63 0.39 0.09 0.19 -1 -1 0.39 0.0267245 0.023749 94 57 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_122.v common 27.37 vpr 65.39 MiB -1 -1 0.17 20396 1 0.03 -1 -1 33768 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66956 32 32 396 299 1 228 79 17 17 289 -1 unnamed_device 26.8 MiB 1.06 1051 14444 6185 7899 360 65.4 MiB 0.13 0.00 4.77898 -139.772 -4.77898 4.77898 1.03 0.000546178 0.000495383 0.0521844 0.0477568 44 3417 38 6.99608e+06 220735 787024. 2723.27 22.66 0.357072 0.313316 27778 195446 -1 2542 20 2171 3325 276687 58025 4.88021 4.88021 -161.079 -4.88021 0 0 997811. 3452.63 0.41 0.10 0.19 -1 -1 0.41 0.0299311 0.0268854 98 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_123.v common 6.39 vpr 64.70 MiB -1 -1 0.15 20560 1 0.03 -1 -1 33860 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66252 30 32 224 207 1 132 74 17 17 289 -1 unnamed_device 26.2 MiB 0.74 521 10924 4716 5844 364 64.7 MiB 0.07 0.00 2.28455 -80.8169 -2.28455 2.28455 1.01 0.000377776 0.000347487 0.0269614 0.0247008 36 1638 38 6.99608e+06 176588 648988. 2245.63 2.35 0.124407 0.108697 26050 158493 -1 1382 18 827 1037 104817 22915 2.32012 2.32012 -95.5991 -2.32012 0 0 828058. 2865.25 0.34 0.05 0.15 -1 -1 0.34 0.0160314 0.0142525 53 29 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_124.v common 9.36 vpr 65.04 MiB -1 -1 0.16 20156 1 0.03 -1 -1 33860 -1 -1 14 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 30 32 286 239 1 157 76 17 17 289 -1 unnamed_device 26.5 MiB 3.98 573 11916 4017 5855 2044 65.0 MiB 0.08 0.00 3.02532 -92.758 -3.02532 3.02532 1.02 0.000474443 0.000437083 0.0353227 0.0323734 40 1499 23 6.99608e+06 206020 706193. 2443.58 1.94 0.143383 0.126337 26914 176310 -1 1357 23 1267 1848 134719 34200 3.58217 3.58217 -115.139 -3.58217 0 0 926341. 3205.33 0.37 0.07 0.17 -1 -1 0.37 0.0237939 0.0211078 68 29 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_125.v common 7.51 vpr 65.04 MiB -1 -1 0.13 20276 1 0.03 -1 -1 33876 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 32 32 296 247 1 182 81 17 17 289 -1 unnamed_device 26.5 MiB 0.60 833 11631 4811 6474 346 65.0 MiB 0.08 0.00 3.05994 -98.063 -3.05994 3.05994 0.97 0.000429996 0.000392458 0.030629 0.0278576 40 2554 31 6.99608e+06 250167 706193. 2443.58 3.57 0.149155 0.130853 26914 176310 -1 2249 25 1745 2707 365040 107327 3.53572 3.53572 -132.084 -3.53572 0 0 926341. 3205.33 0.37 0.12 0.16 -1 -1 0.37 0.0263896 0.0234496 78 31 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_126.v common 7.51 vpr 64.58 MiB -1 -1 0.14 20280 1 0.03 -1 -1 33668 -1 -1 16 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 25 32 216 194 1 136 73 17 17 289 -1 unnamed_device 26.0 MiB 1.17 493 7825 3175 3963 687 64.6 MiB 0.05 0.00 2.77723 -63.8343 -2.77723 2.77723 1.00 0.000360202 0.000329631 0.0195891 0.0179562 38 1724 44 6.99608e+06 235451 678818. 2348.85 3.06 0.115698 0.100464 26626 170182 -1 1187 19 833 1136 80027 19601 2.82067 2.82067 -79.8288 -2.82067 0 0 902133. 3121.57 0.36 0.04 0.17 -1 -1 0.36 0.0157405 0.0139418 59 19 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_127.v common 12.66 vpr 65.54 MiB -1 -1 0.16 20364 1 0.03 -1 -1 33980 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67108 32 32 376 307 1 234 81 17 17 289 -1 unnamed_device 26.9 MiB 3.37 1233 8306 3267 4753 286 65.5 MiB 0.08 0.00 3.12752 -109.156 -3.12752 3.12752 0.97 0.000544857 0.000493967 0.0282546 0.0257323 44 3170 26 6.99608e+06 250167 787024. 2723.27 5.82 0.253032 0.220717 27778 195446 -1 2525 24 2055 3060 220783 45534 3.61461 3.61461 -129.736 -3.61461 0 0 997811. 3452.63 0.40 0.09 0.19 -1 -1 0.40 0.031416 0.0279344 103 69 -1 -1 -1 -1 + fixed_k6_frac_2uripple_N8_22nm.xml mult_128.v common 9.19 vpr 65.66 MiB -1 -1 0.18 20628 1 0.03 -1 -1 33996 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67240 31 32 409 331 1 258 82 17 17 289 -1 unnamed_device 27.1 MiB 2.67 1169 15568 5847 7166 2555 65.7 MiB 0.13 0.00 3.58081 -120.268 -3.58081 3.58081 0.98 0.000549455 0.000500377 0.0517376 0.0472328 46 3331 32 6.99608e+06 279598 828058. 2865.25 2.94 0.199003 0.175065 28066 200906 -1 2352 21 2008 2771 203817 45202 4.45426 4.45426 -156.93 -4.45426 0 0 1.01997e+06 3529.29 0.41 0.08 0.20 -1 -1 0.41 0.0294837 0.0263741 117 86 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_001.v common 8.30 vpr 64.77 MiB -1 -1 0.24 20788 14 0.32 -1 -1 37000 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 277 309 1 203 83 17 17 289 -1 unnamed_device 26.4 MiB 2.04 1308 12503 3439 7458 1606 64.8 MiB 0.11 0.00 6.81046 -148.448 -6.81046 6.81046 1.01 0.000651357 0.00059094 0.0495219 0.0450818 44 3034 22 6.79088e+06 255968 787024. 2723.27 2.28 0.188059 0.168052 27118 194962 -1 2554 17 1214 3427 181682 40837 6.97496 6.97496 -161.221 -6.97496 0 0 997811. 3452.63 0.42 0.08 0.19 -1 -1 0.42 0.03431 0.0312343 130 182 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_002.v common 10.04 vpr 64.93 MiB -1 -1 0.26 20672 14 0.38 -1 -1 36192 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 30 32 272 304 1 194 81 17 17 289 -1 unnamed_device 26.5 MiB 2.80 987 12856 4258 6017 2581 64.9 MiB 0.11 0.00 6.5228 -130.939 -6.5228 6.5228 1.01 0.000628609 0.000550916 0.0505093 0.0457742 38 3179 27 6.79088e+06 255968 678818. 2348.85 3.33 0.209559 0.184351 25966 169698 -1 2214 18 1210 3270 155011 37882 6.90983 6.90983 -151.006 -6.90983 0 0 902133. 3121.57 0.35 0.07 0.17 -1 -1 0.35 0.032699 0.0296597 125 181 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_003.v common 23.74 vpr 64.63 MiB -1 -1 0.21 20288 11 0.28 -1 -1 36556 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 32 32 280 312 1 193 83 17 17 289 -1 unnamed_device 26.2 MiB 3.96 1215 9623 2464 6253 906 64.6 MiB 0.09 0.00 5.81004 -125.511 -5.81004 5.81004 1.00 0.000642485 0.000583783 0.038196 0.0347176 36 3566 42 6.79088e+06 255968 648988. 2245.63 16.04 0.348712 0.305918 25390 158009 -1 2925 20 1456 4577 286310 60723 6.24054 6.24054 -147.989 -6.24054 0 0 828058. 2865.25 0.34 0.11 0.15 -1 -1 0.34 0.0363491 0.0328217 130 185 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_004.v common 8.65 vpr 64.64 MiB -1 -1 0.22 20836 12 0.40 -1 -1 36272 -1 -1 24 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 29 32 275 307 1 202 85 17 17 289 -1 unnamed_device 26.3 MiB 1.35 1205 4735 902 3492 341 64.6 MiB 0.05 0.00 6.04387 -121.809 -6.04387 6.04387 1.02 0.000663833 0.000599134 0.021023 0.0192625 38 2992 41 6.79088e+06 323328 678818. 2348.85 3.38 0.22937 0.20346 25966 169698 -1 2467 18 1224 3545 179654 40558 6.36938 6.36938 -138.239 -6.36938 0 0 902133. 3121.57 0.37 0.08 0.16 -1 -1 0.37 0.0345212 0.0312679 136 186 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_005.v common 11.36 vpr 65.12 MiB -1 -1 0.23 20772 13 0.33 -1 -1 36580 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 32 32 302 334 1 234 86 17 17 289 -1 unnamed_device 26.6 MiB 2.09 1376 7457 1622 5300 535 65.1 MiB 0.08 0.00 6.88531 -145.593 -6.88531 6.88531 0.97 0.000686706 0.000623295 0.0316366 0.0287917 34 4066 35 6.79088e+06 296384 618332. 2139.56 5.51 0.294265 0.258415 25102 150614 -1 3534 18 1651 4143 273543 61108 7.13591 7.13591 -172.788 -7.13591 0 0 787024. 2723.27 0.32 0.10 0.15 -1 -1 0.32 0.0363449 0.0330595 152 207 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_006.v common 10.15 vpr 65.03 MiB -1 -1 0.24 20892 13 0.31 -1 -1 36768 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 32 32 292 324 1 210 83 17 17 289 -1 unnamed_device 26.6 MiB 1.98 1386 10163 2383 6165 1615 65.0 MiB 0.10 0.00 6.20837 -131.908 -6.20837 6.20837 1.00 0.000673987 0.00060691 0.0424525 0.038489 38 3820 29 6.79088e+06 255968 678818. 2348.85 4.30 0.215525 0.18982 25966 169698 -1 3054 22 1672 5204 288856 61947 6.67037 6.67037 -153.608 -6.67037 0 0 902133. 3121.57 0.37 0.11 0.16 -1 -1 0.37 0.0397155 0.0357835 137 197 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_007.v common 6.59 vpr 64.36 MiB -1 -1 0.20 20772 12 0.25 -1 -1 36480 -1 -1 21 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65900 27 32 229 261 1 168 80 17 17 289 -1 unnamed_device 25.9 MiB 1.69 872 7820 1817 5275 728 64.4 MiB 0.07 0.00 5.64903 -104.094 -5.64903 5.64903 1.03 0.000570755 0.000523019 0.028935 0.0264786 30 2303 41 6.79088e+06 282912 556674. 1926.21 1.26 0.143704 0.12778 24526 138013 -1 2062 19 1102 2526 132622 31531 5.78203 5.78203 -120.077 -5.78203 0 0 706193. 2443.58 0.31 0.07 0.13 -1 -1 0.31 0.0300052 0.0270601 106 144 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_008.v common 11.27 vpr 64.57 MiB -1 -1 0.19 20492 12 0.22 -1 -1 36604 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66124 31 32 229 261 1 188 80 17 17 289 -1 unnamed_device 26.1 MiB 3.31 1125 12980 4524 6312 2144 64.6 MiB 0.10 0.00 5.27734 -112.121 -5.27734 5.27734 1.00 0.000498039 0.000452836 0.0409572 0.0370977 44 2692 18 6.79088e+06 229024 787024. 2723.27 4.31 0.22387 0.196517 27118 194962 -1 2228 14 1013 2542 138599 31404 5.73934 5.73934 -125.968 -5.73934 0 0 997811. 3452.63 0.40 0.06 0.18 -1 -1 0.40 0.0225023 0.0204564 106 136 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_009.v common 12.30 vpr 64.27 MiB -1 -1 0.21 20728 12 0.21 -1 -1 36280 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65816 31 32 235 267 1 194 83 17 17 289 -1 unnamed_device 25.8 MiB 3.65 1174 6023 1348 4455 220 64.3 MiB 0.06 0.00 5.75058 -120.671 -5.75058 5.75058 1.02 0.000548202 0.000500397 0.0224968 0.0205353 44 2963 27 6.79088e+06 269440 787024. 2723.27 4.92 0.208742 0.18184 27118 194962 -1 2324 16 1097 2880 161346 36081 6.00118 6.00118 -137.422 -6.00118 0 0 997811. 3452.63 0.40 0.07 0.19 -1 -1 0.40 0.0242976 0.0220151 113 142 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_010.v common 10.20 vpr 64.62 MiB -1 -1 0.20 20444 13 0.23 -1 -1 36540 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 32 32 250 282 1 182 79 17 17 289 -1 unnamed_device 26.1 MiB 2.54 1155 8698 2213 5493 992 64.6 MiB 0.08 0.00 6.20493 -139.642 -6.20493 6.20493 0.97 0.000576917 0.000520863 0.0326315 0.0296988 38 3057 21 6.79088e+06 202080 678818. 2348.85 4.06 0.174605 0.153532 25966 169698 -1 2425 16 1031 2516 146874 32481 6.49473 6.49473 -160.278 -6.49473 0 0 902133. 3121.57 0.35 0.07 0.17 -1 -1 0.35 0.027237 0.0247464 106 155 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_011.v common 7.72 vpr 64.42 MiB -1 -1 0.21 20492 12 0.23 -1 -1 36392 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65968 30 32 216 248 1 161 79 17 17 289 -1 unnamed_device 26.0 MiB 2.09 994 11909 3483 6895 1531 64.4 MiB 0.09 0.00 5.77859 -122.735 -5.77859 5.77859 0.99 0.000523807 0.000468249 0.0388676 0.0353041 34 2425 39 6.79088e+06 229024 618332. 2139.56 2.06 0.177018 0.155103 25102 150614 -1 2036 16 824 1985 111477 25584 5.99348 5.99348 -137.806 -5.99348 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0236563 0.0214008 96 125 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_012.v common 10.12 vpr 64.54 MiB -1 -1 0.20 20476 12 0.19 -1 -1 36500 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66084 32 32 236 268 1 171 81 17 17 289 -1 unnamed_device 26.1 MiB 2.83 938 8306 2004 4749 1553 64.5 MiB 0.07 0.00 5.18431 -123.522 -5.18431 5.18431 1.02 0.000552276 0.00049207 0.0299333 0.0271012 38 2758 26 6.79088e+06 229024 678818. 2348.85 3.66 0.190283 0.16867 25966 169698 -1 2047 15 956 2610 139799 32017 5.43491 5.43491 -136.686 -5.43491 0 0 902133. 3121.57 0.37 0.06 0.16 -1 -1 0.37 0.0256566 0.023291 101 141 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_013.v common 12.22 vpr 64.93 MiB -1 -1 0.24 20772 13 0.31 -1 -1 36492 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 32 32 283 315 1 215 84 17 17 289 -1 unnamed_device 26.5 MiB 2.30 1281 8502 2309 5272 921 64.9 MiB 0.08 0.00 6.81035 -142.418 -6.81035 6.81035 0.98 0.000648413 0.000590246 0.0339572 0.0308834 36 3611 44 6.79088e+06 269440 648988. 2245.63 6.17 0.222857 0.196117 25390 158009 -1 3021 18 1347 3463 216991 47000 6.81035 6.81035 -159.491 -6.81035 0 0 828058. 2865.25 0.34 0.09 0.15 -1 -1 0.34 0.0335015 0.0303765 134 188 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_014.v common 10.92 vpr 64.94 MiB -1 -1 0.22 20856 14 0.39 -1 -1 36440 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 303 335 1 230 86 17 17 289 -1 unnamed_device 26.4 MiB 2.33 1358 9725 2367 6684 674 64.9 MiB 0.10 0.00 7.18641 -152.563 -7.18641 7.18641 1.00 0.000731323 0.000663889 0.0413588 0.0375856 38 3252 21 6.79088e+06 296384 678818. 2348.85 4.66 0.305363 0.267498 25966 169698 -1 2831 18 1364 3505 173919 40969 7.43701 7.43701 -170.121 -7.43701 0 0 902133. 3121.57 0.34 0.08 0.17 -1 -1 0.34 0.0331948 0.0300123 151 208 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_015.v common 9.75 vpr 64.46 MiB -1 -1 0.19 20152 11 0.21 -1 -1 36444 -1 -1 21 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 29 32 225 257 1 176 82 17 17 289 -1 unnamed_device 26.0 MiB 2.91 1008 11474 3962 5684 1828 64.5 MiB 0.09 0.00 5.53913 -115.559 -5.53913 5.53913 1.03 0.000532006 0.000484736 0.0382969 0.0349828 34 3098 49 6.79088e+06 282912 618332. 2139.56 3.21 0.190873 0.16968 25102 150614 -1 2418 20 1167 2819 173944 39806 6.04033 6.04033 -137.111 -6.04033 0 0 787024. 2723.27 0.33 0.08 0.15 -1 -1 0.33 0.0302359 0.0272862 106 136 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_016.v common 8.47 vpr 65.06 MiB -1 -1 0.24 21060 12 0.35 -1 -1 36512 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 32 32 301 333 1 221 88 17 17 289 -1 unnamed_device 26.5 MiB 1.71 1184 13933 4215 7193 2525 65.1 MiB 0.13 0.00 6.12997 -131.562 -6.12997 6.12997 0.98 0.000697977 0.000628737 0.0535184 0.0484728 38 3830 38 6.79088e+06 323328 678818. 2348.85 2.86 0.205279 0.180664 25966 169698 -1 2840 19 1676 5153 259760 60612 6.29093 6.29093 -151.006 -6.29093 0 0 902133. 3121.57 0.37 0.10 0.17 -1 -1 0.37 0.0362821 0.0325921 145 206 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_017.v common 11.78 vpr 64.83 MiB -1 -1 0.21 20796 14 0.29 -1 -1 36364 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 32 32 277 309 1 210 83 17 17 289 -1 unnamed_device 26.4 MiB 2.68 1398 10163 2620 6464 1079 64.8 MiB 0.09 0.00 6.59895 -143.217 -6.59895 6.59895 0.98 0.000584534 0.000521622 0.0389025 0.0351101 44 3631 22 6.79088e+06 255968 787024. 2723.27 5.31 0.277765 0.244722 27118 194962 -1 2957 15 1298 3711 228398 48859 6.72425 6.72425 -156.431 -6.72425 0 0 997811. 3452.63 0.41 0.08 0.18 -1 -1 0.41 0.029061 0.0264067 126 182 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_018.v common 13.36 vpr 64.57 MiB -1 -1 0.21 20456 12 0.20 -1 -1 36072 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 32 32 227 259 1 172 79 17 17 289 -1 unnamed_device 26.1 MiB 2.11 1008 12247 3930 6656 1661 64.6 MiB 0.10 0.00 5.84017 -132.888 -5.84017 5.84017 0.99 0.000550179 0.000500953 0.0417244 0.0379451 30 2634 17 6.79088e+06 202080 556674. 1926.21 7.75 0.208082 0.182689 24526 138013 -1 2222 15 927 2388 130509 29394 5.84017 5.84017 -147.149 -5.84017 0 0 706193. 2443.58 0.28 0.06 0.13 -1 -1 0.28 0.0228818 0.0206737 105 132 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_019.v common 9.94 vpr 63.79 MiB -1 -1 0.18 20220 10 0.12 -1 -1 36736 -1 -1 13 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65320 30 32 175 207 1 133 75 17 17 289 -1 unnamed_device 25.4 MiB 2.47 724 8449 2861 4213 1375 63.8 MiB 0.05 0.00 4.17056 -100.044 -4.17056 4.17056 1.01 0.000341492 0.000310316 0.0219084 0.019922 36 1952 16 6.79088e+06 175136 648988. 2245.63 4.07 0.143234 0.125742 25390 158009 -1 1555 15 624 1429 86429 19888 4.29586 4.29586 -112.284 -4.29586 0 0 828058. 2865.25 0.33 0.04 0.15 -1 -1 0.33 0.0169 0.0152191 66 84 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_020.v common 8.71 vpr 64.38 MiB -1 -1 0.21 20404 13 0.23 -1 -1 35776 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 31 32 231 263 1 186 81 17 17 289 -1 unnamed_device 25.9 MiB 2.64 989 12156 3421 6632 2103 64.4 MiB 0.09 0.00 6.04392 -128.115 -6.04392 6.04392 0.96 0.000544723 0.000492752 0.0404751 0.0368398 34 2943 40 6.79088e+06 242496 618332. 2139.56 2.53 0.157867 0.138841 25102 150614 -1 2132 15 1019 2296 129386 31111 6.67042 6.67042 -147.877 -6.67042 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0253798 0.0230781 107 138 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_021.v common 11.15 vpr 65.11 MiB -1 -1 0.23 20760 13 0.35 -1 -1 36300 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 32 32 304 336 1 224 85 17 17 289 -1 unnamed_device 26.6 MiB 2.27 1271 11989 3165 6783 2041 65.1 MiB 0.11 0.00 6.54158 -141.689 -6.54158 6.54158 0.99 0.000676545 0.000612744 0.0488897 0.0443808 38 3489 22 6.79088e+06 282912 678818. 2348.85 4.97 0.224308 0.19844 25966 169698 -1 2893 18 1564 4354 224213 50796 6.75652 6.75652 -156.915 -6.75652 0 0 902133. 3121.57 0.34 0.09 0.17 -1 -1 0.34 0.0354897 0.032077 143 209 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_022.v common 11.79 vpr 64.85 MiB -1 -1 0.24 20716 13 0.36 -1 -1 36524 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 288 320 1 216 85 17 17 289 -1 unnamed_device 26.4 MiB 2.78 1349 13291 3884 7004 2403 64.8 MiB 0.12 0.00 6.09082 -137.698 -6.09082 6.09082 0.99 0.000659593 0.000588612 0.0526053 0.0476995 44 3532 24 6.79088e+06 282912 787024. 2723.27 5.01 0.298239 0.263954 27118 194962 -1 2767 17 1372 4063 202356 46372 6.34142 6.34142 -154.084 -6.34142 0 0 997811. 3452.63 0.40 0.08 0.19 -1 -1 0.40 0.0330616 0.0299446 141 193 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_023.v common 10.38 vpr 63.82 MiB -1 -1 0.17 20180 9 0.11 -1 -1 35836 -1 -1 18 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65352 26 32 152 184 1 122 76 17 17 289 -1 unnamed_device 25.4 MiB 1.41 709 10956 3561 6029 1366 63.8 MiB 0.06 0.00 3.8527 -78.9118 -3.8527 3.8527 1.02 0.000312435 0.000282364 0.0251405 0.0228676 28 1837 21 6.79088e+06 242496 531479. 1839.03 5.65 0.136671 0.119216 23950 126010 -1 1588 16 635 1456 97604 22084 4.2286 4.2286 -94.8026 -4.2286 0 0 648988. 2245.63 0.27 0.04 0.11 -1 -1 0.27 0.0149766 0.0133619 67 69 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_024.v common 11.55 vpr 65.00 MiB -1 -1 0.21 20464 13 0.35 -1 -1 36352 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 32 32 287 319 1 214 87 17 17 289 -1 unnamed_device 26.6 MiB 2.36 1233 8535 2116 6136 283 65.0 MiB 0.09 0.00 6.87423 -140.611 -6.87423 6.87423 0.99 0.00065773 0.00059238 0.034476 0.03114 38 3687 23 6.79088e+06 309856 678818. 2348.85 5.36 0.193945 0.170069 25966 169698 -1 2676 17 1406 3871 210855 47458 7.12483 7.12483 -157.565 -7.12483 0 0 902133. 3121.57 0.35 0.08 0.17 -1 -1 0.35 0.0294301 0.0266273 136 192 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_025.v common 7.64 vpr 63.96 MiB -1 -1 0.15 19916 8 0.11 -1 -1 36400 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65500 32 32 154 186 1 126 75 17 17 289 -1 unnamed_device 25.6 MiB 2.41 579 9397 2173 7053 171 64.0 MiB 0.06 0.00 3.54052 -79.0018 -3.54052 3.54052 1.03 0.000378912 0.000340296 0.0237775 0.0216724 34 1984 33 6.79088e+06 148192 618332. 2139.56 1.88 0.11321 0.0987032 25102 150614 -1 1491 15 653 1413 82868 20970 3.79112 3.79112 -97.0321 -3.79112 0 0 787024. 2723.27 0.31 0.04 0.15 -1 -1 0.31 0.0141467 0.012666 60 59 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_026.v common 24.18 vpr 64.66 MiB -1 -1 0.21 20500 15 0.29 -1 -1 36668 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66212 32 32 254 286 1 202 82 17 17 289 -1 unnamed_device 26.3 MiB 2.73 1148 14322 4374 7798 2150 64.7 MiB 0.12 0.00 7.39781 -147.331 -7.39781 7.39781 1.01 0.000603205 0.000543738 0.0524942 0.0475696 36 3661 28 6.79088e+06 242496 648988. 2245.63 17.58 0.330769 0.290652 25390 158009 -1 2926 34 1440 4111 459596 168312 7.52311 7.52311 -168.547 -7.52311 0 0 828058. 2865.25 0.32 0.17 0.15 -1 -1 0.32 0.0466092 0.0415184 121 159 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_027.v common 10.87 vpr 64.90 MiB -1 -1 0.20 20492 13 0.28 -1 -1 36544 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 32 32 260 292 1 195 82 17 17 289 -1 unnamed_device 26.3 MiB 2.29 1208 10050 2840 5062 2148 64.9 MiB 0.09 0.00 5.65334 -125.269 -5.65334 5.65334 1.00 0.000610877 0.000553612 0.0387253 0.0351139 38 3495 41 6.79088e+06 242496 678818. 2348.85 4.85 0.216249 0.190693 25966 169698 -1 2606 19 1262 3578 190618 43070 5.93965 5.93965 -142.933 -5.93965 0 0 902133. 3121.57 0.36 0.08 0.17 -1 -1 0.36 0.0306473 0.0276536 117 165 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_028.v common 9.97 vpr 64.85 MiB -1 -1 0.23 20808 13 0.35 -1 -1 36492 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 279 311 1 202 82 17 17 289 -1 unnamed_device 26.4 MiB 1.95 1115 8270 2033 5478 759 64.8 MiB 0.08 0.00 6.62352 -137.043 -6.62352 6.62352 1.02 0.000673718 0.000612797 0.035525 0.0324421 44 3299 49 6.79088e+06 242496 787024. 2723.27 4.04 0.26976 0.24037 27118 194962 -1 2379 19 1283 3685 205255 48915 6.74882 6.74882 -153.681 -6.74882 0 0 997811. 3452.63 0.42 0.09 0.19 -1 -1 0.42 0.0356041 0.0322269 136 184 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_029.v common 9.93 vpr 64.45 MiB -1 -1 0.20 20336 12 0.20 -1 -1 36324 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66000 32 32 238 270 1 186 80 17 17 289 -1 unnamed_device 26.0 MiB 2.41 1022 10916 2904 6051 1961 64.5 MiB 0.09 0.00 5.73944 -127.146 -5.73944 5.73944 0.99 0.000534296 0.000484971 0.0371168 0.0337806 36 2902 49 6.79088e+06 215552 648988. 2245.63 3.94 0.201364 0.176531 25390 158009 -1 2334 17 1078 2563 188295 48367 5.90389 5.90389 -146.042 -5.90389 0 0 828058. 2865.25 0.33 0.08 0.16 -1 -1 0.33 0.0263607 0.0238052 103 143 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_030.v common 9.35 vpr 64.33 MiB -1 -1 0.20 20580 11 0.19 -1 -1 36560 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65876 30 32 213 245 1 164 80 17 17 289 -1 unnamed_device 25.9 MiB 2.27 1022 10056 2935 5541 1580 64.3 MiB 0.07 0.00 5.32424 -117.518 -5.32424 5.32424 1.00 0.000431319 0.000388716 0.0300063 0.0271617 34 3036 34 6.79088e+06 242496 618332. 2139.56 3.54 0.161352 0.14188 25102 150614 -1 2310 16 991 2436 147687 33799 5.57484 5.57484 -134.325 -5.57484 0 0 787024. 2723.27 0.32 0.06 0.14 -1 -1 0.32 0.0224545 0.0202533 95 122 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_031.v common 10.09 vpr 64.26 MiB -1 -1 0.21 20676 11 0.22 -1 -1 36272 -1 -1 21 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65804 28 32 227 259 1 171 81 17 17 289 -1 unnamed_device 25.9 MiB 1.93 957 13381 4392 7027 1962 64.3 MiB 0.10 0.00 5.74283 -111.724 -5.74283 5.74283 0.97 0.000513704 0.00045979 0.0430107 0.038994 38 2252 18 6.79088e+06 282912 678818. 2348.85 4.58 0.243013 0.211615 25966 169698 -1 1952 15 985 2598 133735 30715 5.86813 5.86813 -124.204 -5.86813 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.0221571 0.0200096 109 140 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_032.v common 9.56 vpr 64.66 MiB -1 -1 0.19 20356 12 0.25 -1 -1 36428 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66212 32 32 274 306 1 209 81 17 17 289 -1 unnamed_device 26.3 MiB 3.09 1136 9531 3089 4626 1816 64.7 MiB 0.09 0.00 5.73939 -133.709 -5.73939 5.73939 0.98 0.000596192 0.000539836 0.0369857 0.0336299 44 2987 50 6.79088e+06 229024 787024. 2723.27 2.72 0.192519 0.169697 27118 194962 -1 2401 15 1302 3134 164468 38393 6.07958 6.07958 -153.221 -6.07958 0 0 997811. 3452.63 0.41 0.07 0.19 -1 -1 0.41 0.028052 0.0255696 119 179 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_033.v common 9.99 vpr 64.43 MiB -1 -1 0.20 20504 12 0.20 -1 -1 36204 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65980 31 32 237 269 1 176 80 17 17 289 -1 unnamed_device 26.0 MiB 2.76 1117 6788 1655 4473 660 64.4 MiB 0.06 0.00 5.70363 -121.279 -5.70363 5.70363 0.99 0.000549517 0.000502894 0.0247192 0.0225805 34 3076 35 6.79088e+06 229024 618332. 2139.56 3.69 0.171875 0.150814 25102 150614 -1 2501 19 1254 3213 207472 45494 6.33899 6.33899 -144.429 -6.33899 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0263333 0.02356 101 144 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_034.v common 9.91 vpr 64.31 MiB -1 -1 0.21 20456 10 0.17 -1 -1 36636 -1 -1 17 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65856 29 32 220 252 1 166 78 17 17 289 -1 unnamed_device 25.9 MiB 1.86 1007 7050 1619 5025 406 64.3 MiB 0.06 0.00 5.11278 -113.885 -5.11278 5.11278 1.02 0.000515992 0.000465484 0.0255894 0.0232756 38 2478 30 6.79088e+06 229024 678818. 2348.85 4.47 0.210137 0.184108 25966 169698 -1 2077 14 856 2357 121293 27467 5.23808 5.23808 -125.663 -5.23808 0 0 902133. 3121.57 0.37 0.06 0.16 -1 -1 0.37 0.0231481 0.021062 103 131 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_035.v common 24.92 vpr 65.18 MiB -1 -1 0.25 20960 13 0.37 -1 -1 36392 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 32 32 315 347 1 232 85 17 17 289 -1 unnamed_device 26.6 MiB 2.29 1291 13849 4144 7035 2670 65.2 MiB 0.13 0.00 6.7635 -141.207 -6.7635 6.7635 1.01 0.000761877 0.000693109 0.0599185 0.0544173 40 3213 33 6.79088e+06 282912 706193. 2443.58 18.51 0.513236 0.454669 26254 175826 -1 3132 30 1790 5889 518309 156305 6.92451 6.92451 -158.258 -6.92451 0 0 926341. 3205.33 0.37 0.20 0.17 -1 -1 0.37 0.0586124 0.052982 149 220 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_036.v common 9.75 vpr 64.87 MiB -1 -1 0.22 21332 14 0.38 -1 -1 36412 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 32 32 282 314 1 225 82 17 17 289 -1 unnamed_device 26.4 MiB 2.60 1346 5956 1162 4491 303 64.9 MiB 0.06 0.00 6.74118 -147.766 -6.74118 6.74118 0.98 0.000608951 0.000549972 0.025466 0.0231615 36 4082 38 6.79088e+06 242496 648988. 2245.63 3.31 0.206467 0.183258 25390 158009 -1 3200 29 1613 4691 429186 152327 7.11359 7.11359 -172.148 -7.11359 0 0 828058. 2865.25 0.34 0.17 0.15 -1 -1 0.34 0.0478211 0.0428123 136 187 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_037.v common 9.35 vpr 64.43 MiB -1 -1 0.20 20404 12 0.19 -1 -1 36160 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 31 32 241 273 1 173 79 17 17 289 -1 unnamed_device 26.0 MiB 2.63 1110 6670 1695 4386 589 64.4 MiB 0.06 0.00 5.61409 -130.442 -5.61409 5.61409 1.00 0.000533094 0.000475408 0.0246807 0.0224284 34 3073 30 6.79088e+06 215552 618332. 2139.56 3.17 0.156084 0.136651 25102 150614 -1 2384 16 937 2535 174499 37963 6.33018 6.33018 -152.139 -6.33018 0 0 787024. 2723.27 0.34 0.07 0.15 -1 -1 0.34 0.0257215 0.0233168 101 148 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_038.v common 12.40 vpr 64.80 MiB -1 -1 0.24 20824 12 0.34 -1 -1 36568 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 31 32 307 339 1 226 87 17 17 289 -1 unnamed_device 26.3 MiB 2.90 1421 7383 1747 4941 695 64.8 MiB 0.08 0.00 5.84361 -128.46 -5.84361 5.84361 1.03 0.000753052 0.000691235 0.0338481 0.0307873 50 3112 20 6.79088e+06 323328 902133. 3121.57 5.42 0.312317 0.277725 27982 213445 -1 2910 17 1352 4047 234948 50351 6.09421 6.09421 -145.17 -6.09421 0 0 1.08113e+06 3740.92 0.45 0.10 0.21 -1 -1 0.45 0.0378387 0.0344864 146 214 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_039.v common 8.53 vpr 64.96 MiB -1 -1 0.25 21172 14 0.43 -1 -1 36808 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 31 32 293 325 1 209 85 17 17 289 -1 unnamed_device 26.5 MiB 1.66 1348 9757 2851 6010 896 65.0 MiB 0.10 0.00 6.92457 -142.937 -6.92457 6.92457 1.00 0.000714523 0.000641721 0.0412332 0.0375638 36 3369 22 6.79088e+06 296384 648988. 2245.63 2.95 0.207868 0.18332 25390 158009 -1 2882 17 1272 3547 206176 47609 7.39 7.39 -161.944 -7.39 0 0 828058. 2865.25 0.32 0.08 0.15 -1 -1 0.32 0.0319486 0.0288295 142 200 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_040.v common 13.45 vpr 64.93 MiB -1 -1 0.25 21296 13 0.33 -1 -1 36200 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 31 32 276 308 1 215 86 17 17 289 -1 unnamed_device 26.5 MiB 2.50 1258 5000 959 3649 392 64.9 MiB 0.05 0.00 6.93576 -140.519 -6.93576 6.93576 1.00 0.00065335 0.000593176 0.0219295 0.019992 36 3779 42 6.79088e+06 309856 648988. 2245.63 7.09 0.207552 0.18262 25390 158009 -1 2997 31 1394 3638 393269 161744 7.31166 7.31166 -161.111 -7.31166 0 0 828058. 2865.25 0.34 0.16 0.15 -1 -1 0.34 0.0437418 0.0389731 136 183 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_041.v common 9.81 vpr 64.93 MiB -1 -1 0.24 20784 13 0.33 -1 -1 36592 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 31 32 269 301 1 204 84 17 17 289 -1 unnamed_device 26.5 MiB 2.38 1271 12345 3880 6110 2355 64.9 MiB 0.11 0.00 6.59208 -134.695 -6.59208 6.59208 1.00 0.000666758 0.000609363 0.046466 0.0421602 38 3532 29 6.79088e+06 282912 678818. 2348.85 3.56 0.190636 0.16924 25966 169698 -1 2951 17 1283 3669 228984 48541 6.96798 6.96798 -155.056 -6.96798 0 0 902133. 3121.57 0.37 0.09 0.16 -1 -1 0.37 0.032128 0.029179 125 176 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_042.v common 9.59 vpr 64.38 MiB -1 -1 0.20 20440 12 0.23 -1 -1 36564 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65924 32 32 264 296 1 184 80 17 17 289 -1 unnamed_device 25.8 MiB 2.41 1027 12292 4424 5699 2169 64.4 MiB 0.10 0.00 5.64559 -121.396 -5.64559 5.64559 1.00 0.000607508 0.000549223 0.0451747 0.0410824 36 3195 31 6.79088e+06 215552 648988. 2245.63 3.55 0.203509 0.176963 25390 158009 -1 2326 19 1147 3056 176338 41116 5.90389 5.90389 -136.115 -5.90389 0 0 828058. 2865.25 0.32 0.07 0.16 -1 -1 0.32 0.0291685 0.026092 111 169 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_043.v common 12.73 vpr 65.23 MiB -1 -1 0.28 21684 14 0.50 -1 -1 36952 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66792 32 32 324 356 1 241 85 17 17 289 -1 unnamed_device 26.9 MiB 1.42 1602 11617 2988 7134 1495 65.2 MiB 0.13 0.00 6.97147 -147.929 -6.97147 6.97147 1.00 0.000746751 0.00067246 0.0543553 0.0492773 44 4247 49 6.79088e+06 282912 787024. 2723.27 7.10 0.383262 0.338062 27118 194962 -1 3261 18 1514 4453 246100 54423 7.22207 7.22207 -167.197 -7.22207 0 0 997811. 3452.63 0.40 0.10 0.19 -1 -1 0.40 0.0378734 0.0344242 159 229 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_044.v common 13.20 vpr 64.68 MiB -1 -1 0.19 20328 11 0.24 -1 -1 36172 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66236 31 32 249 281 1 186 79 17 17 289 -1 unnamed_device 26.2 MiB 2.77 1123 6501 1465 4777 259 64.7 MiB 0.07 0.00 5.35574 -117.745 -5.35574 5.35574 1.02 0.000588752 0.000536198 0.0276791 0.0251508 36 3370 46 6.79088e+06 215552 648988. 2245.63 6.64 0.221168 0.195752 25390 158009 -1 2804 30 1372 3892 519539 219254 5.60634 5.60634 -136.81 -5.60634 0 0 828058. 2865.25 0.35 0.21 0.15 -1 -1 0.35 0.0490408 0.0442052 112 156 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_045.v common 11.54 vpr 64.96 MiB -1 -1 0.23 20792 13 0.34 -1 -1 36468 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66520 31 32 284 316 1 193 83 17 17 289 -1 unnamed_device 26.5 MiB 2.13 1211 13763 4864 7006 1893 65.0 MiB 0.12 0.00 6.63471 -140.446 -6.63471 6.63471 0.99 0.000678318 0.00061867 0.0565028 0.0513418 36 3276 44 6.79088e+06 269440 648988. 2245.63 5.47 0.27769 0.247312 25390 158009 -1 2764 23 1409 4399 424861 147542 7.59791 7.59791 -159.117 -7.59791 0 0 828058. 2865.25 0.34 0.16 0.15 -1 -1 0.34 0.0436798 0.0394732 137 191 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_046.v common 9.68 vpr 64.99 MiB -1 -1 0.22 21116 12 0.33 -1 -1 36492 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 32 32 303 335 1 212 85 17 17 289 -1 unnamed_device 26.5 MiB 2.32 1189 13663 4685 6789 2189 65.0 MiB 0.12 0.00 5.95428 -128.957 -5.95428 5.95428 0.97 0.000673038 0.000597724 0.0531705 0.0478971 44 3506 43 6.79088e+06 282912 787024. 2723.27 3.49 0.247415 0.217659 27118 194962 -1 2640 16 1259 4120 220704 50577 6.20832 6.20832 -145.112 -6.20832 0 0 997811. 3452.63 0.39 0.09 0.19 -1 -1 0.39 0.0338538 0.0309111 146 208 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_047.v common 11.26 vpr 64.71 MiB -1 -1 0.20 20428 13 0.32 -1 -1 36576 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 32 32 272 304 1 200 86 17 17 289 -1 unnamed_device 26.3 MiB 1.68 1212 5756 1277 4235 244 64.7 MiB 0.06 0.00 6.2722 -135.755 -6.2722 6.2722 1.02 0.000648283 0.000592768 0.0238691 0.021821 34 3451 34 6.79088e+06 296384 618332. 2139.56 5.83 0.264664 0.233053 25102 150614 -1 2798 18 1299 3330 203338 45950 6.6012 6.6012 -156.729 -6.6012 0 0 787024. 2723.27 0.33 0.08 0.15 -1 -1 0.33 0.0327572 0.0296945 131 177 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_048.v common 12.14 vpr 64.59 MiB -1 -1 0.23 20844 13 0.27 -1 -1 36964 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 271 303 1 212 82 17 17 289 -1 unnamed_device 26.2 MiB 3.24 1214 11296 3419 5607 2270 64.6 MiB 0.10 0.00 6.00816 -131.728 -6.00816 6.00816 1.00 0.000614039 0.000556664 0.0431134 0.0391393 36 4364 48 6.79088e+06 242496 648988. 2245.63 5.12 0.217561 0.192145 25390 158009 -1 3048 19 1574 4162 292339 62014 6.63466 6.63466 -155.182 -6.63466 0 0 828058. 2865.25 0.34 0.10 0.16 -1 -1 0.34 0.0319369 0.0286729 124 176 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_049.v common 10.28 vpr 64.79 MiB -1 -1 0.24 20824 12 0.31 -1 -1 36420 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 32 32 288 320 1 218 84 17 17 289 -1 unnamed_device 26.3 MiB 2.50 1416 8319 2136 5392 791 64.8 MiB 0.09 0.00 6.28677 -138.289 -6.28677 6.28677 1.03 0.000712439 0.000638687 0.0354738 0.0322154 38 3704 24 6.79088e+06 269440 678818. 2348.85 3.97 0.209526 0.185427 25966 169698 -1 2859 15 1293 4147 211136 46446 6.53737 6.53737 -155.964 -6.53737 0 0 902133. 3121.57 0.35 0.08 0.16 -1 -1 0.35 0.0286633 0.025984 140 193 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_050.v common 8.59 vpr 65.27 MiB -1 -1 0.25 21236 13 0.37 -1 -1 37056 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 32 32 306 338 1 225 84 17 17 289 -1 unnamed_device 26.7 MiB 1.95 1369 7221 1614 5114 493 65.3 MiB 0.08 0.00 6.63122 -144.8 -6.63122 6.63122 1.00 0.000716846 0.000652662 0.0344675 0.0314017 38 3667 49 6.79088e+06 269440 678818. 2348.85 2.73 0.235638 0.210094 25966 169698 -1 2834 17 1338 3891 197806 45323 6.97141 6.97141 -159.776 -6.97141 0 0 902133. 3121.57 0.36 0.09 0.16 -1 -1 0.36 0.037623 0.0342462 145 211 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_051.v common 10.73 vpr 64.74 MiB -1 -1 0.20 20624 14 0.35 -1 -1 36324 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 32 32 262 294 1 194 84 17 17 289 -1 unnamed_device 26.4 MiB 1.83 1202 14724 4723 8104 1897 64.7 MiB 0.13 0.00 6.71317 -139.764 -6.71317 6.71317 1.00 0.000607904 0.000551937 0.0543441 0.0493979 44 3099 21 6.79088e+06 269440 787024. 2723.27 4.98 0.280532 0.24693 27118 194962 -1 2427 21 1255 3667 188869 42256 7.08906 7.08906 -156.66 -7.08906 0 0 997811. 3452.63 0.40 0.08 0.19 -1 -1 0.40 0.0315624 0.0282911 125 167 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_052.v common 9.12 vpr 64.98 MiB -1 -1 0.22 20528 13 0.32 -1 -1 36484 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66536 32 32 291 323 1 214 85 17 17 289 -1 unnamed_device 26.4 MiB 2.76 1303 12547 3717 6932 1898 65.0 MiB 0.11 0.00 6.51285 -132.31 -6.51285 6.51285 0.97 0.000652839 0.000591573 0.0488827 0.0444056 44 3110 21 6.79088e+06 282912 787024. 2723.27 2.53 0.204927 0.180651 27118 194962 -1 2725 16 1384 3835 194457 44817 6.51285 6.51285 -147.957 -6.51285 0 0 997811. 3452.63 0.39 0.08 0.19 -1 -1 0.39 0.0300762 0.0272955 136 196 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_053.v common 21.05 vpr 65.02 MiB -1 -1 0.25 20664 13 0.35 -1 -1 36520 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 31 32 302 334 1 224 84 17 17 289 -1 unnamed_device 26.5 MiB 2.29 1463 9051 2579 5538 934 65.0 MiB 0.09 0.00 6.58432 -145.283 -6.58432 6.58432 1.01 0.00071417 0.0006535 0.0399223 0.0364309 40 3290 20 6.79088e+06 282912 706193. 2443.58 14.78 0.387124 0.340408 26254 175826 -1 3267 21 1854 5269 345739 74226 7.33612 7.33612 -167.235 -7.33612 0 0 926341. 3205.33 0.35 0.12 0.17 -1 -1 0.35 0.0401889 0.0362803 144 209 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_054.v common 24.66 vpr 65.14 MiB -1 -1 0.22 20796 12 0.36 -1 -1 36612 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66708 32 32 308 340 1 225 85 17 17 289 -1 unnamed_device 26.6 MiB 1.80 1364 12919 3724 7480 1715 65.1 MiB 0.12 0.00 6.73769 -142.342 -6.73769 6.73769 0.97 0.000642677 0.000571695 0.0526732 0.0475994 40 3533 24 6.79088e+06 282912 706193. 2443.58 19.02 0.420082 0.370333 26254 175826 -1 3221 18 1594 4311 290402 63205 7.09312 7.09312 -160.752 -7.09312 0 0 926341. 3205.33 0.37 0.10 0.16 -1 -1 0.37 0.034683 0.0314365 147 213 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_055.v common 7.40 vpr 64.37 MiB -1 -1 0.18 20204 11 0.15 -1 -1 36240 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65912 32 32 216 248 1 160 78 17 17 289 -1 unnamed_device 26.0 MiB 1.56 822 6220 1320 4797 103 64.4 MiB 0.06 0.00 5.15198 -107.843 -5.15198 5.15198 1.00 0.000498796 0.000445135 0.0211748 0.0193142 36 2397 23 6.79088e+06 188608 648988. 2245.63 2.37 0.145528 0.12734 25390 158009 -1 1999 16 941 2278 140351 34332 5.56708 5.56708 -133.286 -5.56708 0 0 828058. 2865.25 0.33 0.06 0.15 -1 -1 0.33 0.0215947 0.019388 91 121 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_056.v common 10.13 vpr 64.61 MiB -1 -1 0.22 20924 13 0.26 -1 -1 36452 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 32 32 254 286 1 197 84 17 17 289 -1 unnamed_device 26.0 MiB 2.23 1244 5940 1302 4273 365 64.6 MiB 0.06 0.00 6.37292 -138.877 -6.37292 6.37292 0.99 0.000595267 0.00053958 0.0241234 0.0219039 36 3132 49 6.79088e+06 269440 648988. 2245.63 4.25 0.20298 0.178297 25390 158009 -1 2641 19 1208 3171 191788 42945 6.62003 6.62003 -157.844 -6.62003 0 0 828058. 2865.25 0.33 0.08 0.15 -1 -1 0.33 0.0283746 0.0253768 118 159 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_057.v common 10.31 vpr 65.21 MiB -1 -1 0.25 21432 14 0.55 -1 -1 36764 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 32 32 338 370 1 251 88 17 17 289 -1 unnamed_device 26.8 MiB 1.61 1472 8083 1852 5981 250 65.2 MiB 0.10 0.00 7.68335 -155.146 -7.68335 7.68335 1.02 0.000841712 0.000766388 0.0409316 0.0372467 46 3914 23 6.79088e+06 323328 828058. 2865.25 4.40 0.266914 0.237781 27406 200422 -1 3198 18 1774 5217 248004 56636 7.93395 7.93395 -171.107 -7.93395 0 0 1.01997e+06 3529.29 0.42 0.11 0.20 -1 -1 0.42 0.0430715 0.0392628 171 243 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_058.v common 11.00 vpr 64.95 MiB -1 -1 0.22 20596 13 0.36 -1 -1 36424 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 32 32 271 303 1 215 85 17 17 289 -1 unnamed_device 26.5 MiB 1.93 1318 8641 2302 5377 962 65.0 MiB 0.08 0.00 6.42331 -142.952 -6.42331 6.42331 0.97 0.000616898 0.000557516 0.0324195 0.0294632 44 3277 31 6.79088e+06 282912 787024. 2723.27 5.18 0.26296 0.230946 27118 194962 -1 2631 16 1175 3265 179584 40080 6.76001 6.76001 -161.406 -6.76001 0 0 997811. 3452.63 0.39 0.07 0.19 -1 -1 0.39 0.0297178 0.0270114 134 176 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_059.v common 9.00 vpr 64.40 MiB -1 -1 0.20 20656 11 0.21 -1 -1 36360 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65944 30 32 224 256 1 163 79 17 17 289 -1 unnamed_device 25.9 MiB 0.89 954 4980 1041 3690 249 64.4 MiB 0.05 0.00 5.61753 -120.383 -5.61753 5.61753 1.01 0.00053922 0.000492406 0.0186973 0.0171378 36 2650 23 6.79088e+06 229024 648988. 2245.63 4.56 0.207974 0.181607 25390 158009 -1 2100 17 960 2590 146182 33502 5.61753 5.61753 -134.605 -5.61753 0 0 828058. 2865.25 0.32 0.06 0.15 -1 -1 0.32 0.0236412 0.0212451 101 133 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_060.v common 11.71 vpr 65.56 MiB -1 -1 0.27 21468 15 0.66 -1 -1 36964 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67136 32 32 351 383 1 259 89 17 17 289 -1 unnamed_device 27.0 MiB 1.35 1586 10979 3032 6976 971 65.6 MiB 0.12 0.00 7.98095 -163.689 -7.98095 7.98095 1.01 0.000886671 0.000804961 0.0517278 0.046942 44 4106 44 6.79088e+06 336800 787024. 2723.27 5.84 0.389927 0.34233 27118 194962 -1 3274 33 1801 5288 501785 214002 8.16545 8.16545 -181.59 -8.16545 0 0 997811. 3452.63 0.39 0.23 0.19 -1 -1 0.39 0.0673336 0.0605595 179 256 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_061.v common 9.35 vpr 65.16 MiB -1 -1 0.23 20672 13 0.40 -1 -1 36240 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 32 32 297 329 1 217 84 17 17 289 -1 unnamed_device 26.7 MiB 1.42 1318 7953 1924 5245 784 65.2 MiB 0.08 0.00 6.80691 -147.77 -6.80691 6.80691 1.02 0.000723421 0.000659263 0.0354854 0.0323175 34 3727 37 6.79088e+06 269440 618332. 2139.56 4.01 0.256434 0.228334 25102 150614 -1 3022 23 1568 4169 271980 58732 6.97141 6.97141 -169.636 -6.97141 0 0 787024. 2723.27 0.33 0.11 0.15 -1 -1 0.33 0.0438742 0.0395432 139 202 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_062.v common 6.93 vpr 64.17 MiB -1 -1 0.18 20088 11 0.17 -1 -1 36288 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65712 32 32 231 263 1 165 77 17 17 289 -1 unnamed_device 25.8 MiB 1.50 1107 11813 3755 6385 1673 64.2 MiB 0.09 0.00 5.65673 -121.476 -5.65673 5.65673 1.00 0.000546298 0.000497949 0.0414934 0.0375479 30 2668 23 6.79088e+06 175136 556674. 1926.21 2.02 0.12485 0.110473 24526 138013 -1 2327 14 963 2426 143967 31805 5.90733 5.90733 -145.111 -5.90733 0 0 706193. 2443.58 0.28 0.06 0.13 -1 -1 0.28 0.0218663 0.0198067 94 136 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_063.v common 10.40 vpr 65.21 MiB -1 -1 0.22 20712 12 0.36 -1 -1 36360 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 32 32 305 337 1 217 84 17 17 289 -1 unnamed_device 26.6 MiB 1.32 1451 8868 2481 5589 798 65.2 MiB 0.08 0.00 6.21186 -135.883 -6.21186 6.21186 0.97 0.000624074 0.000562285 0.0357479 0.0323101 44 3384 20 6.79088e+06 269440 787024. 2723.27 5.23 0.282871 0.248834 27118 194962 -1 2780 18 1295 4348 231773 50436 6.50936 6.50936 -153.957 -6.50936 0 0 997811. 3452.63 0.41 0.09 0.18 -1 -1 0.41 0.0345116 0.0311693 146 210 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_064.v common 10.64 vpr 64.55 MiB -1 -1 0.19 20308 12 0.25 -1 -1 36316 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 32 32 243 275 1 187 82 17 17 289 -1 unnamed_device 26.0 MiB 1.53 1116 12008 4379 6168 1461 64.6 MiB 0.09 0.00 6.07963 -127.977 -6.07963 6.07963 1.00 0.000579011 0.000526239 0.0410434 0.037365 48 2328 16 6.79088e+06 242496 865456. 2994.66 5.18 0.223474 0.196127 27694 206865 -1 2351 29 1115 3009 489771 263793 6.20493 6.20493 -142.057 -6.20493 0 0 1.05005e+06 3633.38 0.43 0.20 0.20 -1 -1 0.43 0.0418719 0.0374991 113 148 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_065.v common 7.20 vpr 64.54 MiB -1 -1 0.20 20404 12 0.23 -1 -1 36388 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66084 30 32 228 260 1 166 79 17 17 289 -1 unnamed_device 26.1 MiB 1.21 922 5825 1352 4298 175 64.5 MiB 0.06 0.00 6.13346 -120.57 -6.13346 6.13346 0.99 0.000553731 0.000503272 0.0222856 0.0202857 38 2184 17 6.79088e+06 229024 678818. 2348.85 2.35 0.153731 0.135632 25966 169698 -1 1915 16 804 2244 112778 26068 6.38406 6.38406 -137.788 -6.38406 0 0 902133. 3121.57 0.36 0.05 0.17 -1 -1 0.36 0.0238994 0.0215548 106 137 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_066.v common 12.20 vpr 64.85 MiB -1 -1 0.24 20604 12 0.34 -1 -1 36572 -1 -1 26 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 29 32 275 307 1 201 87 17 17 289 -1 unnamed_device 26.4 MiB 2.66 1216 7767 1963 5054 750 64.8 MiB 0.08 0.00 6.36943 -122.839 -6.36943 6.36943 1.01 0.000678197 0.000616891 0.031378 0.0286572 36 3445 29 6.79088e+06 350272 648988. 2245.63 5.70 0.302118 0.26753 25390 158009 -1 2824 17 1259 3827 224300 48596 6.36943 6.36943 -136.11 -6.36943 0 0 828058. 2865.25 0.34 0.09 0.15 -1 -1 0.34 0.0343014 0.0311402 140 186 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_067.v common 19.30 vpr 65.29 MiB -1 -1 0.24 20856 13 0.43 -1 -1 36668 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66856 32 32 330 362 1 257 87 17 17 289 -1 unnamed_device 26.9 MiB 1.29 1484 9303 2676 5892 735 65.3 MiB 0.10 0.00 6.50936 -139.884 -6.50936 6.50936 1.00 0.000776195 0.000702019 0.0429484 0.0391485 38 3815 23 6.79088e+06 309856 678818. 2348.85 14.02 0.372959 0.328809 25966 169698 -1 3178 22 2054 5188 275388 61216 7.12467 7.12467 -165.651 -7.12467 0 0 902133. 3121.57 0.34 0.11 0.17 -1 -1 0.34 0.04044 0.0362968 160 235 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_068.v common 12.75 vpr 65.09 MiB -1 -1 0.22 21044 12 0.29 -1 -1 36324 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 32 32 290 322 1 218 84 17 17 289 -1 unnamed_device 26.6 MiB 1.55 1346 7587 1864 5250 473 65.1 MiB 0.08 0.00 6.25876 -139.945 -6.25876 6.25876 0.97 0.000684529 0.000610263 0.0319566 0.0290212 36 3983 49 6.79088e+06 269440 648988. 2245.63 7.46 0.2396 0.211023 25390 158009 -1 3167 20 1905 5457 378207 86669 6.94898 6.94898 -165.333 -6.94898 0 0 828058. 2865.25 0.33 0.12 0.15 -1 -1 0.33 0.0371897 0.0335883 140 195 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_069.v common 9.78 vpr 64.08 MiB -1 -1 0.20 20372 12 0.19 -1 -1 36812 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65620 32 32 214 246 1 160 79 17 17 289 -1 unnamed_device 25.7 MiB 2.27 970 7346 1525 5434 387 64.1 MiB 0.06 0.00 6.12227 -129.212 -6.12227 6.12227 0.99 0.000526281 0.000477493 0.023244 0.0211034 34 2847 30 6.79088e+06 202080 618332. 2139.56 4.03 0.14769 0.130016 25102 150614 -1 2330 15 947 2483 180554 40218 6.37287 6.37287 -146.163 -6.37287 0 0 787024. 2723.27 0.32 0.06 0.14 -1 -1 0.32 0.0218306 0.0197484 93 119 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_070.v common 10.27 vpr 64.53 MiB -1 -1 0.20 20468 12 0.27 -1 -1 36628 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66076 31 32 244 276 1 178 82 17 17 289 -1 unnamed_device 26.0 MiB 1.74 1082 11830 3208 6442 2180 64.5 MiB 0.10 0.00 5.97433 -125.288 -5.97433 5.97433 1.00 0.000568836 0.000518285 0.0413055 0.0375841 34 3211 41 6.79088e+06 255968 618332. 2139.56 4.85 0.264467 0.23318 25102 150614 -1 2545 19 1057 2814 177002 39213 6.35023 6.35023 -146.083 -6.35023 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.0288829 0.0261244 111 151 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_071.v common 11.20 vpr 64.83 MiB -1 -1 0.23 20536 11 0.23 -1 -1 36348 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 30 32 276 308 1 190 82 17 17 289 -1 unnamed_device 26.5 MiB 1.81 1165 9694 2744 5668 1282 64.8 MiB 0.09 0.00 5.62872 -114.976 -5.62872 5.62872 1.00 0.000653526 0.00059574 0.039986 0.0363576 34 3581 35 6.79088e+06 269440 618332. 2139.56 5.65 0.231536 0.205799 25102 150614 -1 2811 17 1173 3537 230769 50721 6.04376 6.04376 -138.224 -6.04376 0 0 787024. 2723.27 0.33 0.09 0.15 -1 -1 0.33 0.033093 0.0300789 125 185 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_072.v common 15.16 vpr 64.71 MiB -1 -1 0.21 20524 11 0.26 -1 -1 36416 -1 -1 19 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 28 32 253 285 1 176 79 17 17 289 -1 unnamed_device 26.1 MiB 1.54 1057 8022 1921 5271 830 64.7 MiB 0.07 0.00 5.35574 -105.27 -5.35574 5.35574 0.97 0.000592541 0.000528665 0.0313223 0.0283366 30 2968 26 6.79088e+06 255968 556674. 1926.21 10.05 0.23639 0.206755 24526 138013 -1 2286 16 1101 3174 162977 37865 5.60634 5.60634 -122.137 -5.60634 0 0 706193. 2443.58 0.28 0.06 0.14 -1 -1 0.28 0.0254491 0.0229265 116 166 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_073.v common 17.51 vpr 64.38 MiB -1 -1 0.21 20412 13 0.26 -1 -1 36472 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 30 32 235 267 1 172 80 17 17 289 -1 unnamed_device 25.9 MiB 2.19 1049 12464 3944 6305 2215 64.4 MiB 0.10 0.00 5.9509 -122.905 -5.9509 5.9509 0.99 0.000550569 0.000499579 0.0437662 0.0399678 38 2547 19 6.79088e+06 242496 678818. 2348.85 11.59 0.262264 0.229529 25966 169698 -1 2255 15 950 2677 145393 32848 6.2015 6.2015 -139.405 -6.2015 0 0 902133. 3121.57 0.36 0.06 0.17 -1 -1 0.36 0.0241426 0.0218292 108 144 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_074.v common 10.67 vpr 64.88 MiB -1 -1 0.21 20924 12 0.24 -1 -1 36328 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 32 32 264 296 1 200 82 17 17 289 -1 unnamed_device 26.5 MiB 2.57 1277 7736 1993 5023 720 64.9 MiB 0.07 0.00 5.66792 -135.227 -5.66792 5.66792 1.02 0.000611082 0.000560214 0.0302713 0.0275118 44 2860 15 6.79088e+06 242496 787024. 2723.27 4.34 0.219642 0.192468 27118 194962 -1 2493 13 985 2656 140993 32070 6.54502 6.54502 -161.125 -6.54502 0 0 997811. 3452.63 0.40 0.06 0.19 -1 -1 0.40 0.0261098 0.0238509 120 169 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_075.v common 10.67 vpr 65.16 MiB -1 -1 0.20 20632 13 0.35 -1 -1 36568 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 31 32 278 310 1 200 84 17 17 289 -1 unnamed_device 26.7 MiB 2.04 1259 6489 1523 4389 577 65.2 MiB 0.07 0.00 7.05336 -143.086 -7.05336 7.05336 0.96 0.000625985 0.000568111 0.0261482 0.0238229 36 3038 24 6.79088e+06 282912 648988. 2245.63 4.93 0.287514 0.251569 25390 158009 -1 2559 15 1168 3222 172083 39442 7.39006 7.39006 -159.222 -7.39006 0 0 828058. 2865.25 0.34 0.07 0.15 -1 -1 0.34 0.0293755 0.0267692 137 185 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_076.v common 10.53 vpr 64.99 MiB -1 -1 0.24 20640 14 0.33 -1 -1 36480 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 32 32 290 322 1 212 84 17 17 289 -1 unnamed_device 26.6 MiB 1.58 1355 7770 1977 5250 543 65.0 MiB 0.07 0.00 7.26476 -153.3 -7.26476 7.26476 1.00 0.000647168 0.000573821 0.0310983 0.0282376 36 3774 43 6.79088e+06 269440 648988. 2245.63 5.20 0.231996 0.204816 25390 158009 -1 3036 18 1465 4198 269811 57614 7.51535 7.51535 -171.291 -7.51535 0 0 828058. 2865.25 0.33 0.09 0.14 -1 -1 0.33 0.0327631 0.0295979 132 195 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_077.v common 11.63 vpr 64.94 MiB -1 -1 0.23 20664 14 0.31 -1 -1 36588 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 269 301 1 198 81 17 17 289 -1 unnamed_device 26.5 MiB 2.64 1157 12856 4285 6371 2200 64.9 MiB 0.11 0.00 6.58781 -134.152 -6.58781 6.58781 0.99 0.000613673 0.000557508 0.0493485 0.0448864 38 3033 29 6.79088e+06 229024 678818. 2348.85 5.20 0.309296 0.271947 25966 169698 -1 2513 20 1299 3833 205001 45967 6.75231 6.75231 -149.07 -6.75231 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.0309241 0.027774 122 174 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_078.v common 11.95 vpr 64.98 MiB -1 -1 0.25 21304 13 0.42 -1 -1 36416 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66536 32 32 296 328 1 223 86 17 17 289 -1 unnamed_device 26.4 MiB 2.19 1370 8213 1994 5808 411 65.0 MiB 0.09 0.00 6.79927 -143.422 -6.79927 6.79927 0.99 0.000700375 0.000631219 0.0346453 0.0313778 44 3356 24 6.79088e+06 296384 787024. 2723.27 5.68 0.284294 0.249878 27118 194962 -1 2860 27 1294 3811 438809 192412 7.38657 7.38657 -159.52 -7.38657 0 0 997811. 3452.63 0.39 0.18 0.19 -1 -1 0.39 0.049001 0.0441152 144 201 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_079.v common 9.61 vpr 64.55 MiB -1 -1 0.20 20332 13 0.24 -1 -1 35940 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 30 32 234 266 1 175 80 17 17 289 -1 unnamed_device 26.1 MiB 2.51 872 8336 2050 4953 1333 64.5 MiB 0.07 0.00 5.79327 -120.614 -5.79327 5.79327 1.00 0.000540021 0.000486267 0.0296091 0.0269205 36 2713 38 6.79088e+06 242496 648988. 2245.63 3.52 0.183953 0.161305 25390 158009 -1 2170 18 1216 3154 199265 46742 6.16917 6.16917 -139.373 -6.16917 0 0 828058. 2865.25 0.32 0.08 0.15 -1 -1 0.32 0.0278631 0.0250713 104 143 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_080.v common 11.17 vpr 65.04 MiB -1 -1 0.25 21296 13 0.55 -1 -1 36268 -1 -1 22 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 30 32 291 323 1 225 84 17 17 289 -1 unnamed_device 26.5 MiB 2.18 1256 13992 3923 8012 2057 65.0 MiB 0.13 0.00 6.7243 -138.855 -6.7243 6.7243 0.99 0.000698674 0.000630413 0.0568853 0.0516108 40 3363 21 6.79088e+06 296384 706193. 2443.58 4.85 0.304206 0.267479 26254 175826 -1 3114 19 1670 4471 271399 61951 7.1002 7.1002 -157.06 -7.1002 0 0 926341. 3205.33 0.35 0.10 0.17 -1 -1 0.35 0.0345561 0.0311339 145 200 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_081.v common 9.09 vpr 64.89 MiB -1 -1 0.24 20648 14 0.40 -1 -1 36756 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 32 32 274 306 1 205 82 17 17 289 -1 unnamed_device 26.4 MiB 2.00 1366 12364 3411 7240 1713 64.9 MiB 0.11 0.00 7.00723 -147.781 -7.00723 7.00723 1.00 0.00062798 0.000571398 0.0484413 0.0440372 44 3195 19 6.79088e+06 242496 787024. 2723.27 3.11 0.176546 0.157021 27118 194962 -1 2748 16 1191 3560 207817 45104 7.13253 7.13253 -161.873 -7.13253 0 0 997811. 3452.63 0.40 0.08 0.19 -1 -1 0.40 0.0306112 0.0278903 128 179 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_082.v common 10.58 vpr 64.62 MiB -1 -1 0.23 20884 13 0.28 -1 -1 36608 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 31 32 266 298 1 196 82 17 17 289 -1 unnamed_device 26.2 MiB 2.29 1219 11474 3054 6396 2024 64.6 MiB 0.10 0.00 6.25189 -137.129 -6.25189 6.25189 0.96 0.000595995 0.000539524 0.0428748 0.03891 44 2926 20 6.79088e+06 255968 787024. 2723.27 4.48 0.253135 0.221656 27118 194962 -1 2443 16 1140 3103 161920 36660 6.37719 6.37719 -150.157 -6.37719 0 0 997811. 3452.63 0.41 0.07 0.19 -1 -1 0.41 0.0287702 0.0261214 124 173 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_083.v common 14.48 vpr 64.62 MiB -1 -1 0.23 20576 13 0.27 -1 -1 36736 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66168 30 32 266 298 1 199 81 17 17 289 -1 unnamed_device 26.3 MiB 2.07 1162 9531 2678 5129 1724 64.6 MiB 0.08 0.00 6.43207 -124.687 -6.43207 6.43207 0.98 0.000550203 0.000494189 0.0352312 0.0318141 36 3448 41 6.79088e+06 255968 648988. 2245.63 8.71 0.296519 0.260013 25390 158009 -1 2755 19 1333 3476 209786 47214 6.53737 6.53737 -140.723 -6.53737 0 0 828058. 2865.25 0.33 0.08 0.14 -1 -1 0.33 0.0334331 0.0302157 121 175 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_084.v common 35.21 vpr 64.98 MiB -1 -1 0.24 21032 14 0.45 -1 -1 36312 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 310 342 1 231 85 17 17 289 -1 unnamed_device 26.4 MiB 2.05 1520 6409 1385 4431 593 65.0 MiB 0.07 0.00 7.13597 -149.1 -7.13597 7.13597 0.99 0.000727351 0.000647235 0.0289473 0.0262096 40 3937 21 6.79088e+06 282912 706193. 2443.58 29.07 0.421918 0.372048 26254 175826 -1 3487 23 1803 5543 525491 179261 7.72326 7.72326 -174.606 -7.72326 0 0 926341. 3205.33 0.38 0.19 0.17 -1 -1 0.38 0.0494262 0.0448266 154 215 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_085.v common 21.89 vpr 64.73 MiB -1 -1 0.24 20908 11 0.35 -1 -1 36408 -1 -1 23 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 29 32 262 294 1 201 84 17 17 289 -1 unnamed_device 26.3 MiB 2.57 1039 10149 2321 6487 1341 64.7 MiB 0.09 0.00 6.16912 -116.909 -6.16912 6.16912 1.04 0.000630741 0.000572935 0.0397513 0.0362121 34 3625 41 6.79088e+06 309856 618332. 2139.56 15.38 0.39799 0.351737 25102 150614 -1 2712 20 1418 4084 237618 54619 6.38057 6.38057 -136.105 -6.38057 0 0 787024. 2723.27 0.33 0.10 0.15 -1 -1 0.33 0.037664 0.0341168 136 173 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_086.v common 9.70 vpr 64.36 MiB -1 -1 0.18 20104 13 0.20 -1 -1 36516 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65908 32 32 222 254 1 182 78 17 17 289 -1 unnamed_device 25.9 MiB 3.68 946 7548 1695 5631 222 64.4 MiB 0.07 0.00 5.82554 -132.39 -5.82554 5.82554 1.02 0.000526538 0.000478726 0.0270824 0.0246902 36 3149 25 6.79088e+06 188608 648988. 2245.63 2.42 0.136256 0.120815 25390 158009 -1 2262 28 1146 2593 246775 90983 6.06495 6.06495 -154.999 -6.06495 0 0 828058. 2865.25 0.33 0.10 0.15 -1 -1 0.33 0.0331262 0.0293353 98 127 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_087.v common 10.47 vpr 64.62 MiB -1 -1 0.23 21032 14 0.30 -1 -1 36316 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 32 32 267 299 1 200 81 17 17 289 -1 unnamed_device 26.3 MiB 2.12 1142 7431 1676 5509 246 64.6 MiB 0.07 0.00 6.92457 -144.109 -6.92457 6.92457 0.99 0.000648389 0.000582557 0.0309855 0.0281022 36 3376 24 6.79088e+06 229024 648988. 2245.63 4.67 0.190173 0.167335 25390 158009 -1 2666 17 1257 3185 181504 41423 7.13597 7.13597 -164.679 -7.13597 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.0289444 0.0261353 122 172 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_088.v common 8.89 vpr 65.38 MiB -1 -1 0.23 21256 15 0.49 -1 -1 36696 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66952 32 32 334 366 1 254 87 17 17 289 -1 unnamed_device 26.8 MiB 1.79 1468 5655 1104 4288 263 65.4 MiB 0.07 0.00 7.76944 -159.998 -7.76944 7.76944 1.01 0.000777572 0.000700429 0.0292377 0.0266098 40 3759 26 6.79088e+06 309856 706193. 2443.58 3.10 0.242747 0.215769 26254 175826 -1 3519 21 1833 4814 292730 65634 8.22452 8.22452 -186.375 -8.22452 0 0 926341. 3205.33 0.37 0.11 0.16 -1 -1 0.37 0.0425608 0.0383962 163 239 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_089.v common 7.80 vpr 64.40 MiB -1 -1 0.20 20492 11 0.21 -1 -1 36512 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65948 32 32 220 252 1 168 79 17 17 289 -1 unnamed_device 26.0 MiB 2.01 1051 8867 2440 4963 1464 64.4 MiB 0.07 0.00 5.75402 -124.321 -5.75402 5.75402 0.99 0.000526504 0.000476315 0.0283453 0.0258051 34 2659 20 6.79088e+06 202080 618332. 2139.56 2.23 0.129556 0.114341 25102 150614 -1 2216 15 915 2330 143040 32422 5.95423 5.95423 -140.034 -5.95423 0 0 787024. 2723.27 0.33 0.06 0.15 -1 -1 0.33 0.0227764 0.0205979 97 125 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_090.v common 11.32 vpr 64.55 MiB -1 -1 0.19 20068 12 0.23 -1 -1 36460 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66100 31 32 244 276 1 193 80 17 17 289 -1 unnamed_device 26.0 MiB 1.97 1173 7132 1772 4712 648 64.6 MiB 0.07 0.00 5.73934 -130.419 -5.73934 5.73934 1.01 0.000622115 0.000552649 0.0271598 0.0246235 44 2968 47 6.79088e+06 229024 787024. 2723.27 5.59 0.26296 0.230619 27118 194962 -1 2500 17 1244 3411 179414 40792 5.73934 5.73934 -143.007 -5.73934 0 0 997811. 3452.63 0.43 0.08 0.19 -1 -1 0.43 0.0300519 0.0273269 112 151 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_091.v common 10.98 vpr 65.11 MiB -1 -1 0.24 20940 12 0.38 -1 -1 36408 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 300 332 1 219 83 17 17 289 -1 unnamed_device 26.6 MiB 1.51 1308 4403 844 3337 222 65.1 MiB 0.06 0.00 6.46241 -139.971 -6.46241 6.46241 1.03 0.000776485 0.000708638 0.0232792 0.0213968 38 3524 24 6.79088e+06 255968 678818. 2348.85 5.53 0.313457 0.278353 25966 169698 -1 2772 16 1362 3925 190747 44253 6.54851 6.54851 -157.448 -6.54851 0 0 902133. 3121.57 0.37 0.09 0.16 -1 -1 0.37 0.0386715 0.0355072 143 205 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_092.v common 12.65 vpr 64.72 MiB -1 -1 0.23 20776 12 0.30 -1 -1 36516 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66276 32 32 271 303 1 209 82 17 17 289 -1 unnamed_device 26.3 MiB 2.45 1432 7914 1958 4935 1021 64.7 MiB 0.08 0.00 6.07958 -134.767 -6.07958 6.07958 1.01 0.000631732 0.000567812 0.032468 0.0294435 38 3778 20 6.79088e+06 242496 678818. 2348.85 6.18 0.196598 0.174209 25966 169698 -1 3161 36 1422 4236 622041 300338 6.83138 6.83138 -159.513 -6.83138 0 0 902133. 3121.57 0.36 0.25 0.17 -1 -1 0.36 0.0564525 0.050701 130 176 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_093.v common 11.56 vpr 65.32 MiB -1 -1 0.24 21232 14 0.57 -1 -1 36336 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66888 32 32 327 359 1 233 86 17 17 289 -1 unnamed_device 26.9 MiB 2.26 1375 5378 1012 4203 163 65.3 MiB 0.07 0.00 7.3152 -150.198 -7.3152 7.3152 0.96 0.00080378 0.000724796 0.0269845 0.0245257 38 4073 35 6.79088e+06 296384 678818. 2348.85 5.24 0.318966 0.27969 25966 169698 -1 3056 21 1712 5152 248741 57087 7.5658 7.5658 -165.417 -7.5658 0 0 902133. 3121.57 0.36 0.11 0.17 -1 -1 0.36 0.0450188 0.0407414 167 232 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_094.v common 9.47 vpr 64.73 MiB -1 -1 0.20 20744 12 0.25 -1 -1 36576 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 30 32 246 278 1 185 81 17 17 289 -1 unnamed_device 26.4 MiB 1.86 1043 10406 3634 4844 1928 64.7 MiB 0.09 0.00 5.94658 -115.53 -5.94658 5.94658 0.96 0.000536935 0.000484592 0.0369367 0.033457 36 3200 28 6.79088e+06 255968 648988. 2245.63 4.08 0.196411 0.173323 25390 158009 -1 2516 18 1171 3446 200037 45777 6.19718 6.19718 -131.977 -6.19718 0 0 828058. 2865.25 0.34 0.08 0.14 -1 -1 0.34 0.0293826 0.0264887 121 155 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_095.v common 16.24 vpr 64.39 MiB -1 -1 0.21 20124 11 0.23 -1 -1 36072 -1 -1 19 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65936 27 32 219 251 1 163 78 17 17 289 -1 unnamed_device 25.9 MiB 2.52 930 10370 3065 5403 1902 64.4 MiB 0.08 0.00 6.04382 -110.353 -6.04382 6.04382 1.01 0.000519012 0.000471392 0.0361597 0.0330654 30 2519 38 6.79088e+06 255968 556674. 1926.21 10.12 0.296614 0.261525 24526 138013 -1 2099 15 952 2428 133293 30994 6.29442 6.29442 -128.814 -6.29442 0 0 706193. 2443.58 0.31 0.06 0.13 -1 -1 0.31 0.0222893 0.0201497 104 134 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_096.v common 38.80 vpr 65.61 MiB -1 -1 0.28 21596 13 0.54 -1 -1 36332 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67188 32 32 380 412 1 276 90 17 17 289 -1 unnamed_device 26.9 MiB 2.01 1668 11346 2946 7300 1100 65.6 MiB 0.13 0.00 6.55742 -139.517 -6.55742 6.55742 0.99 0.000860986 0.000780421 0.055642 0.0505967 40 4472 36 6.79088e+06 350272 706193. 2443.58 32.35 0.511762 0.452477 26254 175826 -1 4156 34 2113 6801 754838 264404 7.12467 7.12467 -161.23 -7.12467 0 0 926341. 3205.33 0.38 0.30 0.17 -1 -1 0.38 0.0800237 0.0723261 188 285 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_097.v common 8.71 vpr 64.88 MiB -1 -1 0.24 20936 14 0.33 -1 -1 36512 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 31 32 277 309 1 197 85 17 17 289 -1 unnamed_device 26.5 MiB 2.15 1179 6781 1531 4436 814 64.9 MiB 0.07 0.00 6.928 -140.763 -6.928 6.928 0.99 0.000626809 0.000567006 0.0278904 0.025387 34 3332 45 6.79088e+06 296384 618332. 2139.56 2.81 0.170235 0.14953 25102 150614 -1 2589 17 1202 3257 185696 42095 7.1786 7.1786 -158.513 -7.1786 0 0 787024. 2723.27 0.30 0.07 0.15 -1 -1 0.30 0.0301314 0.0271245 130 184 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_098.v common 8.28 vpr 64.41 MiB -1 -1 0.23 20632 12 0.19 -1 -1 35992 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65956 32 32 229 261 1 174 82 17 17 289 -1 unnamed_device 26.0 MiB 2.03 1083 7380 1749 5397 234 64.4 MiB 0.07 0.00 6.02467 -131.016 -6.02467 6.02467 1.02 0.000561052 0.000499554 0.026266 0.0239495 38 2692 30 6.79088e+06 242496 678818. 2348.85 2.61 0.172348 0.152339 25966 169698 -1 2268 16 995 2503 140175 31374 6.40057 6.40057 -150.093 -6.40057 0 0 902133. 3121.57 0.35 0.06 0.16 -1 -1 0.35 0.0242919 0.0219647 109 134 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_099.v common 9.66 vpr 64.84 MiB -1 -1 0.23 20560 13 0.36 -1 -1 36376 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 263 295 1 199 82 17 17 289 -1 unnamed_device 26.5 MiB 1.74 1283 11296 3359 5947 1990 64.8 MiB 0.10 0.00 6.83846 -143.904 -6.83846 6.83846 0.97 0.000612509 0.000555266 0.0428736 0.0390264 36 3413 29 6.79088e+06 242496 648988. 2245.63 4.14 0.206577 0.180951 25390 158009 -1 2836 17 1224 3268 208411 45710 7.71556 7.71556 -168.252 -7.71556 0 0 828058. 2865.25 0.33 0.08 0.16 -1 -1 0.33 0.0301196 0.0273073 128 168 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_100.v common 26.76 vpr 65.27 MiB -1 -1 0.24 20836 13 0.41 -1 -1 37008 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 31 32 321 353 1 241 87 17 17 289 -1 unnamed_device 26.9 MiB 2.11 1403 6423 1369 4680 374 65.3 MiB 0.07 0.00 6.20144 -130.326 -6.20144 6.20144 0.97 0.000702981 0.000639882 0.0289814 0.0263204 40 3756 25 6.79088e+06 323328 706193. 2443.58 20.71 0.404745 0.354793 26254 175826 -1 3508 19 1845 5378 369126 78844 6.41628 6.41628 -151.159 -6.41628 0 0 926341. 3205.33 0.37 0.13 0.18 -1 -1 0.37 0.0416249 0.0377891 157 228 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_101.v common 7.62 vpr 65.16 MiB -1 -1 0.21 20972 11 0.29 -1 -1 36680 -1 -1 22 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 30 32 287 319 1 201 84 17 17 289 -1 unnamed_device 26.6 MiB 1.95 1269 6672 1513 4513 646 65.2 MiB 0.06 0.00 5.62872 -119.968 -5.62872 5.62872 0.98 0.000596799 0.000540185 0.0268215 0.0243672 38 2876 18 6.79088e+06 296384 678818. 2348.85 2.02 0.146853 0.13035 25966 169698 -1 2601 17 1216 3810 186531 42917 6.00462 6.00462 -135.505 -6.00462 0 0 902133. 3121.57 0.35 0.08 0.15 -1 -1 0.35 0.0311196 0.0281742 141 196 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_102.v common 8.91 vpr 65.03 MiB -1 -1 0.23 20760 15 0.45 -1 -1 36380 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 32 32 296 328 1 220 86 17 17 289 -1 unnamed_device 26.5 MiB 1.84 1355 10103 2815 6633 655 65.0 MiB 0.10 0.00 7.17871 -154.666 -7.17871 7.17871 0.97 0.000722359 0.000653895 0.041541 0.0375855 40 3251 20 6.79088e+06 296384 706193. 2443.58 3.07 0.24364 0.217203 26254 175826 -1 3222 21 1557 4872 324014 68469 7.79823 7.79823 -180.796 -7.79823 0 0 926341. 3205.33 0.38 0.12 0.17 -1 -1 0.38 0.0447729 0.040492 147 201 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_103.v common 11.28 vpr 64.89 MiB -1 -1 0.25 20916 13 0.42 -1 -1 36316 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 285 317 1 217 85 17 17 289 -1 unnamed_device 26.4 MiB 2.48 1344 7339 1804 5002 533 64.9 MiB 0.08 0.00 6.54861 -144.766 -6.54861 6.54861 1.01 0.000675403 0.000611514 0.0320962 0.0290916 38 3378 19 6.79088e+06 282912 678818. 2348.85 4.82 0.260468 0.22843 25966 169698 -1 2942 19 1416 4345 219516 49937 7.01061 7.01061 -167.176 -7.01061 0 0 902133. 3121.57 0.36 0.09 0.16 -1 -1 0.36 0.0353464 0.0319397 143 190 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_104.v common 10.61 vpr 64.70 MiB -1 -1 0.20 20432 12 0.25 -1 -1 36620 -1 -1 18 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66248 29 32 239 271 1 185 79 17 17 289 -1 unnamed_device 26.2 MiB 2.08 953 5994 1224 4510 260 64.7 MiB 0.05 0.00 6.04731 -121.276 -6.04731 6.04731 1.01 0.000560246 0.000516978 0.0220242 0.0201316 36 3045 38 6.79088e+06 242496 648988. 2245.63 4.89 0.177405 0.155487 25390 158009 -1 2374 16 1205 2975 172683 40552 6.71301 6.71301 -148.105 -6.71301 0 0 828058. 2865.25 0.33 0.07 0.15 -1 -1 0.33 0.0265063 0.0239764 111 150 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_105.v common 7.36 vpr 64.52 MiB -1 -1 0.19 20384 11 0.18 -1 -1 36044 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 32 32 235 267 1 172 78 17 17 289 -1 unnamed_device 26.1 MiB 1.77 1029 6386 1473 4559 354 64.5 MiB 0.06 0.00 5.49223 -122.531 -5.49223 5.49223 1.00 0.000512003 0.000458881 0.0231506 0.0209168 30 3051 36 6.79088e+06 188608 556674. 1926.21 2.17 0.12104 0.106769 24526 138013 -1 2369 16 1071 2621 151230 34000 5.90384 5.90384 -145.157 -5.90384 0 0 706193. 2443.58 0.30 0.06 0.12 -1 -1 0.30 0.0237309 0.0213102 98 140 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_106.v common 18.50 vpr 64.95 MiB -1 -1 0.23 20284 13 0.41 -1 -1 36728 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 31 32 294 326 1 212 84 17 17 289 -1 unnamed_device 26.4 MiB 1.40 1338 9600 2499 5756 1345 64.9 MiB 0.10 0.00 6.6851 -135.894 -6.6851 6.6851 1.05 0.000832794 0.000748053 0.0424549 0.0384248 36 3616 38 6.79088e+06 282912 648988. 2245.63 13.09 0.402458 0.356213 25390 158009 -1 2996 21 1742 5254 321346 68728 7.09666 7.09666 -154.173 -7.09666 0 0 828058. 2865.25 0.34 0.12 0.15 -1 -1 0.34 0.0416016 0.0375123 143 201 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_107.v common 8.60 vpr 64.53 MiB -1 -1 0.20 20556 10 0.20 -1 -1 36600 -1 -1 17 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 29 32 219 251 1 163 78 17 17 289 -1 unnamed_device 26.1 MiB 2.33 988 5058 1160 3582 316 64.5 MiB 0.05 0.00 4.95172 -105.077 -4.95172 4.95172 1.00 0.000609114 0.00055826 0.0185813 0.0169434 34 2710 40 6.79088e+06 229024 618332. 2139.56 2.73 0.160002 0.139794 25102 150614 -1 2312 20 1169 3109 190355 42641 5.40253 5.40253 -125.971 -5.40253 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0265479 0.0237748 101 130 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_108.v common 12.00 vpr 64.53 MiB -1 -1 0.21 20560 14 0.24 -1 -1 36136 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 32 32 239 271 1 184 82 17 17 289 -1 unnamed_device 26.0 MiB 3.31 933 12898 3769 6963 2166 64.5 MiB 0.10 0.00 6.49828 -129.336 -6.49828 6.49828 0.99 0.000531396 0.000479353 0.0430528 0.0390691 36 3109 45 6.79088e+06 242496 648988. 2245.63 5.02 0.205085 0.17994 25390 158009 -1 2284 18 1193 3104 183280 42901 6.62358 6.62358 -149.696 -6.62358 0 0 828058. 2865.25 0.33 0.08 0.16 -1 -1 0.33 0.0282991 0.0255736 110 144 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_109.v common 12.03 vpr 64.76 MiB -1 -1 0.23 20816 13 0.34 -1 -1 36416 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 31 32 266 298 1 209 83 17 17 289 -1 unnamed_device 26.4 MiB 3.12 1267 8363 2102 5398 863 64.8 MiB 0.08 0.00 6.42326 -138.516 -6.42326 6.42326 1.00 0.00062842 0.000565726 0.034841 0.0318193 42 3432 28 6.79088e+06 269440 744469. 2576.02 4.87 0.276128 0.242986 26542 182613 -1 2850 33 1304 3493 526734 256599 6.72425 6.72425 -157.345 -6.72425 0 0 949917. 3286.91 0.39 0.22 0.18 -1 -1 0.39 0.0497241 0.0446225 125 173 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_110.v common 11.46 vpr 64.46 MiB -1 -1 0.21 20588 12 0.19 -1 -1 36076 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 31 32 225 257 1 172 80 17 17 289 -1 unnamed_device 26.1 MiB 4.20 872 7648 2130 4159 1359 64.5 MiB 0.06 0.00 5.70363 -118.952 -5.70363 5.70363 0.98 0.000502032 0.000455652 0.0259536 0.0236223 36 2889 45 6.79088e+06 229024 648988. 2245.63 3.62 0.176519 0.154154 25390 158009 -1 2107 31 1141 2954 294353 106953 5.95074 5.95074 -136.677 -5.95074 0 0 828058. 2865.25 0.35 0.13 0.16 -1 -1 0.35 0.0384722 0.0342838 99 132 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_111.v common 8.75 vpr 64.97 MiB -1 -1 0.20 20828 12 0.23 -1 -1 36228 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66532 32 32 288 320 1 203 82 17 17 289 -1 unnamed_device 26.5 MiB 2.31 1139 8448 1976 6216 256 65.0 MiB 0.08 0.00 6.07958 -131.841 -6.07958 6.07958 0.97 0.000589494 0.00053689 0.034483 0.0310111 38 2828 31 6.79088e+06 242496 678818. 2348.85 2.84 0.215705 0.190655 25966 169698 -1 2412 16 1221 3560 183588 42224 6.45548 6.45548 -148.546 -6.45548 0 0 902133. 3121.57 0.35 0.07 0.15 -1 -1 0.35 0.0299783 0.0271003 130 193 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_112.v common 9.28 vpr 64.98 MiB -1 -1 0.24 20808 13 0.37 -1 -1 36632 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 31 32 282 314 1 212 83 17 17 289 -1 unnamed_device 26.4 MiB 1.43 1350 7103 1668 4953 482 65.0 MiB 0.07 0.00 6.60438 -142.417 -6.60438 6.60438 1.01 0.000637237 0.000576625 0.0304415 0.027697 38 3487 44 6.79088e+06 269440 678818. 2348.85 3.92 0.2282 0.201474 25966 169698 -1 2756 16 1280 3555 180551 41191 6.60438 6.60438 -155.896 -6.60438 0 0 902133. 3121.57 0.36 0.08 0.17 -1 -1 0.36 0.0309166 0.0281494 143 189 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_113.v common 11.29 vpr 64.61 MiB -1 -1 0.21 20592 11 0.20 -1 -1 36316 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 32 32 233 265 1 183 80 17 17 289 -1 unnamed_device 26.1 MiB 2.36 984 12636 3994 6254 2388 64.6 MiB 0.11 0.00 5.1955 -121.732 -5.1955 5.1955 1.01 0.000541097 0.000486407 0.043401 0.0392238 46 2639 19 6.79088e+06 215552 828058. 2865.25 5.17 0.215372 0.188363 27406 200422 -1 2364 15 1151 3016 165503 37594 5.4461 5.4461 -139.024 -5.4461 0 0 1.01997e+06 3529.29 0.39 0.07 0.20 -1 -1 0.39 0.0233961 0.0211454 106 138 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_114.v common 10.94 vpr 64.73 MiB -1 -1 0.20 20488 13 0.27 -1 -1 36380 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 32 32 254 286 1 188 79 17 17 289 -1 unnamed_device 26.2 MiB 3.20 1069 12923 4695 6129 2099 64.7 MiB 0.11 0.00 6.33372 -138.057 -6.33372 6.33372 0.97 0.00060101 0.00054503 0.048168 0.043737 38 3223 22 6.79088e+06 202080 678818. 2348.85 4.00 0.187943 0.165048 25966 169698 -1 2407 16 1147 3049 159050 36761 6.58432 6.58432 -155.348 -6.58432 0 0 902133. 3121.57 0.37 0.07 0.16 -1 -1 0.37 0.0295893 0.0269508 113 159 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_115.v common 10.45 vpr 64.94 MiB -1 -1 0.21 20560 13 0.32 -1 -1 36668 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 285 317 1 214 83 17 17 289 -1 unnamed_device 26.5 MiB 1.45 1281 8723 2468 5410 845 64.9 MiB 0.09 0.00 6.57319 -147.944 -6.57319 6.57319 1.02 0.000659414 0.000598736 0.0362212 0.0328479 44 3279 19 6.79088e+06 255968 787024. 2723.27 5.09 0.261368 0.230364 27118 194962 -1 2760 16 1316 3611 190663 43625 6.65153 6.65153 -160.76 -6.65153 0 0 997811. 3452.63 0.41 0.08 0.19 -1 -1 0.41 0.0317034 0.0288919 136 190 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_116.v common 20.13 vpr 64.59 MiB -1 -1 0.22 20936 11 0.24 -1 -1 36632 -1 -1 19 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 29 32 243 275 1 184 80 17 17 289 -1 unnamed_device 26.0 MiB 2.56 1006 11604 4252 5643 1709 64.6 MiB 0.10 0.00 5.00754 -104.951 -5.00754 5.00754 1.02 0.00057216 0.000516798 0.0420451 0.038065 38 2820 21 6.79088e+06 255968 678818. 2348.85 13.81 0.303538 0.265677 25966 169698 -1 2244 15 1073 3077 166117 37770 5.63404 5.63404 -122.931 -5.63404 0 0 902133. 3121.57 0.37 0.07 0.16 -1 -1 0.37 0.0267878 0.0243653 116 154 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_117.v common 17.99 vpr 65.06 MiB -1 -1 0.26 21232 14 0.41 -1 -1 36320 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 32 32 318 350 1 238 87 17 17 289 -1 unnamed_device 26.6 MiB 1.86 1360 7767 1748 4876 1143 65.1 MiB 0.09 0.00 7.31171 -157.174 -7.31171 7.31171 1.01 0.000791861 0.000722171 0.0360022 0.0328931 30 4170 33 6.79088e+06 309856 556674. 1926.21 12.20 0.311952 0.277544 24526 138013 -1 3218 21 1766 4534 250555 56892 7.79817 7.79817 -183.322 -7.79817 0 0 706193. 2443.58 0.30 0.11 0.13 -1 -1 0.30 0.045531 0.0412823 159 223 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_118.v common 10.58 vpr 64.43 MiB -1 -1 0.16 20188 12 0.18 -1 -1 36952 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65972 31 32 222 254 1 188 82 17 17 289 -1 unnamed_device 25.9 MiB 2.76 1058 14144 4654 7267 2223 64.4 MiB 0.10 0.00 5.70019 -131.82 -5.70019 5.70019 0.97 0.000443612 0.000398598 0.0409731 0.0370435 46 2467 31 6.79088e+06 255968 828058. 2865.25 4.26 0.22165 0.193878 27406 200422 -1 2154 14 982 2315 129268 28826 5.82549 5.82549 -142.131 -5.82549 0 0 1.01997e+06 3529.29 0.40 0.05 0.18 -1 -1 0.40 0.0213354 0.0193448 106 129 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_119.v common 12.60 vpr 64.90 MiB -1 -1 0.25 21284 13 0.37 -1 -1 36476 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 282 314 1 211 84 17 17 289 -1 unnamed_device 26.5 MiB 1.78 1257 6672 1505 4334 833 64.9 MiB 0.07 0.00 7.16403 -147.507 -7.16403 7.16403 1.03 0.000659443 0.00059934 0.0284977 0.0260253 36 3760 48 6.79088e+06 269440 648988. 2245.63 6.94 0.221806 0.194764 25390 158009 -1 3036 19 1393 3900 222139 50774 7.16403 7.16403 -164.771 -7.16403 0 0 828058. 2865.25 0.33 0.09 0.16 -1 -1 0.33 0.0319641 0.0287894 136 187 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_120.v common 8.67 vpr 64.59 MiB -1 -1 0.21 21100 13 0.22 -1 -1 36008 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 238 270 1 180 84 17 17 289 -1 unnamed_device 26.1 MiB 1.34 1087 13992 4322 7441 2229 64.6 MiB 0.10 0.00 6.46246 -142.744 -6.46246 6.46246 0.97 0.000352882 0.000323968 0.0432859 0.0392849 36 3063 24 6.79088e+06 269440 648988. 2245.63 3.78 0.180587 0.158374 25390 158009 -1 2408 18 1044 2626 147157 34182 6.71306 6.71306 -161.112 -6.71306 0 0 828058. 2865.25 0.31 0.06 0.16 -1 -1 0.31 0.026025 0.0233591 107 143 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_121.v common 9.80 vpr 64.86 MiB -1 -1 0.24 20660 12 0.27 -1 -1 36600 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 32 32 269 301 1 190 83 17 17 289 -1 unnamed_device 26.5 MiB 1.92 1275 7283 1750 5148 385 64.9 MiB 0.07 0.00 6.08307 -135.922 -6.08307 6.08307 0.97 0.000610965 0.000553166 0.0294309 0.0266772 36 3216 18 6.79088e+06 255968 648988. 2245.63 4.19 0.190373 0.168055 25390 158009 -1 2792 18 1340 3848 226937 49976 6.49817 6.49817 -154.816 -6.49817 0 0 828058. 2865.25 0.34 0.09 0.15 -1 -1 0.34 0.0333276 0.0301506 128 174 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_122.v common 33.92 vpr 65.39 MiB -1 -1 0.24 21584 15 0.63 -1 -1 36924 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 32 32 350 382 1 256 89 17 17 289 -1 unnamed_device 26.8 MiB 1.44 1577 12761 3228 7341 2192 65.4 MiB 0.14 0.00 7.81291 -164.314 -7.81291 7.81291 1.01 0.000869088 0.000779696 0.0618361 0.0562945 40 4220 23 6.79088e+06 336800 706193. 2443.58 28.00 0.557252 0.495239 26254 175826 -1 3781 36 2518 7709 675176 217865 8.47861 8.47861 -191.257 -8.47861 0 0 926341. 3205.33 0.38 0.27 0.17 -1 -1 0.38 0.0781193 0.0705045 183 255 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_123.v common 9.32 vpr 63.96 MiB -1 -1 0.18 20044 10 0.12 -1 -1 36068 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65496 30 32 172 204 1 133 74 17 17 289 -1 unnamed_device 25.6 MiB 1.89 807 5654 1363 3953 338 64.0 MiB 0.05 0.00 4.08102 -101.595 -4.08102 4.08102 1.00 0.000393798 0.000357704 0.0166063 0.0151482 36 2001 18 6.79088e+06 161664 648988. 2245.63 4.07 0.127037 0.110657 25390 158009 -1 1788 14 674 1576 105487 22802 4.25666 4.25666 -115.332 -4.25666 0 0 828058. 2865.25 0.32 0.04 0.15 -1 -1 0.32 0.0155918 0.0139992 66 81 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_124.v common 7.99 vpr 64.54 MiB -1 -1 0.20 20476 13 0.22 -1 -1 36252 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 30 32 228 260 1 176 79 17 17 289 -1 unnamed_device 26.0 MiB 1.94 1014 7853 1939 4885 1029 64.5 MiB 0.07 0.00 6.47021 -136.266 -6.47021 6.47021 0.98 0.000539157 0.000490316 0.0280103 0.0255431 36 2725 19 6.79088e+06 229024 648988. 2245.63 2.47 0.153388 0.134228 25390 158009 -1 2296 16 1062 2689 146494 33771 6.59551 6.59551 -149.884 -6.59551 0 0 828058. 2865.25 0.35 0.07 0.15 -1 -1 0.35 0.0268292 0.0243322 103 137 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_125.v common 11.32 vpr 64.77 MiB -1 -1 0.20 20612 12 0.24 -1 -1 36416 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 32 32 264 296 1 200 82 17 17 289 -1 unnamed_device 26.2 MiB 2.48 1199 7736 2108 5011 617 64.8 MiB 0.07 0.00 5.91852 -134.148 -5.91852 5.91852 0.97 0.000625705 0.000562419 0.0301486 0.0271835 36 3277 40 6.79088e+06 242496 648988. 2245.63 5.23 0.26081 0.228382 25390 158009 -1 2774 18 1292 3167 215082 46315 6.24403 6.24403 -158.176 -6.24403 0 0 828058. 2865.25 0.33 0.08 0.16 -1 -1 0.33 0.030421 0.0275071 117 169 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_126.v common 8.30 vpr 64.31 MiB -1 -1 0.17 20468 9 0.15 -1 -1 36280 -1 -1 18 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65852 25 32 183 215 1 134 75 17 17 289 -1 unnamed_device 25.8 MiB 1.03 748 12557 4155 7233 1169 64.3 MiB 0.08 0.00 4.14599 -82.3614 -4.14599 4.14599 0.98 0.000381224 0.000344708 0.0343683 0.0311003 36 2077 21 6.79088e+06 242496 648988. 2245.63 3.89 0.208082 0.181439 25390 158009 -1 1728 17 712 1966 118188 26376 4.307 4.307 -98.2556 -4.307 0 0 828058. 2865.25 0.33 0.05 0.14 -1 -1 0.33 0.0206596 0.0185783 86 102 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_127.v common 11.10 vpr 65.08 MiB -1 -1 0.24 20824 12 0.33 -1 -1 36236 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 300 332 1 226 85 17 17 289 -1 unnamed_device 26.6 MiB 1.93 1348 13291 3597 7574 2120 65.1 MiB 0.13 0.00 6.29447 -138.979 -6.29447 6.29447 1.03 0.000722297 0.000652999 0.0569613 0.0516711 46 3480 31 6.79088e+06 282912 828058. 2865.25 5.11 0.341665 0.303733 27406 200422 -1 2966 19 1517 4307 233358 51243 6.54507 6.54507 -156.807 -6.54507 0 0 1.01997e+06 3529.29 0.42 0.10 0.19 -1 -1 0.42 0.038968 0.0354183 143 205 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_128.v common 10.94 vpr 64.98 MiB -1 -1 0.26 21468 13 0.38 -1 -1 36180 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 31 32 290 322 1 215 85 17 17 289 -1 unnamed_device 26.5 MiB 2.33 1247 13291 4075 7108 2108 65.0 MiB 0.12 0.00 7.1786 -147.221 -7.1786 7.1786 1.00 0.000655047 0.000593251 0.0529916 0.0480708 42 3817 37 6.79088e+06 296384 744469. 2576.02 4.64 0.336498 0.298694 26542 182613 -1 2871 16 1270 3673 226977 51255 7.4292 7.4292 -164.387 -7.4292 0 0 949917. 3286.91 0.38 0.08 0.17 -1 -1 0.38 0.0309463 0.0281526 147 197 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_001.v common 8.87 vpr 64.89 MiB -1 -1 0.16 20524 1 0.03 -1 -1 33788 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 354 285 1 207 90 17 17 289 -1 unnamed_device 26.5 MiB 3.71 1177 14964 4681 8716 1567 64.9 MiB 0.14 0.00 4.34064 -135.503 -4.34064 4.34064 0.97 0.000530122 0.000485565 0.0401952 0.0367217 34 2809 23 6.87369e+06 363320 618332. 2139.56 1.75 0.159752 0.140179 25762 151098 -1 2380 24 1679 2542 167125 39812 4.5646 4.5646 -154.478 -4.5646 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.0262073 0.0230064 142 47 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_002.v common 8.17 vpr 65.18 MiB -1 -1 0.18 20392 1 0.03 -1 -1 33972 -1 -1 24 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 30 32 363 293 1 199 86 17 17 289 -1 unnamed_device 26.7 MiB 3.05 922 10481 2952 6350 1179 65.2 MiB 0.10 0.00 3.52915 -107.744 -3.52915 3.52915 1.02 0.000543741 0.000496277 0.030427 0.0277814 34 2561 26 6.87369e+06 335372 618332. 2139.56 1.71 0.129622 0.113516 25762 151098 -1 2074 22 1903 2892 191846 47467 4.20536 4.20536 -139.833 -4.20536 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0253871 0.0224135 138 58 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_003.v common 8.14 vpr 64.89 MiB -1 -1 0.16 20544 1 0.03 -1 -1 33768 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 32 32 299 247 1 190 85 17 17 289 -1 unnamed_device 26.3 MiB 3.10 992 11617 3428 6996 1193 64.9 MiB 0.10 0.00 3.45035 -98.6494 -3.45035 3.45035 1.04 0.000446805 0.000410383 0.0308911 0.0281712 34 2583 35 6.87369e+06 293451 618332. 2139.56 1.64 0.123838 0.108737 25762 151098 -1 2000 22 1294 1717 118595 28731 3.96006 3.96006 -120.797 -3.96006 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0229921 0.0203577 124 26 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_004.v common 6.39 vpr 64.66 MiB -1 -1 0.16 20356 1 0.03 -1 -1 33668 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66208 29 32 308 248 1 172 90 17 17 289 -1 unnamed_device 26.1 MiB 1.21 898 16572 4449 11023 1100 64.7 MiB 0.14 0.00 3.56482 -101.305 -3.56482 3.56482 0.99 0.000471831 0.00043101 0.0406 0.0370005 34 2210 31 6.87369e+06 405241 618332. 2139.56 1.83 0.151209 0.13202 25762 151098 -1 1930 20 1441 2644 175048 41217 3.7494 3.7494 -121.112 -3.7494 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0211139 0.0187061 124 25 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_005.v common 6.34 vpr 65.05 MiB -1 -1 0.16 20392 1 0.03 -1 -1 33748 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 336 268 1 181 91 17 17 289 -1 unnamed_device 26.7 MiB 1.51 1028 16819 5296 9779 1744 65.0 MiB 0.15 0.00 3.70412 -112.048 -3.70412 3.70412 1.02 0.000516064 0.00046196 0.0443489 0.040322 28 2670 20 6.87369e+06 377294 531479. 1839.03 1.43 0.121863 0.108635 24610 126494 -1 2243 22 1734 3470 240622 58872 3.8264 3.8264 -135.812 -3.8264 0 0 648988. 2245.63 0.28 0.09 0.12 -1 -1 0.28 0.0265355 0.0234643 131 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_006.v common 8.57 vpr 65.11 MiB -1 -1 0.15 20680 1 0.03 -1 -1 33748 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 32 32 366 295 1 189 94 17 17 289 -1 unnamed_device 26.7 MiB 1.74 986 15643 5357 7618 2668 65.1 MiB 0.13 0.00 2.80487 -97.9383 -2.80487 2.80487 0.99 0.000477283 0.000432173 0.0392037 0.0356029 34 2703 39 6.87369e+06 419215 618332. 2139.56 3.43 0.193047 0.167908 25762 151098 -1 1910 18 1246 1993 131828 32260 3.09961 3.09961 -115.584 -3.09961 0 0 787024. 2723.27 0.32 0.06 0.14 -1 -1 0.32 0.0226099 0.0200804 136 55 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_007.v common 6.90 vpr 64.54 MiB -1 -1 0.15 20140 1 0.03 -1 -1 34236 -1 -1 19 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66084 27 32 259 221 1 141 78 17 17 289 -1 unnamed_device 26.0 MiB 2.71 652 9374 2426 6061 887 64.5 MiB 0.08 0.00 2.94598 -86.1959 -2.94598 2.94598 0.98 0.00040418 0.000369495 0.0249546 0.0228792 28 1808 30 6.87369e+06 265503 531479. 1839.03 0.98 0.0826134 0.0724759 24610 126494 -1 1517 22 1146 1921 132892 31277 3.01326 3.01326 -104.75 -3.01326 0 0 648988. 2245.63 0.27 0.06 0.12 -1 -1 0.27 0.0197662 0.0173841 97 26 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_008.v common 5.16 vpr 64.67 MiB -1 -1 0.17 20196 1 0.03 -1 -1 34016 -1 -1 32 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 31 32 271 219 1 164 95 17 17 289 -1 unnamed_device 26.1 MiB 1.00 999 14999 4064 8375 2560 64.7 MiB 0.10 0.00 2.74825 -87.8958 -2.74825 2.74825 0.98 0.000434638 0.000395462 0.0291757 0.0265308 28 2253 21 6.87369e+06 447163 531479. 1839.03 0.94 0.0837238 0.0735558 24610 126494 -1 2124 20 1167 2027 160019 35454 2.80696 2.80696 -104.353 -2.80696 0 0 648988. 2245.63 0.27 0.06 0.13 -1 -1 0.27 0.0195331 0.0171624 119 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_009.v common 7.75 vpr 64.75 MiB -1 -1 0.15 20272 1 0.03 -1 -1 33992 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 31 32 317 271 1 175 80 17 17 289 -1 unnamed_device 26.2 MiB 2.83 917 8852 1937 6476 439 64.8 MiB 0.07 0.00 2.65757 -94.7492 -2.65757 2.65757 1.00 0.000470603 0.000430278 0.025281 0.0231464 34 2323 20 6.87369e+06 237555 618332. 2139.56 1.61 0.135731 0.119386 25762 151098 -1 2027 18 1205 1735 136615 32162 3.19191 3.19191 -120.194 -3.19191 0 0 787024. 2723.27 0.32 0.06 0.14 -1 -1 0.32 0.0201008 0.0179351 113 60 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_010.v common 9.44 vpr 64.71 MiB -1 -1 0.15 20332 1 0.03 -1 -1 33556 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 32 32 298 248 1 162 80 17 17 289 -1 unnamed_device 26.3 MiB 4.55 889 10056 2818 6482 756 64.7 MiB 0.09 0.00 3.21683 -110.53 -3.21683 3.21683 1.00 0.00046968 0.000429948 0.0287489 0.0262693 34 2192 23 6.87369e+06 223581 618332. 2139.56 1.58 0.128949 0.112382 25762 151098 -1 1796 22 1248 2103 150186 35472 3.07126 3.07126 -123.789 -3.07126 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0220691 0.019436 107 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_011.v common 8.28 vpr 64.45 MiB -1 -1 0.15 20152 1 0.03 -1 -1 33700 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66000 30 32 303 262 1 148 78 17 17 289 -1 unnamed_device 26.1 MiB 3.52 737 12694 3600 8055 1039 64.5 MiB 0.10 0.00 3.28893 -98.4024 -3.28893 3.28893 0.99 0.000447728 0.000407278 0.0357576 0.0325853 34 1826 24 6.87369e+06 223581 618332. 2139.56 1.54 0.133871 0.116583 25762 151098 -1 1551 22 985 1650 114157 27385 2.95396 2.95396 -108.82 -2.95396 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.0205951 0.0180308 98 58 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_012.v common 7.41 vpr 64.68 MiB -1 -1 0.15 20460 1 0.03 -1 -1 33444 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66236 32 32 276 237 1 171 81 17 17 289 -1 unnamed_device 26.3 MiB 2.59 867 9181 2335 6374 472 64.7 MiB 0.07 0.00 2.8828 -91.9305 -2.8828 2.8828 1.00 0.000504833 0.000457935 0.0229776 0.0209028 34 2216 30 6.87369e+06 237555 618332. 2139.56 1.56 0.121264 0.105224 25762 151098 -1 1813 22 1087 1561 122922 29866 2.93031 2.93031 -112.798 -2.93031 0 0 787024. 2723.27 0.33 0.06 0.14 -1 -1 0.33 0.0207033 0.0182625 107 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_013.v common 9.90 vpr 65.14 MiB -1 -1 0.16 20440 1 0.03 -1 -1 33748 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66704 32 32 344 272 1 209 87 17 17 289 -1 unnamed_device 26.7 MiB 4.43 1138 15447 4537 8733 2177 65.1 MiB 0.15 0.00 3.36593 -113.586 -3.36593 3.36593 1.03 0.000539406 0.000485577 0.0461013 0.0419692 34 2983 26 6.87369e+06 321398 618332. 2139.56 1.95 0.189399 0.167998 25762 151098 -1 2349 21 1886 2901 224046 50434 3.22961 3.22961 -127.661 -3.22961 0 0 787024. 2723.27 0.34 0.09 0.15 -1 -1 0.34 0.0279714 0.0250075 142 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_014.v common 7.37 vpr 64.89 MiB -1 -1 0.16 20616 1 0.03 -1 -1 33776 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 363 295 1 181 95 17 17 289 -1 unnamed_device 26.5 MiB 2.89 998 10895 2604 7465 826 64.9 MiB 0.11 0.00 3.88148 -119.939 -3.88148 3.88148 0.98 0.000525743 0.000479835 0.0284034 0.0259517 32 2550 39 6.87369e+06 433189 586450. 2029.24 1.14 0.111381 0.0976126 25474 144626 -1 2094 23 1695 2766 193816 46863 3.88246 3.88246 -138.427 -3.88246 0 0 744469. 2576.02 0.30 0.08 0.14 -1 -1 0.30 0.0265057 0.023304 133 58 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_015.v common 6.06 vpr 64.55 MiB -1 -1 0.16 20232 1 0.03 -1 -1 33660 -1 -1 19 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 29 32 248 215 1 142 80 17 17 289 -1 unnamed_device 26.0 MiB 1.89 770 7992 2105 5116 771 64.5 MiB 0.06 0.00 2.63557 -83.4646 -2.63557 2.63557 0.99 0.00037761 0.00034424 0.0199698 0.0182771 32 2039 21 6.87369e+06 265503 586450. 2029.24 0.96 0.0693817 0.0609471 25474 144626 -1 1772 22 1091 1758 142486 33123 3.06661 3.06661 -100.051 -3.06661 0 0 744469. 2576.02 0.30 0.06 0.14 -1 -1 0.30 0.0185271 0.0163363 94 21 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_016.v common 7.72 vpr 65.24 MiB -1 -1 0.16 20940 1 0.03 -1 -1 34004 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 32 32 370 297 1 191 88 17 17 289 -1 unnamed_device 26.8 MiB 2.41 1005 16858 5571 8447 2840 65.2 MiB 0.15 0.00 2.9366 -101.257 -2.9366 2.9366 1.02 0.000513403 0.000466527 0.0481765 0.0439457 34 2580 22 6.87369e+06 335372 618332. 2139.56 1.81 0.173117 0.152886 25762 151098 -1 2097 23 1686 2926 217132 49880 3.11061 3.11061 -120.66 -3.11061 0 0 787024. 2723.27 0.33 0.09 0.15 -1 -1 0.33 0.0288263 0.0254559 135 55 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_017.v common 9.23 vpr 64.96 MiB -1 -1 0.16 20940 1 0.03 -1 -1 33972 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 32 32 338 269 1 204 85 17 17 289 -1 unnamed_device 26.6 MiB 4.38 1188 11617 3111 7417 1089 65.0 MiB 0.10 0.00 3.24063 -110.851 -3.24063 3.24063 0.92 0.000495993 0.000456126 0.031603 0.029013 34 2957 23 6.87369e+06 293451 618332. 2139.56 1.70 0.154703 0.136884 25762 151098 -1 2401 19 1559 2238 174291 39089 3.35611 3.35611 -128.551 -3.35611 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0230696 0.0206234 140 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_018.v common 7.32 vpr 64.83 MiB -1 -1 0.15 20388 1 0.03 -1 -1 33548 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 323 276 1 156 92 17 17 289 -1 unnamed_device 26.3 MiB 2.99 863 15410 4744 8645 2021 64.8 MiB 0.12 0.00 2.46506 -93.4938 -2.46506 2.46506 1.01 0.000479451 0.000437969 0.0371409 0.0338997 28 2057 18 6.87369e+06 391268 531479. 1839.03 1.05 0.100882 0.0892974 24610 126494 -1 1865 19 1150 1862 139590 32128 2.31317 2.31317 -107.155 -2.31317 0 0 648988. 2245.63 0.26 0.06 0.12 -1 -1 0.26 0.0207228 0.0182867 109 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_019.v common 5.79 vpr 64.29 MiB -1 -1 0.15 20004 1 0.03 -1 -1 33772 -1 -1 14 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65828 30 32 222 206 1 117 76 17 17 289 -1 unnamed_device 25.9 MiB 0.71 462 11276 4737 5817 722 64.3 MiB 0.07 0.00 2.10903 -68.8572 -2.10903 2.10903 0.99 0.000359638 0.000328556 0.0264959 0.0242348 34 1365 21 6.87369e+06 195634 618332. 2139.56 1.88 0.106226 0.0927836 25762 151098 -1 1104 20 690 950 76096 18762 2.07502 2.07502 -82.2957 -2.07502 0 0 787024. 2723.27 0.31 0.04 0.15 -1 -1 0.31 0.0156823 0.0137928 71 29 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_020.v common 8.07 vpr 64.87 MiB -1 -1 0.14 20372 1 0.03 -1 -1 33904 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 31 32 291 243 1 178 82 17 17 289 -1 unnamed_device 26.4 MiB 3.30 918 11830 3707 7291 832 64.9 MiB 0.10 0.00 3.93483 -123.602 -3.93483 3.93483 1.00 0.000419696 0.000381719 0.0297193 0.0270677 34 2233 21 6.87369e+06 265503 618332. 2139.56 1.53 0.124135 0.108029 25762 151098 -1 1854 23 1282 1908 118796 30215 3.67321 3.67321 -137.451 -3.67321 0 0 787024. 2723.27 0.32 0.06 0.14 -1 -1 0.32 0.021361 0.0188106 116 30 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_021.v common 5.39 vpr 64.95 MiB -1 -1 0.15 20312 1 0.03 -1 -1 33908 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 32 32 342 271 1 181 99 17 17 289 -1 unnamed_device 26.6 MiB 1.04 1067 18111 5017 10898 2196 64.9 MiB 0.14 0.00 3.37999 -112.727 -3.37999 3.37999 0.97 0.000486899 0.000443204 0.0423989 0.0386919 32 2564 28 6.87369e+06 489084 586450. 2029.24 1.04 0.116158 0.102885 25474 144626 -1 2132 24 1588 2328 177384 40971 3.7954 3.7954 -135.85 -3.7954 0 0 744469. 2576.02 0.30 0.08 0.13 -1 -1 0.30 0.0275364 0.0242613 137 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_022.v common 8.03 vpr 65.28 MiB -1 -1 0.16 20528 1 0.03 -1 -1 33916 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66848 32 32 372 300 1 206 86 17 17 289 -1 unnamed_device 26.8 MiB 2.55 1218 14639 4247 8257 2135 65.3 MiB 0.14 0.00 3.42215 -109.966 -3.42215 3.42215 1.01 0.000537196 0.000490845 0.0449348 0.0411566 34 3095 24 6.87369e+06 307425 618332. 2139.56 1.99 0.188413 0.166854 25762 151098 -1 2520 20 1645 2600 205281 46872 4.01106 4.01106 -136.283 -4.01106 0 0 787024. 2723.27 0.32 0.09 0.15 -1 -1 0.32 0.0283655 0.0253677 142 59 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_023.v common 7.95 vpr 64.29 MiB -1 -1 0.13 20092 1 0.03 -1 -1 34244 -1 -1 17 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65828 26 32 190 182 1 108 75 17 17 289 -1 unnamed_device 25.9 MiB 2.02 412 9871 4066 5118 687 64.3 MiB 0.05 0.00 2.06503 -58.1579 -2.06503 2.06503 0.95 0.000287677 0.000261614 0.0198018 0.018042 30 1087 21 6.87369e+06 237555 556674. 1926.21 2.86 0.0996421 0.0861844 25186 138497 -1 877 19 553 789 49273 12834 2.19412 2.19412 -72.8097 -2.19412 0 0 706193. 2443.58 0.30 0.03 0.13 -1 -1 0.30 0.0133089 0.0117312 67 21 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_024.v common 5.92 vpr 64.71 MiB -1 -1 0.14 20360 1 0.03 -1 -1 33808 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 32 32 285 227 1 169 87 17 17 289 -1 unnamed_device 26.2 MiB 1.11 851 10455 2880 5513 2062 64.7 MiB 0.08 0.00 3.55682 -101.679 -3.55682 3.55682 0.91 0.000413711 0.000379129 0.0246038 0.0224924 34 2405 23 6.87369e+06 321398 618332. 2139.56 1.75 0.134406 0.11869 25762 151098 -1 1916 22 1539 2749 213233 49275 3.7021 3.7021 -119.802 -3.7021 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0220562 0.0195458 119 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_025.v common 4.77 vpr 64.16 MiB -1 -1 0.14 20028 1 0.03 -1 -1 33492 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65696 32 32 173 169 1 114 76 17 17 289 -1 unnamed_device 25.9 MiB 0.52 551 10636 4310 5626 700 64.2 MiB 0.06 0.00 2.08703 -66.4743 -2.08703 2.08703 0.99 0.000307136 0.00028055 0.0213795 0.0195381 28 1454 27 6.87369e+06 167686 531479. 1839.03 1.10 0.0664323 0.0582435 24610 126494 -1 1257 21 752 894 75380 18377 2.03582 2.03582 -83.9709 -2.03582 0 0 648988. 2245.63 0.27 0.04 0.13 -1 -1 0.27 0.0138988 0.012228 65 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_026.v common 5.24 vpr 64.77 MiB -1 -1 0.15 20256 1 0.03 -1 -1 33800 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 32 32 300 245 1 169 94 17 17 289 -1 unnamed_device 26.3 MiB 1.03 1022 16495 4394 10232 1869 64.8 MiB 0.12 0.00 3.51652 -104.603 -3.51652 3.51652 0.98 0.000457317 0.000417807 0.0367459 0.0335474 28 2125 21 6.87369e+06 419215 531479. 1839.03 0.94 0.0945265 0.0836015 24610 126494 -1 1986 18 1108 1772 118184 26822 3.6508 3.6508 -122.006 -3.6508 0 0 648988. 2245.63 0.27 0.06 0.12 -1 -1 0.27 0.0192063 0.0169604 120 21 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_027.v common 5.19 vpr 64.73 MiB -1 -1 0.14 20244 1 0.03 -1 -1 33760 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 32 32 297 233 1 177 95 17 17 289 -1 unnamed_device 26.2 MiB 1.00 1024 14783 4090 8961 1732 64.7 MiB 0.11 0.00 2.75925 -91.8235 -2.75925 2.75925 0.99 0.000448075 0.000410912 0.0320072 0.0289499 30 2128 23 6.87369e+06 433189 556674. 1926.21 0.95 0.0904458 0.0792564 25186 138497 -1 1851 17 971 1798 101586 23915 2.72066 2.72066 -106.9 -2.72066 0 0 706193. 2443.58 0.29 0.05 0.12 -1 -1 0.29 0.0177303 0.0157756 130 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_028.v common 7.27 vpr 65.23 MiB -1 -1 0.15 20320 1 0.03 -1 -1 33708 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66792 32 32 338 277 1 186 92 17 17 289 -1 unnamed_device 26.8 MiB 2.10 1103 17066 5052 9903 2111 65.2 MiB 0.14 0.00 3.71518 -110.968 -3.71518 3.71518 1.02 0.000486265 0.000442602 0.0432026 0.0394892 34 2720 25 6.87369e+06 391268 618332. 2139.56 1.74 0.156109 0.137551 25762 151098 -1 2216 23 1534 2672 204456 46803 3.79646 3.79646 -129.989 -3.79646 0 0 787024. 2723.27 0.31 0.08 0.14 -1 -1 0.31 0.0255068 0.0224976 131 47 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_029.v common 7.02 vpr 64.75 MiB -1 -1 0.15 20508 1 0.03 -1 -1 33812 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 32 32 284 241 1 148 80 17 17 289 -1 unnamed_device 26.3 MiB 1.10 765 12636 4413 6263 1960 64.8 MiB 0.10 0.00 2.61357 -91.4633 -2.61357 2.61357 0.99 0.000437651 0.000398492 0.0337386 0.0308345 30 1960 22 6.87369e+06 223581 556674. 1926.21 2.66 0.152121 0.133226 25186 138497 -1 1510 19 758 1168 78623 17919 3.02781 3.02781 -108.932 -3.02781 0 0 706193. 2443.58 0.30 0.05 0.14 -1 -1 0.30 0.0192152 0.0169885 99 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_030.v common 7.19 vpr 64.58 MiB -1 -1 0.15 20464 1 0.03 -1 -1 33652 -1 -1 26 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66128 30 32 262 227 1 138 88 17 17 289 -1 unnamed_device 26.0 MiB 1.45 576 12958 3695 6144 3119 64.6 MiB 0.08 0.00 2.60257 -78.4361 -2.60257 2.60257 1.01 0.000447551 0.000411853 0.0294021 0.02687 36 1662 26 6.87369e+06 363320 648988. 2245.63 2.36 0.146573 0.129956 26050 158493 -1 1310 28 1089 1675 120065 30149 2.88831 2.88831 -92.7261 -2.88831 0 0 828058. 2865.25 0.33 0.06 0.16 -1 -1 0.33 0.0241271 0.0211902 97 29 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_031.v common 4.97 vpr 64.54 MiB -1 -1 0.13 20192 1 0.03 -1 -1 33712 -1 -1 18 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66092 28 32 260 223 1 140 78 17 17 289 -1 unnamed_device 26.0 MiB 1.00 771 12362 3683 7395 1284 64.5 MiB 0.09 0.00 2.8296 -86.1817 -2.8296 2.8296 0.93 0.000372204 0.000341242 0.0288041 0.0262997 28 2036 21 6.87369e+06 251529 531479. 1839.03 0.97 0.0843313 0.07461 24610 126494 -1 1836 21 1191 2109 166891 38077 2.87696 2.87696 -107.409 -2.87696 0 0 648988. 2245.63 0.26 0.06 0.11 -1 -1 0.26 0.0193844 0.0171553 95 27 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_032.v common 5.13 vpr 64.44 MiB -1 -1 0.14 20192 1 0.03 -1 -1 33724 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65984 32 32 253 210 1 156 81 17 17 289 -1 unnamed_device 25.9 MiB 0.85 713 9881 2413 7196 272 64.4 MiB 0.08 0.00 3.20393 -96.1649 -3.20393 3.20393 0.98 0.000414779 0.000377792 0.0252237 0.022977 32 2205 25 6.87369e+06 237555 586450. 2029.24 1.05 0.0847642 0.0745982 25474 144626 -1 1703 21 1301 2108 154665 36780 3.03556 3.03556 -116.364 -3.03556 0 0 744469. 2576.02 0.30 0.06 0.14 -1 -1 0.30 0.018644 0.0164499 101 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_033.v common 5.40 vpr 64.77 MiB -1 -1 0.16 20304 1 0.03 -1 -1 33708 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 31 32 271 231 1 149 89 17 17 289 -1 unnamed_device 26.4 MiB 1.05 695 8009 1713 6016 280 64.8 MiB 0.06 0.00 2.8296 -86.9587 -2.8296 2.8296 0.98 0.00040744 0.000375036 0.0178734 0.0162506 28 1982 28 6.87369e+06 363320 531479. 1839.03 1.17 0.0827845 0.0727254 24610 126494 -1 1746 18 1095 1807 137591 33480 3.06161 3.06161 -112.158 -3.06161 0 0 648988. 2245.63 0.28 0.05 0.11 -1 -1 0.28 0.017661 0.0155369 102 26 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_034.v common 8.20 vpr 64.84 MiB -1 -1 0.16 20196 1 0.03 -1 -1 33752 -1 -1 25 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 29 32 291 250 1 154 86 17 17 289 -1 unnamed_device 26.4 MiB 3.45 738 14072 4747 6705 2620 64.8 MiB 0.10 0.00 2.42106 -79.5498 -2.42106 2.42106 0.97 0.000428664 0.000387012 0.0326551 0.029782 34 1939 15 6.87369e+06 349346 618332. 2139.56 1.48 0.119736 0.104564 25762 151098 -1 1564 17 1055 1555 101512 25686 2.33947 2.33947 -94.2333 -2.33947 0 0 787024. 2723.27 0.30 0.05 0.15 -1 -1 0.30 0.0173234 0.0154148 106 48 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_035.v common 8.90 vpr 65.26 MiB -1 -1 0.16 20396 1 0.03 -1 -1 33576 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 32 32 367 282 1 201 104 17 17 289 -1 unnamed_device 26.8 MiB 4.22 1219 13280 3569 8194 1517 65.3 MiB 0.13 0.00 3.29679 -102.41 -3.29679 3.29679 0.97 0.000543947 0.000495038 0.0312267 0.028413 28 2894 22 6.87369e+06 558954 531479. 1839.03 1.39 0.107729 0.0948249 24610 126494 -1 2617 19 1491 2849 215708 47776 3.7714 3.7714 -130.818 -3.7714 0 0 648988. 2245.63 0.27 0.08 0.12 -1 -1 0.27 0.0232107 0.0205317 156 26 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_036.v common 7.86 vpr 65.30 MiB -1 -1 0.17 20436 1 0.03 -1 -1 33956 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 32 32 391 311 1 194 102 17 17 289 -1 unnamed_device 26.9 MiB 3.64 940 17714 5616 9200 2898 65.3 MiB 0.14 0.00 3.23878 -109.846 -3.23878 3.23878 0.92 0.000513 0.000468583 0.0415707 0.0377245 30 2350 23 6.87369e+06 531006 556674. 1926.21 1.01 0.122108 0.108084 25186 138497 -1 1937 21 1590 2674 149357 35584 3.06546 3.06546 -122.025 -3.06546 0 0 706193. 2443.58 0.28 0.07 0.14 -1 -1 0.28 0.025291 0.0222031 148 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_037.v common 7.69 vpr 64.80 MiB -1 -1 0.16 20392 1 0.03 -1 -1 34028 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 31 32 279 237 1 167 81 17 17 289 -1 unnamed_device 26.4 MiB 2.50 810 13206 4271 6460 2475 64.8 MiB 0.11 0.00 3.19663 -96.9818 -3.19663 3.19663 1.02 0.00043329 0.000397202 0.0348978 0.0320189 34 2174 32 6.87369e+06 251529 618332. 2139.56 1.77 0.132115 0.116939 25762 151098 -1 1713 22 1270 1929 154883 36399 3.4088 3.4088 -117.13 -3.4088 0 0 787024. 2723.27 0.33 0.06 0.15 -1 -1 0.33 0.0213533 0.0189005 109 30 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_038.v common 8.77 vpr 64.97 MiB -1 -1 0.17 20448 1 0.03 -1 -1 33816 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66532 31 32 370 297 1 187 89 17 17 289 -1 unnamed_device 26.6 MiB 3.05 936 14939 5428 6883 2628 65.0 MiB 0.13 0.00 2.9989 -97.2544 -2.9989 2.9989 0.99 0.000549806 0.000502388 0.0424625 0.0387551 36 2368 22 6.87369e+06 363320 648988. 2245.63 2.30 0.163804 0.143488 26050 158493 -1 1921 21 1517 2578 157393 39421 3.02731 3.02731 -113.564 -3.02731 0 0 828058. 2865.25 0.33 0.08 0.15 -1 -1 0.33 0.0278385 0.0247748 136 57 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_039.v common 10.45 vpr 65.39 MiB -1 -1 0.16 20636 1 0.03 -1 -1 33812 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66956 31 32 377 302 1 237 88 17 17 289 -1 unnamed_device 26.9 MiB 4.68 1289 8863 2179 6088 596 65.4 MiB 0.09 0.00 4.27988 -132.997 -4.27988 4.27988 1.01 0.000574372 0.000524876 0.0271559 0.0248085 34 3412 24 6.87369e+06 349346 618332. 2139.56 2.33 0.167368 0.147072 25762 151098 -1 2757 22 2235 3277 249084 59014 4.9935 4.9935 -173.062 -4.9935 0 0 787024. 2723.27 0.32 0.10 0.14 -1 -1 0.32 0.0304781 0.0272007 159 60 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_040.v common 9.33 vpr 65.12 MiB -1 -1 0.16 20552 1 0.03 -1 -1 33760 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 31 32 383 305 1 212 90 17 17 289 -1 unnamed_device 26.6 MiB 3.99 1042 16773 5823 7847 3103 65.1 MiB 0.14 0.00 4.46114 -135.657 -4.46114 4.46114 0.99 0.000526006 0.000477786 0.0450402 0.0409493 34 2923 43 6.87369e+06 377294 618332. 2139.56 1.96 0.189666 0.166062 25762 151098 -1 2260 23 1781 2855 219545 50273 4.79975 4.79975 -158.187 -4.79975 0 0 787024. 2723.27 0.32 0.08 0.14 -1 -1 0.32 0.0284582 0.0250834 152 60 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_041.v common 8.38 vpr 65.08 MiB -1 -1 0.16 20756 1 0.03 -1 -1 33900 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 31 32 352 285 1 186 88 17 17 289 -1 unnamed_device 26.7 MiB 3.48 1050 11203 3066 7252 885 65.1 MiB 0.10 0.00 3.22963 -108.037 -3.22963 3.22963 0.98 0.000496973 0.000450881 0.0314133 0.0285372 32 3017 25 6.87369e+06 349346 586450. 2029.24 1.57 0.121883 0.106644 25474 144626 -1 2455 23 1686 2771 249456 57067 3.44521 3.44521 -130.073 -3.44521 0 0 744469. 2576.02 0.30 0.09 0.14 -1 -1 0.30 0.02576 0.0226881 131 51 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_042.v common 9.51 vpr 64.69 MiB -1 -1 0.16 20132 1 0.03 -1 -1 33696 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 32 32 291 242 1 183 84 17 17 289 -1 unnamed_device 26.2 MiB 2.99 966 14724 5049 7601 2074 64.7 MiB 0.11 0.00 3.40015 -96.0689 -3.40015 3.40015 0.98 0.000378132 0.000344573 0.0350411 0.0319927 34 2489 40 6.87369e+06 279477 618332. 2139.56 3.18 0.204661 0.177714 25762 151098 -1 2008 23 1386 2009 139270 32864 3.90306 3.90306 -119.695 -3.90306 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0220535 0.0194602 119 24 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_043.v common 7.99 vpr 65.57 MiB -1 -1 0.17 20396 1 0.03 -1 -1 33720 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67148 32 32 457 356 1 225 102 17 17 289 -1 unnamed_device 27.0 MiB 3.70 1258 20094 5516 12437 2141 65.6 MiB 0.18 0.00 3.82038 -129.116 -3.82038 3.82038 0.93 0.000599457 0.00054941 0.0539345 0.0493521 30 2954 20 6.87369e+06 531006 556674. 1926.21 1.04 0.140254 0.125138 25186 138497 -1 2426 21 1434 2422 141374 32576 3.95376 3.95376 -148.323 -3.95376 0 0 706193. 2443.58 0.27 0.07 0.12 -1 -1 0.27 0.0287311 0.02546 173 84 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_044.v common 6.96 vpr 64.67 MiB -1 -1 0.15 20252 1 0.03 -1 -1 33800 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 31 32 261 225 1 148 85 17 17 289 -1 unnamed_device 26.3 MiB 2.07 856 12733 3747 7816 1170 64.7 MiB 0.09 0.00 2.78925 -88.0035 -2.78925 2.78925 1.05 0.000417559 0.000381119 0.0304038 0.027806 32 1948 22 6.87369e+06 307425 586450. 2029.24 1.49 0.106756 0.0941665 25474 144626 -1 1715 20 1061 1868 135112 31159 2.81396 2.81396 -103.371 -2.81396 0 0 744469. 2576.02 0.32 0.06 0.14 -1 -1 0.32 0.0207039 0.0183469 96 24 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_045.v common 7.86 vpr 65.21 MiB -1 -1 0.17 20668 1 0.03 -1 -1 33772 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 31 32 337 267 1 207 86 17 17 289 -1 unnamed_device 26.8 MiB 2.78 1182 10670 2923 6871 876 65.2 MiB 0.11 0.00 3.78918 -119.277 -3.78918 3.78918 0.99 0.000520645 0.000475956 0.0312183 0.0285447 28 3155 35 6.87369e+06 321398 531479. 1839.03 1.77 0.118398 0.104704 24610 126494 -1 2584 21 1804 2627 218272 51119 4.53726 4.53726 -150.77 -4.53726 0 0 648988. 2245.63 0.27 0.08 0.12 -1 -1 0.27 0.02483 0.0219707 140 30 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_046.v common 7.54 vpr 65.11 MiB -1 -1 0.15 20760 1 0.03 -1 -1 33884 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 349 284 1 183 96 17 17 289 -1 unnamed_device 26.8 MiB 2.19 1105 14988 3782 9101 2105 65.1 MiB 0.12 0.00 2.9146 -97.0245 -2.9146 2.9146 0.99 0.000442662 0.000400664 0.0338809 0.0307236 26 3141 44 6.87369e+06 447163 503264. 1741.40 2.04 0.130686 0.115084 24322 120374 -1 2720 22 1706 2939 292224 64982 3.45351 3.45351 -127.503 -3.45351 0 0 618332. 2139.56 0.26 0.10 0.12 -1 -1 0.26 0.0288846 0.0256303 132 50 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_047.v common 5.88 vpr 64.79 MiB -1 -1 0.15 20156 1 0.03 -1 -1 33624 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66348 32 32 291 230 1 175 90 17 17 289 -1 unnamed_device 26.2 MiB 0.84 1053 12954 3412 7612 1930 64.8 MiB 0.11 0.00 3.37079 -108.14 -3.37079 3.37079 0.98 0.000444798 0.000405485 0.0308582 0.0281572 34 2471 21 6.87369e+06 363320 618332. 2139.56 1.72 0.13157 0.115116 25762 151098 -1 2107 22 1483 2767 191434 43991 3.6461 3.6461 -126.9 -3.6461 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0229406 0.0202144 123 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_048.v common 8.12 vpr 65.18 MiB -1 -1 0.17 20676 1 0.03 -1 -1 33900 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 32 32 353 287 1 203 86 17 17 289 -1 unnamed_device 26.8 MiB 3.57 1001 10670 2489 7335 846 65.2 MiB 0.10 0.00 3.93315 -118.621 -3.93315 3.93315 0.98 0.000523777 0.000477645 0.0316426 0.0288809 30 2932 31 6.87369e+06 307425 556674. 1926.21 1.24 0.1235 0.10952 25186 138497 -1 1999 21 1237 1726 105313 26342 3.3592 3.3592 -128.408 -3.3592 0 0 706193. 2443.58 0.30 0.06 0.13 -1 -1 0.30 0.0262871 0.023459 136 52 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_049.v common 8.30 vpr 65.20 MiB -1 -1 0.14 20664 1 0.03 -1 -1 33864 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 32 32 361 291 1 189 96 17 17 289 -1 unnamed_device 26.8 MiB 3.38 1088 15426 3940 9450 2036 65.2 MiB 0.12 0.00 2.9366 -100.974 -2.9366 2.9366 0.92 0.000477293 0.000436433 0.0375064 0.0342573 26 2893 36 6.87369e+06 447163 503264. 1741.40 1.85 0.134751 0.120259 24322 120374 -1 2611 19 1462 2495 250775 54414 3.48451 3.48451 -132.026 -3.48451 0 0 618332. 2139.56 0.24 0.09 0.10 -1 -1 0.24 0.0253757 0.0226314 136 52 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_050.v common 12.04 vpr 65.18 MiB -1 -1 0.15 20856 1 0.03 -1 -1 33764 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 382 305 1 193 99 17 17 289 -1 unnamed_device 26.7 MiB 3.43 1013 17883 5563 9623 2697 65.2 MiB 0.14 0.00 3.24063 -107.437 -3.24063 3.24063 0.96 0.000448855 0.000410189 0.0416323 0.0379575 28 3049 37 6.87369e+06 489084 531479. 1839.03 5.29 0.217684 0.190557 24610 126494 -1 2493 23 1852 3002 229277 54107 3.51476 3.51476 -127.233 -3.51476 0 0 648988. 2245.63 0.29 0.09 0.12 -1 -1 0.29 0.0288238 0.0254783 144 59 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_051.v common 5.68 vpr 64.99 MiB -1 -1 0.16 20496 1 0.03 -1 -1 33744 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 32 32 306 248 1 170 97 17 17 289 -1 unnamed_device 26.4 MiB 1.07 757 10087 2459 6728 900 65.0 MiB 0.09 0.00 3.39279 -97.1142 -3.39279 3.39279 0.97 0.000458975 0.000417575 0.0228965 0.0209087 28 2289 19 6.87369e+06 461137 531479. 1839.03 1.37 0.0867295 0.0764569 24610 126494 -1 1943 21 1381 2334 183403 44789 4.11 4.11 -127.218 -4.11 0 0 648988. 2245.63 0.27 0.07 0.13 -1 -1 0.27 0.0221992 0.0194946 124 21 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_052.v common 7.60 vpr 64.88 MiB -1 -1 0.15 20204 1 0.03 -1 -1 33656 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 319 257 1 203 86 17 17 289 -1 unnamed_device 26.5 MiB 2.58 1007 11237 3132 6686 1419 64.9 MiB 0.10 0.00 3.84368 -111.209 -3.84368 3.84368 0.98 0.000478488 0.000436702 0.0306983 0.0280164 34 2629 36 6.87369e+06 307425 618332. 2139.56 1.70 0.149216 0.129656 25762 151098 -1 2314 22 1664 2415 178645 41233 4.04706 4.04706 -133.298 -4.04706 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0234319 0.0206773 135 26 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_053.v common 7.76 vpr 65.24 MiB -1 -1 0.16 20596 1 0.03 -1 -1 33776 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 31 32 373 299 1 204 85 17 17 289 -1 unnamed_device 26.8 MiB 2.40 1151 11989 3426 7634 929 65.2 MiB 0.11 0.00 3.72318 -120.154 -3.72318 3.72318 1.01 0.000605482 0.000551677 0.0354376 0.0322026 34 3171 23 6.87369e+06 307425 618332. 2139.56 1.95 0.161497 0.141592 25762 151098 -1 2564 23 1860 3071 252486 57364 3.97476 3.97476 -141.963 -3.97476 0 0 787024. 2723.27 0.33 0.09 0.14 -1 -1 0.33 0.027279 0.0240464 141 58 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_054.v common 10.71 vpr 65.22 MiB -1 -1 0.16 20576 1 0.03 -1 -1 33888 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66788 32 32 387 315 1 194 85 17 17 289 -1 unnamed_device 26.8 MiB 3.16 1074 11989 3630 7470 889 65.2 MiB 0.12 0.00 3.65075 -114.941 -3.65075 3.65075 1.00 0.000567919 0.00052106 0.038264 0.0350408 36 2699 22 6.87369e+06 293451 648988. 2245.63 4.14 0.244011 0.21443 26050 158493 -1 2395 22 1500 2706 195355 45443 3.80776 3.80776 -132.998 -3.80776 0 0 828058. 2865.25 0.34 0.08 0.14 -1 -1 0.34 0.0307306 0.0272559 135 74 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_055.v common 5.05 vpr 64.54 MiB -1 -1 0.15 20524 1 0.03 -1 -1 33424 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66084 32 32 251 219 1 141 86 17 17 289 -1 unnamed_device 26.0 MiB 0.88 717 9914 2744 6845 325 64.5 MiB 0.08 0.00 2.7886 -85.2361 -2.7886 2.7886 0.98 0.000403887 0.000369887 0.0223427 0.0203929 26 2008 26 6.87369e+06 307425 503264. 1741.40 1.03 0.0798106 0.0700224 24322 120374 -1 1765 19 1026 1621 125689 29910 3.13686 3.13686 -108.589 -3.13686 0 0 618332. 2139.56 0.25 0.05 0.12 -1 -1 0.25 0.016838 0.0148698 93 20 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_056.v common 7.26 vpr 65.19 MiB -1 -1 0.15 20860 1 0.03 -1 -1 33780 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 32 32 341 285 1 188 82 17 17 289 -1 unnamed_device 26.6 MiB 2.02 938 15746 5585 7504 2657 65.2 MiB 0.13 0.00 3.03076 -108.923 -3.03076 3.03076 0.98 0.00049129 0.000446994 0.0458998 0.0418672 34 2730 24 6.87369e+06 251529 618332. 2139.56 1.87 0.156737 0.137177 25762 151098 -1 2244 22 1750 2484 222770 50333 3.53651 3.53651 -134.113 -3.53651 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0262861 0.0233194 124 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_057.v common 13.62 vpr 65.35 MiB -1 -1 0.17 20724 1 0.03 -1 -1 33988 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66920 32 32 387 293 1 236 88 17 17 289 -1 unnamed_device 26.8 MiB 3.51 1393 14908 4083 9263 1562 65.4 MiB 0.15 0.00 4.25892 -132.142 -4.25892 4.25892 1.01 0.000569619 0.000520171 0.0487133 0.044554 30 3574 42 6.87369e+06 335372 556674. 1926.21 6.66 0.271185 0.239777 25186 138497 -1 2629 20 1762 2813 168154 38941 4.4313 4.4313 -155.648 -4.4313 0 0 706193. 2443.58 0.30 0.08 0.13 -1 -1 0.30 0.0299321 0.0266301 166 28 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_058.v common 7.60 vpr 65.23 MiB -1 -1 0.16 20280 1 0.03 -1 -1 33484 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 32 32 340 270 1 185 98 17 17 289 -1 unnamed_device 26.8 MiB 3.43 927 12698 3514 7971 1213 65.2 MiB 0.11 0.00 3.22801 -103.996 -3.22801 3.22801 0.97 0.00052399 0.000480089 0.029591 0.0269644 28 2223 26 6.87369e+06 475111 531479. 1839.03 0.97 0.0999476 0.0881594 24610 126494 -1 1919 21 1259 2053 122582 31195 3.12426 3.12426 -122.591 -3.12426 0 0 648988. 2245.63 0.27 0.06 0.12 -1 -1 0.27 0.0224294 0.0197792 137 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_059.v common 5.71 vpr 64.77 MiB -1 -1 0.15 20092 1 0.03 -1 -1 33612 -1 -1 25 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 30 32 278 235 1 150 87 17 17 289 -1 unnamed_device 26.4 MiB 0.90 784 13143 3024 9531 588 64.8 MiB 0.10 0.00 2.9769 -91.7545 -2.9769 2.9769 1.00 0.000382028 0.000346371 0.0294962 0.0268347 34 1889 25 6.87369e+06 349346 618332. 2139.56 1.53 0.103386 0.0903048 25762 151098 -1 1614 18 903 1398 98993 24389 2.82501 2.82501 -106.211 -2.82501 0 0 787024. 2723.27 0.32 0.05 0.14 -1 -1 0.32 0.0180587 0.0159382 104 29 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_060.v common 10.77 vpr 65.70 MiB -1 -1 0.16 20460 1 0.03 -1 -1 34040 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67272 32 32 431 332 1 239 89 17 17 289 -1 unnamed_device 26.9 MiB 5.67 1310 8603 2176 5830 597 65.7 MiB 0.09 0.00 4.70105 -142.304 -4.70105 4.70105 0.93 0.000634436 0.000583042 0.028238 0.0259168 34 3444 22 6.87369e+06 349346 618332. 2139.56 1.89 0.178793 0.158127 25762 151098 -1 2811 24 2410 3595 282764 65755 5.0595 5.0595 -168.474 -5.0595 0 0 787024. 2723.27 0.30 0.10 0.13 -1 -1 0.30 0.0334701 0.0297144 171 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_061.v common 8.24 vpr 65.24 MiB -1 -1 0.16 20304 1 0.03 -1 -1 33664 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 32 32 336 268 1 182 99 17 17 289 -1 unnamed_device 26.8 MiB 3.82 1041 13323 3588 8422 1313 65.2 MiB 0.11 0.00 3.77632 -116.628 -3.77632 3.77632 1.01 0.0005223 0.000479797 0.0317988 0.029095 32 2556 22 6.87369e+06 489084 586450. 2029.24 1.05 0.0990918 0.0874848 25474 144626 -1 2107 22 1564 2528 198388 45513 3.5897 3.5897 -131.347 -3.5897 0 0 744469. 2576.02 0.31 0.08 0.14 -1 -1 0.31 0.0235532 0.0207311 135 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_062.v common 5.58 vpr 64.49 MiB -1 -1 0.14 20080 1 0.03 -1 -1 33652 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66040 32 32 231 199 1 142 88 17 17 289 -1 unnamed_device 25.9 MiB 0.83 843 11008 2960 7021 1027 64.5 MiB 0.09 0.00 2.8436 -88.6655 -2.8436 2.8436 0.99 0.000380642 0.000347347 0.0227877 0.0208311 34 1858 20 6.87369e+06 335372 618332. 2139.56 1.49 0.100543 0.0874715 25762 151098 -1 1626 20 901 1536 110807 26065 2.78501 2.78501 -101.108 -2.78501 0 0 787024. 2723.27 0.31 0.05 0.15 -1 -1 0.31 0.0166146 0.0146294 94 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_063.v common 8.44 vpr 64.80 MiB -1 -1 0.15 20636 1 0.03 -1 -1 33608 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 32 32 349 273 1 191 101 17 17 289 -1 unnamed_device 26.4 MiB 2.55 1133 16081 4558 9456 2067 64.8 MiB 0.14 0.00 4.20067 -115.124 -4.20067 4.20067 0.98 0.000511298 0.000466021 0.0376299 0.0342761 26 3302 36 6.87369e+06 517032 503264. 1741.40 2.57 0.12916 0.114238 24322 120374 -1 2603 22 1772 3326 294674 63940 4.63215 4.63215 -143.586 -4.63215 0 0 618332. 2139.56 0.27 0.10 0.12 -1 -1 0.27 0.0269746 0.0239497 145 26 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_064.v common 5.77 vpr 64.46 MiB -1 -1 0.13 20356 1 0.03 -1 -1 33760 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 32 32 247 207 1 153 83 17 17 289 -1 unnamed_device 25.9 MiB 0.91 837 11423 2732 7756 935 64.5 MiB 0.09 0.00 2.9879 -96.4611 -2.9879 2.9879 1.02 0.000377628 0.000343666 0.0268407 0.0244601 34 1997 18 6.87369e+06 265503 618332. 2139.56 1.55 0.112623 0.098367 25762 151098 -1 1821 19 1216 2072 160132 36602 2.89896 2.89896 -112.464 -2.89896 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0173407 0.015351 98 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_065.v common 7.15 vpr 64.75 MiB -1 -1 0.15 20436 1 0.03 -1 -1 33836 -1 -1 34 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 30 32 278 235 1 151 96 17 17 289 -1 unnamed_device 26.3 MiB 2.85 873 13455 3329 8557 1569 64.8 MiB 0.10 0.00 3.10428 -96.9072 -3.10428 3.10428 1.00 0.00043166 0.000392823 0.0271802 0.0247508 32 2057 25 6.87369e+06 475111 586450. 2029.24 1.02 0.0853539 0.0749591 25474 144626 -1 1739 19 1057 1846 141547 32246 2.99596 2.99596 -112.549 -2.99596 0 0 744469. 2576.02 0.31 0.06 0.13 -1 -1 0.31 0.0181099 0.0159514 109 29 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_066.v common 9.28 vpr 65.08 MiB -1 -1 0.16 20584 1 0.03 -1 -1 33960 -1 -1 24 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 29 32 355 287 1 200 85 17 17 289 -1 unnamed_device 26.7 MiB 4.60 1111 11803 3377 7224 1202 65.1 MiB 0.11 0.00 3.21063 -102.762 -3.21063 3.21063 1.04 0.000524367 0.000482768 0.0359631 0.0329841 30 2825 29 6.87369e+06 335372 556674. 1926.21 1.25 0.124857 0.110825 25186 138497 -1 2327 21 1538 2444 163435 37456 3.29991 3.29991 -122.898 -3.29991 0 0 706193. 2443.58 0.30 0.07 0.13 -1 -1 0.30 0.0256413 0.0226692 138 56 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_067.v common 7.10 vpr 64.98 MiB -1 -1 0.14 20692 1 0.03 -1 -1 33756 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 358 289 1 183 90 17 17 289 -1 unnamed_device 26.6 MiB 2.41 960 8934 2030 6386 518 65.0 MiB 0.08 0.00 3.61045 -115.819 -3.61045 3.61045 0.92 0.000488256 0.000446499 0.0234441 0.0214736 34 2363 27 6.87369e+06 363320 618332. 2139.56 1.58 0.149653 0.131803 25762 151098 -1 1976 19 1549 2411 162137 37990 3.78446 3.78446 -135.088 -3.78446 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0257195 0.0230299 132 51 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_068.v common 7.20 vpr 65.04 MiB -1 -1 0.16 20272 1 0.03 -1 -1 33892 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 32 32 353 285 1 188 91 17 17 289 -1 unnamed_device 26.6 MiB 2.64 1046 10699 2953 7193 553 65.0 MiB 0.10 0.00 3.81848 -115.7 -3.81848 3.81848 1.02 0.000552723 0.000503001 0.0289917 0.026448 32 3033 29 6.87369e+06 377294 586450. 2029.24 1.18 0.106355 0.0933247 25474 144626 -1 2300 23 1681 2925 250606 58948 4.15236 4.15236 -142.424 -4.15236 0 0 744469. 2576.02 0.30 0.09 0.14 -1 -1 0.30 0.0259583 0.0228345 133 48 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_069.v common 8.42 vpr 64.53 MiB -1 -1 0.15 20344 1 0.03 -1 -1 33688 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 32 32 276 237 1 165 79 17 17 289 -1 unnamed_device 26.1 MiB 3.98 855 12585 3056 8946 583 64.5 MiB 0.10 0.00 3.86982 -111.321 -3.86982 3.86982 1.03 0.00044256 0.000399873 0.0336332 0.0307165 32 2477 28 6.87369e+06 209608 586450. 2029.24 1.08 0.0977141 0.0860825 25474 144626 -1 1945 24 1210 1686 149180 34667 3.4598 3.4598 -120.553 -3.4598 0 0 744469. 2576.02 0.30 0.07 0.14 -1 -1 0.30 0.022507 0.0198495 103 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_070.v common 8.07 vpr 64.77 MiB -1 -1 0.16 20516 1 0.03 -1 -1 33848 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 31 32 319 272 1 176 80 17 17 289 -1 unnamed_device 26.2 MiB 3.11 956 13152 3679 7997 1476 64.8 MiB 0.10 0.00 2.99776 -102.176 -2.99776 2.99776 0.99 0.00045644 0.00041603 0.0371441 0.0339074 34 2372 23 6.87369e+06 237555 618332. 2139.56 1.64 0.141055 0.12297 25762 151098 -1 2050 20 1413 2093 162567 37907 3.1782 3.1782 -122.111 -3.1782 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0207987 0.018364 114 60 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_071.v common 7.15 vpr 64.93 MiB -1 -1 0.16 20480 1 0.03 -1 -1 33776 -1 -1 34 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 30 32 329 273 1 167 96 17 17 289 -1 unnamed_device 26.3 MiB 2.94 964 18492 5749 10217 2526 64.9 MiB 0.13 0.00 2.73725 -85.4924 -2.73725 2.73725 0.98 0.000481703 0.000437045 0.0412958 0.0376072 28 2197 26 6.87369e+06 475111 531479. 1839.03 0.98 0.107593 0.0948104 24610 126494 -1 1960 20 1127 2101 142323 33269 2.71066 2.71066 -100.685 -2.71066 0 0 648988. 2245.63 0.26 0.06 0.12 -1 -1 0.26 0.0221093 0.019508 124 52 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_072.v common 6.75 vpr 64.83 MiB -1 -1 0.16 20416 1 0.03 -1 -1 33728 -1 -1 35 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 28 32 277 229 1 156 95 17 17 289 -1 unnamed_device 26.3 MiB 2.24 886 11975 3085 7922 968 64.8 MiB 0.09 0.00 3.27479 -88.43 -3.27479 3.27479 1.00 0.000422719 0.00038466 0.0253971 0.0231629 26 2157 24 6.87369e+06 489084 503264. 1741.40 1.23 0.0861979 0.0756085 24322 120374 -1 1949 24 1387 2585 199957 45550 3.6161 3.6161 -109.702 -3.6161 0 0 618332. 2139.56 0.25 0.07 0.12 -1 -1 0.25 0.0213483 0.0186431 117 20 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_073.v common 7.76 vpr 64.91 MiB -1 -1 0.14 20160 1 0.03 -1 -1 33492 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 30 32 317 269 1 155 79 17 17 289 -1 unnamed_device 26.5 MiB 3.05 960 10895 3313 6159 1423 64.9 MiB 0.08 0.00 3.16363 -101.296 -3.16363 3.16363 0.92 0.000423404 0.000386915 0.0293621 0.0268287 34 2114 25 6.87369e+06 237555 618332. 2139.56 1.54 0.137375 0.120762 25762 151098 -1 1926 22 1302 2332 180045 40925 3.16356 3.16356 -119.35 -3.16356 0 0 787024. 2723.27 0.33 0.08 0.15 -1 -1 0.33 0.0255931 0.0227183 105 58 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_074.v common 8.66 vpr 65.18 MiB -1 -1 0.16 20460 1 0.03 -1 -1 33792 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 335 282 1 189 81 17 17 289 -1 unnamed_device 26.6 MiB 3.41 987 10581 2919 7096 566 65.2 MiB 0.10 0.00 2.9238 -103 -2.9238 2.9238 1.03 0.000549642 0.000502548 0.0329992 0.0301656 34 2543 33 6.87369e+06 237555 618332. 2139.56 1.79 0.165169 0.145205 25762 151098 -1 2146 20 1440 2138 188606 41578 3.12781 3.12781 -123.049 -3.12781 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.0248348 0.0221641 122 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_075.v common 5.41 vpr 64.92 MiB -1 -1 0.17 20312 1 0.03 -1 -1 33736 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 31 32 293 230 1 175 94 17 17 289 -1 unnamed_device 26.4 MiB 0.97 957 11596 2935 7302 1359 64.9 MiB 0.10 0.00 3.60082 -105.594 -3.60082 3.60082 1.00 0.000523638 0.000481288 0.0284584 0.0259648 32 2667 24 6.87369e+06 433189 586450. 2029.24 1.08 0.0979895 0.0867252 25474 144626 -1 2121 22 1372 2327 174359 40598 3.7041 3.7041 -126.004 -3.7041 0 0 744469. 2576.02 0.30 0.07 0.15 -1 -1 0.30 0.0224806 0.0196453 129 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_076.v common 9.42 vpr 65.11 MiB -1 -1 0.15 20608 1 0.03 -1 -1 33736 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 32 32 350 275 1 214 87 17 17 289 -1 unnamed_device 26.7 MiB 3.88 1122 16407 5547 8280 2580 65.1 MiB 0.16 0.00 3.78918 -125.016 -3.78918 3.78918 1.00 0.000519117 0.000473671 0.0477271 0.0436165 34 3124 29 6.87369e+06 321398 618332. 2139.56 2.08 0.179601 0.15816 25762 151098 -1 2593 22 1884 2820 268441 59031 4.13006 4.13006 -150.876 -4.13006 0 0 787024. 2723.27 0.33 0.10 0.15 -1 -1 0.33 0.0280114 0.0248588 147 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_077.v common 9.32 vpr 65.26 MiB -1 -1 0.15 20452 1 0.03 -1 -1 33916 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66824 32 32 385 308 1 196 100 17 17 289 -1 unnamed_device 26.8 MiB 4.54 986 13324 3459 8273 1592 65.3 MiB 0.10 0.00 4.24987 -125.238 -4.24987 4.24987 1.02 0.000558536 0.000508669 0.0339928 0.0308403 30 2887 25 6.87369e+06 503058 556674. 1926.21 1.38 0.120488 0.10672 25186 138497 -1 2184 20 1337 2354 142233 35750 3.99105 3.99105 -143.284 -3.99105 0 0 706193. 2443.58 0.30 0.07 0.13 -1 -1 0.30 0.026817 0.0239384 147 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_078.v common 10.14 vpr 65.23 MiB -1 -1 0.15 20760 1 0.03 -1 -1 33944 -1 -1 41 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66792 32 32 387 309 1 192 105 17 17 289 -1 unnamed_device 26.8 MiB 3.67 1125 15172 4039 10091 1042 65.2 MiB 0.14 0.00 3.57582 -118.165 -3.57582 3.57582 1.02 0.000653829 0.000601909 0.0386146 0.0350568 26 3324 42 6.87369e+06 572927 503264. 1741.40 3.09 0.149984 0.132743 24322 120374 -1 2842 23 1873 3493 352846 76679 4.068 4.068 -151.884 -4.068 0 0 618332. 2139.56 0.26 0.11 0.12 -1 -1 0.26 0.028184 0.0248274 148 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_079.v common 7.77 vpr 64.71 MiB -1 -1 0.14 20680 1 0.03 -1 -1 33676 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 30 32 272 232 1 151 79 17 17 289 -1 unnamed_device 26.4 MiB 2.95 859 12247 3852 6988 1407 64.7 MiB 0.10 0.00 3.16363 -98.3665 -3.16363 3.16363 0.99 0.000430986 0.000394644 0.0322775 0.0294462 34 2051 22 6.87369e+06 237555 618332. 2139.56 1.56 0.122657 0.107082 25762 151098 -1 1718 17 935 1571 109466 26160 3.06926 3.06926 -111.076 -3.06926 0 0 787024. 2723.27 0.31 0.05 0.15 -1 -1 0.31 0.0170095 0.0150504 99 29 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_080.v common 7.87 vpr 65.17 MiB -1 -1 0.16 20364 1 0.03 -1 -1 33940 -1 -1 22 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 30 32 375 299 1 188 84 17 17 289 -1 unnamed_device 26.8 MiB 3.81 900 8319 2009 5604 706 65.2 MiB 0.08 0.00 3.55872 -111.72 -3.55872 3.55872 0.94 0.000596274 0.000532451 0.0250259 0.0228982 30 2256 20 6.87369e+06 307425 556674. 1926.21 0.97 0.099147 0.088005 25186 138497 -1 1877 21 1438 2386 143201 33467 4.013 4.013 -137.529 -4.013 0 0 706193. 2443.58 0.28 0.07 0.12 -1 -1 0.28 0.0256239 0.0227458 136 58 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_081.v common 8.44 vpr 65.06 MiB -1 -1 0.17 20376 1 0.03 -1 -1 33952 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 32 32 340 270 1 204 87 17 17 289 -1 unnamed_device 26.6 MiB 3.10 1105 11991 3322 7906 763 65.1 MiB 0.11 0.00 4.00821 -122.526 -4.00821 4.00821 1.02 0.000515568 0.000469933 0.0347997 0.0318747 34 2629 23 6.87369e+06 321398 618332. 2139.56 1.86 0.167213 0.147768 25762 151098 -1 2147 22 1702 2711 189065 45826 4.05796 4.05796 -136.163 -4.05796 0 0 787024. 2723.27 0.35 0.09 0.15 -1 -1 0.35 0.0289368 0.0256896 140 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_082.v common 8.26 vpr 65.07 MiB -1 -1 0.16 20540 1 0.03 -1 -1 33616 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 31 32 340 275 1 201 91 17 17 289 -1 unnamed_device 26.6 MiB 2.84 1096 17431 4997 10162 2272 65.1 MiB 0.15 0.00 4.30764 -123.969 -4.30764 4.30764 0.97 0.000507784 0.000463347 0.0450559 0.041122 34 2769 39 6.87369e+06 391268 618332. 2139.56 2.02 0.174413 0.152627 25762 151098 -1 2305 21 1713 2676 195660 45712 4.5006 4.5006 -145.692 -4.5006 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0238805 0.0209712 141 43 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_083.v common 7.61 vpr 65.02 MiB -1 -1 0.18 20524 1 0.03 -1 -1 33672 -1 -1 32 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 30 32 377 310 1 183 94 17 17 289 -1 unnamed_device 26.6 MiB 3.17 1024 10105 2227 7187 691 65.0 MiB 0.10 0.00 3.82048 -117.366 -3.82048 3.82048 0.98 0.000558025 0.000509533 0.0278932 0.0255002 32 2560 32 6.87369e+06 447163 586450. 2029.24 1.11 0.110221 0.0968941 25474 144626 -1 2148 21 1301 2111 163323 39195 3.4315 3.4315 -125.664 -3.4315 0 0 744469. 2576.02 0.29 0.07 0.14 -1 -1 0.29 0.0258147 0.0228425 135 78 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_084.v common 8.01 vpr 64.84 MiB -1 -1 0.16 20440 1 0.03 -1 -1 33636 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 365 294 1 187 85 17 17 289 -1 unnamed_device 26.5 MiB 2.78 1096 15895 4990 8981 1924 64.8 MiB 0.14 0.00 3.73418 -119.337 -3.73418 3.73418 1.02 0.000527079 0.000480706 0.0472551 0.0430924 34 2887 22 6.87369e+06 293451 618332. 2139.56 1.79 0.179546 0.158234 25762 151098 -1 2376 21 1639 2900 220218 50715 3.98576 3.98576 -143.042 -3.98576 0 0 787024. 2723.27 0.33 0.08 0.14 -1 -1 0.33 0.0270354 0.0240472 132 54 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_085.v common 7.55 vpr 65.30 MiB -1 -1 0.15 20436 1 0.03 -1 -1 33660 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66864 29 32 378 310 1 179 90 17 17 289 -1 unnamed_device 26.9 MiB 2.88 875 9336 2208 5958 1170 65.3 MiB 0.09 0.00 3.31093 -98.9141 -3.31093 3.31093 0.92 0.000531857 0.000488895 0.0259468 0.0238343 34 2429 24 6.87369e+06 405241 618332. 2139.56 1.55 0.143527 0.125709 25762 151098 -1 1995 20 1557 2590 187484 44045 3.06661 3.06661 -111.274 -3.06661 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0247509 0.0220248 132 79 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_086.v common 5.69 vpr 64.66 MiB -1 -1 0.14 20168 1 0.03 -1 -1 34020 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66212 32 32 243 205 1 149 81 17 17 289 -1 unnamed_device 26.1 MiB 0.80 680 6206 1366 4606 234 64.7 MiB 0.06 0.00 3.18563 -97.0202 -3.18563 3.18563 1.02 0.000405767 0.000371191 0.0163509 0.0150061 34 1787 22 6.87369e+06 237555 618332. 2139.56 1.56 0.109736 0.0955763 25762 151098 -1 1474 18 850 1261 80848 20096 2.82671 2.82671 -104.335 -2.82671 0 0 787024. 2723.27 0.33 0.05 0.15 -1 -1 0.33 0.0189327 0.0168446 96 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_087.v common 9.96 vpr 64.95 MiB -1 -1 0.16 20412 1 0.03 -1 -1 33884 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 32 32 373 302 1 184 98 17 17 289 -1 unnamed_device 26.6 MiB 5.53 1063 13823 3432 9345 1046 65.0 MiB 0.12 0.00 3.63082 -117.153 -3.63082 3.63082 1.00 0.000553018 0.000498573 0.0347994 0.0316645 28 2594 23 6.87369e+06 475111 531479. 1839.03 1.13 0.107967 0.0952106 24610 126494 -1 2262 21 1610 2788 206932 48399 3.905 3.905 -136.93 -3.905 0 0 648988. 2245.63 0.26 0.08 0.12 -1 -1 0.26 0.0243183 0.0214608 137 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_088.v common 9.90 vpr 65.09 MiB -1 -1 0.16 20680 1 0.03 -1 -1 33936 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 32 32 397 314 1 197 85 17 17 289 -1 unnamed_device 26.7 MiB 4.65 1064 15151 4363 8958 1830 65.1 MiB 0.14 0.00 3.54952 -124.108 -3.54952 3.54952 1.00 0.000556218 0.000508163 0.0475712 0.0434628 34 2748 27 6.87369e+06 293451 618332. 2139.56 1.84 0.200773 0.177186 25762 151098 -1 2258 22 1869 3132 226113 50877 3.9767 3.9767 -148.438 -3.9767 0 0 787024. 2723.27 0.33 0.09 0.14 -1 -1 0.33 0.0276994 0.0245066 142 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_089.v common 8.56 vpr 64.80 MiB -1 -1 0.14 20236 1 0.03 -1 -1 33932 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 32 32 269 231 1 170 80 17 17 289 -1 unnamed_device 26.4 MiB 3.71 977 10228 3025 6510 693 64.8 MiB 0.08 0.00 3.47382 -102.761 -3.47382 3.47382 0.98 0.000440884 0.000402075 0.0255726 0.023338 34 2294 21 6.87369e+06 223581 618332. 2139.56 1.58 0.117155 0.102078 25762 151098 -1 1958 20 1149 1540 117501 27862 3.4908 3.4908 -120.897 -3.4908 0 0 787024. 2723.27 0.31 0.05 0.15 -1 -1 0.31 0.0191219 0.0169272 106 26 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_090.v common 4.72 vpr 64.68 MiB -1 -1 0.13 20072 1 0.03 -1 -1 33752 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66228 31 32 245 205 1 153 83 17 17 289 -1 unnamed_device 26.1 MiB 0.83 711 9443 2322 6140 981 64.7 MiB 0.08 0.00 3.29993 -97.497 -3.29993 3.29993 0.92 0.000373487 0.000341592 0.0212099 0.0194865 30 1836 16 6.87369e+06 279477 556674. 1926.21 0.89 0.069663 0.0615919 25186 138497 -1 1575 18 919 1563 98944 22473 2.78771 2.78771 -105.464 -2.78771 0 0 706193. 2443.58 0.27 0.05 0.12 -1 -1 0.27 0.0165135 0.0146857 99 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_091.v common 8.71 vpr 65.18 MiB -1 -1 0.15 20596 1 0.03 -1 -1 33712 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 32 32 348 274 1 215 87 17 17 289 -1 unnamed_device 26.8 MiB 3.49 1233 13335 4039 7970 1326 65.2 MiB 0.12 0.00 3.74338 -123.587 -3.74338 3.74338 0.98 0.000501897 0.000458431 0.0373639 0.0341067 34 2880 22 6.87369e+06 321398 618332. 2139.56 1.88 0.158828 0.13951 25762 151098 -1 2361 21 1883 2569 185640 43336 4.17026 4.17026 -153.32 -4.17026 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.0247286 0.0219185 145 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_092.v common 8.24 vpr 64.91 MiB -1 -1 0.16 20596 1 0.03 -1 -1 33624 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 32 32 356 289 1 202 91 17 17 289 -1 unnamed_device 26.5 MiB 2.84 1147 14779 3833 9717 1229 64.9 MiB 0.13 0.00 4.30764 -131.579 -4.30764 4.30764 0.98 0.000513109 0.000468216 0.0395209 0.0361488 34 2980 26 6.87369e+06 377294 618332. 2139.56 2.05 0.174481 0.153862 25762 151098 -1 2446 19 1619 2412 187142 43536 4.7602 4.7602 -154.289 -4.7602 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.024582 0.0219463 142 53 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_093.v common 5.54 vpr 65.05 MiB -1 -1 0.17 20896 1 0.03 -1 -1 33532 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 349 260 1 204 100 17 17 289 -1 unnamed_device 26.6 MiB 0.95 1216 19820 6259 10393 3168 65.0 MiB 0.17 0.00 4.13357 -122.153 -4.13357 4.13357 1.01 0.000531762 0.000479038 0.0479175 0.0436686 30 2479 23 6.87369e+06 503058 556674. 1926.21 1.15 0.123723 0.109625 25186 138497 -1 2067 22 1328 2408 125726 30451 4.27195 4.27195 -140.893 -4.27195 0 0 706193. 2443.58 0.29 0.06 0.13 -1 -1 0.29 0.0251207 0.0221622 157 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_094.v common 7.20 vpr 64.92 MiB -1 -1 0.17 20328 1 0.03 -1 -1 33728 -1 -1 34 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 30 32 316 264 1 165 96 17 17 289 -1 unnamed_device 26.4 MiB 2.93 854 10827 2658 6758 1411 64.9 MiB 0.09 0.00 2.83325 -87.5435 -2.83325 2.83325 0.97 0.000467094 0.00042719 0.0249658 0.0228158 30 1926 24 6.87369e+06 475111 556674. 1926.21 1.01 0.0872944 0.0765692 25186 138497 -1 1586 18 1123 2031 102489 25349 2.67336 2.67336 -97.7639 -2.67336 0 0 706193. 2443.58 0.29 0.05 0.13 -1 -1 0.29 0.0190005 0.0167525 119 47 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_095.v common 6.93 vpr 64.63 MiB -1 -1 0.14 20240 1 0.03 -1 -1 34208 -1 -1 21 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66184 27 32 255 219 1 139 80 17 17 289 -1 unnamed_device 26.1 MiB 1.05 676 11432 3253 7293 886 64.6 MiB 0.08 0.00 2.8908 -83.2138 -2.8908 2.8908 0.93 0.000366913 0.000337879 0.026567 0.0243355 34 1616 22 6.87369e+06 293451 618332. 2139.56 2.84 0.151431 0.131632 25762 151098 -1 1301 19 975 1461 96257 22512 2.73266 2.73266 -93.7949 -2.73266 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.0165584 0.0146422 96 26 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_096.v common 11.15 vpr 65.40 MiB -1 -1 0.17 20508 1 0.03 -1 -1 33980 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66972 32 32 421 327 1 233 88 17 17 289 -1 unnamed_device 26.8 MiB 4.39 1387 16468 5744 8350 2374 65.4 MiB 0.17 0.00 3.46315 -115.657 -3.46315 3.46315 1.04 0.000610952 0.000558673 0.0551552 0.0505042 34 3965 41 6.87369e+06 335372 618332. 2139.56 3.14 0.239036 0.211966 25762 151098 -1 3021 22 2182 3701 318927 70233 3.87776 3.87776 -142.206 -3.87776 0 0 787024. 2723.27 0.34 0.12 0.15 -1 -1 0.34 0.0347638 0.0311443 165 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_097.v common 10.48 vpr 65.14 MiB -1 -1 0.17 20660 1 0.03 -1 -1 33832 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66700 31 32 365 296 1 203 85 17 17 289 -1 unnamed_device 26.7 MiB 5.06 1232 14407 3986 8615 1806 65.1 MiB 0.12 0.00 4.58967 -140.335 -4.58967 4.58967 1.00 0.000528183 0.000483896 0.0433786 0.0396854 36 2663 21 6.87369e+06 307425 648988. 2245.63 1.97 0.157311 0.139924 26050 158493 -1 2306 19 1544 2388 174024 39323 4.47335 4.47335 -157.652 -4.47335 0 0 828058. 2865.25 0.34 0.07 0.15 -1 -1 0.34 0.0249019 0.0221448 139 60 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_098.v common 10.31 vpr 65.01 MiB -1 -1 0.16 20244 1 0.03 -1 -1 33992 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 32 32 331 280 1 185 82 17 17 289 -1 unnamed_device 26.5 MiB 5.30 1002 9160 2342 6168 650 65.0 MiB 0.08 0.00 3.45235 -120.781 -3.45235 3.45235 0.99 0.000500493 0.000457943 0.0269637 0.0246305 34 2597 24 6.87369e+06 251529 618332. 2139.56 1.64 0.137375 0.119829 25762 151098 -1 2098 22 1328 1973 139639 33024 3.67946 3.67946 -141.379 -3.67946 0 0 787024. 2723.27 0.34 0.07 0.14 -1 -1 0.34 0.0248842 0.0220348 118 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_099.v common 5.52 vpr 64.95 MiB -1 -1 0.16 20408 1 0.03 -1 -1 33972 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 32 32 326 263 1 176 97 17 17 289 -1 unnamed_device 26.4 MiB 1.27 917 17635 5196 9844 2595 65.0 MiB 0.14 0.00 3.85785 -108.09 -3.85785 3.85785 0.95 0.000454735 0.000415228 0.0386205 0.0352009 30 2297 23 6.87369e+06 461137 556674. 1926.21 1.01 0.110494 0.0983132 25186 138497 -1 1794 21 989 1622 100091 24741 3.3692 3.3692 -116.826 -3.3692 0 0 706193. 2443.58 0.31 0.06 0.13 -1 -1 0.31 0.0241931 0.0214942 129 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_100.v common 8.98 vpr 65.34 MiB -1 -1 0.17 20624 1 0.03 -1 -1 33792 -1 -1 34 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66908 31 32 373 294 1 197 97 17 17 289 -1 unnamed_device 26.9 MiB 2.19 940 11419 3124 7358 937 65.3 MiB 0.10 0.00 3.46135 -102.065 -3.46135 3.46135 0.93 0.000540737 0.000497919 0.0279909 0.0255804 26 2811 38 6.87369e+06 475111 503264. 1741.40 3.60 0.209645 0.183694 24322 120374 -1 2465 23 1646 2681 248032 72575 4.22766 4.22766 -138.641 -4.22766 0 0 618332. 2139.56 0.26 0.10 0.12 -1 -1 0.26 0.0284557 0.0250324 149 46 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_101.v common 7.62 vpr 65.00 MiB -1 -1 0.16 20120 1 0.03 -1 -1 34124 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 30 32 325 268 1 172 93 17 17 289 -1 unnamed_device 26.5 MiB 2.56 964 17523 5920 8995 2608 65.0 MiB 0.14 0.00 2.8846 -85.9929 -2.8846 2.8846 0.98 0.000476083 0.00043411 0.0412442 0.0375795 34 2482 21 6.87369e+06 433189 618332. 2139.56 1.68 0.145633 0.127261 25762 151098 -1 2029 21 1366 2415 170109 40001 3.31721 3.31721 -107.568 -3.31721 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0225715 0.0198733 124 46 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_102.v common 11.15 vpr 65.12 MiB -1 -1 0.16 20928 1 0.03 -1 -1 33872 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 32 32 350 275 1 216 86 17 17 289 -1 unnamed_device 26.6 MiB 3.79 1189 16907 6706 8302 1899 65.1 MiB 0.15 0.00 3.82834 -123.217 -3.82834 3.82834 0.97 0.000514187 0.000467629 0.048257 0.0438826 34 3809 43 6.87369e+06 307425 618332. 2139.56 3.93 0.189883 0.16691 25762 151098 -1 2801 24 2275 3459 360932 76711 4.42825 4.42825 -154.006 -4.42825 0 0 787024. 2723.27 0.31 0.11 0.16 -1 -1 0.31 0.0281349 0.0248092 148 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_103.v common 8.96 vpr 65.02 MiB -1 -1 0.17 20724 1 0.03 -1 -1 34032 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66580 32 32 386 307 1 196 100 17 17 289 -1 unnamed_device 26.6 MiB 3.73 1085 18660 5981 10128 2551 65.0 MiB 0.16 0.00 3.24063 -111.672 -3.24063 3.24063 0.99 0.000555239 0.000508447 0.0483995 0.0442609 34 2524 21 6.87369e+06 503058 618332. 2139.56 1.80 0.190179 0.168357 25762 151098 -1 2094 22 1523 2482 186864 42076 3.07126 3.07126 -123.693 -3.07126 0 0 787024. 2723.27 0.32 0.08 0.14 -1 -1 0.32 0.0298424 0.0265338 147 59 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_104.v common 6.82 vpr 64.57 MiB -1 -1 0.15 20368 1 0.03 -1 -1 33620 -1 -1 19 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66120 29 32 269 229 1 150 80 17 17 289 -1 unnamed_device 26.2 MiB 2.16 727 10400 2733 6686 981 64.6 MiB 0.08 0.00 3.00718 -93.0274 -3.00718 3.00718 1.00 0.00042909 0.000392611 0.0268203 0.0245459 32 1789 22 6.87369e+06 265503 586450. 2029.24 1.42 0.0965301 0.0846631 25474 144626 -1 1456 21 1160 1694 112050 26184 2.91816 2.91816 -108.252 -2.91816 0 0 744469. 2576.02 0.30 0.05 0.14 -1 -1 0.30 0.0195074 0.0171976 101 28 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_105.v common 6.52 vpr 65.06 MiB -1 -1 0.16 20200 1 0.03 -1 -1 33972 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 32 32 310 266 1 176 81 17 17 289 -1 unnamed_device 26.5 MiB 1.79 991 14256 4439 8053 1764 65.1 MiB 0.11 0.00 3.4413 -101.958 -3.4413 3.4413 0.95 0.000403273 0.000368134 0.0368832 0.0337471 34 2268 23 6.87369e+06 237555 618332. 2139.56 1.55 0.143894 0.12687 25762 151098 -1 2043 23 1261 1768 158106 34815 3.25001 3.25001 -126.177 -3.25001 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0249627 0.0220871 112 55 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_106.v common 7.45 vpr 65.07 MiB -1 -1 0.15 20132 1 0.03 -1 -1 33492 -1 -1 39 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 31 32 326 261 1 178 102 17 17 289 -1 unnamed_device 26.7 MiB 2.03 963 17952 5040 10040 2872 65.1 MiB 0.14 0.00 3.57582 -103.412 -3.57582 3.57582 0.99 0.000510231 0.000464986 0.0392526 0.0357277 26 2802 49 6.87369e+06 544980 503264. 1741.40 2.12 0.132953 0.116697 24322 120374 -1 2231 22 1626 2874 230923 52775 4.036 4.036 -131.164 -4.036 0 0 618332. 2139.56 0.26 0.08 0.12 -1 -1 0.26 0.0235671 0.0207043 135 29 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_107.v common 8.77 vpr 64.73 MiB -1 -1 0.16 20320 1 0.03 -1 -1 33776 -1 -1 19 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 29 32 262 224 1 168 80 17 17 289 -1 unnamed_device 26.4 MiB 3.86 813 13152 4600 6508 2044 64.7 MiB 0.10 0.00 3.82778 -104.205 -3.82778 3.82778 1.02 0.000371569 0.000339118 0.0315592 0.0288009 34 2033 20 6.87369e+06 265503 618332. 2139.56 1.57 0.122875 0.107693 25762 151098 -1 1767 22 1201 1579 113575 28302 3.46886 3.46886 -114.894 -3.46886 0 0 787024. 2723.27 0.33 0.06 0.14 -1 -1 0.33 0.0198298 0.017524 107 25 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_108.v common 8.78 vpr 64.67 MiB -1 -1 0.14 20160 1 0.03 -1 -1 33920 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 32 32 278 238 1 158 79 17 17 289 -1 unnamed_device 26.3 MiB 3.90 881 10726 2943 7045 738 64.7 MiB 0.09 0.00 3.31093 -106.227 -3.31093 3.31093 0.99 0.000447324 0.000406984 0.0290488 0.0265945 34 2242 22 6.87369e+06 209608 618332. 2139.56 1.60 0.122218 0.106537 25762 151098 -1 1832 21 1374 2300 171600 39078 3.29991 3.29991 -119.921 -3.29991 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0199457 0.0176135 101 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_109.v common 8.30 vpr 64.95 MiB -1 -1 0.17 20484 1 0.03 -1 -1 33936 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 31 32 373 300 1 185 100 17 17 289 -1 unnamed_device 26.5 MiB 3.32 889 19356 5605 10910 2841 64.9 MiB 0.15 0.00 2.98998 -97.1408 -2.98998 2.98998 0.97 0.000490724 0.000448253 0.0462874 0.0421187 34 2179 24 6.87369e+06 517032 618332. 2139.56 1.62 0.166826 0.145397 25762 151098 -1 1773 22 1668 2754 179781 42207 3.07956 3.07956 -113.62 -3.07956 0 0 787024. 2723.27 0.30 0.08 0.15 -1 -1 0.30 0.026342 0.0231093 141 60 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_110.v common 10.84 vpr 64.70 MiB -1 -1 0.16 20432 1 0.03 -1 -1 34036 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 31 32 265 230 1 169 80 17 17 289 -1 unnamed_device 26.3 MiB 3.58 737 10916 2353 7901 662 64.7 MiB 0.08 0.00 2.9066 -90.8364 -2.9066 2.9066 1.00 0.000405181 0.0003698 0.0280284 0.0256536 36 2052 18 6.87369e+06 237555 648988. 2245.63 3.91 0.16415 0.142913 26050 158493 -1 1701 20 1225 1794 122709 30059 3.01951 3.01951 -109.512 -3.01951 0 0 828058. 2865.25 0.34 0.06 0.15 -1 -1 0.34 0.0203209 0.0180196 105 30 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_111.v common 7.84 vpr 65.14 MiB -1 -1 0.14 20188 1 0.03 -1 -1 33704 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66700 32 32 349 286 1 177 95 17 17 289 -1 unnamed_device 26.7 MiB 3.27 970 16511 4188 11219 1104 65.1 MiB 0.12 0.00 2.9036 -95.172 -2.9036 2.9036 0.93 0.000478914 0.000439372 0.0381508 0.0348579 28 2503 22 6.87369e+06 433189 531479. 1839.03 1.48 0.115912 0.103361 24610 126494 -1 2183 19 1217 1996 157822 35726 3.12761 3.12761 -114.021 -3.12761 0 0 648988. 2245.63 0.25 0.07 0.11 -1 -1 0.25 0.0234379 0.0208307 129 54 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_112.v common 8.38 vpr 65.00 MiB -1 -1 0.16 20736 1 0.03 -1 -1 33672 -1 -1 32 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 31 32 396 325 1 185 95 17 17 289 -1 unnamed_device 26.6 MiB 3.87 1026 15863 4088 9399 2376 65.0 MiB 0.13 0.00 2.9696 -104.532 -2.9696 2.9696 1.00 0.000502552 0.000449185 0.0413225 0.037608 28 2412 27 6.87369e+06 447163 531479. 1839.03 1.17 0.124717 0.110329 24610 126494 -1 2175 22 1832 2785 205184 47239 3.09661 3.09661 -126.885 -3.09661 0 0 648988. 2245.63 0.28 0.08 0.12 -1 -1 0.28 0.0282163 0.024945 137 87 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_113.v common 7.25 vpr 64.48 MiB -1 -1 0.14 20476 1 0.03 -1 -1 33892 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66028 32 32 303 262 1 154 80 17 17 289 -1 unnamed_device 26.1 MiB 2.82 761 8336 2081 5922 333 64.5 MiB 0.07 0.00 2.8516 -89.7025 -2.8516 2.8516 0.99 0.000452655 0.000410958 0.023642 0.0215698 28 2257 40 6.87369e+06 223581 531479. 1839.03 1.20 0.0969801 0.0846547 24610 126494 -1 1914 19 1053 1623 145341 34074 3.22916 3.22916 -117.954 -3.22916 0 0 648988. 2245.63 0.27 0.06 0.12 -1 -1 0.27 0.0208057 0.0183875 99 54 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_114.v common 6.89 vpr 64.84 MiB -1 -1 0.14 20428 1 0.03 -1 -1 33544 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 290 244 1 177 82 17 17 289 -1 unnamed_device 26.3 MiB 1.94 828 9160 2302 6414 444 64.8 MiB 0.08 0.00 3.23579 -99.4646 -3.23579 3.23579 0.99 0.000439707 0.000401118 0.0245011 0.0224227 34 2394 24 6.87369e+06 251529 618332. 2139.56 1.66 0.122856 0.106956 25762 151098 -1 1979 22 1561 2305 173230 44818 3.54841 3.54841 -128.023 -3.54841 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0214059 0.0189072 114 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_115.v common 8.32 vpr 64.91 MiB -1 -1 0.15 20332 1 0.03 -1 -1 33796 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 32 32 318 257 1 197 86 17 17 289 -1 unnamed_device 26.4 MiB 3.15 862 8213 1954 5814 445 64.9 MiB 0.08 0.00 3.86978 -107.982 -3.86978 3.86978 1.00 0.000495734 0.000455481 0.02345 0.0214661 34 2643 49 6.87369e+06 307425 618332. 2139.56 1.84 0.165749 0.145805 25762 151098 -1 2053 22 1643 2328 163840 39890 3.98906 3.98906 -130.829 -3.98906 0 0 787024. 2723.27 0.33 0.07 0.14 -1 -1 0.33 0.0235326 0.020821 132 27 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_116.v common 7.54 vpr 64.77 MiB -1 -1 0.16 20056 1 0.03 -1 -1 33980 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 29 32 324 268 1 169 90 17 17 289 -1 unnamed_device 26.2 MiB 2.99 981 11547 3132 7358 1057 64.8 MiB 0.09 0.00 3.20763 -96.8878 -3.20763 3.20763 0.93 0.000464055 0.000426208 0.0274632 0.0251958 34 2255 19 6.87369e+06 405241 618332. 2139.56 1.44 0.125773 0.110289 25762 151098 -1 1871 17 979 1709 110760 27479 2.99121 2.99121 -105.285 -2.99121 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.02007 0.017956 123 49 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_117.v common 9.06 vpr 65.28 MiB -1 -1 0.16 20548 1 0.03 -1 -1 33712 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 32 32 393 312 1 215 86 17 17 289 -1 unnamed_device 26.8 MiB 3.59 1049 17285 5493 8978 2814 65.3 MiB 0.17 0.00 4.14151 -132.858 -4.14151 4.14151 1.00 0.000571796 0.000523125 0.0533691 0.0487214 34 2903 26 6.87369e+06 307425 618332. 2139.56 2.00 0.181974 0.159595 25762 151098 -1 2378 22 1817 2693 218277 50365 4.00076 4.00076 -151.449 -4.00076 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0270103 0.023751 151 62 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_118.v common 5.52 vpr 64.59 MiB -1 -1 0.15 20512 1 0.03 -1 -1 33568 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 31 32 229 197 1 143 80 17 17 289 -1 unnamed_device 26.1 MiB 0.83 833 5756 1336 3888 532 64.6 MiB 0.05 0.00 2.9769 -93.5698 -2.9769 2.9769 0.98 0.000385054 0.000352249 0.0140128 0.0128519 34 1905 20 6.87369e+06 237555 618332. 2139.56 1.48 0.092813 0.0803084 25762 151098 -1 1709 20 961 1504 110387 25872 2.93031 2.93031 -105.514 -2.93031 0 0 787024. 2723.27 0.31 0.05 0.15 -1 -1 0.31 0.0171897 0.0151802 92 -1 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_119.v common 6.75 vpr 65.29 MiB -1 -1 0.18 20492 1 0.03 -1 -1 33892 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66852 32 32 412 334 1 194 99 17 17 289 -1 unnamed_device 26.8 MiB 2.28 1011 13323 3692 8630 1001 65.3 MiB 0.12 0.00 3.50715 -117.312 -3.50715 3.50715 0.99 0.000610645 0.000557456 0.036512 0.0332989 28 2542 23 6.87369e+06 489084 531479. 1839.03 1.15 0.119695 0.105838 24610 126494 -1 2250 23 1612 2333 165262 39433 3.97376 3.97376 -145.91 -3.97376 0 0 648988. 2245.63 0.26 0.08 0.12 -1 -1 0.26 0.0286646 0.0252787 145 87 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_120.v common 10.01 vpr 64.87 MiB -1 -1 0.15 20620 1 0.03 -1 -1 33668 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 32 32 376 318 1 168 80 17 17 289 -1 unnamed_device 26.3 MiB 5.10 902 13152 4220 7456 1476 64.9 MiB 0.11 0.00 2.9898 -111.455 -2.9898 2.9898 0.97 0.000523898 0.000479787 0.0419767 0.0383598 34 2198 20 6.87369e+06 223581 618332. 2139.56 1.60 0.1589 0.139716 25762 151098 -1 1893 20 1390 2022 157215 35816 3.17461 3.17461 -128.599 -3.17461 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.0231537 0.0204525 114 93 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_121.v common 8.37 vpr 64.98 MiB -1 -1 0.15 20512 1 0.03 -1 -1 33760 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66536 32 32 360 293 1 182 96 17 17 289 -1 unnamed_device 26.6 MiB 3.41 956 9294 2311 5989 994 65.0 MiB 0.09 0.00 3.24063 -102.007 -3.24063 3.24063 1.00 0.000522913 0.000477526 0.024331 0.022202 34 2355 19 6.87369e+06 447163 618332. 2139.56 1.66 0.150852 0.132474 25762 151098 -1 1921 20 1194 1898 112478 28338 2.87371 2.87371 -108.93 -2.87371 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0226827 0.0199908 134 57 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_122.v common 10.26 vpr 65.18 MiB -1 -1 0.16 20404 1 0.03 -1 -1 34028 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 396 299 1 240 89 17 17 289 -1 unnamed_device 26.6 MiB 4.75 1379 16721 5012 9437 2272 65.2 MiB 0.15 0.00 4.69005 -144.837 -4.69005 4.69005 1.00 0.000590904 0.000534695 0.0493813 0.0449206 34 3629 26 6.87369e+06 349346 618332. 2139.56 2.07 0.192927 0.170143 25762 151098 -1 2792 24 2536 3854 334103 75214 5.2278 5.2278 -172.096 -5.2278 0 0 787024. 2723.27 0.32 0.11 0.14 -1 -1 0.32 0.0312898 0.0276077 171 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_123.v common 5.79 vpr 64.57 MiB -1 -1 0.13 20564 1 0.03 -1 -1 33564 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66120 30 32 224 207 1 137 77 17 17 289 -1 unnamed_device 26.1 MiB 1.39 757 10020 3099 5507 1414 64.6 MiB 0.06 0.00 2.53052 -83.7398 -2.53052 2.53052 0.93 0.000334461 0.000306579 0.0217687 0.0199426 34 1770 17 6.87369e+06 209608 618332. 2139.56 1.37 0.0944994 0.0825402 25762 151098 -1 1553 19 859 1140 105074 23455 2.31947 2.31947 -95.8823 -2.31947 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.0154673 0.0136728 81 29 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_124.v common 5.84 vpr 64.85 MiB -1 -1 0.14 20284 1 0.03 -1 -1 34044 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 30 32 286 239 1 151 81 17 17 289 -1 unnamed_device 26.4 MiB 1.24 840 12856 3983 7186 1687 64.8 MiB 0.09 0.00 3.14163 -101.894 -3.14163 3.14163 0.94 0.000403821 0.000368663 0.0324748 0.0298152 34 1881 18 6.87369e+06 265503 618332. 2139.56 1.44 0.122283 0.107588 25762 151098 -1 1647 21 1123 1632 127783 27985 2.99331 2.99331 -115.656 -2.99331 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0199541 0.0175097 105 29 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_125.v common 5.66 vpr 64.82 MiB -1 -1 0.15 20292 1 0.03 -1 -1 33972 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 32 32 296 247 1 158 87 17 17 289 -1 unnamed_device 26.4 MiB 1.24 778 10647 2780 7468 399 64.8 MiB 0.09 0.00 2.9879 -97.5378 -2.9879 2.9879 0.99 0.000456453 0.000414932 0.0264058 0.024054 32 2593 35 6.87369e+06 321398 586450. 2029.24 1.13 0.0953132 0.0835602 25474 144626 -1 1978 21 1400 2481 220984 50453 3.19991 3.19991 -122.618 -3.19991 0 0 744469. 2576.02 0.30 0.08 0.14 -1 -1 0.30 0.0213665 0.0188788 109 31 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_126.v common 5.14 vpr 64.34 MiB -1 -1 0.15 20376 1 0.03 -1 -1 33848 -1 -1 29 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65888 25 32 216 194 1 123 86 17 17 289 -1 unnamed_device 25.8 MiB 0.90 543 11426 3816 5149 2461 64.3 MiB 0.07 0.00 2.9029 -68.67 -2.9029 2.9029 1.04 0.000351369 0.000319053 0.0230891 0.0210318 28 1499 20 6.87369e+06 405241 531479. 1839.03 1.00 0.0743042 0.0656188 24610 126494 -1 1326 22 874 1524 105435 25556 2.80496 2.80496 -80.2164 -2.80496 0 0 648988. 2245.63 0.28 0.05 0.12 -1 -1 0.28 0.0174862 0.0153585 87 19 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_127.v common 8.47 vpr 65.22 MiB -1 -1 0.17 20712 1 0.03 -1 -1 33516 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66784 32 32 376 307 1 193 84 17 17 289 -1 unnamed_device 26.8 MiB 3.24 1099 14724 4570 7816 2338 65.2 MiB 0.14 0.00 3.64275 -112.763 -3.64275 3.64275 1.01 0.000541067 0.000492712 0.0464416 0.0422943 34 2947 25 6.87369e+06 279477 618332. 2139.56 1.79 0.171287 0.150329 25762 151098 -1 2413 22 1591 2784 210114 49751 3.83276 3.83276 -136.041 -3.83276 0 0 787024. 2723.27 0.31 0.09 0.15 -1 -1 0.31 0.0286427 0.0253553 133 69 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_128.v common 8.79 vpr 65.33 MiB -1 -1 0.18 20508 1 0.03 -1 -1 33836 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66896 31 32 409 331 1 193 94 17 17 289 -1 unnamed_device 26.8 MiB 3.64 1019 16921 4513 10430 1978 65.3 MiB 0.15 0.00 3.35493 -114.687 -3.35493 3.35493 1.02 0.000564295 0.000516324 0.0476883 0.0434108 34 2367 22 6.87369e+06 433189 618332. 2139.56 1.66 0.172145 0.151056 25762 151098 -1 2058 23 1843 2914 196390 45174 3.06031 3.06031 -122.111 -3.06031 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0276914 0.024314 143 86 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_001.v common 8.22 vpr 64.77 MiB -1 -1 0.16 20460 1 0.03 -1 -1 33840 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 354 285 1 223 88 17 17 289 -1 unnamed_device 26.2 MiB 3.01 1282 16858 5181 9399 2278 64.8 MiB 0.15 0.00 4.26107 -126.766 -4.26107 4.26107 1.01 0.000525106 0.000480163 0.0483786 0.0443349 34 2859 26 6.89349e+06 338252 618332. 2139.56 1.81 0.157703 0.140318 25762 151098 -1 2374 19 1452 2130 144174 35201 4.58375 4.58375 -151.504 -4.58375 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0246152 0.0219745 149 47 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_002.v common 6.84 vpr 64.88 MiB -1 -1 0.16 20428 1 0.03 -1 -1 33832 -1 -1 26 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 30 32 363 293 1 228 88 17 17 289 -1 unnamed_device 26.5 MiB 1.76 1141 14908 4583 7972 2353 64.9 MiB 0.13 0.00 3.89968 -120.67 -3.89968 3.89968 0.92 0.000483639 0.000442897 0.0392944 0.0359021 34 3123 25 6.89349e+06 366440 618332. 2139.56 1.91 0.174082 0.153846 25762 151098 -1 2460 21 2007 2975 230952 51233 4.19264 4.19264 -143.294 -4.19264 0 0 787024. 2723.27 0.30 0.08 0.13 -1 -1 0.30 0.026047 0.0232487 156 58 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_003.v common 6.86 vpr 64.73 MiB -1 -1 0.14 20260 1 0.03 -1 -1 33984 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 32 32 299 247 1 190 85 17 17 289 -1 unnamed_device 26.3 MiB 2.10 1122 12547 3748 7678 1121 64.7 MiB 0.11 0.00 3.52869 -104.289 -3.52869 3.52869 0.94 0.000474152 0.000421813 0.0315139 0.0287737 34 2474 22 6.89349e+06 295971 618332. 2139.56 1.63 0.136325 0.119965 25762 151098 -1 2158 22 1245 1729 129075 29357 3.6233 3.6233 -120.972 -3.6233 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.0216216 0.0191609 125 26 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_004.v common 7.11 vpr 64.82 MiB -1 -1 0.14 20668 1 0.03 -1 -1 33844 -1 -1 24 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 29 32 308 248 1 195 85 17 17 289 -1 unnamed_device 26.3 MiB 2.01 1048 11989 3269 7239 1481 64.8 MiB 0.11 0.00 3.79798 -106.429 -3.79798 3.79798 1.03 0.000472018 0.0004313 0.0319552 0.0292049 34 2412 22 6.89349e+06 338252 618332. 2139.56 1.69 0.138086 0.121212 25762 151098 -1 2036 22 1403 2246 139424 33884 3.7844 3.7844 -123.212 -3.7844 0 0 787024. 2723.27 0.32 0.06 0.15 -1 -1 0.32 0.0228064 0.0202328 134 25 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_005.v common 8.19 vpr 64.54 MiB -1 -1 0.15 20176 1 0.03 -1 -1 33508 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 336 268 1 212 87 17 17 289 -1 unnamed_device 26.0 MiB 1.58 1113 9687 2811 4973 1903 64.5 MiB 0.09 0.00 4.11871 -120.09 -4.11871 4.11871 1.00 0.000525088 0.000480716 0.0273812 0.0250134 36 2981 24 6.89349e+06 324158 648988. 2245.63 3.24 0.162648 0.143946 26050 158493 -1 2511 21 1784 3171 270829 57106 4.35029 4.35029 -146.198 -4.35029 0 0 828058. 2865.25 0.34 0.09 0.15 -1 -1 0.34 0.025369 0.0224424 142 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_006.v common 8.66 vpr 65.05 MiB -1 -1 0.17 20668 1 0.03 -1 -1 33988 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 366 295 1 231 97 17 17 289 -1 unnamed_device 26.6 MiB 2.51 1347 20299 6513 11395 2391 65.0 MiB 0.18 0.00 3.29756 -107.356 -3.29756 3.29756 1.03 0.000530324 0.000481798 0.0518294 0.0471263 36 3097 21 6.89349e+06 465097 648988. 2245.63 2.66 0.179263 0.157771 26050 158493 -1 2569 24 1559 2588 208122 43640 3.46995 3.46995 -131.19 -3.46995 0 0 828058. 2865.25 0.34 0.08 0.15 -1 -1 0.34 0.0273974 0.0241414 162 55 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_007.v common 6.21 vpr 64.58 MiB -1 -1 0.14 20160 1 0.03 -1 -1 34256 -1 -1 21 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66128 27 32 259 221 1 160 80 17 17 289 -1 unnamed_device 26.0 MiB 1.44 791 14356 4437 8294 1625 64.6 MiB 0.10 0.00 3.25123 -92.2102 -3.25123 3.25123 0.94 0.000376927 0.000345538 0.033074 0.0302615 34 1789 22 6.89349e+06 295971 618332. 2139.56 1.66 0.127085 0.112061 25762 151098 -1 1605 19 1205 1712 125210 28452 2.96131 2.96131 -103.368 -2.96131 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.0176835 0.0156854 107 26 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_008.v common 8.39 vpr 64.69 MiB -1 -1 0.16 20240 1 0.03 -1 -1 33708 -1 -1 32 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66240 31 32 271 219 1 164 95 17 17 289 -1 unnamed_device 26.2 MiB 0.89 956 15431 4732 8249 2450 64.7 MiB 0.11 0.00 2.5388 -83.2332 -2.5388 2.5388 1.03 0.000425739 0.000388768 0.0324032 0.0294736 36 1938 16 6.89349e+06 451003 648988. 2245.63 4.07 0.156113 0.136285 26050 158493 -1 1789 16 922 1566 98057 22087 2.57831 2.57831 -95.2768 -2.57831 0 0 828058. 2865.25 0.35 0.05 0.15 -1 -1 0.35 0.0167108 0.0148616 119 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_009.v common 9.04 vpr 64.74 MiB -1 -1 0.15 20392 1 0.03 -1 -1 34068 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 31 32 317 271 1 207 83 17 17 289 -1 unnamed_device 26.2 MiB 1.83 1124 11783 3262 6577 1944 64.7 MiB 0.09 0.00 2.92775 -102.768 -2.92775 2.92775 0.95 0.000432598 0.000397186 0.0301768 0.0276112 36 2665 24 6.89349e+06 281877 648988. 2245.63 4.03 0.189689 0.166903 26050 158493 -1 2295 22 1652 2257 203252 41829 2.93141 2.93141 -119.236 -2.93141 0 0 828058. 2865.25 0.32 0.07 0.13 -1 -1 0.32 0.0241542 0.0214956 130 60 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_010.v common 7.24 vpr 64.70 MiB -1 -1 0.14 20604 1 0.03 -1 -1 34028 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66248 32 32 298 248 1 185 82 17 17 289 -1 unnamed_device 26.2 MiB 2.36 829 5778 1188 4223 367 64.7 MiB 0.06 0.00 3.15648 -104.088 -3.15648 3.15648 0.98 0.000439168 0.000403831 0.0168041 0.0153954 34 2282 27 6.89349e+06 253689 618332. 2139.56 1.64 0.122519 0.106259 25762 151098 -1 1852 22 1279 1677 113891 27629 3.3057 3.3057 -123.13 -3.3057 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.021451 0.018832 120 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_011.v common 7.91 vpr 64.67 MiB -1 -1 0.16 20288 1 0.03 -1 -1 33488 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 30 32 303 262 1 191 83 17 17 289 -1 unnamed_device 26.2 MiB 2.54 1020 13403 3453 8147 1803 64.7 MiB 0.11 0.00 3.58297 -108.094 -3.58297 3.58297 1.01 0.000440328 0.000402684 0.03527 0.0321842 34 2488 19 6.89349e+06 295971 618332. 2139.56 1.96 0.115832 0.10192 25762 151098 -1 2016 32 1607 2138 241079 78306 3.61525 3.61525 -126.547 -3.61525 0 0 787024. 2723.27 0.31 0.10 0.15 -1 -1 0.31 0.0294188 0.0256781 124 58 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_012.v common 6.92 vpr 64.44 MiB -1 -1 0.15 20184 1 0.03 -1 -1 33428 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65988 32 32 276 237 1 171 81 17 17 289 -1 unnamed_device 26.1 MiB 1.88 941 14081 4779 7456 1846 64.4 MiB 0.11 0.00 2.911 -94.18 -2.911 2.911 1.02 0.000400117 0.000363952 0.0362818 0.0331553 34 2302 21 6.89349e+06 239595 618332. 2139.56 1.71 0.134227 0.117928 25762 151098 -1 1911 17 969 1343 106907 24433 2.93031 2.93031 -111.71 -2.93031 0 0 787024. 2723.27 0.32 0.05 0.15 -1 -1 0.32 0.0183144 0.0162676 108 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_013.v common 7.43 vpr 64.84 MiB -1 -1 0.14 20532 1 0.03 -1 -1 33728 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 32 32 344 272 1 209 87 17 17 289 -1 unnamed_device 26.3 MiB 2.30 1102 16599 6496 8060 2043 64.8 MiB 0.15 0.00 3.19568 -105.717 -3.19568 3.19568 0.95 0.000474703 0.000431516 0.0452393 0.041362 34 3097 29 6.89349e+06 324158 618332. 2139.56 1.89 0.153483 0.136395 25762 151098 -1 2459 20 1800 2773 238791 51731 3.15781 3.15781 -122.177 -3.15781 0 0 787024. 2723.27 0.30 0.08 0.13 -1 -1 0.30 0.024816 0.0221922 143 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_014.v common 7.62 vpr 64.74 MiB -1 -1 0.15 20796 1 0.03 -1 -1 33628 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66292 32 32 363 295 1 232 88 17 17 289 -1 unnamed_device 26.4 MiB 2.15 1254 16078 4483 9843 1752 64.7 MiB 0.15 0.00 4.41637 -133.893 -4.41637 4.41637 1.01 0.000455539 0.000417101 0.0452361 0.0412271 34 3083 24 6.89349e+06 338252 618332. 2139.56 2.08 0.162925 0.1426 25762 151098 -1 2592 19 1682 2305 181992 40518 4.49145 4.49145 -155.949 -4.49145 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0238659 0.0211355 153 58 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_015.v common 9.63 vpr 64.24 MiB -1 -1 0.14 20496 1 0.03 -1 -1 33792 -1 -1 18 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65780 29 32 248 215 1 160 79 17 17 289 -1 unnamed_device 25.7 MiB 2.19 851 9543 2409 6304 830 64.2 MiB 0.08 0.00 2.55142 -81.1964 -2.55142 2.55142 1.00 0.000408433 0.000373262 0.0244422 0.0223163 36 1792 22 6.89349e+06 253689 648988. 2245.63 4.14 0.158254 0.137878 26050 158493 -1 1686 18 863 1199 90595 20504 2.63851 2.63851 -93.0912 -2.63851 0 0 828058. 2865.25 0.34 0.05 0.15 -1 -1 0.34 0.017218 0.0152486 102 21 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_016.v common 8.03 vpr 64.76 MiB -1 -1 0.16 20652 1 0.03 -1 -1 33932 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 32 32 370 297 1 234 88 17 17 289 -1 unnamed_device 26.4 MiB 2.67 1285 15103 4244 8933 1926 64.8 MiB 0.13 0.00 3.4692 -110.521 -3.4692 3.4692 1.02 0.000532664 0.000486652 0.0434216 0.0395761 34 3469 28 6.89349e+06 338252 618332. 2139.56 1.88 0.15287 0.134892 25762 151098 -1 2822 22 2204 3446 274731 61353 3.86065 3.86065 -140.859 -3.86065 0 0 787024. 2723.27 0.31 0.09 0.15 -1 -1 0.31 0.0269314 0.0237144 159 55 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_017.v common 7.88 vpr 64.67 MiB -1 -1 0.17 20352 1 0.03 -1 -1 33880 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 32 32 338 269 1 205 86 17 17 289 -1 unnamed_device 26.2 MiB 2.37 1148 12560 3519 7659 1382 64.7 MiB 0.11 0.00 3.18768 -107.076 -3.18768 3.18768 1.02 0.000535862 0.000490648 0.0364956 0.0332969 34 2926 31 6.89349e+06 310065 618332. 2139.56 2.13 0.168936 0.148767 25762 151098 -1 2396 18 1400 2085 188638 39481 3.08991 3.08991 -121.144 -3.08991 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0213898 0.0189662 142 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_018.v common 9.60 vpr 64.95 MiB -1 -1 0.14 20168 1 0.03 -1 -1 33392 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 32 32 323 276 1 215 85 17 17 289 -1 unnamed_device 26.4 MiB 2.02 1179 11803 3445 7602 756 65.0 MiB 0.11 0.00 2.80245 -104.108 -2.80245 2.80245 1.00 0.000515284 0.000473286 0.0324095 0.0296778 36 2637 33 6.89349e+06 295971 648988. 2245.63 4.22 0.206923 0.180956 26050 158493 -1 2317 21 1588 2130 165200 35486 2.93426 2.93426 -124.003 -2.93426 0 0 828058. 2865.25 0.33 0.07 0.15 -1 -1 0.33 0.0236263 0.0208184 131 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_019.v common 7.68 vpr 64.26 MiB -1 -1 0.14 19928 1 0.03 -1 -1 33584 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65800 30 32 222 206 1 141 77 17 17 289 -1 unnamed_device 25.9 MiB 1.20 635 6923 1558 5008 357 64.3 MiB 0.05 0.00 2.15123 -72.8102 -2.15123 2.15123 1.00 0.000368337 0.000338529 0.0166007 0.0152335 34 1657 23 6.89349e+06 211408 618332. 2139.56 3.27 0.118379 0.103169 25762 151098 -1 1274 16 581 680 49411 11989 2.01387 2.01387 -85.0375 -2.01387 0 0 787024. 2723.27 0.32 0.04 0.14 -1 -1 0.32 0.0145974 0.0129349 82 29 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_020.v common 8.06 vpr 64.68 MiB -1 -1 0.14 20284 1 0.03 -1 -1 33624 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66228 31 32 291 243 1 179 82 17 17 289 -1 unnamed_device 26.3 MiB 2.39 965 9694 2612 6447 635 64.7 MiB 0.08 0.00 3.72732 -115.029 -3.72732 3.72732 0.96 0.000456453 0.000415565 0.0250465 0.0229725 30 2388 44 6.89349e+06 267783 556674. 1926.21 2.59 0.178047 0.156097 25186 138497 -1 1911 17 1048 1559 99111 23558 3.5623 3.5623 -132.38 -3.5623 0 0 706193. 2443.58 0.28 0.05 0.12 -1 -1 0.28 0.0180877 0.0161158 117 30 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_021.v common 6.47 vpr 64.87 MiB -1 -1 0.16 20164 1 0.03 -1 -1 33820 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 32 32 342 271 1 207 98 17 17 289 -1 unnamed_device 26.3 MiB 1.29 1118 8648 1733 6594 321 64.9 MiB 0.08 0.00 3.84343 -123.676 -3.84343 3.84343 0.99 0.000514996 0.000467647 0.0225007 0.0204712 34 2709 33 6.89349e+06 479191 618332. 2139.56 1.91 0.148562 0.129097 25762 151098 -1 2261 18 1366 2016 140535 32540 4.53664 4.53664 -154.811 -4.53664 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.0212324 0.0188149 151 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_022.v common 7.57 vpr 64.80 MiB -1 -1 0.17 20508 1 0.03 -1 -1 33740 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 32 32 372 300 1 229 87 17 17 289 -1 unnamed_device 26.4 MiB 1.60 1293 15831 5294 8250 2287 64.8 MiB 0.16 0.00 3.66325 -116.141 -3.66325 3.66325 1.03 0.000565629 0.000517715 0.0462438 0.0421156 36 3134 24 6.89349e+06 324158 648988. 2245.63 2.44 0.184768 0.162948 26050 158493 -1 2611 22 1984 3026 245424 52894 3.86676 3.86676 -136.774 -3.86676 0 0 828058. 2865.25 0.35 0.09 0.15 -1 -1 0.35 0.0285838 0.0253949 155 59 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_023.v common 6.25 vpr 64.23 MiB -1 -1 0.14 20012 1 0.03 -1 -1 33920 -1 -1 19 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65768 26 32 190 182 1 126 77 17 17 289 -1 unnamed_device 25.8 MiB 1.38 418 11487 4750 5672 1065 64.2 MiB 0.06 0.00 2.07721 -57.7283 -2.07721 2.07721 1.01 0.000269241 0.000245943 0.0226552 0.0207221 34 1552 22 6.89349e+06 267783 618332. 2139.56 1.63 0.097635 0.0856065 25762 151098 -1 1097 19 776 912 79811 19974 2.09806 2.09806 -69.7334 -2.09806 0 0 787024. 2723.27 0.33 0.04 0.14 -1 -1 0.33 0.0149037 0.0131727 76 21 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_024.v common 10.56 vpr 64.62 MiB -1 -1 0.15 20328 1 0.03 -1 -1 33824 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 32 32 285 227 1 169 87 17 17 289 -1 unnamed_device 26.3 MiB 1.02 890 10455 2852 5890 1713 64.6 MiB 0.09 0.00 3.52907 -102.015 -3.52907 3.52907 1.01 0.000496276 0.00045615 0.0271564 0.0248418 30 2392 21 6.89349e+06 324158 556674. 1926.21 6.26 0.225558 0.197553 25186 138497 -1 1819 20 1131 2023 133013 31165 3.41275 3.41275 -116.185 -3.41275 0 0 706193. 2443.58 0.30 0.06 0.13 -1 -1 0.30 0.0213569 0.0189073 119 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_025.v common 4.46 vpr 63.78 MiB -1 -1 0.14 20248 1 0.03 -1 -1 33516 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65308 32 32 173 169 1 114 76 17 17 289 -1 unnamed_device 25.3 MiB 0.43 593 9676 3705 4147 1824 63.8 MiB 0.05 0.00 1.84932 -63.6612 -1.84932 1.84932 0.98 0.000238579 0.00021684 0.0173467 0.0157887 30 1385 40 6.89349e+06 169126 556674. 1926.21 0.95 0.0660366 0.0575236 25186 138497 -1 1150 18 568 755 52526 12780 2.09706 2.09706 -76.8599 -2.09706 0 0 706193. 2443.58 0.28 0.04 0.13 -1 -1 0.28 0.0130984 0.0114538 65 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_026.v common 8.82 vpr 64.53 MiB -1 -1 0.13 20212 1 0.03 -1 -1 33936 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66076 32 32 300 245 1 187 84 17 17 289 -1 unnamed_device 26.1 MiB 1.82 1097 8868 2472 5861 535 64.5 MiB 0.08 0.00 3.87678 -114.73 -3.87678 3.87678 0.96 0.000452142 0.000414187 0.0231756 0.0212718 36 2312 19 6.89349e+06 281877 648988. 2245.63 3.84 0.162129 0.142346 26050 158493 -1 2023 20 1060 1645 111014 25976 3.64606 3.64606 -123.715 -3.64606 0 0 828058. 2865.25 0.32 0.06 0.14 -1 -1 0.32 0.0214393 0.0190954 125 21 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_027.v common 7.04 vpr 64.54 MiB -1 -1 0.15 20288 1 0.03 -1 -1 33728 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66092 32 32 297 233 1 177 95 17 17 289 -1 unnamed_device 26.1 MiB 0.85 999 13919 3835 8609 1475 64.5 MiB 0.11 0.00 2.6813 -88.0594 -2.6813 2.6813 1.00 0.000467946 0.000429886 0.031986 0.0292028 26 2333 36 6.89349e+06 436909 503264. 1741.40 2.92 0.190614 0.167821 24322 120374 -1 2253 22 1418 2497 222089 51642 2.96241 2.96241 -112.651 -2.96241 0 0 618332. 2139.56 0.25 0.08 0.11 -1 -1 0.25 0.0248515 0.0220573 130 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_028.v common 8.18 vpr 64.86 MiB -1 -1 0.15 20812 1 0.03 -1 -1 33952 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 338 277 1 215 87 17 17 289 -1 unnamed_device 26.3 MiB 2.54 1221 15447 4850 8084 2513 64.9 MiB 0.14 0.00 3.79978 -111.515 -3.79978 3.79978 1.01 0.000507586 0.000454132 0.0423611 0.0385566 34 3234 49 6.89349e+06 324158 618332. 2139.56 2.21 0.171704 0.15189 25762 151098 -1 2404 20 1637 2513 186342 42569 3.85196 3.85196 -132.073 -3.85196 0 0 787024. 2723.27 0.32 0.08 0.14 -1 -1 0.32 0.0238095 0.021132 142 47 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_029.v common 6.78 vpr 64.43 MiB -1 -1 0.13 20116 1 0.03 -1 -1 33772 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 32 32 284 241 1 177 81 17 17 289 -1 unnamed_device 26.1 MiB 1.92 1015 13031 4907 6151 1973 64.4 MiB 0.10 0.00 2.9839 -102 -2.9839 2.9839 0.95 0.000425402 0.000390877 0.0325029 0.0297539 34 2320 20 6.89349e+06 239595 618332. 2139.56 1.73 0.139887 0.123515 25762 151098 -1 1894 20 1218 1782 132047 30563 3.12086 3.12086 -118.175 -3.12086 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.020187 0.0179204 112 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_030.v common 9.53 vpr 64.59 MiB -1 -1 0.16 20212 1 0.03 -1 -1 33724 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 30 32 262 227 1 161 79 17 17 289 -1 unnamed_device 26.0 MiB 2.22 782 13092 4071 7234 1787 64.6 MiB 0.10 0.00 3.26582 -93.307 -3.26582 3.26582 0.99 0.000396853 0.000362491 0.0326927 0.0299151 36 1848 21 6.89349e+06 239595 648988. 2245.63 4.01 0.154816 0.135112 26050 158493 -1 1714 18 885 1467 107475 24480 3.26545 3.26545 -106.126 -3.26545 0 0 828058. 2865.25 0.34 0.05 0.14 -1 -1 0.34 0.0186231 0.0166051 104 29 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_031.v common 7.35 vpr 64.64 MiB -1 -1 0.15 20532 1 0.03 -1 -1 33748 -1 -1 20 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66192 28 32 260 223 1 163 80 17 17 289 -1 unnamed_device 26.1 MiB 1.91 750 12120 5092 6252 776 64.6 MiB 0.09 0.00 3.40424 -95.7275 -3.40424 3.40424 1.03 0.000352195 0.000321311 0.028323 0.025919 34 2274 38 6.89349e+06 281877 618332. 2139.56 2.13 0.155032 0.137088 25762 151098 -1 1764 19 1146 1879 171017 37476 3.34645 3.34645 -110.413 -3.34645 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0196987 0.0175693 107 27 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_032.v common 5.48 vpr 64.61 MiB -1 -1 0.14 20564 1 0.03 -1 -1 33520 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 32 32 253 210 1 156 81 17 17 289 -1 unnamed_device 26.1 MiB 0.70 896 10756 2987 7083 686 64.6 MiB 0.08 0.00 2.99448 -96.0518 -2.99448 2.99448 1.01 0.000373701 0.000342058 0.0258723 0.023657 32 2247 20 6.89349e+06 239595 586450. 2029.24 1.51 0.104164 0.0918846 25474 144626 -1 1922 20 1206 1991 166068 37344 3.06346 3.06346 -116.808 -3.06346 0 0 744469. 2576.02 0.31 0.07 0.14 -1 -1 0.31 0.0204624 0.0182021 101 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_033.v common 6.76 vpr 64.67 MiB -1 -1 0.15 20340 1 0.03 -1 -1 33808 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 31 32 271 231 1 172 81 17 17 289 -1 unnamed_device 26.3 MiB 1.89 837 9881 2778 6078 1025 64.7 MiB 0.08 0.00 2.82865 -88.3089 -2.82865 2.82865 0.99 0.000445608 0.000410918 0.025622 0.0234897 34 2178 27 6.89349e+06 253689 618332. 2139.56 1.59 0.131626 0.115768 25762 151098 -1 1800 18 1125 1636 116984 28323 2.78206 2.78206 -104.718 -2.78206 0 0 787024. 2723.27 0.32 0.05 0.14 -1 -1 0.32 0.0184296 0.0163031 108 26 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_034.v common 6.93 vpr 64.87 MiB -1 -1 0.15 20320 1 0.03 -1 -1 33728 -1 -1 22 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 29 32 291 250 1 185 83 17 17 289 -1 unnamed_device 26.4 MiB 2.02 968 9803 2327 6931 545 64.9 MiB 0.07 0.00 2.84275 -85.71 -2.84275 2.84275 0.94 0.000409154 0.000373701 0.0243302 0.0222705 34 2288 35 6.89349e+06 310065 618332. 2139.56 1.81 0.138874 0.121854 25762 151098 -1 1907 19 1252 1666 140726 31933 2.74491 2.74491 -100.813 -2.74491 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.0188806 0.0167216 120 48 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_035.v common 7.65 vpr 65.19 MiB -1 -1 0.16 20552 1 0.03 -1 -1 33448 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 32 32 367 282 1 224 89 17 17 289 -1 unnamed_device 26.7 MiB 2.01 1299 17117 5782 9189 2146 65.2 MiB 0.17 0.00 3.60205 -110.804 -3.60205 3.60205 1.00 0.00053339 0.00048773 0.0485867 0.0443832 34 3354 40 6.89349e+06 352346 618332. 2139.56 2.21 0.190548 0.166933 25762 151098 -1 2530 21 1409 2458 219615 45453 3.98626 3.98626 -128.556 -3.98626 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0253316 0.02238 159 26 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_036.v common 10.43 vpr 65.25 MiB -1 -1 0.16 20496 1 0.03 -1 -1 33848 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 32 32 391 311 1 250 88 17 17 289 -1 unnamed_device 26.8 MiB 2.40 1273 16663 4876 9595 2192 65.3 MiB 0.17 0.00 3.70207 -127.177 -3.70207 3.70207 1.02 0.000552746 0.000505433 0.0503949 0.0459176 36 3145 24 6.89349e+06 338252 648988. 2245.63 4.53 0.266373 0.234413 26050 158493 -1 2820 21 2362 3293 265908 57247 3.92285 3.92285 -150.328 -3.92285 0 0 828058. 2865.25 0.34 0.10 0.15 -1 -1 0.34 0.0288624 0.0255746 168 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_037.v common 6.66 vpr 64.25 MiB -1 -1 0.16 20336 1 0.03 -1 -1 33912 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65792 31 32 279 237 1 167 81 17 17 289 -1 unnamed_device 25.9 MiB 1.48 821 11981 3395 6671 1915 64.2 MiB 0.10 0.00 3.09348 -96.3304 -3.09348 3.09348 1.04 0.00043947 0.000403442 0.0313285 0.0286464 34 2026 25 6.89349e+06 253689 618332. 2139.56 1.78 0.135977 0.119544 25762 151098 -1 1756 19 1150 1775 131862 31098 2.94316 2.94316 -107.734 -2.94316 0 0 787024. 2723.27 0.33 0.06 0.15 -1 -1 0.33 0.0192873 0.0170822 109 30 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_038.v common 7.88 vpr 65.09 MiB -1 -1 0.16 20608 1 0.03 -1 -1 34012 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 31 32 370 297 1 235 88 17 17 289 -1 unnamed_device 26.7 MiB 2.68 1276 14128 4201 7880 2047 65.1 MiB 0.13 0.00 3.29719 -108.579 -3.29719 3.29719 0.99 0.000540025 0.000492427 0.0406193 0.0370738 34 3204 32 6.89349e+06 352346 618332. 2139.56 1.81 0.1689 0.147496 25762 151098 -1 2615 20 1557 2440 180641 40438 3.68035 3.68035 -133.215 -3.68035 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0244837 0.0216079 160 57 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_039.v common 8.98 vpr 64.99 MiB -1 -1 0.15 20656 1 0.03 -1 -1 33956 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 31 32 377 302 1 241 88 17 17 289 -1 unnamed_device 26.6 MiB 2.87 1274 17248 7062 8900 1286 65.0 MiB 0.16 0.00 4.54467 -133.388 -4.54467 4.54467 0.95 0.00052322 0.000478111 0.0491255 0.0449902 36 3261 29 6.89349e+06 352346 648988. 2245.63 2.83 0.195852 0.173848 26050 158493 -1 2656 22 2176 3186 244875 53894 4.51098 4.51098 -157.337 -4.51098 0 0 828058. 2865.25 0.32 0.09 0.14 -1 -1 0.32 0.0277059 0.0246311 163 60 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_040.v common 8.31 vpr 65.04 MiB -1 -1 0.18 20472 1 0.03 -1 -1 34032 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 31 32 383 305 1 240 88 17 17 289 -1 unnamed_device 26.6 MiB 2.50 1255 16858 6090 7529 3239 65.0 MiB 0.15 0.00 4.87148 -144.46 -4.87148 4.87148 1.01 0.000509767 0.000462917 0.0485947 0.0441227 34 3552 33 6.89349e+06 352346 618332. 2139.56 2.35 0.207369 0.183046 25762 151098 -1 2649 21 1965 2948 251504 60210 4.90498 4.90498 -168.422 -4.90498 0 0 787024. 2723.27 0.33 0.10 0.14 -1 -1 0.33 0.0293088 0.0260766 166 60 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_041.v common 7.47 vpr 65.02 MiB -1 -1 0.17 20720 1 0.03 -1 -1 33700 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 31 32 352 285 1 223 87 17 17 289 -1 unnamed_device 26.7 MiB 2.27 1258 16791 5122 9331 2338 65.0 MiB 0.15 0.00 3.17668 -104.664 -3.17668 3.17668 1.01 0.000462642 0.000423444 0.045565 0.0415781 34 3050 41 6.89349e+06 338252 618332. 2139.56 1.76 0.154578 0.135919 25762 151098 -1 2486 24 1954 2937 230664 50471 3.25786 3.25786 -121.649 -3.25786 0 0 787024. 2723.27 0.33 0.09 0.15 -1 -1 0.33 0.0288433 0.025505 148 51 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_042.v common 6.96 vpr 64.28 MiB -1 -1 0.14 20408 1 0.03 -1 -1 33988 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65820 32 32 291 242 1 188 84 17 17 289 -1 unnamed_device 25.8 MiB 2.02 1011 14724 5720 7303 1701 64.3 MiB 0.11 0.00 3.54595 -98.0074 -3.54595 3.54595 0.95 0.000422943 0.000385294 0.0357367 0.0326994 34 2340 21 6.89349e+06 281877 618332. 2139.56 1.79 0.14677 0.129842 25762 151098 -1 1963 18 1105 1577 126968 28926 3.7988 3.7988 -116.945 -3.7988 0 0 787024. 2723.27 0.31 0.06 0.13 -1 -1 0.31 0.0195398 0.0173252 120 24 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_043.v common 8.67 vpr 65.43 MiB -1 -1 0.17 20476 1 0.03 -1 -1 33644 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67000 32 32 457 356 1 296 95 17 17 289 -1 unnamed_device 27.0 MiB 2.73 1674 20831 6675 11879 2277 65.4 MiB 0.23 0.00 4.28981 -142.961 -4.28981 4.28981 1.00 0.000590588 0.000534648 0.0646435 0.0589065 34 4086 45 6.89349e+06 436909 618332. 2139.56 2.38 0.204546 0.180249 25762 151098 -1 3435 21 2662 4010 296477 64785 4.74079 4.74079 -167.779 -4.74079 0 0 787024. 2723.27 0.31 0.10 0.15 -1 -1 0.31 0.0300269 0.0266988 203 84 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_044.v common 6.84 vpr 64.59 MiB -1 -1 0.14 20396 1 0.03 -1 -1 33504 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 31 32 261 225 1 171 81 17 17 289 -1 unnamed_device 26.0 MiB 1.92 970 13556 4106 7339 2111 64.6 MiB 0.10 0.00 2.974 -93.2373 -2.974 2.974 1.02 0.000397781 0.000363499 0.0321133 0.0292552 34 2146 28 6.89349e+06 253689 618332. 2139.56 1.58 0.135268 0.118704 25762 151098 -1 1954 17 1027 1357 100250 23062 2.86421 2.86421 -106.717 -2.86421 0 0 787024. 2723.27 0.33 0.05 0.14 -1 -1 0.33 0.0174749 0.0155199 106 24 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_045.v common 5.96 vpr 64.63 MiB -1 -1 0.16 20704 1 0.03 -1 -1 33660 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66184 31 32 337 267 1 207 86 17 17 289 -1 unnamed_device 26.1 MiB 1.63 1143 11426 3180 6652 1594 64.6 MiB 0.11 0.00 3.75642 -117.13 -3.75642 3.75642 0.95 0.000490317 0.000450475 0.0308718 0.0282674 30 2898 22 6.89349e+06 324158 556674. 1926.21 1.20 0.106654 0.0946202 25186 138497 -1 2367 21 1361 2112 155453 34336 3.79066 3.79066 -131.985 -3.79066 0 0 706193. 2443.58 0.28 0.07 0.12 -1 -1 0.28 0.0239289 0.0212077 140 30 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_046.v common 7.84 vpr 64.92 MiB -1 -1 0.16 20400 1 0.03 -1 -1 33912 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 32 32 349 284 1 222 87 17 17 289 -1 unnamed_device 26.6 MiB 2.59 1262 16407 5394 8590 2423 64.9 MiB 0.15 0.00 3.53859 -108.537 -3.53859 3.53859 0.97 0.000526858 0.000480698 0.0461864 0.0419693 34 3447 24 6.89349e+06 324158 618332. 2139.56 1.89 0.141956 0.124471 25762 151098 -1 2683 18 1517 2404 188807 42023 3.41695 3.41695 -124.929 -3.41695 0 0 787024. 2723.27 0.30 0.07 0.15 -1 -1 0.30 0.0216523 0.0190989 149 50 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_047.v common 5.14 vpr 64.64 MiB -1 -1 0.15 20176 1 0.03 -1 -1 33908 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66188 32 32 291 230 1 175 90 17 17 289 -1 unnamed_device 26.2 MiB 0.68 988 12954 3861 7047 2046 64.6 MiB 0.11 0.00 3.37229 -105.584 -3.37229 3.37229 1.03 0.000436544 0.000395846 0.0313163 0.0284761 30 2479 28 6.89349e+06 366440 556674. 1926.21 1.11 0.106371 0.0941912 25186 138497 -1 2052 21 1131 2141 146543 32432 3.53085 3.53085 -121.87 -3.53085 0 0 706193. 2443.58 0.30 0.06 0.13 -1 -1 0.30 0.0223346 0.0197899 123 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_048.v common 7.41 vpr 64.90 MiB -1 -1 0.16 20928 1 0.03 -1 -1 33672 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 32 32 353 287 1 220 87 17 17 289 -1 unnamed_device 26.4 MiB 2.16 1205 13911 4891 6884 2136 64.9 MiB 0.13 0.00 3.42271 -106.786 -3.42271 3.42271 0.99 0.000483374 0.000442614 0.0398022 0.0363599 34 2888 24 6.89349e+06 324158 618332. 2139.56 1.83 0.157653 0.137715 25762 151098 -1 2458 21 1706 2354 206364 45488 3.22476 3.22476 -122.123 -3.22476 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0239701 0.0212067 148 52 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_049.v common 7.51 vpr 64.75 MiB -1 -1 0.15 20600 1 0.03 -1 -1 33672 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 32 32 361 291 1 233 88 17 17 289 -1 unnamed_device 26.4 MiB 2.31 1247 16273 5230 8426 2617 64.8 MiB 0.14 0.00 3.31619 -107.864 -3.31619 3.31619 0.96 0.000530999 0.000484844 0.0458493 0.0418121 34 3191 28 6.89349e+06 338252 618332. 2139.56 1.89 0.168063 0.147277 25762 151098 -1 2569 20 1653 2495 202668 44581 3.414 3.414 -126.461 -3.414 0 0 787024. 2723.27 0.29 0.08 0.15 -1 -1 0.29 0.0242807 0.0214522 154 52 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_050.v common 9.43 vpr 65.13 MiB -1 -1 0.15 20624 1 0.03 -1 -1 33872 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 32 32 382 305 1 243 90 17 17 289 -1 unnamed_device 26.7 MiB 1.99 1426 13356 3645 7813 1898 65.1 MiB 0.12 0.00 3.19568 -109.525 -3.19568 3.19568 0.94 0.00053075 0.000487206 0.0371657 0.0339703 36 3068 30 6.89349e+06 366440 648988. 2245.63 4.19 0.239208 0.209951 26050 158493 -1 2550 22 1970 2752 192937 42387 3.23291 3.23291 -127.252 -3.23291 0 0 828058. 2865.25 0.33 0.08 0.14 -1 -1 0.33 0.0285269 0.0254051 164 59 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_051.v common 7.19 vpr 64.82 MiB -1 -1 0.15 20400 1 0.03 -1 -1 33640 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 32 32 306 248 1 188 85 17 17 289 -1 unnamed_device 26.3 MiB 1.99 959 13849 3617 9052 1180 64.8 MiB 0.12 0.00 3.61195 -106.605 -3.61195 3.61195 0.99 0.000477928 0.000440327 0.0368033 0.0336116 34 2345 49 6.89349e+06 295971 618332. 2139.56 1.84 0.162896 0.142117 25762 151098 -1 1913 17 1150 1782 112063 27373 3.6892 3.6892 -123.346 -3.6892 0 0 787024. 2723.27 0.32 0.05 0.15 -1 -1 0.32 0.0190102 0.0168705 128 21 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_052.v common 9.61 vpr 64.85 MiB -1 -1 0.15 20184 1 0.03 -1 -1 33788 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 319 257 1 203 86 17 17 289 -1 unnamed_device 26.3 MiB 1.90 1018 15206 4361 8400 2445 64.8 MiB 0.12 0.00 3.93308 -114.051 -3.93308 3.93308 1.02 0.000457497 0.000416564 0.0399526 0.0364096 38 2408 22 6.89349e+06 310065 678818. 2348.85 4.26 0.233758 0.204412 26626 170182 -1 2090 18 1320 1969 129334 29703 3.6821 3.6821 -124.54 -3.6821 0 0 902133. 3121.57 0.36 0.06 0.16 -1 -1 0.36 0.0217216 0.0193206 135 26 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_053.v common 6.43 vpr 64.99 MiB -1 -1 0.15 20576 1 0.03 -1 -1 34036 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 31 32 373 299 1 227 87 17 17 289 -1 unnamed_device 26.6 MiB 1.46 1359 11991 3353 7500 1138 65.0 MiB 0.11 0.00 3.69042 -117.294 -3.69042 3.69042 0.95 0.000540741 0.000486854 0.0344485 0.0315463 34 3313 26 6.89349e+06 338252 618332. 2139.56 1.73 0.174106 0.153816 25762 151098 -1 2743 22 1726 2715 194869 44205 3.9617 3.9617 -143.002 -3.9617 0 0 787024. 2723.27 0.31 0.08 0.13 -1 -1 0.31 0.0285245 0.0254048 156 58 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_054.v common 8.64 vpr 64.99 MiB -1 -1 0.16 20552 1 0.03 -1 -1 33916 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 32 32 387 315 1 249 89 17 17 289 -1 unnamed_device 26.5 MiB 2.90 1307 11375 3187 7519 669 65.0 MiB 0.13 0.00 3.68195 -114.484 -3.68195 3.68195 1.00 0.00070203 0.000649164 0.0369421 0.0337837 34 3735 48 6.89349e+06 352346 618332. 2139.56 2.33 0.214278 0.189376 25762 151098 -1 2872 20 1946 2876 203844 46438 4.00826 4.00826 -141.231 -4.00826 0 0 787024. 2723.27 0.32 0.09 0.14 -1 -1 0.32 0.0317678 0.0285401 166 74 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_055.v common 6.20 vpr 64.46 MiB -1 -1 0.15 20200 1 0.03 -1 -1 33644 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 32 32 251 219 1 156 79 17 17 289 -1 unnamed_device 25.9 MiB 1.96 886 12416 3486 7835 1095 64.5 MiB 0.10 0.00 2.79059 -92.6319 -2.79059 2.79059 0.99 0.000396528 0.00036182 0.0307704 0.0280989 30 2022 23 6.89349e+06 211408 556674. 1926.21 1.00 0.086187 0.0758836 25186 138497 -1 1717 20 865 1375 80041 19004 2.42326 2.42326 -99.535 -2.42326 0 0 706193. 2443.58 0.29 0.05 0.14 -1 -1 0.29 0.0181333 0.0159739 96 20 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_056.v common 7.05 vpr 65.13 MiB -1 -1 0.16 20772 1 0.03 -1 -1 33768 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66692 32 32 341 285 1 219 84 17 17 289 -1 unnamed_device 26.5 MiB 1.51 1086 13992 4212 8069 1711 65.1 MiB 0.13 0.00 3.33199 -120.259 -3.33199 3.33199 1.02 0.000488025 0.000447022 0.0397849 0.0362 34 2799 22 6.89349e+06 281877 618332. 2139.56 2.09 0.172552 0.152381 25762 151098 -1 2308 20 1966 2699 205284 45873 3.75255 3.75255 -144.419 -3.75255 0 0 787024. 2723.27 0.34 0.08 0.14 -1 -1 0.34 0.0260544 0.0232678 138 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_057.v common 7.89 vpr 65.11 MiB -1 -1 0.15 20348 1 0.03 -1 -1 33780 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 32 32 387 293 1 237 89 17 17 289 -1 unnamed_device 26.7 MiB 1.95 1352 16523 6310 8350 1863 65.1 MiB 0.17 0.00 4.36852 -132.857 -4.36852 4.36852 0.96 0.000543978 0.000492429 0.049001 0.0445061 34 3625 30 6.89349e+06 352346 618332. 2139.56 2.63 0.200456 0.17741 25762 151098 -1 2816 24 2083 3307 286354 65925 4.63405 4.63405 -156.183 -4.63405 0 0 787024. 2723.27 0.31 0.11 0.13 -1 -1 0.31 0.0332207 0.0296799 168 28 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_058.v common 7.22 vpr 64.71 MiB -1 -1 0.16 20112 1 0.03 -1 -1 33860 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 32 32 340 270 1 212 86 17 17 289 -1 unnamed_device 26.2 MiB 1.99 1112 15773 5448 7805 2520 64.7 MiB 0.14 0.00 3.53796 -115.247 -3.53796 3.53796 0.98 0.000506468 0.000449484 0.0443063 0.0403991 34 2903 22 6.89349e+06 310065 618332. 2139.56 1.84 0.161109 0.141112 25762 151098 -1 2345 22 1765 2622 222284 49150 3.21461 3.21461 -127.966 -3.21461 0 0 787024. 2723.27 0.32 0.09 0.16 -1 -1 0.32 0.0266224 0.0235271 144 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_059.v common 9.24 vpr 64.28 MiB -1 -1 0.16 20316 1 0.03 -1 -1 33300 -1 -1 27 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65824 30 32 278 235 1 175 89 17 17 289 -1 unnamed_device 25.9 MiB 1.77 943 16325 5444 8309 2572 64.3 MiB 0.12 0.00 3.42624 -106.158 -3.42624 3.42624 0.98 0.000426581 0.000388955 0.0363589 0.0332133 36 2156 21 6.89349e+06 380534 648988. 2245.63 4.15 0.170128 0.147681 26050 158493 -1 1731 19 1079 1698 114086 26197 3.37965 3.37965 -117.358 -3.37965 0 0 828058. 2865.25 0.33 0.05 0.15 -1 -1 0.33 0.0187844 0.0165681 118 29 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_060.v common 10.12 vpr 65.18 MiB -1 -1 0.17 20936 1 0.03 -1 -1 33932 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 431 332 1 270 91 17 17 289 -1 unnamed_device 26.7 MiB 3.72 1500 8251 1895 5784 572 65.2 MiB 0.10 0.00 5.28925 -153.561 -5.28925 5.28925 1.01 0.000806661 0.000745174 0.0297987 0.027432 34 4237 45 6.89349e+06 380534 618332. 2139.56 2.97 0.224972 0.198949 25762 151098 -1 3194 22 2572 3957 281292 63952 5.58053 5.58053 -184.029 -5.58053 0 0 787024. 2723.27 0.32 0.11 0.14 -1 -1 0.32 0.0348727 0.0310886 188 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_061.v common 6.63 vpr 64.90 MiB -1 -1 0.13 20600 1 0.03 -1 -1 34116 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 336 268 1 205 85 17 17 289 -1 unnamed_device 26.4 MiB 1.56 1155 15151 5020 8318 1813 64.9 MiB 0.13 0.00 3.69702 -118.898 -3.69702 3.69702 0.94 0.000461769 0.000421194 0.0405987 0.0371509 34 2736 22 6.89349e+06 295971 618332. 2139.56 1.89 0.166795 0.147472 25762 151098 -1 2206 20 1651 2362 170553 38538 3.8237 3.8237 -135.689 -3.8237 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0231547 0.0204917 139 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_062.v common 5.62 vpr 64.45 MiB -1 -1 0.14 20356 1 0.03 -1 -1 33372 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65992 32 32 231 199 1 142 88 17 17 289 -1 unnamed_device 25.9 MiB 0.69 839 14323 3511 9263 1549 64.4 MiB 0.10 0.00 2.8828 -88.6493 -2.8828 2.8828 0.99 0.000381301 0.000347301 0.0293824 0.026873 34 1881 18 6.89349e+06 338252 618332. 2139.56 1.67 0.11012 0.0962584 25762 151098 -1 1626 18 769 1336 98505 22251 2.64096 2.64096 -99.6674 -2.64096 0 0 787024. 2723.27 0.31 0.05 0.15 -1 -1 0.31 0.0157942 0.0139196 94 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_063.v common 6.98 vpr 64.91 MiB -1 -1 0.17 20476 1 0.03 -1 -1 33808 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 349 273 1 214 87 17 17 289 -1 unnamed_device 26.3 MiB 2.03 1304 14487 4749 7643 2095 64.9 MiB 0.13 0.00 4.19497 -118.988 -4.19497 4.19497 0.97 0.00050152 0.000456142 0.0419216 0.0381181 34 3086 24 6.89349e+06 324158 618332. 2139.56 1.67 0.154386 0.135098 25762 151098 -1 2508 19 1430 2556 184075 41123 4.4618 4.4618 -138.909 -4.4618 0 0 787024. 2723.27 0.30 0.07 0.14 -1 -1 0.30 0.0205886 0.0181901 149 26 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_064.v common 5.72 vpr 64.18 MiB -1 -1 0.13 20172 1 0.03 -1 -1 33928 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65724 32 32 247 207 1 153 83 17 17 289 -1 unnamed_device 25.7 MiB 0.75 917 10703 2499 7304 900 64.2 MiB 0.08 0.00 2.81765 -93.3738 -2.81765 2.81765 0.99 0.000397136 0.000363977 0.0247892 0.0226824 34 2181 19 6.89349e+06 267783 618332. 2139.56 1.70 0.12991 0.114793 25762 151098 -1 1741 22 1183 2206 163574 36397 2.72081 2.72081 -106.649 -2.72081 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0205235 0.018146 98 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_065.v common 5.86 vpr 64.55 MiB -1 -1 0.15 20228 1 0.03 -1 -1 33532 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 30 32 278 235 1 175 82 17 17 289 -1 unnamed_device 26.2 MiB 1.60 830 9694 2630 6313 751 64.6 MiB 0.09 0.00 3.17368 -94.9673 -3.17368 3.17368 0.99 0.000432996 0.000397658 0.0248858 0.0227671 30 1994 26 6.89349e+06 281877 556674. 1926.21 1.01 0.0843808 0.0740181 25186 138497 -1 1739 21 1166 1706 115361 27152 2.91186 2.91186 -109.796 -2.91186 0 0 706193. 2443.58 0.29 0.06 0.13 -1 -1 0.29 0.0199825 0.0175659 113 29 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_066.v common 8.31 vpr 64.96 MiB -1 -1 0.15 20460 1 0.03 -1 -1 33948 -1 -1 26 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66516 29 32 355 287 1 224 87 17 17 289 -1 unnamed_device 26.6 MiB 3.34 1107 10455 2737 7033 685 65.0 MiB 0.10 0.00 3.60013 -105.333 -3.60013 3.60013 0.94 0.000524725 0.000483422 0.0288538 0.026384 34 2931 34 6.89349e+06 366440 618332. 2139.56 1.80 0.164891 0.14493 25762 151098 -1 2248 19 1488 2169 149212 35720 3.64764 3.64764 -123.704 -3.64764 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0229744 0.0203448 154 56 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_067.v common 7.74 vpr 64.95 MiB -1 -1 0.16 20716 1 0.03 -1 -1 33860 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 32 32 358 289 1 230 86 17 17 289 -1 unnamed_device 26.6 MiB 2.19 1221 16529 5593 8865 2071 64.9 MiB 0.15 0.00 3.99304 -131.657 -3.99304 3.99304 0.99 0.000537443 0.000489432 0.0492514 0.0448663 34 3267 30 6.89349e+06 310065 618332. 2139.56 2.13 0.178449 0.15633 25762 151098 -1 2715 20 1953 2858 211100 48185 4.56669 4.56669 -157.495 -4.56669 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.024398 0.0215718 151 51 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_068.v common 7.32 vpr 64.77 MiB -1 -1 0.15 20576 1 0.03 -1 -1 33552 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 353 285 1 228 87 17 17 289 -1 unnamed_device 26.4 MiB 1.87 1324 13911 4330 7522 2059 64.8 MiB 0.13 0.00 4.28447 -126.633 -4.28447 4.28447 1.01 0.000518745 0.000475928 0.0407067 0.0369457 34 3121 24 6.89349e+06 324158 618332. 2139.56 2.03 0.185096 0.164166 25762 151098 -1 2638 22 2034 2965 223799 51316 4.63015 4.63015 -153.608 -4.63015 0 0 787024. 2723.27 0.33 0.09 0.14 -1 -1 0.33 0.0306617 0.0274196 150 48 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_069.v common 6.76 vpr 64.44 MiB -1 -1 0.13 20388 1 0.03 -1 -1 33500 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65984 32 32 276 237 1 165 79 17 17 289 -1 unnamed_device 25.9 MiB 1.82 1012 12247 3759 7237 1251 64.4 MiB 0.09 0.00 3.42271 -102.592 -3.42271 3.42271 0.95 0.000380881 0.000347194 0.0305071 0.0277768 34 2311 30 6.89349e+06 211408 618332. 2139.56 1.82 0.140568 0.123461 25762 151098 -1 1923 22 1248 1837 167438 35535 3.01146 3.01146 -111.494 -3.01146 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0215368 0.0190288 105 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_070.v common 9.43 vpr 64.55 MiB -1 -1 0.17 20156 1 0.03 -1 -1 34028 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66100 31 32 319 272 1 203 83 17 17 289 -1 unnamed_device 26.1 MiB 1.93 1110 14843 5163 7748 1932 64.6 MiB 0.13 0.00 2.90565 -101.475 -2.90565 2.90565 0.99 0.000454038 0.00041412 0.040888 0.0372787 36 2537 21 6.89349e+06 281877 648988. 2245.63 4.12 0.179612 0.155909 26050 158493 -1 2266 20 1366 1923 155600 34038 3.05746 3.05746 -122.162 -3.05746 0 0 828058. 2865.25 0.33 0.07 0.16 -1 -1 0.33 0.0225382 0.0199974 131 60 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_071.v common 7.65 vpr 64.59 MiB -1 -1 0.16 20084 1 0.03 -1 -1 33672 -1 -1 26 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 30 32 329 273 1 213 88 17 17 289 -1 unnamed_device 26.0 MiB 2.49 1141 16468 6347 8227 1894 64.6 MiB 0.14 0.00 3.1616 -93.7201 -3.1616 3.1616 0.99 0.000487867 0.000443899 0.0435006 0.0395867 34 2607 28 6.89349e+06 366440 618332. 2139.56 1.81 0.157712 0.137448 25762 151098 -1 2172 20 1486 2192 151141 34960 3.05561 3.05561 -109.316 -3.05561 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0219605 0.0193581 142 52 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_072.v common 6.54 vpr 64.60 MiB -1 -1 0.16 20600 1 0.03 -1 -1 33960 -1 -1 23 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 28 32 277 229 1 171 83 17 17 289 -1 unnamed_device 26.2 MiB 1.60 828 14303 4124 8061 2118 64.6 MiB 0.11 0.00 3.50175 -88.7191 -3.50175 3.50175 0.99 0.000409881 0.000374841 0.0350018 0.0319567 34 2134 21 6.89349e+06 324158 618332. 2139.56 1.63 0.127664 0.111361 25762 151098 -1 1804 20 1209 2033 146238 32777 3.52 3.52 -106.268 -3.52 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0192475 0.0169502 119 20 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_073.v common 8.07 vpr 64.77 MiB -1 -1 0.14 20392 1 0.03 -1 -1 33744 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 30 32 317 269 1 202 83 17 17 289 -1 unnamed_device 26.3 MiB 2.61 1107 15563 4839 9013 1711 64.8 MiB 0.12 0.00 3.67032 -115.689 -3.67032 3.67032 0.94 0.000386598 0.000353346 0.0399362 0.0364575 34 2815 45 6.89349e+06 295971 618332. 2139.56 2.30 0.182389 0.161547 25762 151098 -1 2316 20 1657 2389 200510 43077 3.93975 3.93975 -145.567 -3.93975 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0226974 0.0202278 130 58 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_074.v common 8.24 vpr 65.07 MiB -1 -1 0.15 20536 1 0.03 -1 -1 33736 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 32 32 335 282 1 222 84 17 17 289 -1 unnamed_device 26.4 MiB 2.41 1267 5757 1225 4188 344 65.1 MiB 0.07 0.00 3.03554 -109.467 -3.03554 3.03554 1.02 0.00053937 0.000494461 0.017913 0.0163978 36 2787 34 6.89349e+06 281877 648988. 2245.63 2.47 0.15822 0.139413 26050 158493 -1 2430 19 1458 1950 169392 35739 3.12225 3.12225 -128.12 -3.12225 0 0 828058. 2865.25 0.35 0.07 0.15 -1 -1 0.35 0.0234134 0.0208216 138 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_075.v common 5.33 vpr 64.56 MiB -1 -1 0.15 20224 1 0.03 -1 -1 33944 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66112 31 32 293 230 1 175 94 17 17 289 -1 unnamed_device 26.1 MiB 0.80 1059 15217 4153 8755 2309 64.6 MiB 0.12 0.00 3.71042 -110.148 -3.71042 3.71042 1.00 0.000435836 0.000397815 0.0339216 0.0309086 28 2558 27 6.89349e+06 436909 531479. 1839.03 1.24 0.102381 0.0902437 24610 126494 -1 2184 22 1423 2633 194790 41978 3.6921 3.6921 -126.424 -3.6921 0 0 648988. 2245.63 0.27 0.08 0.12 -1 -1 0.27 0.0227651 0.0199729 129 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_076.v common 9.65 vpr 64.99 MiB -1 -1 0.14 20644 1 0.03 -1 -1 33888 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 32 32 350 275 1 214 87 17 17 289 -1 unnamed_device 26.4 MiB 2.19 1073 15063 4870 7370 2823 65.0 MiB 0.13 0.00 3.78342 -120.78 -3.78342 3.78342 0.94 0.0004895 0.000448208 0.0409559 0.0375133 36 2961 24 6.89349e+06 324158 648988. 2245.63 4.24 0.239616 0.211051 26050 158493 -1 2388 19 1659 2495 203163 44060 4.2718 4.2718 -145.631 -4.2718 0 0 828058. 2865.25 0.32 0.08 0.14 -1 -1 0.32 0.0248133 0.0221492 148 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_077.v common 10.32 vpr 65.16 MiB -1 -1 0.16 20496 1 0.03 -1 -1 33896 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 32 32 385 308 1 244 91 17 17 289 -1 unnamed_device 26.8 MiB 2.19 1387 15799 4762 8190 2847 65.2 MiB 0.15 0.00 4.36821 -138.443 -4.36821 4.36821 1.03 0.000546804 0.000497088 0.0454526 0.041469 36 3122 24 6.89349e+06 380534 648988. 2245.63 4.62 0.261307 0.229971 26050 158493 -1 2497 19 1785 2497 183731 42090 4.68299 4.68299 -162.029 -4.68299 0 0 828058. 2865.25 0.35 0.08 0.15 -1 -1 0.35 0.0269772 0.0240626 164 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_078.v common 8.18 vpr 64.98 MiB -1 -1 0.16 20536 1 0.03 -1 -1 33832 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 387 309 1 248 90 17 17 289 -1 unnamed_device 26.6 MiB 2.41 1342 10743 2957 7146 640 65.0 MiB 0.12 0.00 3.66297 -120.899 -3.66297 3.66297 0.99 0.000535006 0.000492461 0.0316516 0.0289182 36 3098 22 6.89349e+06 366440 648988. 2245.63 2.39 0.158221 0.138362 26050 158493 -1 2540 18 1580 2441 177699 39147 3.6593 3.6593 -140.509 -3.6593 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.0235605 0.0208618 164 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_079.v common 7.22 vpr 64.47 MiB -1 -1 0.13 20256 1 0.03 -1 -1 33800 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66016 30 32 272 232 1 176 83 17 17 289 -1 unnamed_device 26.1 MiB 2.01 968 15383 4647 8807 1929 64.5 MiB 0.11 0.00 3.29223 -102.411 -3.29223 3.29223 0.94 0.000390165 0.000352486 0.0354804 0.0322034 36 2158 20 6.89349e+06 295971 648988. 2245.63 2.07 0.14101 0.124413 26050 158493 -1 2007 20 1190 1668 150807 31403 3.15801 3.15801 -113.612 -3.15801 0 0 828058. 2865.25 0.32 0.06 0.14 -1 -1 0.32 0.019568 0.0173316 112 29 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_080.v common 8.28 vpr 64.90 MiB -1 -1 0.16 20668 1 0.03 -1 -1 33552 -1 -1 26 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 30 32 375 299 1 236 88 17 17 289 -1 unnamed_device 26.5 MiB 3.07 1197 11398 2996 7446 956 64.9 MiB 0.11 0.00 4.33827 -131.668 -4.33827 4.33827 1.02 0.000570769 0.000523173 0.0338979 0.0309133 34 2996 27 6.89349e+06 366440 618332. 2139.56 1.76 0.172609 0.151251 25762 151098 -1 2425 23 1964 2778 188154 43587 4.40209 4.40209 -153.795 -4.40209 0 0 787024. 2723.27 0.33 0.08 0.15 -1 -1 0.33 0.0286908 0.0253583 162 58 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_081.v common 7.63 vpr 64.84 MiB -1 -1 0.15 20496 1 0.03 -1 -1 33500 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 340 270 1 204 87 17 17 289 -1 unnamed_device 26.3 MiB 1.59 1230 15063 4319 8605 2139 64.8 MiB 0.14 0.00 4.07275 -124.439 -4.07275 4.07275 0.98 0.000504887 0.000462491 0.042031 0.0383849 34 2728 49 6.89349e+06 324158 618332. 2139.56 2.67 0.181402 0.158535 25762 151098 -1 2364 21 1648 2871 232874 50553 3.9839 3.9839 -141.768 -3.9839 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0239134 0.0211516 139 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_082.v common 6.92 vpr 64.81 MiB -1 -1 0.16 20420 1 0.03 -1 -1 33804 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 31 32 340 275 1 211 86 17 17 289 -1 unnamed_device 26.3 MiB 2.03 1144 13883 4639 7082 2162 64.8 MiB 0.11 0.00 3.97284 -116.981 -3.97284 3.97284 0.94 0.000464835 0.000425149 0.0364926 0.0333321 34 2740 24 6.89349e+06 324158 618332. 2139.56 1.70 0.16591 0.146485 25762 151098 -1 2196 21 1514 2336 174900 40488 4.38825 4.38825 -141.825 -4.38825 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0247328 0.0219172 142 43 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_083.v common 8.34 vpr 65.16 MiB -1 -1 0.16 20788 1 0.03 -1 -1 34000 -1 -1 27 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 30 32 377 310 1 241 89 17 17 289 -1 unnamed_device 26.7 MiB 2.28 1288 16523 5813 8348 2362 65.2 MiB 0.16 0.00 3.74362 -113.362 -3.74362 3.74362 1.03 0.0005501 0.000502887 0.0488066 0.0445483 34 3344 34 6.89349e+06 380534 618332. 2139.56 2.54 0.208369 0.184695 25762 151098 -1 2680 21 1994 2864 228916 50310 3.74235 3.74235 -135.361 -3.74235 0 0 787024. 2723.27 0.33 0.09 0.14 -1 -1 0.33 0.0283994 0.0252688 162 78 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_084.v common 9.18 vpr 64.84 MiB -1 -1 0.17 20444 1 0.03 -1 -1 33972 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 365 294 1 230 87 17 17 289 -1 unnamed_device 26.5 MiB 3.51 1281 17559 5546 9777 2236 64.8 MiB 0.16 0.00 4.15477 -125.508 -4.15477 4.15477 0.99 0.000540029 0.000492609 0.0498237 0.045554 34 3381 48 6.89349e+06 324158 618332. 2139.56 2.24 0.194365 0.169719 25762 151098 -1 2488 24 1898 2740 220540 50928 4.43175 4.43175 -147.236 -4.43175 0 0 787024. 2723.27 0.31 0.09 0.15 -1 -1 0.31 0.027539 0.0242078 155 54 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_085.v common 7.02 vpr 64.43 MiB -1 -1 0.15 20580 1 0.03 -1 -1 34048 -1 -1 30 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65972 29 32 378 310 1 247 91 17 17 289 -1 unnamed_device 26.0 MiB 1.82 1211 11719 2797 8026 896 64.4 MiB 0.11 0.00 3.56259 -107.488 -3.56259 3.56259 0.94 0.000538848 0.000493168 0.0313635 0.0287093 34 3197 43 6.89349e+06 422815 618332. 2139.56 1.99 0.187887 0.165763 25762 151098 -1 2583 22 2006 2736 194786 44396 3.60605 3.60605 -128.499 -3.60605 0 0 787024. 2723.27 0.31 0.08 0.13 -1 -1 0.31 0.0280059 0.0249107 166 79 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_086.v common 5.19 vpr 64.12 MiB -1 -1 0.14 20292 1 0.03 -1 -1 33912 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65664 32 32 243 205 1 149 81 17 17 289 -1 unnamed_device 25.7 MiB 0.63 759 9356 2634 6117 605 64.1 MiB 0.07 0.00 3.26403 -97.6755 -3.26403 3.26403 0.95 0.000344447 0.000316166 0.0206057 0.0188067 34 1735 21 6.89349e+06 239595 618332. 2139.56 1.40 0.095908 0.0830177 25762 151098 -1 1456 17 683 1103 63223 16446 2.81871 2.81871 -104.455 -2.81871 0 0 787024. 2723.27 0.30 0.04 0.14 -1 -1 0.30 0.015354 0.0135452 96 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_087.v common 9.83 vpr 65.05 MiB -1 -1 0.17 20564 1 0.03 -1 -1 33964 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 32 32 373 302 1 241 89 17 17 289 -1 unnamed_device 26.7 MiB 2.09 1282 15731 4568 8627 2536 65.1 MiB 0.15 0.00 4.4438 -134.87 -4.4438 4.4438 0.98 0.000530449 0.000484605 0.0448361 0.040963 36 2995 21 6.89349e+06 352346 648988. 2245.63 4.33 0.217644 0.190121 26050 158493 -1 2583 19 1777 2427 203762 42980 4.61698 4.61698 -158.454 -4.61698 0 0 828058. 2865.25 0.32 0.08 0.15 -1 -1 0.32 0.0238553 0.0211139 156 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_088.v common 8.79 vpr 65.13 MiB -1 -1 0.14 20328 1 0.03 -1 -1 33896 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66692 32 32 397 314 1 256 89 17 17 289 -1 unnamed_device 26.7 MiB 3.42 1372 13157 3946 7330 1881 65.1 MiB 0.12 0.00 4.29117 -140.966 -4.29117 4.29117 0.94 0.000577821 0.000526171 0.0387043 0.0353677 34 3402 49 6.89349e+06 352346 618332. 2139.56 2.16 0.211638 0.187062 25762 151098 -1 2732 19 1856 2649 190037 44493 4.64048 4.64048 -164.353 -4.64048 0 0 787024. 2723.27 0.31 0.08 0.13 -1 -1 0.31 0.0278941 0.0240865 171 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_089.v common 7.11 vpr 64.38 MiB -1 -1 0.15 20264 1 0.03 -1 -1 33896 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 32 32 269 231 1 172 82 17 17 289 -1 unnamed_device 26.1 MiB 2.86 938 8982 2267 6010 705 64.4 MiB 0.08 0.00 3.14102 -93.1669 -3.14102 3.14102 0.99 0.000423449 0.000385565 0.0232218 0.0212042 30 2145 23 6.89349e+06 253689 556674. 1926.21 1.06 0.0821227 0.0719009 25186 138497 -1 1751 20 828 1143 73278 17836 2.83081 2.83081 -104.833 -2.83081 0 0 706193. 2443.58 0.28 0.05 0.14 -1 -1 0.28 0.0183373 0.0161078 108 26 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_090.v common 4.69 vpr 64.17 MiB -1 -1 0.13 20176 1 0.03 -1 -1 33800 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65708 31 32 245 205 1 153 83 17 17 289 -1 unnamed_device 25.7 MiB 0.64 828 12143 3254 7489 1400 64.2 MiB 0.09 0.00 3.20583 -99.6169 -3.20583 3.20583 0.95 0.000389072 0.000358858 0.0271193 0.0248457 32 2017 23 6.89349e+06 281877 586450. 2029.24 0.96 0.0810548 0.0717171 25474 144626 -1 1846 20 1132 1878 153747 33938 2.89301 2.89301 -110.323 -2.89301 0 0 744469. 2576.02 0.29 0.06 0.13 -1 -1 0.29 0.0178725 0.0158085 99 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_091.v common 7.58 vpr 65.02 MiB -1 -1 0.16 20656 1 0.03 -1 -1 33748 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66580 32 32 348 274 1 215 87 17 17 289 -1 unnamed_device 26.4 MiB 2.37 1025 8535 1932 5828 775 65.0 MiB 0.08 0.00 3.58702 -113.647 -3.58702 3.58702 0.98 0.000501963 0.000458213 0.0245422 0.0224297 34 2622 24 6.89349e+06 324158 618332. 2139.56 1.88 0.142813 0.124589 25762 151098 -1 2132 19 1675 2424 189189 42731 3.62195 3.62195 -132.177 -3.62195 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0219915 0.0194716 145 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_092.v common 7.52 vpr 64.94 MiB -1 -1 0.17 20756 1 0.03 -1 -1 33556 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 356 289 1 224 87 17 17 289 -1 unnamed_device 26.7 MiB 2.21 1120 13143 3558 7385 2200 64.9 MiB 0.12 0.00 3.87394 -116.512 -3.87394 3.87394 1.00 0.000511908 0.000469192 0.0386724 0.0352377 36 2797 26 6.89349e+06 324158 648988. 2245.63 1.88 0.136799 0.120161 26050 158493 -1 2268 23 1652 2401 170737 38579 4.29309 4.29309 -140.22 -4.29309 0 0 828058. 2865.25 0.32 0.07 0.16 -1 -1 0.32 0.0260525 0.022848 149 53 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_093.v common 5.07 vpr 64.86 MiB -1 -1 0.15 20184 1 0.03 -1 -1 33808 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 32 32 349 260 1 204 100 17 17 289 -1 unnamed_device 26.3 MiB 0.73 1214 16572 4991 9564 2017 64.9 MiB 0.14 0.00 4.13991 -122.514 -4.13991 4.13991 0.94 0.000543611 0.000491568 0.0395497 0.0359764 32 3122 26 6.89349e+06 507378 586450. 2029.24 1.12 0.122174 0.108563 25474 144626 -1 2545 20 1726 3152 244207 54306 4.36419 4.36419 -145.665 -4.36419 0 0 744469. 2576.02 0.29 0.09 0.13 -1 -1 0.29 0.0264906 0.0236667 157 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_094.v common 6.74 vpr 64.59 MiB -1 -1 0.17 20360 1 0.03 -1 -1 33796 -1 -1 25 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 30 32 316 264 1 208 87 17 17 289 -1 unnamed_device 26.1 MiB 1.78 1075 11607 3465 6924 1218 64.6 MiB 0.10 0.00 2.95499 -90.2016 -2.95499 2.95499 0.98 0.000463691 0.000424308 0.0300729 0.0274566 34 2558 19 6.89349e+06 352346 618332. 2139.56 1.63 0.133617 0.116764 25762 151098 -1 2106 23 1846 2744 198508 44884 3.03561 3.03561 -102.976 -3.03561 0 0 787024. 2723.27 0.30 0.08 0.15 -1 -1 0.30 0.0235715 0.0207079 136 47 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_095.v common 6.56 vpr 64.38 MiB -1 -1 0.13 20296 1 0.03 -1 -1 34184 -1 -1 20 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 27 32 255 219 1 162 79 17 17 289 -1 unnamed_device 25.8 MiB 1.51 693 12754 5353 6316 1085 64.4 MiB 0.08 0.00 3.41829 -89.7991 -3.41829 3.41829 0.95 0.00036445 0.000333313 0.0294383 0.026971 36 1852 23 6.89349e+06 281877 648988. 2245.63 1.92 0.130839 0.115511 26050 158493 -1 1458 18 1094 1536 124877 29402 3.3647 3.3647 -105.761 -3.3647 0 0 828058. 2865.25 0.32 0.05 0.14 -1 -1 0.32 0.0178026 0.0158162 106 26 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_096.v common 9.68 vpr 65.23 MiB -1 -1 0.18 20428 1 0.03 -1 -1 33652 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 32 32 421 327 1 271 91 17 17 289 -1 unnamed_device 26.7 MiB 3.52 1535 16003 4670 9574 1759 65.2 MiB 0.17 0.00 3.70245 -121.975 -3.70245 3.70245 0.99 0.000605977 0.000551831 0.0497572 0.0454155 36 3686 23 6.89349e+06 380534 648988. 2245.63 2.66 0.189681 0.16697 26050 158493 -1 3032 22 2092 3251 226637 50849 4.18595 4.18595 -144.939 -4.18595 0 0 828058. 2865.25 0.33 0.09 0.15 -1 -1 0.33 0.0295329 0.0261266 185 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_097.v common 7.58 vpr 65.00 MiB -1 -1 0.16 20712 1 0.03 -1 -1 33872 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 31 32 365 296 1 233 87 17 17 289 -1 unnamed_device 26.6 MiB 2.31 1113 16215 4583 8770 2862 65.0 MiB 0.14 0.00 4.58387 -129.571 -4.58387 4.58387 0.99 0.000526035 0.00048069 0.0455498 0.0415458 34 3069 27 6.89349e+06 338252 618332. 2139.56 1.85 0.145902 0.128146 25762 151098 -1 2483 22 2050 2874 205851 47297 4.59775 4.59775 -152.559 -4.59775 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0255905 0.0225554 155 60 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_098.v common 7.38 vpr 65.02 MiB -1 -1 0.15 20200 1 0.03 -1 -1 33660 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 32 32 331 280 1 221 85 17 17 289 -1 unnamed_device 26.5 MiB 2.11 1107 15151 5070 7519 2562 65.0 MiB 0.12 0.00 3.54959 -117.566 -3.54959 3.54959 0.95 0.000448174 0.00041091 0.039251 0.0359571 34 3043 23 6.89349e+06 295971 618332. 2139.56 2.04 0.165523 0.146605 25762 151098 -1 2440 21 1827 2475 228499 47337 4.10325 4.10325 -142.52 -4.10325 0 0 787024. 2723.27 0.31 0.08 0.13 -1 -1 0.31 0.0257357 0.0229079 137 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_099.v common 7.55 vpr 64.84 MiB -1 -1 0.15 20264 1 0.03 -1 -1 33872 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 326 263 1 203 85 17 17 289 -1 unnamed_device 26.3 MiB 2.43 1026 7153 1674 5058 421 64.8 MiB 0.07 0.00 4.09751 -116.291 -4.09751 4.09751 0.99 0.000490254 0.000442393 0.0207313 0.0189273 34 2648 33 6.89349e+06 295971 618332. 2139.56 1.81 0.115285 0.100667 25762 151098 -1 2040 19 1207 1834 122206 29980 3.60406 3.60406 -125.709 -3.60406 0 0 787024. 2723.27 0.32 0.06 0.15 -1 -1 0.32 0.0217166 0.0192629 135 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_100.v common 7.01 vpr 64.78 MiB -1 -1 0.16 20664 1 0.03 -1 -1 33768 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 31 32 373 294 1 231 89 17 17 289 -1 unnamed_device 26.4 MiB 1.99 1220 14543 5101 6905 2537 64.8 MiB 0.13 0.00 3.52995 -105.888 -3.52995 3.52995 0.96 0.000526427 0.000481058 0.0400147 0.0366098 34 3065 32 6.89349e+06 366440 618332. 2139.56 1.76 0.184279 0.16273 25762 151098 -1 2568 20 1966 2965 198517 46925 3.8547 3.8547 -129.924 -3.8547 0 0 787024. 2723.27 0.31 0.08 0.13 -1 -1 0.31 0.02665 0.0237957 163 46 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_101.v common 7.36 vpr 64.81 MiB -1 -1 0.17 20536 1 0.03 -1 -1 33736 -1 -1 24 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 30 32 325 268 1 210 86 17 17 289 -1 unnamed_device 26.3 MiB 2.22 1075 9725 2643 6461 621 64.8 MiB 0.10 0.00 3.38329 -98.1242 -3.38329 3.38329 0.99 0.000488439 0.000437254 0.0260747 0.0238266 34 2918 21 6.89349e+06 338252 618332. 2139.56 1.82 0.135713 0.117875 25762 151098 -1 2251 17 1326 2131 140489 32727 3.4308 3.4308 -114.28 -3.4308 0 0 787024. 2723.27 0.32 0.06 0.15 -1 -1 0.32 0.0194585 0.0172155 140 46 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_102.v common 10.47 vpr 64.70 MiB -1 -1 0.16 20476 1 0.03 -1 -1 33592 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66252 32 32 350 275 1 215 86 17 17 289 -1 unnamed_device 26.1 MiB 2.93 1060 9914 2713 6681 520 64.7 MiB 0.11 0.00 3.88598 -121.634 -3.88598 3.88598 0.98 0.000515107 0.000470738 0.0293255 0.0267965 38 2561 25 6.89349e+06 310065 678818. 2348.85 4.16 0.192148 0.166605 26626 170182 -1 2344 20 1626 2614 199093 43435 3.8686 3.8686 -136.168 -3.8686 0 0 902133. 3121.57 0.34 0.08 0.17 -1 -1 0.34 0.0242385 0.0214506 148 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_103.v common 8.87 vpr 65.07 MiB -1 -1 0.14 20496 1 0.03 -1 -1 33748 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 32 32 386 307 1 246 90 17 17 289 -1 unnamed_device 26.6 MiB 2.73 1107 17979 7353 8414 2212 65.1 MiB 0.14 0.00 3.22388 -105.206 -3.22388 3.22388 0.94 0.000467753 0.000423411 0.0495424 0.0450561 38 3084 31 6.89349e+06 366440 678818. 2348.85 2.82 0.204673 0.181598 26626 170182 -1 2444 22 1945 2773 239919 61303 3.56056 3.56056 -125.379 -3.56056 0 0 902133. 3121.57 0.34 0.09 0.15 -1 -1 0.34 0.0294702 0.0262326 167 59 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_104.v common 7.65 vpr 64.24 MiB -1 -1 0.15 20264 1 0.03 -1 -1 33752 -1 -1 20 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65784 29 32 269 229 1 173 81 17 17 289 -1 unnamed_device 25.7 MiB 1.58 663 6381 1362 4156 863 64.2 MiB 0.05 0.00 3.27503 -96.719 -3.27503 3.27503 0.99 0.000398787 0.000363327 0.0164703 0.015069 34 1702 24 6.89349e+06 281877 618332. 2139.56 2.81 0.159324 0.137223 25762 151098 -1 1390 19 1258 1628 93811 24616 3.02336 3.02336 -107.406 -3.02336 0 0 787024. 2723.27 0.32 0.05 0.15 -1 -1 0.32 0.0179488 0.0158902 110 28 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_105.v common 6.71 vpr 64.59 MiB -1 -1 0.16 20172 1 0.03 -1 -1 34012 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 32 32 310 266 1 200 84 17 17 289 -1 unnamed_device 26.1 MiB 1.43 1097 14907 4140 9276 1491 64.6 MiB 0.13 0.00 3.55759 -114.415 -3.55759 3.55759 0.98 0.000495012 0.00045089 0.0408498 0.0372658 34 2562 26 6.89349e+06 281877 618332. 2139.56 1.95 0.148264 0.129752 25762 151098 -1 2271 20 1512 2091 187879 40639 3.57495 3.57495 -130.377 -3.57495 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0210906 0.0186284 125 55 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_106.v common 7.00 vpr 64.86 MiB -1 -1 0.16 20284 1 0.03 -1 -1 33808 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 31 32 326 261 1 204 85 17 17 289 -1 unnamed_device 26.3 MiB 1.81 1112 16453 5727 8522 2204 64.9 MiB 0.15 0.00 3.81078 -113.364 -3.81078 3.81078 0.98 0.000484479 0.000442639 0.0448257 0.0408897 34 2660 34 6.89349e+06 310065 618332. 2139.56 1.84 0.167175 0.146358 25762 151098 -1 2210 18 1407 2181 152055 34901 3.76856 3.76856 -131.923 -3.76856 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.0207576 0.0184173 137 29 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_107.v common 8.35 vpr 64.52 MiB -1 -1 0.16 20284 1 0.03 -1 -1 33648 -1 -1 19 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 29 32 262 224 1 168 80 17 17 289 -1 unnamed_device 26.0 MiB 3.45 872 12980 4374 6580 2026 64.5 MiB 0.10 0.00 3.36962 -96.2497 -3.36962 3.36962 1.00 0.00040498 0.000369436 0.0328906 0.0300961 34 2110 26 6.89349e+06 267783 618332. 2139.56 1.60 0.105945 0.0929113 25762 151098 -1 1788 22 1023 1441 106242 25454 2.83255 2.83255 -101.541 -2.83255 0 0 787024. 2723.27 0.31 0.05 0.15 -1 -1 0.31 0.0192095 0.0169072 108 25 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_108.v common 7.48 vpr 64.77 MiB -1 -1 0.15 20524 1 0.03 -1 -1 33952 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 32 32 278 238 1 182 82 17 17 289 -1 unnamed_device 26.4 MiB 2.35 862 9872 2312 7175 385 64.8 MiB 0.08 0.00 3.39233 -105.873 -3.39233 3.39233 0.99 0.000434053 0.000388233 0.0253243 0.0231752 34 2336 25 6.89349e+06 253689 618332. 2139.56 1.83 0.127675 0.111421 25762 151098 -1 1926 20 1412 2025 154416 34875 3.35486 3.35486 -123.133 -3.35486 0 0 787024. 2723.27 0.31 0.06 0.16 -1 -1 0.31 0.0197632 0.0174138 114 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_109.v common 7.22 vpr 64.66 MiB -1 -1 0.17 20364 1 0.03 -1 -1 33972 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66212 31 32 373 300 1 236 89 17 17 289 -1 unnamed_device 26.3 MiB 2.05 1258 11969 3393 7716 860 64.7 MiB 0.11 0.00 3.60497 -117.87 -3.60497 3.60497 0.98 0.000524596 0.000478336 0.0340915 0.0311366 34 3076 31 6.89349e+06 366440 618332. 2139.56 1.81 0.161382 0.140609 25762 151098 -1 2643 21 1928 2721 228282 49647 3.69705 3.69705 -139.684 -3.69705 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0257498 0.0227434 160 60 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_110.v common 7.39 vpr 64.38 MiB -1 -1 0.15 20456 1 0.03 -1 -1 33640 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 31 32 265 230 1 175 80 17 17 289 -1 unnamed_device 25.8 MiB 2.30 891 9540 2209 6800 531 64.4 MiB 0.08 0.00 2.80665 -91.3749 -2.80665 2.80665 0.99 0.000410319 0.000375215 0.0242573 0.0221619 34 2224 22 6.89349e+06 239595 618332. 2139.56 1.82 0.117411 0.101967 25762 151098 -1 1956 24 1452 2091 166415 37456 3.02571 3.02571 -109.388 -3.02571 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0214628 0.0188093 108 30 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_111.v common 7.47 vpr 65.04 MiB -1 -1 0.16 20748 1 0.03 -1 -1 33608 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 32 32 349 286 1 221 86 17 17 289 -1 unnamed_device 26.5 MiB 2.24 1248 15206 4757 8131 2318 65.0 MiB 0.13 0.00 3.27699 -103.317 -3.27699 3.27699 0.98 0.000501865 0.000451718 0.0422089 0.0384973 34 3084 47 6.89349e+06 310065 618332. 2139.56 1.89 0.162768 0.142362 25762 151098 -1 2570 18 1439 2115 167516 37558 3.6123 3.6123 -128.231 -3.6123 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0216836 0.0192186 146 54 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_112.v common 8.65 vpr 65.06 MiB -1 -1 0.16 20548 1 0.03 -1 -1 33688 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 31 32 396 325 1 259 89 17 17 289 -1 unnamed_device 26.6 MiB 2.42 1329 17909 6207 9283 2419 65.1 MiB 0.18 0.00 3.81048 -125.137 -3.81048 3.81048 1.00 0.000553363 0.000498923 0.052109 0.0475153 36 3528 26 6.89349e+06 366440 648988. 2245.63 2.74 0.184282 0.161564 26050 158493 -1 2834 23 2433 3436 278789 58185 4.14584 4.14584 -151.284 -4.14584 0 0 828058. 2865.25 0.32 0.10 0.15 -1 -1 0.32 0.0294497 0.0260149 170 87 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_113.v common 8.22 vpr 64.82 MiB -1 -1 0.16 20428 1 0.03 -1 -1 33892 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 32 32 303 262 1 200 82 17 17 289 -1 unnamed_device 26.4 MiB 2.99 1153 14322 4756 7487 2079 64.8 MiB 0.12 0.00 3.0513 -100.067 -3.0513 3.0513 0.98 0.000450077 0.000411988 0.0380528 0.0346894 34 2650 32 6.89349e+06 253689 618332. 2139.56 1.93 0.1463 0.127548 25762 151098 -1 2269 21 1493 2004 182225 38417 3.14876 3.14876 -120.021 -3.14876 0 0 787024. 2723.27 0.30 0.07 0.15 -1 -1 0.30 0.0209403 0.0184434 124 54 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_114.v common 6.60 vpr 64.29 MiB -1 -1 0.15 20428 1 0.03 -1 -1 33768 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65832 32 32 290 244 1 177 82 17 17 289 -1 unnamed_device 25.9 MiB 1.36 866 7558 1797 5447 314 64.3 MiB 0.08 0.00 3.24503 -99.305 -3.24503 3.24503 1.00 0.000435711 0.000398641 0.0205985 0.0188424 34 2528 23 6.89349e+06 253689 618332. 2139.56 1.95 0.12324 0.106959 25762 151098 -1 2015 22 1387 2013 146234 37042 3.31131 3.31131 -121.796 -3.31131 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0213284 0.0187778 115 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_115.v common 7.03 vpr 64.43 MiB -1 -1 0.14 20120 1 0.03 -1 -1 33832 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65980 32 32 318 257 1 198 86 17 17 289 -1 unnamed_device 25.9 MiB 2.05 991 8780 2200 5577 1003 64.4 MiB 0.08 0.00 3.98738 -113.412 -3.98738 3.98738 0.98 0.000492957 0.00044518 0.0242002 0.0221229 34 2590 20 6.89349e+06 310065 618332. 2139.56 1.71 0.10664 0.0936177 25762 151098 -1 2181 21 1466 2077 143131 33487 3.71456 3.71456 -129.908 -3.71456 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0224819 0.0197995 133 27 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_116.v common 7.32 vpr 64.74 MiB -1 -1 0.16 20448 1 0.03 -1 -1 33784 -1 -1 25 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 29 32 324 268 1 207 86 17 17 289 -1 unnamed_device 26.2 MiB 2.29 1061 12182 3224 7129 1829 64.7 MiB 0.11 0.00 3.15468 -90.2902 -3.15468 3.15468 0.99 0.000461785 0.000422137 0.0318559 0.0291223 34 2487 25 6.89349e+06 352346 618332. 2139.56 1.66 0.139366 0.121289 25762 151098 -1 2018 18 1425 2066 129897 31829 3.13935 3.13935 -104.19 -3.13935 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0205961 0.0182088 138 49 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_117.v common 8.36 vpr 64.92 MiB -1 -1 0.17 20624 1 0.03 -1 -1 33696 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 32 32 393 312 1 243 88 17 17 289 -1 unnamed_device 26.5 MiB 2.38 1369 17053 5029 10705 1319 64.9 MiB 0.17 0.00 4.55604 -149.34 -4.55604 4.55604 1.01 0.000558062 0.00050926 0.0509112 0.0464441 36 3297 31 6.89349e+06 338252 648988. 2245.63 2.46 0.187754 0.164555 26050 158493 -1 2764 19 1814 2802 235215 50509 4.56728 4.56728 -162.678 -4.56728 0 0 828058. 2865.25 0.33 0.08 0.16 -1 -1 0.33 0.0254146 0.0225188 166 62 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_118.v common 4.84 vpr 64.26 MiB -1 -1 0.15 20288 1 0.03 -1 -1 33764 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65804 31 32 229 197 1 143 80 17 17 289 -1 unnamed_device 25.8 MiB 0.68 834 6616 1486 4552 578 64.3 MiB 0.06 0.00 2.72825 -89.6146 -2.72825 2.72825 1.01 0.000375488 0.000345302 0.0159941 0.0146534 30 1762 20 6.89349e+06 239595 556674. 1926.21 0.95 0.065305 0.0569721 25186 138497 -1 1546 20 689 1069 71005 16251 2.43906 2.43906 -97.1999 -2.43906 0 0 706193. 2443.58 0.29 0.04 0.14 -1 -1 0.29 0.016693 0.0146765 92 -1 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_119.v common 7.86 vpr 65.26 MiB -1 -1 0.18 20612 1 0.03 -1 -1 33604 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 32 32 412 334 1 269 91 17 17 289 -1 unnamed_device 26.8 MiB 2.26 1492 18859 6392 9640 2827 65.3 MiB 0.18 0.00 4.49353 -146.184 -4.49353 4.49353 0.97 0.000558344 0.000508813 0.0550235 0.0500938 34 3730 26 6.89349e+06 380534 618332. 2139.56 2.10 0.175331 0.153989 25762 151098 -1 2960 28 2562 3485 299157 63964 5.03618 5.03618 -175.9 -5.03618 0 0 787024. 2723.27 0.31 0.11 0.15 -1 -1 0.31 0.0347287 0.0304239 175 87 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_120.v common 7.99 vpr 65.12 MiB -1 -1 0.17 20764 1 0.03 -1 -1 33464 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 376 318 1 259 87 17 17 289 -1 unnamed_device 26.7 MiB 2.64 1341 14871 4444 8491 1936 65.1 MiB 0.13 0.00 3.86068 -134.852 -3.86068 3.86068 1.01 0.00053672 0.000489552 0.0431846 0.039398 34 3276 28 6.89349e+06 324158 618332. 2139.56 1.86 0.148723 0.130581 25762 151098 -1 2628 23 2757 3488 285141 63535 4.30343 4.30343 -163.341 -4.30343 0 0 787024. 2723.27 0.31 0.10 0.15 -1 -1 0.31 0.0276705 0.0242948 160 93 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_121.v common 9.82 vpr 65.16 MiB -1 -1 0.16 20624 1 0.03 -1 -1 33664 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 32 32 360 293 1 227 86 17 17 289 -1 unnamed_device 26.8 MiB 2.31 1276 16340 4864 9817 1659 65.2 MiB 0.15 0.00 3.22388 -105.825 -3.22388 3.22388 1.00 0.00051491 0.000468133 0.0468723 0.0427239 36 2712 19 6.89349e+06 310065 648988. 2245.63 4.08 0.2036 0.177369 26050 158493 -1 2297 20 1423 1949 146604 32230 3.00881 3.00881 -118.555 -3.00881 0 0 828058. 2865.25 0.32 0.06 0.16 -1 -1 0.32 0.0235465 0.0208416 152 57 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_122.v common 8.42 vpr 64.89 MiB -1 -1 0.16 20524 1 0.03 -1 -1 33932 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 32 32 396 299 1 241 90 17 17 289 -1 unnamed_device 26.5 MiB 3.01 1353 11145 2615 6808 1722 64.9 MiB 0.12 0.00 4.7155 -144.713 -4.7155 4.7155 0.98 0.000591358 0.000540606 0.0346225 0.0316356 34 3325 23 6.89349e+06 366440 618332. 2139.56 1.97 0.169972 0.148563 25762 151098 -1 2807 23 2243 3566 281911 60718 4.79505 4.79505 -163.847 -4.79505 0 0 787024. 2723.27 0.31 0.10 0.15 -1 -1 0.31 0.029645 0.026179 172 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_123.v common 5.78 vpr 63.97 MiB -1 -1 0.15 20284 1 0.03 -1 -1 33724 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65508 30 32 224 207 1 138 77 17 17 289 -1 unnamed_device 25.6 MiB 1.01 795 11813 3897 6288 1628 64.0 MiB 0.08 0.00 2.38626 -79.468 -2.38626 2.38626 0.98 0.000372717 0.000339558 0.0279011 0.0255002 34 1749 18 6.89349e+06 211408 618332. 2139.56 1.52 0.103332 0.090049 25762 151098 -1 1577 19 829 1127 105291 22334 2.12732 2.12732 -91.2768 -2.12732 0 0 787024. 2723.27 0.31 0.05 0.15 -1 -1 0.31 0.0161533 0.014212 82 29 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_124.v common 6.58 vpr 64.75 MiB -1 -1 0.15 20224 1 0.03 -1 -1 34044 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 30 32 286 239 1 176 82 17 17 289 -1 unnamed_device 26.3 MiB 1.45 927 11652 3264 6943 1445 64.8 MiB 0.09 0.00 3.59859 -111.607 -3.59859 3.59859 0.99 0.00042885 0.000392592 0.0298049 0.0272407 34 2170 33 6.89349e+06 281877 618332. 2139.56 1.80 0.133733 0.116325 25762 151098 -1 1851 23 1328 2041 167780 37231 3.503 3.503 -126.048 -3.503 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0220655 0.0193696 119 29 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_125.v common 8.16 vpr 64.72 MiB -1 -1 0.14 20372 1 0.03 -1 -1 33508 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66276 32 32 296 247 1 187 82 17 17 289 -1 unnamed_device 26.3 MiB 2.22 984 12542 4726 6312 1504 64.7 MiB 0.11 0.00 3.53059 -112.398 -3.53059 3.53059 0.98 0.000471785 0.000430917 0.0334163 0.0305244 34 3065 44 6.89349e+06 253689 618332. 2139.56 2.58 0.137301 0.119955 25762 151098 -1 2290 26 1641 3088 248602 55808 3.67535 3.67535 -137.184 -3.67535 0 0 787024. 2723.27 0.31 0.09 0.15 -1 -1 0.31 0.0251753 0.0220474 120 31 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_126.v common 8.56 vpr 64.11 MiB -1 -1 0.16 20428 1 0.03 -1 -1 33824 -1 -1 21 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65648 25 32 216 194 1 138 78 17 17 289 -1 unnamed_device 25.6 MiB 1.37 589 11200 4364 4465 2371 64.1 MiB 0.07 0.00 3.0161 -72.6138 -3.0161 3.0161 0.98 0.000343226 0.000313996 0.0248205 0.0226837 36 1468 21 6.89349e+06 295971 648988. 2245.63 3.93 0.126635 0.109356 26050 158493 -1 1298 20 804 1199 86320 20366 2.85841 2.85841 -80.9794 -2.85841 0 0 828058. 2865.25 0.33 0.04 0.16 -1 -1 0.33 0.0156079 0.0136744 92 19 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_127.v common 8.52 vpr 64.93 MiB -1 -1 0.16 20928 1 0.03 -1 -1 34008 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 32 32 376 307 1 242 87 17 17 289 -1 unnamed_device 26.5 MiB 2.82 1314 9495 2410 6520 565 64.9 MiB 0.11 0.00 3.59585 -110.102 -3.59585 3.59585 1.00 0.000547059 0.000500106 0.0290823 0.0265479 34 3476 38 6.89349e+06 324158 618332. 2139.56 2.30 0.167981 0.14589 25762 151098 -1 2621 19 1813 2687 185767 43385 3.74866 3.74866 -132.437 -3.74866 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0244756 0.0215338 161 69 -1 -1 -1 -1 + fixed_k6_frac_uripple_N8_22nm.xml mult_128.v common 8.11 vpr 65.24 MiB -1 -1 0.17 20568 1 0.03 -1 -1 33948 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:31 gh-actions-runner-vtr-auto-spawned195 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 31 32 409 331 1 264 92 17 17 289 -1 unnamed_device 26.8 MiB 2.65 1428 17480 5123 10265 2092 65.2 MiB 0.17 0.00 3.87458 -129.852 -3.87458 3.87458 1.01 0.000577793 0.000520824 0.0501518 0.0452877 34 3378 30 6.89349e+06 408721 618332. 2139.56 2.00 0.187026 0.162602 25762 151098 -1 2703 20 2075 2853 198427 46260 4.10659 4.10659 -151.043 -4.10659 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0264927 0.0234959 179 86 -1 -1 -1 -1 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/power_extended_arch_list/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/power_extended_arch_list/config/golden_results.txt index 420466a25c2..9f9dcae9220 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/power_extended_arch_list/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/power_extended_arch_list/config/golden_results.txt @@ -1,31 +1,31 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time total_power routing_power_perc clock_power_perc tile_power_perc -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.09 vpr 55.19 MiB -1 -1 0.18 18560 3 0.06 -1 -1 32744 -1 -1 68 99 1 0 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 56512 99 130 343 473 1 230 298 12 12 144 clb auto 16.3 MiB 0.07 572 55.2 MiB 0.14 0.00 1.63028 -108.738 -1.63028 1.63028 0.22 0.000340502 0.000307112 0.027896 0.0251334 44 1417 14 5.66058e+06 4.21279e+06 360780. 2505.42 1.09 0.189663 0.17397 13094 71552 -1 1231 11 449 718 38782 11946 0 0 38782 11946 718 614 0 0 2355 2101 0 0 2978 2360 0 0 788 667 0 0 15634 3532 0 0 16309 2672 0 0 718 0 0 269 414 445 2996 0 0 1.9084 1.9084 -139.139 -1.9084 -0.416006 -0.147762 470765. 3269.20 0.10 0.02 0.04 -1 -1 0.10 0.0136163 0.0128607 0.01049 0.2555 0.07883 0.6657 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml diffeq1.v common 9.79 vpr 58.29 MiB -1 -1 0.31 22900 15 0.32 -1 -1 33264 -1 -1 38 162 0 5 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 59684 162 96 993 934 1 696 301 16 16 256 mult_36 auto 19.9 MiB 0.18 5428 58.3 MiB 0.32 0.00 19.9596 -1648.74 -19.9596 19.9596 0.48 0.00101658 0.000903954 0.0970702 0.0873825 46 13271 37 1.21132e+07 4.02797e+06 727248. 2840.81 4.94 0.46586 0.425714 24972 144857 -1 10025 17 3164 6144 1940934 498468 0 0 1940934 498468 6144 4223 0 0 78011 76422 0 0 81313 78168 0 0 6697 4572 0 0 879964 161352 0 0 888805 173731 0 0 6144 0 0 3018 8452 8155 50099 0 0 22.8999 22.8999 -1888.31 -22.8999 0 0 934704. 3651.19 0.20 0.34 0.09 -1 -1 0.20 0.0666329 0.0627901 0.007475 0.3634 0.01692 0.6197 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml LU8PEEng.v common 492.93 vpr 388.55 MiB -1 -1 48.62 339644 122 59.03 -1 -1 77844 -1 -1 1377 114 45 8 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 397880 114 102 21867 21777 1 11713 1646 50 50 2500 memory auto 180.9 MiB 15.53 162689 388.6 MiB 19.63 0.14 68.7817 -50162.9 -68.7817 68.7817 23.70 0.0347519 0.0304026 4.6802 3.81808 92 251169 44 1.47946e+08 1.02043e+08 1.52089e+07 6083.58 244.79 18.37 15.2806 338772 3221652 -1 220101 19 45751 172307 32920188 7264749 0 0 32920188 7264749 164441 57994 0 0 591691 548992 0 0 704893 597954 0 0 169930 67144 0 0 15682645 2978165 0 0 15606588 3014500 0 0 164441 0 0 121062 487151 475835 2963694 8158 5092 79.5055 79.5055 -65870.8 -79.5055 -14.9102 -0.295467 1.93279e+07 7731.17 6.90 9.50 2.30 -1 -1 6.90 2.37124 2.05828 0.08136 0.4285 0.01142 0.5601 -k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 2.51 vpr 55.01 MiB -1 -1 0.18 18632 3 0.06 -1 -1 32612 -1 -1 68 99 1 0 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 56332 99 130 343 473 1 232 298 12 12 144 clb auto 16.7 MiB 0.07 572 55.0 MiB 0.13 0.00 1.62851 -108.359 -1.62851 1.62851 0.22 0.000326051 0.000293181 0.0262507 0.0236426 48 1189 19 5.66058e+06 4.21279e+06 394078. 2736.65 0.52 0.111503 0.102523 13382 75762 -1 1252 11 422 669 38874 12066 0 0 38874 12066 669 523 0 0 1920 1755 0 0 2584 1921 0 0 733 577 0 0 16320 4045 0 0 16648 3245 0 0 669 0 0 247 404 345 2663 0 0 1.97488 1.97488 -136.181 -1.97488 -0.782377 -0.296573 503207. 3494.49 0.10 0.02 0.05 -1 -1 0.10 0.0138063 0.0130659 0.01159 0.2336 0.07188 0.6946 -k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml diffeq1.v common 9.77 vpr 58.51 MiB -1 -1 0.34 23384 15 0.34 -1 -1 33192 -1 -1 38 162 0 5 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 59916 162 96 993 934 1 696 301 16 16 256 mult_36 auto 20.3 MiB 0.25 5428 58.5 MiB 0.31 0.00 19.9596 -1648.74 -19.9596 19.9596 0.48 0.000947709 0.00084599 0.0928615 0.0832684 46 12909 39 1.21132e+07 4.02797e+06 727248. 2840.81 4.89 0.456105 0.417072 24972 144857 -1 9960 16 3161 6072 1841496 470541 0 0 1841496 470541 6072 4110 0 0 73535 71998 0 0 76748 73650 0 0 6596 4486 0 0 836410 152472 0 0 842135 163825 0 0 6072 0 0 2947 8520 8356 52651 0 0 22.7389 22.7389 -1891.59 -22.7389 0 0 934704. 3651.19 0.20 0.31 0.08 -1 -1 0.20 0.0642102 0.0606279 0.007787 0.3485 0.01635 0.6352 -k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml LU8PEEng.v common 448.83 vpr 388.89 MiB -1 -1 45.04 339716 122 60.33 -1 -1 78016 -1 -1 1266 114 45 8 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 398224 114 102 21867 21777 1 11313 1535 50 50 2500 memory auto 180.3 MiB 31.53 151112 388.9 MiB 17.49 0.13 67.357 -48177.1 -67.357 67.357 21.24 0.0348124 0.0304923 4.46047 3.64836 98 226104 23 1.47946e+08 9.60601e+07 1.60641e+07 6425.63 193.53 15.3956 12.7951 348768 3430976 -1 203055 19 41666 159584 42519209 11149043 0 0 42519209 11149043 153478 52594 0 0 531133 494387 0 0 635471 535883 0 0 159184 61491 0 0 20329034 4924891 0 0 20710909 5079797 0 0 153478 0 0 114200 430530 431244 2752936 6538 3635 77.9533 77.9533 -64058.9 -77.9533 -34.0227 -0.296573 2.03677e+07 8147.07 7.41 14.23 2.51 -1 -1 7.41 2.43096 2.10953 0.08408 0.4242 0.01152 0.5643 -k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.11 vpr 55.38 MiB -1 -1 0.16 18640 3 0.05 -1 -1 32624 -1 -1 68 99 1 0 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 56708 99 130 343 473 1 228 298 12 12 144 clb auto 16.5 MiB 0.09 546 55.4 MiB 0.14 0.00 1.50426 -109.539 -1.50426 1.50426 0.23 0.000321786 0.000290019 0.026723 0.0240597 48 1087 13 5.66058e+06 4.21279e+06 411630. 2858.54 1.08 0.153456 0.140768 13872 80872 -1 1145 11 389 590 36976 11771 0 0 36976 11771 590 439 0 0 2012 1783 0 0 2405 2015 0 0 615 464 0 0 16619 3596 0 0 14735 3474 0 0 590 0 0 201 347 249 2251 0 0 1.93939 1.93939 -137.398 -1.93939 -0.720336 -0.298787 526257. 3654.56 0.11 0.02 0.05 -1 -1 0.11 0.0135719 0.0128201 0.01039 0.2475 0.08197 0.6705 -k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml diffeq1.v common 10.47 vpr 58.50 MiB -1 -1 0.26 23316 15 0.34 -1 -1 33248 -1 -1 36 162 0 5 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 59904 162 96 993 934 1 691 299 16 16 256 mult_36 auto 20.2 MiB 0.40 5242 58.5 MiB 0.31 0.00 19.856 -1634.5 -19.856 19.856 0.50 0.000933671 0.000830507 0.094687 0.0851361 52 11187 29 1.21132e+07 3.92018e+06 843768. 3295.97 5.44 0.563902 0.516092 26972 173637 -1 9405 18 3120 6376 1891735 547258 0 0 1891735 547258 6376 3957 0 0 91624 88938 0 0 95572 91775 0 0 6712 4262 0 0 852492 179740 0 0 838959 178586 0 0 6376 0 0 3288 9625 9038 50683 0 0 22.1237 22.1237 -1801.73 -22.1237 0 0 1.11026e+06 4336.95 0.24 0.33 0.10 -1 -1 0.24 0.0681991 0.0642887 0.00808 0.3627 0.01728 0.62 -k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml LU8PEEng.v common 694.85 vpr 419.09 MiB -1 -1 45.28 339596 122 60.77 -1 -1 77984 -1 -1 1285 114 45 8 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 429152 114 102 21867 21777 1 11916 1554 50 50 2500 memory auto 179.7 MiB 229.70 162772 419.1 MiB 20.07 0.16 67.5941 -49002.7 -67.5941 67.5941 23.17 0.0400612 0.0315621 4.89658 3.94384 98 243767 43 1.47946e+08 9.70841e+07 1.67994e+07 6719.74 239.26 17.8073 14.8023 360864 3674624 -1 215233 18 40684 156406 38892741 10213543 0 0 38892741 10213543 149595 52193 0 0 576074 522161 0 0 685418 581380 0 0 154879 61991 0 0 18534406 4442126 0 0 18792369 4553692 0 0 149595 0 0 110910 420664 410078 2621052 7165 6836 78.8522 78.8522 -62098.7 -78.8522 -30.1856 -0.29436 2.12220e+07 8488.81 7.01 12.37 2.60 -1 -1 7.01 2.31393 2.0319 0.08751 0.4235 0.0115 0.565 -k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.27 vpr 55.15 MiB -1 -1 0.18 18684 3 0.07 -1 -1 32640 -1 -1 68 99 1 0 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 56472 99 130 343 473 1 225 298 12 12 144 clb auto 16.5 MiB 0.09 548 55.1 MiB 0.14 0.00 1.47901 -107.394 -1.47901 1.47901 0.23 0.000318477 0.000284588 0.0261925 0.0235342 46 1178 11 5.66058e+06 4.21279e+06 396063. 2750.44 1.23 0.135026 0.123819 13728 78551 -1 1163 9 386 580 26592 8561 0 0 26592 8561 580 512 0 0 1629 1404 0 0 2114 1629 0 0 672 592 0 0 11675 2276 0 0 9922 2148 0 0 580 0 0 194 276 223 1985 0 0 1.91033 1.91033 -140.454 -1.91033 -1.37858 -0.320482 508433. 3530.78 0.10 0.02 0.05 -1 -1 0.10 0.0119744 0.0113546 0.01178 0.2146 0.07228 0.7131 -k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml diffeq1.v common 9.51 vpr 58.63 MiB -1 -1 0.27 23484 15 0.30 -1 -1 33304 -1 -1 38 162 0 5 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 60036 162 96 993 934 1 694 301 16 16 256 mult_36 auto 20.4 MiB 0.45 5341 58.6 MiB 0.34 0.00 20.0691 -1671.27 -20.0691 20.0691 0.49 0.00094399 0.000839503 0.0980284 0.0877106 50 11589 31 1.21132e+07 4.02797e+06 817349. 3192.77 4.45 0.469532 0.430508 26464 163948 -1 9622 20 3346 7062 1853074 482972 0 0 1853074 482972 7062 4238 0 0 88258 85884 0 0 92514 88441 0 0 7628 4697 0 0 815648 153741 0 0 841964 145971 0 0 7062 0 0 3754 10960 10910 61346 0 0 22.7782 22.7782 -1875.43 -22.7782 0 0 1.05038e+06 4103.04 0.23 0.33 0.09 -1 -1 0.23 0.0728706 0.0684196 0.008122 0.3432 0.01562 0.6412 -k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml LU8PEEng.v common 723.43 vpr 418.66 MiB -1 -1 42.40 340804 122 62.31 -1 -1 78068 -1 -1 1189 114 45 8 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 428712 114 102 21867 21777 1 11141 1458 50 50 2500 memory auto 179.0 MiB 232.37 153992 418.7 MiB 15.95 0.13 66.8869 -49530.9 -66.8869 66.8869 22.64 0.0343307 0.0300405 4.2818 3.52376 94 233968 44 1.47946e+08 9.19101e+07 1.62379e+07 6495.14 270.48 18.6021 15.4716 353364 3504872 -1 208614 22 39746 158437 44829525 11060816 0 0 44829525 11060816 151638 52260 0 0 630115 562975 0 0 759437 638546 0 0 157207 61696 0 0 21550951 4878435 0 0 21580177 4866904 0 0 151638 0 0 114016 440723 449870 2754101 7183 5301 79.2314 79.2314 -65292.9 -79.2314 -11.1139 -0.292146 2.03897e+07 8155.87 6.69 13.79 2.45 -1 -1 6.69 2.68373 2.34649 0.08739 0.406 0.01147 0.5826 -k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.11 vpr 55.39 MiB -1 -1 0.18 18532 3 0.05 -1 -1 32672 -1 -1 68 99 1 0 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 56716 99 130 343 473 1 229 298 12 12 144 clb auto 16.8 MiB 0.09 535 55.4 MiB 0.14 0.00 1.50322 -110.367 -1.50322 1.50322 0.24 0.00031694 0.000285466 0.0278571 0.0250213 38 1372 21 5.66058e+06 4.21279e+06 347689. 2414.51 1.04 0.168992 0.154412 13432 70334 -1 1054 9 411 616 27691 9531 0 0 27691 9531 616 478 0 0 1880 1578 0 0 2227 1881 0 0 653 516 0 0 11438 2666 0 0 10877 2412 0 0 616 0 0 205 385 234 2336 0 0 2.05211 2.05211 -139.952 -2.05211 -1.13196 -0.29768 440062. 3055.98 0.10 0.02 0.04 -1 -1 0.10 0.0121001 0.0114727 0.009477 0.2462 0.07661 0.6996 -k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml diffeq1.v common 8.66 vpr 58.82 MiB -1 -1 0.27 23292 15 0.30 -1 -1 33264 -1 -1 35 162 0 5 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 60232 162 96 993 934 1 704 298 16 16 256 mult_36 auto 20.7 MiB 0.50 5446 58.8 MiB 0.33 0.00 20.1297 -1647.97 -20.1297 20.1297 0.51 0.000904406 0.000802593 0.098466 0.0881199 46 12661 43 1.21132e+07 3.86629e+06 791147. 3090.42 3.47 0.409852 0.374882 26792 163197 -1 10223 21 3388 6763 1975781 487013 0 0 1975781 487013 6763 4295 0 0 80671 77935 0 0 85132 80849 0 0 7391 4858 0 0 915703 157684 0 0 880121 161392 0 0 6763 0 0 3414 10175 9976 55514 0 0 22.641 22.641 -1874.1 -22.641 0 0 1.01637e+06 3970.19 0.22 0.35 0.09 -1 -1 0.22 0.0748807 0.0704858 0.007983 0.3559 0.0162 0.6279 -k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml LU8PEEng.v common 755.16 vpr 445.16 MiB -1 -1 42.59 339680 122 62.80 -1 -1 77808 -1 -1 1284 114 45 8 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 455844 114 102 21867 21777 1 11781 1553 50 50 2500 memory auto 178.9 MiB 287.95 163806 445.2 MiB 20.36 0.16 67.825 -49300.5 -67.825 67.825 26.55 0.040145 0.0316068 4.92974 3.94112 98 236687 21 1.47946e+08 9.70302e+07 1.74237e+07 6969.48 238.11 19.1585 15.9116 371232 3885440 -1 212661 20 37783 148892 39345972 9537156 0 0 39345972 9537156 141735 48142 0 0 580119 511992 0 0 691652 585858 0 0 145960 56603 0 0 18902814 4114484 0 0 18883692 4220077 0 0 141735 0 0 105806 409785 407162 2545339 7369 5036 79.5943 79.5943 -63624.9 -79.5943 -23.4799 -0.295467 2.19566e+07 8782.65 6.97 10.57 2.63 -1 -1 6.97 2.34806 2.07952 0.09067 0.4158 0.01165 0.5726 -k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.21 vpr 55.42 MiB -1 -1 0.19 18576 3 0.05 -1 -1 32724 -1 -1 68 99 1 0 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 56748 99 130 343 473 1 229 298 12 12 144 clb auto 17.1 MiB 0.09 535 55.4 MiB 0.14 0.00 1.50322 -110.367 -1.50322 1.50322 0.24 0.000320205 0.000288127 0.0280234 0.0251782 36 1377 22 5.66058e+06 4.21279e+06 333113. 2313.29 1.14 0.149766 0.137029 13148 65652 -1 1061 11 403 624 25883 8887 0 0 25883 8887 624 480 0 0 1903 1638 0 0 2218 1903 0 0 651 521 0 0 9972 2371 0 0 10515 1974 0 0 624 0 0 221 401 288 2456 0 0 1.90592 1.90592 -135.525 -1.90592 -1.08733 -0.318417 410918. 2853.60 0.09 0.02 0.04 -1 -1 0.09 0.0136201 0.0129052 0.01132 0.2078 0.06759 0.7435 -k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml diffeq1.v common 10.39 vpr 58.74 MiB -1 -1 0.25 23464 15 0.35 -1 -1 33608 -1 -1 35 162 0 5 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 60152 162 96 993 934 1 705 298 16 16 256 mult_36 auto 20.6 MiB 0.56 5344 58.7 MiB 0.32 0.00 19.8283 -1655.73 -19.8283 19.8283 0.50 0.000924698 0.000822885 0.0965477 0.0866682 48 12369 34 1.21132e+07 3.86629e+06 822491. 3212.85 5.15 0.538632 0.492044 27048 168158 -1 9968 15 3038 6000 1608560 403033 0 0 1608560 403033 6000 3812 0 0 76557 74069 0 0 79789 76702 0 0 6504 4207 0 0 722305 123879 0 0 717405 120364 0 0 6000 0 0 2995 8403 8806 49428 0 0 22.6591 22.6591 -1905.78 -22.6591 0 0 1.05295e+06 4113.10 0.24 0.28 0.10 -1 -1 0.24 0.0621008 0.0588223 0.008265 0.3422 0.01588 0.6419 -k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml LU8PEEng.v common 727.49 vpr 450.72 MiB -1 -1 43.14 339736 122 64.52 -1 -1 77952 -1 -1 1172 114 45 8 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 461536 114 102 21867 21777 1 10748 1441 50 50 2500 memory auto 177.9 MiB 280.75 147420 450.7 MiB 17.99 0.13 67.9174 -47347.6 -67.9174 67.9174 25.92 0.0366419 0.0321162 4.71915 3.87923 92 216433 29 1.47946e+08 9.09939e+07 1.65231e+07 6609.23 220.29 22.2587 18.4814 361236 3648468 -1 195513 18 35439 146001 35950888 9052086 0 0 35950888 9052086 140069 46503 0 0 566522 494870 0 0 674657 572353 0 0 145658 53960 0 0 17221423 3923915 0 0 17202559 3960485 0 0 140069 0 0 106595 397100 389319 2525910 6363 3754 79.1326 79.1326 -64342.9 -79.1326 -15.7329 -0.292146 2.08892e+07 8355.67 6.98 11.01 2.44 -1 -1 6.98 2.29299 2.01736 0.08968 0.3926 0.01168 0.5957 -k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.16 vpr 55.35 MiB -1 -1 0.18 18684 3 0.05 -1 -1 32680 -1 -1 68 99 1 0 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 56680 99 130 343 473 1 228 298 12 12 144 clb auto 16.5 MiB 0.09 541 55.4 MiB 0.13 0.00 1.47901 -109.079 -1.47901 1.47901 0.22 0.000318916 0.000287721 0.0263451 0.0236836 46 1148 15 5.66058e+06 4.21279e+06 378970. 2631.74 1.18 0.117991 0.108252 13238 73581 -1 1102 12 438 677 28265 9438 0 0 28265 9438 677 544 0 0 1829 1645 0 0 2482 1829 0 0 749 619 0 0 11616 2635 0 0 10912 2166 0 0 677 0 0 239 435 295 2676 0 0 1.91033 1.91033 -132.48 -1.91033 -0.352058 -0.105593 486261. 3376.82 0.10 0.02 0.04 -1 -1 0.10 0.0139157 0.0131353 0.01037 0.2404 0.08179 0.6778 -k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml diffeq1.v common 8.02 vpr 58.40 MiB -1 -1 0.28 23240 15 0.33 -1 -1 33532 -1 -1 37 162 0 5 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 59804 162 96 993 934 1 692 300 16 16 256 mult_36 auto 20.3 MiB 0.38 5234 58.4 MiB 0.31 0.00 20.0433 -1672.62 -20.0433 20.0433 0.48 0.000898425 0.000795538 0.0925576 0.0828233 52 12076 42 1.21132e+07 3.97408e+06 805949. 3148.24 3.04 0.425198 0.388619 25992 162577 -1 9495 16 3017 6031 1792092 491608 0 0 1792092 491608 6031 3866 0 0 85428 83427 0 0 89114 85629 0 0 6674 4326 0 0 826313 159469 0 0 778532 154891 0 0 6031 0 0 3046 9559 8892 50798 0 0 23.1002 23.1002 -1917.27 -23.1002 0 0 1.06067e+06 4143.25 0.23 0.31 0.11 -1 -1 0.23 0.0633234 0.059839 0.007699 0.3679 0.0173 0.6148 -k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml LU8PEEng.v common 604.40 vpr 424.55 MiB -1 -1 42.59 339484 122 64.91 -1 -1 77952 -1 -1 1319 114 45 8 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 434740 114 102 21867 21777 1 11967 1588 50 50 2500 memory auto 178.9 MiB 165.28 169221 387.3 MiB 17.72 0.14 68.1675 -50495 -68.1675 68.1675 20.79 0.0358291 0.0315066 4.27622 3.51733 102 255497 34 1.47946e+08 9.89166e+07 1.66061e+07 6642.43 218.29 23.6846 19.579 353764 3530188 -1 229055 21 45771 171217 36461485 8182823 0 0 36461485 8182823 163796 59620 0 0 586225 546511 0 0 706124 592797 0 0 169893 69552 0 0 17565096 3464520 0 0 17270351 3449823 0 0 163796 0 0 120164 497251 477495 2938235 7677 4439 78.6633 78.6633 -68683.7 -78.6633 -45.1814 -0.295467 2.08230e+07 8329.19 7.24 10.28 2.59 -1 -1 7.24 2.51571 2.17775 0.0855 0.4398 0.01149 0.5487 -k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.30 vpr 54.37 MiB -1 -1 0.18 18728 3 0.07 -1 -1 32756 -1 -1 68 99 1 0 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 55676 99 130 343 473 1 225 298 12 12 144 clb auto 15.9 MiB 0.08 532 54.4 MiB 0.14 0.00 1.5264 -110.235 -1.5264 1.5264 0.22 0.000338118 0.000304261 0.0274229 0.024766 48 1232 14 5.66058e+06 4.21279e+06 394078. 2736.65 1.22 0.138843 0.127414 13382 75762 -1 1178 9 446 672 42208 13412 0 0 42208 13412 672 547 0 0 2247 2082 0 0 2741 2248 0 0 733 616 0 0 17790 4371 0 0 18025 3548 0 0 672 0 0 226 316 312 2338 0 0 1.95198 1.95198 -138.731 -1.95198 -0.557195 -0.29768 503207. 3494.49 0.10 0.02 0.05 -1 -1 0.10 0.0119754 0.0113447 0.01157 0.2206 0.07286 0.7065 -k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml diffeq1.v common 8.34 vpr 58.48 MiB -1 -1 0.32 23216 15 0.30 -1 -1 33252 -1 -1 37 162 0 5 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 59888 162 96 993 934 1 693 300 16 16 256 mult_36 auto 20.2 MiB 0.39 5592 58.5 MiB 0.33 0.00 20.185 -1650.79 -20.185 20.185 0.47 0.000967658 0.00085674 0.0973469 0.0873189 48 13452 34 1.21132e+07 3.97408e+06 756778. 2956.16 3.24 0.369884 0.338319 25228 149258 -1 10206 23 3194 6152 2280274 567804 0 0 2280274 567804 6152 3978 0 0 75477 74044 0 0 78618 75643 0 0 6641 4491 0 0 1055082 201561 0 0 1058304 208087 0 0 6152 0 0 2995 8462 7505 50154 0 0 22.6302 22.6302 -1961.4 -22.6302 0 0 968034. 3781.38 0.21 0.39 0.09 -1 -1 0.21 0.0765697 0.0718575 0.008038 0.3506 0.01615 0.6332 -k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml LU8PEEng.v common 623.86 vpr 388.09 MiB -1 -1 42.95 340780 122 62.23 -1 -1 77740 -1 -1 1218 114 45 8 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 397408 114 102 21867 21777 1 11178 1487 50 50 2500 memory auto 179.6 MiB 177.34 152714 388.1 MiB 15.62 0.14 67.1858 -47730.8 -67.1858 67.1858 20.08 0.0397658 0.0310592 4.31209 3.50846 98 231587 24 1.47946e+08 9.34731e+07 1.60641e+07 6425.63 227.30 19.0682 15.7292 348768 3430976 -1 206991 22 42256 161258 47495211 13011074 0 0 47495211 13011074 154775 54841 0 0 578537 541420 0 0 691430 584456 0 0 160756 63906 0 0 22663509 5812565 0 0 23246204 5953886 0 0 154775 0 0 114528 435051 423075 2667186 6987 3572 78.8935 78.8935 -62708.5 -78.8935 -42.5002 -0.296573 2.03677e+07 8147.07 7.13 15.27 2.49 -1 -1 7.13 2.54157 2.19877 0.08516 0.4199 0.01153 0.5686 -k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.24 vpr 54.80 MiB -1 -1 0.23 18172 3 0.06 -1 -1 32528 -1 -1 68 99 1 0 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 56112 99 130 343 473 1 229 298 12 12 144 clb auto 15.9 MiB 0.09 556 54.8 MiB 0.14 0.00 1.47813 -109.972 -1.47813 1.47813 0.22 0.000320354 0.000288299 0.0271899 0.0244086 44 1271 11 5.66058e+06 4.21279e+06 360780. 2505.42 1.13 0.11057 0.101347 13094 71552 -1 1218 12 462 709 47394 15463 0 0 47394 15463 709 569 0 0 2415 2235 0 0 2908 2417 0 0 788 651 0 0 20592 5384 0 0 19982 4207 0 0 709 0 0 247 486 362 2880 0 0 1.87646 1.87646 -140.25 -1.87646 -0.539402 -0.295467 470765. 3269.20 0.10 0.03 0.04 -1 -1 0.10 0.0142796 0.0134851 0.01061 0.2454 0.07925 0.6753 -k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml diffeq1.v common 8.20 vpr 58.37 MiB -1 -1 0.27 22780 15 0.35 -1 -1 33384 -1 -1 36 162 0 5 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 59772 162 96 993 934 1 706 299 16 16 256 mult_36 auto 20.3 MiB 0.50 5511 58.4 MiB 0.31 0.00 19.9061 -1687.45 -19.9061 19.9061 0.48 0.000954628 0.000846505 0.0907668 0.0810877 48 13006 40 1.21132e+07 3.92018e+06 756778. 2956.16 3.00 0.382407 0.349558 25228 149258 -1 10178 21 3597 7695 2425913 610945 0 0 2425913 610945 7695 4780 0 0 94544 92807 0 0 99100 94775 0 0 8342 5362 0 0 1111887 211315 0 0 1104345 201906 0 0 7695 0 0 4131 11854 11380 63908 0 0 22.4244 22.4244 -1941.38 -22.4244 0 0 968034. 3781.38 0.21 0.40 0.09 -1 -1 0.21 0.0747584 0.0704015 0.007889 0.3562 0.01659 0.6272 -k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml LU8PEEng.v common 810.59 vpr 386.49 MiB -1 -1 43.36 339496 122 64.87 -1 -1 77984 -1 -1 1300 114 45 8 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 395764 114 102 21867 21777 1 11836 1569 50 50 2500 memory auto 178.0 MiB 177.92 160076 386.5 MiB 16.96 0.13 67.1242 -47132.9 -67.1242 67.1242 20.78 0.0346237 0.0303318 4.33427 3.53109 98 249946 49 1.47946e+08 9.78926e+07 1.60641e+07 6425.63 409.65 18.4526 15.3256 348768 3430976 -1 219379 20 45618 172134 43762325 10888236 0 0 43762325 10888236 164096 59521 0 0 602555 563359 0 0 724684 609793 0 0 169880 69191 0 0 20961455 4718538 0 0 21139655 4867834 0 0 164096 0 0 120432 475180 472179 2855102 8231 4124 78.5043 78.5043 -61586.2 -78.5043 -53.3078 -0.29436 2.03677e+07 8147.07 6.78 12.75 2.50 -1 -1 6.78 2.3776 2.08171 0.0854 0.4261 0.01172 0.5622 -k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.15 vpr 54.51 MiB -1 -1 0.18 18536 3 0.06 -1 -1 32604 -1 -1 68 99 1 0 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 55820 99 130 343 473 1 229 298 12 12 144 clb auto 16.1 MiB 0.09 556 54.5 MiB 0.14 0.00 1.47813 -110.014 -1.47813 1.47813 0.22 0.000326773 0.000294752 0.0277451 0.0249515 46 1249 11 5.66058e+06 4.21279e+06 378970. 2631.74 0.99 0.131252 0.120512 13238 73581 -1 1164 9 447 694 32827 10026 0 0 32827 10026 694 557 0 0 1863 1656 0 0 2434 1865 0 0 777 649 0 0 13401 3055 0 0 13658 2244 0 0 694 0 0 247 508 357 2936 0 0 1.93232 1.93232 -138.156 -1.93232 -0.954778 -0.320482 486261. 3376.82 0.10 0.02 0.04 -1 -1 0.10 0.0121542 0.01153 0.01166 0.2182 0.07187 0.71 -k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml diffeq1.v common 11.22 vpr 58.46 MiB -1 -1 0.28 22992 15 0.33 -1 -1 33296 -1 -1 36 162 0 5 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 59864 162 96 993 934 1 705 299 16 16 256 mult_36 auto 20.3 MiB 0.56 5514 58.5 MiB 0.30 0.00 19.6313 -1701.34 -19.6313 19.6313 0.47 0.000954233 0.00084484 0.0889769 0.0792547 56 11864 33 1.21132e+07 3.92018e+06 870502. 3400.40 5.93 0.594929 0.543587 26504 172068 -1 9889 17 3114 6180 1994800 529658 0 0 1994800 529658 6180 3921 0 0 71278 69696 0 0 74956 71458 0 0 6638 4381 0 0 904227 187507 0 0 931521 192695 0 0 6180 0 0 3102 9302 8573 50735 0 0 22.2079 22.2079 -1911.27 -22.2079 0 0 1.11200e+06 4343.75 0.23 0.35 0.11 -1 -1 0.23 0.0660134 0.062305 0.00843 0.3588 0.01628 0.6249 -k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml LU8PEEng.v common 694.12 vpr 413.84 MiB -1 -1 42.56 340828 122 59.41 -1 -1 77936 -1 -1 1196 114 45 8 success v8.0.0-7663-gb6a96700f release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T17:35:35 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_final/vtr-verilog-to-routing/vtr_flow/tasks 423776 114 102 21867 21777 1 11032 1465 50 50 2500 memory auto 178.3 MiB 174.13 151087 387.1 MiB 16.87 0.13 66.7869 -47762.1 -66.7869 66.7869 20.89 0.03394 0.0295648 4.511 3.66309 96 241038 48 1.47946e+08 9.22874e+07 1.58254e+07 6330.17 301.89 25.6824 21.1516 343768 3324272 -1 207751 22 42832 166152 51654842 12975718 0 0 51654842 12975718 159409 56567 0 0 605498 561267 0 0 728989 613381 0 0 165652 66470 0 0 24605570 5721536 0 0 25389724 5956497 0 0 159409 0 0 118536 457145 451474 2782853 7287 6458 77.9118 77.9118 -63943.6 -77.9118 -19.8028 -0.29436 1.97871e+07 7914.84 6.42 15.65 2.47 -1 -1 6.42 2.62495 2.29195 0.08581 0.4093 0.01174 0.579 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time total_power routing_power_perc clock_power_perc tile_power_perc + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.43 vpr 66.49 MiB -1 -1 0.25 21160 3 0.09 -1 -1 37088 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68088 99 130 343 473 1 230 298 12 12 144 clb auto 27.8 MiB 0.08 558 74923 22789 38020 14114 66.5 MiB 0.20 0.00 1.62851 -110.149 -1.62851 1.62851 0.35 0.000736888 0.000680142 0.0580226 0.0536729 48 1179 18 5.66058e+06 4.21279e+06 394078. 2736.65 0.85 0.207297 0.187296 13382 75762 -1 1090 9 434 665 36996 11403 1.92455 1.92455 -134.684 -1.92455 -0.437866 -0.177205 503207. 3494.49 0.14 0.03 0.08 -1 -1 0.14 0.0196182 0.0182505 0.01033 0.2476 0.08271 0.6697 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml diffeq1.v common 10.26 vpr 69.89 MiB -1 -1 0.43 25860 15 0.35 -1 -1 37736 -1 -1 38 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71564 162 96 994 935 1 693 301 16 16 256 mult_36 auto 31.7 MiB 0.25 5466 90013 30073 52877 7063 69.9 MiB 0.53 0.01 19.5693 -1612.19 -19.5693 19.5693 0.71 0.00229609 0.00211354 0.219122 0.201629 54 11212 44 1.21132e+07 4.02797e+06 835850. 3265.04 3.78 0.852334 0.779548 26248 167850 -1 9496 15 2890 5963 1912516 499024 22.8085 22.8085 -1834.28 -22.8085 0 0 1.08614e+06 4242.72 0.34 0.48 0.17 -1 -1 0.34 0.104061 0.0971793 0.007704 0.3773 0.01773 0.605 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml LU8PEEng.v common 621.05 vpr 464.54 MiB -1 -1 61.92 338868 122 73.25 -1 -1 83072 -1 -1 1377 114 45 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 475688 114 102 21867 21777 1 11713 1646 50 50 2500 memory auto 194.1 MiB 19.17 157972 1070186 384543 664599 21044 464.5 MiB 22.80 0.19 68.0283 -49980 -68.0283 68.0283 27.64 0.045983 0.0391823 5.65842 4.68393 94 241223 42 1.47946e+08 1.02043e+08 1.55181e+07 6207.23 321.82 23.0361 19.3789 341268 3271592 -1 216858 20 43122 165625 47382766 12201531 78.6609 78.6609 -67524.1 -78.6609 -12.3069 -0.299894 1.95446e+07 7817.85 8.50 18.80 3.90 -1 -1 8.50 3.4645 3.01925 0.08184 0.4301 0.01161 0.5583 + k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.40 vpr 66.22 MiB -1 -1 0.27 20820 3 0.10 -1 -1 36848 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67808 99 130 343 473 1 232 298 12 12 144 clb auto 27.8 MiB 0.10 628 72933 22467 37459 13007 66.2 MiB 0.20 0.00 1.62851 -110.561 -1.62851 1.62851 0.35 0.000730901 0.000674119 0.0568295 0.0523389 36 1527 15 5.66058e+06 4.21279e+06 305235. 2119.69 0.75 0.209392 0.189254 12238 58442 -1 1324 11 427 665 33957 10562 2.04994 2.04994 -145.267 -2.04994 -0.86181 -0.318417 378970. 2631.74 0.12 0.04 0.06 -1 -1 0.12 0.0228091 0.0210639 0.01089 0.2226 0.06435 0.7131 + k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml diffeq1.v common 13.22 vpr 69.85 MiB -1 -1 0.41 26104 15 0.37 -1 -1 37900 -1 -1 38 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71528 162 96 994 935 1 693 301 16 16 256 mult_36 auto 31.8 MiB 0.36 5237 72877 22812 43241 6824 69.9 MiB 0.43 0.01 20.0218 -1605.51 -20.0218 20.0218 0.71 0.00226173 0.00207701 0.172882 0.158886 52 12497 42 1.21132e+07 4.02797e+06 805949. 3148.24 6.92 0.823744 0.753249 25992 162577 -1 9749 18 3091 6552 1555697 414226 22.5197 22.5197 -1814.14 -22.5197 0 0 1.06067e+06 4143.25 0.32 0.42 0.17 -1 -1 0.32 0.113197 0.105721 0.007971 0.3571 0.0171 0.6258 + k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml LU8PEEng.v common 677.27 vpr 463.68 MiB -1 -1 60.28 338804 122 75.17 -1 -1 83172 -1 -1 1266 114 45 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 474812 114 102 21867 21777 1 11313 1535 50 50 2500 memory auto 192.8 MiB 36.29 154164 983996 352664 609436 21896 463.7 MiB 21.74 0.18 68.0905 -47855.5 -68.0905 68.0905 27.58 0.0450276 0.0384161 5.7023 4.73179 98 235504 48 1.47946e+08 9.60601e+07 1.60641e+07 6425.63 355.33 26.2148 21.9862 348768 3430976 -1 207765 20 42710 163367 49657573 12827698 80.0855 80.0855 -62686.5 -80.0855 -15.2001 -0.295467 2.03677e+07 8147.07 10.25 22.63 4.07 -1 -1 10.25 3.82467 3.29987 0.08386 0.4273 0.01133 0.5614 + k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.63 vpr 66.64 MiB -1 -1 0.26 21272 3 0.09 -1 -1 36648 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68240 99 130 343 473 1 228 298 12 12 144 clb auto 28.0 MiB 0.12 546 73928 22148 38204 13576 66.6 MiB 0.20 0.00 1.47901 -109.674 -1.47901 1.47901 0.35 0.000816969 0.00070654 0.0576112 0.0530498 54 1142 10 5.66058e+06 4.21279e+06 454457. 3155.95 0.91 0.203627 0.184224 14444 91044 -1 976 11 370 594 24419 7706 1.9169 1.9169 -133.624 -1.9169 -1.00302 -0.321515 590251. 4098.96 0.17 0.04 0.10 -1 -1 0.17 0.0228847 0.0211049 0.01055 0.2457 0.08683 0.6674 + k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml diffeq1.v common 13.74 vpr 69.52 MiB -1 -1 0.43 25920 15 0.39 -1 -1 37832 -1 -1 38 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71192 162 96 994 935 1 696 301 16 16 256 mult_36 auto 31.3 MiB 0.96 5204 86989 27647 51853 7489 69.5 MiB 0.51 0.01 19.9737 -1635.86 -19.9737 19.9737 0.75 0.00224377 0.00206253 0.208889 0.192138 50 12377 41 1.21132e+07 4.02797e+06 817349. 3192.77 6.45 0.857667 0.78536 26464 163948 -1 9546 22 3259 6670 1619356 451171 23.0842 23.0842 -1909.81 -23.0842 0 0 1.05038e+06 4103.04 0.33 0.45 0.16 -1 -1 0.33 0.12871 0.119427 0.00777 0.357 0.01613 0.6269 + k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1055.97 vpr 495.43 MiB -1 -1 60.06 338936 122 75.77 -1 -1 82692 -1 -1 1285 114 45 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 507316 114 102 21867 21777 1 11916 1554 50 50 2500 memory auto 191.9 MiB 348.79 163092 991224 346859 620460 23905 495.4 MiB 24.89 0.21 67.129 -48054.2 -67.129 67.129 32.15 0.051619 0.0419139 6.16231 5.11615 100 237294 31 1.47946e+08 9.70841e+07 1.70584e+07 6823.36 418.43 22.7329 19.1466 363360 3730996 -1 215612 20 39922 154406 39473761 9672846 79.7977 79.7977 -65515.4 -79.7977 -15.6201 -0.295467 2.14473e+07 8578.92 9.37 14.99 4.49 -1 -1 9.37 3.04058 2.69454 0.0877 0.4265 0.01141 0.562 + k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.47 vpr 66.37 MiB -1 -1 0.28 21116 3 0.10 -1 -1 36744 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67960 99 130 343 473 1 225 298 12 12 144 clb auto 27.9 MiB 0.12 528 73928 24553 36249 13126 66.4 MiB 0.19 0.00 1.50426 -108.188 -1.50426 1.50426 0.36 0.000751906 0.000693911 0.0576982 0.0531402 34 1429 12 5.66058e+06 4.21279e+06 307677. 2136.65 0.76 0.208692 0.188592 12584 59343 -1 1269 12 431 642 30020 10024 1.93601 1.93601 -140.412 -1.93601 -0.836645 -0.29768 377431. 2621.05 0.12 0.04 0.06 -1 -1 0.12 0.0239813 0.0221065 0.01133 0.2039 0.06435 0.7317 + k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml diffeq1.v common 12.19 vpr 70.14 MiB -1 -1 0.41 25712 15 0.37 -1 -1 37688 -1 -1 38 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71820 162 96 994 935 1 695 301 16 16 256 mult_36 auto 32.1 MiB 0.77 5514 77917 21981 48452 7484 70.1 MiB 0.45 0.01 20.0909 -1642.51 -20.0909 20.0909 0.71 0.00225015 0.00206523 0.183701 0.169328 44 12969 42 1.21132e+07 4.02797e+06 727469. 2841.68 5.37 0.821326 0.751878 25696 150430 -1 9885 20 3085 6145 1781382 507017 22.4675 22.4675 -1905.57 -22.4675 0 0 947281. 3700.32 0.30 0.47 0.15 -1 -1 0.30 0.120022 0.111703 0.008121 0.3382 0.01556 0.6463 + k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml LU8PEEng.v common 949.20 vpr 495.94 MiB -1 -1 61.63 338720 122 73.20 -1 -1 82788 -1 -1 1189 114 45 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 507840 114 102 21867 21777 1 11141 1458 50 50 2500 memory auto 192.1 MiB 328.37 154833 860914 284962 556439 19513 495.9 MiB 24.93 0.21 67.0299 -50441 -67.0299 67.0299 33.25 0.0543223 0.0476931 6.73012 5.5756 98 230399 30 1.47946e+08 9.19101e+07 1.67994e+07 6719.74 334.06 28.0596 23.2187 360864 3674624 -1 204927 22 39078 156384 35109104 8233906 78.6477 78.6477 -62827.7 -78.6477 -19.6551 -0.171467 2.12220e+07 8488.81 9.65 14.24 4.20 -1 -1 9.65 3.62685 3.14136 0.08857 0.4125 0.01145 0.5761 + k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.83 vpr 66.44 MiB -1 -1 0.31 20860 3 0.10 -1 -1 36892 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68036 99 130 343 473 1 229 298 12 12 144 clb auto 28.1 MiB 0.14 562 75918 23527 38597 13794 66.4 MiB 0.21 0.00 1.47901 -107.3 -1.47901 1.47901 0.40 0.000738618 0.000683165 0.06135 0.0565159 40 1325 13 5.66058e+06 4.21279e+06 362583. 2517.93 0.86 0.216068 0.195786 13576 72659 -1 1210 20 441 684 41563 14070 2.00134 2.00134 -136.216 -2.00134 -0.800971 -0.298787 454087. 3153.38 0.16 0.05 0.08 -1 -1 0.16 0.03533 0.0324021 0.009923 0.24 0.07656 0.6834 + k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml diffeq1.v common 13.51 vpr 69.98 MiB -1 -1 0.43 26008 15 0.39 -1 -1 37448 -1 -1 36 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71664 162 96 994 935 1 695 299 16 16 256 mult_36 auto 31.8 MiB 1.05 5587 88211 27454 53988 6769 70.0 MiB 0.54 0.01 19.7602 -1590.84 -19.7602 19.7602 0.79 0.00223569 0.00204166 0.217844 0.200374 46 14009 28 1.21132e+07 3.92018e+06 791147. 3090.42 5.99 0.697636 0.639775 26792 163197 -1 10514 17 3162 6487 1768324 427173 22.5439 22.5439 -1892.07 -22.5439 0 0 1.01637e+06 3970.19 0.32 0.48 0.16 -1 -1 0.32 0.113927 0.10636 0.008038 0.3604 0.01615 0.6235 + k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1319.56 vpr 544.10 MiB -1 -1 61.21 338832 122 75.25 -1 -1 83188 -1 -1 1284 114 45 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 557160 114 102 21867 21777 1 11781 1553 50 50 2500 memory auto 191.6 MiB 454.93 160636 999332 350641 625854 22837 544.1 MiB 26.41 0.21 68.1488 -47280.7 -68.1488 68.1488 35.51 0.0508698 0.0414613 6.53011 5.36638 98 240394 47 1.47946e+08 9.70302e+07 1.74237e+07 6969.48 564.45 27.3748 22.8404 371232 3885440 -1 211868 18 38064 151490 43925901 11022594 80.4553 80.4553 -64837.7 -80.4553 -20.7307 -0.295467 2.19566e+07 8782.65 9.59 17.36 4.62 -1 -1 9.59 3.082 2.71187 0.09037 0.415 0.0116 0.5734 + k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.68 vpr 66.87 MiB -1 -1 0.29 21240 3 0.10 -1 -1 36892 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68476 99 130 343 473 1 229 298 12 12 144 clb auto 28.5 MiB 0.14 562 75918 23527 38597 13794 66.9 MiB 0.18 0.00 1.47901 -107.3 -1.47901 1.47901 0.36 0.000664105 0.000604626 0.0546635 0.0501933 46 1156 21 5.66058e+06 4.21279e+06 410918. 2853.60 0.88 0.212009 0.191515 14148 82751 -1 1077 12 374 577 24392 7773 1.82159 1.82159 -130.115 -1.82159 -1.13405 -0.320482 527087. 3660.32 0.16 0.04 0.08 -1 -1 0.16 0.024923 0.0230102 0.01224 0.2095 0.07348 0.717 + k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml diffeq1.v common 11.89 vpr 70.11 MiB -1 -1 0.39 25868 15 0.37 -1 -1 37696 -1 -1 36 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71792 162 96 994 935 1 695 299 16 16 256 mult_36 auto 31.9 MiB 1.11 5657 74225 20683 46584 6958 70.1 MiB 0.45 0.01 19.6248 -1595.85 -19.6248 19.6248 0.77 0.00216212 0.00198363 0.176807 0.162496 46 11779 24 1.21132e+07 3.92018e+06 791147. 3090.42 4.46 0.619285 0.568801 26792 163197 -1 10013 17 3079 6358 2222037 555690 21.9962 21.9962 -1849.85 -21.9962 0 0 1.01637e+06 3970.19 0.32 0.56 0.16 -1 -1 0.32 0.11186 0.10451 0.008402 0.3427 0.0158 0.6415 + k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml LU8PEEng.v common 1122.10 vpr 527.74 MiB -1 -1 59.48 338824 122 75.77 -1 -1 83236 -1 -1 1172 114 45 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 540408 114 102 21867 21777 1 10748 1441 50 50 2500 memory auto 191.3 MiB 446.45 144463 896401 311669 564736 19996 527.7 MiB 23.45 0.19 67.2894 -46558.8 -67.2894 67.2894 35.77 0.0488771 0.0422266 6.03039 5.07223 90 216215 45 1.47946e+08 9.09939e+07 1.62125e+07 6485.01 384.43 27.3875 22.9053 356236 3531108 -1 193984 18 35406 146636 37213174 9180894 78.188 78.188 -63965.6 -78.188 -30.7831 -0.293253 2.01810e+07 8072.38 9.29 15.51 3.95 -1 -1 9.29 3.47472 3.02841 0.08896 0.3857 0.01185 0.6025 + k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.79 vpr 66.44 MiB -1 -1 0.30 21184 3 0.10 -1 -1 37100 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68032 99 130 343 473 1 228 298 12 12 144 clb auto 27.7 MiB 0.13 566 73928 24365 36275 13288 66.4 MiB 0.21 0.00 1.47901 -107.356 -1.47901 1.47901 0.38 0.000784899 0.000718709 0.0621149 0.0571159 48 1091 15 5.66058e+06 4.21279e+06 394078. 2736.65 0.92 0.224857 0.203364 13382 75762 -1 1126 13 443 672 32456 10890 1.86809 1.86809 -129.554 -1.86809 -0.846557 -0.29768 503207. 3494.49 0.15 0.04 0.08 -1 -1 0.15 0.0254914 0.023453 0.0107 0.2478 0.08231 0.6699 + k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml diffeq1.v common 12.56 vpr 69.83 MiB -1 -1 0.44 25832 15 0.40 -1 -1 37996 -1 -1 37 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71508 162 96 994 935 1 696 300 16 16 256 mult_36 auto 31.6 MiB 0.61 5334 82546 24215 51015 7316 69.8 MiB 0.50 0.01 20.0859 -1625.62 -20.0859 20.0859 0.76 0.00231806 0.00212308 0.201382 0.185213 50 11997 28 1.21132e+07 3.97408e+06 780512. 3048.87 5.66 0.800595 0.732802 25484 153448 -1 9641 15 2961 5861 1644922 437381 22.362 22.362 -1836.35 -22.362 0 0 1.00276e+06 3917.05 0.31 0.43 0.16 -1 -1 0.31 0.102012 0.095505 0.007747 0.3596 0.01665 0.6237 + k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1180.68 vpr 462.72 MiB -1 -1 58.56 338756 122 75.55 -1 -1 83172 -1 -1 1319 114 45 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 473824 114 102 21867 21777 1 11967 1588 50 50 2500 memory auto 192.0 MiB 247.48 166044 1011037 350626 638414 21997 462.7 MiB 28.01 0.24 67.6585 -49030.6 -67.6585 67.6585 29.12 0.0623887 0.0560392 7.60573 6.26099 100 253589 44 1.47946e+08 9.89166e+07 1.63173e+07 6526.93 643.15 29.2882 24.2021 351264 3480436 -1 224919 21 45778 171171 45207329 10711549 79.5239 79.5239 -66730.1 -79.5239 -16.8281 -0.296573 2.05845e+07 8233.80 9.76 18.29 4.02 -1 -1 9.76 3.51728 3.0368 0.08478 0.437 0.01147 0.5516 + k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.77 vpr 66.55 MiB -1 -1 0.31 21200 3 0.10 -1 -1 36744 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68144 99 130 343 473 1 225 298 12 12 144 clb auto 28.1 MiB 0.13 557 75918 24305 38523 13090 66.5 MiB 0.20 0.00 1.47813 -107.774 -1.47813 1.47813 0.36 0.000762218 0.00070103 0.0603836 0.0554945 48 1283 19 5.66058e+06 4.21279e+06 394078. 2736.65 0.92 0.226761 0.205176 13382 75762 -1 1147 9 351 537 28244 8500 1.93197 1.93197 -134.551 -1.93197 -1.17725 -0.29768 503207. 3494.49 0.16 0.03 0.08 -1 -1 0.16 0.0220382 0.0204694 0.01165 0.2184 0.07307 0.7086 + k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml diffeq1.v common 12.54 vpr 69.66 MiB -1 -1 0.42 26192 15 0.36 -1 -1 37840 -1 -1 37 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71332 162 96 994 935 1 695 300 16 16 256 mult_36 auto 31.4 MiB 0.60 5334 94582 32842 54095 7645 69.7 MiB 0.56 0.01 20.063 -1601.01 -20.063 20.063 0.69 0.00230053 0.00209576 0.224986 0.206735 50 11798 34 1.21132e+07 3.97408e+06 780512. 3048.87 5.82 0.837805 0.766896 25484 153448 -1 9732 17 3201 6306 2027732 493670 21.8619 21.8619 -1865.76 -21.8619 0 0 1.00276e+06 3917.05 0.30 0.49 0.16 -1 -1 0.30 0.108625 0.101092 0.008175 0.3476 0.01611 0.6363 + k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml LU8PEEng.v common 1150.44 vpr 462.61 MiB -1 -1 60.23 338732 122 76.48 -1 -1 82600 -1 -1 1218 114 45 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 473712 114 102 21867 21777 1 11178 1487 50 50 2500 memory auto 191.3 MiB 263.32 155003 900791 303474 574797 22520 462.6 MiB 24.44 0.20 67.5465 -47786 -67.5465 67.5465 29.65 0.0534337 0.0468693 6.9956 5.82605 98 241136 34 1.47946e+08 9.34731e+07 1.60641e+07 6425.63 593.93 30.6833 25.3497 348768 3430976 -1 211511 23 44006 168763 45356106 11781849 79.4778 79.4778 -64625.7 -79.4778 -16.1411 -0.293253 2.03677e+07 8147.07 10.27 20.84 4.08 -1 -1 10.27 4.22605 3.62498 0.08529 0.422 0.01145 0.5666 + k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.53 vpr 66.48 MiB -1 -1 0.29 21220 3 0.10 -1 -1 37240 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68072 99 130 343 473 1 229 298 12 12 144 clb auto 27.8 MiB 0.13 557 74923 22966 38336 13621 66.5 MiB 0.20 0.00 1.47813 -110.217 -1.47813 1.47813 0.35 0.000695376 0.000643006 0.0588613 0.0541045 42 1402 12 5.66058e+06 4.21279e+06 345702. 2400.71 0.81 0.208927 0.188838 12810 66778 -1 1274 11 446 696 47442 14245 2.02151 2.02151 -140.385 -2.02151 -0.908004 -0.29768 434679. 3018.61 0.13 0.04 0.07 -1 -1 0.13 0.0227462 0.0210411 0.01004 0.2568 0.07633 0.6668 + k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml diffeq1.v common 12.90 vpr 69.83 MiB -1 -1 0.40 25796 15 0.36 -1 -1 37668 -1 -1 36 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71504 162 96 994 935 1 692 299 16 16 256 mult_36 auto 31.6 MiB 0.74 5300 88211 28227 53519 6465 69.8 MiB 0.54 0.01 19.7748 -1549.87 -19.7748 19.7748 0.71 0.00234168 0.00215198 0.223729 0.20558 46 13089 38 1.21132e+07 3.92018e+06 727248. 2840.81 6.11 0.778056 0.712743 24972 144857 -1 9840 16 3255 6605 1721832 424465 22.2951 22.2951 -1776.26 -22.2951 0 0 934704. 3651.19 0.32 0.48 0.15 -1 -1 0.32 0.120097 0.112483 0.007827 0.351 0.01656 0.6324 + k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml LU8PEEng.v common 950.07 vpr 462.60 MiB -1 -1 60.10 338800 122 76.08 -1 -1 82868 -1 -1 1300 114 45 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 473700 114 102 21867 21777 1 11836 1569 50 50 2500 memory auto 191.8 MiB 264.64 157435 1022225 365981 635991 20253 462.6 MiB 27.52 0.22 66.8909 -48010.2 -66.8909 66.8909 28.99 0.0529446 0.0466681 7.29295 6.1145 98 240686 35 1.47946e+08 9.78926e+07 1.60641e+07 6425.63 389.51 30.6828 25.6867 348768 3430976 -1 214568 21 44715 169112 47543300 12569964 78.8951 78.8951 -65146.7 -78.8951 -36.7791 -0.295467 2.03677e+07 8147.07 10.37 21.54 3.95 -1 -1 10.37 3.94837 3.43198 0.08527 0.4261 0.01169 0.5622 + k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.69 vpr 66.39 MiB -1 -1 0.30 21248 3 0.10 -1 -1 37004 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67988 99 130 343 473 1 229 298 12 12 144 clb auto 28.0 MiB 0.14 557 74923 22966 38336 13621 66.4 MiB 0.21 0.00 1.47813 -110.217 -1.47813 1.47813 0.38 0.000742521 0.000681654 0.0614498 0.0564563 42 1428 17 5.66058e+06 4.21279e+06 345702. 2400.71 0.83 0.216612 0.195319 12810 66778 -1 1265 11 442 682 46997 14196 2.02151 2.02151 -140.857 -2.02151 -0.908004 -0.29768 434679. 3018.61 0.15 0.04 0.08 -1 -1 0.15 0.0245542 0.0227498 0.01126 0.2256 0.06805 0.7064 + k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml diffeq1.v common 10.80 vpr 69.91 MiB -1 -1 0.42 25952 15 0.39 -1 -1 37780 -1 -1 36 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71592 162 96 994 935 1 692 299 16 16 256 mult_36 auto 31.7 MiB 0.76 5244 79220 22649 49589 6982 69.9 MiB 0.47 0.01 19.799 -1553.65 -19.799 19.799 0.71 0.00229922 0.00210317 0.190189 0.174893 50 10718 33 1.21132e+07 3.92018e+06 780512. 3048.87 3.94 0.7731 0.70665 25484 153448 -1 9451 18 3082 6185 1718586 431190 21.9908 21.9908 -1758.73 -21.9908 0 0 1.00276e+06 3917.05 0.30 0.43 0.15 -1 -1 0.30 0.111588 0.104223 0.00827 0.3443 0.01584 0.6399 + k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml LU8PEEng.v common 779.11 vpr 463.22 MiB -1 -1 59.71 337884 122 73.72 -1 -1 82768 -1 -1 1196 114 45 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:51 gh-actions-runner-vtr-auto-spawned205 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 474336 114 102 21867 21777 1 11032 1465 50 50 2500 memory auto 191.9 MiB 265.54 147775 932969 331990 578708 22271 463.2 MiB 21.66 0.19 67.3294 -48449 -67.3294 67.3294 28.04 0.0488102 0.0420934 5.83913 4.88775 98 222635 33 1.47946e+08 9.22874e+07 1.60641e+07 6425.63 236.27 24.29 20.4687 348768 3430976 -1 199507 20 41668 162108 36305341 9055188 78.9424 78.9424 -62000.9 -78.9424 -32.123 -0.293253 2.03677e+07 8147.07 9.45 14.06 4.12 -1 -1 9.45 3.03707 2.67511 0.08607 0.413 0.01165 0.5753 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/vpr_reg_mcnc_equiv/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/vpr_reg_mcnc_equiv/config/golden_results.txt index 5705eff7e4e..caef1f593e3 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/vpr_reg_mcnc_equiv/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/vpr_reg_mcnc_equiv/config/golden_results.txt @@ -1,20 +1,20 @@ - arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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 router_lookahead_computation_time crit_path_route_time crit_path_total_timing_analysis_time crit_path_total_sta_time - k6_N10_40nm.xml alu4.pre-vpr.blif common 6.73 vpr 62.10 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 96 14 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 63588 14 8 926 934 0 478 118 12 12 144 clb auto 24.5 MiB 0.47 4884 62.1 MiB 0.23 0.01 4.44219 -30.3043 -4.44219 nan 0.42 0.0021903 0.00183391 0.0980152 0.0855769 46 7149 37 5.3894e+06 5.17382e+06 394751. 2741.33 2.91 0.891781 0.775897 6951 23 5053 20987 796351 133240 5.13954 nan -33.4983 -5.13954 0 0 505417. 3509.84 0.18 0.40 0.153733 0.137135 - k6_N10_40nm.xml apex2.pre-vpr.blif common 9.07 vpr 63.96 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 114 38 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65500 39 3 1113 1117 0 655 156 13 13 169 clb auto 26.4 MiB 0.59 7870 64.0 MiB 0.43 0.01 5.12206 -15.0309 -5.12206 nan 0.52 0.00289627 0.00246029 0.157442 0.136647 64 12583 35 6.52117e+06 6.14392e+06 645515. 3819.62 3.68 0.899611 0.773936 12262 22 7328 35867 1657301 241927 5.33547 nan -15.7436 -5.33547 0 0 804841. 4762.37 0.30 0.68 0.225833 0.202698 - k6_N10_40nm.xml apex4.pre-vpr.blif common 7.88 vpr 62.30 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 95 9 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 63800 9 19 897 916 0 536 123 12 12 144 clb auto 24.5 MiB 0.51 6406 62.3 MiB 0.27 0.01 4.42576 -73.6135 -4.42576 nan 0.43 0.00211173 0.00180373 0.101799 0.0895754 64 11175 39 5.3894e+06 5.11993e+06 539713. 3748.01 3.77 0.867445 0.755659 9917 26 6242 32065 1470557 218968 4.79093 nan -80.7921 -4.79093 0 0 673071. 4674.10 0.24 0.62 0.203706 0.183701 - k6_N10_40nm.xml bigkey.pre-vpr.blif common 10.48 vpr 63.88 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 94 229 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65416 263 197 1372 1603 1 490 554 17 17 289 io auto 26.1 MiB 0.38 4483 63.9 MiB 0.84 0.02 2.49496 -621.054 -2.49496 2.49496 1.04 0.0029709 0.00266535 0.260983 0.232834 34 7614 24 1.21262e+07 5.06604e+06 661981. 2290.59 4.73 1.11739 1.00043 7244 21 2385 12332 703755 133974 2.79302 2.79302 -731.649 -2.79302 0 0 811075. 2806.49 0.38 0.41 0.196736 0.179503 - k6_N10_40nm.xml clma.pre-vpr.blif common 35.38 vpr 87.80 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 380 62 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89912 383 82 3674 4077 1 2327 845 22 22 484 clb auto 50.6 MiB 2.00 31688 87.8 MiB 4.28 0.03 7.64354 -320.974 -7.64354 7.64354 1.93 0.00658555 0.00575777 1.08369 0.922836 86 50397 34 2.15576e+07 2.04797e+07 2.58188e+06 5334.46 15.28 3.76643 3.19334 45664 30 23171 103951 5310888 689348 8.00174 8.00174 -356.375 -8.00174 0 0 3.23937e+06 6692.90 1.00 1.61 0.578299 0.50914 - k6_N10_40nm.xml des.pre-vpr.blif common 8.43 vpr 61.79 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 99 256 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 63276 256 245 954 1199 0 610 600 18 18 324 io auto 23.6 MiB 0.30 4929 61.8 MiB 0.65 0.01 3.47311 -656.936 -3.47311 nan 1.12 0.00280662 0.00259873 0.181055 0.166188 32 8273 43 1.37969e+07 5.33551e+06 718733. 2218.31 2.66 0.732007 0.679636 7084 18 2745 6851 371614 80901 4.07972 nan -758.692 -4.07972 0 0 879796. 2715.42 0.41 0.25 0.13524 0.127392 - k6_N10_40nm.xml diffeq.pre-vpr.blif common 6.66 vpr 62.50 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 97 64 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64000 64 39 1371 1410 1 553 200 12 12 144 clb auto 24.7 MiB 0.41 3679 62.5 MiB 0.31 0.01 4.82442 -961.44 -4.82442 4.82442 0.42 0.00239893 0.00203237 0.124701 0.108675 40 5108 26 5.3894e+06 5.22772e+06 346969. 2409.51 1.91 0.793996 0.68999 4725 22 3170 10542 393579 69153 5.25727 5.25727 -1077.47 -5.25727 0 0 435722. 3025.85 0.18 0.29 0.165918 0.148986 - k6_N10_40nm.xml dsip.pre-vpr.blif common 8.98 vpr 63.57 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 95 229 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65092 229 197 1370 1567 1 535 521 16 16 256 io auto 25.8 MiB 0.40 4561 63.6 MiB 0.86 0.02 2.5005 -628.06 -2.5005 2.5005 0.89 0.00334002 0.00304005 0.274314 0.245709 38 7841 24 1.05632e+07 5.11993e+06 632420. 2470.39 3.55 1.17098 1.0567 7234 21 2954 12412 674078 134874 2.86759 2.86759 -738.271 -2.86759 0 0 795593. 3107.78 0.35 0.41 0.198071 0.181997 - k6_N10_40nm.xml elliptic.pre-vpr.blif common 27.44 vpr 75.48 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 230 131 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77292 131 114 3421 3535 1 1217 475 18 18 324 clb auto 38.4 MiB 1.11 11570 75.5 MiB 1.37 0.02 6.53834 -3919.35 -6.53834 6.53834 1.16 0.00619897 0.00541421 0.469367 0.399191 52 19846 29 1.37969e+07 1.23956e+07 1.06130e+06 3275.60 8.32 2.62385 2.24634 17638 27 8530 40930 2146023 314235 7.29077 7.29077 -4559.02 -7.29077 0 0 1.39738e+06 4312.90 0.73 1.18 0.567664 0.500941 - k6_N10_40nm.xml ex1010.pre-vpr.blif common 34.18 vpr 78.71 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 302 10 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80600 10 10 2659 2669 0 1417 322 20 20 400 clb auto 42.2 MiB 1.81 26744 78.7 MiB 1.58 0.02 6.13037 -60.5222 -6.13037 nan 1.59 0.00849131 0.00704769 0.544255 0.466669 94 47980 40 1.74617e+07 1.6276e+07 2.27873e+06 5696.83 21.77 3.67277 3.11612 42286 31 14568 90613 5743576 639376 6.64251 nan -64.9523 -6.64251 0 0 2.85166e+06 7129.14 0.89 1.61 0.453105 0.398577 - k6_N10_40nm.xml ex5p.pre-vpr.blif common 4.88 vpr 60.52 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 78 8 -1 -1 success v8.0.0-7841-g74dc1fc14-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-06-08T03:59:32 redacted.eecg.utoronto.ca /home/redacted/vtr-verilog-to-routing/vtr_flow/tasks 61976 8 63 761 824 0 443 149 11 11 121 clb auto 22.7 MiB 0.22 4463 60.5 MiB 0.11 0.00 3.76649 -161.881 -3.76649 nan 0.19 0.000590885 0.000466147 0.0315968 0.0270149 68 6642 32 4.36541e+06 4.20373e+06 471571. 3897.28 2.80 0.460993 0.396642 6273 24 4716 21787 907950 138607 3.98923 nan -180.549 -3.98923 0 0 579861. 4792.24 0.12 0.21 0.0712433 0.0650243 - k6_N10_40nm.xml frisc.pre-vpr.blif common 33.81 vpr 74.96 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 240 20 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76764 20 116 3175 3291 1 1254 376 18 18 324 clb auto 38.0 MiB 1.17 15538 75.0 MiB 1.46 0.02 7.84117 -4191.88 -7.84117 7.84117 1.19 0.0074489 0.00630636 0.559765 0.484374 68 26158 40 1.37969e+07 1.29346e+07 1.39738e+06 4312.90 17.07 4.27847 3.66049 21737 27 9074 38700 2043537 292479 8.98443 8.98443 -4756.73 -8.98443 0 0 1.71505e+06 5293.36 0.82 1.17 0.582609 0.512788 - k6_N10_40nm.xml misex3.pre-vpr.blif common 6.79 vpr 61.49 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 87 14 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 62968 14 14 828 842 0 488 115 12 12 144 clb auto 23.6 MiB 0.43 4813 61.5 MiB 0.17 0.01 4.15972 -54.4381 -4.15972 nan 0.42 0.00201964 0.00169484 0.0677982 0.0597447 50 7415 30 5.3894e+06 4.68878e+06 421775. 2928.99 2.60 0.700258 0.608016 7122 38 6126 27888 1140071 180016 4.78724 nan -61.1197 -4.78724 0 0 539713. 3748.01 0.20 0.60 0.229754 0.204855 - k6_N10_40nm.xml pdc.pre-vpr.blif common 34.32 vpr 79.66 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 307 16 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81572 16 40 2839 2879 0 1501 363 20 20 400 clb auto 43.2 MiB 1.57 25581 79.7 MiB 1.81 0.03 6.08664 -222.907 -6.08664 nan 1.56 0.00929983 0.00777603 0.622507 0.530418 86 42950 30 1.74617e+07 1.65455e+07 2.10771e+06 5269.28 20.07 4.51046 3.81592 37535 22 13138 75558 3768186 483931 6.62739 nan -240.231 -6.62739 0 0 2.64451e+06 6611.28 0.82 1.18 0.383771 0.344257 - k6_N10_40nm.xml s298.pre-vpr.blif common 5.99 vpr 60.67 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 77 4 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 62128 4 6 726 732 1 378 87 11 11 121 clb auto 23.0 MiB 0.38 3746 60.7 MiB 0.14 0.00 5.69531 -46.7942 -5.69531 5.69531 0.33 0.00150828 0.00126634 0.0599851 0.052828 46 5716 28 4.36541e+06 4.14984e+06 324627. 2682.87 2.25 0.603521 0.526506 5546 25 3653 18859 752757 117703 6.64257 6.64257 -54.8549 -6.64257 0 0 415439. 3433.38 0.15 0.36 0.141144 0.127507 - k6_N10_40nm.xml s38584.1.pre-vpr.blif common 36.85 vpr 84.20 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 368 38 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86224 39 304 4677 4982 1 2229 711 22 22 484 clb auto 47.2 MiB 1.42 16136 84.2 MiB 2.73 0.04 4.49676 -2912.49 -4.49676 4.49676 1.96 0.00950826 0.00810046 0.843709 0.7225 48 23783 47 2.15576e+07 1.9833e+07 1.52497e+06 3150.75 9.06 4.19377 3.60403 21525 24 12017 33433 1604566 281349 5.25783 5.25783 -3268.18 -5.25783 0 0 1.95947e+06 4048.49 0.99 1.16 0.704932 0.625994 - k6_N10_40nm.xml seq.pre-vpr.blif common 7.85 vpr 62.98 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 103 41 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64492 41 35 1006 1041 0 588 179 13 13 169 clb auto 25.5 MiB 0.53 6864 63.0 MiB 0.31 0.01 4.55829 -122.245 -4.55829 nan 0.45 0.00216787 0.00182917 0.109454 0.0947367 60 11800 30 6.52117e+06 5.55108e+06 604386. 3576.25 3.46 0.824134 0.712479 10420 28 5732 26479 1133536 174578 4.78956 nan -138.554 -4.78956 0 0 756297. 4475.13 0.27 0.54 0.205964 0.18393 - k6_N10_40nm.xml spla.pre-vpr.blif common 25.10 vpr 74.51 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 245 16 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76300 16 46 2232 2278 0 1154 307 18 18 324 clb auto 37.2 MiB 1.18 16824 74.5 MiB 1.24 0.02 5.96403 -190.27 -5.96403 nan 1.15 0.00731693 0.00618791 0.432052 0.367843 66 28635 48 1.37969e+07 1.3204e+07 1.36437e+06 4211.00 11.57 2.87708 2.44999 26370 26 10237 58399 2817912 380547 6.23707 nan -215.709 -6.23707 0 0 1.68162e+06 5190.19 0.73 1.48 0.578526 0.513502 - k6_N10_40nm.xml tseng.pre-vpr.blif common 6.11 vpr 63.50 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 110 52 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65024 52 122 1461 1583 1 509 284 13 13 169 clb auto 25.7 MiB 0.36 3115 63.5 MiB 0.31 0.01 4.30484 -1155.24 -4.30484 4.30484 0.52 0.00239921 0.00206728 0.112625 0.0977054 30 5558 39 6.52117e+06 5.92834e+06 338182. 2001.08 1.60 0.596931 0.520382 4412 22 2802 8038 312820 65313 5.10917 5.10917 -1299.77 -5.10917 0 0 415024. 2455.76 0.18 0.27 0.172664 0.155536 +arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time +k6_N10_40nm.xml alu4.pre-vpr.blif common 5.62 vpr 64.80 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 96 14 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 14 8 926 934 0 478 118 12 12 144 clb auto 27.3 MiB 0.39 4890 8499 1547 6397 555 64.8 MiB 0.18 0.00 4.30411 -31.1204 -4.30411 nan 0.37 0.00207758 0.00179123 0.0796669 0.0709205 46 7481 41 5.3894e+06 5.17382e+06 394751. 2741.33 2.17 0.594842 0.517234 11608 77537 -1 6887 22 4011 15773 516109 90362 4.67591 nan -33.9187 -4.67591 0 0 505417. 3509.84 0.17 0.31 0.08 -1 -1 0.17 0.151642 0.136395 +k6_N10_40nm.xml apex2.pre-vpr.blif common 12.22 vpr 67.04 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 114 38 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68652 39 3 1113 1117 0 655 156 13 13 169 clb auto 29.6 MiB 0.56 7935 15659 2991 11028 1640 67.0 MiB 0.34 0.01 4.92741 -14.6454 -4.92741 nan 0.46 0.0031688 0.00265493 0.138517 0.120778 68 13030 33 6.52117e+06 6.14392e+06 686008. 4059.22 8.10 1.52644 1.31539 16038 133463 -1 11835 21 6567 33176 1277336 184624 5.27803 nan -15.6183 -5.27803 0 0 842935. 4987.78 0.27 0.46 0.13 -1 -1 0.27 0.140689 0.126267 +k6_N10_40nm.xml apex4.pre-vpr.blif common 8.13 vpr 65.55 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 95 9 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67128 9 19 897 916 0 536 123 12 12 144 clb auto 27.8 MiB 0.46 6438 8968 1701 6804 463 65.6 MiB 0.21 0.01 4.47343 -73.0574 -4.47343 nan 0.38 0.00268472 0.00225931 0.0911222 0.0806535 62 11039 50 5.3894e+06 5.11993e+06 523024. 3632.11 4.53 0.993696 0.860544 13040 101000 -1 9472 26 6626 34582 1376638 204970 4.82975 nan -79.6217 -4.82975 0 0 643745. 4470.45 0.22 0.54 0.10 -1 -1 0.22 0.166159 0.148678 +k6_N10_40nm.xml bigkey.pre-vpr.blif common 11.78 vpr 66.85 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 94 229 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68452 263 197 1372 1603 1 490 554 17 17 289 io auto 28.9 MiB 0.33 4418 171104 52785 107808 10511 66.8 MiB 0.79 0.02 2.50072 -621.681 -2.50072 2.50072 0.94 0.00286546 0.00254929 0.254097 0.227315 36 7542 36 1.21262e+07 5.06604e+06 690635. 2389.74 6.74 1.47724 1.31687 21654 134225 -1 7060 19 2486 11874 613324 117315 2.78085 2.78085 -723.103 -2.78085 0 0 848598. 2936.33 0.35 0.32 0.12 -1 -1 0.35 0.144506 0.131421 +k6_N10_40nm.xml clma.pre-vpr.blif common 32.59 vpr 91.29 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 380 62 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93476 383 82 3674 4077 1 2327 845 22 22 484 clb auto 54.0 MiB 1.73 31267 412124 152635 204610 54879 91.3 MiB 4.60 0.05 7.47585 -312.521 -7.47585 7.47585 1.75 0.010442 0.00932226 1.21775 1.00997 84 53656 50 2.15576e+07 2.04797e+07 2.51888e+06 5204.31 14.30 3.61495 3.01009 52004 527324 -1 45510 31 23367 107028 5021544 674019 7.8817 7.8817 -343.677 -7.8817 0 0 3.18804e+06 6586.86 0.86 1.44 0.31 -1 -1 0.86 0.466806 0.410076 +k6_N10_40nm.xml des.pre-vpr.blif common 10.18 vpr 64.46 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 99 256 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 256 245 954 1199 0 610 600 18 18 324 io auto 26.3 MiB 0.25 5170 154869 45044 102028 7797 64.5 MiB 0.62 0.01 3.62435 -664.313 -3.62435 nan 1.08 0.00276066 0.00256029 0.180969 0.16834 34 8174 25 1.37969e+07 5.33551e+06 748928. 2311.50 5.03 0.953533 0.884487 24000 145208 -1 7456 24 2752 6594 388502 81269 4.34006 nan -764.522 -4.34006 0 0 917842. 2832.85 0.38 0.29 0.13 -1 -1 0.38 0.159148 0.148998 +k6_N10_40nm.xml diffeq.pre-vpr.blif common 7.49 vpr 65.63 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 97 64 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67204 64 39 1371 1410 1 553 200 12 12 144 clb auto 27.7 MiB 0.35 3803 26480 5673 19127 1680 65.6 MiB 0.32 0.01 4.81228 -954.181 -4.81228 4.81228 0.39 0.00260356 0.00234012 0.138032 0.121769 42 5586 22 5.3894e+06 5.22772e+06 360275. 2501.91 3.35 0.924429 0.803324 11180 70362 -1 4978 23 3033 10025 379090 65211 5.41396 5.41396 -1077.53 -5.41396 0 0 451357. 3134.42 0.16 0.27 0.07 -1 -1 0.16 0.153469 0.136879 +k6_N10_40nm.xml dsip.pre-vpr.blif common 7.41 vpr 66.59 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 95 229 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68184 229 197 1370 1567 1 535 521 16 16 256 io auto 28.6 MiB 0.33 4719 161836 50938 103448 7450 66.6 MiB 0.79 0.01 2.55942 -628.566 -2.55942 2.55942 0.77 0.00310499 0.00274419 0.248186 0.221639 36 8208 25 1.05632e+07 5.11993e+06 605313. 2364.50 2.64 0.818457 0.733718 19136 117450 -1 7476 24 2889 11085 601661 118409 3.08179 3.08179 -752.817 -3.08179 0 0 744064. 2906.50 0.29 0.36 0.11 -1 -1 0.29 0.176148 0.159857 +k6_N10_40nm.xml elliptic.pre-vpr.blif common 23.14 vpr 78.44 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 230 131 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80324 131 114 3421 3535 1 1217 475 18 18 324 clb auto 41.2 MiB 1.04 11253 126411 35653 84646 6112 78.4 MiB 1.39 0.02 6.86727 -3961.07 -6.86727 6.86727 1.10 0.00686081 0.00612294 0.539197 0.463662 50 18798 30 1.37969e+07 1.23956e+07 1.02665e+06 3168.68 6.56 2.26669 1.95198 27232 203968 -1 16839 30 8794 41217 1812646 269971 7.43094 7.43094 -4578.41 -7.43094 0 0 1.31637e+06 4062.87 0.53 1.09 0.19 -1 -1 0.53 0.560039 0.492854 +k6_N10_40nm.xml ex1010.pre-vpr.blif common 27.64 vpr 82.04 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 302 10 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84008 10 10 2659 2669 0 1417 322 20 20 400 clb auto 45.6 MiB 1.58 27044 60987 17180 41783 2024 82.0 MiB 1.50 0.02 6.33128 -61.2732 -6.33128 nan 1.43 0.00848918 0.00692837 0.552211 0.465632 92 46231 38 1.74617e+07 1.6276e+07 2.23535e+06 5588.37 17.03 3.10167 2.63376 44892 464844 -1 41031 23 12315 74941 3786397 446925 6.7446 nan -64.6536 -6.7446 0 0 2.81709e+06 7042.72 0.76 1.04 0.28 -1 -1 0.76 0.311605 0.27712 +k6_N10_40nm.xml ex5p.pre-vpr.blif common 7.02 vpr 63.96 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 78 8 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65496 8 63 761 824 0 443 149 11 11 121 clb auto 26.1 MiB 0.34 4386 12363 2288 9164 911 64.0 MiB 0.19 0.00 3.57272 -159.885 -3.57272 nan 0.30 0.0017518 0.00151413 0.0768384 0.0680081 60 6581 25 4.36541e+06 4.20373e+06 415439. 3433.38 4.22 0.935921 0.810497 10782 80709 -1 6074 24 4603 21281 754452 122569 4.15666 nan -180.098 -4.15666 0 0 519794. 4295.81 0.16 0.31 0.09 -1 -1 0.16 0.115862 0.104363 +k6_N10_40nm.xml frisc.pre-vpr.blif common 23.98 vpr 78.20 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 240 20 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80080 20 116 3175 3291 1 1254 376 18 18 324 clb auto 41.2 MiB 0.98 15316 84448 21608 57191 5649 78.2 MiB 1.20 0.02 8.10215 -4225.02 -8.10215 8.10215 1.06 0.00678124 0.00608609 0.459185 0.401493 64 24240 38 1.37969e+07 1.29346e+07 1.31637e+06 4062.87 8.85 2.58275 2.21621 30460 263268 -1 21638 31 9039 38390 1872289 276520 8.94296 8.94296 -4800.31 -8.94296 0 0 1.63962e+06 5060.55 0.64 1.00 0.28 -1 -1 0.64 0.487622 0.427911 +k6_N10_40nm.xml misex3.pre-vpr.blif common 8.96 vpr 64.54 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 87 14 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 14 14 828 842 0 488 115 12 12 144 clb auto 26.8 MiB 0.36 4825 7927 1280 6128 519 64.5 MiB 0.18 0.00 4.14228 -53.1378 -4.14228 nan 0.38 0.00183841 0.00158874 0.0794201 0.0704541 60 7402 27 5.3894e+06 4.68878e+06 505417. 3509.84 5.42 1.09222 0.945297 12896 98790 -1 6820 27 5624 26487 956143 146571 4.40603 nan -57.9879 -4.40603 0 0 632511. 4392.44 0.20 0.41 0.09 -1 -1 0.20 0.143802 0.129014 +k6_N10_40nm.xml pdc.pre-vpr.blif common 30.57 vpr 82.91 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 307 16 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84896 16 40 2839 2879 0 1501 363 20 20 400 clb auto 46.4 MiB 1.33 24742 75415 21527 50762 3126 82.9 MiB 1.57 0.02 6.09076 -226.074 -6.09076 nan 1.40 0.00788467 0.00640777 0.549585 0.458565 82 41591 49 1.74617e+07 1.65455e+07 2.00877e+06 5021.92 16.38 3.5999 2.99525 42096 413520 -1 36583 23 13448 77785 3454726 451976 6.817 nan -248.809 -6.817 0 0 2.51236e+06 6280.89 1.06 1.63 0.45 -1 -1 1.06 0.558085 0.491409 +k6_N10_40nm.xml s298.pre-vpr.blif common 5.56 vpr 63.38 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 77 4 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64904 4 6 726 732 1 378 87 11 11 121 clb auto 25.7 MiB 0.33 3794 4887 737 3962 188 63.4 MiB 0.14 0.00 5.75107 -47.4803 -5.75107 5.75107 0.30 0.00206572 0.00180799 0.06924 0.0621571 44 6402 37 4.36541e+06 4.14984e+06 309216. 2555.51 2.21 0.57592 0.504839 9582 61621 -1 5464 31 4013 21407 843648 129067 6.53551 6.53551 -54.1344 -6.53551 0 0 401578. 3318.83 0.13 0.38 0.06 -1 -1 0.13 0.149211 0.133771 +k6_N10_40nm.xml s38584.1.pre-vpr.blif common 37.89 vpr 87.66 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 368 38 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89760 39 304 4677 4982 1 2229 711 22 22 484 clb auto 50.3 MiB 1.19 16540 260815 76679 170596 13540 87.7 MiB 2.54 0.03 4.30486 -2914.55 -4.30486 4.30486 1.75 0.00890903 0.0079919 0.804071 0.684575 50 23250 29 2.15576e+07 1.9833e+07 1.57675e+06 3257.74 16.35 4.7809 4.07222 40896 315528 -1 21935 24 12300 34302 1482300 264679 5.38319 5.38319 -3311.71 -5.38319 0 0 2.02322e+06 4180.21 0.85 1.00 0.31 -1 -1 0.85 0.559897 0.489084 +k6_N10_40nm.xml seq.pre-vpr.blif common 9.34 vpr 66.14 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 103 41 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67724 41 35 1006 1041 0 588 179 13 13 169 clb auto 28.6 MiB 0.49 6805 20339 4089 14118 2132 66.1 MiB 0.35 0.01 4.30872 -124.209 -4.30872 nan 0.47 0.00288552 0.00245834 0.138198 0.121117 58 12595 48 6.52117e+06 5.55108e+06 584019. 3455.73 5.16 1.17514 1.02484 15030 115912 -1 10412 27 6403 30982 1209689 183801 4.5826 nan -137.56 -4.5826 0 0 741857. 4389.69 0.25 0.53 0.11 -1 -1 0.25 0.184766 0.165359 +k6_N10_40nm.xml spla.pre-vpr.blif common 29.70 vpr 77.22 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 245 16 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79076 16 46 2232 2278 0 1154 307 18 18 324 clb auto 40.2 MiB 1.04 16792 54127 13369 38397 2361 77.2 MiB 1.05 0.02 5.72007 -192.648 -5.72007 nan 1.09 0.00671319 0.00549092 0.387252 0.326682 70 27913 31 1.37969e+07 1.3204e+07 1.42834e+06 4408.47 19.32 3.67179 3.09826 31752 286880 -1 24212 20 9068 51429 2055146 284738 6.33879 nan -215.924 -6.33879 0 0 1.78317e+06 5503.60 0.71 0.91 0.30 -1 -1 0.71 0.302668 0.271065 +k6_N10_40nm.xml tseng.pre-vpr.blif common 15.82 vpr 66.12 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 110 52 -1 -1 success 5bc8820-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-10T19:48:13 gh-actions-runner-vtr-auto-spawned44 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67704 52 122 1461 1583 1 509 284 13 13 169 clb auto 28.3 MiB 0.31 3040 50666 12428 35214 3024 66.1 MiB 0.39 0.01 4.35011 -1184.05 -4.35011 4.35011 0.47 0.00246561 0.00222714 0.150264 0.134178 182 3991 21 6.52117e+06 5.92834e+06 1.59512e+06 9438.56 10.68 1.50844 1.30907 28470 343752 -1 3959 62 2500 7090 410715 53869 4.65244 4.65244 -1282.16 -4.65244 0 0 2.00730e+06 11877.5 0.70 0.43 0.48 -1 -1 0.70 0.286095 0.252927 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/FIR_filters/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/FIR_filters/config/golden_results.txt index b27d59f158e..e71a04d0dbd 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/FIR_filters/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/FIR_filters/config/golden_results.txt @@ -1,235 +1,235 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_14.v common 9.49 vpr 72.88 MiB 0.07 10876 -1 -1 8 0.61 -1 -1 40012 -1 -1 129 22 0 4 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74628 22 19 1764 1664 1 986 174 16 16 256 mult_36 auto 34.7 MiB 0.30 6716 23939 4658 17157 2124 72.9 MiB 0.37 0.01 3.97876 -1180.52 -3.97876 3.97876 0.81 0.00289719 0.00253419 0.164598 0.14488 54 12989 27 6.2557e+06 3.1391e+06 784202. 3063.29 4.46 1.06301 0.935766 23308 185586 -1 10743 13 3658 7451 632522 151900 4.33936 4.33936 -1335.94 -4.33936 0 0 965591. 3771.84 0.39 0.25 0.18 -1 -1 0.39 0.116898 0.106532 966 909 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_15.v common 12.42 vpr 73.50 MiB 0.07 11320 -1 -1 8 0.62 -1 -1 40796 -1 -1 139 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75260 22 19 1918 1801 1 1083 185 16 16 256 clb mult_36 auto 35.6 MiB 0.34 7461 26485 5252 19313 1920 73.5 MiB 0.43 0.01 4.09896 -1282.86 -4.09896 4.09896 0.83 0.00332117 0.00293488 0.193921 0.169317 58 13300 19 6.2557e+06 3.65564e+06 820238. 3204.05 7.14 1.19844 1.05531 24072 200857 -1 11763 15 4084 8056 683890 164480 4.21916 4.21916 -1458.02 -4.21916 0 0 1.02849e+06 4017.54 0.42 0.28 0.19 -1 -1 0.42 0.134059 0.121555 1047 984 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_16.v common 9.74 vpr 74.00 MiB 0.07 11312 -1 -1 8 0.65 -1 -1 40556 -1 -1 143 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75776 22 19 1976 1859 1 1114 189 17 17 289 clb auto 36.3 MiB 0.33 7668 29457 6159 20794 2504 74.0 MiB 0.47 0.01 4.09896 -1318.6 -4.09896 4.09896 0.94 0.00324538 0.00288258 0.213277 0.188475 54 14418 22 6.55708e+06 3.70386e+06 896083. 3100.63 4.17 1.07121 0.948255 26206 212621 -1 12158 18 4385 8615 748368 176589 4.21916 4.21916 -1479.14 -4.21916 0 0 1.10294e+06 3816.40 0.43 0.33 0.19 -1 -1 0.43 0.165284 0.150316 1086 1023 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_17.v common 14.82 vpr 75.14 MiB 0.09 12000 -1 -1 8 0.76 -1 -1 40496 -1 -1 163 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76944 22 19 2278 2144 1 1240 209 17 17 289 clb auto 37.7 MiB 0.39 8204 29349 5400 21599 2350 75.1 MiB 0.49 0.01 4.09896 -1534.79 -4.09896 4.09896 0.95 0.00363376 0.00319382 0.219503 0.194204 56 14638 32 6.55708e+06 3.94496e+06 918491. 3178.17 8.73 1.81582 1.61532 26494 218197 -1 13002 15 4557 8864 853392 206592 4.21916 4.21916 -1749.86 -4.21916 0 0 1.12733e+06 3900.80 0.45 0.36 0.21 -1 -1 0.45 0.170286 0.154722 1242 1171 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_18.v common 14.25 vpr 75.94 MiB 0.09 12220 -1 -1 8 0.82 -1 -1 40808 -1 -1 168 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77764 22 19 2336 2202 1 1265 214 18 18 324 clb auto 38.1 MiB 0.40 8926 35359 7324 25666 2369 75.9 MiB 0.56 0.01 3.97876 -1555.53 -3.97876 3.97876 1.10 0.00411686 0.00366073 0.246864 0.21724 56 16247 26 7.67456e+06 4.00524e+06 1.05222e+06 3247.61 7.55 1.5124 1.32866 30196 251424 -1 14437 16 5033 10077 968840 225776 4.21916 4.21916 -1822.56 -4.21916 0 0 1.29075e+06 3983.80 0.54 0.40 0.24 -1 -1 0.54 0.176768 0.160252 1281 1210 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_19.v common 24.06 vpr 76.04 MiB 0.09 12808 -1 -1 8 0.87 -1 -1 41392 -1 -1 175 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77868 22 19 2488 2337 1 1372 222 18 18 324 clb auto 38.7 MiB 0.42 9600 37127 7986 26661 2480 76.0 MiB 0.59 0.01 3.97876 -1665.15 -3.97876 3.97876 1.11 0.00413598 0.00365805 0.254278 0.222722 54 18831 49 7.67456e+06 4.48562e+06 1.02660e+06 3168.53 17.18 2.20043 1.93699 29872 244976 -1 15037 16 5255 10425 936190 217647 4.33936 4.33936 -1920.91 -4.33936 0 0 1.26286e+06 3897.71 0.51 0.41 0.23 -1 -1 0.51 0.194811 0.177199 1360 1285 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_20.v common 17.49 vpr 76.68 MiB 0.09 12696 -1 -1 8 0.90 -1 -1 40964 -1 -1 182 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78516 22 19 2546 2395 1 1407 229 18 18 324 clb auto 39.3 MiB 0.44 9965 41529 9161 29208 3160 76.7 MiB 0.68 0.01 3.97876 -1693.16 -3.97876 3.97876 1.18 0.00428362 0.00378725 0.295805 0.261435 58 17397 22 7.67456e+06 4.57001e+06 1.07356e+06 3313.45 10.28 1.96076 1.73029 30840 265148 -1 15388 14 5026 10093 939467 217293 4.33936 4.33936 -1959.02 -4.33936 0 0 1.34501e+06 4151.27 0.56 0.40 0.25 -1 -1 0.56 0.186457 0.169578 1399 1324 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_21.v common 20.25 vpr 77.89 MiB 0.10 13288 -1 -1 8 1.04 -1 -1 41624 -1 -1 193 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79756 22 19 2735 2567 1 1516 240 19 19 361 clb auto 40.5 MiB 0.50 11931 40470 8469 29910 2091 77.9 MiB 0.68 0.01 4.09896 -1860.49 -4.09896 4.09896 1.26 0.00469879 0.00416491 0.284533 0.247507 58 20699 34 8.02416e+06 4.70262e+06 1.20750e+06 3344.89 12.17 2.09025 1.84032 34238 298765 -1 18141 15 6062 12296 1285658 295067 4.21916 4.21916 -2105.46 -4.21916 0 0 1.51231e+06 4189.22 0.67 0.50 0.29 -1 -1 0.67 0.201146 0.182395 1497 1417 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_22.v common 23.62 vpr 78.01 MiB 0.10 13592 -1 -1 8 1.07 -1 -1 42040 -1 -1 200 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79880 22 19 2793 2625 1 1545 247 19 19 361 clb auto 40.7 MiB 0.50 11731 45913 10267 33220 2426 78.0 MiB 0.72 0.01 4.09896 -1894.34 -4.09896 4.09896 1.30 0.00467286 0.00410137 0.300323 0.261993 58 20711 33 8.02416e+06 4.787e+06 1.20750e+06 3344.89 15.51 2.4373 2.13665 34238 298765 -1 18206 14 6066 12243 1358088 309274 4.33936 4.33936 -2184.55 -4.33936 0 0 1.51231e+06 4189.22 0.67 0.50 0.28 -1 -1 0.67 0.195663 0.178187 1536 1456 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_23.v common 15.13 vpr 79.08 MiB 0.11 13944 -1 -1 8 1.10 -1 -1 42432 -1 -1 211 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80980 22 19 2947 2762 1 1644 259 19 19 361 clb auto 41.8 MiB 0.51 11941 45634 9859 33069 2706 79.1 MiB 0.75 0.01 4.09896 -2015.89 -4.09896 4.09896 1.29 0.00477932 0.00420968 0.311592 0.273525 58 20472 30 8.02416e+06 5.3156e+06 1.20750e+06 3344.89 6.88 1.67994 1.48415 34238 298765 -1 18477 14 6097 11878 1180369 276422 4.33936 4.33936 -2281.03 -4.33936 0 0 1.51231e+06 4189.22 0.67 0.49 0.28 -1 -1 0.67 0.22071 0.201646 1617 1531 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_24.v common 17.71 vpr 79.16 MiB 0.10 13816 -1 -1 8 1.19 -1 -1 42148 -1 -1 216 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81060 22 19 3005 2820 1 1676 264 19 19 361 clb auto 42.0 MiB 0.55 12762 53562 12715 38111 2736 79.2 MiB 0.91 0.01 4.09896 -2068.06 -4.09896 4.09896 1.29 0.00564651 0.00506949 0.385811 0.340703 58 22030 35 8.02416e+06 5.37588e+06 1.20750e+06 3344.89 9.15 1.87075 1.65639 34238 298765 -1 19349 15 6057 12520 1137301 261474 4.45956 4.45956 -2397.57 -4.45956 0 0 1.51231e+06 4189.22 0.67 0.47 0.29 -1 -1 0.67 0.21249 0.191992 1656 1570 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_25.v common 31.00 vpr 80.34 MiB 0.12 14468 -1 -1 8 1.27 -1 -1 44120 -1 -1 231 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82268 22 19 3229 3027 1 1787 279 20 20 400 clb auto 43.3 MiB 0.57 12560 53117 11778 38338 3001 80.3 MiB 0.90 0.01 3.97876 -2260.63 -3.97876 3.97876 1.41 0.00569525 0.00501851 0.366486 0.320319 56 23254 38 1.09209e+07 5.5567e+06 1.31097e+06 3277.42 21.59 2.89587 2.5299 37530 313959 -1 20391 29 7083 14485 1660364 430926 4.45956 4.45956 -2597.44 -4.45956 0 0 1.60880e+06 4022.00 0.73 0.79 0.30 -1 -1 0.73 0.370418 0.330869 1771 1681 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_26.v common 25.06 vpr 81.73 MiB 0.12 14724 -1 -1 8 1.36 -1 -1 44116 -1 -1 237 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83688 22 19 3287 3085 1 1821 285 21 21 441 clb auto 43.8 MiB 0.62 14297 59316 14546 41974 2796 81.7 MiB 0.98 0.02 4.09896 -2304.94 -4.09896 4.09896 1.61 0.00612157 0.00546974 0.407556 0.356221 60 24059 36 1.13066e+07 5.62904e+06 1.51956e+06 3445.70 15.04 2.78114 2.47499 42502 376505 -1 21468 17 6792 14073 1281895 290129 4.33936 4.33936 -2620.43 -4.33936 0 0 1.89683e+06 4301.21 0.91 0.57 0.36 -1 -1 0.91 0.26374 0.238613 1810 1720 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_27.v common 26.34 vpr 82.30 MiB 0.12 15080 -1 -1 8 1.43 -1 -1 43512 -1 -1 251 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84280 22 19 3453 3234 1 1931 300 21 21 441 clb auto 44.4 MiB 0.59 16327 64492 15810 45321 3361 82.3 MiB 1.05 0.02 4.21916 -2436.84 -4.21916 4.21916 1.58 0.00600738 0.00526371 0.422129 0.366337 64 26851 26 1.13066e+07 6.1938e+06 1.61476e+06 3661.58 16.05 2.88416 2.54127 43822 404518 -1 23928 14 7392 15359 1607090 350229 4.45956 4.45956 -2799.88 -4.45956 0 0 2.02607e+06 4594.27 0.95 0.61 0.41 -1 -1 0.95 0.24822 0.224489 1903 1795 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_28.v common 27.59 vpr 82.50 MiB 0.12 15060 -1 -1 8 1.44 -1 -1 43156 -1 -1 256 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84480 22 19 3511 3292 1 1964 305 21 21 441 clb auto 44.7 MiB 0.62 15914 59813 13262 43305 3246 82.5 MiB 0.99 0.02 4.21916 -2501.66 -4.21916 4.21916 1.60 0.00660555 0.00593184 0.396778 0.347192 64 27182 38 1.13066e+07 6.25408e+06 1.61476e+06 3661.58 17.10 2.99224 2.63065 43822 404518 -1 23936 17 7452 14970 1524028 331952 4.33936 4.33936 -2784.19 -4.33936 0 0 2.02607e+06 4594.27 0.98 0.67 0.39 -1 -1 0.98 0.300731 0.273297 1942 1834 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_29.v common 28.40 vpr 84.07 MiB 0.15 15628 -1 -1 8 1.58 -1 -1 44896 -1 -1 268 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86084 22 19 3709 3473 1 2078 318 22 22 484 clb mult_36 auto 46.6 MiB 0.65 16633 66503 15151 47879 3473 84.1 MiB 1.05 0.02 4.09896 -2538.51 -4.09896 4.09896 1.81 0.00622742 0.00547112 0.407672 0.353347 62 29995 30 1.25085e+07 6.79474e+06 1.74100e+06 3597.11 17.11 2.93499 2.58468 47538 430501 -1 24791 15 7836 16201 1428574 320935 4.45956 4.45956 -2970.45 -4.45956 0 0 2.15309e+06 4448.52 1.03 0.65 0.41 -1 -1 1.03 0.306818 0.280519 2049 1927 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_30.v common 43.74 vpr 84.39 MiB 0.13 15740 -1 -1 8 1.56 -1 -1 45140 -1 -1 274 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86412 22 19 3767 3531 1 2107 324 22 22 484 clb mult_36 auto 46.9 MiB 0.66 15478 71492 16284 51193 4015 84.4 MiB 1.14 0.02 3.97876 -2621.24 -3.97876 3.97876 1.80 0.00628675 0.00547147 0.442993 0.381661 56 28717 47 1.25085e+07 6.86707e+06 1.62053e+06 3348.21 32.51 3.7588 3.27975 45606 389969 -1 25429 16 8586 17798 1876903 434769 4.33936 4.33936 -3143.17 -4.33936 0 0 1.98725e+06 4105.89 0.89 0.73 0.37 -1 -1 0.89 0.295548 0.267486 2088 1966 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_31.v common 29.24 vpr 84.80 MiB 0.14 16276 -1 -1 8 1.73 -1 -1 45812 -1 -1 288 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86836 22 19 3928 3675 1 2213 338 22 22 484 clb mult_36 auto 47.5 MiB 0.69 17074 76778 18147 54275 4356 84.8 MiB 1.27 0.02 4.09896 -2708.1 -4.09896 4.09896 1.88 0.00698003 0.00581833 0.50303 0.438321 64 28057 28 1.25085e+07 7.03584e+06 1.79645e+06 3711.66 17.41 3.23769 2.85034 48502 451691 -1 25303 16 8121 16401 1688236 379709 4.21916 4.21916 -3108.99 -4.21916 0 0 2.25323e+06 4655.43 1.03 0.69 0.43 -1 -1 1.03 0.292772 0.264157 2176 2041 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_32.v common 24.56 vpr 85.50 MiB 0.14 16228 -1 -1 8 1.75 -1 -1 45984 -1 -1 292 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87552 22 19 3986 3733 1 2248 342 22 22 484 clb mult_36 auto 48.3 MiB 0.72 16877 78017 18173 55678 4166 85.5 MiB 1.30 0.02 4.09896 -2726.87 -4.09896 4.09896 1.79 0.00594532 0.00516523 0.502174 0.43658 60 29180 30 1.25085e+07 7.08406e+06 1.69059e+06 3492.95 12.73 2.34283 2.0479 47054 420411 -1 25676 14 8517 17728 1538664 347880 4.45956 4.45956 -3217.78 -4.45956 0 0 2.10969e+06 4358.87 1.02 0.70 0.41 -1 -1 1.02 0.322824 0.295173 2215 2080 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_33.v common 25.39 vpr 87.14 MiB 0.16 17292 -1 -1 8 1.88 -1 -1 44724 -1 -1 314 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89232 22 19 4329 4059 1 2377 365 23 23 529 clb auto 49.9 MiB 0.77 17217 79848 18931 57729 3188 87.1 MiB 1.27 0.02 4.09896 -2991.97 -4.09896 4.09896 2.02 0.00695778 0.00609542 0.48492 0.418683 58 30412 29 1.29425e+07 7.74527e+06 1.81842e+06 3437.46 12.35 2.4278 2.11714 50706 452665 -1 27041 15 8998 18368 1775438 412445 4.33936 4.33936 -3454.05 -4.33936 0 0 2.27638e+06 4303.19 1.11 0.71 0.43 -1 -1 1.11 0.31135 0.282025 2394 2246 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_34.v common 50.29 vpr 87.49 MiB 0.16 17516 -1 -1 8 2.05 -1 -1 46564 -1 -1 320 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89588 22 19 4387 4117 1 2404 371 23 23 529 clb auto 50.3 MiB 0.80 18602 88283 21518 62857 3908 87.5 MiB 1.44 0.02 4.45956 -3079.37 -4.45956 4.45956 2.09 0.00740938 0.00654018 0.541974 0.47146 60 32038 50 1.29425e+07 7.8176e+06 1.85922e+06 3514.59 36.95 4.26274 3.74669 51234 462879 -1 28216 15 9090 18510 1829727 410514 4.69996 4.69996 -3683.98 -4.69996 0 0 2.31949e+06 4384.67 1.11 0.79 0.43 -1 -1 1.11 0.352951 0.32202 2433 2285 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_35.v common 60.95 vpr 88.68 MiB 0.16 17676 -1 -1 8 2.32 -1 -1 45208 -1 -1 332 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90804 22 19 4547 4260 1 2527 383 23 23 529 clb auto 51.3 MiB 0.80 20519 90733 21057 64883 4793 88.7 MiB 1.46 0.02 4.09896 -3198.23 -4.09896 4.09896 2.08 0.00741907 0.00655636 0.553848 0.479786 58 36808 47 1.29425e+07 7.96226e+06 1.81842e+06 3437.46 47.20 4.14208 3.59291 50706 452665 -1 31023 14 10244 21129 2300327 517531 4.45956 4.45956 -3617.32 -4.45956 0 0 2.27638e+06 4303.19 1.04 0.86 0.43 -1 -1 1.04 0.331816 0.300434 2520 2360 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_36.v common 59.78 vpr 89.15 MiB 0.17 17976 -1 -1 8 2.43 -1 -1 47128 -1 -1 338 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91292 22 19 4605 4318 1 2554 389 24 24 576 clb auto 51.8 MiB 0.81 18547 98300 23554 69274 5472 89.2 MiB 1.57 0.02 4.09896 -3171.61 -4.09896 4.09896 2.26 0.00757502 0.00635067 0.586355 0.502579 54 35430 50 1.51154e+07 8.03459e+06 1.87785e+06 3260.16 45.40 4.2491 3.6915 53390 450987 -1 29211 16 10284 20934 2184116 519017 4.21916 4.21916 -3640.18 -4.21916 0 0 2.31032e+06 4010.97 1.12 0.84 0.42 -1 -1 1.12 0.335917 0.301093 2559 2399 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_37.v common 27.91 vpr 89.45 MiB 0.17 18280 -1 -1 8 2.28 -1 -1 44080 -1 -1 351 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91592 22 19 4802 4498 1 2682 403 24 24 576 clb mult_36 auto 52.7 MiB 0.72 20711 95635 22535 68778 4322 89.4 MiB 1.54 0.02 4.21916 -3370.71 -4.21916 4.21916 2.22 0.00848458 0.00751214 0.573338 0.491186 60 35746 34 1.51154e+07 8.5873e+06 2.00908e+06 3487.99 13.56 3.08898 2.70994 55690 499183 -1 31281 14 10246 21344 2400291 525542 4.45956 4.45956 -3865.87 -4.45956 0 0 2.50809e+06 4354.32 1.24 0.92 0.48 -1 -1 1.24 0.357323 0.324382 2665 2492 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_38.v common 37.95 vpr 94.64 MiB 0.18 18396 -1 -1 8 2.33 -1 -1 47288 -1 -1 355 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96912 22 19 4860 4556 1 2713 407 25 25 625 clb auto 53.2 MiB 0.95 22179 101376 26080 70975 4321 89.9 MiB 1.67 0.02 4.21916 -3441.6 -4.21916 4.21916 2.43 0.00744563 0.00643804 0.624356 0.544067 66 35798 20 1.55855e+07 8.63552e+06 2.39749e+06 3835.99 22.31 3.43461 3.00729 62708 601000 -1 32357 15 9562 20589 2054626 440410 4.45956 4.45956 -3957.38 -4.45956 0 0 2.99279e+06 4788.46 1.47 0.87 0.58 -1 -1 1.47 0.391027 0.355727 2704 2531 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_39.v common 32.24 vpr 90.70 MiB 0.18 18916 -1 -1 8 2.57 -1 -1 47684 -1 -1 370 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92880 22 19 5019 4698 1 2814 422 25 25 625 clb auto 54.1 MiB 0.92 23437 112744 29132 78452 5160 90.7 MiB 1.82 0.03 4.21916 -3601.47 -4.21916 4.21916 2.49 0.00865647 0.00767964 0.66442 0.578173 60 39860 38 1.55855e+07 8.81635e+06 2.19200e+06 3507.21 16.40 3.14183 2.74989 60212 545296 -1 34372 14 10430 21713 2329449 509930 4.69996 4.69996 -4115.88 -4.69996 0 0 2.73590e+06 4377.44 1.37 0.95 0.51 -1 -1 1.37 0.384837 0.34954 2790 2606 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_40.v common 38.58 vpr 95.45 MiB 0.18 19176 -1 -1 8 2.67 -1 -1 47524 -1 -1 373 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97736 22 19 5077 4756 1 2844 425 25 25 625 clb auto 54.3 MiB 0.91 22614 109021 26957 76422 5642 91.0 MiB 1.74 0.03 4.21916 -3560.37 -4.21916 4.21916 2.44 0.00919228 0.00809484 0.65053 0.564405 66 36641 19 1.55855e+07 8.85252e+06 2.39749e+06 3835.99 22.48 3.80932 3.34162 62708 601000 -1 33301 16 10176 21536 2224554 490718 4.45956 4.45956 -4017.86 -4.45956 0 0 2.99279e+06 4788.46 1.46 0.91 0.58 -1 -1 1.46 0.404007 0.364825 2829 2645 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_41.v common 40.90 vpr 98.34 MiB 0.20 19656 -1 -1 8 2.74 -1 -1 48424 -1 -1 390 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100696 22 19 5308 4970 1 2955 443 25 25 625 clb auto 56.0 MiB 0.94 24112 106787 25684 76488 4615 92.3 MiB 1.77 0.03 4.33936 -3762.04 -4.33936 4.33936 2.38 0.00884479 0.00778627 0.647898 0.559272 92 35310 14 1.55855e+07 9.45345e+06 3.16512e+06 5064.19 24.27 3.93099 3.45479 73316 824684 -1 33097 13 8426 17871 1719923 362024 4.69996 4.69996 -4184.75 -4.69996 0 0 3.93957e+06 6303.31 1.92 0.80 0.79 -1 -1 1.92 0.393695 0.358116 2951 2756 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_42.v common 38.73 vpr 92.77 MiB 0.20 19952 -1 -1 8 2.75 -1 -1 48612 -1 -1 397 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94996 22 19 5366 5028 1 2986 450 26 26 676 clb auto 56.4 MiB 0.99 23524 122783 30424 87093 5266 92.8 MiB 2.03 0.03 4.09896 -3724.11 -4.09896 4.09896 2.70 0.00997373 0.00837884 0.752005 0.640302 58 43828 39 1.89118e+07 9.53784e+06 2.36678e+06 3501.15 21.51 4.06827 3.54184 66088 592148 -1 36673 15 12077 25121 2764104 624089 4.33936 4.33936 -4591.74 -4.33936 0 0 2.96266e+06 4382.64 1.41 1.06 0.54 -1 -1 1.41 0.408804 0.36974 2990 2795 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_43.v common 35.48 vpr 94.95 MiB 0.20 20032 -1 -1 8 2.83 -1 -1 49088 -1 -1 404 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97228 22 19 5524 5169 1 3090 457 26 26 676 clb auto 57.3 MiB 0.97 23258 127105 32575 89866 4664 94.9 MiB 2.07 0.03 3.97876 -3891.75 -3.97876 3.97876 2.75 0.00961832 0.0085702 0.758245 0.655909 58 41314 27 1.89118e+07 9.62222e+06 2.36678e+06 3501.15 18.00 3.32177 2.89832 66088 592148 -1 36069 15 11760 24617 2512750 564016 4.33936 4.33936 -4515.45 -4.33936 0 0 2.96266e+06 4382.64 1.49 1.02 0.56 -1 -1 1.49 0.43258 0.392725 3075 2870 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_44.v common 31.52 vpr 93.56 MiB 0.21 20172 -1 -1 8 2.93 -1 -1 48844 -1 -1 410 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95808 22 19 5582 5227 1 3122 463 26 26 676 clb auto 57.2 MiB 1.03 25949 134713 36450 92826 5437 93.6 MiB 2.22 0.03 4.33936 -3901.04 -4.33936 4.33936 2.75 0.0101506 0.00910488 0.803474 0.699117 64 43476 33 1.89118e+07 9.69455e+06 2.57128e+06 3803.68 13.47 3.48561 3.06044 68788 650644 -1 38770 13 11550 24219 2678614 576721 4.69996 4.69996 -4605.87 -4.69996 0 0 3.22435e+06 4769.75 1.53 1.02 0.61 -1 -1 1.53 0.398968 0.362515 3114 2909 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_45.v common 48.77 vpr 103.11 MiB 0.21 20544 -1 -1 8 3.27 -1 -1 49624 -1 -1 425 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 105588 22 19 5779 5407 1 3235 479 26 26 676 clb auto 58.6 MiB 1.05 25477 139081 35569 97572 5940 94.7 MiB 2.29 0.03 4.21916 -4037.67 -4.21916 4.21916 2.73 0.0109182 0.00975519 0.853364 0.746787 68 41569 25 1.89118e+07 1.02714e+07 2.70930e+06 4007.84 29.94 5.19963 4.56167 70140 680260 -1 37607 14 11564 23858 3299525 709395 4.57976 4.57976 -4630.45 -4.57976 0 0 3.37003e+06 4985.25 1.67 1.20 0.64 -1 -1 1.67 0.433561 0.394844 3220 3002 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_46.v common 33.86 vpr 96.69 MiB 0.22 20840 -1 -1 8 3.36 -1 -1 49884 -1 -1 430 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99008 22 19 5837 5465 1 3273 484 26 26 676 clb auto 58.9 MiB 1.06 26828 135313 34817 95062 5434 96.7 MiB 2.18 0.03 4.09896 -4124.52 -4.09896 4.09896 2.77 0.00988389 0.00874327 0.773005 0.668051 64 44469 46 1.89118e+07 1.03316e+07 2.57128e+06 3803.68 15.32 3.89771 3.41537 68788 650644 -1 39879 13 11486 24327 2372986 514357 4.57976 4.57976 -4725.68 -4.57976 0 0 3.22435e+06 4769.75 1.61 0.93 0.62 -1 -1 1.61 0.382819 0.345277 3259 3041 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_47.v common 38.15 vpr 99.38 MiB 0.22 21168 -1 -1 8 3.61 -1 -1 49884 -1 -1 439 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101760 22 19 5997 5608 1 3373 493 27 27 729 clb auto 59.8 MiB 1.12 27254 132821 33148 94628 5045 97.3 MiB 2.15 0.03 4.21916 -4320.18 -4.21916 4.21916 2.97 0.010237 0.00907696 0.752582 0.652034 64 46105 26 1.94302e+07 1.04401e+07 2.78336e+06 3818.06 18.60 3.58166 3.13182 73874 704979 -1 40718 15 12338 26057 2533493 549513 4.45956 4.45956 -5025.16 -4.45956 0 0 3.48985e+06 4787.17 1.71 1.05 0.66 -1 -1 1.71 0.462141 0.417958 3346 3116 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_48.v common 35.50 vpr 100.07 MiB 0.23 21592 -1 -1 8 3.58 -1 -1 50372 -1 -1 448 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102468 22 19 6055 5666 1 3405 502 27 27 729 clb auto 60.3 MiB 1.12 25845 146064 38186 101600 6278 97.7 MiB 2.36 0.03 4.09896 -4355.09 -4.09896 4.09896 2.96 0.00891481 0.00765927 0.84311 0.72474 64 41900 33 1.94302e+07 1.05486e+07 2.78336e+06 3818.06 15.82 4.37235 3.84588 73874 704979 -1 38527 14 11834 24415 2359753 521973 4.33936 4.33936 -5031.1 -4.33936 0 0 3.48985e+06 4787.17 1.68 0.95 0.67 -1 -1 1.68 0.42882 0.386767 3385 3155 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_49.v common 36.83 vpr 102.12 MiB 0.24 21912 -1 -1 8 3.77 -1 -1 50192 -1 -1 465 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 104572 22 19 6324 5918 1 3526 520 27 27 729 clb auto 61.5 MiB 1.18 26562 146820 39305 101824 5691 99.0 MiB 2.53 0.04 3.97876 -4482.3 -3.97876 3.97876 2.97 0.0120837 0.0106824 0.916361 0.789169 62 45888 32 1.94302e+07 1.11496e+07 2.69830e+06 3701.37 16.63 4.68616 4.11215 72418 672039 -1 39425 16 12766 26550 2568013 575620 4.33936 4.33936 -5151.02 -4.33936 0 0 3.33509e+06 4574.88 1.59 1.04 0.62 -1 -1 1.59 0.465786 0.417783 3527 3284 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_50.v common 49.03 vpr 109.89 MiB 0.30 22184 -1 -1 8 3.82 -1 -1 50688 -1 -1 466 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 112524 22 19 6382 5976 1 3558 521 27 27 729 clb auto 62.3 MiB 1.20 26166 159741 42298 110785 6658 99.6 MiB 2.48 0.03 4.09896 -4491.13 -4.09896 4.09896 2.90 0.00954978 0.00826607 0.838042 0.715169 66 42760 44 1.94302e+07 1.11616e+07 2.86480e+06 3929.76 28.54 5.38816 4.69177 74602 723059 -1 39238 14 12226 25379 2493972 549399 4.33936 4.33936 -5171.36 -4.33936 0 0 3.57338e+06 4901.75 1.73 1.01 0.70 -1 -1 1.73 0.451124 0.406327 3566 3323 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_51.v common 35.43 vpr 105.25 MiB 0.24 22464 -1 -1 8 3.69 -1 -1 51352 -1 -1 479 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 107772 22 19 6542 6119 1 3674 534 28 28 784 clb auto 63.0 MiB 1.22 27719 149919 37357 106443 6119 100.3 MiB 2.38 0.04 4.21916 -4662.59 -4.21916 4.21916 3.12 0.0107826 0.0094788 0.815894 0.705099 64 45819 32 2.18512e+07 1.13183e+07 2.96389e+06 3780.48 14.39 4.14677 3.64666 78840 748675 -1 42021 13 12887 27533 2828966 620703 4.45956 4.45956 -5398.82 -4.45956 0 0 3.71765e+06 4741.90 1.83 1.13 0.70 -1 -1 1.83 0.470753 0.428155 3653 3398 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_52.v common 52.14 vpr 120.03 MiB 0.24 22624 -1 -1 8 4.04 -1 -1 51280 -1 -1 485 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 122908 22 19 6600 6177 1 3704 540 28 28 784 clb auto 63.5 MiB 1.20 31298 152202 39299 107421 5482 100.6 MiB 2.43 0.04 4.33936 -4812.96 -4.33936 4.33936 3.16 0.0120447 0.0106932 0.816661 0.701911 64 51534 35 2.18512e+07 1.13907e+07 2.96389e+06 3780.48 30.63 5.37888 4.70573 78840 748675 -1 46500 14 13622 29110 2928195 628422 4.57976 4.57976 -5664.05 -4.57976 0 0 3.71765e+06 4741.90 1.81 1.16 0.69 -1 -1 1.81 0.481389 0.435854 3692 3437 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_14.v common 11.09 vpr 69.22 MiB 0.05 9676 -1 -1 10 0.64 -1 -1 39120 -1 -1 93 22 0 4 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70880 22 19 1149 1049 1 787 138 16 16 256 mult_36 auto 31.5 MiB 0.22 5415 14022 2465 10464 1093 69.2 MiB 0.23 0.01 11.9187 -385.147 -11.9187 11.9187 0.81 0.00230272 0.00206814 0.104614 0.0942252 54 11345 37 6.2557e+06 2.70512e+06 784202. 3063.29 6.41 0.91127 0.813492 23308 185586 -1 9017 19 4384 9170 871808 204318 12.1591 12.1591 -538.616 -12.1591 0 0 965591. 3771.84 0.40 0.33 0.18 -1 -1 0.40 0.117975 0.108156 715 658 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_15.v common 14.47 vpr 70.21 MiB 0.06 9860 -1 -1 11 0.61 -1 -1 39344 -1 -1 106 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71892 22 19 1261 1144 1 879 152 16 16 256 mult_36 auto 32.4 MiB 0.23 6220 21617 4399 15123 2095 70.2 MiB 0.33 0.01 12.7143 -409.826 -12.7143 12.7143 0.79 0.00274984 0.00248389 0.154625 0.139005 56 12070 30 6.2557e+06 3.25783e+06 803869. 3140.11 9.59 1.31406 1.17156 23564 190428 -1 10954 30 4912 10153 1192179 304482 13.5557 13.5557 -521.579 -13.5557 0 0 987003. 3855.48 0.40 0.46 0.18 -1 -1 0.40 0.177156 0.160509 790 727 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_16.v common 17.21 vpr 70.69 MiB 0.06 9884 -1 -1 11 0.68 -1 -1 39720 -1 -1 112 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72384 22 19 1336 1219 1 929 158 16 16 256 mult_36 auto 33.0 MiB 0.25 6167 18946 3289 14143 1514 70.7 MiB 0.30 0.01 12.1428 -438.058 -12.1428 12.1428 0.80 0.00279908 0.00252783 0.132443 0.118359 48 12893 31 6.2557e+06 3.33016e+06 714410. 2790.66 12.31 1.30173 1.15151 22288 164970 -1 11440 22 5698 11579 1318195 307567 12.9374 12.9374 -598.278 -12.9374 0 0 863353. 3372.47 0.32 0.44 0.16 -1 -1 0.32 0.139336 0.126036 846 783 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_17.v common 22.09 vpr 71.30 MiB 0.07 10384 -1 -1 11 0.75 -1 -1 40260 -1 -1 121 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73012 22 19 1446 1312 1 989 167 16 16 256 mult_36 auto 33.7 MiB 0.27 6705 18068 2827 13719 1522 71.3 MiB 0.30 0.01 12.5223 -475.971 -12.5223 12.5223 0.82 0.00304726 0.0027518 0.132393 0.118435 50 14750 41 6.2557e+06 3.43866e+06 744679. 2908.90 16.89 1.46444 1.29954 22544 170752 -1 12157 20 5826 12106 1241360 294477 13.4895 13.4895 -717.643 -13.4895 0 0 891356. 3481.86 0.37 0.44 0.17 -1 -1 0.37 0.158519 0.144799 919 848 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_18.v common 10.80 vpr 71.78 MiB 0.05 10384 -1 -1 11 0.81 -1 -1 39944 -1 -1 128 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73500 22 19 1507 1373 1 1035 174 16 16 256 mult_36 auto 34.2 MiB 0.28 7439 21029 3512 15990 1527 71.8 MiB 0.36 0.01 13.2415 -465.987 -13.2415 13.2415 0.81 0.00360831 0.00327647 0.154158 0.137621 58 14248 28 6.2557e+06 3.52304e+06 820238. 3204.05 5.33 0.922857 0.821822 24072 200857 -1 12384 31 5184 10910 1442851 423990 14.0829 14.0829 -686.594 -14.0829 0 0 1.02849e+06 4017.54 0.41 0.59 0.20 -1 -1 0.41 0.211268 0.191585 961 890 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_19.v common 13.00 vpr 72.34 MiB 0.07 10820 -1 -1 11 0.84 -1 -1 39952 -1 -1 135 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74080 22 19 1596 1445 1 1100 182 16 16 256 clb mult_36 auto 34.7 MiB 0.29 8167 22842 4076 17135 1631 72.3 MiB 0.39 0.01 12.8564 -524.383 -12.8564 12.8564 0.83 0.00337983 0.00295172 0.172279 0.153986 58 15116 47 6.2557e+06 4.00342e+06 820238. 3204.05 7.44 1.11695 0.99377 24072 200857 -1 13006 19 5647 11787 1147812 265465 13.2562 13.2562 -706.627 -13.2562 0 0 1.02849e+06 4017.54 0.42 0.42 0.21 -1 -1 0.42 0.15533 0.141486 1013 938 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_20.v common 12.43 vpr 72.30 MiB 0.08 10896 -1 -1 11 0.90 -1 -1 40140 -1 -1 137 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74040 22 19 1656 1505 1 1146 184 16 16 256 clb mult_36 auto 34.8 MiB 0.30 8274 19012 2994 14825 1193 72.3 MiB 0.33 0.01 12.8146 -509.132 -12.8146 12.8146 0.83 0.00337227 0.00301118 0.144946 0.129955 58 15296 47 6.2557e+06 4.02754e+06 820238. 3204.05 6.69 1.2237 1.08295 24072 200857 -1 13367 20 5976 12336 1213598 287081 13.5776 13.5776 -703.77 -13.5776 0 0 1.02849e+06 4017.54 0.43 0.47 0.21 -1 -1 0.43 0.176744 0.160991 1054 979 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_21.v common 22.18 vpr 73.17 MiB 0.08 11088 -1 -1 12 0.98 -1 -1 40252 -1 -1 145 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74924 22 19 1754 1586 1 1213 192 17 17 289 clb auto 35.8 MiB 0.34 9282 25630 4701 19117 1812 73.2 MiB 0.44 0.01 13.2303 -539.699 -13.2303 13.2303 0.94 0.00375922 0.00339981 0.194558 0.17501 60 16285 33 6.55708e+06 4.12398e+06 958460. 3316.47 15.88 1.73445 1.54807 27358 235245 -1 14410 19 6386 13459 1271543 301276 14.0421 14.0421 -737.087 -14.0421 0 0 1.19711e+06 4142.24 0.51 0.49 0.22 -1 -1 0.51 0.184993 0.17002 1115 1035 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_22.v common 15.52 vpr 73.79 MiB 0.08 11520 -1 -1 11 1.02 -1 -1 40432 -1 -1 154 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75560 22 19 1827 1659 1 1262 201 17 17 289 clb auto 36.2 MiB 0.36 9578 29601 5487 21971 2143 73.8 MiB 0.51 0.01 12.8049 -541.082 -12.8049 12.8049 0.93 0.00370457 0.00333704 0.222266 0.198769 62 18741 43 6.55708e+06 4.23247e+06 986792. 3414.50 9.02 1.21596 1.07716 27646 240813 -1 14958 21 7214 14538 1452780 324745 13.5679 13.5679 -792.256 -13.5679 0 0 1.22151e+06 4226.69 0.51 0.51 0.24 -1 -1 0.51 0.186277 0.167785 1169 1089 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_23.v common 19.69 vpr 74.68 MiB 0.09 11584 -1 -1 12 1.10 -1 -1 41696 -1 -1 157 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76472 22 19 1905 1720 1 1323 205 18 18 324 mult_36 auto 36.9 MiB 0.36 9618 35237 7454 25256 2527 74.7 MiB 0.60 0.01 13.1712 -569.094 -13.1712 13.1712 1.12 0.0038165 0.00343965 0.26363 0.235125 64 18210 29 7.67456e+06 4.66464e+06 1.16663e+06 3600.72 12.39 1.9288 1.72025 32132 291232 -1 15889 20 6762 14068 1594216 353446 14.255 14.255 -817.578 -14.255 0 0 1.46385e+06 4518.05 0.64 0.59 0.28 -1 -1 0.64 0.201209 0.1836 1210 1124 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_24.v common 15.61 vpr 74.73 MiB 0.09 11716 -1 -1 12 1.09 -1 -1 41104 -1 -1 163 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76520 22 19 1979 1794 1 1362 211 18 18 324 mult_36 auto 37.2 MiB 0.35 10071 29680 5420 22409 1851 74.7 MiB 0.50 0.01 13.2522 -589.824 -13.2522 13.2522 1.08 0.00392367 0.00348773 0.216257 0.19203 58 19438 45 7.67456e+06 4.73696e+06 1.07356e+06 3313.45 8.57 1.3498 1.19821 30840 265148 -1 16687 26 7812 16645 1987052 480120 14.2112 14.2112 -862.685 -14.2112 0 0 1.34501e+06 4151.27 0.57 0.72 0.24 -1 -1 0.57 0.246514 0.223142 1265 1179 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_25.v common 16.93 vpr 75.43 MiB 0.09 12032 -1 -1 12 1.23 -1 -1 41096 -1 -1 174 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77244 22 19 2073 1871 1 1415 222 18 18 324 clb mult_36 auto 38.0 MiB 0.39 10220 35114 6594 26198 2322 75.4 MiB 0.54 0.01 13.1197 -624.243 -13.1197 13.1197 1.10 0.00370294 0.00326768 0.229371 0.203292 62 20058 46 7.67456e+06 4.86957e+06 1.13028e+06 3488.51 9.52 1.71501 1.52369 31488 277500 -1 16505 22 7470 15715 1480004 340428 14.0029 14.0029 -885.26 -14.0029 0 0 1.39838e+06 4315.99 0.60 0.60 0.27 -1 -1 0.60 0.242828 0.22178 1322 1232 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_26.v common 19.01 vpr 75.81 MiB 0.10 12388 -1 -1 12 1.31 -1 -1 41552 -1 -1 180 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77628 22 19 2130 1928 1 1466 228 18 18 324 clb mult_36 auto 38.2 MiB 0.41 11010 33636 6077 25228 2331 75.8 MiB 0.56 0.01 13.3306 -630.183 -13.3306 13.3306 1.10 0.00443424 0.00401018 0.246818 0.220549 64 19846 43 7.67456e+06 4.9419e+06 1.16663e+06 3600.72 11.46 1.84744 1.64321 32132 291232 -1 17697 20 7323 14813 1507705 343974 14.6946 14.6946 -934.494 -14.6946 0 0 1.46385e+06 4518.05 0.61 0.54 0.28 -1 -1 0.61 0.203462 0.184155 1360 1270 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_27.v common 15.61 vpr 76.30 MiB 0.10 12396 -1 -1 12 1.39 -1 -1 41152 -1 -1 187 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78132 22 19 2238 2019 1 1561 236 18 18 324 clb mult_36 auto 39.1 MiB 0.41 11369 37415 7199 27746 2470 76.3 MiB 0.63 0.01 12.9623 -623.542 -12.9623 12.9623 1.11 0.00480842 0.00431245 0.264922 0.23484 64 21505 42 7.67456e+06 5.42228e+06 1.16663e+06 3600.72 7.52 1.53118 1.36038 32132 291232 -1 18412 31 7839 16024 1947192 483088 14.1842 14.1842 -989.244 -14.1842 0 0 1.46385e+06 4518.05 0.65 0.83 0.29 -1 -1 0.65 0.321641 0.290458 1431 1323 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_28.v common 21.73 vpr 76.88 MiB 0.10 12768 -1 -1 12 1.40 -1 -1 41340 -1 -1 195 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78720 22 19 2299 2080 1 1608 244 19 19 361 clb auto 39.5 MiB 0.43 11553 33772 5783 25994 1995 76.9 MiB 0.57 0.01 13.3505 -671.599 -13.3505 13.3505 1.29 0.00494046 0.00449215 0.23651 0.211528 66 21200 32 8.02416e+06 5.51872e+06 1.35166e+06 3744.22 13.37 1.9703 1.74676 36038 336821 -1 18313 19 7949 16833 1640402 364735 13.7768 13.7768 -918.293 -13.7768 0 0 1.68635e+06 4671.32 0.76 0.63 0.32 -1 -1 0.76 0.236773 0.215351 1473 1365 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_29.v common 20.78 vpr 77.33 MiB 0.11 12920 -1 -1 12 1.52 -1 -1 41016 -1 -1 198 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79184 22 19 2400 2164 1 1689 248 22 22 484 mult_36 auto 40.1 MiB 0.45 12423 38370 6936 28884 2550 77.3 MiB 0.62 0.01 12.889 -660.371 -12.889 12.889 1.78 0.00441037 0.0039192 0.248812 0.21894 60 23688 29 1.25085e+07 5.95089e+06 1.69059e+06 3492.95 10.62 1.56764 1.39122 47054 420411 -1 20829 20 9499 19770 2046523 455776 13.8134 13.8134 -1159.24 -13.8134 0 0 2.10969e+06 4358.87 1.00 0.73 0.40 -1 -1 1.00 0.241959 0.22037 1537 1415 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_30.v common 30.33 vpr 77.78 MiB 0.11 13244 -1 -1 12 1.55 -1 -1 41760 -1 -1 209 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79644 22 19 2474 2238 1 1711 259 22 22 484 mult_36 auto 40.3 MiB 0.49 13679 40684 7213 31007 2464 77.8 MiB 0.64 0.01 13.0214 -698.884 -13.0214 13.0214 1.78 0.00496234 0.0044023 0.258842 0.229373 62 24968 42 1.25085e+07 6.0835e+06 1.74100e+06 3597.11 19.98 2.46102 2.17949 47538 430501 -1 20871 19 8547 17697 2184884 460361 14.4638 14.4638 -1024 -14.4638 0 0 2.15309e+06 4448.52 1.00 0.77 0.41 -1 -1 1.00 0.253089 0.229308 1592 1470 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_31.v common 67.22 vpr 78.32 MiB 0.12 13344 -1 -1 12 1.67 -1 -1 42208 -1 -1 218 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80200 22 19 2603 2350 1 1810 268 22 22 484 mult_36 auto 41.1 MiB 0.48 13363 46870 9517 34801 2552 78.3 MiB 0.80 0.01 13.463 -678.773 -13.463 13.463 1.86 0.00567101 0.00498958 0.323752 0.285417 60 24684 35 1.25085e+07 6.19199e+06 1.69059e+06 3492.95 56.63 2.91521 2.5713 47054 420411 -1 21879 20 9718 20128 2072419 467680 14.6162 14.6162 -1065.31 -14.6162 0 0 2.10969e+06 4358.87 0.99 0.71 0.40 -1 -1 0.99 0.248219 0.224948 1684 1549 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_32.v common 23.91 vpr 79.36 MiB 0.12 13400 -1 -1 12 1.70 -1 -1 43216 -1 -1 235 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81260 22 19 2694 2441 1 1869 285 22 22 484 mult_36 auto 42.1 MiB 0.51 14703 48072 9089 36450 2533 79.4 MiB 0.80 0.01 13.3428 -736.209 -13.3428 13.3428 1.88 0.00552294 0.0048058 0.323005 0.28385 60 27180 50 1.25085e+07 6.39692e+06 1.69059e+06 3492.95 13.17 2.12089 1.87218 47054 420411 -1 23561 18 10069 21426 2359232 510010 14.8932 14.8932 -1420.8 -14.8932 0 0 2.10969e+06 4358.87 1.00 0.78 0.39 -1 -1 1.00 0.24602 0.223542 1756 1621 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_33.v common 30.08 vpr 79.90 MiB 0.12 13948 -1 -1 13 1.82 -1 -1 43420 -1 -1 238 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81816 22 19 2787 2517 1 1950 289 22 22 484 mult_36 auto 42.7 MiB 0.51 14619 51859 9957 38852 3050 79.9 MiB 0.85 0.01 13.7529 -733.942 -13.7529 13.7529 1.88 0.00515883 0.00454531 0.333369 0.294464 66 26315 26 1.25085e+07 6.82909e+06 1.84972e+06 3821.73 18.80 2.52887 2.23062 48986 463441 -1 23004 22 10029 20765 2136187 473646 14.7171 14.7171 -1002.31 -14.7171 0 0 2.30827e+06 4769.15 1.11 0.80 0.46 -1 -1 1.11 0.297102 0.267199 1812 1664 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_34.v common 23.51 vpr 79.77 MiB 0.22 14020 -1 -1 13 1.85 -1 -1 43884 -1 -1 240 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81688 22 19 2834 2564 1 1962 291 22 22 484 mult_36 auto 42.6 MiB 0.51 14622 51383 10093 38510 2780 79.8 MiB 0.81 0.02 13.8313 -772.417 -13.8313 13.8313 1.77 0.00585637 0.00528005 0.321375 0.282667 58 27066 43 1.25085e+07 6.8532e+06 1.65337e+06 3416.05 12.39 2.24693 1.98046 46570 411141 -1 24074 25 10124 20710 2410643 547947 15.1535 15.1535 -1283.01 -15.1535 0 0 2.07026e+06 4277.39 0.96 0.95 0.39 -1 -1 0.96 0.345785 0.313503 1840 1692 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_35.v common 25.97 vpr 80.88 MiB 0.13 14328 -1 -1 13 1.87 -1 -1 43820 -1 -1 248 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82816 22 19 2941 2654 1 2054 299 22 22 484 mult_36 auto 44.1 MiB 0.54 15643 57242 11719 42395 3128 80.9 MiB 0.97 0.02 13.8216 -815.5 -13.8216 13.8216 1.86 0.00585906 0.0053039 0.379277 0.332641 64 28853 47 1.25085e+07 6.94964e+06 1.79645e+06 3711.66 14.46 2.40151 2.1119 48502 451691 -1 25158 20 10828 22137 2467851 540153 15.1046 15.1046 -1376.4 -15.1046 0 0 2.25323e+06 4655.43 1.05 0.89 0.43 -1 -1 1.05 0.308054 0.278043 1910 1750 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_36.v common 23.50 vpr 81.39 MiB 0.14 14444 -1 -1 13 2.02 -1 -1 42452 -1 -1 255 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83344 22 19 3011 2724 1 2092 306 22 22 484 mult_36 auto 44.5 MiB 0.54 15961 56956 11395 42317 3244 81.4 MiB 0.96 0.01 13.5344 -814.372 -13.5344 13.5344 1.82 0.00553052 0.00488032 0.377475 0.329441 62 30774 46 1.25085e+07 7.03402e+06 1.74100e+06 3597.11 12.02 2.11981 1.86724 47538 430501 -1 25185 22 10961 22630 2209985 500026 14.744 14.744 -1265.07 -14.744 0 0 2.15309e+06 4448.52 0.98 0.88 0.41 -1 -1 0.98 0.337958 0.305917 1961 1801 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_37.v common 29.45 vpr 81.99 MiB 0.14 14872 -1 -1 13 2.06 -1 -1 42748 -1 -1 267 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83960 22 19 3132 2828 1 2184 319 24 24 576 mult_36 auto 45.1 MiB 0.58 17056 65659 13776 48333 3550 82.0 MiB 1.09 0.02 14.7736 -886.03 -14.7736 14.7736 2.20 0.00631752 0.00571622 0.436672 0.385911 58 32083 50 1.51154e+07 7.57468e+06 1.96475e+06 3411.02 16.46 2.88439 2.55193 55114 488114 -1 27656 21 12171 25435 2792897 623554 15.3354 15.3354 -1441.86 -15.3354 0 0 2.46106e+06 4272.68 1.18 1.02 0.46 -1 -1 1.18 0.347716 0.312447 2045 1872 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_38.v common 32.58 vpr 82.14 MiB 0.15 14848 -1 -1 13 2.21 -1 -1 44848 -1 -1 265 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84116 22 19 3159 2855 1 2196 317 24 24 576 mult_36 auto 45.1 MiB 0.62 16729 59717 12515 44298 2904 82.1 MiB 0.96 0.02 14.3024 -865.198 -14.3024 14.3024 2.21 0.00664454 0.00601316 0.377379 0.332616 60 30375 35 1.51154e+07 7.55058e+06 2.00908e+06 3487.99 19.36 2.07599 1.83293 55690 499183 -1 26362 29 11218 22890 2893497 669181 15.0236 15.0236 -1184.23 -15.0236 0 0 2.50809e+06 4354.32 1.17 1.18 0.48 -1 -1 1.17 0.436311 0.394073 2053 1880 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_39.v common 27.27 vpr 83.21 MiB 0.15 15104 -1 -1 13 2.31 -1 -1 43588 -1 -1 277 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85212 22 19 3284 2963 1 2301 329 24 24 576 mult_36 auto 46.0 MiB 0.64 17649 69564 14570 51090 3904 83.2 MiB 1.16 0.02 14.6335 -942.67 -14.6335 14.6335 2.25 0.00692128 0.00600018 0.45485 0.397887 64 30264 38 1.51154e+07 7.69524e+06 2.13454e+06 3705.80 13.66 2.63901 2.32855 57414 536310 -1 27876 21 11262 23271 2694263 593188 15.2345 15.2345 -1426.66 -15.2345 0 0 2.67880e+06 4650.70 1.28 0.93 0.51 -1 -1 1.28 0.316538 0.28508 2141 1957 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_40.v common 100.78 vpr 83.68 MiB 0.15 15352 -1 -1 13 2.36 -1 -1 45028 -1 -1 285 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85692 22 19 3343 3022 1 2312 337 24 24 576 mult_36 auto 46.4 MiB 0.63 17953 68313 14315 50673 3325 83.7 MiB 1.15 0.02 14.0942 -924.674 -14.0942 14.0942 2.31 0.00604833 0.00536567 0.437901 0.38221 64 32566 41 1.51154e+07 7.79168e+06 2.13454e+06 3705.80 86.86 4.52878 3.97048 57414 536310 -1 28903 21 12101 26107 3169665 692239 14.8642 14.8642 -1489.63 -14.8642 0 0 2.67880e+06 4650.70 1.32 1.07 0.50 -1 -1 1.32 0.332138 0.299716 2181 1997 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_41.v common 27.35 vpr 83.78 MiB 0.15 15512 -1 -1 13 2.53 -1 -1 45416 -1 -1 297 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85788 22 19 3448 3110 1 2410 350 24 24 576 mult_36 auto 47.0 MiB 0.66 18100 62000 11138 47624 3238 83.8 MiB 1.05 0.02 14.3636 -948.62 -14.3636 14.3636 2.32 0.00713418 0.00644727 0.401908 0.354363 64 32476 34 1.51154e+07 8.33234e+06 2.13454e+06 3705.80 13.31 2.29015 2.01791 57414 536310 -1 29093 19 11687 24632 2750553 604813 15.0848 15.0848 -1726.05 -15.0848 0 0 2.67880e+06 4650.70 1.23 1.00 0.53 -1 -1 1.23 0.331782 0.30002 2249 2054 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_42.v common 36.94 vpr 84.59 MiB 0.16 15780 -1 -1 13 2.53 -1 -1 43848 -1 -1 296 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86616 22 19 3510 3172 1 2428 349 24 24 576 mult_36 auto 47.2 MiB 0.63 19089 72801 15005 54539 3257 84.0 MiB 1.22 0.02 14.332 -960.946 -14.332 14.332 2.29 0.00724596 0.00626139 0.468717 0.406703 66 33218 28 1.51154e+07 8.32028e+06 2.19797e+06 3815.93 22.74 3.13266 2.75968 57990 550195 -1 29510 17 11792 24163 2685685 566716 15.3032 15.3032 -1414.87 -15.3032 0 0 2.74415e+06 4764.15 1.35 0.94 0.53 -1 -1 1.35 0.324448 0.295423 2292 2097 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_43.v common 32.54 vpr 84.45 MiB 0.16 15940 -1 -1 13 2.56 -1 -1 41916 -1 -1 307 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86480 22 19 3598 3243 1 2500 360 24 24 576 mult_36 auto 47.7 MiB 0.69 20279 77160 16646 56944 3570 84.5 MiB 1.27 0.02 14.9254 -1018.52 -14.9254 14.9254 2.18 0.00860535 0.00778675 0.484985 0.424529 62 38800 49 1.51154e+07 8.45288e+06 2.06880e+06 3591.66 18.30 3.14908 2.78504 56266 511197 -1 31013 19 13179 27554 2975736 651510 15.6858 15.6858 -1492.92 -15.6858 0 0 2.55996e+06 4444.37 1.25 1.10 0.48 -1 -1 1.25 0.372137 0.334898 2343 2138 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_44.v common 27.59 vpr 85.76 MiB 0.16 16080 -1 -1 13 2.73 -1 -1 46040 -1 -1 317 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87820 22 19 3689 3334 1 2572 370 24 24 576 mult_36 auto 48.7 MiB 0.69 19622 74682 15649 55294 3739 85.8 MiB 1.29 0.02 13.866 -1071.6 -13.866 13.866 2.24 0.00715829 0.00645418 0.487055 0.42352 66 33526 43 1.51154e+07 8.57344e+06 2.19797e+06 3815.93 12.98 2.64426 2.33529 57990 550195 -1 30477 18 12300 26425 2477297 547469 15.0976 15.0976 -1773.74 -15.0976 0 0 2.74415e+06 4764.15 1.38 0.95 0.54 -1 -1 1.38 0.355326 0.32186 2415 2210 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_45.v common 28.70 vpr 86.07 MiB 0.17 16436 -1 -1 13 2.92 -1 -1 42404 -1 -1 321 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88132 22 19 3763 3391 1 2638 375 24 24 576 mult_36 auto 48.9 MiB 0.68 19503 80084 17521 59254 3309 86.1 MiB 1.39 0.02 13.9322 -1030.79 -13.9322 13.9322 2.26 0.00825485 0.00701988 0.512719 0.445752 64 35223 30 1.51154e+07 9.01766e+06 2.13454e+06 3705.80 13.77 2.53422 2.21442 57414 536310 -1 31172 20 13597 29172 2770126 617914 14.7832 14.7832 -1586.27 -14.7832 0 0 2.67880e+06 4650.70 1.27 1.07 0.52 -1 -1 1.27 0.397661 0.355415 2452 2234 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_46.v common 28.22 vpr 86.80 MiB 0.18 16612 -1 -1 13 2.90 -1 -1 44076 -1 -1 323 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88880 22 19 3845 3473 1 2666 377 24 24 576 mult_36 auto 49.9 MiB 0.71 19657 83398 18721 61146 3531 86.8 MiB 1.40 0.02 13.9418 -1103.47 -13.9418 13.9418 2.24 0.00831626 0.00715434 0.530421 0.458264 64 34586 31 1.51154e+07 9.04176e+06 2.13454e+06 3705.80 13.34 2.53956 2.2242 57414 536310 -1 30862 21 12720 26766 2773444 610807 14.744 14.744 -1756.99 -14.744 0 0 2.67880e+06 4650.70 1.26 1.02 0.52 -1 -1 1.26 0.372841 0.335214 2515 2297 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_47.v common 39.90 vpr 90.22 MiB 0.19 16840 -1 -1 13 3.07 -1 -1 46108 -1 -1 337 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92384 22 19 3983 3594 1 2790 391 24 24 576 clb mult_36 auto 51.0 MiB 0.73 21210 86131 18848 62704 4579 88.0 MiB 1.50 0.03 14.2998 -1059.64 -14.2998 14.2998 2.26 0.00761742 0.00674358 0.549558 0.480009 72 35782 29 1.51154e+07 9.21054e+06 2.36234e+06 4101.29 24.19 3.63603 3.17105 60290 598391 -1 32688 19 14413 31292 3180308 688967 14.933 14.933 -1471.64 -14.933 0 0 2.95021e+06 5121.89 1.47 1.14 0.60 -1 -1 1.47 0.396162 0.355034 2616 2386 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_48.v common 34.09 vpr 88.12 MiB 0.19 17152 -1 -1 13 3.13 -1 -1 42312 -1 -1 341 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90232 22 19 4025 3636 1 2807 395 24 24 576 clb mult_36 auto 51.0 MiB 0.74 22103 80035 15818 60501 3716 88.1 MiB 1.35 0.02 14.1939 -1143.01 -14.1939 14.1939 2.27 0.00757425 0.0067688 0.492425 0.430919 66 39165 36 1.51154e+07 9.25876e+06 2.19797e+06 3815.93 18.73 3.27254 2.87362 57990 550195 -1 34215 20 14434 30025 2913070 627641 14.852 14.852 -1793.18 -14.852 0 0 2.74415e+06 4764.15 1.32 1.14 0.53 -1 -1 1.32 0.433865 0.394408 2639 2409 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_49.v common 29.21 vpr 88.29 MiB 0.19 17312 -1 -1 13 3.31 -1 -1 46916 -1 -1 355 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90408 22 19 4164 3758 1 2908 410 25 25 625 clb auto 51.5 MiB 0.79 22465 87164 17601 64936 4627 88.3 MiB 1.47 0.02 15.0628 -1152.86 -15.0628 15.0628 2.43 0.00905421 0.00820921 0.538049 0.468754 66 38516 33 1.55855e+07 9.82352e+06 2.39749e+06 3835.99 12.81 2.86253 2.53064 62708 601000 -1 34390 19 13903 29181 2846227 619212 15.7448 15.7448 -1706.4 -15.7448 0 0 2.99279e+06 4788.46 1.50 1.12 0.57 -1 -1 1.50 0.438056 0.398435 2741 2498 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_50.v common 44.57 vpr 94.19 MiB 0.19 17704 -1 -1 13 3.20 -1 -1 42624 -1 -1 356 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96448 22 19 4190 3784 1 2926 411 25 25 625 clb auto 52.0 MiB 0.77 22650 93558 20905 68466 4187 89.0 MiB 1.62 0.03 14.2699 -1166.46 -14.2699 14.2699 2.47 0.00945423 0.00785028 0.597834 0.513345 70 36850 23 1.55855e+07 9.83558e+06 2.52006e+06 4032.10 28.21 4.276 3.75444 64580 638411 -1 34382 20 13537 28535 3036570 650347 15.2345 15.2345 -2256.48 -15.2345 0 0 3.16512e+06 5064.19 1.54 1.15 0.57 -1 -1 1.54 0.440702 0.397988 2748 2505 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_51.v common 44.79 vpr 89.70 MiB 0.20 17724 -1 -1 13 3.42 -1 -1 43280 -1 -1 366 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91856 22 19 4305 3882 1 2980 421 25 25 625 clb auto 52.8 MiB 0.82 24057 98195 22918 70989 4288 89.7 MiB 1.72 0.03 14.6116 -1225.86 -14.6116 14.6116 2.36 0.00910213 0.00809942 0.629135 0.542543 66 42452 48 1.55855e+07 9.95613e+06 2.39749e+06 3835.99 27.95 3.18936 2.78173 62708 601000 -1 37068 18 15463 33440 3487366 735212 15.1412 15.1412 -1861.09 -15.1412 0 0 2.99279e+06 4788.46 1.52 1.23 0.60 -1 -1 1.52 0.417017 0.374286 2826 2571 -1 -1 -1 -1 -k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_52.v common 31.59 vpr 90.21 MiB 0.20 18148 -1 -1 13 3.53 -1 -1 47372 -1 -1 370 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92380 22 19 4363 3940 1 3039 425 25 25 625 clb auto 53.1 MiB 0.83 23986 94648 20880 69413 4355 90.2 MiB 1.51 0.03 15.0654 -1226.59 -15.0654 15.0654 2.34 0.00890658 0.00759905 0.536943 0.465522 70 40013 30 1.55855e+07 1.00044e+07 2.52006e+06 4032.10 14.77 2.85324 2.51435 64580 638411 -1 36636 19 14360 30144 3065081 667308 15.8355 15.8355 -2098.52 -15.8355 0 0 3.16512e+06 5064.19 1.54 1.13 0.62 -1 -1 1.54 0.406916 0.36593 2865 2610 -1 -1 -1 -1 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_14.v common 8.61 vpr 74.01 MiB 0.07 10532 -1 -1 1 0.26 -1 -1 39632 -1 -1 125 22 0 4 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75788 22 19 1974 1653 1 1039 170 16 16 256 mult_36 auto 36.3 MiB 0.41 6502 23200 4335 16600 2265 74.0 MiB 0.38 0.01 3.88056 -1078.75 -3.88056 3.88056 0.81 0.00302094 0.00266418 0.152768 0.135449 44 12993 32 6.32612e+06 3.15375e+06 649498. 2537.10 3.82 0.862111 0.759172 22336 155612 -1 9404 17 3341 4292 640736 163319 4.36136 4.36136 -1271.75 -4.36136 0 0 820238. 3204.05 0.35 0.27 0.15 -1 -1 0.35 0.127231 0.115433 955 649 247 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_15.v common 8.51 vpr 74.69 MiB 0.07 10912 -1 -1 1 0.28 -1 -1 40464 -1 -1 134 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76484 22 19 2144 1789 1 1138 180 16 16 256 clb mult_36 auto 37.2 MiB 0.45 7245 26088 5116 18249 2723 74.7 MiB 0.43 0.01 3.88056 -1177.04 -3.88056 3.88056 0.82 0.00303247 0.00271653 0.17142 0.152275 46 13134 50 6.32612e+06 3.66277e+06 684529. 2673.94 3.54 0.879848 0.775485 22592 160355 -1 10087 15 3471 4120 576924 146615 4.36136 4.36136 -1323.76 -4.36136 0 0 838722. 3276.26 0.36 0.27 0.16 -1 -1 0.36 0.130492 0.118419 1035 704 266 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_16.v common 8.01 vpr 75.33 MiB 0.07 11224 -1 -1 1 0.30 -1 -1 40164 -1 -1 139 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77140 22 19 2218 1846 1 1177 185 16 16 256 clb mult_36 auto 37.7 MiB 0.45 6992 22277 3501 16397 2379 75.3 MiB 0.38 0.01 3.76036 -1246.15 -3.76036 3.76036 0.84 0.00324872 0.00289548 0.150898 0.134213 44 13367 31 6.32612e+06 3.72556e+06 649498. 2537.10 3.15 0.779021 0.687738 22336 155612 -1 9830 14 3513 4231 566237 143320 4.24116 4.24116 -1411.55 -4.24116 0 0 820238. 3204.05 0.33 0.24 0.15 -1 -1 0.33 0.119294 0.107996 1073 723 285 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_17.v common 13.05 vpr 76.85 MiB 0.08 11828 -1 -1 1 0.33 -1 -1 40540 -1 -1 159 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78692 22 19 2536 2130 1 1298 205 17 17 289 clb auto 39.8 MiB 0.49 8211 35841 7056 25342 3443 76.8 MiB 0.58 0.01 4.12096 -1390.48 -4.12096 4.12096 0.94 0.00344989 0.00304579 0.228749 0.20101 48 13786 32 6.64007e+06 3.97672e+06 816265. 2824.45 7.30 1.31311 1.15329 25714 189529 -1 11430 13 3793 5050 674635 169766 4.36136 4.36136 -1587.67 -4.36136 0 0 986792. 3414.50 0.43 0.27 0.19 -1 -1 0.43 0.129079 0.117418 1228 851 304 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_18.v common 10.81 vpr 77.25 MiB 0.09 12116 -1 -1 1 0.35 -1 -1 40552 -1 -1 165 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79108 22 19 2610 2187 1 1336 211 17 17 289 clb auto 40.1 MiB 0.51 8404 37204 7607 26089 3508 77.3 MiB 0.60 0.01 4.00076 -1396.4 -4.00076 4.00076 0.93 0.00376726 0.00335231 0.233357 0.205778 48 13820 35 6.64007e+06 4.05207e+06 816265. 2824.45 4.99 1.2116 1.06703 25714 189529 -1 11635 17 4022 4837 818724 203086 4.24116 4.24116 -1617.77 -4.24116 0 0 986792. 3414.50 0.41 0.36 0.18 -1 -1 0.41 0.172892 0.15724 1266 870 323 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_19.v common 11.05 vpr 78.55 MiB 0.09 12460 -1 -1 1 0.36 -1 -1 40592 -1 -1 174 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80432 22 19 2778 2321 1 1434 221 18 18 324 clb auto 41.3 MiB 0.58 8888 42909 9627 29254 4028 78.5 MiB 0.69 0.01 4.00076 -1503.66 -4.00076 4.00076 1.16 0.0036029 0.00317771 0.271331 0.239544 44 16441 43 7.77114e+06 4.56109e+06 850563. 2625.19 4.56 1.1387 1.00155 28700 205432 -1 12481 15 4400 5575 824071 206880 4.36136 4.36136 -1744.48 -4.36136 0 0 1.07356e+06 3313.45 0.44 0.33 0.19 -1 -1 0.44 0.156023 0.140839 1344 925 342 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_20.v common 11.86 vpr 78.61 MiB 0.09 12440 -1 -1 1 0.38 -1 -1 40448 -1 -1 178 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80492 22 19 2852 2378 1 1479 225 18 18 324 clb auto 41.5 MiB 0.62 8770 42633 8727 30229 3677 78.6 MiB 0.71 0.01 3.88056 -1517.78 -3.88056 3.88056 1.11 0.00400638 0.00355743 0.273412 0.241846 46 16363 43 7.77114e+06 4.61132e+06 895831. 2764.91 5.31 1.28841 1.13756 29024 211752 -1 12643 16 4417 5500 674101 171153 4.36136 4.36136 -1745.9 -4.36136 0 0 1.09776e+06 3388.15 0.47 0.31 0.20 -1 -1 0.47 0.160482 0.144846 1382 944 361 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_21.v common 16.80 vpr 80.03 MiB 0.10 12984 -1 -1 1 0.40 -1 -1 41532 -1 -1 190 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81952 22 19 3057 2549 1 1586 237 18 18 324 clb auto 42.5 MiB 0.63 10740 46416 10026 32673 3717 80.0 MiB 0.77 0.01 4.00076 -1726.53 -4.00076 4.00076 1.10 0.00382178 0.00336342 0.291213 0.255013 50 17456 26 7.77114e+06 4.76202e+06 975281. 3010.13 9.84 1.83768 1.60617 29672 225968 -1 14378 15 4846 5985 813071 197795 4.36136 4.36136 -1902.91 -4.36136 0 0 1.16663e+06 3600.72 0.52 0.36 0.21 -1 -1 0.52 0.179178 0.161999 1479 1017 380 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_22.v common 15.60 vpr 80.55 MiB 0.09 13136 -1 -1 1 0.42 -1 -1 40912 -1 -1 196 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82480 22 19 3131 2606 1 1626 243 19 19 361 clb auto 43.2 MiB 0.61 11347 46481 9585 33107 3789 80.5 MiB 0.77 0.01 4.12096 -1756.56 -4.12096 4.12096 1.25 0.00444758 0.00390033 0.299357 0.265911 48 19250 35 8.13532e+06 4.83737e+06 1.05176e+06 2913.46 8.45 1.5036 1.32208 32602 246183 -1 15643 13 4920 6187 916842 214351 4.36136 4.36136 -1999.1 -4.36136 0 0 1.27108e+06 3521.00 0.55 0.38 0.23 -1 -1 0.55 0.170763 0.153567 1517 1036 399 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_23.v common 17.76 vpr 81.42 MiB 0.11 13408 -1 -1 1 0.45 -1 -1 42680 -1 -1 206 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83376 22 19 3301 2742 1 1720 254 19 19 361 clb auto 44.1 MiB 0.66 11396 55730 12189 39140 4401 81.4 MiB 0.96 0.01 3.88056 -1826.69 -3.88056 3.88056 1.29 0.00503564 0.00449233 0.368425 0.32784 52 19130 40 8.13532e+06 5.35895e+06 1.12439e+06 3114.66 9.99 1.97712 1.75233 33682 269119 -1 15247 17 4897 6182 855926 205544 4.24116 4.24116 -2117.9 -4.24116 0 0 1.38329e+06 3831.84 0.60 0.39 0.25 -1 -1 0.60 0.199394 0.17909 1597 1091 418 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_24.v common 18.31 vpr 81.55 MiB 0.11 13836 -1 -1 1 0.46 -1 -1 42184 -1 -1 211 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83508 22 19 3375 2799 1 1765 259 19 19 361 clb auto 44.1 MiB 0.66 11548 49759 9812 36031 3916 81.6 MiB 0.86 0.01 4.00076 -1890.48 -4.00076 4.00076 1.25 0.00454541 0.00399408 0.314749 0.276032 54 18540 21 8.13532e+06 5.42174e+06 1.15452e+06 3198.10 10.63 2.04576 1.7952 34042 276675 -1 15358 17 4689 5861 785847 187050 4.36136 4.36136 -2197.08 -4.36136 0 0 1.41983e+06 3933.05 0.63 0.39 0.26 -1 -1 0.63 0.212232 0.192179 1635 1110 437 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_25.v common 14.98 vpr 83.05 MiB 0.11 14340 -1 -1 1 0.50 -1 -1 42300 -1 -1 225 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85044 22 19 3615 3005 1 1878 273 20 20 400 clb auto 46.0 MiB 0.71 12994 54258 10466 39456 4336 83.1 MiB 0.94 0.01 4.00076 -2084.39 -4.00076 4.00076 1.39 0.0050175 0.00445775 0.343247 0.302214 50 21562 20 1.10386e+07 5.59755e+06 1.21483e+06 3037.08 6.64 1.58429 1.39625 36870 282114 -1 17902 15 5929 7599 1050121 247462 4.36136 4.36136 -2431.61 -4.36136 0 0 1.45344e+06 3633.59 0.65 0.46 0.26 -1 -1 0.65 0.224251 0.204182 1749 1201 456 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_26.v common 15.93 vpr 83.38 MiB 0.12 14288 -1 -1 1 0.51 -1 -1 41900 -1 -1 230 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85376 22 19 3689 3062 1 1918 278 20 20 400 clb auto 46.2 MiB 0.71 12575 61954 12536 44219 5199 83.4 MiB 1.02 0.01 3.88056 -2076.55 -3.88056 3.88056 1.44 0.00501846 0.00441236 0.372801 0.326954 46 23368 47 1.10386e+07 5.66034e+06 1.11552e+06 2788.80 7.41 1.67448 1.46772 36070 264401 -1 17507 16 5993 7956 1006436 244661 4.36136 4.36136 -2383.13 -4.36136 0 0 1.36764e+06 3419.10 0.63 0.47 0.25 -1 -1 0.63 0.234255 0.212358 1787 1220 475 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_27.v common 35.42 vpr 84.48 MiB 0.12 14812 -1 -1 1 0.54 -1 -1 42840 -1 -1 242 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86508 22 19 3871 3210 1 2023 291 21 21 441 clb auto 47.5 MiB 0.74 13778 69699 14883 49227 5589 84.5 MiB 1.17 0.02 4.00076 -2191.82 -4.00076 4.00076 1.63 0.00530321 0.00467223 0.427053 0.376744 48 23867 30 1.14404e+07 6.20704e+06 1.29409e+06 2934.45 26.05 2.58494 2.25963 40046 303487 -1 19601 17 6440 8172 1245227 285518 4.48156 4.48156 -2564.33 -4.48156 0 0 1.56480e+06 3548.29 0.69 0.53 0.28 -1 -1 0.69 0.243413 0.219264 1879 1275 494 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_28.v common 33.66 vpr 85.17 MiB 0.12 14676 -1 -1 1 0.57 -1 -1 42344 -1 -1 247 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87212 22 19 3945 3267 1 2070 296 21 21 441 clb auto 48.3 MiB 0.76 13590 62414 12271 45436 4707 85.2 MiB 1.09 0.02 3.88056 -2190.79 -3.88056 3.88056 1.65 0.00553151 0.00490434 0.382423 0.336461 50 23190 45 1.14404e+07 6.26983e+06 1.34972e+06 3060.59 24.38 2.72177 2.37181 40486 313801 -1 18968 16 6205 7941 1089968 261420 4.36136 4.36136 -2560.77 -4.36136 0 0 1.61476e+06 3661.58 0.70 0.45 0.30 -1 -1 0.70 0.221877 0.20018 1917 1294 513 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_29.v common 21.52 vpr 86.66 MiB 0.15 15096 -1 -1 1 0.60 -1 -1 42312 -1 -1 260 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88744 22 19 4159 3447 1 2186 310 22 22 484 mult_36 auto 49.5 MiB 0.84 15353 79958 17053 56673 6232 86.7 MiB 1.36 0.02 3.88056 -2266.17 -3.88056 3.88056 1.83 0.00611376 0.0054432 0.491508 0.433189 48 25856 34 1.26594e+07 6.82908e+06 1.44011e+06 2975.42 11.14 2.14134 1.88154 44390 338934 -1 21549 14 6775 8741 1304676 295332 4.36136 4.36136 -2705.7 -4.36136 0 0 1.74100e+06 3597.11 0.83 0.54 0.31 -1 -1 0.83 0.247575 0.22505 2023 1367 532 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_30.v common 22.40 vpr 86.93 MiB 0.13 15252 -1 -1 1 0.61 -1 -1 44744 -1 -1 265 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89020 22 19 4233 3504 1 2225 315 22 22 484 mult_36 auto 49.9 MiB 0.87 15841 74214 15338 52474 6402 86.9 MiB 1.26 0.02 3.88056 -2320.72 -3.88056 3.88056 1.85 0.00587516 0.00520692 0.443016 0.390904 48 26732 29 1.26594e+07 6.89187e+06 1.44011e+06 2975.42 11.80 2.0874 1.83573 44390 338934 -1 22044 17 7172 8930 1480536 341569 4.48156 4.48156 -2846.22 -4.48156 0 0 1.74100e+06 3597.11 0.83 0.63 0.31 -1 -1 0.83 0.286873 0.260477 2061 1386 551 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_31.v common 26.73 vpr 87.86 MiB 0.13 15632 -1 -1 1 0.62 -1 -1 43768 -1 -1 276 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89972 22 19 4410 3647 1 2335 326 22 22 484 clb mult_36 auto 51.1 MiB 0.85 16676 77675 17209 54692 5774 87.9 MiB 1.32 0.02 4.00076 -2464.46 -4.00076 4.00076 1.76 0.00633083 0.00564449 0.472929 0.418964 54 26858 22 1.26594e+07 7.03001e+06 1.58090e+06 3266.32 16.29 2.78965 2.4577 46322 380746 -1 22115 14 6742 8322 1466165 330088 4.48156 4.48156 -2937.52 -4.48156 0 0 1.94386e+06 4016.24 0.93 0.56 0.36 -1 -1 0.93 0.243661 0.220594 2148 1441 570 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_32.v common 19.07 vpr 88.04 MiB 0.14 15704 -1 -1 1 0.64 -1 -1 44760 -1 -1 280 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90152 22 19 4484 3704 1 2374 330 22 22 484 clb mult_36 auto 51.4 MiB 0.88 16730 69809 12918 51951 4940 88.0 MiB 1.22 0.02 4.00076 -2487.53 -4.00076 4.00076 1.82 0.00632031 0.00559839 0.42158 0.37296 50 29674 45 1.26594e+07 7.08024e+06 1.50222e+06 3103.76 8.49 2.10121 1.84997 44874 350400 -1 23070 17 7455 9281 1425274 322420 4.60176 4.60176 -3013.72 -4.60176 0 0 1.79645e+06 3711.66 0.84 0.63 0.32 -1 -1 0.84 0.306845 0.277509 2186 1460 589 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_33.v common 29.58 vpr 89.76 MiB 0.16 16684 -1 -1 1 0.73 -1 -1 44988 -1 -1 304 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91912 22 19 4843 4029 1 2501 355 23 23 529 clb auto 53.0 MiB 0.96 17782 95811 22408 66843 6560 89.8 MiB 1.71 0.02 4.00076 -2779.41 -4.00076 4.00076 2.01 0.00721275 0.00646157 0.603008 0.532774 54 29517 34 1.31115e+07 7.77763e+06 1.73850e+06 3286.39 17.60 2.99149 2.62743 50466 419205 -1 23437 17 7140 8842 1299918 295956 4.48156 4.48156 -3471.15 -4.48156 0 0 2.13727e+06 4040.20 1.00 0.59 0.39 -1 -1 1.00 0.30699 0.277365 2364 1606 608 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_34.v common 21.71 vpr 90.61 MiB 0.17 16872 -1 -1 1 0.75 -1 -1 44908 -1 -1 309 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92788 22 19 4917 4086 1 2542 360 23 23 529 clb auto 53.8 MiB 0.92 16937 92520 19762 66737 6021 90.6 MiB 1.50 0.02 4.00076 -2782.69 -4.00076 4.00076 2.03 0.00626046 0.00542362 0.51401 0.448407 50 29627 36 1.31115e+07 7.84042e+06 1.65241e+06 3123.66 9.90 2.44195 2.1276 48882 385791 -1 23528 16 8073 10385 1545524 354553 4.48156 4.48156 -3243.69 -4.48156 0 0 1.97533e+06 3734.07 0.97 0.65 0.35 -1 -1 0.97 0.301999 0.271715 2402 1625 627 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_35.v common 27.69 vpr 91.27 MiB 0.17 17488 -1 -1 1 0.79 -1 -1 45996 -1 -1 320 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93464 22 19 5093 4228 1 2643 371 23 23 529 clb auto 54.5 MiB 0.98 20181 104267 24008 73339 6920 91.3 MiB 1.80 0.02 4.12096 -3042.79 -4.12096 4.12096 2.10 0.00689546 0.00605968 0.602166 0.530744 54 34259 46 1.31115e+07 7.97856e+06 1.73850e+06 3286.39 15.21 2.76925 2.42057 50466 419205 -1 27205 15 8331 10425 1693655 380668 4.48156 4.48156 -3510.28 -4.48156 0 0 2.13727e+06 4040.20 1.00 0.65 0.39 -1 -1 1.00 0.287152 0.257887 2488 1680 646 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_36.v common 20.32 vpr 91.90 MiB 0.17 17560 -1 -1 1 0.82 -1 -1 45240 -1 -1 324 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94108 22 19 5167 4285 1 2691 375 23 23 529 clb auto 55.2 MiB 1.05 18382 100349 22605 70425 7319 91.9 MiB 1.65 0.02 3.88056 -2924.6 -3.88056 3.88056 2.01 0.00783973 0.00702522 0.557782 0.486325 52 30977 40 1.31115e+07 8.02879e+06 1.69338e+06 3201.10 7.99 2.20743 1.9265 49938 407647 -1 24844 17 8141 10170 1583958 380237 4.36136 4.36136 -3567.75 -4.36136 0 0 2.08190e+06 3935.53 0.98 0.68 0.38 -1 -1 0.98 0.328821 0.296208 2526 1699 665 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_37.v common 31.12 vpr 93.00 MiB 0.18 17924 -1 -1 1 0.90 -1 -1 44428 -1 -1 337 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95236 22 19 5380 4464 1 2808 389 24 24 576 clb mult_36 auto 56.5 MiB 1.12 19942 103976 22183 73759 8034 93.0 MiB 1.78 0.02 4.00076 -3061.06 -4.00076 4.00076 2.32 0.00704658 0.00612781 0.594661 0.517749 50 32777 32 1.52924e+07 8.58805e+06 1.78400e+06 3097.22 17.72 3.25246 2.85069 53074 415989 -1 27317 15 8570 10688 1764081 421975 4.48156 4.48156 -3663.13 -4.48156 0 0 2.13454e+06 3705.80 1.01 0.73 0.38 -1 -1 1.01 0.329222 0.297157 2631 1772 684 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_38.v common 36.07 vpr 93.58 MiB 0.19 17884 -1 -1 1 0.90 -1 -1 44680 -1 -1 343 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95828 22 19 5454 4521 1 2849 395 24 24 576 clb mult_36 auto 56.9 MiB 1.11 22150 107547 23952 76596 6999 93.6 MiB 1.93 0.02 4.24116 -3279.46 -4.24116 4.24116 2.36 0.00726837 0.00633933 0.626693 0.553857 54 38492 49 1.52924e+07 8.66339e+06 1.87785e+06 3260.16 22.38 3.46011 3.0404 54798 452027 -1 30003 14 8752 11060 1718689 374877 4.72196 4.72196 -3772.72 -4.72196 0 0 2.31032e+06 4010.97 1.14 0.68 0.42 -1 -1 1.14 0.314975 0.284905 2669 1791 703 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_39.v common 33.00 vpr 94.35 MiB 0.19 18312 -1 -1 1 0.89 -1 -1 44684 -1 -1 353 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96616 22 19 5629 4662 1 2951 405 25 25 625 clb auto 57.6 MiB 1.21 21250 114177 27056 79351 7770 94.4 MiB 1.97 0.03 4.00076 -3243.31 -4.00076 4.00076 2.51 0.00777471 0.00696548 0.651144 0.571183 50 38230 46 1.57822e+07 8.78897e+06 1.94653e+06 3114.45 18.73 3.07531 2.68589 57408 454416 -1 29339 14 9162 11667 1682293 387299 4.60176 4.60176 -3843.03 -4.60176 0 0 2.32897e+06 3726.35 1.11 0.68 0.42 -1 -1 1.11 0.325412 0.294919 2754 1846 722 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_40.v common 33.03 vpr 94.50 MiB 0.18 18444 -1 -1 1 0.92 -1 -1 46212 -1 -1 358 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96772 22 19 5703 4719 1 2994 410 25 25 625 clb auto 58.0 MiB 1.20 21312 114560 26562 80700 7298 94.5 MiB 1.96 0.02 4.24116 -3330.2 -4.24116 4.24116 2.42 0.00741164 0.00650029 0.642267 0.561356 56 31808 23 1.57822e+07 8.85176e+06 2.10056e+06 3360.90 18.73 3.13579 2.75263 59904 506958 -1 28630 14 8805 11217 1489603 352324 4.48156 4.48156 -3762.14 -4.48156 0 0 2.57664e+06 4122.63 1.23 0.68 0.47 -1 -1 1.23 0.332595 0.300911 2792 1865 741 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_41.v common 27.56 vpr 96.05 MiB 0.19 18920 -1 -1 1 0.98 -1 -1 45248 -1 -1 374 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98356 22 19 5950 4932 1 3111 427 25 25 625 clb auto 59.4 MiB 1.29 22701 130594 31285 91642 7667 96.1 MiB 2.24 0.03 4.00076 -3453.96 -4.00076 4.00076 2.40 0.00804486 0.00708981 0.719572 0.629312 54 36655 28 1.57822e+07 9.44869e+06 2.04878e+06 3278.05 12.71 3.06679 2.69109 59280 493784 -1 29785 13 8896 11555 1612690 380460 4.48156 4.48156 -4046.2 -4.48156 0 0 2.52006e+06 4032.10 1.29 0.73 0.46 -1 -1 1.29 0.358278 0.326749 2913 1956 760 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_42.v common 26.14 vpr 96.58 MiB 0.19 19284 -1 -1 1 1.01 -1 -1 46824 -1 -1 377 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98896 22 19 6024 4989 1 3151 430 25 25 625 clb auto 59.8 MiB 1.26 22708 126946 29293 87852 9801 96.6 MiB 2.15 0.03 4.12096 -3467.44 -4.12096 4.12096 2.39 0.00823436 0.00727291 0.700025 0.610211 54 35185 24 1.57822e+07 9.48637e+06 2.04878e+06 3278.05 11.36 2.94229 2.57971 59280 493784 -1 30096 14 8999 11448 1605430 375027 4.48156 4.48156 -4189.78 -4.48156 0 0 2.52006e+06 4032.10 1.24 0.72 0.46 -1 -1 1.24 0.35577 0.32206 2951 1975 779 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_43.v common 24.61 vpr 98.02 MiB 0.21 19560 -1 -1 1 1.04 -1 -1 46220 -1 -1 389 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100376 22 19 6198 5129 1 3252 442 25 25 625 clb auto 61.4 MiB 1.37 22631 141814 34568 96323 10923 98.0 MiB 2.43 0.03 4.24116 -3592.24 -4.24116 4.24116 2.44 0.00841299 0.00742758 0.777688 0.68354 52 37054 32 1.57822e+07 9.63706e+06 1.99531e+06 3192.49 9.24 2.81133 2.47908 58656 480125 -1 30518 11 9231 11908 1688948 392509 4.84216 4.84216 -4150.14 -4.84216 0 0 2.45448e+06 3927.17 1.28 0.69 0.45 -1 -1 1.28 0.319812 0.291319 3035 2030 798 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_44.v common 37.78 vpr 97.75 MiB 0.22 19572 -1 -1 1 1.04 -1 -1 47480 -1 -1 394 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100096 22 19 6272 5186 1 3297 447 26 26 676 clb auto 61.2 MiB 1.30 22311 135379 32593 94809 7977 97.8 MiB 2.37 0.03 4.12096 -3528.69 -4.12096 4.12096 2.69 0.00856899 0.00757893 0.748725 0.660691 52 40429 49 1.91291e+07 9.69985e+06 2.20423e+06 3260.69 21.54 3.55664 3.09992 65116 533202 -1 31084 14 9896 12723 1977772 456369 4.60176 4.60176 -4156.9 -4.60176 0 0 2.70930e+06 4007.84 1.33 0.79 0.48 -1 -1 1.33 0.348181 0.312953 3073 2049 817 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_45.v common 42.98 vpr 99.16 MiB 0.20 20056 -1 -1 1 1.12 -1 -1 47532 -1 -1 407 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101540 22 19 6485 5365 1 3415 461 26 26 676 clb auto 62.5 MiB 1.31 23798 155321 39059 106682 9580 99.1 MiB 2.71 0.03 4.00076 -3747.68 -4.00076 4.00076 2.71 0.00883931 0.00781309 0.849946 0.743097 56 36820 33 1.91291e+07 1.02591e+07 2.31971e+06 3431.53 26.31 4.46286 3.89023 66468 563034 -1 32690 14 9793 12718 1831643 436190 4.60176 4.60176 -4567.19 -4.60176 0 0 2.84390e+06 4206.95 1.36 0.83 0.52 -1 -1 1.36 0.401175 0.363987 3178 2122 836 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_46.v common 37.29 vpr 99.71 MiB 0.21 20428 -1 -1 1 1.11 -1 -1 47684 -1 -1 412 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102104 22 19 6559 5422 1 3449 466 26 26 676 clb auto 63.0 MiB 1.23 23654 152170 37808 104725 9637 99.7 MiB 2.73 0.03 4.00076 -3699 -4.00076 4.00076 2.77 0.00982079 0.00878635 0.859653 0.753705 54 37103 24 1.91291e+07 1.03219e+07 2.26288e+06 3347.46 21.00 3.88133 3.41174 65792 548382 -1 31520 14 9554 12504 1800212 425394 4.48156 4.48156 -4340.56 -4.48156 0 0 2.78165e+06 4114.86 1.19 0.73 0.51 -1 -1 1.19 0.336823 0.299064 3216 2141 855 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_47.v common 43.41 vpr 101.09 MiB 0.22 20464 -1 -1 1 1.16 -1 -1 47704 -1 -1 422 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103516 22 19 6735 5564 1 3561 476 26 26 676 clb auto 64.7 MiB 1.31 27307 145322 35018 100616 9688 101.1 MiB 2.53 0.03 4.12096 -3880.21 -4.12096 4.12096 2.79 0.00862874 0.00756287 0.802235 0.704498 56 43715 40 1.91291e+07 1.04475e+07 2.31971e+06 3431.53 26.66 3.58106 3.12009 66468 563034 -1 36773 15 11072 14610 2195004 491299 4.60176 4.60176 -4642.52 -4.60176 0 0 2.84390e+06 4206.95 1.40 0.88 0.52 -1 -1 1.40 0.398085 0.358374 3302 2196 874 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_48.v common 38.32 vpr 101.99 MiB 0.23 20912 -1 -1 1 1.18 -1 -1 47624 -1 -1 428 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 104436 22 19 6809 5621 1 3598 482 26 26 676 clb auto 65.5 MiB 1.32 26693 155380 38658 106556 10166 101.1 MiB 2.74 0.03 4.24116 -3950.45 -4.24116 4.24116 2.77 0.00909271 0.00799063 0.857967 0.754611 56 39438 17 1.91291e+07 1.05228e+07 2.31971e+06 3431.53 21.35 3.74726 3.30108 66468 563034 -1 35807 12 10401 13012 1969259 461609 4.72196 4.72196 -4710.69 -4.72196 0 0 2.84390e+06 4206.95 1.37 0.80 0.53 -1 -1 1.37 0.362108 0.326207 3340 2215 893 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_49.v common 43.43 vpr 106.73 MiB 0.23 21172 -1 -1 1 1.23 -1 -1 48368 -1 -1 444 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 109296 22 19 7094 5872 1 3718 499 27 27 729 clb auto 67.4 MiB 1.42 28920 154783 36243 110001 8539 103.6 MiB 2.76 0.03 4.24116 -4208.46 -4.24116 4.24116 3.02 0.010963 0.00983711 0.849321 0.749258 56 45216 25 1.9669e+07 1.11198e+07 2.51142e+06 3445.02 25.44 3.97362 3.4799 71406 610069 -1 39212 15 11359 14594 2348026 514766 4.72196 4.72196 -5018.62 -4.72196 0 0 3.07846e+06 4222.85 1.50 1.01 0.56 -1 -1 1.50 0.465062 0.421811 3481 2324 912 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_50.v common 41.57 vpr 106.45 MiB 0.23 21472 -1 -1 1 1.26 -1 -1 47952 -1 -1 449 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 109004 22 19 7168 5929 1 3755 504 27 27 729 clb auto 67.0 MiB 1.40 27806 166919 40599 116596 9724 103.2 MiB 2.99 0.03 4.12096 -4166.57 -4.12096 4.12096 3.01 0.0106482 0.00950503 0.923149 0.802572 56 41397 24 1.9669e+07 1.11825e+07 2.51142e+06 3445.02 23.58 4.10669 3.59898 71406 610069 -1 37402 16 10952 13701 2027987 468070 4.48156 4.48156 -4864.81 -4.48156 0 0 3.07846e+06 4222.85 1.50 0.91 0.53 -1 -1 1.50 0.462073 0.416257 3519 2343 931 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_51.v common 43.64 vpr 103.84 MiB 0.24 21680 -1 -1 1 1.34 -1 -1 48452 -1 -1 460 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 106332 22 19 7344 6071 1 3863 515 27 27 729 clb auto 68.2 MiB 1.51 29045 175870 42466 123362 10042 103.8 MiB 3.17 0.03 4.12096 -4344.11 -4.12096 4.12096 2.97 0.0110995 0.00996148 0.997094 0.878909 56 44575 27 1.9669e+07 1.13207e+07 2.51142e+06 3445.02 25.08 3.96761 3.47834 71406 610069 -1 39017 12 11553 14943 2352973 533450 4.72196 4.72196 -5481.71 -4.72196 0 0 3.07846e+06 4222.85 1.49 0.88 0.56 -1 -1 1.49 0.375211 0.337162 3605 2398 950 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_52.v common 43.71 vpr 109.27 MiB 0.26 22132 -1 -1 1 1.35 -1 -1 48604 -1 -1 465 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 111892 22 19 7418 6128 1 3909 520 27 27 729 clb auto 68.7 MiB 1.46 29927 180260 45761 124265 10234 104.5 MiB 3.18 0.03 4.12096 -4348.7 -4.12096 4.12096 2.85 0.0103583 0.00917632 0.947274 0.825752 58 44844 32 1.9669e+07 1.13835e+07 2.56250e+06 3515.09 25.21 4.46221 3.90497 72862 642985 -1 39297 12 11098 14140 2080963 463135 4.72196 4.72196 -4968.85 -4.72196 0 0 3.20690e+06 4399.04 1.59 0.87 0.61 -1 -1 1.59 0.39663 0.359884 3643 2417 969 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_14.v common 9.41 vpr 69.39 MiB 0.06 9420 -1 -1 1 0.19 -1 -1 38952 -1 -1 81 22 0 4 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71056 22 19 1246 925 1 736 126 16 16 256 mult_36 auto 31.7 MiB 0.41 4474 23751 5682 14581 3488 69.4 MiB 0.39 0.01 7.40158 -333.219 -7.40158 7.40158 0.80 0.00192135 0.0017318 0.151966 0.136648 38 9076 40 6.32612e+06 2.6012e+06 558663. 2182.28 5.11 0.653842 0.580649 21316 135884 -1 7004 21 4609 5382 871602 229697 7.86499 7.86499 -435.998 -7.86499 0 0 744679. 2908.90 0.29 0.28 0.13 -1 -1 0.29 0.0947737 0.08572 591 285 247 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_15.v common 8.72 vpr 70.45 MiB 0.06 9756 -1 -1 1 0.19 -1 -1 38688 -1 -1 86 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72136 22 19 1344 989 1 796 132 16 16 256 mult_36 auto 32.7 MiB 0.38 4921 21907 5100 14284 2523 70.4 MiB 0.39 0.01 7.40158 -347.009 -7.40158 7.40158 0.80 0.00204237 0.00183931 0.144881 0.130603 40 8807 28 6.32612e+06 3.05999e+06 583096. 2277.72 4.23 0.655817 0.583542 21572 140635 -1 7960 25 6810 7638 1610649 396282 8.35499 8.35499 -470.787 -8.35499 0 0 763333. 2981.77 0.30 0.45 0.14 -1 -1 0.30 0.119215 0.107107 635 304 266 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_16.v common 11.10 vpr 70.47 MiB 0.06 9856 -1 -1 1 0.21 -1 -1 38864 -1 -1 91 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72164 22 19 1418 1046 1 833 137 16 16 256 mult_36 auto 32.8 MiB 0.46 4880 24847 6018 14954 3875 70.5 MiB 0.43 0.01 7.40158 -375.439 -7.40158 7.40158 0.81 0.00219809 0.00198368 0.169623 0.153133 46 8700 28 6.32612e+06 3.12278e+06 684529. 2673.94 6.55 0.988178 0.875921 22592 160355 -1 6927 23 4870 5608 746106 202887 7.43739 7.43739 -505.144 -7.43739 0 0 838722. 3276.26 0.34 0.30 0.15 -1 -1 0.34 0.12339 0.112027 673 323 285 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_17.v common 23.72 vpr 71.32 MiB 0.07 10320 -1 -1 1 0.21 -1 -1 38448 -1 -1 97 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73032 22 19 1518 1112 1 899 143 16 16 256 mult_36 auto 33.5 MiB 0.44 5234 25880 5878 14890 5112 71.3 MiB 0.45 0.01 7.83563 -402.479 -7.83563 7.83563 0.80 0.00233376 0.00210564 0.171937 0.153916 40 10036 31 6.32612e+06 3.19813e+06 583096. 2277.72 19.06 1.24047 1.09729 21572 140635 -1 8524 24 6941 7799 1305631 333240 9.34605 9.34605 -604.804 -9.34605 0 0 763333. 2981.77 0.31 0.42 0.13 -1 -1 0.31 0.133214 0.120566 719 342 304 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_18.v common 10.07 vpr 71.70 MiB 0.07 10512 -1 -1 1 0.23 -1 -1 38812 -1 -1 102 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73420 22 19 1592 1169 1 937 148 16 16 256 mult_36 auto 34.0 MiB 0.52 5983 25954 6023 16574 3357 71.7 MiB 0.46 0.01 8.03203 -399.545 -8.03203 8.03203 0.80 0.0023459 0.00209405 0.174934 0.156454 44 12031 50 6.32612e+06 3.26092e+06 649498. 2537.10 5.19 0.862944 0.764694 22336 155612 -1 8982 23 6359 7337 1152651 301054 8.30705 8.30705 -545.164 -8.30705 0 0 820238. 3204.05 0.34 0.37 0.15 -1 -1 0.34 0.13107 0.118158 757 361 323 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_19.v common 8.84 vpr 72.13 MiB 0.07 10676 -1 -1 1 0.23 -1 -1 39816 -1 -1 107 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73864 22 19 1688 1231 1 998 154 16 16 256 mult_36 auto 34.6 MiB 0.50 6143 26522 5762 17101 3659 72.1 MiB 0.47 0.01 8.02103 -421.266 -8.02103 8.02103 0.79 0.0025953 0.00233378 0.17793 0.159196 44 11801 44 6.32612e+06 3.71971e+06 649498. 2537.10 3.92 0.76815 0.681412 22336 155612 -1 8992 24 6161 7205 1289693 332506 8.35645 8.35645 -583.345 -8.35645 0 0 820238. 3204.05 0.33 0.44 0.15 -1 -1 0.33 0.148905 0.135037 799 380 342 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_20.v common 11.25 vpr 72.79 MiB 0.08 10752 -1 -1 1 0.26 -1 -1 39104 -1 -1 112 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74540 22 19 1762 1288 1 1033 159 16 16 256 mult_36 auto 35.1 MiB 0.57 6278 22519 4481 13432 4606 72.8 MiB 0.39 0.01 8.07603 -422.89 -8.07603 8.07603 0.78 0.00244907 0.00218078 0.148212 0.132108 46 11283 38 6.32612e+06 3.7825e+06 684529. 2673.94 6.34 0.854526 0.757426 22592 160355 -1 8846 22 5090 5927 1119249 277051 8.48145 8.48145 -611.058 -8.48145 0 0 838722. 3276.26 0.34 0.39 0.15 -1 -1 0.34 0.145892 0.13258 837 399 361 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_21.v common 14.16 vpr 73.31 MiB 0.08 11256 -1 -1 1 0.27 -1 -1 39716 -1 -1 119 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75072 22 19 1859 1351 1 1097 166 16 16 256 mult_36 auto 35.7 MiB 0.57 7083 28438 6142 18142 4154 73.3 MiB 0.60 0.01 7.94484 -455.64 -7.94484 7.94484 0.82 0.00289079 0.00260544 0.202325 0.181949 48 12606 43 6.32612e+06 3.8704e+06 714410. 2790.66 8.89 0.9819 0.873464 22848 165380 -1 10225 23 6523 7632 1490616 365297 8.54445 8.54445 -698.763 -8.54445 0 0 863353. 3372.47 0.32 0.45 0.16 -1 -1 0.32 0.145183 0.130756 880 418 380 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_22.v common 14.54 vpr 73.74 MiB 0.09 11456 -1 -1 1 0.29 -1 -1 39700 -1 -1 123 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75508 22 19 1933 1408 1 1134 170 16 16 256 mult_36 auto 36.1 MiB 0.63 7497 28840 5744 17746 5350 73.7 MiB 0.54 0.01 8.19623 -478.603 -8.19623 8.19623 0.79 0.00272424 0.00243072 0.197455 0.176368 50 12629 39 6.32612e+06 3.92063e+06 744679. 2908.90 9.17 1.45731 1.29239 23104 171162 -1 10338 24 6782 7844 1500653 372502 8.65165 8.65165 -780.862 -8.65165 0 0 891356. 3481.86 0.34 0.48 0.16 -1 -1 0.34 0.157881 0.141799 918 437 399 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_23.v common 17.10 vpr 74.25 MiB 0.09 11488 -1 -1 1 0.30 -1 -1 40316 -1 -1 131 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76036 22 19 2031 1472 1 1198 179 18 18 324 mult_36 auto 36.7 MiB 0.66 7800 33947 7578 22807 3562 74.3 MiB 0.67 0.01 8.07603 -491.36 -8.07603 8.07603 1.12 0.00310981 0.00273176 0.223027 0.200057 48 13478 26 7.77114e+06 4.4171e+06 935225. 2886.50 10.63 1.4929 1.32444 29348 218440 -1 11377 25 7995 9278 1619829 380294 8.42725 8.42725 -735.074 -8.42725 0 0 1.13028e+06 3488.51 0.48 0.53 0.20 -1 -1 0.48 0.18021 0.163194 962 456 418 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_24.v common 11.83 vpr 74.54 MiB 0.09 11576 -1 -1 1 0.31 -1 -1 40024 -1 -1 136 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76324 22 19 2105 1529 1 1235 184 18 18 324 mult_36 auto 37.1 MiB 0.67 7613 38886 9363 25292 4231 74.5 MiB 0.72 0.01 8.03203 -519.437 -8.03203 8.03203 1.14 0.00332584 0.0028989 0.26418 0.236331 48 14281 30 7.77114e+06 4.47989e+06 935225. 2886.50 5.18 0.962196 0.854328 29348 218440 -1 11702 23 8308 9545 1820710 425423 8.68585 8.68585 -879.228 -8.68585 0 0 1.13028e+06 3488.51 0.48 0.57 0.21 -1 -1 0.48 0.173939 0.157286 1000 475 437 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_25.v common 13.34 vpr 75.27 MiB 0.10 11900 -1 -1 1 0.34 -1 -1 40524 -1 -1 141 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77072 22 19 2201 1591 1 1295 189 18 18 324 mult_36 auto 37.7 MiB 0.70 8327 38671 8953 24931 4787 75.3 MiB 0.73 0.01 8.07603 -536.837 -8.07603 8.07603 1.11 0.00340577 0.00305819 0.254048 0.227505 46 15902 32 7.77114e+06 4.54268e+06 895831. 2764.91 6.76 1.12026 0.994724 29024 211752 -1 12203 23 7348 8833 1506585 366180 8.48645 8.48645 -788.96 -8.48645 0 0 1.09776e+06 3388.15 0.44 0.50 0.19 -1 -1 0.44 0.171507 0.153762 1042 494 456 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_26.v common 16.86 vpr 75.41 MiB 0.10 12344 -1 -1 1 0.34 -1 -1 40296 -1 -1 145 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77224 22 19 2275 1648 1 1331 193 18 18 324 mult_36 auto 38.0 MiB 0.74 8579 35841 7324 24223 4294 75.4 MiB 0.71 0.01 8.02103 -559.227 -8.02103 8.02103 1.15 0.00366825 0.00332438 0.246615 0.221467 48 15164 30 7.77114e+06 4.59291e+06 935225. 2886.50 10.06 1.55564 1.37668 29348 218440 -1 12674 24 8732 10174 1568425 370483 8.55845 8.55845 -896.446 -8.55845 0 0 1.13028e+06 3488.51 0.47 0.55 0.21 -1 -1 0.47 0.192929 0.173836 1080 513 475 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_27.v common 15.73 vpr 76.22 MiB 0.11 12572 -1 -1 1 0.37 -1 -1 40124 -1 -1 153 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78052 22 19 2385 1724 1 1408 202 18 18 324 mult_36 auto 38.7 MiB 0.78 9308 39866 8518 25758 5590 76.2 MiB 0.83 0.01 8.07603 -580.908 -8.07603 8.07603 1.14 0.00374707 0.00338193 0.27556 0.246991 48 16727 30 7.77114e+06 5.08937e+06 935225. 2886.50 8.51 1.19624 1.06279 29348 218440 -1 13802 24 9189 10823 2088637 482795 8.47665 8.47665 -1005.19 -8.47665 0 0 1.13028e+06 3488.51 0.49 0.68 0.21 -1 -1 0.49 0.214534 0.194766 1136 532 494 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_28.v common 12.51 vpr 76.71 MiB 0.11 12384 -1 -1 1 0.39 -1 -1 40768 -1 -1 158 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78556 22 19 2459 1781 1 1444 207 18 18 324 mult_36 auto 39.3 MiB 0.80 9577 40599 8581 27617 4401 76.7 MiB 0.82 0.01 7.83563 -656.693 -7.83563 7.83563 1.14 0.00432427 0.00389647 0.269151 0.23982 48 16803 29 7.77114e+06 5.15216e+06 935225. 2886.50 5.25 1.06292 0.942861 29348 218440 -1 14324 24 10233 11677 2214911 526248 8.93225 8.93225 -974.812 -8.93225 0 0 1.13028e+06 3488.51 0.50 0.70 0.21 -1 -1 0.50 0.208143 0.187696 1174 551 513 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_29.v common 24.23 vpr 77.30 MiB 0.11 12688 -1 -1 1 0.41 -1 -1 40732 -1 -1 165 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79152 22 19 2565 1853 1 1517 215 22 22 484 mult_36 auto 40.0 MiB 0.85 10055 44582 9568 30977 4037 77.3 MiB 0.88 0.01 7.93383 -595.828 -7.93383 7.93383 1.87 0.00413706 0.00374988 0.297116 0.266044 44 19542 41 1.26594e+07 5.63607e+06 1.30964e+06 2705.88 14.91 1.86711 1.657 43422 318546 -1 14418 23 10029 11797 2246039 529422 8.61085 8.61085 -852.992 -8.61085 0 0 1.65337e+06 3416.05 0.77 0.72 0.29 -1 -1 0.77 0.222927 0.201384 1226 570 532 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_30.v common 22.05 vpr 77.95 MiB 0.11 13064 -1 -1 1 0.41 -1 -1 41000 -1 -1 170 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79816 22 19 2639 1910 1 1554 220 22 22 484 mult_36 auto 40.6 MiB 0.91 10348 45304 9394 30658 5252 77.9 MiB 0.93 0.01 7.83563 -591.613 -7.83563 7.83563 1.88 0.00412774 0.00362468 0.311656 0.277655 46 18905 37 1.26594e+07 5.69886e+06 1.37878e+06 2848.72 12.71 1.38 1.2224 43906 328446 -1 14509 22 8880 10422 1949392 448389 8.65285 8.65285 -1007.25 -8.65285 0 0 1.69059e+06 3492.95 0.76 0.62 0.30 -1 -1 0.76 0.203793 0.18384 1264 589 551 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_31.v common 26.86 vpr 78.18 MiB 0.12 13360 -1 -1 1 0.42 -1 -1 40820 -1 -1 177 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80060 22 19 2744 1981 1 1626 227 22 22 484 mult_36 auto 40.9 MiB 0.87 10580 53511 12333 34516 6662 78.2 MiB 1.07 0.01 7.90083 -631.826 -7.90083 7.90083 1.82 0.00427151 0.0037266 0.363169 0.321204 46 20227 42 1.26594e+07 5.78677e+06 1.37878e+06 2848.72 17.45 2.25402 1.9896 43906 328446 -1 15257 23 10383 11974 2067252 503482 8.49445 8.49445 -922.23 -8.49445 0 0 1.69059e+06 3492.95 0.76 0.69 0.28 -1 -1 0.76 0.229499 0.20602 1315 608 570 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_32.v common 24.63 vpr 78.70 MiB 0.12 13260 -1 -1 1 0.44 -1 -1 40748 -1 -1 181 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80584 22 19 2818 2038 1 1662 231 22 22 484 mult_36 auto 41.3 MiB 0.93 11144 56163 13328 37752 5083 78.7 MiB 1.11 0.01 8.06503 -690.229 -8.06503 8.06503 1.90 0.00458667 0.00415897 0.361656 0.322728 46 20008 32 1.26594e+07 5.837e+06 1.37878e+06 2848.72 14.97 1.93681 1.71132 43906 328446 -1 16138 23 10231 11925 1968299 448730 8.76405 8.76405 -1088.55 -8.76405 0 0 1.69059e+06 3492.95 0.75 0.64 0.30 -1 -1 0.75 0.224937 0.202792 1353 627 589 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_33.v common 25.12 vpr 79.37 MiB 0.13 14076 -1 -1 1 0.46 -1 -1 41284 -1 -1 189 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81272 22 19 2923 2109 1 1730 240 22 22 484 mult_36 auto 41.8 MiB 0.92 11308 59095 13553 39571 5971 79.4 MiB 1.10 0.01 8.38989 -668.907 -8.38989 8.38989 1.92 0.00428686 0.00384069 0.372279 0.331435 46 20752 31 1.26594e+07 6.33346e+06 1.37878e+06 2848.72 15.31 2.09606 1.85573 43906 328446 -1 16068 22 10408 11942 2280205 542677 9.47631 9.47631 -1173.17 -9.47631 0 0 1.69059e+06 3492.95 0.74 0.70 0.27 -1 -1 0.74 0.219476 0.19709 1404 646 608 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_34.v common 22.88 vpr 79.84 MiB 0.13 13884 -1 -1 1 0.47 -1 -1 41424 -1 -1 194 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81756 22 19 2997 2166 1 1769 245 22 22 484 mult_36 auto 42.4 MiB 1.16 11328 59993 14049 39404 6540 79.8 MiB 1.15 0.01 8.38989 -679.405 -8.38989 8.38989 1.84 0.00513904 0.00466504 0.397848 0.353625 48 20993 39 1.26594e+07 6.39625e+06 1.44011e+06 2975.42 12.65 1.64102 1.45437 44390 338934 -1 16805 22 12804 14718 2675836 628806 9.46671 9.46671 -1115.06 -9.46671 0 0 1.74100e+06 3597.11 0.83 0.83 0.31 -1 -1 0.83 0.241579 0.217632 1442 665 627 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_35.v common 18.03 vpr 80.27 MiB 0.14 14412 -1 -1 1 0.48 -1 -1 41676 -1 -1 200 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82196 22 19 3101 2236 1 1838 251 22 22 484 mult_36 auto 43.0 MiB 1.10 12040 55621 11605 37734 6282 80.3 MiB 1.09 0.01 8.63029 -705.34 -8.63029 8.63029 1.90 0.00438782 0.00382535 0.357138 0.317981 46 22187 33 1.26594e+07 6.4716e+06 1.37878e+06 2848.72 7.99 1.36587 1.20433 43906 328446 -1 17272 22 9231 10943 2068757 482211 9.37811 9.37811 -1041.25 -9.37811 0 0 1.69059e+06 3492.95 0.77 0.71 0.30 -1 -1 0.77 0.248758 0.225342 1492 684 646 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_36.v common 22.07 vpr 80.67 MiB 0.14 14232 -1 -1 1 0.50 -1 -1 41912 -1 -1 204 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82604 22 19 3175 2293 1 1872 255 22 22 484 mult_36 auto 43.3 MiB 1.20 13101 63279 13886 44150 5243 80.7 MiB 1.38 0.02 8.63029 -712.89 -8.63029 8.63029 1.90 0.00494261 0.00446991 0.422699 0.376851 48 24048 33 1.26594e+07 6.52183e+06 1.44011e+06 2975.42 11.35 1.65175 1.45612 44390 338934 -1 19228 21 11471 13426 2723996 615527 9.84731 9.84731 -1232.25 -9.84731 0 0 1.74100e+06 3597.11 0.83 0.84 0.31 -1 -1 0.83 0.243687 0.220192 1530 703 665 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_37.v common 21.85 vpr 81.48 MiB 0.15 14564 -1 -1 1 0.52 -1 -1 41644 -1 -1 211 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83436 22 19 3280 2364 1 1945 263 24 24 576 mult_36 auto 44.4 MiB 1.22 13741 66781 15856 45862 5063 81.5 MiB 1.40 0.02 8.99089 -771.861 -8.99089 8.99089 2.30 0.00517502 0.00468291 0.437831 0.390658 46 24734 41 1.52924e+07 7.00574e+06 1.63708e+06 2842.15 10.05 1.64399 1.45722 51922 389946 -1 19091 24 9659 11675 2218681 526902 9.51851 9.51851 -1173.53 -9.51851 0 0 2.00908e+06 3487.99 0.96 0.81 0.36 -1 -1 0.96 0.280419 0.25411 1581 722 684 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_38.v common 22.67 vpr 81.91 MiB 0.14 14600 -1 -1 1 0.58 -1 -1 42020 -1 -1 216 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83872 22 19 3354 2421 1 1981 268 24 24 576 mult_36 auto 44.9 MiB 1.30 12528 63267 13780 41350 8137 81.9 MiB 1.21 0.02 8.75049 -808.447 -8.75049 8.75049 2.19 0.00498062 0.0044649 0.404699 0.359169 44 24087 44 1.52924e+07 7.06853e+06 1.55518e+06 2699.97 10.96 1.65366 1.46001 51346 378163 -1 17640 24 10862 12851 2148539 520882 9.19191 9.19191 -1169.96 -9.19191 0 0 1.96475e+06 3411.02 0.95 0.79 0.35 -1 -1 0.95 0.293536 0.265145 1619 741 703 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_39.v common 23.17 vpr 82.47 MiB 0.13 15192 -1 -1 1 0.53 -1 -1 41628 -1 -1 223 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84452 22 19 3457 2490 1 2052 275 24 24 576 mult_36 auto 45.3 MiB 1.18 13314 76180 18842 52006 5332 82.5 MiB 1.53 0.02 8.87069 -820.385 -8.87069 8.87069 2.12 0.0053231 0.00476031 0.478233 0.426872 46 25904 50 1.52924e+07 7.15643e+06 1.63708e+06 2842.15 11.47 1.94368 1.71426 51922 389946 -1 18961 22 11599 13662 2647450 640350 9.32311 9.32311 -1242.08 -9.32311 0 0 2.00908e+06 3487.99 0.96 0.88 0.34 -1 -1 0.96 0.284344 0.25565 1668 760 722 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_40.v common 76.88 vpr 83.07 MiB 0.15 15044 -1 -1 1 0.56 -1 -1 41784 -1 -1 228 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85068 22 19 3531 2547 1 2089 280 24 24 576 mult_36 auto 45.8 MiB 1.35 14266 75310 17729 50841 6740 83.1 MiB 1.56 0.02 8.73949 -878.516 -8.73949 8.73949 2.21 0.0062376 0.00547063 0.505894 0.451481 48 24785 33 1.52924e+07 7.21922e+06 1.71014e+06 2969.00 64.60 3.48162 3.06657 52498 402441 -1 20442 22 13188 15170 2908335 669788 9.46651 9.46651 -1562.22 -9.46651 0 0 2.06880e+06 3591.66 1.02 0.97 0.38 -1 -1 1.02 0.306483 0.277825 1706 779 741 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_41.v common 29.56 vpr 83.62 MiB 0.15 15324 -1 -1 1 0.59 -1 -1 41716 -1 -1 234 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85632 22 19 3634 2616 1 2155 287 24 24 576 mult_36 auto 46.7 MiB 1.36 13968 75967 17270 48168 10529 83.6 MiB 1.50 0.02 8.99089 -876.659 -8.99089 8.99089 2.18 0.00545301 0.00486251 0.464519 0.413041 48 22822 35 1.52924e+07 7.69057e+06 1.71014e+06 2969.00 17.30 2.65752 2.352 52498 402441 -1 19568 22 12163 14773 2637463 632064 9.26031 9.26031 -1343.89 -9.26031 0 0 2.06880e+06 3591.66 1.03 0.91 0.37 -1 -1 1.03 0.298643 0.268091 1755 798 760 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_42.v common 93.79 vpr 84.30 MiB 0.16 15564 -1 -1 1 0.62 -1 -1 42416 -1 -1 239 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86320 22 19 3708 2673 1 2193 292 24 24 576 mult_36 auto 47.3 MiB 1.45 14146 74828 16454 47694 10680 84.3 MiB 1.48 0.02 8.75049 -903.639 -8.75049 8.75049 2.16 0.00549122 0.00491699 0.46335 0.412863 46 25148 48 1.52924e+07 7.75336e+06 1.63708e+06 2842.15 81.68 3.4681 3.04912 51922 389946 -1 19576 25 12856 15358 2117988 536946 9.57751 9.57751 -1389.04 -9.57751 0 0 2.00908e+06 3487.99 0.92 0.80 0.34 -1 -1 0.92 0.304009 0.271377 1793 817 779 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_43.v common 22.03 vpr 84.48 MiB 0.16 15952 -1 -1 1 0.63 -1 -1 43160 -1 -1 245 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86504 22 19 3810 2741 1 2260 298 24 24 576 mult_36 auto 47.6 MiB 1.36 15011 78903 18701 53712 6490 84.5 MiB 1.69 0.02 8.83769 -911.047 -8.83769 8.83769 2.21 0.00538527 0.00465981 0.477779 0.423947 48 26788 32 1.52924e+07 7.82871e+06 1.71014e+06 2969.00 9.51 1.90578 1.69153 52498 402441 -1 21952 22 11795 14189 2330289 549296 9.72591 9.72591 -1554.07 -9.72591 0 0 2.06880e+06 3591.66 1.00 0.86 0.37 -1 -1 1.00 0.314164 0.28325 1841 836 798 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_44.v common 31.28 vpr 85.12 MiB 0.17 15780 -1 -1 1 0.65 -1 -1 42664 -1 -1 250 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87168 22 19 3884 2798 1 2296 303 24 24 576 mult_36 auto 48.1 MiB 1.52 15154 75561 16132 50168 9261 85.1 MiB 1.48 0.02 8.84869 -891.149 -8.84869 8.84869 2.22 0.00581364 0.00522269 0.45797 0.404582 54 24127 29 1.52924e+07 7.8915e+06 1.87785e+06 3260.16 18.82 2.87515 2.53515 54798 452027 -1 20120 21 10091 11807 1810457 460138 9.07791 9.07791 -1253.94 -9.07791 0 0 2.31032e+06 4010.97 1.07 0.69 0.42 -1 -1 1.07 0.282934 0.253563 1879 855 817 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_45.v common 35.57 vpr 85.24 MiB 0.17 16112 -1 -1 1 0.70 -1 -1 44244 -1 -1 257 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87288 22 19 3989 2869 1 2368 311 24 24 576 mult_36 auto 48.3 MiB 1.45 16768 76127 16285 52846 6996 85.2 MiB 1.69 0.02 8.61929 -890.536 -8.61929 8.61929 2.19 0.00662958 0.00600878 0.487343 0.4351 48 30283 37 1.52924e+07 8.37541e+06 1.71014e+06 2969.00 22.49 3.11412 2.74654 52498 402441 -1 23925 24 13581 16749 3450187 782779 9.66371 9.66371 -1457.58 -9.66371 0 0 2.06880e+06 3591.66 1.05 1.16 0.38 -1 -1 1.05 0.358781 0.32338 1930 874 836 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_46.v common 30.67 vpr 86.07 MiB 0.17 16500 -1 -1 1 0.67 -1 -1 44600 -1 -1 261 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88140 22 19 4063 2926 1 2404 315 24 24 576 mult_36 auto 49.0 MiB 1.59 15772 79569 17458 52988 9123 86.1 MiB 1.66 0.02 8.99089 -984.835 -8.99089 8.99089 2.19 0.00595109 0.00531628 0.50586 0.446928 48 29056 50 1.52924e+07 8.42564e+06 1.71014e+06 2969.00 17.71 2.26256 1.98957 52498 402441 -1 23013 22 12906 16241 2628330 620901 9.62651 9.62651 -1767.06 -9.62651 0 0 2.06880e+06 3591.66 1.05 0.93 0.38 -1 -1 1.05 0.334371 0.301876 1968 893 855 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_47.v common 29.08 vpr 85.88 MiB 0.18 16696 -1 -1 1 0.72 -1 -1 44468 -1 -1 268 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87944 22 19 4167 2996 1 2473 322 24 24 576 mult_36 auto 48.9 MiB 1.54 16190 97386 23893 63645 9848 85.9 MiB 2.10 0.02 8.75049 -970.96 -8.75049 8.75049 2.19 0.00620607 0.00554659 0.606249 0.537591 48 28649 42 1.52924e+07 8.51354e+06 1.71014e+06 2969.00 15.42 2.38523 2.10236 52498 402441 -1 23255 22 15571 18409 3475103 828304 9.44751 9.44751 -1647.07 -9.44751 0 0 2.06880e+06 3591.66 1.02 1.15 0.38 -1 -1 1.02 0.354157 0.319784 2018 912 874 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_48.v common 26.59 vpr 86.39 MiB 0.19 16956 -1 -1 1 0.72 -1 -1 44740 -1 -1 273 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88464 22 19 4241 3053 1 2509 327 24 24 576 mult_36 auto 49.4 MiB 1.65 17432 91533 21746 61346 8441 86.4 MiB 1.98 0.02 9.11109 -1012.39 -9.11109 9.11109 2.16 0.00622599 0.00558248 0.555255 0.493906 50 28911 32 1.52924e+07 8.57633e+06 1.78400e+06 3097.22 13.13 2.23872 1.97238 53074 415989 -1 24176 23 12630 15333 3017740 694660 9.52771 9.52771 -1723.59 -9.52771 0 0 2.13454e+06 3705.80 1.03 1.02 0.39 -1 -1 1.03 0.349012 0.313787 2056 931 893 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_49.v common 35.90 vpr 87.16 MiB 0.19 17128 -1 -1 1 0.73 -1 -1 45048 -1 -1 279 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89256 22 19 4346 3124 1 2580 334 24 24 576 mult_36 auto 50.3 MiB 1.86 17485 90658 20252 60366 10040 87.2 MiB 2.00 0.03 8.73949 -1051.19 -8.73949 8.73949 2.15 0.00729611 0.00661911 0.557307 0.493384 50 29401 46 1.52924e+07 9.04768e+06 1.78400e+06 3097.22 22.01 3.48899 3.07364 53074 415989 -1 24071 24 14362 16940 2849866 683184 9.06871 9.06871 -1621.73 -9.06871 0 0 2.13454e+06 3705.80 1.04 1.08 0.39 -1 -1 1.04 0.396515 0.356978 2107 950 912 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_50.v common 25.48 vpr 87.55 MiB 0.20 17256 -1 -1 1 0.74 -1 -1 44720 -1 -1 284 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89656 22 19 4420 3181 1 2615 339 24 24 576 mult_36 auto 50.5 MiB 1.76 17374 94819 20863 63969 9987 87.6 MiB 1.99 0.02 8.81944 -1060.01 -8.81944 8.81944 2.18 0.00638123 0.0057194 0.541305 0.472067 54 27814 33 1.52924e+07 9.11047e+06 1.87785e+06 3260.16 11.69 2.30702 2.02668 54798 452027 -1 23229 20 12900 15242 2755527 656550 9.33111 9.33111 -1735.51 -9.33111 0 0 2.31032e+06 4010.97 1.13 0.95 0.42 -1 -1 1.13 0.332527 0.300083 2145 969 931 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_51.v common 34.81 vpr 88.61 MiB 0.20 17736 -1 -1 1 0.78 -1 -1 44908 -1 -1 292 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90736 22 19 4524 3251 1 2687 347 24 24 576 mult_36 auto 51.7 MiB 1.73 20152 89261 19572 60784 8905 88.6 MiB 1.92 0.03 9.22029 -1126.44 -9.22029 9.22029 2.13 0.00671517 0.00600975 0.526209 0.466472 56 32788 49 1.52924e+07 9.21094e+06 1.92546e+06 3342.82 20.94 2.50593 2.20664 55374 464059 -1 27559 23 15294 17931 3161807 737908 9.83011 9.83011 -1863.37 -9.83011 0 0 2.36234e+06 4101.29 1.12 1.07 0.45 -1 -1 1.12 0.358697 0.320968 2195 988 950 19 0 0 -k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_52.v common 28.94 vpr 88.90 MiB 0.20 17520 -1 -1 1 0.80 -1 -1 45240 -1 -1 296 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91032 22 19 4598 3308 1 2721 351 24 24 576 mult_36 auto 52.0 MiB 1.83 19098 91889 20322 61820 9747 88.9 MiB 1.88 0.03 8.87069 -1147.12 -8.87069 8.87069 2.19 0.0071514 0.00589415 0.521644 0.458847 54 32808 34 1.52924e+07 9.26117e+06 1.87785e+06 3260.16 14.89 2.53455 2.23032 54798 452027 -1 26146 22 15091 18073 2691694 629251 9.50251 9.50251 -1739.56 -9.50251 0 0 2.31032e+06 4010.97 1.14 1.04 0.43 -1 -1 1.14 0.39676 0.357264 2233 1007 969 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_14.v common 9.52 vpr 74.03 MiB 0.06 10704 -1 -1 1 0.26 -1 -1 39956 -1 -1 123 22 0 4 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75804 22 19 1974 1653 1 1039 168 16 16 256 mult_36 auto 36.4 MiB 2.03 6605 27485 5632 18672 3181 74.0 MiB 0.43 0.01 4.00076 -1086.49 -4.00076 4.00076 0.83 0.00271508 0.00238533 0.176288 0.156207 44 12656 45 6.34292e+06 3.14339e+06 649498. 2537.10 3.18 0.824166 0.722891 22336 155612 -1 9704 13 3443 4203 619972 155144 4.36136 4.36136 -1250.17 -4.36136 0 0 820238. 3204.05 0.33 0.23 0.15 -1 -1 0.33 0.102669 0.0933221 953 649 247 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_15.v common 10.28 vpr 74.89 MiB 0.07 10932 -1 -1 1 0.28 -1 -1 40624 -1 -1 132 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76692 22 19 2144 1789 1 1138 178 16 16 256 clb mult_36 auto 37.3 MiB 2.18 6901 27678 5119 19374 3185 74.9 MiB 0.46 0.01 3.88056 -1151.89 -3.88056 3.88056 0.80 0.00330713 0.00297576 0.19264 0.172173 44 12817 42 6.34292e+06 3.6535e+06 649498. 2537.10 3.62 0.902107 0.79896 22336 155612 -1 9903 15 3657 4359 620662 158537 4.36136 4.36136 -1310.14 -4.36136 0 0 820238. 3204.05 0.33 0.27 0.15 -1 -1 0.33 0.130697 0.119266 1033 704 266 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_16.v common 11.78 vpr 74.91 MiB 0.07 11048 -1 -1 1 0.30 -1 -1 40228 -1 -1 137 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76704 22 19 2218 1846 1 1177 183 16 16 256 clb mult_36 auto 37.4 MiB 2.39 7302 32361 6248 22318 3795 74.9 MiB 0.54 0.01 3.88056 -1196.39 -3.88056 3.88056 0.84 0.0031297 0.00274247 0.211389 0.187368 44 14313 48 6.34292e+06 3.71689e+06 649498. 2537.10 4.73 0.972089 0.857058 22336 155612 -1 10228 18 3748 4519 687086 171862 4.24116 4.24116 -1317.09 -4.24116 0 0 820238. 3204.05 0.33 0.29 0.14 -1 -1 0.33 0.140251 0.126681 1071 723 285 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_17.v common 13.68 vpr 77.10 MiB 0.08 11956 -1 -1 1 0.32 -1 -1 40436 -1 -1 157 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78952 22 19 2536 2130 1 1298 203 17 17 289 clb auto 39.9 MiB 2.54 8460 32387 5875 23378 3134 77.1 MiB 0.52 0.01 4.00076 -1392.8 -4.00076 4.00076 0.97 0.00352658 0.00309255 0.210197 0.185188 48 14817 29 6.65987e+06 3.97045e+06 816265. 2824.45 5.93 1.08784 0.954388 25714 189529 -1 12225 16 4193 5127 763756 179569 4.36136 4.36136 -1645.17 -4.36136 0 0 986792. 3414.50 0.41 0.31 0.18 -1 -1 0.41 0.147832 0.133234 1226 851 304 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_18.v common 16.46 vpr 77.34 MiB 0.08 12112 -1 -1 1 0.35 -1 -1 40400 -1 -1 163 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79196 22 19 2610 2187 1 1336 209 17 17 289 clb auto 40.0 MiB 2.74 8362 37409 8265 25131 4013 77.3 MiB 0.60 0.01 3.88056 -1423.48 -3.88056 3.88056 0.94 0.00363988 0.00322254 0.2365 0.208255 50 14445 47 6.65987e+06 4.04651e+06 851065. 2944.86 8.36 1.61178 1.41079 26002 196109 -1 11722 17 4354 5262 685221 175372 4.36136 4.36136 -1658.33 -4.36136 0 0 1.01866e+06 3524.77 0.43 0.31 0.19 -1 -1 0.43 0.157034 0.141662 1264 870 323 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_19.v common 21.59 vpr 78.62 MiB 0.09 12596 -1 -1 1 0.36 -1 -1 40644 -1 -1 172 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80504 22 19 2778 2321 1 1434 219 18 18 324 clb auto 41.6 MiB 2.74 8883 41736 8351 30064 3321 78.6 MiB 0.65 0.01 3.88056 -1521.67 -3.88056 3.88056 1.07 0.0037031 0.00331139 0.26933 0.238966 46 16047 39 7.79418e+06 4.55662e+06 895831. 2764.91 13.14 1.91934 1.68536 29024 211752 -1 12500 17 4458 5370 698830 176654 4.24116 4.24116 -1734.9 -4.24116 0 0 1.09776e+06 3388.15 0.46 0.34 0.18 -1 -1 0.46 0.181313 0.164437 1342 925 342 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_20.v common 12.91 vpr 79.16 MiB 0.09 12444 -1 -1 1 0.38 -1 -1 40764 -1 -1 176 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81064 22 19 2852 2378 1 1479 223 18 18 324 clb auto 42.1 MiB 3.04 9109 40783 8576 28506 3701 79.2 MiB 0.67 0.01 3.88056 -1559.41 -3.88056 3.88056 1.12 0.0038152 0.00334117 0.254415 0.223827 46 15865 25 7.79418e+06 4.60733e+06 895831. 2764.91 3.90 0.957547 0.838059 29024 211752 -1 12814 15 4347 5370 640843 156043 4.36136 4.36136 -1803.18 -4.36136 0 0 1.09776e+06 3388.15 0.46 0.31 0.20 -1 -1 0.46 0.163136 0.147903 1380 944 361 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_21.v common 15.61 vpr 80.07 MiB 0.12 12940 -1 -1 1 0.39 -1 -1 41600 -1 -1 188 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81988 22 19 3057 2549 1 1586 235 18 18 324 clb auto 43.2 MiB 3.07 11180 48019 10216 33956 3847 80.1 MiB 0.82 0.01 4.12096 -1744.74 -4.12096 4.12096 1.08 0.00425008 0.00376109 0.306692 0.27072 50 18081 22 7.79418e+06 4.75946e+06 975281. 3010.13 6.32 1.32553 1.16486 29672 225968 -1 15401 15 4886 5802 788032 188629 4.36136 4.36136 -1991.45 -4.36136 0 0 1.16663e+06 3600.72 0.50 0.35 0.21 -1 -1 0.50 0.178297 0.16198 1477 1017 380 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_22.v common 19.77 vpr 80.43 MiB 0.10 13264 -1 -1 1 0.42 -1 -1 40816 -1 -1 194 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82360 22 19 3131 2606 1 1626 241 19 19 361 clb auto 43.5 MiB 3.25 11034 46679 9387 33281 4011 80.4 MiB 0.81 0.01 4.00076 -1733.16 -4.00076 4.00076 1.26 0.0046106 0.0041319 0.315192 0.281553 48 19989 31 8.16184e+06 4.83553e+06 1.05176e+06 2913.46 9.78 1.45009 1.2728 32602 246183 -1 16140 15 5527 6647 1148764 251508 4.48156 4.48156 -2154.09 -4.48156 0 0 1.27108e+06 3521.00 0.53 0.44 0.23 -1 -1 0.53 0.187982 0.170238 1515 1036 399 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_23.v common 17.52 vpr 81.96 MiB 0.11 13416 -1 -1 1 0.46 -1 -1 42544 -1 -1 204 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83924 22 19 3301 2742 1 1720 252 19 19 361 clb auto 45.0 MiB 3.43 12018 51132 10440 36707 3985 82.0 MiB 0.85 0.01 4.00076 -1846.43 -4.00076 4.00076 1.30 0.00534805 0.00480669 0.324446 0.286998 50 20234 27 8.16184e+06 5.35831e+06 1.09718e+06 3039.29 7.10 1.46064 1.28365 32962 254619 -1 16602 15 5834 7166 971996 222864 4.24116 4.24116 -2102.97 -4.24116 0 0 1.31179e+06 3633.76 0.54 0.38 0.24 -1 -1 0.54 0.181517 0.163478 1595 1091 418 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_24.v common 21.74 vpr 81.81 MiB 0.11 13760 -1 -1 1 0.46 -1 -1 42548 -1 -1 209 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83772 22 19 3375 2799 1 1765 257 19 19 361 clb auto 44.7 MiB 3.47 12016 54113 11591 37494 5028 81.8 MiB 0.91 0.01 4.00076 -1887.1 -4.00076 4.00076 1.26 0.00503356 0.0044616 0.350264 0.311292 54 19297 20 8.16184e+06 5.4217e+06 1.15452e+06 3198.10 11.26 1.92292 1.69264 34042 276675 -1 16370 13 5106 6382 875550 204998 4.36136 4.36136 -2154.36 -4.36136 0 0 1.41983e+06 3933.05 0.59 0.35 0.25 -1 -1 0.59 0.170965 0.155124 1633 1110 437 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_25.v common 19.28 vpr 82.85 MiB 0.12 14336 -1 -1 1 0.51 -1 -1 42520 -1 -1 223 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84836 22 19 3615 3005 1 1878 271 20 20 400 clb auto 45.8 MiB 3.78 12837 54583 10224 39915 4444 82.8 MiB 0.98 0.02 4.00076 -2067.39 -4.00076 4.00076 1.51 0.00525424 0.00466801 0.351875 0.310759 50 21264 23 1.10667e+07 5.59919e+06 1.21483e+06 3037.08 7.54 1.60568 1.4148 36870 282114 -1 18179 16 5961 7258 1108873 261228 4.36136 4.36136 -2364.32 -4.36136 0 0 1.45344e+06 3633.59 0.65 0.47 0.27 -1 -1 0.65 0.227386 0.205411 1747 1201 456 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_26.v common 20.25 vpr 83.51 MiB 0.11 14192 -1 -1 1 0.52 -1 -1 42000 -1 -1 228 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85512 22 19 3689 3062 1 1918 276 20 20 400 clb auto 46.6 MiB 3.92 13577 57748 11248 41972 4528 83.5 MiB 1.05 0.02 4.00076 -2052.33 -4.00076 4.00076 1.53 0.00499726 0.00439033 0.373666 0.32822 48 24395 35 1.10667e+07 5.66258e+06 1.16517e+06 2912.92 8.21 1.75569 1.54123 36470 272802 -1 19585 17 6760 8089 1334669 303221 4.36136 4.36136 -2523.04 -4.36136 0 0 1.40818e+06 3520.44 0.64 0.52 0.26 -1 -1 0.64 0.22448 0.202007 1785 1220 475 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_27.v common 21.84 vpr 85.24 MiB 0.13 14496 -1 -1 1 0.54 -1 -1 43344 -1 -1 240 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87284 22 19 3871 3210 1 2023 289 21 21 441 clb auto 48.0 MiB 4.15 14528 68094 14357 48331 5406 85.2 MiB 1.19 0.02 4.12096 -2200.55 -4.12096 4.12096 1.75 0.00539377 0.00476232 0.431154 0.380482 52 25962 32 1.14723e+07 6.21072e+06 1.38344e+06 3137.06 8.80 1.94547 1.7174 41366 331634 -1 20069 15 6176 7322 1083333 251006 4.36136 4.36136 -2536.12 -4.36136 0 0 1.70223e+06 3859.94 0.77 0.48 0.31 -1 -1 0.77 0.232968 0.211025 1877 1275 494 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_28.v common 23.09 vpr 85.29 MiB 0.12 14864 -1 -1 1 0.55 -1 -1 42380 -1 -1 245 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87336 22 19 3945 3267 1 2070 294 21 21 441 clb auto 48.5 MiB 4.34 14422 62822 12811 45183 4828 85.3 MiB 1.15 0.02 4.00076 -2213.36 -4.00076 4.00076 1.74 0.0059315 0.00527181 0.420269 0.37204 50 24297 23 1.14723e+07 6.27411e+06 1.34972e+06 3060.59 9.95 1.83717 1.61684 40486 313801 -1 20344 16 6839 8409 1253444 290907 4.36136 4.36136 -2567.22 -4.36136 0 0 1.61476e+06 3661.58 0.72 0.49 0.29 -1 -1 0.72 0.227876 0.204994 1915 1294 513 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_29.v common 23.69 vpr 86.87 MiB 0.13 15212 -1 -1 1 0.58 -1 -1 42412 -1 -1 258 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88952 22 19 4159 3447 1 2186 308 22 22 484 mult_36 auto 49.8 MiB 4.31 14990 69921 14511 50367 5043 86.9 MiB 1.25 0.02 3.88056 -2243.86 -3.88056 3.88056 1.86 0.00568688 0.00491895 0.460377 0.407104 48 26062 23 1.26954e+07 6.83492e+06 1.44011e+06 2975.42 9.96 1.94673 1.71345 44390 338934 -1 21152 15 6959 8424 1363728 314296 4.48156 4.48156 -2784.24 -4.48156 0 0 1.74100e+06 3597.11 0.82 0.54 0.31 -1 -1 0.82 0.244094 0.220823 2021 1367 532 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_30.v common 25.08 vpr 86.96 MiB 0.13 15220 -1 -1 1 0.61 -1 -1 44128 -1 -1 263 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89052 22 19 4233 3504 1 2225 313 22 22 484 mult_36 auto 50.0 MiB 4.55 15847 69343 13805 50181 5357 87.0 MiB 1.25 0.02 4.00076 -2290.89 -4.00076 4.00076 1.89 0.00688481 0.00614204 0.450427 0.399297 50 26919 24 1.26954e+07 6.89831e+06 1.50222e+06 3103.76 10.94 2.03573 1.79734 44874 350400 -1 22034 14 7085 8826 1298435 292549 4.48156 4.48156 -2805.59 -4.48156 0 0 1.79645e+06 3711.66 0.83 0.54 0.32 -1 -1 0.83 0.252239 0.229078 2059 1386 551 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_31.v common 21.42 vpr 87.96 MiB 0.18 15740 -1 -1 1 0.65 -1 -1 43524 -1 -1 274 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90068 22 19 4410 3647 1 2335 324 22 22 484 clb mult_36 auto 51.2 MiB 4.61 15203 73716 15512 52269 5935 88.0 MiB 1.38 0.02 3.88056 -2433.3 -3.88056 3.88056 1.87 0.0070435 0.00628528 0.497061 0.435811 50 25816 47 1.26954e+07 7.03777e+06 1.50222e+06 3103.76 7.01 2.027 1.7897 44874 350400 -1 21314 14 7298 9006 1235739 289117 4.48156 4.48156 -2886.3 -4.48156 0 0 1.79645e+06 3711.66 0.82 0.53 0.33 -1 -1 0.82 0.255096 0.231217 2146 1441 570 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_32.v common 38.20 vpr 88.15 MiB 0.14 15816 -1 -1 1 0.67 -1 -1 44776 -1 -1 278 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90268 22 19 4484 3704 1 2374 328 22 22 484 clb mult_36 auto 51.3 MiB 4.91 15858 82818 17468 58641 6709 88.2 MiB 1.50 0.02 3.76036 -2405.41 -3.76036 3.76036 1.86 0.00659346 0.00587635 0.542532 0.47621 50 26310 28 1.26954e+07 7.08848e+06 1.50222e+06 3103.76 23.02 3.09457 2.69997 44874 350400 -1 22110 19 7662 9227 1387167 328242 4.24116 4.24116 -2876.37 -4.24116 0 0 1.79645e+06 3711.66 0.82 0.59 0.32 -1 -1 0.82 0.289999 0.259739 2184 1460 589 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_33.v common 35.94 vpr 90.21 MiB 0.16 16768 -1 -1 1 0.73 -1 -1 45256 -1 -1 302 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92380 22 19 4843 4029 1 2501 353 23 23 529 clb auto 53.4 MiB 5.01 18871 88890 20104 62959 5827 90.2 MiB 1.58 0.02 4.00076 -2767.56 -4.00076 4.00076 2.10 0.00704476 0.00628555 0.546117 0.481694 54 30011 23 1.31518e+07 7.78876e+06 1.73850e+06 3286.39 19.87 3.22716 2.84317 50466 419205 -1 25632 17 8266 10036 1603652 375961 4.36136 4.36136 -3409.29 -4.36136 0 0 2.13727e+06 4040.20 0.98 0.70 0.38 -1 -1 0.98 0.319817 0.288782 2362 1606 608 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_34.v common 26.16 vpr 90.80 MiB 0.17 16928 -1 -1 1 0.77 -1 -1 45136 -1 -1 308 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92980 22 19 4917 4086 1 2542 359 23 23 529 clb auto 54.0 MiB 5.17 16971 85784 19100 61259 5425 90.8 MiB 1.50 0.02 3.88056 -2715.42 -3.88056 3.88056 2.06 0.0066501 0.00586182 0.524577 0.462667 50 28453 26 1.31518e+07 7.86482e+06 1.65241e+06 3123.66 10.05 2.40043 2.10977 48882 385791 -1 23639 16 8045 9803 1470925 351889 4.36136 4.36136 -3212.94 -4.36136 0 0 1.97533e+06 3734.07 0.92 0.65 0.35 -1 -1 0.92 0.317012 0.286001 2401 1625 627 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_35.v common 57.16 vpr 91.39 MiB 0.17 17348 -1 -1 1 0.81 -1 -1 45628 -1 -1 319 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93588 22 19 5093 4228 1 2643 370 23 23 529 clb auto 54.8 MiB 5.24 18623 95914 21280 68442 6192 91.4 MiB 1.64 0.02 4.00076 -2900.58 -4.00076 4.00076 2.01 0.00758317 0.00669318 0.569433 0.501452 48 34881 44 1.31518e+07 8.00428e+06 1.58369e+06 2993.75 40.74 4.30527 3.74943 48354 373213 -1 27029 16 9096 10935 1817903 405766 4.48156 4.48156 -3543.33 -4.48156 0 0 1.91452e+06 3619.14 0.93 0.70 0.34 -1 -1 0.93 0.306058 0.275722 2487 1680 646 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_36.v common 36.46 vpr 92.04 MiB 0.17 17596 -1 -1 1 0.82 -1 -1 45348 -1 -1 323 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94244 22 19 5167 4285 1 2691 374 23 23 529 clb auto 55.5 MiB 5.38 20284 98705 22011 70700 5994 92.0 MiB 1.71 0.03 4.24116 -3013.12 -4.24116 4.24116 2.00 0.00803262 0.00711945 0.563488 0.492848 56 34105 48 1.31518e+07 8.05499e+06 1.78215e+06 3368.90 19.69 3.2766 2.86039 50994 430361 -1 28166 15 8594 10692 1644915 366571 4.48156 4.48156 -3530.62 -4.48156 0 0 2.18505e+06 4130.54 1.02 0.65 0.41 -1 -1 1.02 0.291923 0.26287 2525 1699 665 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_37.v common 49.41 vpr 93.39 MiB 0.18 17808 -1 -1 1 0.85 -1 -1 44236 -1 -1 336 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95628 22 19 5380 4464 1 2808 388 24 24 576 mult_36 auto 56.8 MiB 5.63 18761 103610 22420 74011 7179 93.4 MiB 1.83 0.03 4.00076 -3025.23 -4.00076 4.00076 2.20 0.00806181 0.00718316 0.604862 0.527836 48 32410 39 1.53347e+07 8.61581e+06 1.71014e+06 2969.00 31.86 4.08317 3.55415 52498 402441 -1 26927 14 8877 11141 1810389 415034 4.60176 4.60176 -3624.29 -4.60176 0 0 2.06880e+06 3591.66 0.99 0.67 0.37 -1 -1 0.99 0.298374 0.26988 2630 1772 684 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_38.v common 38.20 vpr 93.70 MiB 0.18 18056 -1 -1 1 0.88 -1 -1 44420 -1 -1 342 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95948 22 19 5454 4521 1 2849 394 24 24 576 clb mult_36 auto 58.0 MiB 5.74 18969 108619 22830 76437 9352 93.7 MiB 1.91 0.02 4.12096 -3014.39 -4.12096 4.12096 2.23 0.00776352 0.00690737 0.642922 0.569333 52 33306 45 1.53347e+07 8.69188e+06 1.82869e+06 3174.81 20.31 3.92253 3.42278 54222 439550 -1 26050 15 8505 10184 1418748 339831 4.36136 4.36136 -3527.5 -4.36136 0 0 2.25030e+06 3906.77 1.09 0.66 0.41 -1 -1 1.09 0.344695 0.311838 2668 1791 703 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_39.v common 35.34 vpr 94.76 MiB 0.19 18232 -1 -1 1 0.88 -1 -1 44448 -1 -1 352 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97036 22 19 5629 4662 1 2951 404 24 24 576 clb mult_36 auto 58.8 MiB 5.94 23074 107828 22757 77650 7421 94.8 MiB 1.88 0.02 4.12096 -3322.13 -4.12096 4.12096 2.22 0.00781161 0.00695725 0.614647 0.541343 54 36781 30 1.53347e+07 8.81866e+06 1.87785e+06 3260.16 16.93 2.76098 2.41288 54798 452027 -1 30622 14 9152 11317 1639378 369010 4.60176 4.60176 -3815.13 -4.60176 0 0 2.31032e+06 4010.97 1.10 0.67 0.44 -1 -1 1.10 0.306474 0.27383 2753 1846 722 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_40.v common 37.66 vpr 94.98 MiB 0.19 18540 -1 -1 1 0.92 -1 -1 46300 -1 -1 357 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97264 22 19 5703 4719 1 2994 409 25 25 625 clb auto 59.1 MiB 5.98 22455 118735 27949 83237 7549 95.0 MiB 2.03 0.02 4.12096 -3280.52 -4.12096 4.12096 2.38 0.00856811 0.00766931 0.676303 0.59614 54 35345 36 1.58291e+07 8.88205e+06 2.04878e+06 3278.05 18.64 3.31449 2.92016 59280 493784 -1 29781 12 8935 10814 1519081 346395 4.72196 4.72196 -3802.36 -4.72196 0 0 2.52006e+06 4032.10 1.21 0.59 0.47 -1 -1 1.21 0.278509 0.250468 2791 1865 741 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_41.v common 35.89 vpr 96.68 MiB 0.19 18916 -1 -1 1 0.97 -1 -1 44940 -1 -1 373 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98996 22 19 5950 4932 1 3111 426 25 25 625 clb auto 60.4 MiB 6.18 22214 125382 29245 88404 7733 96.7 MiB 2.13 0.03 4.12096 -3381.2 -4.12096 4.12096 2.42 0.00799181 0.00701415 0.696498 0.609109 54 37386 41 1.58291e+07 9.48089e+06 2.04878e+06 3278.05 16.17 3.50526 3.06447 59280 493784 -1 29723 17 9599 11532 1750493 417276 4.36136 4.36136 -3949.16 -4.36136 0 0 2.52006e+06 4032.10 1.23 0.79 0.46 -1 -1 1.23 0.383371 0.342378 2912 1956 760 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_42.v common 43.05 vpr 97.17 MiB 0.20 19132 -1 -1 1 1.00 -1 -1 46872 -1 -1 376 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99504 22 19 6024 4989 1 3151 429 25 25 625 clb auto 61.0 MiB 6.42 24030 133023 32515 90790 9718 97.2 MiB 2.29 0.02 4.12096 -3410.85 -4.12096 4.12096 2.41 0.00821964 0.00727751 0.74494 0.653185 56 36005 18 1.58291e+07 9.51893e+06 2.10056e+06 3360.90 22.90 3.86208 3.383 59904 506958 -1 32141 15 9566 12233 1938940 453184 4.48156 4.48156 -4256.98 -4.48156 0 0 2.57664e+06 4122.63 1.17 0.77 0.48 -1 -1 1.17 0.346282 0.309262 2950 1975 779 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_43.v common 41.19 vpr 98.01 MiB 0.20 19540 -1 -1 1 1.05 -1 -1 45828 -1 -1 388 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100364 22 19 6198 5129 1 3252 441 25 25 625 clb auto 62.0 MiB 6.56 24214 124613 27908 88058 8647 98.0 MiB 2.12 0.02 4.24116 -3560.27 -4.24116 4.24116 2.41 0.00849811 0.00751447 0.685577 0.600994 56 37628 27 1.58291e+07 9.67106e+06 2.10056e+06 3360.90 20.86 3.63981 3.19124 59904 506958 -1 32490 13 9820 11880 2047554 479174 4.48156 4.48156 -4277.21 -4.48156 0 0 2.57664e+06 4122.63 1.24 0.80 0.47 -1 -1 1.24 0.343085 0.310259 3034 2030 798 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_44.v common 35.27 vpr 99.05 MiB 0.20 19628 -1 -1 1 1.07 -1 -1 47140 -1 -1 393 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101432 22 19 6272 5186 1 3297 446 26 26 676 clb auto 62.9 MiB 6.65 20938 133280 31755 93993 7532 99.1 MiB 2.23 0.03 4.00076 -3494.89 -4.00076 4.00076 2.65 0.00837643 0.00734428 0.705712 0.613692 52 38301 47 1.91809e+07 9.73445e+06 2.20423e+06 3260.69 14.16 3.44197 3.00883 65116 533202 -1 28941 14 9474 11830 1550928 367727 4.48156 4.48156 -4259.45 -4.48156 0 0 2.70930e+06 4007.84 1.37 0.72 0.49 -1 -1 1.37 0.366595 0.33001 3072 2049 817 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_45.v common 44.70 vpr 100.34 MiB 0.22 20248 -1 -1 1 1.13 -1 -1 47580 -1 -1 406 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102748 22 19 6485 5365 1 3415 460 26 26 676 clb auto 63.8 MiB 6.88 26447 140685 36315 95950 8420 99.8 MiB 2.44 0.03 4.12096 -3732.34 -4.12096 4.12096 2.70 0.00909788 0.00809318 0.762334 0.669428 56 40927 34 1.91809e+07 1.02953e+07 2.31971e+06 3431.53 22.70 4.08856 3.58903 66468 563034 -1 36204 16 10691 14227 2219697 507118 4.60176 4.60176 -4696.16 -4.60176 0 0 2.84390e+06 4206.95 1.30 0.87 0.53 -1 -1 1.30 0.382395 0.340839 3177 2122 836 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_46.v common 35.34 vpr 100.05 MiB 0.21 20084 -1 -1 1 1.17 -1 -1 47604 -1 -1 411 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102452 22 19 6559 5422 1 3449 465 26 26 676 clb auto 64.2 MiB 6.96 24810 144465 35631 100905 7929 100.1 MiB 2.56 0.03 4.36136 -3695.71 -4.36136 4.36136 2.75 0.00998842 0.00891995 0.80372 0.706643 54 39527 24 1.91809e+07 1.03587e+07 2.26288e+06 3347.46 13.29 3.25161 2.84903 65792 548382 -1 33140 13 10066 12275 1757491 398240 4.84216 4.84216 -4468.24 -4.84216 0 0 2.78165e+06 4114.86 1.36 0.78 0.50 -1 -1 1.36 0.381394 0.346381 3215 2141 855 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_47.v common 38.82 vpr 101.52 MiB 0.23 20504 -1 -1 1 1.17 -1 -1 48008 -1 -1 421 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103960 22 19 6735 5564 1 3561 475 26 26 676 clb auto 65.4 MiB 7.04 25405 154191 38002 105336 10853 101.5 MiB 2.67 0.03 4.12096 -3879.79 -4.12096 4.12096 2.65 0.00980552 0.00877219 0.8536 0.74688 56 39673 40 1.91809e+07 1.04854e+07 2.31971e+06 3431.53 16.53 3.63542 3.18406 66468 563034 -1 34999 15 10709 12845 1907784 445148 4.48156 4.48156 -4506.41 -4.48156 0 0 2.84390e+06 4206.95 1.34 0.82 0.51 -1 -1 1.34 0.394022 0.353634 3301 2196 874 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_48.v common 39.80 vpr 101.76 MiB 0.26 20900 -1 -1 1 1.22 -1 -1 47568 -1 -1 427 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 104204 22 19 6809 5621 1 3598 481 26 26 676 clb auto 65.7 MiB 7.34 26041 169951 43592 115102 11257 101.8 MiB 2.96 0.03 4.24116 -3844.16 -4.24116 4.24116 2.69 0.00925297 0.00824465 0.929341 0.813065 54 40915 27 1.91809e+07 1.05615e+07 2.26288e+06 3347.46 16.73 3.90199 3.41378 65792 548382 -1 34393 14 10531 12519 1891771 443254 4.60176 4.60176 -4706.54 -4.60176 0 0 2.78165e+06 4114.86 1.37 0.84 0.49 -1 -1 1.37 0.405307 0.364643 3339 2215 893 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_49.v common 46.95 vpr 105.81 MiB 0.23 21280 -1 -1 1 1.27 -1 -1 48516 -1 -1 443 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 108352 22 19 7094 5872 1 3718 498 27 27 729 clb auto 67.3 MiB 7.43 26257 160311 37135 112474 10702 103.3 MiB 2.75 0.03 4.00076 -4080.48 -4.00076 4.00076 2.96 0.009784 0.00858369 0.861954 0.755815 56 40660 33 1.9726e+07 1.11604e+07 2.51142e+06 3445.02 23.16 4.21049 3.69238 71406 610069 -1 36455 15 11201 13892 2089457 476839 4.36136 4.36136 -4809.75 -4.36136 0 0 3.07846e+06 4222.85 1.51 0.81 0.58 -1 -1 1.51 0.391097 0.351139 3480 2324 912 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_50.v common 51.76 vpr 106.67 MiB 0.22 21440 -1 -1 1 1.30 -1 -1 47780 -1 -1 448 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 109232 22 19 7168 5929 1 3755 503 27 27 729 clb auto 67.7 MiB 7.19 28072 168419 40651 117312 10456 103.5 MiB 2.92 0.03 4.24116 -4077.95 -4.24116 4.24116 2.86 0.0102936 0.00915175 0.920982 0.807789 60 40436 17 1.9726e+07 1.12237e+07 2.62021e+06 3594.25 28.12 4.61262 4.03702 73590 657565 -1 36331 13 10751 13109 2240358 502678 4.60176 4.60176 -4702.88 -4.60176 0 0 3.26774e+06 4482.49 1.65 0.89 0.58 -1 -1 1.65 0.395837 0.356947 3518 2343 931 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_51.v common 44.75 vpr 104.68 MiB 0.47 21720 -1 -1 1 1.35 -1 -1 48824 -1 -1 459 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 107192 22 19 7344 6071 1 3863 514 27 27 729 clb auto 68.8 MiB 7.77 28645 171328 41483 118883 10962 104.7 MiB 2.95 0.03 4.24116 -4186.67 -4.24116 4.24116 2.98 0.00952411 0.00838473 0.923877 0.813049 54 45890 33 1.9726e+07 1.13632e+07 2.44988e+06 3360.60 19.69 4.19575 3.67221 70678 594165 -1 38327 15 11660 14991 2155365 488792 4.60176 4.60176 -4999.92 -4.60176 0 0 3.01106e+06 4130.40 1.55 0.95 0.56 -1 -1 1.55 0.448506 0.403147 3604 2398 950 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_52.v common 48.73 vpr 109.41 MiB 0.25 21988 -1 -1 1 1.41 -1 -1 48792 -1 -1 464 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 112032 22 19 7418 6128 1 3909 519 27 27 729 clb auto 69.3 MiB 7.92 29073 175575 42613 122728 10234 105.4 MiB 2.87 0.03 4.36136 -4337.8 -4.36136 4.36136 2.83 0.00888965 0.0077496 0.873671 0.75734 58 43150 25 1.9726e+07 1.14266e+07 2.56250e+06 3515.09 23.96 4.25381 3.7218 72862 642985 -1 38648 12 11058 13461 2150780 475865 4.72196 4.72196 -5145.99 -4.72196 0 0 3.20690e+06 4399.04 1.60 0.81 0.65 -1 -1 1.60 0.358382 0.32146 3642 2417 969 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_14.v common 11.34 vpr 69.52 MiB 0.06 9508 -1 -1 1 0.20 -1 -1 38948 -1 -1 79 22 0 4 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71188 22 19 1246 925 1 736 124 16 16 256 mult_36 auto 32.0 MiB 1.51 4303 18355 4385 10323 3647 69.5 MiB 0.31 0.01 7.28138 -332.606 -7.28138 7.28138 0.81 0.0019722 0.00176736 0.126744 0.113615 46 7737 23 6.34292e+06 2.58556e+06 684529. 2673.94 5.96 0.79688 0.705373 22592 160355 -1 6224 21 3788 4263 571920 150464 7.56754 7.56754 -389.43 -7.56754 0 0 838722. 3276.26 0.32 0.22 0.15 -1 -1 0.32 0.0941775 0.0849177 589 285 247 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_15.v common 12.27 vpr 70.11 MiB 0.06 9640 -1 -1 1 0.20 -1 -1 38880 -1 -1 84 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71792 22 19 1344 989 1 796 130 16 16 256 mult_36 auto 32.6 MiB 1.80 4700 19541 4260 12325 2956 70.1 MiB 0.35 0.01 7.18832 -337.044 -7.18832 7.18832 0.83 0.0020808 0.00188227 0.141857 0.127917 42 9489 35 6.34292e+06 3.04495e+06 613404. 2396.11 6.36 0.950644 0.844854 21828 146600 -1 7395 23 5967 6653 1098620 292956 7.69394 7.69394 -428.664 -7.69394 0 0 784202. 3063.29 0.30 0.35 0.14 -1 -1 0.30 0.114485 0.103199 633 304 266 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_16.v common 12.65 vpr 70.29 MiB 0.06 10064 -1 -1 1 0.22 -1 -1 38800 -1 -1 89 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71976 22 19 1418 1046 1 833 135 16 16 256 mult_36 auto 32.6 MiB 1.77 5254 19857 4348 12309 3200 70.3 MiB 0.36 0.01 7.2672 -359.764 -7.2672 7.2672 0.83 0.00216506 0.00193846 0.145303 0.130789 44 9404 38 6.34292e+06 3.10834e+06 649498. 2537.10 6.71 0.997763 0.881471 22336 155612 -1 7256 22 4990 5549 819139 216828 7.52234 7.52234 -454.33 -7.52234 0 0 820238. 3204.05 0.32 0.28 0.15 -1 -1 0.32 0.111497 0.100262 671 323 285 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_17.v common 20.98 vpr 71.12 MiB 0.09 10296 -1 -1 1 0.23 -1 -1 38560 -1 -1 95 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72832 22 19 1518 1112 1 899 141 16 16 256 mult_36 auto 33.4 MiB 1.91 5569 23931 5301 15551 3079 71.1 MiB 0.47 0.01 7.82463 -405.474 -7.82463 7.82463 0.83 0.00243536 0.00217975 0.173357 0.156204 40 12113 38 6.34292e+06 3.18441e+06 583096. 2277.72 14.65 1.11904 0.989826 21572 140635 -1 9370 23 7938 8785 1471801 371373 9.21754 9.21754 -555.873 -9.21754 0 0 763333. 2981.77 0.29 0.42 0.14 -1 -1 0.29 0.124499 0.112389 717 342 304 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_18.v common 10.86 vpr 71.75 MiB 0.07 10608 -1 -1 1 0.24 -1 -1 38884 -1 -1 100 22 0 5 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73472 22 19 1592 1169 1 937 146 16 16 256 mult_36 auto 34.2 MiB 1.97 5796 29714 6695 16788 6231 71.8 MiB 0.52 0.01 7.94998 -412.358 -7.94998 7.94998 0.85 0.00269012 0.00238389 0.207081 0.185755 46 10009 42 6.34292e+06 3.2478e+06 684529. 2673.94 4.34 0.794653 0.706459 22592 160355 -1 8026 24 5425 6056 756115 202735 8.53465 8.53465 -497.512 -8.53465 0 0 838722. 3276.26 0.33 0.31 0.15 -1 -1 0.33 0.134381 0.121367 755 361 323 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_19.v common 14.29 vpr 72.14 MiB 0.07 10772 -1 -1 1 0.23 -1 -1 39704 -1 -1 105 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73872 22 19 1688 1231 1 998 152 16 16 256 mult_36 auto 34.8 MiB 2.16 6209 22427 4321 15375 2731 72.1 MiB 0.50 0.01 7.87378 -431.1 -7.87378 7.87378 0.85 0.00287527 0.00260073 0.169386 0.152663 48 10602 26 6.34292e+06 3.70719e+06 714410. 2790.66 7.59 1.12116 0.994755 22848 165380 -1 9172 21 6169 7009 1216820 298908 8.29919 8.29919 -554.93 -8.29919 0 0 863353. 3372.47 0.34 0.37 0.16 -1 -1 0.34 0.126823 0.114311 797 380 342 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_20.v common 12.50 vpr 72.66 MiB 0.08 10680 -1 -1 1 0.26 -1 -1 39372 -1 -1 110 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74408 22 19 1762 1288 1 1033 157 16 16 256 mult_36 auto 35.1 MiB 2.15 6161 27229 5582 17072 4575 72.7 MiB 0.50 0.01 7.98298 -432.699 -7.98298 7.98298 0.84 0.0030564 0.00268199 0.19565 0.174641 46 11543 28 6.34292e+06 3.77058e+06 684529. 2673.94 5.74 0.868685 0.771294 22592 160355 -1 8799 23 5381 6205 975777 247901 8.21185 8.21185 -536.419 -8.21185 0 0 838722. 3276.26 0.33 0.38 0.15 -1 -1 0.33 0.149166 0.1352 835 399 361 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_21.v common 15.17 vpr 73.45 MiB 0.08 11176 -1 -1 1 0.27 -1 -1 39436 -1 -1 117 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75212 22 19 1859 1351 1 1097 164 16 16 256 mult_36 auto 35.8 MiB 2.45 7110 27044 5626 17805 3613 73.4 MiB 0.59 0.01 7.95478 -444.101 -7.95478 7.95478 0.89 0.0031608 0.00286814 0.209535 0.188305 52 12533 32 6.34292e+06 3.85933e+06 763333. 2981.77 7.89 1.30838 1.16558 23612 180979 -1 9814 22 5612 6312 1116617 283301 8.52834 8.52834 -614.391 -8.52834 0 0 940801. 3675.00 0.37 0.38 0.18 -1 -1 0.37 0.144391 0.130185 878 418 380 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_22.v common 11.42 vpr 73.86 MiB 0.09 11228 -1 -1 1 0.28 -1 -1 39772 -1 -1 121 22 0 6 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75632 22 19 1933 1408 1 1134 168 16 16 256 mult_36 auto 36.4 MiB 2.39 7567 23781 4429 16334 3018 73.9 MiB 0.44 0.01 7.95372 -476.282 -7.95372 7.95372 0.81 0.00295916 0.00264227 0.155094 0.138861 48 12868 42 6.34292e+06 3.91004e+06 714410. 2790.66 4.41 0.853828 0.759448 22848 165380 -1 10822 25 6440 7553 1259518 310054 8.58254 8.58254 -636.722 -8.58254 0 0 863353. 3372.47 0.37 0.47 0.15 -1 -1 0.37 0.175644 0.158174 916 437 399 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_23.v common 16.17 vpr 74.27 MiB 0.09 11540 -1 -1 1 0.30 -1 -1 40688 -1 -1 129 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76052 22 19 2031 1472 1 1198 177 18 18 324 mult_36 auto 36.6 MiB 2.55 7467 31921 6937 20750 4234 74.3 MiB 0.62 0.01 7.85178 -507.847 -7.85178 7.85178 1.13 0.00326778 0.00297328 0.229886 0.206496 46 14334 30 7.79418e+06 4.40746e+06 895831. 2764.91 7.98 1.04007 0.924464 29024 211752 -1 11220 23 7134 8184 1305612 307962 8.52453 8.52453 -686.543 -8.52453 0 0 1.09776e+06 3388.15 0.45 0.43 0.19 -1 -1 0.45 0.163041 0.147017 960 456 418 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_24.v common 15.77 vpr 74.69 MiB 0.09 11876 -1 -1 1 0.31 -1 -1 39532 -1 -1 134 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76484 22 19 2105 1529 1 1235 182 18 18 324 mult_36 auto 37.2 MiB 2.61 7627 30052 6166 20026 3860 74.7 MiB 0.55 0.01 7.58423 -491.373 -7.58423 7.58423 1.09 0.00314826 0.00280675 0.199757 0.177739 46 14294 44 7.79418e+06 4.47085e+06 895831. 2764.91 7.71 1.06793 0.941059 29024 211752 -1 10980 21 7341 8255 1361022 324943 8.08185 8.08185 -727.806 -8.08185 0 0 1.09776e+06 3388.15 0.37 0.45 0.17 -1 -1 0.37 0.16351 0.147772 998 475 437 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_25.v common 14.76 vpr 75.44 MiB 0.10 12056 -1 -1 1 0.34 -1 -1 40180 -1 -1 139 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77248 22 19 2201 1591 1 1295 187 18 18 324 mult_36 auto 37.8 MiB 2.91 7986 32761 6910 22211 3640 75.4 MiB 0.62 0.01 7.75358 -518.618 -7.75358 7.75358 1.10 0.00305474 0.00273085 0.209961 0.187258 46 15412 47 7.79418e+06 4.53424e+06 895831. 2764.91 5.96 1.02606 0.907211 29024 211752 -1 11807 23 7565 8638 1520916 366939 8.51534 8.51534 -782.812 -8.51534 0 0 1.09776e+06 3388.15 0.50 0.53 0.20 -1 -1 0.50 0.191574 0.172908 1040 494 456 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_26.v common 20.94 vpr 75.51 MiB 0.10 12080 -1 -1 1 0.36 -1 -1 40664 -1 -1 143 22 0 7 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77324 22 19 2275 1648 1 1331 191 18 18 324 mult_36 auto 38.0 MiB 2.89 8417 36974 8008 23386 5580 75.5 MiB 0.73 0.01 7.75358 -558.148 -7.75358 7.75358 1.09 0.00350015 0.00313355 0.265424 0.2364 50 15064 31 7.79418e+06 4.58495e+06 975281. 3010.13 11.96 1.60201 1.41467 29672 225968 -1 12230 21 8797 10039 1799154 413585 7.97179 7.97179 -817.343 -7.97179 0 0 1.16663e+06 3600.72 0.52 0.56 0.22 -1 -1 0.52 0.179214 0.162147 1078 513 475 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_27.v common 16.44 vpr 76.48 MiB 0.10 12428 -1 -1 1 0.38 -1 -1 40076 -1 -1 151 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78320 22 19 2385 1724 1 1408 200 18 18 324 mult_36 auto 39.1 MiB 3.12 8778 38744 8386 25044 5314 76.5 MiB 0.67 0.01 7.87378 -563.178 -7.87378 7.87378 1.11 0.00335976 0.00299816 0.248161 0.221065 46 17613 49 7.79418e+06 5.08238e+06 895831. 2764.91 7.15 1.1405 1.01017 29024 211752 -1 12585 23 8008 9182 1557352 375477 8.19905 8.19905 -902.976 -8.19905 0 0 1.09776e+06 3388.15 0.51 0.58 0.20 -1 -1 0.51 0.216892 0.196278 1134 532 494 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_28.v common 20.50 vpr 76.84 MiB 0.11 12500 -1 -1 1 0.38 -1 -1 41020 -1 -1 156 22 0 8 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78680 22 19 2459 1781 1 1444 205 18 18 324 mult_36 auto 39.6 MiB 3.12 8795 41277 8812 24112 8353 76.8 MiB 0.78 0.01 7.83563 -588.755 -7.83563 7.83563 1.14 0.00418719 0.00374725 0.297628 0.26751 48 16135 33 7.79418e+06 5.14577e+06 935225. 2886.50 10.92 1.71073 1.51624 29348 218440 -1 13198 23 8778 10056 1750274 413379 8.45028 8.45028 -914.13 -8.45028 0 0 1.13028e+06 3488.51 0.53 0.62 0.21 -1 -1 0.53 0.21944 0.198286 1172 551 513 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_29.v common 19.03 vpr 77.15 MiB 0.10 12944 -1 -1 1 0.38 -1 -1 41036 -1 -1 163 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79004 22 19 2565 1853 1 1517 213 22 22 484 mult_36 auto 39.7 MiB 3.36 9673 42758 9619 29321 3818 77.2 MiB 0.84 0.01 7.93278 -566.329 -7.93278 7.93278 1.94 0.00428522 0.00368239 0.289589 0.257304 46 16967 31 1.26954e+07 5.63051e+06 1.37878e+06 2848.72 7.45 1.25717 1.1124 43906 328446 -1 13880 23 8841 10104 1538720 369186 8.39839 8.39839 -941.471 -8.39839 0 0 1.69059e+06 3492.95 0.79 0.56 0.30 -1 -1 0.79 0.217387 0.197387 1224 570 532 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_30.v common 31.16 vpr 77.50 MiB 0.10 12904 -1 -1 1 0.39 -1 -1 41012 -1 -1 168 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79356 22 19 2639 1910 1 1554 218 22 22 484 mult_36 auto 40.7 MiB 3.29 11109 46723 10129 32229 4365 77.5 MiB 0.96 0.01 7.87378 -586.602 -7.87378 7.87378 1.83 0.00417059 0.0037375 0.311634 0.277932 48 19634 33 1.26954e+07 5.6939e+06 1.44011e+06 2975.42 19.19 1.93069 1.70411 44390 338934 -1 16197 22 11145 12615 3297493 726548 8.44065 8.44065 -944.674 -8.44065 0 0 1.74100e+06 3597.11 0.82 0.93 0.29 -1 -1 0.82 0.210953 0.18985 1262 589 551 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_31.v common 21.09 vpr 78.16 MiB 0.11 13152 -1 -1 1 0.40 -1 -1 41072 -1 -1 175 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80032 22 19 2744 1981 1 1626 225 22 22 484 mult_36 auto 41.2 MiB 3.52 10647 50157 11441 34324 4392 78.2 MiB 0.95 0.01 7.71437 -591.934 -7.71437 7.71437 1.85 0.00434903 0.00393812 0.331083 0.295409 46 18619 26 1.26954e+07 5.78265e+06 1.37878e+06 2848.72 8.99 1.37738 1.22394 43906 328446 -1 15265 23 9917 11222 2472640 578379 8.23085 8.23085 -927.911 -8.23085 0 0 1.69059e+06 3492.95 0.80 0.78 0.28 -1 -1 0.80 0.23532 0.211694 1313 608 570 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_32.v common 28.84 vpr 79.15 MiB 0.12 13428 -1 -1 1 0.43 -1 -1 40520 -1 -1 179 22 0 9 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81052 22 19 2818 2038 1 1662 229 22 22 484 mult_36 auto 42.1 MiB 3.63 11020 52029 11586 31396 9047 79.2 MiB 0.96 0.01 7.78063 -660.549 -7.78063 7.78063 1.89 0.00426621 0.00381102 0.342758 0.303011 50 19629 30 1.26954e+07 5.83336e+06 1.50222e+06 3103.76 16.49 2.05011 1.81254 44874 350400 -1 16034 22 11207 12648 2281344 506423 8.24314 8.24314 -1033.78 -8.24314 0 0 1.79645e+06 3711.66 0.83 0.75 0.33 -1 -1 0.83 0.234371 0.212077 1351 627 589 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_33.v common 28.93 vpr 79.20 MiB 0.13 13808 -1 -1 1 0.44 -1 -1 41256 -1 -1 187 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81104 22 19 2923 2109 1 1730 238 22 22 484 mult_36 auto 42.2 MiB 3.65 11263 51828 11461 35042 5325 79.2 MiB 0.99 0.01 8.38883 -680.513 -8.38883 8.38883 1.83 0.00462365 0.00415911 0.345708 0.309719 46 20991 41 1.26954e+07 6.33079e+06 1.37878e+06 2848.72 16.62 2.25341 2.00746 43906 328446 -1 16501 23 10723 12138 2059672 476732 8.78405 8.78405 -1098.1 -8.78405 0 0 1.69059e+06 3492.95 0.76 0.74 0.30 -1 -1 0.76 0.260126 0.235135 1402 646 608 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_34.v common 25.05 vpr 79.84 MiB 0.13 14096 -1 -1 1 0.47 -1 -1 41692 -1 -1 193 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81752 22 19 2997 2166 1 1769 244 22 22 484 mult_36 auto 42.7 MiB 3.88 12137 58156 12672 38653 6831 79.8 MiB 1.17 0.01 8.34484 -680.997 -8.34484 8.34484 1.81 0.00457183 0.00399571 0.385204 0.341692 46 21251 29 1.26954e+07 6.40685e+06 1.37878e+06 2848.72 12.35 1.52379 1.34526 43906 328446 -1 16773 21 9362 10736 1872176 442020 9.59665 9.59665 -1089.3 -9.59665 0 0 1.69059e+06 3492.95 0.78 0.66 0.30 -1 -1 0.78 0.233519 0.211394 1441 665 627 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_35.v common 23.65 vpr 80.65 MiB 0.13 14368 -1 -1 1 0.49 -1 -1 41552 -1 -1 199 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82588 22 19 3101 2236 1 1838 250 22 22 484 mult_36 auto 43.4 MiB 4.07 12072 57701 13086 38657 5958 80.7 MiB 1.16 0.02 8.32389 -747.827 -8.32389 8.32389 1.82 0.00481787 0.00423848 0.381371 0.336414 46 21174 39 1.26954e+07 6.48292e+06 1.37878e+06 2848.72 10.62 1.58183 1.39163 43906 328446 -1 17089 23 10403 11820 1975249 471825 9.24405 9.24405 -1091.37 -9.24405 0 0 1.69059e+06 3492.95 0.79 0.71 0.30 -1 -1 0.79 0.258728 0.233231 1491 684 646 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_36.v common 29.93 vpr 80.99 MiB 0.13 14364 -1 -1 1 0.50 -1 -1 41844 -1 -1 203 22 0 10 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82932 22 19 3175 2293 1 1872 254 22 22 484 mult_36 auto 43.8 MiB 4.21 12308 58142 12767 38087 7288 81.0 MiB 1.08 0.01 8.45509 -688.807 -8.45509 8.45509 1.76 0.00470816 0.00420698 0.357254 0.314277 48 22194 37 1.26954e+07 6.53363e+06 1.44011e+06 2975.42 16.55 2.29536 2.02146 44390 338934 -1 18140 23 13979 15834 3170096 724127 9.42133 9.42133 -1118.69 -9.42133 0 0 1.74100e+06 3597.11 0.82 0.97 0.32 -1 -1 0.82 0.265457 0.238625 1529 703 665 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_37.v common 24.82 vpr 81.77 MiB 0.14 14648 -1 -1 1 0.52 -1 -1 41580 -1 -1 210 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83736 22 19 3280 2364 1 1945 262 24 24 576 mult_36 auto 44.7 MiB 4.39 12376 69816 16443 47607 5766 81.8 MiB 1.41 0.02 8.59624 -809.865 -8.59624 8.59624 2.17 0.00546328 0.00487635 0.449816 0.395554 46 21961 35 1.53347e+07 7.01838e+06 1.63708e+06 2842.15 10.24 1.82157 1.60958 51922 389946 -1 17592 24 9871 11527 1786037 441258 8.97651 8.97651 -1336.7 -8.97651 0 0 2.00908e+06 3487.99 0.95 0.69 0.34 -1 -1 0.95 0.289523 0.2606 1580 722 684 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_38.v common 23.40 vpr 82.07 MiB 0.14 14644 -1 -1 1 0.54 -1 -1 41936 -1 -1 215 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84040 22 19 3354 2421 1 1981 267 24 24 576 mult_36 auto 45.1 MiB 4.45 12502 68128 15699 46579 5850 82.1 MiB 1.34 0.02 8.50903 -802.402 -8.50903 8.50903 2.15 0.00482899 0.00427492 0.407837 0.357526 48 22536 41 1.53347e+07 7.08177e+06 1.71014e+06 2969.00 8.56 1.60015 1.41037 52498 402441 -1 18484 24 12958 14458 2286207 540179 9.41531 9.41531 -1216.42 -9.41531 0 0 2.06880e+06 3591.66 1.02 0.86 0.37 -1 -1 1.02 0.31598 0.284608 1618 741 703 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_39.v common 24.89 vpr 82.83 MiB 0.15 14900 -1 -1 1 0.55 -1 -1 41596 -1 -1 222 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84820 22 19 3457 2490 1 2052 274 24 24 576 mult_36 auto 45.7 MiB 4.61 13414 66949 15478 45937 5534 82.8 MiB 1.34 0.02 8.50903 -821.422 -8.50903 8.50903 2.21 0.00532076 0.0048068 0.423088 0.379009 46 24618 28 1.53347e+07 7.17052e+06 1.63708e+06 2842.15 9.89 1.5403 1.36609 51922 389946 -1 19277 22 12651 14328 2593538 598824 8.86054 8.86054 -1136.22 -8.86054 0 0 2.00908e+06 3487.99 0.90 0.80 0.36 -1 -1 0.90 0.2553 0.228107 1667 760 722 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_40.v common 24.65 vpr 83.18 MiB 0.15 15276 -1 -1 1 0.58 -1 -1 41696 -1 -1 227 22 0 11 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85172 22 19 3531 2547 1 2089 279 24 24 576 mult_36 auto 46.1 MiB 4.68 13932 77714 17814 54158 5742 83.2 MiB 1.58 0.02 8.36578 -880.945 -8.36578 8.36578 2.20 0.00515151 0.00449761 0.493691 0.436543 46 25093 43 1.53347e+07 7.23391e+06 1.63708e+06 2842.15 9.21 1.78492 1.58394 51922 389946 -1 19831 25 12693 14411 2442347 573109 9.10259 9.10259 -1492.05 -9.10259 0 0 2.00908e+06 3487.99 0.95 0.89 0.36 -1 -1 0.95 0.329998 0.296773 1705 779 741 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_41.v common 44.55 vpr 83.82 MiB 0.15 15464 -1 -1 1 0.60 -1 -1 42000 -1 -1 233 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85832 22 19 3634 2616 1 2155 286 24 24 576 mult_36 auto 46.9 MiB 4.86 13939 76507 18256 51832 6419 83.8 MiB 1.52 0.02 8.62924 -870.811 -8.62924 8.62924 2.18 0.00549691 0.00493929 0.485986 0.433754 44 25118 31 1.53347e+07 7.70597e+06 1.55518e+06 2699.97 29.05 2.67998 2.3687 51346 378163 -1 19533 23 10630 12153 1845879 457002 9.15685 9.15685 -1412.13 -9.15685 0 0 1.96475e+06 3411.02 0.96 0.72 0.35 -1 -1 0.96 0.306957 0.276262 1754 798 760 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_42.v common 35.60 vpr 84.47 MiB 0.15 15472 -1 -1 1 0.60 -1 -1 42604 -1 -1 238 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86500 22 19 3708 2673 1 2193 291 24 24 576 mult_36 auto 47.4 MiB 4.65 15641 78375 18649 52730 6996 84.5 MiB 1.57 0.02 8.48598 -921.123 -8.48598 8.48598 2.12 0.00583181 0.00500943 0.488186 0.429668 52 27405 34 1.53347e+07 7.76936e+06 1.82869e+06 3174.81 20.19 2.94524 2.59178 54222 439550 -1 21259 23 13113 14888 2521400 581567 8.97139 8.97139 -1387.06 -8.97139 0 0 2.25030e+06 3906.77 1.07 0.89 0.38 -1 -1 1.07 0.312085 0.279887 1792 817 779 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_43.v common 27.71 vpr 85.09 MiB 0.17 15680 -1 -1 1 0.64 -1 -1 43144 -1 -1 244 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87136 22 19 3810 2741 1 2260 297 24 24 576 mult_36 auto 47.8 MiB 5.22 14855 75537 16524 48456 10557 85.1 MiB 1.52 0.02 8.47709 -906.743 -8.47709 8.47709 2.23 0.00586042 0.00525946 0.467781 0.41173 54 24757 36 1.53347e+07 7.84543e+06 1.87785e+06 3260.16 11.50 2.01818 1.78696 54798 452027 -1 20229 23 10519 12366 1982577 471012 8.72225 8.72225 -1406.08 -8.72225 0 0 2.31032e+06 4010.97 1.05 0.73 0.42 -1 -1 1.05 0.29546 0.265599 1840 836 798 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_44.v common 30.95 vpr 85.31 MiB 0.17 15904 -1 -1 1 0.65 -1 -1 42600 -1 -1 249 22 0 12 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87360 22 19 3884 2798 1 2296 302 24 24 576 mult_36 auto 48.3 MiB 5.33 14875 89358 22008 59364 7986 85.3 MiB 1.91 0.02 8.62924 -947.26 -8.62924 8.62924 2.22 0.00564676 0.00503904 0.567669 0.501976 50 24954 44 1.53347e+07 7.90882e+06 1.78400e+06 3097.22 14.30 2.19263 1.93378 53074 415989 -1 20612 24 12745 14499 2435752 574182 9.41425 9.41425 -1467.66 -9.41425 0 0 2.13454e+06 3705.80 0.95 0.82 0.38 -1 -1 0.95 0.306012 0.272384 1878 855 817 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_45.v common 36.75 vpr 85.71 MiB 0.17 16096 -1 -1 1 0.70 -1 -1 44368 -1 -1 256 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87768 22 19 3989 2869 1 2368 310 24 24 576 mult_36 auto 48.5 MiB 5.48 16069 85198 18474 59252 7472 85.7 MiB 1.96 0.03 8.50903 -919.033 -8.50903 8.50903 2.20 0.00674117 0.00595569 0.555056 0.490263 52 27397 33 1.53347e+07 8.39357e+06 1.82869e+06 3174.81 19.31 2.85498 2.52264 54222 439550 -1 22130 25 13619 15683 3474495 830124 8.83719 8.83719 -1318.88 -8.83719 0 0 2.25030e+06 3906.77 1.08 1.13 0.41 -1 -1 1.08 0.358622 0.322012 1929 874 836 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_46.v common 26.65 vpr 85.96 MiB 0.17 16220 -1 -1 1 0.71 -1 -1 44512 -1 -1 260 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88020 22 19 4063 2926 1 2404 314 24 24 576 mult_36 auto 48.9 MiB 5.66 15866 79198 17254 55735 6209 86.0 MiB 1.64 0.02 8.98878 -920.993 -8.98878 8.98878 2.28 0.00620662 0.00558751 0.489545 0.436008 48 27407 40 1.53347e+07 8.44428e+06 1.71014e+06 2969.00 9.31 2.02542 1.79412 52498 402441 -1 23105 21 13213 15520 3065974 708369 9.39725 9.39725 -1581.61 -9.39725 0 0 2.06880e+06 3591.66 1.00 1.02 0.37 -1 -1 1.00 0.337161 0.305371 1967 893 855 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_47.v common 31.34 vpr 86.45 MiB 0.19 16616 -1 -1 1 0.73 -1 -1 44048 -1 -1 267 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88524 22 19 4167 2996 1 2473 321 24 24 576 mult_36 auto 49.5 MiB 5.78 16666 93651 22036 62296 9319 86.4 MiB 1.95 0.02 8.62924 -919.448 -8.62924 8.62924 2.28 0.00633461 0.00570298 0.569883 0.507684 54 27056 29 1.53347e+07 8.53303e+06 1.87785e+06 3260.16 13.43 2.4412 2.15376 54798 452027 -1 22564 24 13389 15174 2813825 684398 9.03785 9.03785 -1421.57 -9.03785 0 0 2.31032e+06 4010.97 1.09 0.99 0.42 -1 -1 1.09 0.359718 0.324222 2017 912 874 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_48.v common 63.35 vpr 86.89 MiB 0.19 16728 -1 -1 1 0.74 -1 -1 44572 -1 -1 272 22 0 13 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88972 22 19 4241 3053 1 2509 326 24 24 576 mult_36 auto 50.0 MiB 5.68 16903 92248 21170 57770 13308 86.9 MiB 1.72 0.02 8.62818 -1017.52 -8.62818 8.62818 2.14 0.00608726 0.00540547 0.521387 0.457549 50 29128 39 1.53347e+07 8.59642e+06 1.78400e+06 3097.22 46.07 3.14753 2.75459 53074 415989 -1 23547 23 14088 16309 2648784 637717 9.19673 9.19673 -1546.85 -9.19673 0 0 2.13454e+06 3705.80 1.03 0.95 0.39 -1 -1 1.03 0.337629 0.299883 2055 931 893 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_49.v common 33.60 vpr 87.75 MiB 0.20 17156 -1 -1 1 0.75 -1 -1 44920 -1 -1 278 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89860 22 19 4346 3124 1 2580 333 24 24 576 mult_36 auto 50.8 MiB 5.84 18688 79890 17350 54390 8150 87.8 MiB 1.72 0.02 8.72849 -1041.82 -8.72849 8.72849 2.18 0.00601576 0.00532354 0.480609 0.420986 54 30739 46 1.53347e+07 9.06848e+06 1.87785e+06 3260.16 15.85 2.64421 2.32129 54798 452027 -1 25330 22 14720 17001 3056841 730357 9.33514 9.33514 -1551.56 -9.33514 0 0 2.31032e+06 4010.97 1.11 1.06 0.42 -1 -1 1.11 0.360067 0.324336 2106 950 912 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_50.v common 47.00 vpr 88.06 MiB 0.20 17256 -1 -1 1 0.76 -1 -1 44700 -1 -1 283 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90172 22 19 4420 3181 1 2615 338 24 24 576 mult_36 auto 51.2 MiB 6.03 17076 95594 22708 57311 15575 88.1 MiB 1.87 0.02 8.57798 -1066.4 -8.57798 8.57798 2.24 0.00673492 0.00604821 0.578596 0.510882 58 26614 40 1.53347e+07 9.13187e+06 1.96475e+06 3411.02 28.83 3.60113 3.18341 56522 489154 -1 22894 24 12306 13636 2462602 569366 8.93345 8.93345 -1488.13 -8.93345 0 0 2.46106e+06 4272.68 1.20 0.94 0.43 -1 -1 1.20 0.388077 0.34813 2144 969 931 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_51.v common 33.63 vpr 88.75 MiB 0.21 17500 -1 -1 1 0.82 -1 -1 45056 -1 -1 291 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90884 22 19 4524 3251 1 2687 346 24 24 576 mult_36 auto 51.8 MiB 6.15 19116 93824 20236 64664 8924 88.8 MiB 2.00 0.03 8.86858 -1053.02 -8.86858 8.86858 2.22 0.00706762 0.00639589 0.581415 0.518884 56 31470 49 1.53347e+07 9.2333e+06 1.92546e+06 3342.82 15.17 2.61522 2.31546 55374 464059 -1 26637 22 14735 16793 3217701 765440 9.59754 9.59754 -1781.48 -9.59754 0 0 2.36234e+06 4101.29 1.04 1.04 0.44 -1 -1 1.04 0.338072 0.301749 2194 988 950 19 0 0 -k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_52.v common 28.37 vpr 89.04 MiB 0.22 17664 -1 -1 1 0.81 -1 -1 45396 -1 -1 295 22 0 14 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91180 22 19 4598 3308 1 2721 350 24 24 576 mult_36 auto 52.2 MiB 6.22 17806 95291 21587 62454 11250 89.0 MiB 1.87 0.02 8.50903 -1096 -8.50903 8.50903 2.18 0.00658477 0.00580573 0.545609 0.476813 50 29470 42 1.53347e+07 9.28401e+06 1.78400e+06 3097.22 9.97 2.18783 1.91634 53074 415989 -1 24640 24 16078 18593 3227560 771947 9.69685 9.69685 -1845.6 -9.69685 0 0 2.13454e+06 3705.80 1.02 1.12 0.38 -1 -1 1.02 0.39723 0.356401 2232 1007 969 19 0 0 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_14.v common 8.75 vpr 72.94 MiB 0.06 10688 -1 -1 8 0.59 -1 -1 40204 -1 -1 129 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74692 22 19 1764 1664 1 986 174 16 16 256 mult_36 auto 34.9 MiB 0.31 6950 22484 4314 16298 1872 72.9 MiB 0.35 0.01 3.97876 -1194.27 -3.97876 3.97876 0.82 0.00282128 0.00247538 0.154371 0.135275 54 13279 29 6.2557e+06 3.1391e+06 784202. 3063.29 3.75 0.898366 0.790294 23308 185586 -1 10939 15 3911 7989 660108 160597 4.33936 4.33936 -1345.3 -4.33936 0 0 965591. 3771.84 0.38 0.28 0.19 -1 -1 0.38 0.13023 0.118656 966 909 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_15.v common 14.06 vpr 73.55 MiB 0.07 11152 -1 -1 8 0.60 -1 -1 40768 -1 -1 139 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75312 22 19 1918 1801 1 1083 185 16 16 256 clb mult_36 auto 35.7 MiB 0.33 7708 26485 5012 19283 2190 73.5 MiB 0.41 0.01 4.09896 -1323.08 -4.09896 4.09896 0.80 0.00321197 0.00282657 0.173722 0.15257 64 12735 48 6.2557e+06 3.65564e+06 891356. 3481.86 8.86 1.5564 1.37201 25092 220585 -1 11559 13 3728 7247 701585 162821 4.33936 4.33936 -1472.33 -4.33936 0 0 1.11946e+06 4372.88 0.45 0.27 0.23 -1 -1 0.45 0.12349 0.112542 1047 984 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_16.v common 14.81 vpr 73.41 MiB 0.07 11388 -1 -1 8 0.67 -1 -1 40400 -1 -1 143 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75176 22 19 1976 1859 1 1114 189 17 17 289 clb auto 36.1 MiB 0.35 8087 27831 5702 20181 1948 73.4 MiB 0.43 0.01 3.97876 -1337.86 -3.97876 3.97876 0.92 0.00304645 0.0027101 0.180081 0.157831 60 14041 31 6.55708e+06 3.70386e+06 958460. 3316.47 9.10 1.48146 1.30187 27358 235245 -1 12603 15 4109 8405 790637 184656 4.33936 4.33936 -1525.97 -4.33936 0 0 1.19711e+06 4142.24 0.50 0.33 0.25 -1 -1 0.50 0.149313 0.135733 1086 1023 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_17.v common 10.48 vpr 75.49 MiB 0.08 11976 -1 -1 8 0.74 -1 -1 40892 -1 -1 163 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77300 22 19 2278 2144 1 1240 209 17 17 289 clb auto 37.7 MiB 0.39 8126 30589 5968 22015 2606 75.5 MiB 0.50 0.01 4.09896 -1524.63 -4.09896 4.09896 0.95 0.00405493 0.0035833 0.221107 0.196051 56 14769 33 6.55708e+06 3.94496e+06 918491. 3178.17 4.43 1.21858 1.07412 26494 218197 -1 13003 18 4596 8764 912568 220841 4.33936 4.33936 -1763.6 -4.33936 0 0 1.12733e+06 3900.80 0.44 0.37 0.22 -1 -1 0.44 0.180601 0.163162 1242 1171 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_18.v common 28.48 vpr 75.94 MiB 0.08 12348 -1 -1 8 0.78 -1 -1 40480 -1 -1 168 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77760 22 19 2336 2202 1 1265 214 18 18 324 clb auto 38.2 MiB 0.42 8889 37276 7702 27115 2459 75.9 MiB 0.56 0.01 3.97876 -1560.56 -3.97876 3.97876 1.12 0.00375959 0.00331858 0.240747 0.211605 50 18122 50 7.67456e+06 4.00524e+06 975281. 3010.13 21.57 2.03044 1.78169 28904 225404 -1 14699 35 5453 10624 1782416 472012 4.33936 4.33936 -1792.05 -4.33936 0 0 1.16663e+06 3600.72 0.43 0.73 0.23 -1 -1 0.43 0.295091 0.262494 1281 1210 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_19.v common 17.68 vpr 76.11 MiB 0.08 12600 -1 -1 8 0.81 -1 -1 41156 -1 -1 175 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77936 22 19 2488 2337 1 1372 222 18 18 324 clb auto 39.0 MiB 0.41 9855 37127 8192 26388 2547 76.1 MiB 0.60 0.01 3.97876 -1658.31 -3.97876 3.97876 1.08 0.00439298 0.00388642 0.266819 0.235391 64 16249 20 7.67456e+06 4.48562e+06 1.16663e+06 3600.72 10.89 2.18375 1.93252 32132 291232 -1 15051 13 4838 9736 992282 226550 4.33936 4.33936 -1875.5 -4.33936 0 0 1.46385e+06 4518.05 0.61 0.37 0.31 -1 -1 0.61 0.160884 0.146607 1360 1285 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_20.v common 14.17 vpr 76.41 MiB 0.09 12704 -1 -1 8 0.91 -1 -1 41080 -1 -1 182 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78240 22 19 2546 2395 1 1407 229 18 18 324 clb auto 39.0 MiB 0.43 10398 41529 9428 29957 2144 76.4 MiB 0.69 0.01 4.21916 -1734.27 -4.21916 4.21916 1.14 0.00431526 0.00385525 0.287704 0.254341 58 18576 38 7.67456e+06 4.57001e+06 1.07356e+06 3313.45 7.05 1.44243 1.26931 30840 265148 -1 16315 13 5424 10868 1122122 258343 4.33936 4.33936 -1966.31 -4.33936 0 0 1.34501e+06 4151.27 0.55 0.39 0.27 -1 -1 0.55 0.162853 0.147565 1399 1324 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_21.v common 17.92 vpr 77.82 MiB 0.10 13128 -1 -1 8 1.03 -1 -1 41516 -1 -1 193 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79688 22 19 2735 2567 1 1516 240 19 19 361 clb auto 40.6 MiB 0.48 11377 38980 8200 28513 2267 77.8 MiB 0.62 0.01 4.21916 -1866 -4.21916 4.21916 1.26 0.00502901 0.00445507 0.258818 0.226302 56 21028 45 8.02416e+06 4.70262e+06 1.18337e+06 3278.02 10.14 1.89838 1.67387 33518 283317 -1 18533 14 6220 12462 1433584 324336 4.33936 4.33936 -2213.23 -4.33936 0 0 1.45127e+06 4020.14 0.62 0.51 0.29 -1 -1 0.62 0.199363 0.182373 1497 1417 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_22.v common 19.54 vpr 78.04 MiB 0.10 13500 -1 -1 8 1.06 -1 -1 41820 -1 -1 200 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79912 22 19 2793 2625 1 1545 247 19 19 361 clb auto 40.7 MiB 0.51 12225 45913 10605 32518 2790 78.0 MiB 0.83 0.01 4.09896 -1922.19 -4.09896 4.09896 1.33 0.00583796 0.00527046 0.368801 0.328246 58 22230 39 8.02416e+06 4.787e+06 1.20750e+06 3344.89 11.22 1.94263 1.72862 34238 298765 -1 18740 14 6151 12451 1327066 290823 4.57976 4.57976 -2206.22 -4.57976 0 0 1.51231e+06 4189.22 0.69 0.52 0.30 -1 -1 0.69 0.230375 0.210967 1536 1456 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_23.v common 14.97 vpr 79.60 MiB 0.10 13620 -1 -1 8 1.10 -1 -1 42292 -1 -1 211 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81512 22 19 2947 2762 1 1644 259 19 19 361 clb auto 41.5 MiB 0.52 11753 42334 8594 31743 1997 79.6 MiB 0.67 0.01 3.97876 -2014.86 -3.97876 3.97876 1.27 0.00457914 0.00402936 0.268535 0.234035 58 20786 33 8.02416e+06 5.3156e+06 1.20750e+06 3344.89 6.93 1.65125 1.45282 34238 298765 -1 18146 13 6170 12370 1196493 283483 4.33936 4.33936 -2321.54 -4.33936 0 0 1.51231e+06 4189.22 0.66 0.45 0.30 -1 -1 0.66 0.198937 0.181291 1617 1531 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_24.v common 16.83 vpr 79.12 MiB 0.11 13888 -1 -1 8 1.17 -1 -1 42144 -1 -1 216 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81024 22 19 3005 2820 1 1676 264 19 19 361 clb auto 41.9 MiB 0.53 12038 47640 10271 34539 2830 79.1 MiB 0.74 0.01 3.97876 -2047.55 -3.97876 3.97876 1.26 0.00479762 0.00409112 0.296687 0.256003 58 21487 43 8.02416e+06 5.37588e+06 1.20750e+06 3344.89 8.62 1.74659 1.52977 34238 298765 -1 18506 15 6230 12542 1297201 303049 4.21916 4.21916 -2316.09 -4.21916 0 0 1.51231e+06 4189.22 0.63 0.48 0.30 -1 -1 0.63 0.205088 0.185267 1656 1570 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_25.v common 25.27 vpr 80.47 MiB 0.11 14436 -1 -1 8 1.27 -1 -1 44060 -1 -1 231 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82400 22 19 3229 3027 1 1787 279 20 20 400 clb auto 43.4 MiB 0.57 14117 50384 10985 36503 2896 80.5 MiB 0.88 0.01 4.21916 -2315.15 -4.21916 4.21916 1.47 0.00551374 0.00488139 0.363541 0.32138 60 24883 50 1.09209e+07 5.5567e+06 1.36764e+06 3419.10 16.12 2.77971 2.4504 38726 338483 -1 21185 14 6962 14688 1438925 321635 4.57976 4.57976 -2635.99 -4.57976 0 0 1.70760e+06 4269.00 0.75 0.54 0.32 -1 -1 0.75 0.234449 0.213434 1771 1681 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_26.v common 18.84 vpr 81.66 MiB 0.12 14504 -1 -1 8 1.38 -1 -1 44296 -1 -1 237 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83624 22 19 3287 3085 1 1821 285 21 21 441 clb auto 43.6 MiB 0.72 12904 61190 14457 43853 2880 81.7 MiB 0.95 0.01 3.97876 -2318 -3.97876 3.97876 1.59 0.0051613 0.00448483 0.375788 0.323973 56 23450 28 1.13066e+07 5.62904e+06 1.45633e+06 3302.33 8.86 2.16819 1.91401 41182 349235 -1 21258 17 7517 15304 1566154 366935 4.21916 4.21916 -2613.91 -4.21916 0 0 1.78656e+06 4051.16 0.78 0.63 0.35 -1 -1 0.78 0.283278 0.257824 1810 1720 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_27.v common 33.41 vpr 82.48 MiB 0.12 15144 -1 -1 8 1.41 -1 -1 43232 -1 -1 251 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84464 22 19 3453 3234 1 1931 300 21 21 441 clb auto 44.6 MiB 0.59 14026 64492 15465 45323 3704 82.5 MiB 1.02 0.02 4.09896 -2434.05 -4.09896 4.09896 1.59 0.00556357 0.00488192 0.395889 0.344825 58 25685 50 1.13066e+07 6.1938e+06 1.48593e+06 3369.47 23.31 2.8567 2.48521 42062 368216 -1 21881 15 7217 14968 1469419 338525 4.21916 4.21916 -2822.87 -4.21916 0 0 1.86135e+06 4220.76 0.85 0.59 0.38 -1 -1 0.85 0.260882 0.237237 1903 1795 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_28.v common 37.59 vpr 83.00 MiB 0.12 15148 -1 -1 8 1.46 -1 -1 43184 -1 -1 256 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84996 22 19 3511 3292 1 1964 305 21 21 441 clb auto 45.2 MiB 0.64 14136 61865 14021 44839 3005 83.0 MiB 1.07 0.02 4.21916 -2498.53 -4.21916 4.21916 1.66 0.00599192 0.00530113 0.428301 0.374901 58 25540 34 1.13066e+07 6.25408e+06 1.48593e+06 3369.47 27.22 3.10275 2.72391 42062 368216 -1 22023 13 7407 15125 1544820 351812 4.45956 4.45956 -2789.36 -4.45956 0 0 1.86135e+06 4220.76 0.89 0.57 0.38 -1 -1 0.89 0.240894 0.219153 1942 1834 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_29.v common 28.00 vpr 85.19 MiB 0.13 15728 -1 -1 8 1.55 -1 -1 45208 -1 -1 268 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87236 22 19 3709 3473 1 2078 318 22 22 484 clb mult_36 auto 46.9 MiB 0.66 17087 69758 16122 49974 3662 84.1 MiB 1.08 0.02 4.09896 -2509.73 -4.09896 4.09896 1.89 0.00577704 0.00499599 0.416428 0.363017 64 28412 21 1.25085e+07 6.79474e+06 1.79645e+06 3711.66 16.71 2.36492 2.08265 48502 451691 -1 25409 14 7719 15888 1704627 365555 4.45956 4.45956 -2999.39 -4.45956 0 0 2.25323e+06 4655.43 1.01 0.65 0.43 -1 -1 1.01 0.274714 0.25024 2049 1927 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_30.v common 30.58 vpr 84.31 MiB 0.14 15872 -1 -1 8 1.65 -1 -1 45164 -1 -1 274 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86336 22 19 3767 3531 1 2107 324 22 22 484 clb mult_36 auto 46.9 MiB 0.65 15670 75940 17509 53893 4538 84.3 MiB 1.26 0.02 3.85856 -2552.39 -3.85856 3.85856 1.87 0.00691441 0.0061691 0.49017 0.427793 62 29067 44 1.25085e+07 6.86707e+06 1.74100e+06 3597.11 19.04 3.48224 3.05533 47538 430501 -1 23353 16 7629 15902 1415187 320005 4.33936 4.33936 -3025.71 -4.33936 0 0 2.15309e+06 4448.52 0.96 0.60 0.43 -1 -1 0.96 0.290796 0.263881 2088 1966 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_31.v common 19.37 vpr 85.43 MiB 0.14 16184 -1 -1 8 1.75 -1 -1 45744 -1 -1 288 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87484 22 19 3928 3675 1 2213 338 22 22 484 clb mult_36 auto 48.1 MiB 0.70 16317 73250 16944 52034 4272 85.4 MiB 1.15 0.02 3.97876 -2647.52 -3.97876 3.97876 1.84 0.00608248 0.00522636 0.42825 0.369463 64 26821 16 1.25085e+07 7.03584e+06 1.79645e+06 3711.66 7.63 2.00423 1.75652 48502 451691 -1 24619 14 7666 16227 1599307 362335 4.33936 4.33936 -3087.7 -4.33936 0 0 2.25323e+06 4655.43 1.03 0.66 0.46 -1 -1 1.03 0.291156 0.264906 2176 2041 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_32.v common 29.01 vpr 86.09 MiB 0.14 16164 -1 -1 8 1.77 -1 -1 46236 -1 -1 292 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88156 22 19 3986 3733 1 2248 342 22 22 484 clb mult_36 auto 48.2 MiB 0.71 18206 67262 14267 49464 3531 85.5 MiB 1.16 0.02 4.09896 -2779.53 -4.09896 4.09896 1.80 0.00635347 0.00561765 0.43978 0.384062 64 29888 24 1.25085e+07 7.08406e+06 1.79645e+06 3711.66 17.33 3.0183 2.65773 48502 451691 -1 26453 13 8005 16907 1562907 350202 4.45956 4.45956 -3159.17 -4.45956 0 0 2.25323e+06 4655.43 1.04 0.62 0.46 -1 -1 1.04 0.277289 0.252645 2215 2080 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_33.v common 26.88 vpr 87.38 MiB 0.16 17148 -1 -1 8 1.87 -1 -1 44652 -1 -1 314 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89472 22 19 4329 4059 1 2377 365 23 23 529 clb auto 50.2 MiB 0.77 18099 82454 19138 59519 3797 87.4 MiB 1.38 0.02 4.09896 -3027.72 -4.09896 4.09896 2.05 0.00886854 0.00802358 0.532768 0.464087 58 31696 42 1.29425e+07 7.74527e+06 1.81842e+06 3437.46 13.90 2.81402 2.4769 50706 452665 -1 27989 27 8880 18001 2165752 531671 4.33936 4.33936 -3433.42 -4.33936 0 0 2.27638e+06 4303.19 0.99 1.01 0.46 -1 -1 0.99 0.485647 0.434068 2394 2246 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_34.v common 34.11 vpr 91.73 MiB 0.16 17320 -1 -1 8 2.00 -1 -1 46492 -1 -1 320 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93932 22 19 4387 4117 1 2404 371 23 23 529 clb auto 50.7 MiB 0.76 19886 89615 21729 64145 3741 87.9 MiB 1.44 0.02 4.09896 -3102.53 -4.09896 4.09896 1.99 0.00802373 0.00691866 0.537851 0.463309 64 33737 42 1.29425e+07 7.8176e+06 1.97533e+06 3734.07 21.05 3.84338 3.37425 52818 497331 -1 29856 15 9134 18993 2025315 431763 4.45956 4.45956 -3559.18 -4.45956 0 0 2.47740e+06 4683.17 1.14 0.73 0.51 -1 -1 1.14 0.297967 0.268625 2433 2285 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_35.v common 36.40 vpr 91.61 MiB 0.16 17896 -1 -1 8 2.09 -1 -1 44948 -1 -1 332 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93804 22 19 4547 4260 1 2527 383 23 23 529 clb auto 51.1 MiB 0.78 20203 92123 22391 65583 4149 88.5 MiB 1.52 0.02 4.21916 -3208.51 -4.21916 4.21916 2.01 0.00737096 0.00652208 0.560869 0.483883 66 33509 34 1.29425e+07 7.96226e+06 2.03400e+06 3844.99 23.00 4.45128 3.91677 53346 510233 -1 29603 13 8960 19237 1955740 433109 4.33936 4.33936 -3547.06 -4.33936 0 0 2.53752e+06 4796.82 1.20 0.77 0.48 -1 -1 1.20 0.335966 0.306555 2520 2360 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_36.v common 37.52 vpr 93.32 MiB 0.17 18100 -1 -1 8 2.19 -1 -1 47280 -1 -1 338 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95564 22 19 4605 4318 1 2554 389 24 24 576 clb auto 51.8 MiB 0.84 19192 89786 21571 63212 5003 89.1 MiB 1.60 0.02 3.97876 -3173.17 -3.97876 3.97876 2.30 0.00913558 0.00820412 0.639943 0.564697 62 33685 33 1.51154e+07 8.03459e+06 2.06880e+06 3591.66 23.09 5.06255 4.51036 56266 511197 -1 28622 15 9120 19125 1787870 401768 4.33936 4.33936 -3584.43 -4.33936 0 0 2.55996e+06 4444.37 1.24 0.83 0.52 -1 -1 1.24 0.405226 0.370166 2559 2399 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_37.v common 34.59 vpr 89.20 MiB 0.18 18252 -1 -1 8 2.34 -1 -1 44048 -1 -1 351 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91340 22 19 4802 4498 1 2682 403 24 24 576 clb mult_36 auto 52.4 MiB 0.84 21956 98611 23267 70695 4649 89.2 MiB 1.64 0.02 4.21916 -3341.58 -4.21916 4.21916 2.27 0.00817262 0.00720333 0.591013 0.510659 60 37156 31 1.51154e+07 8.5873e+06 2.00908e+06 3487.99 19.81 3.0441 2.68093 55690 499183 -1 32903 15 10273 20986 2416203 519955 4.45956 4.45956 -3848.46 -4.45956 0 0 2.50809e+06 4354.32 1.22 0.95 0.50 -1 -1 1.22 0.397746 0.362393 2665 2492 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_38.v common 58.20 vpr 89.91 MiB 0.18 18424 -1 -1 8 2.39 -1 -1 47224 -1 -1 355 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92068 22 19 4860 4556 1 2713 407 25 25 625 clb auto 53.2 MiB 0.87 21079 111925 28546 77279 6100 89.9 MiB 1.80 0.02 4.09896 -3420.96 -4.09896 4.09896 2.51 0.00828543 0.006866 0.647448 0.560057 58 37590 49 1.55855e+07 8.63552e+06 2.14341e+06 3429.45 42.74 5.35778 4.6943 59588 533201 -1 32297 14 10403 22809 2128773 478681 4.45956 4.45956 -4033.08 -4.45956 0 0 2.68463e+06 4295.40 1.31 0.80 0.54 -1 -1 1.31 0.335286 0.303673 2704 2531 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_39.v common 33.73 vpr 94.43 MiB 0.18 18852 -1 -1 8 2.52 -1 -1 47296 -1 -1 370 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96696 22 19 5019 4698 1 2814 422 25 25 625 clb auto 54.1 MiB 0.92 22025 111162 28522 76731 5909 92.1 MiB 1.78 0.02 4.33936 -3519.41 -4.33936 4.33936 2.36 0.00795811 0.00697266 0.621396 0.536095 60 37992 31 1.55855e+07 8.81635e+06 2.19200e+06 3507.21 17.80 3.08382 2.70538 60212 545296 -1 33430 34 10552 21862 2779460 660410 4.45956 4.45956 -4008.99 -4.45956 0 0 2.73590e+06 4377.44 1.33 1.30 0.55 -1 -1 1.33 0.627494 0.556372 2790 2606 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_40.v common 27.15 vpr 91.36 MiB 0.19 18944 -1 -1 8 2.68 -1 -1 47748 -1 -1 373 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93552 22 19 5077 4756 1 2844 425 25 25 625 clb auto 54.6 MiB 0.92 22689 112215 28554 78433 5228 91.4 MiB 1.86 0.03 4.09896 -3625.33 -4.09896 4.09896 2.47 0.00907938 0.00768794 0.658025 0.566932 66 36941 31 1.55855e+07 8.85252e+06 2.39749e+06 3835.99 11.06 2.99029 2.62404 62708 601000 -1 33061 15 9671 20134 1875009 414680 4.57976 4.57976 -4182.16 -4.57976 0 0 2.99279e+06 4788.46 1.39 0.79 0.61 -1 -1 1.39 0.38097 0.345004 2829 2645 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_41.v common 79.83 vpr 96.98 MiB 0.19 19524 -1 -1 8 2.79 -1 -1 48140 -1 -1 390 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99312 22 19 5308 4970 1 2955 443 25 25 625 clb auto 55.8 MiB 0.97 24295 118603 30276 82434 5893 93.6 MiB 1.85 0.02 4.21916 -3735.1 -4.21916 4.21916 2.46 0.0083342 0.00724295 0.661549 0.565313 62 42239 27 1.55855e+07 9.45345e+06 2.25743e+06 3611.89 63.53 5.31695 4.65492 60836 558452 -1 35386 16 11338 23622 2241756 509042 4.33936 4.33936 -4245.26 -4.33936 0 0 2.79245e+06 4467.92 1.34 0.89 0.55 -1 -1 1.34 0.401834 0.362437 2951 2756 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_42.v common 40.42 vpr 107.80 MiB 0.20 19796 -1 -1 8 2.78 -1 -1 48584 -1 -1 397 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 110384 22 19 5366 5028 1 2986 450 26 26 676 clb auto 56.4 MiB 0.99 22059 126229 32906 88025 5298 92.8 MiB 1.99 0.03 3.97876 -3739.3 -3.97876 3.97876 2.72 0.0087742 0.00773125 0.703795 0.605637 60 36976 32 1.89118e+07 9.53784e+06 2.42032e+06 3580.36 23.22 4.16726 3.65658 66764 605600 -1 33538 14 10915 23001 2070408 465145 4.33936 4.33936 -4304.98 -4.33936 0 0 3.01907e+06 4466.08 1.49 0.87 0.62 -1 -1 1.49 0.409541 0.373734 2990 2795 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_43.v common 39.15 vpr 98.01 MiB 0.20 20196 -1 -1 8 2.77 -1 -1 49136 -1 -1 404 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100360 22 19 5524 5169 1 3090 457 26 26 676 clb auto 57.3 MiB 1.01 22797 128864 34818 87814 6232 95.0 MiB 2.13 0.03 4.09896 -3949.66 -4.09896 4.09896 2.74 0.00904196 0.00796249 0.768392 0.658237 58 40039 26 1.89118e+07 9.62222e+06 2.36678e+06 3501.15 21.69 3.29017 2.8653 66088 592148 -1 35400 14 11484 23274 2316005 522037 4.45956 4.45956 -4603.02 -4.45956 0 0 2.96266e+06 4382.64 1.44 0.93 0.60 -1 -1 1.44 0.42174 0.383139 3075 2870 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_44.v common 42.31 vpr 112.72 MiB 0.22 20412 -1 -1 8 2.91 -1 -1 48812 -1 -1 410 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 115428 22 19 5582 5227 1 3122 463 26 26 676 clb auto 57.8 MiB 0.96 23985 131133 34172 91366 5595 95.3 MiB 2.16 0.03 3.97876 -3955.1 -3.97876 3.97876 2.70 0.00971406 0.00862054 0.773427 0.669341 66 38683 30 1.89118e+07 9.69455e+06 2.64624e+06 3914.56 24.81 4.63323 4.07624 69464 667360 -1 35704 13 10565 22862 2235373 489103 4.33936 4.33936 -4647.83 -4.33936 0 0 3.30163e+06 4884.07 1.61 0.88 0.64 -1 -1 1.61 0.407164 0.370827 3114 2909 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_45.v common 56.48 vpr 102.78 MiB 0.21 20680 -1 -1 8 3.24 -1 -1 49636 -1 -1 425 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 105244 22 19 5779 5407 1 3235 479 26 26 676 clb auto 58.9 MiB 1.04 24480 135335 35427 94438 5470 96.4 MiB 2.22 0.03 3.97876 -3976.67 -3.97876 3.97876 2.75 0.0101618 0.00905163 0.784002 0.679981 60 41314 41 1.89118e+07 1.02714e+07 2.42032e+06 3580.36 38.15 6.60336 5.82023 66764 605600 -1 36793 15 11827 24486 2552762 577407 4.33936 4.33936 -4657.2 -4.33936 0 0 3.01907e+06 4466.08 1.50 1.06 0.61 -1 -1 1.50 0.484969 0.442179 3220 3002 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_46.v common 36.91 vpr 101.14 MiB 0.21 21048 -1 -1 8 3.39 -1 -1 49496 -1 -1 430 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103572 22 19 5837 5465 1 3273 484 26 26 676 clb auto 59.0 MiB 1.09 25354 133414 34046 94363 5005 96.4 MiB 2.42 0.03 4.09896 -4049.03 -4.09896 4.09896 2.85 0.011603 0.010481 0.905995 0.790879 62 43998 45 1.89118e+07 1.03316e+07 2.49248e+06 3687.09 17.88 5.31956 4.73624 67440 620228 -1 37238 14 11863 24873 2415389 536316 4.45956 4.45956 -4755.27 -4.45956 0 0 3.08129e+06 4558.12 1.53 1.09 0.61 -1 -1 1.53 0.520224 0.474091 3259 3041 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_47.v common 47.69 vpr 126.25 MiB 0.22 21176 -1 -1 8 3.62 -1 -1 49548 -1 -1 439 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 129276 22 19 5997 5608 1 3373 493 27 27 729 clb auto 59.6 MiB 1.08 26739 142551 37614 98306 6631 97.2 MiB 2.42 0.03 4.21916 -4297.45 -4.21916 4.21916 3.09 0.00986826 0.00869597 0.858127 0.75202 68 42234 19 1.94302e+07 1.04401e+07 2.93284e+06 4023.09 27.69 4.98592 4.394 75330 737039 -1 38718 15 11599 23921 2313999 510246 4.57976 4.57976 -4916.79 -4.57976 0 0 3.64745e+06 5003.36 1.79 0.91 0.74 -1 -1 1.79 0.412289 0.370584 3346 3116 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_48.v common 47.65 vpr 126.68 MiB 0.22 21548 -1 -1 8 3.38 -1 -1 50028 -1 -1 448 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 129716 22 19 6055 5666 1 3405 502 27 27 729 clb auto 60.2 MiB 1.12 27808 142076 35951 101311 4814 97.7 MiB 2.31 0.03 4.21916 -4391.89 -4.21916 4.21916 3.02 0.0100591 0.00889228 0.78181 0.680163 66 45323 49 1.94302e+07 1.05486e+07 2.86480e+06 3929.76 28.12 5.17704 4.54085 74602 723059 -1 40781 13 11889 25062 2611322 554995 4.45956 4.45956 -5001.08 -4.45956 0 0 3.57338e+06 4901.75 1.69 0.95 0.74 -1 -1 1.69 0.398459 0.360516 3385 3155 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_49.v common 53.86 vpr 119.89 MiB 0.24 21864 -1 -1 8 3.84 -1 -1 50308 -1 -1 465 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 122772 22 19 6324 5918 1 3526 520 27 27 729 clb auto 61.6 MiB 1.14 29007 161450 43721 111550 6179 99.0 MiB 2.71 0.03 4.33936 -4547.8 -4.33936 4.33936 3.10 0.00906845 0.00770856 0.926287 0.801211 66 47835 33 1.94302e+07 1.11496e+07 2.86480e+06 3929.76 32.78 5.41941 4.74339 74602 723059 -1 42499 15 12778 27325 3072270 656584 4.69996 4.69996 -5126.18 -4.69996 0 0 3.57338e+06 4901.75 1.79 1.19 0.73 -1 -1 1.79 0.506976 0.460794 3527 3284 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_50.v common 37.48 vpr 108.77 MiB 0.23 22080 -1 -1 8 3.63 -1 -1 50468 -1 -1 466 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 111376 22 19 6382 5976 1 3558 521 27 27 729 clb auto 62.1 MiB 1.16 27189 151361 39519 105451 6391 99.4 MiB 2.51 0.03 4.09896 -4561.85 -4.09896 4.09896 2.99 0.0104929 0.00922855 0.863042 0.743715 64 44952 29 1.94302e+07 1.11616e+07 2.78336e+06 3818.06 17.24 5.10782 4.50158 73874 704979 -1 41044 14 12633 26549 2624300 573522 4.45956 4.45956 -5204.83 -4.45956 0 0 3.48985e+06 4787.17 1.74 1.06 0.71 -1 -1 1.74 0.48173 0.437387 3566 3323 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_51.v common 39.50 vpr 111.37 MiB 0.27 22576 -1 -1 8 3.61 -1 -1 51360 -1 -1 479 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 114044 22 19 6542 6119 1 3674 534 28 28 784 clb auto 62.9 MiB 1.24 29173 156414 40019 109909 6486 100.2 MiB 2.65 0.04 4.21916 -4706.31 -4.21916 4.21916 3.19 0.0105177 0.00929938 0.920872 0.796904 62 50315 29 2.18512e+07 1.13183e+07 2.87318e+06 3664.77 18.51 4.86631 4.28067 77276 713722 -1 42808 14 13234 27957 2772469 603588 4.45956 4.45956 -5285.65 -4.45956 0 0 3.55346e+06 4532.48 1.74 1.11 0.71 -1 -1 1.74 0.491957 0.447273 3653 3398 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_pipe_52.v common 41.45 vpr 111.80 MiB 0.23 22624 -1 -1 8 3.93 -1 -1 51588 -1 -1 485 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 114480 22 19 6600 6177 1 3704 540 28 28 784 clb auto 63.5 MiB 1.18 30568 152202 39113 107231 5858 100.7 MiB 2.39 0.04 4.21916 -4801.78 -4.21916 4.21916 3.18 0.0116992 0.0103868 0.788803 0.678439 60 51409 47 2.18512e+07 1.13907e+07 2.78985e+06 3558.49 20.36 5.0332 4.41621 76492 696852 -1 46024 13 14256 30617 3068555 660987 4.57976 4.57976 -5679.83 -4.57976 0 0 3.48130e+06 4440.43 1.74 1.15 0.70 -1 -1 1.74 0.465388 0.422293 3692 3437 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_14.v common 28.58 vpr 69.31 MiB 0.05 9720 -1 -1 10 0.62 -1 -1 38776 -1 -1 93 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70972 22 19 1149 1049 1 787 138 16 16 256 mult_36 auto 31.6 MiB 0.22 5203 17226 3437 12408 1381 69.3 MiB 0.28 0.01 11.5066 -378.727 -11.5066 11.5066 0.83 0.00228846 0.00204438 0.131501 0.118679 50 10859 45 6.2557e+06 2.70512e+06 744679. 2908.90 23.92 1.44179 1.2839 22544 170752 -1 9537 21 4554 9502 952532 214813 12.1591 12.1591 -516.42 -12.1591 0 0 891356. 3481.86 0.35 0.33 0.17 -1 -1 0.35 0.124739 0.113829 715 658 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_15.v common 10.08 vpr 70.27 MiB 0.06 9768 -1 -1 11 0.64 -1 -1 39072 -1 -1 106 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71952 22 19 1261 1144 1 879 152 16 16 256 mult_36 auto 32.4 MiB 0.24 6049 16757 3015 12438 1304 70.3 MiB 0.28 0.01 12.5671 -431.764 -12.5671 12.5671 0.82 0.00273135 0.0024435 0.126681 0.114174 56 11759 43 6.2557e+06 3.25783e+06 803869. 3140.11 5.27 0.872244 0.783319 23564 190428 -1 10542 18 4706 9723 1013153 237134 12.9573 12.9573 -580.952 -12.9573 0 0 987003. 3855.48 0.39 0.34 0.19 -1 -1 0.39 0.120423 0.110373 790 727 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_16.v common 11.83 vpr 70.77 MiB 0.06 9860 -1 -1 11 0.67 -1 -1 40052 -1 -1 112 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72464 22 19 1336 1219 1 929 158 16 16 256 mult_36 auto 33.0 MiB 0.25 6304 16811 2985 12580 1246 70.8 MiB 0.28 0.01 13.0968 -433.621 -13.0968 13.0968 0.81 0.00271927 0.00243872 0.1226 0.110588 54 12739 33 6.2557e+06 3.33016e+06 784202. 3063.29 7.02 1.11371 0.991507 23308 185586 -1 10528 18 4739 9524 916006 216721 13.6188 13.6188 -540.357 -13.6188 0 0 965591. 3771.84 0.36 0.32 0.19 -1 -1 0.36 0.121704 0.110484 846 783 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_17.v common 15.27 vpr 71.21 MiB 0.07 10200 -1 -1 11 0.75 -1 -1 40252 -1 -1 121 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72920 22 19 1446 1312 1 989 167 16 16 256 mult_36 auto 33.6 MiB 0.28 7177 18068 2964 13629 1475 71.2 MiB 0.31 0.01 12.8686 -455.531 -12.8686 12.8686 0.82 0.00289612 0.00260314 0.133167 0.119702 54 14767 48 6.2557e+06 3.43866e+06 784202. 3063.29 10.11 1.5585 1.3854 23308 185586 -1 11792 21 5545 11599 1279267 322865 13.872 13.872 -590.134 -13.872 0 0 965591. 3771.84 0.38 0.46 0.17 -1 -1 0.38 0.160793 0.145467 919 848 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_18.v common 11.07 vpr 71.78 MiB 0.07 10520 -1 -1 11 0.81 -1 -1 40056 -1 -1 128 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73500 22 19 1507 1373 1 1035 174 16 16 256 mult_36 auto 34.3 MiB 0.28 7769 18604 3057 14083 1464 71.8 MiB 0.32 0.01 12.9567 -485.19 -12.9567 12.9567 0.81 0.00306138 0.00277719 0.140779 0.126426 58 14489 44 6.2557e+06 3.52304e+06 820238. 3204.05 5.73 0.978935 0.871547 24072 200857 -1 12852 19 5690 11995 1068605 257243 13.6407 13.6407 -764.054 -13.6407 0 0 1.02849e+06 4017.54 0.44 0.41 0.22 -1 -1 0.44 0.158118 0.144242 961 890 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_19.v common 14.41 vpr 72.40 MiB 0.07 10612 -1 -1 11 0.85 -1 -1 39600 -1 -1 135 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74136 22 19 1596 1445 1 1100 182 16 16 256 clb mult_36 auto 34.8 MiB 0.31 7817 20782 3082 16224 1476 72.4 MiB 0.37 0.01 12.974 -505.115 -12.974 12.974 0.82 0.00322964 0.00289921 0.159019 0.143111 60 14196 44 6.2557e+06 4.00342e+06 838722. 3276.26 8.96 1.60042 1.42538 24328 205314 -1 12632 19 5412 11419 1069634 253455 13.8154 13.8154 -693.573 -13.8154 0 0 1.04796e+06 4093.58 0.41 0.39 0.21 -1 -1 0.41 0.149836 0.136464 1013 938 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_20.v common 11.33 vpr 72.64 MiB 0.07 10912 -1 -1 11 0.90 -1 -1 40076 -1 -1 137 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74384 22 19 1656 1505 1 1146 184 16 16 256 clb mult_36 auto 35.1 MiB 0.29 8225 21104 3333 16460 1311 72.6 MiB 0.35 0.01 13.055 -521.844 -13.055 13.055 0.86 0.00298609 0.00262964 0.148614 0.132739 58 15443 26 6.2557e+06 4.02754e+06 820238. 3204.05 5.74 0.944002 0.838124 24072 200857 -1 13416 18 5731 11689 1194013 283234 13.8572 13.8572 -708.305 -13.8572 0 0 1.02849e+06 4017.54 0.40 0.43 0.20 -1 -1 0.40 0.160056 0.146464 1054 979 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_21.v common 13.39 vpr 73.00 MiB 0.08 11352 -1 -1 12 0.98 -1 -1 40428 -1 -1 145 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74748 22 19 1754 1586 1 1213 192 17 17 289 clb auto 35.6 MiB 0.33 9372 24524 4200 18624 1700 73.0 MiB 0.42 0.01 13.0709 -523.895 -13.0709 13.0709 0.98 0.00353219 0.00317799 0.178261 0.159529 60 16834 24 6.55708e+06 4.12398e+06 958460. 3316.47 7.04 1.02725 0.914342 27358 235245 -1 14653 22 6836 14072 1605498 363703 13.5517 13.5517 -670.062 -13.5517 0 0 1.19711e+06 4142.24 0.50 0.56 0.24 -1 -1 0.50 0.192806 0.175786 1115 1035 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_22.v common 16.86 vpr 73.88 MiB 0.08 11200 -1 -1 11 1.02 -1 -1 40988 -1 -1 154 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75648 22 19 1827 1659 1 1262 201 17 17 289 clb auto 36.3 MiB 0.36 9359 24897 4182 18980 1735 73.9 MiB 0.46 0.01 13.1655 -601.995 -13.1655 13.1655 0.98 0.00401374 0.00364558 0.205027 0.184197 64 15645 26 6.55708e+06 4.23247e+06 1.01866e+06 3524.77 10.35 1.6987 1.52947 28222 252754 -1 14459 18 6156 12592 1346678 305905 13.8887 13.8887 -808.872 -13.8887 0 0 1.27888e+06 4425.19 0.54 0.51 0.26 -1 -1 0.54 0.201568 0.185499 1169 1089 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_23.v common 30.00 vpr 74.07 MiB 0.09 11656 -1 -1 12 1.09 -1 -1 41652 -1 -1 157 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75852 22 19 1905 1720 1 1323 205 18 18 324 mult_36 auto 36.7 MiB 0.36 9770 31613 6051 23433 2129 74.1 MiB 0.54 0.01 13.6417 -596.742 -13.6417 13.6417 1.12 0.00384735 0.00347484 0.231268 0.206522 58 19311 46 7.67456e+06 4.66464e+06 1.07356e+06 3313.45 22.82 1.89384 1.67643 30840 265148 -1 16505 23 7101 14801 1778786 400726 14.4831 14.4831 -807.998 -14.4831 0 0 1.34501e+06 4151.27 0.55 0.65 0.28 -1 -1 0.55 0.232669 0.21196 1210 1124 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_24.v common 18.51 vpr 74.77 MiB 0.09 11684 -1 -1 12 1.13 -1 -1 40480 -1 -1 163 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76564 22 19 1979 1794 1 1362 211 18 18 324 mult_36 auto 37.2 MiB 0.37 9890 29680 5216 22721 1743 74.8 MiB 0.51 0.01 13.1101 -607.782 -13.1101 13.1101 1.12 0.00406895 0.00367668 0.21755 0.194484 60 17948 30 7.67456e+06 4.73696e+06 1.09776e+06 3388.15 11.35 1.70196 1.52368 31164 271060 -1 16046 19 7159 14934 1563902 347490 13.9734 13.9734 -945.022 -13.9734 0 0 1.37043e+06 4229.72 0.62 0.54 0.28 -1 -1 0.62 0.194605 0.177767 1265 1179 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_25.v common 17.48 vpr 75.52 MiB 0.09 12176 -1 -1 12 1.20 -1 -1 41060 -1 -1 174 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77328 22 19 2073 1871 1 1415 222 18 18 324 clb mult_36 auto 38.1 MiB 0.38 10116 37798 7687 27724 2387 75.5 MiB 0.62 0.01 13.2252 -636.654 -13.2252 13.2252 1.10 0.00430208 0.00388785 0.264639 0.235289 60 18920 47 7.67456e+06 4.86957e+06 1.09776e+06 3388.15 10.12 1.68965 1.4999 31164 271060 -1 15951 18 7253 15313 1453290 329841 14.1573 14.1573 -922.83 -14.1573 0 0 1.37043e+06 4229.72 0.59 0.51 0.28 -1 -1 0.59 0.192449 0.175296 1322 1232 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_26.v common 15.26 vpr 76.00 MiB 0.10 12260 -1 -1 12 1.30 -1 -1 41280 -1 -1 180 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77820 22 19 2130 1928 1 1466 228 18 18 324 clb mult_36 auto 38.4 MiB 0.39 10708 38508 7490 28356 2662 76.0 MiB 0.63 0.01 13.3306 -627.781 -13.3306 13.3306 1.14 0.00385828 0.00345686 0.262131 0.232009 60 19445 47 7.67456e+06 4.9419e+06 1.09776e+06 3388.15 7.70 1.52438 1.35291 31164 271060 -1 17108 22 7683 15497 1521602 357830 14.3314 14.3314 -1034.46 -14.3314 0 0 1.37043e+06 4229.72 0.59 0.59 0.28 -1 -1 0.59 0.238263 0.216472 1360 1270 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_27.v common 16.70 vpr 76.29 MiB 0.10 12340 -1 -1 12 1.36 -1 -1 41408 -1 -1 187 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78120 22 19 2238 2019 1 1561 236 18 18 324 clb mult_36 auto 39.1 MiB 0.40 12377 33770 6411 25220 2139 76.3 MiB 0.59 0.01 13.5221 -628.278 -13.5221 13.5221 1.14 0.00439955 0.00395741 0.241432 0.215436 64 23492 41 7.67456e+06 5.42228e+06 1.16663e+06 3600.72 8.86 1.48223 1.3183 32132 291232 -1 19810 21 8434 17231 2335908 509181 14.4419 14.4419 -936.521 -14.4419 0 0 1.46385e+06 4518.05 0.60 0.73 0.30 -1 -1 0.60 0.229927 0.20862 1431 1323 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_28.v common 31.79 vpr 76.75 MiB 0.11 12484 -1 -1 12 1.38 -1 -1 41168 -1 -1 195 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78596 22 19 2299 2080 1 1608 244 19 19 361 clb auto 39.6 MiB 0.42 11802 38344 7076 28930 2338 76.8 MiB 0.67 0.01 13.4116 -689.025 -13.4116 13.4116 1.27 0.00507286 0.00462348 0.278492 0.248224 60 22296 38 8.02416e+06 5.51872e+06 1.23460e+06 3419.94 23.38 2.1944 1.93677 34598 305437 -1 19379 24 8801 18308 1953665 470354 13.6443 13.6443 -911.981 -13.6443 0 0 1.54069e+06 4267.84 0.70 0.73 0.31 -1 -1 0.70 0.260837 0.235742 1473 1365 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_29.v common 27.01 vpr 77.41 MiB 0.11 12736 -1 -1 12 1.52 -1 -1 41436 -1 -1 198 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79272 22 19 2400 2164 1 1689 248 22 22 484 mult_36 auto 40.2 MiB 0.46 12258 38370 7118 28776 2476 77.4 MiB 0.67 0.01 12.8793 -650.835 -12.8793 12.8793 1.86 0.00487565 0.00439706 0.277595 0.245642 58 25550 48 1.25085e+07 5.95089e+06 1.65337e+06 3416.05 16.73 2.12466 1.88148 46570 411141 -1 21347 21 9599 19784 2273240 506124 13.8409 13.8409 -1052.87 -13.8409 0 0 2.07026e+06 4277.39 0.97 0.78 0.41 -1 -1 0.97 0.261001 0.236725 1537 1415 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_30.v common 78.82 vpr 78.00 MiB 0.11 12920 -1 -1 12 1.55 -1 -1 41612 -1 -1 209 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79868 22 19 2474 2238 1 1711 259 22 22 484 mult_36 auto 40.6 MiB 0.46 13168 42334 8006 31700 2628 78.0 MiB 0.71 0.01 12.9822 -681.383 -12.9822 12.9822 1.90 0.00478391 0.00430389 0.29026 0.257666 56 25794 45 1.25085e+07 6.0835e+06 1.62053e+06 3348.21 68.40 2.96129 2.61637 45606 389969 -1 22385 19 9669 19872 2463370 560510 14.3854 14.3854 -1273.9 -14.3854 0 0 1.98725e+06 4105.89 0.95 0.86 0.40 -1 -1 0.95 0.284297 0.260468 1592 1470 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_31.v common 19.53 vpr 78.72 MiB 0.11 13208 -1 -1 12 1.70 -1 -1 41884 -1 -1 218 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80608 22 19 2603 2350 1 1810 268 22 22 484 mult_36 auto 41.5 MiB 0.46 13008 46007 9138 34360 2509 78.7 MiB 0.78 0.01 13.1024 -694.824 -13.1024 13.1024 1.90 0.005338 0.0048423 0.314077 0.278714 60 23819 31 1.25085e+07 6.19199e+06 1.69059e+06 3492.95 8.87 1.71242 1.52129 47054 420411 -1 21251 18 9641 19893 2121715 484332 14.2383 14.2383 -1059.29 -14.2383 0 0 2.10969e+06 4358.87 0.99 0.74 0.43 -1 -1 0.99 0.247994 0.225674 1684 1549 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_32.v common 22.08 vpr 79.36 MiB 0.12 13340 -1 -1 12 1.68 -1 -1 43128 -1 -1 235 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81260 22 19 2694 2441 1 1869 285 22 22 484 mult_36 auto 42.2 MiB 0.49 13665 49946 9984 37132 2830 79.4 MiB 0.85 0.02 13.1854 -738.745 -13.1854 13.1854 1.86 0.00574672 0.00502425 0.335071 0.294545 60 25408 43 1.25085e+07 6.39692e+06 1.69059e+06 3492.95 11.36 1.86154 1.64643 47054 420411 -1 22456 20 9999 21368 1955562 449564 14.2851 14.2851 -1312.37 -14.2851 0 0 2.10969e+06 4358.87 0.98 0.76 0.42 -1 -1 0.98 0.287943 0.262706 1756 1621 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_33.v common 21.51 vpr 80.02 MiB 0.12 13824 -1 -1 13 1.77 -1 -1 43448 -1 -1 238 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81944 22 19 2787 2517 1 1950 289 22 22 484 mult_36 auto 42.9 MiB 0.50 15107 47084 8719 35813 2552 80.0 MiB 0.80 0.02 13.6988 -760.723 -13.6988 13.6988 1.78 0.00586621 0.00504744 0.320024 0.280613 64 27286 27 1.25085e+07 6.82909e+06 1.79645e+06 3711.66 10.72 1.9795 1.75369 48502 451691 -1 24073 21 9708 20204 2221286 487308 15.0898 15.0898 -1219.79 -15.0898 0 0 2.25323e+06 4655.43 1.05 0.77 0.47 -1 -1 1.05 0.273903 0.247526 1812 1664 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_34.v common 28.19 vpr 80.68 MiB 0.13 13988 -1 -1 13 1.82 -1 -1 43908 -1 -1 240 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82616 22 19 2834 2564 1 1962 291 22 22 484 mult_36 auto 42.9 MiB 0.53 14145 54275 10883 39991 3401 80.1 MiB 0.92 0.02 13.9 -781.72 -13.9 13.9 1.88 0.00613081 0.00556923 0.370254 0.32763 60 25397 35 1.25085e+07 6.8532e+06 1.69059e+06 3492.95 17.16 2.62735 2.32307 47054 420411 -1 22955 20 10758 22829 2080381 460730 15.102 15.102 -1292.32 -15.102 0 0 2.10969e+06 4358.87 0.94 0.75 0.42 -1 -1 0.94 0.27965 0.251163 1840 1692 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_35.v common 32.21 vpr 82.92 MiB 0.13 14448 -1 -1 13 1.89 -1 -1 43800 -1 -1 248 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84908 22 19 2941 2654 1 2054 299 22 22 484 mult_36 auto 43.9 MiB 0.56 16261 54245 10728 40554 2963 80.7 MiB 0.94 0.02 13.7605 -766.965 -13.7605 13.7605 1.85 0.00590144 0.00530457 0.366153 0.32163 66 29054 46 1.25085e+07 6.94964e+06 1.84972e+06 3821.73 20.72 2.90835 2.57736 48986 463441 -1 25434 20 10530 21377 2671984 568902 15.0654 15.0654 -1123.63 -15.0654 0 0 2.30827e+06 4769.15 1.06 0.88 0.48 -1 -1 1.06 0.291049 0.263928 1910 1750 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_36.v common 24.76 vpr 81.32 MiB 0.16 14328 -1 -1 13 2.01 -1 -1 42600 -1 -1 255 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83272 22 19 3011 2724 1 2092 306 22 22 484 mult_36 auto 44.6 MiB 0.53 15494 53866 10408 40513 2945 81.3 MiB 0.88 0.02 13.8216 -775.976 -13.8216 13.8216 1.88 0.00627425 0.00562257 0.339967 0.298428 60 28474 33 1.25085e+07 7.03402e+06 1.69059e+06 3492.95 13.33 2.34932 2.06619 47054 420411 -1 24752 20 11353 23667 2419309 554948 14.4226 14.4226 -1264.95 -14.4226 0 0 2.10969e+06 4358.87 0.96 0.82 0.44 -1 -1 0.96 0.284205 0.256123 1961 1801 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_37.v common 37.06 vpr 89.76 MiB 0.14 14956 -1 -1 13 2.10 -1 -1 42724 -1 -1 267 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91916 22 19 3132 2828 1 2184 319 24 24 576 mult_36 auto 45.0 MiB 0.57 16778 63481 13802 46873 2806 82.3 MiB 1.03 0.02 14.5428 -956.024 -14.5428 14.5428 2.26 0.00657328 0.00591033 0.394895 0.346756 60 30710 43 1.51154e+07 7.57468e+06 2.00908e+06 3487.99 24.11 3.11681 2.74305 55690 499183 -1 26773 33 11577 23800 2771698 669678 15.1438 15.1438 -1499.19 -15.1438 0 0 2.50809e+06 4354.32 1.16 1.16 0.46 -1 -1 1.16 0.47771 0.428816 2045 1872 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_38.v common 30.78 vpr 82.09 MiB 0.14 14932 -1 -1 13 2.12 -1 -1 44464 -1 -1 265 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84056 22 19 3159 2855 1 2196 317 24 24 576 mult_36 auto 45.4 MiB 0.57 16513 61877 12396 46195 3286 82.1 MiB 0.98 0.02 13.9418 -876.4 -13.9418 13.9418 2.18 0.00551746 0.00477476 0.366828 0.319516 60 30140 40 1.51154e+07 7.55058e+06 2.00908e+06 3487.99 17.95 2.13418 1.87992 55690 499183 -1 26537 21 11985 24883 2676861 595396 14.3834 14.3834 -1373.9 -14.3834 0 0 2.50809e+06 4354.32 1.19 0.94 0.50 -1 -1 1.19 0.333691 0.301312 2053 1880 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_39.v common 24.36 vpr 82.82 MiB 0.15 15148 -1 -1 13 2.31 -1 -1 43720 -1 -1 277 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84804 22 19 3284 2963 1 2301 329 24 24 576 mult_36 auto 45.8 MiB 0.62 17109 66159 14431 49024 2704 82.8 MiB 1.14 0.02 14.3024 -943.148 -14.3024 14.3024 2.21 0.00594674 0.0052939 0.43798 0.383412 64 29925 33 1.51154e+07 7.69524e+06 2.13454e+06 3705.80 10.93 2.25777 1.99685 57414 536310 -1 27196 21 11200 23146 2344688 521868 14.9987 14.9987 -1376.91 -14.9987 0 0 2.67880e+06 4650.70 1.24 0.90 0.55 -1 -1 1.24 0.353638 0.31939 2141 1957 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_40.v common 27.01 vpr 83.34 MiB 0.14 15208 -1 -1 13 2.22 -1 -1 45012 -1 -1 285 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85336 22 19 3343 3022 1 2312 337 24 24 576 mult_36 auto 46.4 MiB 0.59 17675 73001 16428 52531 4042 83.2 MiB 1.23 0.02 14.42 -1000.68 -14.42 14.42 2.18 0.00652359 0.00585277 0.467438 0.40743 64 32300 32 1.51154e+07 7.79168e+06 2.13454e+06 3705.80 13.82 2.28832 2.01699 57414 536310 -1 28230 19 11839 25652 2643955 576660 14.9008 14.9008 -1558.65 -14.9008 0 0 2.67880e+06 4650.70 1.28 0.93 0.51 -1 -1 1.28 0.336858 0.304936 2181 1997 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_41.v common 25.22 vpr 84.04 MiB 0.19 15432 -1 -1 13 2.47 -1 -1 45180 -1 -1 297 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86056 22 19 3448 3110 1 2410 350 24 24 576 mult_36 auto 47.3 MiB 0.62 18295 62000 11200 47475 3325 84.0 MiB 1.04 0.02 14.6309 -972.595 -14.6309 14.6309 2.26 0.00643186 0.00582868 0.385755 0.340423 64 32292 29 1.51154e+07 8.33234e+06 2.13454e+06 3705.80 11.55 2.17227 1.92615 57414 536310 -1 28960 19 11740 24309 2498665 559268 15.5264 15.5264 -1426.2 -15.5264 0 0 2.67880e+06 4650.70 1.28 0.88 0.55 -1 -1 1.28 0.321223 0.290475 2249 2054 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_42.v common 40.68 vpr 94.08 MiB 0.16 15692 -1 -1 13 2.52 -1 -1 43736 -1 -1 296 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96336 22 19 3510 3172 1 2428 349 24 24 576 mult_36 auto 47.4 MiB 0.64 18565 67889 13547 51530 2812 84.2 MiB 1.13 0.02 13.5812 -985.246 -13.5812 13.5812 2.22 0.00690385 0.00617091 0.419248 0.367196 68 31600 28 1.51154e+07 8.32028e+06 2.25030e+06 3906.77 26.76 3.69331 3.23542 58566 560801 -1 28841 20 12471 26207 2660568 564997 14.3416 14.3416 -1551.05 -14.3416 0 0 2.80126e+06 4863.30 1.32 0.95 0.57 -1 -1 1.32 0.363381 0.325274 2292 2097 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_43.v common 37.36 vpr 93.05 MiB 0.16 16060 -1 -1 13 2.53 -1 -1 41968 -1 -1 307 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95288 22 19 3598 3243 1 2500 360 24 24 576 mult_36 auto 47.9 MiB 0.72 20769 77160 16859 56280 4021 84.7 MiB 1.31 0.02 14.7216 -1040.55 -14.7216 14.7216 2.20 0.00659039 0.00591814 0.483298 0.421646 68 34497 29 1.51154e+07 8.45288e+06 2.25030e+06 3906.77 22.98 3.53046 3.12225 58566 560801 -1 31404 18 12072 24712 2572762 561640 15.7642 15.7642 -1508.48 -15.7642 0 0 2.80126e+06 4863.30 1.39 0.92 0.58 -1 -1 1.39 0.335075 0.303615 2343 2138 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_44.v common 29.75 vpr 85.77 MiB 0.16 16080 -1 -1 13 2.73 -1 -1 46212 -1 -1 317 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87832 22 19 3689 3334 1 2572 370 24 24 576 mult_36 auto 48.9 MiB 0.67 19632 74682 14534 56476 3672 85.8 MiB 1.30 0.02 13.8608 -992.663 -13.8608 13.8608 2.24 0.007055 0.00629882 0.479792 0.420119 64 34315 30 1.51154e+07 8.57344e+06 2.13454e+06 3705.80 15.28 2.88065 2.54869 57414 536310 -1 30814 21 12983 26888 3071917 666393 14.8102 14.8102 -1530.03 -14.8102 0 0 2.67880e+06 4650.70 1.26 1.04 0.57 -1 -1 1.26 0.361499 0.325093 2415 2210 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_45.v common 30.22 vpr 85.90 MiB 0.17 16276 -1 -1 13 2.90 -1 -1 42220 -1 -1 321 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87960 22 19 3763 3391 1 2638 375 24 24 576 mult_36 auto 48.9 MiB 0.69 20714 84137 18599 61364 4174 85.9 MiB 1.43 0.02 14.1746 -1049.42 -14.1746 14.1746 2.23 0.00725317 0.00642731 0.52725 0.460681 62 38138 48 1.51154e+07 9.01766e+06 2.06880e+06 3591.66 15.56 3.24572 2.85794 56266 511197 -1 31673 22 13571 28115 2645261 587482 14.7832 14.7832 -1524.37 -14.7832 0 0 2.55996e+06 4444.37 1.17 1.05 0.51 -1 -1 1.17 0.425748 0.38218 2452 2234 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_46.v common 29.60 vpr 86.98 MiB 0.17 16456 -1 -1 13 2.93 -1 -1 43952 -1 -1 323 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89072 22 19 3845 3473 1 2666 377 24 24 576 mult_36 auto 50.0 MiB 0.70 19822 76593 15506 57388 3699 87.0 MiB 1.33 0.02 14.4618 -1087.32 -14.4618 14.4618 2.26 0.0071996 0.00643097 0.483962 0.424505 64 35725 30 1.51154e+07 9.04176e+06 2.13454e+06 3705.80 14.63 2.54337 2.24435 57414 536310 -1 31639 20 13171 27472 3119997 686434 14.663 14.663 -1657.34 -14.663 0 0 2.67880e+06 4650.70 1.29 1.12 0.55 -1 -1 1.29 0.418446 0.381024 2515 2297 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_47.v common 54.52 vpr 88.43 MiB 0.19 17128 -1 -1 13 3.08 -1 -1 46252 -1 -1 337 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90552 22 19 3983 3594 1 2790 391 24 24 576 clb mult_36 auto 50.8 MiB 0.74 21014 86131 18620 63573 3938 87.8 MiB 1.51 0.02 14.2484 -1147.18 -14.2484 14.2484 2.27 0.00805113 0.00724493 0.536939 0.470135 66 36791 26 1.51154e+07 9.21054e+06 2.19797e+06 3815.93 38.89 4.95193 4.3785 57990 550195 -1 33013 20 14060 30315 2888112 647240 14.7736 14.7736 -1889.22 -14.7736 0 0 2.74415e+06 4764.15 1.36 1.17 0.57 -1 -1 1.36 0.48167 0.44009 2616 2386 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_48.v common 46.63 vpr 98.22 MiB 0.18 17112 -1 -1 13 3.08 -1 -1 42496 -1 -1 341 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100576 22 19 4025 3636 1 2807 395 24 24 576 clb mult_36 auto 51.1 MiB 0.74 24043 88723 19375 64615 4733 88.1 MiB 1.44 0.02 14.4761 -1168.06 -14.4761 14.4761 2.21 0.00722455 0.00638976 0.505635 0.436217 70 39628 29 1.51154e+07 9.25876e+06 2.31032e+06 4010.97 31.21 4.3355 3.8113 59714 584380 -1 35888 18 14340 29860 3738958 787462 15.455 15.455 -1803.63 -15.455 0 0 2.90211e+06 5038.38 1.33 1.22 0.62 -1 -1 1.33 0.38926 0.352691 2639 2409 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_49.v common 34.18 vpr 92.25 MiB 0.19 17432 -1 -1 13 3.23 -1 -1 47140 -1 -1 355 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94464 22 19 4164 3758 1 2908 410 25 25 625 clb auto 52.0 MiB 0.79 22217 85642 17658 63703 4281 88.8 MiB 1.46 0.02 14.9818 -1210.71 -14.9818 14.9818 2.51 0.0086223 0.00784131 0.5204 0.454559 64 38919 45 1.55855e+07 9.82352e+06 2.32897e+06 3726.35 17.92 3.38187 2.96235 62084 585869 -1 34778 21 16622 35475 3477117 762776 15.4208 15.4208 -1975.61 -15.4208 0 0 2.92220e+06 4675.52 1.39 1.21 0.60 -1 -1 1.39 0.432815 0.388762 2741 2498 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_50.v common 33.19 vpr 92.50 MiB 0.19 17748 -1 -1 13 3.31 -1 -1 43136 -1 -1 356 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94720 22 19 4190 3784 1 2926 411 25 25 625 clb auto 52.1 MiB 0.80 22950 93558 20490 68815 4253 88.9 MiB 1.74 0.03 14.3808 -1150.84 -14.3808 14.3808 2.48 0.00936934 0.0084816 0.657067 0.574827 66 39379 43 1.55855e+07 9.83558e+06 2.39749e+06 3835.99 16.32 3.76048 3.35612 62708 601000 -1 35218 19 14229 29917 3044881 660126 15.3129 15.3129 -1606.74 -15.3129 0 0 2.99279e+06 4788.46 1.47 1.19 0.62 -1 -1 1.47 0.479691 0.438225 2748 2505 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_51.v common 35.40 vpr 92.02 MiB 0.20 17820 -1 -1 13 3.37 -1 -1 43512 -1 -1 366 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94224 22 19 4305 3882 1 2980 421 25 25 625 clb auto 52.9 MiB 0.83 23115 99772 22036 72208 5528 89.8 MiB 1.67 0.02 14.6534 -1199.26 -14.6534 14.6534 2.39 0.008379 0.00749764 0.606662 0.529383 66 41138 44 1.55855e+07 9.95613e+06 2.39749e+06 3835.99 18.62 3.0394 2.66499 62708 601000 -1 35024 22 14620 31027 3234931 704588 15.014 15.014 -1822.37 -15.014 0 0 2.99279e+06 4788.46 1.46 1.17 0.62 -1 -1 1.46 0.443718 0.399687 2826 2571 -1 -1 -1 -1 + k6_N8_gate_boost_0.2V_22nm.xml fir_nopipe_52.v common 30.51 vpr 93.60 MiB 0.20 17828 -1 -1 13 3.50 -1 -1 47056 -1 -1 370 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95844 22 19 4363 3940 1 3039 425 25 25 625 clb auto 53.4 MiB 0.80 23622 96245 20766 70233 5246 90.2 MiB 1.63 0.03 14.5943 -1245.11 -14.5943 14.5943 2.45 0.00907827 0.00819027 0.591239 0.513392 70 39481 30 1.55855e+07 1.00044e+07 2.52006e+06 4032.10 13.49 3.01844 2.65756 64580 638411 -1 37067 19 15345 31694 3197237 696949 14.8938 14.8938 -1960.29 -14.8938 0 0 3.16512e+06 5064.19 1.56 1.19 0.67 -1 -1 1.56 0.46356 0.421212 2865 2610 -1 -1 -1 -1 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_14.v common 10.76 vpr 73.89 MiB 0.06 10676 -1 -1 1 0.26 -1 -1 39764 -1 -1 125 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75664 22 19 1974 1653 1 1039 170 16 16 256 mult_36 auto 36.2 MiB 0.41 6519 25550 4932 18152 2466 73.9 MiB 0.42 0.01 3.76036 -1103.09 -3.76036 3.76036 0.81 0.00265584 0.00236805 0.163696 0.145008 46 11634 21 6.32612e+06 3.15375e+06 684529. 2673.94 6.00 0.960721 0.845071 22592 160355 -1 9321 16 3271 3961 556160 147556 4.24116 4.24116 -1214.27 -4.24116 0 0 838722. 3276.26 0.35 0.25 0.17 -1 -1 0.35 0.126006 0.114223 955 649 247 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_15.v common 9.19 vpr 74.66 MiB 0.07 11148 -1 -1 1 0.27 -1 -1 41288 -1 -1 134 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76448 22 19 2144 1789 1 1138 180 16 16 256 clb mult_36 auto 37.4 MiB 0.45 7347 29136 5774 20319 3043 74.7 MiB 0.47 0.01 4.00076 -1223.4 -4.00076 4.00076 0.83 0.00313564 0.00279766 0.184042 0.162998 44 14311 47 6.32612e+06 3.66277e+06 649498. 2537.10 4.27 0.932805 0.82112 22336 155612 -1 10218 12 3597 4356 665929 174089 4.36136 4.36136 -1418.79 -4.36136 0 0 820238. 3204.05 0.35 0.26 0.15 -1 -1 0.35 0.113257 0.103568 1035 704 266 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_16.v common 11.28 vpr 75.26 MiB 0.07 11288 -1 -1 1 0.29 -1 -1 40628 -1 -1 139 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77064 22 19 2218 1846 1 1177 185 16 16 256 clb mult_36 auto 37.9 MiB 0.46 7096 25959 4259 18607 3093 75.3 MiB 0.44 0.01 3.76036 -1240.57 -3.76036 3.76036 0.83 0.00326399 0.00291242 0.17517 0.156135 46 13238 28 6.32612e+06 3.72556e+06 684529. 2673.94 6.33 1.16145 1.02209 22592 160355 -1 10274 15 3509 4265 628636 157203 4.24116 4.24116 -1394.72 -4.24116 0 0 838722. 3276.26 0.32 0.25 0.16 -1 -1 0.32 0.125571 0.113725 1073 723 285 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_17.v common 11.06 vpr 76.90 MiB 0.08 12096 -1 -1 1 0.32 -1 -1 40616 -1 -1 159 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78748 22 19 2536 2130 1 1298 205 17 17 289 clb auto 39.8 MiB 0.53 8282 37049 7797 25207 4045 76.9 MiB 0.62 0.01 4.12096 -1391.9 -4.12096 4.12096 0.96 0.00363636 0.00324519 0.248013 0.220601 48 14318 34 6.64007e+06 3.97672e+06 816265. 2824.45 5.30 1.26249 1.12104 25714 189529 -1 11775 15 4206 5310 714294 182295 4.48156 4.48156 -1602.92 -4.48156 0 0 986792. 3414.50 0.41 0.29 0.19 -1 -1 0.41 0.142638 0.12948 1228 851 304 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_18.v common 13.72 vpr 77.44 MiB 0.08 11960 -1 -1 1 0.34 -1 -1 40504 -1 -1 165 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79300 22 19 2610 2187 1 1336 211 17 17 289 clb auto 40.2 MiB 0.50 8846 39085 8016 26563 4506 77.4 MiB 0.65 0.01 3.88056 -1433.98 -3.88056 3.88056 0.96 0.00374165 0.00331529 0.250483 0.222087 50 14061 49 6.64007e+06 4.05207e+06 851065. 2944.86 7.81 1.53572 1.35802 26002 196109 -1 11873 13 4111 5057 761270 192339 4.48156 4.48156 -1662.65 -4.48156 0 0 1.01866e+06 3524.77 0.41 0.28 0.19 -1 -1 0.41 0.135548 0.123202 1266 870 323 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_19.v common 14.99 vpr 78.07 MiB 0.09 12400 -1 -1 1 0.35 -1 -1 40576 -1 -1 174 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79948 22 19 2778 2321 1 1434 221 18 18 324 clb auto 40.8 MiB 0.57 8863 42909 9790 29232 3887 78.1 MiB 0.68 0.01 4.00076 -1508.9 -4.00076 4.00076 1.08 0.00395781 0.00345488 0.261227 0.229576 46 16084 49 7.77114e+06 4.56109e+06 895831. 2764.91 8.63 1.58258 1.39205 29024 211752 -1 12345 13 4224 5323 796192 197063 4.48156 4.48156 -1730.63 -4.48156 0 0 1.09776e+06 3388.15 0.47 0.31 0.20 -1 -1 0.47 0.147549 0.13434 1344 925 342 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_20.v common 14.57 vpr 78.88 MiB 0.09 12420 -1 -1 1 0.38 -1 -1 40744 -1 -1 178 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80768 22 19 2852 2378 1 1479 225 18 18 324 clb auto 41.7 MiB 0.61 10069 41949 8731 30267 2951 78.9 MiB 0.74 0.01 4.12096 -1553.01 -4.12096 4.12096 1.13 0.00441669 0.00397487 0.284905 0.254464 46 17423 36 7.77114e+06 4.61132e+06 895831. 2764.91 7.96 1.34996 1.1877 29024 211752 -1 13619 14 4470 5709 757059 190598 4.36136 4.36136 -1809.04 -4.36136 0 0 1.09776e+06 3388.15 0.46 0.32 0.20 -1 -1 0.46 0.158236 0.144179 1382 944 361 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_21.v common 11.20 vpr 79.93 MiB 0.10 13012 -1 -1 1 0.40 -1 -1 41616 -1 -1 190 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81852 22 19 3057 2549 1 1586 237 18 18 324 clb auto 42.5 MiB 0.64 10084 42751 8794 30420 3537 79.9 MiB 0.71 0.01 4.00076 -1662.98 -4.00076 4.00076 1.13 0.00401197 0.00355641 0.264485 0.233463 48 17199 25 7.77114e+06 4.76202e+06 935225. 2886.50 4.31 1.07682 0.947312 29348 218440 -1 14442 14 5179 6438 1151169 281664 4.36136 4.36136 -1869.36 -4.36136 0 0 1.13028e+06 3488.51 0.50 0.42 0.22 -1 -1 0.50 0.175787 0.159199 1479 1017 380 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_22.v common 14.81 vpr 80.19 MiB 0.10 13316 -1 -1 1 0.42 -1 -1 40848 -1 -1 196 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82116 22 19 3131 2606 1 1626 243 19 19 361 clb auto 42.9 MiB 0.63 10752 44965 9363 31759 3843 80.2 MiB 0.77 0.01 3.76036 -1731.93 -3.76036 3.76036 1.28 0.00434471 0.0038365 0.282946 0.250062 48 18301 38 8.13532e+06 4.83737e+06 1.05176e+06 2913.46 7.44 1.47911 1.29998 32602 246183 -1 15172 18 5359 6675 1163755 270686 4.24116 4.24116 -2061.24 -4.24116 0 0 1.27108e+06 3521.00 0.55 0.45 0.24 -1 -1 0.55 0.204576 0.185119 1517 1036 399 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_23.v common 19.03 vpr 81.63 MiB 0.10 13360 -1 -1 1 0.45 -1 -1 42784 -1 -1 206 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83592 22 19 3301 2742 1 1720 254 19 19 361 clb auto 44.3 MiB 0.68 12213 54926 11995 38659 4272 81.6 MiB 1.04 0.02 4.00076 -1867.25 -4.00076 4.00076 1.31 0.00583055 0.00531384 0.404577 0.363293 54 19161 20 8.13532e+06 5.35895e+06 1.15452e+06 3198.10 11.13 1.99515 1.78313 34042 276675 -1 16269 16 5064 6310 980148 232881 4.36136 4.36136 -2151.56 -4.36136 0 0 1.41983e+06 3933.05 0.62 0.40 0.27 -1 -1 0.62 0.193475 0.175283 1597 1091 418 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_24.v common 24.67 vpr 81.96 MiB 0.11 13768 -1 -1 1 0.45 -1 -1 42332 -1 -1 211 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83928 22 19 3375 2799 1 1765 259 19 19 361 clb auto 44.5 MiB 0.65 11421 48109 9487 34530 4092 82.0 MiB 0.84 0.01 3.88056 -1889.25 -3.88056 3.88056 1.30 0.00475317 0.00423388 0.301069 0.265732 50 19655 29 8.13532e+06 5.42174e+06 1.09718e+06 3039.29 17.12 2.14084 1.87344 32962 254619 -1 15908 15 5529 7179 1015726 242988 4.36136 4.36136 -2233.05 -4.36136 0 0 1.31179e+06 3633.76 0.52 0.39 0.25 -1 -1 0.52 0.189496 0.171449 1635 1110 437 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_25.v common 15.98 vpr 82.88 MiB 0.12 13988 -1 -1 1 0.50 -1 -1 42344 -1 -1 225 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84868 22 19 3615 3005 1 1878 273 20 20 400 clb auto 45.8 MiB 0.75 13473 57798 10978 41881 4939 82.9 MiB 1.00 0.02 3.88056 -2073.24 -3.88056 3.88056 1.47 0.00506339 0.00445389 0.358138 0.315819 50 22512 28 1.10386e+07 5.59755e+06 1.21483e+06 3037.08 7.38 1.68208 1.47851 36870 282114 -1 18639 17 6171 8096 1390780 326733 4.36136 4.36136 -2570.46 -4.36136 0 0 1.45344e+06 3633.59 0.63 0.52 0.28 -1 -1 0.63 0.226682 0.204748 1749 1201 456 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_26.v common 23.23 vpr 83.41 MiB 0.11 14136 -1 -1 1 0.52 -1 -1 42480 -1 -1 230 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85412 22 19 3689 3062 1 1918 278 20 20 400 clb auto 46.7 MiB 0.74 13453 52884 10185 38264 4435 83.4 MiB 1.01 0.02 3.88056 -2087.24 -3.88056 3.88056 1.49 0.00570159 0.0048843 0.373923 0.331842 50 22524 34 1.10386e+07 5.66034e+06 1.21483e+06 3037.08 14.58 2.49997 2.19209 36870 282114 -1 18273 17 6143 8126 1230658 293473 4.36136 4.36136 -2395.89 -4.36136 0 0 1.45344e+06 3633.59 0.65 0.50 0.28 -1 -1 0.65 0.230317 0.208158 1787 1220 475 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_27.v common 24.30 vpr 84.84 MiB 0.12 14736 -1 -1 1 0.53 -1 -1 42824 -1 -1 242 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86872 22 19 3871 3210 1 2023 291 21 21 441 clb auto 47.9 MiB 0.71 13688 68735 15137 47424 6174 84.8 MiB 1.22 0.02 4.00076 -2234.35 -4.00076 4.00076 1.64 0.0057096 0.00509249 0.427783 0.378995 52 23030 26 1.14404e+07 6.20704e+06 1.38344e+06 3137.06 14.95 2.51448 2.21058 41366 331634 -1 18736 12 6017 7389 1155254 268892 4.48156 4.48156 -2599.52 -4.48156 0 0 1.70223e+06 3859.94 0.77 0.44 0.33 -1 -1 0.77 0.200781 0.183233 1879 1275 494 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_28.v common 22.05 vpr 84.77 MiB 0.12 14572 -1 -1 1 0.56 -1 -1 42476 -1 -1 247 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86804 22 19 3945 3267 1 2070 296 21 21 441 clb auto 47.9 MiB 0.75 14085 62414 13575 44184 4655 84.8 MiB 1.10 0.02 3.88056 -2230.24 -3.88056 3.88056 1.62 0.00541076 0.0048059 0.378104 0.333245 52 24323 31 1.14404e+07 6.26983e+06 1.38344e+06 3137.06 12.61 2.1417 1.87097 41366 331634 -1 18889 18 6383 8291 1218627 292334 4.24116 4.24116 -2572.6 -4.24116 0 0 1.70223e+06 3859.94 0.78 0.52 0.33 -1 -1 0.78 0.257636 0.233175 1917 1294 513 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_29.v common 23.52 vpr 86.27 MiB 0.13 15096 -1 -1 1 0.59 -1 -1 42716 -1 -1 260 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88344 22 19 4159 3447 1 2186 310 22 22 484 mult_36 auto 49.4 MiB 0.81 15049 75766 16423 53040 6303 86.3 MiB 1.32 0.02 3.88056 -2294.95 -3.88056 3.88056 1.85 0.0061685 0.00551826 0.474153 0.420515 48 26495 45 1.26594e+07 6.82908e+06 1.44011e+06 2975.42 13.20 2.19973 1.92875 44390 338934 -1 21162 13 7101 9222 1618261 367829 4.36136 4.36136 -2893.48 -4.36136 0 0 1.74100e+06 3597.11 0.81 0.56 0.34 -1 -1 0.81 0.226876 0.206635 2023 1367 532 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_30.v common 20.51 vpr 86.77 MiB 0.13 15192 -1 -1 1 0.62 -1 -1 44248 -1 -1 265 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88856 22 19 4233 3504 1 2225 315 22 22 484 mult_36 auto 49.8 MiB 0.86 14874 77427 16334 55482 5611 86.8 MiB 1.34 0.02 3.88056 -2335.91 -3.88056 3.88056 1.84 0.00574101 0.00508484 0.470286 0.415611 48 25686 33 1.26594e+07 6.89187e+06 1.44011e+06 2975.42 10.04 2.0548 1.79619 44390 338934 -1 21514 17 7275 8816 1481169 344883 4.36136 4.36136 -2824.54 -4.36136 0 0 1.74100e+06 3597.11 0.79 0.58 0.34 -1 -1 0.79 0.268662 0.243132 2061 1386 551 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_31.v common 42.78 vpr 87.56 MiB 0.12 15516 -1 -1 1 0.62 -1 -1 43596 -1 -1 276 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89664 22 19 4410 3647 1 2335 326 22 22 484 clb mult_36 auto 50.8 MiB 0.81 17005 77675 16210 54413 7052 87.6 MiB 1.32 0.02 3.76036 -2430.81 -3.76036 3.76036 1.79 0.00605074 0.00538178 0.462161 0.408441 50 28849 36 1.26594e+07 7.03001e+06 1.50222e+06 3103.76 32.54 3.18879 2.78226 44874 350400 -1 23327 17 7683 9461 1828402 412768 4.48156 4.48156 -2923.58 -4.48156 0 0 1.79645e+06 3711.66 0.82 0.65 0.32 -1 -1 0.82 0.278768 0.250646 2148 1441 570 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_32.v common 30.12 vpr 88.41 MiB 0.14 15812 -1 -1 1 0.64 -1 -1 44772 -1 -1 280 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90528 22 19 4484 3704 1 2374 330 22 22 484 clb mult_36 auto 51.7 MiB 0.87 17055 78921 17021 55994 5906 88.4 MiB 1.33 0.02 4.00076 -2536.62 -4.00076 4.00076 1.79 0.00648533 0.00557464 0.451792 0.39157 54 28718 37 1.26594e+07 7.08024e+06 1.58090e+06 3266.32 19.44 3.03338 2.65359 46322 380746 -1 23100 19 7423 8883 1450821 323232 4.48156 4.48156 -3013.7 -4.48156 0 0 1.94386e+06 4016.24 0.85 0.59 0.39 -1 -1 0.85 0.290736 0.261199 2186 1460 589 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_33.v common 25.17 vpr 89.61 MiB 0.16 16976 -1 -1 1 0.71 -1 -1 45160 -1 -1 304 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91756 22 19 4843 4029 1 2501 355 23 23 529 clb auto 52.9 MiB 0.97 18233 92043 20336 64889 6818 89.6 MiB 1.53 0.02 4.00076 -2768.11 -4.00076 4.00076 2.01 0.00645187 0.00565551 0.508039 0.442425 54 30731 42 1.31115e+07 7.77763e+06 1.73850e+06 3286.39 13.40 2.43845 2.12159 50466 419205 -1 24623 17 7677 9440 1672495 376494 4.48156 4.48156 -3237.62 -4.48156 0 0 2.13727e+06 4040.20 0.97 0.65 0.41 -1 -1 0.97 0.302204 0.272562 2364 1606 608 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_34.v common 23.49 vpr 90.66 MiB 0.16 17144 -1 -1 1 0.73 -1 -1 44816 -1 -1 309 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92840 22 19 4917 4086 1 2542 360 23 23 529 clb auto 53.8 MiB 0.92 18059 87400 18975 61999 6426 90.7 MiB 1.51 0.02 4.12096 -2789.42 -4.12096 4.12096 2.03 0.00686882 0.00606478 0.503257 0.443001 50 29631 27 1.31115e+07 7.84042e+06 1.65241e+06 3123.66 11.79 2.28972 2.00623 48882 385791 -1 24694 17 8048 10065 1539170 354045 4.36136 4.36136 -3223.09 -4.36136 0 0 1.97533e+06 3734.07 0.93 0.64 0.37 -1 -1 0.93 0.309018 0.277979 2402 1625 627 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_35.v common 24.68 vpr 91.52 MiB 0.17 17312 -1 -1 1 0.75 -1 -1 45496 -1 -1 320 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93720 22 19 5093 4228 1 2643 371 23 23 529 clb auto 54.7 MiB 1.03 19605 93611 19695 67066 6850 91.5 MiB 1.57 0.02 4.00076 -2996.44 -4.00076 4.00076 2.05 0.00664505 0.00586623 0.521079 0.456271 54 33345 38 1.31115e+07 7.97856e+06 1.73850e+06 3286.39 12.53 2.62045 2.29607 50466 419205 -1 26278 13 8329 10293 1749204 391780 4.48156 4.48156 -3495.28 -4.48156 0 0 2.13727e+06 4040.20 1.00 0.65 0.41 -1 -1 1.00 0.297891 0.271483 2488 1680 646 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_36.v common 23.80 vpr 91.57 MiB 0.17 17268 -1 -1 1 0.80 -1 -1 45152 -1 -1 324 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93768 22 19 5167 4285 1 2691 375 23 23 529 clb auto 55.1 MiB 1.00 18807 98998 21686 70725 6587 91.6 MiB 1.72 0.02 4.12096 -2950.06 -4.12096 4.12096 2.08 0.00704993 0.00620548 0.56298 0.493424 52 32087 47 1.31115e+07 8.02879e+06 1.69338e+06 3201.10 11.64 2.75939 2.41695 49938 407647 -1 25508 13 8048 10614 1673874 393359 4.60176 4.60176 -3410.38 -4.60176 0 0 2.08190e+06 3935.53 0.93 0.58 0.39 -1 -1 0.93 0.255865 0.231092 2526 1699 665 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_37.v common 20.41 vpr 92.83 MiB 0.17 17748 -1 -1 1 0.83 -1 -1 44720 -1 -1 337 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95060 22 19 5380 4464 1 2808 389 24 24 576 clb mult_36 auto 56.3 MiB 1.08 19120 98300 20399 70009 7892 92.8 MiB 1.73 0.02 4.12096 -3063.91 -4.12096 4.12096 2.22 0.00716094 0.00633785 0.572745 0.50201 48 30920 37 1.52924e+07 8.58805e+06 1.71014e+06 2969.00 7.62 2.18327 1.91669 52498 402441 -1 26913 15 8911 11596 1743479 419232 4.48156 4.48156 -3550.49 -4.48156 0 0 2.06880e+06 3591.66 0.99 0.69 0.40 -1 -1 0.99 0.322126 0.291042 2631 1772 684 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_38.v common 48.95 vpr 93.00 MiB 0.17 17992 -1 -1 1 0.85 -1 -1 44576 -1 -1 343 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95228 22 19 5454 4521 1 2849 395 24 24 576 clb mult_36 auto 56.4 MiB 1.04 20227 101755 21854 71841 8060 93.0 MiB 1.81 0.02 4.12096 -3128.18 -4.12096 4.12096 2.25 0.00745483 0.00655255 0.579595 0.508137 50 31809 24 1.52924e+07 8.66339e+06 1.78400e+06 3097.22 35.75 3.55093 3.08641 53074 415989 -1 27250 14 8588 10858 1665446 392426 4.60176 4.60176 -3568.12 -4.60176 0 0 2.13454e+06 3705.80 0.93 0.65 0.41 -1 -1 0.93 0.316605 0.287016 2669 1791 703 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_39.v common 30.97 vpr 94.38 MiB 0.18 18356 -1 -1 1 0.88 -1 -1 44360 -1 -1 353 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96644 22 19 5629 4662 1 2951 405 25 25 625 clb auto 57.7 MiB 1.15 21491 121662 29355 83177 9130 94.4 MiB 2.06 0.03 4.00076 -3324.63 -4.00076 4.00076 2.22 0.00788614 0.00699172 0.659014 0.575535 50 37678 48 1.57822e+07 8.78897e+06 1.94653e+06 3114.45 17.02 3.0506 2.66121 57408 454416 -1 29468 17 9716 12111 2145635 494491 4.36136 4.36136 -3806.85 -4.36136 0 0 2.32897e+06 3726.35 1.09 0.82 0.44 -1 -1 1.09 0.373025 0.33714 2754 1846 722 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_40.v common 28.64 vpr 94.64 MiB 0.18 18668 -1 -1 1 0.91 -1 -1 46532 -1 -1 358 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96912 22 19 5703 4719 1 2994 410 25 25 625 clb auto 58.1 MiB 1.17 22341 111516 25385 78104 8027 94.6 MiB 2.04 0.03 4.24116 -3348.68 -4.24116 4.24116 2.46 0.00894412 0.00803155 0.668033 0.590603 54 34365 23 1.57822e+07 8.85176e+06 2.04878e+06 3278.05 14.38 3.24298 2.86682 59280 493784 -1 28826 15 8579 11416 1553876 364967 4.60176 4.60176 -4018.14 -4.60176 0 0 2.52006e+06 4032.10 1.21 0.73 0.49 -1 -1 1.21 0.381294 0.347451 2792 1865 741 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_41.v common 28.28 vpr 95.88 MiB 0.19 19180 -1 -1 1 0.98 -1 -1 44960 -1 -1 374 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98176 22 19 5950 4932 1 3111 427 25 25 625 clb auto 59.2 MiB 1.30 23375 125773 30238 87123 8412 95.9 MiB 2.19 0.03 4.12096 -3483.77 -4.12096 4.12096 2.46 0.00812444 0.00720082 0.69735 0.608704 54 36976 37 1.57822e+07 9.44869e+06 2.04878e+06 3278.05 13.24 3.03873 2.6498 59280 493784 -1 30755 16 9686 12381 1815491 429681 4.48156 4.48156 -4038.4 -4.48156 0 0 2.52006e+06 4032.10 1.18 0.77 0.49 -1 -1 1.18 0.373679 0.337144 2913 1956 760 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_42.v common 31.92 vpr 96.70 MiB 0.19 19048 -1 -1 1 0.97 -1 -1 47056 -1 -1 377 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99020 22 19 6024 4989 1 3151 430 25 25 625 clb auto 60.1 MiB 1.27 23102 130190 30059 88590 11541 96.7 MiB 2.25 0.03 4.12096 -3514.96 -4.12096 4.12096 2.45 0.00844391 0.00749272 0.723681 0.632742 54 37210 39 1.57822e+07 9.48637e+06 2.04878e+06 3278.05 16.86 3.27879 2.86776 59280 493784 -1 30138 14 9223 10892 1680910 390279 4.48156 4.48156 -4042.88 -4.48156 0 0 2.52006e+06 4032.10 1.19 0.72 0.49 -1 -1 1.19 0.360712 0.326628 2951 1975 779 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_43.v common 35.54 vpr 101.04 MiB 0.21 19356 -1 -1 1 1.05 -1 -1 45840 -1 -1 389 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103460 22 19 6198 5129 1 3252 442 25 25 625 clb auto 60.9 MiB 1.25 24301 138448 32917 95669 9862 97.5 MiB 2.39 0.03 4.00076 -3614.89 -4.00076 4.00076 2.42 0.00814978 0.00713316 0.744042 0.647848 54 38732 25 1.57822e+07 9.63706e+06 2.04878e+06 3278.05 20.36 3.51612 3.09146 59280 493784 -1 31753 15 9662 12847 1899881 437495 4.48156 4.48156 -4248.29 -4.48156 0 0 2.52006e+06 4032.10 1.16 0.76 0.49 -1 -1 1.16 0.360397 0.324409 3035 2030 798 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_44.v common 42.81 vpr 105.49 MiB 0.20 19588 -1 -1 1 1.08 -1 -1 47356 -1 -1 394 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 108020 22 19 6272 5186 1 3297 447 26 26 676 clb auto 61.3 MiB 1.34 24035 137087 33585 94368 9134 97.8 MiB 2.66 0.03 4.00076 -3664.71 -4.00076 4.00076 2.82 0.0102237 0.00872232 0.872182 0.752683 54 39371 26 1.91291e+07 9.69985e+06 2.26288e+06 3347.46 26.32 4.21071 3.71095 65792 548382 -1 32403 15 10251 12894 2166517 483458 4.48156 4.48156 -4257.73 -4.48156 0 0 2.78165e+06 4114.86 1.35 0.79 0.53 -1 -1 1.35 0.358014 0.323102 3073 2049 817 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_45.v common 34.84 vpr 99.14 MiB 0.21 20068 -1 -1 1 1.13 -1 -1 47712 -1 -1 407 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101516 22 19 6485 5365 1 3415 461 26 26 676 clb auto 62.8 MiB 1.19 24137 146421 35942 100318 10161 99.1 MiB 2.62 0.03 3.88056 -3774 -3.88056 3.88056 2.80 0.00962574 0.00860969 0.82929 0.727499 54 39699 28 1.91291e+07 1.02591e+07 2.26288e+06 3347.46 18.43 3.78768 3.31906 65792 548382 -1 32322 17 10208 13123 1978130 469314 4.36136 4.36136 -4478.6 -4.36136 0 0 2.78165e+06 4114.86 1.33 0.81 0.54 -1 -1 1.33 0.397818 0.357002 3178 2122 836 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_46.v common 42.28 vpr 108.13 MiB 0.21 20048 -1 -1 1 1.16 -1 -1 47580 -1 -1 412 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 110724 22 19 6559 5422 1 3449 466 26 26 676 clb auto 63.1 MiB 1.27 25720 161200 39946 110298 10956 99.5 MiB 2.90 0.03 4.12096 -3827.31 -4.12096 4.12096 2.82 0.00870284 0.00754995 0.891994 0.787836 58 39107 32 1.91291e+07 1.03219e+07 2.36678e+06 3501.15 25.10 4.72075 4.14969 67816 593426 -1 33726 14 9788 12308 1948819 437780 4.60176 4.60176 -4539.69 -4.60176 0 0 2.96266e+06 4382.64 1.47 0.83 0.59 -1 -1 1.47 0.412727 0.376897 3216 2141 855 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_47.v common 38.38 vpr 102.53 MiB 0.22 20404 -1 -1 1 1.19 -1 -1 48032 -1 -1 422 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 104992 22 19 6735 5564 1 3561 476 26 26 676 clb auto 64.7 MiB 1.30 25229 147179 34695 102736 9748 101.4 MiB 2.73 0.03 4.00076 -3914.51 -4.00076 4.00076 2.83 0.00924959 0.00821812 0.822731 0.724534 54 41123 38 1.91291e+07 1.04475e+07 2.26288e+06 3347.46 21.23 4.04156 3.53865 65792 548382 -1 33730 20 10560 13793 2179396 514213 4.48156 4.48156 -4512.81 -4.48156 0 0 2.78165e+06 4114.86 1.37 1.00 0.54 -1 -1 1.37 0.516661 0.465574 3302 2196 874 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_48.v common 38.31 vpr 101.07 MiB 0.22 20880 -1 -1 1 1.20 -1 -1 47636 -1 -1 428 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103500 22 19 6809 5621 1 3598 482 26 26 676 clb auto 65.5 MiB 1.26 27968 157269 40086 106308 10875 101.1 MiB 2.77 0.03 4.24116 -3984.16 -4.24116 4.24116 2.70 0.00937627 0.00834075 0.824567 0.721842 54 44104 36 1.91291e+07 1.05228e+07 2.26288e+06 3347.46 21.71 4.01553 3.50802 65792 548382 -1 36483 13 10631 13740 2296447 519676 4.84216 4.84216 -4717.73 -4.84216 0 0 2.78165e+06 4114.86 1.33 0.85 0.51 -1 -1 1.33 0.388528 0.352169 3340 2215 893 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_49.v common 39.69 vpr 105.66 MiB 0.23 21432 -1 -1 1 1.23 -1 -1 48404 -1 -1 444 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 108200 22 19 7094 5872 1 3718 499 27 27 729 clb auto 66.9 MiB 1.40 28606 160717 39048 111953 9716 102.9 MiB 2.94 0.04 4.24116 -4233.22 -4.24116 4.24116 2.93 0.0110658 0.00941763 0.895977 0.768681 54 45885 48 1.9669e+07 1.11198e+07 2.44988e+06 3360.60 21.74 4.3673 3.79297 70678 594165 -1 38069 14 11353 14198 2180930 492139 4.60176 4.60176 -4934.7 -4.60176 0 0 3.01106e+06 4130.40 1.40 0.89 0.58 -1 -1 1.40 0.428021 0.387906 3481 2324 912 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_50.v common 48.09 vpr 105.89 MiB 0.23 21588 -1 -1 1 1.28 -1 -1 48004 -1 -1 449 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 108436 22 19 7168 5929 1 3755 504 27 27 729 clb auto 67.0 MiB 1.47 29567 170929 41661 118530 10738 103.2 MiB 3.00 0.03 4.24116 -4188.75 -4.24116 4.24116 2.92 0.00944817 0.00822353 0.895163 0.779084 56 46098 47 1.9669e+07 1.11825e+07 2.51142e+06 3445.02 29.70 3.9769 3.45252 71406 610069 -1 39488 14 11831 14658 2560966 583161 4.60176 4.60176 -4912.79 -4.60176 0 0 3.07846e+06 4222.85 1.49 0.98 0.60 -1 -1 1.49 0.431118 0.389935 3519 2343 931 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_51.v common 49.75 vpr 117.46 MiB 0.23 21696 -1 -1 1 1.31 -1 -1 48640 -1 -1 460 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 120284 22 19 7344 6071 1 3863 515 27 27 729 clb auto 68.3 MiB 1.48 30103 165555 40629 114605 10321 104.2 MiB 3.07 0.03 4.12096 -4411.71 -4.12096 4.12096 3.00 0.00894235 0.00769672 0.923152 0.812806 60 44856 49 1.9669e+07 1.13207e+07 2.62021e+06 3594.25 31.00 5.70788 5.00767 73590 657565 -1 38520 13 10723 13671 2141446 476103 4.72196 4.72196 -5015.9 -4.72196 0 0 3.26774e+06 4482.49 1.65 0.86 0.66 -1 -1 1.65 0.410196 0.371195 3605 2398 950 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_52.v common 46.02 vpr 107.84 MiB 0.24 22108 -1 -1 1 1.32 -1 -1 48336 -1 -1 465 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 110424 22 19 7418 6128 1 3909 520 27 27 729 clb auto 68.5 MiB 1.51 31492 171900 41546 119773 10581 104.3 MiB 3.19 0.04 4.24116 -4436.07 -4.24116 4.24116 3.02 0.0104339 0.00929063 0.960089 0.849101 58 48323 37 1.9669e+07 1.13835e+07 2.56250e+06 3515.09 27.37 3.95624 3.45677 72862 642985 -1 41043 16 12153 15278 2781166 629491 4.60176 4.60176 -5067.12 -4.60176 0 0 3.20690e+06 4399.04 1.54 1.10 0.64 -1 -1 1.54 0.493199 0.444946 3643 2417 969 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_14.v common 7.94 vpr 69.57 MiB 0.06 9688 -1 -1 1 0.18 -1 -1 38812 -1 -1 81 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71244 22 19 1246 925 1 736 126 16 16 256 mult_36 auto 31.9 MiB 0.37 4392 19656 4553 12870 2233 69.6 MiB 0.35 0.01 7.45953 -334.328 -7.45953 7.45953 0.79 0.00185336 0.00166994 0.130464 0.117672 36 9107 44 6.32612e+06 2.6012e+06 535569. 2092.07 3.68 0.60392 0.539726 20808 126872 -1 7202 24 5848 6901 1301713 326153 7.88639 7.88639 -457.954 -7.88639 0 0 684529. 2673.94 0.27 0.38 0.13 -1 -1 0.27 0.108125 0.0972679 591 285 247 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_15.v common 8.92 vpr 70.06 MiB 0.06 9972 -1 -1 1 0.19 -1 -1 39024 -1 -1 86 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71744 22 19 1344 989 1 796 132 16 16 256 mult_36 auto 32.2 MiB 0.37 4878 21572 4915 13607 3050 70.1 MiB 0.42 0.01 7.47778 -344.368 -7.47778 7.47778 0.83 0.00237173 0.00217125 0.165009 0.149011 40 9143 28 6.32612e+06 3.05999e+06 583096. 2277.72 4.44 0.726165 0.649141 21572 140635 -1 7895 21 5458 6354 1363462 337457 8.10239 8.10239 -473.06 -8.10239 0 0 763333. 2981.77 0.29 0.37 0.14 -1 -1 0.29 0.102763 0.0928572 635 304 266 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_16.v common 7.89 vpr 70.68 MiB 0.06 9944 -1 -1 1 0.21 -1 -1 38676 -1 -1 91 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72372 22 19 1418 1046 1 833 137 16 16 256 mult_36 auto 33.0 MiB 0.45 5105 24141 5626 14822 3693 70.7 MiB 0.43 0.01 7.40158 -376.798 -7.40158 7.40158 0.81 0.00219367 0.00196382 0.159258 0.143182 44 9347 24 6.32612e+06 3.12278e+06 649498. 2537.10 3.38 0.583948 0.521659 22336 155612 -1 7352 21 5380 6035 951423 245989 7.64659 7.64659 -463.847 -7.64659 0 0 820238. 3204.05 0.33 0.27 0.16 -1 -1 0.33 0.100852 0.0915513 673 323 285 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_17.v common 9.98 vpr 71.39 MiB 0.07 10348 -1 -1 1 0.21 -1 -1 38344 -1 -1 97 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73104 22 19 1518 1112 1 899 143 16 16 256 mult_36 auto 33.6 MiB 0.45 5287 29983 7445 18834 3704 71.4 MiB 0.54 0.01 7.94484 -393.627 -7.94484 7.94484 0.83 0.00229775 0.00205607 0.198341 0.177565 40 10184 32 6.32612e+06 3.19813e+06 583096. 2277.72 5.11 0.792809 0.706589 21572 140635 -1 8484 23 6839 7777 1340264 348461 8.58465 8.58465 -610.373 -8.58465 0 0 763333. 2981.77 0.30 0.45 0.14 -1 -1 0.30 0.151979 0.138195 719 342 304 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_18.v common 9.62 vpr 71.76 MiB 0.07 10660 -1 -1 1 0.22 -1 -1 39120 -1 -1 102 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73484 22 19 1592 1169 1 937 148 16 16 256 mult_36 auto 34.1 MiB 0.53 5358 25954 5901 16707 3346 71.8 MiB 0.49 0.01 7.90083 -429.836 -7.90083 7.90083 0.83 0.00237115 0.00213904 0.174099 0.156 44 10799 28 6.32612e+06 3.26092e+06 649498. 2537.10 4.77 0.778605 0.693663 22336 155612 -1 8124 20 5295 6216 1048475 268901 8.36425 8.36425 -630.03 -8.36425 0 0 820238. 3204.05 0.32 0.34 0.16 -1 -1 0.32 0.120042 0.10909 757 361 323 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_19.v common 11.22 vpr 72.17 MiB 0.07 10932 -1 -1 1 0.23 -1 -1 39996 -1 -1 107 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73904 22 19 1688 1231 1 998 154 16 16 256 mult_36 auto 34.7 MiB 0.50 6122 24050 4863 16397 2790 72.2 MiB 0.48 0.01 7.81364 -421.708 -7.81364 7.81364 0.80 0.00258926 0.00228005 0.164014 0.146463 44 12318 44 6.32612e+06 3.71971e+06 649498. 2537.10 6.10 0.863429 0.764973 22336 155612 -1 8928 22 6032 6957 1496969 380838 8.16485 8.16485 -553.871 -8.16485 0 0 820238. 3204.05 0.33 0.48 0.16 -1 -1 0.33 0.144268 0.130901 799 380 342 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_20.v common 9.32 vpr 72.74 MiB 0.07 10684 -1 -1 1 0.25 -1 -1 39244 -1 -1 112 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74488 22 19 1762 1288 1 1033 159 16 16 256 mult_36 auto 35.1 MiB 0.56 6461 24669 5073 16191 3405 72.7 MiB 0.46 0.01 8.07603 -431.43 -8.07603 8.07603 0.82 0.00273379 0.00245494 0.168637 0.151507 44 12171 49 6.32612e+06 3.7825e+06 649498. 2537.10 4.28 0.806515 0.716689 22336 155612 -1 9202 22 6191 7346 1344622 333877 8.38325 8.38325 -675.537 -8.38325 0 0 820238. 3204.05 0.34 0.42 0.16 -1 -1 0.34 0.142289 0.128581 837 399 361 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_21.v common 11.65 vpr 73.11 MiB 0.08 11148 -1 -1 1 0.26 -1 -1 39748 -1 -1 119 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74860 22 19 1859 1351 1 1097 166 16 16 256 mult_36 auto 35.6 MiB 0.57 7254 23878 4435 16403 3040 73.1 MiB 0.52 0.01 8.14498 -460.765 -8.14498 8.14498 0.82 0.00296813 0.00264456 0.171052 0.153957 48 12447 36 6.32612e+06 3.8704e+06 714410. 2790.66 6.38 0.89989 0.798861 22848 165380 -1 10368 24 6585 7820 1628179 396024 9.37285 9.37285 -687.831 -9.37285 0 0 863353. 3372.47 0.35 0.50 0.17 -1 -1 0.35 0.160705 0.145409 880 418 380 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_22.v common 9.14 vpr 73.41 MiB 0.08 11436 -1 -1 1 0.28 -1 -1 39684 -1 -1 123 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75168 22 19 1933 1408 1 1134 170 16 16 256 mult_36 auto 36.0 MiB 0.63 7512 25550 4866 16928 3756 73.4 MiB 0.47 0.01 8.07603 -487.999 -8.07603 8.07603 0.78 0.00291044 0.00258413 0.165789 0.14844 48 12359 32 6.32612e+06 3.92063e+06 714410. 2790.66 3.95 0.808859 0.719099 22848 165380 -1 10414 22 6323 7557 1314276 331752 8.65185 8.65185 -738.93 -8.65185 0 0 863353. 3372.47 0.34 0.43 0.17 -1 -1 0.34 0.152754 0.138252 918 437 399 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_23.v common 12.17 vpr 74.07 MiB 0.09 11620 -1 -1 1 0.29 -1 -1 40488 -1 -1 131 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75848 22 19 2031 1472 1 1198 179 18 18 324 mult_36 auto 36.5 MiB 0.66 7156 32435 6973 20399 5063 74.1 MiB 0.62 0.01 7.95583 -499.319 -7.95583 7.95583 1.13 0.00304345 0.00273361 0.222389 0.200534 46 14415 37 7.77114e+06 4.4171e+06 895831. 2764.91 5.87 0.966146 0.864308 29024 211752 -1 10807 24 6884 8263 1409674 354460 8.51865 8.51865 -733.328 -8.51865 0 0 1.09776e+06 3388.15 0.47 0.47 0.21 -1 -1 0.47 0.172655 0.155819 962 456 418 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_24.v common 21.84 vpr 74.71 MiB 0.09 11524 -1 -1 1 0.30 -1 -1 39840 -1 -1 136 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76500 22 19 2105 1529 1 1235 184 18 18 324 mult_36 auto 37.1 MiB 0.67 7774 42024 9957 27556 4511 74.7 MiB 0.78 0.01 7.95583 -519.035 -7.95583 7.95583 1.13 0.0030588 0.00272949 0.270036 0.241653 44 15687 39 7.77114e+06 4.47989e+06 850563. 2625.19 15.25 1.61834 1.43667 28700 205432 -1 11491 21 6852 8008 1692024 401943 8.67185 8.67185 -791.432 -8.67185 0 0 1.07356e+06 3313.45 0.46 0.53 0.20 -1 -1 0.46 0.170826 0.155434 1000 475 437 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_25.v common 13.61 vpr 75.14 MiB 0.10 11896 -1 -1 1 0.33 -1 -1 40164 -1 -1 141 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76944 22 19 2201 1591 1 1295 189 18 18 324 mult_36 auto 37.6 MiB 0.69 8051 40839 8949 25568 6322 75.1 MiB 0.77 0.01 7.93383 -566.824 -7.93383 7.93383 1.13 0.00351178 0.00317118 0.274168 0.246411 46 15676 36 7.77114e+06 4.54268e+06 895831. 2764.91 6.96 1.13139 1.004 29024 211752 -1 12101 23 8482 9881 1786644 426690 8.47245 8.47245 -1153.45 -8.47245 0 0 1.09776e+06 3388.15 0.45 0.55 0.20 -1 -1 0.45 0.185837 0.168439 1042 494 456 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_26.v common 13.48 vpr 75.79 MiB 0.10 12104 -1 -1 1 0.34 -1 -1 40656 -1 -1 145 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77608 22 19 2275 1648 1 1331 193 18 18 324 mult_36 auto 38.2 MiB 0.73 8287 40297 8702 27070 4525 75.8 MiB 0.80 0.01 7.90083 -552.972 -7.90083 7.90083 1.12 0.00366319 0.00331446 0.281826 0.253574 46 16138 47 7.77114e+06 4.59291e+06 895831. 2764.91 6.73 1.15883 1.0322 29024 211752 -1 12117 22 8225 9448 1709201 408367 8.24425 8.24425 -797.186 -8.24425 0 0 1.09776e+06 3388.15 0.45 0.50 0.21 -1 -1 0.45 0.17199 0.155133 1080 513 475 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_27.v common 18.12 vpr 76.18 MiB 0.10 12316 -1 -1 1 0.36 -1 -1 40132 -1 -1 153 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78004 22 19 2385 1724 1 1408 202 18 18 324 mult_36 auto 38.9 MiB 0.76 9107 41050 8433 25134 7483 76.2 MiB 0.76 0.01 8.07603 -585.38 -8.07603 8.07603 1.13 0.00394443 0.00357484 0.282537 0.254324 50 16355 36 7.77114e+06 5.08937e+06 975281. 3010.13 11.13 1.75147 1.55457 29672 225968 -1 13232 25 8905 10434 1911891 465582 8.58465 8.58465 -883.379 -8.58465 0 0 1.16663e+06 3600.72 0.49 0.61 0.22 -1 -1 0.49 0.211719 0.190924 1136 532 494 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_28.v common 15.47 vpr 76.95 MiB 0.10 12636 -1 -1 1 0.38 -1 -1 40540 -1 -1 158 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78796 22 19 2459 1781 1 1444 207 18 18 324 mult_36 auto 39.5 MiB 1.12 8924 44271 9197 29563 5511 76.9 MiB 0.80 0.01 8.17423 -576.522 -8.17423 8.17423 1.10 0.00332022 0.00296959 0.271698 0.242412 48 15412 36 7.77114e+06 5.15216e+06 935225. 2886.50 8.18 1.24519 1.10352 29348 218440 -1 12958 21 7328 8990 1724080 416818 8.67985 8.67985 -874.829 -8.67985 0 0 1.13028e+06 3488.51 0.49 0.55 0.21 -1 -1 0.49 0.191392 0.173581 1174 551 513 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_29.v common 53.52 vpr 77.43 MiB 0.11 12712 -1 -1 1 0.39 -1 -1 40580 -1 -1 165 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79284 22 19 2565 1853 1 1517 215 22 22 484 mult_36 auto 40.2 MiB 0.80 9429 42653 9331 29424 3898 77.4 MiB 0.83 0.01 7.94484 -557.934 -7.94484 7.94484 1.84 0.0037679 0.00337654 0.2836 0.254153 40 20229 39 1.26594e+07 5.63607e+06 1.17677e+06 2431.33 44.35 2.30084 2.03517 41974 287914 -1 15852 24 13032 14852 3314243 759248 9.22765 9.22765 -966.96 -9.22765 0 0 1.53957e+06 3180.94 0.70 0.92 0.29 -1 -1 0.70 0.235822 0.213593 1226 570 532 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_30.v common 25.61 vpr 77.86 MiB 0.10 13056 -1 -1 1 0.38 -1 -1 41044 -1 -1 170 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79728 22 19 2639 1910 1 1554 220 22 22 484 mult_36 auto 40.4 MiB 0.81 10436 47293 10606 32212 4475 77.9 MiB 0.93 0.01 8.27243 -600.329 -8.27243 8.27243 1.81 0.00398314 0.00361407 0.310895 0.277592 46 20885 45 1.26594e+07 5.69886e+06 1.37878e+06 2848.72 16.69 1.46772 1.29832 43906 328446 -1 15401 23 9919 11346 2315171 529494 8.75485 8.75485 -942.625 -8.75485 0 0 1.69059e+06 3492.95 0.76 0.70 0.30 -1 -1 0.76 0.219775 0.197742 1264 589 551 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_31.v common 22.19 vpr 78.23 MiB 0.11 13296 -1 -1 1 0.41 -1 -1 41068 -1 -1 177 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80104 22 19 2744 1981 1 1626 227 22 22 484 mult_36 auto 40.9 MiB 0.91 11536 52819 11405 35484 5930 78.2 MiB 1.02 0.01 7.90083 -597.662 -7.90083 7.90083 1.83 0.00438958 0.0038742 0.341944 0.304099 46 21906 41 1.26594e+07 5.78677e+06 1.37878e+06 2848.72 12.62 1.46284 1.29221 43906 328446 -1 16696 24 11898 14015 3062879 701383 8.78405 8.78405 -989.062 -8.78405 0 0 1.69059e+06 3492.95 0.74 0.84 0.33 -1 -1 0.74 0.225423 0.202464 1315 608 570 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_32.v common 17.75 vpr 78.54 MiB 0.12 13384 -1 -1 1 0.52 -1 -1 40752 -1 -1 181 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80420 22 19 2818 2038 1 1662 231 22 22 484 mult_36 auto 41.1 MiB 0.93 10931 61119 15185 40798 5136 78.5 MiB 1.17 0.01 7.82463 -692.937 -7.82463 7.82463 1.85 0.004074 0.00361665 0.385747 0.343578 44 20989 29 1.26594e+07 5.837e+06 1.30964e+06 2705.88 7.99 1.28032 1.13397 43422 318546 -1 15643 25 11269 13282 2275825 531095 8.32945 8.32945 -1141.45 -8.32945 0 0 1.65337e+06 3416.05 0.76 0.73 0.31 -1 -1 0.76 0.250305 0.225305 1353 627 589 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_33.v common 27.70 vpr 79.48 MiB 0.16 13792 -1 -1 1 0.45 -1 -1 41556 -1 -1 189 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81388 22 19 2923 2109 1 1730 240 22 22 484 mult_36 auto 41.9 MiB 0.91 11888 68035 16768 43587 7680 79.5 MiB 1.38 0.02 8.75049 -711.16 -8.75049 8.75049 1.89 0.00524112 0.00477921 0.486812 0.437151 50 19383 28 1.26594e+07 6.33346e+06 1.50222e+06 3103.76 17.31 2.72588 2.43874 44874 350400 -1 16380 21 8998 10674 1980601 454864 9.22611 9.22611 -1061.2 -9.22611 0 0 1.79645e+06 3711.66 0.83 0.66 0.35 -1 -1 0.83 0.248529 0.226161 1404 646 608 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_34.v common 42.63 vpr 79.82 MiB 0.13 13860 -1 -1 1 0.46 -1 -1 41520 -1 -1 194 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81732 22 19 2997 2166 1 1769 245 22 22 484 mult_36 auto 42.4 MiB 1.10 12094 66121 15382 43885 6854 79.8 MiB 1.34 0.02 8.59729 -721.806 -8.59729 8.59729 1.84 0.00465823 0.00415817 0.421193 0.37362 44 24961 50 1.26594e+07 6.39625e+06 1.30964e+06 2705.88 32.28 2.37639 2.09358 43422 318546 -1 17716 23 12136 14363 2832130 667884 9.40431 9.40431 -1135.81 -9.40431 0 0 1.65337e+06 3416.05 0.78 0.87 0.31 -1 -1 0.78 0.265194 0.239956 1442 665 627 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_35.v common 22.26 vpr 80.29 MiB 0.13 14396 -1 -1 1 0.48 -1 -1 41412 -1 -1 200 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82220 22 19 3101 2236 1 1838 251 22 22 484 mult_36 auto 43.0 MiB 1.06 12370 56412 12219 36079 8114 80.3 MiB 1.10 0.02 8.56429 -748.354 -8.56429 8.56429 1.84 0.00502298 0.00453037 0.373104 0.332943 46 22874 41 1.26594e+07 6.4716e+06 1.37878e+06 2848.72 12.18 1.67036 1.4801 43906 328446 -1 17874 25 12744 14758 2557592 595798 9.30531 9.30531 -1223.26 -9.30531 0 0 1.69059e+06 3492.95 0.80 0.84 0.32 -1 -1 0.80 0.289914 0.261789 1492 684 646 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_36.v common 23.16 vpr 80.95 MiB 0.13 14476 -1 -1 1 0.49 -1 -1 41552 -1 -1 204 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82888 22 19 3175 2293 1 1872 255 22 22 484 mult_36 auto 43.8 MiB 1.19 12249 62471 14567 43086 4818 80.9 MiB 1.18 0.02 8.59729 -744.038 -8.59729 8.59729 1.84 0.00462437 0.00404635 0.376087 0.332825 48 22942 42 1.26594e+07 6.52183e+06 1.44011e+06 2975.42 12.71 1.67585 1.47963 44390 338934 -1 18184 24 13951 15929 3209360 729162 9.35731 9.35731 -1131.26 -9.35731 0 0 1.74100e+06 3597.11 0.81 0.94 0.33 -1 -1 0.81 0.269138 0.240993 1530 703 665 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_37.v common 26.61 vpr 81.50 MiB 0.14 14476 -1 -1 1 0.54 -1 -1 41696 -1 -1 211 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83452 22 19 3280 2364 1 1945 263 24 24 576 mult_36 auto 44.3 MiB 1.19 13165 65939 15175 45128 5636 81.5 MiB 1.43 0.02 8.72849 -828.623 -8.72849 8.72849 2.22 0.0052082 0.00463636 0.453074 0.404222 46 24527 44 1.52924e+07 7.00574e+06 1.63708e+06 2842.15 14.98 1.81495 1.60435 51922 389946 -1 18452 24 12475 14714 2507167 595570 9.18511 9.18511 -1323.46 -9.18511 0 0 2.00908e+06 3487.99 0.94 0.81 0.38 -1 -1 0.94 0.280464 0.252051 1581 722 684 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_38.v common 23.12 vpr 81.93 MiB 0.13 14568 -1 -1 1 0.51 -1 -1 42280 -1 -1 216 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83892 22 19 3354 2421 1 1981 268 24 24 576 mult_36 auto 44.9 MiB 1.22 12740 64993 14592 44175 6226 81.9 MiB 1.34 0.02 8.84869 -820.812 -8.84869 8.84869 2.11 0.0048873 0.00428799 0.393651 0.347013 44 24704 45 1.52924e+07 7.06853e+06 1.55518e+06 2699.97 11.83 1.82149 1.60975 51346 378163 -1 18388 25 12105 14238 2566964 611215 9.25411 9.25411 -1418.24 -9.25411 0 0 1.96475e+06 3411.02 0.92 0.85 0.37 -1 -1 0.92 0.296944 0.267482 1619 741 703 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_39.v common 30.13 vpr 82.51 MiB 0.15 14780 -1 -1 1 0.54 -1 -1 41608 -1 -1 223 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84488 22 19 3457 2490 1 2052 275 24 24 576 mult_36 auto 45.4 MiB 1.23 14107 76180 18404 50729 7047 82.5 MiB 1.52 0.02 8.85969 -817.628 -8.85969 8.85969 2.26 0.00533894 0.00479565 0.472819 0.41937 48 25170 44 1.52924e+07 7.15643e+06 1.71014e+06 2969.00 18.21 2.61575 2.30307 52498 402441 -1 20290 22 11703 13887 2642522 613817 9.47131 9.47131 -1247.44 -9.47131 0 0 2.06880e+06 3591.66 0.98 0.82 0.40 -1 -1 0.98 0.270323 0.243788 1668 760 722 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_40.v common 21.67 vpr 82.89 MiB 0.15 15064 -1 -1 1 0.57 -1 -1 41612 -1 -1 228 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84880 22 19 3531 2547 1 2089 280 24 24 576 mult_36 auto 45.9 MiB 1.35 13933 82630 20703 54954 6973 82.9 MiB 1.73 0.02 8.75049 -920.85 -8.75049 8.75049 2.26 0.00533088 0.00479207 0.505766 0.450057 46 25236 31 1.52924e+07 7.21922e+06 1.63708e+06 2842.15 9.49 1.72559 1.53449 51922 389946 -1 19565 22 10949 13008 2111715 506422 9.68371 9.68371 -1384.09 -9.68371 0 0 2.00908e+06 3487.99 0.89 0.75 0.38 -1 -1 0.89 0.290263 0.261845 1706 779 741 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_41.v common 24.93 vpr 83.51 MiB 0.15 15228 -1 -1 1 0.58 -1 -1 41752 -1 -1 234 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85512 22 19 3634 2616 1 2155 287 24 24 576 mult_36 auto 46.6 MiB 1.34 14241 80697 18835 51852 10010 83.5 MiB 1.55 0.02 8.75049 -883.696 -8.75049 8.75049 2.22 0.00520673 0.00458703 0.503424 0.447809 48 24243 43 1.52924e+07 7.69057e+06 1.71014e+06 2969.00 12.54 2.01347 1.78155 52498 402441 -1 20703 23 12932 15396 3012988 705113 9.40931 9.40931 -1441.04 -9.40931 0 0 2.06880e+06 3591.66 0.96 0.95 0.40 -1 -1 0.96 0.311028 0.281019 1755 798 760 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_42.v common 29.20 vpr 84.14 MiB 0.15 15496 -1 -1 1 0.60 -1 -1 42656 -1 -1 239 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86156 22 19 3708 2673 1 2193 292 24 24 576 mult_36 auto 47.1 MiB 1.43 14348 78700 18197 51186 9317 84.1 MiB 1.60 0.02 9.05609 -851.737 -9.05609 9.05609 2.28 0.0058645 0.00507878 0.497801 0.439387 46 26058 48 1.52924e+07 7.75336e+06 1.63708e+06 2842.15 16.72 2.1147 1.86393 51922 389946 -1 20163 24 12300 14571 2594808 640493 9.92411 9.92411 -1231.98 -9.92411 0 0 2.00908e+06 3487.99 0.94 0.88 0.38 -1 -1 0.94 0.32662 0.294655 1793 817 779 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_43.v common 24.94 vpr 84.52 MiB 0.16 15740 -1 -1 1 0.62 -1 -1 43104 -1 -1 245 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86544 22 19 3810 2741 1 2260 298 24 24 576 mult_36 auto 47.6 MiB 1.50 14750 79898 18747 54531 6620 84.5 MiB 1.75 0.02 8.58629 -958.377 -8.58629 8.58629 2.22 0.00589901 0.00513504 0.496745 0.436113 48 25945 50 1.52924e+07 7.82871e+06 1.71014e+06 2969.00 12.28 2.18483 1.92865 52498 402441 -1 21476 22 13448 15830 2787133 657802 9.11391 9.11391 -1451.79 -9.11391 0 0 2.06880e+06 3591.66 0.97 0.86 0.40 -1 -1 0.97 0.292816 0.263051 1841 836 798 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_44.v common 21.68 vpr 85.07 MiB 0.16 15784 -1 -1 1 0.63 -1 -1 42620 -1 -1 250 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87108 22 19 3884 2798 1 2296 303 24 24 576 mult_36 auto 47.9 MiB 1.49 15148 73527 16640 46301 10586 85.1 MiB 1.42 0.02 8.87069 -922.279 -8.87069 8.87069 2.24 0.0061591 0.00555311 0.466429 0.415736 52 26613 49 1.52924e+07 7.8915e+06 1.82869e+06 3174.81 9.24 2.0175 1.79109 54222 439550 -1 20407 22 10526 12398 2112596 523816 9.17791 9.17791 -1395.25 -9.17791 0 0 2.25030e+06 3906.77 1.06 0.79 0.44 -1 -1 1.06 0.324546 0.293915 1879 855 817 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_45.v common 33.29 vpr 85.30 MiB 0.17 16160 -1 -1 1 0.69 -1 -1 44108 -1 -1 257 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87344 22 19 3989 2869 1 2368 311 24 24 576 mult_36 auto 48.3 MiB 1.47 16744 75074 15897 50463 8714 85.3 MiB 1.57 0.02 9.19829 -945.131 -9.19829 9.19829 2.20 0.00540046 0.00481682 0.456139 0.405358 50 27547 40 1.52924e+07 8.37541e+06 1.78400e+06 3097.22 20.55 2.92587 2.57762 53074 415989 -1 22953 22 13367 16086 3159903 741664 9.49951 9.49951 -1417.29 -9.49951 0 0 2.13454e+06 3705.80 0.99 0.96 0.41 -1 -1 0.99 0.308043 0.275225 1930 874 836 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_46.v common 31.46 vpr 85.95 MiB 0.17 16132 -1 -1 1 0.66 -1 -1 44448 -1 -1 261 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88008 22 19 4063 2926 1 2404 315 24 24 576 mult_36 auto 48.9 MiB 1.57 16231 79569 18029 52307 9233 85.9 MiB 1.56 0.02 8.84869 -959.475 -8.84869 8.84869 2.19 0.00646847 0.00585415 0.460709 0.406776 54 26179 32 1.52924e+07 8.42564e+06 1.87785e+06 3260.16 18.76 2.84097 2.50677 54798 452027 -1 21825 21 10831 12681 2420177 599015 9.20191 9.20191 -1492.05 -9.20191 0 0 2.31032e+06 4010.97 1.06 0.84 0.41 -1 -1 1.06 0.329739 0.29815 1968 893 855 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_47.v common 32.46 vpr 86.29 MiB 0.17 16728 -1 -1 1 0.67 -1 -1 44332 -1 -1 268 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88364 22 19 4167 2996 1 2473 322 24 24 576 mult_36 auto 49.1 MiB 1.45 16256 89665 20795 56967 11903 86.3 MiB 1.78 0.02 9.23129 -969.897 -9.23129 9.23129 2.14 0.00633087 0.00572242 0.535754 0.47872 50 26638 46 1.52924e+07 8.51354e+06 1.78400e+06 3097.22 19.86 3.43541 3.04051 53074 415989 -1 22570 24 12036 14426 2709908 661393 9.64971 9.64971 -1480.55 -9.64971 0 0 2.13454e+06 3705.80 0.90 0.89 0.42 -1 -1 0.90 0.329702 0.29501 2018 912 874 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_48.v common 29.34 vpr 86.81 MiB 0.19 16772 -1 -1 1 0.72 -1 -1 45016 -1 -1 273 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88896 22 19 4241 3053 1 2509 327 24 24 576 mult_36 auto 49.7 MiB 1.65 17266 85903 19885 57149 8869 86.8 MiB 1.79 0.02 8.87069 -1051.6 -8.87069 8.87069 2.17 0.00641923 0.00576025 0.517461 0.456227 50 29822 37 1.52924e+07 8.57633e+06 1.78400e+06 3097.22 16.15 2.21678 1.95029 53074 415989 -1 24169 23 14748 17796 3098135 716149 9.37931 9.37931 -1770.09 -9.37931 0 0 2.13454e+06 3705.80 0.97 0.97 0.41 -1 -1 0.97 0.329856 0.294588 2056 931 893 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_49.v common 24.70 vpr 87.05 MiB 0.19 17036 -1 -1 1 0.74 -1 -1 44832 -1 -1 279 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89144 22 19 4346 3124 1 2580 334 24 24 576 mult_36 auto 50.2 MiB 1.57 17032 88342 19883 56989 11470 87.1 MiB 1.73 0.02 8.75049 -1035.7 -8.75049 8.75049 2.14 0.00663184 0.00595876 0.508782 0.44658 48 29878 45 1.52924e+07 9.04768e+06 1.71014e+06 2969.00 11.50 2.37501 2.09532 52498 402441 -1 24517 21 15130 17801 3460339 840135 9.79411 9.79411 -1748.95 -9.79411 0 0 2.06880e+06 3591.66 0.98 1.06 0.39 -1 -1 0.98 0.335388 0.302671 2107 950 912 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_50.v common 25.08 vpr 87.48 MiB 0.19 17408 -1 -1 1 0.76 -1 -1 44660 -1 -1 284 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89576 22 19 4420 3181 1 2615 339 24 24 576 mult_36 auto 50.4 MiB 1.74 17639 93638 20800 59398 13440 87.5 MiB 1.83 0.02 8.87069 -1092.03 -8.87069 8.87069 2.18 0.00658177 0.00590427 0.545849 0.481878 52 30432 38 1.52924e+07 9.11047e+06 1.82869e+06 3174.81 11.32 2.22041 1.96792 54222 439550 -1 24210 23 15134 17425 3308055 786370 9.40131 9.40131 -1686.06 -9.40131 0 0 2.25030e+06 3906.77 1.08 1.12 0.44 -1 -1 1.08 0.39345 0.354098 2145 969 931 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_51.v common 30.31 vpr 88.29 MiB 0.48 17636 -1 -1 1 0.79 -1 -1 44856 -1 -1 292 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90408 22 19 4524 3251 1 2687 347 24 24 576 mult_36 auto 51.4 MiB 1.72 17151 86825 17854 57788 11183 88.3 MiB 1.92 0.03 8.63029 -1132.46 -8.63029 8.63029 2.25 0.00876288 0.00769709 0.599679 0.535507 56 27553 28 1.52924e+07 9.21094e+06 1.92546e+06 3342.82 15.93 2.66425 2.37555 55374 464059 -1 23806 23 15014 17598 3113772 752815 8.96251 8.96251 -1691.46 -8.96251 0 0 2.36234e+06 4101.29 1.14 1.10 0.46 -1 -1 1.14 0.423109 0.382957 2195 988 950 19 0 0 + k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_52.v common 48.67 vpr 88.65 MiB 0.20 17660 -1 -1 1 0.79 -1 -1 45188 -1 -1 296 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90776 22 19 4598 3308 1 2721 351 24 24 576 mult_36 auto 51.8 MiB 1.81 17632 96837 22103 64924 9810 88.6 MiB 2.00 0.03 8.87069 -1123.96 -8.87069 8.87069 2.07 0.0064902 0.00578253 0.554896 0.486851 50 29434 38 1.52924e+07 9.26117e+06 1.78400e+06 3097.22 34.91 3.37311 2.9575 53074 415989 -1 24600 24 14602 17511 2881395 714077 9.36711 9.36711 -1877.29 -9.36711 0 0 2.13454e+06 3705.80 0.99 1.04 0.41 -1 -1 0.99 0.412679 0.371997 2233 1007 969 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_14.v common 10.20 vpr 74.09 MiB 0.06 10584 -1 -1 1 0.26 -1 -1 40136 -1 -1 123 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75868 22 19 1974 1653 1 1039 168 16 16 256 mult_36 auto 36.5 MiB 2.04 6653 27485 5506 18919 3060 74.1 MiB 0.45 0.01 3.88056 -1067.72 -3.88056 3.88056 0.81 0.00277779 0.00246871 0.180546 0.160576 44 12446 31 6.34292e+06 3.14339e+06 649498. 2537.10 3.74 0.92227 0.815911 22336 155612 -1 9712 17 3430 4175 751385 183273 4.24116 4.24116 -1294.93 -4.24116 0 0 820238. 3204.05 0.34 0.29 0.16 -1 -1 0.34 0.128804 0.11714 953 649 247 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_15.v common 15.55 vpr 74.96 MiB 0.07 11028 -1 -1 1 0.27 -1 -1 40508 -1 -1 132 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76764 22 19 2144 1789 1 1138 178 16 16 256 clb mult_36 auto 37.4 MiB 2.16 7125 28178 5361 19748 3069 75.0 MiB 0.48 0.01 3.88056 -1170.44 -3.88056 3.88056 0.83 0.00308223 0.0027408 0.198111 0.177361 50 12324 28 6.34292e+06 3.6535e+06 744679. 2908.90 8.86 1.27949 1.12983 23104 171162 -1 9905 16 3619 4109 691137 181290 4.24116 4.24116 -1362.92 -4.24116 0 0 891356. 3481.86 0.34 0.27 0.17 -1 -1 0.34 0.128642 0.116861 1033 704 266 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_16.v common 14.45 vpr 75.03 MiB 0.07 11012 -1 -1 1 0.29 -1 -1 40700 -1 -1 137 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76832 22 19 2218 1846 1 1177 183 16 16 256 clb mult_36 auto 37.8 MiB 2.32 7500 27690 5434 19432 2824 75.0 MiB 0.50 0.01 3.88056 -1237.3 -3.88056 3.88056 0.82 0.00312344 0.00277031 0.185316 0.164279 48 12634 30 6.34292e+06 3.71689e+06 714410. 2790.66 7.52 1.35409 1.19478 22848 165380 -1 10813 19 3999 4856 728975 186106 4.36136 4.36136 -1403.91 -4.36136 0 0 863353. 3372.47 0.35 0.31 0.17 -1 -1 0.35 0.150848 0.136517 1071 723 285 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_17.v common 13.00 vpr 76.88 MiB 0.08 11880 -1 -1 1 0.33 -1 -1 40752 -1 -1 157 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78728 22 19 2536 2130 1 1298 203 17 17 289 clb auto 39.6 MiB 2.46 8699 32983 6620 22935 3428 76.9 MiB 0.53 0.01 4.00076 -1350.29 -4.00076 4.00076 0.93 0.00338665 0.00298464 0.2055 0.180479 48 15216 28 6.65987e+06 3.97045e+06 816265. 2824.45 5.41 1.08025 0.9465 25714 189529 -1 12274 16 4394 5303 862389 207995 4.24116 4.24116 -1524.97 -4.24116 0 0 986792. 3414.50 0.40 0.32 0.19 -1 -1 0.40 0.146473 0.132386 1226 851 304 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_18.v common 12.22 vpr 77.67 MiB 0.08 11932 -1 -1 1 0.34 -1 -1 40524 -1 -1 163 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79536 22 19 2610 2187 1 1336 209 17 17 289 clb auto 40.3 MiB 2.57 8706 38649 8140 26765 3744 77.7 MiB 0.63 0.01 4.00076 -1436.94 -4.00076 4.00076 0.92 0.00350901 0.00309982 0.240895 0.2122 50 14041 25 6.65987e+06 4.04651e+06 851065. 2944.86 4.17 1.11378 0.976837 26002 196109 -1 11818 14 4185 5086 730507 188342 4.36136 4.36136 -1631.11 -4.36136 0 0 1.01866e+06 3524.77 0.40 0.28 0.19 -1 -1 0.40 0.139146 0.12629 1264 870 323 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_19.v common 17.42 vpr 78.40 MiB 0.09 12616 -1 -1 1 0.36 -1 -1 40548 -1 -1 172 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80284 22 19 2778 2321 1 1434 219 18 18 324 clb auto 41.5 MiB 2.78 9442 41736 9260 28904 3572 78.4 MiB 0.67 0.01 3.88056 -1509.14 -3.88056 3.88056 1.13 0.00381581 0.00337557 0.262868 0.232474 48 16218 27 7.79418e+06 4.55662e+06 935225. 2886.50 8.68 1.56694 1.37672 29348 218440 -1 13649 16 4947 5883 908017 221890 4.24116 4.24116 -1946.55 -4.24116 0 0 1.13028e+06 3488.51 0.47 0.38 0.22 -1 -1 0.47 0.178936 0.162919 1342 925 342 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_20.v common 14.82 vpr 79.12 MiB 0.09 12672 -1 -1 1 0.38 -1 -1 40596 -1 -1 176 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81020 22 19 2852 2378 1 1479 223 18 18 324 clb auto 42.1 MiB 2.91 9040 36727 6815 26433 3479 79.1 MiB 0.59 0.01 4.00076 -1565.06 -4.00076 4.00076 1.09 0.0036669 0.00322872 0.225784 0.198938 46 16457 24 7.79418e+06 4.60733e+06 895831. 2764.91 6.12 1.20524 1.05911 29024 211752 -1 12830 16 4459 5416 756444 183307 4.48156 4.48156 -1779.96 -4.48156 0 0 1.09776e+06 3388.15 0.46 0.33 0.21 -1 -1 0.46 0.171959 0.155704 1380 944 361 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_21.v common 14.84 vpr 80.04 MiB 0.10 12840 -1 -1 1 0.39 -1 -1 41548 -1 -1 188 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81964 22 19 3057 2549 1 1586 235 18 18 324 clb auto 43.2 MiB 3.11 10623 50191 11446 34686 4059 80.0 MiB 0.86 0.01 3.88056 -1674.94 -3.88056 3.88056 1.12 0.00449622 0.00400245 0.328357 0.290647 48 18850 40 7.79418e+06 4.75946e+06 935225. 2886.50 5.21 1.32159 1.16826 29348 218440 -1 14963 18 5391 6675 1011123 247431 4.24116 4.24116 -1948.26 -4.24116 0 0 1.13028e+06 3488.51 0.48 0.44 0.21 -1 -1 0.48 0.215526 0.195719 1477 1017 380 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_22.v common 14.96 vpr 80.69 MiB 0.10 13056 -1 -1 1 0.42 -1 -1 40660 -1 -1 194 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82624 22 19 3131 2606 1 1626 241 19 19 361 clb auto 43.7 MiB 3.25 11075 47428 9860 34003 3565 80.7 MiB 0.81 0.01 3.88056 -1713.12 -3.88056 3.88056 1.25 0.00381237 0.00335079 0.302095 0.266249 46 19574 35 8.16184e+06 4.83553e+06 1.00734e+06 2790.40 5.03 1.27641 1.12325 32242 238619 -1 15449 15 5333 6293 1039451 248803 4.48156 4.48156 -2022.93 -4.48156 0 0 1.23460e+06 3419.94 0.54 0.39 0.24 -1 -1 0.54 0.178415 0.161776 1515 1036 399 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_23.v common 16.97 vpr 81.68 MiB 0.10 13644 -1 -1 1 0.45 -1 -1 42616 -1 -1 204 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83636 22 19 3301 2742 1 1720 252 19 19 361 clb auto 44.7 MiB 3.43 11340 53517 10972 38772 3773 81.7 MiB 0.99 0.01 4.12096 -1844.89 -4.12096 4.12096 1.31 0.00546398 0.00491764 0.387348 0.346904 50 19231 34 8.16184e+06 5.35831e+06 1.09718e+06 3039.29 6.36 1.87336 1.66563 32962 254619 -1 15990 16 5660 6849 1080415 254872 4.36136 4.36136 -2097.5 -4.36136 0 0 1.31179e+06 3633.76 0.58 0.46 0.25 -1 -1 0.58 0.223301 0.203272 1595 1091 418 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_24.v common 30.71 vpr 82.30 MiB 0.10 13804 -1 -1 1 0.44 -1 -1 42200 -1 -1 209 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84280 22 19 3375 2799 1 1765 257 19 19 361 clb auto 45.1 MiB 3.34 11967 46769 9481 33178 4110 82.3 MiB 0.79 0.01 4.00076 -1865.51 -4.00076 4.00076 1.22 0.00459051 0.00407563 0.295055 0.261339 50 20440 30 8.16184e+06 5.4217e+06 1.09718e+06 3039.29 20.57 2.19137 1.91752 32962 254619 -1 16399 16 5699 6861 1120128 258858 4.48156 4.48156 -2174.85 -4.48156 0 0 1.31179e+06 3633.76 0.58 0.45 0.25 -1 -1 0.58 0.209359 0.18955 1633 1110 437 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_25.v common 17.08 vpr 83.03 MiB 0.11 14316 -1 -1 1 0.49 -1 -1 42396 -1 -1 223 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85020 22 19 3615 3005 1 1878 271 20 20 400 clb auto 46.0 MiB 3.72 12280 52831 10521 37415 4895 83.0 MiB 0.92 0.01 4.00076 -2042.46 -4.00076 4.00076 1.46 0.00513692 0.00454771 0.33463 0.29589 48 21259 30 1.10667e+07 5.59919e+06 1.16517e+06 2912.92 5.70 1.36717 1.20151 36470 272802 -1 17751 17 6476 8068 1219422 292449 4.36136 4.36136 -2564.95 -4.36136 0 0 1.40818e+06 3520.44 0.59 0.47 0.28 -1 -1 0.59 0.219827 0.197876 1747 1201 456 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_26.v common 22.29 vpr 83.73 MiB 0.11 14104 -1 -1 1 0.50 -1 -1 42504 -1 -1 228 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85740 22 19 3689 3062 1 1918 276 20 20 400 clb auto 46.8 MiB 3.66 13288 58646 11664 42490 4492 83.7 MiB 1.04 0.02 4.00076 -2078.04 -4.00076 4.00076 1.42 0.00507789 0.00453081 0.361356 0.318881 50 21259 27 1.10667e+07 5.66258e+06 1.21483e+06 3037.08 10.97 2.08118 1.81955 36870 282114 -1 18171 16 6256 7503 1140836 268384 4.36136 4.36136 -2430.48 -4.36136 0 0 1.45344e+06 3633.59 0.60 0.43 0.29 -1 -1 0.60 0.203037 0.182651 1785 1220 475 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_27.v common 36.77 vpr 85.20 MiB 0.12 14712 -1 -1 1 0.53 -1 -1 43056 -1 -1 240 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87248 22 19 3871 3210 1 2023 289 21 21 441 clb auto 48.2 MiB 3.99 12736 66184 14222 47449 4513 85.2 MiB 1.18 0.02 4.00076 -2150.31 -4.00076 4.00076 1.66 0.00576034 0.00515359 0.418569 0.371365 48 23674 38 1.14723e+07 6.21072e+06 1.29409e+06 2934.45 24.10 2.62405 2.28633 40046 303487 -1 18538 16 6725 8094 1367360 329524 4.36136 4.36136 -2481.33 -4.36136 0 0 1.56480e+06 3548.29 0.75 0.54 0.29 -1 -1 0.75 0.245176 0.221444 1877 1275 494 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_28.v common 23.25 vpr 85.15 MiB 0.12 14620 -1 -1 1 0.54 -1 -1 42280 -1 -1 245 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87196 22 19 3945 3267 1 2070 294 21 21 441 clb auto 48.3 MiB 4.16 15274 71615 16087 49018 6510 85.2 MiB 1.27 0.02 4.12096 -2212.78 -4.12096 4.12096 1.66 0.00608728 0.00546566 0.463329 0.410628 50 26326 44 1.14723e+07 6.27411e+06 1.34972e+06 3060.59 10.32 2.12878 1.86988 40486 313801 -1 20757 15 6888 8539 1369431 310657 4.36136 4.36136 -2629.09 -4.36136 0 0 1.61476e+06 3661.58 0.73 0.52 0.31 -1 -1 0.73 0.233746 0.211816 1915 1294 513 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_29.v common 26.74 vpr 86.66 MiB 0.13 15180 -1 -1 1 0.58 -1 -1 42376 -1 -1 258 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88736 22 19 4159 3447 1 2186 308 22 22 484 mult_36 auto 49.5 MiB 4.38 15784 69921 15261 50158 4502 86.7 MiB 1.23 0.02 4.12096 -2281.06 -4.12096 4.12096 1.85 0.00626139 0.00562284 0.452872 0.401888 54 24396 19 1.26954e+07 6.83492e+06 1.58090e+06 3266.32 12.95 2.46623 2.18875 46322 380746 -1 20947 14 6290 7567 1058093 248434 4.60176 4.60176 -2724.95 -4.60176 0 0 1.94386e+06 4016.24 0.89 0.46 0.38 -1 -1 0.89 0.236453 0.214245 2021 1367 532 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_30.v common 21.91 vpr 87.24 MiB 0.13 15308 -1 -1 1 0.62 -1 -1 44468 -1 -1 263 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89332 22 19 4233 3504 1 2225 313 22 22 484 mult_36 auto 50.5 MiB 4.49 15547 67219 13410 48892 4917 87.2 MiB 1.18 0.02 3.88056 -2252.62 -3.88056 3.88056 1.85 0.00621901 0.00555232 0.411059 0.3633 48 28072 29 1.26954e+07 6.89831e+06 1.44011e+06 2975.42 7.90 1.6639 1.45969 44390 338934 -1 22188 17 8188 10079 2044484 465211 4.48156 4.48156 -2862.8 -4.48156 0 0 1.74100e+06 3597.11 0.80 0.67 0.33 -1 -1 0.80 0.257819 0.230982 2059 1386 551 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_31.v common 23.67 vpr 88.33 MiB 0.13 15864 -1 -1 1 0.64 -1 -1 43652 -1 -1 274 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90452 22 19 4410 3647 1 2335 324 22 22 484 clb mult_36 auto 51.5 MiB 4.57 15750 71492 15173 51187 5132 88.3 MiB 1.20 0.02 3.88056 -2412.46 -3.88056 3.88056 1.82 0.00594185 0.00519709 0.418814 0.368231 50 27040 29 1.26954e+07 7.03777e+06 1.50222e+06 3103.76 9.55 2.02363 1.77142 44874 350400 -1 21841 16 7538 9195 1400457 324058 4.36136 4.36136 -2862.98 -4.36136 0 0 1.79645e+06 3711.66 0.81 0.56 0.34 -1 -1 0.81 0.266262 0.241288 2146 1441 570 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_32.v common 23.94 vpr 88.89 MiB 0.14 15688 -1 -1 1 0.65 -1 -1 44800 -1 -1 278 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91028 22 19 4484 3704 1 2374 328 22 22 484 clb mult_36 auto 52.0 MiB 4.93 15980 79428 16275 56899 6254 88.9 MiB 1.47 0.02 4.00076 -2374.85 -4.00076 4.00076 1.87 0.00731938 0.00657471 0.534304 0.47614 50 26329 28 1.26954e+07 7.08848e+06 1.50222e+06 3103.76 8.86 2.57122 2.28663 44874 350400 -1 21817 17 7632 9627 1511377 363667 4.36136 4.36136 -2876.01 -4.36136 0 0 1.79645e+06 3711.66 0.86 0.69 0.35 -1 -1 0.86 0.349121 0.318062 2184 1460 589 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_33.v common 23.38 vpr 90.34 MiB 0.16 16976 -1 -1 1 0.72 -1 -1 44868 -1 -1 302 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92512 22 19 4843 4029 1 2501 353 23 23 529 clb auto 53.5 MiB 4.96 18294 97619 22986 67222 7411 90.3 MiB 1.66 0.02 4.12096 -2727.64 -4.12096 4.12096 2.02 0.00651688 0.00577354 0.562258 0.493 52 30691 28 1.31518e+07 7.78876e+06 1.69338e+06 3201.10 7.58 2.04797 1.81036 49938 407647 -1 24903 15 7928 9754 1504513 353358 4.48156 4.48156 -3103.38 -4.48156 0 0 2.08190e+06 3935.53 0.97 0.62 0.37 -1 -1 0.97 0.2966 0.268295 2362 1606 608 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_34.v common 30.80 vpr 90.95 MiB 0.16 16924 -1 -1 1 0.73 -1 -1 44940 -1 -1 308 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93136 22 19 4917 4086 1 2542 359 23 23 529 clb auto 54.1 MiB 5.30 17956 89609 19205 64663 5741 91.0 MiB 1.55 0.02 4.12096 -2797.92 -4.12096 4.12096 2.07 0.00714681 0.00636293 0.524854 0.462349 50 30892 49 1.31518e+07 7.86482e+06 1.65241e+06 3123.66 14.61 2.60073 2.2712 48882 385791 -1 24578 18 8360 10419 1593065 368457 4.36136 4.36136 -3316.56 -4.36136 0 0 1.97533e+06 3734.07 0.90 0.66 0.37 -1 -1 0.90 0.324979 0.291963 2401 1625 627 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_35.v common 36.49 vpr 91.87 MiB 0.16 17160 -1 -1 1 0.77 -1 -1 45684 -1 -1 319 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94072 22 19 5093 4228 1 2643 370 23 23 529 clb auto 55.2 MiB 5.49 19373 97241 22360 68346 6535 91.9 MiB 1.70 0.02 4.12096 -2896.96 -4.12096 4.12096 2.09 0.00651675 0.0057091 0.551514 0.483056 54 30788 25 1.31518e+07 8.00428e+06 1.73850e+06 3286.39 19.78 2.98271 2.60897 50466 419205 -1 25718 12 7896 9395 1399928 327698 4.60176 4.60176 -3400.02 -4.60176 0 0 2.13727e+06 4040.20 0.95 0.54 0.41 -1 -1 0.95 0.25634 0.233076 2487 1680 646 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_36.v common 32.04 vpr 91.91 MiB 0.21 17236 -1 -1 1 0.77 -1 -1 45780 -1 -1 323 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94120 22 19 5167 4285 1 2691 374 23 23 529 clb auto 55.4 MiB 5.27 20318 94664 20935 66987 6742 91.9 MiB 1.58 0.02 4.00076 -2960.59 -4.00076 4.00076 2.02 0.00758318 0.00632257 0.51376 0.446363 54 34592 46 1.31518e+07 8.05499e+06 1.73850e+06 3286.39 15.63 2.93832 2.55435 50466 419205 -1 27179 15 8550 10525 1660528 371666 4.60176 4.60176 -3363.69 -4.60176 0 0 2.13727e+06 4040.20 0.98 0.64 0.41 -1 -1 0.98 0.300518 0.271119 2525 1699 665 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_37.v common 34.89 vpr 93.22 MiB 0.20 17980 -1 -1 1 0.83 -1 -1 44488 -1 -1 336 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95456 22 19 5380 4464 1 2808 388 24 24 576 mult_36 auto 56.7 MiB 5.43 19885 102196 21733 73159 7304 93.2 MiB 1.72 0.02 4.12096 -3078.59 -4.12096 4.12096 2.20 0.00736465 0.00644783 0.556934 0.484339 50 32788 25 1.53347e+07 8.61581e+06 1.78400e+06 3097.22 17.67 3.18759 2.78438 53074 415989 -1 27355 14 8950 10854 1867472 424298 4.60176 4.60176 -3577.53 -4.60176 0 0 2.13454e+06 3705.80 0.95 0.65 0.42 -1 -1 0.95 0.283233 0.254442 2630 1772 684 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_38.v common 53.71 vpr 94.14 MiB 0.18 18012 -1 -1 1 0.88 -1 -1 44512 -1 -1 342 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96404 22 19 5454 4521 1 2849 394 24 24 576 clb mult_36 auto 58.4 MiB 5.58 19285 98518 21214 69423 7881 94.1 MiB 1.68 0.02 4.00076 -3085.14 -4.00076 4.00076 2.17 0.00740884 0.00645893 0.542398 0.472131 48 30991 45 1.53347e+07 8.69188e+06 1.71014e+06 2969.00 36.35 3.77622 3.27428 52498 402441 -1 27026 17 9379 11487 1756089 429028 4.24116 4.24116 -3658.49 -4.24116 0 0 2.06880e+06 3591.66 0.95 0.71 0.39 -1 -1 0.95 0.335176 0.300873 2668 1791 703 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_39.v common 33.24 vpr 94.52 MiB 0.18 18328 -1 -1 1 0.87 -1 -1 44504 -1 -1 352 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96784 22 19 5629 4662 1 2951 404 24 24 576 clb mult_36 auto 58.5 MiB 5.85 21655 104844 21870 76021 6953 94.5 MiB 1.85 0.02 4.12096 -3250.33 -4.12096 4.12096 2.21 0.00740825 0.00650976 0.599376 0.526407 54 35048 49 1.53347e+07 8.81866e+06 1.87785e+06 3260.16 15.21 2.94003 2.56045 54798 452027 -1 28521 15 9047 11024 1837268 419775 4.48156 4.48156 -3667.08 -4.48156 0 0 2.31032e+06 4010.97 1.03 0.67 0.45 -1 -1 1.03 0.311829 0.280157 2753 1846 722 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_40.v common 42.45 vpr 99.68 MiB 0.18 18440 -1 -1 1 0.91 -1 -1 46112 -1 -1 357 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102076 22 19 5703 4719 1 2994 409 25 25 625 clb auto 59.1 MiB 5.98 22926 126320 30403 84754 11163 95.0 MiB 2.28 0.03 4.12096 -3237.14 -4.12096 4.12096 2.49 0.00879502 0.00786958 0.763139 0.674175 56 36184 34 1.58291e+07 8.88205e+06 2.10056e+06 3360.90 22.83 3.57657 3.14606 59904 506958 -1 30982 16 9702 11996 2409119 550756 4.60176 4.60176 -3861.5 -4.60176 0 0 2.57664e+06 4122.63 1.23 0.88 0.51 -1 -1 1.23 0.366249 0.330154 2791 1865 741 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_41.v common 39.71 vpr 100.84 MiB 0.19 19200 -1 -1 1 0.96 -1 -1 44940 -1 -1 373 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103256 22 19 5950 4932 1 3111 426 25 25 625 clb auto 60.6 MiB 5.86 23624 123780 29199 86474 8107 96.8 MiB 2.13 0.03 4.12096 -3502.46 -4.12096 4.12096 2.39 0.00820844 0.00723486 0.669933 0.588453 56 37293 24 1.58291e+07 9.48089e+06 2.10056e+06 3360.90 20.60 3.3769 2.9612 59904 506958 -1 32472 14 10096 12878 2153864 496652 4.48156 4.48156 -4147.32 -4.48156 0 0 2.57664e+06 4122.63 1.22 0.79 0.47 -1 -1 1.22 0.347609 0.314935 2912 1956 760 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_42.v common 33.42 vpr 97.00 MiB 0.19 19180 -1 -1 1 0.97 -1 -1 47288 -1 -1 376 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99324 22 19 6024 4989 1 3151 429 25 25 625 clb auto 61.1 MiB 6.35 23087 137874 33874 93660 10340 97.0 MiB 2.32 0.03 4.00076 -3506.48 -4.00076 4.00076 2.41 0.00827164 0.0069755 0.74538 0.640524 52 40352 48 1.58291e+07 9.51893e+06 1.99531e+06 3192.49 13.34 3.08765 2.68394 58656 480125 -1 31323 14 10229 12351 2069982 478125 4.36136 4.36136 -4070.51 -4.36136 0 0 2.45448e+06 3927.17 1.19 0.86 0.48 -1 -1 1.19 0.408659 0.37307 2950 1975 779 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_43.v common 42.65 vpr 104.13 MiB 0.19 19332 -1 -1 1 1.02 -1 -1 45872 -1 -1 388 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 106628 22 19 6198 5129 1 3252 441 25 25 625 clb auto 62.1 MiB 6.43 23221 127969 29180 88206 10583 98.1 MiB 2.24 0.03 4.24116 -3691.52 -4.24116 4.24116 2.43 0.00835972 0.0073822 0.694057 0.605939 58 36321 39 1.58291e+07 9.67106e+06 2.14341e+06 3429.45 22.28 3.89652 3.42545 61152 534357 -1 31360 16 9849 11850 2196127 485248 4.48156 4.48156 -4120.94 -4.48156 0 0 2.68463e+06 4295.40 1.31 0.88 0.53 -1 -1 1.31 0.414554 0.374999 3034 2030 798 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_44.v common 31.45 vpr 98.61 MiB 0.23 19516 -1 -1 1 1.04 -1 -1 46948 -1 -1 393 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100972 22 19 6272 5186 1 3297 446 26 26 676 clb auto 62.5 MiB 6.68 21533 138389 33486 95600 9303 98.6 MiB 2.38 0.03 4.00076 -3511.78 -4.00076 4.00076 2.70 0.00813622 0.00718718 0.773818 0.682828 50 36492 37 1.91809e+07 9.73445e+06 2.15046e+06 3181.16 10.27 3.30533 2.90459 63768 504694 -1 29930 13 10222 13066 1948660 459106 4.48156 4.48156 -4199.13 -4.48156 0 0 2.57128e+06 3803.68 1.25 0.74 0.49 -1 -1 1.25 0.336024 0.303347 3072 2049 817 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_45.v common 37.17 vpr 100.30 MiB 0.20 20004 -1 -1 1 1.11 -1 -1 47796 -1 -1 406 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102704 22 19 6485 5365 1 3415 460 26 26 676 clb auto 64.3 MiB 6.76 24611 147785 37106 101413 9266 100.3 MiB 2.54 0.03 4.24116 -3640.55 -4.24116 4.24116 2.76 0.009347 0.00830256 0.790812 0.693713 54 38649 20 1.91809e+07 1.02953e+07 2.26288e+06 3347.46 15.39 3.58624 3.15894 65792 548382 -1 33148 14 10293 12503 2055791 472478 4.72196 4.72196 -4363.18 -4.72196 0 0 2.78165e+06 4114.86 1.28 0.81 0.54 -1 -1 1.28 0.384213 0.348306 3177 2122 836 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_46.v common 35.86 vpr 99.93 MiB 0.21 20324 -1 -1 1 1.11 -1 -1 47860 -1 -1 411 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102328 22 19 6559 5422 1 3449 465 26 26 676 clb auto 64.1 MiB 7.25 25632 148065 36512 102746 8807 99.9 MiB 2.60 0.03 4.00076 -3754.16 -4.00076 4.00076 2.74 0.00870915 0.00763867 0.795288 0.696621 54 41061 28 1.91809e+07 1.03587e+07 2.26288e+06 3347.46 13.49 3.27057 2.8531 65792 548382 -1 34219 13 10504 13554 2073225 470734 4.60176 4.60176 -4493.33 -4.60176 0 0 2.78165e+06 4114.86 1.33 0.79 0.54 -1 -1 1.33 0.367406 0.332632 3215 2141 855 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_47.v common 44.89 vpr 101.55 MiB 0.22 20456 -1 -1 1 1.16 -1 -1 47656 -1 -1 421 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103988 22 19 6735 5564 1 3561 475 26 26 676 clb auto 65.4 MiB 7.19 26361 150487 36779 102941 10767 101.6 MiB 2.53 0.03 4.24116 -3818.29 -4.24116 4.24116 2.70 0.00911103 0.00797996 0.782723 0.680401 56 40127 28 1.91809e+07 1.04854e+07 2.31971e+06 3431.53 22.41 3.3148 2.88499 66468 563034 -1 35521 14 10835 13455 2452157 557846 4.72196 4.72196 -4708.86 -4.72196 0 0 2.84390e+06 4206.95 1.36 0.90 0.56 -1 -1 1.36 0.387148 0.349314 3301 2196 874 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_48.v common 47.48 vpr 109.91 MiB 0.21 20596 -1 -1 1 1.17 -1 -1 47452 -1 -1 427 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 112552 22 19 6809 5621 1 3598 481 26 26 676 clb auto 65.8 MiB 7.60 26836 168068 42557 115084 10427 101.8 MiB 3.01 0.03 4.12096 -3953.29 -4.12096 4.12096 2.73 0.00981435 0.00876669 0.926243 0.81054 56 41934 34 1.91809e+07 1.05615e+07 2.31971e+06 3431.53 24.02 4.25545 3.72412 66468 563034 -1 36357 14 11240 13665 2293013 526085 4.60176 4.60176 -4887.71 -4.60176 0 0 2.84390e+06 4206.95 1.37 0.89 0.55 -1 -1 1.37 0.390258 0.352766 3339 2215 893 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_49.v common 40.73 vpr 103.73 MiB 0.23 21456 -1 -1 1 1.28 -1 -1 48152 -1 -1 443 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 106224 22 19 7094 5872 1 3718 498 27 27 729 clb auto 67.8 MiB 7.48 25269 162284 38743 113116 10425 103.7 MiB 3.06 0.04 4.00076 -4019.88 -4.00076 4.00076 3.02 0.0111984 0.0100651 0.991145 0.878996 54 40098 24 1.9726e+07 1.11604e+07 2.44988e+06 3360.60 16.30 4.58504 4.05731 70678 594165 -1 33613 14 10626 12972 1955827 455487 4.48156 4.48156 -4724.77 -4.48156 0 0 3.01106e+06 4130.40 1.51 0.89 0.59 -1 -1 1.51 0.463479 0.420757 3480 2324 912 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_50.v common 37.50 vpr 104.67 MiB 0.23 21628 -1 -1 1 1.26 -1 -1 47932 -1 -1 448 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 107180 22 19 7168 5929 1 3755 503 27 27 729 clb auto 68.1 MiB 7.53 27460 168419 40250 118403 9766 103.9 MiB 2.96 0.03 4.00076 -4115.98 -4.00076 4.00076 2.89 0.0103195 0.00915504 0.891123 0.776708 56 41198 24 1.9726e+07 1.12237e+07 2.51142e+06 3445.02 13.28 3.21629 2.82487 71406 610069 -1 36995 14 11421 14302 2286266 526329 4.60176 4.60176 -4896.08 -4.60176 0 0 3.07846e+06 4222.85 1.48 0.92 0.61 -1 -1 1.48 0.423224 0.382052 3518 2343 931 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_51.v common 49.16 vpr 116.28 MiB 0.23 21672 -1 -1 1 1.31 -1 -1 48380 -1 -1 459 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 119072 22 19 7344 6071 1 3863 514 27 27 729 clb auto 68.8 MiB 7.83 30021 177502 45547 119976 11979 104.7 MiB 2.97 0.03 4.24116 -4303.02 -4.24116 4.24116 2.88 0.00868335 0.00764345 0.895194 0.779808 56 45433 25 1.9726e+07 1.13632e+07 2.51142e+06 3445.02 24.42 4.1602 3.63758 71406 610069 -1 40268 16 12071 14986 2560757 574086 4.60176 4.60176 -5157.37 -4.60176 0 0 3.07846e+06 4222.85 1.51 0.96 0.59 -1 -1 1.51 0.445191 0.400753 3604 2398 950 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_pipe_52.v common 45.26 vpr 107.68 MiB 0.23 21828 -1 -1 1 1.33 -1 -1 48376 -1 -1 464 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 110264 22 19 7418 6128 1 3909 519 27 27 729 clb auto 69.4 MiB 7.78 29687 175575 42190 122853 10532 105.2 MiB 3.04 0.03 4.24116 -4306.32 -4.24116 4.24116 2.90 0.0101263 0.00899503 0.918712 0.804635 56 44607 40 1.9726e+07 1.14266e+07 2.51142e+06 3445.02 20.76 4.47455 3.91286 71406 610069 -1 39484 14 11843 14725 2357119 537184 4.72196 4.72196 -5058.54 -4.72196 0 0 3.07846e+06 4222.85 1.42 0.90 0.60 -1 -1 1.42 0.406396 0.364979 3642 2417 969 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_14.v common 17.15 vpr 69.55 MiB 0.05 9572 -1 -1 1 0.17 -1 -1 38836 -1 -1 79 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71220 22 19 1246 925 1 736 124 16 16 256 mult_36 auto 32.1 MiB 1.42 4475 15883 3181 10532 2170 69.6 MiB 0.27 0.00 7.19932 -326.794 -7.19932 7.19932 0.79 0.0019276 0.00173694 0.107375 0.0969999 38 8699 35 6.34292e+06 2.58556e+06 558663. 2182.28 12.06 0.986474 0.877153 21316 135884 -1 6852 22 5149 5713 1005527 256123 7.81499 7.81499 -421.469 -7.81499 0 0 744679. 2908.90 0.29 0.32 0.13 -1 -1 0.29 0.105413 0.0957513 589 285 247 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_15.v common 12.78 vpr 70.07 MiB 0.06 9672 -1 -1 1 0.19 -1 -1 38840 -1 -1 84 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71748 22 19 1344 989 1 796 130 16 16 256 mult_36 auto 32.7 MiB 1.71 4728 20857 4958 12174 3725 70.1 MiB 0.37 0.01 7.17732 -352.66 -7.17732 7.17732 0.85 0.00231709 0.00199964 0.145707 0.130572 44 9564 36 6.34292e+06 3.04495e+06 649498. 2537.10 7.06 0.914404 0.808368 22336 155612 -1 6952 22 4657 5241 849116 226157 7.60742 7.60742 -466.22 -7.60742 0 0 820238. 3204.05 0.33 0.28 0.16 -1 -1 0.33 0.108274 0.0978284 633 304 266 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_16.v common 9.72 vpr 70.80 MiB 0.06 9800 -1 -1 1 0.20 -1 -1 38952 -1 -1 89 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72500 22 19 1418 1046 1 833 135 16 16 256 mult_36 auto 33.0 MiB 1.72 4969 22625 5126 13275 4224 70.8 MiB 0.39 0.01 7.31952 -370.156 -7.31952 7.31952 0.82 0.00211244 0.00190423 0.153889 0.138586 42 9873 46 6.34292e+06 3.10834e+06 613404. 2396.11 3.89 0.69514 0.62173 21828 146600 -1 7397 22 5433 6026 1153238 298731 7.56554 7.56554 -464.767 -7.56554 0 0 784202. 3063.29 0.31 0.36 0.15 -1 -1 0.31 0.120265 0.109376 671 323 285 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_17.v common 14.14 vpr 71.65 MiB 0.07 10280 -1 -1 1 0.21 -1 -1 38768 -1 -1 95 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73368 22 19 1518 1112 1 899 141 16 16 256 mult_36 auto 34.0 MiB 1.80 5830 24663 5585 14854 4224 71.6 MiB 0.44 0.01 7.83563 -387.164 -7.83563 7.83563 0.81 0.00252338 0.00230384 0.170481 0.153645 46 10609 30 6.34292e+06 3.18441e+06 684529. 2673.94 8.13 1.05339 0.93408 22592 160355 -1 8330 23 6321 7050 1082514 288242 8.41714 8.41714 -508.76 -8.41714 0 0 838722. 3276.26 0.32 0.34 0.16 -1 -1 0.32 0.123351 0.11132 717 342 304 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_18.v common 11.45 vpr 71.77 MiB 0.07 10396 -1 -1 1 0.22 -1 -1 39164 -1 -1 100 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73492 22 19 1592 1169 1 937 146 16 16 256 mult_36 auto 34.2 MiB 1.90 5768 23186 5043 14807 3336 71.8 MiB 0.46 0.01 7.87378 -423.859 -7.87378 7.87378 0.82 0.00267849 0.0024322 0.165083 0.14916 46 11279 34 6.34292e+06 3.2478e+06 684529. 2673.94 5.25 0.827492 0.740361 22592 160355 -1 8399 23 5797 6537 1001088 254098 8.35225 8.35225 -500.681 -8.35225 0 0 838722. 3276.26 0.34 0.36 0.16 -1 -1 0.34 0.141375 0.128341 755 361 323 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_19.v common 10.46 vpr 71.95 MiB 0.07 10612 -1 -1 1 0.23 -1 -1 39708 -1 -1 105 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73680 22 19 1688 1231 1 998 152 16 16 256 mult_36 auto 34.6 MiB 2.15 6163 25262 5430 16322 3510 72.0 MiB 0.52 0.01 7.91183 -414.648 -7.91183 7.91183 0.83 0.00291905 0.0026183 0.197662 0.178609 46 10789 30 6.34292e+06 3.70719e+06 684529. 2673.94 3.75 0.835531 0.749498 22592 160355 -1 8911 23 6128 6963 1301513 331479 8.37739 8.37739 -575.715 -8.37739 0 0 838722. 3276.26 0.34 0.46 0.16 -1 -1 0.34 0.167083 0.152387 797 380 342 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_20.v common 10.67 vpr 72.79 MiB 0.07 10672 -1 -1 1 0.25 -1 -1 39148 -1 -1 110 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74540 22 19 1762 1288 1 1033 157 16 16 256 mult_36 auto 35.3 MiB 2.39 6258 25537 5082 16804 3651 72.8 MiB 0.50 0.01 7.94272 -446.391 -7.94272 7.94272 0.80 0.00257027 0.00230072 0.173994 0.155258 44 11870 36 6.34292e+06 3.77058e+06 649498. 2537.10 3.82 0.752048 0.668658 22336 155612 -1 8869 23 6454 7264 1097871 292530 8.38325 8.38325 -610.89 -8.38325 0 0 820238. 3204.05 0.33 0.37 0.16 -1 -1 0.33 0.144271 0.130342 835 399 361 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_21.v common 12.17 vpr 73.70 MiB 0.08 11292 -1 -1 1 0.26 -1 -1 39588 -1 -1 117 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75468 22 19 1859 1351 1 1097 164 16 16 256 mult_36 auto 36.0 MiB 2.45 7610 23460 4742 15321 3397 73.7 MiB 0.49 0.01 7.98298 -454.868 -7.98298 7.98298 0.81 0.00300627 0.00272172 0.16963 0.152694 52 13753 35 6.34292e+06 3.85933e+06 763333. 2981.77 5.14 0.932395 0.833109 23612 180979 -1 10662 21 6037 6974 1331985 336907 8.73999 8.73999 -600.024 -8.73999 0 0 940801. 3675.00 0.37 0.40 0.18 -1 -1 0.37 0.136939 0.124269 878 418 380 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_22.v common 12.87 vpr 73.69 MiB 0.08 11172 -1 -1 1 0.28 -1 -1 39832 -1 -1 121 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75456 22 19 1933 1408 1 1134 168 16 16 256 mult_36 auto 36.2 MiB 2.44 7807 22392 4309 14490 3593 73.7 MiB 0.43 0.01 8.06292 -488.77 -8.06292 8.06292 0.80 0.00282789 0.00252625 0.154994 0.13849 48 13647 34 6.34292e+06 3.91004e+06 714410. 2790.66 5.77 0.896998 0.794985 22848 165380 -1 11235 26 8357 9534 1777922 437547 8.71387 8.71387 -667.422 -8.71387 0 0 863353. 3372.47 0.34 0.53 0.17 -1 -1 0.34 0.166767 0.149703 916 437 399 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_23.v common 17.65 vpr 74.27 MiB 0.09 11716 -1 -1 1 0.29 -1 -1 40456 -1 -1 129 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76052 22 19 2031 1472 1 1198 177 18 18 324 mult_36 auto 36.6 MiB 2.59 7542 30433 6810 19340 4283 74.3 MiB 0.58 0.01 7.94272 -501.884 -7.94272 7.94272 1.14 0.00320232 0.00287304 0.209658 0.187884 48 13282 30 7.79418e+06 4.40746e+06 935225. 2886.50 9.44 1.35558 1.20174 29348 218440 -1 11154 22 7239 8059 1500210 362151 8.48233 8.48233 -747.315 -8.48233 0 0 1.13028e+06 3488.51 0.46 0.45 0.22 -1 -1 0.46 0.155735 0.140324 960 456 418 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_24.v common 12.86 vpr 74.71 MiB 0.09 11592 -1 -1 1 0.30 -1 -1 39500 -1 -1 134 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76508 22 19 2105 1529 1 1235 182 18 18 324 mult_36 auto 37.2 MiB 2.65 7570 34172 7597 23356 3219 74.7 MiB 0.62 0.01 7.59312 -513.375 -7.59312 7.59312 1.10 0.0031322 0.00278971 0.216381 0.192034 44 14158 33 7.79418e+06 4.47085e+06 850563. 2625.19 4.61 0.890638 0.79037 28700 205432 -1 11048 21 7097 7987 1477099 359438 8.30119 8.30119 -660.145 -8.30119 0 0 1.07356e+06 3313.45 0.45 0.47 0.20 -1 -1 0.45 0.161733 0.1464 998 475 437 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_25.v common 17.06 vpr 75.58 MiB 0.09 12208 -1 -1 1 0.31 -1 -1 40500 -1 -1 139 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77392 22 19 2201 1591 1 1295 187 18 18 324 mult_36 auto 37.9 MiB 2.72 7862 35431 7296 24084 4051 75.6 MiB 0.67 0.01 7.71437 -501.545 -7.71437 7.71437 1.07 0.00330828 0.00296073 0.237566 0.213375 46 14965 29 7.79418e+06 4.53424e+06 895831. 2764.91 8.65 1.10649 0.985049 29024 211752 -1 11539 24 7840 8969 1854298 430384 8.08653 8.08653 -737.874 -8.08653 0 0 1.09776e+06 3388.15 0.45 0.57 0.19 -1 -1 0.45 0.1942 0.175501 1040 494 456 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_26.v common 21.93 vpr 75.76 MiB 0.10 12204 -1 -1 1 0.34 -1 -1 40364 -1 -1 143 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77580 22 19 2275 1648 1 1331 191 18 18 324 mult_36 auto 38.2 MiB 2.85 8291 29288 5409 20620 3259 75.8 MiB 0.54 0.01 7.83458 -536.937 -7.83458 7.83458 1.08 0.0031197 0.00281403 0.187943 0.16739 44 17052 44 7.79418e+06 4.58495e+06 850563. 2625.19 13.30 1.45499 1.28327 28700 205432 -1 12326 23 8867 10137 1782485 427167 8.48854 8.48854 -792.977 -8.48854 0 0 1.07356e+06 3313.45 0.44 0.59 0.20 -1 -1 0.44 0.196261 0.176418 1078 513 475 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_27.v common 18.80 vpr 76.61 MiB 0.10 12552 -1 -1 1 0.36 -1 -1 40116 -1 -1 151 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78444 22 19 2385 1724 1 1408 200 18 18 324 mult_36 auto 39.2 MiB 3.07 8555 40496 8834 26732 4930 76.6 MiB 0.79 0.01 7.71543 -566.391 -7.71543 7.71543 1.12 0.00385094 0.0035008 0.27539 0.24644 46 16439 47 7.79418e+06 5.08238e+06 895831. 2764.91 9.62 1.27874 1.13414 29024 211752 -1 12581 22 8414 9443 1854623 450803 8.25705 8.25705 -878.508 -8.25705 0 0 1.09776e+06 3388.15 0.48 0.56 0.20 -1 -1 0.48 0.187419 0.16983 1134 532 494 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_28.v common 14.52 vpr 76.74 MiB 0.10 12364 -1 -1 1 0.38 -1 -1 40708 -1 -1 156 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78584 22 19 2459 1781 1 1444 205 18 18 324 mult_36 auto 39.5 MiB 3.11 8535 40069 7689 26192 6188 76.7 MiB 0.78 0.01 7.99398 -584.948 -7.99398 7.99398 1.12 0.00395272 0.00361013 0.2795 0.251781 46 15532 41 7.79418e+06 5.14577e+06 895831. 2764.91 5.33 1.19537 1.06459 29024 211752 -1 12353 23 7759 8859 1385863 355857 8.68499 8.68499 -778.714 -8.68499 0 0 1.09776e+06 3388.15 0.44 0.47 0.20 -1 -1 0.44 0.191571 0.172778 1172 551 513 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_29.v common 26.32 vpr 77.48 MiB 0.11 12944 -1 -1 1 0.38 -1 -1 40784 -1 -1 163 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79336 22 19 2565 1853 1 1517 213 22 22 484 mult_36 auto 40.0 MiB 3.36 10332 44028 9540 29782 4706 77.5 MiB 0.86 0.01 7.68032 -561.846 -7.68032 7.68032 1.86 0.00423394 0.00373435 0.30523 0.273104 48 18056 32 1.26954e+07 5.63051e+06 1.44011e+06 2975.42 14.55 1.81213 1.60838 44390 338934 -1 15071 23 10772 12350 2420932 571299 8.73268 8.73268 -1024.67 -8.73268 0 0 1.74100e+06 3597.11 0.80 0.73 0.34 -1 -1 0.80 0.21668 0.1961 1224 570 532 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_30.v common 53.73 vpr 77.70 MiB 0.11 13028 -1 -1 1 0.38 -1 -1 41044 -1 -1 168 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79564 22 19 2639 1910 1 1554 218 22 22 484 mult_36 auto 40.9 MiB 3.35 9943 44103 9526 30646 3931 77.7 MiB 0.82 0.01 7.49118 -621.709 -7.49118 7.49118 1.79 0.00408202 0.00366684 0.278856 0.247563 44 18610 34 1.26954e+07 5.6939e+06 1.30964e+06 2705.88 42.17 2.17214 1.90982 43422 318546 -1 14497 22 10422 11974 2178353 518046 8.43928 8.43928 -1106.24 -8.43928 0 0 1.65337e+06 3416.05 0.80 0.69 0.32 -1 -1 0.80 0.230301 0.208586 1262 589 551 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_31.v common 23.70 vpr 78.55 MiB 0.11 13328 -1 -1 1 0.41 -1 -1 41064 -1 -1 175 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80440 22 19 2744 1981 1 1626 225 22 22 484 mult_36 auto 41.6 MiB 3.52 11319 53577 12639 36107 4831 78.6 MiB 1.03 0.01 8.19518 -627.631 -8.19518 8.19518 1.81 0.00400188 0.00355335 0.33293 0.295992 46 19595 34 1.26954e+07 5.78265e+06 1.37878e+06 2848.72 11.90 1.38519 1.22493 43906 328446 -1 15799 20 7815 9008 1698885 394130 8.73379 8.73379 -1044.97 -8.73379 0 0 1.69059e+06 3492.95 0.72 0.54 0.29 -1 -1 0.72 0.197058 0.178535 1313 608 570 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_32.v common 20.14 vpr 78.50 MiB 0.11 13376 -1 -1 1 0.42 -1 -1 40732 -1 -1 179 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80388 22 19 2818 2038 1 1662 229 22 22 484 mult_36 auto 41.7 MiB 3.62 11687 58329 13444 38031 6854 78.5 MiB 1.21 0.01 7.83563 -668.143 -7.83563 7.83563 1.87 0.00438922 0.00392343 0.383675 0.342488 48 20452 27 1.26954e+07 5.83336e+06 1.44011e+06 2975.42 7.45 1.26814 1.1303 44390 338934 -1 17015 25 12799 14418 2942689 654010 8.81588 8.81588 -1151.48 -8.81588 0 0 1.74100e+06 3597.11 0.82 0.88 0.34 -1 -1 0.82 0.263237 0.238312 1351 627 589 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_33.v common 28.36 vpr 79.55 MiB 0.12 13888 -1 -1 1 0.44 -1 -1 41488 -1 -1 187 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81456 22 19 2923 2109 1 1730 238 22 22 484 mult_36 auto 42.6 MiB 3.68 11630 59198 14082 39735 5381 79.5 MiB 1.15 0.01 8.35583 -670.999 -8.35583 8.35583 1.83 0.00478166 0.0042249 0.377558 0.334673 48 20271 41 1.26954e+07 6.33079e+06 1.44011e+06 2975.42 15.80 2.24024 1.98377 44390 338934 -1 17298 25 13133 14760 3141332 711676 9.74399 9.74399 -1109.97 -9.74399 0 0 1.74100e+06 3597.11 0.76 0.85 0.34 -1 -1 0.76 0.226556 0.202673 1402 646 608 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_34.v common 25.58 vpr 80.18 MiB 0.13 13880 -1 -1 1 0.45 -1 -1 41624 -1 -1 193 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82100 22 19 2997 2166 1 1769 244 22 22 484 mult_36 auto 43.0 MiB 3.90 11992 60442 13730 41497 5215 80.2 MiB 1.27 0.02 8.37783 -706.347 -8.37783 8.37783 1.83 0.00472287 0.00417452 0.404252 0.359802 46 22642 38 1.26954e+07 6.40685e+06 1.37878e+06 2848.72 12.62 1.57388 1.38993 43906 328446 -1 17422 23 11950 13600 2755453 629440 9.56259 9.56259 -1125.44 -9.56259 0 0 1.69059e+06 3492.95 0.76 0.83 0.33 -1 -1 0.76 0.246354 0.221281 1441 665 627 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_35.v common 20.72 vpr 80.75 MiB 0.12 14224 -1 -1 1 0.47 -1 -1 41716 -1 -1 199 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82684 22 19 3101 2236 1 1838 250 22 22 484 mult_36 auto 43.4 MiB 3.91 11314 53766 11250 36397 6119 80.7 MiB 1.00 0.01 8.50903 -699.08 -8.50903 8.50903 1.80 0.00464485 0.004163 0.343069 0.30678 44 22456 48 1.26954e+07 6.48292e+06 1.30964e+06 2705.88 8.28 1.52247 1.3481 43422 318546 -1 17308 22 10540 12094 2333773 553804 9.15685 9.15685 -1153.39 -9.15685 0 0 1.65337e+06 3416.05 0.75 0.73 0.28 -1 -1 0.75 0.252143 0.227723 1491 684 646 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_36.v common 31.24 vpr 80.89 MiB 0.13 14420 -1 -1 1 0.48 -1 -1 41812 -1 -1 203 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82836 22 19 3175 2293 1 1872 254 22 22 484 mult_36 auto 43.8 MiB 4.17 13673 66182 15113 45335 5734 80.9 MiB 1.27 0.02 8.24663 -726.645 -8.24663 8.24663 1.80 0.00459728 0.00405956 0.390449 0.344173 50 23499 49 1.26954e+07 6.53363e+06 1.50222e+06 3103.76 17.94 2.46001 2.16968 44874 350400 -1 19099 24 12478 14328 2738214 607596 9.29494 9.29494 -1395.99 -9.29494 0 0 1.79645e+06 3711.66 0.79 0.81 0.35 -1 -1 0.79 0.253337 0.227298 1529 703 665 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_37.v common 35.01 vpr 81.54 MiB 0.14 14460 -1 -1 1 0.51 -1 -1 41496 -1 -1 210 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83500 22 19 3280 2364 1 1945 262 24 24 576 mult_36 auto 44.4 MiB 4.40 13737 63112 14736 42966 5410 81.5 MiB 1.46 0.02 8.70438 -826.125 -8.70438 8.70438 2.26 0.00530001 0.00479361 0.470333 0.418118 48 24848 31 1.53347e+07 7.01838e+06 1.71014e+06 2969.00 20.00 3.01691 2.689 52498 402441 -1 20321 23 11003 12847 2489752 579818 9.82799 9.82799 -1274.48 -9.82799 0 0 2.06880e+06 3591.66 0.99 0.86 0.40 -1 -1 0.99 0.307462 0.280033 1580 722 684 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_38.v common 25.88 vpr 82.12 MiB 0.14 14556 -1 -1 1 0.53 -1 -1 42300 -1 -1 215 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84092 22 19 3354 2421 1 1981 267 24 24 576 mult_36 auto 45.1 MiB 4.60 12283 66410 15467 44998 5945 82.1 MiB 1.36 0.02 8.46398 -758.271 -8.46398 8.46398 2.17 0.00472731 0.00419657 0.395579 0.350185 48 20857 42 1.53347e+07 7.08177e+06 1.71014e+06 2969.00 10.90 1.77491 1.56841 52498 402441 -1 17767 24 11243 12656 2487383 592395 9.04079 9.04079 -1226.22 -9.04079 0 0 2.06880e+06 3591.66 1.00 0.85 0.40 -1 -1 1.00 0.30973 0.28091 1618 741 703 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_39.v common 35.89 vpr 82.77 MiB 0.15 14832 -1 -1 1 0.55 -1 -1 41292 -1 -1 222 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84752 22 19 3457 2490 1 2052 274 24 24 576 mult_36 auto 45.6 MiB 4.82 13340 69616 16006 45166 8444 82.8 MiB 1.46 0.02 8.74838 -809.99 -8.74838 8.74838 2.20 0.00591186 0.00538996 0.466662 0.419949 50 23404 47 1.53347e+07 7.17052e+06 1.78400e+06 3097.22 20.53 2.93676 2.60264 53074 415989 -1 19070 21 10387 11943 2313286 543292 9.20774 9.20774 -1215.56 -9.20774 0 0 2.13454e+06 3705.80 0.98 0.74 0.41 -1 -1 0.98 0.262964 0.237441 1667 760 722 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_40.v common 27.55 vpr 82.93 MiB 0.15 14940 -1 -1 1 0.57 -1 -1 41696 -1 -1 227 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84916 22 19 3531 2547 1 2089 279 24 24 576 mult_36 auto 45.9 MiB 4.63 13529 82269 20031 55843 6395 82.9 MiB 1.72 0.02 8.59729 -884.211 -8.59729 8.59729 2.22 0.00539309 0.00481214 0.51783 0.460064 46 24371 47 1.53347e+07 7.23391e+06 1.63708e+06 2842.15 12.27 1.97068 1.7396 51922 389946 -1 19167 20 9569 11156 1870147 451949 8.84851 8.84851 -1221.04 -8.84851 0 0 2.00908e+06 3487.99 0.95 0.65 0.38 -1 -1 0.95 0.273848 0.248872 1705 779 741 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_41.v common 38.23 vpr 83.74 MiB 0.15 15236 -1 -1 1 0.59 -1 -1 41648 -1 -1 233 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85752 22 19 3634 2616 1 2155 286 24 24 576 mult_36 auto 46.9 MiB 4.88 14066 76507 18629 50571 7307 83.7 MiB 1.58 0.02 8.32658 -889.45 -8.32658 8.32658 2.21 0.00531035 0.00466593 0.478946 0.422501 46 27199 49 1.53347e+07 7.70597e+06 1.63708e+06 2842.15 22.48 3.00462 2.65441 51922 389946 -1 20364 23 14158 16229 3058167 719678 8.91839 8.91839 -1304.55 -8.91839 0 0 2.00908e+06 3487.99 0.89 0.89 0.39 -1 -1 0.89 0.281098 0.252011 1754 798 760 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_42.v common 85.63 vpr 84.37 MiB 0.15 15580 -1 -1 1 0.60 -1 -1 42456 -1 -1 238 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86396 22 19 3708 2673 1 2193 291 24 24 576 mult_36 auto 47.3 MiB 4.94 14393 69699 15615 45613 8471 84.4 MiB 1.46 0.02 8.58629 -871.096 -8.58629 8.58629 2.18 0.00580354 0.00522938 0.452299 0.402312 46 27212 37 1.53347e+07 7.76936e+06 1.63708e+06 2842.15 69.93 3.46929 3.04683 51922 389946 -1 20409 23 13934 15633 3266871 800639 8.93951 8.93951 -1205.8 -8.93951 0 0 2.00908e+06 3487.99 0.91 0.94 0.39 -1 -1 0.91 0.284858 0.254321 1792 817 779 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_43.v common 30.37 vpr 84.80 MiB 0.15 15788 -1 -1 1 0.63 -1 -1 42788 -1 -1 244 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86840 22 19 3810 2741 1 2260 297 24 24 576 mult_36 auto 47.9 MiB 5.14 16071 81477 19018 53219 9240 84.8 MiB 1.77 0.02 8.62924 -937.626 -8.62924 8.62924 2.23 0.00606957 0.00549596 0.532064 0.477678 54 27526 39 1.53347e+07 7.84543e+06 1.87785e+06 3260.16 13.95 2.14196 1.90591 54798 452027 -1 22237 21 13184 15235 2671438 625800 8.94128 8.94128 -1796.27 -8.94128 0 0 2.31032e+06 4010.97 1.05 0.81 0.45 -1 -1 1.05 0.276879 0.249277 1840 836 798 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_44.v common 38.64 vpr 85.39 MiB 0.16 15880 -1 -1 1 0.64 -1 -1 42540 -1 -1 249 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87440 22 19 3884 2798 1 2296 302 24 24 576 mult_36 auto 48.3 MiB 5.14 14391 78226 17480 49727 11019 85.4 MiB 1.62 0.02 8.36684 -987.151 -8.36684 8.36684 2.21 0.00637851 0.00578517 0.505522 0.45181 54 24867 41 1.53347e+07 7.90882e+06 1.87785e+06 3260.16 22.25 3.00173 2.64897 54798 452027 -1 20180 23 13027 14691 2229389 548851 8.74305 8.74305 -1525.59 -8.74305 0 0 2.31032e+06 4010.97 1.05 0.76 0.45 -1 -1 1.05 0.29856 0.267337 1878 855 817 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_45.v common 28.49 vpr 85.58 MiB 0.17 16328 -1 -1 1 0.67 -1 -1 44140 -1 -1 256 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87632 22 19 3989 2869 1 2368 310 24 24 576 mult_36 auto 48.6 MiB 5.34 17255 81006 18209 54882 7915 85.6 MiB 1.75 0.02 8.80258 -947.115 -8.80258 8.80258 2.20 0.00654553 0.00588192 0.516044 0.457479 50 29571 39 1.53347e+07 8.39357e+06 1.78400e+06 3097.22 11.72 1.95797 1.72376 53074 415989 -1 23657 24 11958 13884 2978828 669738 8.97365 8.97365 -1515.11 -8.97365 0 0 2.13454e+06 3705.80 0.97 0.99 0.41 -1 -1 0.97 0.358945 0.324475 1929 874 836 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_46.v common 37.01 vpr 86.20 MiB 0.17 16224 -1 -1 1 0.69 -1 -1 44200 -1 -1 260 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88272 22 19 4063 2926 1 2404 314 24 24 576 mult_36 auto 49.2 MiB 5.68 15542 80264 17530 54759 7975 86.2 MiB 1.72 0.02 8.62444 -966.953 -8.62444 8.62444 2.25 0.00638868 0.00575842 0.504826 0.449973 50 26967 32 1.53347e+07 8.44428e+06 1.78400e+06 3097.22 19.93 3.03156 2.68391 53074 415989 -1 22163 23 12520 14433 2702693 623825 9.06673 9.06673 -1389.09 -9.06673 0 0 2.13454e+06 3705.80 0.94 0.83 0.42 -1 -1 0.94 0.30421 0.272574 1967 893 855 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_47.v common 40.66 vpr 87.20 MiB 0.18 16716 -1 -1 1 0.70 -1 -1 44076 -1 -1 267 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89292 22 19 4167 2996 1 2473 321 24 24 576 mult_36 auto 49.6 MiB 5.72 16428 105729 25776 65623 14330 86.5 MiB 2.28 0.02 8.37783 -972.516 -8.37783 8.37783 2.22 0.0063636 0.00571461 0.651966 0.574117 56 26967 30 1.53347e+07 8.53303e+06 1.92546e+06 3342.82 22.47 3.18016 2.80437 55374 464059 -1 22842 23 14352 16602 3132067 738407 8.74214 8.74214 -1442.51 -8.74214 0 0 2.36234e+06 4101.29 1.09 1.04 0.46 -1 -1 1.09 0.375168 0.340089 2017 912 874 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_48.v common 29.05 vpr 87.19 MiB 0.18 16836 -1 -1 1 0.73 -1 -1 44604 -1 -1 272 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89284 22 19 4241 3053 1 2509 326 24 24 576 mult_36 auto 50.4 MiB 5.90 16205 92248 21319 62712 8217 87.2 MiB 2.00 0.02 8.58523 -1008.44 -8.58523 8.58523 2.25 0.00611281 0.00541359 0.573915 0.508331 50 26974 27 1.53347e+07 8.59642e+06 1.78400e+06 3097.22 11.27 2.16395 1.9105 53074 415989 -1 23071 23 14033 16117 2697143 651562 9.06959 9.06959 -1652.11 -9.06959 0 0 2.13454e+06 3705.80 0.97 0.90 0.41 -1 -1 0.97 0.341926 0.307447 2055 931 893 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_49.v common 43.63 vpr 88.40 MiB 0.21 17308 -1 -1 1 0.73 -1 -1 44880 -1 -1 278 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90520 22 19 4346 3124 1 2580 333 24 24 576 mult_36 auto 50.5 MiB 5.77 19132 83349 17942 56751 8656 87.5 MiB 1.79 0.03 8.74838 -1077.09 -8.74838 8.74838 2.18 0.00705073 0.00639779 0.51176 0.453648 60 28663 28 1.53347e+07 9.06848e+06 2.00908e+06 3487.99 25.95 3.37159 2.97419 57098 500223 -1 25086 25 13155 15106 2766161 645366 9.00665 9.00665 -1546.42 -9.00665 0 0 2.50809e+06 4354.32 1.16 0.94 0.52 -1 -1 1.16 0.358266 0.319686 2106 950 912 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_50.v common 32.81 vpr 88.05 MiB 0.19 17220 -1 -1 1 0.74 -1 -1 44664 -1 -1 283 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90164 22 19 4420 3181 1 2615 338 24 24 576 mult_36 auto 51.2 MiB 6.17 18236 95594 22929 60216 12449 88.1 MiB 2.16 0.03 8.57692 -1068.8 -8.57692 8.57692 2.23 0.00712538 0.00633311 0.610293 0.536943 54 30155 40 1.53347e+07 9.13187e+06 1.87785e+06 3260.16 14.52 2.52764 2.22502 54798 452027 -1 24126 24 13902 15826 2415015 599306 9.43834 9.43834 -1593.1 -9.43834 0 0 2.31032e+06 4010.97 1.05 0.85 0.44 -1 -1 1.05 0.348125 0.310388 2144 969 931 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_51.v common 60.01 vpr 88.80 MiB 0.20 17712 -1 -1 1 0.78 -1 -1 44952 -1 -1 291 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90928 22 19 4524 3251 1 2687 346 24 24 576 mult_36 auto 51.8 MiB 6.07 17218 92610 21196 61186 10228 88.8 MiB 2.10 0.03 8.50904 -1102.87 -8.50904 8.50904 2.25 0.0077412 0.00706102 0.626188 0.55675 50 29027 48 1.53347e+07 9.2333e+06 1.78400e+06 3097.22 41.76 3.68451 3.25194 53074 415989 -1 24104 20 14136 16584 2986471 725281 9.06165 9.06165 -1515.82 -9.06165 0 0 2.13454e+06 3705.80 0.99 0.95 0.41 -1 -1 0.99 0.341313 0.308709 2194 988 950 19 0 0 + k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml fir_nopipe_52.v common 43.78 vpr 89.11 MiB 0.20 17544 -1 -1 1 0.79 -1 -1 45040 -1 -1 295 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91252 22 19 4598 3308 1 2721 350 24 24 576 mult_36 auto 52.2 MiB 6.06 18308 102689 24167 65548 12974 89.1 MiB 2.10 0.03 8.50903 -1056.08 -8.50903 8.50903 2.15 0.00703979 0.00635312 0.600221 0.526128 54 31817 39 1.53347e+07 9.28401e+06 1.87785e+06 3260.16 25.46 3.78341 3.32298 54798 452027 -1 25400 23 17578 19604 3706703 897186 9.12306 9.12306 -1712.02 -9.12306 0 0 2.31032e+06 4010.97 0.99 1.18 0.41 -1 -1 0.99 0.386808 0.346951 2232 1007 969 19 0 0 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/FIR_filters_frac/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/FIR_filters_frac/config/golden_results.txt index 86e5238f5f4..902a344c7a9 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/FIR_filters_frac/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/FIR_filters_frac/config/golden_results.txt @@ -1,391 +1,391 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length -k6_frac_2ripple_N8_22nm.xml fir_pipe_14.v common 15.08 vpr 73.54 MiB 0.08 10528 -1 -1 1 0.31 -1 -1 38832 -1 -1 65 22 0 4 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75300 22 19 1974 1653 1 1013 110 16 16 256 mult_36 auto 35.8 MiB 1.00 5366 16679 3774 10975 1930 73.5 MiB 0.45 0.01 3.77076 -1035.59 -3.77076 3.77076 1.07 0.00313597 0.00274622 0.228234 0.20141 58 11657 33 6.59459e+06 2.52492e+06 871168. 3403.00 8.36 1.11716 0.980088 26872 219187 -1 9401 19 4617 5180 952922 211448 0 0 952922 211448 4956 4701 0 0 39620 36179 0 0 50879 43488 0 0 4997 4742 0 0 427759 60411 0 0 424711 61927 0 0 4956 0 0 358 2084 2787 16699 237 1 4.52256 4.52256 -1279.81 -4.52256 0 0 1.09288e+06 4269.05 0.49 0.45 0.26 -1 -1 0.49 0.196166 0.178707 481 649 247 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_15.v common 12.88 vpr 74.75 MiB 0.09 10916 -1 -1 1 0.34 -1 -1 39608 -1 -1 72 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76544 22 19 2144 1789 1 1110 118 16 16 256 mult_36 auto 37.2 MiB 1.34 6094 20348 4989 12732 2627 74.8 MiB 0.55 0.01 4.02136 -1124.61 -4.02136 4.02136 0.97 0.0038405 0.00342692 0.28383 0.254401 66 11662 44 6.59459e+06 3.02225e+06 974584. 3806.97 5.84 1.45733 1.2927 28148 247068 -1 9553 20 4262 4855 813060 184935 0 0 813060 184935 4687 4349 0 0 36632 33398 0 0 47438 40420 0 0 4749 4409 0 0 359291 52050 0 0 360263 50309 0 0 4687 0 0 440 3179 3202 27212 198 8 4.64786 4.64786 -1308.56 -4.64786 0 0 1.22072e+06 4768.46 0.54 0.43 0.28 -1 -1 0.54 0.207928 0.189582 521 704 266 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_16.v common 16.79 vpr 75.12 MiB 0.09 11292 -1 -1 1 0.35 -1 -1 39128 -1 -1 74 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76924 22 19 2218 1846 1 1154 120 16 16 256 mult_36 auto 37.5 MiB 1.29 6705 21065 5188 13242 2635 75.1 MiB 0.65 0.01 3.89606 -1175.83 -3.89606 3.89606 1.03 0.00503919 0.00456367 0.350409 0.3166 60 13619 42 6.59459e+06 3.0512e+06 890343. 3477.90 9.49 1.54694 1.37606 27128 224764 -1 10941 21 5197 5939 1010638 225463 0 0 1010638 225463 5673 5237 0 0 43093 39200 0 0 56438 46911 0 0 5674 5259 0 0 445314 65826 0 0 454446 63030 0 0 5673 0 0 496 3950 3574 31808 287 1 4.27196 4.27196 -1465.59 -4.27196 0 0 1.11577e+06 4358.47 0.49 0.50 0.27 -1 -1 0.49 0.219308 0.199348 540 723 285 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_17.v common 19.78 vpr 76.85 MiB 0.11 12132 -1 -1 1 0.40 -1 -1 39760 -1 -1 83 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78692 22 19 2536 2130 1 1256 129 16 16 256 mult_36 auto 39.6 MiB 1.67 7097 17354 3413 11756 2185 76.8 MiB 0.50 0.01 3.89606 -1305 -3.89606 3.89606 1.01 0.00604251 0.00550308 0.272607 0.242915 64 13178 23 6.59459e+06 3.18149e+06 943753. 3686.54 11.84 2.17757 1.93652 27892 240595 -1 10892 20 4844 5686 1003501 231528 0 0 1003501 231528 5289 4894 0 0 42689 38672 0 0 56072 47179 0 0 5321 4936 0 0 447806 66573 0 0 446324 69274 0 0 5289 0 0 460 3860 3768 23877 446 89 4.39726 4.39726 -1502.47 -4.39726 0 0 1.19033e+06 4649.74 0.52 0.57 0.30 -1 -1 0.52 0.255096 0.231491 617 851 304 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_18.v common 19.27 vpr 76.93 MiB 0.11 12172 -1 -1 1 0.40 -1 -1 40504 -1 -1 86 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78780 22 19 2610 2187 1 1305 132 16 16 256 mult_36 auto 39.6 MiB 1.66 7245 19227 4350 12608 2269 76.9 MiB 0.55 0.01 3.89606 -1380.69 -3.89606 3.89606 1.02 0.00435901 0.0038411 0.283594 0.250334 66 13940 42 6.59459e+06 3.22491e+06 974584. 3806.97 11.26 2.1 1.86869 28148 247068 -1 11263 17 5147 5976 1006133 226947 0 0 1006133 226947 5706 5293 0 0 43470 39241 0 0 57442 48356 0 0 5821 5395 0 0 452479 63619 0 0 441215 65043 0 0 5706 0 0 574 4028 4648 32814 280 1 4.39726 4.39726 -1606.47 -4.39726 0 0 1.22072e+06 4768.46 0.54 0.47 0.32 -1 -1 0.54 0.210915 0.191731 636 870 323 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_19.v common 16.24 vpr 78.00 MiB 0.14 12572 -1 -1 1 0.43 -1 -1 40536 -1 -1 91 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79876 22 19 2778 2321 1 1401 138 16 16 256 mult_36 auto 40.4 MiB 1.50 8014 20074 4105 13516 2453 78.0 MiB 0.59 0.01 4.02136 -1450.91 -4.02136 4.02136 1.02 0.00442855 0.00384756 0.305694 0.271933 68 14429 34 6.59459e+06 3.69329e+06 1.00038e+06 3907.74 8.19 2.12128 1.88467 28404 252462 -1 11877 17 5311 6114 930206 214339 0 0 930206 214339 5635 5372 0 0 43141 39026 0 0 56021 47243 0 0 5645 5416 0 0 407806 58680 0 0 411958 58602 0 0 5635 0 0 340 2394 2113 6993 557 26 4.27196 4.27196 -1707.22 -4.27196 0 0 1.24648e+06 4869.04 0.53 0.53 0.31 -1 -1 0.53 0.264447 0.243269 676 925 342 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_20.v common 22.05 vpr 78.14 MiB 0.11 12456 -1 -1 1 0.51 -1 -1 39664 -1 -1 93 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80012 22 19 2852 2378 1 1441 140 16 16 256 mult_36 auto 40.7 MiB 1.75 7863 22283 4740 14606 2937 78.1 MiB 0.71 0.01 4.02136 -1481.38 -4.02136 4.02136 1.03 0.00533172 0.00477556 0.36545 0.32603 70 15319 41 6.59459e+06 3.72224e+06 1.02522e+06 4004.78 13.53 2.59237 2.30924 28912 262511 -1 12028 17 5322 6234 931617 222649 0 0 931617 222649 5646 5374 0 0 45594 40925 0 0 60463 50394 0 0 5654 5423 0 0 409297 60145 0 0 404963 60388 0 0 5646 0 0 338 2866 3010 7136 640 114 4.52256 4.52256 -1783.64 -4.52256 0 0 1.29210e+06 5047.26 0.56 0.48 0.34 -1 -1 0.56 0.230379 0.209443 695 944 361 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_21.v common 18.06 vpr 79.49 MiB 0.12 13048 -1 -1 1 0.52 -1 -1 41460 -1 -1 97 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81400 22 19 3057 2549 1 1544 144 16 16 256 mult_36 auto 42.1 MiB 1.93 8892 21633 4245 14847 2541 79.5 MiB 0.64 0.01 4.02136 -1636.32 -4.02136 4.02136 0.99 0.00506586 0.00443686 0.329955 0.290577 70 15473 44 6.59459e+06 3.78015e+06 1.02522e+06 4004.78 9.29 1.91823 1.69019 28912 262511 -1 13067 20 5804 6781 1048391 250430 0 0 1048391 250430 6146 5836 0 0 50905 45914 0 0 65838 55502 0 0 6157 5883 0 0 460708 68219 0 0 458637 69076 0 0 6146 0 0 356 3116 3129 7686 708 146 4.27196 4.27196 -1912.12 -4.27196 0 0 1.29210e+06 5047.26 0.59 0.56 0.34 -1 -1 0.59 0.277517 0.250585 742 1017 380 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_22.v common 22.49 vpr 79.69 MiB 0.13 13080 -1 -1 1 0.52 -1 -1 40168 -1 -1 100 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81600 22 19 3131 2606 1 1587 147 16 16 256 mult_36 auto 42.4 MiB 1.61 9428 25302 5285 16477 3540 79.7 MiB 0.81 0.01 3.89606 -1628.34 -3.89606 3.89606 1.00 0.00530585 0.0046807 0.433031 0.385896 72 17173 33 6.59459e+06 3.82357e+06 1.04740e+06 4091.43 13.74 2.7472 2.42958 29168 268476 -1 13852 19 6263 7071 1192768 274092 0 0 1192768 274092 6586 6310 0 0 51386 46633 0 0 70039 57308 0 0 6591 6354 0 0 528510 77906 0 0 529656 79581 0 0 6586 0 0 338 2403 2637 8219 532 50 4.27196 4.27196 -1953.69 -4.27196 0 0 1.31294e+06 5128.69 0.57 0.61 0.35 -1 -1 0.57 0.287825 0.262555 762 1036 399 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_23.v common 23.41 vpr 80.63 MiB 0.13 13688 -1 -1 1 0.53 -1 -1 40576 -1 -1 107 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82564 22 19 3301 2742 1 1685 155 18 18 324 mult_36 auto 43.4 MiB 1.37 9566 28443 6640 19034 2769 80.6 MiB 0.88 0.01 4.27196 -1725.13 -4.27196 4.27196 1.36 0.00653514 0.00588828 0.45529 0.406084 66 19877 45 8.13932e+06 4.3209e+06 1.27759e+06 3943.17 13.67 2.65699 2.34544 36296 327148 -1 15104 18 7090 7909 1469524 317702 0 0 1469524 317702 7483 7133 0 0 57899 52932 0 0 77547 64773 0 0 7492 7197 0 0 665085 91091 0 0 654018 94576 0 0 7483 0 0 410 3004 2622 9508 495 82 4.27196 4.27196 -2041.81 -4.27196 0 0 1.59950e+06 4936.74 0.76 0.67 0.41 -1 -1 0.76 0.275995 0.249837 802 1091 418 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_24.v common 19.11 vpr 80.71 MiB 0.13 13764 -1 -1 1 0.56 -1 -1 40240 -1 -1 109 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82648 22 19 3375 2799 1 1732 157 18 18 324 mult_36 auto 43.7 MiB 1.18 10421 31882 7532 20861 3489 80.7 MiB 1.02 0.01 3.89606 -1763.04 -3.89606 3.89606 1.40 0.00686251 0.00615039 0.540848 0.484848 74 18997 29 8.13932e+06 4.34985e+06 1.40368e+06 4332.34 9.15 2.29997 2.05105 37912 362744 -1 15772 14 6641 7856 1355528 282295 0 0 1355528 282295 6976 6689 0 0 50195 44866 0 0 69060 55895 0 0 6984 6730 0 0 604652 82636 0 0 617661 85479 0 0 6976 0 0 351 3999 3808 8665 938 280 4.52256 4.52256 -2148.15 -4.52256 0 0 1.74764e+06 5393.95 0.90 0.62 0.46 -1 -1 0.90 0.26105 0.238734 821 1110 437 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_25.v common 29.13 vpr 82.05 MiB 0.14 14068 -1 -1 1 0.65 -1 -1 41316 -1 -1 116 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84024 22 19 3615 3005 1 1836 164 18 18 324 mult_36 auto 45.1 MiB 1.47 11333 34660 7810 23200 3650 82.1 MiB 1.09 0.01 4.27196 -1928.99 -4.27196 4.27196 1.37 0.00701633 0.00632527 0.544899 0.482573 76 19772 26 8.13932e+06 4.45118e+06 1.43297e+06 4422.75 18.57 3.41676 3.03884 38232 369828 -1 16847 17 7052 8109 1410698 296130 0 0 1410698 296130 7401 7092 0 0 55138 49940 0 0 74720 61386 0 0 7410 7146 0 0 629782 86285 0 0 636247 84281 0 0 7401 0 0 369 3157 3757 9015 775 60 4.52256 4.52256 -2303.27 -4.52256 0 0 1.77541e+06 5479.65 0.85 0.75 0.47 -1 -1 0.85 0.357782 0.327264 877 1201 456 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_26.v common 29.18 vpr 82.51 MiB 0.15 14332 -1 -1 1 0.66 -1 -1 41316 -1 -1 118 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84488 22 19 3689 3062 1 1874 166 18 18 324 mult_36 auto 45.4 MiB 1.71 10423 32542 7338 21514 3690 82.5 MiB 1.00 0.01 3.89606 -1897.14 -3.89606 3.89606 1.34 0.00717065 0.00638547 0.505545 0.448703 68 20443 43 8.13932e+06 4.48013e+06 1.31159e+06 4048.11 18.63 3.9427 3.49785 36620 334356 -1 15919 19 7296 8456 1249035 282759 0 0 1249035 282759 7684 7339 0 0 56542 50807 0 0 76128 62550 0 0 7693 7413 0 0 538183 78140 0 0 562805 76510 0 0 7684 0 0 405 3755 3781 9439 844 213 4.27196 4.27196 -2364.82 -4.27196 0 0 1.63345e+06 5041.52 0.80 0.72 0.41 -1 -1 0.80 0.361677 0.3306 896 1220 475 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_27.v common 20.65 vpr 83.66 MiB 0.15 14480 -1 -1 1 0.65 -1 -1 42084 -1 -1 126 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85668 22 19 3871 3210 1 1982 175 18 18 324 mult_36 auto 46.4 MiB 1.86 12196 35872 8186 24125 3561 83.7 MiB 1.22 0.02 4.14666 -2025.63 -4.14666 4.14666 1.40 0.00782028 0.00702169 0.643503 0.573727 74 21458 42 8.13932e+06 4.99193e+06 1.40368e+06 4332.34 9.38 2.96729 2.64199 37912 362744 -1 18238 17 7632 8989 1596604 340464 0 0 1596604 340464 8110 7739 0 0 60362 54166 0 0 83008 67100 0 0 8120 7805 0 0 713317 100810 0 0 723687 102844 0 0 8110 0 0 494 4207 4879 10192 996 223 4.39726 4.39726 -2479.17 -4.39726 0 0 1.74764e+06 5393.95 0.84 0.85 0.43 -1 -1 0.84 0.397927 0.364629 944 1275 494 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_28.v common 31.32 vpr 84.04 MiB 0.16 14648 -1 -1 1 0.72 -1 -1 41172 -1 -1 128 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86052 22 19 3945 3267 1 2025 177 18 18 324 mult_36 auto 47.1 MiB 1.58 11387 35393 7744 23785 3864 84.0 MiB 1.17 0.02 3.89606 -2106.62 -3.89606 3.89606 1.38 0.00782547 0.00701654 0.610033 0.54202 74 20718 37 8.13932e+06 5.02088e+06 1.40368e+06 4332.34 20.35 4.50781 4.0154 37912 362744 -1 17146 19 7886 8814 1552606 334993 0 0 1552606 334993 8295 7931 0 0 61491 55673 0 0 85374 68735 0 0 8306 7989 0 0 685497 98058 0 0 703643 96607 0 0 8295 0 0 423 2662 2764 10105 593 11 4.39726 4.39726 -2553.25 -4.39726 0 0 1.74764e+06 5393.95 0.82 0.79 0.44 -1 -1 0.82 0.371251 0.33725 962 1294 513 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_29.v common 30.17 vpr 85.20 MiB 0.16 15280 -1 -1 1 0.77 -1 -1 42352 -1 -1 135 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87248 22 19 4159 3447 1 2141 185 22 22 484 mult_36 auto 48.3 MiB 2.12 13290 39635 8732 27216 3687 85.2 MiB 1.34 0.02 3.89606 -2170.33 -3.89606 3.89606 2.29 0.00909373 0.00821356 0.702081 0.627449 68 24798 46 1.32347e+07 5.5182e+06 2.01763e+06 4168.66 15.72 3.21038 2.85067 55470 518816 -1 19823 17 8373 9849 1714705 370815 0 0 1714705 370815 8798 8428 0 0 71001 64284 0 0 92388 77196 0 0 8808 8508 0 0 764097 106894 0 0 769613 105505 0 0 8798 0 0 446 4499 5324 10953 1096 312 4.27196 4.27196 -2715.28 -4.27196 0 0 2.51205e+06 5190.18 1.34 0.91 0.61 -1 -1 1.34 0.419758 0.38571 1015 1367 532 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_30.v common 27.53 vpr 85.21 MiB 0.16 15524 -1 -1 1 0.78 -1 -1 43288 -1 -1 137 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87260 22 19 4233 3504 1 2181 187 22 22 484 mult_36 auto 48.4 MiB 1.93 13678 36499 8160 25028 3311 85.2 MiB 1.22 0.02 3.77076 -2179.16 -3.77076 3.77076 2.28 0.00865883 0.00779505 0.63181 0.562862 68 24440 33 1.32347e+07 5.54715e+06 2.01763e+06 4168.66 13.04 3.00028 2.67051 55470 518816 -1 20390 29 8719 10222 1925982 457215 0 0 1925982 457215 9216 8830 0 0 71176 64279 0 0 96368 78856 0 0 9216 8905 0 0 871857 147152 0 0 868149 149193 0 0 9216 0 0 511 4848 5329 11777 1039 290 4.27196 4.27196 -2766.73 -4.27196 0 0 2.51205e+06 5190.18 1.35 1.14 0.62 -1 -1 1.35 0.560169 0.507152 1034 1386 551 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_31.v common 31.40 vpr 87.21 MiB 0.18 15884 -1 -1 1 0.85 -1 -1 43564 -1 -1 143 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89308 22 19 4410 3647 1 2284 193 22 22 484 mult_36 auto 49.6 MiB 2.04 13644 43082 9987 29059 4036 87.2 MiB 1.40 0.02 3.89606 -2272.68 -3.89606 3.89606 2.32 0.008716 0.00777425 0.724975 0.64202 66 26268 32 1.32347e+07 5.63401e+06 1.96511e+06 4060.15 16.68 3.94324 3.50606 54986 507526 -1 20754 17 8767 10104 1717623 365728 0 0 1717623 365728 9181 8825 0 0 72659 65507 0 0 94872 80499 0 0 9186 8882 0 0 772801 98977 0 0 758924 103038 0 0 9181 0 0 433 4097 5013 11455 965 398 4.39726 4.39726 -2967.77 -4.39726 0 0 2.45963e+06 5081.88 1.31 0.85 0.60 -1 -1 1.31 0.391949 0.35621 1077 1441 570 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_32.v common 45.11 vpr 86.89 MiB 0.17 15892 -1 -1 1 0.82 -1 -1 43780 -1 -1 145 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88976 22 19 4484 3704 1 2331 195 22 22 484 mult_36 auto 49.9 MiB 1.96 14654 38615 8835 26326 3454 86.9 MiB 1.37 0.02 3.89606 -2316.3 -3.89606 3.89606 2.30 0.00999807 0.00899643 0.682436 0.608512 76 25966 31 1.32347e+07 5.66296e+06 2.20457e+06 4554.90 30.04 5.02838 4.47324 57882 574062 -1 22063 17 9602 11276 2235408 468775 0 0 2235408 468775 10143 9710 0 0 79594 72475 0 0 105543 87841 0 0 10152 9754 0 0 1013504 142803 0 0 1016472 146192 0 0 10143 0 0 559 5641 5994 12918 1188 292 4.27196 4.27196 -2867.19 -4.27196 0 0 2.73077e+06 5642.09 1.50 1.09 0.70 -1 -1 1.50 0.460002 0.421942 1096 1460 589 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_33.v common 42.94 vpr 88.94 MiB 0.19 16832 -1 -1 1 0.99 -1 -1 43844 -1 -1 157 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91076 22 19 4843 4029 1 2441 208 22 22 484 mult_36 auto 51.6 MiB 2.64 15149 37784 7732 26674 3378 88.9 MiB 1.39 0.02 3.89606 -2514.82 -3.89606 3.89606 2.33 0.0107456 0.00976905 0.722753 0.644537 76 25914 36 1.32347e+07 6.23266e+06 2.20457e+06 4554.90 26.61 5.25209 4.67218 57882 574062 -1 22340 28 8985 10445 2052543 513925 0 0 2052543 513925 9487 9043 0 0 68275 61256 0 0 99640 79555 0 0 9491 9089 0 0 921662 178794 0 0 943988 176188 0 0 9487 0 0 524 4310 5174 12106 1012 210 4.52256 4.52256 -3175.07 -4.52256 0 0 2.73077e+06 5642.09 1.44 1.35 0.69 -1 -1 1.44 0.6989 0.632998 1185 1606 608 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_34.v common 44.69 vpr 88.96 MiB 0.20 17052 -1 -1 1 0.95 -1 -1 43848 -1 -1 160 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91092 22 19 4917 4086 1 2486 211 22 22 484 mult_36 auto 52.2 MiB 2.50 14895 44101 9296 30580 4225 89.0 MiB 1.53 0.02 3.89606 -2490.39 -3.89606 3.89606 2.38 0.0107252 0.00989359 0.798504 0.718899 70 28222 35 1.32347e+07 6.27609e+06 2.06816e+06 4273.05 28.64 5.69594 5.04899 56434 539830 -1 22956 20 9963 11614 1974405 430708 0 0 1974405 430708 10586 10045 0 0 87384 79128 0 0 113790 95651 0 0 10592 10134 0 0 865438 118558 0 0 886615 117192 0 0 10586 0 0 642 4733 6011 13550 1122 346 4.39726 4.39726 -3136.17 -4.39726 0 0 2.60483e+06 5381.88 1.40 1.07 0.66 -1 -1 1.40 0.527362 0.481149 1205 1625 627 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_35.v common 35.66 vpr 89.84 MiB 0.20 17464 -1 -1 1 0.99 -1 -1 44512 -1 -1 163 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92000 22 19 5093 4228 1 2588 214 22 22 484 mult_36 auto 53.1 MiB 2.42 16010 44305 9368 31019 3918 89.8 MiB 1.42 0.02 3.89606 -2614.77 -3.89606 3.89606 2.38 0.00902057 0.0080132 0.689916 0.609979 72 30576 48 1.32347e+07 6.31951e+06 2.11301e+06 4365.72 19.45 4.61578 4.07233 56918 551676 -1 24390 20 10646 12268 2572013 538778 0 0 2572013 538778 11225 10745 0 0 91605 83175 0 0 121118 101198 0 0 11229 10817 0 0 1160211 163193 0 0 1176625 169650 0 0 11225 0 0 599 5020 5041 14198 1099 173 4.39726 4.39726 -3361.47 -4.39726 0 0 2.64603e+06 5467.00 1.41 1.32 0.67 -1 -1 1.41 0.580125 0.527952 1248 1680 646 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_36.v common 47.08 vpr 90.48 MiB 0.20 17376 -1 -1 1 1.01 -1 -1 44468 -1 -1 165 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92648 22 19 5167 4285 1 2632 216 22 22 484 mult_36 auto 53.7 MiB 2.39 16595 44859 9121 31464 4274 90.4 MiB 1.44 0.02 3.89606 -2653.33 -3.89606 3.89606 2.28 0.0103314 0.00905013 0.695634 0.613896 80 26676 21 1.32347e+07 6.34846e+06 2.29262e+06 4736.82 30.84 5.54643 4.90472 59334 607116 -1 23841 18 10037 11365 2020305 415762 0 0 2020305 415762 10562 10087 0 0 80768 73140 0 0 109840 89695 0 0 10563 10133 0 0 900002 116187 0 0 908570 116520 0 0 10562 0 0 539 3687 4093 13513 834 39 4.27196 4.27196 -3250.29 -4.27196 0 0 2.87723e+06 5944.70 1.56 1.17 0.74 -1 -1 1.56 0.593475 0.540802 1267 1699 665 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_37.v common 34.58 vpr 91.20 MiB 0.22 17904 -1 -1 1 1.11 -1 -1 43640 -1 -1 173 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93392 22 19 5380 4464 1 2743 225 24 24 576 mult_36 auto 54.5 MiB 2.70 17747 48789 10295 33866 4628 91.2 MiB 1.57 0.02 4.14666 -2916.96 -4.14666 4.14666 2.75 0.0119871 0.0106754 0.788709 0.699274 74 31386 46 1.59675e+07 6.86027e+06 2.56259e+06 4448.94 16.56 4.01299 3.54249 67906 667765 -1 26017 17 10467 12288 2150858 451279 0 0 2150858 451279 11038 10562 0 0 80737 72511 0 0 110423 90045 0 0 11047 10629 0 0 968875 133073 0 0 968738 134459 0 0 11038 0 0 589 5647 6860 13924 1340 28 4.64786 4.64786 -3501.45 -4.64786 0 0 3.19068e+06 5539.38 1.72 1.16 0.82 -1 -1 1.72 0.553121 0.502578 1321 1772 684 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_38.v common 49.82 vpr 97.28 MiB 0.22 18188 -1 -1 1 1.10 -1 -1 44924 -1 -1 176 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99612 22 19 5454 4521 1 2787 228 24 24 576 mult_36 auto 55.3 MiB 2.88 17903 55212 12334 38970 3908 91.8 MiB 1.89 0.02 4.02136 -2982.57 -4.02136 4.02136 2.71 0.0106207 0.00946587 0.926633 0.825867 80 28611 33 1.59675e+07 6.90369e+06 2.72095e+06 4723.87 31.36 5.74387 5.10484 70206 720185 -1 25470 15 9982 11473 2162384 448469 0 0 2162384 448469 10556 10054 0 0 80060 72240 0 0 108737 89555 0 0 10558 10116 0 0 976997 130968 0 0 975476 135536 0 0 10556 0 0 592 4939 5239 13729 957 232 4.52256 4.52256 -3572.81 -4.52256 0 0 3.41546e+06 5929.62 1.86 1.07 0.80 -1 -1 1.86 0.478536 0.436679 1340 1791 703 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_39.v common 56.18 vpr 96.32 MiB 0.23 18284 -1 -1 1 1.15 -1 -1 45360 -1 -1 180 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98632 22 19 5629 4662 1 2884 232 24 24 576 mult_36 auto 55.9 MiB 3.05 19446 53632 11476 38290 3866 92.3 MiB 1.82 0.02 4.14666 -3053.8 -4.14666 4.14666 2.88 0.00952456 0.00842287 0.896443 0.791818 74 34458 39 1.59675e+07 6.9616e+06 2.56259e+06 4448.94 37.16 6.55999 5.80233 67906 667765 -1 28572 18 11122 12793 2590147 520973 0 0 2590147 520973 11752 11244 0 0 86861 78384 0 0 118149 96584 0 0 11757 11327 0 0 1187786 158219 0 0 1173842 165215 0 0 11752 0 0 648 5417 5299 15479 1072 71 4.52256 4.52256 -3784.94 -4.52256 0 0 3.19068e+06 5539.38 1.77 1.28 0.80 -1 -1 1.77 0.566006 0.518122 1381 1846 722 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_40.v common 39.70 vpr 93.09 MiB 0.23 18628 -1 -1 1 1.16 -1 -1 43716 -1 -1 182 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95324 22 19 5703 4719 1 2932 234 24 24 576 mult_36 auto 56.8 MiB 3.16 19863 54954 11421 39213 4320 93.1 MiB 1.86 0.02 4.14666 -3075.56 -4.14666 4.14666 2.75 0.0113437 0.0102629 0.898703 0.798269 76 35417 37 1.59675e+07 6.99055e+06 2.61600e+06 4541.67 20.32 4.34288 3.83563 68478 680951 -1 28506 17 11692 13726 2736107 562372 0 0 2736107 562372 12375 11829 0 0 92430 83524 0 0 124755 102472 0 0 12380 11892 0 0 1241046 173555 0 0 1253121 179100 0 0 12375 0 0 703 6632 7403 16033 1429 245 4.52256 4.52256 -3705.71 -4.52256 0 0 3.24203e+06 5628.53 1.82 1.34 0.86 -1 -1 1.82 0.573312 0.52612 1400 1865 741 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_41.v common 34.28 vpr 93.95 MiB 0.23 19200 -1 -1 1 1.25 -1 -1 45716 -1 -1 190 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96200 22 19 5950 4932 1 3040 243 24 24 576 mult_36 auto 57.8 MiB 3.24 19463 58609 12317 41732 4560 93.9 MiB 1.98 0.02 4.14666 -3316.72 -4.14666 4.14666 2.88 0.00979128 0.00862696 0.964467 0.852947 74 33010 35 1.59675e+07 7.50235e+06 2.56259e+06 4448.94 14.74 4.34429 3.84333 67906 667765 -1 28200 15 11042 12805 2239697 467321 0 0 2239697 467321 11616 11166 0 0 83993 75270 0 0 118085 94831 0 0 11620 11212 0 0 1004324 137799 0 0 1010059 137043 0 0 11616 0 0 591 5345 6214 14646 1240 281 4.64786 4.64786 -3921.44 -4.64786 0 0 3.19068e+06 5539.38 1.79 1.18 0.78 -1 -1 1.79 0.558559 0.511043 1461 1956 760 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_42.v common 41.77 vpr 94.40 MiB 0.24 19048 -1 -1 1 1.31 -1 -1 45816 -1 -1 193 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96664 22 19 6024 4989 1 3083 246 24 24 576 mult_36 auto 58.1 MiB 3.09 21094 66466 15032 45937 5497 94.4 MiB 2.31 0.02 4.02136 -3285.13 -4.02136 4.02136 2.85 0.00995642 0.00874965 1.15309 1.01964 78 35316 25 1.59675e+07 7.54578e+06 2.67122e+06 4637.53 21.56 5.21153 4.5926 69630 706637 -1 29768 18 11844 13865 2570814 530454 0 0 2570814 530454 12578 11991 0 0 94968 85620 0 0 129746 105679 0 0 12586 12080 0 0 1155376 159059 0 0 1165560 156025 0 0 12578 0 0 753 5744 7801 16802 1337 213 4.52256 4.52256 -3992.35 -4.52256 0 0 3.35110e+06 5817.88 1.90 1.30 0.90 -1 -1 1.90 0.598664 0.543258 1480 1975 779 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_43.v common 58.26 vpr 100.75 MiB 0.25 19404 -1 -1 1 1.37 -1 -1 45912 -1 -1 199 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103172 22 19 6198 5129 1 3182 252 24 24 576 mult_36 auto 58.9 MiB 3.30 21170 54312 11463 38536 4313 95.0 MiB 1.95 0.03 4.27196 -3455.47 -4.27196 4.27196 2.82 0.0128823 0.0116234 0.950573 0.83785 76 36145 27 1.59675e+07 7.63263e+06 2.61600e+06 4541.67 37.99 6.57676 5.82762 68478 680951 -1 30353 16 12281 14419 2790819 574805 0 0 2790819 574805 12958 12374 0 0 95541 86407 0 0 129325 106364 0 0 12968 12443 0 0 1269843 176684 0 0 1270184 180533 0 0 12958 0 0 695 7765 7146 16723 1523 418 4.64786 4.64786 -4256.73 -4.64786 0 0 3.24203e+06 5628.53 1.82 1.43 0.83 -1 -1 1.82 0.647054 0.587432 1523 2030 798 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_44.v common 50.89 vpr 95.45 MiB 0.25 19844 -1 -1 1 1.46 -1 -1 45996 -1 -1 200 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97736 22 19 6272 5186 1 3228 253 24 24 576 mult_36 auto 59.4 MiB 3.46 21298 61776 13805 43159 4812 95.4 MiB 2.34 0.03 4.02136 -3400.38 -4.02136 4.02136 2.78 0.0126333 0.011577 1.15078 1.03026 78 36200 34 1.59675e+07 7.64711e+06 2.67122e+06 4637.53 30.09 6.11435 5.37157 69630 706637 -1 30236 16 12013 13863 2616007 537078 0 0 2616007 537078 12650 12069 0 0 97714 88038 0 0 130476 108130 0 0 12651 12144 0 0 1183219 156869 0 0 1179297 159828 0 0 12650 0 0 657 6089 6664 16193 1269 150 4.52256 4.52256 -4072.88 -4.52256 0 0 3.35110e+06 5817.88 1.82 1.39 0.83 -1 -1 1.82 0.624306 0.564993 1542 2049 817 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_45.v common 55.26 vpr 111.43 MiB 0.29 20264 -1 -1 1 1.54 -1 -1 46780 -1 -1 208 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 114104 22 19 6485 5365 1 3341 262 24 24 576 mult_36 auto 60.4 MiB 3.21 22454 56408 11000 40936 4472 96.6 MiB 2.06 0.03 4.14666 -3614.83 -4.14666 4.14666 2.80 0.0115828 0.0102674 0.947194 0.833174 86 35867 30 1.59675e+07 8.15891e+06 2.91907e+06 5067.82 34.17 6.44865 5.68707 72506 773887 -1 31063 15 12010 13954 2340842 477325 0 0 2340842 477325 12665 12101 0 0 93759 84179 0 0 134146 108295 0 0 12677 12170 0 0 1041913 131204 0 0 1045682 129376 0 0 12665 0 0 674 6991 7240 16538 1352 464 4.52256 4.52256 -4285.51 -4.52256 0 0 3.65856e+06 6351.67 2.07 1.19 1.02 -1 -1 2.07 0.54789 0.498898 1593 2122 836 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_46.v common 41.06 vpr 97.29 MiB 0.26 20216 -1 -1 1 1.42 -1 -1 46444 -1 -1 210 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99624 22 19 6559 5422 1 3381 264 24 24 576 mult_36 auto 61.0 MiB 3.29 21956 67944 15072 47666 5206 97.3 MiB 2.30 0.03 4.14666 -3557.64 -4.14666 4.14666 2.78 0.0133903 0.0119049 1.08534 0.953499 76 37513 48 1.59675e+07 8.18786e+06 2.61600e+06 4541.67 20.10 5.35531 4.72408 68478 680951 -1 31118 17 12974 15016 2719373 579870 0 0 2719373 579870 13715 13084 0 0 100191 90540 0 0 138100 112501 0 0 13725 13138 0 0 1227853 171990 0 0 1225789 178617 0 0 13715 0 0 763 6649 7672 17528 1379 478 4.52256 4.52256 -4248.27 -4.52256 0 0 3.24203e+06 5628.53 1.81 1.52 0.80 -1 -1 1.81 0.695068 0.634933 1613 2141 855 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_47.v common 53.06 vpr 98.45 MiB 0.27 20528 -1 -1 1 1.46 -1 -1 46744 -1 -1 216 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100812 22 19 6735 5564 1 3478 270 24 24 576 mult_36 auto 62.5 MiB 3.39 23179 68286 14568 48234 5484 98.4 MiB 2.42 0.03 4.14666 -3746.57 -4.14666 4.14666 2.83 0.0131889 0.011801 1.1586 1.02885 80 38605 31 1.59675e+07 8.27472e+06 2.72095e+06 4723.87 31.67 6.67301 5.85688 70206 720185 -1 32188 17 12796 14615 2530838 525720 0 0 2530838 525720 13405 12885 0 0 97415 87414 0 0 133664 108563 0 0 13415 12952 0 0 1143317 151081 0 0 1129622 152825 0 0 13405 0 0 629 5942 6191 16755 1276 1164 4.52256 4.52256 -4301.74 -4.52256 0 0 3.41546e+06 5929.62 1.91 1.34 0.91 -1 -1 1.91 0.653354 0.594829 1656 2196 874 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_48.v common 52.91 vpr 98.80 MiB 0.27 20632 -1 -1 1 1.55 -1 -1 46844 -1 -1 218 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101176 22 19 6809 5621 1 3528 272 24 24 576 mult_36 auto 62.8 MiB 3.44 23697 68990 15555 48174 5261 98.8 MiB 2.47 0.03 4.02136 -3739.94 -4.02136 4.02136 2.83 0.0138029 0.0125398 1.16 1.02031 82 39472 37 1.59675e+07 8.30367e+06 2.78508e+06 4835.20 31.05 7.05466 6.19185 70778 734779 -1 33146 19 13273 14900 2665788 546187 0 0 2665788 546187 13987 13363 0 0 103233 93253 0 0 139843 114028 0 0 13990 13420 0 0 1186028 158659 0 0 1208707 153464 0 0 13987 0 0 731 5117 4755 18170 968 36 4.52256 4.52256 -4543.07 -4.52256 0 0 3.48632e+06 6052.64 1.95 1.52 0.95 -1 -1 1.95 0.760167 0.690906 1674 2215 893 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_49.v common 66.63 vpr 117.97 MiB 0.27 21344 -1 -1 1 1.64 -1 -1 47356 -1 -1 228 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 120800 22 19 7094 5872 1 3643 283 24 24 576 mult_36 auto 64.7 MiB 3.66 26701 74523 16430 51972 6121 100.9 MiB 2.54 0.03 4.27196 -3967.24 -4.27196 4.27196 2.78 0.014549 0.0127619 1.17407 1.03209 88 40455 30 1.59675e+07 8.84444e+06 2.98162e+06 5176.42 44.21 8.27684 7.27801 73078 787199 -1 35724 15 13272 15378 2928187 587447 0 0 2928187 587447 13881 13337 0 0 100412 89691 0 0 139863 113487 0 0 13883 13427 0 0 1334211 176667 0 0 1325937 180838 0 0 13881 0 0 624 7554 7594 17356 1550 426 4.64786 4.64786 -4672.11 -4.64786 0 0 3.70823e+06 6437.90 2.06 1.51 0.99 -1 -1 2.06 0.690936 0.628413 1745 2324 912 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_50.v common 51.64 vpr 100.35 MiB 0.31 21580 -1 -1 1 1.66 -1 -1 46944 -1 -1 230 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102760 22 19 7168 5929 1 3677 285 24 24 576 mult_36 auto 64.3 MiB 3.75 24124 73371 15954 51918 5499 100.4 MiB 2.77 0.03 4.39726 -3899.23 -4.39726 4.39726 2.86 0.0176366 0.0157499 1.35824 1.20037 78 40190 34 1.59675e+07 8.87339e+06 2.67122e+06 4637.53 28.73 7.26172 6.34536 69630 706637 -1 33679 15 13373 15258 2752186 568324 0 0 2752186 568324 14127 13475 0 0 103507 92795 0 0 142114 115760 0 0 14128 13551 0 0 1230091 165834 0 0 1248219 166909 0 0 14127 0 0 771 5551 6054 18449 1177 127 4.64786 4.64786 -4676.06 -4.64786 0 0 3.35110e+06 5817.88 1.92 1.54 0.88 -1 -1 1.92 0.751292 0.677775 1764 2343 931 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_51.v common 58.29 vpr 114.96 MiB 0.29 21728 -1 -1 1 1.74 -1 -1 47688 -1 -1 235 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 117720 22 19 7344 6071 1 3784 290 24 24 576 mult_36 auto 65.1 MiB 3.91 24958 75092 16052 53590 5450 101.0 MiB 2.62 0.03 4.14666 -4033.64 -4.14666 4.14666 2.70 0.0138897 0.0124361 1.20126 1.06297 86 38771 34 1.59675e+07 8.94577e+06 2.91907e+06 5067.82 35.20 7.5279 6.5848 72506 773887 -1 34307 16 13606 15481 2861191 605387 0 0 2861191 605387 14330 13711 0 0 108404 97943 0 0 151651 123718 0 0 14331 13787 0 0 1290002 178870 0 0 1282473 177358 0 0 14330 0 0 743 6498 6278 18250 1189 30 4.52256 4.52256 -4856.99 -4.52256 0 0 3.65856e+06 6351.67 2.10 1.64 1.00 -1 -1 2.10 0.800487 0.717854 1808 2398 950 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_pipe_52.v common 62.24 vpr 116.35 MiB 0.29 21832 -1 -1 1 1.75 -1 -1 47376 -1 -1 237 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 119144 22 19 7418 6128 1 3829 292 24 24 576 mult_36 auto 65.7 MiB 3.84 25267 76764 15967 54524 6273 101.7 MiB 2.80 0.03 4.14666 -4056.06 -4.14666 4.14666 2.79 0.0140103 0.0126112 1.26463 1.11629 82 41744 39 1.59675e+07 8.97472e+06 2.78508e+06 4835.20 39.11 8.30806 7.32992 70778 734779 -1 35165 18 14413 16629 2560972 544146 0 0 2560972 544146 15159 14517 0 0 106826 95547 0 0 145540 118884 0 0 15161 14602 0 0 1136096 150981 0 0 1142190 149615 0 0 15159 0 0 766 8450 7338 19293 1526 596 4.39726 4.39726 -4736.48 -4.39726 0 0 3.48632e+06 6052.64 1.97 1.57 0.94 -1 -1 1.97 0.798008 0.719199 1827 2417 969 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_14.v common 16.35 vpr 69.82 MiB 0.07 9420 -1 -1 1 0.20 -1 -1 37732 -1 -1 43 22 0 4 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71500 22 19 1246 925 1 719 88 16 16 256 mult_36 auto 31.9 MiB 1.48 3981 13933 3963 8182 1788 69.8 MiB 0.35 0.00 6.98711 -333.405 -6.98711 6.98711 1.13 0.00223698 0.00198066 0.175803 0.157029 58 7316 30 6.59459e+06 2.20645e+06 871168. 3403.00 9.67 1.17821 1.04975 26872 219187 -1 6396 24 5771 6482 1011156 226694 0 0 1011156 226694 6482 5928 0 0 43511 40718 0 0 60370 47663 0 0 6540 5998 0 0 445614 64703 0 0 448639 61684 0 0 6482 0 0 736 3402 3423 35913 0 0 8.10453 8.10453 -447.015 -8.10453 0 0 1.09288e+06 4269.05 0.49 0.43 0.26 -1 -1 0.49 0.152354 0.138917 299 285 247 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_15.v common 17.05 vpr 70.58 MiB 0.07 9796 -1 -1 1 0.22 -1 -1 37616 -1 -1 46 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72276 22 19 1344 989 1 778 92 16 16 256 mult_36 auto 32.6 MiB 1.41 4251 15824 4294 9474 2056 70.6 MiB 0.41 0.01 7.02947 -342.05 -7.02947 7.02947 0.92 0.0026002 0.00232161 0.210061 0.188658 56 8472 35 6.59459e+06 2.64588e+06 849745. 3319.32 10.64 1.31087 1.1677 26364 208198 -1 7395 25 7390 8328 1386515 317270 0 0 1386515 317270 8328 7595 0 0 59397 55436 0 0 81352 64793 0 0 8368 7661 0 0 611439 93486 0 0 617631 88299 0 0 8328 0 0 967 4048 4747 48356 0 0 8.33973 8.33973 -468.646 -8.33973 0 0 1.04740e+06 4091.43 0.46 0.54 0.26 -1 -1 0.46 0.156358 0.142204 321 304 266 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_16.v common 15.36 vpr 70.84 MiB 0.08 9768 -1 -1 1 0.23 -1 -1 38160 -1 -1 48 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72536 22 19 1418 1046 1 822 94 16 16 256 mult_36 auto 33.0 MiB 1.66 4676 14365 3667 8145 2553 70.8 MiB 0.42 0.01 7.09841 -340.993 -7.09841 7.09841 1.04 0.00307983 0.00272764 0.220702 0.196859 54 9078 32 6.59459e+06 2.67484e+06 829453. 3240.05 8.24 1.26472 1.12812 26108 202796 -1 7280 27 8073 8980 1720911 401083 0 0 1720911 401083 8980 8208 0 0 65572 62504 0 0 88581 69397 0 0 8982 8253 0 0 781879 123062 0 0 766917 129659 0 0 8980 0 0 931 3723 3351 41711 0 0 8.17073 8.17073 -439.611 -8.17073 0 0 1.02522e+06 4004.78 0.44 0.64 0.25 -1 -1 0.44 0.175102 0.158539 340 323 285 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_17.v common 14.39 vpr 71.05 MiB 0.10 10516 -1 -1 1 0.26 -1 -1 37800 -1 -1 52 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72756 22 19 1518 1112 1 879 98 16 16 256 mult_36 auto 33.4 MiB 1.51 4861 13598 3330 8550 1718 71.1 MiB 0.39 0.01 7.80825 -382.565 -7.80825 7.80825 0.97 0.00289386 0.00259888 0.197825 0.177163 60 9700 48 6.59459e+06 2.73274e+06 890343. 3477.90 7.41 1.12729 1.00683 27128 224764 -1 7541 25 8068 9001 1372772 324379 0 0 1372772 324379 9001 8272 0 0 66051 62608 0 0 88606 70522 0 0 9050 8355 0 0 621343 87369 0 0 578721 87253 0 0 9001 0 0 958 3824 3869 42042 0 0 9.05518 9.05518 -515.5 -9.05518 0 0 1.11577e+06 4358.47 0.51 0.58 0.28 -1 -1 0.51 0.192407 0.174479 365 342 304 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_18.v common 22.26 vpr 71.92 MiB 0.09 10692 -1 -1 1 0.26 -1 -1 38324 -1 -1 55 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73644 22 19 1592 1169 1 918 101 16 16 256 mult_36 auto 34.1 MiB 1.98 5268 13966 3482 8836 1648 71.9 MiB 0.39 0.01 7.72835 -401.323 -7.72835 7.72835 1.01 0.00283833 0.00252908 0.185738 0.165703 62 10065 46 6.59459e+06 2.77617e+06 916467. 3579.95 14.72 1.86955 1.65916 27384 229598 -1 8046 26 7673 8626 1385118 303953 0 0 1385118 303953 8626 7889 0 0 60423 56665 0 0 80513 64278 0 0 8711 7989 0 0 618702 81703 0 0 608143 85429 0 0 8626 0 0 974 4490 3767 43275 0 0 8.80848 8.80848 -540.113 -8.80848 0 0 1.13630e+06 4438.68 0.51 0.62 0.28 -1 -1 0.51 0.222386 0.201435 383 361 323 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_19.v common 14.76 vpr 72.11 MiB 0.09 10664 -1 -1 1 0.27 -1 -1 38612 -1 -1 58 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73844 22 19 1688 1231 1 975 105 16 16 256 mult_36 auto 34.5 MiB 1.83 5779 16901 4334 10195 2372 72.1 MiB 0.48 0.01 7.75835 -390.261 -7.75835 7.75835 1.00 0.00326777 0.00294639 0.240982 0.216665 64 10798 36 6.59459e+06 3.21559e+06 943753. 3686.54 7.18 1.20901 1.07567 27892 240595 -1 8483 25 7419 8439 1111227 252081 0 0 1111227 252081 8225 7575 0 0 51057 47384 0 0 75221 56990 0 0 8242 7653 0 0 480453 67370 0 0 488029 65109 0 0 8225 0 0 830 4410 4625 38903 240 9 8.97278 8.97278 -567.055 -8.97278 0 0 1.19033e+06 4649.74 0.54 0.58 0.30 -1 -1 0.54 0.236144 0.214453 404 380 342 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_20.v common 22.51 vpr 72.71 MiB 0.10 10892 -1 -1 1 0.28 -1 -1 38844 -1 -1 59 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74456 22 19 1762 1288 1 1013 106 16 16 256 mult_36 auto 35.1 MiB 2.04 6222 14856 3369 9454 2033 72.7 MiB 0.47 0.01 7.68911 -431.664 -7.68911 7.68911 1.00 0.0035972 0.00324726 0.233494 0.209542 74 10504 31 6.59459e+06 3.23007e+06 1.07073e+06 4182.55 14.48 2.0214 1.79434 29424 273870 -1 9139 25 7649 8664 1512254 319519 0 0 1512254 319519 8418 7806 0 0 56184 52490 0 0 82139 61938 0 0 8468 7918 0 0 672855 94879 0 0 684190 94488 0 0 8418 0 0 786 3761 4017 31418 262 11 8.88648 8.88648 -589.151 -8.88648 0 0 1.33358e+06 5209.30 0.60 0.68 0.36 -1 -1 0.60 0.241834 0.21864 423 399 361 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_21.v common 17.27 vpr 73.04 MiB 0.10 11200 -1 -1 1 0.33 -1 -1 38432 -1 -1 62 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74788 22 19 1859 1351 1 1072 109 16 16 256 mult_36 auto 35.2 MiB 2.02 6303 17529 4226 11145 2158 73.0 MiB 0.60 0.01 7.62205 -457.249 -7.62205 7.62205 1.04 0.00401188 0.00364459 0.295876 0.26713 64 11928 43 6.59459e+06 3.2735e+06 943753. 3686.54 9.02 1.48277 1.32101 27892 240595 -1 9853 25 8886 10124 1561978 346503 0 0 1561978 346503 9778 9218 0 0 67435 62762 0 0 95058 73907 0 0 9846 9312 0 0 705698 96193 0 0 674163 95111 0 0 9778 0 0 919 5111 5239 36735 363 2 9.20418 9.20418 -620.051 -9.20418 0 0 1.19033e+06 4649.74 0.54 0.72 0.30 -1 -1 0.54 0.258021 0.234235 445 418 380 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_22.v common 17.40 vpr 73.70 MiB 0.10 11136 -1 -1 1 0.33 -1 -1 38500 -1 -1 66 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75468 22 19 1933 1408 1 1112 113 16 16 256 mult_36 auto 36.0 MiB 2.35 6333 17312 4356 10489 2467 73.7 MiB 0.54 0.01 7.62315 -473.271 -7.62315 7.62315 1.04 0.0036087 0.00320967 0.253979 0.225925 64 12501 41 6.59459e+06 3.3314e+06 943753. 3686.54 8.95 1.34702 1.19664 27892 240595 -1 9816 24 9364 10843 1651766 375652 0 0 1651766 375652 10067 9546 0 0 75945 70832 0 0 105290 83439 0 0 10083 9610 0 0 736627 104362 0 0 713754 97863 0 0 10067 0 0 731 4796 5222 22493 827 2 8.79438 8.79438 -731.123 -8.79438 0 0 1.19033e+06 4649.74 0.54 0.69 0.30 -1 -1 0.54 0.231865 0.210349 464 437 399 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_23.v common 27.06 vpr 73.77 MiB 0.11 11484 -1 -1 1 0.35 -1 -1 38972 -1 -1 68 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75536 22 19 2031 1472 1 1172 116 18 18 324 mult_36 auto 36.2 MiB 2.59 7302 15626 3543 10299 1784 73.8 MiB 0.50 0.01 7.71915 -469.387 -7.71915 7.71915 1.40 0.00363035 0.00314253 0.240202 0.213293 64 13689 45 8.13932e+06 3.75635e+06 1.23838e+06 3822.15 17.11 2.08704 1.85071 35972 318676 -1 11409 23 9097 10332 2000567 430013 0 0 2000567 430013 9755 9248 0 0 75800 70878 0 0 102819 82448 0 0 9758 9335 0 0 909670 127588 0 0 892765 130516 0 0 9755 0 0 684 3361 3788 13256 626 22 8.90858 8.90858 -725.741 -8.90858 0 0 1.56068e+06 4816.91 0.76 0.78 0.46 -1 -1 0.76 0.225092 0.204394 486 456 418 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_24.v common 18.73 vpr 74.28 MiB 0.11 11588 -1 -1 1 0.37 -1 -1 39260 -1 -1 71 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76060 22 19 2105 1529 1 1210 119 18 18 324 mult_36 auto 36.5 MiB 2.50 6909 21727 5467 13106 3154 74.3 MiB 0.72 0.01 7.56085 -470.498 -7.56085 7.56085 1.38 0.00478692 0.0041627 0.369696 0.322502 64 13250 41 8.13932e+06 3.79978e+06 1.23838e+06 3822.15 8.90 1.58276 1.40278 35972 318676 -1 10900 25 9504 10779 1790950 387173 0 0 1790950 387173 10212 9712 0 0 76675 71585 0 0 106015 84186 0 0 10213 9772 0 0 796861 104479 0 0 790974 107439 0 0 10212 0 0 736 3124 3989 13784 604 2 9.06208 9.06208 -734.815 -9.06208 0 0 1.56068e+06 4816.91 0.73 0.77 0.35 -1 -1 0.73 0.264741 0.240008 505 475 437 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_25.v common 22.29 vpr 74.99 MiB 0.12 11860 -1 -1 1 0.37 -1 -1 39204 -1 -1 73 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76788 22 19 2201 1591 1 1267 121 18 18 324 mult_36 auto 37.7 MiB 2.37 7669 19855 5075 12382 2398 75.0 MiB 0.66 0.01 7.62205 -492.613 -7.62205 7.62205 1.42 0.00461752 0.00418265 0.327411 0.29203 66 14334 44 8.13932e+06 3.82873e+06 1.27759e+06 3943.17 12.20 2.07866 1.85706 36296 327148 -1 11682 26 10636 12155 2083885 457552 0 0 2083885 457552 11426 10835 0 0 88041 83042 0 0 124593 96313 0 0 11437 10954 0 0 916038 129855 0 0 932350 126553 0 0 11426 0 0 820 4528 3816 15279 821 3 8.78798 8.78798 -828.073 -8.78798 0 0 1.59950e+06 4936.74 0.78 0.89 0.40 -1 -1 0.78 0.292126 0.263547 526 494 456 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_26.v common 51.60 vpr 75.29 MiB 0.12 12020 -1 -1 1 0.44 -1 -1 39380 -1 -1 76 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77096 22 19 2275 1648 1 1304 124 18 18 324 mult_36 auto 37.6 MiB 2.67 7450 23917 5723 15268 2926 75.3 MiB 0.77 0.01 7.80825 -523.983 -7.80825 7.80825 1.37 0.0047272 0.00428638 0.385972 0.344576 64 14435 41 8.13932e+06 3.87216e+06 1.23838e+06 3822.15 41.05 3.0209 2.66323 35972 318676 -1 11800 25 11127 12907 2291273 499454 0 0 2291273 499454 12087 11326 0 0 91789 86248 0 0 127737 100727 0 0 12096 11413 0 0 1033227 144362 0 0 1014337 145378 0 0 12087 0 0 990 5520 5907 25927 846 68 9.15748 9.15748 -750.365 -9.15748 0 0 1.56068e+06 4816.91 0.73 0.98 0.40 -1 -1 0.73 0.312252 0.28204 546 513 475 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_27.v common 30.27 vpr 76.04 MiB 0.12 12276 -1 -1 1 0.46 -1 -1 39992 -1 -1 82 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77868 22 19 2385 1724 1 1377 131 18 18 324 mult_36 auto 38.7 MiB 2.64 8656 27023 6820 17083 3120 76.0 MiB 0.87 0.01 7.67995 -523.927 -7.67995 7.67995 1.40 0.00533725 0.00475425 0.425325 0.378493 68 15427 29 8.13932e+06 4.35501e+06 1.31159e+06 4048.11 19.39 2.72451 2.42605 36620 334356 -1 12755 26 11306 12933 2226739 471986 0 0 2226739 471986 12115 11436 0 0 90699 85574 0 0 124030 97867 0 0 12121 11549 0 0 998209 132890 0 0 989565 132670 0 0 12115 0 0 834 4296 4951 19485 900 14 8.98248 8.98248 -891.784 -8.98248 0 0 1.63345e+06 5041.52 0.79 0.96 0.40 -1 -1 0.79 0.329533 0.297847 575 532 494 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_28.v common 21.71 vpr 76.25 MiB 0.13 12588 -1 -1 1 0.45 -1 -1 39360 -1 -1 83 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78080 22 19 2459 1781 1 1418 132 18 18 324 mult_36 auto 38.9 MiB 2.93 8745 21572 4881 14224 2467 76.2 MiB 0.76 0.01 7.60005 -550.785 -7.60005 7.60005 1.41 0.00517431 0.0047253 0.386419 0.341489 66 16173 46 8.13932e+06 4.36948e+06 1.27759e+06 3943.17 10.66 2.03647 1.80218 36296 327148 -1 13201 26 12667 14182 2423523 505632 0 0 2423523 505632 13592 12897 0 0 93851 88075 0 0 134164 102717 0 0 13600 12956 0 0 1089368 142524 0 0 1078948 146463 0 0 13592 0 0 953 4711 4859 29385 609 2 9.30058 9.30058 -862.486 -9.30058 0 0 1.59950e+06 4936.74 0.77 1.05 0.38 -1 -1 0.77 0.366501 0.32751 594 551 513 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_29.v common 28.29 vpr 76.99 MiB 0.13 12716 -1 -1 1 0.46 -1 -1 40832 -1 -1 85 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78836 22 19 2565 1853 1 1483 135 22 22 484 mult_36 auto 39.8 MiB 3.47 9467 22971 5326 15264 2381 77.0 MiB 0.77 0.01 7.58425 -519.207 -7.58425 7.58425 2.32 0.00545131 0.00496592 0.363871 0.322823 68 16514 39 1.32347e+07 4.79443e+06 2.01763e+06 4168.66 13.85 1.94858 1.73007 55470 518816 -1 13814 23 11950 13877 2731175 580045 0 0 2731175 580045 12969 12187 0 0 104636 99014 0 0 137268 112358 0 0 12978 12261 0 0 1241529 168966 0 0 1221795 175259 0 0 12969 0 0 1041 5109 5158 17826 1019 3 9.03188 9.03188 -867.25 -9.03188 0 0 2.51205e+06 5190.18 1.35 1.13 0.62 -1 -1 1.35 0.345362 0.313275 619 570 532 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_30.v common 40.68 vpr 76.94 MiB 0.14 13068 -1 -1 1 0.50 -1 -1 39516 -1 -1 89 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78788 22 19 2639 1910 1 1523 139 22 22 484 mult_36 auto 39.8 MiB 3.39 9163 27064 6198 17904 2962 76.9 MiB 0.93 0.01 7.71115 -535.323 -7.71115 7.71115 2.37 0.00527969 0.00480395 0.47519 0.421343 68 15869 42 1.32347e+07 4.85233e+06 2.01763e+06 4168.66 26.31 3.09728 2.74513 55470 518816 -1 13493 24 11954 13558 2433450 514586 0 0 2433450 514586 12861 12160 0 0 101561 96057 0 0 137676 109499 0 0 12869 12213 0 0 1086514 140823 0 0 1081969 143834 0 0 12861 0 0 929 3789 4554 17336 774 52 8.75058 8.75058 -992.527 -8.75058 0 0 2.51205e+06 5190.18 1.30 0.99 0.57 -1 -1 1.30 0.331054 0.297955 639 589 551 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_31.v common 29.77 vpr 77.79 MiB 0.15 13320 -1 -1 1 0.53 -1 -1 39860 -1 -1 93 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79656 22 19 2744 1981 1 1589 143 22 22 484 mult_36 auto 40.5 MiB 3.22 10314 28864 6739 18914 3211 77.8 MiB 1.09 0.01 7.68295 -597.427 -7.68295 7.68295 2.42 0.00634462 0.00580102 0.546091 0.484251 70 18094 46 1.32347e+07 4.91023e+06 2.06816e+06 4273.05 14.74 2.43876 2.16156 56434 539830 -1 15375 23 12220 13973 2910240 608361 0 0 2910240 608361 13146 12425 0 0 102735 96271 0 0 138266 110530 0 0 13148 12527 0 0 1308129 188119 0 0 1334816 188489 0 0 13146 0 0 952 4561 4794 18332 847 11 9.28118 9.28118 -1238.74 -9.28118 0 0 2.60483e+06 5381.88 1.42 1.23 0.68 -1 -1 1.42 0.37215 0.335943 665 608 570 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_32.v common 34.75 vpr 77.79 MiB 0.15 13380 -1 -1 1 0.53 -1 -1 40256 -1 -1 96 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79660 22 19 2818 2038 1 1626 146 22 22 484 mult_36 auto 40.7 MiB 3.87 10761 33554 8533 21276 3745 77.8 MiB 1.20 0.01 7.66715 -553.462 -7.66715 7.66715 2.33 0.0056692 0.00517564 0.582654 0.51152 68 20383 49 1.32347e+07 4.95366e+06 2.01763e+06 4168.66 19.07 2.36188 2.0967 55470 518816 -1 15987 24 14646 16857 3310383 681247 0 0 3310383 681247 15783 14870 0 0 122932 116422 0 0 164843 131556 0 0 15794 14993 0 0 1493533 199314 0 0 1497498 204092 0 0 15783 0 0 1166 8222 7776 42078 1108 13 9.28478 9.28478 -1022.43 -9.28478 0 0 2.51205e+06 5190.18 1.33 1.29 0.64 -1 -1 1.33 0.354117 0.31896 684 627 589 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_33.v common 46.09 vpr 78.68 MiB 0.16 13872 -1 -1 1 0.54 -1 -1 40268 -1 -1 100 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80568 22 19 2923 2109 1 1697 151 22 22 484 mult_36 auto 41.5 MiB 3.87 10684 39048 9087 25383 4578 78.7 MiB 1.41 0.01 8.36299 -591.187 -8.36299 8.36299 2.32 0.00583734 0.0052949 0.648764 0.582723 68 19265 37 1.32347e+07 5.40755e+06 2.01763e+06 4168.66 29.96 3.65777 3.24296 55470 518816 -1 16151 25 16332 18482 4182778 881251 0 0 4182778 881251 17467 16605 0 0 141051 133527 0 0 190569 150713 0 0 17473 16677 0 0 1915632 276482 0 0 1900586 287247 0 0 17467 0 0 1166 7039 8435 33584 1102 20 10.0223 10.0223 -1066.64 -10.0223 0 0 2.51205e+06 5190.18 1.30 1.56 0.62 -1 -1 1.30 0.351026 0.315573 710 646 608 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_34.v common 36.96 vpr 78.69 MiB 0.16 13868 -1 -1 1 0.56 -1 -1 40332 -1 -1 101 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80580 22 19 2997 2166 1 1733 152 22 22 484 mult_36 auto 41.6 MiB 4.84 11016 34172 8098 22417 3657 78.7 MiB 1.11 0.01 8.20359 -612.989 -8.20359 8.20359 2.35 0.00611917 0.00537813 0.536894 0.477866 64 21342 47 1.32347e+07 5.42203e+06 1.90554e+06 3937.06 20.13 2.94852 2.61758 54502 494576 -1 16983 25 16289 18769 3487051 723258 0 0 3487051 723258 17642 16744 0 0 127674 118992 0 0 181221 139595 0 0 17691 16855 0 0 1574768 209927 0 0 1568055 221145 0 0 17642 0 0 1387 12969 11025 68768 1166 2 9.96152 9.96152 -1024.7 -9.96152 0 0 2.40101e+06 4960.76 1.30 1.43 0.60 -1 -1 1.30 0.412106 0.369632 729 665 627 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_35.v common 48.16 vpr 79.57 MiB 0.16 14140 -1 -1 1 0.60 -1 -1 40524 -1 -1 106 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81476 22 19 3101 2236 1 1798 157 22 22 484 mult_36 auto 42.1 MiB 4.35 11785 33574 7767 22049 3758 79.6 MiB 1.19 0.01 8.32889 -646.103 -8.32889 8.32889 2.26 0.00670379 0.00609467 0.556236 0.498604 74 19978 27 1.32347e+07 5.49441e+06 2.15943e+06 4461.62 31.58 3.61644 3.20332 57402 562966 -1 17242 26 13952 16011 3690484 756556 0 0 3690484 756556 15043 14192 0 0 108173 101874 0 0 159826 118695 0 0 15047 14326 0 0 1689577 250421 0 0 1702818 257048 0 0 15043 0 0 1120 5765 6331 23337 1017 54 9.87532 9.87532 -1079.55 -9.87532 0 0 2.68771e+06 5553.12 1.43 1.46 0.69 -1 -1 1.43 0.416305 0.373437 755 684 646 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_36.v common 35.46 vpr 79.80 MiB 0.17 14320 -1 -1 1 0.59 -1 -1 40684 -1 -1 107 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81716 22 19 3175 2293 1 1835 158 22 22 484 mult_36 auto 42.4 MiB 5.12 12781 30902 6564 21086 3252 79.8 MiB 1.19 0.02 8.44139 -676.284 -8.44139 8.44139 2.30 0.00718239 0.00654433 0.559747 0.49972 76 22471 41 1.32347e+07 5.50888e+06 2.20457e+06 4554.90 18.07 2.36449 2.09672 57882 574062 -1 18769 24 14806 17109 3374937 682006 0 0 3374937 682006 16005 15103 0 0 115647 108684 0 0 158832 124196 0 0 16006 15252 0 0 1531404 210916 0 0 1537043 207855 0 0 16005 0 0 1225 6966 6999 22606 1156 16 10.0725 10.0725 -1313.47 -10.0725 0 0 2.73077e+06 5642.09 1.46 1.37 0.70 -1 -1 1.46 0.410629 0.370984 773 703 665 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_37.v common 49.19 vpr 80.92 MiB 0.17 14532 -1 -1 1 0.63 -1 -1 40828 -1 -1 111 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82860 22 19 3280 2364 1 1905 163 24 24 576 mult_36 auto 43.4 MiB 5.02 12281 38878 9350 26180 3348 80.5 MiB 1.33 0.02 8.51829 -743.663 -8.51829 8.51829 2.81 0.00654489 0.00584573 0.624569 0.543436 66 22662 32 1.59675e+07 5.96278e+06 2.33135e+06 4047.49 30.50 3.79122 3.32265 65030 601923 -1 18330 26 16300 18366 3444882 719734 0 0 3444882 719734 17334 16589 0 0 131782 124093 0 0 182970 143103 0 0 17357 16684 0 0 1540042 208871 0 0 1555397 210394 0 0 17334 0 0 1064 6731 7342 34294 1075 49 9.85532 9.85532 -1155.98 -9.85532 0 0 2.91907e+06 5067.82 1.61 1.41 0.74 -1 -1 1.61 0.421211 0.380659 798 722 684 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_38.v common 41.14 vpr 81.02 MiB 0.17 14600 -1 -1 1 0.61 -1 -1 40908 -1 -1 113 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82968 22 19 3354 2421 1 1940 165 24 24 576 mult_36 auto 43.9 MiB 5.44 13704 35421 8179 24293 2949 81.0 MiB 1.20 0.01 8.63069 -825.49 -8.63069 8.63069 2.75 0.00591334 0.00527454 0.547277 0.482428 70 24943 48 1.59675e+07 5.99174e+06 2.45377e+06 4260.01 21.54 2.62886 2.32709 66754 640332 -1 20144 34 18711 21977 4279282 861064 0 0 4279282 861064 20141 19143 0 0 135595 125869 0 0 207654 148898 0 0 20141 19284 0 0 1951172 273979 0 0 1944579 273891 0 0 20141 0 0 1461 10263 10901 28590 1857 183 10.0315 10.0315 -1488.28 -10.0315 0 0 3.09179e+06 5367.68 1.74 1.82 0.78 -1 -1 1.74 0.555855 0.500789 818 741 703 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_39.v common 152.50 vpr 81.34 MiB 0.17 15064 -1 -1 1 0.68 -1 -1 40536 -1 -1 117 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83292 22 19 3457 2490 1 2006 169 24 24 576 mult_36 auto 44.2 MiB 5.07 13370 35661 8160 24029 3472 81.3 MiB 1.24 0.02 8.58539 -847.36 -8.58539 8.58539 2.66 0.007149 0.00651636 0.586688 0.518915 68 24106 46 1.59675e+07 6.04964e+06 2.39371e+06 4155.74 133.99 5.21569 4.58916 65606 615345 -1 19590 26 16308 18950 3643598 748226 0 0 3643598 748226 17606 16640 0 0 134645 126831 0 0 189850 145720 0 0 17612 16799 0 0 1652119 221923 0 0 1631766 220313 0 0 17606 0 0 1326 7190 7605 24959 1358 12 9.70952 9.70952 -1385.24 -9.70952 0 0 2.98162e+06 5176.42 1.61 1.52 0.74 -1 -1 1.61 0.470482 0.423015 842 760 722 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_40.v common 35.96 vpr 81.82 MiB 0.18 15264 -1 -1 1 0.71 -1 -1 41128 -1 -1 120 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83788 22 19 3531 2547 1 2046 172 24 24 576 mult_36 auto 44.9 MiB 5.90 13036 38412 8929 25855 3628 81.8 MiB 1.30 0.02 8.45419 -831.231 -8.45419 8.45419 2.75 0.00672628 0.00577343 0.579587 0.504733 70 22571 41 1.59675e+07 6.09306e+06 2.45377e+06 4260.01 16.05 2.70411 2.39156 66754 640332 -1 19215 24 15437 17883 3401419 721043 0 0 3401419 721043 16576 15734 0 0 129759 121370 0 0 177037 140498 0 0 16578 15809 0 0 1557025 210549 0 0 1504444 217083 0 0 16576 0 0 1167 7698 7244 22873 1338 61 10.0084 10.0084 -1220.93 -10.0084 0 0 3.09179e+06 5367.68 1.74 1.42 0.78 -1 -1 1.74 0.450679 0.405145 862 779 741 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_41.v common 43.08 vpr 82.62 MiB 0.21 15328 -1 -1 1 0.74 -1 -1 41524 -1 -1 122 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84604 22 19 3634 2616 1 2109 175 24 24 576 mult_36 auto 45.4 MiB 5.65 13512 37828 8705 25939 3184 82.6 MiB 1.42 0.02 8.53849 -833.985 -8.53849 8.53849 2.85 0.00779068 0.00677119 0.635009 0.559853 68 24827 42 1.59675e+07 6.51802e+06 2.39371e+06 4155.74 23.04 3.40887 3.01437 65606 615345 -1 20165 25 17994 21036 3616595 756853 0 0 3616595 756853 19498 18304 0 0 145956 137633 0 0 197118 155794 0 0 19510 18437 0 0 1616700 213202 0 0 1617813 213483 0 0 19498 0 0 1534 11750 12160 54713 1608 16 9.76892 9.76892 -1525.97 -9.76892 0 0 2.98162e+06 5176.42 1.63 1.56 0.74 -1 -1 1.63 0.508248 0.45555 886 798 760 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_42.v common 55.17 vpr 84.62 MiB 0.20 15644 -1 -1 1 0.74 -1 -1 41080 -1 -1 125 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86652 22 19 3708 2673 1 2146 178 24 24 576 mult_36 auto 46.0 MiB 6.25 13766 35678 8094 24493 3091 83.3 MiB 1.38 0.02 8.47909 -840.693 -8.47909 8.47909 2.86 0.00845408 0.00770011 0.685944 0.593351 76 22316 33 1.59675e+07 6.56144e+06 2.61600e+06 4541.67 34.40 4.86743 4.28109 68478 680951 -1 19344 26 15497 17670 3172711 657663 0 0 3172711 657663 16635 15671 0 0 119852 113106 0 0 170859 130794 0 0 16636 15846 0 0 1417617 190380 0 0 1431112 191866 0 0 16635 0 0 1161 5822 6578 22755 1057 2 9.43382 9.43382 -1247.42 -9.43382 0 0 3.24203e+06 5628.53 1.79 1.39 0.84 -1 -1 1.79 0.473965 0.427358 906 817 779 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_43.v common 56.62 vpr 85.26 MiB 0.19 15696 -1 -1 1 0.76 -1 -1 42312 -1 -1 129 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87308 22 19 3810 2741 1 2211 182 24 24 576 mult_36 auto 46.1 MiB 6.08 15182 37262 8022 25971 3269 83.3 MiB 1.40 0.02 8.70475 -847.982 -8.70475 8.70475 2.70 0.00914001 0.00781357 0.679715 0.588721 70 25748 44 1.59675e+07 6.61934e+06 2.45377e+06 4260.01 36.41 4.72882 4.17448 66754 640332 -1 21545 27 16479 19198 3870152 803036 0 0 3870152 803036 17814 16803 0 0 142505 133700 0 0 200193 155126 0 0 17817 16918 0 0 1724997 240505 0 0 1766826 239984 0 0 17814 0 0 1361 7910 8275 24722 1453 75 10.1278 10.1278 -1435.54 -10.1278 0 0 3.09179e+06 5367.68 1.64 1.54 0.81 -1 -1 1.64 0.462706 0.416443 930 836 798 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_44.v common 56.43 vpr 88.40 MiB 0.21 15872 -1 -1 1 0.78 -1 -1 41748 -1 -1 132 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90524 22 19 3884 2798 1 2252 185 24 24 576 mult_36 auto 46.8 MiB 6.71 14739 41213 9495 28133 3585 84.1 MiB 1.46 0.02 8.77995 -845.552 -8.77995 8.77995 2.85 0.00745264 0.00667878 0.677753 0.597694 74 24395 44 1.59675e+07 6.66277e+06 2.56259e+06 4448.94 34.85 5.08252 4.50255 67906 667765 -1 21013 25 16830 19141 3789182 780781 0 0 3789182 780781 18041 17056 0 0 128135 120392 0 0 179849 140694 0 0 18045 17165 0 0 1695020 242302 0 0 1750092 243172 0 0 18041 0 0 1239 6370 6774 29720 1137 83 9.93332 9.93332 -1393.36 -9.93332 0 0 3.19068e+06 5539.38 1.72 1.61 0.81 -1 -1 1.72 0.526236 0.473057 949 855 817 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_45.v common 37.74 vpr 84.00 MiB 0.19 16092 -1 -1 1 0.83 -1 -1 43240 -1 -1 135 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86020 22 19 3989 2869 1 2317 189 24 24 576 mult_36 auto 46.8 MiB 6.42 15319 42465 9241 29351 3873 84.0 MiB 1.54 0.02 8.59965 -909.188 -8.59965 8.59965 2.70 0.00833559 0.00761864 0.696247 0.617894 74 25728 40 1.59675e+07 7.1022e+06 2.56259e+06 4448.94 16.91 3.0564 2.69619 67906 667765 -1 21682 25 17472 20167 3711788 764169 0 0 3711788 764169 18770 17724 0 0 138557 130100 0 0 195397 150939 0 0 18771 17837 0 0 1654231 225688 0 0 1686062 221881 0 0 18770 0 0 1325 6884 7555 25633 1448 265 9.86772 9.86772 -1424.31 -9.86772 0 0 3.19068e+06 5539.38 1.74 1.54 0.74 -1 -1 1.74 0.508869 0.456734 975 874 836 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_46.v common 56.78 vpr 92.85 MiB 0.22 16324 -1 -1 1 0.85 -1 -1 43448 -1 -1 136 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95080 22 19 4063 2926 1 2354 190 24 24 576 mult_36 auto 47.1 MiB 7.14 15804 38410 7687 26249 4474 84.1 MiB 1.35 0.02 8.58869 -878.867 -8.58869 8.58869 2.80 0.0082602 0.00749599 0.617964 0.547296 86 23701 35 1.59675e+07 7.11667e+06 2.91907e+06 5067.82 34.65 4.4935 3.97561 72506 773887 -1 21378 23 14161 16578 2867248 585761 0 0 2867248 585761 15354 14321 0 0 116682 108666 0 0 161280 129303 0 0 15355 14419 0 0 1265621 162913 0 0 1292956 156139 0 0 15354 0 0 1218 6499 7726 21552 1288 72 9.45222 9.45222 -1420.23 -9.45222 0 0 3.65856e+06 6351.67 1.98 1.36 1.00 -1 -1 1.98 0.519772 0.473056 993 893 855 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_47.v common 59.17 vpr 89.63 MiB 0.23 16916 -1 -1 1 0.85 -1 -1 43224 -1 -1 141 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91780 22 19 4167 2996 1 2420 195 24 24 576 mult_36 auto 48.0 MiB 6.85 16867 43700 9562 30263 3875 85.1 MiB 1.68 0.02 8.63695 -957.065 -8.63695 8.63695 2.78 0.00870081 0.00790492 0.770443 0.671943 76 27626 29 1.59675e+07 7.18905e+06 2.61600e+06 4541.67 37.07 5.01837 4.41794 68478 680951 -1 23402 27 17653 20702 3706580 767824 0 0 3706580 767824 19054 17962 0 0 138808 130217 0 0 194733 150532 0 0 19056 18092 0 0 1669963 224362 0 0 1664966 226659 0 0 19054 0 0 1428 10833 9300 26922 1685 85 9.85192 9.85192 -1515.38 -9.85192 0 0 3.24203e+06 5628.53 1.75 1.63 0.83 -1 -1 1.75 0.548196 0.495094 1019 912 874 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_48.v common 44.04 vpr 85.10 MiB 0.23 16848 -1 -1 1 0.87 -1 -1 43652 -1 -1 144 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87144 22 19 4241 3053 1 2458 198 24 24 576 mult_36 auto 48.1 MiB 7.44 15648 42246 9538 28368 4340 85.1 MiB 1.55 0.02 8.54649 -901.089 -8.54649 8.54649 2.77 0.00968971 0.00824706 0.738949 0.638799 68 27967 45 1.59675e+07 7.23248e+06 2.39371e+06 4155.74 21.81 4.07247 3.5843 65606 615345 -1 22449 23 18362 21339 3551258 782898 0 0 3551258 782898 19786 18631 0 0 155205 146371 0 0 204639 166620 0 0 19792 18765 0 0 1586554 213541 0 0 1565282 218970 0 0 19786 0 0 1450 7992 9425 27351 1645 172 9.96732 9.96732 -1474.91 -9.96732 0 0 2.98162e+06 5176.42 1.63 1.53 0.75 -1 -1 1.63 0.528198 0.475733 1038 931 893 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_49.v common 64.97 vpr 90.45 MiB 0.26 17140 -1 -1 1 0.93 -1 -1 43600 -1 -1 145 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92624 22 19 4346 3124 1 2527 200 24 24 576 mult_36 auto 49.3 MiB 7.41 17914 48088 10723 33517 3848 85.9 MiB 1.83 0.02 8.67149 -899.265 -8.67149 8.67149 2.78 0.00910348 0.00826661 0.806219 0.69959 76 29667 33 1.59675e+07 7.64295e+06 2.61600e+06 4541.67 41.45 5.48886 4.82682 68478 680951 -1 25009 26 23663 27226 5797019 1216682 0 0 5797019 1216682 25515 24072 0 0 205328 194722 0 0 278409 218590 0 0 25522 24227 0 0 2615799 375432 0 0 2646446 379639 0 0 25515 0 0 1882 11611 12005 51858 1759 514 10.3502 10.3502 -1526.05 -10.3502 0 0 3.24203e+06 5628.53 1.79 2.12 0.88 -1 -1 1.79 0.518017 0.463213 1062 950 912 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_50.v common 59.55 vpr 90.20 MiB 0.24 17440 -1 -1 1 0.90 -1 -1 43880 -1 -1 148 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92360 22 19 4420 3181 1 2563 203 24 24 576 mult_36 auto 49.6 MiB 7.96 17853 40731 8453 28800 3478 86.3 MiB 1.61 0.02 9.01655 -967.425 -9.01655 9.01655 2.76 0.00979062 0.00882546 0.746213 0.649391 76 28587 40 1.59675e+07 7.68637e+06 2.61600e+06 4541.67 36.09 5.05052 4.44712 68478 680951 -1 24740 26 18482 21284 4098235 846004 0 0 4098235 846004 19879 18722 0 0 146140 137320 0 0 214576 160934 0 0 19886 18885 0 0 1857446 249735 0 0 1840308 260408 0 0 19879 0 0 1421 7676 8625 27443 1475 210 10.1108 10.1108 -1418.31 -10.1108 0 0 3.24203e+06 5628.53 1.76 1.82 0.83 -1 -1 1.76 0.623856 0.561868 1082 969 931 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_51.v common 51.60 vpr 87.03 MiB 0.25 17584 -1 -1 1 1.01 -1 -1 44156 -1 -1 152 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89120 22 19 4524 3251 1 2633 207 24 24 576 mult_36 auto 50.1 MiB 7.69 17656 41823 8474 28783 4566 87.0 MiB 1.59 0.02 8.50409 -1012.06 -8.50409 8.50409 2.84 0.0104412 0.00945945 0.74392 0.654799 72 32290 43 1.59675e+07 7.74428e+06 2.50747e+06 4353.24 28.05 4.50773 3.97287 67330 654343 -1 25528 25 22937 26730 4813647 981685 0 0 4813647 981685 24617 23261 0 0 184787 172914 0 0 259238 200597 0 0 24619 23437 0 0 2145882 283162 0 0 2174504 278314 0 0 24617 0 0 1712 11436 12222 34272 2146 94 10.0226 10.0226 -1855.59 -10.0226 0 0 3.14081e+06 5452.80 1.74 1.93 0.82 -1 -1 1.74 0.567436 0.509703 1107 988 950 19 0 0 -k6_frac_2ripple_N8_22nm.xml fir_nopipe_52.v common 48.19 vpr 86.78 MiB 0.26 17840 -1 -1 1 1.01 -1 -1 44320 -1 -1 155 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88860 22 19 4598 3308 1 2667 210 24 24 576 mult_36 auto 50.1 MiB 8.44 18143 47010 9829 32847 4334 86.8 MiB 1.82 0.02 8.85319 -995.156 -8.85319 8.85319 2.77 0.00969186 0.00881515 0.816785 0.714742 74 31381 36 1.59675e+07 7.7877e+06 2.56259e+06 4448.94 23.76 3.58384 3.15142 67906 667765 -1 25997 27 20286 24214 4557054 919197 0 0 4557054 919197 22091 20666 0 0 153340 143208 0 0 227627 168536 0 0 22097 20828 0 0 2062543 281019 0 0 2069356 284940 0 0 22091 0 0 1833 12653 12010 32404 2161 419 10.1998 10.1998 -1618.12 -10.1998 0 0 3.19068e+06 5539.38 1.71 2.00 0.82 -1 -1 1.71 0.673472 0.603343 1127 1007 969 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_14.v common 47.37 vpr 73.51 MiB 0.08 10836 -1 -1 1 0.31 -1 -1 38908 -1 -1 65 22 0 4 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75276 22 19 1974 1653 1 1013 110 16 16 256 mult_36 auto 35.7 MiB 0.57 5455 13786 3026 8966 1794 73.5 MiB 0.37 0.01 3.89606 -995.417 -3.89606 3.89606 0.99 0.00322007 0.0028218 0.187577 0.165258 56 12093 40 6.62819e+06 2.54052e+06 849745. 3319.32 41.13 2.64017 2.32375 26364 208198 -1 9780 25 4397 5158 1230194 336891 0 0 1230194 336891 4874 4513 0 0 40565 36851 0 0 52714 44758 0 0 4895 4555 0 0 568228 125399 0 0 558918 120815 0 0 4874 0 0 494 3416 3189 20927 320 3 4.39726 4.39726 -1264.77 -4.39726 0 0 1.04740e+06 4091.43 0.47 0.64 0.26 -1 -1 0.47 0.256282 0.235283 481 649 247 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_15.v common 16.86 vpr 74.53 MiB 0.09 11044 -1 -1 1 0.34 -1 -1 39740 -1 -1 72 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76316 22 19 2144 1789 1 1107 118 16 16 256 mult_36 auto 36.8 MiB 0.91 5718 19481 4963 12186 2332 74.5 MiB 0.56 0.01 3.89606 -1112.51 -3.89606 3.89606 1.03 0.00408779 0.00365221 0.307936 0.276401 58 11773 29 6.62819e+06 3.03953e+06 871168. 3403.00 10.06 1.99785 1.78133 26872 219187 -1 9729 18 4490 5087 886156 205291 0 0 886156 205291 4789 4544 0 0 37754 34697 0 0 49454 41687 0 0 4828 4585 0 0 394334 60822 0 0 394997 58956 0 0 4789 0 0 318 2394 2862 18394 308 1 4.27196 4.27196 -1361.7 -4.27196 0 0 1.09288e+06 4269.05 0.49 0.47 0.26 -1 -1 0.49 0.210888 0.192492 521 704 266 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_16.v common 16.82 vpr 74.71 MiB 0.09 11040 -1 -1 1 0.33 -1 -1 39252 -1 -1 74 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76508 22 19 2218 1846 1 1153 120 16 16 256 mult_36 auto 37.1 MiB 0.90 6289 17820 3856 11962 2002 74.7 MiB 0.53 0.01 3.89606 -1149.49 -3.89606 3.89606 1.01 0.00441387 0.00397313 0.289627 0.257734 58 13028 27 6.62819e+06 3.06896e+06 871168. 3403.00 10.10 1.94112 1.72198 26872 219187 -1 10853 19 4934 5680 1033603 234139 0 0 1033603 234139 5419 5021 0 0 43167 39539 0 0 55121 47376 0 0 5486 5120 0 0 458102 68026 0 0 466308 69057 0 0 5419 0 0 507 3820 4157 29618 289 1 4.39726 4.39726 -1390.32 -4.39726 0 0 1.09288e+06 4269.05 0.49 0.48 0.26 -1 -1 0.49 0.217506 0.19996 540 723 285 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_17.v common 14.51 vpr 76.63 MiB 0.11 12024 -1 -1 1 0.40 -1 -1 39720 -1 -1 83 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78468 22 19 2536 2130 1 1255 129 16 16 256 mult_36 auto 39.2 MiB 1.03 6827 17679 3679 11976 2024 76.6 MiB 0.53 0.01 3.89606 -1296.1 -3.89606 3.89606 1.05 0.00461142 0.00414416 0.281469 0.251055 60 13776 33 6.62819e+06 3.20141e+06 890343. 3477.90 7.20 1.63537 1.44532 27128 224764 -1 10904 19 5124 5865 906722 211480 0 0 906722 211480 5425 5183 0 0 42654 38722 0 0 53777 45915 0 0 5440 5231 0 0 402800 56971 0 0 396626 59458 0 0 5425 0 0 319 2447 2446 6624 526 35 4.27196 4.27196 -1529.45 -4.27196 0 0 1.11577e+06 4358.47 0.49 0.51 0.28 -1 -1 0.49 0.254818 0.233053 617 851 304 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_18.v common 16.72 vpr 76.61 MiB 0.11 12232 -1 -1 1 0.43 -1 -1 40328 -1 -1 86 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78452 22 19 2610 2187 1 1302 132 16 16 256 mult_36 auto 39.3 MiB 1.04 7491 20232 4613 13205 2414 76.6 MiB 0.60 0.01 3.89606 -1345.56 -3.89606 3.89606 1.05 0.00436716 0.00391504 0.314837 0.282275 64 15351 41 6.62819e+06 3.24555e+06 943753. 3686.54 9.25 2.03031 1.80288 27892 240595 -1 11944 19 5127 5850 990181 224588 0 0 990181 224588 5469 5187 0 0 42702 38582 0 0 56133 47177 0 0 5499 5226 0 0 443485 65574 0 0 436893 62842 0 0 5469 0 0 361 3156 3759 21728 403 9 4.39726 4.39726 -1698.44 -4.39726 0 0 1.19033e+06 4649.74 0.51 0.52 0.30 -1 -1 0.51 0.238169 0.216263 636 870 323 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_19.v common 16.65 vpr 77.40 MiB 0.11 12592 -1 -1 1 0.44 -1 -1 40312 -1 -1 91 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79256 22 19 2778 2321 1 1398 138 16 16 256 mult_36 auto 39.9 MiB 1.04 7954 21498 4514 14377 2607 77.4 MiB 0.65 0.01 3.89606 -1429.01 -3.89606 3.89606 0.97 0.00475512 0.0042658 0.341078 0.304015 66 15922 49 6.62819e+06 3.71513e+06 974584. 3806.97 9.18 2.39061 2.1084 28148 247068 -1 11944 20 5514 6413 915724 220627 0 0 915724 220627 5839 5585 0 0 46098 41890 0 0 60705 51052 0 0 5841 5626 0 0 400199 57866 0 0 397042 58608 0 0 5839 0 0 343 2898 2761 7200 653 30 4.27196 4.27196 -1707.36 -4.27196 0 0 1.22072e+06 4768.46 0.54 0.56 0.31 -1 -1 0.54 0.288648 0.263924 676 925 342 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_20.v common 15.72 vpr 78.11 MiB 0.12 12740 -1 -1 1 0.49 -1 -1 39728 -1 -1 93 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79980 22 19 2852 2378 1 1440 140 16 16 256 mult_36 auto 40.9 MiB 1.13 8088 19016 3656 13250 2110 78.1 MiB 0.59 0.01 3.89606 -1432.9 -3.89606 3.89606 1.00 0.00582293 0.00520457 0.302562 0.269839 68 14881 32 6.62819e+06 3.74456e+06 1.00038e+06 3907.74 8.10 1.79213 1.59517 28404 252462 -1 12007 16 5227 6041 832177 193297 0 0 832177 193297 5556 5311 0 0 42270 38125 0 0 54323 45833 0 0 5561 5349 0 0 358802 48434 0 0 365665 50245 0 0 5556 0 0 347 2492 2602 7096 539 11 4.27196 4.27196 -1671.74 -4.27196 0 0 1.24648e+06 4869.04 0.55 0.47 0.30 -1 -1 0.55 0.245991 0.226289 695 944 361 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_21.v common 18.36 vpr 78.98 MiB 0.12 12880 -1 -1 1 0.49 -1 -1 41356 -1 -1 97 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80880 22 19 3057 2549 1 1542 144 16 16 256 mult_36 auto 41.9 MiB 1.26 8730 23895 4843 16125 2927 79.0 MiB 0.79 0.01 4.02136 -1577.56 -4.02136 4.02136 1.05 0.00582647 0.00528538 0.42043 0.37697 68 17100 50 6.62819e+06 3.80343e+06 1.00038e+06 3907.74 10.10 2.59642 2.31193 28404 252462 -1 12920 19 5771 6549 917884 212671 0 0 917884 212671 6084 5804 0 0 46539 42238 0 0 59740 50364 0 0 6091 5835 0 0 401303 54608 0 0 398127 53822 0 0 6084 0 0 329 2181 2344 7558 523 25 4.27196 4.27196 -1851.82 -4.27196 0 0 1.24648e+06 4869.04 0.57 0.59 0.32 -1 -1 0.57 0.326305 0.299697 742 1017 380 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_22.v common 17.52 vpr 79.66 MiB 0.12 13004 -1 -1 1 0.52 -1 -1 40224 -1 -1 100 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81576 22 19 3131 2606 1 1585 147 16 16 256 mult_36 auto 42.3 MiB 1.09 9937 21432 4363 14253 2816 79.7 MiB 0.69 0.01 4.02136 -1634.72 -4.02136 4.02136 0.99 0.00512266 0.00447706 0.35366 0.315931 72 19393 49 6.62819e+06 3.84757e+06 1.04740e+06 4091.43 9.49 2.18556 1.93898 29168 268476 -1 14801 16 6079 7013 1308200 282778 0 0 1308200 282778 6369 6126 0 0 49349 44568 0 0 64135 53985 0 0 6378 6161 0 0 590517 86792 0 0 591452 85146 0 0 6369 0 0 306 3402 3287 7680 701 111 4.52256 4.52256 -1948.57 -4.52256 0 0 1.31294e+06 5128.69 0.59 0.64 0.34 -1 -1 0.59 0.287362 0.263094 762 1036 399 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_23.v common 25.13 vpr 80.30 MiB 0.13 13376 -1 -1 1 0.57 -1 -1 40752 -1 -1 107 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82228 22 19 3301 2742 1 1683 155 18 18 324 mult_36 auto 43.1 MiB 1.10 9471 30107 6847 20043 3217 80.3 MiB 0.97 0.01 4.02136 -1706.28 -4.02136 4.02136 1.41 0.00604223 0.00547065 0.517425 0.465104 76 16252 27 8.18539e+06 4.34658e+06 1.43297e+06 4422.75 15.47 3.04547 2.71791 38232 369828 -1 14099 19 6067 6809 1172951 259971 0 0 1172951 259971 6396 6094 0 0 48674 44394 0 0 65246 54018 0 0 6402 6124 0 0 523534 74416 0 0 522699 74925 0 0 6396 0 0 344 2421 2090 7731 479 36 4.27196 4.27196 -2054.77 -4.27196 0 0 1.77541e+06 5479.65 0.86 0.65 0.42 -1 -1 0.86 0.324947 0.295417 802 1091 418 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_24.v common 27.80 vpr 80.84 MiB 0.13 13792 -1 -1 1 0.57 -1 -1 40272 -1 -1 109 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82780 22 19 3375 2799 1 1730 157 18 18 324 mult_36 auto 43.7 MiB 1.08 10319 29344 6687 19681 2976 80.8 MiB 1.02 0.01 3.77076 -1743.26 -3.77076 3.77076 1.44 0.00688281 0.00622117 0.552861 0.490871 70 18460 35 8.18539e+06 4.37601e+06 1.34436e+06 4149.26 17.87 3.6104 3.22773 37264 347768 -1 15443 17 6410 7289 1205833 261488 0 0 1205833 261488 6769 6468 0 0 51938 46750 0 0 67385 56589 0 0 6785 6503 0 0 535319 72211 0 0 537637 72967 0 0 6769 0 0 376 2559 2782 8562 577 49 4.39726 4.39726 -2097.77 -4.39726 0 0 1.69344e+06 5226.66 0.80 0.70 0.44 -1 -1 0.80 0.348853 0.320608 821 1110 437 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_25.v common 26.28 vpr 81.72 MiB 0.14 14004 -1 -1 1 0.62 -1 -1 41320 -1 -1 116 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83680 22 19 3615 3005 1 1835 164 18 18 324 mult_36 auto 44.5 MiB 1.14 10681 29284 6516 19713 3055 81.7 MiB 0.99 0.01 3.89606 -1905.11 -3.89606 3.89606 1.37 0.00706797 0.006411 0.520188 0.465353 74 19618 32 8.18539e+06 4.47902e+06 1.40368e+06 4332.34 16.20 3.44446 3.08037 37912 362744 -1 16458 17 6921 7910 1513018 319401 0 0 1513018 319401 7195 6960 0 0 56134 50856 0 0 73775 61466 0 0 7197 7005 0 0 676896 98013 0 0 691821 95101 0 0 7195 0 0 292 3020 2970 8676 729 102 4.39726 4.39726 -2343.03 -4.39726 0 0 1.74764e+06 5393.95 0.85 0.77 0.45 -1 -1 0.85 0.348889 0.318789 877 1201 456 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_26.v common 20.89 vpr 82.01 MiB 0.14 14292 -1 -1 1 0.60 -1 -1 41468 -1 -1 118 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83976 22 19 3689 3062 1 1872 166 18 18 324 mult_36 auto 44.7 MiB 1.00 10842 31630 6829 21513 3288 82.0 MiB 0.96 0.01 3.77076 -1893.81 -3.77076 3.77076 1.31 0.00609911 0.00536533 0.47969 0.418914 68 20204 33 8.18539e+06 4.50845e+06 1.31159e+06 4048.11 11.23 2.84513 2.50853 36620 334356 -1 16671 18 7445 8514 1421118 312019 0 0 1421118 312019 7825 7499 0 0 61520 55928 0 0 78071 66466 0 0 7833 7562 0 0 630526 86254 0 0 635343 88310 0 0 7825 0 0 397 3251 3881 9715 751 232 4.27196 4.27196 -2271.16 -4.27196 0 0 1.63345e+06 5041.52 0.77 0.78 0.40 -1 -1 0.77 0.381073 0.349431 896 1220 475 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_27.v common 21.26 vpr 83.52 MiB 0.16 14580 -1 -1 1 0.70 -1 -1 42168 -1 -1 126 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85524 22 19 3871 3210 1 1979 175 18 18 324 mult_36 auto 46.4 MiB 1.34 11433 36361 8348 24331 3682 83.5 MiB 1.15 0.02 3.89606 -1981.57 -3.89606 3.89606 1.38 0.00779515 0.00696038 0.596576 0.530793 68 22153 34 8.18539e+06 5.02217e+06 1.31159e+06 4048.11 10.69 2.86658 2.54259 36620 334356 -1 17534 18 7725 8868 1397209 311896 0 0 1397209 311896 8072 7767 0 0 64245 58466 0 0 81580 69201 0 0 8073 7810 0 0 611830 85155 0 0 623409 83497 0 0 8072 0 0 368 4361 4187 9597 865 288 4.27196 4.27196 -2401.75 -4.27196 0 0 1.63345e+06 5041.52 0.79 0.76 0.41 -1 -1 0.79 0.378771 0.345887 944 1275 494 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_28.v common 21.37 vpr 83.46 MiB 0.15 14928 -1 -1 1 0.73 -1 -1 41340 -1 -1 128 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85464 22 19 3945 3267 1 2024 177 18 18 324 mult_36 auto 46.3 MiB 1.39 11681 36385 8355 24079 3951 83.5 MiB 1.25 0.02 4.02136 -2037.61 -4.02136 4.02136 1.40 0.00816777 0.00718752 0.649182 0.579018 70 21663 42 8.18539e+06 5.0516e+06 1.34436e+06 4149.26 10.59 3.04269 2.70308 37264 347768 -1 17507 17 7420 8601 1389649 308888 0 0 1389649 308888 7803 7462 0 0 62641 56351 0 0 80471 68117 0 0 7808 7522 0 0 616647 84195 0 0 614279 85241 0 0 7803 0 0 400 3499 4051 9534 871 168 4.52256 4.52256 -2544.62 -4.52256 0 0 1.69344e+06 5226.66 0.80 0.78 0.43 -1 -1 0.80 0.393695 0.36183 962 1294 513 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_29.v common 41.32 vpr 84.64 MiB 0.16 15284 -1 -1 1 0.70 -1 -1 42044 -1 -1 135 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86668 22 19 4159 3447 1 2140 185 22 22 484 mult_36 auto 47.6 MiB 1.15 13379 39635 9302 26392 3941 84.6 MiB 1.27 0.02 3.89606 -2167.34 -3.89606 3.89606 2.33 0.0072799 0.00641147 0.630832 0.555799 70 25308 37 1.33067e+07 5.5506e+06 2.06816e+06 4273.05 27.96 4.65191 4.13008 56434 539830 -1 20187 16 8096 9308 1627299 343277 0 0 1627299 343277 8450 8141 0 0 69042 62341 0 0 88570 75194 0 0 8455 8196 0 0 724907 95730 0 0 727875 93675 0 0 8450 0 0 372 3597 4401 10294 898 25 4.39726 4.39726 -2736.94 -4.39726 0 0 2.60483e+06 5381.88 1.37 0.82 0.66 -1 -1 1.37 0.351054 0.320849 1015 1367 532 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_30.v common 26.49 vpr 84.87 MiB 0.17 15448 -1 -1 1 0.74 -1 -1 43372 -1 -1 137 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86904 22 19 4233 3504 1 2179 187 22 22 484 mult_36 auto 47.8 MiB 1.50 13676 37567 8445 25349 3773 84.9 MiB 1.23 0.02 3.77076 -2120.46 -3.77076 3.77076 2.34 0.00719276 0.00634042 0.626825 0.55894 70 24983 29 1.33067e+07 5.58003e+06 2.06816e+06 4273.05 12.66 3.04363 2.71403 56434 539830 -1 20431 18 8390 9773 1940288 412401 0 0 1940288 412401 8829 8460 0 0 74170 67066 0 0 95142 80825 0 0 8834 8531 0 0 868616 122937 0 0 884697 124582 0 0 8829 0 0 458 3913 5043 10858 1017 58 4.39726 4.39726 -2676.28 -4.39726 0 0 2.60483e+06 5381.88 1.37 0.93 0.65 -1 -1 1.37 0.388247 0.35244 1034 1386 551 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_31.v common 114.99 vpr 86.00 MiB 0.18 15592 -1 -1 1 0.86 -1 -1 43200 -1 -1 143 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88068 22 19 4410 3647 1 2283 193 22 22 484 mult_36 auto 49.0 MiB 1.57 14460 42525 9006 29210 4309 86.0 MiB 1.35 0.02 3.89606 -2213.07 -3.89606 3.89606 2.34 0.00743786 0.00651978 0.697371 0.621833 64 29323 48 1.33067e+07 5.66832e+06 1.90554e+06 3937.06 100.68 6.74255 5.91016 54502 494576 -1 22309 16 9012 10430 2041825 425680 0 0 2041825 425680 9454 9090 0 0 74222 66924 0 0 96746 81744 0 0 9462 9140 0 0 933113 125387 0 0 918828 133395 0 0 9454 0 0 460 5368 4902 11744 1046 414 4.52256 4.52256 -2907.66 -4.52256 0 0 2.40101e+06 4960.76 1.26 1.02 0.61 -1 -1 1.26 0.438013 0.401176 1077 1441 570 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_32.v common 42.81 vpr 87.20 MiB 0.17 15692 -1 -1 1 0.87 -1 -1 43716 -1 -1 145 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89288 22 19 4484 3704 1 2328 195 22 22 484 mult_36 auto 49.3 MiB 1.53 14008 39745 8750 27246 3749 87.2 MiB 1.32 0.02 3.77076 -2263.87 -3.77076 3.77076 2.37 0.00758366 0.00672737 0.665196 0.59456 70 27150 40 1.33067e+07 5.69776e+06 2.06816e+06 4273.05 28.45 5.20516 4.61206 56434 539830 -1 21133 20 9201 10719 1898135 402964 0 0 1898135 402964 9730 9279 0 0 78565 71135 0 0 101661 85401 0 0 9738 9357 0 0 829797 114939 0 0 868644 112853 0 0 9730 0 0 545 4912 4820 12389 1050 29 4.52256 4.52256 -2798.15 -4.52256 0 0 2.60483e+06 5381.88 1.38 1.06 0.66 -1 -1 1.38 0.5114 0.466972 1096 1460 589 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_33.v common 35.24 vpr 87.70 MiB 0.19 16708 -1 -1 1 0.94 -1 -1 43916 -1 -1 157 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89808 22 19 4843 4029 1 2439 208 22 22 484 mult_36 auto 50.8 MiB 1.40 14297 48256 9706 33797 4753 87.7 MiB 1.58 0.02 3.77076 -2409.32 -3.77076 3.77076 2.34 0.00929266 0.00837509 0.80313 0.715897 66 27995 45 1.33067e+07 6.27034e+06 1.96511e+06 4060.15 20.38 4.83193 4.26636 54986 507526 -1 21783 18 8983 10366 1708760 371215 0 0 1708760 371215 9495 9081 0 0 76068 69034 0 0 98476 83404 0 0 9512 9171 0 0 746203 102685 0 0 769006 97840 0 0 9495 0 0 530 4059 4710 12047 932 118 4.39726 4.39726 -2995.89 -4.39726 0 0 2.45963e+06 5081.88 1.35 1.02 0.62 -1 -1 1.35 0.527545 0.480563 1185 1606 608 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_34.v common 46.03 vpr 88.54 MiB 0.20 17044 -1 -1 1 0.94 -1 -1 43960 -1 -1 160 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90660 22 19 4917 4086 1 2483 211 22 22 484 mult_36 auto 51.6 MiB 1.39 16311 49744 10809 34462 4473 88.5 MiB 1.64 0.02 4.02136 -2519.45 -4.02136 4.02136 2.29 0.00999049 0.00894114 0.81677 0.726448 76 28559 35 1.33067e+07 6.31449e+06 2.20457e+06 4554.90 31.25 5.61983 4.99207 57882 574062 -1 23745 17 9342 10903 2281849 463123 0 0 2281849 463123 9851 9418 0 0 75461 68312 0 0 99053 82479 0 0 9857 9487 0 0 1037226 143943 0 0 1050401 149484 0 0 9851 0 0 529 5225 4970 12460 1108 73 4.52256 4.52256 -3236.21 -4.52256 0 0 2.73077e+06 5642.09 1.47 1.11 0.64 -1 -1 1.47 0.478257 0.436577 1205 1625 627 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_35.v common 46.71 vpr 89.08 MiB 0.20 17164 -1 -1 1 1.03 -1 -1 44472 -1 -1 163 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91220 22 19 5093 4228 1 2586 214 22 22 484 mult_36 auto 52.3 MiB 1.48 17244 44305 9582 30820 3903 89.1 MiB 1.56 0.02 3.89606 -2602.71 -3.89606 3.89606 2.36 0.00864324 0.00754427 0.804672 0.718139 74 29856 31 1.33067e+07 6.35863e+06 2.15943e+06 4461.62 31.44 5.92512 5.2732 57402 562966 -1 25389 17 9789 11310 2376754 486239 0 0 2376754 486239 10276 9862 0 0 81127 73722 0 0 105486 88535 0 0 10281 9919 0 0 1076938 151727 0 0 1092646 152474 0 0 10276 0 0 504 4944 4589 12872 1094 58 4.52256 4.52256 -3281.42 -4.52256 0 0 2.68771e+06 5553.12 1.48 1.18 0.69 -1 -1 1.48 0.497063 0.453211 1248 1680 646 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_36.v common 43.76 vpr 89.40 MiB 0.20 17400 -1 -1 1 1.06 -1 -1 44580 -1 -1 165 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91544 22 19 5167 4285 1 2630 216 22 22 484 mult_36 auto 52.9 MiB 1.48 15944 48741 10130 33951 4660 89.4 MiB 1.62 0.02 4.02136 -2636.64 -4.02136 4.02136 2.34 0.00854285 0.00754291 0.833949 0.7504 76 28501 34 1.33067e+07 6.38806e+06 2.20457e+06 4554.90 28.74 5.46367 4.85434 57882 574062 -1 23727 16 9843 11544 1835121 389489 0 0 1835121 389489 10321 9894 0 0 78541 70885 0 0 101817 85798 0 0 10323 9953 0 0 806710 108566 0 0 827409 104393 0 0 10321 0 0 497 5314 6537 12827 1283 3 4.39726 4.39726 -3350.79 -4.39726 0 0 2.73077e+06 5642.09 1.49 0.98 0.64 -1 -1 1.49 0.480365 0.437114 1267 1699 665 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_37.v common 31.79 vpr 90.20 MiB 0.21 18048 -1 -1 1 1.09 -1 -1 43584 -1 -1 173 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92368 22 19 5380 4464 1 2739 225 24 24 576 mult_36 auto 53.6 MiB 1.59 17893 52893 11638 36744 4511 90.2 MiB 1.76 0.02 4.02136 -2915.58 -4.02136 4.02136 2.77 0.00875275 0.0076501 0.877334 0.778566 74 30362 27 1.60519e+07 6.90179e+06 2.56259e+06 4448.94 14.72 3.8323 3.40584 67906 667765 -1 25528 16 9866 11529 2080739 434265 0 0 2080739 434265 10321 9912 0 0 77674 69933 0 0 102508 84906 0 0 10325 9964 0 0 941741 128980 0 0 938170 130570 0 0 10321 0 0 473 6387 5773 12874 1258 71 4.64786 4.64786 -3562.52 -4.64786 0 0 3.19068e+06 5539.38 1.83 1.08 0.81 -1 -1 1.83 0.506352 0.463274 1321 1772 684 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_38.v common 53.32 vpr 97.64 MiB 0.21 17952 -1 -1 1 1.09 -1 -1 44728 -1 -1 176 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99980 22 19 5454 4521 1 2784 228 24 24 576 mult_36 auto 54.5 MiB 1.62 17465 56604 12858 39157 4589 91.1 MiB 1.80 0.02 4.14666 -2931.9 -4.14666 4.14666 2.83 0.00968815 0.00866427 0.865328 0.764898 78 28931 24 1.60519e+07 6.94594e+06 2.67122e+06 4637.53 35.77 6.38623 5.68442 69630 706637 -1 24978 17 9797 11166 2060904 435445 0 0 2060904 435445 10273 9842 0 0 80261 72765 0 0 106220 88318 0 0 10278 9883 0 0 936546 124212 0 0 917326 130425 0 0 10273 0 0 494 3907 5215 12888 938 24 4.39726 4.39726 -3474.5 -4.39726 0 0 3.35110e+06 5817.88 1.89 1.10 0.90 -1 -1 1.89 0.527376 0.482869 1340 1791 703 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_39.v common 34.80 vpr 91.80 MiB 0.22 18452 -1 -1 1 1.15 -1 -1 45276 -1 -1 180 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94008 22 19 5629 4662 1 2882 232 24 24 576 mult_36 auto 55.3 MiB 1.64 18842 50072 10876 35579 3617 91.8 MiB 1.79 0.02 4.27196 -3070.83 -4.27196 4.27196 2.79 0.0109726 0.00984928 0.897358 0.784543 76 33809 47 1.60519e+07 7.0048e+06 2.61600e+06 4541.67 17.21 4.38738 3.88262 68478 680951 -1 27874 18 10650 12174 2380114 483988 0 0 2380114 483988 11152 10730 0 0 83138 75088 0 0 109584 91299 0 0 11152 10780 0 0 1080641 149758 0 0 1084447 146333 0 0 11152 0 0 519 4560 5590 14207 1048 127 4.64786 4.64786 -3791.07 -4.64786 0 0 3.24203e+06 5628.53 1.83 1.28 0.83 -1 -1 1.83 0.591187 0.540552 1381 1846 722 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_40.v common 50.70 vpr 95.51 MiB 0.23 18608 -1 -1 1 1.21 -1 -1 43964 -1 -1 182 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97800 22 19 5703 4719 1 2929 234 24 24 576 mult_36 auto 55.3 MiB 1.63 19511 55674 12426 39137 4111 91.7 MiB 1.82 0.02 4.02136 -3137.4 -4.02136 4.02136 2.76 0.00997006 0.00880244 0.86292 0.759881 74 34227 41 1.60519e+07 7.03423e+06 2.56259e+06 4448.94 32.96 6.17224 5.45068 67906 667765 -1 28202 16 11053 12808 2386192 490897 0 0 2386192 490897 11622 11143 0 0 86840 78574 0 0 114717 95476 0 0 11623 11220 0 0 1083004 145605 0 0 1078386 148879 0 0 11622 0 0 586 6235 5874 14850 1228 188 4.52256 4.52256 -3765.06 -4.52256 0 0 3.19068e+06 5539.38 1.78 1.24 0.90 -1 -1 1.78 0.560445 0.509054 1400 1865 741 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_41.v common 37.40 vpr 93.32 MiB 0.24 19116 -1 -1 1 1.26 -1 -1 45668 -1 -1 190 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95556 22 19 5950 4932 1 3039 243 24 24 576 mult_36 auto 56.9 MiB 1.75 20898 57093 12273 40545 4275 93.3 MiB 2.10 0.02 4.27196 -3240.13 -4.27196 4.27196 2.82 0.0112249 0.00999823 1.04365 0.915643 76 35885 38 1.60519e+07 7.54795e+06 2.61600e+06 4541.67 19.02 4.83384 4.24535 68478 680951 -1 29657 16 11081 12800 2568553 525582 0 0 2568553 525582 11655 11220 0 0 89587 81290 0 0 117217 98028 0 0 11663 11291 0 0 1155004 162767 0 0 1183427 160986 0 0 11655 0 0 593 6467 5796 15006 1184 402 4.89846 4.89846 -4059.84 -4.89846 0 0 3.24203e+06 5628.53 1.79 1.30 0.78 -1 -1 1.79 0.596176 0.542706 1461 1956 760 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_42.v common 53.94 vpr 100.71 MiB 0.23 19072 -1 -1 1 1.30 -1 -1 45900 -1 -1 193 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103132 22 19 6024 4989 1 3082 246 24 24 576 mult_36 auto 57.3 MiB 1.74 19813 57996 12212 41287 4497 93.4 MiB 1.98 0.02 4.02136 -3217.23 -4.02136 4.02136 2.75 0.0102261 0.00900442 0.938115 0.835543 78 32609 28 1.60519e+07 7.5921e+06 2.67122e+06 4637.53 35.87 6.3986 5.66694 69630 706637 -1 28319 16 11148 12784 2315596 486424 0 0 2315596 486424 11796 11238 0 0 89826 81303 0 0 119390 99078 0 0 11810 11311 0 0 1038597 142152 0 0 1044177 141342 0 0 11796 0 0 665 5448 5071 15335 1052 95 4.39726 4.39726 -3873.9 -4.39726 0 0 3.35110e+06 5817.88 1.95 1.21 0.80 -1 -1 1.95 0.562993 0.510398 1480 1975 779 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_43.v common 37.42 vpr 94.55 MiB 0.26 19692 -1 -1 1 1.41 -1 -1 46500 -1 -1 199 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96824 22 19 6198 5129 1 3181 252 24 24 576 mult_36 auto 58.2 MiB 1.84 20655 63852 13857 44500 5495 94.6 MiB 2.26 0.03 4.14666 -3346.84 -4.14666 4.14666 2.84 0.0124163 0.0113248 1.1144 0.989782 74 37223 48 1.60519e+07 7.68039e+06 2.56259e+06 4448.94 18.39 5.00635 4.42002 67906 667765 -1 30159 18 12060 13958 2647840 556952 0 0 2647840 556952 12621 12148 0 0 97170 88139 0 0 129258 106897 0 0 12621 12216 0 0 1193000 170534 0 0 1203170 167018 0 0 12621 0 0 580 7239 6434 16061 1357 808 4.39726 4.39726 -4169.23 -4.39726 0 0 3.19068e+06 5539.38 1.81 1.45 0.84 -1 -1 1.81 0.674629 0.614039 1523 2030 798 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_44.v common 57.24 vpr 110.87 MiB 0.25 19520 -1 -1 1 1.42 -1 -1 46480 -1 -1 200 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 113532 22 19 6272 5186 1 3226 253 24 24 576 mult_36 auto 58.5 MiB 1.90 21784 68967 15211 47954 5802 94.7 MiB 2.45 0.02 4.14666 -3366.96 -4.14666 4.14666 2.80 0.0104572 0.009148 1.22029 1.08412 84 33714 29 1.60519e+07 7.69511e+06 2.84938e+06 4946.85 38.11 7.05148 6.24844 71930 760447 -1 28712 17 10951 12877 2140768 450342 0 0 2140768 450342 11509 11019 0 0 84395 75975 0 0 111542 92468 0 0 11512 11086 0 0 970390 126654 0 0 951420 133140 0 0 11509 0 0 579 6437 6583 14440 1448 617 4.52256 4.52256 -4356.58 -4.52256 0 0 3.60864e+06 6265.01 1.97 1.19 0.88 -1 -1 1.97 0.615044 0.559075 1542 2049 817 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_45.v common 48.93 vpr 96.05 MiB 0.27 19972 -1 -1 1 1.55 -1 -1 46800 -1 -1 208 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98356 22 19 6485 5365 1 3338 262 24 24 576 mult_36 auto 59.9 MiB 1.97 22644 60598 12775 42377 5446 96.1 MiB 2.31 0.03 4.14666 -3504.85 -4.14666 4.14666 2.84 0.0152402 0.0137857 1.16836 1.03368 80 38858 43 1.60519e+07 8.20883e+06 2.72095e+06 4723.87 29.26 6.77507 5.95475 70206 720185 -1 31677 16 12187 14511 2556905 535111 0 0 2556905 535111 12837 12305 0 0 100649 90471 0 0 132872 110021 0 0 12851 12390 0 0 1161230 153614 0 0 1136466 156310 0 0 12837 0 0 671 8784 8247 16063 1784 712 4.64786 4.64786 -4195.89 -4.64786 0 0 3.41546e+06 5929.62 1.90 1.35 0.88 -1 -1 1.90 0.619559 0.564751 1593 2122 836 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_46.v common 42.99 vpr 96.55 MiB 0.26 20340 -1 -1 1 1.57 -1 -1 46432 -1 -1 210 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98864 22 19 6559 5422 1 3380 264 24 24 576 mult_36 auto 60.2 MiB 1.98 22795 67098 14350 46895 5853 96.5 MiB 2.36 0.03 4.14666 -3537.9 -4.14666 4.14666 2.83 0.0113751 0.0100828 1.11104 0.992543 78 37150 27 1.60519e+07 8.23826e+06 2.67122e+06 4637.53 23.32 5.81682 5.08996 69630 706637 -1 31579 17 12321 14427 2528802 543755 0 0 2528802 543755 12982 12436 0 0 100484 90820 0 0 132339 110300 0 0 12988 12507 0 0 1134374 159762 0 0 1135635 157930 0 0 12982 0 0 679 6996 8143 16543 1525 765 4.39726 4.39726 -4209.62 -4.39726 0 0 3.35110e+06 5817.88 1.83 1.31 0.82 -1 -1 1.83 0.600743 0.542969 1613 2141 855 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_47.v common 50.53 vpr 97.09 MiB 0.26 20452 -1 -1 1 1.58 -1 -1 46792 -1 -1 216 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99420 22 19 6735 5564 1 3477 270 24 24 576 mult_36 auto 61.0 MiB 2.02 24680 63926 12967 45673 5286 97.1 MiB 2.36 0.03 4.52256 -3782.14 -4.52256 4.52256 2.82 0.0133526 0.0121323 1.10521 0.98444 80 39990 35 1.60519e+07 8.32656e+06 2.72095e+06 4723.87 30.32 6.33663 5.58036 70206 720185 -1 33731 16 12641 14752 2823176 575787 0 0 2823176 575787 13240 12752 0 0 100726 90484 0 0 132959 109867 0 0 13241 12816 0 0 1278577 176089 0 0 1284433 173779 0 0 13240 0 0 621 7588 8984 16581 1580 853 4.89846 4.89846 -4588.29 -4.89846 0 0 3.41546e+06 5929.62 1.88 1.59 0.88 -1 -1 1.88 0.671914 0.61141 1656 2196 874 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_48.v common 55.04 vpr 97.75 MiB 0.27 20600 -1 -1 1 1.55 -1 -1 46640 -1 -1 218 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100096 22 19 6809 5621 1 3526 272 24 24 576 mult_36 auto 61.7 MiB 1.99 23908 68109 15035 47671 5403 97.8 MiB 2.56 0.03 4.02136 -3693.79 -4.02136 4.02136 2.80 0.013053 0.011751 1.25612 1.09985 82 40492 42 1.60519e+07 8.35599e+06 2.78508e+06 4835.20 34.75 7.16624 6.19296 70778 734779 -1 32721 18 12537 14636 2584603 543270 0 0 2584603 543270 13157 12623 0 0 99000 88961 0 0 129858 107491 0 0 13165 12690 0 0 1173382 157776 0 0 1156041 163729 0 0 13157 0 0 641 8039 7232 16502 1542 1218 4.52256 4.52256 -4437.59 -4.52256 0 0 3.48632e+06 6052.64 1.99 1.49 0.93 -1 -1 1.99 0.751853 0.679213 1674 2215 893 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_49.v common 56.38 vpr 114.66 MiB 0.27 21464 -1 -1 1 1.65 -1 -1 47396 -1 -1 228 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 117408 22 19 7094 5872 1 3640 283 24 24 576 mult_36 auto 63.8 MiB 2.16 23816 74523 15599 53070 5854 101.7 MiB 2.67 0.03 4.27196 -3979.66 -4.27196 4.27196 2.87 0.0138275 0.0123722 1.23809 1.08377 86 36950 30 1.60519e+07 8.89916e+06 2.91907e+06 5067.82 35.39 7.22582 6.38193 72506 773887 -1 32333 17 11965 13706 2436121 494541 0 0 2436121 494541 12506 12052 0 0 94353 84638 0 0 128590 106178 0 0 12508 12104 0 0 1099067 139716 0 0 1089097 139853 0 0 12506 0 0 560 5800 5788 15391 1248 405 4.64786 4.64786 -4729.98 -4.64786 0 0 3.65856e+06 6351.67 2.00 1.46 1.01 -1 -1 2.00 0.762481 0.686305 1745 2324 912 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_50.v common 52.20 vpr 99.34 MiB 0.28 21540 -1 -1 1 1.60 -1 -1 46932 -1 -1 230 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101728 22 19 7168 5929 1 3676 285 24 24 576 mult_36 auto 63.3 MiB 2.10 24753 70560 14836 49778 5946 99.3 MiB 2.57 0.03 4.14666 -3986.24 -4.14666 4.14666 2.82 0.0139888 0.01253 1.20112 1.06209 82 43170 48 1.60519e+07 8.92859e+06 2.78508e+06 4835.20 31.43 6.89442 6.04013 70778 734779 -1 34587 18 13432 15233 2917645 587550 0 0 2917645 587550 14107 13536 0 0 104654 94351 0 0 136083 113271 0 0 14110 13622 0 0 1321877 178837 0 0 1326814 173933 0 0 14107 0 0 691 5385 6577 17873 1176 321 4.52256 4.52256 -4811.05 -4.52256 0 0 3.48632e+06 6052.64 1.98 1.56 0.91 -1 -1 1.98 0.740839 0.664168 1764 2343 931 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_51.v common 49.29 vpr 103.60 MiB 0.29 21672 -1 -1 1 1.77 -1 -1 47596 -1 -1 235 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 106084 22 19 7344 6071 1 3782 290 24 24 576 mult_36 auto 64.4 MiB 2.16 26953 65502 13821 46780 4901 100.4 MiB 2.42 0.03 4.39726 -4060.21 -4.39726 4.39726 2.75 0.0127864 0.0113111 1.11767 0.987187 88 41925 30 1.60519e+07 9.00217e+06 2.98162e+06 5176.42 28.02 7.14512 6.28453 73078 787199 -1 36384 16 13391 15554 3046136 618310 0 0 3046136 618310 14062 13505 0 0 104760 94172 0 0 141826 116821 0 0 14064 13592 0 0 1380259 191852 0 0 1391165 188368 0 0 14062 0 0 691 6846 8076 17957 1544 606 4.77316 4.77316 -4885.32 -4.77316 0 0 3.70823e+06 6437.90 2.10 1.58 0.97 -1 -1 2.10 0.726183 0.656623 1808 2398 950 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_pipe_52.v common 58.80 vpr 115.80 MiB 0.29 21808 -1 -1 1 1.85 -1 -1 47408 -1 -1 237 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 118584 22 19 7418 6128 1 3828 292 24 24 576 mult_36 auto 64.8 MiB 2.26 25183 70956 14710 51183 5063 100.9 MiB 2.83 0.04 4.14666 -3993.8 -4.14666 4.14666 2.80 0.0181349 0.0162468 1.38133 1.22742 88 37559 18 1.60519e+07 9.0316e+06 2.98162e+06 5176.42 37.09 8.66232 7.64235 73078 787199 -1 33957 17 12742 14825 2620154 544803 0 0 2620154 544803 13303 12835 0 0 100098 89934 0 0 137192 112645 0 0 13309 12903 0 0 1178462 155176 0 0 1177790 161310 0 0 13303 0 0 574 6515 7887 16273 1580 724 4.64786 4.64786 -4820.08 -4.64786 0 0 3.70823e+06 6437.90 2.08 1.49 0.98 -1 -1 2.08 0.766883 0.694286 1827 2417 969 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_14.v common 33.58 vpr 69.88 MiB 0.07 9560 -1 -1 1 0.22 -1 -1 37396 -1 -1 43 22 0 4 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71556 22 19 1246 925 1 718 88 16 16 256 mult_36 auto 32.0 MiB 0.47 3935 12958 3541 7720 1697 69.9 MiB 0.34 0.00 7.03101 -320.951 -7.03101 7.03101 1.03 0.00230739 0.00202514 0.172324 0.154468 50 7913 44 6.62819e+06 2.21677e+06 787708. 3076.99 28.22 1.66144 1.47486 25344 186282 -1 6552 25 5535 6204 1022722 244159 0 0 1022722 244159 6204 5667 0 0 48909 46119 0 0 62505 51910 0 0 6249 5734 0 0 451734 68292 0 0 447121 66437 0 0 6204 0 0 691 2808 2749 35696 0 0 8.21873 8.21873 -458.531 -8.21873 0 0 943753. 3686.54 0.42 0.43 0.22 -1 -1 0.42 0.144029 0.131081 299 285 247 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_15.v common 14.87 vpr 70.19 MiB 0.07 9648 -1 -1 1 0.22 -1 -1 37792 -1 -1 46 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71876 22 19 1344 989 1 778 92 16 16 256 mult_36 auto 32.2 MiB 0.47 4309 20585 5831 10977 3777 70.2 MiB 0.52 0.01 6.86185 -318.377 -6.86185 6.86185 1.00 0.00273822 0.00245453 0.270703 0.24195 54 9266 41 6.62819e+06 2.65692e+06 829453. 3240.05 9.03 1.32531 1.1785 26108 202796 -1 7195 22 6993 7878 1376119 333867 0 0 1376119 333867 7878 7187 0 0 63342 60409 0 0 77286 65219 0 0 7925 7249 0 0 598738 96804 0 0 620950 96999 0 0 7878 0 0 913 4585 3700 47050 0 0 8.67103 8.67103 -464.714 -8.67103 0 0 1.02522e+06 4004.78 0.46 0.56 0.25 -1 -1 0.46 0.167835 0.15259 321 304 266 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_16.v common 15.61 vpr 70.22 MiB 0.08 9764 -1 -1 1 0.24 -1 -1 38144 -1 -1 48 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71904 22 19 1418 1046 1 821 94 16 16 256 mult_36 auto 32.4 MiB 0.53 4533 16495 4155 9443 2897 70.2 MiB 0.44 0.01 7.04201 -332.846 -7.04201 7.04201 1.00 0.00283839 0.00252052 0.223068 0.199411 58 8249 46 6.62819e+06 2.68636e+06 871168. 3403.00 9.84 1.49954 1.33565 26872 219187 -1 6890 23 6190 7161 1027331 250938 0 0 1027331 250938 7161 6459 0 0 47889 44796 0 0 65860 52487 0 0 7255 6557 0 0 440409 70101 0 0 458757 70538 0 0 7161 0 0 995 4467 4091 50190 0 0 8.18658 8.18658 -448.977 -8.18658 0 0 1.09288e+06 4269.05 0.48 0.44 0.27 -1 -1 0.48 0.150549 0.136717 340 323 285 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_17.v common 18.14 vpr 71.16 MiB 0.09 10608 -1 -1 1 0.26 -1 -1 37908 -1 -1 52 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72868 22 19 1518 1112 1 879 98 16 16 256 mult_36 auto 33.3 MiB 0.51 4914 20348 5340 12056 2952 71.2 MiB 0.60 0.01 7.54655 -377.521 -7.54655 7.54655 1.01 0.00341325 0.0031266 0.311201 0.28207 62 9079 44 6.62819e+06 2.74522e+06 916467. 3579.95 12.09 1.78997 1.59657 27384 229598 -1 7498 23 6673 7316 1048386 244138 0 0 1048386 244138 7316 6773 0 0 52104 49096 0 0 67753 54841 0 0 7350 6825 0 0 465085 64272 0 0 448778 62331 0 0 7316 0 0 662 3603 3067 38746 0 0 8.62727 8.62727 -483.349 -8.62727 0 0 1.13630e+06 4438.68 0.50 0.48 0.29 -1 -1 0.50 0.182615 0.166529 365 342 304 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_18.v common 13.24 vpr 71.59 MiB 0.09 10456 -1 -1 1 0.26 -1 -1 38408 -1 -1 55 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73312 22 19 1592 1169 1 918 101 16 16 256 mult_36 auto 33.8 MiB 0.54 5324 14906 3493 9668 1745 71.6 MiB 0.41 0.01 7.49539 -396.092 -7.49539 7.49539 1.00 0.00294906 0.00263996 0.203019 0.182045 56 10196 45 6.62819e+06 2.78937e+06 849745. 3319.32 7.17 1.17976 1.05352 26364 208198 -1 8789 27 8935 9838 1843162 414010 0 0 1843162 414010 9838 9254 0 0 73995 69501 0 0 101379 79803 0 0 9973 9393 0 0 820059 122539 0 0 827918 123520 0 0 9838 0 0 927 5371 4882 51586 0 0 9.30642 9.30642 -556.11 -9.30642 0 0 1.04740e+06 4091.43 0.46 0.72 0.26 -1 -1 0.46 0.211397 0.190418 383 361 323 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_19.v common 19.12 vpr 71.71 MiB 0.09 10624 -1 -1 1 0.28 -1 -1 38724 -1 -1 58 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73432 22 19 1688 1231 1 976 105 16 16 256 mult_36 auto 33.9 MiB 0.60 5689 15913 3953 9486 2474 71.7 MiB 0.47 0.01 7.48725 -407.023 -7.48725 7.48725 0.99 0.00322943 0.00289993 0.230475 0.20823 60 10715 42 6.62819e+06 3.22951e+06 890343. 3477.90 12.92 2.10442 1.87409 27128 224764 -1 8796 25 7191 8204 1263947 292436 0 0 1263947 292436 7972 7348 0 0 58284 54792 0 0 75342 61880 0 0 8010 7417 0 0 564717 80620 0 0 549622 80379 0 0 7972 0 0 805 3721 3812 33869 260 1 8.89943 8.89943 -576.323 -8.89943 0 0 1.11577e+06 4358.47 0.50 0.59 0.28 -1 -1 0.50 0.226045 0.205332 404 380 342 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_20.v common 14.22 vpr 72.41 MiB 0.09 10716 -1 -1 1 0.28 -1 -1 38592 -1 -1 59 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74148 22 19 1762 1288 1 1014 106 16 16 256 mult_36 auto 34.6 MiB 0.63 5969 19606 5084 12077 2445 72.4 MiB 0.62 0.01 7.3951 -425.079 -7.3951 7.3951 1.02 0.00331151 0.00294882 0.298479 0.26666 64 10923 49 6.62819e+06 3.24423e+06 943753. 3686.54 7.62 1.35064 1.20584 27892 240595 -1 9027 27 7694 8707 1408400 330725 0 0 1408400 330725 8707 7884 0 0 62710 58721 0 0 85464 67868 0 0 8753 7981 0 0 639142 94266 0 0 603624 94005 0 0 8707 0 0 1037 5709 6309 64430 0 0 8.61163 8.61163 -593.6 -8.61163 0 0 1.19033e+06 4649.74 0.53 0.67 0.30 -1 -1 0.53 0.250054 0.226444 423 399 361 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_21.v common 50.90 vpr 72.36 MiB 0.10 11076 -1 -1 1 0.32 -1 -1 38528 -1 -1 62 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74100 22 19 1859 1351 1 1072 109 16 16 256 mult_36 auto 34.8 MiB 0.63 6209 18829 4709 11413 2707 72.4 MiB 0.55 0.01 7.42524 -437.67 -7.42524 7.42524 0.95 0.00350633 0.00314057 0.276586 0.249036 60 11954 47 6.62819e+06 3.28838e+06 890343. 3477.90 44.47 2.58949 2.28974 27128 224764 -1 9589 29 9500 10784 1622468 396268 0 0 1622468 396268 10448 9701 0 0 70837 66567 0 0 99484 75628 0 0 10486 9820 0 0 715593 120477 0 0 715620 114075 0 0 10448 0 0 978 4957 4551 39525 354 1 8.77327 8.77327 -608.609 -8.77327 0 0 1.11577e+06 4358.47 0.51 0.77 0.25 -1 -1 0.51 0.274439 0.247401 445 418 380 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_22.v common 14.39 vpr 72.92 MiB 0.10 11280 -1 -1 1 0.32 -1 -1 38112 -1 -1 66 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74672 22 19 1933 1408 1 1111 113 16 16 256 mult_36 auto 35.2 MiB 0.76 6696 16493 4060 10430 2003 72.9 MiB 0.56 0.01 7.42025 -475.635 -7.42025 7.42025 1.01 0.00371446 0.00333789 0.267032 0.237853 64 12487 42 6.62819e+06 3.34724e+06 943753. 3686.54 7.57 1.39336 1.24171 27892 240595 -1 10361 24 8700 10085 1562958 348872 0 0 1562958 348872 9414 8866 0 0 69902 65090 0 0 93262 75742 0 0 9420 8917 0 0 679554 98162 0 0 701406 92095 0 0 9414 0 0 741 3492 4137 13297 701 96 8.67992 8.67992 -767.645 -8.67992 0 0 1.19033e+06 4649.74 0.51 0.69 0.29 -1 -1 0.51 0.238278 0.215844 464 437 399 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_23.v common 19.37 vpr 73.62 MiB 0.12 11460 -1 -1 1 0.33 -1 -1 38892 -1 -1 68 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75384 22 19 2031 1472 1 1174 116 18 18 324 mult_36 auto 35.9 MiB 0.73 7205 19292 4813 11957 2522 73.6 MiB 0.59 0.01 7.41124 -456.649 -7.41124 7.41124 1.37 0.00394624 0.00359483 0.292733 0.262629 60 14587 47 8.18539e+06 3.77267e+06 1.16833e+06 3605.96 11.16 1.51915 1.35379 35004 297736 -1 11443 26 10557 12144 2436054 536601 0 0 2436054 536601 11404 10678 0 0 95873 90643 0 0 122239 100261 0 0 11407 10759 0 0 1111435 159418 0 0 1083696 164842 0 0 11404 0 0 875 4105 4061 16087 808 9 8.86972 8.86972 -776.539 -8.86972 0 0 1.46313e+06 4515.82 0.71 0.98 0.36 -1 -1 0.71 0.279282 0.25266 486 456 418 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_24.v common 23.80 vpr 73.76 MiB 0.11 11624 -1 -1 1 0.34 -1 -1 38948 -1 -1 71 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75528 22 19 2105 1529 1 1210 119 18 18 324 mult_36 auto 36.2 MiB 0.79 7199 19099 4664 12152 2283 73.8 MiB 0.59 0.01 7.45239 -513.793 -7.45239 7.45239 1.42 0.00371487 0.00330563 0.28394 0.252711 64 13227 32 8.18539e+06 3.81682e+06 1.23838e+06 3822.15 15.60 2.15863 1.91404 35972 318676 -1 10991 23 9290 10457 1635217 359153 0 0 1635217 359153 9953 9428 0 0 75582 70972 0 0 99580 82018 0 0 9957 9519 0 0 725394 93960 0 0 714751 93256 0 0 9953 0 0 693 3002 3655 15325 534 2 8.66183 8.66183 -762.032 -8.66183 0 0 1.56068e+06 4816.91 0.77 0.71 0.40 -1 -1 0.77 0.246923 0.224175 505 475 437 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_25.v common 26.86 vpr 74.28 MiB 0.12 11944 -1 -1 1 0.39 -1 -1 39156 -1 -1 73 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76064 22 19 2201 1591 1 1268 121 18 18 324 mult_36 auto 37.0 MiB 0.79 7323 24041 6149 15164 2728 74.3 MiB 0.76 0.01 7.52039 -496.459 -7.52039 7.52039 1.40 0.00475285 0.00434197 0.371911 0.332226 64 13619 35 8.18539e+06 3.84625e+06 1.23838e+06 3822.15 18.13 2.61587 2.32768 35972 318676 -1 11696 24 10610 12274 2210270 477204 0 0 2210270 477204 11495 10885 0 0 89651 84110 0 0 118993 96221 0 0 11520 10952 0 0 975328 139078 0 0 1003283 135958 0 0 11495 0 0 914 6214 6432 33286 823 35 8.76402 8.76402 -734.751 -8.76402 0 0 1.56068e+06 4816.91 0.78 1.03 0.39 -1 -1 0.78 0.3099 0.281721 526 494 456 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_26.v common 58.41 vpr 74.98 MiB 0.12 12012 -1 -1 1 0.41 -1 -1 39228 -1 -1 76 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76776 22 19 2275 1648 1 1306 124 18 18 324 mult_36 auto 37.7 MiB 0.82 8154 21136 5144 13639 2353 75.0 MiB 0.74 0.01 7.8713 -494.386 -7.8713 7.8713 1.40 0.00417872 0.00375991 0.36366 0.326003 60 16567 47 8.18539e+06 3.8904e+06 1.16833e+06 3605.96 49.61 2.99833 2.64647 35004 297736 -1 13012 27 12249 13650 2975127 629598 0 0 2975127 629598 12940 12419 0 0 99439 93969 0 0 134879 105093 0 0 12949 12454 0 0 1364373 199098 0 0 1350547 206565 0 0 12940 0 0 721 3654 4216 16238 805 2 9.14533 9.14533 -758.555 -9.14533 0 0 1.46313e+06 4515.82 0.73 1.18 0.36 -1 -1 0.73 0.328834 0.296097 546 513 475 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_27.v common 21.80 vpr 75.34 MiB 0.13 12292 -1 -1 1 0.42 -1 -1 39880 -1 -1 82 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77144 22 19 2385 1724 1 1378 131 18 18 324 mult_36 auto 38.1 MiB 0.90 8296 27023 6825 16768 3430 75.3 MiB 0.99 0.01 7.43624 -537.906 -7.43624 7.43624 1.42 0.00578631 0.00497183 0.495573 0.438372 60 17169 50 8.18539e+06 4.37469e+06 1.16833e+06 3605.96 12.66 2.11902 1.88225 35004 297736 -1 13354 24 11048 12606 2427888 529867 0 0 2427888 529867 12059 11286 0 0 94258 88685 0 0 119130 99193 0 0 12067 11366 0 0 1093134 158019 0 0 1097240 161318 0 0 12059 0 0 1042 4088 3898 17601 616 2 9.50787 9.50787 -725.051 -9.50787 0 0 1.46313e+06 4515.82 0.72 0.99 0.36 -1 -1 0.72 0.301404 0.273128 575 532 494 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_28.v common 27.61 vpr 75.93 MiB 0.13 12672 -1 -1 1 0.42 -1 -1 39444 -1 -1 83 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77752 22 19 2459 1781 1 1417 132 18 18 324 mult_36 auto 38.4 MiB 0.91 8901 22577 4985 14993 2599 75.9 MiB 0.76 0.01 7.8713 -549.689 -7.8713 7.8713 1.41 0.0044721 0.00400453 0.37567 0.335486 70 15022 26 8.18539e+06 4.3894e+06 1.34436e+06 4149.26 18.64 2.63309 2.3407 37264 347768 -1 13242 23 9518 11089 1869023 398865 0 0 1869023 398865 10194 9636 0 0 76816 71405 0 0 102665 82788 0 0 10196 9695 0 0 837549 113400 0 0 831603 111941 0 0 10194 0 0 701 5045 4474 13769 940 130 8.87728 8.87728 -957.043 -8.87728 0 0 1.69344e+06 5226.66 0.81 0.83 0.44 -1 -1 0.81 0.299514 0.271162 594 551 513 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_29.v common 27.15 vpr 76.10 MiB 0.14 12824 -1 -1 1 0.46 -1 -1 40700 -1 -1 85 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77928 22 19 2565 1853 1 1485 135 22 22 484 mult_36 auto 38.7 MiB 0.98 9689 25047 6275 16269 2503 76.1 MiB 0.94 0.01 7.43624 -544.661 -7.43624 7.43624 2.37 0.00627739 0.005399 0.475538 0.415759 70 16428 27 1.33067e+07 4.81483e+06 2.06816e+06 4273.05 14.91 2.30064 2.03522 56434 539830 -1 14001 25 11439 13263 2233851 474457 0 0 2233851 474457 12595 11730 0 0 97078 90555 0 0 128940 103685 0 0 12598 11816 0 0 988671 129989 0 0 993969 126682 0 0 12595 0 0 1181 5046 6091 28215 698 2 8.73683 8.73683 -847.048 -8.73683 0 0 2.60483e+06 5381.88 1.40 1.01 0.68 -1 -1 1.40 0.349618 0.316208 619 570 532 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_30.v common 25.19 vpr 76.62 MiB 0.14 12956 -1 -1 1 0.47 -1 -1 39948 -1 -1 89 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78460 22 19 2639 1910 1 1523 139 22 22 484 mult_36 auto 39.2 MiB 1.02 9640 28859 6707 18502 3650 76.6 MiB 1.13 0.01 7.43624 -520.251 -7.43624 7.43624 2.32 0.00629213 0.00540153 0.557969 0.48787 70 16649 34 1.33067e+07 4.87369e+06 2.06816e+06 4273.05 12.67 2.06295 1.82406 56434 539830 -1 14184 24 12418 14250 2862133 602975 0 0 2862133 602975 13565 12580 0 0 104860 98182 0 0 141217 112467 0 0 13569 12703 0 0 1300740 182621 0 0 1288182 184422 0 0 13565 0 0 1174 4689 4837 20323 761 3 8.95347 8.95347 -846.506 -8.95347 0 0 2.60483e+06 5381.88 1.35 1.16 0.68 -1 -1 1.35 0.337838 0.304321 639 589 551 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_31.v common 29.27 vpr 77.28 MiB 0.15 13268 -1 -1 1 0.50 -1 -1 40004 -1 -1 93 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79136 22 19 2744 1981 1 1590 143 22 22 484 mult_36 auto 39.9 MiB 1.02 10213 28491 6600 18816 3075 77.3 MiB 1.04 0.01 7.49539 -582.535 -7.49539 7.49539 2.26 0.00571464 0.00518578 0.46636 0.42051 66 19056 43 1.33067e+07 4.93255e+06 1.96511e+06 4060.15 17.03 2.09287 1.85069 54986 507526 -1 15439 26 13348 15703 3065311 631596 0 0 3065311 631596 14541 13592 0 0 110840 103858 0 0 151041 119264 0 0 14544 13652 0 0 1379224 189774 0 0 1395121 191456 0 0 14541 0 0 1223 6898 7095 21649 1209 28 9.15632 9.15632 -1101.43 -9.15632 0 0 2.45963e+06 5081.88 1.27 1.24 0.60 -1 -1 1.27 0.360304 0.325056 665 608 570 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_32.v common 91.23 vpr 77.48 MiB 0.15 13384 -1 -1 1 0.55 -1 -1 40200 -1 -1 96 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79340 22 19 2818 2038 1 1627 146 22 22 484 mult_36 auto 40.3 MiB 1.09 10325 30482 7786 19419 3277 77.5 MiB 1.10 0.01 7.52039 -582.013 -7.52039 7.52039 2.22 0.00673795 0.00600573 0.559271 0.496011 66 18458 33 1.33067e+07 4.9767e+06 1.96511e+06 4060.15 78.92 4.50174 3.97192 54986 507526 -1 15293 24 12697 14781 2882895 607845 0 0 2882895 607845 13913 12967 0 0 106785 100349 0 0 141821 114087 0 0 13919 13073 0 0 1294441 181143 0 0 1312016 186226 0 0 13913 0 0 1241 5665 5902 20707 932 59 9.34202 9.34202 -1030.73 -9.34202 0 0 2.45963e+06 5081.88 1.31 1.11 0.62 -1 -1 1.31 0.310599 0.281128 684 627 589 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_33.v common 26.53 vpr 78.12 MiB 0.16 13808 -1 -1 1 0.56 -1 -1 40348 -1 -1 100 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79992 22 19 2923 2109 1 1695 151 22 22 484 mult_36 auto 40.9 MiB 0.97 10491 33835 8574 21105 4156 78.1 MiB 1.20 0.01 7.94064 -597.141 -7.94064 7.94064 2.29 0.00674974 0.00577428 0.614694 0.531941 64 19070 50 1.33067e+07 5.43155e+06 1.90554e+06 3937.06 14.02 2.63693 2.32895 54502 494576 -1 15787 25 13858 15489 2824485 600452 0 0 2824485 600452 14633 14088 0 0 112285 105253 0 0 152161 121338 0 0 14640 14194 0 0 1278006 170780 0 0 1252760 174799 0 0 14633 0 0 801 4949 5286 21186 894 34 9.95291 9.95291 -1096.7 -9.95291 0 0 2.40101e+06 4960.76 1.27 1.19 0.59 -1 -1 1.27 0.380018 0.342807 710 646 608 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_34.v common 38.28 vpr 78.56 MiB 0.16 14048 -1 -1 1 0.58 -1 -1 40192 -1 -1 101 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80444 22 19 2997 2166 1 1734 152 22 22 484 mult_36 auto 41.4 MiB 1.33 10939 30122 6941 19995 3186 78.6 MiB 1.07 0.01 7.88963 -601.708 -7.88963 7.88963 2.34 0.00551573 0.0049006 0.494171 0.437728 66 19440 28 1.33067e+07 5.44627e+06 1.96511e+06 4060.15 25.16 3.23147 2.86271 54986 507526 -1 16262 25 13499 15395 2906042 608239 0 0 2906042 608239 14574 13765 0 0 115250 108127 0 0 152837 123878 0 0 14585 13883 0 0 1312936 172636 0 0 1295860 175950 0 0 14574 0 0 1098 5319 5331 20493 889 64 9.72351 9.72351 -1073.66 -9.72351 0 0 2.45963e+06 5081.88 1.32 1.22 0.63 -1 -1 1.32 0.385734 0.348973 729 665 627 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_35.v common 33.68 vpr 79.20 MiB 0.17 14324 -1 -1 1 0.62 -1 -1 40564 -1 -1 106 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81104 22 19 3101 2236 1 1801 157 22 22 484 mult_36 auto 41.9 MiB 1.37 11969 26806 5903 18065 2838 79.2 MiB 0.97 0.01 8.30854 -645.602 -8.30854 8.30854 2.35 0.00640295 0.00582298 0.442652 0.39656 70 21607 48 1.33067e+07 5.51985e+06 2.06816e+06 4273.05 20.14 3.03407 2.69136 56434 539830 -1 17638 31 16764 19193 3934600 822692 0 0 3934600 822692 18325 17188 0 0 136149 127239 0 0 190012 145195 0 0 18373 17314 0 0 1771938 257593 0 0 1799803 258163 0 0 18325 0 0 1585 8210 8906 44951 982 14 9.68046 9.68046 -1085.75 -9.68046 0 0 2.60483e+06 5381.88 1.32 1.58 0.65 -1 -1 1.32 0.434009 0.390699 755 684 646 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_36.v common 32.73 vpr 79.37 MiB 0.17 14352 -1 -1 1 0.64 -1 -1 40656 -1 -1 107 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81272 22 19 3175 2293 1 1836 158 22 22 484 mult_36 auto 42.2 MiB 1.55 12024 30475 6889 20441 3145 79.4 MiB 1.07 0.01 8.31654 -624.914 -8.31654 8.31654 2.29 0.00664393 0.00597966 0.508864 0.456648 68 22656 38 1.33067e+07 5.53456e+06 2.01763e+06 4168.66 18.97 2.80067 2.49794 55470 518816 -1 18118 26 15705 18268 3798444 767409 0 0 3798444 767409 17141 16013 0 0 128074 120416 0 0 173678 135626 0 0 17143 16125 0 0 1729283 238357 0 0 1733125 240872 0 0 17141 0 0 1465 7715 6645 25617 1155 199 9.66152 9.66152 -1114.41 -9.66152 0 0 2.51205e+06 5190.18 1.34 1.56 0.64 -1 -1 1.34 0.4551 0.410946 773 703 665 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_37.v common 35.86 vpr 80.16 MiB 0.17 14520 -1 -1 1 0.64 -1 -1 40716 -1 -1 111 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82088 22 19 3280 2364 1 1904 163 24 24 576 mult_36 auto 43.2 MiB 1.48 12629 33093 8157 22112 2824 80.2 MiB 1.20 0.01 8.4137 -698.54 -8.4137 8.4137 2.83 0.00598778 0.00534265 0.561993 0.501415 68 22807 49 1.60519e+07 5.98942e+06 2.39371e+06 4155.74 20.75 3.24424 2.87955 65606 615345 -1 18408 27 14821 17457 3023197 631944 0 0 3023197 631944 16293 15064 0 0 118468 111153 0 0 160300 125783 0 0 16297 15236 0 0 1348747 182260 0 0 1363092 182448 0 0 16293 0 0 1501 6950 7304 24653 1221 3 9.79951 9.79951 -1101.52 -9.79951 0 0 2.98162e+06 5176.42 1.68 1.33 0.76 -1 -1 1.68 0.437246 0.394981 798 722 684 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_38.v common 37.40 vpr 80.51 MiB 0.17 14628 -1 -1 1 0.66 -1 -1 40956 -1 -1 113 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82444 22 19 3354 2421 1 1941 165 24 24 576 mult_36 auto 43.3 MiB 1.59 12518 32709 7500 22375 2834 80.5 MiB 1.21 0.02 8.4137 -735.79 -8.4137 8.4137 2.79 0.00647794 0.00562462 0.542229 0.476681 66 23278 46 1.60519e+07 6.01886e+06 2.33135e+06 4047.49 22.34 3.10636 2.7457 65030 601923 -1 18515 23 14702 17142 3128381 676238 0 0 3128381 676238 16090 15017 0 0 124875 117084 0 0 161541 133403 0 0 16100 15103 0 0 1391482 198811 0 0 1418293 196820 0 0 16090 0 0 1417 6071 6920 24016 1131 28 9.97612 9.97612 -1236.48 -9.97612 0 0 2.91907e+06 5067.82 1.58 1.24 0.73 -1 -1 1.58 0.367217 0.332937 818 741 703 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_39.v common 45.80 vpr 83.30 MiB 0.18 14856 -1 -1 1 0.70 -1 -1 40688 -1 -1 117 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85296 22 19 3457 2490 1 2007 169 24 24 576 mult_36 auto 43.4 MiB 1.55 13220 37996 8946 25487 3563 80.6 MiB 1.40 0.02 8.17224 -882.394 -8.17224 8.17224 2.83 0.00778701 0.00665174 0.657592 0.581138 74 21427 32 1.60519e+07 6.07772e+06 2.56259e+06 4448.94 30.29 4.09716 3.65005 67906 667765 -1 18660 25 13425 15571 2958168 601748 0 0 2958168 601748 14500 13603 0 0 108180 101402 0 0 146611 116387 0 0 14503 13737 0 0 1318195 179146 0 0 1356179 177473 0 0 14500 0 0 1100 5521 6490 20441 1091 43 9.50477 9.50477 -1235.77 -9.50477 0 0 3.19068e+06 5539.38 1.72 1.31 0.82 -1 -1 1.72 0.462601 0.419123 842 760 722 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_40.v common 51.26 vpr 84.39 MiB 0.19 15172 -1 -1 1 0.70 -1 -1 41320 -1 -1 120 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86412 22 19 3531 2547 1 2046 172 24 24 576 mult_36 auto 43.9 MiB 1.73 13688 38412 8985 25938 3489 81.1 MiB 1.41 0.02 8.34154 -875.21 -8.34154 8.34154 2.77 0.00676661 0.00616693 0.679493 0.599436 72 23168 43 1.60519e+07 6.12186e+06 2.50747e+06 4353.24 35.64 4.90191 4.34892 67330 654343 -1 19264 24 14182 16816 2821784 590711 0 0 2821784 590711 15623 14427 0 0 115645 107508 0 0 156605 124138 0 0 15634 14547 0 0 1255665 168188 0 0 1262612 161903 0 0 15623 0 0 1467 6862 7328 24318 1224 203 9.64042 9.64042 -1347.6 -9.64042 0 0 3.14081e+06 5452.80 1.69 1.30 0.79 -1 -1 1.69 0.466005 0.419236 862 779 741 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_41.v common 51.02 vpr 83.82 MiB 0.18 15308 -1 -1 1 0.72 -1 -1 41412 -1 -1 122 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85828 22 19 3634 2616 1 2113 175 24 24 576 mult_36 auto 44.2 MiB 1.60 13895 33916 7579 23431 2906 81.5 MiB 1.22 0.02 8.14823 -798.826 -8.14823 8.14823 2.71 0.00779751 0.00661694 0.569568 0.496934 70 23397 47 1.60519e+07 6.5473e+06 2.45377e+06 4260.01 35.66 4.48354 3.94696 66754 640332 -1 20001 25 16364 19107 3807475 794233 0 0 3807475 794233 17770 16631 0 0 141475 132373 0 0 186289 150777 0 0 17774 16769 0 0 1714639 236827 0 0 1729528 240856 0 0 17770 0 0 1432 7363 7563 25838 1368 11 9.59931 9.59931 -1387.01 -9.59931 0 0 3.09179e+06 5367.68 1.72 1.56 0.72 -1 -1 1.72 0.472551 0.426595 886 798 760 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_42.v common 48.92 vpr 84.75 MiB 0.19 15584 -1 -1 1 0.75 -1 -1 41144 -1 -1 125 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86788 22 19 3708 2673 1 2147 178 24 24 576 mult_36 auto 45.1 MiB 1.78 14391 35678 7732 24951 2995 82.2 MiB 1.24 0.02 8.34154 -838.585 -8.34154 8.34154 2.79 0.0080538 0.00721427 0.580361 0.506875 74 22958 29 1.60519e+07 6.59144e+06 2.56259e+06 4448.94 32.72 4.54324 4.00937 67906 667765 -1 20467 24 14780 17144 3359010 696130 0 0 3359010 696130 16160 15003 0 0 123501 115924 0 0 165155 131948 0 0 16160 15104 0 0 1500638 213428 0 0 1537396 204723 0 0 16160 0 0 1406 6202 5878 23927 1015 10 9.45897 9.45897 -1232.34 -9.45897 0 0 3.19068e+06 5539.38 1.82 1.53 0.84 -1 -1 1.82 0.531201 0.475723 906 817 779 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_43.v common 142.44 vpr 82.70 MiB 0.20 15684 -1 -1 1 0.76 -1 -1 42260 -1 -1 129 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84684 22 19 3810 2741 1 2214 182 24 24 576 mult_36 auto 45.5 MiB 1.78 15273 39837 9106 27117 3614 82.7 MiB 1.49 0.02 8.22139 -844.621 -8.22139 8.22139 2.80 0.00820904 0.00742049 0.699604 0.618251 66 28156 44 1.60519e+07 6.6503e+06 2.33135e+06 4047.49 125.81 5.91563 5.22679 65030 601923 -1 21891 30 18432 21932 5230694 1100680 0 0 5230694 1100680 20374 18921 0 0 165714 155924 0 0 226954 177232 0 0 20375 19098 0 0 2418191 359482 0 0 2379086 370023 0 0 20374 0 0 1971 10725 10245 32161 1599 402 9.55641 9.55641 -1422.74 -9.55641 0 0 2.91907e+06 5067.82 1.62 2.10 0.67 -1 -1 1.62 0.574749 0.514403 930 836 798 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_44.v common 37.32 vpr 82.59 MiB 0.20 15940 -1 -1 1 0.80 -1 -1 41748 -1 -1 132 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84576 22 19 3884 2798 1 2251 185 24 24 576 mult_36 auto 45.6 MiB 1.90 14729 43843 10459 29470 3914 82.6 MiB 1.63 0.02 8.3887 -942.045 -8.3887 8.3887 2.78 0.00830547 0.00757197 0.746471 0.660781 72 26758 36 1.60519e+07 6.69445e+06 2.50747e+06 4353.24 20.60 3.63901 3.21952 67330 654343 -1 21412 24 16882 19754 3400116 716779 0 0 3400116 716779 18568 17262 0 0 141706 132001 0 0 188908 151902 0 0 18569 17395 0 0 1522406 201227 0 0 1509959 196992 0 0 18568 0 0 1711 7592 8425 28790 1210 171 10.1466 10.1466 -1317.5 -10.1466 0 0 3.14081e+06 5452.80 1.78 1.47 0.83 -1 -1 1.78 0.505111 0.454535 949 855 817 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_45.v common 131.39 vpr 82.80 MiB 0.21 16372 -1 -1 1 0.85 -1 -1 43200 -1 -1 135 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84788 22 19 3989 2869 1 2318 189 24 24 576 mult_36 auto 45.9 MiB 1.93 15141 44633 10412 30192 4029 82.8 MiB 1.65 0.02 8.4137 -874.23 -8.4137 8.4137 2.81 0.00857177 0.00777059 0.780161 0.693061 68 25731 41 1.60519e+07 7.1346e+06 2.39371e+06 4155.74 114.80 6.09775 5.37607 65606 615345 -1 21433 24 15911 18683 3302840 700547 0 0 3302840 700547 17384 16195 0 0 133356 125241 0 0 177525 142935 0 0 17397 16340 0 0 1470948 201625 0 0 1486230 198211 0 0 17384 0 0 1501 7580 7630 25565 1364 256 9.70052 9.70052 -1662.74 -9.70052 0 0 2.98162e+06 5176.42 1.66 1.42 0.75 -1 -1 1.66 0.487128 0.441294 975 874 836 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_46.v common 39.80 vpr 83.71 MiB 0.22 16204 -1 -1 1 0.85 -1 -1 43312 -1 -1 136 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85720 22 19 4063 2926 1 2357 190 24 24 576 mult_36 auto 46.7 MiB 2.00 16191 41686 9342 28881 3463 83.7 MiB 1.66 0.02 8.43369 -942.845 -8.43369 8.43369 2.82 0.00949573 0.00866202 0.752234 0.667163 78 25581 48 1.60519e+07 7.14931e+06 2.67122e+06 4637.53 22.63 3.98762 3.53781 69630 706637 -1 22101 25 15574 18416 3678780 743286 0 0 3678780 743286 17060 15836 0 0 132261 123443 0 0 176254 140650 0 0 17063 15966 0 0 1661435 222232 0 0 1674707 225159 0 0 17060 0 0 1511 7407 8756 25626 1421 445 9.41782 9.41782 -1405.28 -9.41782 0 0 3.35110e+06 5817.88 1.90 1.58 0.90 -1 -1 1.90 0.520284 0.471743 993 893 855 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_47.v common 39.86 vpr 84.06 MiB 0.23 16860 -1 -1 1 0.87 -1 -1 43532 -1 -1 141 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86076 22 19 4167 2996 1 2421 195 24 24 576 mult_36 auto 47.2 MiB 2.03 15866 48220 11045 32937 4238 84.1 MiB 1.85 0.02 8.2457 -854.27 -8.2457 8.2457 2.80 0.00938572 0.00854422 0.836866 0.735175 72 27702 45 1.60519e+07 7.22289e+06 2.50747e+06 4353.24 22.29 3.9503 3.48482 67330 654343 -1 22622 24 17193 20272 4354128 926713 0 0 4354128 926713 18845 17518 0 0 156193 146852 0 0 205277 167469 0 0 18848 17676 0 0 1985126 287621 0 0 1969839 289577 0 0 18845 0 0 1681 8793 9547 28807 1491 305 9.58536 9.58536 -1353.61 -9.58536 0 0 3.14081e+06 5452.80 1.75 1.81 0.84 -1 -1 1.75 0.551193 0.498479 1019 912 874 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_48.v common 49.74 vpr 88.84 MiB 0.23 16948 -1 -1 1 0.93 -1 -1 43592 -1 -1 144 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90976 22 19 4241 3053 1 2459 198 24 24 576 mult_36 auto 47.6 MiB 2.10 15835 46854 10009 32089 4756 84.6 MiB 1.69 0.02 8.25153 -946.137 -8.25153 8.25153 2.78 0.0101915 0.00877815 0.765263 0.664889 78 23529 26 1.60519e+07 7.26704e+06 2.67122e+06 4637.53 32.26 4.90395 4.32936 69630 706637 -1 21603 22 13787 16328 2702205 590734 0 0 2702205 590734 15104 14034 0 0 116375 108122 0 0 153003 125056 0 0 15105 14129 0 0 1217627 162456 0 0 1184991 166937 0 0 15104 0 0 1342 7987 7253 22355 1281 343 9.27336 9.27336 -1495.7 -9.27336 0 0 3.35110e+06 5817.88 1.95 1.35 0.90 -1 -1 1.95 0.540448 0.489147 1038 931 893 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_49.v common 58.99 vpr 89.78 MiB 0.23 17336 -1 -1 1 0.94 -1 -1 43400 -1 -1 145 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91936 22 19 4346 3124 1 2527 200 24 24 576 mult_36 auto 48.2 MiB 1.99 17627 44584 9395 31230 3959 84.8 MiB 1.71 0.02 8.38055 -927.403 -8.38055 8.38055 2.67 0.00964298 0.00887053 0.777387 0.677995 78 27362 38 1.60519e+07 7.67775e+06 2.67122e+06 4637.53 41.36 5.8499 5.16652 69630 706637 -1 23841 25 17004 19881 4079477 844052 0 0 4079477 844052 18653 17342 0 0 146279 137153 0 0 198296 157221 0 0 18656 17529 0 0 1852827 255162 0 0 1844766 259645 0 0 18653 0 0 1674 7474 8291 28510 1270 50 9.79372 9.79372 -1516.9 -9.79372 0 0 3.35110e+06 5817.88 1.96 1.88 0.89 -1 -1 1.96 0.641314 0.575553 1062 950 912 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_50.v common 43.95 vpr 85.17 MiB 0.24 17168 -1 -1 1 1.04 -1 -1 43592 -1 -1 148 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87212 22 19 4420 3181 1 2564 203 24 24 576 mult_36 auto 48.7 MiB 2.22 17741 43711 9535 30771 3405 85.2 MiB 1.67 0.02 8.43799 -947.189 -8.43799 8.43799 2.80 0.00929402 0.00826781 0.738271 0.646224 72 33396 41 1.60519e+07 7.72189e+06 2.50747e+06 4353.24 25.65 4.21534 3.71808 67330 654343 -1 25400 25 21600 24928 5671734 1169501 0 0 5671734 1169501 23753 22132 0 0 179957 168537 0 0 239508 192360 0 0 23755 22357 0 0 2591075 375887 0 0 2613686 388228 0 0 23753 0 0 2184 8513 8529 37075 1209 13 9.75071 9.75071 -1495.37 -9.75071 0 0 3.14081e+06 5452.80 1.71 2.22 0.80 -1 -1 1.71 0.587599 0.52935 1082 969 931 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_51.v common 37.25 vpr 86.16 MiB 0.28 17636 -1 -1 1 1.04 -1 -1 43752 -1 -1 152 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88228 22 19 4524 3251 1 2634 207 24 24 576 mult_36 auto 49.3 MiB 2.19 17414 39987 7877 28615 3495 86.2 MiB 1.45 0.02 8.38584 -1089.25 -8.38584 8.38584 2.80 0.00869982 0.00776709 0.622744 0.552099 76 28316 33 1.60519e+07 7.78076e+06 2.61600e+06 4541.67 19.42 3.2977 2.93181 68478 680951 -1 24291 23 18377 21809 3852127 802947 0 0 3852127 802947 20121 18699 0 0 154769 145066 0 0 202955 164354 0 0 20121 18794 0 0 1750725 226385 0 0 1703436 229649 0 0 20121 0 0 1768 9736 9758 30404 1715 172 9.80296 9.80296 -1699.63 -9.80296 0 0 3.24203e+06 5628.53 1.88 1.69 0.84 -1 -1 1.88 0.597424 0.537114 1107 988 950 19 0 0 -k6_frac_2uripple_N8_22nm.xml fir_nopipe_52.v common 43.72 vpr 86.60 MiB 0.26 17816 -1 -1 1 1.01 -1 -1 44304 -1 -1 155 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88680 22 19 4598 3308 1 2668 210 24 24 576 mult_36 auto 49.7 MiB 2.33 18532 46386 10003 31724 4659 86.6 MiB 1.87 0.02 8.22439 -1032.19 -8.22439 8.22439 2.80 0.0106873 0.0097131 0.88791 0.761708 76 30729 38 1.60519e+07 7.8249e+06 2.61600e+06 4541.67 25.29 4.41825 3.87013 68478 680951 -1 26003 24 21173 24714 4525143 942393 0 0 4525143 942393 23226 21482 0 0 174374 163238 0 0 233169 184985 0 0 23232 21683 0 0 2020183 279836 0 0 2050959 271169 0 0 23226 0 0 2081 8705 10280 35248 1542 271 9.75871 9.75871 -1525.9 -9.75871 0 0 3.24203e+06 5628.53 1.79 1.84 0.84 -1 -1 1.79 0.579937 0.520845 1127 1007 969 19 0 0 -k6_frac_N8_22nm.xml fir_pipe_14.v common 13.89 vpr 72.85 MiB 0.08 10904 -1 -1 8 0.80 -1 -1 40032 -1 -1 79 22 0 4 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74600 22 19 1764 1664 1 1014 124 16 16 256 mult_36 auto 34.5 MiB 0.72 6664 13102 2674 9357 1071 72.9 MiB 0.37 0.01 4.14666 -1180.14 -4.14666 4.14666 1.03 0.00404194 0.0036048 0.200575 0.178126 64 12636 47 6.45408e+06 2.64829e+06 943753. 3686.54 6.92 1.45611 1.29919 27332 240185 -1 10626 20 4178 7293 728400 168528 0 0 728400 168528 6569 4740 0 0 39556 34420 0 0 55029 44433 0 0 6575 5051 0 0 308976 39672 0 0 311695 40212 0 0 6569 0 0 2411 5419 6027 20354 754 76 4.27196 4.27196 -1382.72 -4.27196 0 0 1.19033e+06 4649.74 0.60 0.45 0.30 -1 -1 0.60 0.21618 0.197478 599 909 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_15.v common 12.39 vpr 73.70 MiB 0.09 11028 -1 -1 8 0.78 -1 -1 40156 -1 -1 85 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75468 22 19 1918 1801 1 1104 131 16 16 256 mult_36 auto 35.4 MiB 0.70 6819 20383 4413 13963 2007 73.7 MiB 0.52 0.01 4.14666 -1318.66 -4.14666 4.14666 0.97 0.00408497 0.00364435 0.2738 0.240087 66 12680 27 6.45408e+06 3.12512e+06 974584. 3806.97 5.46 1.42848 1.2762 27588 246658 -1 10874 15 4247 7247 804377 184558 0 0 804377 184558 6535 4755 0 0 41153 36159 0 0 56450 45543 0 0 6542 5046 0 0 350320 46925 0 0 343377 46130 0 0 6535 0 0 2308 5360 5593 19099 735 63 4.39726 4.39726 -1522.76 -4.39726 0 0 1.22072e+06 4768.46 0.55 0.40 0.31 -1 -1 0.55 0.178917 0.163169 651 984 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_16.v common 15.31 vpr 73.93 MiB 0.09 11220 -1 -1 8 0.92 -1 -1 39964 -1 -1 87 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75704 22 19 1976 1859 1 1141 133 16 16 256 mult_36 auto 35.8 MiB 0.81 7432 17422 3550 11932 1940 73.9 MiB 0.52 0.01 4.02136 -1345.26 -4.02136 4.02136 1.03 0.00488538 0.00439579 0.279835 0.247703 68 13673 46 6.45408e+06 3.15206e+06 1.00038e+06 3907.74 7.88 1.65673 1.47841 27844 252052 -1 11526 15 4468 7810 833090 191642 0 0 833090 191642 7088 4941 0 0 41370 36158 0 0 56711 45253 0 0 7096 5332 0 0 365242 49350 0 0 355583 50608 0 0 7088 0 0 2641 5881 6181 21389 809 25 4.39726 4.39726 -1519.31 -4.39726 0 0 1.24648e+06 4869.04 0.57 0.47 0.31 -1 -1 0.57 0.226239 0.206959 679 1023 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_17.v common 16.58 vpr 75.54 MiB 0.10 12020 -1 -1 8 1.01 -1 -1 40236 -1 -1 102 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77356 22 19 2278 2144 1 1269 148 16 16 256 mult_36 auto 37.2 MiB 0.87 8156 19698 3949 13696 2053 75.5 MiB 0.53 0.01 4.02136 -1502.91 -4.02136 4.02136 1.06 0.00454066 0.00394685 0.275404 0.240858 66 15304 30 6.45408e+06 3.35414e+06 974584. 3806.97 8.70 1.90654 1.68602 27588 246658 -1 12833 16 5002 8726 981460 225554 0 0 981460 225554 7943 5676 0 0 48486 42499 0 0 66364 53533 0 0 7953 6013 0 0 429201 58956 0 0 421513 58877 0 0 7943 0 0 2961 6240 6809 24202 899 2 4.27196 4.27196 -1682 -4.27196 0 0 1.22072e+06 4768.46 0.63 0.52 0.32 -1 -1 0.63 0.235401 0.215325 768 1171 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_18.v common 20.12 vpr 75.67 MiB 0.10 12132 -1 -1 8 1.07 -1 -1 39792 -1 -1 105 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77488 22 19 2336 2202 1 1299 151 16 16 256 mult_36 auto 37.4 MiB 0.89 8121 20602 3995 14560 2047 75.7 MiB 0.60 0.01 4.02136 -1558.46 -4.02136 4.02136 1.03 0.00586204 0.00518969 0.332904 0.295185 66 15696 27 6.45408e+06 3.39456e+06 974584. 3806.97 12.12 2.2436 2.00284 27588 246658 -1 13264 19 5393 9431 1056805 236032 0 0 1056805 236032 8580 6155 0 0 51808 45458 0 0 71483 56888 0 0 8585 6470 0 0 452163 60334 0 0 464186 60727 0 0 8580 0 0 3210 6926 7384 26933 910 28 4.27196 4.27196 -1805.45 -4.27196 0 0 1.22072e+06 4768.46 0.53 0.56 0.30 -1 -1 0.53 0.260132 0.237522 794 1210 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_19.v common 43.66 vpr 76.41 MiB 0.11 12668 -1 -1 8 1.15 -1 -1 40124 -1 -1 111 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78248 22 19 2488 2337 1 1399 158 16 16 256 mult_36 auto 38.3 MiB 0.92 9918 21935 4288 15894 1753 76.4 MiB 0.66 0.01 4.14666 -1722.94 -4.14666 4.14666 1.02 0.00524038 0.00462704 0.359983 0.317228 72 19324 46 6.45408e+06 3.87139e+06 1.04740e+06 4091.43 35.29 3.78117 3.34931 28608 268066 -1 15143 15 5784 10129 1151207 254757 0 0 1151207 254757 9148 6687 0 0 55827 48504 0 0 77762 62049 0 0 9159 7172 0 0 491791 67658 0 0 507520 62687 0 0 9148 0 0 3385 8626 7848 27877 1050 53 4.52256 4.52256 -1979.93 -4.52256 0 0 1.31294e+06 5128.69 0.57 0.57 0.33 -1 -1 0.57 0.252103 0.23138 837 1285 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_20.v common 37.04 vpr 76.88 MiB 0.11 12972 -1 -1 8 1.25 -1 -1 40376 -1 -1 114 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78720 22 19 2546 2395 1 1440 161 16 16 256 mult_36 auto 38.8 MiB 0.94 9776 22011 4300 15801 1910 76.9 MiB 0.64 0.01 4.14666 -1761.21 -4.14666 4.14666 0.99 0.00584505 0.00530053 0.337267 0.300831 70 18423 48 6.45408e+06 3.91181e+06 1.02522e+06 4004.78 28.75 3.8668 3.42121 28352 262101 -1 15360 14 5912 10709 1123081 247202 0 0 1123081 247202 9672 6878 0 0 57430 49669 0 0 80347 63804 0 0 9676 7352 0 0 478265 60941 0 0 487691 58558 0 0 9672 0 0 3781 8441 9510 31546 1100 12 4.39726 4.39726 -1938.48 -4.39726 0 0 1.29210e+06 5047.26 0.58 0.57 0.32 -1 -1 0.58 0.257632 0.236159 867 1324 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_21.v common 19.53 vpr 77.73 MiB 0.12 13132 -1 -1 8 1.35 -1 -1 40904 -1 -1 122 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79600 22 19 2735 2567 1 1547 169 16 16 256 mult_36 auto 39.7 MiB 1.04 11045 23519 4486 17027 2006 77.7 MiB 0.68 0.01 4.27196 -1939.62 -4.27196 4.27196 1.04 0.00652748 0.00587477 0.362536 0.321268 74 20417 50 6.45408e+06 4.01958e+06 1.07073e+06 4182.55 10.47 2.36942 2.11246 28864 273460 -1 16295 15 6248 10895 1207206 266320 0 0 1207206 266320 9851 7095 0 0 58416 50953 0 0 80422 64052 0 0 9861 7621 0 0 522772 69294 0 0 525884 67305 0 0 9851 0 0 3624 8869 8800 30504 1108 81 4.64786 4.64786 -2206.41 -4.64786 0 0 1.33358e+06 5209.30 0.60 0.66 0.34 -1 -1 0.60 0.301036 0.277507 931 1417 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_22.v common 18.16 vpr 77.77 MiB 0.15 13292 -1 -1 8 1.43 -1 -1 40676 -1 -1 126 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79640 22 19 2793 2625 1 1580 173 16 16 256 mult_36 auto 40.3 MiB 1.08 11763 29514 6159 20835 2520 77.8 MiB 0.84 0.01 4.27196 -1979.74 -4.27196 4.27196 1.04 0.00575434 0.00499785 0.43529 0.378164 74 20513 30 6.45408e+06 4.07347e+06 1.07073e+06 4182.55 8.59 2.26916 1.99997 28864 273460 -1 17593 17 6605 11928 1293795 283414 0 0 1293795 283414 10715 7508 0 0 58953 51052 0 0 84270 65861 0 0 10722 8075 0 0 561555 76090 0 0 567580 74828 0 0 10715 0 0 4133 9984 10936 35115 1281 399 4.52256 4.52256 -2185.38 -4.52256 0 0 1.33358e+06 5209.30 0.61 0.70 0.35 -1 -1 0.61 0.319794 0.293421 962 1456 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_23.v common 27.01 vpr 78.45 MiB 0.13 13780 -1 -1 8 1.46 -1 -1 42636 -1 -1 131 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80336 22 19 2947 2762 1 1693 179 18 18 324 mult_36 auto 41.0 MiB 1.24 11113 28403 5589 20590 2224 78.5 MiB 0.81 0.01 4.14666 -2006.09 -4.14666 4.14666 1.43 0.00667045 0.00593177 0.432369 0.382647 76 19209 19 7.94662e+06 4.53683e+06 1.43297e+06 4422.75 16.07 3.00248 2.68068 37464 369264 -1 16989 17 6359 11099 1188152 263209 0 0 1188152 263209 10123 7077 0 0 57569 50072 0 0 81446 64250 0 0 10139 7570 0 0 518327 66040 0 0 510548 68200 0 0 10123 0 0 3784 7029 9901 31809 1065 284 4.39726 4.39726 -2250.68 -4.39726 0 0 1.77541e+06 5479.65 0.90 0.74 0.46 -1 -1 0.90 0.378844 0.347617 1008 1531 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_24.v common 30.10 vpr 78.70 MiB 0.13 13856 -1 -1 8 1.59 -1 -1 41172 -1 -1 135 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80592 22 19 3005 2820 1 1720 183 18 18 324 mult_36 auto 41.3 MiB 1.17 11269 28209 5786 20524 1899 78.7 MiB 0.85 0.01 4.14666 -2096.61 -4.14666 4.14666 1.40 0.006685 0.00579621 0.456572 0.402866 76 20259 25 7.94662e+06 4.59072e+06 1.43297e+06 4422.75 19.26 3.87613 3.44563 37464 369264 -1 17718 15 6826 12150 1243757 264405 0 0 1243757 264405 10860 7749 0 0 61721 53644 0 0 87832 69083 0 0 10862 8252 0 0 531454 64442 0 0 541028 61235 0 0 10860 0 0 4055 9994 10359 33841 1340 274 4.39726 4.39726 -2417.41 -4.39726 0 0 1.77541e+06 5479.65 0.87 0.67 0.43 -1 -1 0.87 0.330745 0.305601 1039 1570 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_25.v common 23.48 vpr 80.11 MiB 0.17 14404 -1 -1 8 1.72 -1 -1 41792 -1 -1 145 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82036 22 19 3229 3027 1 1824 193 18 18 324 mult_36 auto 42.8 MiB 1.26 12146 32499 6571 23606 2322 80.1 MiB 0.94 0.02 4.02136 -2210.67 -4.02136 4.02136 1.39 0.00735086 0.00636019 0.498835 0.443044 70 22876 32 7.94662e+06 4.72544e+06 1.34436e+06 4149.26 12.01 2.73802 2.43557 36496 347204 -1 19498 16 7528 13309 1521825 333075 0 0 1521825 333075 11953 8509 0 0 73143 63534 0 0 101441 81030 0 0 11957 9110 0 0 657399 85503 0 0 665932 85389 0 0 11953 0 0 4445 10497 11412 37696 1407 113 4.27196 4.27196 -2576.71 -4.27196 0 0 1.69344e+06 5226.66 0.81 0.83 0.43 -1 -1 0.81 0.389668 0.356563 1106 1681 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_26.v common 22.36 vpr 80.23 MiB 0.15 14640 -1 -1 8 1.88 -1 -1 43472 -1 -1 151 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82156 22 19 3287 3085 1 1862 199 18 18 324 mult_36 auto 42.9 MiB 1.47 13093 34419 7437 24506 2476 80.2 MiB 0.96 0.02 4.02136 -2277.85 -4.02136 4.02136 1.43 0.00854659 0.00777814 0.488361 0.431267 76 24388 47 7.94662e+06 4.80627e+06 1.43297e+06 4422.75 10.24 2.94578 2.62709 37464 369264 -1 20369 15 7693 13714 1547332 329724 0 0 1547332 329724 12311 8649 0 0 69684 61044 0 0 98769 77686 0 0 12311 9125 0 0 674007 87849 0 0 680250 85371 0 0 12311 0 0 4642 11348 12117 39977 1437 129 4.27196 4.27196 -2631.97 -4.27196 0 0 1.77541e+06 5479.65 0.85 0.85 0.45 -1 -1 0.85 0.378399 0.347552 1134 1720 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_27.v common 33.82 vpr 82.24 MiB 0.15 14888 -1 -1 8 1.91 -1 -1 42268 -1 -1 156 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84212 22 19 3453 3234 1 1964 205 18 18 324 mult_36 auto 43.8 MiB 1.33 14116 32821 6249 23775 2797 82.2 MiB 0.98 0.02 4.02136 -2356.9 -4.02136 4.02136 1.39 0.00887815 0.00814232 0.513659 0.458125 84 23609 29 7.94662e+06 5.26963e+06 1.56068e+06 4816.91 21.69 4.96192 4.42012 39404 412444 -1 20565 16 7171 12732 1510670 312794 0 0 1510670 312794 11557 7965 0 0 65334 57012 0 0 90341 71366 0 0 11563 8541 0 0 661529 82986 0 0 670346 84924 0 0 11557 0 0 4409 10555 10708 37208 1252 490 4.39726 4.39726 -2647.88 -4.39726 0 0 1.97679e+06 6101.21 0.95 0.80 0.54 -1 -1 0.95 0.35686 0.325414 1189 1795 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_28.v common 31.72 vpr 82.79 MiB 0.16 15044 -1 -1 8 1.98 -1 -1 42348 -1 -1 160 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84780 22 19 3511 3292 1 2001 209 18 18 324 mult_36 auto 44.5 MiB 1.39 13669 33069 6642 23963 2464 82.8 MiB 0.92 0.02 4.02136 -2389.87 -4.02136 4.02136 1.36 0.00807916 0.0070948 0.458533 0.40528 76 24180 29 7.94662e+06 5.32352e+06 1.43297e+06 4422.75 19.74 3.91222 3.49125 37464 369264 -1 20750 15 7758 14023 1539620 337593 0 0 1539620 337593 12490 8607 0 0 70581 61485 0 0 100388 79261 0 0 12497 9270 0 0 668938 89190 0 0 674726 89780 0 0 12490 0 0 4755 12193 12437 39978 1604 38 4.39726 4.39726 -2817.57 -4.39726 0 0 1.77541e+06 5479.65 0.86 0.87 0.45 -1 -1 0.86 0.404982 0.372211 1221 1834 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_29.v common 45.68 vpr 83.64 MiB 0.21 15484 -1 -1 8 2.15 -1 -1 42344 -1 -1 168 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85648 22 19 3709 3473 1 2127 218 22 22 484 mult_36 auto 45.3 MiB 1.49 14626 41483 8877 29818 2788 83.6 MiB 1.24 0.02 4.02136 -2545.74 -4.02136 4.02136 2.33 0.00872282 0.00792121 0.641618 0.562404 70 26461 27 1.29336e+07 5.8273e+06 2.06816e+06 4273.05 30.20 5.43925 4.85257 55234 538945 -1 23081 15 8609 15455 1628084 346056 0 0 1628084 346056 13674 9748 0 0 81728 70734 0 0 115101 90648 0 0 13675 10395 0 0 697171 82348 0 0 706735 82183 0 0 13674 0 0 5087 13443 14169 43135 1820 464 4.39726 4.39726 -3111.82 -4.39726 0 0 2.60483e+06 5381.88 1.40 0.91 0.67 -1 -1 1.40 0.42913 0.393783 1281 1927 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_30.v common 32.79 vpr 83.82 MiB 0.16 15636 -1 -1 8 2.21 -1 -1 44624 -1 -1 170 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85832 22 19 3767 3531 1 2168 220 22 22 484 mult_36 auto 45.6 MiB 1.47 15943 41989 8943 30124 2922 83.8 MiB 1.20 0.02 4.02136 -2629.36 -4.02136 4.02136 2.25 0.00889462 0.00796562 0.5968 0.517929 70 30161 40 1.29336e+07 5.85424e+06 2.06816e+06 4273.05 17.47 3.51029 3.11176 55234 538945 -1 25048 15 9108 16471 1900000 394197 0 0 1900000 394197 14570 10375 0 0 84622 73102 0 0 121852 94487 0 0 14571 11045 0 0 826445 104809 0 0 837940 100379 0 0 14570 0 0 5486 14170 16028 47495 1944 804 4.64786 4.64786 -3181.76 -4.64786 0 0 2.60483e+06 5381.88 1.38 0.99 0.67 -1 -1 1.38 0.423375 0.38826 1309 1966 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_31.v common 48.01 vpr 84.61 MiB 0.17 16024 -1 -1 8 2.28 -1 -1 44832 -1 -1 177 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86636 22 19 3928 3675 1 2252 227 22 22 484 mult_36 auto 46.3 MiB 1.54 15600 43823 9012 31613 3198 84.6 MiB 1.31 0.02 3.89606 -2728.48 -3.89606 3.89606 2.24 0.00908368 0.00816195 0.666385 0.582793 72 29970 38 1.29336e+07 5.94854e+06 2.11301e+06 4365.72 32.11 5.60765 4.98503 55718 550791 -1 24766 18 9139 16187 1886962 392100 0 0 1886962 392100 14584 10411 0 0 85157 74162 0 0 121443 95712 0 0 14585 11113 0 0 816672 101930 0 0 834521 98772 0 0 14584 0 0 5468 14101 14057 47105 1637 350 4.39726 4.39726 -3204.5 -4.39726 0 0 2.64603e+06 5467.00 1.40 1.07 0.65 -1 -1 1.40 0.504572 0.463114 1363 2041 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_32.v common 34.39 vpr 84.96 MiB 0.17 16280 -1 -1 8 2.40 -1 -1 44928 -1 -1 181 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87000 22 19 3986 3733 1 2287 231 22 22 484 mult_36 auto 46.7 MiB 1.58 16835 42003 9065 30098 2840 85.0 MiB 1.35 0.02 4.02136 -2767.1 -4.02136 4.02136 2.34 0.0109664 0.00990139 0.706022 0.6182 74 31484 45 1.29336e+07 6.00243e+06 2.15943e+06 4461.62 18.16 4.12458 3.68451 56202 562081 -1 25894 15 9358 16648 1956614 401228 0 0 1956614 401228 14981 10472 0 0 83905 72531 0 0 118856 93169 0 0 14984 11212 0 0 858194 108576 0 0 865694 105268 0 0 14981 0 0 5643 13859 15862 49018 1697 12 4.52256 4.52256 -3205.73 -4.52256 0 0 2.68771e+06 5553.12 1.46 1.05 0.71 -1 -1 1.46 0.458093 0.420578 1391 2080 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_33.v common 34.72 vpr 86.74 MiB 0.18 17188 -1 -1 8 2.42 -1 -1 44124 -1 -1 192 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88820 22 19 4329 4059 1 2422 243 22 22 484 mult_36 auto 48.5 MiB 1.56 17478 44965 9795 32006 3164 86.7 MiB 1.34 0.02 4.14666 -2966.64 -4.14666 4.14666 2.14 0.010614 0.00961806 0.692206 0.611936 74 32350 30 1.29336e+07 6.54662e+06 2.15943e+06 4461.62 18.95 3.89568 3.45258 56202 562081 -1 27307 16 9988 17781 2371597 490882 0 0 2371597 490882 15952 11220 0 0 93348 81584 0 0 130952 103364 0 0 15956 12053 0 0 1049233 140018 0 0 1066156 142643 0 0 15952 0 0 5987 14572 15146 51353 1884 339 4.52256 4.52256 -3624.28 -4.52256 0 0 2.68771e+06 5553.12 1.42 1.14 0.61 -1 -1 1.42 0.453014 0.415025 1494 2246 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_34.v common 48.08 vpr 88.36 MiB 0.19 17552 -1 -1 8 2.67 -1 -1 45492 -1 -1 198 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90484 22 19 4387 4117 1 2459 249 22 22 484 mult_36 auto 49.0 MiB 1.69 17850 54276 12475 38219 3582 87.2 MiB 1.45 0.02 4.02136 -2976 -4.02136 4.02136 2.50 0.00931973 0.00824558 0.692633 0.599178 78 30456 28 1.29336e+07 6.62746e+06 2.25108e+06 4650.99 30.83 5.8101 5.1176 57650 594765 -1 26938 13 9460 17667 1964348 407326 0 0 1964348 407326 15595 10695 0 0 89023 76322 0 0 127632 99879 0 0 15617 11458 0 0 851232 103965 0 0 865249 105007 0 0 15595 0 0 6156 16328 16985 51593 2228 1105 4.39726 4.39726 -3537.84 -4.39726 0 0 2.82299e+06 5832.63 1.56 1.00 0.76 -1 -1 1.56 0.441747 0.405305 1521 2285 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_35.v common 48.78 vpr 88.48 MiB 0.21 17824 -1 -1 8 2.78 -1 -1 44740 -1 -1 208 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90600 22 19 4547 4260 1 2575 259 22 22 484 mult_36 auto 49.9 MiB 1.68 17782 53884 12401 37964 3519 88.1 MiB 1.52 0.02 4.02136 -3114.87 -4.02136 4.02136 2.24 0.00964828 0.00866292 0.758445 0.654193 72 34116 44 1.29336e+07 6.76218e+06 2.11301e+06 4365.72 31.85 6.24985 5.54014 55718 550791 -1 27471 15 10083 17718 2035514 440756 0 0 2035514 440756 16000 11290 0 0 95101 82826 0 0 134183 106212 0 0 16007 12037 0 0 884972 112899 0 0 889251 115492 0 0 16000 0 0 5936 13624 15295 50565 1770 263 4.52256 4.52256 -3704.08 -4.52256 0 0 2.64603e+06 5467.00 1.46 1.10 0.62 -1 -1 1.46 0.493472 0.450683 1571 2360 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_36.v common 36.89 vpr 88.39 MiB 0.21 18020 -1 -1 8 2.94 -1 -1 46000 -1 -1 210 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90508 22 19 4605 4318 1 2609 261 22 22 484 mult_36 auto 50.3 MiB 1.77 18420 46909 9370 34397 3142 88.4 MiB 1.29 0.02 4.02136 -3107.21 -4.02136 4.02136 2.37 0.00923773 0.00807134 0.609792 0.533195 74 33138 44 1.29336e+07 6.78912e+06 2.15943e+06 4461.62 19.12 4.67499 4.13907 56202 562081 -1 28472 17 10699 19480 2080386 437516 0 0 2080386 437516 17345 12005 0 0 97051 84088 0 0 139016 108013 0 0 17355 12933 0 0 891632 111950 0 0 917987 108527 0 0 17345 0 0 6669 15697 18466 56743 2197 215 4.39726 4.39726 -3759.76 -4.39726 0 0 2.68771e+06 5553.12 1.50 1.12 0.78 -1 -1 1.50 0.517516 0.470263 1597 2399 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_37.v common 40.28 vpr 88.99 MiB 0.21 18272 -1 -1 8 3.01 -1 -1 44920 -1 -1 218 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91128 22 19 4802 4498 1 2726 270 24 24 576 mult_36 auto 51.3 MiB 1.85 19138 58694 13552 41586 3556 89.0 MiB 1.66 0.02 4.14666 -3404.17 -4.14666 4.14666 2.77 0.0113928 0.00994905 0.81469 0.705922 74 36242 48 1.56141e+07 7.2929e+06 2.56259e+06 4448.94 20.63 4.7161 4.1376 66498 666725 -1 29793 19 10842 19238 2120627 452849 0 0 2120627 452849 17338 12393 0 0 99364 86365 0 0 139909 110157 0 0 17341 13107 0 0 920852 118032 0 0 925823 112795 0 0 17338 0 0 6521 16195 15616 55091 1949 243 4.52256 4.52256 -3946.4 -4.52256 0 0 3.19068e+06 5539.38 1.80 1.31 0.83 -1 -1 1.80 0.652825 0.593242 1661 2492 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_38.v common 38.05 vpr 89.61 MiB 0.22 18664 -1 -1 8 3.01 -1 -1 45868 -1 -1 221 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91756 22 19 4860 4556 1 2764 273 24 24 576 mult_36 auto 51.9 MiB 1.87 20168 56028 12882 40116 3030 89.6 MiB 1.53 0.02 4.27196 -3479.6 -4.27196 4.27196 2.72 0.0108816 0.00970814 0.733402 0.640301 74 36841 42 1.56141e+07 7.33331e+06 2.56259e+06 4448.94 18.56 4.12037 3.61067 66498 666725 -1 30493 15 10948 19429 2302217 474028 0 0 2302217 474028 17489 12378 0 0 99887 86666 0 0 140262 110660 0 0 17494 13150 0 0 1010512 124603 0 0 1016573 126571 0 0 17489 0 0 6561 15325 17660 55724 1982 296 4.52256 4.52256 -4019.72 -4.52256 0 0 3.19068e+06 5539.38 1.80 1.29 0.80 -1 -1 1.80 0.573815 0.517499 1689 2531 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_39.v common 45.70 vpr 90.60 MiB 0.22 18960 -1 -1 8 3.35 -1 -1 47380 -1 -1 226 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92772 22 19 5019 4698 1 2868 278 24 24 576 mult_36 auto 52.8 MiB 1.95 21602 64675 15117 45087 4471 90.6 MiB 1.98 0.03 4.14666 -3593.28 -4.14666 4.14666 2.81 0.0127479 0.0114782 0.966554 0.839242 80 36147 24 1.56141e+07 7.40067e+06 2.72095e+06 4723.87 24.95 5.6261 4.95672 68798 719145 -1 31904 15 11144 20281 2294575 479065 0 0 2294575 479065 17979 12407 0 0 104353 90329 0 0 147202 114965 0 0 17984 13299 0 0 1009015 124965 0 0 998042 123100 0 0 17979 0 0 6858 19846 19164 60069 2355 394 4.52256 4.52256 -4218.17 -4.52256 0 0 3.41546e+06 5929.62 1.89 1.24 0.91 -1 -1 1.89 0.561314 0.50874 1735 2606 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_40.v common 52.73 vpr 90.75 MiB 0.22 19252 -1 -1 8 3.44 -1 -1 47128 -1 -1 230 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92932 22 19 5077 4756 1 2904 282 24 24 576 mult_36 auto 53.1 MiB 1.95 21930 63114 14180 45079 3855 90.8 MiB 2.00 0.03 4.14666 -3671.85 -4.14666 4.14666 2.81 0.0126096 0.0113516 0.996068 0.852617 78 37452 31 1.56141e+07 7.45456e+06 2.67122e+06 4637.53 31.98 5.93748 5.19954 68222 705597 -1 32547 15 11173 20159 2383501 489537 0 0 2383501 489537 18099 12658 0 0 103315 88510 0 0 148007 116062 0 0 18106 13539 0 0 1046143 128837 0 0 1049831 129931 0 0 18099 0 0 6948 19182 18386 60767 2143 434 4.52256 4.52256 -4196.53 -4.52256 0 0 3.35110e+06 5817.88 1.90 1.23 0.89 -1 -1 1.90 0.558153 0.508531 1765 2645 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_41.v common 47.17 vpr 91.71 MiB 0.24 19784 -1 -1 8 3.75 -1 -1 47256 -1 -1 239 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93912 22 19 5308 4970 1 3021 292 24 24 576 mult_36 auto 54.0 MiB 2.04 21921 61276 13732 43962 3582 91.7 MiB 1.95 0.03 4.14666 -3885.06 -4.14666 4.14666 2.85 0.0141306 0.0115793 0.977966 0.845721 74 41442 40 1.56141e+07 7.97181e+06 2.56259e+06 4448.94 26.13 6.04823 5.34257 66498 666725 -1 34399 16 12392 22585 2712645 561258 0 0 2712645 561258 20235 14117 0 0 115074 100193 0 0 165733 128495 0 0 20237 15139 0 0 1203007 151786 0 0 1188359 151528 0 0 20235 0 0 7862 18322 21184 67108 2395 243 4.64786 4.64786 -4544 -4.64786 0 0 3.19068e+06 5539.38 1.71 1.36 0.79 -1 -1 1.71 0.576539 0.526042 1838 2756 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_42.v common 49.92 vpr 92.13 MiB 0.26 19688 -1 -1 8 4.23 -1 -1 47592 -1 -1 242 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94344 22 19 5366 5028 1 3055 295 24 24 576 mult_36 auto 54.5 MiB 2.12 22765 64060 13933 46446 3681 92.1 MiB 1.97 0.03 4.27196 -3912.77 -4.27196 4.27196 2.88 0.0120942 0.0109364 0.967548 0.848664 76 41720 41 1.56141e+07 8.01222e+06 2.61600e+06 4541.67 27.80 6.07161 5.34696 67070 679911 -1 34429 14 12211 22276 2766516 562588 0 0 2766516 562588 20085 13825 0 0 114071 99435 0 0 161534 126877 0 0 20086 14813 0 0 1202828 157102 0 0 1247912 150536 0 0 20085 0 0 7894 21361 20089 68394 2215 468 4.64786 4.64786 -4389.56 -4.64786 0 0 3.24203e+06 5628.53 1.79 1.41 0.78 -1 -1 1.79 0.601613 0.549708 1862 2795 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_43.v common 61.36 vpr 101.62 MiB 0.25 20212 -1 -1 8 4.03 -1 -1 47504 -1 -1 255 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 104060 22 19 5524 5169 1 3162 308 24 24 576 mult_36 auto 55.3 MiB 2.14 22483 63687 13981 46149 3557 92.1 MiB 1.78 0.03 4.27196 -3937.42 -4.27196 4.27196 2.75 0.0114234 0.00992917 0.812768 0.701236 78 39808 34 1.56141e+07 8.18736e+06 2.67122e+06 4637.53 39.60 7.05149 6.17166 68222 705597 -1 33874 16 12428 22400 2468209 524808 0 0 2468209 524808 20252 14065 0 0 118048 102512 0 0 168926 132363 0 0 20274 15126 0 0 1043767 137045 0 0 1096942 123697 0 0 20252 0 0 7846 17984 18956 66542 2233 651 4.52256 4.52256 -4506.46 -4.52256 0 0 3.35110e+06 5817.88 1.87 1.35 0.89 -1 -1 1.87 0.612236 0.557362 1916 2870 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_44.v common 68.49 vpr 109.82 MiB 0.26 20216 -1 -1 8 4.31 -1 -1 46524 -1 -1 254 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 112456 22 19 5582 5227 1 3204 307 24 24 576 mult_36 auto 55.7 MiB 2.26 24330 70687 16444 49969 4274 92.3 MiB 2.37 0.03 4.27196 -4171.59 -4.27196 4.27196 2.89 0.0160603 0.0143136 1.1826 1.02285 84 40728 28 1.56141e+07 8.17389e+06 2.84938e+06 4946.85 44.96 8.71569 7.62472 70522 759407 -1 34826 15 11962 21935 2279412 468656 0 0 2279412 468656 19539 13296 0 0 108805 94381 0 0 150839 118027 0 0 19544 14126 0 0 1002942 114775 0 0 977743 114051 0 0 19539 0 0 7597 19460 20551 64890 2422 1805 4.64786 4.64786 -4644.69 -4.64786 0 0 3.60864e+06 6265.01 2.05 1.45 0.97 -1 -1 2.05 0.723036 0.653437 1945 2909 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_45.v common 48.23 vpr 95.17 MiB 0.26 20620 -1 -1 8 4.65 -1 -1 46788 -1 -1 262 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97456 22 19 5779 5407 1 3306 316 24 24 576 mult_36 auto 56.8 MiB 2.24 25034 68041 14651 49295 4095 93.4 MiB 2.09 0.03 4.27196 -4178.46 -4.27196 4.27196 2.82 0.0134398 0.0121997 1.01177 0.894467 76 46786 49 1.56141e+07 8.67766e+06 2.61600e+06 4541.67 25.24 5.76491 5.04522 67070 679911 -1 37732 18 13508 24051 2737094 586006 0 0 2737094 586006 21735 15187 0 0 123801 108401 0 0 173955 137726 0 0 21741 16113 0 0 1206432 154060 0 0 1189430 154519 0 0 21735 0 0 8250 19983 21806 71282 2360 405 4.52256 4.52256 -4773.24 -4.52256 0 0 3.24203e+06 5628.53 1.81 1.57 0.82 -1 -1 1.81 0.73762 0.669281 2012 3002 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_46.v common 66.40 vpr 109.94 MiB 0.27 20788 -1 -1 8 4.68 -1 -1 45072 -1 -1 267 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 112576 22 19 5837 5465 1 3341 321 24 24 576 mult_36 auto 57.3 MiB 2.27 25644 73887 16653 53223 4011 93.7 MiB 2.26 0.03 4.52256 -4257.26 -4.52256 4.52256 2.81 0.0160172 0.0147082 1.12343 0.957201 80 43843 35 1.56141e+07 8.74502e+06 2.72095e+06 4723.87 42.81 8.62438 7.53033 68798 719145 -1 37148 14 13237 23919 2880871 587396 0 0 2880871 587396 21491 14774 0 0 124526 107743 0 0 175294 137183 0 0 21495 15868 0 0 1259699 155919 0 0 1278366 155909 0 0 21491 0 0 8277 20495 21344 70777 2473 279 4.52256 4.52256 -4938.58 -4.52256 0 0 3.41546e+06 5929.62 1.89 1.47 0.94 -1 -1 1.89 0.626648 0.56894 2043 3041 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_47.v common 43.36 vpr 96.57 MiB 0.26 21352 -1 -1 8 5.17 -1 -1 48960 -1 -1 275 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98888 22 19 5997 5608 1 3446 329 24 24 576 mult_36 auto 58.2 MiB 2.37 24110 77509 17211 55838 4460 96.6 MiB 2.36 0.03 4.27196 -4282.3 -4.27196 4.27196 2.88 0.0128513 0.0113314 1.1193 0.959885 76 42542 36 1.56141e+07 8.8528e+06 2.61600e+06 4541.67 19.10 5.68333 4.98144 67070 679911 -1 36351 17 13545 24308 2591043 559374 0 0 2591043 559374 21615 15172 0 0 123414 107614 0 0 174982 137753 0 0 21631 16200 0 0 1113780 142781 0 0 1135621 139854 0 0 21615 0 0 8094 22794 21754 69548 2789 1301 4.39726 4.39726 -4835.06 -4.39726 0 0 3.24203e+06 5628.53 1.81 1.57 0.82 -1 -1 1.81 0.780941 0.705095 2100 3116 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_48.v common 66.10 vpr 112.95 MiB 0.28 21528 -1 -1 8 4.75 -1 -1 49408 -1 -1 279 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 115656 22 19 6055 5666 1 3477 333 24 24 576 mult_36 auto 58.4 MiB 2.41 25932 75278 17671 53045 4562 94.9 MiB 2.23 0.03 4.27196 -4460.71 -4.27196 4.27196 2.76 0.0149562 0.0132014 1.03519 0.89615 84 42976 29 1.56141e+07 8.90669e+06 2.84938e+06 4946.85 41.92 8.46335 7.41875 70522 759407 -1 37299 14 12769 23351 2483523 510303 0 0 2483523 510303 20604 14064 0 0 115458 99622 0 0 161747 125776 0 0 20606 14942 0 0 1097080 127361 0 0 1068028 128538 0 0 20604 0 0 7857 21327 22661 67889 2793 584 4.52256 4.52256 -5273.46 -4.52256 0 0 3.60864e+06 6265.01 2.02 1.45 0.95 -1 -1 2.02 0.679408 0.616833 2126 3155 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_49.v common 65.18 vpr 106.00 MiB 0.28 22032 -1 -1 8 5.06 -1 -1 49848 -1 -1 285 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 108548 22 19 6324 5918 1 3577 340 24 24 576 mult_36 auto 59.6 MiB 2.50 26212 77430 17317 56122 3991 97.9 MiB 2.30 0.04 4.27196 -4538.26 -4.27196 4.27196 2.78 0.0162433 0.0143151 1.06074 0.921042 80 42526 22 1.56141e+07 9.38352e+06 2.72095e+06 4723.87 40.56 8.57895 7.52821 68798 719145 -1 38585 16 13466 25118 2839673 589335 0 0 2839673 589335 21907 15120 0 0 130564 112575 0 0 182933 143354 0 0 21915 16087 0 0 1218295 150749 0 0 1264059 151450 0 0 21907 0 0 8463 23483 25824 71543 3336 2977 4.52256 4.52256 -5397.44 -4.52256 0 0 3.41546e+06 5929.62 1.92 1.67 0.88 -1 -1 1.92 0.803898 0.723681 2206 3284 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_50.v common 66.34 vpr 116.63 MiB 0.29 22348 -1 -1 8 5.28 -1 -1 50184 -1 -1 292 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 119428 22 19 6382 5976 1 3610 347 24 24 576 mult_36 auto 60.1 MiB 2.31 29603 80735 19508 56939 4288 98.3 MiB 2.51 0.04 4.39726 -4599.11 -4.39726 4.39726 2.59 0.0168367 0.0152727 1.22168 1.05926 86 47599 24 1.56141e+07 9.47782e+06 2.91907e+06 5067.82 41.81 8.12393 7.11155 71098 772847 -1 42391 15 14147 26247 3448867 707304 0 0 3448867 707304 23264 15818 0 0 137724 119432 0 0 198022 154888 0 0 23273 16916 0 0 1543591 195806 0 0 1522993 204444 0 0 23264 0 0 9139 25896 27589 80349 3058 2534 4.64786 4.64786 -5216.6 -4.64786 0 0 3.65856e+06 6351.67 1.97 1.83 0.86 -1 -1 1.97 0.777606 0.698131 2235 3323 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_51.v common 67.49 vpr 119.48 MiB 0.35 22440 -1 -1 8 4.94 -1 -1 50372 -1 -1 297 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 122348 22 19 6542 6119 1 3736 352 24 24 576 mult_36 auto 60.8 MiB 2.70 29625 82324 18681 59328 4315 99.0 MiB 2.33 0.03 4.27196 -4812.72 -4.27196 4.27196 2.99 0.012232 0.010655 1.02502 0.884164 90 45524 23 1.56141e+07 9.54518e+06 3.04237e+06 5281.89 41.66 7.57471 6.6027 72246 799350 -1 42081 16 13470 24154 2831822 578878 0 0 2831822 578878 21931 15167 0 0 123233 106399 0 0 173296 136790 0 0 21939 16124 0 0 1215384 157607 0 0 1276039 146791 0 0 21931 0 0 8484 22095 20810 74669 2291 1683 4.64786 4.64786 -5396.82 -4.64786 0 0 3.75721e+06 6522.94 2.12 1.65 1.06 -1 -1 2.12 0.740255 0.667408 2287 3398 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_pipe_52.v common 69.09 vpr 116.61 MiB 0.29 22612 -1 -1 8 5.17 -1 -1 49972 -1 -1 301 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 119404 22 19 6600 6177 1 3777 356 24 24 576 mult_36 auto 61.6 MiB 2.58 28901 84843 20280 60358 4205 97.9 MiB 2.84 0.04 4.27196 -4740.14 -4.27196 4.27196 2.83 0.0147933 0.013019 1.27002 1.09215 82 50332 45 1.56141e+07 9.59907e+06 2.78508e+06 4835.20 43.00 8.8453 7.72102 69370 733739 -1 42568 17 14996 27402 3182886 669200 0 0 3182886 669200 24679 16762 0 0 141235 122481 0 0 200776 156221 0 0 24682 17939 0 0 1408830 176069 0 0 1382684 179728 0 0 24679 0 0 9705 23052 27524 84614 2768 335 4.52256 4.52256 -5358.86 -4.52256 0 0 3.48632e+06 6052.64 2.15 1.89 0.97 -1 -1 2.15 0.793148 0.715452 2318 3437 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_14.v common 15.95 vpr 69.64 MiB 0.07 9480 -1 -1 10 0.79 -1 -1 38360 -1 -1 57 22 0 4 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71316 22 19 1149 1049 1 785 102 16 16 256 mult_36 auto 31.6 MiB 0.48 5145 12478 2744 8358 1376 69.6 MiB 0.32 0.01 12.0204 -361.379 -12.0204 12.0204 1.04 0.00286293 0.00253697 0.170484 0.152627 66 10869 33 6.45408e+06 2.3519e+06 974584. 3806.97 9.56 1.21233 1.09219 27588 246658 -1 9189 19 4915 9492 1127033 243842 0 0 1127033 243842 9492 5964 0 0 48360 43662 0 0 67002 52764 0 0 9916 6876 0 0 488757 68017 0 0 503506 66559 0 0 9492 0 0 4605 11868 10192 84267 0 0 12.432 12.432 -450.938 -12.432 0 0 1.22072e+06 4768.46 0.53 0.46 0.31 -1 -1 0.53 0.145283 0.133315 433 658 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_15.v common 15.52 vpr 70.39 MiB 0.07 9924 -1 -1 11 0.82 -1 -1 38704 -1 -1 63 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72084 22 19 1261 1144 1 857 109 16 16 256 mult_36 auto 32.3 MiB 0.48 5395 10509 2005 7313 1191 70.4 MiB 0.29 0.01 12.4748 -393.909 -12.4748 12.4748 1.03 0.00320479 0.00288465 0.152834 0.137439 64 11810 39 6.45408e+06 2.82874e+06 943753. 3686.54 9.10 1.15445 1.03823 27332 240185 -1 9510 20 4915 9487 1039433 229044 0 0 1039433 229044 9169 5787 0 0 49642 44570 0 0 67681 54201 0 0 9553 6492 0 0 446510 59098 0 0 456878 58896 0 0 9169 0 0 4280 9332 9526 57389 366 1 12.8934 12.8934 -535.676 -12.8934 0 0 1.19033e+06 4649.74 0.51 0.49 0.31 -1 -1 0.51 0.18197 0.167044 471 727 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_16.v common 17.80 vpr 70.56 MiB 0.08 9856 -1 -1 11 0.89 -1 -1 38424 -1 -1 70 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72256 22 19 1336 1219 1 919 116 16 16 256 mult_36 auto 32.8 MiB 0.53 5948 14780 3278 10093 1409 70.6 MiB 0.38 0.01 13.6285 -453.588 -13.6285 13.6285 0.99 0.00356778 0.0032506 0.199307 0.178567 66 12088 31 6.45408e+06 2.92304e+06 974584. 3806.97 11.11 1.46591 1.32202 27588 246658 -1 10357 17 5364 10362 1124164 244909 0 0 1124164 244909 10085 6001 0 0 52014 46827 0 0 71886 56895 0 0 10257 6758 0 0 480978 65705 0 0 498944 62723 0 0 10085 0 0 4747 10510 10132 65243 306 1 13.9183 13.9183 -613.288 -13.9183 0 0 1.22072e+06 4768.46 0.53 0.48 0.32 -1 -1 0.53 0.159993 0.146816 512 783 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_17.v common 19.99 vpr 71.21 MiB 0.09 10268 -1 -1 11 0.99 -1 -1 38744 -1 -1 77 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72916 22 19 1446 1312 1 981 123 16 16 256 mult_36 auto 33.3 MiB 0.54 6339 13543 2804 9517 1222 71.2 MiB 0.35 0.01 12.8431 -458.354 -12.8431 12.8431 1.01 0.00384813 0.00348759 0.182192 0.162909 66 13881 42 6.45408e+06 3.01734e+06 974584. 3806.97 13.10 1.92773 1.73081 27588 246658 -1 11329 17 5509 10716 1215329 271607 0 0 1215329 271607 10044 6527 0 0 59672 53858 0 0 78867 64483 0 0 10466 7492 0 0 530094 70786 0 0 526186 68461 0 0 10044 0 0 4561 8747 9203 38197 706 2 13.4303 13.4303 -614.774 -13.4303 0 0 1.22072e+06 4768.46 0.55 0.57 0.30 -1 -1 0.55 0.198379 0.183575 558 848 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_18.v common 19.98 vpr 71.47 MiB 0.08 10396 -1 -1 11 0.97 -1 -1 38592 -1 -1 79 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73184 22 19 1507 1373 1 1020 125 16 16 256 mult_36 auto 33.7 MiB 0.53 7248 13541 2520 9791 1230 71.5 MiB 0.38 0.01 13.0656 -433.002 -13.0656 13.0656 0.93 0.00406244 0.00368905 0.204522 0.181656 74 13642 26 6.45408e+06 3.04429e+06 1.07073e+06 4182.55 13.34 1.88405 1.69589 28864 273460 -1 11932 19 5628 11182 1180975 262989 0 0 1180975 262989 10593 6569 0 0 55427 49630 0 0 76701 60181 0 0 10917 7512 0 0 506113 69349 0 0 521224 69748 0 0 10593 0 0 4989 8935 9158 41120 688 2 14.0254 14.0254 -623.962 -14.0254 0 0 1.33358e+06 5209.30 0.58 0.54 0.31 -1 -1 0.58 0.211862 0.194882 576 890 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_19.v common 21.95 vpr 72.02 MiB 0.09 10828 -1 -1 11 1.11 -1 -1 38892 -1 -1 80 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73748 22 19 1596 1445 1 1103 127 16 16 256 mult_36 auto 34.3 MiB 0.62 7942 16396 3315 11447 1634 72.0 MiB 0.50 0.01 13.4135 -482.658 -13.4135 13.4135 1.04 0.00466722 0.00424096 0.266442 0.236449 82 14635 28 6.45408e+06 3.45376e+06 1.16272e+06 4541.86 14.23 2.10364 1.89639 30136 301062 -1 12935 18 6046 12207 1258234 273092 0 0 1258234 273092 11425 7043 0 0 60894 54548 0 0 84335 66082 0 0 11836 8027 0 0 539910 68897 0 0 549834 68495 0 0 11425 0 0 5404 9892 10533 44057 874 18 13.7894 13.7894 -611.175 -13.7894 0 0 1.45847e+06 5697.13 0.65 0.55 0.45 -1 -1 0.65 0.194493 0.178401 615 938 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_20.v common 16.46 vpr 72.38 MiB 0.10 11032 -1 -1 11 1.18 -1 -1 39136 -1 -1 86 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74112 22 19 1656 1505 1 1131 133 16 16 256 mult_36 auto 34.6 MiB 0.66 8031 16066 3132 11427 1507 72.4 MiB 0.50 0.01 13.1944 -495.967 -13.1944 13.1944 1.04 0.00492911 0.00451226 0.26545 0.236238 72 16376 40 6.45408e+06 3.53459e+06 1.04740e+06 4091.43 8.61 1.70139 1.51829 28608 268066 -1 13419 19 6924 13986 1383970 305892 0 0 1383970 305892 13084 8257 0 0 69263 62209 0 0 99187 76707 0 0 13599 9171 0 0 585068 77949 0 0 603769 71599 0 0 13084 0 0 6184 13109 12113 51821 949 8 14.0323 14.0323 -712.062 -14.0323 0 0 1.31294e+06 5128.69 0.61 0.68 0.35 -1 -1 0.61 0.254215 0.226958 637 979 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_21.v common 22.65 vpr 73.13 MiB 0.10 11076 -1 -1 12 1.23 -1 -1 39808 -1 -1 91 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74884 22 19 1754 1586 1 1196 138 16 16 256 mult_36 auto 35.4 MiB 0.64 8206 15446 2669 11329 1448 73.1 MiB 0.46 0.01 13.688 -507.173 -13.688 13.688 1.02 0.00526157 0.00480749 0.247406 0.218822 74 16203 43 6.45408e+06 3.60195e+06 1.07073e+06 4182.55 14.78 2.42534 2.17628 28864 273460 -1 13727 18 6523 12323 1567521 340577 0 0 1567521 340577 11665 7688 0 0 66721 60262 0 0 90624 72738 0 0 12110 8290 0 0 689160 93994 0 0 697241 97605 0 0 11665 0 0 5168 9150 9704 41905 734 32 14.4398 14.4398 -690.581 -14.4398 0 0 1.33358e+06 5209.30 0.59 0.68 0.35 -1 -1 0.59 0.2379 0.21865 662 1035 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_22.v common 24.18 vpr 73.43 MiB 0.10 11192 -1 -1 11 1.28 -1 -1 40264 -1 -1 97 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75192 22 19 1827 1659 1 1261 144 16 16 256 mult_36 auto 35.7 MiB 0.72 9037 16355 3037 11943 1375 73.4 MiB 0.50 0.01 12.8941 -491.838 -12.8941 12.8941 1.03 0.00568905 0.00485468 0.264318 0.23245 78 16157 34 6.45408e+06 3.68278e+06 1.11577e+06 4358.47 15.86 2.3397 2.09735 29628 289086 -1 14688 18 7410 14844 1737308 390867 0 0 1737308 390867 13879 8569 0 0 76333 68369 0 0 107771 85137 0 0 14396 9634 0 0 748732 109106 0 0 776197 110052 0 0 13879 0 0 6497 13110 12572 53442 1067 10 13.4884 13.4884 -697.603 -13.4884 0 0 1.40012e+06 5469.22 0.69 0.82 0.39 -1 -1 0.69 0.260638 0.238803 708 1089 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_23.v common 28.49 vpr 73.75 MiB 0.11 11564 -1 -1 12 1.41 -1 -1 40760 -1 -1 97 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75516 22 19 1905 1720 1 1293 145 18 18 324 mult_36 auto 35.9 MiB 0.70 9192 18005 3238 13322 1445 73.7 MiB 0.54 0.01 13.8995 -555.981 -13.8995 13.8995 1.40 0.00471731 0.00423218 0.280547 0.249371 76 17452 30 7.94662e+06 4.07878e+06 1.43297e+06 4422.75 18.88 2.52298 2.26324 37464 369264 -1 15383 22 7200 14431 1861443 386435 0 0 1861443 386435 13386 8242 0 0 74605 67538 0 0 102330 81470 0 0 13804 9054 0 0 826424 108547 0 0 830894 111584 0 0 13386 0 0 6211 12548 12558 51174 1116 104 14.78 14.78 -850.285 -14.78 0 0 1.77541e+06 5479.65 0.89 0.83 0.46 -1 -1 0.89 0.289072 0.263382 722 1124 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_24.v common 21.73 vpr 74.30 MiB 0.11 11960 -1 -1 12 1.45 -1 -1 39600 -1 -1 98 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76080 22 19 1979 1794 1 1336 146 18 18 324 mult_36 auto 36.6 MiB 0.72 9655 20114 3933 14451 1730 74.3 MiB 0.62 0.01 13.3044 -573.887 -13.3044 13.3044 1.41 0.00570703 0.00518527 0.331921 0.292998 70 18781 49 7.94662e+06 4.09226e+06 1.34436e+06 4149.26 12.09 1.92321 1.71217 36496 347204 -1 16129 19 7637 14379 1682822 357621 0 0 1682822 357621 13451 8841 0 0 75052 66969 0 0 104338 82558 0 0 13935 9798 0 0 738131 95992 0 0 737915 93463 0 0 13451 0 0 5841 12232 12141 49676 961 2 14.4006 14.4006 -830.518 -14.4006 0 0 1.69344e+06 5226.66 0.81 0.78 0.45 -1 -1 0.81 0.264844 0.243429 739 1179 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_25.v common 29.89 vpr 75.14 MiB 0.12 12184 -1 -1 12 1.55 -1 -1 40264 -1 -1 105 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76944 22 19 2073 1871 1 1394 153 18 18 324 mult_36 auto 37.7 MiB 0.74 9629 21830 4214 15821 1795 75.1 MiB 0.63 0.01 14.762 -609.654 -14.762 14.762 1.37 0.00573872 0.00523729 0.328865 0.291641 76 19600 45 7.94662e+06 4.18656e+06 1.43297e+06 4422.75 19.97 2.88954 2.57015 37464 369264 -1 16877 19 7518 14855 1777695 378311 0 0 1777695 378311 13736 9142 0 0 77699 69760 0 0 107446 85599 0 0 14492 10264 0 0 790758 101897 0 0 773564 101649 0 0 13736 0 0 6244 13395 13740 52690 1158 141 15.4746 15.4746 -884.964 -15.4746 0 0 1.77541e+06 5479.65 0.88 0.83 0.46 -1 -1 0.88 0.304412 0.276856 791 1232 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_26.v common 19.38 vpr 75.48 MiB 0.11 12160 -1 -1 12 1.57 -1 -1 39872 -1 -1 106 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77296 22 19 2130 1928 1 1451 154 18 18 324 mult_36 auto 37.8 MiB 0.74 10169 25698 5401 18049 2248 75.5 MiB 0.76 0.01 14.0681 -619.224 -14.0681 14.0681 1.28 0.00598699 0.00549979 0.40853 0.360173 76 20193 31 7.94662e+06 4.20003e+06 1.43297e+06 4422.75 9.76 2.04943 1.83122 37464 369264 -1 17315 18 8388 16377 1906362 402746 0 0 1906362 402746 15232 9986 0 0 81131 73425 0 0 114272 89911 0 0 15856 11381 0 0 835264 110100 0 0 844607 107943 0 0 15232 0 0 6872 13186 14996 57462 1202 26 14.5301 14.5301 -1072.95 -14.5301 0 0 1.77541e+06 5479.65 0.83 0.83 0.40 -1 -1 0.83 0.299192 0.275231 811 1270 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_27.v common 33.61 vpr 76.49 MiB 0.13 12400 -1 -1 12 1.80 -1 -1 40760 -1 -1 114 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78328 22 19 2238 2019 1 1541 163 18 18 324 mult_36 auto 38.6 MiB 0.80 11015 24638 5027 17502 2109 76.5 MiB 0.74 0.01 13.5032 -633.141 -13.5032 13.5032 1.43 0.00628272 0.00542428 0.381642 0.33343 76 22594 47 7.94662e+06 4.70381e+06 1.43297e+06 4422.75 23.01 3.3226 2.97046 37464 369264 -1 18564 19 9203 17785 1963577 413587 0 0 1963577 413587 16732 10682 0 0 89719 80854 0 0 122655 97718 0 0 17337 12113 0 0 852176 109436 0 0 864958 102784 0 0 16732 0 0 7556 14947 15037 64366 1105 3 14.5728 14.5728 -932.614 -14.5728 0 0 1.77541e+06 5479.65 0.87 0.92 0.45 -1 -1 0.87 0.327487 0.301836 851 1323 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_28.v common 23.59 vpr 76.49 MiB 0.16 12556 -1 -1 12 1.82 -1 -1 40840 -1 -1 117 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78328 22 19 2299 2080 1 1575 166 18 18 324 mult_36 auto 38.5 MiB 0.84 10911 22054 4048 16447 1559 76.5 MiB 0.69 0.01 14.0471 -622.998 -14.0471 14.0471 1.41 0.00648341 0.00584882 0.361899 0.319467 74 21918 30 7.94662e+06 4.74422e+06 1.40368e+06 4332.34 12.62 2.04719 1.83292 37144 362180 -1 18549 22 8835 16874 2458004 516957 0 0 2458004 516957 15830 10538 0 0 88746 80040 0 0 121402 96819 0 0 16598 11592 0 0 1115061 155625 0 0 1100367 162343 0 0 15830 0 0 7022 13846 14850 60622 1079 2 15.1245 15.1245 -930.135 -15.1245 0 0 1.74764e+06 5393.95 0.87 1.11 0.45 -1 -1 0.87 0.36675 0.33779 874 1365 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_29.v common 43.54 vpr 77.20 MiB 0.14 13088 -1 -1 12 1.99 -1 -1 40808 -1 -1 121 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79052 22 19 2400 2164 1 1649 171 22 22 484 mult_36 auto 39.4 MiB 0.99 12373 26715 5444 19220 2051 77.2 MiB 0.80 0.01 12.9796 -660.103 -12.9796 12.9796 2.33 0.00588971 0.00528728 0.401026 0.349466 80 22063 49 1.29336e+07 5.19411e+06 2.29262e+06 4736.82 29.52 3.52744 3.1561 58134 606231 -1 19575 17 9045 17633 2115948 428927 0 0 2115948 428927 16284 10655 0 0 92050 82416 0 0 124339 98710 0 0 17138 12098 0 0 951998 109207 0 0 914139 115841 0 0 16284 0 0 7266 15274 16208 61152 1387 19 14.2718 14.2718 -1067 -14.2718 0 0 2.87723e+06 5944.70 1.57 0.95 0.77 -1 -1 1.57 0.3238 0.298159 915 1415 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_30.v common 167.01 vpr 77.80 MiB 0.14 13056 -1 -1 12 2.05 -1 -1 40900 -1 -1 127 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79668 22 19 2474 2238 1 1692 177 22 22 484 mult_36 auto 40.0 MiB 0.90 12402 24977 4848 18210 1919 77.8 MiB 0.82 0.02 13.1798 -668.115 -13.1798 13.1798 2.31 0.00792843 0.00661823 0.428041 0.365291 68 26636 39 1.29336e+07 5.27494e+06 2.01763e+06 4168.66 153.22 5.00011 4.3979 54270 517931 -1 20993 22 11145 21465 2369107 497865 0 0 2369107 497865 20160 13133 0 0 109159 98677 0 0 149624 117665 0 0 20961 15031 0 0 1037050 128763 0 0 1032153 124596 0 0 20160 0 0 9046 18374 18164 75833 1354 3 14.1542 14.1542 -1095.86 -14.1542 0 0 2.51205e+06 5190.18 1.32 1.14 0.61 -1 -1 1.32 0.402042 0.364627 947 1470 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_31.v common 43.12 vpr 78.24 MiB 0.14 13420 -1 -1 12 2.18 -1 -1 41592 -1 -1 137 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80116 22 19 2603 2350 1 1765 187 22 22 484 mult_36 auto 40.4 MiB 0.95 12571 29557 6004 21312 2241 78.2 MiB 0.88 0.01 13.3737 -659.34 -13.3737 13.3737 2.33 0.00749467 0.00682389 0.452205 0.395736 72 25577 29 1.29336e+07 5.40966e+06 2.11301e+06 4365.72 28.74 3.52189 3.15239 55718 550791 -1 21108 19 9808 19601 2397721 491940 0 0 2397721 491940 17916 11035 0 0 98367 87757 0 0 138293 108687 0 0 18344 12391 0 0 1046609 136512 0 0 1078192 135558 0 0 17916 0 0 8136 19567 19651 70064 1754 263 14.7128 14.7128 -1165.74 -14.7128 0 0 2.64603e+06 5467.00 1.42 1.09 0.68 -1 -1 1.42 0.37084 0.340193 1001 1549 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_32.v common 42.85 vpr 78.21 MiB 0.15 13444 -1 -1 12 2.19 -1 -1 42408 -1 -1 141 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80088 22 19 2694 2441 1 1849 191 22 22 484 mult_36 auto 40.8 MiB 0.97 13128 30386 5519 22596 2271 78.2 MiB 0.86 0.01 13.4059 -652.366 -13.4059 13.4059 2.38 0.00626516 0.00555766 0.421684 0.368989 82 23581 24 1.29336e+07 5.46355e+06 2.34651e+06 4848.17 28.02 3.63179 3.23407 58614 618607 -1 20576 19 9806 18415 2201376 446062 0 0 2201376 446062 17247 10896 0 0 92321 82631 0 0 130233 101761 0 0 17619 12150 0 0 966511 117075 0 0 977445 121549 0 0 17247 0 0 7469 14672 15917 61038 1296 25 14.283 14.283 -999.685 -14.283 0 0 2.93652e+06 6067.20 1.65 1.11 0.79 -1 -1 1.65 0.416486 0.382556 1040 1621 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_33.v common 32.58 vpr 78.96 MiB 0.16 13860 -1 -1 13 2.39 -1 -1 42660 -1 -1 140 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80856 22 19 2787 2517 1 1916 191 22 22 484 mult_36 auto 41.7 MiB 1.01 13860 31484 6322 22882 2280 79.0 MiB 1.01 0.02 13.6488 -711.294 -13.6488 13.6488 2.29 0.00795328 0.00724105 0.511735 0.441848 74 27351 34 1.29336e+07 5.84608e+06 2.15943e+06 4461.62 17.54 2.71774 2.4048 56202 562081 -1 22919 20 11011 21302 2844043 576709 0 0 2844043 576709 20078 12682 0 0 109107 98366 0 0 150226 119303 0 0 20715 14223 0 0 1256468 163223 0 0 1287449 168912 0 0 20078 0 0 9098 17371 17656 75703 1290 536 15.0741 15.0741 -1171.59 -15.0741 0 0 2.68771e+06 5553.12 1.46 1.21 0.69 -1 -1 1.46 0.38672 0.354499 1070 1664 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_34.v common 47.64 vpr 79.28 MiB 0.17 14100 -1 -1 13 2.48 -1 -1 43260 -1 -1 142 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81184 22 19 2834 2564 1 1944 193 22 22 484 mult_36 auto 41.9 MiB 1.00 13776 33613 6595 24512 2506 79.2 MiB 1.04 0.02 14.2753 -741.266 -14.2753 14.2753 2.37 0.00752084 0.00682486 0.535619 0.463721 88 23867 29 1.29336e+07 5.87302e+06 2.51205e+06 5190.18 32.10 4.25071 3.8093 60546 662757 -1 21887 17 9838 19103 2149580 441901 0 0 2149580 441901 18027 11282 0 0 98078 87674 0 0 137505 108295 0 0 18600 13068 0 0 955319 110763 0 0 922051 110819 0 0 18027 0 0 8212 15147 16853 69543 1098 58 15.779 15.779 -1275.78 -15.779 0 0 3.12290e+06 6452.27 1.77 1.00 0.86 -1 -1 1.77 0.361789 0.332203 1084 1692 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_35.v common 30.23 vpr 79.67 MiB 0.17 14520 -1 -1 13 2.42 -1 -1 41888 -1 -1 150 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81580 22 19 2941 2654 1 2012 201 22 22 484 mult_36 auto 42.4 MiB 1.01 14392 37833 8025 26994 2814 79.7 MiB 1.20 0.02 13.9352 -781.481 -13.9352 13.9352 2.16 0.00826761 0.00758657 0.628983 0.539161 74 28208 28 1.29336e+07 5.9808e+06 2.15943e+06 4461.62 15.41 2.89193 2.56233 56202 562081 -1 24093 22 11639 22366 2730980 562248 0 0 2730980 562248 20917 13462 0 0 115887 104654 0 0 158365 125822 0 0 21598 15036 0 0 1216722 151989 0 0 1197491 151285 0 0 20917 0 0 9306 18545 19310 77459 1503 101 15.074 15.074 -1308.59 -15.074 0 0 2.68771e+06 5553.12 1.38 1.30 0.60 -1 -1 1.38 0.491751 0.45143 1131 1750 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_36.v common 52.46 vpr 80.78 MiB 0.17 14660 -1 -1 13 2.53 -1 -1 43208 -1 -1 153 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82716 22 19 3011 2724 1 2050 204 22 22 484 mult_36 auto 43.0 MiB 1.11 14453 33204 6330 24557 2317 80.4 MiB 1.03 0.02 13.7707 -751.494 -13.7707 13.7707 2.36 0.00855364 0.00771462 0.519048 0.446927 78 27126 34 1.29336e+07 6.02122e+06 2.25108e+06 4650.99 36.72 4.81241 4.24519 57650 594765 -1 24008 21 11481 22502 2723495 558926 0 0 2723495 558926 20815 13112 0 0 116998 104510 0 0 165203 130294 0 0 21555 14835 0 0 1190011 146339 0 0 1208913 149836 0 0 20815 0 0 9365 19805 19309 77856 1736 175 14.9488 14.9488 -1468.8 -14.9488 0 0 2.82299e+06 5832.63 1.51 1.33 0.73 -1 -1 1.51 0.500963 0.457863 1168 1801 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_37.v common 34.22 vpr 81.67 MiB 0.17 14684 -1 -1 13 2.75 -1 -1 42160 -1 -1 158 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83632 22 19 3132 2828 1 2123 210 24 24 576 mult_36 auto 43.6 MiB 1.17 15481 37026 7397 27104 2525 81.7 MiB 1.14 0.02 14.4868 -903.454 -14.4868 14.4868 2.83 0.00831379 0.00699324 0.570002 0.485558 74 28565 34 1.56141e+07 6.48458e+06 2.56259e+06 4448.94 16.72 3.00359 2.64656 66498 666725 -1 25200 20 11819 22807 2985192 602325 0 0 2985192 602325 21419 13725 0 0 116460 104711 0 0 158986 127134 0 0 22001 15199 0 0 1310890 172421 0 0 1355436 169135 0 0 21419 0 0 9627 18166 19286 80995 1420 22 14.8704 14.8704 -1490.38 -14.8704 0 0 3.19068e+06 5539.38 1.78 1.32 0.81 -1 -1 1.78 0.437456 0.398723 1192 1872 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_38.v common 38.18 vpr 80.96 MiB 0.18 14824 -1 -1 13 2.81 -1 -1 42576 -1 -1 160 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82904 22 19 3159 2855 1 2172 212 24 24 576 mult_36 auto 43.6 MiB 1.14 15337 30500 5315 23504 1681 81.0 MiB 0.93 0.02 14.4084 -940.203 -14.4084 14.4084 2.84 0.00810907 0.00728018 0.451735 0.390781 74 29802 44 1.56141e+07 6.51152e+06 2.56259e+06 4448.94 21.03 3.11594 2.76555 66498 666725 -1 25239 20 12309 23023 2727822 553406 0 0 2727822 553406 21694 14227 0 0 115485 103085 0 0 160839 127528 0 0 22310 15898 0 0 1199908 151424 0 0 1207586 141244 0 0 21694 0 0 9410 18432 18964 80133 1356 14 15.2386 15.2386 -1400.19 -15.2386 0 0 3.19068e+06 5539.38 1.78 1.29 0.81 -1 -1 1.78 0.467748 0.427801 1207 1880 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_39.v common 57.75 vpr 88.68 MiB 0.18 14992 -1 -1 13 2.93 -1 -1 44224 -1 -1 169 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90808 22 19 3284 2963 1 2259 221 24 24 576 mult_36 auto 44.4 MiB 1.18 16556 36906 7438 27349 2119 81.7 MiB 1.18 0.02 14.8416 -966.85 -14.8416 14.8416 2.82 0.00856011 0.00780964 0.586824 0.509545 78 30413 39 1.56141e+07 6.63277e+06 2.67122e+06 4637.53 39.81 5.09824 4.54572 68222 705597 -1 26429 19 12948 25737 2994227 610093 0 0 2994227 610093 24153 15124 0 0 132698 118700 0 0 186256 145157 0 0 25062 17013 0 0 1316207 159216 0 0 1309851 154883 0 0 24153 0 0 11228 22063 23420 94526 1616 172 15.3897 15.3897 -1392.42 -15.3897 0 0 3.35110e+06 5817.88 1.87 1.37 0.91 -1 -1 1.87 0.469153 0.427993 1267 1957 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_40.v common 44.53 vpr 81.94 MiB 0.19 15380 -1 -1 13 3.00 -1 -1 44052 -1 -1 169 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83904 22 19 3343 3022 1 2282 221 24 24 576 mult_36 auto 44.8 MiB 1.23 16103 38240 7984 27776 2480 81.9 MiB 1.28 0.02 14.5379 -829.329 -14.5379 14.5379 2.80 0.0100102 0.00905922 0.662381 0.565785 78 30280 45 1.56141e+07 6.63277e+06 2.67122e+06 4637.53 26.07 3.96184 3.48667 68222 705597 -1 26320 20 12810 24873 3733910 797559 0 0 3733910 797559 23274 14968 0 0 132563 118867 0 0 183445 145722 0 0 24225 17161 0 0 1690897 245475 0 0 1679506 255366 0 0 23274 0 0 10492 21620 20537 87898 1659 254 15.0348 15.0348 -1432.7 -15.0348 0 0 3.35110e+06 5817.88 1.87 1.67 0.84 -1 -1 1.87 0.520162 0.476252 1284 1997 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_41.v common 55.92 vpr 82.66 MiB 0.19 15516 -1 -1 13 3.21 -1 -1 44284 -1 -1 175 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84640 22 19 3448 3110 1 2364 228 24 24 576 mult_36 auto 45.6 MiB 1.41 17649 40596 8241 30000 2355 82.7 MiB 1.33 0.02 14.3188 -964.321 -14.3188 14.3188 2.82 0.0102929 0.00841693 0.664501 0.563255 74 35747 49 1.56141e+07 7.1096e+06 2.56259e+06 4448.94 36.92 4.33107 3.78064 66498 666725 -1 28688 21 14418 27746 3793862 772470 0 0 3793862 772470 26068 16581 0 0 144960 130865 0 0 201252 159727 0 0 26898 18324 0 0 1656400 227436 0 0 1738284 219537 0 0 26068 0 0 11680 23532 23471 99596 1722 27 14.7696 14.7696 -1394.5 -14.7696 0 0 3.19068e+06 5539.38 1.78 1.74 0.83 -1 -1 1.78 0.559647 0.503137 1333 2054 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_42.v common 46.52 vpr 83.28 MiB 0.20 15676 -1 -1 13 3.35 -1 -1 43072 -1 -1 179 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85276 22 19 3510 3172 1 2403 232 24 24 576 mult_36 auto 46.1 MiB 1.32 18000 41528 8297 30726 2505 83.3 MiB 1.35 0.02 14.4441 -997.144 -14.4441 14.4441 2.81 0.0099595 0.00908171 0.674656 0.574493 76 34951 33 1.56141e+07 7.16349e+06 2.61600e+06 4541.67 27.50 4.15186 3.64929 67070 679911 -1 28737 22 13324 25894 3139206 634061 0 0 3139206 634061 24024 15547 0 0 132051 118667 0 0 181277 144571 0 0 24822 17368 0 0 1384704 171865 0 0 1392328 166043 0 0 24024 0 0 10726 23410 24385 92251 1952 53 15.0706 15.0706 -1546.22 -15.0706 0 0 3.24203e+06 5628.53 1.81 1.54 0.85 -1 -1 1.81 0.563745 0.514678 1352 2097 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_43.v common 45.20 vpr 83.40 MiB 0.20 15908 -1 -1 13 3.33 -1 -1 41376 -1 -1 182 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85400 22 19 3598 3243 1 2469 235 24 24 576 mult_36 auto 46.4 MiB 1.36 18261 40779 7920 30483 2376 83.4 MiB 1.31 0.02 14.6232 -927.547 -14.6232 14.6232 2.85 0.0100724 0.00917825 0.653798 0.561755 76 35294 36 1.56141e+07 7.2039e+06 2.61600e+06 4541.67 25.96 3.54182 3.11931 67070 679911 -1 29642 20 13754 26797 3811570 779860 0 0 3811570 779860 25194 16056 0 0 141538 127900 0 0 191845 154770 0 0 26107 17867 0 0 1668254 231599 0 0 1758632 231668 0 0 25194 0 0 11470 22645 22195 95741 1695 250 15.6648 15.6648 -1598.33 -15.6648 0 0 3.24203e+06 5628.53 1.81 1.68 0.83 -1 -1 1.81 0.536569 0.490693 1391 2138 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_44.v common 48.20 vpr 83.87 MiB 0.20 16048 -1 -1 13 3.49 -1 -1 44776 -1 -1 189 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85880 22 19 3689 3334 1 2527 242 24 24 576 mult_36 auto 46.9 MiB 1.32 17950 41657 7723 31815 2119 83.9 MiB 1.36 0.02 14.7093 -995.949 -14.7093 14.7093 2.89 0.0107157 0.00978663 0.67972 0.586652 78 33823 28 1.56141e+07 7.29821e+06 2.67122e+06 4637.53 28.97 3.99677 3.5377 68222 705597 -1 28895 19 13088 25946 3029484 623191 0 0 3029484 623191 24297 15202 0 0 133154 118108 0 0 188566 148206 0 0 25213 17083 0 0 1313473 162727 0 0 1344781 161865 0 0 24297 0 0 11234 25545 22052 94982 1730 365 15.4611 15.4611 -1595.77 -15.4611 0 0 3.35110e+06 5817.88 1.86 1.39 0.87 -1 -1 1.86 0.506119 0.461714 1433 2210 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_45.v common 53.53 vpr 85.54 MiB 0.19 16336 -1 -1 13 3.51 -1 -1 41500 -1 -1 191 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87592 22 19 3763 3391 1 2591 245 24 24 576 mult_36 auto 47.5 MiB 1.26 18553 47737 9669 35144 2924 85.5 MiB 1.55 0.02 14.3222 -1050.75 -14.3222 14.3222 2.61 0.0119341 0.00992933 0.779286 0.661498 78 34516 41 1.56141e+07 7.72115e+06 2.67122e+06 4637.53 34.89 5.14712 4.47941 68222 705597 -1 29951 20 14336 27940 3347615 689627 0 0 3347615 689627 26073 16398 0 0 148408 133220 0 0 206476 163346 0 0 26797 18377 0 0 1457656 182485 0 0 1482205 175801 0 0 26073 0 0 11765 24599 23993 98506 1895 50 14.9487 14.9487 -1492.75 -14.9487 0 0 3.35110e+06 5817.88 1.78 1.59 0.78 -1 -1 1.78 0.606846 0.535583 1453 2234 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_46.v common 59.17 vpr 98.48 MiB 0.24 16704 -1 -1 13 3.83 -1 -1 41408 -1 -1 195 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100844 22 19 3845 3473 1 2635 249 24 24 576 mult_36 auto 48.0 MiB 1.40 19437 42531 7983 32194 2354 84.9 MiB 1.38 0.02 14.8984 -1016.65 -14.8984 14.8984 2.81 0.0110058 0.0100327 0.665415 0.571463 86 33382 28 1.56141e+07 7.77504e+06 2.91907e+06 5067.82 39.16 5.24964 4.68046 71098 772847 -1 30030 19 12872 25021 2737698 559869 0 0 2737698 559869 23580 14768 0 0 124820 110258 0 0 173610 137880 0 0 24336 16419 0 0 1178380 142110 0 0 1212972 138434 0 0 23580 0 0 10733 21877 20428 91696 1496 318 15.7789 15.7789 -1527.03 -15.7789 0 0 3.65856e+06 6351.67 2.02 1.34 0.95 -1 -1 2.02 0.503638 0.458831 1482 2297 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_47.v common 60.64 vpr 93.77 MiB 0.24 16868 -1 -1 13 3.90 -1 -1 41484 -1 -1 206 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96020 22 19 3983 3594 1 2724 260 24 24 576 mult_36 auto 48.9 MiB 1.58 19383 49171 10778 35867 2526 86.0 MiB 1.59 0.02 14.4083 -1073.29 -14.4083 14.4083 2.86 0.0111263 0.00996694 0.765506 0.645689 78 35524 31 1.56141e+07 7.92323e+06 2.67122e+06 4637.53 40.27 6.13188 5.36861 68222 705597 -1 31274 19 13980 27355 2961752 630335 0 0 2961752 630335 25548 16336 0 0 141852 126397 0 0 196659 156614 0 0 26575 18300 0 0 1285919 159479 0 0 1285199 153209 0 0 25548 0 0 11593 23828 24168 97366 1838 209 15.583 15.583 -2035.39 -15.583 0 0 3.35110e+06 5817.88 1.89 1.45 0.87 -1 -1 1.89 0.552027 0.502159 1559 2386 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_48.v common 48.56 vpr 86.24 MiB 0.23 16992 -1 -1 13 4.02 -1 -1 41568 -1 -1 202 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88312 22 19 4025 3636 1 2760 256 24 24 576 mult_36 auto 49.1 MiB 1.56 19748 43292 8311 32403 2578 86.2 MiB 1.34 0.02 14.4441 -1129.92 -14.4441 14.4441 2.88 0.01141 0.0104191 0.633715 0.54608 76 38269 47 1.56141e+07 7.86934e+06 2.61600e+06 4541.67 28.07 4.93141 4.32084 67070 679911 -1 32044 20 15170 30059 3103581 658635 0 0 3103581 658635 27709 17449 0 0 145125 129892 0 0 201588 158791 0 0 28540 19601 0 0 1338821 169210 0 0 1361798 163692 0 0 27709 0 0 12567 26971 26608 104793 2436 1100 15.1567 15.1567 -1998.15 -15.1567 0 0 3.24203e+06 5628.53 1.82 1.61 0.85 -1 -1 1.82 0.629746 0.574122 1547 2409 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_49.v common 63.01 vpr 99.72 MiB 0.24 17372 -1 -1 13 4.44 -1 -1 45920 -1 -1 213 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102116 22 19 4164 3758 1 2857 268 24 24 576 mult_36 auto 50.3 MiB 1.52 23570 48596 9493 36556 2547 88.0 MiB 1.54 0.03 15.3682 -1091.87 -15.3682 15.3682 2.89 0.0113336 0.0100648 0.716012 0.613509 88 39404 37 1.56141e+07 8.41354e+06 2.98162e+06 5176.42 40.73 5.89694 5.22731 71670 786159 -1 35448 18 14972 29202 3808614 793804 0 0 3808614 793804 27208 17028 0 0 150140 134353 0 0 210056 166215 0 0 28007 19334 0 0 1699752 232123 0 0 1693451 224751 0 0 27208 0 0 12260 28898 27647 106827 2044 156 15.8302 15.8302 -1631.3 -15.8302 0 0 3.70823e+06 6437.90 2.11 1.87 1.14 -1 -1 2.11 0.615136 0.559491 1622 2498 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_50.v common 65.30 vpr 95.32 MiB 0.23 17744 -1 -1 13 4.48 -1 -1 46292 -1 -1 212 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97604 22 19 4190 3784 1 2864 267 24 24 576 mult_36 auto 50.5 MiB 1.52 20824 49230 9670 36854 2706 87.1 MiB 1.67 0.03 14.6589 -1033.43 -14.6589 14.6589 2.84 0.012217 0.0109592 0.821064 0.699717 78 39135 41 1.56141e+07 8.40006e+06 2.67122e+06 4637.53 43.54 6.29301 5.53121 68222 705597 -1 33591 20 15533 30136 4388747 925838 0 0 4388747 925838 27851 17680 0 0 163410 146879 0 0 224131 180071 0 0 28680 19861 0 0 1970172 273989 0 0 1974503 287358 0 0 27851 0 0 12346 26927 26068 104139 2322 653 15.4107 15.4107 -1815.85 -15.4107 0 0 3.35110e+06 5817.88 1.88 2.01 0.87 -1 -1 1.88 0.634424 0.576303 1618 2505 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_51.v common 54.17 vpr 89.87 MiB 0.25 17708 -1 -1 13 4.36 -1 -1 46096 -1 -1 216 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92024 22 19 4305 3882 1 2950 271 24 24 576 mult_36 auto 51.0 MiB 1.57 22869 53707 11209 39505 2993 88.6 MiB 1.74 0.03 14.9061 -1242.71 -14.9061 14.9061 2.82 0.0134463 0.01117 0.816428 0.686173 86 40871 29 1.56141e+07 8.45395e+06 2.91907e+06 5067.82 32.39 5.2986 4.65194 71098 772847 -1 35655 18 15637 30740 3548223 719269 0 0 3548223 719269 28758 18104 0 0 156099 139117 0 0 220132 173125 0 0 29951 20122 0 0 1532627 191829 0 0 1580656 176972 0 0 28758 0 0 13150 29175 27205 113100 2006 200 15.5214 15.5214 -1900.2 -15.5214 0 0 3.65856e+06 6351.67 2.00 1.67 0.99 -1 -1 2.00 0.575011 0.524094 1666 2571 -1 -1 -1 -1 -k6_frac_N8_22nm.xml fir_nopipe_52.v common 53.33 vpr 89.95 MiB 0.25 17872 -1 -1 13 4.51 -1 -1 46116 -1 -1 227 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92104 22 19 4363 3940 1 3005 282 24 24 576 mult_36 auto 51.5 MiB 1.65 22655 52026 10187 39150 2689 89.0 MiB 1.73 0.03 14.5582 -1126.55 -14.5582 14.5582 2.82 0.0129009 0.0117093 0.836681 0.717939 80 41252 30 1.56141e+07 8.60214e+06 2.72095e+06 4723.87 31.11 5.12817 4.48018 68798 719145 -1 35753 22 16921 32878 4197963 852242 0 0 4197963 852242 30574 19208 0 0 171414 153798 0 0 232439 185034 0 0 31539 21635 0 0 1806213 238739 0 0 1925784 233828 0 0 30574 0 0 13681 31030 29094 116868 2406 901 14.9845 14.9845 -1802.9 -14.9845 0 0 3.41546e+06 5929.62 1.86 2.07 0.91 -1 -1 1.86 0.731579 0.65445 1697 2610 -1 -1 -1 -1 -k6_frac_ripple_N8_22nm.xml fir_pipe_14.v common 11.37 vpr 73.12 MiB 0.08 10556 -1 -1 1 0.32 -1 -1 38576 -1 -1 81 22 0 4 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74880 22 19 1974 1653 1 1020 126 16 16 256 mult_36 auto 34.9 MiB 0.58 5532 15561 2989 10353 2219 73.1 MiB 0.42 0.01 3.91806 -1040.42 -3.91806 3.91806 1.00 0.00372455 0.00329227 0.196712 0.175109 54 11263 32 6.52434e+06 2.71588e+06 829453. 3240.05 5.40 1.24749 1.10654 26108 202796 -1 8584 19 3956 4586 652587 170509 0 0 652587 170509 4387 3973 0 0 36317 33108 0 0 42320 38347 0 0 4398 3994 0 0 278153 44778 0 0 287012 46309 0 0 4387 0 0 449 3315 2894 26974 256 2 4.29396 4.29396 -1231.38 -4.29396 0 0 1.02522e+06 4004.78 0.45 0.37 0.25 -1 -1 0.45 0.173801 0.15776 605 649 247 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_15.v common 11.88 vpr 73.88 MiB 0.10 11052 -1 -1 1 0.34 -1 -1 39696 -1 -1 88 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75652 22 19 2144 1789 1 1119 134 16 16 256 mult_36 auto 35.8 MiB 0.57 6531 13130 2156 9367 1607 73.9 MiB 0.38 0.01 3.91806 -1168.25 -3.91806 3.91806 1.05 0.00364185 0.00322184 0.173462 0.154517 56 11823 32 6.52434e+06 3.20969e+06 849745. 3319.32 5.71 1.30276 1.15974 26364 208198 -1 10098 16 4052 4639 693367 171264 0 0 693367 171264 4295 4081 0 0 35167 31412 0 0 42731 38405 0 0 4306 4112 0 0 303213 45689 0 0 303655 47565 0 0 4295 0 0 262 1788 2300 5012 454 10 4.41926 4.41926 -1330.73 -4.41926 0 0 1.04740e+06 4091.43 0.46 0.38 0.26 -1 -1 0.46 0.18235 0.166583 654 704 266 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_16.v common 16.66 vpr 74.24 MiB 0.09 11308 -1 -1 1 0.36 -1 -1 38936 -1 -1 91 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76020 22 19 2218 1846 1 1161 137 16 16 256 mult_36 auto 36.2 MiB 0.64 6725 16022 3106 10839 2077 74.2 MiB 0.48 0.01 3.91806 -1218.73 -3.91806 3.91806 1.05 0.00417683 0.00375738 0.221234 0.197944 58 12613 30 6.52434e+06 3.25161e+06 871168. 3403.00 9.96 1.78604 1.59212 26872 219187 -1 10429 18 4259 4841 831590 194439 0 0 831590 194439 4458 4271 0 0 38697 35030 0 0 46752 42158 0 0 4460 4304 0 0 374006 53413 0 0 363217 55263 0 0 4458 0 0 213 2020 2187 5196 444 2 4.39726 4.39726 -1412.26 -4.39726 0 0 1.09288e+06 4269.05 0.57 0.43 0.32 -1 -1 0.57 0.18911 0.171211 683 723 285 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_17.v common 16.78 vpr 76.15 MiB 0.10 11852 -1 -1 1 0.41 -1 -1 39688 -1 -1 103 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77976 22 19 2536 2130 1 1274 149 16 16 256 mult_36 auto 37.6 MiB 0.74 7384 21425 4054 14471 2900 76.1 MiB 0.68 0.01 4.04336 -1366.18 -4.04336 4.04336 1.04 0.00531234 0.00482126 0.331591 0.299292 56 13552 26 6.52434e+06 3.4193e+06 849745. 3319.32 9.77 2.05033 1.83177 26364 208198 -1 11251 18 4526 5241 823373 209588 0 0 823373 209588 4701 4547 0 0 42034 37918 0 0 50949 45909 0 0 4704 4561 0 0 361553 56881 0 0 359432 59772 0 0 4701 0 0 191 2409 2706 5367 596 174 4.41926 4.41926 -1584.63 -4.41926 0 0 1.04740e+06 4091.43 0.50 0.51 0.26 -1 -1 0.50 0.246338 0.223983 770 851 304 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_18.v common 14.23 vpr 75.88 MiB 0.11 11952 -1 -1 1 0.44 -1 -1 40200 -1 -1 107 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77704 22 19 2610 2187 1 1316 153 16 16 256 mult_36 auto 37.9 MiB 0.73 7505 18558 3113 12957 2488 75.9 MiB 0.57 0.01 3.79276 -1370.42 -3.79276 3.79276 1.02 0.00518502 0.00466628 0.267127 0.240571 58 14294 47 6.52434e+06 3.47519e+06 871168. 3403.00 7.29 1.85252 1.64636 26872 219187 -1 11365 19 4857 5547 754014 187178 0 0 754014 187178 5101 4915 0 0 40961 36767 0 0 50624 45098 0 0 5110 4937 0 0 322666 47984 0 0 329552 47477 0 0 5101 0 0 264 2017 2383 6055 519 35 4.29396 4.29396 -1591.91 -4.29396 0 0 1.09288e+06 4269.05 0.51 0.49 0.27 -1 -1 0.51 0.259528 0.238515 798 870 323 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_19.v common 14.07 vpr 76.90 MiB 0.12 12344 -1 -1 1 0.45 -1 -1 40608 -1 -1 113 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78748 22 19 2778 2321 1 1410 160 16 16 256 mult_36 auto 39.3 MiB 0.82 8691 25766 4803 17312 3651 76.9 MiB 0.78 0.01 3.91806 -1509.95 -3.91806 3.91806 1.04 0.00518784 0.00466071 0.372978 0.333857 60 15236 38 6.52434e+06 3.95503e+06 890343. 3477.90 6.66 1.8601 1.65156 27128 224764 -1 12482 18 5112 5957 855843 209230 0 0 855843 209230 5388 5135 0 0 44083 39562 0 0 52379 47113 0 0 5392 5159 0 0 379470 55654 0 0 369131 56607 0 0 5388 0 0 295 2906 2977 6303 686 41 4.29396 4.29396 -1801.19 -4.29396 0 0 1.11577e+06 4358.47 0.51 0.52 0.29 -1 -1 0.51 0.255468 0.232915 846 925 342 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_20.v common 13.86 vpr 77.93 MiB 0.12 12660 -1 -1 1 0.50 -1 -1 39828 -1 -1 118 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79800 22 19 2852 2378 1 1454 165 16 16 256 mult_36 auto 39.5 MiB 0.78 9483 27285 4955 18953 3377 77.9 MiB 0.86 0.01 4.04336 -1544.54 -4.04336 4.04336 1.05 0.00613809 0.0055784 0.396644 0.357377 66 15736 39 6.52434e+06 4.0249e+06 974584. 3806.97 6.37 2.0504 1.8254 28148 247068 -1 12691 16 5031 5851 801317 196510 0 0 801317 196510 5317 5084 0 0 42799 38337 0 0 52711 46989 0 0 5321 5118 0 0 352302 50274 0 0 342867 50708 0 0 5317 0 0 302 2772 3076 6401 621 140 4.41926 4.41926 -1802.47 -4.41926 0 0 1.22072e+06 4768.46 0.54 0.47 0.30 -1 -1 0.54 0.235079 0.214327 875 944 361 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_21.v common 19.11 vpr 78.40 MiB 0.12 12868 -1 -1 1 0.49 -1 -1 41492 -1 -1 122 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80284 22 19 3057 2549 1 1559 169 16 16 256 mult_36 auto 40.5 MiB 0.91 10025 20250 3143 14010 3097 78.4 MiB 0.67 0.01 4.16866 -1686.98 -4.16866 4.16866 1.00 0.00664579 0.00594667 0.313435 0.27781 60 18669 50 6.52434e+06 4.0808e+06 890343. 3477.90 11.61 2.94293 2.59807 27128 224764 -1 14073 14 5788 6714 977468 238946 0 0 977468 238946 6056 5842 0 0 50308 45278 0 0 60142 54263 0 0 6060 5872 0 0 426875 62220 0 0 428027 65471 0 0 6056 0 0 282 3197 3718 7012 751 148 4.66986 4.66986 -1941.77 -4.66986 0 0 1.11577e+06 4358.47 0.51 0.52 0.28 -1 -1 0.51 0.241513 0.220831 932 1017 380 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_22.v common 14.35 vpr 78.37 MiB 0.12 13080 -1 -1 1 0.51 -1 -1 40356 -1 -1 125 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80248 22 19 3131 2606 1 1599 172 16 16 256 mult_36 auto 40.7 MiB 0.81 9771 20726 3270 15102 2354 78.4 MiB 0.67 0.01 4.04336 -1711.14 -4.04336 4.04336 1.10 0.00553982 0.00488998 0.277641 0.244384 64 16352 33 6.52434e+06 4.12272e+06 943753. 3686.54 6.65 2.0185 1.79216 27892 240595 -1 13590 19 5791 6680 937698 227552 0 0 937698 227552 6065 5857 0 0 48932 43771 0 0 60380 54026 0 0 6069 5876 0 0 410917 58847 0 0 405335 59175 0 0 6065 0 0 289 3069 3295 7189 693 270 4.41926 4.41926 -2045.56 -4.41926 0 0 1.19033e+06 4649.74 0.54 0.61 0.29 -1 -1 0.54 0.320592 0.293283 961 1036 399 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_23.v common 23.31 vpr 79.41 MiB 0.13 13684 -1 -1 1 0.59 -1 -1 40896 -1 -1 133 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81312 22 19 3301 2742 1 1700 181 18 18 324 mult_36 auto 41.8 MiB 0.97 9614 34418 6957 24111 3350 79.4 MiB 0.99 0.01 3.91806 -1787.72 -3.91806 3.91806 1.46 0.00609876 0.00534057 0.431791 0.380289 56 20498 47 8.04299e+06 4.63052e+06 1.11497e+06 3441.27 13.95 2.77408 2.44177 34036 275796 -1 15467 19 6958 8199 1343692 325644 0 0 1343692 325644 7240 7012 0 0 66482 59896 0 0 79712 71896 0 0 7245 7034 0 0 590807 88764 0 0 592206 91042 0 0 7240 0 0 304 5112 4727 8397 1040 46 4.54456 4.54456 -2201.41 -4.54456 0 0 1.37338e+06 4238.83 0.64 0.69 0.34 -1 -1 0.64 0.305133 0.276571 1012 1091 418 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_24.v common 23.56 vpr 79.75 MiB 0.30 13544 -1 -1 1 0.56 -1 -1 40380 -1 -1 137 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81660 22 19 3375 2799 1 1743 185 18 18 324 mult_36 auto 42.0 MiB 1.02 10338 33323 6784 22975 3564 79.7 MiB 1.04 0.01 4.16866 -1810.95 -4.16866 4.16866 1.41 0.00628582 0.00570457 0.449073 0.401225 64 17199 25 8.04299e+06 4.68641e+06 1.23838e+06 3822.15 14.01 3.1628 2.83221 35972 318676 -1 14787 17 5871 6831 1083073 254297 0 0 1083073 254297 6111 5906 0 0 51812 46278 0 0 64003 57183 0 0 6119 5935 0 0 483710 67673 0 0 471318 71322 0 0 6111 0 0 260 3191 3320 7159 783 10 4.52256 4.52256 -2135.09 -4.52256 0 0 1.56068e+06 4816.91 0.72 0.64 0.34 -1 -1 0.72 0.336443 0.306972 1041 1110 437 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_25.v common 23.36 vpr 80.56 MiB 0.15 13984 -1 -1 1 0.60 -1 -1 41384 -1 -1 146 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82496 22 19 3615 3005 1 1847 194 18 18 324 mult_36 auto 42.8 MiB 1.04 11465 36098 7084 24802 4212 80.6 MiB 1.14 0.02 4.04336 -2012.57 -4.04336 4.04336 1.41 0.00748675 0.00677139 0.514018 0.460769 58 20946 39 8.04299e+06 4.81218e+06 1.14310e+06 3528.09 13.49 2.53383 2.23137 34680 290288 -1 16938 17 6943 8225 1253489 294264 0 0 1253489 294264 7204 7001 0 0 58962 52688 0 0 72623 64855 0 0 7210 7028 0 0 553482 79912 0 0 554008 82780 0 0 7204 0 0 277 4794 4709 8369 1075 263 4.41926 4.41926 -2429.47 -4.41926 0 0 1.43297e+06 4422.75 0.71 0.71 0.35 -1 -1 0.71 0.343164 0.314653 1107 1201 456 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_26.v common 21.85 vpr 80.98 MiB 0.15 14176 -1 -1 1 0.66 -1 -1 41456 -1 -1 148 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82928 22 19 3689 3062 1 1888 196 18 18 324 mult_36 auto 43.2 MiB 1.12 11745 30922 5520 22216 3186 81.0 MiB 1.06 0.02 3.79276 -1993.71 -3.79276 3.79276 1.38 0.00636166 0.00559983 0.44649 0.393888 62 23376 50 8.04299e+06 4.84013e+06 1.20291e+06 3712.69 11.72 3.16192 2.79781 35328 304176 -1 16793 19 7180 8315 1326218 302090 0 0 1326218 302090 7475 7219 0 0 63487 57300 0 0 75105 67860 0 0 7479 7257 0 0 591628 80087 0 0 581044 82367 0 0 7475 0 0 315 3855 4593 8870 899 225 4.29396 4.29396 -2362.44 -4.29396 0 0 1.49010e+06 4599.06 0.74 0.76 0.36 -1 -1 0.74 0.371148 0.339909 1135 1220 475 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_27.v common 28.04 vpr 82.30 MiB 0.15 14824 -1 -1 1 0.70 -1 -1 41912 -1 -1 156 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84272 22 19 3871 3210 1 1998 205 18 18 324 mult_36 auto 44.6 MiB 1.18 12494 32821 5518 23534 3769 82.3 MiB 1.09 0.02 4.16866 -2116.43 -4.16866 4.16866 1.45 0.00728845 0.00653593 0.466065 0.411808 68 21189 23 8.04299e+06 5.34793e+06 1.31159e+06 4048.11 17.36 3.40364 3.02857 36620 334356 -1 17226 17 6822 7949 1144966 263780 0 0 1144966 263780 7140 6856 0 0 55386 49277 0 0 67530 60315 0 0 7151 6889 0 0 515145 68620 0 0 492614 71823 0 0 7140 0 0 334 3986 4279 8397 899 464 4.54456 4.54456 -2421.09 -4.54456 0 0 1.63345e+06 5041.52 0.79 0.73 0.44 -1 -1 0.79 0.390308 0.356717 1191 1275 494 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_28.v common 25.92 vpr 82.94 MiB 0.15 14672 -1 -1 1 0.70 -1 -1 41304 -1 -1 160 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84928 22 19 3945 3267 1 2043 209 18 18 324 mult_36 auto 45.4 MiB 1.20 13469 38649 7092 27441 4116 82.9 MiB 1.30 0.02 4.04336 -2173.61 -4.04336 4.04336 1.42 0.00839441 0.00754665 0.573562 0.511243 66 22911 27 8.04299e+06 5.40382e+06 1.27759e+06 3943.17 15.47 3.48015 3.09407 36296 327148 -1 18783 16 7288 8355 1200988 268821 0 0 1200988 268821 7578 7322 0 0 56431 49868 0 0 70606 62541 0 0 7579 7368 0 0 526411 72475 0 0 532383 69247 0 0 7578 0 0 306 3446 3870 8970 828 113 4.41926 4.41926 -2545.04 -4.41926 0 0 1.59950e+06 4936.74 0.79 0.70 0.40 -1 -1 0.79 0.353793 0.324336 1219 1294 513 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_29.v common 27.81 vpr 83.59 MiB 0.16 15132 -1 -1 1 0.75 -1 -1 42128 -1 -1 170 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85596 22 19 4159 3447 1 2157 220 22 22 484 mult_36 auto 46.0 MiB 1.21 13881 43315 8357 30921 4037 83.6 MiB 1.41 0.02 3.91806 -2256.75 -3.91806 3.91806 2.35 0.00932105 0.00832921 0.644346 0.575506 56 26540 39 1.30842e+07 5.93957e+06 1.71605e+06 3545.56 14.59 3.19324 2.81176 51606 428054 -1 21305 16 8719 10195 1824345 418353 0 0 1824345 418353 9090 8794 0 0 81385 73288 0 0 98021 88272 0 0 9092 8837 0 0 805771 118980 0 0 820986 120182 0 0 9090 0 0 392 5132 6018 11035 1151 79 4.54456 4.54456 -2822.62 -4.54456 0 0 2.11301e+06 4365.72 1.10 0.91 0.46 -1 -1 1.10 0.38985 0.354616 1283 1367 532 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_30.v common 34.07 vpr 83.86 MiB 0.17 15228 -1 -1 1 0.78 -1 -1 43488 -1 -1 173 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85876 22 19 4233 3504 1 2198 223 22 22 484 mult_36 auto 46.4 MiB 1.24 14538 44163 8193 31462 4508 83.9 MiB 1.41 0.02 3.79276 -2331.2 -3.79276 3.79276 2.33 0.00921016 0.00831726 0.627042 0.557708 56 29555 46 1.30842e+07 5.98149e+06 1.71605e+06 3545.56 20.77 3.8155 3.3656 51606 428054 -1 22822 18 8986 10722 1909001 432173 0 0 1909001 432173 9415 9088 0 0 85955 77156 0 0 103186 93046 0 0 9417 9165 0 0 852779 121700 0 0 848249 122018 0 0 9415 0 0 452 6833 6482 11786 1351 222 4.52256 4.52256 -2996.37 -4.52256 0 0 2.11301e+06 4365.72 1.12 0.93 0.49 -1 -1 1.12 0.400761 0.363602 1311 1386 551 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_31.v common 29.11 vpr 84.93 MiB 0.17 15828 -1 -1 1 0.85 -1 -1 43340 -1 -1 179 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86972 22 19 4410 3647 1 2304 229 22 22 484 mult_36 auto 47.3 MiB 1.28 14019 44329 8288 31325 4716 84.9 MiB 1.31 0.02 3.79276 -2360.11 -3.79276 3.79276 2.27 0.00952281 0.00854853 0.549668 0.484573 58 27266 47 1.30842e+07 6.06533e+06 1.75961e+06 3635.55 15.61 3.31754 2.91634 52570 450426 -1 21488 19 9152 10411 1797517 410141 0 0 1797517 410141 9461 9199 0 0 82503 74916 0 0 98816 89131 0 0 9462 9239 0 0 792623 116062 0 0 804652 111594 0 0 9461 0 0 327 4662 4622 11132 987 67 4.41926 4.41926 -2909.73 -4.41926 0 0 2.20457e+06 4554.90 1.20 0.99 0.54 -1 -1 1.20 0.468442 0.426056 1363 1441 570 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_32.v common 29.91 vpr 86.14 MiB 0.18 15712 -1 -1 1 0.86 -1 -1 43544 -1 -1 183 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88204 22 19 4484 3704 1 2346 233 22 22 484 mult_36 auto 47.7 MiB 1.30 15386 49637 9542 35364 4731 86.1 MiB 1.54 0.02 4.04336 -2411.15 -4.04336 4.04336 2.32 0.00925553 0.00836414 0.669097 0.598761 60 27751 37 1.30842e+07 6.12123e+06 1.79840e+06 3715.71 16.00 3.31698 2.92932 53054 462096 -1 22683 18 8864 10459 1822324 392800 0 0 1822324 392800 9242 8918 0 0 78079 69998 0 0 93237 83859 0 0 9244 8971 0 0 822574 109169 0 0 809948 111885 0 0 9242 0 0 398 5933 6677 11256 1259 185 4.64786 4.64786 -3049.88 -4.64786 0 0 2.25108e+06 4650.99 1.19 0.94 0.54 -1 -1 1.19 0.430909 0.391872 1393 1460 589 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_33.v common 36.36 vpr 87.29 MiB 0.20 16724 -1 -1 1 0.94 -1 -1 43892 -1 -1 196 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89388 22 19 4843 4029 1 2462 247 22 22 484 mult_36 auto 48.9 MiB 1.37 16459 43591 7526 32122 3943 87.3 MiB 1.41 0.03 3.89606 -2651.16 -3.89606 3.89606 2.42 0.0108367 0.00870166 0.575573 0.497976 64 27807 23 1.30842e+07 6.6989e+06 1.90554e+06 3937.06 21.92 3.9849 3.5266 54502 494576 -1 23084 17 8547 10213 1522155 331510 0 0 1522155 331510 8910 8608 0 0 71427 63084 0 0 88455 78354 0 0 8913 8661 0 0 678483 86343 0 0 665967 86460 0 0 8910 0 0 386 6353 6513 10741 1356 2 4.39726 4.39726 -3289.68 -4.39726 0 0 2.40101e+06 4960.76 1.30 0.95 0.60 -1 -1 1.30 0.484328 0.439319 1490 1606 608 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_34.v common 30.71 vpr 87.18 MiB 0.20 17088 -1 -1 1 0.96 -1 -1 44088 -1 -1 199 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89268 22 19 4917 4086 1 2503 250 22 22 484 mult_36 auto 49.6 MiB 1.45 17150 44322 7671 32308 4343 87.2 MiB 1.50 0.02 3.91806 -2639.01 -3.91806 3.91806 2.35 0.00959641 0.00860928 0.630863 0.557943 60 31982 48 1.30842e+07 6.74082e+06 1.79840e+06 3715.71 16.25 4.34063 3.81443 53054 462096 -1 24721 19 9916 11698 1916245 421301 0 0 1916245 421301 10341 9960 0 0 86362 77702 0 0 103509 92946 0 0 10346 10001 0 0 849347 114073 0 0 856340 116619 0 0 10341 0 0 446 7225 6711 12599 1415 539 4.41926 4.41926 -3254.72 -4.41926 0 0 2.25108e+06 4650.99 1.20 1.10 0.55 -1 -1 1.20 0.5278 0.478023 1519 1625 627 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_35.v common 32.26 vpr 88.00 MiB 0.21 17364 -1 -1 1 1.09 -1 -1 44380 -1 -1 207 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90112 22 19 5093 4228 1 2606 258 22 22 484 mult_36 auto 50.6 MiB 1.34 18465 48697 8675 34625 5397 88.0 MiB 1.54 0.03 3.79276 -2819.04 -3.79276 3.79276 2.34 0.00975543 0.00811911 0.618177 0.531669 64 33286 40 1.30842e+07 6.85261e+06 1.90554e+06 3937.06 17.40 3.82682 3.33754 54502 494576 -1 26284 18 10296 12104 2015038 438257 0 0 2015038 438257 10760 10420 0 0 86128 76641 0 0 106344 94241 0 0 10764 10481 0 0 893704 121791 0 0 907338 124683 0 0 10760 0 0 486 5772 6475 12998 1415 158 4.41926 4.41926 -3497.71 -4.41926 0 0 2.40101e+06 4960.76 1.30 1.12 0.59 -1 -1 1.30 0.525389 0.480573 1572 1680 646 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_36.v common 43.94 vpr 89.45 MiB 0.21 17556 -1 -1 1 1.08 -1 -1 44512 -1 -1 209 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91592 22 19 5167 4285 1 2653 260 22 22 484 mult_36 auto 50.9 MiB 1.44 17974 53316 9879 38898 4539 89.4 MiB 1.79 0.03 3.79276 -2763.15 -3.79276 3.79276 2.33 0.0117004 0.00980082 0.735971 0.639653 68 31310 32 1.30842e+07 6.88056e+06 2.01763e+06 4168.66 28.64 5.65545 4.9577 55470 518816 -1 25090 18 9668 11428 1893057 415623 0 0 1893057 415623 10158 9735 0 0 85036 76484 0 0 100616 90869 0 0 10169 9793 0 0 851547 114252 0 0 835531 114490 0 0 10158 0 0 509 6327 6805 12670 1360 52 4.29396 4.29396 -3433.63 -4.29396 0 0 2.51205e+06 5190.18 1.35 1.09 0.63 -1 -1 1.35 0.529728 0.482479 1600 1699 665 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_37.v common 44.19 vpr 89.27 MiB 0.21 17780 -1 -1 1 1.11 -1 -1 43480 -1 -1 218 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91412 22 19 5380 4464 1 2755 270 24 24 576 mult_36 auto 51.5 MiB 1.54 18637 56078 10806 41326 3946 89.0 MiB 1.80 0.03 4.16866 -3145.82 -4.16866 4.16866 2.80 0.010232 0.00903207 0.720711 0.634438 64 31076 23 1.57908e+07 7.40233e+06 2.26035e+06 3924.22 27.32 5.47078 4.8349 64454 586630 -1 26409 24 9544 11055 1768906 389622 0 0 1768906 389622 9883 9578 0 0 79140 70151 0 0 96888 86538 0 0 9887 9629 0 0 793593 107620 0 0 779515 106106 0 0 9883 0 0 356 5459 6285 11722 1208 90 4.54456 4.54456 -3546.07 -4.54456 0 0 2.84938e+06 4946.85 1.59 1.25 0.72 -1 -1 1.59 0.687974 0.624554 1662 1772 684 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_38.v common 44.08 vpr 91.38 MiB 0.25 18164 -1 -1 1 1.18 -1 -1 44632 -1 -1 220 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93568 22 19 5454 4521 1 2802 272 24 24 576 mult_36 auto 52.3 MiB 1.57 19630 51370 9117 38066 4187 89.7 MiB 1.80 0.03 4.04336 -3159.99 -4.04336 4.04336 2.82 0.0107488 0.0098304 0.734773 0.645314 64 32953 38 1.57908e+07 7.43028e+06 2.26035e+06 3924.22 27.04 5.21018 4.59167 64454 586630 -1 27449 19 10009 11720 2021737 442795 0 0 2021737 442795 10412 10073 0 0 88276 78886 0 0 106753 95734 0 0 10413 10110 0 0 911434 122475 0 0 894449 125517 0 0 10412 0 0 421 6029 7391 12744 1347 368 4.41926 4.41926 -3905.43 -4.41926 0 0 2.84938e+06 4946.85 1.60 1.23 0.72 -1 -1 1.60 0.61998 0.55998 1690 1791 703 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_39.v common 42.88 vpr 90.26 MiB 0.22 18252 -1 -1 1 1.16 -1 -1 45372 -1 -1 228 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92428 22 19 5629 4662 1 2909 280 24 24 576 mult_36 auto 53.2 MiB 1.57 18773 64330 12593 46318 5419 90.3 MiB 2.21 0.03 4.04336 -3208.57 -4.04336 4.04336 2.91 0.0112206 0.0102095 0.890964 0.789559 58 35050 43 1.57908e+07 7.54207e+06 2.08734e+06 3623.85 25.30 4.43309 3.8772 62154 534210 -1 27342 16 10529 12327 2137014 483379 0 0 2137014 483379 10960 10608 0 0 91322 81788 0 0 110730 99282 0 0 10962 10652 0 0 963126 138535 0 0 949914 142514 0 0 10960 0 0 451 6544 6986 13010 1448 240 4.54456 4.54456 -3664.74 -4.54456 0 0 2.61600e+06 4541.67 1.43 1.15 0.70 -1 -1 1.43 0.521697 0.473845 1742 1846 722 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_40.v common 45.91 vpr 93.29 MiB 0.30 18420 -1 -1 1 1.22 -1 -1 43588 -1 -1 232 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95524 22 19 5703 4719 1 2951 284 24 24 576 mult_36 auto 53.7 MiB 1.58 19791 57197 10217 42518 4462 90.6 MiB 2.02 0.03 4.16866 -3225.65 -4.16866 4.16866 2.80 0.0131141 0.0116434 0.834193 0.732306 66 34225 34 1.57908e+07 7.59797e+06 2.33135e+06 4047.49 28.45 5.92769 5.15293 65030 601923 -1 27712 16 10106 11964 1772454 398182 0 0 1772454 398182 10539 10185 0 0 85066 75456 0 0 104442 92789 0 0 10542 10227 0 0 780683 105138 0 0 781182 104387 0 0 10539 0 0 450 6713 7837 12637 1510 570 4.54456 4.54456 -3769.17 -4.54456 0 0 2.91907e+06 5067.82 1.62 1.05 0.72 -1 -1 1.62 0.527644 0.47674 1771 1865 741 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_41.v common 35.26 vpr 91.81 MiB 0.24 18896 -1 -1 1 1.32 -1 -1 45956 -1 -1 240 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94012 22 19 5950 4932 1 3065 293 24 24 576 mult_36 auto 54.8 MiB 1.60 20763 57641 10395 42086 5160 91.8 MiB 2.04 0.03 4.04336 -3408.74 -4.04336 4.04336 2.77 0.0135732 0.0121181 0.863096 0.753356 64 34869 32 1.57908e+07 8.10576e+06 2.26035e+06 3924.22 17.74 4.50242 3.91118 64454 586630 -1 29180 18 10731 12407 2049175 464485 0 0 2049175 464485 11145 10810 0 0 90341 80494 0 0 111546 99334 0 0 11149 10860 0 0 913155 129635 0 0 911839 133352 0 0 11145 0 0 434 6042 7120 13209 1322 172 4.54456 4.54456 -4058.42 -4.54456 0 0 2.84938e+06 4946.85 1.61 1.13 0.72 -1 -1 1.61 0.535115 0.482026 1841 1956 760 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_42.v common 40.69 vpr 92.38 MiB 0.24 19060 -1 -1 1 1.33 -1 -1 45948 -1 -1 242 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94600 22 19 6024 4989 1 3106 295 24 24 576 mult_36 auto 55.4 MiB 1.68 22076 56212 9475 42400 4337 92.4 MiB 2.01 0.03 4.16866 -3520.33 -4.16866 4.16866 2.79 0.0116974 0.0105596 0.834061 0.735334 68 37974 34 1.57908e+07 8.13371e+06 2.39371e+06 4155.74 22.89 5.5337 4.82063 65606 615345 -1 29978 17 11142 12876 1980845 429371 0 0 1980845 429371 11619 11211 0 0 91074 81075 0 0 109404 98010 0 0 11622 11266 0 0 883680 114563 0 0 873446 113246 0 0 11619 0 0 497 6448 6390 14442 1284 626 4.54456 4.54456 -4090.79 -4.54456 0 0 2.98162e+06 5176.42 1.65 1.19 0.76 -1 -1 1.65 0.59874 0.538283 1869 1975 779 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_43.v common 35.78 vpr 93.08 MiB 0.24 19388 -1 -1 1 1.40 -1 -1 46204 -1 -1 250 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95316 22 19 6198 5129 1 3209 303 24 24 576 mult_36 auto 56.1 MiB 1.69 22368 59289 10536 43859 4894 93.1 MiB 1.85 0.03 4.16866 -3591.6 -4.16866 4.16866 2.82 0.0103344 0.00905022 0.678278 0.588386 66 39189 47 1.57908e+07 8.2455e+06 2.33135e+06 4047.49 17.68 4.18954 3.6426 65030 601923 -1 31031 19 11564 13703 2241321 496454 0 0 2241321 496454 12097 11647 0 0 101145 90558 0 0 123679 110424 0 0 12099 11711 0 0 995024 137498 0 0 997277 134616 0 0 12097 0 0 552 7606 7941 15021 1655 707 4.54456 4.54456 -4327.1 -4.54456 0 0 2.91907e+06 5067.82 1.80 1.38 0.73 -1 -1 1.80 0.667099 0.602507 1921 2030 798 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_44.v common 42.26 vpr 93.60 MiB 0.25 19732 -1 -1 1 1.41 -1 -1 46200 -1 -1 253 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95844 22 19 6272 5186 1 3253 306 24 24 576 mult_36 auto 56.4 MiB 1.78 24531 64166 11746 47513 4907 93.6 MiB 2.24 0.03 4.16866 -3662 -4.16866 4.16866 2.75 0.0140531 0.0126518 0.905087 0.803546 68 40418 30 1.57908e+07 8.28742e+06 2.39371e+06 4155.74 23.98 4.57053 3.99838 65606 615345 -1 32648 17 11557 13461 2212193 477286 0 0 2212193 477286 12045 11637 0 0 94528 84185 0 0 114541 102242 0 0 12049 11716 0 0 978668 133134 0 0 1000362 134372 0 0 12045 0 0 507 6910 7220 14792 1458 1271 4.66986 4.66986 -4297.46 -4.66986 0 0 2.98162e+06 5176.42 1.67 1.22 0.73 -1 -1 1.67 0.573016 0.517891 1949 2049 817 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_45.v common 45.67 vpr 94.57 MiB 0.25 20004 -1 -1 1 1.45 -1 -1 46836 -1 -1 262 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96836 22 19 6485 5365 1 3362 316 24 24 576 mult_36 auto 57.5 MiB 1.86 24875 69116 12472 51303 5341 94.6 MiB 2.54 0.04 4.16866 -3860.22 -4.16866 4.16866 2.78 0.0146457 0.0119435 1.00541 0.846523 70 42781 35 1.57908e+07 8.80919e+06 2.45377e+06 4260.01 26.56 5.96409 5.16218 66754 640332 -1 34179 18 12386 14536 2378520 506579 0 0 2378520 506579 12923 12493 0 0 103197 91101 0 0 125117 111385 0 0 12923 12591 0 0 1064451 141039 0 0 1059909 137970 0 0 12923 0 0 558 7497 8125 16047 1662 793 4.54456 4.54456 -4399.63 -4.54456 0 0 3.09179e+06 5367.68 1.73 1.39 0.77 -1 -1 1.73 0.675615 0.608206 2011 2122 836 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_46.v common 37.40 vpr 94.90 MiB 0.27 20112 -1 -1 1 1.43 -1 -1 46572 -1 -1 266 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97180 22 19 6559 5422 1 3404 320 24 24 576 mult_36 auto 57.9 MiB 1.87 23197 62678 10654 46160 5864 94.9 MiB 2.10 0.03 4.16866 -3803.43 -4.16866 4.16866 2.79 0.0126634 0.0113923 0.83795 0.744336 66 40126 49 1.57908e+07 8.86508e+06 2.33135e+06 4047.49 18.73 5.05931 4.43843 65030 601923 -1 31529 20 11588 13518 2153293 490982 0 0 2153293 490982 12117 11650 0 0 100874 89908 0 0 121424 109328 0 0 12121 11710 0 0 957584 135751 0 0 949173 132635 0 0 12117 0 0 547 6540 6773 14779 1478 642 4.54456 4.54456 -4384.26 -4.54456 0 0 2.91907e+06 5067.82 1.68 1.40 0.72 -1 -1 1.68 0.736442 0.666065 2040 2141 855 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_47.v common 39.82 vpr 98.27 MiB 0.29 20456 -1 -1 1 1.50 -1 -1 46696 -1 -1 273 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100624 22 19 6735 5564 1 3511 327 24 24 576 mult_36 auto 59.5 MiB 1.87 23716 69013 12182 50404 6427 98.3 MiB 2.43 0.03 4.16866 -3895.9 -4.16866 4.16866 2.75 0.0136119 0.0124261 0.93113 0.817537 68 39215 33 1.57908e+07 8.9629e+06 2.39371e+06 4155.74 21.01 5.37854 4.69316 65606 615345 -1 31757 18 12057 14011 2095082 469724 0 0 2095082 469724 12550 12089 0 0 96603 85974 0 0 118131 105205 0 0 12559 12158 0 0 930279 127822 0 0 924960 126476 0 0 12550 0 0 510 6398 7537 15070 1527 555 4.52256 4.52256 -4426.82 -4.52256 0 0 2.98162e+06 5176.42 1.65 1.27 0.72 -1 -1 1.65 0.63345 0.572619 2092 2196 874 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_48.v common 39.53 vpr 96.67 MiB 0.27 20896 -1 -1 1 1.57 -1 -1 47060 -1 -1 276 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98988 22 19 6809 5621 1 3555 330 24 24 576 mult_36 auto 59.5 MiB 1.96 26298 72087 13260 53038 5789 96.7 MiB 2.48 0.04 4.04336 -3971.87 -4.04336 4.04336 2.83 0.0138419 0.0123448 0.929218 0.809739 74 42057 47 1.57908e+07 9.00482e+06 2.56259e+06 4448.94 19.66 5.36188 4.70488 67906 667765 -1 35393 18 12500 14495 2534058 544287 0 0 2534058 544287 13010 12585 0 0 100126 89145 0 0 125629 110633 0 0 13017 12659 0 0 1152261 158246 0 0 1130015 161019 0 0 13010 0 0 530 7126 7498 16032 1534 890 4.54456 4.54456 -4646.04 -4.54456 0 0 3.19068e+06 5539.38 1.87 1.41 0.79 -1 -1 1.87 0.67831 0.612753 2121 2215 893 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_49.v common 46.51 vpr 98.73 MiB 0.28 21468 -1 -1 1 1.65 -1 -1 47344 -1 -1 287 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101100 22 19 7094 5872 1 3669 342 24 24 576 mult_36 auto 61.2 MiB 2.04 25761 74432 13349 54270 6813 98.2 MiB 2.60 0.03 4.29396 -4126.54 -4.29396 4.29396 2.84 0.0119521 0.0104794 0.945746 0.830984 68 42296 28 1.57908e+07 9.55454e+06 2.39371e+06 4155.74 26.50 5.13065 4.45716 65606 615345 -1 34188 17 12630 15060 2380788 525921 0 0 2380788 525921 13169 12711 0 0 107388 95669 0 0 129579 115911 0 0 13175 12814 0 0 1056769 144354 0 0 1060708 144462 0 0 13169 0 0 559 8705 10914 16053 1952 1716 4.54456 4.54456 -4693.55 -4.54456 0 0 2.98162e+06 5176.42 1.72 1.43 0.74 -1 -1 1.72 0.728106 0.654545 2200 2324 912 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_50.v common 45.17 vpr 97.45 MiB 0.30 21364 -1 -1 1 1.70 -1 -1 46916 -1 -1 290 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99784 22 19 7168 5929 1 3710 345 24 24 576 mult_36 auto 60.6 MiB 2.07 24936 69258 11001 52065 6192 97.4 MiB 2.31 0.04 4.04336 -4136.97 -4.04336 4.04336 2.94 0.012465 0.010969 0.830527 0.722864 68 41964 29 1.57908e+07 9.59646e+06 2.39371e+06 4155.74 25.08 5.22861 4.52348 65606 615345 -1 34027 21 12965 15238 2296944 507009 0 0 2296944 507009 13476 13043 0 0 107730 96082 0 0 130490 116365 0 0 13476 13091 0 0 1038743 129997 0 0 993029 138431 0 0 13476 0 0 528 7867 8520 16292 1804 706 4.41926 4.41926 -4812.51 -4.41926 0 0 2.98162e+06 5176.42 1.67 1.61 0.75 -1 -1 1.67 0.889148 0.786544 2229 2343 931 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_51.v common 39.98 vpr 98.59 MiB 0.29 21700 -1 -1 1 1.78 -1 -1 47784 -1 -1 297 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100960 22 19 7344 6071 1 3814 352 24 24 576 mult_36 auto 61.6 MiB 2.09 28314 76114 13340 56817 5957 98.6 MiB 2.75 0.04 4.29396 -4303.37 -4.29396 4.29396 2.79 0.0128694 0.0113352 1.00047 0.866023 74 45792 31 1.57908e+07 9.69428e+06 2.56259e+06 4448.94 19.34 5.26498 4.59296 67906 667765 -1 38627 15 13383 15589 2721426 575802 0 0 2721426 575802 13909 13447 0 0 106009 94337 0 0 131430 116030 0 0 13909 13502 0 0 1237063 167637 0 0 1219106 170849 0 0 13909 0 0 544 7866 9539 16847 1736 958 4.66986 4.66986 -5085.64 -4.66986 0 0 3.19068e+06 5539.38 1.80 1.37 0.80 -1 -1 1.80 0.593829 0.534991 2282 2398 950 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_pipe_52.v common 43.21 vpr 98.91 MiB 0.29 21816 -1 -1 1 1.73 -1 -1 47536 -1 -1 301 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101280 22 19 7418 6128 1 3859 356 24 24 576 mult_36 auto 62.0 MiB 2.11 27209 78538 14009 57210 7319 98.9 MiB 2.83 0.04 4.27196 -4220.72 -4.27196 4.27196 2.82 0.0138415 0.0123416 0.977942 0.856224 74 43582 36 1.57908e+07 9.75017e+06 2.56259e+06 4448.94 22.50 5.42499 4.72112 67906 667765 -1 36810 19 12977 15583 2665756 579256 0 0 2665756 579256 13542 13000 0 0 104967 92939 0 0 129933 114499 0 0 13545 13055 0 0 1201825 171509 0 0 1201944 174254 0 0 13542 0 0 584 9554 10570 16128 2163 1331 4.54456 4.54456 -4923.7 -4.54456 0 0 3.19068e+06 5539.38 1.78 1.53 0.76 -1 -1 1.78 0.744073 0.66631 2310 2417 969 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_14.v common 15.46 vpr 69.26 MiB 0.07 9672 -1 -1 1 0.23 -1 -1 37492 -1 -1 58 22 0 4 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70920 22 19 1246 925 1 732 103 16 16 256 mult_36 auto 31.1 MiB 4.22 4081 14081 3333 8981 1767 69.3 MiB 0.39 0.01 7.39293 -331.127 -7.39293 7.39293 0.98 0.0025678 0.00218711 0.170124 0.151631 40 8961 39 6.52434e+06 2.39448e+06 616420. 2407.89 6.38 0.949422 0.841974 23812 153515 -1 7310 24 7236 8114 1329941 327320 0 0 1329941 327320 8114 7478 0 0 67074 62299 0 0 82212 72743 0 0 8165 7544 0 0 586982 89609 0 0 577394 87647 0 0 8114 0 0 908 5697 6019 52020 0 0 8.08043 8.08043 -449.342 -8.08043 0 0 808720. 3159.06 0.36 0.55 0.17 -1 -1 0.36 0.162555 0.146478 421 285 247 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_15.v common 13.85 vpr 69.77 MiB 0.08 9668 -1 -1 1 0.22 -1 -1 37880 -1 -1 61 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71448 22 19 1344 989 1 793 107 16 16 256 mult_36 auto 31.6 MiB 3.31 4749 13769 3469 8551 1749 69.8 MiB 0.39 0.01 7.43507 -344.031 -7.43507 7.43507 1.16 0.00287399 0.00262449 0.166617 0.150126 44 9578 46 6.52434e+06 2.8324e+06 686998. 2683.59 5.48 0.932322 0.830433 24576 170172 -1 7152 24 5300 6149 919834 236844 0 0 919834 236844 6149 5508 0 0 52370 49236 0 0 61567 55760 0 0 6221 5573 0 0 403182 60573 0 0 390345 60194 0 0 6149 0 0 873 6783 5963 56896 0 0 7.82514 7.82514 -460.438 -7.82514 0 0 871168. 3403.00 0.39 0.41 0.20 -1 -1 0.39 0.146747 0.132902 453 304 266 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_16.v common 16.86 vpr 70.03 MiB 0.08 9944 -1 -1 1 0.25 -1 -1 38160 -1 -1 65 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71708 22 19 1418 1046 1 832 111 16 16 256 mult_36 auto 32.1 MiB 4.55 4817 18465 4347 10911 3207 70.0 MiB 0.47 0.01 7.30977 -364.374 -7.30977 7.30977 1.11 0.00296545 0.00262934 0.201716 0.179996 46 10048 50 6.52434e+06 2.88829e+06 723233. 2825.13 6.95 1.02609 0.912197 24832 174915 -1 7571 24 6845 7624 1197158 297584 0 0 1197158 297584 7624 6997 0 0 62908 59190 0 0 72871 65863 0 0 7683 7061 0 0 527915 77551 0 0 518157 80922 0 0 7624 0 0 803 5047 4320 52230 0 0 8.01343 8.01343 -518.499 -8.01343 0 0 890343. 3477.90 0.40 0.52 0.20 -1 -1 0.40 0.174018 0.158061 481 323 285 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_17.v common 17.54 vpr 70.56 MiB 0.09 10284 -1 -1 1 0.24 -1 -1 37828 -1 -1 71 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72256 22 19 1518 1112 1 896 117 16 16 256 mult_36 auto 32.7 MiB 4.16 5385 22425 5218 14028 3179 70.6 MiB 0.64 0.01 8.10891 -418.461 -8.10891 8.10891 1.05 0.00292082 0.00258437 0.252595 0.225573 50 11208 48 6.52434e+06 2.97214e+06 787708. 3076.99 7.89 1.18806 1.05819 25344 186282 -1 8321 22 6876 7629 1120014 298721 0 0 1120014 298721 7629 7016 0 0 67542 63173 0 0 77312 70918 0 0 7671 7091 0 0 492379 75918 0 0 467481 74605 0 0 7629 0 0 780 5002 5236 51215 0 0 8.83858 8.83858 -535.233 -8.83858 0 0 943753. 3686.54 0.42 0.52 0.23 -1 -1 0.42 0.184188 0.166747 514 342 304 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_18.v common 18.30 vpr 71.02 MiB 0.09 10348 -1 -1 1 0.25 -1 -1 38264 -1 -1 74 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72728 22 19 1592 1169 1 934 120 16 16 256 mult_36 auto 33.0 MiB 5.63 5761 20180 4518 12158 3504 71.0 MiB 0.58 0.01 7.95061 -441.879 -7.95061 7.95061 1.02 0.00327697 0.00297563 0.249658 0.222697 46 11625 35 6.52434e+06 3.01406e+06 723233. 2825.13 7.24 1.12087 0.996995 24832 174915 -1 8780 23 7242 8179 1075682 272540 0 0 1075682 272540 8179 7436 0 0 64764 60989 0 0 74546 68031 0 0 8253 7514 0 0 465410 65765 0 0 454530 62805 0 0 8179 0 0 967 6848 6769 66807 0 0 8.82628 8.82628 -582.876 -8.82628 0 0 890343. 3477.90 0.39 0.51 0.21 -1 -1 0.39 0.18793 0.170323 542 361 323 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_19.v common 16.90 vpr 71.36 MiB 0.09 10660 -1 -1 1 0.27 -1 -1 38688 -1 -1 79 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73068 22 19 1688 1231 1 994 126 16 16 256 mult_36 auto 33.3 MiB 4.75 5706 19971 4610 11855 3506 71.4 MiB 0.57 0.01 8.06677 -399.655 -8.06677 8.06677 1.02 0.00340746 0.0030907 0.24681 0.222776 54 11414 50 6.52434e+06 3.47993e+06 829453. 3240.05 6.64 1.24408 1.10924 26108 202796 -1 8422 24 6715 7632 1042674 270564 0 0 1042674 270564 7419 6845 0 0 58644 55059 0 0 68159 61828 0 0 7475 6903 0 0 457285 69661 0 0 443692 70268 0 0 7419 0 0 728 4026 4190 33180 318 1 8.75428 8.75428 -597.727 -8.75428 0 0 1.02522e+06 4004.78 0.45 0.49 0.25 -1 -1 0.45 0.181206 0.163855 573 380 342 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_20.v common 21.33 vpr 72.04 MiB 0.10 10712 -1 -1 1 0.31 -1 -1 38604 -1 -1 81 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73768 22 19 1762 1288 1 1031 128 16 16 256 mult_36 auto 34.1 MiB 5.72 5976 17516 3516 11491 2509 72.0 MiB 0.57 0.01 8.06677 -426.077 -8.06677 8.06677 1.02 0.00400571 0.00365868 0.239348 0.214047 54 10528 29 6.52434e+06 3.50787e+06 829453. 3240.05 10.06 1.74832 1.55273 26108 202796 -1 8637 25 6690 7398 974015 254046 0 0 974015 254046 7240 6779 0 0 58109 54703 0 0 67607 61550 0 0 7276 6867 0 0 423640 62570 0 0 410143 61577 0 0 7240 0 0 572 2764 2840 28031 182 15 8.48768 8.48768 -550.25 -8.48768 0 0 1.02522e+06 4004.78 0.45 0.49 0.25 -1 -1 0.45 0.193556 0.175109 601 399 361 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_21.v common 22.04 vpr 72.44 MiB 0.10 11048 -1 -1 1 0.33 -1 -1 38364 -1 -1 85 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74176 22 19 1859 1351 1 1093 132 16 16 256 mult_36 auto 34.6 MiB 5.55 6741 17887 3435 10975 3477 72.4 MiB 0.54 0.01 7.98361 -446.241 -7.98361 7.98361 1.00 0.00412688 0.00371606 0.23362 0.209409 54 12223 28 6.52434e+06 3.56377e+06 829453. 3240.05 10.80 1.85204 1.64116 26108 202796 -1 9622 24 7143 8191 1180592 299505 0 0 1180592 299505 7817 7314 0 0 63306 59463 0 0 73442 66995 0 0 7851 7387 0 0 518261 78137 0 0 509915 80209 0 0 7817 0 0 698 5279 4222 35949 405 1 8.66198 8.66198 -655.367 -8.66198 0 0 1.02522e+06 4004.78 0.45 0.59 0.23 -1 -1 0.45 0.233235 0.21065 632 418 380 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_22.v common 22.92 vpr 72.62 MiB 0.10 11388 -1 -1 1 0.34 -1 -1 38128 -1 -1 90 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74368 22 19 1933 1408 1 1131 137 16 16 256 mult_36 auto 34.8 MiB 6.59 7075 18493 3429 11960 3104 72.6 MiB 0.53 0.01 8.10891 -466.13 -8.10891 8.10891 1.01 0.00391061 0.00354984 0.218389 0.196901 56 11781 30 6.52434e+06 3.63364e+06 849745. 3319.32 10.54 1.73002 1.543 26364 208198 -1 10127 23 7666 8681 1232559 311995 0 0 1232559 311995 8376 7857 0 0 66506 61607 0 0 80946 72556 0 0 8401 7906 0 0 538083 80702 0 0 530247 81367 0 0 8376 0 0 734 4697 5194 39335 323 31 8.57868 8.57868 -639.939 -8.57868 0 0 1.04740e+06 4091.43 0.47 0.57 0.26 -1 -1 0.47 0.200779 0.18128 661 437 399 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_23.v common 26.24 vpr 73.13 MiB 0.11 11488 -1 -1 1 0.35 -1 -1 38840 -1 -1 94 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74888 22 19 2031 1472 1 1193 142 18 18 324 mult_36 auto 35.1 MiB 6.35 7675 23452 5204 15585 2663 73.1 MiB 0.74 0.01 8.28437 -491.885 -8.28437 8.28437 1.41 0.00421025 0.00384334 0.303352 0.271563 54 13859 35 8.04299e+06 4.08553e+06 1.08842e+06 3359.33 12.68 1.88697 1.67338 33712 268580 -1 11107 24 7716 8822 1455684 340775 0 0 1455684 340775 8250 7878 0 0 69144 64664 0 0 79188 72396 0 0 8255 7934 0 0 646982 91081 0 0 643865 96822 0 0 8250 0 0 559 3807 3256 11146 610 77 8.89058 8.89058 -719.135 -8.89058 0 0 1.34436e+06 4149.26 0.65 0.71 0.32 -1 -1 0.65 0.257994 0.234655 693 456 418 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_24.v common 22.55 vpr 73.41 MiB 0.11 11564 -1 -1 1 0.34 -1 -1 38948 -1 -1 97 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75176 22 19 2105 1529 1 1232 145 18 18 324 mult_36 auto 35.5 MiB 6.86 8304 21425 4273 14398 2754 73.4 MiB 0.67 0.01 8.09791 -534.964 -8.09791 8.09791 1.41 0.00442429 0.00403688 0.277238 0.249304 54 15175 41 8.04299e+06 4.12745e+06 1.08842e+06 3359.33 8.49 1.35354 1.19811 33712 268580 -1 11770 23 8753 10055 1470354 350605 0 0 1470354 350605 9340 8938 0 0 76962 71693 0 0 89150 81063 0 0 9342 8969 0 0 657562 89202 0 0 627998 90740 0 0 9340 0 0 614 3396 4104 12461 747 2 8.51409 8.51409 -763.942 -8.51409 0 0 1.34436e+06 4149.26 0.64 0.69 0.32 -1 -1 0.64 0.242014 0.218948 721 475 437 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_25.v common 23.04 vpr 73.86 MiB 0.12 11948 -1 -1 1 0.41 -1 -1 39008 -1 -1 101 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75636 22 19 2201 1591 1 1290 149 18 18 324 mult_36 auto 36.1 MiB 6.50 8532 19061 3544 13478 2039 73.9 MiB 0.61 0.01 8.06491 -503.392 -8.06491 8.06491 1.43 0.00402523 0.00359543 0.230148 0.20566 50 16863 41 8.04299e+06 4.18335e+06 1.03391e+06 3191.07 9.11 1.43558 1.27301 32744 246704 -1 12667 27 11078 12540 2343785 536614 0 0 2343785 536614 11818 11235 0 0 103294 95725 0 0 122837 109353 0 0 11834 11296 0 0 1052559 152186 0 0 1041443 156819 0 0 11818 0 0 771 4420 5066 17154 845 103 8.85428 8.85428 -785.737 -8.85428 0 0 1.23838e+06 3822.15 0.60 1.03 0.27 -1 -1 0.60 0.319197 0.285299 751 494 456 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_26.v common 23.20 vpr 74.30 MiB 0.12 12312 -1 -1 1 0.39 -1 -1 39408 -1 -1 105 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76088 22 19 2275 1648 1 1330 153 18 18 324 mult_36 auto 36.6 MiB 7.35 8137 25102 5066 15859 4177 74.3 MiB 0.72 0.01 8.06677 -535.891 -8.06677 8.06677 1.45 0.00423262 0.00377663 0.284535 0.251708 48 17038 48 8.04299e+06 4.23924e+06 991730. 3060.90 8.38 1.45934 1.28983 32420 239176 -1 12884 25 11090 12602 2087605 488233 0 0 2087605 488233 11660 11307 0 0 101359 94635 0 0 124186 110595 0 0 11664 11397 0 0 922094 130715 0 0 916642 129584 0 0 11660 0 0 601 5523 5745 14768 990 17 8.93829 8.93829 -991.36 -8.93829 0 0 1.20291e+06 3712.69 0.60 0.86 0.29 -1 -1 0.60 0.26902 0.243353 779 513 475 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_27.v common 22.90 vpr 74.90 MiB 0.13 12252 -1 -1 1 0.42 -1 -1 39696 -1 -1 111 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76696 22 19 2385 1724 1 1404 160 18 18 324 mult_36 auto 37.2 MiB 7.31 8719 33144 7083 20581 5480 74.9 MiB 0.98 0.01 7.97261 -566.816 -7.97261 7.97261 1.42 0.00463503 0.00416671 0.371146 0.329916 52 17250 37 8.04299e+06 4.7191e+06 1.06151e+06 3276.26 7.72 1.53645 1.36635 33388 261900 -1 13092 24 10248 11844 1865954 444178 0 0 1865954 444178 10984 10470 0 0 94015 88033 0 0 110894 100890 0 0 10996 10581 0 0 817700 117239 0 0 821365 116965 0 0 10984 0 0 768 5757 5824 20984 935 53 8.60998 8.60998 -989.912 -8.60998 0 0 1.31159e+06 4048.11 0.64 0.85 0.31 -1 -1 0.64 0.291653 0.264925 817 532 494 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_28.v common 25.73 vpr 75.44 MiB 0.13 12580 -1 -1 1 0.43 -1 -1 39384 -1 -1 114 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77252 22 19 2459 1781 1 1443 163 18 18 324 mult_36 auto 37.8 MiB 8.27 9043 30868 6128 20413 4327 75.4 MiB 1.03 0.02 8.31737 -559.506 -8.31737 8.31737 1.40 0.00637432 0.00581368 0.386042 0.344852 54 17021 49 8.04299e+06 4.76102e+06 1.08842e+06 3359.33 9.45 1.78821 1.58552 33712 268580 -1 13258 24 10094 11723 2077924 492145 0 0 2077924 492145 10974 10343 0 0 88816 82827 0 0 104446 93971 0 0 10995 10469 0 0 924774 144438 0 0 937919 150097 0 0 10974 0 0 908 5185 4636 15138 889 92 8.81228 8.81228 -785.484 -8.81228 0 0 1.34436e+06 4149.26 0.65 0.93 0.32 -1 -1 0.65 0.307116 0.280089 845 551 513 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_29.v common 39.18 vpr 75.70 MiB 0.14 12948 -1 -1 1 0.47 -1 -1 40692 -1 -1 118 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77516 22 19 2565 1853 1 1511 168 22 22 484 mult_36 auto 38.2 MiB 8.35 10046 37671 8251 25402 4018 75.7 MiB 1.21 0.01 8.06677 -593.503 -8.06677 8.06677 2.33 0.00525562 0.00478797 0.501099 0.448339 50 18859 30 1.30842e+07 5.21292e+06 1.59181e+06 3288.87 20.22 2.51612 2.22499 49674 382800 -1 14902 25 12376 14186 2440501 552148 0 0 2440501 552148 13080 12593 0 0 117692 109399 0 0 139081 125309 0 0 13083 12665 0 0 1095377 145240 0 0 1062188 146942 0 0 13080 0 0 733 6021 7179 16786 1156 22 9.31348 9.31348 -1062.27 -9.31348 0 0 1.90554e+06 3937.06 0.99 1.04 0.45 -1 -1 0.99 0.325522 0.293107 881 570 532 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_30.v common 31.08 vpr 76.21 MiB 0.14 12780 -1 -1 1 0.49 -1 -1 39948 -1 -1 123 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78040 22 19 2639 1910 1 1549 173 22 22 484 mult_36 auto 38.6 MiB 9.11 10614 33362 7261 22742 3359 76.2 MiB 1.07 0.02 8.23421 -554.147 -8.23421 8.23421 2.31 0.00604113 0.00526652 0.408971 0.361324 52 21545 29 1.30842e+07 5.28279e+06 1.63434e+06 3376.74 11.31 1.85315 1.64225 50638 406276 -1 15649 23 11651 13477 2454221 561553 0 0 2454221 561553 12352 11904 0 0 108409 101244 0 0 126799 115698 0 0 12353 11980 0 0 1092306 160844 0 0 1102002 159883 0 0 12352 0 0 731 6915 6267 16200 1165 2 9.47008 9.47008 -1091.79 -9.47008 0 0 2.01763e+06 4168.66 1.07 1.04 0.48 -1 -1 1.07 0.317071 0.287246 910 589 551 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_31.v common 39.85 vpr 76.66 MiB 0.14 13032 -1 -1 1 0.50 -1 -1 40056 -1 -1 128 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78496 22 19 2744 1981 1 1618 178 22 22 484 mult_36 auto 39.3 MiB 7.99 10305 30178 6054 21077 3047 76.7 MiB 0.98 0.02 7.94147 -586.698 -7.94147 7.94147 2.15 0.00514517 0.00467166 0.370972 0.331387 52 21582 39 1.30842e+07 5.35266e+06 1.63434e+06 3376.74 21.69 2.6574 2.34881 50638 406276 -1 15466 24 12743 14485 2435089 548969 0 0 2435089 548969 13541 12996 0 0 115720 107950 0 0 137106 123692 0 0 13557 13049 0 0 1079117 145213 0 0 1076048 146069 0 0 13541 0 0 827 5394 6323 17867 1036 22 8.97788 8.97788 -1088.59 -8.97788 0 0 2.01763e+06 4168.66 1.00 0.99 0.47 -1 -1 1.00 0.29844 0.270287 946 608 570 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_32.v common 35.15 vpr 76.90 MiB 0.15 13416 -1 -1 1 0.53 -1 -1 40144 -1 -1 131 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78748 22 19 2818 2038 1 1657 181 22 22 484 mult_36 auto 39.5 MiB 10.51 10541 37995 7885 24855 5255 76.9 MiB 1.28 0.02 8.06677 -582.042 -8.06677 8.06677 2.31 0.00588088 0.00537607 0.484146 0.429892 56 19322 42 1.30842e+07 5.39458e+06 1.71605e+06 3545.56 13.59 2.18094 1.93315 51606 428054 -1 15564 23 12857 14518 2510854 592523 0 0 2510854 592523 13612 13065 0 0 118803 110555 0 0 142988 128592 0 0 13618 13228 0 0 1102274 162357 0 0 1119559 164726 0 0 13612 0 0 784 4809 5230 17513 974 105 8.97388 8.97388 -1046.13 -8.97388 0 0 2.11301e+06 4365.72 1.07 1.02 0.49 -1 -1 1.07 0.300939 0.271852 974 627 589 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_33.v common 32.75 vpr 77.53 MiB 0.16 13984 -1 -1 1 0.56 -1 -1 40224 -1 -1 137 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79388 22 19 2923 2109 1 1726 188 22 22 484 mult_36 auto 40.2 MiB 8.92 11348 42152 8933 28262 4957 77.5 MiB 1.38 0.01 8.60431 -609.519 -8.60431 8.60431 2.32 0.0054362 0.00469774 0.543979 0.480607 54 20963 33 1.30842e+07 5.87443e+06 1.67518e+06 3461.11 12.46 2.22388 1.97099 51122 416746 -1 16397 25 13048 14944 2610870 609066 0 0 2610870 609066 13919 13252 0 0 121092 113548 0 0 141334 127733 0 0 13926 13332 0 0 1154671 170367 0 0 1165928 170834 0 0 13919 0 0 901 5390 5972 18565 1096 179 9.67872 9.67872 -1035.65 -9.67872 0 0 2.06816e+06 4273.05 1.08 1.17 0.50 -1 -1 1.08 0.383955 0.346192 1009 646 608 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_34.v common 39.04 vpr 77.91 MiB 0.16 14164 -1 -1 1 0.56 -1 -1 40080 -1 -1 140 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79780 22 19 2997 2166 1 1764 191 22 22 484 mult_36 auto 40.4 MiB 13.95 11877 36425 7228 26056 3141 77.9 MiB 1.13 0.02 8.48815 -621.554 -8.48815 8.48815 2.34 0.00551283 0.00487964 0.408782 0.357858 50 23661 46 1.30842e+07 5.91636e+06 1.59181e+06 3288.87 13.85 1.99457 1.75182 49674 382800 -1 17723 24 13850 16021 3547982 798839 0 0 3547982 798839 14773 14186 0 0 133189 123810 0 0 155444 140770 0 0 14774 14314 0 0 1616293 251568 0 0 1613509 254191 0 0 14773 0 0 955 7239 7799 19771 1307 379 9.89632 9.89632 -1490.1 -9.89632 0 0 1.90554e+06 3937.06 0.99 1.34 0.44 -1 -1 0.99 0.337372 0.304921 1037 665 627 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_35.v common 37.45 vpr 78.30 MiB 0.17 14424 -1 -1 1 0.62 -1 -1 40512 -1 -1 145 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80176 22 19 3101 2236 1 1831 196 22 22 484 mult_36 auto 40.8 MiB 12.40 12013 36043 7372 25218 3453 78.3 MiB 1.29 0.02 8.73875 -694.534 -8.73875 8.73875 2.33 0.00643678 0.00585086 0.447649 0.396985 54 22916 37 1.30842e+07 5.98623e+06 1.67518e+06 3461.11 13.60 2.2942 2.02837 51122 416746 -1 17904 24 14738 16738 2657730 610944 0 0 2657730 610944 15565 15006 0 0 132455 123886 0 0 151839 138265 0 0 15588 15076 0 0 1183856 159854 0 0 1158427 158857 0 0 15565 0 0 858 8255 8265 37715 1205 150 9.84032 9.84032 -1309.77 -9.84032 0 0 2.06816e+06 4273.05 1.09 1.20 0.48 -1 -1 1.09 0.403449 0.36253 1072 684 646 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_36.v common 48.22 vpr 78.71 MiB 0.17 14208 -1 -1 1 0.62 -1 -1 40536 -1 -1 148 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80604 22 19 3175 2293 1 1871 199 22 22 484 mult_36 auto 41.3 MiB 15.02 12992 38479 7433 25354 5692 78.7 MiB 1.25 0.02 8.86591 -715.004 -8.86591 8.86591 2.30 0.00642372 0.00585185 0.495794 0.435543 56 22822 34 1.30842e+07 6.02815e+06 1.71605e+06 3545.56 21.87 3.04555 2.68731 51606 428054 -1 19131 22 12246 14056 2328395 541748 0 0 2328395 541748 12929 12424 0 0 117518 109370 0 0 139233 126782 0 0 12929 12503 0 0 1034427 141969 0 0 1011359 138700 0 0 12929 0 0 709 6947 6529 16761 1152 37 10.0813 10.0813 -1242.15 -10.0813 0 0 2.11301e+06 4365.72 1.09 1.05 0.52 -1 -1 1.09 0.361975 0.328584 1100 703 665 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_37.v common 41.44 vpr 79.37 MiB 0.17 14808 -1 -1 1 0.62 -1 -1 40880 -1 -1 152 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81276 22 19 3280 2364 1 1938 204 24 24 576 mult_36 auto 42.0 MiB 13.43 12732 42804 9019 29069 4716 79.4 MiB 1.39 0.02 8.90805 -748.944 -8.90805 8.90805 2.82 0.00733975 0.00633919 0.511873 0.451155 56 22900 33 1.57908e+07 6.48005e+06 2.03561e+06 3534.04 14.98 2.37379 2.09726 61006 507707 -1 18749 23 13533 15248 2937396 692268 0 0 2937396 692268 14340 13776 0 0 128978 119816 0 0 152246 138709 0 0 14345 13852 0 0 1322788 199825 0 0 1304699 206290 0 0 14340 0 0 837 5010 5371 18718 968 32 10.0126 10.0126 -1092.39 -10.0126 0 0 2.50747e+06 4353.24 1.36 1.19 0.59 -1 -1 1.36 0.337301 0.303312 1135 722 684 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_38.v common 49.24 vpr 79.52 MiB 0.18 14916 -1 -1 1 0.66 -1 -1 41104 -1 -1 157 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81432 22 19 3354 2421 1 1977 209 24 24 576 mult_36 auto 42.2 MiB 16.54 13762 45469 9089 30547 5833 79.5 MiB 1.37 0.02 9.11651 -730.941 -9.11651 9.11651 2.81 0.00615075 0.00549639 0.492288 0.436579 56 24446 50 1.57908e+07 6.54992e+06 2.03561e+06 3534.04 19.67 2.81681 2.48195 61006 507707 -1 20088 22 13907 15913 3078248 716054 0 0 3078248 716054 14612 14132 0 0 136560 126361 0 0 160347 145517 0 0 14618 14189 0 0 1379764 208133 0 0 1372347 207722 0 0 14612 0 0 731 7388 6926 18437 1355 154 10.0639 10.0639 -1354.07 -10.0639 0 0 2.50747e+06 4353.24 1.29 1.22 0.61 -1 -1 1.29 0.351724 0.317641 1164 741 703 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_39.v common 45.62 vpr 80.22 MiB 0.18 15056 -1 -1 1 0.66 -1 -1 40632 -1 -1 161 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82148 22 19 3457 2490 1 2044 213 24 24 576 mult_36 auto 43.0 MiB 14.58 13651 45298 9606 31613 4079 80.2 MiB 1.50 0.02 8.86591 -772.638 -8.86591 8.86591 2.81 0.00615389 0.00549245 0.548339 0.482144 54 26101 47 1.57908e+07 6.60581e+06 1.98675e+06 3449.22 17.89 2.67434 2.35775 60430 494267 -1 19595 24 13962 16320 2664783 635374 0 0 2664783 635374 14791 14148 0 0 125443 117378 0 0 148181 133899 0 0 14801 14263 0 0 1195839 175625 0 0 1165728 180061 0 0 14791 0 0 857 7040 8278 18997 1654 212 9.94802 9.94802 -1231.6 -9.94802 0 0 2.45377e+06 4260.01 1.29 1.15 0.59 -1 -1 1.29 0.364834 0.326084 1198 760 722 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_40.v common 56.43 vpr 80.54 MiB 0.19 15152 -1 -1 1 0.67 -1 -1 41072 -1 -1 164 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82468 22 19 3531 2547 1 2082 216 24 24 576 mult_36 auto 43.2 MiB 17.43 13892 42271 7903 28450 5918 80.5 MiB 1.40 0.02 8.95821 -842.439 -8.95821 8.95821 2.79 0.00790133 0.00677747 0.532235 0.466571 56 25035 32 1.57908e+07 6.64774e+06 2.03561e+06 3534.04 25.71 3.27394 2.88561 61006 507707 -1 20474 22 15175 17414 2921043 681729 0 0 2921043 681729 16003 15488 0 0 140571 129836 0 0 166337 151032 0 0 16009 15566 0 0 1303670 185492 0 0 1278453 184315 0 0 16003 0 0 853 7017 8587 20512 1466 145 9.65702 9.65702 -1343.91 -9.65702 0 0 2.50747e+06 4353.24 1.35 1.22 0.60 -1 -1 1.35 0.382385 0.344877 1226 779 741 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_41.v common 51.25 vpr 80.97 MiB 0.19 15544 -1 -1 1 0.74 -1 -1 41360 -1 -1 170 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82916 22 19 3634 2616 1 2147 223 24 24 576 mult_36 auto 43.8 MiB 16.00 15822 52275 10572 36935 4768 81.0 MiB 1.79 0.02 9.03335 -936.123 -9.03335 9.03335 2.85 0.00768498 0.00702254 0.618847 0.554083 56 28553 39 1.57908e+07 7.12758e+06 2.03561e+06 3534.04 21.35 3.5089 3.11101 61006 507707 -1 22724 24 15162 17776 3151689 720873 0 0 3151689 720873 16034 15415 0 0 141203 130208 0 0 169277 152137 0 0 16039 15533 0 0 1414112 203901 0 0 1395024 203679 0 0 16034 0 0 901 8589 9938 20773 1797 101 9.87902 9.87902 -1551.5 -9.87902 0 0 2.50747e+06 4353.24 1.34 1.36 0.60 -1 -1 1.34 0.438338 0.394926 1261 798 760 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_42.v common 48.58 vpr 81.65 MiB 0.19 15656 -1 -1 1 0.74 -1 -1 41060 -1 -1 173 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83612 22 19 3708 2673 1 2187 226 24 24 576 mult_36 auto 44.3 MiB 18.46 14199 42194 7827 29951 4416 81.7 MiB 1.53 0.03 9.11651 -862.039 -9.11651 9.11651 2.82 0.00898213 0.00777118 0.57315 0.496514 54 27103 32 1.57908e+07 7.1695e+06 1.98675e+06 3449.22 16.64 2.81866 2.48055 60430 494267 -1 20278 24 14902 16878 2504922 601762 0 0 2504922 601762 15609 15066 0 0 127050 118880 0 0 151607 136290 0 0 15611 15125 0 0 1116954 156945 0 0 1078091 159456 0 0 15609 0 0 732 6643 6069 19531 1302 51 9.79272 9.79272 -1487.09 -9.79272 0 0 2.45377e+06 4260.01 1.30 1.20 0.58 -1 -1 1.30 0.457766 0.411695 1289 817 779 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_43.v common 46.73 vpr 81.86 MiB 0.18 15892 -1 -1 1 0.69 -1 -1 42348 -1 -1 178 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83820 22 19 3810 2741 1 2253 231 24 24 576 mult_36 auto 44.6 MiB 15.85 15675 47667 9233 34958 3476 81.9 MiB 1.76 0.03 8.88605 -942.223 -8.88605 8.88605 2.81 0.00943388 0.0080404 0.633414 0.551618 56 27633 33 1.57908e+07 7.23937e+06 2.03561e+06 3534.04 17.29 2.94212 2.58255 61006 507707 -1 22484 24 16686 19299 3085444 713179 0 0 3085444 713179 17643 17035 0 0 145791 134227 0 0 176199 158046 0 0 17644 17114 0 0 1368661 192870 0 0 1359506 193887 0 0 17643 0 0 988 8769 9570 22960 1701 108 10.2252 10.2252 -1498.47 -10.2252 0 0 2.50747e+06 4353.24 1.26 1.35 0.54 -1 -1 1.26 0.464677 0.417597 1323 836 798 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_44.v common 54.29 vpr 82.41 MiB 0.20 16060 -1 -1 1 0.79 -1 -1 41744 -1 -1 181 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84384 22 19 3884 2798 1 2294 234 24 24 576 mult_36 auto 45.2 MiB 19.67 15422 47034 9187 33144 4703 82.4 MiB 1.61 0.03 8.86591 -857.062 -8.86591 8.86591 2.80 0.0087016 0.00795227 0.575651 0.49907 54 29376 47 1.57908e+07 7.28129e+06 1.98675e+06 3449.22 20.90 3.52232 3.09038 60430 494267 -1 21477 22 15828 18085 2912426 692490 0 0 2912426 692490 16789 16021 0 0 140627 131709 0 0 162863 148336 0 0 16794 16086 0 0 1281319 187349 0 0 1294034 192989 0 0 16789 0 0 991 7796 7419 21708 1396 55 9.70202 9.70202 -1517.44 -9.70202 0 0 2.45377e+06 4260.01 1.37 1.22 0.59 -1 -1 1.37 0.383919 0.342721 1351 855 817 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_45.v common 59.66 vpr 82.40 MiB 0.21 16324 -1 -1 1 0.85 -1 -1 43208 -1 -1 186 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84376 22 19 3989 2869 1 2359 240 24 24 576 mult_36 auto 45.2 MiB 18.13 16738 49410 9355 35730 4325 82.4 MiB 1.74 0.02 8.89705 -883.402 -8.89705 8.89705 2.87 0.00726039 0.00646172 0.619027 0.544986 58 28047 32 1.57908e+07 7.74716e+06 2.08734e+06 3623.85 27.29 4.25879 3.76012 62154 534210 -1 23035 24 14715 16761 2986857 696637 0 0 2986857 696637 15495 14944 0 0 135430 126125 0 0 159847 146114 0 0 15496 15023 0 0 1333688 197832 0 0 1326901 196599 0 0 15495 0 0 809 6786 6762 19786 1310 82 9.38612 9.38612 -1407.53 -9.38612 0 0 2.61600e+06 4541.67 1.38 1.29 0.65 -1 -1 1.38 0.422134 0.379118 1387 874 836 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_46.v common 54.07 vpr 82.90 MiB 0.21 16380 -1 -1 1 0.83 -1 -1 43604 -1 -1 189 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84892 22 19 4063 2926 1 2398 243 24 24 576 mult_36 auto 45.8 MiB 20.93 16489 42691 7849 30032 4810 82.9 MiB 1.54 0.03 8.99121 -899.438 -8.99121 8.99121 2.87 0.00852362 0.00776671 0.556403 0.488423 56 29394 49 1.57908e+07 7.78909e+06 2.03561e+06 3534.04 19.00 3.59398 3.1712 61006 507707 -1 23321 24 16335 18864 3128192 744317 0 0 3128192 744317 17231 16568 0 0 150698 139191 0 0 180417 162485 0 0 17233 16638 0 0 1399043 204492 0 0 1363570 204943 0 0 17231 0 0 925 9582 10137 22404 1687 69 10.3382 10.3382 -1596.85 -10.3382 0 0 2.50747e+06 4353.24 1.40 1.40 0.59 -1 -1 1.40 0.466646 0.41981 1414 893 855 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_47.v common 57.11 vpr 83.45 MiB 0.23 16604 -1 -1 1 0.87 -1 -1 43496 -1 -1 194 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85452 22 19 4167 2996 1 2466 248 24 24 576 mult_36 auto 46.2 MiB 19.16 17402 56264 10910 39374 5980 83.4 MiB 2.07 0.03 9.11651 -1003.36 -9.11651 9.11651 2.80 0.00924632 0.00838078 0.71305 0.633262 58 29908 39 1.57908e+07 7.85896e+06 2.08734e+06 3623.85 23.17 3.21284 2.84222 62154 534210 -1 23752 24 17090 19795 3417949 770201 0 0 3417949 770201 18184 17492 0 0 148472 137352 0 0 184072 162750 0 0 18185 17572 0 0 1545219 215038 0 0 1503817 219997 0 0 18184 0 0 1118 8765 9589 24610 1643 609 9.77572 9.77572 -1618.09 -9.77572 0 0 2.61600e+06 4541.67 1.42 1.45 0.65 -1 -1 1.42 0.443259 0.39526 1449 912 874 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_48.v common 57.48 vpr 83.46 MiB 0.23 16680 -1 -1 1 0.90 -1 -1 43672 -1 -1 197 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85464 22 19 4241 3053 1 2505 251 24 24 576 mult_36 auto 46.3 MiB 22.08 18540 46129 8419 33525 4185 83.5 MiB 1.78 0.03 9.11651 -916.185 -9.11651 9.11651 2.85 0.00952829 0.00817742 0.600167 0.519906 60 30904 42 1.57908e+07 7.90088e+06 2.13333e+06 3703.69 20.51 3.18581 2.80246 62730 548095 -1 24519 25 16711 19203 3866212 878297 0 0 3866212 878297 17626 16931 0 0 157983 147602 0 0 183312 167607 0 0 17629 17046 0 0 1765647 260864 0 0 1724015 268247 0 0 17626 0 0 945 8116 9613 22720 1659 380 9.92302 9.92302 -1701.59 -9.92302 0 0 2.67122e+06 4637.53 1.45 1.71 0.65 -1 -1 1.45 0.551264 0.496378 1477 931 893 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_49.v common 57.38 vpr 84.12 MiB 0.24 17084 -1 -1 1 0.96 -1 -1 43252 -1 -1 204 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86144 22 19 4346 3124 1 2572 259 24 24 576 mult_36 auto 47.0 MiB 20.46 18886 49759 9374 35766 4619 84.1 MiB 1.72 0.03 9.40925 -1010.13 -9.40925 9.40925 2.78 0.008479 0.00726044 0.559071 0.484239 58 33373 49 1.57908e+07 8.3947e+06 2.08734e+06 3623.85 22.30 3.37753 2.9492 62154 534210 -1 26382 23 16593 19140 3496931 787562 0 0 3496931 787562 17452 16822 0 0 155669 144474 0 0 184165 167465 0 0 17454 16922 0 0 1563664 223662 0 0 1558527 218217 0 0 17452 0 0 887 9086 9001 22417 1745 131 10.1689 10.1689 -1794.85 -10.1689 0 0 2.61600e+06 4541.67 1.43 1.48 0.65 -1 -1 1.43 0.456258 0.409233 1512 950 912 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_50.v common 65.68 vpr 84.23 MiB 0.23 17152 -1 -1 1 0.90 -1 -1 43756 -1 -1 206 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86248 22 19 4420 3181 1 2611 261 24 24 576 mult_36 auto 47.1 MiB 22.74 17972 56905 10892 39929 6084 84.2 MiB 1.96 0.02 9.03335 -975.073 -9.03335 9.03335 2.82 0.00827449 0.00738525 0.744842 0.640558 60 28744 37 1.57908e+07 8.42264e+06 2.13333e+06 3703.69 28.34 4.65097 4.09299 62730 548095 -1 24006 24 16035 18245 2851165 665468 0 0 2851165 665468 16986 16245 0 0 140335 130592 0 0 166664 150829 0 0 16990 16338 0 0 1265729 177244 0 0 1244461 174220 0 0 16986 0 0 978 6760 6419 22149 1328 151 9.79302 9.79302 -1636.61 -9.79302 0 0 2.67122e+06 4637.53 1.39 1.38 0.61 -1 -1 1.39 0.545886 0.489789 1541 969 931 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_51.v common 56.55 vpr 84.83 MiB 0.24 17736 -1 -1 1 0.96 -1 -1 44028 -1 -1 211 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86864 22 19 4524 3251 1 2681 266 24 24 576 mult_36 auto 47.7 MiB 21.37 18207 56696 10692 39605 6399 84.8 MiB 2.00 0.03 9.49241 -1019.61 -9.49241 9.49241 2.81 0.0102993 0.00941637 0.693 0.611463 62 30644 41 1.57908e+07 8.49251e+06 2.19658e+06 3813.51 20.18 4.1503 3.65516 63306 560109 -1 24099 22 15266 17808 2849941 675937 0 0 2849941 675937 16107 15420 0 0 147965 138450 0 0 169164 155736 0 0 16111 15514 0 0 1245153 177374 0 0 1255441 173443 0 0 16107 0 0 868 8477 9267 20641 1770 242 9.68472 9.68472 -1667.39 -9.68472 0 0 2.72095e+06 4723.87 1.45 1.39 0.66 -1 -1 1.45 0.545738 0.494585 1576 988 950 19 0 0 -k6_frac_ripple_N8_22nm.xml fir_nopipe_52.v common 80.50 vpr 85.56 MiB 0.24 17560 -1 -1 1 0.98 -1 -1 43940 -1 -1 215 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87616 22 19 4598 3308 1 2718 270 24 24 576 mult_36 auto 48.6 MiB 24.32 21564 58694 11426 38199 9069 85.6 MiB 2.18 0.03 9.20881 -1010.77 -9.20881 9.20881 2.82 0.0106214 0.00911319 0.758569 0.664201 68 35132 49 1.57908e+07 8.54841e+06 2.39371e+06 4155.74 40.16 4.20025 3.68111 65606 615345 -1 28202 22 15776 17759 4867310 1011487 0 0 4867310 1011487 16470 15927 0 0 153344 143619 0 0 172379 160520 0 0 16473 16004 0 0 2227250 328956 0 0 2281394 346461 0 0 16470 0 0 722 6087 7580 20311 1339 88 10.1729 10.1729 -1589.99 -10.1729 0 0 2.98162e+06 5176.42 1.61 1.95 0.77 -1 -1 1.61 0.499612 0.452378 1605 1007 969 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_14.v common 11.12 vpr 72.52 MiB 0.07 10816 -1 -1 1 0.31 -1 -1 38824 -1 -1 81 22 0 4 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74260 22 19 1974 1653 1 1020 126 16 16 256 mult_36 auto 34.4 MiB 0.42 5972 18396 3709 12771 1916 72.5 MiB 0.49 0.01 3.79276 -1064.84 -3.79276 3.79276 0.97 0.00341526 0.00306569 0.230661 0.206248 50 12763 33 6.54114e+06 2.7256e+06 787708. 3076.99 5.54 1.2343 1.08506 25344 186282 -1 9827 19 4219 4938 812349 193209 0 0 812349 193209 4637 4329 0 0 40007 36323 0 0 47582 42720 0 0 4714 4406 0 0 360873 51147 0 0 354536 54284 0 0 4637 0 0 441 3756 4477 28269 348 1 4.29396 4.29396 -1294 -4.29396 0 0 943753. 3686.54 0.40 0.39 0.20 -1 -1 0.40 0.164267 0.147956 605 649 247 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_15.v common 11.57 vpr 73.58 MiB 0.09 10964 -1 -1 1 0.36 -1 -1 39792 -1 -1 88 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75344 22 19 2144 1789 1 1120 134 16 16 256 mult_36 auto 35.6 MiB 0.48 6659 21680 4545 14008 3127 73.6 MiB 0.56 0.01 4.04336 -1171.67 -4.04336 4.04336 1.05 0.00371823 0.0032575 0.254001 0.223406 54 13128 27 6.54114e+06 3.22025e+06 829453. 3240.05 5.43 1.17533 1.02913 26108 202796 -1 10399 19 4343 5117 689496 171000 0 0 689496 171000 4582 4386 0 0 37609 34071 0 0 44132 39574 0 0 4600 4404 0 0 301216 43770 0 0 297357 44795 0 0 4582 0 0 255 2465 2703 5213 653 3 4.29396 4.29396 -1359.94 -4.29396 0 0 1.02522e+06 4004.78 0.44 0.37 0.25 -1 -1 0.44 0.17378 0.156472 654 704 266 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_16.v common 11.67 vpr 73.75 MiB 0.09 11328 -1 -1 1 0.36 -1 -1 39084 -1 -1 91 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75516 22 19 2218 1846 1 1162 137 16 16 256 mult_36 auto 35.6 MiB 0.49 6645 22729 4547 15178 3004 73.7 MiB 0.63 0.01 3.91806 -1189.41 -3.91806 3.91806 0.96 0.00402482 0.00366112 0.291371 0.261712 54 14185 42 6.54114e+06 3.26253e+06 829453. 3240.05 5.60 1.54108 1.36943 26108 202796 -1 10502 20 4615 5204 814056 201092 0 0 814056 201092 4825 4640 0 0 40785 37207 0 0 47425 42914 0 0 4825 4656 0 0 361201 55188 0 0 354995 56487 0 0 4825 0 0 229 2193 1833 5631 454 10 4.39726 4.39726 -1357.26 -4.39726 0 0 1.02522e+06 4004.78 0.43 0.43 0.22 -1 -1 0.43 0.208722 0.188841 683 723 285 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_17.v common 14.12 vpr 75.79 MiB 0.10 12128 -1 -1 1 0.42 -1 -1 39448 -1 -1 103 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77604 22 19 2536 2130 1 1275 149 16 16 256 mult_36 auto 37.3 MiB 0.59 7862 21819 4065 14646 3108 75.8 MiB 0.61 0.01 4.04336 -1364.39 -4.04336 4.04336 1.01 0.00411452 0.00360841 0.287809 0.256194 56 13937 42 6.54114e+06 3.43166e+06 849745. 3319.32 7.66 1.83043 1.61437 26364 208198 -1 11458 18 4648 5476 840645 215761 0 0 840645 215761 4910 4678 0 0 44562 40031 0 0 53472 48238 0 0 4919 4716 0 0 367668 58335 0 0 365114 59763 0 0 4910 0 0 282 2549 3284 5668 685 65 4.41926 4.41926 -1633.09 -4.41926 0 0 1.04740e+06 4091.43 0.44 0.45 0.23 -1 -1 0.44 0.215335 0.194791 770 851 304 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_18.v common 17.20 vpr 75.46 MiB 0.11 12240 -1 -1 1 0.45 -1 -1 40488 -1 -1 107 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77268 22 19 2610 2187 1 1316 153 16 16 256 mult_36 auto 37.5 MiB 0.58 7910 21830 3956 15121 2753 75.5 MiB 0.68 0.01 3.79276 -1415.98 -3.79276 3.79276 1.01 0.00588881 0.00529355 0.317132 0.283501 54 16952 46 6.54114e+06 3.48803e+06 829453. 3240.05 10.45 2.10705 1.85598 26108 202796 -1 11969 18 5086 5888 982751 235170 0 0 982751 235170 5303 5112 0 0 45883 41688 0 0 53770 48496 0 0 5308 5145 0 0 437486 66787 0 0 435001 67942 0 0 5303 0 0 232 2896 2838 6318 628 266 4.52256 4.52256 -1648.05 -4.52256 0 0 1.02522e+06 4004.78 0.46 0.48 0.25 -1 -1 0.46 0.206917 0.186411 798 870 323 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_19.v common 17.20 vpr 76.59 MiB 0.11 12456 -1 -1 1 0.45 -1 -1 40460 -1 -1 113 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78424 22 19 2778 2321 1 1412 160 16 16 256 mult_36 auto 38.6 MiB 0.63 8346 24030 4268 16297 3465 76.6 MiB 0.73 0.01 3.79276 -1487.7 -3.79276 3.79276 1.01 0.00529457 0.00481846 0.341975 0.301183 60 14294 23 6.54114e+06 3.96859e+06 890343. 3477.90 10.22 2.14236 1.90014 27128 224764 -1 11657 18 4799 5488 760256 187398 0 0 760256 187398 5025 4820 0 0 39643 35343 0 0 47041 42493 0 0 5028 4834 0 0 334140 49474 0 0 329379 50434 0 0 5025 0 0 243 2364 2494 6010 521 115 4.29396 4.29396 -1729.55 -4.29396 0 0 1.11577e+06 4358.47 0.50 0.48 0.27 -1 -1 0.50 0.24874 0.227034 846 925 342 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_20.v common 13.11 vpr 77.32 MiB 0.11 12608 -1 -1 1 0.46 -1 -1 39656 -1 -1 118 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79176 22 19 2852 2378 1 1455 165 16 16 256 mult_36 auto 38.8 MiB 0.61 9052 15533 2117 11251 2165 77.3 MiB 0.48 0.01 3.91806 -1567.01 -3.91806 3.91806 0.98 0.00574476 0.00522734 0.219249 0.19629 60 15421 36 6.54114e+06 4.03906e+06 890343. 3477.90 6.50 1.76353 1.55241 27128 224764 -1 12347 19 4996 5687 834091 214044 0 0 834091 214044 5239 5052 0 0 44718 40322 0 0 52111 47496 0 0 5243 5065 0 0 360268 56987 0 0 366512 59122 0 0 5239 0 0 262 2128 2644 6354 509 2 4.29396 4.29396 -1760.33 -4.29396 0 0 1.11577e+06 4358.47 0.49 0.52 0.24 -1 -1 0.49 0.272054 0.247271 875 944 361 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_21.v common 15.89 vpr 77.82 MiB 0.12 12892 -1 -1 1 0.50 -1 -1 41504 -1 -1 122 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79688 22 19 3057 2549 1 1560 169 16 16 256 mult_36 auto 39.9 MiB 0.69 10145 23519 3983 16361 3175 77.8 MiB 0.69 0.01 3.91806 -1657.7 -3.91806 3.91806 1.02 0.0053711 0.00453809 0.294188 0.258305 60 16959 39 6.54114e+06 4.09544e+06 890343. 3477.90 8.51 1.72271 1.50438 27128 224764 -1 13711 20 5520 6421 1105938 266644 0 0 1105938 266644 5785 5529 0 0 51205 46362 0 0 60633 54845 0 0 5787 5549 0 0 490392 75835 0 0 492136 78524 0 0 5785 0 0 283 3271 3117 6707 734 256 4.41926 4.41926 -1883.92 -4.41926 0 0 1.11577e+06 4358.47 0.50 0.58 0.28 -1 -1 0.50 0.266598 0.240455 932 1017 380 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_22.v common 16.06 vpr 78.23 MiB 0.12 12992 -1 -1 1 0.55 -1 -1 40264 -1 -1 125 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80112 22 19 3131 2606 1 1600 172 16 16 256 mult_36 auto 40.4 MiB 0.69 10124 25028 4313 16652 4063 78.2 MiB 0.84 0.02 4.02136 -1704.37 -4.02136 4.02136 1.03 0.00726322 0.00647982 0.385821 0.345673 68 16607 27 6.54114e+06 4.13772e+06 1.00038e+06 3907.74 8.44 2.05277 1.81843 28404 252462 -1 13583 19 5443 6103 842350 201953 0 0 842350 201953 5676 5461 0 0 42973 38320 0 0 52333 46761 0 0 5679 5476 0 0 370776 51390 0 0 364913 54545 0 0 5676 0 0 250 2560 2180 6609 496 2 4.39726 4.39726 -1897.64 -4.39726 0 0 1.24648e+06 4869.04 0.59 0.52 0.32 -1 -1 0.59 0.273108 0.246903 961 1036 399 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_23.v common 19.26 vpr 79.06 MiB 0.13 13392 -1 -1 1 0.56 -1 -1 40568 -1 -1 133 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80960 22 19 3301 2742 1 1700 181 18 18 324 mult_36 auto 41.1 MiB 0.75 10269 25220 4165 18687 2368 79.1 MiB 0.76 0.01 3.91806 -1815.19 -3.91806 3.91806 1.40 0.00584261 0.00514241 0.345626 0.308361 56 19288 50 8.06603e+06 4.64648e+06 1.11497e+06 3441.27 10.59 2.31131 2.03234 34036 275796 -1 16052 17 6596 7701 1214384 290032 0 0 1214384 290032 6949 6632 0 0 59192 52929 0 0 71625 64246 0 0 6953 6662 0 0 537574 78751 0 0 532091 80812 0 0 6949 0 0 370 3467 4005 8365 850 21 4.54456 4.54456 -2171.27 -4.54456 0 0 1.37338e+06 4238.83 0.63 0.66 0.32 -1 -1 0.63 0.30565 0.279369 1012 1091 418 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_24.v common 19.77 vpr 79.12 MiB 0.13 13580 -1 -1 1 0.60 -1 -1 40164 -1 -1 137 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81024 22 19 3375 2799 1 1744 185 18 18 324 mult_36 auto 41.3 MiB 0.76 10613 33849 6782 23301 3766 79.1 MiB 1.04 0.02 4.04336 -1855.71 -4.04336 4.04336 1.33 0.00667777 0.00608931 0.461227 0.413075 60 19817 39 8.06603e+06 4.70285e+06 1.16833e+06 3605.96 10.81 2.48306 2.19172 35004 297736 -1 15719 18 6420 7454 1221093 285728 0 0 1221093 285728 6717 6470 0 0 55268 49504 0 0 65452 58980 0 0 6728 6499 0 0 548570 81547 0 0 538358 82728 0 0 6717 0 0 315 3010 4442 7914 819 20 4.39726 4.39726 -2126.93 -4.39726 0 0 1.46313e+06 4515.82 0.68 0.71 0.32 -1 -1 0.68 0.343135 0.309807 1041 1110 437 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_25.v common 19.49 vpr 80.05 MiB 0.14 14024 -1 -1 1 0.61 -1 -1 41460 -1 -1 146 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81976 22 19 3615 3005 1 1848 194 18 18 324 mult_36 auto 42.1 MiB 0.83 11307 35537 6593 25093 3851 80.1 MiB 1.10 0.02 3.91806 -1971.06 -3.91806 3.91806 1.36 0.00685212 0.00618214 0.477931 0.426966 56 22306 50 8.06603e+06 4.8297e+06 1.11497e+06 3441.27 10.17 2.54313 2.24207 34036 275796 -1 17308 17 7260 8637 1294461 312191 0 0 1294461 312191 7591 7332 0 0 64671 57434 0 0 78180 69896 0 0 7602 7385 0 0 578786 83281 0 0 557631 86863 0 0 7591 0 0 350 4546 5024 9174 1109 314 4.52256 4.52256 -2390.07 -4.52256 0 0 1.37338e+06 4238.83 0.64 0.72 0.32 -1 -1 0.64 0.336862 0.307332 1107 1201 456 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_26.v common 22.11 vpr 80.55 MiB 0.14 14156 -1 -1 1 0.65 -1 -1 41552 -1 -1 148 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82484 22 19 3689 3062 1 1888 196 18 18 324 mult_36 auto 42.7 MiB 0.86 12301 36043 7143 25343 3557 80.6 MiB 1.18 0.02 4.04336 -2020.33 -4.04336 4.04336 1.46 0.00774875 0.00706926 0.514962 0.458452 66 22406 36 8.06603e+06 4.85789e+06 1.27759e+06 3943.17 12.34 2.57619 2.26758 36296 327148 -1 17210 18 6711 7833 1429620 318150 0 0 1429620 318150 7111 6761 0 0 61169 54867 0 0 73018 66064 0 0 7118 6806 0 0 637861 90431 0 0 643343 93221 0 0 7111 0 0 418 3366 3622 8612 848 93 4.41926 4.41926 -2354.19 -4.41926 0 0 1.59950e+06 4936.74 0.75 0.71 0.39 -1 -1 0.75 0.323097 0.293557 1135 1220 475 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_27.v common 19.48 vpr 81.89 MiB 0.15 14524 -1 -1 1 0.66 -1 -1 42332 -1 -1 156 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83860 22 19 3871 3210 1 2002 205 18 18 324 mult_36 auto 44.0 MiB 0.85 12335 32217 5458 23569 3190 81.9 MiB 1.07 0.02 4.04336 -2177.99 -4.04336 4.04336 1.34 0.00763213 0.00704198 0.470186 0.419898 64 21485 39 8.06603e+06 5.36665e+06 1.23838e+06 3822.15 9.97 2.84901 2.52615 35972 318676 -1 17387 18 7061 8159 1257172 295026 0 0 1257172 295026 7383 7099 0 0 62030 55339 0 0 74932 67497 0 0 7388 7140 0 0 564876 77292 0 0 540563 80659 0 0 7383 0 0 341 3722 4354 8927 836 140 4.41926 4.41926 -2525.26 -4.41926 0 0 1.56068e+06 4816.91 0.75 0.77 0.35 -1 -1 0.75 0.394264 0.358381 1191 1275 494 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_28.v common 25.23 vpr 82.13 MiB 0.15 14688 -1 -1 1 0.69 -1 -1 41276 -1 -1 160 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84100 22 19 3945 3267 1 2045 209 18 18 324 mult_36 auto 44.3 MiB 0.90 12356 35549 6821 24897 3831 82.1 MiB 1.18 0.02 3.91806 -2130.05 -3.91806 3.91806 1.41 0.00840848 0.00752071 0.499427 0.446252 66 20517 22 8.06603e+06 5.42302e+06 1.27759e+06 3943.17 15.29 3.43054 3.05584 36296 327148 -1 17071 19 6751 8009 1136524 262751 0 0 1136524 262751 7055 6785 0 0 58109 51610 0 0 71581 63883 0 0 7063 6816 0 0 494798 66711 0 0 497918 66946 0 0 7055 0 0 321 3884 4484 8189 1050 133 4.29396 4.29396 -2474.26 -4.29396 0 0 1.59950e+06 4936.74 0.78 0.75 0.40 -1 -1 0.78 0.407534 0.372451 1219 1294 513 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_29.v common 30.62 vpr 83.27 MiB 0.16 15272 -1 -1 1 0.78 -1 -1 42100 -1 -1 170 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85272 22 19 4159 3447 1 2159 220 22 22 484 mult_36 auto 45.4 MiB 0.93 14296 45304 9011 31562 4731 83.3 MiB 1.43 0.02 3.91806 -2272.88 -3.91806 3.91806 2.32 0.00826863 0.00742584 0.620687 0.557201 58 27751 30 1.31202e+07 5.95997e+06 1.75961e+06 3635.55 17.65 2.81242 2.48291 52570 450426 -1 21943 20 8650 10332 1764740 384557 0 0 1764740 384557 9039 8740 0 0 74224 66127 0 0 89951 80308 0 0 9056 8813 0 0 798751 108432 0 0 783719 112137 0 0 9039 0 0 413 5098 6381 10964 1357 197 4.41926 4.41926 -2831.31 -4.41926 0 0 2.20457e+06 4554.90 1.17 0.87 0.54 -1 -1 1.17 0.370648 0.33152 1283 1367 532 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_30.v common 25.63 vpr 83.39 MiB 0.16 15436 -1 -1 1 0.77 -1 -1 43520 -1 -1 173 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85388 22 19 4233 3504 1 2198 223 22 22 484 mult_36 auto 45.3 MiB 0.94 14580 47543 9495 33593 4455 83.4 MiB 1.49 0.02 3.91806 -2232.55 -3.91806 3.91806 2.24 0.00841719 0.00753899 0.652221 0.577194 60 25271 33 1.31202e+07 6.00225e+06 1.79840e+06 3715.71 12.66 3.06812 2.7002 53054 462096 -1 20570 18 7997 9338 1458910 330383 0 0 1458910 330383 8402 8146 0 0 69620 62246 0 0 82621 74369 0 0 8405 8191 0 0 643995 87930 0 0 645867 89501 0 0 8402 0 0 427 4688 5229 10379 987 42 4.41926 4.41926 -2689.81 -4.41926 0 0 2.25108e+06 4650.99 1.22 0.87 0.54 -1 -1 1.22 0.433214 0.39592 1311 1386 551 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_31.v common 27.66 vpr 84.38 MiB 0.16 15624 -1 -1 1 0.82 -1 -1 43308 -1 -1 179 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86400 22 19 4410 3647 1 2305 229 22 22 484 mult_36 auto 46.5 MiB 0.98 15174 42929 7702 30938 4289 84.4 MiB 1.45 0.02 3.79276 -2360.14 -3.79276 3.79276 2.34 0.00980287 0.00874974 0.625265 0.557628 60 26534 40 1.31202e+07 6.08682e+06 1.79840e+06 3715.71 14.83 3.79185 3.35231 53054 462096 -1 21503 18 8401 9743 1428746 328188 0 0 1428746 328188 8714 8470 0 0 72472 64750 0 0 85996 77377 0 0 8722 8487 0 0 628968 84466 0 0 623874 84638 0 0 8714 0 0 335 4915 4778 10212 1091 226 4.29396 4.29396 -2906.83 -4.29396 0 0 2.25108e+06 4650.99 1.19 0.82 0.49 -1 -1 1.19 0.422478 0.383176 1363 1441 570 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_32.v common 34.63 vpr 85.45 MiB 0.16 15632 -1 -1 1 0.83 -1 -1 43592 -1 -1 183 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87500 22 19 4484 3704 1 2348 233 22 22 484 mult_36 auto 46.8 MiB 0.99 15026 48205 8964 34879 4362 85.4 MiB 1.44 0.02 3.79276 -2437.3 -3.79276 3.79276 2.28 0.00754584 0.00663946 0.575028 0.508382 60 26609 28 1.31202e+07 6.14319e+06 1.79840e+06 3715.71 21.57 4.02834 3.55121 53054 462096 -1 22301 20 9117 10531 1740413 391809 0 0 1740413 391809 9494 9205 0 0 84891 76882 0 0 99860 90500 0 0 9500 9257 0 0 766597 104638 0 0 770071 101327 0 0 9494 0 0 394 4622 4954 11280 1099 64 4.29396 4.29396 -2850.13 -4.29396 0 0 2.25108e+06 4650.99 1.16 0.96 0.55 -1 -1 1.16 0.461927 0.418413 1393 1460 589 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_33.v common 38.41 vpr 86.66 MiB 0.20 16888 -1 -1 1 0.93 -1 -1 43920 -1 -1 196 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88740 22 19 4843 4029 1 2463 247 22 22 484 mult_36 auto 48.2 MiB 1.10 17421 42043 6994 31230 3819 86.7 MiB 1.44 0.02 3.91806 -2610.2 -3.91806 3.91806 2.31 0.0100858 0.00910533 0.613087 0.53561 68 28172 29 1.31202e+07 6.72242e+06 2.01763e+06 4168.66 24.51 4.67936 4.12696 55470 518816 -1 23770 17 8558 10189 1698935 358524 0 0 1698935 358524 9011 8612 0 0 72088 63820 0 0 86612 77610 0 0 9016 8668 0 0 767815 97495 0 0 754393 102319 0 0 9011 0 0 473 6142 6394 10989 1276 478 4.39726 4.39726 -3165.13 -4.39726 0 0 2.51205e+06 5190.18 1.34 0.97 0.61 -1 -1 1.34 0.476655 0.434648 1490 1606 608 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_34.v common 30.06 vpr 86.20 MiB 0.19 17056 -1 -1 1 0.92 -1 -1 43952 -1 -1 199 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88268 22 19 4917 4086 1 2505 250 22 22 484 mult_36 auto 48.4 MiB 1.06 16861 51405 9877 36574 4954 86.2 MiB 1.65 0.02 3.91806 -2596.99 -3.91806 3.91806 2.36 0.00930004 0.00846576 0.685216 0.612367 64 30202 47 1.31202e+07 6.7647e+06 1.90554e+06 3937.06 16.13 3.9497 3.47932 54502 494576 -1 23689 19 8864 10292 1894749 414549 0 0 1894749 414549 9278 8946 0 0 79009 70249 0 0 95056 85500 0 0 9283 9004 0 0 856405 116157 0 0 845718 124693 0 0 9278 0 0 433 5125 4981 11446 1078 263 4.41926 4.41926 -3141.34 -4.41926 0 0 2.40101e+06 4960.76 1.30 1.03 0.52 -1 -1 1.30 0.487604 0.43835 1519 1625 627 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_35.v common 30.53 vpr 87.19 MiB 0.21 17468 -1 -1 1 1.03 -1 -1 44444 -1 -1 207 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89280 22 19 5093 4228 1 2607 258 22 22 484 mult_36 auto 49.4 MiB 1.11 17900 55265 9813 40429 5023 87.2 MiB 1.90 0.02 4.04336 -2813.59 -4.04336 4.04336 2.37 0.00916364 0.00764547 0.755709 0.647933 66 32044 44 1.31202e+07 6.87745e+06 1.96511e+06 4060.15 15.87 3.96609 3.4927 54986 507526 -1 25094 17 8882 10682 1654672 352794 0 0 1654672 352794 9320 8991 0 0 73576 64619 0 0 90816 80538 0 0 9323 9031 0 0 744541 94148 0 0 727096 95467 0 0 9320 0 0 459 6300 6480 11806 1402 96 4.54456 4.54456 -3374.38 -4.54456 0 0 2.45963e+06 5081.88 1.33 0.94 0.60 -1 -1 1.33 0.465586 0.422789 1572 1680 646 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_36.v common 32.57 vpr 88.65 MiB 0.21 17340 -1 -1 1 0.99 -1 -1 44512 -1 -1 209 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90780 22 19 5167 4285 1 2655 260 22 22 484 mult_36 auto 50.1 MiB 1.10 19138 50829 9344 37238 4247 88.7 MiB 1.58 0.02 3.91806 -2798.96 -3.91806 3.91806 2.29 0.00910343 0.00800608 0.614488 0.535187 66 33783 43 1.31202e+07 6.90564e+06 1.96511e+06 4060.15 18.26 4.79485 4.20581 54986 507526 -1 26358 18 9632 11259 1926109 417287 0 0 1926109 417287 10124 9724 0 0 83333 74310 0 0 101176 90600 0 0 10136 9774 0 0 863527 115668 0 0 857813 117211 0 0 10124 0 0 514 5917 6480 12646 1226 669 4.54456 4.54456 -3356.85 -4.54456 0 0 2.45963e+06 5081.88 1.32 1.11 0.58 -1 -1 1.32 0.541859 0.489109 1600 1699 665 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_37.v common 42.23 vpr 89.39 MiB 0.21 17776 -1 -1 1 1.07 -1 -1 43300 -1 -1 218 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91540 22 19 5380 4464 1 2756 270 24 24 576 mult_36 auto 50.9 MiB 1.20 20063 49974 8613 37018 4343 88.5 MiB 1.70 0.03 4.16866 -3164.83 -4.16866 4.16866 2.83 0.0104969 0.00949873 0.708146 0.628598 64 33353 47 1.58331e+07 7.42849e+06 2.26035e+06 3924.22 26.09 5.12773 4.50934 64454 586630 -1 27764 18 9388 11286 1910385 413578 0 0 1910385 413578 9834 9463 0 0 82110 72314 0 0 100066 89230 0 0 9838 9534 0 0 862066 116658 0 0 846471 116379 0 0 9834 0 0 463 7200 7315 12302 1495 497 4.66986 4.66986 -3728.55 -4.66986 0 0 2.84938e+06 4946.85 1.54 1.01 0.73 -1 -1 1.54 0.457235 0.410359 1662 1772 684 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_38.v common 32.72 vpr 89.04 MiB 0.22 17920 -1 -1 1 1.13 -1 -1 44704 -1 -1 220 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91176 22 19 5454 4521 1 2804 272 24 24 576 mult_36 auto 51.3 MiB 1.20 19459 48727 8048 37275 3404 89.0 MiB 1.60 0.03 4.16866 -3108.05 -4.16866 4.16866 2.76 0.0108325 0.00981742 0.618258 0.547897 64 34243 30 1.58331e+07 7.45668e+06 2.26035e+06 3924.22 16.72 3.75961 3.30423 64454 586630 -1 27195 18 9748 11356 1889422 419364 0 0 1889422 419364 10174 9822 0 0 83861 74314 0 0 102558 91630 0 0 10178 9872 0 0 847744 116129 0 0 834907 117597 0 0 10174 0 0 443 6207 5877 12421 1234 233 4.54456 4.54456 -3559.29 -4.54456 0 0 2.84938e+06 4946.85 1.57 1.12 0.67 -1 -1 1.57 0.554256 0.503677 1690 1791 703 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_39.v common 34.87 vpr 89.30 MiB 0.22 18224 -1 -1 1 1.11 -1 -1 45308 -1 -1 228 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91448 22 19 5629 4662 1 2910 280 24 24 576 mult_36 auto 52.0 MiB 1.24 19361 52435 8982 38873 4580 89.3 MiB 1.80 0.03 3.91806 -3167.21 -3.91806 3.91806 2.67 0.00938373 0.00832402 0.742657 0.653211 60 35475 49 1.58331e+07 7.56943e+06 2.13333e+06 3703.69 18.65 3.72158 3.23747 62730 548095 -1 27396 21 10923 12805 2255934 513912 0 0 2255934 513912 11423 10996 0 0 103096 93152 0 0 121790 110097 0 0 11428 11055 0 0 1002259 143848 0 0 1005938 144764 0 0 11423 0 0 516 5781 7083 14272 1423 217 4.52256 4.52256 -3785.31 -4.52256 0 0 2.67122e+06 4637.53 1.47 1.33 0.64 -1 -1 1.47 0.609645 0.540702 1742 1846 722 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_40.v common 44.78 vpr 93.66 MiB 0.23 18428 -1 -1 1 1.18 -1 -1 43932 -1 -1 232 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95912 22 19 5703 4719 1 2952 284 24 24 576 mult_36 auto 52.7 MiB 1.27 20734 61862 12109 45542 4211 91.2 MiB 2.04 0.03 4.16866 -3276.4 -4.16866 4.16866 2.81 0.00926893 0.00803099 0.814921 0.715976 66 35773 34 1.58331e+07 7.62581e+06 2.33135e+06 4047.49 27.95 5.27329 4.63974 65030 601923 -1 28506 17 10075 11507 1822560 398164 0 0 1822560 398164 10495 10140 0 0 79765 70627 0 0 99536 88052 0 0 10498 10189 0 0 821168 108430 0 0 801098 110726 0 0 10495 0 0 438 4825 5503 13052 1039 86 4.64786 4.64786 -4004.08 -4.64786 0 0 2.91907e+06 5067.82 1.65 1.05 0.73 -1 -1 1.65 0.524747 0.475557 1771 1865 741 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_41.v common 50.70 vpr 95.34 MiB 0.24 19220 -1 -1 1 1.30 -1 -1 45732 -1 -1 240 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97624 22 19 5950 4932 1 3067 293 24 24 576 mult_36 auto 53.5 MiB 1.34 21064 57641 10091 42333 5217 90.9 MiB 2.02 0.03 4.04336 -3445.69 -4.04336 4.04336 2.67 0.0101661 0.00898917 0.785467 0.689787 70 34864 29 1.58331e+07 8.13456e+06 2.45377e+06 4260.01 33.40 5.89004 5.1953 66754 640332 -1 28891 19 10293 12155 1934376 416808 0 0 1934376 416808 10756 10371 0 0 86682 75983 0 0 104703 93052 0 0 10763 10452 0 0 873852 112741 0 0 847620 114209 0 0 10756 0 0 481 6054 7405 13236 1455 183 4.41926 4.41926 -3994.27 -4.41926 0 0 3.09179e+06 5367.68 1.69 1.20 0.81 -1 -1 1.69 0.615574 0.557519 1841 1956 760 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_42.v common 32.87 vpr 91.34 MiB 0.24 19200 -1 -1 1 1.28 -1 -1 45912 -1 -1 242 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93532 22 19 6024 4989 1 3108 295 24 24 576 mult_36 auto 53.9 MiB 1.32 20798 67003 12809 48943 5251 91.3 MiB 2.27 0.03 4.16866 -3417.51 -4.16866 4.16866 2.76 0.0120679 0.0108328 0.896218 0.784599 64 34729 28 1.58331e+07 8.16275e+06 2.26035e+06 3924.22 15.63 4.09358 3.59742 64454 586630 -1 29224 17 10571 12833 2135505 476145 0 0 2135505 476145 11069 10609 0 0 94519 83563 0 0 115688 103178 0 0 11075 10664 0 0 966350 131539 0 0 936804 136592 0 0 11069 0 0 516 7269 9073 13720 1825 239 4.64786 4.64786 -3943.27 -4.64786 0 0 2.84938e+06 4946.85 1.53 1.09 0.73 -1 -1 1.53 0.491688 0.44294 1869 1975 779 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_43.v common 36.36 vpr 92.18 MiB 0.26 19404 -1 -1 1 1.33 -1 -1 45960 -1 -1 250 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94392 22 19 6198 5129 1 3209 303 24 24 576 mult_36 auto 54.8 MiB 1.36 22220 54204 8858 41271 4075 92.2 MiB 1.79 0.03 4.16866 -3551.25 -4.16866 4.16866 2.78 0.0127189 0.011547 0.694935 0.613804 66 39113 41 1.58331e+07 8.2755e+06 2.33135e+06 4047.49 19.08 4.58447 4.00863 65030 601923 -1 30699 17 10950 12696 2009234 439659 0 0 2009234 439659 11465 11062 0 0 89368 78876 0 0 110235 98090 0 0 11469 11129 0 0 906673 120291 0 0 880024 120211 0 0 11465 0 0 532 5903 6365 14269 1272 87 4.54456 4.54456 -4080.82 -4.54456 0 0 2.91907e+06 5067.82 1.70 1.15 0.75 -1 -1 1.70 0.564703 0.508653 1921 2030 798 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_44.v common 34.89 vpr 92.63 MiB 0.25 19680 -1 -1 1 1.41 -1 -1 46272 -1 -1 253 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94856 22 19 6272 5186 1 3255 306 24 24 576 mult_36 auto 55.3 MiB 1.39 21683 60046 9658 45733 4655 92.6 MiB 2.13 0.03 3.91806 -3599.86 -3.91806 3.91806 2.73 0.0127638 0.0117138 0.840428 0.740733 66 37730 30 1.58331e+07 8.31778e+06 2.33135e+06 4047.49 17.22 4.41058 3.85409 65030 601923 -1 30231 18 11135 13164 2082350 465425 0 0 2082350 465425 11607 11227 0 0 97715 86958 0 0 118625 106326 0 0 11616 11283 0 0 934125 124919 0 0 908662 124712 0 0 11607 0 0 490 6756 8624 14155 1618 959 4.41926 4.41926 -4085.81 -4.41926 0 0 2.91907e+06 5067.82 1.60 1.27 0.73 -1 -1 1.60 0.643266 0.580128 1949 2049 817 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_45.v common 37.45 vpr 93.64 MiB 0.26 19972 -1 -1 1 1.50 -1 -1 46860 -1 -1 262 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95888 22 19 6485 5365 1 3364 316 24 24 576 mult_36 auto 56.3 MiB 1.44 23340 66966 11483 50848 4635 93.6 MiB 2.20 0.03 4.16866 -3679.38 -4.16866 4.16866 2.82 0.0111646 0.0100779 0.853681 0.755776 68 38702 42 1.58331e+07 8.84063e+06 2.39371e+06 4155.74 19.56 4.94336 4.33176 65606 615345 -1 31130 18 11471 13312 2068925 461744 0 0 2068925 461744 11934 11510 0 0 93135 82749 0 0 112965 101022 0 0 11938 11570 0 0 932320 125501 0 0 906633 129392 0 0 11934 0 0 482 5806 6871 14527 1425 1224 4.41926 4.41926 -4055.16 -4.41926 0 0 2.98162e+06 5176.42 1.55 1.30 0.66 -1 -1 1.55 0.67958 0.611484 2011 2122 836 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_46.v common 44.93 vpr 93.83 MiB 0.26 20124 -1 -1 1 1.48 -1 -1 46476 -1 -1 266 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96080 22 19 6559 5422 1 3406 320 24 24 576 mult_36 auto 56.4 MiB 1.59 23671 72524 13402 53178 5944 93.8 MiB 2.58 0.04 4.16866 -3712.31 -4.16866 4.16866 2.82 0.0131685 0.0117472 0.972393 0.852251 68 38785 35 1.58331e+07 8.897e+06 2.39371e+06 4155.74 26.14 5.2077 4.52967 65606 615345 -1 32026 18 11082 13013 2067911 451154 0 0 2067911 451154 11644 11141 0 0 90511 79895 0 0 108534 97269 0 0 11652 11201 0 0 930615 123715 0 0 914955 127933 0 0 11644 0 0 580 6759 7921 14524 1449 738 4.64786 4.64786 -4158.28 -4.64786 0 0 2.98162e+06 5176.42 1.60 1.28 0.78 -1 -1 1.60 0.668844 0.603206 2040 2141 855 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_47.v common 42.81 vpr 95.20 MiB 0.27 20752 -1 -1 1 1.51 -1 -1 46880 -1 -1 273 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97488 22 19 6735 5564 1 3513 327 24 24 576 mult_36 auto 57.9 MiB 1.49 23732 75769 14025 54495 7249 95.2 MiB 2.60 0.04 4.04336 -3875.45 -4.04336 4.04336 2.80 0.013572 0.0119938 0.981114 0.852076 70 39744 34 1.58331e+07 8.99566e+06 2.45377e+06 4260.01 23.86 6.2029 5.40979 66754 640332 -1 32298 18 11749 13723 2385149 531934 0 0 2385149 531934 12242 11790 0 0 103933 92090 0 0 125390 112098 0 0 12248 11860 0 0 1066701 150314 0 0 1064635 153782 0 0 12242 0 0 510 7074 7901 14775 1553 441 4.41926 4.41926 -4465.66 -4.41926 0 0 3.09179e+06 5367.68 1.71 1.34 0.70 -1 -1 1.71 0.650616 0.58294 2092 2196 874 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_48.v common 38.91 vpr 95.51 MiB 0.27 20652 -1 -1 1 1.63 -1 -1 46896 -1 -1 276 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97804 22 19 6809 5621 1 3556 330 24 24 576 mult_36 auto 58.3 MiB 1.54 25754 70948 12318 53282 5348 95.5 MiB 2.46 0.04 4.16866 -3927.23 -4.16866 4.16866 2.79 0.0140018 0.0126754 0.937919 0.831046 72 42690 46 1.58331e+07 9.03794e+06 2.50747e+06 4353.24 19.79 5.32571 4.6868 67330 654343 -1 35060 17 11921 13881 2572416 551900 0 0 2572416 551900 12450 12006 0 0 101632 90171 0 0 123327 109860 0 0 12456 12061 0 0 1163831 163640 0 0 1158720 164162 0 0 12450 0 0 548 7180 7201 15199 1500 617 4.77316 4.77316 -4480.69 -4.77316 0 0 3.14081e+06 5452.80 1.77 1.36 0.80 -1 -1 1.77 0.628859 0.568642 2121 2215 893 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_49.v common 52.93 vpr 103.81 MiB 0.29 21160 -1 -1 1 1.55 -1 -1 47236 -1 -1 287 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 106300 22 19 7094 5872 1 3671 342 24 24 576 mult_36 auto 60.0 MiB 1.59 26414 72042 12795 53555 5692 99.3 MiB 2.34 0.04 4.16866 -4112.14 -4.16866 4.16866 2.83 0.012353 0.0108768 0.815533 0.712057 74 41732 33 1.58331e+07 9.58898e+06 2.56259e+06 4448.94 33.66 5.80813 5.05502 67906 667765 -1 35530 17 12228 14936 2429316 515058 0 0 2429316 515058 12771 12311 0 0 99884 87742 0 0 124268 108971 0 0 12774 12360 0 0 1079305 149383 0 0 1100314 144291 0 0 12771 0 0 564 10057 10583 15750 2226 745 4.64786 4.64786 -4772.95 -4.64786 0 0 3.19068e+06 5539.38 1.78 1.40 0.81 -1 -1 1.78 0.683194 0.619599 2200 2324 912 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_50.v common 45.56 vpr 96.84 MiB 0.28 21376 -1 -1 1 1.67 -1 -1 46732 -1 -1 290 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99168 22 19 7168 5929 1 3712 345 24 24 576 mult_36 auto 59.5 MiB 1.65 25005 75303 13738 53267 8298 96.8 MiB 2.54 0.04 4.16866 -4097.24 -4.16866 4.16866 2.91 0.0135104 0.0119744 0.918297 0.799338 70 41951 45 1.58331e+07 9.63126e+06 2.45377e+06 4260.01 26.15 6.54229 5.69127 66754 640332 -1 33839 17 12759 15441 2377702 534556 0 0 2377702 534556 13354 12829 0 0 112794 99453 0 0 137855 122246 0 0 13368 12881 0 0 1052560 143504 0 0 1047771 143643 0 0 13354 0 0 613 9710 10165 16184 2200 1094 4.52256 4.52256 -4640.74 -4.52256 0 0 3.09179e+06 5367.68 1.67 1.27 0.78 -1 -1 1.67 0.604408 0.542712 2229 2343 931 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_51.v common 42.13 vpr 97.83 MiB 0.27 21652 -1 -1 1 1.68 -1 -1 47688 -1 -1 297 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100176 22 19 7344 6071 1 3815 352 24 24 576 mult_36 auto 60.3 MiB 1.66 27352 86050 16532 61476 8042 97.8 MiB 3.06 0.04 4.16866 -4185.33 -4.16866 4.16866 2.87 0.0152921 0.0136823 1.12438 0.985427 74 43835 33 1.58331e+07 9.72992e+06 2.56259e+06 4448.94 21.65 5.55445 4.85349 67906 667765 -1 37576 17 12408 14819 2924524 612823 0 0 2924524 612823 12944 12482 0 0 104506 92380 0 0 128968 113992 0 0 12946 12549 0 0 1343118 185997 0 0 1322042 195423 0 0 12944 0 0 554 9695 9543 15889 1936 791 4.79516 4.79516 -4983.72 -4.79516 0 0 3.19068e+06 5539.38 1.78 1.61 0.83 -1 -1 1.78 0.743252 0.670226 2282 2398 950 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_pipe_52.v common 63.80 vpr 100.03 MiB 0.29 21840 -1 -1 1 1.80 -1 -1 47228 -1 -1 301 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102428 22 19 7418 6128 1 3860 356 24 24 576 mult_36 auto 60.7 MiB 1.71 30449 78538 14043 56151 8344 98.2 MiB 2.83 0.04 4.29396 -4395.87 -4.29396 4.29396 2.83 0.0185659 0.0168747 1.07667 0.950185 78 46839 47 1.58331e+07 9.78629e+06 2.67122e+06 4637.53 43.20 7.73781 6.72759 69630 706637 -1 39295 17 13103 15769 2501897 521735 0 0 2501897 521735 13686 13175 0 0 102654 89623 0 0 128822 112275 0 0 13687 13251 0 0 1126340 146820 0 0 1116708 146591 0 0 13686 0 0 602 9875 10563 17022 2152 1501 4.64786 4.64786 -5170.07 -4.64786 0 0 3.35110e+06 5817.88 1.88 1.49 0.87 -1 -1 1.88 0.737559 0.664831 2310 2417 969 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_14.v common 13.28 vpr 69.28 MiB 0.07 9468 -1 -1 1 0.23 -1 -1 37424 -1 -1 58 22 0 4 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70940 22 19 1246 925 1 732 103 16 16 256 mult_36 auto 31.0 MiB 1.93 4199 13358 2976 7690 2692 69.3 MiB 0.35 0.01 7.56363 -345.083 -7.56363 7.56363 1.01 0.00251453 0.00226909 0.154537 0.139229 46 8862 27 6.54114e+06 2.40144e+06 723233. 2825.13 6.53 0.80123 0.714481 24832 174915 -1 6743 24 4969 5742 831795 201951 0 0 831795 201951 5742 5156 0 0 46280 42975 0 0 54608 49038 0 0 5827 5234 0 0 364244 50417 0 0 355094 49131 0 0 5742 0 0 792 3320 3658 34872 0 0 7.81278 7.81278 -442.957 -7.81278 0 0 890343. 3477.90 0.41 0.38 0.21 -1 -1 0.41 0.136806 0.124319 421 285 247 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_15.v common 11.63 vpr 69.59 MiB 0.08 9980 -1 -1 1 0.23 -1 -1 38112 -1 -1 61 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71264 22 19 1344 989 1 791 107 16 16 256 mult_36 auto 31.4 MiB 1.53 4459 17058 3942 10703 2413 69.6 MiB 0.44 0.01 7.59857 -346.926 -7.59857 7.59857 1.04 0.00292343 0.00266942 0.193606 0.174314 46 8932 38 6.54114e+06 2.83972e+06 723233. 2825.13 5.13 0.969556 0.866266 24832 174915 -1 6610 23 4621 5139 723161 190681 0 0 723161 190681 5139 4698 0 0 44015 41140 0 0 49909 46042 0 0 5179 4737 0 0 315469 47640 0 0 303450 46424 0 0 5139 0 0 538 2514 2579 28760 0 0 7.65658 7.65658 -443.498 -7.65658 0 0 890343. 3477.90 0.39 0.37 0.21 -1 -1 0.39 0.152114 0.137804 453 304 266 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_16.v common 14.82 vpr 69.97 MiB 0.08 9892 -1 -1 1 0.24 -1 -1 38120 -1 -1 65 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71648 22 19 1418 1046 1 832 111 16 16 256 mult_36 auto 31.7 MiB 2.01 4747 22987 5545 12862 4580 70.0 MiB 0.59 0.01 7.22861 -377.81 -7.22861 7.22861 1.03 0.0026962 0.00240606 0.247977 0.222363 44 10457 44 6.54114e+06 2.89609e+06 686998. 2683.59 7.58 1.06503 0.945212 24576 170172 -1 7580 23 5899 6467 922905 229753 0 0 922905 229753 6467 6010 0 0 52964 49349 0 0 61385 55951 0 0 6507 6081 0 0 395633 58150 0 0 399949 54212 0 0 6467 0 0 596 3070 3247 34432 0 0 8.02033 8.02033 -507.712 -8.02033 0 0 871168. 3403.00 0.41 0.43 0.21 -1 -1 0.41 0.16202 0.146286 481 323 285 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_17.v common 14.95 vpr 70.62 MiB 0.08 10296 -1 -1 1 0.24 -1 -1 37952 -1 -1 71 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72312 22 19 1518 1112 1 895 117 16 16 256 mult_36 auto 32.3 MiB 1.80 5305 21281 5293 13163 2825 70.6 MiB 0.60 0.01 7.96791 -388.775 -7.96791 7.96791 1.02 0.00310876 0.00283105 0.249179 0.223764 46 11115 34 6.54114e+06 2.98066e+06 723233. 2825.13 7.74 1.05218 0.937642 24832 174915 -1 8085 22 6312 7139 1151543 290582 0 0 1151543 290582 6861 6467 0 0 60997 57049 0 0 69797 63638 0 0 6892 6519 0 0 508673 78136 0 0 498323 78773 0 0 6861 0 0 572 3098 3151 21646 294 12 8.56492 8.56492 -537.451 -8.56492 0 0 890343. 3477.90 0.49 0.51 0.22 -1 -1 0.49 0.163371 0.148302 514 342 304 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_18.v common 33.97 vpr 70.54 MiB 0.08 10404 -1 -1 1 0.25 -1 -1 38356 -1 -1 74 22 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72236 22 19 1592 1169 1 934 120 16 16 256 mult_36 auto 32.5 MiB 2.30 5629 19000 4160 12610 2230 70.5 MiB 0.55 0.01 8.07121 -411.148 -8.07121 8.07121 0.96 0.00327863 0.00297992 0.225048 0.202537 46 11751 40 6.54114e+06 3.02294e+06 723233. 2825.13 26.53 2.07335 1.83771 24832 174915 -1 8631 24 6261 7120 1005991 261174 0 0 1005991 261174 6729 6367 0 0 60105 55776 0 0 68772 62574 0 0 6742 6408 0 0 439231 66119 0 0 424412 63930 0 0 6729 0 0 493 3448 3328 19815 409 172 8.66692 8.66692 -549.186 -8.66692 0 0 890343. 3477.90 0.37 0.52 0.20 -1 -1 0.37 0.209891 0.189487 542 361 323 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_19.v common 12.56 vpr 70.88 MiB 0.09 10952 -1 -1 1 0.26 -1 -1 38692 -1 -1 79 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72580 22 19 1688 1231 1 993 126 16 16 256 mult_36 auto 32.8 MiB 2.00 6105 14301 2916 9446 1939 70.9 MiB 0.42 0.01 8.17337 -408.351 -8.17337 8.17337 1.00 0.00354657 0.00322515 0.173481 0.156672 50 11479 37 6.54114e+06 3.48941e+06 787708. 3076.99 5.35 1.07646 0.960893 25344 186282 -1 8932 23 6431 7252 1118471 292392 0 0 1118471 292392 7002 6571 0 0 65162 60352 0 0 75477 68696 0 0 7022 6597 0 0 488400 75311 0 0 475408 74865 0 0 7002 0 0 599 4314 4139 28401 313 1 8.68837 8.68837 -636.651 -8.68837 0 0 943753. 3686.54 0.42 0.52 0.21 -1 -1 0.42 0.193411 0.174328 573 380 342 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_20.v common 14.38 vpr 71.48 MiB 0.09 10696 -1 -1 1 0.29 -1 -1 38808 -1 -1 81 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73200 22 19 1762 1288 1 1031 128 16 16 256 mult_36 auto 33.4 MiB 2.55 6158 20092 4302 12613 3177 71.5 MiB 0.55 0.01 7.8183 -416.944 -7.8183 7.8183 1.02 0.00310093 0.00275531 0.21767 0.193757 48 13205 43 6.54114e+06 3.51759e+06 755748. 2952.14 6.27 0.961602 0.848229 25088 180500 -1 9724 23 7994 9209 1529727 375425 0 0 1529727 375425 8777 8231 0 0 75874 69625 0 0 90643 81297 0 0 8856 8319 0 0 678341 101295 0 0 667236 106658 0 0 8777 0 0 811 6623 6795 43831 477 33 8.80847 8.80847 -653.12 -8.80847 0 0 916467. 3579.95 0.41 0.61 0.22 -1 -1 0.41 0.179218 0.161154 601 399 361 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_21.v common 17.95 vpr 71.85 MiB 0.09 11100 -1 -1 1 0.33 -1 -1 38372 -1 -1 85 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73572 22 19 1859 1351 1 1092 132 16 16 256 mult_36 auto 33.9 MiB 2.30 6980 18557 3579 12100 2878 71.8 MiB 0.55 0.01 8.05907 -434.522 -8.05907 8.05907 0.93 0.00382689 0.00349533 0.228829 0.207179 54 12493 27 6.54114e+06 3.57397e+06 829453. 3240.05 10.18 1.81312 1.61717 26108 202796 -1 9838 24 6698 7734 1284197 322219 0 0 1284197 322219 7446 6842 0 0 64252 59715 0 0 75161 68035 0 0 7453 6904 0 0 564065 88131 0 0 565820 92592 0 0 7446 0 0 772 4146 4370 28048 367 1 8.66307 8.66307 -583.095 -8.66307 0 0 1.02522e+06 4004.78 0.45 0.62 0.25 -1 -1 0.45 0.225867 0.204506 632 418 380 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_22.v common 15.42 vpr 72.37 MiB 0.10 11128 -1 -1 1 0.33 -1 -1 38536 -1 -1 90 22 0 6 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74104 22 19 1933 1408 1 1130 137 16 16 256 mult_36 auto 34.5 MiB 2.86 7098 16375 3000 11279 2096 72.4 MiB 0.55 0.01 7.98086 -441.507 -7.98086 7.98086 1.02 0.00460411 0.00388591 0.220534 0.196223 54 13030 48 6.54114e+06 3.64444e+06 829453. 3240.05 6.82 1.37623 1.22226 26108 202796 -1 10142 23 6487 7414 1277424 324743 0 0 1277424 324743 7137 6577 0 0 62415 57956 0 0 70796 65134 0 0 7148 6639 0 0 567729 93070 0 0 562199 95367 0 0 7137 0 0 668 3711 3792 23693 413 101 8.35403 8.35403 -605.081 -8.35403 0 0 1.02522e+06 4004.78 0.45 0.58 0.24 -1 -1 0.45 0.207779 0.188894 661 437 399 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_23.v common 23.71 vpr 72.79 MiB 0.11 11788 -1 -1 1 0.32 -1 -1 38748 -1 -1 94 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74536 22 19 2031 1472 1 1193 142 18 18 324 mult_36 auto 34.7 MiB 2.70 7327 24932 5348 16818 2766 72.8 MiB 0.74 0.01 7.94165 -476.826 -7.94165 7.94165 1.37 0.00439385 0.00391999 0.310539 0.275092 48 14430 37 8.06603e+06 4.09681e+06 991730. 3060.90 14.00 2.20343 1.96226 32420 239176 -1 11736 25 7911 9241 1749626 403451 0 0 1749626 403451 8786 8126 0 0 78826 72786 0 0 94059 84524 0 0 8810 8231 0 0 790380 113849 0 0 768765 115935 0 0 8786 0 0 904 7658 6538 42715 484 19 8.96782 8.96782 -799.515 -8.96782 0 0 1.20291e+06 3712.69 0.57 0.73 0.30 -1 -1 0.57 0.230589 0.20828 693 456 418 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_24.v common 18.07 vpr 72.98 MiB 0.12 11576 -1 -1 1 0.39 -1 -1 38888 -1 -1 97 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74736 22 19 2105 1529 1 1230 145 18 18 324 mult_36 auto 35.1 MiB 3.00 7483 28265 6151 18630 3484 73.0 MiB 0.82 0.01 8.06696 -486.304 -8.06696 8.06696 1.40 0.00444637 0.00403626 0.326982 0.293399 48 15828 47 8.06603e+06 4.13909e+06 991730. 3060.90 7.79 1.47092 1.30836 32420 239176 -1 12021 23 8123 9472 1826098 423317 0 0 1826098 423317 9057 8442 0 0 79969 74167 0 0 96559 87003 0 0 9118 8530 0 0 820786 121312 0 0 810609 123863 0 0 9057 0 0 957 6214 6456 39755 478 2 8.87822 8.87822 -713.751 -8.87822 0 0 1.20291e+06 3712.69 0.58 0.78 0.28 -1 -1 0.58 0.245636 0.222717 721 475 437 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_25.v common 18.94 vpr 73.62 MiB 0.12 11912 -1 -1 1 0.40 -1 -1 38980 -1 -1 101 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75388 22 19 2201 1591 1 1290 149 18 18 324 mult_36 auto 35.8 MiB 2.87 7973 21031 3848 13946 3237 73.6 MiB 0.62 0.01 8.31162 -488.862 -8.31162 8.31162 1.40 0.00437465 0.00394761 0.261826 0.23495 54 13976 44 8.06603e+06 4.19547e+06 1.08842e+06 3359.33 8.88 1.57316 1.39632 33712 268580 -1 11221 24 8240 9285 1467765 348105 0 0 1467765 348105 8997 8364 0 0 71460 65945 0 0 83103 74830 0 0 9044 8449 0 0 650497 94507 0 0 644664 96010 0 0 8997 0 0 781 5243 5410 40169 318 18 8.62118 8.62118 -715.073 -8.62118 0 0 1.34436e+06 4149.26 0.62 0.70 0.32 -1 -1 0.62 0.25149 0.227317 751 494 456 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_26.v common 21.25 vpr 73.73 MiB 0.12 12032 -1 -1 1 0.40 -1 -1 39424 -1 -1 105 22 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75504 22 19 2275 1648 1 1330 153 18 18 324 mult_36 auto 35.7 MiB 3.29 8157 29192 6382 16824 5986 73.7 MiB 0.89 0.01 8.25041 -535.259 -8.25041 8.25041 1.41 0.00503046 0.00435752 0.385683 0.341821 54 14780 31 8.06603e+06 4.25184e+06 1.08842e+06 3359.33 10.36 1.81239 1.60509 33712 268580 -1 11584 26 8943 10298 1521527 368973 0 0 1521527 368973 9763 9135 0 0 80483 74720 0 0 95912 85567 0 0 9824 9212 0 0 672386 94648 0 0 653159 95691 0 0 9763 0 0 845 6657 6277 40791 562 3 8.48553 8.48553 -853.773 -8.48553 0 0 1.34436e+06 4149.26 0.64 0.77 0.32 -1 -1 0.64 0.302287 0.271637 779 513 475 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_27.v common 26.21 vpr 74.46 MiB 0.13 12240 -1 -1 1 0.43 -1 -1 39848 -1 -1 111 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76252 22 19 2385 1724 1 1404 160 18 18 324 mult_36 auto 36.8 MiB 3.18 9069 27502 5851 17700 3951 74.5 MiB 0.86 0.01 7.83356 -561.725 -7.83356 7.83356 1.42 0.0047222 0.00426002 0.334721 0.299607 58 15514 27 8.06603e+06 4.73242e+06 1.14310e+06 3528.09 15.34 2.37011 2.11102 34680 290288 -1 13171 26 9520 10716 1653405 376658 0 0 1653405 376658 10294 9721 0 0 80962 74081 0 0 96737 87150 0 0 10304 9802 0 0 731053 98938 0 0 724055 96966 0 0 10294 0 0 798 5056 5306 32309 443 1 8.51492 8.51492 -833.851 -8.51492 0 0 1.43297e+06 4422.75 0.69 0.80 0.35 -1 -1 0.69 0.308981 0.279403 817 532 494 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_28.v common 21.12 vpr 74.57 MiB 0.13 12356 -1 -1 1 0.42 -1 -1 39428 -1 -1 114 22 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76364 22 19 2459 1781 1 1443 163 18 18 324 mult_36 auto 36.7 MiB 3.53 9268 28198 5500 18451 4247 74.6 MiB 0.88 0.01 7.83161 -557.515 -7.83161 7.83161 1.37 0.00519337 0.00466058 0.371553 0.326131 54 17079 40 8.06603e+06 4.7747e+06 1.08842e+06 3359.33 10.15 1.85058 1.63965 33712 268580 -1 13192 22 8375 9811 1699760 391284 0 0 1699760 391284 9303 8508 0 0 75833 70011 0 0 88286 80275 0 0 9330 8617 0 0 755200 108921 0 0 761808 114952 0 0 9303 0 0 951 7353 6672 42766 532 1 8.65307 8.65307 -827.05 -8.65307 0 0 1.34436e+06 4149.26 0.61 0.74 0.28 -1 -1 0.61 0.268508 0.242834 845 551 513 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_29.v common 29.61 vpr 75.42 MiB 0.14 12720 -1 -1 1 0.44 -1 -1 40692 -1 -1 118 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77228 22 19 2565 1853 1 1511 168 22 22 484 mult_36 auto 37.6 MiB 3.56 10821 33967 6976 22514 4477 75.4 MiB 1.14 0.01 7.96791 -539.186 -7.96791 7.96791 2.33 0.00483931 0.00432119 0.445574 0.389355 54 19400 35 1.31202e+07 5.22708e+06 1.67518e+06 3461.11 15.66 2.44974 2.16943 51122 416746 -1 15386 26 9836 11179 2154174 498429 0 0 2154174 498429 10738 10021 0 0 93614 87161 0 0 106976 97762 0 0 10770 10108 0 0 972937 145029 0 0 959139 148348 0 0 10738 0 0 928 6416 6171 41853 471 12 9.26237 9.26237 -923.744 -9.26237 0 0 2.06816e+06 4273.05 1.02 0.96 0.43 -1 -1 1.02 0.336832 0.304192 881 570 532 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_30.v common 35.91 vpr 75.54 MiB 0.14 12732 -1 -1 1 0.48 -1 -1 39832 -1 -1 123 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77356 22 19 2639 1910 1 1548 173 22 22 484 mult_36 auto 37.8 MiB 3.96 10390 37210 8479 25052 3679 75.5 MiB 1.08 0.01 7.95691 -542.487 -7.95691 7.95691 2.31 0.00503898 0.00435271 0.402948 0.354056 54 19645 38 1.31202e+07 5.29755e+06 1.67518e+06 3461.11 21.36 2.37474 2.09115 51122 416746 -1 15514 22 10794 12292 2338265 538083 0 0 2338265 538083 11592 10963 0 0 98780 91434 0 0 112906 102887 0 0 11602 11049 0 0 1060662 158758 0 0 1042723 162992 0 0 11592 0 0 825 3831 4929 15575 800 3 9.12082 9.12082 -976.5 -9.12082 0 0 2.06816e+06 4273.05 1.06 0.98 0.49 -1 -1 1.06 0.299259 0.26999 910 589 551 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_31.v common 94.34 vpr 75.97 MiB 0.14 13084 -1 -1 1 0.51 -1 -1 40120 -1 -1 128 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77796 22 19 2744 1981 1 1618 178 22 22 484 mult_36 auto 38.2 MiB 3.65 11315 37678 7900 25830 3948 76.0 MiB 1.27 0.02 8.19225 -605.772 -8.19225 8.19225 2.30 0.0057846 0.00524191 0.494074 0.443734 50 21677 48 1.31202e+07 5.36802e+06 1.59181e+06 3288.87 79.98 3.80036 3.34655 49674 382800 -1 16910 21 9836 11410 2548235 544354 0 0 2548235 544354 10523 10035 0 0 96390 88116 0 0 110830 101196 0 0 10531 10096 0 0 1173579 164224 0 0 1146382 170687 0 0 10523 0 0 712 5677 5440 14543 924 41 8.88922 8.88922 -1157.65 -8.88922 0 0 1.90554e+06 3937.06 1.00 1.05 0.43 -1 -1 1.00 0.312266 0.284976 946 608 570 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_32.v common 35.64 vpr 76.00 MiB 0.15 13256 -1 -1 1 0.53 -1 -1 40368 -1 -1 131 22 0 9 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77820 22 19 2818 2038 1 1656 181 22 22 484 mult_36 auto 38.4 MiB 4.21 11071 39017 8559 26692 3766 76.0 MiB 1.24 0.02 8.19225 -620.258 -8.19225 8.19225 2.19 0.00602602 0.00550038 0.490659 0.43031 52 20915 44 1.31202e+07 5.4103e+06 1.63434e+06 3376.74 20.94 3.10645 2.74449 50638 406276 -1 16339 26 11332 12978 2541352 574353 0 0 2541352 574353 12119 11567 0 0 110243 102262 0 0 129150 116829 0 0 12122 11627 0 0 1136556 163560 0 0 1141162 168508 0 0 12119 0 0 818 5384 5031 16233 927 98 8.80023 8.80023 -1178.58 -8.80023 0 0 2.01763e+06 4168.66 1.03 1.05 0.43 -1 -1 1.03 0.316664 0.28444 974 627 589 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_33.v common 32.51 vpr 76.86 MiB 0.16 13984 -1 -1 1 0.54 -1 -1 40168 -1 -1 137 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78700 22 19 2923 2109 1 1725 188 22 22 484 mult_36 auto 39.4 MiB 3.87 11541 41076 8683 27313 5080 76.9 MiB 1.29 0.02 8.73795 -606.407 -8.73795 8.73795 2.30 0.00617085 0.00559992 0.493031 0.432592 52 24064 49 1.31202e+07 5.89087e+06 1.63434e+06 3376.74 17.40 2.78774 2.46945 50638 406276 -1 17517 24 13151 14943 2928022 667311 0 0 2928022 667311 14068 13370 0 0 126225 117093 0 0 146633 133332 0 0 14068 13450 0 0 1315491 194633 0 0 1311537 195433 0 0 14068 0 0 948 5321 5786 19019 967 28 10.1289 10.1289 -1172.08 -10.1289 0 0 2.01763e+06 4168.66 1.05 1.23 0.46 -1 -1 1.05 0.36677 0.330564 1009 646 608 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_34.v common 29.23 vpr 77.10 MiB 0.17 14160 -1 -1 1 0.58 -1 -1 40188 -1 -1 140 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78952 22 19 2997 2166 1 1764 191 22 22 484 mult_36 auto 39.4 MiB 5.85 11868 38072 7794 26672 3606 77.1 MiB 1.21 0.01 8.6547 -640.15 -8.6547 8.6547 2.29 0.00556717 0.00497453 0.478092 0.426958 54 21878 39 1.31202e+07 5.93316e+06 1.67518e+06 3461.11 12.32 2.23224 1.98637 51122 416746 -1 17272 23 11129 12682 2312621 536638 0 0 2312621 536638 11872 11289 0 0 108172 100490 0 0 122886 112855 0 0 11886 11365 0 0 1042979 151021 0 0 1014826 149618 0 0 11872 0 0 774 4217 5394 15755 873 33 9.36277 9.36277 -1139.49 -9.36277 0 0 2.06816e+06 4273.05 1.09 1.04 0.48 -1 -1 1.09 0.355885 0.320821 1037 665 627 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_35.v common 29.15 vpr 77.67 MiB 0.17 14368 -1 -1 1 0.60 -1 -1 40700 -1 -1 145 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79532 22 19 3101 2236 1 1830 196 22 22 484 mult_36 auto 40.0 MiB 5.23 12141 38319 7629 24360 6330 77.7 MiB 1.22 0.02 8.8192 -651.805 -8.8192 8.8192 2.13 0.00677368 0.00619025 0.502102 0.444232 56 20856 39 1.31202e+07 6.00363e+06 1.71605e+06 3545.56 12.99 2.43478 2.15671 51606 428054 -1 17281 23 11811 13687 2451609 571491 0 0 2451609 571491 12760 11990 0 0 113255 103348 0 0 134414 121128 0 0 12762 12072 0 0 1103267 158019 0 0 1075151 164934 0 0 12760 0 0 974 5514 5679 18115 991 3 9.52247 9.52247 -1158.81 -9.52247 0 0 2.11301e+06 4365.72 1.12 1.13 0.50 -1 -1 1.12 0.3857 0.34806 1072 684 646 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_36.v common 40.92 vpr 78.01 MiB 0.17 14220 -1 -1 1 0.63 -1 -1 40692 -1 -1 148 22 0 10 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79880 22 19 3175 2293 1 1870 199 22 22 484 mult_36 auto 40.4 MiB 6.35 13227 40219 7830 27893 4496 78.0 MiB 1.38 0.02 8.5294 -676.033 -8.5294 8.5294 2.27 0.00704087 0.00597872 0.518349 0.456746 58 22031 34 1.31202e+07 6.04591e+06 1.75961e+06 3635.55 23.03 3.21824 2.85342 52570 450426 -1 17930 25 11785 13431 2405697 533479 0 0 2405697 533479 12575 12030 0 0 102043 93823 0 0 125674 111944 0 0 12576 12113 0 0 1070294 148258 0 0 1082535 155311 0 0 12575 0 0 816 4742 5517 16958 909 2 9.36911 9.36911 -1179.37 -9.36911 0 0 2.20457e+06 4554.90 1.15 1.04 0.55 -1 -1 1.15 0.337602 0.302834 1100 703 665 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_37.v common 37.02 vpr 78.52 MiB 0.17 14732 -1 -1 1 0.64 -1 -1 40788 -1 -1 152 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80400 22 19 3280 2364 1 1940 204 24 24 576 mult_36 auto 40.9 MiB 5.71 13538 43404 9307 30198 3899 78.5 MiB 1.43 0.02 8.78194 -769.124 -8.78194 8.78194 2.74 0.0061754 0.00553459 0.506039 0.44563 54 25349 44 1.58331e+07 6.49829e+06 1.98675e+06 3449.22 18.43 2.82962 2.49744 60430 494267 -1 18904 24 12112 14025 2449183 561289 0 0 2449183 561289 12962 12294 0 0 110492 101883 0 0 127096 115384 0 0 12967 12404 0 0 1096239 158031 0 0 1089427 161293 0 0 12962 0 0 875 6172 6469 17907 1110 114 9.27991 9.27991 -1186.51 -9.27991 0 0 2.45377e+06 4260.01 1.30 1.15 0.59 -1 -1 1.30 0.397197 0.356714 1135 722 684 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_38.v common 36.46 vpr 78.65 MiB 0.18 14836 -1 -1 1 0.69 -1 -1 40836 -1 -1 157 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80540 22 19 3354 2421 1 1977 209 24 24 576 mult_36 auto 40.9 MiB 6.75 13078 45469 9422 31203 4844 78.7 MiB 1.42 0.02 8.86016 -714.943 -8.86016 8.86016 2.78 0.00734012 0.00659424 0.50537 0.446252 54 24869 50 1.58331e+07 6.56876e+06 1.98675e+06 3449.22 16.47 2.64693 2.34084 60430 494267 -1 19255 24 14745 16577 3664205 834058 0 0 3664205 834058 15592 14937 0 0 137818 128325 0 0 158726 143258 0 0 15595 15010 0 0 1660311 262123 0 0 1676163 270405 0 0 15592 0 0 875 5701 5181 20101 1070 32 10.0226 10.0226 -1149.63 -10.0226 0 0 2.45377e+06 4260.01 1.32 1.48 0.58 -1 -1 1.32 0.400164 0.360121 1164 741 703 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_39.v common 33.80 vpr 79.44 MiB 0.17 15088 -1 -1 1 0.67 -1 -1 40844 -1 -1 161 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81348 22 19 3457 2490 1 2042 213 24 24 576 mult_36 auto 41.8 MiB 5.83 13744 44663 9223 30558 4882 79.4 MiB 1.45 0.02 8.68095 -856.443 -8.68095 8.68095 2.64 0.00641433 0.0057283 0.570603 0.502419 50 25683 50 1.58331e+07 6.62513e+06 1.88759e+06 3277.06 15.35 2.67672 2.35968 58706 454005 -1 19880 28 14121 16238 2524056 586170 0 0 2524056 586170 14953 14320 0 0 130508 119619 0 0 157208 139902 0 0 14953 14377 0 0 1100296 149790 0 0 1106138 148162 0 0 14953 0 0 861 7400 7044 19828 1325 446 10.2111 10.2111 -1420.15 -10.2111 0 0 2.26035e+06 3924.22 1.23 1.30 0.50 -1 -1 1.23 0.513798 0.45854 1198 760 722 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_40.v common 36.37 vpr 79.82 MiB 0.19 14932 -1 -1 1 0.73 -1 -1 41124 -1 -1 164 22 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81736 22 19 3531 2547 1 2082 216 24 24 576 mult_36 auto 42.2 MiB 7.14 13952 44212 8725 31094 4393 79.8 MiB 1.42 0.02 8.75011 -788.57 -8.75011 8.75011 2.74 0.00669223 0.0057786 0.490842 0.429667 56 24178 48 1.58331e+07 6.66742e+06 2.03561e+06 3534.04 16.00 2.73611 2.41823 61006 507707 -1 19984 24 13505 15539 2634857 603123 0 0 2634857 603123 14354 13701 0 0 121337 110344 0 0 145958 131201 0 0 14358 13764 0 0 1161545 166528 0 0 1177305 167585 0 0 14354 0 0 877 6921 6837 18690 1262 99 9.29952 9.29952 -1356.44 -9.29952 0 0 2.50747e+06 4353.24 1.38 1.27 0.61 -1 -1 1.38 0.460648 0.414913 1226 779 741 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_41.v common 47.80 vpr 80.59 MiB 0.18 15312 -1 -1 1 0.71 -1 -1 41360 -1 -1 170 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82520 22 19 3634 2616 1 2147 223 24 24 576 mult_36 auto 43.0 MiB 6.36 15848 49571 10289 35472 3810 80.6 MiB 1.75 0.02 8.80625 -913.65 -8.80625 8.80625 2.76 0.00804626 0.00680686 0.594981 0.520953 60 26395 29 1.58331e+07 7.14798e+06 2.13333e+06 3703.69 27.89 4.02962 3.56604 62730 548095 -1 21814 24 12098 14141 2464296 535668 0 0 2464296 535668 12896 12282 0 0 113432 103937 0 0 129326 118757 0 0 12903 12370 0 0 1087426 147985 0 0 1108313 140337 0 0 12896 0 0 825 6034 6970 17302 1314 131 9.28007 9.28007 -1385.43 -9.28007 0 0 2.67122e+06 4637.53 1.43 1.21 0.64 -1 -1 1.43 0.464955 0.421777 1261 798 760 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_42.v common 45.81 vpr 80.62 MiB 0.20 15360 -1 -1 1 0.72 -1 -1 41064 -1 -1 173 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82560 22 19 3708 2673 1 2186 226 24 24 576 mult_36 auto 43.2 MiB 7.67 15681 40818 7480 29291 4047 80.6 MiB 1.44 0.02 8.79525 -907.06 -8.79525 8.79525 2.78 0.00855136 0.00783434 0.535532 0.471268 56 27073 45 1.58331e+07 7.19026e+06 2.03561e+06 3534.04 24.77 3.3996 2.98701 61006 507707 -1 22236 23 15170 17324 2961884 685394 0 0 2961884 685394 16172 15409 0 0 143152 131147 0 0 169807 153272 0 0 16175 15483 0 0 1307804 187122 0 0 1308774 182961 0 0 16172 0 0 1030 7065 8059 22154 1186 2 9.50527 9.50527 -1795.83 -9.50527 0 0 2.50747e+06 4353.24 1.30 1.30 0.57 -1 -1 1.30 0.433231 0.388558 1289 817 779 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_43.v common 44.49 vpr 80.88 MiB 0.20 15884 -1 -1 1 0.82 -1 -1 42228 -1 -1 178 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82820 22 19 3810 2741 1 2253 231 24 24 576 mult_36 auto 43.3 MiB 7.19 16173 44835 8916 32438 3481 80.9 MiB 1.54 0.02 8.9445 -909.482 -8.9445 8.9445 2.78 0.00833975 0.00762458 0.561645 0.502915 56 29316 48 1.58331e+07 7.26073e+06 2.03561e+06 3534.04 23.31 3.64137 3.22947 61006 507707 -1 23163 26 14989 17528 3725961 893814 0 0 3725961 893814 15990 15215 0 0 146248 133457 0 0 175375 156842 0 0 15991 15306 0 0 1682563 288048 0 0 1689794 284946 0 0 15990 0 0 1028 9543 9666 21874 1584 73 9.72757 9.72757 -1568.49 -9.72757 0 0 2.50747e+06 4353.24 1.31 1.52 0.62 -1 -1 1.31 0.431066 0.384881 1323 836 798 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_44.v common 37.60 vpr 81.47 MiB 0.20 16052 -1 -1 1 0.86 -1 -1 42172 -1 -1 181 22 0 12 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83428 22 19 3884 2798 1 2294 234 24 24 576 mult_36 auto 44.0 MiB 8.25 15940 49914 9621 36326 3967 81.5 MiB 1.73 0.02 8.84631 -887.82 -8.84631 8.84631 2.82 0.00843026 0.00765177 0.611862 0.534363 60 25784 43 1.58331e+07 7.30301e+06 2.13333e+06 3703.69 15.05 3.09008 2.72484 62730 548095 -1 21588 25 13165 14945 3007473 679670 0 0 3007473 679670 14061 13408 0 0 127118 117802 0 0 146543 134357 0 0 14067 13499 0 0 1362857 198646 0 0 1342827 201958 0 0 14061 0 0 922 5558 5070 18820 944 14 9.23462 9.23462 -1389.5 -9.23462 0 0 2.67122e+06 4637.53 1.47 1.42 0.65 -1 -1 1.47 0.52593 0.476148 1351 855 817 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_45.v common 41.22 vpr 81.62 MiB 0.19 16044 -1 -1 1 0.82 -1 -1 43344 -1 -1 186 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83584 22 19 3989 2869 1 2359 240 24 24 576 mult_36 auto 44.2 MiB 6.99 16897 52390 10282 37805 4303 81.6 MiB 1.79 0.02 8.78194 -894.006 -8.78194 8.78194 2.61 0.0086174 0.007868 0.670099 0.589366 62 28659 38 1.58331e+07 7.76948e+06 2.19658e+06 3813.51 20.82 3.87429 3.41914 63306 560109 -1 22316 24 12828 14543 2471161 576440 0 0 2471161 576440 13658 12958 0 0 120998 111665 0 0 138713 127617 0 0 13662 13026 0 0 1096720 155883 0 0 1087410 155291 0 0 13658 0 0 853 4621 5602 18276 931 22 9.12117 9.12117 -1357.96 -9.12117 0 0 2.72095e+06 4723.87 1.41 1.26 0.59 -1 -1 1.41 0.523285 0.468672 1387 874 836 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_46.v common 50.39 vpr 82.80 MiB 0.21 16472 -1 -1 1 0.83 -1 -1 43388 -1 -1 189 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84784 22 19 4063 2926 1 2398 243 24 24 576 mult_36 auto 44.6 MiB 8.74 17948 49513 9831 33883 5799 81.9 MiB 1.58 0.02 9.40056 -947.004 -9.40056 9.40056 2.80 0.00756645 0.00676434 0.539038 0.474663 64 27739 40 1.58331e+07 7.81177e+06 2.26035e+06 3924.22 27.64 3.53547 3.11114 64454 586630 -1 23728 22 11891 13733 2551741 563977 0 0 2551741 563977 12735 12068 0 0 116022 106189 0 0 133381 122610 0 0 12741 12161 0 0 1138403 158172 0 0 1138459 152777 0 0 12735 0 0 868 5418 6213 17337 1056 209 9.59487 9.59487 -1412.8 -9.59487 0 0 2.84938e+06 4946.85 1.50 1.12 0.73 -1 -1 1.50 0.395001 0.355167 1414 893 855 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_47.v common 45.52 vpr 82.66 MiB 0.21 16912 -1 -1 1 0.83 -1 -1 43460 -1 -1 194 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84640 22 19 4167 2996 1 2465 248 24 24 576 mult_36 auto 45.2 MiB 8.06 16943 52374 10114 37023 5237 82.7 MiB 1.78 0.03 8.9976 -960.289 -8.9976 8.9976 2.79 0.00901556 0.00809169 0.619917 0.549134 58 29608 47 1.58331e+07 7.88224e+06 2.08734e+06 3623.85 23.31 3.91555 3.4622 62154 534210 -1 23329 21 13044 15082 3016851 696720 0 0 3016851 696720 13934 13286 0 0 126673 116843 0 0 147696 135479 0 0 13938 13367 0 0 1355688 206856 0 0 1358922 210889 0 0 13934 0 0 914 6263 6870 18784 1200 51 9.46802 9.46802 -1542.69 -9.46802 0 0 2.61600e+06 4541.67 1.37 1.27 0.63 -1 -1 1.37 0.401474 0.362293 1449 912 874 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_48.v common 40.50 vpr 82.62 MiB 0.21 16880 -1 -1 1 0.86 -1 -1 43548 -1 -1 197 22 0 13 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84600 22 19 4241 3053 1 2504 251 24 24 576 mult_36 auto 45.2 MiB 8.75 17669 42965 7611 31925 3429 82.6 MiB 1.56 0.03 8.9445 -1012.84 -8.9445 8.9445 2.79 0.00934918 0.00835104 0.561964 0.498088 58 30389 40 1.58331e+07 7.92452e+06 2.08734e+06 3623.85 17.83 3.62987 3.20178 62154 534210 -1 24611 27 16512 19067 3047689 679734 0 0 3047689 679734 17605 16749 0 0 142172 129158 0 0 172683 153959 0 0 17612 16825 0 0 1331920 185975 0 0 1365697 177068 0 0 17605 0 0 1118 8846 9208 23975 1534 343 9.33791 9.33791 -1757.25 -9.33791 0 0 2.61600e+06 4541.67 1.36 1.46 0.59 -1 -1 1.36 0.576802 0.514288 1477 931 893 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_49.v common 46.24 vpr 83.08 MiB 0.24 17256 -1 -1 1 0.93 -1 -1 43556 -1 -1 204 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85076 22 19 4346 3124 1 2572 259 24 24 576 mult_36 auto 45.7 MiB 8.63 17628 56359 11003 40589 4767 83.1 MiB 2.04 0.03 9.0698 -921.749 -9.0698 9.0698 2.81 0.00914553 0.00828 0.699856 0.619395 58 30609 39 1.58331e+07 8.41918e+06 2.08734e+06 3623.85 22.78 3.39393 2.99178 62154 534210 -1 24580 23 15817 18148 3236045 744666 0 0 3236045 744666 16906 16073 0 0 150559 138450 0 0 177930 161553 0 0 16913 16180 0 0 1448177 203972 0 0 1425560 208438 0 0 16906 0 0 1116 6527 7531 22684 1312 182 9.40191 9.40191 -1469.97 -9.40191 0 0 2.61600e+06 4541.67 1.41 1.48 0.62 -1 -1 1.41 0.518981 0.46566 1512 950 912 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_50.v common 46.78 vpr 83.32 MiB 0.25 17140 -1 -1 1 0.94 -1 -1 43660 -1 -1 206 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85320 22 19 4420 3181 1 2611 261 24 24 576 mult_36 auto 45.8 MiB 9.72 18371 59404 11754 42097 5553 83.3 MiB 2.01 0.03 9.11076 -1009.13 -9.11076 9.11076 2.82 0.0098941 0.00911683 0.68377 0.605585 60 30587 43 1.58331e+07 8.44736e+06 2.13333e+06 3703.69 21.91 3.49664 3.07271 62730 548095 -1 24534 25 15250 17804 3288667 721586 0 0 3288667 721586 16360 15480 0 0 141188 129623 0 0 168001 150831 0 0 16365 15563 0 0 1466808 202603 0 0 1479945 207486 0 0 16360 0 0 1137 7870 8014 22572 1522 189 9.55926 9.55926 -1720.09 -9.55926 0 0 2.67122e+06 4637.53 1.49 1.60 0.66 -1 -1 1.49 0.602996 0.542262 1541 969 931 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_51.v common 41.78 vpr 84.13 MiB 0.25 17384 -1 -1 1 0.98 -1 -1 43720 -1 -1 211 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86148 22 19 4524 3251 1 2680 266 24 24 576 mult_36 auto 46.7 MiB 8.52 20504 60971 12455 42927 5589 84.1 MiB 2.26 0.03 9.1229 -1058 -9.1229 9.1229 2.76 0.00979071 0.00905048 0.793201 0.686611 64 31597 42 1.58331e+07 8.51783e+06 2.26035e+06 3924.22 17.98 3.55961 3.14139 64454 586630 -1 26687 23 13401 15560 3216921 705953 0 0 3216921 705953 14305 13609 0 0 133401 122437 0 0 153182 141237 0 0 14308 13700 0 0 1460076 204728 0 0 1441649 210242 0 0 14305 0 0 929 7201 7762 19531 1314 24 9.43502 9.43502 -1765.75 -9.43502 0 0 2.84938e+06 4946.85 1.60 1.43 0.70 -1 -1 1.60 0.505247 0.457195 1576 988 950 19 0 0 -k6_frac_uripple_N8_22nm.xml fir_nopipe_52.v common 55.11 vpr 84.26 MiB 0.25 17812 -1 -1 1 1.01 -1 -1 44004 -1 -1 215 22 0 14 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:55 gh-actions-runner-vtr-auto-spawned38 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86284 22 19 4598 3308 1 2717 270 24 24 576 mult_36 auto 47.0 MiB 10.27 18649 61310 11540 41151 8619 84.3 MiB 2.12 0.03 8.97446 -1053.96 -8.97446 8.97446 2.81 0.00971976 0.008812 0.737058 0.644181 60 30176 48 1.58331e+07 8.57421e+06 2.13333e+06 3703.69 29.78 5.05246 4.4635 62730 548095 -1 24446 25 14258 16449 2818469 645670 0 0 2818469 645670 15250 14426 0 0 131184 120973 0 0 152511 139841 0 0 15261 14499 0 0 1252260 179865 0 0 1252003 176066 0 0 15250 0 0 1021 6814 7599 20496 1275 101 9.34871 9.34871 -1579.68 -9.34871 0 0 2.67122e+06 4637.53 1.46 1.36 0.67 -1 -1 1.46 0.540603 0.485964 1605 1007 969 19 0 0 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length + k6_frac_2ripple_N8_22nm.xml fir_pipe_14.v common 13.61 vpr 73.81 MiB 0.06 10588 -1 -1 1 0.25 -1 -1 39832 -1 -1 65 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75584 22 19 1974 1653 1 1013 110 16 16 256 mult_36 auto 36.2 MiB 0.82 5569 10893 1945 7914 1034 73.8 MiB 0.26 0.01 3.89606 -1040.1 -3.89606 3.89606 0.84 0.00270569 0.00241045 0.128897 0.115327 62 11873 32 6.59459e+06 2.52492e+06 916467. 3579.95 8.38 1.28976 1.13198 27384 229598 -1 9236 20 3930 4475 771053 170611 4.27196 4.27196 -1245.52 -4.27196 0 0 1.13630e+06 4438.68 0.41 0.29 0.24 -1 -1 0.41 0.140035 0.12615 481 649 247 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_15.v common 9.48 vpr 74.81 MiB 0.07 11212 -1 -1 1 0.27 -1 -1 40296 -1 -1 72 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76604 22 19 2144 1789 1 1110 118 16 16 256 mult_36 auto 37.2 MiB 1.13 6169 16302 3555 11006 1741 74.8 MiB 0.35 0.01 3.89606 -1126.75 -3.89606 3.89606 0.82 0.0028748 0.00251881 0.177496 0.156827 66 11090 20 6.59459e+06 3.02225e+06 974584. 3806.97 3.77 0.873047 0.768051 28148 247068 -1 9257 15 4014 4579 705575 163801 4.39726 4.39726 -1317.49 -4.39726 0 0 1.22072e+06 4768.46 0.45 0.27 0.27 -1 -1 0.45 0.130388 0.118715 521 704 266 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_16.v common 15.29 vpr 75.20 MiB 0.07 10976 -1 -1 1 0.29 -1 -1 40484 -1 -1 74 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77004 22 19 2218 1846 1 1154 120 16 16 256 mult_36 auto 37.7 MiB 1.08 6521 20475 4794 12816 2865 75.2 MiB 0.46 0.01 4.02136 -1143.5 -4.02136 4.02136 0.82 0.00298811 0.00262397 0.226059 0.200005 66 12989 41 6.59459e+06 3.0512e+06 974584. 3806.97 9.45 1.56003 1.37213 28148 247068 -1 10083 15 4465 5164 764996 172340 4.39726 4.39726 -1406.33 -4.39726 0 0 1.22072e+06 4768.46 0.44 0.29 0.26 -1 -1 0.44 0.135872 0.124164 540 723 285 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_17.v common 15.19 vpr 76.57 MiB 0.08 12088 -1 -1 1 0.32 -1 -1 40460 -1 -1 83 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78408 22 19 2536 2130 1 1256 129 16 16 256 mult_36 auto 39.3 MiB 1.38 7393 17679 3572 11906 2201 76.6 MiB 0.41 0.01 3.89606 -1322.26 -3.89606 3.89606 0.85 0.00321886 0.0028342 0.20298 0.179667 68 13421 21 6.59459e+06 3.18149e+06 1.00038e+06 3907.74 8.78 1.48013 1.29594 28404 252462 -1 11210 18 4828 5474 970570 216204 4.27196 4.27196 -1574.45 -4.27196 0 0 1.24648e+06 4869.04 0.44 0.35 0.27 -1 -1 0.44 0.164322 0.148311 617 851 304 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_18.v common 11.72 vpr 76.99 MiB 0.08 12060 -1 -1 1 0.35 -1 -1 40436 -1 -1 86 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78840 22 19 2610 2187 1 1305 132 16 16 256 mult_36 auto 39.7 MiB 1.36 7237 20902 4337 14087 2478 77.0 MiB 0.51 0.01 4.02136 -1346.88 -4.02136 4.02136 0.84 0.00377074 0.00336062 0.244317 0.21684 66 14224 29 6.59459e+06 3.22491e+06 974584. 3806.97 5.05 1.14003 1.00165 28148 247068 -1 11468 29 5210 5885 1395939 418878 4.39726 4.39726 -1598.44 -4.39726 0 0 1.22072e+06 4768.46 0.45 0.56 0.26 -1 -1 0.45 0.240534 0.215731 636 870 323 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_19.v common 14.69 vpr 77.97 MiB 0.09 12464 -1 -1 1 0.35 -1 -1 40348 -1 -1 91 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79844 22 19 2778 2321 1 1401 138 16 16 256 mult_36 auto 40.7 MiB 1.20 8086 21854 4466 14501 2887 78.0 MiB 0.52 0.01 3.89606 -1432.94 -3.89606 3.89606 0.84 0.00344639 0.0030747 0.257766 0.228313 66 16422 42 6.59459e+06 3.69329e+06 974584. 3806.97 8.23 1.6419 1.44681 28148 247068 -1 12261 19 5522 6240 964295 221349 4.27196 4.27196 -1730.38 -4.27196 0 0 1.22072e+06 4768.46 0.44 0.40 0.26 -1 -1 0.44 0.202397 0.18382 676 925 342 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_20.v common 17.34 vpr 78.31 MiB 0.09 12472 -1 -1 1 0.37 -1 -1 40732 -1 -1 93 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80188 22 19 2852 2378 1 1441 140 16 16 256 mult_36 auto 41.0 MiB 1.38 8302 24098 4969 16007 3122 78.3 MiB 0.60 0.01 3.89606 -1449.02 -3.89606 3.89606 0.84 0.00398453 0.00356029 0.295252 0.263275 72 14517 29 6.59459e+06 3.72224e+06 1.04740e+06 4091.43 10.51 2.05558 1.82635 29168 268476 -1 12156 16 5540 6356 935744 217940 4.27196 4.27196 -1694.27 -4.27196 0 0 1.31294e+06 5128.69 0.47 0.38 0.28 -1 -1 0.47 0.189829 0.172724 695 944 361 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_21.v common 18.71 vpr 79.67 MiB 0.12 13004 -1 -1 1 0.39 -1 -1 41540 -1 -1 97 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81584 22 19 3057 2549 1 1544 144 16 16 256 mult_36 auto 42.3 MiB 1.56 9448 25780 5321 16969 3490 79.7 MiB 0.65 0.01 4.02136 -1636.71 -4.02136 4.02136 0.85 0.0038445 0.00335782 0.30201 0.265829 76 17096 28 6.59459e+06 3.78015e+06 1.09288e+06 4269.05 11.50 2.04822 1.80334 29676 279168 -1 13600 15 5813 6637 1057116 234019 4.52256 4.52256 -1903.85 -4.52256 0 0 1.35486e+06 5292.42 0.50 0.40 0.30 -1 -1 0.50 0.187808 0.171462 742 1017 380 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_22.v common 18.42 vpr 79.61 MiB 0.10 12964 -1 -1 1 0.41 -1 -1 41072 -1 -1 100 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81520 22 19 3131 2606 1 1587 147 16 16 256 mult_36 auto 42.6 MiB 1.33 9227 24528 5228 15955 3345 79.6 MiB 0.65 0.01 3.89606 -1627.02 -3.89606 3.89606 0.86 0.00456877 0.00408346 0.318441 0.284391 74 16445 50 6.59459e+06 3.82357e+06 1.07073e+06 4182.55 11.31 2.36983 2.10324 29424 273870 -1 13603 18 5812 6706 991947 218868 4.27196 4.27196 -1880.36 -4.27196 0 0 1.33358e+06 5209.30 0.52 0.44 0.29 -1 -1 0.52 0.233659 0.213304 762 1036 399 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_23.v common 15.49 vpr 80.77 MiB 0.14 13420 -1 -1 1 0.44 -1 -1 43108 -1 -1 107 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82704 22 19 3301 2742 1 1685 155 18 18 324 mult_36 auto 43.6 MiB 1.05 9897 30107 6949 19948 3210 80.8 MiB 0.73 0.01 4.27196 -1726.9 -4.27196 4.27196 1.15 0.0043316 0.00381825 0.352397 0.312154 66 19720 29 8.13932e+06 4.3209e+06 1.27759e+06 3943.17 7.66 1.51267 1.33001 36296 327148 -1 15745 18 6705 7815 1344642 287179 4.52256 4.52256 -2104.21 -4.52256 0 0 1.59950e+06 4936.74 0.62 0.47 0.34 -1 -1 0.62 0.218677 0.198282 802 1091 418 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_24.v common 21.07 vpr 80.96 MiB 0.10 13756 -1 -1 1 0.44 -1 -1 42124 -1 -1 109 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82904 22 19 3375 2799 1 1732 157 18 18 324 mult_36 auto 43.9 MiB 0.94 9977 33151 7775 21766 3610 81.0 MiB 0.85 0.01 3.89606 -1737.82 -3.89606 3.89606 1.18 0.00481421 0.004312 0.409445 0.364008 76 17063 25 8.13932e+06 4.34985e+06 1.43297e+06 4422.75 13.16 2.00562 1.76557 38232 369828 -1 14813 14 6405 7263 1221796 266348 4.39726 4.39726 -2059.18 -4.39726 0 0 1.77541e+06 5479.65 0.68 0.44 0.39 -1 -1 0.68 0.202999 0.185619 821 1110 437 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_25.v common 22.72 vpr 82.07 MiB 0.11 14152 -1 -1 1 0.49 -1 -1 42288 -1 -1 116 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84040 22 19 3615 3005 1 1836 164 18 18 324 mult_36 auto 45.1 MiB 1.18 11533 34212 7633 23124 3455 82.1 MiB 0.91 0.01 3.89606 -1891.99 -3.89606 3.89606 1.16 0.00505214 0.00450357 0.425873 0.378178 78 19594 24 8.13932e+06 4.45118e+06 1.46313e+06 4515.82 14.29 2.29543 2.01865 38880 383604 -1 16751 19 6771 7761 1120114 241574 4.39726 4.39726 -2342.96 -4.39726 0 0 1.83526e+06 5664.38 0.72 0.47 0.40 -1 -1 0.72 0.257097 0.232962 877 1201 456 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_26.v common 23.05 vpr 82.59 MiB 0.12 14172 -1 -1 1 0.52 -1 -1 42492 -1 -1 118 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84576 22 19 3689 3062 1 1874 166 18 18 324 mult_36 auto 45.6 MiB 1.38 11051 30262 6499 20748 3015 82.6 MiB 0.78 0.01 4.02136 -1951.72 -4.02136 4.02136 1.14 0.0051313 0.00455181 0.366847 0.324907 78 19174 31 8.13932e+06 4.48013e+06 1.46313e+06 4515.82 14.40 2.85856 2.50999 38880 383604 -1 16568 18 6896 7965 1337486 284282 4.39726 4.39726 -2329.03 -4.39726 0 0 1.83526e+06 5664.38 0.74 0.52 0.41 -1 -1 0.74 0.248428 0.224929 896 1220 475 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_27.v common 16.11 vpr 83.97 MiB 0.12 14544 -1 -1 1 0.54 -1 -1 42968 -1 -1 126 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85988 22 19 3871 3210 1 1982 175 18 18 324 mult_36 auto 46.9 MiB 1.52 11766 35383 8260 23455 3668 84.0 MiB 0.96 0.01 4.02136 -1994.77 -4.02136 4.02136 1.16 0.00583379 0.00525197 0.466286 0.416394 74 21028 27 8.13932e+06 4.99193e+06 1.40368e+06 4332.34 7.08 2.06665 1.84402 37912 362744 -1 17509 16 7580 8502 1449416 315684 4.39726 4.39726 -2429.54 -4.39726 0 0 1.74764e+06 5393.95 0.72 0.58 0.38 -1 -1 0.72 0.280243 0.256577 944 1275 494 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_28.v common 16.20 vpr 84.17 MiB 0.12 14676 -1 -1 1 0.54 -1 -1 42480 -1 -1 128 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86192 22 19 3945 3267 1 2025 177 18 18 324 mult_36 auto 47.2 MiB 1.22 11781 32913 6619 22794 3500 84.2 MiB 0.84 0.01 3.89606 -2054.63 -3.89606 3.89606 1.12 0.00524309 0.00459817 0.389157 0.343247 74 21367 29 8.13932e+06 5.02088e+06 1.40368e+06 4332.34 7.57 1.75166 1.53601 37912 362744 -1 18103 17 7955 8849 1543106 326818 4.27196 4.27196 -2491.26 -4.27196 0 0 1.74764e+06 5393.95 0.72 0.57 0.38 -1 -1 0.72 0.266268 0.241749 962 1294 513 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_29.v common 30.33 vpr 90.21 MiB 0.13 15212 -1 -1 1 0.57 -1 -1 42480 -1 -1 135 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92376 22 19 4159 3447 1 2141 185 22 22 484 mult_36 auto 48.2 MiB 1.72 13672 46473 11075 30852 4546 85.2 MiB 1.23 0.01 3.89606 -2192.79 -3.89606 3.89606 1.88 0.00618366 0.00552181 0.584834 0.52117 74 23598 30 1.32347e+07 5.5182e+06 2.15943e+06 4461.62 18.48 3.01546 2.65691 57402 562966 -1 20277 18 8211 9455 1788002 369525 4.39726 4.39726 -2693.92 -4.39726 0 0 2.68771e+06 5553.12 1.20 0.64 0.57 -1 -1 1.20 0.282686 0.256222 1015 1367 532 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_30.v common 21.91 vpr 85.59 MiB 0.12 15248 -1 -1 1 0.61 -1 -1 44376 -1 -1 137 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87644 22 19 4233 3504 1 2181 187 22 22 484 mult_36 auto 48.8 MiB 1.52 13472 41305 9386 27835 4084 85.6 MiB 1.02 0.01 3.77076 -2210.87 -3.77076 3.77076 1.83 0.00567905 0.00505472 0.483934 0.428943 68 25520 33 1.32347e+07 5.54715e+06 2.01763e+06 4168.66 10.86 2.13199 1.87851 55470 518816 -1 20455 17 8592 10108 1598366 335254 4.39726 4.39726 -2775.35 -4.39726 0 0 2.51205e+06 5190.18 1.07 0.61 0.47 -1 -1 1.07 0.293642 0.26598 1034 1386 551 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_31.v common 34.44 vpr 90.41 MiB 0.14 15608 -1 -1 1 0.64 -1 -1 43652 -1 -1 143 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92584 22 19 4410 3647 1 2284 193 22 22 484 mult_36 auto 49.5 MiB 1.66 14068 45867 10411 31804 3652 86.6 MiB 1.24 0.01 3.89606 -2309.78 -3.89606 3.89606 1.91 0.00601707 0.00533066 0.573813 0.511249 76 25191 32 1.32347e+07 5.63401e+06 2.20457e+06 4554.90 22.32 3.50641 3.09108 57882 574062 -1 21315 17 8684 9697 1899281 385502 4.39726 4.39726 -2890.39 -4.39726 0 0 2.73077e+06 5642.09 1.22 0.66 0.60 -1 -1 1.22 0.300373 0.27274 1077 1441 570 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_32.v common 35.24 vpr 95.77 MiB 0.14 15828 -1 -1 1 0.65 -1 -1 44508 -1 -1 145 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98072 22 19 4484 3704 1 2331 195 22 22 484 mult_36 auto 49.8 MiB 1.50 14970 42570 9107 29350 4113 87.0 MiB 1.17 0.01 3.77076 -2320 -3.77076 3.77076 1.86 0.00605 0.00535312 0.533184 0.474361 80 24578 28 1.32347e+07 5.66296e+06 2.29262e+06 4736.82 23.28 3.36273 2.949 59334 607116 -1 21487 16 8758 9922 1568083 317558 4.27196 4.27196 -2788.38 -4.27196 0 0 2.87723e+06 5944.70 1.31 0.57 0.63 -1 -1 1.31 0.279353 0.254067 1096 1460 589 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_33.v common 26.20 vpr 88.96 MiB 0.15 17004 -1 -1 1 0.71 -1 -1 44888 -1 -1 157 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91100 22 19 4843 4029 1 2441 208 22 22 484 mult_36 auto 51.5 MiB 2.03 15166 45792 9767 31708 4317 89.0 MiB 1.18 0.02 3.89606 -2520.33 -3.89606 3.89606 1.87 0.00707959 0.0063202 0.539679 0.477921 74 27713 34 1.32347e+07 6.23266e+06 2.15943e+06 4461.62 13.61 2.97739 2.61844 57402 562966 -1 22891 17 9357 10819 1925322 394236 4.52256 4.52256 -3112.52 -4.52256 0 0 2.68771e+06 5553.12 1.17 0.67 0.57 -1 -1 1.17 0.309318 0.279025 1185 1606 608 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_34.v common 26.21 vpr 88.97 MiB 0.16 16880 -1 -1 1 0.72 -1 -1 45320 -1 -1 160 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91108 22 19 4917 4086 1 2486 211 22 22 484 mult_36 auto 52.2 MiB 2.00 15412 49744 10853 34231 4660 89.0 MiB 1.27 0.01 3.89606 -2556.34 -3.89606 3.89606 1.91 0.006626 0.00577766 0.576597 0.509153 70 30012 50 1.32347e+07 6.27609e+06 2.06816e+06 4273.05 13.18 2.60307 2.28017 56434 539830 -1 23780 29 10010 11558 2578332 637658 4.39726 4.39726 -3205.75 -4.39726 0 0 2.60483e+06 5381.88 1.14 1.10 0.56 -1 -1 1.14 0.490069 0.440179 1205 1625 627 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_35.v common 26.22 vpr 90.00 MiB 0.17 17232 -1 -1 1 0.78 -1 -1 45524 -1 -1 163 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92164 22 19 5093 4228 1 2588 214 22 22 484 mult_36 auto 53.2 MiB 1.87 15672 46222 9969 32199 4054 90.0 MiB 1.16 0.02 3.89606 -2705.35 -3.89606 3.89606 1.86 0.00699511 0.00615188 0.526613 0.462242 70 30070 41 1.32347e+07 6.31951e+06 2.06816e+06 4273.05 13.68 2.95323 2.57469 56434 539830 -1 24419 18 10245 11928 2118214 450725 4.39726 4.39726 -3402.02 -4.39726 0 0 2.60483e+06 5381.88 1.13 0.76 0.56 -1 -1 1.13 0.344497 0.310644 1248 1680 646 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_36.v common 27.54 vpr 90.09 MiB 0.16 17576 -1 -1 1 0.78 -1 -1 45508 -1 -1 165 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92256 22 19 5167 4285 1 2632 216 22 22 484 mult_36 auto 53.7 MiB 1.88 17422 48741 10323 33757 4661 90.1 MiB 1.31 0.02 3.77076 -2635.44 -3.77076 3.77076 1.85 0.00739197 0.00660106 0.586029 0.518216 80 29393 30 1.32347e+07 6.34846e+06 2.29262e+06 4736.82 14.56 3.166 2.77362 59334 607116 -1 24952 18 10038 11731 1869513 381448 4.27196 4.27196 -3382 -4.27196 0 0 2.87723e+06 5944.70 1.31 0.73 0.62 -1 -1 1.31 0.361225 0.326952 1267 1699 665 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_37.v common 40.06 vpr 107.25 MiB 0.17 17896 -1 -1 1 0.81 -1 -1 44500 -1 -1 173 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 109828 22 19 5380 4464 1 2743 225 24 24 576 mult_36 auto 54.8 MiB 2.16 17708 52893 12009 35875 5009 91.2 MiB 1.37 0.02 4.14666 -2910.55 -4.14666 4.14666 2.33 0.00694363 0.00608863 0.620292 0.547625 76 29943 49 1.59675e+07 6.86027e+06 2.61600e+06 4541.67 25.65 3.68582 3.2387 68478 680951 -1 24753 16 9863 11562 1822773 389146 4.64786 4.64786 -3550.8 -4.64786 0 0 3.24203e+06 5628.53 1.47 0.71 0.70 -1 -1 1.47 0.348015 0.31518 1321 1772 684 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_38.v common 30.53 vpr 92.44 MiB 0.17 18168 -1 -1 1 0.87 -1 -1 44756 -1 -1 176 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94660 22 19 5454 4521 1 2787 228 24 24 576 mult_36 auto 55.1 MiB 2.34 17631 53820 12224 36525 5071 91.4 MiB 1.41 0.02 4.27196 -2923.97 -4.27196 4.27196 2.30 0.00783491 0.00696237 0.638936 0.567688 78 29199 34 1.59675e+07 6.90369e+06 2.67122e+06 4637.53 15.69 3.18972 2.80656 69630 706637 -1 24993 15 9876 11292 1944947 404382 4.64786 4.64786 -3551.76 -4.64786 0 0 3.35110e+06 5817.88 1.57 0.71 0.73 -1 -1 1.57 0.33908 0.307693 1340 1791 703 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_39.v common 40.85 vpr 108.88 MiB 0.20 18300 -1 -1 1 0.86 -1 -1 44696 -1 -1 180 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 111488 22 19 5629 4662 1 2884 232 24 24 576 mult_36 auto 56.1 MiB 2.42 18437 53632 11418 37708 4506 92.6 MiB 1.46 0.02 4.02136 -3131.79 -4.02136 4.02136 2.31 0.00765766 0.00670662 0.653563 0.581062 76 30969 27 1.59675e+07 6.9616e+06 2.61600e+06 4541.67 25.75 3.86256 3.40256 68478 680951 -1 26665 17 10726 12344 2151357 447780 4.52256 4.52256 -3926.62 -4.52256 0 0 3.24203e+06 5628.53 1.47 0.84 0.70 -1 -1 1.47 0.3968 0.360494 1381 1846 722 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_40.v common 26.95 vpr 92.86 MiB 0.18 18384 -1 -1 1 0.89 -1 -1 46368 -1 -1 182 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95092 22 19 5703 4719 1 2932 234 24 24 576 mult_36 auto 56.5 MiB 2.52 18014 56394 12081 39101 5212 92.9 MiB 1.50 0.02 3.89606 -3075.18 -3.89606 3.89606 2.28 0.00838759 0.00749003 0.669673 0.591883 76 31577 37 1.59675e+07 6.99055e+06 2.61600e+06 4541.67 11.67 2.82326 2.47346 68478 680951 -1 26256 18 11051 12515 2137962 443832 4.39726 4.39726 -3753.75 -4.39726 0 0 3.24203e+06 5628.53 1.50 0.83 0.69 -1 -1 1.50 0.408939 0.370173 1400 1865 741 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_41.v common 41.76 vpr 110.88 MiB 0.18 18852 -1 -1 1 0.94 -1 -1 44996 -1 -1 190 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 113540 22 19 5950 4932 1 3040 243 24 24 576 mult_36 auto 57.9 MiB 2.54 20308 54061 11377 38523 4161 94.1 MiB 1.40 0.02 4.39726 -3255.65 -4.39726 4.39726 2.21 0.00799662 0.00709251 0.620328 0.54888 78 33192 22 1.59675e+07 7.50235e+06 2.67122e+06 4637.53 26.55 4.35969 3.83466 69630 706637 -1 28630 15 10780 12439 2168679 448155 4.89846 4.89846 -3930.74 -4.89846 0 0 3.35110e+06 5817.88 1.52 0.82 0.74 -1 -1 1.52 0.389336 0.354858 1461 1956 760 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_42.v common 30.01 vpr 99.29 MiB 0.19 19312 -1 -1 1 0.98 -1 -1 46972 -1 -1 193 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101676 22 19 6024 4989 1 3083 246 24 24 576 mult_36 auto 58.1 MiB 2.49 20133 54916 10891 38792 5233 94.5 MiB 1.52 0.02 4.39726 -3321.89 -4.39726 4.39726 2.24 0.00900687 0.00807531 0.67026 0.594087 76 33862 31 1.59675e+07 7.54578e+06 2.61600e+06 4541.67 14.71 3.38266 2.97468 68478 680951 -1 29093 14 11308 13660 2260205 469676 4.77316 4.77316 -4247.76 -4.77316 0 0 3.24203e+06 5628.53 1.44 0.76 0.69 -1 -1 1.44 0.332001 0.301069 1480 1975 779 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_43.v common 44.10 vpr 113.05 MiB 0.20 19680 -1 -1 1 1.04 -1 -1 45860 -1 -1 199 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 115764 22 19 6198 5129 1 3182 252 24 24 576 mult_36 auto 59.2 MiB 2.62 20418 59877 12785 41921 5171 95.3 MiB 1.65 0.02 4.02136 -3375.94 -4.02136 4.02136 2.24 0.00914036 0.00779815 0.711472 0.614185 80 32220 24 1.59675e+07 7.63263e+06 2.72095e+06 4723.87 28.29 4.88742 4.27332 70206 720185 -1 28661 16 10988 12481 2148427 445729 4.52256 4.52256 -3871.52 -4.52256 0 0 3.41546e+06 5929.62 1.44 0.78 0.73 -1 -1 1.44 0.381161 0.345296 1523 2030 798 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_44.v common 33.56 vpr 96.59 MiB 0.20 19540 -1 -1 1 1.04 -1 -1 47496 -1 -1 200 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98908 22 19 6272 5186 1 3228 253 24 24 576 mult_36 auto 59.6 MiB 2.88 21431 65771 14402 45552 5817 95.8 MiB 1.82 0.02 4.14666 -3397.44 -4.14666 4.14666 2.29 0.00906891 0.00810088 0.811147 0.720401 76 36571 43 1.59675e+07 7.64711e+06 2.61600e+06 4541.67 17.10 4.11759 3.6348 68478 680951 -1 30752 17 12425 14115 2688656 561874 4.52256 4.52256 -4338.72 -4.52256 0 0 3.24203e+06 5628.53 1.44 0.92 0.70 -1 -1 1.44 0.395586 0.355932 1542 2049 817 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_45.v common 122.93 vpr 97.76 MiB 0.20 20084 -1 -1 1 1.10 -1 -1 47504 -1 -1 208 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100104 22 19 6485 5365 1 3341 262 24 24 576 mult_36 auto 60.5 MiB 2.58 22412 60598 12481 43092 5025 96.8 MiB 1.69 0.02 4.14666 -3570.71 -4.14666 4.14666 2.25 0.00906156 0.0080412 0.728442 0.642628 78 37982 35 1.59675e+07 8.15891e+06 2.67122e+06 4637.53 106.65 6.73044 5.87368 69630 706637 -1 31501 16 11938 13963 2384252 485487 4.64786 4.64786 -4245.45 -4.64786 0 0 3.35110e+06 5817.88 1.50 0.93 0.73 -1 -1 1.50 0.457082 0.416312 1593 2122 836 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_46.v common 45.15 vpr 115.12 MiB 0.21 20392 -1 -1 1 1.10 -1 -1 47672 -1 -1 210 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 117888 22 19 6559 5422 1 3381 264 24 24 576 mult_36 auto 60.9 MiB 2.45 21387 59484 12196 41850 5438 97.1 MiB 1.54 0.02 4.14666 -3590.34 -4.14666 4.14666 2.23 0.00798541 0.00704585 0.664554 0.582395 78 35387 32 1.59675e+07 8.18786e+06 2.67122e+06 4637.53 29.11 5.02181 4.39862 69630 706637 -1 30398 15 12338 14224 2337847 495864 4.52256 4.52256 -4340.67 -4.52256 0 0 3.35110e+06 5817.88 1.57 0.91 0.74 -1 -1 1.57 0.438967 0.400028 1613 2141 855 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_47.v common 37.18 vpr 99.52 MiB 0.21 20612 -1 -1 1 1.13 -1 -1 47884 -1 -1 216 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101904 22 19 6735 5564 1 3478 270 24 24 576 mult_36 auto 62.1 MiB 2.64 22648 67414 14343 47452 5619 98.0 MiB 1.88 0.02 4.39726 -3732.99 -4.39726 4.39726 2.21 0.00988321 0.00882598 0.800708 0.708918 78 37777 42 1.59675e+07 8.27472e+06 2.67122e+06 4637.53 20.41 4.14579 3.63601 69630 706637 -1 31727 16 12412 14016 2368377 494496 4.77316 4.77316 -4531.8 -4.77316 0 0 3.35110e+06 5817.88 1.49 0.89 0.73 -1 -1 1.49 0.437456 0.396734 1656 2196 874 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_48.v common 32.13 vpr 103.63 MiB 0.22 20712 -1 -1 1 1.19 -1 -1 47776 -1 -1 218 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 106116 22 19 6809 5621 1 3528 272 24 24 576 mult_36 auto 62.3 MiB 2.71 22735 72514 15784 50143 6587 98.4 MiB 1.97 0.02 4.02136 -3702.06 -4.02136 4.02136 2.26 0.00937499 0.00804454 0.851462 0.750917 76 38635 34 1.59675e+07 8.30367e+06 2.61600e+06 4541.67 15.30 3.91894 3.43923 68478 680951 -1 32192 15 13224 15316 2477401 526593 4.52256 4.52256 -4461.76 -4.52256 0 0 3.24203e+06 5628.53 1.51 0.93 0.70 -1 -1 1.51 0.434926 0.395784 1674 2215 893 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_49.v common 115.01 vpr 101.99 MiB 0.23 21420 -1 -1 1 1.24 -1 -1 48036 -1 -1 228 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 104436 22 19 7094 5872 1 3643 283 24 24 576 mult_36 auto 63.9 MiB 2.95 23335 72667 15126 52214 5327 100.1 MiB 2.03 0.03 4.02136 -3854.16 -4.02136 4.02136 2.29 0.0103402 0.00922695 0.854758 0.757173 80 37440 31 1.59675e+07 8.84444e+06 2.72095e+06 4723.87 97.48 6.92598 6.01645 70206 720185 -1 33109 18 13087 15220 2545109 522741 4.39726 4.39726 -4599.29 -4.39726 0 0 3.41546e+06 5929.62 1.56 1.04 0.74 -1 -1 1.56 0.524509 0.475675 1745 2324 912 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_50.v common 47.20 vpr 126.72 MiB 0.23 21568 -1 -1 1 1.29 -1 -1 48072 -1 -1 230 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 129760 22 19 7168 5929 1 3677 285 24 24 576 mult_36 auto 64.4 MiB 2.92 25202 66812 14394 47134 5284 100.5 MiB 1.85 0.02 4.02136 -3989.49 -4.02136 4.02136 2.30 0.0102157 0.00913467 0.784827 0.691919 84 39900 29 1.59675e+07 8.87339e+06 2.84938e+06 4946.85 29.60 5.19628 4.5651 71930 760447 -1 33906 17 13157 15197 2679294 538247 4.39726 4.39726 -4679.3 -4.39726 0 0 3.60864e+06 6265.01 1.62 1.05 0.79 -1 -1 1.62 0.516645 0.469359 1764 2343 931 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_51.v common 37.22 vpr 104.25 MiB 0.25 21812 -1 -1 1 1.36 -1 -1 48836 -1 -1 235 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 106752 22 19 7344 6071 1 3784 290 24 24 576 mult_36 auto 65.0 MiB 3.07 23959 75092 15363 52894 6835 101.0 MiB 2.10 0.03 4.14666 -4059.54 -4.14666 4.14666 2.31 0.0104288 0.00929382 0.872592 0.772436 86 38592 22 1.59675e+07 8.94577e+06 2.91907e+06 5067.82 19.00 4.42873 3.87241 72506 773887 -1 33624 17 13705 15631 2767802 562952 4.39726 4.39726 -4717.49 -4.39726 0 0 3.65856e+06 6351.67 1.63 1.08 0.82 -1 -1 1.63 0.519351 0.471137 1808 2398 950 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_pipe_52.v common 49.52 vpr 130.39 MiB 0.23 21768 -1 -1 1 1.34 -1 -1 48580 -1 -1 237 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 133520 22 19 7418 6128 1 3829 292 24 24 576 mult_36 auto 65.7 MiB 3.02 26406 74828 15900 52475 6453 101.7 MiB 2.09 0.03 4.14666 -4192.21 -4.14666 4.14666 2.25 0.0101054 0.00893628 0.87194 0.764763 86 41558 32 1.59675e+07 8.97472e+06 2.91907e+06 5067.82 31.55 5.53381 4.83375 72506 773887 -1 36132 14 13806 15967 2653852 543716 4.64786 4.64786 -5076.65 -4.64786 0 0 3.65856e+06 6351.67 1.68 0.97 0.82 -1 -1 1.68 0.447817 0.407051 1827 2417 969 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_14.v common 10.57 vpr 69.97 MiB 0.05 9716 -1 -1 1 0.18 -1 -1 38604 -1 -1 43 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71648 22 19 1246 925 1 719 88 16 16 256 mult_36 auto 32.1 MiB 1.23 3869 9448 2208 6103 1137 70.0 MiB 0.21 0.00 6.95917 -348.532 -6.95917 6.95917 0.81 0.00198611 0.00176817 0.100552 0.0908551 56 7489 30 6.59459e+06 2.20645e+06 849745. 3319.32 5.36 0.692715 0.615231 26364 208198 -1 6538 26 7498 8260 1322244 302491 8.32693 8.32693 -449.731 -8.32693 0 0 1.04740e+06 4091.43 0.38 0.40 0.21 -1 -1 0.38 0.122561 0.111369 299 285 247 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_15.v common 32.58 vpr 70.55 MiB 0.06 9960 -1 -1 1 0.19 -1 -1 38720 -1 -1 46 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72248 22 19 1344 989 1 778 92 16 16 256 mult_36 auto 32.8 MiB 1.24 4267 12305 3349 7151 1805 70.6 MiB 0.28 0.01 6.90421 -330.593 -6.90421 6.90421 0.84 0.00208749 0.0018874 0.13663 0.123245 50 9164 48 6.59459e+06 2.64588e+06 787708. 3076.99 27.18 1.29804 1.15814 25344 186282 -1 7229 24 7575 8553 1528708 364441 8.18143 8.18143 -420.503 -8.18143 0 0 943753. 3686.54 0.36 0.45 0.19 -1 -1 0.36 0.129151 0.117833 321 304 266 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_16.v common 14.45 vpr 70.77 MiB 0.06 10000 -1 -1 1 0.21 -1 -1 38976 -1 -1 48 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72464 22 19 1418 1046 1 822 94 16 16 256 mult_36 auto 33.0 MiB 1.30 4508 15430 3965 9246 2219 70.8 MiB 0.34 0.00 6.95111 -352.92 -6.95111 6.95111 0.85 0.00203922 0.00182897 0.161296 0.144659 56 8659 46 6.59459e+06 2.67484e+06 849745. 3319.32 8.82 1.14058 1.01393 26364 208198 -1 7553 22 7434 8267 1433381 335753 8.59173 8.59173 -531.47 -8.59173 0 0 1.04740e+06 4091.43 0.39 0.43 0.21 -1 -1 0.39 0.134127 0.122234 340 323 285 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_17.v common 12.65 vpr 71.30 MiB 0.07 10608 -1 -1 1 0.21 -1 -1 38384 -1 -1 52 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73012 22 19 1518 1112 1 879 98 16 16 256 mult_36 auto 33.7 MiB 1.19 5057 14273 3385 9340 1548 71.3 MiB 0.32 0.01 7.58585 -409.096 -7.58585 7.58585 0.83 0.0022539 0.00201015 0.156933 0.14113 58 9712 45 6.59459e+06 2.73274e+06 871168. 3403.00 7.08 0.953767 0.849119 26872 219187 -1 8199 25 8420 9392 1685936 376481 8.80238 8.80238 -513.563 -8.80238 0 0 1.09288e+06 4269.05 0.40 0.46 0.22 -1 -1 0.40 0.137693 0.124392 365 342 304 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_18.v common 16.31 vpr 71.93 MiB 0.07 10532 -1 -1 1 0.22 -1 -1 39116 -1 -1 55 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73656 22 19 1592 1169 1 918 101 16 16 256 mult_36 auto 34.2 MiB 1.57 5305 14671 3459 8993 2219 71.9 MiB 0.35 0.01 7.63305 -412.34 -7.63305 7.63305 0.82 0.00251791 0.0022264 0.15968 0.142714 68 9190 46 6.59459e+06 2.77617e+06 1.00038e+06 3907.74 10.26 1.33823 1.18803 28404 252462 -1 7927 23 7040 7938 1339222 289843 8.77058 8.77058 -548.606 -8.77058 0 0 1.24648e+06 4869.04 0.45 0.39 0.27 -1 -1 0.45 0.136524 0.123854 383 361 323 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_19.v common 10.98 vpr 72.29 MiB 0.07 10692 -1 -1 1 0.23 -1 -1 39908 -1 -1 58 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74024 22 19 1688 1231 1 975 105 16 16 256 mult_36 auto 34.7 MiB 1.39 5799 16407 4094 9373 2940 72.3 MiB 0.36 0.01 7.67995 -389.193 -7.67995 7.67995 0.82 0.00258001 0.00233919 0.173075 0.155099 64 10531 46 6.59459e+06 3.21559e+06 943753. 3686.54 5.03 0.88115 0.782671 27892 240595 -1 8591 25 7835 8926 1469579 352315 8.76478 8.76478 -535.97 -8.76478 0 0 1.19033e+06 4649.74 0.43 0.48 0.25 -1 -1 0.43 0.165011 0.149757 404 380 342 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_20.v common 38.31 vpr 72.68 MiB 0.07 10676 -1 -1 1 0.25 -1 -1 39588 -1 -1 59 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74420 22 19 1762 1288 1 1013 106 16 16 256 mult_36 auto 35.1 MiB 1.63 5637 16106 4040 9255 2811 72.7 MiB 0.39 0.01 7.71115 -428.772 -7.71115 7.71115 0.83 0.00250038 0.00222133 0.18231 0.164061 62 12326 48 6.59459e+06 3.23007e+06 916467. 3579.95 32.07 1.62198 1.43881 27384 229598 -1 8973 23 8284 9416 1424193 329822 9.24068 9.24068 -608.241 -9.24068 0 0 1.13630e+06 4438.68 0.44 0.44 0.24 -1 -1 0.44 0.155878 0.141936 423 399 361 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_21.v common 15.94 vpr 73.08 MiB 0.08 10988 -1 -1 1 0.29 -1 -1 39460 -1 -1 62 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74836 22 19 1859 1351 1 1072 109 16 16 256 mult_36 auto 35.5 MiB 1.59 6318 18569 4645 11438 2486 73.1 MiB 0.48 0.01 7.76745 -437.182 -7.76745 7.76745 0.84 0.00277322 0.0024969 0.21478 0.192597 66 11724 34 6.59459e+06 3.2735e+06 974584. 3806.97 9.50 1.37082 1.21594 28148 247068 -1 9669 24 8476 9605 1651662 377614 8.88368 8.88368 -579.699 -8.88368 0 0 1.22072e+06 4768.46 0.44 0.49 0.26 -1 -1 0.44 0.16044 0.145489 445 418 380 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_22.v common 17.03 vpr 73.58 MiB 0.08 11124 -1 -1 1 0.28 -1 -1 39540 -1 -1 66 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75344 22 19 1933 1408 1 1112 113 16 16 256 mult_36 auto 35.9 MiB 1.88 6212 18131 4487 10507 3137 73.6 MiB 0.44 0.01 7.89601 -438.027 -7.89601 7.89601 0.83 0.00316347 0.00276217 0.207586 0.186328 66 11729 34 6.59459e+06 3.3314e+06 974584. 3806.97 10.26 1.43089 1.27106 28148 247068 -1 9560 22 9271 10601 1661555 393913 8.91058 8.91058 -643.452 -8.91058 0 0 1.22072e+06 4768.46 0.45 0.50 0.27 -1 -1 0.45 0.164345 0.149691 464 437 399 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_23.v common 21.17 vpr 73.84 MiB 0.09 11480 -1 -1 1 0.29 -1 -1 40656 -1 -1 68 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75612 22 19 2031 1472 1 1172 116 18 18 324 mult_36 auto 36.3 MiB 2.08 7129 18728 4339 11883 2506 73.8 MiB 0.45 0.01 7.75835 -489.507 -7.75835 7.75835 1.13 0.00310726 0.00280153 0.215765 0.194267 70 12701 27 8.13932e+06 3.75635e+06 1.34436e+06 4149.26 13.18 1.59319 1.41773 37264 347768 -1 10900 23 9345 10484 1873312 402687 8.79548 8.79548 -658.622 -8.79548 0 0 1.69344e+06 5226.66 0.68 0.55 0.37 -1 -1 0.68 0.18188 0.16497 486 456 418 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_24.v common 20.33 vpr 74.50 MiB 0.09 11488 -1 -1 1 0.30 -1 -1 39472 -1 -1 71 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76292 22 19 2105 1529 1 1210 119 18 18 324 mult_36 auto 36.8 MiB 2.03 7210 20559 5245 12965 2349 74.5 MiB 0.50 0.01 7.59685 -482.494 -7.59685 7.59685 1.12 0.00313222 0.00282162 0.223856 0.199625 66 13123 41 8.13932e+06 3.79978e+06 1.27759e+06 3943.17 12.36 1.51781 1.34339 36296 327148 -1 11092 26 9727 11177 1934230 412986 8.70188 8.70188 -689.701 -8.70188 0 0 1.59950e+06 4936.74 0.63 0.60 0.33 -1 -1 0.63 0.201739 0.183017 505 475 437 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_25.v common 23.38 vpr 74.80 MiB 0.09 12044 -1 -1 1 0.33 -1 -1 40288 -1 -1 73 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76592 22 19 2201 1591 1 1267 121 18 18 324 mult_36 auto 37.4 MiB 1.87 7660 25835 6198 16661 2976 74.8 MiB 0.68 0.01 7.75035 -497.722 -7.75035 7.75035 1.10 0.00340537 0.00305618 0.306996 0.275175 78 12686 26 8.13932e+06 3.82873e+06 1.46313e+06 4515.82 15.08 1.72259 1.5297 38880 383604 -1 11310 24 10494 11925 2250771 469555 8.65958 8.65958 -751.855 -8.65958 0 0 1.83526e+06 5664.38 0.74 0.62 0.40 -1 -1 0.74 0.192755 0.174435 526 494 456 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_26.v common 16.68 vpr 75.66 MiB 0.09 12168 -1 -1 1 0.33 -1 -1 40772 -1 -1 76 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77480 22 19 2275 1648 1 1304 124 18 18 324 mult_36 auto 38.2 MiB 2.10 7855 24226 6110 15279 2837 75.7 MiB 0.62 0.01 7.93355 -537.402 -7.93355 7.93355 1.09 0.00317262 0.00282577 0.272843 0.243128 64 15398 30 8.13932e+06 3.87216e+06 1.23838e+06 3822.15 8.36 1.13471 1.00771 35972 318676 -1 12598 25 11524 13222 2408688 522318 9.06498 9.06498 -869.219 -9.06498 0 0 1.56068e+06 4816.91 0.61 0.71 0.33 -1 -1 0.61 0.211813 0.192015 546 513 475 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_27.v common 47.33 vpr 75.61 MiB 0.10 12328 -1 -1 1 0.36 -1 -1 40544 -1 -1 82 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77428 22 19 2385 1724 1 1377 131 18 18 324 mult_36 auto 38.3 MiB 2.11 7971 25363 6162 16041 3160 75.6 MiB 0.64 0.01 7.84745 -519.375 -7.84745 7.84745 1.16 0.00367768 0.003301 0.283976 0.254515 60 16266 50 8.13932e+06 4.35501e+06 1.16833e+06 3605.96 38.61 2.51709 2.23388 35004 297736 -1 13119 27 13815 15771 3387090 731922 9.04808 9.04808 -803.412 -9.04808 0 0 1.46313e+06 4515.82 0.61 0.92 0.30 -1 -1 0.61 0.241623 0.219137 575 532 494 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_28.v common 19.46 vpr 76.36 MiB 0.10 12428 -1 -1 1 0.37 -1 -1 40628 -1 -1 83 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78196 22 19 2459 1781 1 1418 132 18 18 324 mult_36 auto 39.2 MiB 2.44 8335 21907 5119 14277 2511 76.4 MiB 0.58 0.01 7.92281 -521.606 -7.92281 7.92281 1.16 0.00354203 0.00318339 0.26773 0.239201 64 16068 50 8.13932e+06 4.36948e+06 1.23838e+06 3822.15 10.51 1.67823 1.49379 35972 318676 -1 12695 26 12586 14358 2783925 611665 9.34998 9.34998 -904.522 -9.34998 0 0 1.56068e+06 4816.91 0.62 0.82 0.33 -1 -1 0.62 0.236126 0.214229 594 551 513 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_29.v common 33.07 vpr 83.62 MiB 0.11 12612 -1 -1 1 0.39 -1 -1 40776 -1 -1 85 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85632 22 19 2565 1853 1 1483 135 22 22 484 mult_36 auto 39.6 MiB 2.86 9166 20203 4326 13621 2256 76.9 MiB 0.57 0.01 7.84745 -554.417 -7.84745 7.84745 1.91 0.00405833 0.00367567 0.253586 0.22844 70 15988 28 1.32347e+07 4.79443e+06 2.06816e+06 4273.05 21.34 2.0325 1.81047 56434 539830 -1 13723 25 12644 14367 3081815 648088 8.86338 8.86338 -918.599 -8.86338 0 0 2.60483e+06 5381.88 1.12 0.88 0.56 -1 -1 1.12 0.23988 0.216366 619 570 532 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_30.v common 22.58 vpr 76.98 MiB 0.11 13068 -1 -1 1 0.39 -1 -1 41024 -1 -1 89 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78828 22 19 2639 1910 1 1523 139 22 22 484 mult_36 auto 39.8 MiB 2.79 9080 27064 6246 17580 3238 77.0 MiB 0.73 0.01 7.75835 -537.373 -7.75835 7.75835 1.86 0.00416212 0.00365606 0.331022 0.29589 66 16160 30 1.32347e+07 4.85233e+06 1.96511e+06 4060.15 11.08 1.54392 1.36969 54986 507526 -1 13893 24 11062 12882 2230996 474458 8.91078 8.91078 -1055.74 -8.91078 0 0 2.45963e+06 5081.88 1.09 0.67 0.51 -1 -1 1.09 0.222369 0.200577 639 589 551 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_31.v common 22.23 vpr 77.79 MiB 0.11 13264 -1 -1 1 0.41 -1 -1 41000 -1 -1 93 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79652 22 19 2744 1981 1 1589 143 22 22 484 mult_36 auto 40.5 MiB 2.55 9907 28864 6894 18672 3298 77.8 MiB 0.77 0.01 7.65175 -534.351 -7.65175 7.65175 1.89 0.00404669 0.00366147 0.337519 0.301303 70 17494 42 1.32347e+07 4.91023e+06 2.06816e+06 4273.05 10.62 1.50444 1.33956 56434 539830 -1 14824 22 12373 14096 3191897 667457 9.24068 9.24068 -868.96 -9.24068 0 0 2.60483e+06 5381.88 1.10 0.89 0.55 -1 -1 1.10 0.244221 0.222076 665 608 570 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_32.v common 23.84 vpr 77.60 MiB 0.11 13388 -1 -1 1 0.42 -1 -1 40772 -1 -1 96 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79460 22 19 2818 2038 1 1626 146 22 22 484 mult_36 auto 40.5 MiB 3.06 10356 32786 8568 20532 3686 77.6 MiB 0.84 0.01 7.91155 -590.639 -7.91155 7.91155 1.85 0.00439901 0.00389896 0.380616 0.339382 68 18462 48 1.32347e+07 4.95366e+06 2.01763e+06 4168.66 11.63 1.58839 1.40987 55470 518816 -1 15528 24 13379 15711 3578401 745970 9.51528 9.51528 -1144.42 -9.51528 0 0 2.51205e+06 5190.18 1.06 0.93 0.53 -1 -1 1.06 0.238758 0.215291 684 627 589 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_33.v common 32.16 vpr 84.84 MiB 0.12 13764 -1 -1 1 0.43 -1 -1 41488 -1 -1 100 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86880 22 19 2923 2109 1 1697 151 22 22 484 mult_36 auto 41.6 MiB 2.96 10545 30627 7116 20113 3398 78.8 MiB 0.80 0.01 8.29589 -650.397 -8.29589 8.29589 1.77 0.0044984 0.00392577 0.354811 0.31493 76 17594 29 1.32347e+07 5.40755e+06 2.20457e+06 4554.90 20.10 2.37614 2.10296 57882 574062 -1 15545 22 12722 14403 3019373 621100 9.59662 9.59662 -1007.05 -9.59662 0 0 2.73077e+06 5642.09 1.21 0.84 0.59 -1 -1 1.21 0.249583 0.227264 710 646 608 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_34.v common 24.55 vpr 79.05 MiB 0.13 13820 -1 -1 1 0.46 -1 -1 41268 -1 -1 101 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80944 22 19 2997 2166 1 1733 152 22 22 484 mult_36 auto 41.8 MiB 3.87 10759 28097 6626 18712 2759 79.0 MiB 0.80 0.01 8.62159 -622.465 -8.62159 8.62159 1.89 0.00515269 0.00454558 0.354143 0.315629 64 20022 34 1.32347e+07 5.42203e+06 1.90554e+06 3937.06 11.41 1.61019 1.43381 54502 494576 -1 16520 26 15379 17921 3338814 707072 10.1807 10.1807 -1105.42 -10.1807 0 0 2.40101e+06 4960.76 1.06 0.99 0.50 -1 -1 1.06 0.29306 0.265708 729 665 627 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_35.v common 38.20 vpr 87.61 MiB 0.13 14164 -1 -1 1 0.48 -1 -1 41592 -1 -1 106 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89716 22 19 3101 2236 1 1798 157 22 22 484 mult_36 auto 42.4 MiB 3.55 11403 31882 7011 21201 3670 79.7 MiB 0.94 0.01 8.28789 -639.762 -8.28789 8.28789 1.90 0.00510447 0.00464366 0.419819 0.377115 76 19370 35 1.32347e+07 5.49441e+06 2.20457e+06 4554.90 25.05 2.91473 2.59274 57882 574062 -1 16571 25 13824 15967 2951162 610739 10.2169 10.2169 -1156.73 -10.2169 0 0 2.73077e+06 5642.09 1.14 0.90 0.60 -1 -1 1.14 0.286079 0.25788 755 684 646 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_36.v common 27.42 vpr 79.99 MiB 0.13 14340 -1 -1 1 0.48 -1 -1 41900 -1 -1 107 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81912 22 19 3175 2293 1 1835 158 22 22 484 mult_36 auto 42.7 MiB 4.08 12120 27913 5932 19224 2757 80.0 MiB 0.77 0.01 8.38499 -718.01 -8.38499 8.38499 1.81 0.00517106 0.00450376 0.335462 0.298414 72 21606 42 1.32347e+07 5.50888e+06 2.11301e+06 4365.72 13.95 1.8862 1.67386 56918 551676 -1 17827 27 16308 18854 3396654 690861 10.223 10.223 -1354.72 -10.223 0 0 2.64603e+06 5467.00 1.11 1.02 0.55 -1 -1 1.11 0.317949 0.286876 773 703 665 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_37.v common 40.01 vpr 94.75 MiB 0.14 14676 -1 -1 1 0.50 -1 -1 41492 -1 -1 111 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97028 22 19 3280 2364 1 1905 163 24 24 576 mult_36 auto 43.5 MiB 3.91 12479 35318 8142 23513 3663 80.5 MiB 0.98 0.01 8.62939 -792.996 -8.62939 8.62939 2.28 0.00544267 0.00479031 0.431775 0.383968 78 20055 33 1.59675e+07 5.96278e+06 2.67122e+06 4637.53 25.13 2.68976 2.37759 69630 706637 -1 17725 25 13903 15815 3243296 658019 9.68562 9.68562 -1131.18 -9.68562 0 0 3.35110e+06 5817.88 1.44 0.92 0.73 -1 -1 1.44 0.279986 0.25194 798 722 684 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_38.v common 43.93 vpr 96.68 MiB 0.14 14568 -1 -1 1 0.51 -1 -1 42416 -1 -1 113 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99004 22 19 3354 2421 1 1940 165 24 24 576 mult_36 auto 44.1 MiB 4.37 12132 37681 8978 25001 3702 81.2 MiB 1.09 0.01 8.44615 -823.081 -8.44615 8.44615 2.25 0.00510095 0.00451624 0.458773 0.406882 74 21374 31 1.59675e+07 5.99174e+06 2.56259e+06 4448.94 28.61 3.14557 2.77311 67906 667765 -1 17837 24 15699 17913 3236786 673668 9.74362 9.74362 -1227.16 -9.74362 0 0 3.19068e+06 5539.38 1.36 0.94 0.68 -1 -1 1.36 0.293117 0.264683 818 741 703 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_39.v common 41.63 vpr 96.14 MiB 0.14 15072 -1 -1 1 0.54 -1 -1 41720 -1 -1 117 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98448 22 19 3457 2490 1 2006 169 24 24 576 mult_36 auto 44.3 MiB 4.17 13262 32859 7573 22357 2929 81.7 MiB 0.98 0.01 8.66079 -856.389 -8.66079 8.66079 2.22 0.00486977 0.00433366 0.417557 0.369692 70 22654 30 1.59675e+07 6.04964e+06 2.45377e+06 4260.01 26.66 2.88741 2.54624 66754 640332 -1 19426 22 14840 17253 3253794 679453 9.83472 9.83472 -1449.3 -9.83472 0 0 3.09179e+06 5367.68 1.31 0.93 0.66 -1 -1 1.31 0.292539 0.264571 842 760 722 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_40.v common 106.18 vpr 81.86 MiB 0.15 14992 -1 -1 1 0.55 -1 -1 41488 -1 -1 120 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83820 22 19 3531 2547 1 2046 172 24 24 576 mult_36 auto 44.9 MiB 4.73 13143 36978 8582 24905 3491 81.9 MiB 1.05 0.01 8.46815 -924.822 -8.46815 8.46815 2.24 0.00527161 0.00471155 0.459474 0.409026 64 24832 37 1.59675e+07 6.09306e+06 2.26035e+06 3924.22 90.61 3.68006 3.2374 64454 586630 -1 19871 26 16406 19130 3577941 758112 10.1435 10.1435 -1412.32 -10.1435 0 0 2.84938e+06 4946.85 1.25 1.01 0.58 -1 -1 1.25 0.312815 0.281161 862 779 741 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_41.v common 47.12 vpr 96.54 MiB 0.15 15364 -1 -1 1 0.58 -1 -1 41956 -1 -1 122 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98856 22 19 3634 2616 1 2109 175 24 24 576 mult_36 auto 45.3 MiB 4.55 13532 38317 8766 25733 3818 82.3 MiB 1.16 0.01 8.45719 -815.867 -8.45719 8.45719 2.29 0.00576268 0.00520229 0.486974 0.437994 72 24075 50 1.59675e+07 6.51802e+06 2.50747e+06 4353.24 30.85 3.60732 3.20329 67330 654343 -1 19932 25 17315 20240 4367754 920027 9.70762 9.70762 -1324.17 -9.70762 0 0 3.14081e+06 5452.80 1.42 1.30 0.66 -1 -1 1.42 0.368864 0.335308 886 798 760 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_42.v common 32.79 vpr 83.11 MiB 0.15 15636 -1 -1 1 0.60 -1 -1 42364 -1 -1 125 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85104 22 19 3708 2673 1 2146 178 24 24 576 mult_36 auto 45.8 MiB 4.95 13727 40678 9314 27228 4136 83.1 MiB 1.17 0.01 8.45419 -942.377 -8.45419 8.45419 2.24 0.00571498 0.00515062 0.486265 0.42999 74 23588 43 1.59675e+07 6.56144e+06 2.56259e+06 4448.94 16.33 2.38456 2.1079 67906 667765 -1 19965 25 17971 20446 3993343 836389 10.0083 10.0083 -1382.06 -10.0083 0 0 3.19068e+06 5539.38 1.40 1.09 0.70 -1 -1 1.40 0.314941 0.281748 906 817 779 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_43.v common 47.45 vpr 98.05 MiB 0.16 15664 -1 -1 1 0.63 -1 -1 42968 -1 -1 129 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100400 22 19 3810 2741 1 2211 182 24 24 576 mult_36 auto 46.1 MiB 5.06 14822 37777 8413 25861 3503 83.3 MiB 1.09 0.01 8.50729 -868.172 -8.50729 8.50729 2.35 0.00552133 0.00482938 0.465569 0.412602 74 24565 48 1.59675e+07 6.61934e+06 2.56259e+06 4448.94 30.71 3.50084 3.0911 67906 667765 -1 21205 26 17591 20876 4704096 978341 9.68572 9.68572 -1627.48 -9.68572 0 0 3.19068e+06 5539.38 1.41 1.25 0.68 -1 -1 1.41 0.339528 0.305551 930 836 798 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_44.v common 95.49 vpr 83.58 MiB 0.16 15744 -1 -1 1 0.63 -1 -1 42664 -1 -1 132 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85584 22 19 3884 2798 1 2252 185 24 24 576 mult_36 auto 46.5 MiB 5.23 14537 40161 9630 25874 4657 83.6 MiB 1.12 0.01 8.59965 -913.921 -8.59965 8.59965 2.30 0.00602733 0.00528688 0.503452 0.447177 64 26452 48 1.59675e+07 6.66277e+06 2.26035e+06 3924.22 78.72 4.1551 3.66471 64454 586630 -1 21583 27 18717 21755 4040065 879608 10.0475 10.0475 -1390.04 -10.0475 0 0 2.84938e+06 4946.85 1.25 1.21 0.59 -1 -1 1.25 0.37455 0.336809 949 855 817 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_45.v common 32.25 vpr 84.01 MiB 0.16 16380 -1 -1 1 0.67 -1 -1 44180 -1 -1 135 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86024 22 19 3989 2869 1 2317 189 24 24 576 mult_36 auto 46.9 MiB 5.41 15364 42465 9536 29202 3727 84.0 MiB 1.26 0.02 8.57625 -912.54 -8.57625 8.57625 2.21 0.00569121 0.00511947 0.509429 0.44839 74 26394 43 1.59675e+07 7.1022e+06 2.56259e+06 4448.94 15.00 2.15011 1.89271 67906 667765 -1 22053 27 17677 20607 4384615 881497 10.3151 10.3151 -1436.18 -10.3151 0 0 3.19068e+06 5539.38 1.41 1.23 0.70 -1 -1 1.41 0.363817 0.325554 975 874 836 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_46.v common 80.80 vpr 84.67 MiB 0.16 16460 -1 -1 1 0.65 -1 -1 44596 -1 -1 136 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86700 22 19 4063 2926 1 2354 190 24 24 576 mult_36 auto 47.7 MiB 5.58 15350 40048 8585 27892 3571 84.7 MiB 1.16 0.01 8.77809 -976.21 -8.77809 8.77809 2.24 0.00583108 0.0052013 0.49754 0.44327 70 26542 47 1.59675e+07 7.11667e+06 2.45377e+06 4260.01 63.51 4.26578 3.77754 66754 640332 -1 22076 24 18195 21026 4146104 880998 9.61372 9.61372 -1433.03 -9.61372 0 0 3.09179e+06 5367.68 1.37 1.23 0.65 -1 -1 1.37 0.389639 0.352958 993 893 855 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_47.v common 96.28 vpr 85.05 MiB 0.18 16840 -1 -1 1 0.67 -1 -1 44228 -1 -1 141 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87088 22 19 4167 2996 1 2420 195 24 24 576 mult_36 auto 47.9 MiB 5.42 15990 49350 11406 33436 4508 85.0 MiB 1.39 0.02 8.75469 -930.409 -8.75469 8.75469 2.24 0.0064203 0.00580643 0.589804 0.525852 70 27265 43 1.59675e+07 7.18905e+06 2.45377e+06 4260.01 78.72 4.64439 4.09042 66754 640332 -1 22813 26 19777 22605 4759844 1018614 9.91612 9.91612 -1642.63 -9.91612 0 0 3.09179e+06 5367.68 1.34 1.37 0.66 -1 -1 1.34 0.395993 0.356855 1019 912 874 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_48.v common 45.06 vpr 98.43 MiB 0.19 16840 -1 -1 1 0.71 -1 -1 44692 -1 -1 144 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100796 22 19 4241 3053 1 2458 198 24 24 576 mult_36 auto 48.1 MiB 5.99 16713 42246 9222 29509 3515 85.1 MiB 1.26 0.02 8.84405 -911.218 -8.84405 8.84405 2.24 0.00680098 0.00600759 0.538486 0.480683 76 26961 27 1.59675e+07 7.23248e+06 2.61600e+06 4541.67 26.91 3.46114 3.06597 68478 680951 -1 23682 24 17958 20975 4225193 876525 10.2198 10.2198 -1679.43 -10.2198 0 0 3.24203e+06 5628.53 1.44 1.27 0.70 -1 -1 1.44 0.394349 0.356837 1038 931 893 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_49.v common 48.07 vpr 102.45 MiB 0.19 17064 -1 -1 1 0.73 -1 -1 45120 -1 -1 145 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 104908 22 19 4346 3124 1 2527 200 24 24 576 mult_36 auto 49.1 MiB 6.03 17160 40496 8576 27736 4184 85.5 MiB 1.27 0.02 8.76895 -925.179 -8.76895 8.76895 2.29 0.00769435 0.00703947 0.550583 0.492558 82 26389 28 1.59675e+07 7.64295e+06 2.78508e+06 4835.20 29.38 3.91701 3.49415 70778 734779 -1 23576 24 19229 22272 4331111 917141 9.97112 9.97112 -1580.09 -9.97112 0 0 3.48632e+06 6052.64 1.60 1.35 0.76 -1 -1 1.60 0.447602 0.405724 1062 950 912 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_50.v common 36.04 vpr 86.00 MiB 0.21 17292 -1 -1 1 0.75 -1 -1 44888 -1 -1 148 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88060 22 19 4420 3181 1 2563 203 24 24 576 mult_36 auto 49.2 MiB 6.38 17358 42519 8841 29810 3868 86.0 MiB 1.32 0.02 8.65465 -922.933 -8.65465 8.65465 2.28 0.00678049 0.00610808 0.556804 0.494307 72 29592 30 1.59675e+07 7.68637e+06 2.50747e+06 4353.24 17.18 2.63642 2.33926 67330 654343 -1 24246 23 20463 23576 5212597 1102014 10.0366 10.0366 -1418.12 -10.0366 0 0 3.14081e+06 5452.80 1.42 1.41 0.66 -1 -1 1.42 0.377422 0.341188 1082 969 931 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_51.v common 50.09 vpr 101.30 MiB 0.20 17532 -1 -1 1 0.78 -1 -1 44868 -1 -1 152 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103732 22 19 4524 3251 1 2633 207 24 24 576 mult_36 auto 50.0 MiB 6.05 17966 39987 8213 27246 4528 86.9 MiB 1.11 0.02 8.78095 -1027.93 -8.78095 8.78095 2.23 0.00656331 0.00584767 0.470254 0.416486 76 28774 31 1.59675e+07 7.74428e+06 2.61600e+06 4541.67 31.81 3.75236 3.2981 68478 680951 -1 24681 24 19877 23317 4501134 941460 10.2137 10.2137 -1621.47 -10.2137 0 0 3.24203e+06 5628.53 1.48 1.30 0.70 -1 -1 1.48 0.402785 0.36264 1107 988 950 19 0 0 + k6_frac_2ripple_N8_22nm.xml fir_nopipe_52.v common 52.35 vpr 102.99 MiB 0.20 17812 -1 -1 1 0.77 -1 -1 45244 -1 -1 155 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 105464 22 19 4598 3308 1 2667 210 24 24 576 mult_36 auto 50.5 MiB 6.47 19119 43266 9212 30512 3542 87.2 MiB 1.27 0.02 8.90225 -1031.52 -8.90225 8.90225 2.17 0.00690266 0.006173 0.513804 0.455578 78 31543 34 1.59675e+07 7.7877e+06 2.67122e+06 4637.53 33.45 4.09648 3.60093 69630 706637 -1 26488 26 21535 24837 5023930 1048621 10.0304 10.0304 -1511.55 -10.0304 0 0 3.35110e+06 5817.88 1.50 1.45 0.67 -1 -1 1.50 0.443434 0.397656 1127 1007 969 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_14.v common 12.42 vpr 73.33 MiB 0.06 10480 -1 -1 1 0.26 -1 -1 39620 -1 -1 65 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75088 22 19 1974 1653 1 1013 110 16 16 256 mult_36 auto 35.6 MiB 0.44 5535 15627 3837 10310 1480 73.3 MiB 0.34 0.01 3.89606 -1019.99 -3.89606 3.89606 0.82 0.00255869 0.00223731 0.170879 0.151005 58 11249 48 6.62819e+06 2.54052e+06 871168. 3403.00 7.55 1.1936 1.0443 26872 219187 -1 9155 18 3935 4541 773408 176650 4.27196 4.27196 -1199.31 -4.27196 0 0 1.09288e+06 4269.05 0.43 0.30 0.22 -1 -1 0.43 0.136543 0.123461 481 649 247 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_15.v common 11.73 vpr 74.24 MiB 0.07 10892 -1 -1 1 0.27 -1 -1 40512 -1 -1 72 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76020 22 19 2144 1789 1 1107 118 16 16 256 mult_36 auto 36.5 MiB 0.72 5821 19192 4535 12144 2513 74.2 MiB 0.44 0.01 3.89606 -1091.4 -3.89606 3.89606 0.83 0.00295641 0.00263531 0.215907 0.192382 58 12412 29 6.62819e+06 3.03953e+06 871168. 3403.00 6.40 0.982071 0.865806 26872 219187 -1 9770 16 4680 5241 876316 205743 4.52256 4.52256 -1310.89 -4.52256 0 0 1.09288e+06 4269.05 0.41 0.30 0.22 -1 -1 0.41 0.132457 0.120291 521 704 266 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_16.v common 13.98 vpr 74.85 MiB 0.07 11032 -1 -1 1 0.29 -1 -1 40236 -1 -1 74 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76648 22 19 2218 1846 1 1153 120 16 16 256 mult_36 auto 37.1 MiB 0.71 6184 20475 4872 12846 2757 74.9 MiB 0.46 0.01 3.89606 -1113.14 -3.89606 3.89606 0.84 0.0029712 0.00263313 0.219544 0.194264 68 11378 24 6.62819e+06 3.06896e+06 1.00038e+06 3907.74 8.50 1.52327 1.34451 28404 252462 -1 9195 20 4097 4633 675932 162405 4.27196 4.27196 -1313.66 -4.27196 0 0 1.24648e+06 4869.04 0.46 0.30 0.26 -1 -1 0.46 0.163677 0.14904 540 723 285 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_17.v common 12.24 vpr 76.51 MiB 0.08 12096 -1 -1 1 0.32 -1 -1 40752 -1 -1 83 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78344 22 19 2536 2130 1 1255 129 16 16 256 mult_36 auto 39.1 MiB 0.80 7182 15079 3016 9848 2215 76.5 MiB 0.36 0.01 4.02136 -1340.64 -4.02136 4.02136 0.86 0.00329268 0.00290582 0.175323 0.155325 60 14163 42 6.62819e+06 3.20141e+06 890343. 3477.90 6.62 1.14018 1.00288 27128 224764 -1 11262 17 4795 5718 886926 200471 4.39726 4.39726 -1693.89 -4.39726 0 0 1.11577e+06 4358.47 0.41 0.34 0.23 -1 -1 0.41 0.163377 0.148641 617 851 304 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_18.v common 11.38 vpr 76.76 MiB 0.08 12024 -1 -1 1 0.33 -1 -1 40656 -1 -1 86 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78600 22 19 2610 2187 1 1302 132 16 16 256 mult_36 auto 39.4 MiB 0.83 7254 21572 5007 13777 2788 76.8 MiB 0.54 0.01 3.89606 -1306.2 -3.89606 3.89606 0.85 0.00362776 0.00323591 0.275679 0.246796 64 14055 27 6.62819e+06 3.24555e+06 943753. 3686.54 5.44 1.34017 1.19162 27892 240595 -1 11075 15 4778 5512 813890 191044 4.39726 4.39726 -1614.62 -4.39726 0 0 1.19033e+06 4649.74 0.45 0.35 0.24 -1 -1 0.45 0.176711 0.161606 636 870 323 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_19.v common 16.13 vpr 77.66 MiB 0.09 12456 -1 -1 1 0.35 -1 -1 40820 -1 -1 91 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79528 22 19 2778 2321 1 1398 138 16 16 256 mult_36 auto 40.2 MiB 0.88 8055 21142 4439 13816 2887 77.7 MiB 0.54 0.01 3.89606 -1400.52 -3.89606 3.89606 0.84 0.00398228 0.00354346 0.266291 0.238814 68 14254 26 6.62819e+06 3.71513e+06 1.00038e+06 3907.74 9.99 1.94882 1.73511 28404 252462 -1 11644 18 5157 5953 852856 204784 4.27196 4.27196 -1772.65 -4.27196 0 0 1.24648e+06 4869.04 0.47 0.38 0.26 -1 -1 0.47 0.206116 0.188238 676 925 342 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_20.v common 12.16 vpr 78.08 MiB 0.09 12744 -1 -1 1 0.38 -1 -1 40628 -1 -1 93 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79952 22 19 2852 2378 1 1440 140 16 16 256 mult_36 auto 40.6 MiB 0.94 8619 20831 4166 14253 2412 78.1 MiB 0.56 0.01 3.89606 -1461.26 -3.89606 3.89606 0.87 0.00426429 0.00381419 0.278779 0.250207 66 16008 34 6.62819e+06 3.74456e+06 974584. 3806.97 5.87 1.53484 1.35253 28148 247068 -1 12802 17 5369 6168 1083586 247764 4.27196 4.27196 -1764.96 -4.27196 0 0 1.22072e+06 4768.46 0.45 0.40 0.26 -1 -1 0.45 0.187911 0.171451 695 944 361 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_21.v common 16.87 vpr 79.11 MiB 0.10 12948 -1 -1 1 0.39 -1 -1 41100 -1 -1 97 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81004 22 19 3057 2549 1 1542 144 16 16 256 mult_36 auto 41.8 MiB 1.04 8930 23518 4931 15699 2888 79.1 MiB 0.61 0.01 3.89606 -1593.53 -3.89606 3.89606 0.86 0.00458577 0.0041347 0.292203 0.259459 76 15265 20 6.62819e+06 3.80343e+06 1.09288e+06 4269.05 10.18 1.94165 1.71544 29676 279168 -1 13013 17 5513 6381 1015222 234271 4.27196 4.27196 -1984.06 -4.27196 0 0 1.35486e+06 5292.42 0.51 0.43 0.30 -1 -1 0.51 0.214731 0.196315 742 1017 380 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_22.v common 17.11 vpr 79.19 MiB 0.09 13012 -1 -1 1 0.41 -1 -1 41236 -1 -1 100 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81092 22 19 3131 2606 1 1585 147 16 16 256 mult_36 auto 41.8 MiB 0.87 9887 25302 5019 17293 2990 79.2 MiB 0.63 0.01 4.02136 -1624.13 -4.02136 4.02136 0.81 0.00415118 0.00368477 0.297488 0.264176 74 17487 31 6.62819e+06 3.84757e+06 1.07073e+06 4182.55 10.75 2.00945 1.76005 29424 273870 -1 14445 16 5854 6745 1143026 252652 4.39726 4.39726 -1972.91 -4.39726 0 0 1.33358e+06 5209.30 0.50 0.43 0.27 -1 -1 0.50 0.207426 0.188857 762 1036 399 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_23.v common 45.87 vpr 80.18 MiB 0.10 13328 -1 -1 1 0.44 -1 -1 42972 -1 -1 107 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82108 22 19 3301 2742 1 1683 155 18 18 324 mult_36 auto 42.9 MiB 0.89 9155 31355 7353 20948 3054 80.2 MiB 0.77 0.01 4.02136 -1748.51 -4.02136 4.02136 1.16 0.0046027 0.00402684 0.365202 0.32313 68 18946 40 8.18539e+06 4.34658e+06 1.31159e+06 4048.11 38.19 2.99424 2.62095 36620 334356 -1 14865 16 6669 7698 1346595 290695 4.39726 4.39726 -2122.65 -4.39726 0 0 1.63345e+06 5041.52 0.63 0.48 0.34 -1 -1 0.63 0.213962 0.194807 802 1091 418 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_24.v common 15.67 vpr 80.73 MiB 0.10 13640 -1 -1 1 0.46 -1 -1 42032 -1 -1 109 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82668 22 19 3375 2799 1 1730 157 18 18 324 mult_36 auto 43.5 MiB 0.79 10054 27229 6426 18090 2713 80.7 MiB 0.73 0.01 3.77076 -1735.94 -3.77076 3.77076 1.13 0.00454676 0.00400927 0.346597 0.308379 68 19565 47 8.18539e+06 4.37601e+06 1.31159e+06 4048.11 8.22 1.9076 1.67668 36620 334356 -1 15395 17 6546 7538 1124491 246884 4.39726 4.39726 -2138.07 -4.39726 0 0 1.63345e+06 5041.52 0.63 0.43 0.34 -1 -1 0.63 0.213667 0.193813 821 1110 437 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_25.v common 46.30 vpr 81.75 MiB 0.11 14012 -1 -1 1 0.47 -1 -1 42648 -1 -1 116 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83716 22 19 3615 3005 1 1835 164 18 18 324 mult_36 auto 44.4 MiB 0.93 10767 33316 7041 22640 3635 81.8 MiB 0.83 0.01 3.89606 -1898.85 -3.89606 3.89606 1.19 0.00495522 0.00432522 0.405844 0.360525 68 19811 27 8.18539e+06 4.47902e+06 1.31159e+06 4048.11 38.31 3.31394 2.89348 36620 334356 -1 16238 17 6785 7958 1282044 274893 4.39726 4.39726 -2362.15 -4.39726 0 0 1.63345e+06 5041.52 0.64 0.52 0.35 -1 -1 0.64 0.258154 0.235085 877 1201 456 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_26.v common 21.24 vpr 82.23 MiB 0.12 14252 -1 -1 1 0.50 -1 -1 41892 -1 -1 118 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84208 22 19 3689 3062 1 1872 166 18 18 324 mult_36 auto 45.0 MiB 0.80 11102 28438 5809 19837 2792 82.2 MiB 0.71 0.01 4.02136 -1926.63 -4.02136 4.02136 1.14 0.00507411 0.00447604 0.331181 0.292614 70 20001 31 8.18539e+06 4.50845e+06 1.34436e+06 4149.26 13.54 2.44965 2.15337 37264 347768 -1 16667 16 6675 7600 1128130 249242 4.52256 4.52256 -2340.66 -4.52256 0 0 1.69344e+06 5226.66 0.65 0.44 0.37 -1 -1 0.65 0.222095 0.20156 896 1220 475 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_27.v common 23.41 vpr 83.16 MiB 0.12 14808 -1 -1 1 0.54 -1 -1 43152 -1 -1 126 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85156 22 19 3871 3210 1 1979 175 18 18 324 mult_36 auto 45.9 MiB 1.10 11265 36361 8508 24029 3824 83.2 MiB 0.99 0.01 3.89606 -2011.81 -3.89606 3.89606 1.18 0.00592534 0.00532834 0.483708 0.434316 70 20937 47 8.18539e+06 5.02217e+06 1.34436e+06 4149.26 14.83 3.09002 2.73261 37264 347768 -1 16938 19 7422 8538 1408909 318515 4.39726 4.39726 -2438.05 -4.39726 0 0 1.69344e+06 5226.66 0.65 0.53 0.36 -1 -1 0.65 0.257646 0.232497 944 1275 494 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_28.v common 17.35 vpr 83.76 MiB 0.12 14752 -1 -1 1 0.56 -1 -1 42248 -1 -1 128 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85772 22 19 3945 3267 1 2024 177 18 18 324 mult_36 auto 46.6 MiB 1.05 11681 36385 8467 23942 3976 83.8 MiB 0.99 0.01 4.14666 -1989.21 -4.14666 4.14666 1.17 0.00593821 0.00526171 0.477878 0.426943 70 22150 49 8.18539e+06 5.0516e+06 1.34436e+06 4149.26 8.78 2.26705 2.00613 37264 347768 -1 17485 18 7387 8460 1265515 282874 4.52256 4.52256 -2527.2 -4.52256 0 0 1.69344e+06 5226.66 0.67 0.54 0.36 -1 -1 0.67 0.281572 0.255753 962 1294 513 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_29.v common 32.69 vpr 90.72 MiB 0.13 14976 -1 -1 1 0.59 -1 -1 42500 -1 -1 135 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92896 22 19 4159 3447 1 2140 185 22 22 484 mult_36 auto 47.4 MiB 0.95 14379 40161 8916 27206 4039 84.5 MiB 1.03 0.01 3.89606 -2208.56 -3.89606 3.89606 1.86 0.00535804 0.0047765 0.47628 0.420543 76 26157 35 1.33067e+07 5.5506e+06 2.20457e+06 4554.90 21.83 3.05989 2.68974 57882 574062 -1 21115 18 8289 9597 1754244 349191 4.39726 4.39726 -2790.64 -4.39726 0 0 2.73077e+06 5642.09 1.17 0.62 0.60 -1 -1 1.17 0.287893 0.260912 1015 1367 532 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_30.v common 30.24 vpr 91.21 MiB 0.13 15240 -1 -1 1 0.59 -1 -1 44456 -1 -1 137 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93404 22 19 4233 3504 1 2179 187 22 22 484 mult_36 auto 47.9 MiB 1.18 13022 43441 9971 29249 4221 85.0 MiB 1.10 0.01 3.77076 -2149.56 -3.77076 3.77076 1.90 0.00599595 0.00532311 0.513963 0.454374 72 23496 27 1.33067e+07 5.58003e+06 2.11301e+06 4365.72 19.12 2.71073 2.37763 56918 551676 -1 19538 17 7802 8844 1493822 317051 4.27196 4.27196 -2622.56 -4.27196 0 0 2.64603e+06 5467.00 1.15 0.57 0.56 -1 -1 1.15 0.274278 0.247792 1034 1386 551 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_31.v common 36.92 vpr 89.61 MiB 0.14 15592 -1 -1 1 0.65 -1 -1 43884 -1 -1 143 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91756 22 19 4410 3647 1 2283 193 22 22 484 mult_36 auto 49.0 MiB 1.28 14594 43082 9221 29487 4374 86.2 MiB 1.14 0.01 3.77076 -2287.95 -3.77076 3.77076 1.85 0.00581269 0.00511693 0.521257 0.458357 72 27921 45 1.33067e+07 5.66832e+06 2.11301e+06 4365.72 25.23 3.6549 3.19594 56918 551676 -1 22212 26 9168 10447 2092754 536544 4.39726 4.39726 -2878.72 -4.39726 0 0 2.64603e+06 5467.00 1.13 0.89 0.56 -1 -1 1.13 0.398933 0.358894 1077 1441 570 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_32.v common 21.53 vpr 87.38 MiB 0.14 16008 -1 -1 1 0.62 -1 -1 44472 -1 -1 145 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89480 22 19 4484 3704 1 2328 195 22 22 484 mult_36 auto 49.5 MiB 1.15 13704 47655 11020 31853 4782 87.4 MiB 1.28 0.01 3.77076 -2253.72 -3.77076 3.77076 1.82 0.0063796 0.00571984 0.610139 0.545148 70 25875 37 1.33067e+07 5.69776e+06 2.06816e+06 4273.05 10.11 2.35716 2.07503 56434 539830 -1 21314 19 8857 10470 1868543 397052 4.27196 4.27196 -2903.67 -4.27196 0 0 2.60483e+06 5381.88 1.10 0.72 0.55 -1 -1 1.10 0.332883 0.301786 1096 1460 589 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_33.v common 32.91 vpr 92.73 MiB 0.16 16976 -1 -1 1 0.72 -1 -1 45140 -1 -1 157 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94960 22 19 4843 4029 1 2439 208 22 22 484 mult_36 auto 51.2 MiB 1.11 14685 43944 9197 30616 4131 88.9 MiB 1.16 0.02 3.89606 -2480.98 -3.89606 3.89606 1.89 0.00794646 0.00718793 0.539085 0.479611 68 28132 47 1.33067e+07 6.27034e+06 2.01763e+06 4168.66 21.23 3.66427 3.21297 55470 518816 -1 22544 18 9068 10838 1771072 376955 4.39726 4.39726 -3125.78 -4.39726 0 0 2.51205e+06 5190.18 1.14 0.77 0.52 -1 -1 1.14 0.389877 0.355657 1185 1606 608 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_34.v common 32.53 vpr 97.95 MiB 0.16 16796 -1 -1 1 0.74 -1 -1 45340 -1 -1 160 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100296 22 19 4917 4086 1 2483 211 22 22 484 mult_36 auto 51.6 MiB 1.16 16091 43474 9210 30252 4012 89.2 MiB 1.16 0.02 3.89606 -2506.75 -3.89606 3.89606 1.89 0.00699643 0.00622486 0.534802 0.472048 82 25541 20 1.33067e+07 6.31449e+06 2.34651e+06 4848.17 20.77 3.2285 2.83681 59814 619492 -1 22519 16 8461 9891 1590504 326085 4.39726 4.39726 -3099.53 -4.39726 0 0 2.93652e+06 6067.20 1.29 0.64 0.60 -1 -1 1.29 0.325896 0.296022 1205 1625 627 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_35.v common 95.52 vpr 89.31 MiB 0.17 17508 -1 -1 1 0.81 -1 -1 45764 -1 -1 163 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91456 22 19 5093 4228 1 2586 214 22 22 484 mult_36 auto 52.5 MiB 1.18 15287 44305 9848 31121 3336 89.3 MiB 1.19 0.02 3.89606 -2602.58 -3.89606 3.89606 1.88 0.00676016 0.00598298 0.536039 0.474608 68 29870 41 1.33067e+07 6.35863e+06 2.01763e+06 4168.66 83.67 5.00963 4.35221 55470 518816 -1 23174 22 9578 11103 1987228 450110 4.39726 4.39726 -3280.27 -4.39726 0 0 2.51205e+06 5190.18 1.08 0.80 0.52 -1 -1 1.08 0.383659 0.3445 1248 1680 646 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_36.v common 24.89 vpr 89.78 MiB 0.17 17276 -1 -1 1 0.80 -1 -1 45508 -1 -1 165 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91932 22 19 5167 4285 1 2630 216 22 22 484 mult_36 auto 53.0 MiB 1.24 17628 51976 10913 36270 4793 89.8 MiB 1.36 0.02 3.89606 -2674.4 -3.89606 3.89606 1.79 0.00693989 0.00616171 0.626885 0.555346 76 31216 47 1.33067e+07 6.38806e+06 2.20457e+06 4554.90 12.81 2.79041 2.44731 57882 574062 -1 25435 17 10254 11832 2131443 441762 4.39726 4.39726 -3408.81 -4.39726 0 0 2.73077e+06 5642.09 1.21 0.78 0.58 -1 -1 1.21 0.354972 0.322244 1267 1699 665 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_37.v common 27.13 vpr 91.15 MiB 0.17 17680 -1 -1 1 0.83 -1 -1 44612 -1 -1 173 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93340 22 19 5380 4464 1 2739 225 24 24 576 mult_36 auto 54.4 MiB 1.24 18491 56313 12324 39092 4897 90.8 MiB 1.48 0.02 4.02136 -2994.01 -4.02136 4.02136 2.25 0.00730052 0.00644826 0.670287 0.591708 74 33069 40 1.60519e+07 6.90179e+06 2.56259e+06 4448.94 13.49 2.85262 2.50705 67906 667765 -1 27137 16 10245 11887 2293312 468202 4.52256 4.52256 -3591.43 -4.52256 0 0 3.19068e+06 5539.38 1.44 0.84 0.67 -1 -1 1.44 0.362214 0.328895 1321 1772 684 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_38.v common 40.77 vpr 116.92 MiB 0.17 18172 -1 -1 1 0.86 -1 -1 44520 -1 -1 176 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 119724 22 19 5454 4521 1 2784 228 24 24 576 mult_36 auto 54.5 MiB 1.27 18320 54516 11988 37610 4918 91.0 MiB 1.43 0.02 4.14666 -2946.05 -4.14666 4.14666 2.18 0.00821274 0.00738075 0.634978 0.56012 80 28738 32 1.60519e+07 6.94594e+06 2.72095e+06 4723.87 27.10 3.93618 3.45829 70206 720185 -1 25691 16 9640 10985 1864472 383055 4.39726 4.39726 -3588.25 -4.39726 0 0 3.41546e+06 5929.62 1.57 0.74 0.75 -1 -1 1.57 0.363351 0.33037 1340 1791 703 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_39.v common 28.53 vpr 91.84 MiB 0.18 18364 -1 -1 1 0.87 -1 -1 44720 -1 -1 180 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94040 22 19 5629 4662 1 2882 232 24 24 576 mult_36 auto 55.3 MiB 1.34 18361 53632 11477 37658 4497 91.8 MiB 1.49 0.02 4.14666 -3004.92 -4.14666 4.14666 2.30 0.00781456 0.00693126 0.680516 0.605839 72 34711 50 1.60519e+07 7.0048e+06 2.50747e+06 4353.24 14.56 3.44902 3.04674 67330 654343 -1 26881 16 10483 12246 2200505 459833 4.52256 4.52256 -3700.45 -4.52256 0 0 3.14081e+06 5452.80 1.43 0.82 0.67 -1 -1 1.43 0.388765 0.353482 1381 1846 722 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_40.v common 26.43 vpr 92.05 MiB 0.18 18532 -1 -1 1 0.90 -1 -1 46360 -1 -1 182 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94264 22 19 5703 4719 1 2929 234 24 24 576 mult_36 auto 55.7 MiB 1.33 19060 55674 12158 38689 4827 92.1 MiB 1.43 0.02 4.02136 -3109.15 -4.02136 4.02136 2.35 0.00797261 0.00709284 0.646232 0.568406 74 34208 38 1.60519e+07 7.03423e+06 2.56259e+06 4448.94 12.29 2.95784 2.58983 67906 667765 -1 27674 20 10940 12463 2333405 492811 4.39726 4.39726 -3795.64 -4.39726 0 0 3.19068e+06 5539.38 1.49 0.99 0.68 -1 -1 1.49 0.488574 0.443911 1400 1865 741 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_41.v common 42.61 vpr 111.46 MiB 0.19 18948 -1 -1 1 1.00 -1 -1 45056 -1 -1 190 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 114136 22 19 5950 4932 1 3039 243 24 24 576 mult_36 auto 57.1 MiB 1.43 21260 54061 10984 38964 4113 93.4 MiB 1.50 0.02 4.27196 -3259.64 -4.27196 4.27196 2.26 0.0086838 0.00776575 0.650082 0.575176 78 35527 44 1.60519e+07 7.54795e+06 2.67122e+06 4637.53 28.20 4.44556 3.89252 69630 706637 -1 29771 15 10721 12274 2149229 443260 4.52256 4.52256 -3826.73 -4.52256 0 0 3.35110e+06 5817.88 1.53 0.81 0.73 -1 -1 1.53 0.369051 0.334807 1461 1956 760 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_42.v common 32.64 vpr 95.09 MiB 0.19 19188 -1 -1 1 1.00 -1 -1 47052 -1 -1 193 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 97376 22 19 6024 4989 1 3082 246 24 24 576 mult_36 auto 57.2 MiB 1.44 21320 62616 13875 43842 4899 93.6 MiB 1.70 0.02 4.14666 -3312.16 -4.14666 4.14666 2.24 0.00802783 0.0071331 0.748366 0.657624 78 34476 34 1.60519e+07 7.5921e+06 2.67122e+06 4637.53 18.04 3.77523 3.29354 69630 706637 -1 29821 16 10950 12943 2299416 470633 4.64786 4.64786 -3920.78 -4.64786 0 0 3.35110e+06 5817.88 1.50 0.89 0.72 -1 -1 1.50 0.424327 0.386171 1480 1975 779 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_43.v common 42.45 vpr 111.86 MiB 0.20 19488 -1 -1 1 1.06 -1 -1 45936 -1 -1 199 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 114540 22 19 6198 5129 1 3181 252 24 24 576 mult_36 auto 58.5 MiB 1.51 21654 59082 12703 41599 4780 94.7 MiB 1.63 0.02 4.27196 -3393.41 -4.27196 4.27196 2.19 0.00899704 0.00802702 0.70587 0.625597 84 34364 26 1.60519e+07 7.68039e+06 2.84938e+06 4946.85 27.53 4.50899 3.94943 71930 760447 -1 29250 14 10731 12236 2284666 460738 4.64786 4.64786 -4020.58 -4.64786 0 0 3.60864e+06 6265.01 1.62 0.87 0.79 -1 -1 1.62 0.4079 0.373015 1523 2030 798 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_44.v common 34.01 vpr 96.99 MiB 0.20 19496 -1 -1 1 1.07 -1 -1 47524 -1 -1 200 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99316 22 19 6272 5186 1 3226 253 24 24 576 mult_36 auto 58.5 MiB 1.54 21079 64972 14269 44858 5845 94.7 MiB 1.94 0.02 4.02136 -3397.52 -4.02136 4.02136 2.31 0.00960817 0.00864191 0.866772 0.768888 80 34173 30 1.60519e+07 7.69511e+06 2.72095e+06 4723.87 18.67 3.68314 3.23024 70206 720185 -1 29515 19 11501 13547 2220914 461467 4.52256 4.52256 -4072.28 -4.52256 0 0 3.41546e+06 5929.62 1.45 0.95 0.73 -1 -1 1.45 0.4925 0.444974 1542 2049 817 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_45.v common 31.91 vpr 102.82 MiB 0.21 20256 -1 -1 1 1.14 -1 -1 47672 -1 -1 208 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 105284 22 19 6485 5365 1 3338 262 24 24 576 mult_36 auto 59.9 MiB 1.53 21902 62274 13480 43581 5213 95.9 MiB 1.68 0.02 4.14666 -3472.09 -4.14666 4.14666 2.22 0.00910506 0.00800064 0.713838 0.63053 78 37169 29 1.60519e+07 8.20883e+06 2.67122e+06 4637.53 16.70 3.8298 3.36811 69630 706637 -1 30950 30 11794 14008 2745348 663643 4.52256 4.52256 -4290.76 -4.52256 0 0 3.35110e+06 5817.88 1.50 1.29 0.66 -1 -1 1.50 0.67911 0.610315 1593 2122 836 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_46.v common 36.19 vpr 98.64 MiB 0.21 20124 -1 -1 1 1.12 -1 -1 48060 -1 -1 210 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101012 22 19 6559 5422 1 3380 264 24 24 576 mult_36 auto 60.1 MiB 1.55 22768 67098 13832 47514 5752 96.1 MiB 1.85 0.02 4.02136 -3518.73 -4.02136 4.02136 2.28 0.00829 0.00719169 0.777647 0.684986 78 37845 49 1.60519e+07 8.23826e+06 2.67122e+06 4637.53 20.82 4.56489 3.99505 69630 706637 -1 32095 17 12220 14239 2413547 497411 4.52256 4.52256 -4199.3 -4.52256 0 0 3.35110e+06 5817.88 1.48 0.95 0.73 -1 -1 1.48 0.457819 0.414185 1613 2141 855 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_47.v common 46.63 vpr 124.75 MiB 0.21 20588 -1 -1 1 1.12 -1 -1 47664 -1 -1 216 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 127740 22 19 6735 5564 1 3477 270 24 24 576 mult_36 auto 61.2 MiB 1.56 24161 60438 12342 42775 5321 97.2 MiB 1.71 0.02 4.27196 -3742.84 -4.27196 4.27196 2.28 0.00955588 0.00852366 0.711749 0.629633 86 39537 35 1.60519e+07 8.32656e+06 2.91907e+06 5067.82 31.00 5.12431 4.48974 72506 773887 -1 32705 18 12381 14201 2401374 487112 4.64786 4.64786 -4417.13 -4.64786 0 0 3.65856e+06 6351.67 1.66 0.94 0.82 -1 -1 1.66 0.471767 0.425487 1656 2196 874 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_48.v common 32.24 vpr 104.16 MiB 0.22 20588 -1 -1 1 1.20 -1 -1 47676 -1 -1 218 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 106656 22 19 6809 5621 1 3526 272 24 24 576 mult_36 auto 61.6 MiB 1.61 22704 61061 12144 43523 5394 97.7 MiB 1.73 0.03 4.14666 -3749.97 -4.14666 4.14666 2.27 0.0100718 0.00898451 0.740466 0.654429 78 38176 40 1.60519e+07 8.35599e+06 2.67122e+06 4637.53 16.72 4.00739 3.51555 69630 706637 -1 32171 19 12260 14026 2406370 501634 4.52256 4.52256 -4459.54 -4.52256 0 0 3.35110e+06 5817.88 1.52 0.96 0.73 -1 -1 1.52 0.478304 0.431223 1674 2215 893 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_49.v common 127.54 vpr 101.00 MiB 0.22 21464 -1 -1 1 1.23 -1 -1 48308 -1 -1 228 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103428 22 19 7094 5872 1 3640 283 24 24 576 mult_36 auto 63.0 MiB 1.69 23764 68955 14732 48317 5906 99.2 MiB 1.94 0.03 4.14666 -3916.87 -4.14666 4.14666 2.28 0.0105081 0.00938397 0.831873 0.737787 78 40914 50 1.60519e+07 8.89916e+06 2.67122e+06 4637.53 111.47 7.52537 6.5345 69630 706637 -1 33487 19 13188 15267 2611181 546433 4.39726 4.39726 -4787.75 -4.39726 0 0 3.35110e+06 5817.88 1.49 1.01 0.73 -1 -1 1.49 0.494792 0.445125 1745 2324 912 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_50.v common 44.23 vpr 128.66 MiB 0.23 21284 -1 -1 1 1.28 -1 -1 47664 -1 -1 230 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 131744 22 19 7168 5929 1 3676 285 24 24 576 mult_36 auto 63.4 MiB 1.72 24300 72434 15954 49864 6616 99.5 MiB 1.96 0.02 4.27196 -3944.86 -4.27196 4.27196 2.33 0.0100055 0.00891297 0.851131 0.753208 84 37541 23 1.60519e+07 8.92859e+06 2.84938e+06 4946.85 27.94 4.49751 3.95732 71930 760447 -1 32959 14 12287 14182 2242347 465019 4.64786 4.64786 -4673.42 -4.64786 0 0 3.60864e+06 6265.01 1.58 0.90 0.79 -1 -1 1.58 0.459906 0.419627 1764 2343 931 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_51.v common 34.97 vpr 106.88 MiB 0.23 21600 -1 -1 1 1.31 -1 -1 48736 -1 -1 235 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 109448 22 19 7344 6071 1 3782 290 24 24 576 mult_36 auto 64.9 MiB 1.69 26721 73174 15985 51277 5912 100.9 MiB 2.05 0.02 4.14666 -4113.54 -4.14666 4.14666 2.34 0.00963209 0.0084509 0.860636 0.758868 84 44379 31 1.60519e+07 9.00217e+06 2.84938e+06 4946.85 18.42 4.50685 3.94861 71930 760447 -1 35376 16 13086 15116 2503218 511777 4.64786 4.64786 -5046.08 -4.64786 0 0 3.60864e+06 6265.01 1.56 1.00 0.80 -1 -1 1.56 0.49259 0.446216 1808 2398 950 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_pipe_52.v common 33.51 vpr 106.36 MiB 0.23 21820 -1 -1 1 1.35 -1 -1 48644 -1 -1 237 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 108908 22 19 7418 6128 1 3828 292 24 24 576 mult_36 auto 64.6 MiB 1.78 24847 71924 14759 50716 6449 100.7 MiB 2.04 0.03 4.14666 -3940.13 -4.14666 4.14666 2.25 0.0109578 0.00978194 0.859297 0.757627 86 38180 32 1.60519e+07 9.0316e+06 2.91907e+06 5067.82 16.95 4.38457 3.85254 72506 773887 -1 33993 15 12523 14373 2366288 487852 4.52256 4.52256 -4683.01 -4.52256 0 0 3.65856e+06 6351.67 1.58 0.95 0.82 -1 -1 1.58 0.4825 0.438433 1827 2417 969 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_14.v common 11.58 vpr 69.73 MiB 0.06 9704 -1 -1 1 0.19 -1 -1 38716 -1 -1 43 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71408 22 19 1246 925 1 718 88 16 16 256 mult_36 auto 31.8 MiB 0.37 4025 9253 2122 5944 1187 69.7 MiB 0.20 0.00 6.82455 -315.867 -6.82455 6.82455 0.80 0.00172338 0.00154812 0.0926344 0.0832481 52 8034 28 6.62819e+06 2.21677e+06 808720. 3159.06 7.33 0.884121 0.784522 25852 197779 -1 6421 25 6434 7102 1327062 310162 7.97208 7.97208 -459.429 -7.97208 0 0 1.00038e+06 3907.74 0.38 0.39 0.18 -1 -1 0.38 0.11949 0.108264 299 285 247 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_15.v common 9.40 vpr 70.14 MiB 0.06 9880 -1 -1 1 0.19 -1 -1 38804 -1 -1 46 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71820 22 19 1344 989 1 778 92 16 16 256 mult_36 auto 32.3 MiB 0.38 4337 15617 4384 9379 1854 70.1 MiB 0.34 0.00 6.73355 -324.184 -6.73355 6.73355 0.83 0.0019584 0.00174116 0.164644 0.148115 52 9070 43 6.62819e+06 2.65692e+06 808720. 3159.06 4.82 0.750429 0.671589 25852 197779 -1 7087 25 7214 8109 1490187 345922 7.99408 7.99408 -450.601 -7.99408 0 0 1.00038e+06 3907.74 0.38 0.42 0.20 -1 -1 0.38 0.126343 0.11477 321 304 266 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_16.v common 9.39 vpr 70.62 MiB 0.06 10028 -1 -1 1 0.20 -1 -1 38828 -1 -1 48 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72320 22 19 1418 1046 1 821 94 16 16 256 mult_36 auto 32.8 MiB 0.43 4503 15856 4205 9364 2287 70.6 MiB 0.37 0.00 6.78041 -327.722 -6.78041 6.78041 0.84 0.00232009 0.00210768 0.178995 0.161134 58 8574 25 6.62819e+06 2.68636e+06 871168. 3403.00 4.64 0.743537 0.665646 26872 219187 -1 7115 25 6993 7931 1262768 307301 8.10658 8.10658 -411.597 -8.10658 0 0 1.09288e+06 4269.05 0.41 0.41 0.22 -1 -1 0.41 0.138397 0.12589 340 323 285 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_17.v common 27.58 vpr 71.34 MiB 0.07 10424 -1 -1 1 0.21 -1 -1 38764 -1 -1 52 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73056 22 19 1518 1112 1 879 98 16 16 256 mult_36 auto 33.5 MiB 0.40 4965 14723 3937 8969 1817 71.3 MiB 0.35 0.01 7.47639 -361.821 -7.47639 7.47639 0.85 0.00244097 0.00222498 0.161051 0.145057 56 9562 44 6.62819e+06 2.74522e+06 849745. 3319.32 22.81 1.45201 1.29435 26364 208198 -1 8285 24 7285 8114 1449447 345479 9.12332 9.12332 -529.098 -9.12332 0 0 1.04740e+06 4091.43 0.39 0.45 0.21 -1 -1 0.39 0.145748 0.132896 365 342 304 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_18.v common 14.04 vpr 71.53 MiB 0.07 10696 -1 -1 1 0.22 -1 -1 39184 -1 -1 55 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73244 22 19 1592 1169 1 918 101 16 16 256 mult_36 auto 33.8 MiB 0.44 5215 14906 3668 9476 1762 71.5 MiB 0.34 0.01 7.50939 -424.802 -7.50939 7.50939 0.85 0.00232624 0.00208874 0.158428 0.142339 60 9840 29 6.62819e+06 2.78937e+06 890343. 3477.90 9.27 1.20981 1.07093 27128 224764 -1 8245 26 6980 7846 1169227 261639 9.02458 9.02458 -603.569 -9.02458 0 0 1.11577e+06 4358.47 0.40 0.37 0.23 -1 -1 0.40 0.139897 0.126361 383 361 323 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_19.v common 10.00 vpr 72.05 MiB 0.07 10760 -1 -1 1 0.22 -1 -1 39860 -1 -1 58 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73776 22 19 1688 1231 1 976 105 16 16 256 mult_36 auto 34.2 MiB 0.47 5684 17642 4540 10046 3056 72.0 MiB 0.39 0.01 7.47625 -404.15 -7.47625 7.47625 0.80 0.00249838 0.00227361 0.185086 0.165076 60 10672 30 6.62819e+06 3.22951e+06 890343. 3477.90 5.17 0.864566 0.769183 27128 224764 -1 8787 24 7835 8831 1306609 304802 8.81128 8.81128 -594.8 -8.81128 0 0 1.11577e+06 4358.47 0.42 0.42 0.21 -1 -1 0.42 0.15423 0.139691 404 380 342 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_20.v common 15.17 vpr 72.32 MiB 0.07 10696 -1 -1 1 0.25 -1 -1 39500 -1 -1 59 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74052 22 19 1762 1288 1 1014 106 16 16 256 mult_36 auto 34.6 MiB 0.52 5858 15606 3839 9858 1909 72.3 MiB 0.40 0.01 7.44225 -444.284 -7.44225 7.44225 0.85 0.00252427 0.00225196 0.178185 0.159839 66 11057 33 6.62819e+06 3.24423e+06 974584. 3806.97 9.92 1.40059 1.24877 28148 247068 -1 8975 26 7648 8506 1456450 326214 9.04472 9.04472 -585.181 -9.04472 0 0 1.22072e+06 4768.46 0.47 0.48 0.26 -1 -1 0.47 0.175021 0.159102 423 399 361 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_21.v common 19.98 vpr 72.63 MiB 0.08 11316 -1 -1 1 0.26 -1 -1 39476 -1 -1 62 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74372 22 19 1859 1351 1 1072 109 16 16 256 mult_36 auto 35.1 MiB 0.54 6519 18309 4709 9362 4238 72.6 MiB 0.41 0.01 7.713 -434.256 -7.713 7.713 0.83 0.00289917 0.00259634 0.198657 0.177356 74 11188 33 6.62819e+06 3.28838e+06 1.07073e+06 4182.55 14.70 1.59877 1.41933 29424 273870 -1 9147 25 6803 7747 1186695 280748 8.95672 8.95672 -561.888 -8.95672 0 0 1.33358e+06 5209.30 0.48 0.40 0.30 -1 -1 0.48 0.161862 0.14653 445 418 380 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_22.v common 12.26 vpr 73.05 MiB 0.08 11428 -1 -1 1 0.28 -1 -1 39828 -1 -1 66 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74808 22 19 1933 1408 1 1111 113 16 16 256 mult_36 auto 35.2 MiB 0.61 6686 15674 3692 9868 2114 73.1 MiB 0.42 0.01 7.3731 -478.994 -7.3731 7.3731 0.84 0.00295487 0.00266921 0.186882 0.168368 60 12650 34 6.62819e+06 3.34724e+06 890343. 3477.90 6.77 1.10393 0.987624 27128 224764 -1 10402 25 9918 11628 1907532 438647 8.92928 8.92928 -764.671 -8.92928 0 0 1.11577e+06 4358.47 0.43 0.59 0.23 -1 -1 0.43 0.188182 0.171033 464 437 399 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_23.v common 18.22 vpr 73.57 MiB 0.09 11792 -1 -1 1 0.29 -1 -1 40476 -1 -1 68 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75336 22 19 2031 1472 1 1174 116 18 18 324 mult_36 auto 35.9 MiB 0.60 7058 21548 5287 13453 2808 73.6 MiB 0.50 0.01 7.46525 -488.334 -7.46525 7.46525 1.13 0.0027153 0.00241308 0.233694 0.208566 62 12887 32 8.18539e+06 3.77267e+06 1.20291e+06 3712.69 11.79 1.53352 1.36257 35328 304176 -1 10434 26 9785 11129 1896122 416932 8.59297 8.59297 -695.454 -8.59297 0 0 1.49010e+06 4599.06 0.58 0.56 0.31 -1 -1 0.58 0.189172 0.171046 486 456 418 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_24.v common 13.73 vpr 74.10 MiB 0.09 11616 -1 -1 1 0.31 -1 -1 39876 -1 -1 71 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75876 22 19 2105 1529 1 1210 119 18 18 324 mult_36 auto 36.5 MiB 0.62 7094 18515 4225 12409 1881 74.1 MiB 0.49 0.01 7.56755 -452.445 -7.56755 7.56755 1.13 0.00311914 0.00280032 0.222978 0.201169 64 13802 48 8.18539e+06 3.81682e+06 1.23838e+06 3822.15 7.12 1.09219 0.972168 35972 318676 -1 11487 30 9999 11259 2209971 488132 9.26947 9.26947 -754.035 -9.26947 0 0 1.56068e+06 4816.91 0.62 0.67 0.33 -1 -1 0.62 0.214408 0.19306 505 475 437 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_25.v common 16.19 vpr 74.46 MiB 0.09 11932 -1 -1 1 0.33 -1 -1 40128 -1 -1 73 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76252 22 19 2201 1591 1 1268 121 18 18 324 mult_36 auto 37.2 MiB 0.65 7543 24340 6303 15129 2908 74.5 MiB 0.67 0.01 7.25195 -491.763 -7.25195 7.25195 1.16 0.00331164 0.0029588 0.293229 0.261882 62 14847 45 8.18539e+06 3.84625e+06 1.20291e+06 3712.69 9.27 1.47358 1.31787 35328 304176 -1 11805 26 11130 12813 2458880 537898 8.45827 8.45827 -773.285 -8.45827 0 0 1.49010e+06 4599.06 0.60 0.71 0.31 -1 -1 0.60 0.212277 0.192649 526 494 456 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_26.v common 22.52 vpr 74.88 MiB 0.10 11984 -1 -1 1 0.34 -1 -1 40288 -1 -1 76 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76680 22 19 2275 1648 1 1306 124 18 18 324 mult_36 auto 37.3 MiB 0.67 8166 20209 4694 13203 2312 74.9 MiB 0.61 0.01 7.61685 -505.11 -7.61685 7.61685 1.16 0.00381366 0.00339533 0.282977 0.255058 64 15047 42 8.18539e+06 3.8904e+06 1.23838e+06 3822.15 15.35 2.25393 2.01061 35972 318676 -1 12596 28 11580 13100 2794817 606525 8.69268 8.69268 -790.226 -8.69268 0 0 1.56068e+06 4816.91 0.64 0.85 0.33 -1 -1 0.64 0.250694 0.227328 546 513 475 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_27.v common 14.36 vpr 75.30 MiB 0.10 12516 -1 -1 1 0.36 -1 -1 40064 -1 -1 82 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77108 22 19 2385 1724 1 1378 131 18 18 324 mult_36 auto 38.1 MiB 0.69 8385 24699 5980 15720 2999 75.3 MiB 0.63 0.01 7.5097 -507.269 -7.5097 7.5097 1.13 0.00353734 0.00313029 0.285431 0.254476 60 16025 40 8.18539e+06 4.37469e+06 1.16833e+06 3605.96 7.25 1.28143 1.14 35004 297736 -1 12992 23 10946 12918 2380031 535699 8.88117 8.88117 -837.292 -8.88117 0 0 1.46313e+06 4515.82 0.57 0.68 0.30 -1 -1 0.57 0.205962 0.186765 575 532 494 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_28.v common 15.59 vpr 75.85 MiB 0.10 12376 -1 -1 1 0.37 -1 -1 40720 -1 -1 83 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77668 22 19 2459 1781 1 1417 132 18 18 324 mult_36 auto 38.3 MiB 0.72 8689 25257 6208 16241 2808 75.8 MiB 0.67 0.01 7.6207 -566.063 -7.6207 7.6207 1.13 0.00384733 0.00347753 0.307826 0.277339 66 16572 39 8.18539e+06 4.3894e+06 1.27759e+06 3943.17 8.37 1.35753 1.20548 36296 327148 -1 13397 23 11158 12924 2477232 529597 8.79428 8.79428 -865.438 -8.79428 0 0 1.59950e+06 4936.74 0.63 0.71 0.34 -1 -1 0.63 0.210656 0.191264 594 551 513 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_29.v common 67.66 vpr 76.14 MiB 0.11 12744 -1 -1 1 0.39 -1 -1 40564 -1 -1 85 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77972 22 19 2565 1853 1 1485 135 22 22 484 mult_36 auto 38.8 MiB 0.77 9442 28161 6997 18014 3150 76.1 MiB 0.74 0.01 7.52039 -553.858 -7.52039 7.52039 1.88 0.00377288 0.00339168 0.342755 0.306561 62 17621 50 1.33067e+07 4.81483e+06 1.85176e+06 3825.95 58.29 2.64492 2.34944 53538 472186 -1 13774 25 11230 13122 2478872 548900 8.66592 8.66592 -957.651 -8.66592 0 0 2.29262e+06 4736.82 0.97 0.76 0.47 -1 -1 0.97 0.236163 0.212504 619 570 532 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_30.v common 33.90 vpr 84.33 MiB 0.11 12716 -1 -1 1 0.40 -1 -1 41128 -1 -1 89 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86356 22 19 2639 1910 1 1523 139 22 22 484 mult_36 auto 39.3 MiB 0.82 9768 29577 6955 19087 3535 76.7 MiB 0.85 0.01 7.22279 -504.459 -7.22279 7.22279 1.91 0.00447534 0.00397162 0.369498 0.329707 72 17372 35 1.33067e+07 4.87369e+06 2.11301e+06 4365.72 23.69 2.3548 2.09502 56918 551676 -1 14477 28 13214 15192 3573628 751486 8.65982 8.65982 -903.641 -8.65982 0 0 2.64603e+06 5467.00 1.16 1.03 0.57 -1 -1 1.16 0.281763 0.254904 639 589 551 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_31.v common 73.36 vpr 77.16 MiB 0.12 13336 -1 -1 1 0.41 -1 -1 41012 -1 -1 93 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79012 22 19 2744 1981 1 1590 143 22 22 484 mult_36 auto 39.8 MiB 0.83 9512 29983 7208 19182 3593 77.2 MiB 0.81 0.01 7.3951 -552.741 -7.3951 7.3951 1.92 0.00437076 0.00395753 0.358907 0.322376 64 17176 28 1.33067e+07 4.93255e+06 1.90554e+06 3937.06 63.60 2.7924 2.47512 54502 494576 -1 14278 24 11810 13732 2725924 584236 8.89972 8.89972 -987.748 -8.89972 0 0 2.40101e+06 4960.76 1.01 0.83 0.49 -1 -1 1.01 0.254799 0.230706 665 608 570 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_32.v common 22.31 vpr 77.42 MiB 0.12 13208 -1 -1 1 0.43 -1 -1 40816 -1 -1 96 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79276 22 19 2818 2038 1 1627 146 22 22 484 mult_36 auto 40.2 MiB 0.88 10049 28562 6362 18969 3231 77.4 MiB 0.76 0.01 7.3951 -582.51 -7.3951 7.3951 1.89 0.00414407 0.00371792 0.343986 0.308301 62 20680 45 1.33067e+07 4.9767e+06 1.85176e+06 3825.95 12.57 1.73769 1.54436 53538 472186 -1 15447 24 14391 16806 3137758 672088 9.06688 9.06688 -1228.1 -9.06688 0 0 2.29262e+06 4736.82 0.96 0.89 0.47 -1 -1 0.96 0.255264 0.231019 684 627 589 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_33.v common 31.56 vpr 83.47 MiB 0.12 13884 -1 -1 1 0.44 -1 -1 41316 -1 -1 100 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85476 22 19 2923 2109 1 1695 151 22 22 484 mult_36 auto 41.1 MiB 0.79 10865 34637 8153 22347 4137 78.4 MiB 1.01 0.01 8.15824 -607.165 -8.15824 8.15824 1.95 0.0052008 0.00476653 0.471831 0.426293 74 18336 33 1.33067e+07 5.43155e+06 2.15943e+06 4461.62 21.34 2.58505 2.30169 57402 562966 -1 15877 23 11498 12894 2565600 526458 9.80987 9.80987 -1175.7 -9.80987 0 0 2.68771e+06 5553.12 1.17 0.77 0.53 -1 -1 1.17 0.256215 0.231949 710 646 608 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_34.v common 25.25 vpr 78.48 MiB 0.13 14112 -1 -1 1 0.46 -1 -1 41420 -1 -1 101 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80360 22 19 2997 2166 1 1734 152 22 22 484 mult_36 auto 41.4 MiB 1.03 10614 33767 7835 22252 3680 78.5 MiB 0.86 0.01 7.99994 -609.127 -7.99994 7.99994 1.85 0.00493387 0.00433053 0.39087 0.348818 64 20070 49 1.33067e+07 5.44627e+06 1.90554e+06 3937.06 14.67 2.11562 1.87776 54502 494576 -1 16484 28 15764 17944 3506756 754690 9.74237 9.74237 -1010.32 -9.74237 0 0 2.40101e+06 4960.76 1.07 1.05 0.50 -1 -1 1.07 0.3122 0.282435 729 665 627 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_35.v common 23.78 vpr 78.79 MiB 0.13 14248 -1 -1 1 0.43 -1 -1 41736 -1 -1 106 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80684 22 19 3101 2236 1 1801 157 22 22 484 mult_36 auto 41.7 MiB 1.06 11840 29344 6391 19740 3213 78.8 MiB 0.81 0.01 8.06594 -615.903 -8.06594 8.06594 1.90 0.00456713 0.00405678 0.34955 0.311374 66 21047 45 1.33067e+07 5.51985e+06 1.96511e+06 4060.15 13.39 1.79255 1.58498 54986 507526 -1 17349 25 14473 16731 3480988 717631 9.50801 9.50801 -1210.49 -9.50801 0 0 2.45963e+06 5081.88 1.05 1.01 0.51 -1 -1 1.05 0.294307 0.267409 755 684 646 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_36.v common 22.83 vpr 79.48 MiB 0.13 14332 -1 -1 1 0.48 -1 -1 41788 -1 -1 107 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81384 22 19 3175 2293 1 1836 158 22 22 484 mult_36 auto 42.4 MiB 1.20 11726 31329 7170 20806 3353 79.5 MiB 0.88 0.01 8.18309 -666.41 -8.18309 8.18309 1.84 0.00448182 0.00400869 0.359807 0.320138 68 21486 38 1.33067e+07 5.53456e+06 2.01763e+06 4168.66 12.07 1.67177 1.48193 55470 518816 -1 17120 27 16262 18847 3533498 748001 9.61427 9.61427 -1149.64 -9.61427 0 0 2.51205e+06 5190.18 1.08 1.03 0.52 -1 -1 1.08 0.312826 0.28317 773 703 665 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_37.v common 25.16 vpr 80.05 MiB 0.14 14492 -1 -1 1 0.51 -1 -1 41448 -1 -1 111 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81972 22 19 3280 2364 1 1904 163 24 24 576 mult_36 auto 43.0 MiB 1.12 13326 32203 7821 21508 2874 80.1 MiB 0.94 0.01 8.30854 -722.588 -8.30854 8.30854 2.21 0.00482374 0.00433004 0.39626 0.351613 68 23528 42 1.60519e+07 5.98942e+06 2.39371e+06 4155.74 13.49 1.7961 1.587 65606 615345 -1 18931 24 13895 16367 3044202 654103 10.0996 10.0996 -1122.6 -10.0996 0 0 2.98162e+06 5176.42 1.34 0.94 0.63 -1 -1 1.34 0.298818 0.271133 798 722 684 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_38.v common 36.31 vpr 94.30 MiB 0.14 14900 -1 -1 1 0.53 -1 -1 42368 -1 -1 113 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96568 22 19 3354 2421 1 1941 165 24 24 576 mult_36 auto 43.3 MiB 1.22 12484 30901 7226 20844 2831 80.4 MiB 0.93 0.01 8.2634 -786.391 -8.2634 8.2634 2.32 0.00530873 0.00481288 0.397626 0.355963 74 21823 30 1.60519e+07 6.01886e+06 2.56259e+06 4448.94 24.04 2.78861 2.48255 67906 667765 -1 18085 25 14119 16363 3109818 659067 9.88411 9.88411 -1184.19 -9.88411 0 0 3.19068e+06 5539.38 1.45 0.96 0.68 -1 -1 1.45 0.318514 0.288672 818 741 703 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_39.v common 26.47 vpr 80.86 MiB 0.15 14856 -1 -1 1 0.54 -1 -1 41832 -1 -1 117 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82804 22 19 3457 2490 1 2007 169 24 24 576 mult_36 auto 43.7 MiB 1.22 12971 37529 8747 24955 3827 80.9 MiB 1.08 0.01 8.22054 -800.143 -8.22054 8.22054 2.28 0.00568604 0.00514952 0.464137 0.414463 70 21295 26 1.60519e+07 6.07772e+06 2.45377e+06 4260.01 13.90 2.01301 1.78853 66754 640332 -1 18816 32 15317 17775 3828888 844833 9.63546 9.63546 -1246.75 -9.63546 0 0 3.09179e+06 5367.68 1.37 1.28 0.66 -1 -1 1.37 0.429356 0.388094 842 760 722 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_40.v common 24.14 vpr 81.07 MiB 0.15 14972 -1 -1 1 0.56 -1 -1 41588 -1 -1 120 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83020 22 19 3531 2547 1 2046 172 24 24 576 mult_36 auto 43.9 MiB 1.36 13582 39368 8807 27021 3540 81.1 MiB 1.08 0.01 8.21624 -874.29 -8.21624 8.21624 2.26 0.00552103 0.00499416 0.473343 0.424803 72 22957 29 1.60519e+07 6.12186e+06 2.50747e+06 4353.24 11.66 1.84194 1.63888 67330 654343 -1 19371 25 14017 16648 2819468 596316 9.51527 9.51527 -1316.03 -9.51527 0 0 3.14081e+06 5452.80 1.43 0.93 0.67 -1 -1 1.43 0.342053 0.310723 862 779 741 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_41.v common 39.87 vpr 97.10 MiB 0.16 15616 -1 -1 1 0.59 -1 -1 41628 -1 -1 122 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99432 22 19 3634 2616 1 2113 175 24 24 576 mult_36 auto 44.5 MiB 1.30 14233 36361 8422 24352 3587 81.7 MiB 1.09 0.01 8.19139 -891.115 -8.19139 8.19139 2.27 0.00580555 0.00525424 0.471086 0.421398 72 25041 38 1.60519e+07 6.5473e+06 2.50747e+06 4353.24 27.23 3.08349 2.72907 67330 654343 -1 20375 25 16210 18941 3645733 746624 9.35476 9.35476 -1460.15 -9.35476 0 0 3.14081e+06 5452.80 1.41 1.07 0.67 -1 -1 1.41 0.328384 0.296488 886 798 760 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_42.v common 25.61 vpr 82.16 MiB 0.15 15380 -1 -1 1 0.60 -1 -1 42144 -1 -1 125 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84128 22 19 3708 2673 1 2147 178 24 24 576 mult_36 auto 45.1 MiB 1.42 14021 39678 8705 26552 4421 82.2 MiB 1.17 0.01 8.4137 -867.826 -8.4137 8.4137 2.24 0.0054328 0.00481576 0.494554 0.441495 74 24137 49 1.60519e+07 6.59144e+06 2.56259e+06 4448.94 12.78 2.12328 1.88485 67906 667765 -1 20402 25 16789 19536 3845446 786950 10.0713 10.0713 -1214.27 -10.0713 0 0 3.19068e+06 5539.38 1.40 1.06 0.70 -1 -1 1.40 0.307481 0.275552 906 817 779 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_43.v common 28.49 vpr 82.59 MiB 0.16 15632 -1 -1 1 0.65 -1 -1 42776 -1 -1 129 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84568 22 19 3810 2741 1 2214 182 24 24 576 mult_36 auto 45.4 MiB 1.45 15225 42927 9795 29302 3830 82.6 MiB 1.29 0.02 8.35399 -897.502 -8.35399 8.35399 2.32 0.00678227 0.00592932 0.578181 0.515851 66 27859 47 1.60519e+07 6.6503e+06 2.33135e+06 4047.49 15.14 2.5327 2.26056 65030 601923 -1 21831 31 16167 19224 3807979 814126 10.1627 10.1627 -1437.29 -10.1627 0 0 2.91907e+06 5067.82 1.37 1.32 0.61 -1 -1 1.37 0.473337 0.429275 930 836 798 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_44.v common 98.20 vpr 82.67 MiB 0.16 15888 -1 -1 1 0.64 -1 -1 42568 -1 -1 132 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84652 22 19 3884 2798 1 2251 185 24 24 576 mult_36 auto 45.7 MiB 1.48 14578 40687 9158 27490 4039 82.7 MiB 1.15 0.02 8.12809 -887.401 -8.12809 8.12809 2.25 0.00616178 0.00540478 0.493291 0.440501 66 26363 47 1.60519e+07 6.69445e+06 2.33135e+06 4047.49 85.42 4.17137 3.68616 65030 601923 -1 20895 24 16579 19417 3428917 737731 9.75896 9.75896 -1472.25 -9.75896 0 0 2.91907e+06 5067.82 1.27 1.05 0.59 -1 -1 1.27 0.351341 0.316052 949 855 817 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_45.v common 39.88 vpr 97.45 MiB 0.17 16020 -1 -1 1 0.68 -1 -1 44340 -1 -1 135 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99788 22 19 3989 2869 1 2318 189 24 24 576 mult_36 auto 46.3 MiB 1.47 15057 40297 9358 27010 3929 83.5 MiB 1.15 0.02 8.26154 -932.276 -8.26154 8.26154 2.23 0.00605386 0.00543451 0.477709 0.425129 78 23478 25 1.60519e+07 7.1346e+06 2.67122e+06 4637.53 26.61 3.34268 2.94863 69630 706637 -1 20879 24 15592 18272 3692115 776613 9.71542 9.71542 -1381.23 -9.71542 0 0 3.35110e+06 5817.88 1.51 1.12 0.73 -1 -1 1.51 0.362094 0.328236 975 874 836 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_46.v common 31.47 vpr 83.92 MiB 0.17 16200 -1 -1 1 0.68 -1 -1 44520 -1 -1 136 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85936 22 19 4063 2926 1 2357 190 24 24 576 mult_36 auto 46.7 MiB 1.57 16213 40594 8884 27907 3803 83.9 MiB 1.16 0.02 8.44184 -917.163 -8.44184 8.44184 2.21 0.00589822 0.00529965 0.492559 0.440667 74 27801 50 1.60519e+07 7.14931e+06 2.56259e+06 4448.94 18.17 2.68955 2.37915 67906 667765 -1 23282 25 16198 19559 3697268 760008 9.97902 9.97902 -1539.32 -9.97902 0 0 3.19068e+06 5539.38 1.45 1.09 0.69 -1 -1 1.45 0.366096 0.330331 993 893 855 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_47.v common 102.01 vpr 84.09 MiB 0.18 16868 -1 -1 1 0.69 -1 -1 44492 -1 -1 141 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86104 22 19 4167 2996 1 2421 195 24 24 576 mult_36 auto 47.2 MiB 1.57 15539 44830 10596 29852 4382 84.1 MiB 1.32 0.02 8.1894 -905.531 -8.1894 8.1894 2.24 0.00652063 0.00589143 0.559561 0.497961 66 29522 47 1.60519e+07 7.22289e+06 2.33135e+06 4047.49 88.43 4.52494 3.98519 65030 601923 -1 22566 24 19412 22860 4962000 1095182 9.41782 9.41782 -1504.78 -9.41782 0 0 2.91907e+06 5067.82 1.31 1.38 0.60 -1 -1 1.31 0.372306 0.335566 1019 912 874 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_48.v common 28.32 vpr 84.68 MiB 0.19 16668 -1 -1 1 0.72 -1 -1 44768 -1 -1 144 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86712 22 19 4241 3053 1 2459 198 24 24 576 mult_36 auto 47.5 MiB 1.65 16216 44550 9872 30599 4079 84.7 MiB 1.28 0.02 8.34969 -938.041 -8.34969 8.34969 2.26 0.00627079 0.00550396 0.535431 0.471582 72 27870 36 1.60519e+07 7.26704e+06 2.50747e+06 4353.24 14.62 2.36132 2.08537 67330 654343 -1 22914 26 17311 20391 3927833 823474 9.56301 9.56301 -1706.99 -9.56301 0 0 3.14081e+06 5452.80 1.43 1.25 0.67 -1 -1 1.43 0.421217 0.380855 1038 931 893 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_49.v common 30.78 vpr 84.86 MiB 0.19 17224 -1 -1 1 0.74 -1 -1 44676 -1 -1 145 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86896 22 19 4346 3124 1 2527 200 24 24 576 mult_36 auto 48.3 MiB 1.63 16924 41664 9017 28795 3852 84.9 MiB 1.20 0.02 8.9149 -924.252 -8.9149 8.9149 2.22 0.00731186 0.00663585 0.481755 0.427174 78 26192 29 1.60519e+07 7.67775e+06 2.67122e+06 4637.53 17.01 2.87345 2.54498 69630 706637 -1 23183 26 16201 19210 3785807 806932 10.3472 10.3472 -1689.37 -10.3472 0 0 3.35110e+06 5817.88 1.49 1.20 0.73 -1 -1 1.49 0.41602 0.375336 1062 950 912 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_50.v common 45.69 vpr 100.46 MiB 0.19 17464 -1 -1 1 0.75 -1 -1 44584 -1 -1 148 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102868 22 19 4420 3181 1 2564 203 24 24 576 mult_36 auto 48.6 MiB 1.72 17053 43115 9196 29896 4023 85.5 MiB 1.22 0.02 8.38055 -962.535 -8.38055 8.38055 2.22 0.00761967 0.00691288 0.49668 0.438512 74 28686 32 1.60519e+07 7.72189e+06 2.56259e+06 4448.94 31.58 3.75918 3.3227 67906 667765 -1 24332 27 19694 23713 4927789 1016882 9.77842 9.77842 -1672.85 -9.77842 0 0 3.19068e+06 5539.38 1.46 1.47 0.69 -1 -1 1.46 0.445577 0.402123 1082 969 931 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_51.v common 32.07 vpr 85.93 MiB 0.20 17720 -1 -1 1 0.76 -1 -1 45296 -1 -1 152 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87988 22 19 4524 3251 1 2634 207 24 24 576 mult_36 auto 49.1 MiB 1.63 17622 44883 9395 31560 3928 85.9 MiB 1.34 0.02 8.26683 -1065.69 -8.26683 8.26683 2.17 0.00681126 0.0061401 0.540238 0.478968 74 29821 34 1.60519e+07 7.78076e+06 2.56259e+06 4448.94 18.26 2.81773 2.48909 67906 667765 -1 24866 26 20335 23872 4546214 941204 9.96746 9.96746 -1620.11 -9.96746 0 0 3.19068e+06 5539.38 1.44 1.36 0.64 -1 -1 1.44 0.435584 0.390442 1107 988 950 19 0 0 + k6_frac_2uripple_N8_22nm.xml fir_nopipe_52.v common 32.40 vpr 85.92 MiB 0.20 17620 -1 -1 1 0.79 -1 -1 45276 -1 -1 155 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87980 22 19 4598 3308 1 2668 210 24 24 576 mult_36 auto 49.2 MiB 1.81 18082 46386 9870 31866 4650 85.9 MiB 1.38 0.02 8.21624 -1070.83 -8.21624 8.21624 2.24 0.00666732 0.00577574 0.527774 0.460969 74 30493 33 1.60519e+07 7.8249e+06 2.56259e+06 4448.94 17.98 2.7822 2.45082 67906 667765 -1 25503 26 21439 24951 4954766 1020911 9.68522 9.68522 -1856.57 -9.68522 0 0 3.19068e+06 5539.38 1.44 1.44 0.68 -1 -1 1.44 0.443733 0.399167 1127 1007 969 19 0 0 + k6_frac_N8_22nm.xml fir_pipe_14.v common 10.91 vpr 72.47 MiB 0.06 10700 -1 -1 8 0.59 -1 -1 40044 -1 -1 79 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74208 22 19 1764 1664 1 1014 124 16 16 256 mult_36 auto 34.1 MiB 0.58 6478 15574 3160 10940 1474 72.5 MiB 0.35 0.01 4.02136 -1185.12 -4.02136 4.02136 0.83 0.0031434 0.00278824 0.180281 0.160607 64 12894 34 6.45408e+06 2.64829e+06 943753. 3686.54 5.34 1.09983 0.980554 27332 240185 -1 10971 19 4542 7975 879120 195692 4.27196 4.27196 -1357.93 -4.27196 0 0 1.19033e+06 4649.74 0.46 0.38 0.25 -1 -1 0.46 0.174309 0.159374 599 909 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_15.v common 12.05 vpr 73.62 MiB 0.07 11020 -1 -1 8 0.59 -1 -1 40944 -1 -1 85 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75392 22 19 1918 1801 1 1104 131 16 16 256 mult_36 auto 35.3 MiB 0.58 7229 18391 4262 12360 1769 73.6 MiB 0.37 0.01 4.02136 -1301.71 -4.02136 4.02136 0.86 0.00289333 0.00251821 0.184301 0.161422 64 15304 32 6.45408e+06 3.12512e+06 943753. 3686.54 6.52 1.16459 1.02065 27332 240185 -1 11914 14 4869 8400 1124394 251839 4.39726 4.39726 -1562.93 -4.39726 0 0 1.19033e+06 4649.74 0.42 0.36 0.25 -1 -1 0.42 0.13285 0.120881 651 984 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_16.v common 12.29 vpr 74.04 MiB 0.07 11472 -1 -1 8 0.66 -1 -1 40532 -1 -1 87 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75812 22 19 1976 1859 1 1141 133 16 16 256 mult_36 auto 35.8 MiB 0.58 7187 15727 3187 11000 1540 74.0 MiB 0.36 0.01 4.02136 -1347.28 -4.02136 4.02136 0.86 0.00337021 0.00299738 0.184144 0.163125 66 14608 37 6.45408e+06 3.15206e+06 974584. 3806.97 6.59 1.269 1.11927 27588 246658 -1 11794 19 4836 8283 902341 200620 4.39726 4.39726 -1550.4 -4.39726 0 0 1.22072e+06 4768.46 0.48 0.38 0.26 -1 -1 0.48 0.182959 0.166674 679 1023 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_17.v common 16.48 vpr 75.01 MiB 0.08 12072 -1 -1 8 0.75 -1 -1 40720 -1 -1 102 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76812 22 19 2278 2144 1 1269 148 16 16 256 mult_36 auto 37.1 MiB 0.68 8310 20480 3957 14235 2288 75.0 MiB 0.44 0.01 3.89606 -1536.25 -3.89606 3.89606 0.84 0.00389433 0.0034684 0.215899 0.190456 68 15350 45 6.45408e+06 3.35414e+06 1.00038e+06 3907.74 10.31 1.79515 1.57029 27844 252052 -1 12769 19 5221 9181 1063814 245735 4.39726 4.39726 -1715.47 -4.39726 0 0 1.24648e+06 4869.04 0.48 0.44 0.26 -1 -1 0.48 0.202792 0.18325 768 1171 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_18.v common 12.19 vpr 75.27 MiB 0.08 12340 -1 -1 8 0.79 -1 -1 40672 -1 -1 105 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77076 22 19 2336 2202 1 1299 151 16 16 256 mult_36 auto 37.5 MiB 0.68 8550 21805 4384 15347 2074 75.3 MiB 0.47 0.01 4.02136 -1601.42 -4.02136 4.02136 0.83 0.00373511 0.00328925 0.22904 0.201612 66 16313 27 6.45408e+06 3.39456e+06 974584. 3806.97 5.95 1.24818 1.10069 27588 246658 -1 13488 16 5494 9616 1058147 233221 4.39726 4.39726 -1775.91 -4.39726 0 0 1.22072e+06 4768.46 0.45 0.39 0.26 -1 -1 0.45 0.18117 0.165005 794 1210 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_19.v common 12.50 vpr 76.78 MiB 0.08 12544 -1 -1 8 0.82 -1 -1 40976 -1 -1 111 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78620 22 19 2488 2337 1 1399 158 16 16 256 mult_36 auto 38.6 MiB 0.69 9266 20227 3804 14403 2020 76.8 MiB 0.45 0.01 4.14666 -1692.31 -4.14666 4.14666 0.80 0.0040504 0.00357028 0.218945 0.191625 68 17593 36 6.45408e+06 3.87139e+06 1.00038e+06 3907.74 6.29 1.40064 1.23495 27844 252052 -1 14230 17 5957 10249 1274147 289843 4.27196 4.27196 -1946.25 -4.27196 0 0 1.24648e+06 4869.04 0.46 0.47 0.24 -1 -1 0.46 0.207173 0.188666 837 1285 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_20.v common 17.97 vpr 76.85 MiB 0.09 12968 -1 -1 8 0.90 -1 -1 40964 -1 -1 114 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78692 22 19 2546 2395 1 1440 161 16 16 256 mult_36 auto 38.9 MiB 0.76 10002 26381 5384 18712 2285 76.8 MiB 0.58 0.01 4.14666 -1770.66 -4.14666 4.14666 0.85 0.004529 0.00405286 0.281454 0.248237 76 18167 25 6.45408e+06 3.91181e+06 1.09288e+06 4269.05 11.20 1.93428 1.70192 29116 278758 -1 15314 15 6009 10841 1253574 277516 4.39726 4.39726 -2041.3 -4.39726 0 0 1.35486e+06 5292.42 0.51 0.47 0.29 -1 -1 0.51 0.210475 0.193049 867 1324 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_21.v common 18.28 vpr 77.61 MiB 0.10 13212 -1 -1 8 1.03 -1 -1 41400 -1 -1 122 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79472 22 19 2735 2567 1 1547 169 16 16 256 mult_36 auto 39.6 MiB 0.84 10535 22585 4050 16562 1973 77.6 MiB 0.53 0.01 4.14666 -1914.2 -4.14666 4.14666 0.84 0.00469399 0.00418019 0.260941 0.231542 76 18435 26 6.45408e+06 4.01958e+06 1.09288e+06 4269.05 11.26 2.05265 1.82042 29116 278758 -1 15837 15 6178 10879 1198019 273686 4.39726 4.39726 -2118.95 -4.39726 0 0 1.35486e+06 5292.42 0.52 0.45 0.29 -1 -1 0.52 0.207938 0.19005 931 1417 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_22.v common 18.86 vpr 77.84 MiB 0.10 13300 -1 -1 8 1.06 -1 -1 41872 -1 -1 126 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79704 22 19 2793 2625 1 1580 173 16 16 256 mult_36 auto 40.3 MiB 0.84 11503 27590 5698 19397 2495 77.8 MiB 0.61 0.01 4.14666 -1959.08 -4.14666 4.14666 0.82 0.00459358 0.00403552 0.288257 0.252798 76 19803 30 6.45408e+06 4.07347e+06 1.09288e+06 4269.05 11.66 2.13873 1.88603 29116 278758 -1 16779 17 6411 11512 1223079 277104 4.39726 4.39726 -2211.12 -4.39726 0 0 1.35486e+06 5292.42 0.50 0.48 0.30 -1 -1 0.50 0.225548 0.204945 962 1456 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_23.v common 54.91 vpr 78.59 MiB 0.10 13692 -1 -1 8 1.10 -1 -1 42028 -1 -1 131 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80476 22 19 2947 2762 1 1693 179 18 18 324 mult_36 auto 41.1 MiB 0.94 11258 26891 5305 19482 2104 78.6 MiB 0.61 0.01 4.14666 -2037.57 -4.14666 4.14666 1.17 0.00454045 0.00393973 0.297582 0.262269 70 21767 33 7.94662e+06 4.53683e+06 1.34436e+06 4149.26 46.69 3.41854 2.99094 36496 347204 -1 17797 15 6911 12112 1505572 322604 4.52256 4.52256 -2359.92 -4.52256 0 0 1.69344e+06 5226.66 0.64 0.51 0.36 -1 -1 0.64 0.213801 0.194114 1008 1531 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_24.v common 33.17 vpr 79.02 MiB 0.11 13848 -1 -1 8 1.17 -1 -1 42004 -1 -1 135 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80916 22 19 3005 2820 1 1720 183 18 18 324 mult_36 auto 41.6 MiB 0.95 11626 32361 6600 23411 2350 79.0 MiB 0.68 0.01 4.02136 -2126.62 -4.02136 4.02136 1.12 0.00451554 0.00393391 0.319809 0.279273 70 20996 40 7.94662e+06 4.59072e+06 1.34436e+06 4149.26 24.38 3.26303 2.87298 36496 347204 -1 18440 31 7168 12796 1703218 446334 4.39726 4.39726 -2478.82 -4.39726 0 0 1.69344e+06 5226.66 0.68 0.84 0.36 -1 -1 0.68 0.406308 0.366109 1039 1570 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_25.v common 18.70 vpr 80.02 MiB 0.11 14416 -1 -1 8 1.27 -1 -1 44004 -1 -1 145 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81944 22 19 3229 3027 1 1824 193 18 18 324 mult_36 auto 42.6 MiB 0.98 12318 34170 7255 24518 2397 80.0 MiB 0.79 0.01 4.14666 -2250.65 -4.14666 4.14666 1.14 0.00518772 0.00456797 0.375274 0.329646 70 23285 28 7.94662e+06 4.72544e+06 1.34436e+06 4149.26 9.79 1.80517 1.57908 36496 347204 -1 19909 18 7860 13888 1688915 362277 4.39726 4.39726 -2608.74 -4.39726 0 0 1.69344e+06 5226.66 0.67 0.61 0.36 -1 -1 0.67 0.26702 0.242134 1106 1681 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_26.v common 25.00 vpr 80.33 MiB 0.12 14512 -1 -1 8 1.38 -1 -1 44264 -1 -1 151 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82260 22 19 3287 3085 1 1862 199 18 18 324 mult_36 auto 43.0 MiB 1.09 13226 32679 6605 23640 2434 80.3 MiB 0.79 0.01 4.02136 -2273.66 -4.02136 4.02136 1.19 0.00597865 0.00535348 0.383704 0.34119 78 21829 16 7.94662e+06 4.80627e+06 1.46313e+06 4515.82 15.60 2.95336 2.63488 38112 383040 -1 19938 15 7105 12859 1475346 317616 4.39726 4.39726 -2653.18 -4.39726 0 0 1.83526e+06 5664.38 0.76 0.63 0.40 -1 -1 0.76 0.299828 0.275512 1134 1720 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_27.v common 34.91 vpr 82.04 MiB 0.12 15136 -1 -1 8 1.40 -1 -1 43420 -1 -1 156 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84012 22 19 3453 3234 1 1964 205 18 18 324 mult_36 auto 43.9 MiB 1.08 14011 35237 7441 25506 2290 82.0 MiB 0.81 0.01 4.14666 -2412.66 -4.14666 4.14666 1.13 0.00543081 0.00478824 0.378996 0.334276 76 25761 50 7.94662e+06 5.26963e+06 1.43297e+06 4422.75 25.64 3.50873 3.05214 37464 369264 -1 21456 16 8063 14294 1635300 347385 4.39726 4.39726 -2774.12 -4.39726 0 0 1.77541e+06 5479.65 0.72 0.60 0.39 -1 -1 0.72 0.263848 0.239088 1189 1795 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_28.v common 26.14 vpr 82.66 MiB 0.12 15020 -1 -1 8 1.45 -1 -1 43196 -1 -1 160 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84640 22 19 3511 3292 1 2001 209 18 18 324 mult_36 auto 44.4 MiB 1.08 13867 35549 6866 26095 2588 82.7 MiB 0.80 0.01 4.27196 -2386.34 -4.27196 4.27196 1.12 0.00616418 0.005468 0.37513 0.329987 78 24354 35 7.94662e+06 5.32352e+06 1.46313e+06 4515.82 16.65 2.84303 2.49372 38112 383040 -1 21106 18 8104 14445 1874453 406079 4.39726 4.39726 -2747.27 -4.39726 0 0 1.83526e+06 5664.38 0.71 0.70 0.41 -1 -1 0.71 0.304819 0.276528 1221 1834 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_29.v common 34.80 vpr 90.39 MiB 0.13 15476 -1 -1 8 1.55 -1 -1 44980 -1 -1 168 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92556 22 19 3709 3473 1 2127 218 22 22 484 mult_36 auto 45.3 MiB 1.16 14922 42138 9325 29971 2842 83.6 MiB 0.96 0.01 4.14666 -2575.38 -4.14666 4.14666 1.87 0.00610238 0.00538879 0.446553 0.389699 74 25973 50 1.29336e+07 5.8273e+06 2.15943e+06 4461.62 22.80 3.35769 2.9471 56202 562081 -1 22860 16 8438 15048 1833393 392518 4.39726 4.39726 -3066.74 -4.39726 0 0 2.68771e+06 5553.12 1.17 0.67 0.58 -1 -1 1.17 0.292824 0.265878 1281 1927 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_30.v common 35.14 vpr 91.05 MiB 0.13 15888 -1 -1 8 1.61 -1 -1 45384 -1 -1 170 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93240 22 19 3767 3531 1 2168 220 22 22 484 mult_36 auto 45.9 MiB 1.15 15744 41989 9258 29863 2868 84.1 MiB 0.99 0.01 4.02136 -2591.31 -4.02136 4.02136 1.85 0.00627522 0.00554751 0.45892 0.402788 74 28858 50 1.29336e+07 5.85424e+06 2.15943e+06 4461.62 22.93 3.3982 2.97569 56202 562081 -1 24295 15 8815 15803 2094593 434906 4.52256 4.52256 -3017.66 -4.52256 0 0 2.68771e+06 5553.12 1.18 0.70 0.58 -1 -1 1.18 0.279678 0.25415 1309 1966 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_31.v common 24.57 vpr 84.43 MiB 0.13 16128 -1 -1 8 1.64 -1 -1 45780 -1 -1 177 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86460 22 19 3928 3675 1 2252 227 22 22 484 mult_36 auto 46.4 MiB 1.19 15494 42439 9091 30501 2847 84.4 MiB 0.97 0.01 4.14666 -2723.45 -4.14666 4.14666 1.83 0.00643217 0.0056809 0.454507 0.394822 70 27941 46 1.29336e+07 5.94854e+06 2.06816e+06 4273.05 12.57 3.04761 2.68566 55234 538945 -1 24332 14 9403 16487 1875130 400753 4.52256 4.52256 -3229.84 -4.52256 0 0 2.60483e+06 5381.88 1.16 0.68 0.50 -1 -1 1.16 0.298838 0.272308 1363 2041 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_32.v common 29.56 vpr 84.95 MiB 0.14 16288 -1 -1 8 1.76 -1 -1 45804 -1 -1 181 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86992 22 19 3986 3733 1 2287 231 22 22 484 mult_36 auto 46.9 MiB 1.27 16815 47667 10491 33895 3281 85.0 MiB 1.09 0.02 4.14666 -2752.04 -4.14666 4.14666 1.92 0.00710922 0.00632784 0.497415 0.43686 74 32284 47 1.29336e+07 6.00243e+06 2.15943e+06 4461.62 16.74 2.5595 2.24981 56202 562081 -1 26299 16 9515 17304 2343566 480342 4.64786 4.64786 -3331.97 -4.64786 0 0 2.68771e+06 5553.12 1.19 0.84 0.57 -1 -1 1.19 0.329804 0.301088 1391 2080 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_33.v common 35.51 vpr 95.93 MiB 0.15 17156 -1 -1 8 1.87 -1 -1 44544 -1 -1 192 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98228 22 19 4329 4059 1 2422 243 22 22 484 mult_36 auto 48.3 MiB 1.33 17900 45723 9634 32905 3184 86.5 MiB 1.12 0.02 4.02136 -2907.3 -4.02136 4.02136 1.86 0.00817847 0.0073333 0.519442 0.456311 82 30212 38 1.29336e+07 6.54662e+06 2.34651e+06 4848.17 22.31 3.69149 3.25002 58614 618607 -1 26566 16 9184 16319 2195745 457927 4.39726 4.39726 -3440.06 -4.39726 0 0 2.93652e+06 6067.20 1.27 0.81 0.64 -1 -1 1.27 0.346834 0.315407 1494 2246 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_34.v common 26.54 vpr 87.22 MiB 0.16 17292 -1 -1 8 2.03 -1 -1 46512 -1 -1 198 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89316 22 19 4387 4117 1 2459 249 22 22 484 mult_36 auto 49.0 MiB 1.36 17954 51927 11961 36627 3339 87.2 MiB 1.19 0.02 4.02136 -2972.34 -4.02136 4.02136 1.92 0.00737782 0.00656078 0.540073 0.47176 76 31806 34 1.29336e+07 6.62746e+06 2.20457e+06 4554.90 13.11 3.03755 2.68261 56682 573177 -1 27155 16 9817 17822 1984110 411797 4.52256 4.52256 -3616.8 -4.52256 0 0 2.73077e+06 5642.09 1.23 0.78 0.58 -1 -1 1.23 0.359347 0.32747 1521 2285 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_35.v common 40.33 vpr 96.63 MiB 0.16 17660 -1 -1 8 1.79 -1 -1 45392 -1 -1 208 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98948 22 19 4547 4260 1 2575 259 22 22 484 mult_36 auto 49.7 MiB 1.44 19149 51409 11081 36897 3431 87.9 MiB 1.18 0.02 4.02136 -3086.51 -4.02136 4.02136 1.84 0.00763276 0.00669205 0.535158 0.46658 76 34883 47 1.29336e+07 6.76218e+06 2.20457e+06 4554.90 27.01 4.51554 3.96848 56682 573177 -1 29120 15 10444 18634 2369602 497662 4.52256 4.52256 -3701.35 -4.52256 0 0 2.73077e+06 5642.09 1.16 0.87 0.58 -1 -1 1.16 0.371725 0.33878 1571 2360 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_36.v common 38.12 vpr 97.84 MiB 0.16 17844 -1 -1 8 2.15 -1 -1 47104 -1 -1 210 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100184 22 19 4605 4318 1 2609 261 22 22 484 mult_36 auto 50.0 MiB 1.44 19043 51907 11034 37412 3461 88.1 MiB 1.28 0.02 4.02136 -3138.92 -4.02136 4.02136 1.84 0.00845762 0.0075752 0.597116 0.528555 76 34806 32 1.29336e+07 6.78912e+06 2.20457e+06 4554.90 24.28 4.02624 3.53986 56682 573177 -1 29110 14 10564 19253 2113969 442916 4.52256 4.52256 -3691.97 -4.52256 0 0 2.73077e+06 5642.09 1.20 0.80 0.58 -1 -1 1.20 0.356049 0.32448 1597 2399 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_37.v common 45.39 vpr 106.92 MiB 0.17 18276 -1 -1 8 2.27 -1 -1 43856 -1 -1 218 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 109488 22 19 4802 4498 1 2726 270 24 24 576 mult_36 auto 51.4 MiB 1.90 20682 55206 11988 39730 3488 89.1 MiB 1.24 0.02 4.27196 -3426.49 -4.27196 4.27196 2.28 0.00829362 0.00732736 0.556012 0.48627 76 37565 43 1.56141e+07 7.2929e+06 2.61600e+06 4541.67 29.80 4.61201 4.05907 67070 679911 -1 30975 16 10963 19814 2403084 499256 4.39726 4.39726 -3936.86 -4.39726 0 0 3.24203e+06 5628.53 1.40 0.87 0.69 -1 -1 1.40 0.362374 0.327511 1661 2492 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_38.v common 41.89 vpr 107.46 MiB 0.17 18388 -1 -1 8 2.32 -1 -1 47380 -1 -1 221 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 110044 22 19 4860 4556 1 2764 273 24 24 576 mult_36 auto 52.0 MiB 1.48 20038 62223 13929 44617 3677 89.7 MiB 1.36 0.02 4.27196 -3479.41 -4.27196 4.27196 2.25 0.00751334 0.00653394 0.6083 0.530333 76 35097 30 1.56141e+07 7.33331e+06 2.61600e+06 4541.67 26.51 3.70642 3.25332 67070 679911 -1 29830 14 10550 18685 2124541 443021 4.64786 4.64786 -4052.48 -4.64786 0 0 3.24203e+06 5628.53 1.49 0.86 0.70 -1 -1 1.49 0.397376 0.364043 1689 2531 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_39.v common 44.91 vpr 118.93 MiB 0.18 18824 -1 -1 8 2.56 -1 -1 47464 -1 -1 226 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 121780 22 19 5019 4698 1 2868 278 24 24 576 mult_36 auto 52.9 MiB 1.56 22411 60140 13853 42111 4176 90.6 MiB 1.48 0.02 4.27196 -3609.62 -4.27196 4.27196 2.28 0.0101726 0.00918184 0.68549 0.60651 86 36863 30 1.56141e+07 7.40067e+06 2.91907e+06 5067.82 28.42 4.37632 3.84382 71098 772847 -1 32820 17 10941 19499 3013876 619280 4.52256 4.52256 -4225.48 -4.52256 0 0 3.65856e+06 6351.67 1.70 1.05 0.80 -1 -1 1.70 0.427981 0.388498 1735 2606 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_40.v common 38.76 vpr 93.26 MiB 0.19 19268 -1 -1 8 2.62 -1 -1 47672 -1 -1 230 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95500 22 19 5077 4756 1 2904 282 24 24 576 mult_36 auto 53.2 MiB 1.57 21769 61266 14386 43198 3682 90.9 MiB 1.38 0.02 4.02136 -3667.77 -4.02136 4.02136 2.26 0.00866959 0.00759167 0.595483 0.516091 78 37621 44 1.56141e+07 7.45456e+06 2.67122e+06 4637.53 22.60 4.04286 3.5271 68222 705597 -1 32777 17 11718 21097 2745042 568995 4.39726 4.39726 -4550.4 -4.39726 0 0 3.35110e+06 5817.88 1.57 0.98 0.72 -1 -1 1.57 0.40763 0.369294 1765 2645 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_41.v common 47.39 vpr 110.32 MiB 0.19 19736 -1 -1 8 2.74 -1 -1 48172 -1 -1 239 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 112968 22 19 5308 4970 1 3021 292 24 24 576 mult_36 auto 54.5 MiB 1.68 21847 61276 13615 44352 3309 92.0 MiB 1.55 0.02 4.14666 -3824.5 -4.14666 4.14666 2.28 0.00981781 0.00876875 0.708127 0.616467 78 36915 40 1.56141e+07 7.97181e+06 2.67122e+06 4637.53 30.78 5.76536 5.10352 68222 705597 -1 32712 16 11164 20268 2238608 468976 4.64786 4.64786 -4663.43 -4.64786 0 0 3.35110e+06 5817.88 1.50 0.93 0.73 -1 -1 1.50 0.446045 0.40579 1838 2756 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_42.v common 31.99 vpr 97.63 MiB 0.19 19864 -1 -1 8 2.75 -1 -1 48768 -1 -1 242 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99976 22 19 5366 5028 1 3055 295 24 24 576 mult_36 auto 54.9 MiB 1.69 22655 65041 13736 47548 3757 92.3 MiB 1.61 0.02 4.27196 -3792.11 -4.27196 4.27196 2.31 0.00912209 0.00809437 0.732184 0.647607 76 41698 40 1.56141e+07 8.01222e+06 2.61600e+06 4541.67 15.16 3.43531 3.01543 67070 679911 -1 34360 16 12478 23158 2755952 579687 4.39726 4.39726 -4413.13 -4.39726 0 0 3.24203e+06 5628.53 1.45 1.08 0.70 -1 -1 1.45 0.476042 0.434163 1862 2795 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_43.v common 49.22 vpr 121.14 MiB 0.19 20120 -1 -1 8 2.72 -1 -1 49140 -1 -1 255 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 124044 22 19 5524 5169 1 3162 308 24 24 576 mult_36 auto 55.7 MiB 1.65 23313 70960 16033 50900 4027 92.4 MiB 1.66 0.02 4.39726 -3987.26 -4.39726 4.39726 2.24 0.00984893 0.00814094 0.706356 0.617864 82 41655 37 1.56141e+07 8.18736e+06 2.78508e+06 4835.20 32.55 5.5622 4.89711 69370 733739 -1 34883 15 12116 21900 2592638 541227 4.77316 4.77316 -4453.26 -4.77316 0 0 3.48632e+06 6052.64 1.59 0.98 0.71 -1 -1 1.59 0.441446 0.401825 1916 2870 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_44.v common 39.67 vpr 96.53 MiB 0.20 20184 -1 -1 8 2.88 -1 -1 48688 -1 -1 254 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 98848 22 19 5582 5227 1 3204 307 24 24 576 mult_36 auto 56.1 MiB 1.78 23902 76897 18324 54547 4026 92.6 MiB 1.90 0.02 4.39726 -4109.82 -4.39726 4.39726 2.30 0.0101164 0.00900551 0.848094 0.748377 80 42802 43 1.56141e+07 8.17389e+06 2.72095e+06 4723.87 22.04 4.74922 4.20057 68798 719145 -1 36206 15 13038 23824 2912616 591521 4.52256 4.52256 -4979.84 -4.52256 0 0 3.41546e+06 5929.62 1.55 1.13 0.74 -1 -1 1.55 0.501389 0.45806 1945 2909 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_45.v common 52.88 vpr 114.67 MiB 0.20 20640 -1 -1 8 3.17 -1 -1 49488 -1 -1 262 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 117420 22 19 5779 5407 1 3306 316 24 24 576 mult_36 auto 57.1 MiB 1.77 26291 77716 18356 54218 5142 93.7 MiB 1.68 0.02 4.27196 -4225.08 -4.27196 4.27196 2.19 0.00847038 0.00740739 0.695361 0.59966 78 46225 44 1.56141e+07 8.67766e+06 2.67122e+06 4637.53 35.63 6.21683 5.47373 68222 705597 -1 38902 17 13684 24453 3208445 675477 4.52256 4.52256 -4919.27 -4.52256 0 0 3.35110e+06 5817.88 1.43 1.10 0.68 -1 -1 1.43 0.443474 0.400524 2012 3002 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_46.v common 48.33 vpr 123.67 MiB 0.20 20816 -1 -1 8 3.20 -1 -1 49560 -1 -1 267 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 126636 22 19 5837 5465 1 3341 321 24 24 576 mult_36 auto 57.3 MiB 1.82 27269 72789 16708 51698 4383 93.8 MiB 1.62 0.02 4.39726 -4293.38 -4.39726 4.39726 2.20 0.0106074 0.00944354 0.681809 0.591391 86 43755 24 1.56141e+07 8.74502e+06 2.91907e+06 5067.82 30.62 4.76106 4.17845 71098 772847 -1 39247 14 13023 23708 3127418 634343 4.64786 4.64786 -4921.31 -4.64786 0 0 3.65856e+06 6351.67 1.67 1.05 0.76 -1 -1 1.67 0.409 0.370222 2043 3041 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_47.v common 49.33 vpr 116.02 MiB 0.22 21212 -1 -1 8 3.35 -1 -1 49824 -1 -1 275 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 118800 22 19 5997 5608 1 3446 329 24 24 576 mult_36 auto 58.2 MiB 1.81 24710 75239 17041 53794 4404 96.6 MiB 1.72 0.03 4.14666 -4244.86 -4.14666 4.14666 2.23 0.0104028 0.00918766 0.728111 0.634456 78 43218 30 1.56141e+07 8.8528e+06 2.67122e+06 4637.53 31.23 5.49386 4.84154 68222 705597 -1 37076 16 13718 24587 3135416 681078 4.39726 4.39726 -4825.74 -4.39726 0 0 3.35110e+06 5817.88 1.54 1.19 0.74 -1 -1 1.54 0.516331 0.470162 2100 3116 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_48.v common 71.39 vpr 103.96 MiB 0.22 21396 -1 -1 8 3.34 -1 -1 49992 -1 -1 279 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 106460 22 19 6055 5666 1 3477 333 24 24 576 mult_36 auto 58.5 MiB 1.90 24216 83349 19428 59140 4781 96.8 MiB 1.88 0.02 4.14666 -4403.39 -4.14666 4.14666 2.16 0.00952272 0.00829813 0.79825 0.699583 76 42150 41 1.56141e+07 8.90669e+06 2.61600e+06 4541.67 53.52 6.268 5.45697 67070 679911 -1 36256 15 13382 24502 2505834 544248 4.52256 4.52256 -5018.64 -4.52256 0 0 3.24203e+06 5628.53 1.43 1.04 0.70 -1 -1 1.43 0.501891 0.456595 2126 3155 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_49.v common 42.84 vpr 104.74 MiB 0.23 22004 -1 -1 8 3.57 -1 -1 50716 -1 -1 285 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 107256 22 19 6324 5918 1 3577 340 24 24 576 mult_36 auto 59.8 MiB 1.92 26448 76244 16123 55827 4294 98.2 MiB 1.81 0.03 4.39726 -4577.77 -4.39726 4.39726 2.25 0.0112347 0.00996237 0.767188 0.666358 76 47017 42 1.56141e+07 9.38352e+06 2.61600e+06 4541.67 24.40 4.70208 4.10334 67070 679911 -1 39418 15 13907 25519 2809414 603072 4.52256 4.52256 -5242.5 -4.52256 0 0 3.24203e+06 5628.53 1.44 1.16 0.69 -1 -1 1.44 0.559471 0.510649 2206 3284 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_50.v common 82.26 vpr 106.32 MiB 0.22 22056 -1 -1 8 3.78 -1 -1 50464 -1 -1 292 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 108872 22 19 6382 5976 1 3610 347 24 24 576 mult_36 auto 60.3 MiB 1.98 26813 81953 19194 58264 4495 98.6 MiB 1.93 0.03 4.14666 -4623.77 -4.14666 4.14666 2.20 0.0110504 0.00982207 0.817085 0.705879 78 47398 37 1.56141e+07 9.47782e+06 2.67122e+06 4637.53 63.26 6.80813 5.90183 68222 705597 -1 40404 15 14291 26365 3200262 662706 4.39726 4.39726 -5479.35 -4.39726 0 0 3.35110e+06 5817.88 1.52 1.19 0.74 -1 -1 1.52 0.517724 0.471234 2235 3323 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_51.v common 88.00 vpr 103.39 MiB 0.23 22412 -1 -1 8 3.70 -1 -1 51440 -1 -1 297 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 105872 22 19 6542 6119 1 3736 352 24 24 576 mult_36 auto 61.2 MiB 2.02 27219 92260 22852 64814 4594 99.3 MiB 2.03 0.03 4.27196 -4712.53 -4.27196 4.27196 2.20 0.0103687 0.00901851 0.83001 0.712384 78 44606 41 1.56141e+07 9.54518e+06 2.67122e+06 4637.53 68.71 6.22914 5.3998 68222 705597 -1 40274 14 14172 25983 3053327 646657 4.52256 4.52256 -5322.1 -4.52256 0 0 3.35110e+06 5817.88 1.56 1.14 0.73 -1 -1 1.56 0.513065 0.467061 2287 3398 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_pipe_52.v common 54.24 vpr 130.09 MiB 0.23 22708 -1 -1 8 3.90 -1 -1 51020 -1 -1 301 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 133212 22 19 6600 6177 1 3777 356 24 24 576 mult_36 auto 61.7 MiB 2.06 29663 86104 20191 61534 4379 99.7 MiB 2.02 0.03 4.52256 -4838.2 -4.52256 4.52256 2.24 0.0115998 0.0103147 0.834261 0.727786 84 51606 37 1.56141e+07 9.59907e+06 2.84938e+06 4946.85 34.67 5.76439 5.05735 70522 759407 -1 42149 15 14804 26995 2998660 631137 4.64786 4.64786 -5448.31 -4.64786 0 0 3.60864e+06 6265.01 1.57 1.10 0.78 -1 -1 1.57 0.477597 0.432086 2318 3437 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_14.v common 12.21 vpr 69.79 MiB 0.05 9424 -1 -1 10 0.62 -1 -1 38768 -1 -1 57 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71460 22 19 1149 1049 1 785 102 16 16 256 mult_36 auto 31.7 MiB 0.38 5081 13192 3000 8662 1530 69.8 MiB 0.27 0.00 11.8447 -385.145 -11.8447 11.8447 0.84 0.00213946 0.00192545 0.135637 0.121622 64 11010 41 6.45408e+06 2.3519e+06 943753. 3686.54 7.24 0.95476 0.852486 27332 240185 -1 9491 20 4984 9624 1018012 224185 12.3606 12.3606 -539.36 -12.3606 0 0 1.19033e+06 4649.74 0.43 0.33 0.26 -1 -1 0.43 0.11858 0.108255 433 658 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_15.v common 12.51 vpr 70.53 MiB 0.06 9908 -1 -1 11 0.64 -1 -1 39452 -1 -1 63 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72224 22 19 1261 1144 1 857 109 16 16 256 mult_36 auto 32.4 MiB 0.39 5727 8429 1388 6272 769 70.5 MiB 0.20 0.01 12.4748 -419.862 -12.4748 12.4748 0.85 0.00236976 0.0021358 0.096218 0.0869754 64 12345 45 6.45408e+06 2.82874e+06 943753. 3686.54 7.43 0.905705 0.813405 27332 240185 -1 10163 21 4983 9693 1167208 254300 13.2266 13.2266 -591.946 -13.2266 0 0 1.19033e+06 4649.74 0.46 0.39 0.24 -1 -1 0.46 0.146235 0.134083 471 727 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_16.v common 12.60 vpr 70.33 MiB 0.06 10112 -1 -1 11 0.66 -1 -1 39952 -1 -1 70 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72020 22 19 1336 1219 1 919 116 16 16 256 mult_36 auto 32.5 MiB 0.43 6342 15344 3208 10633 1503 70.3 MiB 0.33 0.01 13.4675 -457.228 -13.4675 13.4675 0.84 0.00272206 0.0024696 0.161998 0.145593 66 13691 40 6.45408e+06 2.92304e+06 974584. 3806.97 7.13 0.945911 0.849695 27588 246658 -1 11304 26 5592 11009 1478846 403369 14.094 14.094 -623.337 -14.094 0 0 1.22072e+06 4768.46 0.46 0.54 0.26 -1 -1 0.46 0.176763 0.161743 512 783 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_17.v common 10.54 vpr 71.25 MiB 0.06 10272 -1 -1 11 0.75 -1 -1 40100 -1 -1 77 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72956 22 19 1446 1312 1 981 123 16 16 256 mult_36 auto 33.3 MiB 0.42 6386 13848 2716 9851 1281 71.2 MiB 0.29 0.01 12.9326 -447.263 -12.9326 12.9326 0.81 0.00264109 0.00237108 0.137058 0.122818 66 12969 29 6.45408e+06 3.01734e+06 974584. 3806.97 5.10 0.850587 0.759912 27588 246658 -1 11144 18 5583 11136 1168810 262698 13.3085 13.3085 -643.705 -13.3085 0 0 1.22072e+06 4768.46 0.48 0.42 0.27 -1 -1 0.48 0.152822 0.140249 558 848 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_18.v common 17.38 vpr 71.48 MiB 0.07 10524 -1 -1 11 0.79 -1 -1 39712 -1 -1 79 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73200 22 19 1507 1373 1 1020 125 16 16 256 mult_36 auto 33.7 MiB 0.46 6871 13229 2356 9778 1095 71.5 MiB 0.30 0.01 12.7535 -489.89 -12.7535 12.7535 0.85 0.00291385 0.0026141 0.144038 0.129688 76 13404 28 6.45408e+06 3.04429e+06 1.09288e+06 4269.05 11.73 1.38843 1.24038 29116 278758 -1 11577 21 5700 11351 1274125 277129 13.8532 13.8532 -712.421 -13.8532 0 0 1.35486e+06 5292.42 0.51 0.42 0.30 -1 -1 0.51 0.161662 0.147861 576 890 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_19.v common 32.30 vpr 72.35 MiB 0.07 10948 -1 -1 11 0.84 -1 -1 39568 -1 -1 80 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74088 22 19 1596 1445 1 1103 127 16 16 256 mult_36 auto 34.6 MiB 0.50 7568 16077 3254 11313 1510 72.4 MiB 0.37 0.01 13.1552 -461.486 -13.1552 13.1552 0.84 0.0031872 0.00287812 0.181962 0.162848 70 15154 43 6.45408e+06 3.45376e+06 1.02522e+06 4004.78 26.34 2.07518 1.8423 28352 262101 -1 13258 18 6531 13341 1731704 388299 13.6956 13.6956 -693.424 -13.6956 0 0 1.29210e+06 5047.26 0.50 0.53 0.28 -1 -1 0.50 0.161214 0.147354 615 938 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_20.v common 20.15 vpr 72.56 MiB 0.07 10736 -1 -1 11 0.90 -1 -1 40020 -1 -1 86 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74304 22 19 1656 1505 1 1131 133 16 16 256 mult_36 auto 34.8 MiB 0.52 7976 15388 2921 11163 1304 72.6 MiB 0.35 0.01 12.7289 -483.111 -12.7289 12.7289 0.83 0.00324954 0.0028867 0.169021 0.151577 76 15908 50 6.45408e+06 3.53459e+06 1.09288e+06 4269.05 14.16 1.84737 1.64724 29116 278758 -1 13085 18 6615 13181 1391718 305423 13.1909 13.1909 -708.132 -13.1909 0 0 1.35486e+06 5292.42 0.50 0.47 0.30 -1 -1 0.50 0.166684 0.153278 637 979 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_21.v common 40.84 vpr 73.12 MiB 0.08 11128 -1 -1 12 0.98 -1 -1 40340 -1 -1 91 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74880 22 19 1754 1586 1 1196 138 16 16 256 mult_36 auto 35.4 MiB 0.49 8111 14734 2571 10881 1282 73.1 MiB 0.35 0.01 13.4374 -490.077 -13.4374 13.4374 0.80 0.00385443 0.00341213 0.175841 0.157951 68 16532 46 6.45408e+06 3.60195e+06 1.00038e+06 3907.74 34.93 2.49096 2.22055 27844 252052 -1 13582 19 6970 13269 1726392 382255 14.0247 14.0247 -683.105 -14.0247 0 0 1.24648e+06 4869.04 0.45 0.53 0.24 -1 -1 0.45 0.174543 0.160577 662 1035 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_22.v common 14.41 vpr 73.66 MiB 0.08 11448 -1 -1 11 1.01 -1 -1 40688 -1 -1 97 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75428 22 19 1827 1659 1 1261 144 16 16 256 mult_36 auto 36.0 MiB 0.58 8828 16732 3122 12021 1589 73.7 MiB 0.42 0.01 12.6939 -529.102 -12.6939 12.6939 0.84 0.00391298 0.00352785 0.208719 0.186504 76 16902 31 6.45408e+06 3.68278e+06 1.09288e+06 4269.05 8.01 1.52125 1.36653 29116 278758 -1 14568 19 7731 15441 1438663 323969 13.109 13.109 -763.912 -13.109 0 0 1.35486e+06 5292.42 0.51 0.51 0.29 -1 -1 0.51 0.20029 0.183875 708 1089 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_23.v common 55.80 vpr 73.89 MiB 0.09 11660 -1 -1 12 1.09 -1 -1 41996 -1 -1 97 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75664 22 19 1905 1720 1 1293 145 18 18 324 mult_36 auto 36.1 MiB 0.56 9206 17625 3291 12858 1476 73.9 MiB 0.43 0.01 14.6043 -582.638 -14.6043 14.6043 1.14 0.00362728 0.0032568 0.210045 0.188753 70 18611 42 7.94662e+06 4.07878e+06 1.34436e+06 4149.26 48.18 2.75405 2.46205 36496 347204 -1 15724 34 7348 14619 2102770 521518 15.8258 15.8258 -856.828 -15.8258 0 0 1.69344e+06 5226.66 0.68 0.80 0.36 -1 -1 0.68 0.297923 0.2702 722 1124 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_24.v common 22.46 vpr 73.96 MiB 0.09 11640 -1 -1 12 1.11 -1 -1 41140 -1 -1 98 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75740 22 19 1979 1794 1 1336 146 18 18 324 mult_36 auto 36.2 MiB 0.58 9225 22802 4501 16290 2011 74.0 MiB 0.50 0.01 13.0896 -528.26 -13.0896 13.0896 1.11 0.00377773 0.00336387 0.240965 0.213752 72 18858 24 7.94662e+06 4.09226e+06 1.37338e+06 4238.83 14.90 1.81575 1.60356 36820 354972 -1 15957 19 7822 15091 1983050 420497 14.3895 14.3895 -819.9 -14.3895 0 0 1.72054e+06 5310.31 0.69 0.60 0.37 -1 -1 0.69 0.193754 0.175742 739 1179 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_25.v common 17.15 vpr 75.23 MiB 0.10 11928 -1 -1 12 1.21 -1 -1 41264 -1 -1 105 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77032 22 19 2073 1871 1 1394 153 18 18 324 mult_36 auto 37.7 MiB 0.60 9750 25511 5290 17941 2280 75.2 MiB 0.62 0.01 13.5055 -559.507 -13.5055 13.5055 1.13 0.00467513 0.0042537 0.307937 0.275736 74 18692 37 7.94662e+06 4.18656e+06 1.40368e+06 4332.34 9.25 1.60648 1.43497 37144 362180 -1 16122 19 7468 14762 1955922 421362 14.762 14.762 -838.806 -14.762 0 0 1.74764e+06 5393.95 0.68 0.64 0.38 -1 -1 0.68 0.217124 0.199269 791 1232 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_26.v common 70.93 vpr 75.61 MiB 0.10 12264 -1 -1 12 1.28 -1 -1 41280 -1 -1 106 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77424 22 19 2130 1928 1 1451 154 18 18 324 mult_36 auto 38.2 MiB 0.62 10049 23638 4869 16688 2081 75.6 MiB 0.54 0.01 13.4136 -653.905 -13.4136 13.4136 1.10 0.00444221 0.00394253 0.258654 0.229352 70 21494 48 7.94662e+06 4.20003e+06 1.34436e+06 4149.26 62.82 2.94622 2.59764 36496 347204 -1 17791 21 9710 19238 2440944 498687 14.2011 14.2011 -976.389 -14.2011 0 0 1.69344e+06 5226.66 0.70 0.77 0.35 -1 -1 0.70 0.244541 0.220927 811 1270 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_27.v common 20.35 vpr 75.77 MiB 0.10 12564 -1 -1 12 1.38 -1 -1 41524 -1 -1 114 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77588 22 19 2238 2019 1 1541 163 18 18 324 mult_36 auto 38.3 MiB 0.63 11092 23748 4608 17044 2096 75.8 MiB 0.57 0.01 13.5389 -623.293 -13.5389 13.5389 1.15 0.00415415 0.00367693 0.271693 0.242188 74 21847 45 7.94662e+06 4.70381e+06 1.40368e+06 4332.34 12.09 1.95011 1.73623 37144 362180 -1 18368 19 9444 18511 2141204 450957 14.8738 14.8738 -938.334 -14.8738 0 0 1.74764e+06 5393.95 0.68 0.70 0.38 -1 -1 0.68 0.23239 0.211533 851 1323 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_28.v common 26.93 vpr 76.05 MiB 0.10 12604 -1 -1 12 1.34 -1 -1 41296 -1 -1 117 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77876 22 19 2299 2080 1 1575 166 18 18 324 mult_36 auto 38.7 MiB 0.66 11385 23878 4753 17293 1832 76.1 MiB 0.51 0.01 13.7819 -645.429 -13.7819 13.7819 1.09 0.0037693 0.00337438 0.236851 0.209851 78 21348 48 7.94662e+06 4.74422e+06 1.46313e+06 4515.82 18.63 2.37956 2.10017 38112 383040 -1 18763 20 9054 17624 2428981 486780 14.8381 14.8381 -1102.44 -14.8381 0 0 1.83526e+06 5664.38 0.76 0.78 0.40 -1 -1 0.76 0.261141 0.237269 874 1365 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_29.v common 22.67 vpr 77.06 MiB 0.10 13080 -1 -1 12 1.45 -1 -1 41472 -1 -1 121 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78908 22 19 2400 2164 1 1649 171 22 22 484 mult_36 auto 39.3 MiB 0.67 11846 28611 5970 20327 2314 77.1 MiB 0.71 0.01 12.8621 -620.195 -12.8621 12.8621 1.75 0.00455808 0.00410082 0.351705 0.313538 74 22926 28 1.29336e+07 5.19411e+06 2.15943e+06 4461.62 12.26 1.72001 1.54602 56202 562081 -1 19691 19 9333 17967 2770243 565792 13.8175 13.8175 -1016.91 -13.8175 0 0 2.68771e+06 5553.12 1.14 0.85 0.53 -1 -1 1.14 0.268822 0.246689 915 1415 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_30.v common 36.89 vpr 84.13 MiB 0.11 13160 -1 -1 12 1.52 -1 -1 41756 -1 -1 127 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86148 22 19 2474 2238 1 1692 177 22 22 484 mult_36 auto 39.9 MiB 0.71 12099 25473 4809 18768 1896 77.8 MiB 0.62 0.01 13.0692 -679.409 -13.0692 13.0692 1.92 0.00501036 0.00452466 0.293123 0.260604 70 24129 45 1.29336e+07 5.27494e+06 2.06816e+06 4273.05 26.16 2.76523 2.44649 55234 538945 -1 20460 20 10629 20463 2376269 501516 14.0716 14.0716 -1193.87 -14.0716 0 0 2.60483e+06 5381.88 1.11 0.78 0.55 -1 -1 1.11 0.268415 0.244479 947 1470 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_31.v common 34.38 vpr 85.84 MiB 0.11 13344 -1 -1 12 1.64 -1 -1 42040 -1 -1 137 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87896 22 19 2603 2350 1 1765 187 22 22 484 mult_36 auto 40.6 MiB 0.76 12701 25819 4752 19093 1974 78.4 MiB 0.57 0.01 14.0863 -716.492 -14.0863 14.0863 1.85 0.00500755 0.00444188 0.265202 0.235989 82 23513 46 1.29336e+07 5.40966e+06 2.34651e+06 4848.17 23.26 2.73146 2.43249 58614 618607 -1 20193 17 8844 17184 2229729 459068 15.3393 15.3393 -997.432 -15.3393 0 0 2.93652e+06 6067.20 1.27 0.72 0.64 -1 -1 1.27 0.244415 0.224036 1001 1549 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_32.v common 25.13 vpr 78.47 MiB 0.12 13452 -1 -1 12 1.69 -1 -1 43024 -1 -1 141 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80356 22 19 2694 2441 1 1849 191 22 22 484 mult_36 auto 41.3 MiB 0.78 13059 27092 4776 20398 1918 78.5 MiB 0.66 0.01 13.3198 -641.365 -13.3198 13.3198 1.92 0.00558533 0.00505778 0.31031 0.275683 78 24080 23 1.29336e+07 5.46355e+06 2.25108e+06 4650.99 13.62 1.87034 1.66524 57650 594765 -1 21354 19 10093 19286 2851620 586355 14.358 14.358 -1058.58 -14.358 0 0 2.82299e+06 5832.63 1.28 0.91 0.62 -1 -1 1.28 0.295385 0.271216 1040 1621 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_33.v common 28.78 vpr 78.96 MiB 0.12 14072 -1 -1 13 1.82 -1 -1 43404 -1 -1 140 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80860 22 19 2787 2517 1 1916 191 22 22 484 mult_36 auto 41.7 MiB 0.82 14422 30386 6200 21904 2282 79.0 MiB 0.70 0.01 13.6097 -688.757 -13.6097 13.6097 1.86 0.00523664 0.004648 0.3194 0.281534 74 29062 50 1.29336e+07 5.84608e+06 2.15943e+06 4461.62 17.14 2.01495 1.78729 56202 562081 -1 23880 22 11350 22211 2848877 581826 14.9488 14.9488 -1314.75 -14.9488 0 0 2.68771e+06 5553.12 1.14 0.95 0.57 -1 -1 1.14 0.333535 0.304011 1070 1664 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_34.v common 83.97 vpr 79.39 MiB 0.13 14176 -1 -1 13 1.76 -1 -1 43744 -1 -1 142 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81300 22 19 2834 2564 1 1944 193 22 22 484 mult_36 auto 42.1 MiB 0.77 13791 28600 5236 21229 2135 79.4 MiB 0.69 0.01 14.5294 -761.142 -14.5294 14.5294 1.79 0.00569326 0.00515719 0.329891 0.292133 70 28880 49 1.29336e+07 5.87302e+06 2.06816e+06 4273.05 72.82 3.74488 3.30996 55234 538945 -1 23860 20 11587 22836 2680654 570175 15.7824 15.7824 -1283.46 -15.7824 0 0 2.60483e+06 5381.88 1.14 0.88 0.51 -1 -1 1.14 0.30729 0.278705 1084 1692 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_35.v common 37.65 vpr 88.31 MiB 0.13 14248 -1 -1 13 1.86 -1 -1 44008 -1 -1 150 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90432 22 19 2941 2654 1 2012 201 22 22 484 mult_36 auto 42.5 MiB 0.82 14532 36069 7700 25767 2602 79.7 MiB 0.84 0.01 14.0213 -739.439 -14.0213 14.0213 1.84 0.00598969 0.00538531 0.382005 0.33686 76 28178 45 1.29336e+07 5.9808e+06 2.20457e+06 4554.90 25.74 3.30005 2.9236 56682 573177 -1 23956 19 11532 21980 2609474 548831 15.1993 15.1993 -1309.75 -15.1993 0 0 2.73077e+06 5642.09 1.19 0.84 0.59 -1 -1 1.19 0.300354 0.274611 1131 1750 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_36.v common 38.84 vpr 91.09 MiB 0.13 14436 -1 -1 13 2.01 -1 -1 42652 -1 -1 153 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93276 22 19 3011 2724 1 2050 204 22 22 484 mult_36 auto 43.0 MiB 0.90 15723 37404 7327 27337 2740 80.5 MiB 0.94 0.01 13.9037 -756.483 -13.9037 13.9037 1.90 0.00636644 0.00580903 0.441613 0.392589 86 28231 30 1.29336e+07 6.02122e+06 2.45963e+06 5081.88 26.06 3.23808 2.88558 60066 651485 -1 24645 20 11448 22194 3010036 593381 15.1209 15.1209 -1153.17 -15.1209 0 0 3.08119e+06 6366.09 1.36 1.02 0.68 -1 -1 1.36 0.356044 0.327103 1168 1801 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_37.v common 42.03 vpr 97.78 MiB 0.14 14952 -1 -1 13 2.08 -1 -1 42796 -1 -1 158 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100124 22 19 3132 2828 1 2123 210 24 24 576 mult_36 auto 43.5 MiB 0.93 15478 34530 6609 25587 2334 80.6 MiB 0.81 0.01 14.8592 -896.227 -14.8592 14.8592 2.24 0.00550894 0.0049023 0.362647 0.317567 76 29907 34 1.56141e+07 6.48458e+06 2.61600e+06 4541.67 28.58 3.24104 2.85965 67070 679911 -1 24731 22 12580 24989 2509549 525024 15.6537 15.6537 -1320.71 -15.6537 0 0 3.24203e+06 5628.53 1.39 0.91 0.72 -1 -1 1.39 0.352945 0.319998 1192 1872 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_38.v common 42.30 vpr 98.39 MiB 0.14 15032 -1 -1 13 2.12 -1 -1 44912 -1 -1 160 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100748 22 19 3159 2855 1 2172 212 24 24 576 mult_36 auto 43.9 MiB 0.87 15244 33655 6354 25018 2283 81.2 MiB 0.85 0.02 14.3615 -911.426 -14.3615 14.3615 2.20 0.00667007 0.00578929 0.396245 0.348927 82 27982 39 1.56141e+07 6.51152e+06 2.78508e+06 4835.20 28.51 3.18206 2.82258 69370 733739 -1 23895 31 11394 21584 2846888 676513 15.0741 15.0741 -1253.71 -15.0741 0 0 3.48632e+06 6052.64 1.55 1.07 0.77 -1 -1 1.55 0.413772 0.372981 1207 1880 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_39.v common 42.11 vpr 102.20 MiB 0.15 15064 -1 -1 13 2.30 -1 -1 43548 -1 -1 169 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 104652 22 19 3284 2963 1 2259 221 24 24 576 mult_36 auto 44.6 MiB 0.98 16908 38240 7734 28231 2275 81.9 MiB 0.91 0.02 15.0845 -938.468 -15.0845 15.0845 2.27 0.00678808 0.00608543 0.409131 0.361406 80 30017 29 1.56141e+07 6.63277e+06 2.72095e+06 4723.87 28.02 3.29466 2.92445 68798 719145 -1 26444 20 11543 22456 2491688 519425 16.0477 16.0477 -1447.32 -16.0477 0 0 3.41546e+06 5929.62 1.58 0.86 0.75 -1 -1 1.58 0.332829 0.303336 1267 1957 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_40.v common 43.72 vpr 102.66 MiB 0.14 15192 -1 -1 13 2.20 -1 -1 44872 -1 -1 169 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 105124 22 19 3343 3022 1 2282 221 24 24 576 mult_36 auto 45.1 MiB 0.99 15971 40241 8653 29412 2176 82.3 MiB 1.04 0.02 14.3691 -842.175 -14.3691 14.3691 2.28 0.00708836 0.00642709 0.482931 0.42597 80 29198 32 1.56141e+07 6.63277e+06 2.72095e+06 4723.87 29.68 3.63044 3.21388 68798 719145 -1 25487 20 12466 24380 3222240 683842 15.2539 15.2539 -1465.98 -15.2539 0 0 3.41546e+06 5929.62 1.50 1.06 0.70 -1 -1 1.50 0.371732 0.334725 1284 1997 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_41.v common 45.88 vpr 99.61 MiB 0.14 15752 -1 -1 13 2.33 -1 -1 45216 -1 -1 175 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101996 22 19 3448 3110 1 2364 228 24 24 576 mult_36 auto 45.4 MiB 0.96 17699 44076 9913 31794 2369 82.4 MiB 1.13 0.02 14.4049 -962.182 -14.4049 14.4049 2.13 0.00764359 0.00698681 0.542549 0.481298 86 30539 30 1.56141e+07 7.1096e+06 2.91907e+06 5067.82 31.73 4.1231 3.66865 71098 772847 -1 27416 21 12488 24230 3101666 617542 14.9061 14.9061 -1695.34 -14.9061 0 0 3.65856e+06 6351.67 1.58 1.05 0.73 -1 -1 1.58 0.398843 0.363022 1333 2054 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_42.v common 32.05 vpr 83.88 MiB 0.16 15880 -1 -1 13 2.55 -1 -1 43764 -1 -1 179 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85888 22 19 3510 3172 1 2403 232 24 24 576 mult_36 auto 45.8 MiB 1.02 16831 42240 7906 31712 2622 83.0 MiB 1.08 0.02 14.1935 -958.869 -14.1935 14.1935 2.26 0.00804491 0.00728525 0.496944 0.439132 76 33523 46 1.56141e+07 7.16349e+06 2.61600e+06 4541.67 17.36 2.57566 2.2773 67070 679911 -1 27636 20 13303 26055 3224289 659664 15.1175 15.1175 -1542.5 -15.1175 0 0 3.24203e+06 5628.53 1.46 1.08 0.69 -1 -1 1.46 0.381725 0.347245 1352 2097 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_43.v common 50.38 vpr 101.89 MiB 0.16 15900 -1 -1 13 2.53 -1 -1 41920 -1 -1 182 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 104340 22 19 3598 3243 1 2469 235 24 24 576 mult_36 auto 46.3 MiB 1.07 18464 42227 7907 31372 2948 84.2 MiB 0.98 0.02 14.4433 -1013.2 -14.4433 14.4433 2.22 0.00675422 0.00601147 0.427399 0.374584 80 33249 42 1.56141e+07 7.2039e+06 2.72095e+06 4723.87 35.39 4.06085 3.58311 68798 719145 -1 29126 22 13889 27613 3440909 697855 15.1167 15.1167 -1574.18 -15.1167 0 0 3.41546e+06 5929.62 1.56 1.18 0.73 -1 -1 1.56 0.434051 0.395744 1391 2138 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_44.v common 39.62 vpr 85.96 MiB 0.16 16312 -1 -1 13 2.72 -1 -1 46160 -1 -1 189 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88020 22 19 3689 3334 1 2527 242 24 24 576 mult_36 auto 47.0 MiB 1.08 18297 37892 6890 28915 2087 84.0 MiB 0.94 0.02 14.2676 -1007.02 -14.2676 14.2676 2.25 0.00758938 0.00683334 0.411229 0.359083 78 34845 34 1.56141e+07 7.29821e+06 2.67122e+06 4637.53 24.52 3.28044 2.88489 68222 705597 -1 29910 21 14451 28604 3175203 664935 14.7842 14.7842 -1606.43 -14.7842 0 0 3.35110e+06 5817.88 1.56 1.17 0.73 -1 -1 1.56 0.442148 0.399249 1433 2210 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_45.v common 40.95 vpr 89.10 MiB 0.17 16440 -1 -1 13 2.94 -1 -1 42272 -1 -1 191 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91236 22 19 3763 3391 1 2591 245 24 24 576 mult_36 auto 47.1 MiB 1.09 19828 46205 9272 34146 2787 84.4 MiB 1.15 0.02 14.1039 -934.796 -14.1039 14.1039 2.29 0.00667988 0.00597382 0.507906 0.444353 76 39625 50 1.56141e+07 7.72115e+06 2.61600e+06 4541.67 25.38 3.37523 2.98572 67070 679911 -1 31761 20 14755 28525 4024969 807559 14.8165 14.8165 -1555.63 -14.8165 0 0 3.24203e+06 5628.53 1.44 1.23 0.70 -1 -1 1.44 0.397812 0.361983 1453 2234 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_46.v common 49.01 vpr 108.74 MiB 0.17 16452 -1 -1 13 2.93 -1 -1 44088 -1 -1 195 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 111348 22 19 3845 3473 1 2635 249 24 24 576 mult_36 auto 48.0 MiB 1.10 20154 45663 9165 33824 2674 85.0 MiB 1.17 0.02 14.7485 -1074.73 -14.7485 14.7485 2.31 0.00837177 0.00724179 0.512039 0.446338 94 33260 22 1.56141e+07 7.77504e+06 3.14081e+06 5452.80 32.86 3.85176 3.40667 73970 838453 -1 30819 20 12795 25082 3186809 645504 15.4142 15.4142 -1823.42 -15.4142 0 0 3.92250e+06 6809.89 1.83 1.13 0.91 -1 -1 1.83 0.422002 0.384716 1482 2297 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_47.v common 38.46 vpr 91.25 MiB 0.18 16988 -1 -1 13 3.07 -1 -1 46460 -1 -1 206 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93436 22 19 3983 3594 1 2724 260 24 24 576 mult_36 auto 48.8 MiB 1.17 19744 48342 9809 35889 2644 85.9 MiB 1.22 0.02 14.612 -1002.61 -14.612 14.612 2.30 0.0083653 0.00753025 0.539166 0.476981 78 36612 38 1.56141e+07 7.92323e+06 2.67122e+06 4637.53 22.41 3.62415 3.19908 68222 705597 -1 31803 19 15450 30490 3314220 718969 15.3638 15.3638 -1525.05 -15.3638 0 0 3.35110e+06 5817.88 1.52 1.18 0.73 -1 -1 1.52 0.435423 0.395489 1559 2386 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_48.v common 53.00 vpr 105.41 MiB 0.18 17116 -1 -1 13 3.17 -1 -1 42424 -1 -1 202 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 107944 22 19 4025 3636 1 2760 256 24 24 576 mult_36 auto 49.1 MiB 1.15 20318 44916 8677 33552 2687 86.2 MiB 1.17 0.02 14.2796 -1177.75 -14.2796 14.2796 2.31 0.00773305 0.00665789 0.502081 0.436574 80 36287 32 1.56141e+07 7.86934e+06 2.72095e+06 4723.87 36.81 4.63311 4.08539 68798 719145 -1 32114 20 15079 29678 3404435 694149 15.1321 15.1321 -1795.83 -15.1321 0 0 3.41546e+06 5929.62 1.50 1.19 0.74 -1 -1 1.50 0.448207 0.408688 1547 2409 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_49.v common 127.86 vpr 90.23 MiB 0.19 17596 -1 -1 13 3.27 -1 -1 46944 -1 -1 213 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92396 22 19 4164 3758 1 2857 268 24 24 576 mult_36 auto 50.2 MiB 1.19 21574 46870 8794 35609 2467 86.9 MiB 1.14 0.02 15.5437 -1030.21 -15.5437 15.5437 2.22 0.00857651 0.00770935 0.490826 0.429789 80 38344 32 1.56141e+07 8.41354e+06 2.72095e+06 4723.87 111.15 5.42728 4.73596 68798 719145 -1 33307 32 14989 29216 4234242 968043 16.6715 16.6715 -1658.14 -16.6715 0 0 3.41546e+06 5929.62 1.58 1.68 0.74 -1 -1 1.58 0.643047 0.575913 1622 2498 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_50.v common 47.36 vpr 93.09 MiB 0.20 17596 -1 -1 13 3.23 -1 -1 43124 -1 -1 212 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95328 22 19 4190 3784 1 2864 267 24 24 576 mult_36 auto 50.7 MiB 1.21 21413 47512 8620 36199 2693 88.2 MiB 1.23 0.02 14.283 -1068.7 -14.283 14.283 2.22 0.00748889 0.00660657 0.529145 0.465009 78 39449 30 1.56141e+07 8.40006e+06 2.67122e+06 4637.53 30.90 3.5326 3.08543 68222 705597 -1 33813 19 17517 34620 4322793 876296 14.8626 14.8626 -2433.42 -14.8626 0 0 3.35110e+06 5817.88 1.49 1.38 0.73 -1 -1 1.49 0.433314 0.386677 1618 2505 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_51.v common 36.70 vpr 92.38 MiB 0.20 17776 -1 -1 13 3.38 -1 -1 43380 -1 -1 216 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94600 22 19 4305 3882 1 2950 271 24 24 576 mult_36 auto 51.3 MiB 1.23 21503 48451 9447 35786 3218 89.0 MiB 1.25 0.02 14.8234 -1161.47 -14.8234 14.8234 2.33 0.00888307 0.0079791 0.540198 0.475854 80 39434 32 1.56141e+07 8.45395e+06 2.72095e+06 4723.87 19.96 3.4821 3.07853 68798 719145 -1 34273 22 16572 32598 3393337 718391 15.3638 15.3638 -1976.32 -15.3638 0 0 3.41546e+06 5929.62 1.56 1.29 0.74 -1 -1 1.56 0.521 0.47361 1666 2571 -1 -1 -1 -1 + k6_frac_N8_22nm.xml fir_nopipe_52.v common 54.78 vpr 92.51 MiB 0.20 17820 -1 -1 13 3.39 -1 -1 47376 -1 -1 227 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94732 22 19 4363 3940 1 3005 282 24 24 576 mult_36 auto 51.6 MiB 1.30 21948 54798 10640 40566 3592 89.2 MiB 1.39 0.02 14.659 -1175.55 -14.659 14.659 2.25 0.00852514 0.00768342 0.594411 0.518031 78 41387 40 1.56141e+07 8.60214e+06 2.67122e+06 4637.53 37.84 3.95997 3.44348 68222 705597 -1 35199 22 18930 36942 4261492 904260 15.0237 15.0237 -1754.87 -15.0237 0 0 3.35110e+06 5817.88 1.48 1.48 0.73 -1 -1 1.48 0.519199 0.465017 1697 2610 -1 -1 -1 -1 + k6_frac_ripple_N8_22nm.xml fir_pipe_14.v common 10.05 vpr 72.95 MiB 0.06 10788 -1 -1 1 0.25 -1 -1 39724 -1 -1 81 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74696 22 19 1974 1653 1 1020 126 16 16 256 mult_36 auto 34.8 MiB 0.46 5788 15246 2952 10367 1927 72.9 MiB 0.34 0.01 4.04336 -1070.24 -4.04336 4.04336 0.84 0.00268357 0.00238632 0.145786 0.129302 54 11617 36 6.52434e+06 2.71588e+06 829453. 3240.05 5.27 0.886829 0.779085 26108 202796 -1 8765 20 4043 4643 679742 177803 4.29396 4.29396 -1260.94 -4.29396 0 0 1.02522e+06 4004.78 0.37 0.28 0.20 -1 -1 0.37 0.13442 0.121155 605 649 247 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_15.v common 10.87 vpr 73.82 MiB 0.07 11192 -1 -1 1 0.28 -1 -1 40688 -1 -1 88 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75592 22 19 2144 1789 1 1119 134 16 16 256 mult_36 auto 35.8 MiB 0.45 6706 17918 3349 11724 2845 73.8 MiB 0.41 0.01 3.91806 -1208.29 -3.91806 3.91806 0.83 0.00290709 0.00258053 0.169669 0.150494 56 13105 38 6.52434e+06 3.20969e+06 849745. 3319.32 5.93 1.01625 0.897913 26364 208198 -1 10504 20 4536 5144 845390 217291 4.29396 4.29396 -1424.43 -4.29396 0 0 1.04740e+06 4091.43 0.38 0.30 0.21 -1 -1 0.38 0.141257 0.127142 654 704 266 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_16.v common 25.26 vpr 74.17 MiB 0.06 11076 -1 -1 1 0.28 -1 -1 40536 -1 -1 91 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75948 22 19 2218 1846 1 1161 137 16 16 256 mult_36 auto 36.2 MiB 0.48 6636 16375 2798 11755 1822 74.2 MiB 0.38 0.01 3.91806 -1215.01 -3.91806 3.91806 0.79 0.00328152 0.00295763 0.166778 0.150228 52 14559 39 6.52434e+06 3.25161e+06 808720. 3159.06 20.48 1.93862 1.72143 25852 197779 -1 10459 18 4793 5526 915444 227172 4.29396 4.29396 -1451.88 -4.29396 0 0 1.00038e+06 3907.74 0.36 0.35 0.18 -1 -1 0.36 0.155883 0.142785 683 723 285 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_17.v common 13.17 vpr 75.78 MiB 0.08 12064 -1 -1 1 0.32 -1 -1 40328 -1 -1 103 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77596 22 19 2536 2130 1 1274 149 16 16 256 mult_36 auto 37.9 MiB 0.59 8152 21031 3790 14243 2998 75.8 MiB 0.47 0.01 4.02136 -1409.17 -4.02136 4.02136 0.83 0.00328901 0.00291582 0.200848 0.177789 56 16419 50 6.52434e+06 3.4193e+06 849745. 3319.32 7.76 1.24598 1.09349 26364 208198 -1 12719 20 5516 6680 1156784 276575 4.66986 4.66986 -1796.69 -4.66986 0 0 1.04740e+06 4091.43 0.38 0.42 0.17 -1 -1 0.38 0.181054 0.163083 770 851 304 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_18.v common 11.42 vpr 75.87 MiB 0.08 11912 -1 -1 1 0.33 -1 -1 40780 -1 -1 107 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77688 22 19 2610 2187 1 1316 153 16 16 256 mult_36 auto 37.9 MiB 0.58 7981 21012 3685 14958 2369 75.9 MiB 0.50 0.01 4.04336 -1417.25 -4.04336 4.04336 0.84 0.00362491 0.0032235 0.206439 0.183948 58 14504 34 6.52434e+06 3.47519e+06 871168. 3403.00 5.88 1.15703 1.01392 26872 219187 -1 11902 18 5104 6073 954142 234183 4.41926 4.41926 -1649.63 -4.41926 0 0 1.09288e+06 4269.05 0.45 0.36 0.23 -1 -1 0.45 0.164069 0.147591 798 870 323 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_19.v common 11.50 vpr 76.86 MiB 0.09 12288 -1 -1 1 0.35 -1 -1 40572 -1 -1 113 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78704 22 19 2778 2321 1 1410 160 16 16 256 mult_36 auto 39.1 MiB 0.66 8515 23596 3975 16214 3407 76.9 MiB 0.56 0.01 4.04336 -1488.56 -4.04336 4.04336 0.85 0.00372829 0.00330147 0.229098 0.203436 60 15988 35 6.52434e+06 3.95503e+06 890343. 3477.90 5.70 1.24423 1.09068 27128 224764 -1 12515 19 5320 6298 1016431 249744 4.39726 4.39726 -1748.51 -4.39726 0 0 1.11577e+06 4358.47 0.42 0.41 0.23 -1 -1 0.42 0.190284 0.171498 846 925 342 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_20.v common 18.57 vpr 77.41 MiB 0.09 12420 -1 -1 1 0.37 -1 -1 40804 -1 -1 118 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79264 22 19 2852 2378 1 1454 165 16 16 256 mult_36 auto 39.6 MiB 0.61 8805 25025 4493 17234 3298 77.4 MiB 0.64 0.01 3.91806 -1579.93 -3.91806 3.91806 0.84 0.00434802 0.0038317 0.265552 0.233389 60 15194 28 6.52434e+06 4.0249e+06 890343. 3477.90 12.66 1.90133 1.67184 27128 224764 -1 12414 18 5230 6047 906221 230877 4.41926 4.41926 -1795.99 -4.41926 0 0 1.11577e+06 4358.47 0.42 0.39 0.23 -1 -1 0.42 0.196499 0.178056 875 944 361 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_21.v common 11.51 vpr 78.15 MiB 0.10 12900 -1 -1 1 0.40 -1 -1 41244 -1 -1 122 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80028 22 19 3057 2549 1 1559 169 16 16 256 mult_36 auto 40.4 MiB 0.72 9294 23986 4205 16112 3669 78.2 MiB 0.63 0.01 3.91806 -1673.87 -3.91806 3.91806 0.83 0.0048221 0.00430214 0.261035 0.231117 60 16102 32 6.52434e+06 4.0808e+06 890343. 3477.90 5.55 1.37985 1.21071 27128 224764 -1 13110 19 5731 6585 961965 242612 4.39726 4.39726 -1905.39 -4.39726 0 0 1.11577e+06 4358.47 0.40 0.38 0.20 -1 -1 0.40 0.190706 0.171441 932 1017 380 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_22.v common 13.18 vpr 78.68 MiB 0.10 13056 -1 -1 1 0.43 -1 -1 40864 -1 -1 125 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80564 22 19 3131 2606 1 1599 172 16 16 256 mult_36 auto 40.9 MiB 0.63 9906 23594 3756 16067 3771 78.7 MiB 0.60 0.01 3.91806 -1726.2 -3.91806 3.91806 0.83 0.00443925 0.00390764 0.233802 0.207211 62 18697 44 6.52434e+06 4.12272e+06 916467. 3579.95 7.05 1.69891 1.48177 27384 229598 -1 13821 19 6108 7056 1073892 268256 4.29396 4.29396 -1968.37 -4.29396 0 0 1.13630e+06 4438.68 0.43 0.44 0.24 -1 -1 0.43 0.220254 0.19927 961 1036 399 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_23.v common 18.06 vpr 79.24 MiB 0.12 13448 -1 -1 1 0.43 -1 -1 42932 -1 -1 133 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81140 22 19 3301 2742 1 1700 181 18 18 324 mult_36 auto 41.6 MiB 0.78 10134 29308 5513 20821 2974 79.2 MiB 0.71 0.01 3.91806 -1798.96 -3.91806 3.91806 1.15 0.00468676 0.00416636 0.294477 0.262101 58 18464 32 8.04299e+06 4.63052e+06 1.14310e+06 3528.09 10.72 1.98285 1.74586 34680 290288 -1 15000 21 6769 7672 1293687 308839 4.41926 4.41926 -2100.11 -4.41926 0 0 1.43297e+06 4422.75 0.56 0.50 0.30 -1 -1 0.56 0.232795 0.208787 1012 1091 418 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_24.v common 14.15 vpr 79.80 MiB 0.11 13528 -1 -1 1 0.46 -1 -1 42420 -1 -1 137 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81716 22 19 3375 2799 1 1743 185 18 18 324 mult_36 auto 42.0 MiB 0.80 10746 31745 5978 22247 3520 79.8 MiB 0.77 0.01 3.91806 -1829.21 -3.91806 3.91806 1.13 0.00441858 0.00392887 0.305667 0.270678 60 18690 34 8.04299e+06 4.68641e+06 1.16833e+06 3605.96 6.76 1.4934 1.30933 35004 297736 -1 15217 19 6281 7275 1148324 268174 4.39726 4.39726 -2165.74 -4.39726 0 0 1.46313e+06 4515.82 0.59 0.48 0.30 -1 -1 0.59 0.237781 0.215165 1041 1110 437 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_25.v common 18.10 vpr 80.84 MiB 0.11 14008 -1 -1 1 0.49 -1 -1 42376 -1 -1 146 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82784 22 19 3615 3005 1 1847 194 18 18 324 mult_36 auto 43.1 MiB 0.81 11053 33293 6547 23214 3532 80.8 MiB 0.81 0.01 3.91806 -1947.6 -3.91806 3.91806 1.15 0.00510199 0.00452917 0.328137 0.290088 56 21950 50 8.04299e+06 4.81218e+06 1.11497e+06 3441.27 10.52 2.14081 1.87821 34036 275796 -1 17260 16 7412 8865 1542883 378445 4.41926 4.41926 -2416.32 -4.41926 0 0 1.37338e+06 4238.83 0.53 0.53 0.28 -1 -1 0.53 0.219899 0.198929 1107 1201 456 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_26.v common 16.26 vpr 81.27 MiB 0.12 14216 -1 -1 1 0.50 -1 -1 42416 -1 -1 148 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83224 22 19 3689 3062 1 1888 196 18 18 324 mult_36 auto 43.5 MiB 0.87 10855 33198 5947 23591 3660 81.3 MiB 0.85 0.01 3.91806 -2006.5 -3.91806 3.91806 1.16 0.00513341 0.00454931 0.343253 0.305489 60 20287 41 8.04299e+06 4.84013e+06 1.16833e+06 3605.96 8.57 2.07762 1.82004 35004 297736 -1 16156 18 7125 8171 1186171 282174 4.41926 4.41926 -2375.73 -4.41926 0 0 1.46313e+06 4515.82 0.57 0.46 0.30 -1 -1 0.57 0.229554 0.206623 1135 1220 475 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_27.v common 14.68 vpr 82.22 MiB 0.12 14832 -1 -1 1 0.53 -1 -1 43124 -1 -1 156 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84192 22 19 3871 3210 1 1998 205 18 18 324 mult_36 auto 44.6 MiB 0.94 11991 32821 5669 23812 3340 82.2 MiB 0.81 0.01 4.04336 -2062.16 -4.04336 4.04336 1.07 0.00522055 0.0045872 0.311377 0.274473 68 20260 30 8.04299e+06 5.34793e+06 1.31159e+06 4048.11 6.73 1.72036 1.50603 36620 334356 -1 16834 17 6782 7875 1360678 322192 4.41926 4.41926 -2360.26 -4.41926 0 0 1.63345e+06 5041.52 0.63 0.54 0.35 -1 -1 0.63 0.248518 0.223977 1191 1275 494 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_28.v common 15.55 vpr 82.67 MiB 0.12 14624 -1 -1 1 0.54 -1 -1 42344 -1 -1 160 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84652 22 19 3945 3267 1 2043 209 18 18 324 mult_36 auto 45.1 MiB 0.96 12581 32449 5248 23934 3267 82.7 MiB 0.88 0.01 3.91806 -2156.02 -3.91806 3.91806 1.15 0.00541258 0.00479317 0.339124 0.302635 62 23123 50 8.04299e+06 5.40382e+06 1.20291e+06 3712.69 7.48 1.95645 1.71705 35328 304176 -1 17891 18 7713 8691 1323990 316931 4.41926 4.41926 -2542.49 -4.41926 0 0 1.49010e+06 4599.06 0.60 0.54 0.31 -1 -1 0.60 0.271215 0.245231 1219 1294 513 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_29.v common 25.68 vpr 83.55 MiB 0.13 15096 -1 -1 1 0.58 -1 -1 42700 -1 -1 170 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85552 22 19 4159 3447 1 2157 220 22 22 484 mult_36 auto 46.0 MiB 0.99 14031 38674 6978 28745 2951 83.5 MiB 0.98 0.02 3.79276 -2269.45 -3.79276 3.79276 1.89 0.00597164 0.00534822 0.377587 0.335493 58 24731 26 1.30842e+07 5.93957e+06 1.75961e+06 3635.55 15.37 2.44649 2.14539 52570 450426 -1 20475 17 8345 9728 1667077 371298 4.41926 4.41926 -2799.86 -4.41926 0 0 2.20457e+06 4554.90 0.92 0.62 0.46 -1 -1 0.92 0.268411 0.242343 1283 1367 532 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_30.v common 22.25 vpr 84.38 MiB 0.13 15504 -1 -1 1 0.60 -1 -1 44472 -1 -1 173 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86404 22 19 4233 3504 1 2198 223 22 22 484 mult_36 auto 46.9 MiB 1.00 15093 42135 8014 30708 3413 84.4 MiB 1.06 0.02 3.91806 -2329.65 -3.91806 3.91806 1.87 0.006271 0.00559261 0.416165 0.370116 56 28792 43 1.30842e+07 5.98149e+06 1.71605e+06 3545.56 11.74 2.16813 1.89865 51606 428054 -1 22930 19 9213 10898 1742958 397171 4.41926 4.41926 -2970.62 -4.41926 0 0 2.11301e+06 4365.72 0.91 0.69 0.42 -1 -1 0.91 0.316283 0.285944 1311 1386 551 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_31.v common 26.13 vpr 85.13 MiB 0.14 15532 -1 -1 1 0.61 -1 -1 43592 -1 -1 179 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87172 22 19 4410 3647 1 2304 229 22 22 484 mult_36 auto 47.5 MiB 0.97 14864 45029 8706 32089 4234 85.1 MiB 1.20 0.02 3.79276 -2352.9 -3.79276 3.79276 1.79 0.00738854 0.00638951 0.479643 0.422341 58 29356 43 1.30842e+07 6.06533e+06 1.75961e+06 3635.55 15.68 2.53574 2.23424 52570 450426 -1 22363 21 9308 11150 2026392 456156 4.79516 4.79516 -3003.23 -4.79516 0 0 2.20457e+06 4554.90 0.93 0.78 0.41 -1 -1 0.93 0.354903 0.320557 1363 1441 570 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_32.v common 22.58 vpr 86.32 MiB 0.14 15688 -1 -1 1 0.66 -1 -1 44536 -1 -1 183 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88388 22 19 4484 3704 1 2346 233 22 22 484 mult_36 auto 47.9 MiB 1.00 14218 49637 9735 35851 4051 86.3 MiB 1.26 0.02 4.04336 -2404.88 -4.04336 4.04336 1.83 0.0065663 0.00586964 0.486754 0.426566 56 29212 44 1.30842e+07 6.12123e+06 1.71605e+06 3545.56 11.77 2.77181 2.43972 51606 428054 -1 22601 21 9454 10958 2065140 474479 4.39726 4.39726 -3076.33 -4.39726 0 0 2.11301e+06 4365.72 0.89 0.81 0.41 -1 -1 0.89 0.377805 0.342354 1393 1460 589 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_33.v common 22.82 vpr 87.15 MiB 0.15 17008 -1 -1 1 0.70 -1 -1 45124 -1 -1 196 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89244 22 19 4843 4029 1 2462 247 22 22 484 mult_36 auto 48.8 MiB 1.10 17389 39721 6869 29297 3555 87.2 MiB 0.98 0.02 4.04336 -2644.7 -4.04336 4.04336 1.84 0.0064696 0.00567004 0.363602 0.319194 64 30550 37 1.30842e+07 6.6989e+06 1.90554e+06 3937.06 11.77 2.15143 1.87291 54502 494576 -1 24342 17 9221 10857 2100749 452364 4.54456 4.54456 -3179.65 -4.54456 0 0 2.40101e+06 4960.76 1.02 0.71 0.50 -1 -1 1.02 0.29005 0.260526 1490 1606 608 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_34.v common 26.38 vpr 88.02 MiB 0.16 16832 -1 -1 1 0.72 -1 -1 45248 -1 -1 199 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90132 22 19 4917 4086 1 2503 250 22 22 484 mult_36 auto 49.8 MiB 1.18 17479 50618 9610 36326 4682 88.0 MiB 1.26 0.02 3.91806 -2646.04 -3.91806 3.91806 1.86 0.0067597 0.00594838 0.466266 0.409977 60 30276 48 1.30842e+07 6.74082e+06 1.79840e+06 3715.71 14.98 2.49323 2.16879 53054 462096 -1 24331 20 9884 11893 2121923 472739 4.52256 4.52256 -3280.83 -4.52256 0 0 2.25108e+06 4650.99 0.93 0.80 0.46 -1 -1 0.93 0.363967 0.327876 1519 1625 627 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_35.v common 30.36 vpr 92.12 MiB 0.16 17308 -1 -1 1 0.77 -1 -1 45864 -1 -1 207 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94332 22 19 5093 4228 1 2606 258 22 22 484 mult_36 auto 50.4 MiB 1.07 18253 47055 8739 33706 4610 87.9 MiB 1.30 0.02 3.91806 -2749.65 -3.91806 3.91806 1.91 0.00733005 0.00652667 0.500088 0.443555 66 31508 28 1.30842e+07 6.85261e+06 1.96511e+06 4060.15 18.63 3.1015 2.72036 54986 507526 -1 25415 18 9908 11498 2305798 497596 4.41926 4.41926 -3253.16 -4.41926 0 0 2.45963e+06 5081.88 1.04 0.82 0.52 -1 -1 1.04 0.342557 0.308756 1572 1680 646 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_36.v common 62.06 vpr 88.30 MiB 0.17 17348 -1 -1 1 0.77 -1 -1 45192 -1 -1 209 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 90416 22 19 5167 4285 1 2653 260 22 22 484 mult_36 auto 50.7 MiB 1.15 16590 53316 9389 39171 4756 88.3 MiB 1.33 0.02 3.79276 -2747.34 -3.79276 3.79276 1.89 0.00666101 0.00590197 0.497545 0.439914 60 28467 41 1.30842e+07 6.88056e+06 1.79840e+06 3715.71 50.53 4.58923 3.99046 53054 462096 -1 23858 20 9970 11786 1936837 444150 4.29396 4.29396 -3335.33 -4.29396 0 0 2.25108e+06 4650.99 0.95 0.73 0.46 -1 -1 0.95 0.343301 0.307149 1600 1699 665 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_37.v common 82.18 vpr 89.32 MiB 0.22 18064 -1 -1 1 0.81 -1 -1 44188 -1 -1 218 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91464 22 19 5380 4464 1 2755 270 24 24 576 mult_36 auto 52.0 MiB 1.16 19199 58694 10758 43724 4212 89.3 MiB 1.56 0.02 4.04336 -3132.4 -4.04336 4.04336 2.23 0.0081377 0.00692026 0.568847 0.493313 58 35448 34 1.57908e+07 7.40233e+06 2.08734e+06 3623.85 69.26 4.74021 4.11297 62154 534210 -1 27919 18 10934 13095 2367564 528814 4.41926 4.41926 -3837.91 -4.41926 0 0 2.61600e+06 4541.67 1.12 0.85 0.51 -1 -1 1.12 0.364184 0.329498 1662 1772 684 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_38.v common 35.40 vpr 101.15 MiB 0.17 18016 -1 -1 1 0.87 -1 -1 44372 -1 -1 220 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103576 22 19 5454 4521 1 2802 272 24 24 576 mult_36 auto 52.1 MiB 1.24 18914 54894 10013 40554 4327 89.5 MiB 1.48 0.02 4.14666 -3068.28 -4.14666 4.14666 2.31 0.00722029 0.00632889 0.528137 0.461987 66 32298 48 1.57908e+07 7.43028e+06 2.33135e+06 4047.49 21.97 3.57626 3.12331 65030 601923 -1 26227 18 9877 11245 2553466 572495 4.54456 4.54456 -3645.76 -4.54456 0 0 2.91907e+06 5067.82 1.28 0.89 0.61 -1 -1 1.28 0.365466 0.329134 1690 1791 703 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_39.v common 37.60 vpr 98.79 MiB 0.18 18360 -1 -1 1 0.90 -1 -1 44416 -1 -1 228 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101160 22 19 5629 4662 1 2909 280 24 24 576 mult_36 auto 53.5 MiB 1.29 19179 56095 9931 41790 4374 90.5 MiB 1.46 0.02 3.91806 -3244.28 -3.91806 3.91806 2.31 0.00761731 0.00674283 0.528921 0.466057 64 32640 34 1.57908e+07 7.54207e+06 2.26035e+06 3924.22 24.12 3.97779 3.46974 64454 586630 -1 27087 17 10276 12335 2179197 477869 4.54456 4.54456 -3957.84 -4.54456 0 0 2.84938e+06 4946.85 1.26 0.79 0.59 -1 -1 1.26 0.353731 0.317919 1742 1846 722 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_40.v common 29.30 vpr 90.62 MiB 0.18 18428 -1 -1 1 0.91 -1 -1 46364 -1 -1 232 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92792 22 19 5703 4719 1 2951 284 24 24 576 mult_36 auto 53.7 MiB 1.26 20994 61862 11519 45409 4934 90.6 MiB 1.69 0.02 4.04336 -3273.15 -4.04336 4.04336 2.29 0.00851328 0.00759238 0.601461 0.533451 66 38855 48 1.57908e+07 7.59797e+06 2.33135e+06 4047.49 15.50 2.99407 2.6146 65030 601923 -1 29469 18 11228 13226 2390778 520209 4.54456 4.54456 -3925.63 -4.54456 0 0 2.91907e+06 5067.82 1.29 0.88 0.60 -1 -1 1.29 0.379594 0.341549 1771 1865 741 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_41.v common 29.64 vpr 91.79 MiB 0.19 19188 -1 -1 1 0.96 -1 -1 45052 -1 -1 240 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93988 22 19 5950 4932 1 3065 293 24 24 576 mult_36 auto 54.7 MiB 1.25 20772 63473 11820 46577 5076 91.8 MiB 1.70 0.02 4.04336 -3349.73 -4.04336 4.04336 2.19 0.00814304 0.00723314 0.576644 0.503441 64 36532 42 1.57908e+07 8.10576e+06 2.26035e+06 3924.22 15.80 3.09508 2.70766 64454 586630 -1 29240 17 10713 12766 2243762 491372 4.66986 4.66986 -3960.89 -4.66986 0 0 2.84938e+06 4946.85 1.27 0.86 0.59 -1 -1 1.27 0.396852 0.357892 1841 1956 760 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_42.v common 26.33 vpr 92.29 MiB 0.19 19020 -1 -1 1 0.99 -1 -1 46912 -1 -1 242 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94508 22 19 6024 4989 1 3106 295 24 24 576 mult_36 auto 55.3 MiB 1.31 21802 66022 11686 48315 6021 92.3 MiB 1.69 0.02 4.16866 -3463.61 -4.16866 4.16866 2.17 0.00814768 0.00714142 0.589629 0.516349 68 32641 20 1.57908e+07 8.13371e+06 2.39371e+06 4155.74 12.43 2.79154 2.43811 65606 615345 -1 28678 16 10697 12450 1920283 434376 4.54456 4.54456 -3829.45 -4.54456 0 0 2.98162e+06 5176.42 1.38 0.82 0.61 -1 -1 1.38 0.413042 0.373557 1869 1975 779 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_43.v common 41.57 vpr 106.07 MiB 0.19 19532 -1 -1 1 1.04 -1 -1 46068 -1 -1 250 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 108612 22 19 6198 5129 1 3209 303 24 24 576 mult_36 auto 56.1 MiB 1.35 22653 62340 10986 46329 5025 93.1 MiB 1.69 0.03 4.16866 -3552.83 -4.16866 4.16866 2.30 0.00860819 0.00766973 0.581934 0.510174 70 35767 26 1.57908e+07 8.2455e+06 2.45377e+06 4260.01 27.03 4.60078 4.01654 66754 640332 -1 30411 19 11175 13101 2403237 536298 4.66986 4.66986 -4067.82 -4.66986 0 0 3.09179e+06 5367.68 1.38 0.96 0.66 -1 -1 1.38 0.451469 0.406705 1921 2030 798 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_44.v common 42.04 vpr 108.31 MiB 0.20 19680 -1 -1 1 1.04 -1 -1 47240 -1 -1 253 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 110908 22 19 6272 5186 1 3253 306 24 24 576 mult_36 auto 56.8 MiB 1.42 22768 69316 12444 50873 5999 93.9 MiB 1.92 0.03 4.16866 -3643.12 -4.16866 4.16866 2.31 0.0103504 0.00938507 0.697568 0.62202 70 39141 30 1.57908e+07 8.28742e+06 2.45377e+06 4260.01 27.28 4.75666 4.18275 66754 640332 -1 31440 16 11269 13287 2237634 494450 4.66986 4.66986 -4282.45 -4.66986 0 0 3.09179e+06 5367.68 1.44 0.84 0.65 -1 -1 1.44 0.394403 0.35713 1949 2049 817 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_45.v common 28.73 vpr 99.20 MiB 0.20 19952 -1 -1 1 1.11 -1 -1 47736 -1 -1 262 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101580 22 19 6485 5365 1 3362 316 24 24 576 mult_36 auto 57.6 MiB 1.52 23912 65891 11788 48783 5320 94.7 MiB 1.80 0.03 4.29396 -3761.77 -4.29396 4.29396 2.20 0.00829986 0.00724173 0.615412 0.541867 66 40249 45 1.57908e+07 8.80919e+06 2.33135e+06 4047.49 14.06 3.51202 3.07136 65030 601923 -1 32380 16 11813 13782 2237889 499552 4.66986 4.66986 -4285.05 -4.66986 0 0 2.91907e+06 5067.82 1.36 0.87 0.60 -1 -1 1.36 0.404991 0.364946 2011 2122 836 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_46.v common 47.11 vpr 108.05 MiB 0.20 20240 -1 -1 1 1.11 -1 -1 47680 -1 -1 266 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 110640 22 19 6559 5422 1 3404 320 24 24 576 mult_36 auto 57.8 MiB 1.52 25170 75806 13906 55396 6504 94.8 MiB 2.01 0.03 4.04336 -3826.29 -4.04336 4.04336 2.24 0.0100218 0.00906919 0.694316 0.61384 70 41074 32 1.57908e+07 8.86508e+06 2.45377e+06 4260.01 32.00 6.28943 5.57606 66754 640332 -1 33600 20 12417 14794 2538109 551551 4.41926 4.41926 -4404.23 -4.41926 0 0 3.09179e+06 5367.68 1.37 1.07 0.61 -1 -1 1.37 0.52936 0.478529 2040 2141 855 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_47.v common 43.54 vpr 110.32 MiB 0.21 20592 -1 -1 1 1.14 -1 -1 47744 -1 -1 273 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 112972 22 19 6735 5564 1 3511 327 24 24 576 mult_36 auto 59.0 MiB 1.48 26004 69013 11578 51015 6420 95.9 MiB 1.88 0.03 4.16866 -3947.52 -4.16866 4.16866 2.31 0.00969176 0.00860195 0.652856 0.578522 70 42207 37 1.57908e+07 8.9629e+06 2.45377e+06 4260.01 28.45 4.74216 4.14197 66754 640332 -1 35147 18 12876 14784 2948562 649740 4.54456 4.54456 -4518.16 -4.54456 0 0 3.09179e+06 5367.68 1.34 1.04 0.64 -1 -1 1.34 0.449306 0.403338 2092 2196 874 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_48.v common 28.00 vpr 100.62 MiB 0.21 20912 -1 -1 1 1.24 -1 -1 47316 -1 -1 276 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103040 22 19 6809 5621 1 3555 330 24 24 576 mult_36 auto 59.2 MiB 1.54 25747 75504 13246 55760 6498 96.3 MiB 2.10 0.03 4.04336 -3909.04 -4.04336 4.04336 2.21 0.0100766 0.0089527 0.69614 0.61135 74 40393 24 1.57908e+07 9.00482e+06 2.56259e+06 4448.94 12.50 3.3757 2.96644 67906 667765 -1 34686 19 12367 14156 2553127 555067 4.52256 4.52256 -4587.77 -4.52256 0 0 3.19068e+06 5539.38 1.40 1.04 0.69 -1 -1 1.40 0.503848 0.454612 2121 2215 893 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_49.v common 31.27 vpr 99.09 MiB 0.22 21480 -1 -1 1 1.23 -1 -1 48324 -1 -1 287 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101468 22 19 7094 5872 1 3669 342 24 24 576 mult_36 auto 60.8 MiB 1.56 24761 68457 11302 51392 5763 97.8 MiB 1.88 0.03 4.16866 -4069.16 -4.16866 4.16866 2.23 0.00964179 0.00856127 0.634818 0.553911 68 41638 41 1.57908e+07 9.55454e+06 2.39371e+06 4155.74 16.25 3.62942 3.14605 65606 615345 -1 33825 18 12931 14905 2550747 578969 4.41926 4.41926 -4656.59 -4.41926 0 0 2.98162e+06 5176.42 1.32 1.02 0.58 -1 -1 1.32 0.493761 0.444351 2200 2324 912 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_50.v common 35.63 vpr 100.41 MiB 0.23 21588 -1 -1 1 1.26 -1 -1 47976 -1 -1 290 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102820 22 19 7168 5929 1 3710 345 24 24 576 mult_36 auto 61.2 MiB 1.68 25483 69258 11957 51434 5867 98.1 MiB 1.80 0.03 4.16866 -4147.59 -4.16866 4.16866 2.25 0.00941798 0.00824865 0.597097 0.522507 68 42563 44 1.57908e+07 9.59646e+06 2.39371e+06 4155.74 20.35 3.58399 3.11915 65606 615345 -1 34460 17 12911 15454 2479563 548641 4.54456 4.54456 -4864.58 -4.54456 0 0 2.98162e+06 5176.42 1.29 0.97 0.62 -1 -1 1.29 0.468392 0.421969 2229 2343 931 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_51.v common 32.34 vpr 101.50 MiB 0.23 21608 -1 -1 1 1.30 -1 -1 48868 -1 -1 297 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 103940 22 19 7344 6071 1 3814 352 24 24 576 mult_36 auto 61.5 MiB 1.67 27125 77356 14378 55587 7391 98.5 MiB 2.12 0.03 4.16866 -4303.17 -4.16866 4.16866 2.28 0.0102619 0.00908467 0.694017 0.605796 72 44768 37 1.57908e+07 9.69428e+06 2.50747e+06 4353.24 16.37 4.16418 3.61861 67330 654343 -1 37578 17 13551 15994 2843553 623896 4.66986 4.66986 -5080.41 -4.66986 0 0 3.14081e+06 5452.80 1.38 1.04 0.66 -1 -1 1.38 0.460253 0.412434 2282 2398 950 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_pipe_52.v common 32.97 vpr 104.62 MiB 0.23 21904 -1 -1 1 1.33 -1 -1 48724 -1 -1 301 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 107136 22 19 7418 6128 1 3859 356 24 24 576 mult_36 auto 61.9 MiB 1.70 27405 86104 16158 61496 8450 98.9 MiB 2.37 0.03 4.16866 -4281.12 -4.16866 4.16866 2.28 0.010438 0.00920691 0.7719 0.670283 74 43515 42 1.57908e+07 9.75017e+06 2.56259e+06 4448.94 16.40 3.72388 3.22923 67906 667765 -1 36711 17 13652 16223 3223108 699505 4.54456 4.54456 -5292.89 -4.54456 0 0 3.19068e+06 5539.38 1.49 1.15 0.69 -1 -1 1.49 0.506465 0.457263 2310 2417 969 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_14.v common 15.36 vpr 69.68 MiB 0.06 9692 -1 -1 1 0.18 -1 -1 38820 -1 -1 58 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71348 22 19 1246 925 1 732 103 16 16 256 mult_36 auto 31.4 MiB 3.47 4279 16491 3810 9056 3625 69.7 MiB 0.32 0.00 7.43507 -334.187 -7.43507 7.43507 0.83 0.0018416 0.00166379 0.138571 0.125072 44 8983 32 6.52434e+06 2.39448e+06 686998. 2683.59 7.95 1.05904 0.947586 24576 170172 -1 6756 23 5784 6460 1119588 277974 8.34033 8.34033 -498.985 -8.34033 0 0 871168. 3403.00 0.34 0.35 0.17 -1 -1 0.34 0.109767 0.0997669 421 285 247 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_15.v common 24.18 vpr 70.18 MiB 0.06 9764 -1 -1 1 0.19 -1 -1 39244 -1 -1 61 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71864 22 19 1344 989 1 793 107 16 16 256 mult_36 auto 32.0 MiB 2.65 4812 13263 2954 8735 1574 70.2 MiB 0.30 0.00 7.43507 -355.952 -7.43507 7.43507 0.83 0.00180535 0.00163325 0.123592 0.111864 40 9826 30 6.52434e+06 2.8324e+06 616420. 2407.89 17.45 1.32115 1.18137 23812 153515 -1 8537 23 7992 8909 1750964 431743 8.78824 8.78824 -496.577 -8.78824 0 0 808720. 3159.06 0.31 0.51 0.15 -1 -1 0.31 0.128449 0.116627 453 304 266 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_16.v common 15.19 vpr 70.03 MiB 0.06 9968 -1 -1 1 0.19 -1 -1 38948 -1 -1 65 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71708 22 19 1418 1046 1 832 111 16 16 256 mult_36 auto 32.1 MiB 3.45 4732 15273 3429 8618 3226 70.0 MiB 0.31 0.01 7.51823 -342.74 -7.51823 7.51823 0.82 0.00205014 0.00183541 0.127562 0.114508 52 9296 39 6.52434e+06 2.88829e+06 808720. 3159.06 7.80 1.00293 0.889783 25852 197779 -1 6876 22 5856 6440 1032140 274194 8.03514 8.03514 -437.196 -8.03514 0 0 1.00038e+06 3907.74 0.37 0.33 0.18 -1 -1 0.37 0.11423 0.103187 481 323 285 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_17.v common 28.81 vpr 70.86 MiB 0.06 10440 -1 -1 1 0.21 -1 -1 38340 -1 -1 71 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72564 22 19 1518 1112 1 896 117 16 16 256 mult_36 auto 33.0 MiB 3.29 5304 18421 4528 11340 2553 70.9 MiB 0.45 0.01 7.97261 -389.861 -7.97261 7.97261 0.84 0.00247853 0.00221173 0.166281 0.149053 46 11493 33 6.52434e+06 2.97214e+06 723233. 2825.13 21.25 1.41533 1.25707 24832 174915 -1 8086 25 6988 7741 1230666 316354 9.12988 9.12988 -493.087 -9.12988 0 0 890343. 3477.90 0.32 0.39 0.17 -1 -1 0.32 0.134709 0.121619 514 342 304 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_18.v common 14.56 vpr 71.15 MiB 0.07 10708 -1 -1 1 0.22 -1 -1 39028 -1 -1 74 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72860 22 19 1592 1169 1 934 120 16 16 256 mult_36 auto 33.1 MiB 4.54 5525 21950 4872 13484 3594 71.2 MiB 0.51 0.01 7.92861 -423.422 -7.92861 7.92861 0.83 0.00250576 0.00226512 0.200411 0.179451 46 10901 27 6.52434e+06 3.01406e+06 723233. 2825.13 5.63 0.830271 0.740631 24832 174915 -1 8439 25 6969 7727 1234119 310370 8.60698 8.60698 -520.587 -8.60698 0 0 890343. 3477.90 0.34 0.42 0.17 -1 -1 0.34 0.149159 0.13534 542 361 323 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_19.v common 30.48 vpr 71.36 MiB 0.07 10928 -1 -1 1 0.23 -1 -1 39644 -1 -1 79 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73076 22 19 1688 1231 1 994 126 16 16 256 mult_36 auto 33.4 MiB 3.73 6112 18396 3850 11497 3049 71.4 MiB 0.42 0.01 8.05391 -415.397 -8.05391 8.05391 0.82 0.0025169 0.00224887 0.164113 0.147755 48 11648 49 6.52434e+06 3.47993e+06 755748. 2952.14 22.35 1.67975 1.49013 25088 180500 -1 9281 23 7750 8716 1492759 370555 8.96758 8.96758 -648.025 -8.96758 0 0 916467. 3579.95 0.35 0.46 0.18 -1 -1 0.35 0.145711 0.132234 573 380 342 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_20.v common 33.12 vpr 72.08 MiB 0.07 10780 -1 -1 1 0.25 -1 -1 39356 -1 -1 81 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73812 22 19 1762 1288 1 1031 128 16 16 256 mult_36 auto 34.2 MiB 4.50 6025 19448 4098 12431 2919 72.1 MiB 0.47 0.01 7.85831 -460.894 -7.85831 7.85831 0.85 0.00258485 0.00232325 0.17333 0.155669 48 13131 44 6.52434e+06 3.50787e+06 755748. 2952.14 24.09 1.7602 1.55747 25088 180500 -1 9620 26 8329 9556 1421246 361992 8.76058 8.76058 -638.914 -8.76058 0 0 916467. 3579.95 0.34 0.48 0.18 -1 -1 0.34 0.168033 0.152129 601 399 361 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_21.v common 18.25 vpr 72.60 MiB 0.08 11060 -1 -1 1 0.27 -1 -1 39612 -1 -1 85 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74340 22 19 1859 1351 1 1093 132 16 16 256 mult_36 auto 34.7 MiB 4.38 6899 17217 3487 9827 3903 72.6 MiB 0.41 0.01 8.31737 -449.106 -8.31737 8.31737 0.82 0.00274221 0.00245891 0.155892 0.139982 56 11653 47 6.52434e+06 3.56377e+06 849745. 3319.32 9.34 1.32049 1.16993 26364 208198 -1 9609 24 6963 7867 1263225 334116 8.63698 8.63698 -547.47 -8.63698 0 0 1.04740e+06 4091.43 0.39 0.42 0.21 -1 -1 0.39 0.153459 0.138506 632 418 380 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_22.v common 16.84 vpr 72.77 MiB 0.08 11292 -1 -1 1 0.28 -1 -1 39508 -1 -1 90 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74512 22 19 1933 1408 1 1131 137 16 16 256 mult_36 auto 35.0 MiB 5.20 6966 19199 3562 11724 3913 72.8 MiB 0.46 0.01 8.23421 -444.329 -8.23421 8.23421 0.85 0.00306138 0.00277785 0.192488 0.1753 54 12290 34 6.52434e+06 3.63364e+06 829453. 3240.05 6.93 1.23331 1.10081 26108 202796 -1 9726 23 8211 9184 1505076 387260 8.81858 8.81858 -659.339 -8.81858 0 0 1.02522e+06 4004.78 0.39 0.51 0.20 -1 -1 0.39 0.182547 0.165506 661 437 399 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_23.v common 17.61 vpr 73.19 MiB 0.09 11496 -1 -1 1 0.29 -1 -1 40300 -1 -1 94 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74944 22 19 2031 1472 1 1193 142 18 18 324 mult_36 auto 35.2 MiB 5.13 7499 25672 5513 17089 3070 73.2 MiB 0.63 0.01 8.10891 -483.661 -8.10891 8.10891 1.15 0.00304554 0.00274725 0.230251 0.207052 54 13513 33 8.04299e+06 4.08553e+06 1.08842e+06 3359.33 6.57 1.05089 0.937876 33712 268580 -1 10895 23 8137 9130 2126109 502971 8.81528 8.81528 -663.97 -8.81528 0 0 1.34436e+06 4149.26 0.53 0.63 0.27 -1 -1 0.53 0.181704 0.164561 693 456 418 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_24.v common 48.31 vpr 73.70 MiB 0.09 11508 -1 -1 1 0.30 -1 -1 39864 -1 -1 97 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75464 22 19 2105 1529 1 1232 145 18 18 324 mult_36 auto 35.8 MiB 5.40 8276 22945 4682 14474 3789 73.7 MiB 0.57 0.01 7.98361 -510.599 -7.98361 7.98361 1.15 0.00337354 0.00304321 0.219033 0.196579 50 16252 37 8.04299e+06 4.12745e+06 1.03391e+06 3191.07 37.20 1.80963 1.60317 32744 246704 -1 12664 21 9701 11307 2177233 496185 8.76858 8.76858 -968.255 -8.76858 0 0 1.23838e+06 3822.15 0.47 0.58 0.23 -1 -1 0.47 0.156975 0.141858 721 475 437 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_25.v common 18.31 vpr 74.15 MiB 0.10 12212 -1 -1 1 0.32 -1 -1 40164 -1 -1 101 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75932 22 19 2201 1591 1 1290 149 18 18 324 mult_36 auto 36.4 MiB 5.07 8283 24183 4729 16751 2703 74.2 MiB 0.60 0.01 8.05577 -521.608 -8.05577 8.05577 1.11 0.00325791 0.00287101 0.220478 0.196392 50 15403 31 8.04299e+06 4.18335e+06 1.03391e+06 3191.07 7.39 1.16948 1.03706 32744 246704 -1 12319 23 10112 11493 2503030 565513 8.57868 8.57868 -788.575 -8.57868 0 0 1.23838e+06 3822.15 0.50 0.72 0.24 -1 -1 0.50 0.204294 0.185155 751 494 456 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_26.v common 22.02 vpr 74.40 MiB 0.09 12032 -1 -1 1 0.33 -1 -1 40436 -1 -1 105 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76188 22 19 2275 1648 1 1330 153 18 18 324 mult_36 auto 36.8 MiB 5.60 8141 27556 5791 17294 4471 74.4 MiB 0.63 0.01 8.19207 -520.388 -8.19207 8.19207 1.11 0.0034799 0.00312176 0.245356 0.219489 54 15124 37 8.04299e+06 4.23924e+06 1.08842e+06 3359.33 10.60 1.65535 1.46637 33712 268580 -1 12212 23 10203 11625 2161150 528272 8.79328 8.79328 -763.266 -8.79328 0 0 1.34436e+06 4149.26 0.53 0.64 0.25 -1 -1 0.53 0.191433 0.1717 779 513 475 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_27.v common 24.77 vpr 74.92 MiB 0.10 12272 -1 -1 1 0.36 -1 -1 40468 -1 -1 111 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76720 22 19 2385 1724 1 1404 160 18 18 324 mult_36 auto 37.2 MiB 5.70 9160 31408 6758 19479 5171 74.9 MiB 0.76 0.01 8.23421 -600.807 -8.23421 8.23421 1.11 0.00378359 0.00343389 0.265748 0.237807 54 17154 35 8.04299e+06 4.7191e+06 1.08842e+06 3359.33 12.92 1.68138 1.49065 33712 268580 -1 13557 23 11011 12488 2117327 493925 8.71528 8.71528 -868.974 -8.71528 0 0 1.34436e+06 4149.26 0.52 0.62 0.27 -1 -1 0.52 0.193344 0.174778 817 532 494 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_28.v common 19.42 vpr 75.54 MiB 0.10 12652 -1 -1 1 0.37 -1 -1 40768 -1 -1 114 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77348 22 19 2459 1781 1 1443 163 18 18 324 mult_36 auto 37.9 MiB 6.62 9058 28198 5820 18497 3881 75.5 MiB 0.73 0.01 8.10891 -546.827 -8.10891 8.10891 1.14 0.0041498 0.00376384 0.264058 0.237493 52 18293 43 8.04299e+06 4.76102e+06 1.06151e+06 3276.26 6.42 1.19093 1.06104 33388 261900 -1 13468 25 10898 12536 2864409 668476 8.63198 8.63198 -888.37 -8.63198 0 0 1.31159e+06 4048.11 0.51 0.82 0.26 -1 -1 0.51 0.2158 0.194668 845 551 513 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_29.v common 22.85 vpr 76.09 MiB 0.11 12944 -1 -1 1 0.38 -1 -1 40784 -1 -1 118 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77912 22 19 2565 1853 1 1511 168 22 22 484 mult_36 auto 38.3 MiB 6.56 9371 37671 8185 25350 4136 76.1 MiB 0.93 0.01 8.10891 -601.117 -8.10891 8.10891 1.86 0.00378497 0.00337405 0.338992 0.303798 48 19469 47 1.30842e+07 5.21292e+06 1.52614e+06 3153.19 7.89 1.32466 1.17632 49190 371334 -1 15130 25 12937 14900 2680089 612056 8.84028 8.84028 -1119.86 -8.84028 0 0 1.85176e+06 3825.95 0.77 0.75 0.37 -1 -1 0.77 0.213385 0.191287 881 570 532 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_30.v common 24.91 vpr 76.30 MiB 0.11 12876 -1 -1 1 0.39 -1 -1 41268 -1 -1 123 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78136 22 19 2639 1910 1 1549 173 22 22 484 mult_36 auto 38.8 MiB 7.19 10063 34805 7553 23759 3493 76.3 MiB 0.91 0.01 7.94147 -581.627 -7.94147 7.94147 1.93 0.00380262 0.00336631 0.309266 0.274946 50 19768 40 1.30842e+07 5.28279e+06 1.59181e+06 3288.87 9.03 1.378 1.22271 49674 382800 -1 15380 28 13724 15589 2793458 634492 8.70598 8.70598 -1268.48 -8.70598 0 0 1.90554e+06 3937.06 0.83 0.85 0.37 -1 -1 0.83 0.260118 0.234999 910 589 551 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_31.v common 23.36 vpr 76.91 MiB 0.12 13124 -1 -1 1 0.41 -1 -1 40616 -1 -1 128 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78760 22 19 2744 1981 1 1618 178 22 22 484 mult_36 auto 39.5 MiB 6.72 10399 33178 6823 22782 3573 76.9 MiB 0.85 0.01 8.10891 -614.901 -8.10891 8.10891 1.92 0.00419285 0.00372487 0.300733 0.267583 50 20890 34 1.30842e+07 5.35266e+06 1.59181e+06 3288.87 8.07 1.2366 1.09888 49674 382800 -1 15839 24 10750 12559 2256758 503784 9.16788 9.16788 -1102.1 -9.16788 0 0 1.90554e+06 3937.06 0.84 0.72 0.37 -1 -1 0.84 0.244822 0.222254 946 608 570 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_32.v common 69.55 vpr 76.61 MiB 0.11 13340 -1 -1 1 0.42 -1 -1 40504 -1 -1 131 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78444 22 19 2818 2038 1 1657 181 22 22 484 mult_36 auto 39.3 MiB 8.16 10468 35440 7438 24208 3794 76.6 MiB 0.92 0.01 8.10891 -605.451 -8.10891 8.10891 1.92 0.00423028 0.00370194 0.318357 0.282603 50 22183 40 1.30842e+07 5.39458e+06 1.59181e+06 3288.87 52.56 2.46954 2.1791 49674 382800 -1 16245 23 13120 15278 3086856 697665 9.19748 9.19748 -1073.25 -9.19748 0 0 1.90554e+06 3937.06 0.82 0.87 0.38 -1 -1 0.82 0.236451 0.214039 974 627 589 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_33.v common 66.72 vpr 77.62 MiB 0.12 14072 -1 -1 1 0.44 -1 -1 41560 -1 -1 137 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79484 22 19 2923 2109 1 1726 188 22 22 484 mult_36 auto 40.3 MiB 6.99 11200 43228 9010 29823 4395 77.6 MiB 1.11 0.01 8.53215 -653.824 -8.53215 8.53215 1.92 0.00436092 0.003882 0.381433 0.34038 50 23524 50 1.30842e+07 5.87443e+06 1.59181e+06 3288.87 50.59 2.74392 2.41747 49674 382800 -1 17398 24 13567 15898 3128701 726255 9.69902 9.69902 -1486.58 -9.69902 0 0 1.90554e+06 3937.06 0.82 0.95 0.37 -1 -1 0.82 0.2672 0.241551 1009 646 608 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_34.v common 37.69 vpr 77.81 MiB 0.13 13860 -1 -1 1 0.46 -1 -1 41564 -1 -1 140 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79680 22 19 2997 2166 1 1764 191 22 22 484 mult_36 auto 40.3 MiB 10.80 11539 35327 6848 25057 3422 77.8 MiB 1.00 0.01 8.64645 -679.281 -8.64645 8.64645 1.90 0.00437066 0.0039129 0.322682 0.28843 54 21794 47 1.30842e+07 5.91636e+06 1.67518e+06 3461.11 17.92 2.36788 2.09418 51122 416746 -1 17157 26 12943 14814 2475197 576155 10.0623 10.0623 -1135.34 -10.0623 0 0 2.06816e+06 4273.05 0.87 0.80 0.41 -1 -1 0.87 0.270937 0.243908 1037 665 627 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_35.v common 27.76 vpr 78.34 MiB 0.13 14132 -1 -1 1 0.47 -1 -1 41392 -1 -1 145 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80216 22 19 3101 2236 1 1831 196 22 22 484 mult_36 auto 40.8 MiB 9.35 12167 37181 7458 26108 3615 78.3 MiB 1.01 0.01 8.53215 -703.741 -8.53215 8.53215 1.86 0.00499243 0.00452069 0.354591 0.315297 52 24964 34 1.30842e+07 5.98623e+06 1.63434e+06 3376.74 9.34 1.44943 1.2871 50638 406276 -1 18242 26 15116 17163 3151831 705012 9.41912 9.41912 -1232.72 -9.41912 0 0 2.01763e+06 4168.66 0.86 0.94 0.39 -1 -1 0.86 0.285289 0.257453 1072 684 646 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_36.v common 35.21 vpr 79.04 MiB 0.13 14228 -1 -1 1 0.49 -1 -1 41828 -1 -1 148 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80932 22 19 3175 2293 1 1871 199 22 22 484 mult_36 auto 41.6 MiB 11.49 13544 38479 7973 24905 5601 79.0 MiB 1.05 0.02 8.78275 -750.174 -8.78275 8.78275 1.93 0.00517656 0.00462449 0.377548 0.335806 54 25546 38 1.30842e+07 6.02815e+06 1.67518e+06 3461.11 14.71 1.83634 1.61499 51122 416746 -1 19123 24 14456 16419 2760948 621361 9.60642 9.60642 -1241.15 -9.60642 0 0 2.06816e+06 4273.05 0.86 0.78 0.36 -1 -1 0.86 0.234679 0.209626 1100 703 665 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_37.v common 31.24 vpr 79.22 MiB 0.13 14544 -1 -1 1 0.49 -1 -1 41760 -1 -1 152 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81124 22 19 3280 2364 1 1938 204 24 24 576 mult_36 auto 41.8 MiB 10.14 12949 43404 9216 30086 4102 79.2 MiB 1.13 0.02 8.86591 -738.907 -8.86591 8.86591 2.20 0.00568168 0.00518157 0.398212 0.355974 56 22884 36 1.57908e+07 6.48005e+06 2.03561e+06 3534.04 10.86 1.65315 1.46454 61006 507707 -1 18834 23 13384 15296 2781104 667440 9.76472 9.76472 -1280.4 -9.76472 0 0 2.50747e+06 4353.24 1.12 0.89 0.49 -1 -1 1.12 0.291774 0.263254 1135 722 684 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_38.v common 38.80 vpr 79.77 MiB 0.14 14896 -1 -1 1 0.52 -1 -1 42032 -1 -1 157 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81680 22 19 3354 2421 1 1977 209 24 24 576 mult_36 auto 42.4 MiB 12.54 13935 39889 7619 29181 3089 79.8 MiB 1.10 0.02 9.11651 -832.193 -9.11651 9.11651 2.32 0.00491435 0.00436088 0.34688 0.309617 54 26669 37 1.57908e+07 6.54992e+06 1.98675e+06 3449.22 15.87 1.94448 1.71435 60430 494267 -1 20107 23 14543 16882 3444940 754064 9.81972 9.81972 -1394.6 -9.81972 0 0 2.45377e+06 4260.01 1.08 0.96 0.47 -1 -1 1.08 0.275368 0.248513 1164 741 703 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_39.v common 33.16 vpr 80.33 MiB 0.15 14916 -1 -1 1 0.53 -1 -1 41648 -1 -1 161 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82260 22 19 3457 2490 1 2044 213 24 24 576 mult_36 auto 43.1 MiB 10.87 14010 45298 9289 32144 3865 80.3 MiB 1.30 0.02 9.08351 -873.852 -9.08351 9.08351 2.19 0.0055551 0.00484155 0.416068 0.368669 54 25610 30 1.57908e+07 6.60581e+06 1.98675e+06 3449.22 12.00 1.79191 1.58388 60430 494267 -1 19715 26 15084 17288 2697273 640604 9.87602 9.87602 -1263.92 -9.87602 0 0 2.45377e+06 4260.01 1.07 0.89 0.44 -1 -1 1.07 0.318797 0.286288 1198 760 722 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_40.v common 39.59 vpr 80.61 MiB 0.15 15016 -1 -1 1 0.56 -1 -1 41532 -1 -1 164 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82540 22 19 3531 2547 1 2082 216 24 24 576 mult_36 auto 43.4 MiB 13.70 14315 42271 8276 29645 4350 80.6 MiB 1.19 0.02 9.24181 -810.386 -9.24181 9.24181 2.31 0.00583162 0.00530831 0.414196 0.371334 54 26773 47 1.57908e+07 6.64774e+06 1.98675e+06 3449.22 15.10 2.47783 2.21049 60430 494267 -1 20381 24 15537 17805 3345360 793652 9.77572 9.77572 -1128.5 -9.77572 0 0 2.45377e+06 4260.01 1.09 1.07 0.47 -1 -1 1.09 0.337695 0.305 1226 779 741 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_41.v common 38.64 vpr 80.74 MiB 0.16 15604 -1 -1 1 0.59 -1 -1 41760 -1 -1 170 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82680 22 19 3634 2616 1 2147 223 24 24 576 mult_36 auto 43.6 MiB 12.22 14564 49571 9682 35398 4491 80.7 MiB 1.26 0.02 8.86591 -886.984 -8.86591 8.86591 2.28 0.00478779 0.00425175 0.404323 0.358365 54 27347 38 1.57908e+07 7.12758e+06 1.98675e+06 3449.22 15.46 2.12697 1.87128 60430 494267 -1 20823 26 16139 18436 3337890 759861 9.42812 9.42812 -1411.68 -9.42812 0 0 2.45377e+06 4260.01 1.13 1.06 0.47 -1 -1 1.13 0.340877 0.3069 1261 798 760 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_42.v common 38.42 vpr 81.41 MiB 0.15 15632 -1 -1 1 0.61 -1 -1 42252 -1 -1 173 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83364 22 19 3708 2673 1 2187 226 24 24 576 mult_36 auto 44.1 MiB 14.40 14964 42882 7728 31361 3793 81.4 MiB 1.18 0.02 8.89705 -935.414 -8.89705 8.89705 2.22 0.00583824 0.00528215 0.371004 0.32964 54 27966 42 1.57908e+07 7.1695e+06 1.98675e+06 3449.22 13.50 1.88748 1.66425 60430 494267 -1 21061 23 15356 17671 2919771 679921 9.82102 9.82102 -1448.16 -9.82102 0 0 2.45377e+06 4260.01 1.02 0.88 0.48 -1 -1 1.02 0.285206 0.255038 1289 817 779 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_43.v common 35.70 vpr 81.88 MiB 0.15 15964 -1 -1 1 0.61 -1 -1 43084 -1 -1 178 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83844 22 19 3810 2741 1 2253 231 24 24 576 mult_36 auto 44.6 MiB 12.53 15413 39879 7268 29670 2941 81.9 MiB 1.15 0.02 9.00035 -987.991 -9.00035 9.00035 2.21 0.00602043 0.00527147 0.357693 0.317347 56 27058 47 1.57908e+07 7.23937e+06 2.03561e+06 3534.04 12.55 2.04298 1.80974 61006 507707 -1 22283 23 15923 17929 3233513 748847 9.60672 9.60672 -1485.02 -9.60672 0 0 2.50747e+06 4353.24 1.12 1.00 0.47 -1 -1 1.12 0.328616 0.295189 1323 836 798 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_44.v common 47.81 vpr 86.91 MiB 0.15 15828 -1 -1 1 0.63 -1 -1 42616 -1 -1 181 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89000 22 19 3884 2798 1 2294 234 24 24 576 mult_36 auto 44.9 MiB 15.43 15707 41994 7723 30447 3824 82.1 MiB 1.16 0.02 9.01135 -955.085 -9.01135 9.01135 2.25 0.00572123 0.00510849 0.37391 0.33194 56 26729 37 1.57908e+07 7.28129e+06 2.03561e+06 3534.04 21.56 2.81839 2.49123 61006 507707 -1 22212 23 15173 17377 3292312 776173 9.55642 9.55642 -1789.13 -9.55642 0 0 2.50747e+06 4353.24 1.08 0.98 0.50 -1 -1 1.08 0.302484 0.271873 1351 855 817 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_45.v common 47.58 vpr 89.75 MiB 0.16 16196 -1 -1 1 0.67 -1 -1 44164 -1 -1 186 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91900 22 19 3989 2869 1 2359 240 24 24 576 mult_36 auto 45.7 MiB 13.91 17097 51645 10062 37469 4114 82.8 MiB 1.51 0.02 9.14765 -941.966 -9.14765 9.14765 2.28 0.00617885 0.00556317 0.476047 0.424225 60 28063 32 1.57908e+07 7.74716e+06 2.13333e+06 3703.69 22.28 2.92871 2.59092 62730 548095 -1 23267 22 14838 17105 3341790 759108 9.95602 9.95602 -1681.47 -9.95602 0 0 2.67122e+06 4637.53 1.16 1.05 0.53 -1 -1 1.16 0.339121 0.308128 1387 874 836 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_46.v common 43.91 vpr 82.89 MiB 0.17 16424 -1 -1 1 0.67 -1 -1 44164 -1 -1 189 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84884 22 19 4063 2926 1 2398 243 24 24 576 mult_36 auto 45.8 MiB 16.63 15934 45723 8483 31447 5793 82.9 MiB 1.28 0.02 9.11651 -948.833 -9.11651 9.11651 2.29 0.00605281 0.0053153 0.404047 0.357247 56 29345 44 1.57908e+07 7.78909e+06 2.03561e+06 3534.04 15.95 2.11733 1.86657 61006 507707 -1 22871 24 16334 18896 3280471 793758 10.0013 10.0013 -1532.42 -10.0013 0 0 2.50747e+06 4353.24 1.11 1.06 0.50 -1 -1 1.11 0.359721 0.324809 1414 893 855 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_47.v common 49.19 vpr 90.21 MiB 0.18 16832 -1 -1 1 0.68 -1 -1 44320 -1 -1 194 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92372 22 19 4167 2996 1 2466 248 24 24 576 mult_36 auto 45.9 MiB 15.06 17209 49262 9353 32762 7147 83.2 MiB 1.29 0.02 8.77175 -894.721 -8.77175 8.77175 2.25 0.00605266 0.00527273 0.427983 0.377219 60 28278 48 1.57908e+07 7.85896e+06 2.13333e+06 3703.69 22.88 3.01704 2.64937 62730 548095 -1 23249 23 14462 16951 2952289 684862 9.48242 9.48242 -1649.05 -9.48242 0 0 2.67122e+06 4637.53 1.15 0.95 0.55 -1 -1 1.15 0.326445 0.292297 1449 912 874 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_48.v common 40.92 vpr 83.63 MiB 0.18 16744 -1 -1 1 0.72 -1 -1 44556 -1 -1 197 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85640 22 19 4241 3053 1 2505 251 24 24 576 mult_36 auto 46.4 MiB 17.51 17153 49293 9486 35716 4091 83.6 MiB 1.43 0.02 8.94721 -1041.95 -8.94721 8.94721 2.30 0.00650021 0.00583967 0.438931 0.390142 60 27557 32 1.57908e+07 7.90088e+06 2.13333e+06 3703.69 11.69 2.14217 1.89867 62730 548095 -1 23322 24 16787 19002 3295071 763657 9.55942 9.55942 -1689.65 -9.55942 0 0 2.67122e+06 4637.53 1.21 1.09 0.54 -1 -1 1.21 0.378851 0.341748 1477 931 893 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_49.v common 50.41 vpr 91.13 MiB 0.19 17072 -1 -1 1 0.73 -1 -1 44656 -1 -1 204 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93320 22 19 4346 3124 1 2572 259 24 24 576 mult_36 auto 46.9 MiB 15.82 18029 60484 12120 41883 6481 84.0 MiB 1.62 0.02 9.03335 -1024.22 -9.03335 9.03335 2.23 0.0063346 0.00562495 0.489707 0.432694 62 28516 30 1.57908e+07 8.3947e+06 2.19658e+06 3813.51 22.95 3.38388 2.98171 63306 560109 -1 23534 20 15479 17692 3067856 713313 9.82572 9.82572 -1439.85 -9.82572 0 0 2.72095e+06 4723.87 1.13 0.95 0.55 -1 -1 1.13 0.320206 0.287689 1512 950 912 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_50.v common 53.72 vpr 92.77 MiB 0.20 17204 -1 -1 1 0.74 -1 -1 44628 -1 -1 206 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94992 22 19 4420 3181 1 2611 261 24 24 576 mult_36 auto 47.4 MiB 18.17 18709 56905 11374 38964 6567 84.5 MiB 1.53 0.02 9.15865 -979.617 -9.15865 9.15865 2.21 0.00633483 0.00564501 0.460136 0.405182 62 32109 33 1.57908e+07 8.42264e+06 2.19658e+06 3813.51 23.71 2.9883 2.6199 63306 560109 -1 24934 25 18006 20257 3751791 848758 9.55342 9.55342 -1561.81 -9.55342 0 0 2.72095e+06 4723.87 1.16 1.21 0.56 -1 -1 1.16 0.410539 0.370526 1541 969 931 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_51.v common 47.57 vpr 85.01 MiB 0.20 17624 -1 -1 1 0.78 -1 -1 45184 -1 -1 211 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87052 22 19 4524 3251 1 2681 266 24 24 576 mult_36 auto 47.9 MiB 16.45 18442 64391 13006 42174 9211 85.0 MiB 1.79 0.02 9.11651 -1031.8 -9.11651 9.11651 2.24 0.00755573 0.00686805 0.609785 0.544362 62 32019 44 1.57908e+07 8.49251e+06 2.19658e+06 3813.51 18.86 2.80715 2.49743 63306 560109 -1 24513 22 16168 18656 3465901 790002 9.66742 9.66742 -1986.02 -9.66742 0 0 2.72095e+06 4723.87 1.22 1.17 0.55 -1 -1 1.22 0.418858 0.379745 1576 988 950 19 0 0 + k6_frac_ripple_N8_22nm.xml fir_nopipe_52.v common 51.32 vpr 85.62 MiB 0.20 17812 -1 -1 1 0.76 -1 -1 45164 -1 -1 215 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87680 22 19 4598 3308 1 2718 270 24 24 576 mult_36 auto 48.6 MiB 18.58 20511 58694 11215 41939 5540 85.6 MiB 1.80 0.03 9.04435 -1077.51 -9.04435 9.04435 2.15 0.00764075 0.00699793 0.526936 0.468949 68 31810 34 1.57908e+07 8.54841e+06 2.39371e+06 4155.74 20.33 2.40172 2.11642 65606 615345 -1 26527 24 17987 20145 4525911 938087 9.65942 9.65942 -1760.86 -9.65942 0 0 2.98162e+06 5176.42 1.37 1.32 0.61 -1 -1 1.37 0.391651 0.352484 1605 1007 969 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_14.v common 8.21 vpr 72.77 MiB 0.06 10864 -1 -1 1 0.26 -1 -1 39884 -1 -1 81 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74512 22 19 1974 1653 1 1020 126 16 16 256 mult_36 auto 34.6 MiB 0.35 5591 16821 3250 11387 2184 72.8 MiB 0.36 0.01 3.91806 -1045.59 -3.91806 3.91806 0.83 0.00245672 0.00214849 0.149946 0.132635 48 12408 37 6.54114e+06 2.7256e+06 755748. 2952.14 3.60 0.723324 0.633232 25088 180500 -1 9479 19 4333 5029 967953 229760 4.54456 4.54456 -1297.54 -4.54456 0 0 916467. 3579.95 0.34 0.32 0.18 -1 -1 0.34 0.126667 0.11378 605 649 247 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_15.v common 9.19 vpr 73.52 MiB 0.07 10940 -1 -1 1 0.26 -1 -1 40676 -1 -1 88 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75288 22 19 2144 1789 1 1120 134 16 16 256 mult_36 auto 35.5 MiB 0.36 6418 19286 3793 12614 2879 73.5 MiB 0.41 0.01 4.04336 -1201.8 -4.04336 4.04336 0.81 0.00261868 0.00230072 0.178374 0.158629 54 13023 39 6.54114e+06 3.22025e+06 829453. 3240.05 4.52 1.00817 0.887647 26108 202796 -1 9907 18 4173 4860 682266 169892 4.41926 4.41926 -1415.38 -4.41926 0 0 1.02522e+06 4004.78 0.38 0.28 0.19 -1 -1 0.38 0.139328 0.126015 654 704 266 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_16.v common 8.43 vpr 73.63 MiB 0.07 11292 -1 -1 1 0.30 -1 -1 40192 -1 -1 91 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75400 22 19 2218 1846 1 1162 137 16 16 256 mult_36 auto 35.5 MiB 0.40 6514 22376 4438 14955 2983 73.6 MiB 0.50 0.01 3.91806 -1175.32 -3.91806 3.91806 0.82 0.0029684 0.00259761 0.20152 0.177137 54 12156 23 6.54114e+06 3.26253e+06 829453. 3240.05 3.46 0.914138 0.798977 26108 202796 -1 9857 19 4393 5036 651426 169469 4.39726 4.39726 -1353.92 -4.39726 0 0 1.02522e+06 4004.78 0.38 0.29 0.21 -1 -1 0.38 0.145971 0.131064 683 723 285 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_17.v common 10.35 vpr 75.39 MiB 0.08 11948 -1 -1 1 0.33 -1 -1 40424 -1 -1 103 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77204 22 19 2536 2130 1 1275 149 16 16 256 mult_36 auto 37.3 MiB 0.46 7537 17091 3014 12112 1965 75.4 MiB 0.42 0.01 4.04336 -1358 -4.04336 4.04336 0.83 0.00352014 0.00313591 0.175947 0.157342 56 14255 28 6.54114e+06 3.43166e+06 849745. 3319.32 5.07 1.11841 0.987723 26364 208198 -1 11943 22 5166 6142 1053048 263687 4.66986 4.66986 -1610.3 -4.66986 0 0 1.04740e+06 4091.43 0.39 0.43 0.21 -1 -1 0.39 0.201717 0.180961 770 851 304 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_18.v common 15.57 vpr 75.49 MiB 0.08 11980 -1 -1 1 0.34 -1 -1 40780 -1 -1 107 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77304 22 19 2610 2187 1 1316 153 16 16 256 mult_36 auto 37.5 MiB 0.46 7641 18558 3088 12696 2774 75.5 MiB 0.46 0.01 3.79276 -1393.64 -3.79276 3.79276 0.83 0.0038028 0.00341487 0.193194 0.17299 58 14751 46 6.54114e+06 3.48803e+06 871168. 3403.00 10.25 1.82429 1.59613 26872 219187 -1 11645 22 5026 5930 914884 223804 4.54456 4.54456 -1703.86 -4.54456 0 0 1.09288e+06 4269.05 0.40 0.37 0.22 -1 -1 0.40 0.182498 0.162893 798 870 323 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_19.v common 11.21 vpr 76.15 MiB 0.09 12436 -1 -1 1 0.35 -1 -1 40372 -1 -1 113 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77980 22 19 2778 2321 1 1412 160 16 16 256 mult_36 auto 38.2 MiB 0.49 8430 22294 3848 15358 3088 76.2 MiB 0.52 0.01 3.91806 -1531.05 -3.91806 3.91806 0.82 0.00365675 0.00323422 0.205858 0.181608 60 14727 30 6.54114e+06 3.96859e+06 890343. 3477.90 5.76 1.15032 1.0079 27128 224764 -1 11965 18 5210 6127 936520 236923 4.27196 4.27196 -1763.93 -4.27196 0 0 1.11577e+06 4358.47 0.41 0.36 0.22 -1 -1 0.41 0.168136 0.151381 846 925 342 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_20.v common 12.89 vpr 77.34 MiB 0.09 12708 -1 -1 1 0.38 -1 -1 40488 -1 -1 118 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79196 22 19 2852 2378 1 1455 165 16 16 256 mult_36 auto 38.9 MiB 0.51 9477 23217 3746 16746 2725 77.3 MiB 0.57 0.01 4.29396 -1534.52 -4.29396 4.29396 0.84 0.00428745 0.00382062 0.217817 0.193117 60 17601 50 6.54114e+06 4.03906e+06 890343. 3477.90 7.29 1.38262 1.21092 27128 224764 -1 13133 16 5360 6442 941613 228558 4.41926 4.41926 -1825.96 -4.41926 0 0 1.11577e+06 4358.47 0.40 0.34 0.23 -1 -1 0.40 0.159096 0.143322 875 944 361 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_21.v common 13.00 vpr 77.88 MiB 0.10 12932 -1 -1 1 0.39 -1 -1 41328 -1 -1 122 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79748 22 19 3057 2549 1 1560 169 16 16 256 mult_36 auto 40.0 MiB 0.55 9833 23519 3964 15668 3887 77.9 MiB 0.57 0.01 4.04336 -1712.3 -4.04336 4.04336 0.84 0.00422935 0.00376548 0.232694 0.205857 60 16890 40 6.54114e+06 4.09544e+06 890343. 3477.90 7.15 1.47791 1.30288 27128 224764 -1 13574 15 5741 6539 971275 238999 4.29396 4.29396 -1928.63 -4.29396 0 0 1.11577e+06 4358.47 0.42 0.39 0.22 -1 -1 0.42 0.18966 0.17302 932 1017 380 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_22.v common 12.86 vpr 78.27 MiB 0.10 13092 -1 -1 1 0.40 -1 -1 40824 -1 -1 125 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80152 22 19 3131 2606 1 1600 172 16 16 256 mult_36 auto 40.4 MiB 0.56 10212 25028 4502 16911 3615 78.3 MiB 0.64 0.01 3.91806 -1777.7 -3.91806 3.91806 0.85 0.004446 0.0039249 0.25152 0.221997 66 17584 42 6.54114e+06 4.13772e+06 974584. 3806.97 6.82 1.67231 1.46208 28148 247068 -1 13924 21 5604 6299 961507 230321 4.41926 4.41926 -2022.94 -4.41926 0 0 1.22072e+06 4768.46 0.46 0.43 0.26 -1 -1 0.46 0.218787 0.196216 961 1036 399 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_23.v common 19.52 vpr 78.82 MiB 0.10 13356 -1 -1 1 0.44 -1 -1 42772 -1 -1 133 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80708 22 19 3301 2742 1 1700 181 18 18 324 mult_36 auto 40.9 MiB 0.60 10103 32374 6384 22643 3347 78.8 MiB 0.81 0.01 3.79276 -1796.65 -3.79276 3.79276 1.14 0.00469212 0.00418369 0.327046 0.291004 62 18478 30 8.06603e+06 4.64648e+06 1.20291e+06 3712.69 12.34 2.29171 2.01477 35328 304176 -1 14507 18 6194 7206 1063487 252310 4.29396 4.29396 -2018.75 -4.29396 0 0 1.49010e+06 4599.06 0.59 0.44 0.31 -1 -1 0.59 0.22549 0.204577 1012 1091 418 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_24.v common 14.00 vpr 79.29 MiB 0.11 13604 -1 -1 1 0.45 -1 -1 42572 -1 -1 137 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81196 22 19 3375 2799 1 1744 185 18 18 324 mult_36 auto 41.5 MiB 0.60 10410 28589 5340 20441 2808 79.3 MiB 0.73 0.01 4.16866 -1805.2 -4.16866 4.16866 1.15 0.00468245 0.00415505 0.294734 0.261058 56 20515 46 8.06603e+06 4.70285e+06 1.11497e+06 3441.27 6.96 1.6944 1.48796 34036 275796 -1 16347 17 6778 7926 1355841 325377 4.54456 4.54456 -2146.27 -4.54456 0 0 1.37338e+06 4238.83 0.53 0.49 0.28 -1 -1 0.53 0.215209 0.194869 1041 1110 437 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_25.v common 20.12 vpr 80.30 MiB 0.11 14300 -1 -1 1 0.49 -1 -1 42152 -1 -1 146 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82228 22 19 3615 3005 1 1848 194 18 18 324 mult_36 auto 42.4 MiB 0.67 11297 28805 4799 20855 3151 80.3 MiB 0.74 0.01 3.91806 -2021.05 -3.91806 3.91806 1.12 0.00522578 0.00462787 0.293761 0.261024 60 20811 46 8.06603e+06 4.8297e+06 1.16833e+06 3605.96 12.86 2.42665 2.12347 35004 297736 -1 16756 18 6993 8189 1335702 303189 4.39726 4.39726 -2385.79 -4.39726 0 0 1.46313e+06 4515.82 0.55 0.50 0.30 -1 -1 0.55 0.237077 0.21464 1107 1201 456 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_26.v common 26.44 vpr 80.97 MiB 0.11 14320 -1 -1 1 0.51 -1 -1 42052 -1 -1 148 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82912 22 19 3689 3062 1 1888 196 18 18 324 mult_36 auto 43.1 MiB 0.65 11477 33767 6118 24073 3576 81.0 MiB 0.87 0.01 4.04336 -1981.42 -4.04336 4.04336 1.09 0.00545262 0.00487802 0.342878 0.305007 60 19822 48 8.06603e+06 4.85789e+06 1.16833e+06 3605.96 19.01 2.5505 2.22033 35004 297736 -1 16021 18 6532 7875 1210043 290384 4.41926 4.41926 -2461.63 -4.41926 0 0 1.46313e+06 4515.82 0.57 0.49 0.30 -1 -1 0.57 0.243099 0.219464 1135 1220 475 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_27.v common 19.50 vpr 81.76 MiB 0.12 14608 -1 -1 1 0.53 -1 -1 42776 -1 -1 156 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83720 22 19 3871 3210 1 2002 205 18 18 324 mult_36 auto 43.8 MiB 0.70 12699 34029 5955 24109 3965 81.8 MiB 0.84 0.01 4.04336 -2114.04 -4.04336 4.04336 1.14 0.00523607 0.00462609 0.321182 0.283146 66 20977 31 8.06603e+06 5.36665e+06 1.27759e+06 3943.17 11.82 2.23172 1.95058 36296 327148 -1 17186 18 6826 8108 1310195 302693 4.41926 4.41926 -2528.04 -4.41926 0 0 1.59950e+06 4936.74 0.63 0.54 0.33 -1 -1 0.63 0.264197 0.23916 1191 1275 494 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_28.v common 15.90 vpr 82.30 MiB 0.12 14656 -1 -1 1 0.56 -1 -1 42348 -1 -1 160 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84272 22 19 3945 3267 1 2045 209 18 18 324 mult_36 auto 44.5 MiB 0.71 12571 38029 7243 26756 4030 82.3 MiB 0.96 0.02 4.04336 -2170.12 -4.04336 4.04336 1.14 0.00547325 0.00483645 0.362301 0.319628 64 21106 27 8.06603e+06 5.42302e+06 1.23838e+06 3822.15 7.93 2.0653 1.81427 35972 318676 -1 17410 20 7293 8522 1484171 336948 4.39726 4.39726 -2474.73 -4.39726 0 0 1.56068e+06 4816.91 0.61 0.60 0.33 -1 -1 0.61 0.287842 0.259561 1219 1294 513 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_29.v common 22.10 vpr 83.21 MiB 0.13 15340 -1 -1 1 0.57 -1 -1 42416 -1 -1 170 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85212 22 19 4159 3447 1 2159 220 22 22 484 mult_36 auto 45.4 MiB 0.72 14056 43978 8188 31293 4497 83.2 MiB 1.03 0.01 3.91806 -2236.58 -3.91806 3.91806 1.85 0.00561879 0.00490187 0.400868 0.352439 58 25182 37 1.31202e+07 5.95997e+06 1.75961e+06 3635.55 12.15 2.01986 1.76398 52570 450426 -1 20182 17 8079 9501 1577157 355684 4.39726 4.39726 -2646.67 -4.39726 0 0 2.20457e+06 4554.90 0.94 0.58 0.45 -1 -1 0.94 0.258711 0.233103 1283 1367 532 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_30.v common 19.52 vpr 83.64 MiB 0.13 15212 -1 -1 1 0.60 -1 -1 44360 -1 -1 173 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85652 22 19 4233 3504 1 2198 223 22 22 484 mult_36 auto 45.8 MiB 0.74 14533 43487 8291 31241 3955 83.6 MiB 1.09 0.02 3.91806 -2255.77 -3.91806 3.91806 1.81 0.00636602 0.00573674 0.431557 0.384876 60 25397 30 1.31202e+07 6.00225e+06 1.79840e+06 3715.71 9.45 2.05591 1.80775 53054 462096 -1 20354 18 8161 9731 1572080 342983 4.39726 4.39726 -2789.84 -4.39726 0 0 2.25108e+06 4650.99 0.95 0.56 0.47 -1 -1 0.95 0.248556 0.222632 1311 1386 551 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_31.v common 27.56 vpr 86.02 MiB 0.14 15864 -1 -1 1 0.62 -1 -1 43628 -1 -1 179 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88084 22 19 4410 3647 1 2305 229 22 22 484 mult_36 auto 46.6 MiB 0.81 15322 42929 7649 30698 4582 85.3 MiB 1.05 0.02 3.79276 -2385.95 -3.79276 3.79276 1.85 0.00577337 0.00509891 0.394267 0.346852 62 28522 39 1.31202e+07 6.08682e+06 1.85176e+06 3825.95 17.16 2.80206 2.43831 53538 472186 -1 21733 19 8769 10511 1685754 386813 4.39726 4.39726 -3058.91 -4.39726 0 0 2.29262e+06 4736.82 0.94 0.66 0.47 -1 -1 0.94 0.303435 0.272232 1363 1441 570 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_32.v common 22.62 vpr 84.39 MiB 0.14 15768 -1 -1 1 0.66 -1 -1 44492 -1 -1 183 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86416 22 19 4484 3704 1 2348 233 22 22 484 mult_36 auto 46.6 MiB 0.81 14993 49637 9290 35917 4430 84.4 MiB 1.31 0.02 3.79276 -2377.97 -3.79276 3.79276 1.92 0.006548 0.00582657 0.482122 0.425842 58 27254 36 1.31202e+07 6.14319e+06 1.75961e+06 3635.55 11.74 2.56186 2.24009 52570 450426 -1 22239 20 9294 10968 1811473 407882 4.66986 4.66986 -2998.6 -4.66986 0 0 2.20457e+06 4554.90 0.96 0.71 0.45 -1 -1 0.96 0.328915 0.295458 1393 1460 589 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_33.v common 68.04 vpr 87.00 MiB 0.16 16940 -1 -1 1 0.73 -1 -1 45072 -1 -1 196 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89088 22 19 4843 4029 1 2463 247 22 22 484 mult_36 auto 48.5 MiB 0.87 15604 48235 8738 35234 4263 87.0 MiB 1.24 0.02 3.91806 -2564.55 -3.91806 3.91806 1.94 0.00650204 0.00567551 0.459954 0.405552 56 30414 45 1.31202e+07 6.72242e+06 1.71605e+06 3545.56 56.90 4.14719 3.58737 51606 428054 -1 24141 20 9764 11883 2306840 531778 4.41926 4.41926 -3388.04 -4.41926 0 0 2.11301e+06 4365.72 0.92 0.82 0.42 -1 -1 0.92 0.344848 0.30978 1490 1606 608 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_34.v common 57.58 vpr 87.07 MiB 0.16 16808 -1 -1 1 0.72 -1 -1 44960 -1 -1 199 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89160 22 19 4917 4086 1 2505 250 22 22 484 mult_36 auto 48.4 MiB 0.83 16663 43535 7326 32110 4099 87.1 MiB 1.12 0.02 3.79276 -2641.13 -3.79276 3.79276 1.89 0.00761521 0.00685122 0.434046 0.38471 58 30926 47 1.31202e+07 6.7647e+06 1.75961e+06 3635.55 46.75 4.00965 3.47191 52570 450426 -1 24654 17 9717 11413 2135275 479011 4.41926 4.41926 -3400.97 -4.41926 0 0 2.20457e+06 4554.90 0.91 0.71 0.45 -1 -1 0.91 0.295323 0.264645 1519 1625 627 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_35.v common 40.37 vpr 87.41 MiB 0.17 17304 -1 -1 1 0.77 -1 -1 45576 -1 -1 207 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89508 22 19 5093 4228 1 2607 258 22 22 484 mult_36 auto 49.6 MiB 0.87 16824 50339 8729 36816 4794 87.4 MiB 1.27 0.02 3.79276 -2720.17 -3.79276 3.79276 1.82 0.00714142 0.00636873 0.493588 0.436661 58 30585 39 1.31202e+07 6.87745e+06 1.75961e+06 3635.55 29.42 4.08631 3.54702 52570 450426 -1 24650 18 9862 11723 2159719 488108 4.41926 4.41926 -3392.05 -4.41926 0 0 2.20457e+06 4554.90 0.97 0.78 0.40 -1 -1 0.97 0.342219 0.307453 1572 1680 646 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_36.v common 23.79 vpr 87.27 MiB 0.16 17276 -1 -1 1 0.79 -1 -1 45328 -1 -1 209 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89360 22 19 5167 4285 1 2655 260 22 22 484 mult_36 auto 49.5 MiB 0.90 18085 55803 10476 39967 5360 87.3 MiB 1.37 0.02 3.91806 -2802.83 -3.91806 3.91806 1.92 0.006883 0.00600775 0.511043 0.447219 62 33718 50 1.31202e+07 6.90564e+06 1.85176e+06 3825.95 12.35 3.00424 2.61755 53538 472186 -1 25317 20 9977 11928 2237942 497839 4.64786 4.64786 -3361.94 -4.64786 0 0 2.29262e+06 4736.82 0.96 0.84 0.47 -1 -1 0.96 0.379675 0.341312 1600 1699 665 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_37.v common 33.54 vpr 100.04 MiB 0.18 17868 -1 -1 1 0.81 -1 -1 44440 -1 -1 218 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102436 22 19 5380 4464 1 2756 270 24 24 576 mult_36 auto 50.9 MiB 0.97 19315 53462 9850 39780 3832 88.5 MiB 1.42 0.02 4.04336 -3100.2 -4.04336 4.04336 2.27 0.00799291 0.00711881 0.515025 0.455876 66 31530 23 1.58331e+07 7.42849e+06 2.33135e+06 4047.49 20.68 3.14524 2.75041 65030 601923 -1 26571 20 9706 11371 2085612 460669 4.41926 4.41926 -3545.9 -4.41926 0 0 2.91907e+06 5067.82 1.23 0.84 0.60 -1 -1 1.23 0.399597 0.359474 1662 1772 684 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_38.v common 36.47 vpr 100.32 MiB 0.23 17948 -1 -1 1 0.88 -1 -1 44272 -1 -1 220 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 102732 22 19 5454 4521 1 2804 272 24 24 576 mult_36 auto 51.1 MiB 0.98 19282 50489 8615 37528 4346 88.8 MiB 1.42 0.02 4.16866 -3146.5 -4.16866 4.16866 2.32 0.00843232 0.00754758 0.539004 0.479342 66 35739 48 1.58331e+07 7.45668e+06 2.33135e+06 4047.49 23.39 4.09674 3.61914 65030 601923 -1 27269 18 9879 11687 1968529 423131 4.54456 4.54456 -3775.75 -4.54456 0 0 2.91907e+06 5067.82 1.27 0.75 0.60 -1 -1 1.27 0.341619 0.305566 1690 1791 703 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_39.v common 35.17 vpr 98.71 MiB 0.18 18304 -1 -1 1 0.86 -1 -1 44544 -1 -1 228 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101084 22 19 5629 4662 1 2910 280 24 24 576 mult_36 auto 52.2 MiB 0.95 20898 58840 11022 42885 4933 89.6 MiB 1.61 0.02 4.16866 -3259.29 -4.16866 4.16866 2.24 0.00721666 0.00606662 0.586675 0.50672 62 37697 47 1.58331e+07 7.56943e+06 2.19658e+06 3813.51 22.16 4.08914 3.56508 63306 560109 -1 28490 17 10533 12547 2178321 486670 4.52256 4.52256 -3731.33 -4.52256 0 0 2.72095e+06 4723.87 1.15 0.78 0.55 -1 -1 1.15 0.356931 0.320851 1742 1846 722 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_40.v common 25.07 vpr 91.04 MiB 0.19 18712 -1 -1 1 0.88 -1 -1 46188 -1 -1 232 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93224 22 19 5703 4719 1 2952 284 24 24 576 mult_36 auto 52.8 MiB 0.98 20139 67460 13337 49228 4895 91.0 MiB 1.70 0.02 4.16866 -3278.61 -4.16866 4.16866 2.23 0.00782034 0.00693804 0.597043 0.525409 62 36016 31 1.58331e+07 7.62581e+06 2.19658e+06 3813.51 11.92 2.80204 2.44181 63306 560109 -1 27923 18 10262 12261 1835087 415806 4.64786 4.64786 -3871.43 -4.64786 0 0 2.72095e+06 4723.87 1.19 0.77 0.55 -1 -1 1.19 0.378165 0.339309 1771 1865 741 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_41.v common 29.56 vpr 91.92 MiB 0.19 19044 -1 -1 1 0.97 -1 -1 44976 -1 -1 240 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94124 22 19 5950 4932 1 3067 293 24 24 576 mult_36 auto 53.7 MiB 1.04 22349 53753 9572 40092 4089 91.9 MiB 1.45 0.02 4.29396 -3480.87 -4.29396 4.29396 2.27 0.00779544 0.00686972 0.50631 0.445977 68 39022 36 1.58331e+07 8.13456e+06 2.39371e+06 4155.74 16.24 3.04069 2.64155 65606 615345 -1 30435 17 11224 13388 2142837 456635 4.52256 4.52256 -4088.91 -4.52256 0 0 2.98162e+06 5176.42 1.31 0.80 0.62 -1 -1 1.31 0.356979 0.320199 1841 1956 760 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_42.v common 34.88 vpr 103.41 MiB 0.18 19116 -1 -1 1 0.93 -1 -1 46744 -1 -1 242 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 105888 22 19 6024 4989 1 3108 295 24 24 576 mult_36 auto 54.0 MiB 1.01 20865 61117 10992 44737 5388 91.4 MiB 1.64 0.02 4.04336 -3434.84 -4.04336 4.04336 2.16 0.00905476 0.0081548 0.611095 0.542477 66 34371 33 1.58331e+07 8.16275e+06 2.33135e+06 4047.49 21.47 3.94635 3.47037 65030 601923 -1 28447 18 10417 12104 1964477 440597 4.54456 4.54456 -3991.61 -4.54456 0 0 2.91907e+06 5067.82 1.38 0.89 0.60 -1 -1 1.38 0.46567 0.419943 1869 1975 779 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_43.v common 38.87 vpr 105.38 MiB 0.20 19336 -1 -1 1 1.05 -1 -1 46296 -1 -1 250 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 107912 22 19 6198 5129 1 3209 303 24 24 576 mult_36 auto 54.9 MiB 1.09 21757 55221 9650 40929 4642 92.2 MiB 1.52 0.03 4.04336 -3511.43 -4.04336 4.04336 2.25 0.0093295 0.00837349 0.524745 0.461362 68 35086 22 1.58331e+07 8.2755e+06 2.39371e+06 4155.74 25.04 4.01691 3.52124 65606 615345 -1 29280 16 10662 12755 2288583 511819 4.54456 4.54456 -3990.68 -4.54456 0 0 2.98162e+06 5176.42 1.35 0.90 0.62 -1 -1 1.35 0.408277 0.36956 1921 2030 798 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_44.v common 26.98 vpr 92.76 MiB 0.20 19500 -1 -1 1 1.04 -1 -1 46860 -1 -1 253 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94984 22 19 6272 5186 1 3255 306 24 24 576 mult_36 auto 55.5 MiB 1.11 22275 61076 10007 45601 5468 92.8 MiB 1.70 0.03 4.04336 -3553.45 -4.04336 4.04336 2.25 0.00940294 0.00843071 0.592459 0.525605 66 37258 39 1.58331e+07 8.31778e+06 2.33135e+06 4047.49 13.07 3.27655 2.8765 65030 601923 -1 30318 17 11127 13245 2289105 523450 4.39726 4.39726 -4116.57 -4.39726 0 0 2.91907e+06 5067.82 1.30 0.91 0.60 -1 -1 1.30 0.425869 0.383825 1949 2049 817 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_45.v common 39.03 vpr 108.21 MiB 0.20 20016 -1 -1 1 1.10 -1 -1 47292 -1 -1 262 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 110804 22 19 6485 5365 1 3364 316 24 24 576 mult_36 auto 56.4 MiB 1.11 24817 63741 11102 47585 5054 93.6 MiB 1.73 0.03 4.16866 -3747.01 -4.16866 4.16866 2.21 0.00903638 0.0079995 0.595486 0.522664 76 37204 24 1.58331e+07 8.84063e+06 2.61600e+06 4541.67 24.87 4.4191 3.85277 68478 680951 -1 32516 19 11489 13201 2438818 530267 4.52256 4.52256 -4254.39 -4.52256 0 0 3.24203e+06 5628.53 1.48 0.99 0.65 -1 -1 1.48 0.478313 0.431057 2011 2122 836 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_46.v common 42.15 vpr 109.08 MiB 0.20 20176 -1 -1 1 1.08 -1 -1 47828 -1 -1 266 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 111696 22 19 6559 5422 1 3406 320 24 24 576 mult_36 auto 56.6 MiB 1.13 22802 67054 11144 49339 6571 94.1 MiB 1.86 0.03 4.04336 -3819.32 -4.04336 4.04336 2.29 0.0100684 0.00844811 0.639416 0.557018 70 37559 30 1.58331e+07 8.897e+06 2.45377e+06 4260.01 27.70 4.42638 3.85498 66754 640332 -1 31212 18 11357 13282 2432867 527959 4.41926 4.41926 -4322.53 -4.41926 0 0 3.09179e+06 5367.68 1.32 0.94 0.65 -1 -1 1.32 0.428608 0.384056 2040 2141 855 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_47.v common 26.36 vpr 98.46 MiB 0.21 20420 -1 -1 1 1.10 -1 -1 47820 -1 -1 273 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100820 22 19 6735 5564 1 3513 327 24 24 576 mult_36 auto 57.7 MiB 1.18 23701 69013 12134 50590 6289 95.1 MiB 1.81 0.03 4.04336 -3811.6 -4.04336 4.04336 2.26 0.00868596 0.00764462 0.596719 0.520796 70 37548 28 1.58331e+07 8.99566e+06 2.45377e+06 4260.01 11.98 2.87513 2.49219 66754 640332 -1 31684 15 11248 13177 2228966 508842 4.54456 4.54456 -4501.77 -4.54456 0 0 3.09179e+06 5367.68 1.35 0.82 0.66 -1 -1 1.35 0.376187 0.337087 2092 2196 874 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_48.v common 46.92 vpr 111.91 MiB 0.21 20912 -1 -1 1 1.17 -1 -1 47484 -1 -1 276 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 114592 22 19 6809 5621 1 3556 330 24 24 576 mult_36 auto 57.9 MiB 1.20 27266 69809 11906 52256 5647 95.1 MiB 1.94 0.03 4.29396 -4081.9 -4.29396 4.29396 2.26 0.0095307 0.00846921 0.63671 0.55943 78 42550 42 1.58331e+07 9.03794e+06 2.67122e+06 4637.53 32.05 4.91345 4.29024 69630 706637 -1 35831 17 12185 14020 2492999 518199 4.54456 4.54456 -4631.34 -4.54456 0 0 3.35110e+06 5817.88 1.50 0.99 0.68 -1 -1 1.50 0.475382 0.429658 2121 2215 893 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_49.v common 30.14 vpr 98.88 MiB 0.21 21192 -1 -1 1 1.18 -1 -1 48492 -1 -1 287 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 101256 22 19 7094 5872 1 3671 342 24 24 576 mult_36 auto 58.8 MiB 1.22 24909 79212 14493 58462 6257 96.3 MiB 2.13 0.03 3.91806 -4140.91 -3.91806 3.91806 2.27 0.0102889 0.00922753 0.698281 0.610958 72 40730 29 1.58331e+07 9.58898e+06 2.50747e+06 4353.24 15.06 3.79318 3.30258 67330 654343 -1 34066 18 12127 14738 2365431 525325 4.41926 4.41926 -4811.91 -4.41926 0 0 3.14081e+06 5452.80 1.38 0.94 0.67 -1 -1 1.38 0.464016 0.414514 2200 2324 912 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_50.v common 43.93 vpr 112.81 MiB 0.23 21292 -1 -1 1 1.26 -1 -1 47836 -1 -1 290 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 115516 22 19 7168 5929 1 3712 345 24 24 576 mult_36 auto 59.7 MiB 1.27 25129 71676 12100 53516 6060 97.1 MiB 1.96 0.03 4.16866 -4083.5 -4.16866 4.16866 2.23 0.0103805 0.00928509 0.648273 0.570241 74 40269 48 1.58331e+07 9.63126e+06 2.56259e+06 4448.94 28.77 5.75498 5.03754 67906 667765 -1 34606 17 12414 14601 2643270 582966 4.54456 4.54456 -4666.01 -4.54456 0 0 3.19068e+06 5539.38 1.38 0.99 0.67 -1 -1 1.38 0.468692 0.421815 2229 2343 931 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_51.v common 38.24 vpr 103.51 MiB 0.22 21740 -1 -1 1 1.24 -1 -1 48844 -1 -1 297 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 105992 22 19 7344 6071 1 3815 352 24 24 576 mult_36 auto 60.2 MiB 1.26 28078 81082 14438 58798 7846 97.8 MiB 2.44 0.04 4.04336 -4281.59 -4.04336 4.04336 2.30 0.0120184 0.0108253 0.807715 0.716014 74 46062 33 1.58331e+07 9.72992e+06 2.56259e+06 4448.94 22.15 4.19544 3.69563 67906 667765 -1 37518 18 13310 16010 3050623 644654 4.54456 4.54456 -4941.98 -4.54456 0 0 3.19068e+06 5539.38 1.48 1.25 0.68 -1 -1 1.48 0.595087 0.540266 2282 2398 950 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_pipe_52.v common 42.17 vpr 105.20 MiB 0.24 22048 -1 -1 1 1.33 -1 -1 48700 -1 -1 301 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 107720 22 19 7418 6128 1 3860 356 24 24 576 mult_36 auto 60.8 MiB 1.31 29153 84843 16205 61574 7064 98.3 MiB 2.32 0.03 4.41926 -4352.54 -4.41926 4.41926 2.22 0.0100805 0.008896 0.735521 0.643396 76 48219 44 1.58331e+07 9.78629e+06 2.61600e+06 4541.67 26.13 4.74881 4.12302 68478 680951 -1 39397 16 13872 16802 3155387 663716 4.66986 4.66986 -5034.98 -4.66986 0 0 3.24203e+06 5628.53 1.47 1.12 0.69 -1 -1 1.47 0.485836 0.437645 2310 2417 969 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_14.v common 9.16 vpr 69.21 MiB 0.05 9424 -1 -1 1 0.17 -1 -1 38892 -1 -1 58 22 0 4 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70876 22 19 1246 925 1 732 103 16 16 256 mult_36 auto 31.0 MiB 1.47 4126 13599 3288 7515 2796 69.2 MiB 0.29 0.00 7.19561 -316.153 -7.19561 7.19561 0.83 0.00185914 0.00164689 0.119591 0.107096 44 8713 33 6.54114e+06 2.40144e+06 686998. 2683.59 3.90 0.538586 0.478584 24576 170172 -1 6406 23 4368 5037 807916 206168 7.51993 7.51993 -446.872 -7.51993 0 0 871168. 3403.00 0.32 0.27 0.16 -1 -1 0.32 0.101577 0.0918057 421 285 247 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_15.v common 23.01 vpr 69.79 MiB 0.05 9984 -1 -1 1 0.18 -1 -1 38700 -1 -1 61 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71468 22 19 1344 989 1 791 107 16 16 256 mult_36 auto 31.6 MiB 1.12 4590 15793 3675 9943 2175 69.8 MiB 0.32 0.01 7.34797 -347.906 -7.34797 7.34797 0.80 0.00202087 0.00181567 0.132636 0.119158 42 10186 50 6.54114e+06 2.83972e+06 649763. 2538.14 18.03 1.26732 1.12643 24068 159480 -1 7431 25 6535 7239 1238403 316685 8.32198 8.32198 -470.084 -8.32198 0 0 829453. 3240.05 0.31 0.39 0.15 -1 -1 0.31 0.121878 0.109828 453 304 266 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_16.v common 13.16 vpr 69.93 MiB 0.06 9892 -1 -1 1 0.19 -1 -1 38996 -1 -1 65 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71604 22 19 1418 1046 1 832 111 16 16 256 mult_36 auto 31.6 MiB 1.59 4944 15273 3530 9763 1980 69.9 MiB 0.34 0.01 7.43407 -362.436 -7.43407 7.43407 0.80 0.00222947 0.00200222 0.132317 0.118432 46 9679 30 6.54114e+06 2.89609e+06 723233. 2825.13 7.53 0.978925 0.867567 24832 174915 -1 7514 26 6056 6734 1209198 293059 8.16088 8.16088 -478.482 -8.16088 0 0 890343. 3477.90 0.34 0.39 0.17 -1 -1 0.34 0.136513 0.12362 481 323 285 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_17.v common 10.85 vpr 70.77 MiB 0.06 10608 -1 -1 1 0.20 -1 -1 38600 -1 -1 71 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72472 22 19 1518 1112 1 895 117 16 16 256 mult_36 auto 32.5 MiB 1.44 5518 18421 4182 12406 1833 70.8 MiB 0.43 0.01 8.02295 -404.324 -8.02295 8.02295 0.82 0.00221508 0.00199542 0.159058 0.142702 44 12418 41 6.54114e+06 2.98066e+06 686998. 2683.59 5.10 0.727219 0.649027 24576 170172 -1 8801 25 7860 8887 1659814 395772 9.24972 9.24972 -666.169 -9.24972 0 0 871168. 3403.00 0.33 0.48 0.17 -1 -1 0.33 0.135013 0.122027 514 342 304 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_18.v common 11.06 vpr 70.82 MiB 0.07 10460 -1 -1 1 0.20 -1 -1 39200 -1 -1 74 22 0 5 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72524 22 19 1592 1169 1 934 120 16 16 256 mult_36 auto 32.8 MiB 1.93 5784 16345 3564 10173 2608 70.8 MiB 0.37 0.01 7.85361 -416.128 -7.85361 7.85361 0.85 0.00234711 0.00209849 0.140777 0.126368 46 11556 40 6.54114e+06 3.02294e+06 723233. 2825.13 4.96 0.805938 0.718524 24832 174915 -1 8684 25 7474 8512 1194755 307509 8.75532 8.75532 -545.747 -8.75532 0 0 890343. 3477.90 0.34 0.39 0.17 -1 -1 0.34 0.139241 0.125897 542 361 323 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_19.v common 11.01 vpr 71.22 MiB 0.07 10956 -1 -1 1 0.23 -1 -1 39880 -1 -1 79 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72928 22 19 1688 1231 1 993 126 16 16 256 mult_36 auto 33.4 MiB 1.72 5920 19971 4464 11054 4453 71.2 MiB 0.43 0.01 8.10615 -401.301 -8.10615 8.10615 0.85 0.0024516 0.00217676 0.171657 0.153613 50 10848 32 6.54114e+06 3.48941e+06 787708. 3076.99 4.91 0.838827 0.747512 25344 186282 -1 8469 22 5730 6610 1165855 287286 8.22927 8.22927 -564.873 -8.22927 0 0 943753. 3686.54 0.36 0.38 0.18 -1 -1 0.36 0.135998 0.123278 573 380 342 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_20.v common 14.66 vpr 71.48 MiB 0.07 10800 -1 -1 1 0.26 -1 -1 39204 -1 -1 81 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73192 22 19 1762 1288 1 1031 128 16 16 256 mult_36 auto 33.4 MiB 1.99 6186 18482 3689 12573 2220 71.5 MiB 0.46 0.01 7.9436 -456.327 -7.9436 7.9436 0.82 0.00258252 0.00231055 0.165566 0.148418 50 11511 39 6.54114e+06 3.51759e+06 787708. 3076.99 8.19 1.27781 1.13109 25344 186282 -1 9255 25 7841 8855 1364835 334353 8.62813 8.62813 -656.951 -8.62813 0 0 943753. 3686.54 0.34 0.45 0.17 -1 -1 0.34 0.16568 0.150107 601 399 361 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_21.v common 14.82 vpr 72.06 MiB 0.08 11348 -1 -1 1 0.27 -1 -1 39436 -1 -1 85 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73788 22 19 1859 1351 1 1092 132 16 16 256 mult_36 auto 34.1 MiB 1.95 6836 14872 2718 8882 3272 72.1 MiB 0.37 0.01 8.14906 -433.146 -8.14906 8.14906 0.84 0.00300566 0.0026701 0.144944 0.130012 56 11534 32 6.54114e+06 3.57397e+06 849745. 3319.32 8.38 1.23191 1.09336 26364 208198 -1 9628 22 6339 7320 1310569 338007 8.38997 8.38997 -728.951 -8.38997 0 0 1.04740e+06 4091.43 0.39 0.42 0.21 -1 -1 0.39 0.14409 0.130419 632 418 380 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_22.v common 11.85 vpr 72.30 MiB 0.08 11440 -1 -1 1 0.28 -1 -1 39788 -1 -1 90 22 0 6 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74032 22 19 1933 1408 1 1130 137 16 16 256 mult_36 auto 34.4 MiB 2.23 7196 17434 3658 11172 2604 72.3 MiB 0.42 0.01 7.9828 -460.568 -7.9828 7.9828 0.81 0.00291335 0.00261136 0.157798 0.141623 54 12588 34 6.54114e+06 3.64444e+06 829453. 3240.05 5.09 0.912865 0.810567 26108 202796 -1 10016 22 6590 7531 1312775 338923 8.38952 8.38952 -658.754 -8.38952 0 0 1.02522e+06 4004.78 0.38 0.43 0.20 -1 -1 0.38 0.151362 0.136937 661 437 399 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_23.v common 15.18 vpr 72.93 MiB 0.09 11548 -1 -1 1 0.28 -1 -1 40440 -1 -1 94 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74680 22 19 2031 1472 1 1193 142 18 18 324 mult_36 auto 34.8 MiB 2.21 7533 21972 4660 14932 2380 72.9 MiB 0.54 0.01 8.23145 -484.541 -8.23145 8.23145 1.14 0.00308672 0.00279587 0.206322 0.186895 48 15603 47 8.06603e+06 4.09681e+06 991730. 3060.90 7.26 1.0735 0.956099 32420 239176 -1 12047 22 8487 9722 2322685 529527 8.56018 8.56018 -723.884 -8.56018 0 0 1.20291e+06 3712.69 0.52 0.63 0.24 -1 -1 0.52 0.164435 0.148564 693 456 418 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_24.v common 15.29 vpr 73.23 MiB 0.08 11792 -1 -1 1 0.29 -1 -1 39776 -1 -1 97 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74988 22 19 2105 1529 1 1230 145 18 18 324 mult_36 auto 35.3 MiB 2.25 7543 25225 5382 16989 2854 73.2 MiB 0.58 0.01 8.08841 -485.829 -8.08841 8.08841 1.10 0.00309036 0.00271641 0.22306 0.198342 48 14780 39 8.06603e+06 4.13909e+06 991730. 3060.90 7.55 1.10675 0.980105 32420 239176 -1 11834 22 8663 10087 2002039 472234 8.49133 8.49133 -775.356 -8.49133 0 0 1.20291e+06 3712.69 0.47 0.58 0.22 -1 -1 0.47 0.173284 0.156367 721 475 437 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_25.v common 13.83 vpr 73.32 MiB 0.10 11868 -1 -1 1 0.46 -1 -1 40628 -1 -1 101 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75076 22 19 2201 1591 1 1290 149 18 18 324 mult_36 auto 35.5 MiB 2.22 8448 26153 5577 17506 3070 73.3 MiB 0.66 0.01 7.96791 -506.442 -7.96791 7.96791 1.14 0.00355176 0.00319319 0.244252 0.220159 52 16538 39 8.06603e+06 4.19547e+06 1.06151e+06 3276.26 5.62 1.01459 0.905409 33388 261900 -1 12284 24 8735 10127 1855821 444983 8.37912 8.37912 -775.894 -8.37912 0 0 1.31159e+06 4048.11 0.48 0.55 0.26 -1 -1 0.48 0.176887 0.15897 751 494 456 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_26.v common 35.45 vpr 74.00 MiB 0.10 12088 -1 -1 1 0.33 -1 -1 40460 -1 -1 105 22 0 7 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75780 22 19 2275 1648 1 1330 153 18 18 324 mult_36 auto 36.3 MiB 2.61 8611 27556 5555 18937 3064 74.0 MiB 0.68 0.01 8.06101 -524.207 -8.06101 8.06101 1.13 0.00320974 0.00286533 0.231893 0.207031 50 17509 46 8.06603e+06 4.25184e+06 1.03391e+06 3191.07 26.84 1.97719 1.73695 32744 246704 -1 13426 24 9686 11110 2418806 553059 9.21432 9.21432 -782.997 -9.21432 0 0 1.23838e+06 3822.15 0.47 0.70 0.24 -1 -1 0.47 0.203119 0.182813 779 513 475 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_27.v common 17.56 vpr 74.31 MiB 0.10 12276 -1 -1 1 0.36 -1 -1 40052 -1 -1 111 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76092 22 19 2385 1724 1 1404 160 18 18 324 mult_36 auto 36.4 MiB 2.49 9705 29672 6313 19925 3434 74.3 MiB 0.78 0.01 8.23145 -578.333 -8.23145 8.23145 1.14 0.00350613 0.0031092 0.259574 0.2323 58 16361 31 8.06603e+06 4.73242e+06 1.14310e+06 3528.09 8.80 1.15881 1.02838 34680 290288 -1 13876 24 8631 9987 2042289 459570 8.47753 8.47753 -898.114 -8.47753 0 0 1.43297e+06 4422.75 0.57 0.62 0.29 -1 -1 0.57 0.199362 0.180198 817 532 494 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_28.v common 17.92 vpr 74.58 MiB 0.11 12416 -1 -1 1 0.37 -1 -1 40968 -1 -1 114 22 0 8 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76368 22 19 2459 1781 1 1443 163 18 18 324 mult_36 auto 36.7 MiB 2.76 9733 29088 5652 19394 4042 74.6 MiB 0.69 0.01 8.06101 -544.006 -8.06101 8.06101 1.08 0.00353551 0.00315624 0.230687 0.205737 54 18395 44 8.06603e+06 4.7747e+06 1.08842e+06 3359.33 9.04 1.23714 1.09472 33712 268580 -1 14124 24 10026 11366 2310828 529686 8.71208 8.71208 -762.354 -8.71208 0 0 1.34436e+06 4149.26 0.52 0.65 0.27 -1 -1 0.52 0.195803 0.17577 845 551 513 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_29.v common 26.75 vpr 75.17 MiB 0.10 12756 -1 -1 1 0.36 -1 -1 40660 -1 -1 118 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76976 22 19 2565 1853 1 1511 168 22 22 484 mult_36 auto 37.4 MiB 2.67 9630 34430 7085 23805 3540 75.2 MiB 0.91 0.01 7.85556 -558.211 -7.85556 7.85556 1.77 0.00424615 0.00374564 0.331925 0.297677 56 16065 49 1.31202e+07 5.22708e+06 1.71605e+06 3545.56 15.78 2.08047 1.86138 51606 428054 -1 14465 24 9823 11308 2361257 540539 8.57852 8.57852 -966.384 -8.57852 0 0 2.11301e+06 4365.72 0.92 0.76 0.42 -1 -1 0.92 0.248047 0.22415 881 570 532 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_30.v common 20.26 vpr 75.35 MiB 0.11 13024 -1 -1 1 0.40 -1 -1 40920 -1 -1 123 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77160 22 19 2639 1910 1 1548 173 22 22 484 mult_36 auto 37.6 MiB 3.05 10674 35767 7547 24480 3740 75.4 MiB 0.83 0.01 7.93377 -571.511 -7.93377 7.93377 1.87 0.00393141 0.00345507 0.304598 0.271107 54 18976 32 1.31202e+07 5.29755e+06 1.67518e+06 3461.11 8.56 1.32651 1.1783 51122 416746 -1 15294 23 11820 13499 3068727 705910 8.51387 8.51387 -992.369 -8.51387 0 0 2.06816e+06 4273.05 0.89 0.83 0.41 -1 -1 0.89 0.211305 0.189988 910 589 551 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_31.v common 27.62 vpr 76.21 MiB 0.11 13020 -1 -1 1 0.41 -1 -1 40868 -1 -1 128 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78036 22 19 2744 1981 1 1618 178 22 22 484 mult_36 auto 38.6 MiB 2.90 10467 34678 6929 23489 4260 76.2 MiB 0.87 0.01 7.94165 -568.252 -7.94165 7.94165 1.85 0.00414231 0.00373111 0.302949 0.268759 52 20361 38 1.31202e+07 5.36802e+06 1.63434e+06 3376.74 16.16 2.0106 1.78235 50638 406276 -1 15253 26 11969 13872 2485473 573133 8.69282 8.69282 -966.636 -8.69282 0 0 2.01763e+06 4168.66 0.87 0.79 0.40 -1 -1 0.87 0.25131 0.226396 946 608 570 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_32.v common 30.42 vpr 75.99 MiB 0.12 13244 -1 -1 1 0.42 -1 -1 40728 -1 -1 131 22 0 9 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77816 22 19 2818 2038 1 1656 181 22 22 484 mult_36 auto 38.5 MiB 3.48 11176 37995 7874 25798 4323 76.0 MiB 1.10 0.01 8.06101 -660.081 -8.06101 8.06101 1.88 0.00455862 0.00402923 0.361729 0.321281 54 20566 45 1.31202e+07 5.4103e+06 1.67518e+06 3461.11 18.30 2.29488 2.03206 51122 416746 -1 16377 22 10140 11692 2078569 470821 8.86422 8.86422 -1141.02 -8.86422 0 0 2.06816e+06 4273.05 0.85 0.62 0.40 -1 -1 0.85 0.206226 0.185277 974 627 589 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_33.v common 28.75 vpr 77.23 MiB 0.12 13776 -1 -1 1 0.46 -1 -1 41528 -1 -1 137 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79088 22 19 2923 2109 1 1725 188 22 22 484 mult_36 auto 39.2 MiB 3.11 10924 31930 6175 20764 4991 77.2 MiB 0.81 0.01 8.6279 -637.743 -8.6279 8.6279 1.89 0.0047542 0.00430417 0.296072 0.263092 54 20339 47 1.31202e+07 5.89087e+06 1.67518e+06 3461.11 17.11 2.15084 1.90097 51122 416746 -1 15858 22 11443 13311 2323059 546187 9.62842 9.62842 -1101.52 -9.62842 0 0 2.06816e+06 4273.05 0.87 0.71 0.41 -1 -1 0.87 0.228525 0.20598 1009 646 608 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_34.v common 23.44 vpr 77.37 MiB 0.13 14164 -1 -1 1 0.47 -1 -1 41468 -1 -1 140 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79228 22 19 2997 2166 1 1764 191 22 22 484 mult_36 auto 39.6 MiB 4.70 11533 32033 6114 22882 3037 77.4 MiB 0.88 0.01 8.3711 -635.068 -8.3711 8.3711 1.86 0.00442944 0.00402098 0.293234 0.261041 52 23298 47 1.31202e+07 5.93316e+06 1.63434e+06 3376.74 9.69 1.53057 1.35816 50638 406276 -1 17087 26 14769 16860 3531445 795318 9.12347 9.12347 -1194.96 -9.12347 0 0 2.01763e+06 4168.66 0.88 1.01 0.40 -1 -1 0.88 0.273853 0.246524 1037 665 627 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_35.v common 25.01 vpr 77.67 MiB 0.13 14412 -1 -1 1 0.47 -1 -1 41512 -1 -1 145 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79532 22 19 3101 2236 1 1830 196 22 22 484 mult_36 auto 40.0 MiB 4.22 12086 36043 6992 25524 3527 77.7 MiB 0.99 0.02 8.4275 -711.097 -8.4275 8.4275 1.81 0.00434046 0.00387085 0.304597 0.269487 54 22524 45 1.31202e+07 6.00363e+06 1.67518e+06 3461.11 11.98 1.74637 1.53766 51122 416746 -1 18001 24 12863 14738 2887421 666439 9.32361 9.32361 -1239.44 -9.32361 0 0 2.06816e+06 4273.05 0.86 0.82 0.41 -1 -1 0.86 0.244051 0.219245 1072 684 646 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_36.v common 26.52 vpr 78.43 MiB 0.12 14300 -1 -1 1 0.46 -1 -1 41940 -1 -1 148 22 0 10 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80312 22 19 3175 2293 1 1870 199 22 22 484 mult_36 auto 40.8 MiB 4.67 12781 43119 8726 29281 5112 78.4 MiB 1.17 0.02 8.34004 -660.883 -8.34004 8.34004 1.75 0.00524583 0.00479126 0.418075 0.374218 54 24563 50 1.31202e+07 6.04591e+06 1.67518e+06 3461.11 12.99 2.11028 1.88087 51122 416746 -1 18238 24 13699 15543 3147923 729824 9.48432 9.48432 -1059.24 -9.48432 0 0 2.06816e+06 4273.05 0.86 0.94 0.37 -1 -1 0.86 0.293157 0.265177 1100 703 665 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_37.v common 33.61 vpr 82.40 MiB 0.13 14608 -1 -1 1 0.50 -1 -1 41648 -1 -1 152 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84376 22 19 3280 2364 1 1940 204 24 24 576 mult_36 auto 41.1 MiB 4.29 13331 36204 7184 26022 2998 78.7 MiB 0.98 0.02 8.78 -757.406 -8.78 8.78 2.22 0.00493612 0.00443623 0.315864 0.281726 56 22768 35 1.58331e+07 6.49829e+06 2.03561e+06 3534.04 19.45 2.34728 2.0787 61006 507707 -1 19104 23 11411 13259 2655878 608193 9.28477 9.28477 -1293 -9.28477 0 0 2.50747e+06 4353.24 1.09 0.83 0.45 -1 -1 1.09 0.276609 0.249116 1135 722 684 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_38.v common 34.75 vpr 82.95 MiB 0.14 14576 -1 -1 1 0.53 -1 -1 42168 -1 -1 157 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84936 22 19 3354 2421 1 1977 209 24 24 576 mult_36 auto 41.6 MiB 5.39 13580 41749 8432 27991 5326 79.1 MiB 1.10 0.02 8.89936 -771.456 -8.89936 8.89936 2.21 0.00488754 0.00438223 0.362842 0.323315 56 22788 32 1.58331e+07 6.56876e+06 2.03561e+06 3534.04 19.08 2.33619 2.06776 61006 507707 -1 19405 23 12195 13908 2770837 653725 9.60567 9.60567 -1277.34 -9.60567 0 0 2.50747e+06 4353.24 1.10 0.87 0.50 -1 -1 1.10 0.273559 0.246185 1164 741 703 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_39.v common 38.51 vpr 80.93 MiB 0.14 15168 -1 -1 1 0.54 -1 -1 41356 -1 -1 161 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82872 22 19 3457 2490 1 2042 213 24 24 576 mult_36 auto 41.7 MiB 4.79 13989 42123 8704 27991 5428 79.3 MiB 1.11 0.02 8.87541 -878.92 -8.87541 8.87541 2.20 0.00501639 0.0043927 0.362566 0.319777 58 23334 24 1.58331e+07 6.62513e+06 2.08734e+06 3623.85 23.16 2.85552 2.52286 62154 534210 -1 19584 24 13314 14876 3172180 729547 9.53452 9.53452 -1263.64 -9.53452 0 0 2.61600e+06 4541.67 1.15 0.94 0.53 -1 -1 1.15 0.275802 0.246949 1198 760 722 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_40.v common 30.29 vpr 79.86 MiB 0.15 15064 -1 -1 1 0.56 -1 -1 41604 -1 -1 164 22 0 11 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81780 22 19 3531 2547 1 2082 216 24 24 576 mult_36 auto 42.2 MiB 5.76 14820 42918 8096 31052 3770 79.9 MiB 1.23 0.02 8.9053 -844.861 -8.9053 8.9053 2.25 0.00548106 0.00492874 0.39783 0.356006 56 26713 45 1.58331e+07 6.66742e+06 2.03561e+06 3534.04 13.87 1.91608 1.69407 61006 507707 -1 20942 26 15132 17050 3372860 790903 9.89697 9.89697 -1547.52 -9.89697 0 0 2.50747e+06 4353.24 1.10 1.04 0.49 -1 -1 1.10 0.325621 0.292514 1226 779 741 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_41.v common 29.24 vpr 80.37 MiB 0.15 15532 -1 -1 1 0.59 -1 -1 41968 -1 -1 170 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82300 22 19 3634 2616 1 2147 223 24 24 576 mult_36 auto 42.8 MiB 5.29 15419 47543 9787 31562 6194 80.4 MiB 1.29 0.02 8.53134 -891.909 -8.53134 8.53134 2.15 0.00562112 0.00508385 0.422266 0.377036 56 26720 35 1.58331e+07 7.14798e+06 2.03561e+06 3534.04 13.09 2.13415 1.88973 61006 507707 -1 22205 30 17116 19362 4018881 950323 9.56242 9.56242 -1454.65 -9.56242 0 0 2.50747e+06 4353.24 1.09 1.29 0.50 -1 -1 1.09 0.392933 0.352353 1261 798 760 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_42.v common 36.52 vpr 85.88 MiB 0.15 15380 -1 -1 1 0.62 -1 -1 42232 -1 -1 173 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 87936 22 19 3708 2673 1 2186 226 24 24 576 mult_36 auto 43.3 MiB 6.13 15376 41506 7485 30709 3312 80.7 MiB 1.14 0.02 8.8192 -878.311 -8.8192 8.8192 2.30 0.00552963 0.00497504 0.367203 0.326775 58 24358 27 1.58331e+07 7.19026e+06 2.08734e+06 3623.85 19.55 2.43356 2.14557 62154 534210 -1 20582 24 12534 14201 2902587 667440 9.40282 9.40282 -1526.04 -9.40282 0 0 2.61600e+06 4541.67 1.21 0.94 0.53 -1 -1 1.21 0.314593 0.283462 1289 817 779 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_43.v common 36.72 vpr 86.24 MiB 0.16 15672 -1 -1 1 0.63 -1 -1 43160 -1 -1 178 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88308 22 19 3810 2741 1 2253 231 24 24 576 mult_36 auto 43.3 MiB 5.66 15396 48375 8984 34271 5120 80.9 MiB 1.38 0.02 8.88641 -919.202 -8.88641 8.88641 2.28 0.00580808 0.00523231 0.43866 0.391039 58 24392 30 1.58331e+07 7.26073e+06 2.08734e+06 3623.85 20.00 2.77725 2.46305 62154 534210 -1 21013 24 12221 13982 2549487 585287 9.36001 9.36001 -1512.08 -9.36001 0 0 2.61600e+06 4541.67 1.21 0.87 0.53 -1 -1 1.21 0.324689 0.292602 1323 836 798 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_44.v common 32.00 vpr 81.21 MiB 0.16 15872 -1 -1 1 0.64 -1 -1 42616 -1 -1 181 22 0 12 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83160 22 19 3884 2798 1 2294 234 24 24 576 mult_36 auto 43.7 MiB 6.41 15695 50634 10216 36572 3846 81.2 MiB 1.42 0.02 9.0306 -865.997 -9.0306 9.0306 2.32 0.006419 0.00575903 0.46902 0.420522 56 26924 41 1.58331e+07 7.30301e+06 2.03561e+06 3534.04 14.25 2.38043 2.11318 61006 507707 -1 22654 23 14161 16148 3517674 839606 9.29862 9.29862 -1363.77 -9.29862 0 0 2.50747e+06 4353.24 1.10 1.10 0.50 -1 -1 1.10 0.33991 0.306989 1351 855 817 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_45.v common 33.50 vpr 81.99 MiB 0.15 16296 -1 -1 1 0.64 -1 -1 44620 -1 -1 186 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 83960 22 19 3989 2869 1 2359 240 24 24 576 mult_36 auto 44.6 MiB 5.63 16586 47175 9296 29567 8312 82.0 MiB 1.26 0.02 8.86016 -892.249 -8.86016 8.86016 2.15 0.00599021 0.00520472 0.458121 0.406383 60 27036 42 1.58331e+07 7.76948e+06 2.13333e+06 3703.69 17.29 2.7704 2.46781 62730 548095 -1 22208 21 13069 14999 2728503 631386 9.22157 9.22157 -1496.03 -9.22157 0 0 2.67122e+06 4637.53 1.16 0.92 0.50 -1 -1 1.16 0.338048 0.308486 1387 874 836 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_46.v common 79.61 vpr 82.19 MiB 0.17 16312 -1 -1 1 0.67 -1 -1 44432 -1 -1 189 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84160 22 19 4063 2926 1 2398 243 24 24 576 mult_36 auto 44.8 MiB 6.90 16366 48755 9640 33575 5540 82.2 MiB 1.39 0.02 9.054 -956.36 -9.054 9.054 2.35 0.00726697 0.00665937 0.499307 0.446728 58 26866 38 1.58331e+07 7.81177e+06 2.08734e+06 3623.85 61.30 4.14571 3.68149 62154 534210 -1 22678 23 12128 14605 2578223 595205 9.54532 9.54532 -1500.74 -9.54532 0 0 2.61600e+06 4541.67 1.20 0.95 0.53 -1 -1 1.20 0.378572 0.343488 1414 893 855 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_47.v common 33.93 vpr 82.30 MiB 0.18 16680 -1 -1 1 0.69 -1 -1 44152 -1 -1 194 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84272 22 19 4167 2996 1 2465 248 24 24 576 mult_36 auto 44.8 MiB 6.35 16756 56264 10551 39124 6589 82.3 MiB 1.63 0.02 8.78 -934.517 -8.78 8.78 2.24 0.00641729 0.00578644 0.515453 0.458442 54 32052 44 1.58331e+07 7.88224e+06 1.98675e+06 3449.22 16.13 2.55109 2.25694 60430 494267 -1 23522 23 17256 19618 3247979 772336 9.18877 9.18877 -1466.68 -9.18877 0 0 2.45377e+06 4260.01 1.03 1.01 0.48 -1 -1 1.03 0.329447 0.293773 1449 912 874 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_48.v common 35.53 vpr 82.66 MiB 0.18 16968 -1 -1 1 0.72 -1 -1 44952 -1 -1 197 22 0 13 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84640 22 19 4241 3053 1 2504 251 24 24 576 mult_36 auto 45.3 MiB 6.91 16592 54039 10397 38745 4897 82.7 MiB 1.53 0.02 8.89515 -970.509 -8.89515 8.89515 2.24 0.0064429 0.00580626 0.485167 0.428777 56 30583 40 1.58331e+07 7.92452e+06 2.03561e+06 3534.04 17.15 2.82393 2.48831 61006 507707 -1 24141 23 17320 20051 3927676 922664 9.72161 9.72161 -1655.46 -9.72161 0 0 2.50747e+06 4353.24 1.12 1.18 0.47 -1 -1 1.12 0.356972 0.319208 1477 931 893 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_49.v common 40.45 vpr 90.61 MiB 0.19 17104 -1 -1 1 0.72 -1 -1 44712 -1 -1 204 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 92788 22 19 4346 3124 1 2572 259 24 24 576 mult_36 auto 45.9 MiB 6.83 18496 58834 11440 41005 6389 83.2 MiB 1.62 0.02 8.78 -969.116 -8.78 8.78 2.23 0.0059763 0.00529512 0.476634 0.419912 60 29702 38 1.58331e+07 8.41918e+06 2.13333e+06 3703.69 21.89 2.94801 2.58349 62730 548095 -1 24502 24 13507 15871 3486010 800987 9.31786 9.31786 -1403.84 -9.31786 0 0 2.67122e+06 4637.53 1.16 1.07 0.54 -1 -1 1.16 0.338307 0.303158 1512 950 912 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_50.v common 35.47 vpr 83.49 MiB 0.20 17236 -1 -1 1 0.75 -1 -1 44784 -1 -1 206 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85492 22 19 4420 3181 1 2611 261 24 24 576 mult_36 auto 46.2 MiB 7.57 18686 55239 10036 36936 8267 83.5 MiB 1.54 0.02 9.0038 -1034.93 -9.0038 9.0038 2.32 0.00722973 0.00633691 0.482875 0.424384 58 30686 34 1.58331e+07 8.44736e+06 2.08734e+06 3623.85 16.20 2.71223 2.39015 62154 534210 -1 24892 26 15174 17397 3231795 740729 9.40327 9.40327 -1688.24 -9.40327 0 0 2.61600e+06 4541.67 1.13 1.05 0.52 -1 -1 1.13 0.384433 0.342701 1541 969 931 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_51.v common 34.63 vpr 83.73 MiB 0.19 17724 -1 -1 1 0.77 -1 -1 45312 -1 -1 211 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 85736 22 19 4524 3251 1 2680 266 24 24 576 mult_36 auto 46.3 MiB 6.66 19641 54986 10603 39865 4518 83.7 MiB 1.58 0.02 8.8082 -1056.84 -8.8082 8.8082 2.16 0.00651646 0.00580959 0.46509 0.407663 60 33152 33 1.58331e+07 8.51783e+06 2.13333e+06 3703.69 16.17 2.53519 2.2302 62730 548095 -1 26544 24 15536 17928 3612845 789180 9.39401 9.39401 -1642.78 -9.39401 0 0 2.67122e+06 4637.53 1.23 1.20 0.53 -1 -1 1.23 0.424641 0.382743 1576 988 950 19 0 0 + k6_frac_uripple_N8_22nm.xml fir_nopipe_52.v common 47.17 vpr 92.77 MiB 0.23 17800 -1 -1 1 0.78 -1 -1 45452 -1 -1 215 22 0 14 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 94996 22 19 4598 3308 1 2717 270 24 24 576 mult_36 auto 47.0 MiB 7.99 19395 60438 12315 39917 8206 84.3 MiB 1.77 0.02 8.90724 -1082.03 -8.90724 8.90724 2.20 0.00599894 0.00536189 0.538629 0.47536 64 30543 45 1.58331e+07 8.57421e+06 2.26035e+06 3924.22 26.97 3.70854 3.25725 64454 586630 -1 25860 23 14676 17068 3283080 720817 9.03727 9.03727 -2150.25 -9.03727 0 0 2.84938e+06 4946.85 1.32 1.01 0.59 -1 -1 1.32 0.363528 0.325209 1605 1007 969 19 0 0 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/figure_8/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/figure_8/config/golden_results.txt index d74766d3013..e084499a303 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/figure_8/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/figure_8/config/golden_results.txt @@ -1,221 +1,221 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_003bits.v common 3.00 vpr 58.98 MiB 0.01 5612 -1 -1 1 0.05 -1 -1 31404 -1 -1 2 7 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60392 7 4 21 25 1 15 13 17 17 289 -1 unnamed_device 20.5 MiB 0.00 44 59.0 MiB 0.01 0.00 0.581048 -5.42573 -0.581048 0.581048 0.85 2.563e-05 1.7992e-05 0.000739691 0.000554982 20 110 9 6.55708e+06 24110 394039. 1363.46 0.48 0.00167542 0.00134906 19870 87366 -1 80 6 30 30 1154 409 0 0 1154 409 30 30 0 0 109 82 0 0 152 118 0 0 30 30 0 0 535 67 0 0 298 82 0 0 30 0 0 0 0 0 30 0 0 0.71851 0.71851 -7.22873 -0.71851 0 0 477104. 1650.88 0.20 0.00 0.11 -1 -1 0.20 0.000764292 0.000662719 10 4 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_004bits.v common 2.51 vpr 59.11 MiB 0.01 5620 -1 -1 2 0.04 -1 -1 32160 -1 -1 2 9 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60524 9 5 28 33 1 21 16 17 17 289 -1 unnamed_device 20.7 MiB 0.01 50 59.1 MiB 0.00 0.00 0.819447 -7.51001 -0.819447 0.819447 0.64 1.8934e-05 1.2753e-05 0.000528217 0.00039616 20 164 9 6.55708e+06 24110 394039. 1363.46 0.37 0.00150197 0.00122388 19870 87366 -1 148 6 65 71 3434 1161 0 0 3434 1161 71 65 0 0 291 220 0 0 385 323 0 0 71 71 0 0 1108 255 0 0 1508 227 0 0 71 0 0 6 4 2 95 0 0 0.902448 0.902448 -10.2354 -0.902448 0 0 477104. 1650.88 0.14 0.00 0.06 -1 -1 0.14 0.000673209 0.000589019 13 6 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_005bits.v common 3.03 vpr 59.23 MiB 0.02 5676 -1 -1 2 0.05 -1 -1 31548 -1 -1 2 11 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60648 11 6 34 40 1 24 19 17 17 289 -1 unnamed_device 20.7 MiB 0.01 135 59.2 MiB 0.01 0.00 0.819447 -11.4288 -0.819447 0.819447 0.93 2.9734e-05 2.1337e-05 0.00087092 0.000676892 20 260 8 6.55708e+06 24110 394039. 1363.46 0.49 0.00309813 0.00267902 19870 87366 -1 233 7 73 74 4808 1313 0 0 4808 1313 74 73 0 0 315 246 0 0 382 339 0 0 74 74 0 0 1922 290 0 0 2041 291 0 0 74 0 0 1 1 0 78 0 0 0.819447 0.819447 -13.5532 -0.819447 0 0 477104. 1650.88 0.15 0.00 0.09 -1 -1 0.15 0.000888171 0.000786667 16 7 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_006bits.v common 3.99 vpr 59.11 MiB 0.01 5740 -1 -1 3 0.05 -1 -1 31336 -1 -1 3 13 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60528 13 7 41 48 1 32 23 17 17 289 -1 unnamed_device 20.6 MiB 0.01 87 59.1 MiB 0.01 0.00 1.50711 -14.0476 -1.50711 1.50711 0.87 3.5915e-05 2.6271e-05 0.00116704 0.0009036 26 237 12 6.55708e+06 36165 477104. 1650.88 1.45 0.0131334 0.0106271 21022 109990 -1 212 9 117 144 7011 2301 0 0 7011 2301 144 119 0 0 558 445 0 0 790 672 0 0 144 133 0 0 2428 484 0 0 2947 448 0 0 144 0 0 27 18 9 252 0 0 1.50711 1.50711 -17.293 -1.50711 0 0 585099. 2024.56 0.16 0.01 0.07 -1 -1 0.16 0.0011022 0.000972399 19 9 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_007bits.v common 3.90 vpr 59.32 MiB 0.03 5680 -1 -1 3 0.04 -1 -1 31604 -1 -1 3 15 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60744 15 8 47 55 1 38 26 17 17 289 -1 unnamed_device 20.8 MiB 0.01 151 59.3 MiB 0.01 0.00 1.05785 -14.8324 -1.05785 1.05785 0.86 4.2713e-05 3.1769e-05 0.00182287 0.00140464 22 370 8 6.55708e+06 36165 420624. 1455.45 1.38 0.0116143 0.00945117 20158 92377 -1 325 7 106 124 5525 1688 0 0 5525 1688 124 112 0 0 449 330 0 0 592 489 0 0 124 115 0 0 2127 320 0 0 2109 322 0 0 124 0 0 18 5 13 196 0 0 1.13885 1.13885 -19.6848 -1.13885 0 0 500653. 1732.36 0.21 0.01 0.10 -1 -1 0.21 0.00146767 0.00130874 23 10 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_008bits.v common 3.25 vpr 59.22 MiB 0.03 5744 -1 -1 3 0.04 -1 -1 31628 -1 -1 4 17 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60644 17 9 56 65 1 42 30 17 17 289 -1 unnamed_device 20.5 MiB 0.07 250 59.2 MiB 0.01 0.00 1.46791 -20.9904 -1.46791 1.46791 0.80 3.6098e-05 2.677e-05 0.00136415 0.00105619 20 522 11 6.55708e+06 48220 394039. 1363.46 0.37 0.0033806 0.00283468 19870 87366 -1 489 16 186 199 14730 3479 0 0 14730 3479 199 195 0 0 753 563 0 0 1043 843 0 0 199 195 0 0 6653 794 0 0 5883 889 0 0 199 0 0 13 8 5 251 0 0 1.82851 1.82851 -27.0004 -1.82851 0 0 477104. 1650.88 0.21 0.01 0.10 -1 -1 0.21 0.00342926 0.00299538 25 14 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_009bits.v common 4.57 vpr 59.45 MiB 0.01 5764 -1 -1 4 0.05 -1 -1 31540 -1 -1 4 19 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60876 19 10 60 70 1 48 33 17 17 289 -1 unnamed_device 21.1 MiB 0.06 180 59.4 MiB 0.01 0.00 1.50711 -21.6272 -1.50711 1.50711 0.79 5.3758e-05 4.0446e-05 0.00195878 0.00154878 26 474 15 6.55708e+06 48220 477104. 1650.88 1.80 0.0224551 0.0185706 21022 109990 -1 425 16 189 247 15406 4348 0 0 15406 4348 247 207 0 0 984 829 0 0 1514 1238 0 0 247 218 0 0 6054 923 0 0 6360 933 0 0 247 0 0 58 52 49 536 0 0 1.71031 1.71031 -27.2546 -1.71031 0 0 585099. 2024.56 0.23 0.01 0.12 -1 -1 0.23 0.00211032 0.00183874 29 13 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_010bits.v common 3.90 vpr 59.21 MiB 0.02 5840 -1 -1 4 0.04 -1 -1 31532 -1 -1 5 21 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60628 21 11 69 80 1 53 37 17 17 289 -1 unnamed_device 20.7 MiB 0.11 166 59.2 MiB 0.03 0.00 1.46791 -23.7798 -1.46791 1.46791 1.04 8.5526e-05 6.6583e-05 0.0050895 0.00401006 26 528 14 6.55708e+06 60275 477104. 1650.88 0.78 0.0175624 0.0145682 21022 109990 -1 431 12 209 266 14379 4172 0 0 14379 4172 266 222 0 0 987 763 0 0 1401 1126 0 0 266 228 0 0 5189 979 0 0 6270 854 0 0 266 0 0 57 34 32 519 0 0 1.46791 1.46791 -28.9902 -1.46791 0 0 585099. 2024.56 0.16 0.01 0.09 -1 -1 0.16 0.00210662 0.00187036 33 17 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_011bits.v common 4.95 vpr 59.28 MiB 0.02 5692 -1 -1 5 0.05 -1 -1 32008 -1 -1 5 23 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60704 23 12 73 85 1 58 40 17 17 289 -1 unnamed_device 20.8 MiB 0.09 251 59.3 MiB 0.02 0.00 1.95636 -28.67 -1.95636 1.95636 0.84 9.2059e-05 7.1598e-05 0.00250906 0.00204474 26 600 14 6.55708e+06 60275 477104. 1650.88 1.96 0.0290482 0.0242357 21022 109990 -1 522 15 226 280 16836 4722 0 0 16836 4722 280 247 0 0 1053 861 0 0 1838 1464 0 0 280 256 0 0 6693 1000 0 0 6692 894 0 0 280 0 0 54 51 27 536 0 0 2.03736 2.03736 -35.409 -2.03736 0 0 585099. 2024.56 0.20 0.01 0.10 -1 -1 0.20 0.00325797 0.00287058 35 16 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_012bits.v common 5.20 vpr 59.30 MiB 0.02 5704 -1 -1 5 0.06 -1 -1 31668 -1 -1 6 25 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60720 25 13 82 95 1 66 44 17 17 289 -1 unnamed_device 20.8 MiB 0.09 296 59.3 MiB 0.02 0.00 1.7847 -31.2909 -1.7847 1.7847 1.05 9.4025e-05 7.1643e-05 0.00337355 0.00270722 30 665 13 6.55708e+06 72330 526063. 1820.29 1.90 0.0275801 0.023018 21886 126133 -1 601 10 256 343 20281 5287 0 0 20281 5287 343 266 0 0 1280 1029 0 0 1855 1515 0 0 343 276 0 0 7981 1173 0 0 8479 1028 0 0 343 0 0 87 54 71 751 0 0 1.7847 1.7847 -37.186 -1.7847 0 0 666494. 2306.21 0.22 0.01 0.11 -1 -1 0.22 0.00229115 0.002058 40 20 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_013bits.v common 5.58 vpr 59.48 MiB 0.02 5812 -1 -1 5 0.05 -1 -1 31916 -1 -1 7 27 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60912 27 14 91 105 1 70 48 17 17 289 -1 unnamed_device 20.8 MiB 0.08 272 59.5 MiB 0.02 0.00 1.49544 -31.0841 -1.49544 1.49544 1.05 0.000120574 9.5584e-05 0.00357908 0.00291438 30 657 18 6.55708e+06 84385 526063. 1820.29 2.49 0.0297017 0.0249116 21886 126133 -1 510 16 266 419 17516 5834 0 0 17516 5834 419 314 0 0 1465 1191 0 0 2180 1716 0 0 419 317 0 0 6766 1180 0 0 6267 1116 0 0 419 0 0 153 102 123 1219 0 0 1.61965 1.61965 -35.5555 -1.61965 0 0 666494. 2306.21 0.18 0.01 0.11 -1 -1 0.18 0.00334674 0.00297125 42 24 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_014bits.v common 5.08 vpr 59.63 MiB 0.02 5892 -1 -1 6 0.07 -1 -1 31404 -1 -1 7 29 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61064 29 15 95 110 1 74 51 17 17 289 -1 unnamed_device 21.0 MiB 0.14 494 59.6 MiB 0.02 0.00 2.15556 -42.6898 -2.15556 2.15556 1.05 0.000119359 9.3251e-05 0.00356673 0.00290837 26 940 13 6.55708e+06 84385 477104. 1650.88 1.78 0.0388042 0.0327586 21022 109990 -1 900 11 276 366 30050 6788 0 0 30050 6788 366 284 0 0 1431 1144 0 0 2147 1679 0 0 366 292 0 0 13073 1724 0 0 12667 1665 0 0 366 0 0 90 71 97 858 0 0 2.15556 2.15556 -49.9456 -2.15556 0 0 585099. 2024.56 0.18 0.01 0.09 -1 -1 0.18 0.00278611 0.00250162 45 23 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_015bits.v common 4.03 vpr 59.55 MiB 0.03 5792 -1 -1 6 0.04 -1 -1 31744 -1 -1 9 31 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60976 31 16 104 120 1 80 56 17 17 289 -1 unnamed_device 21.1 MiB 0.20 441 59.5 MiB 0.03 0.00 1.95636 -41.5578 -1.95636 1.95636 0.72 6.4981e-05 4.9024e-05 0.00410196 0.00323978 26 1015 19 6.55708e+06 108495 477104. 1650.88 1.13 0.0251597 0.0209298 21022 109990 -1 901 12 335 528 34363 8773 0 0 34363 8773 528 402 0 0 2029 1629 0 0 3336 2570 0 0 528 415 0 0 14463 1830 0 0 13479 1927 0 0 528 0 0 193 171 265 1753 0 0 1.95837 1.95837 -48.3468 -1.95837 0 0 585099. 2024.56 0.16 0.01 0.08 -1 -1 0.16 0.00354868 0.0032036 50 27 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_016bits.v common 3.36 vpr 59.73 MiB 0.03 5796 -1 -1 7 0.06 -1 -1 31384 -1 -1 7 33 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61160 33 17 108 125 1 86 57 17 17 289 -1 unnamed_device 21.3 MiB 0.03 583 59.7 MiB 0.02 0.00 2.84322 -54.0009 -2.84322 2.84322 0.78 6.7482e-05 5.1513e-05 0.00253698 0.00203789 26 1142 40 6.55708e+06 84385 477104. 1650.88 0.66 0.017677 0.0148524 21022 109990 -1 1051 34 389 580 191044 127344 0 0 191044 127344 580 437 0 0 2220 1840 0 0 5824 3942 0 0 580 462 0 0 90598 61069 0 0 91242 59594 0 0 580 0 0 191 157 180 1560 0 0 2.84322 2.84322 -64.4623 -2.84322 0 0 585099. 2024.56 0.16 0.06 0.07 -1 -1 0.16 0.00623419 0.0054083 51 26 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_018bits.v common 4.49 vpr 59.69 MiB 0.03 5872 -1 -1 7 0.06 -1 -1 31364 -1 -1 8 37 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61124 37 19 127 146 1 101 64 17 17 289 -1 unnamed_device 21.1 MiB 0.23 582 59.7 MiB 0.04 0.00 2.40562 -55.71 -2.40562 2.40562 0.79 8.3527e-05 6.4212e-05 0.00776709 0.00630265 26 1265 13 6.55708e+06 96440 477104. 1650.88 1.64 0.0385537 0.0324312 21022 109990 -1 1161 11 415 578 42507 10601 0 0 42507 10601 578 495 0 0 2247 1857 0 0 3682 2932 0 0 578 515 0 0 18477 2306 0 0 16945 2496 0 0 578 0 0 163 112 146 1355 0 0 2.52582 2.52582 -68.4924 -2.52582 0 0 585099. 2024.56 0.16 0.02 0.10 -1 -1 0.16 0.00376525 0.00340265 59 35 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_020bits.v common 5.31 vpr 59.95 MiB 0.03 5808 -1 -1 8 0.06 -1 -1 31700 -1 -1 10 41 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61388 41 21 139 160 1 109 72 17 17 289 -1 unnamed_device 21.3 MiB 0.21 510 59.9 MiB 0.06 0.00 2.68322 -62.3346 -2.68322 2.68322 1.04 0.000179789 0.00014307 0.0106534 0.00864499 26 1304 18 6.55708e+06 120550 477104. 1650.88 2.05 0.0468133 0.0394644 21022 109990 -1 1104 15 477 623 45844 11769 0 0 45844 11769 623 542 0 0 2448 1976 0 0 3958 3030 0 0 623 552 0 0 20399 2721 0 0 17793 2948 0 0 623 0 0 146 110 136 1327 0 0 3.04382 3.04382 -77.7202 -3.04382 0 0 585099. 2024.56 0.16 0.02 0.07 -1 -1 0.16 0.0046776 0.00416552 67 37 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_022bits.v common 5.41 vpr 59.89 MiB 0.01 5828 -1 -1 9 0.07 -1 -1 31476 -1 -1 11 45 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61328 45 23 152 175 1 124 79 17 17 289 -1 unnamed_device 21.4 MiB 0.06 638 59.9 MiB 0.08 0.00 2.7775 -71.4617 -2.7775 2.7775 1.02 0.000191528 0.000152763 0.0144423 0.0116624 32 1442 21 6.55708e+06 132605 554710. 1919.41 2.26 0.0658068 0.0553004 22174 131602 -1 1232 17 484 667 42628 10811 0 0 42628 10811 667 572 0 0 2547 2095 0 0 3937 3178 0 0 667 582 0 0 17658 2139 0 0 17152 2245 0 0 667 0 0 183 132 166 1560 0 0 3.0989 3.0989 -86.4773 -3.0989 0 0 701300. 2426.64 0.21 0.02 0.12 -1 -1 0.21 0.00549735 0.00489129 74 40 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_024bits.v common 5.02 vpr 59.95 MiB 0.02 5844 -1 -1 10 0.06 -1 -1 31700 -1 -1 11 49 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61384 49 25 165 190 1 131 85 17 17 289 -1 unnamed_device 21.3 MiB 0.35 516 59.9 MiB 0.05 0.00 3.46776 -81.5584 -3.46776 3.46776 0.64 0.000107587 8.4334e-05 0.00786156 0.00635553 30 1301 15 6.55708e+06 132605 526063. 1820.29 2.10 0.0483939 0.0410577 21886 126133 -1 1026 11 460 602 28755 8323 0 0 28755 8323 602 489 0 0 2160 1663 0 0 2958 2422 0 0 602 518 0 0 10324 1784 0 0 12109 1447 0 0 602 0 0 142 100 99 1275 0 0 3.58796 3.58796 -94.9816 -3.58796 0 0 666494. 2306.21 0.18 0.02 0.11 -1 -1 0.18 0.0048796 0.00443285 79 43 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_028bits.v common 5.43 vpr 59.92 MiB 0.01 5904 -1 -1 11 0.08 -1 -1 32036 -1 -1 14 57 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61360 57 29 199 228 1 157 100 17 17 289 -1 unnamed_device 21.5 MiB 0.35 710 59.9 MiB 0.04 0.00 4.09974 -109.966 -4.09974 4.09974 0.73 0.000138085 0.000110744 0.00611339 0.00501418 28 1735 19 6.55708e+06 168770 500653. 1732.36 2.25 0.0591531 0.0507873 21310 115450 -1 1458 13 574 820 48056 13374 0 0 48056 13374 820 627 0 0 3115 2508 0 0 4743 3768 0 0 820 658 0 0 19492 2894 0 0 19066 2919 0 0 820 0 0 246 182 285 2103 0 0 4.34014 4.34014 -127.635 -4.34014 0 0 612192. 2118.31 0.17 0.02 0.08 -1 -1 0.17 0.00619865 0.0056012 93 57 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_032bits.v common 6.37 vpr 60.36 MiB 0.02 6016 -1 -1 13 0.08 -1 -1 31868 -1 -1 15 65 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61804 65 33 224 257 1 179 113 17 17 289 -1 unnamed_device 21.6 MiB 0.54 920 60.4 MiB 0.10 0.00 4.18236 -130.237 -4.18236 4.18236 0.83 0.000213075 0.000169371 0.014887 0.012079 34 2063 45 6.55708e+06 180825 585099. 2024.56 3.01 0.0951668 0.0816 22462 138074 -1 1703 15 685 917 63275 16364 0 0 63275 16364 917 749 0 0 3532 2911 0 0 5599 4390 0 0 917 777 0 0 26595 3612 0 0 25715 3925 0 0 917 0 0 232 142 217 1990 0 0 4.39522 4.39522 -147.305 -4.39522 0 0 742403. 2568.87 0.20 0.03 0.09 -1 -1 0.20 0.00760807 0.00686516 107 62 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_048bits.v common 6.85 vpr 61.30 MiB 0.02 6404 -1 -1 19 0.11 -1 -1 31904 -1 -1 24 97 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62772 97 49 340 389 1 265 170 17 17 289 -1 unnamed_device 22.3 MiB 0.45 1555 61.3 MiB 0.22 0.00 6.42605 -254.77 -6.42605 6.42605 1.06 0.000472779 0.000393201 0.0357541 0.0295443 28 3300 43 6.55708e+06 289320 500653. 1732.36 3.01 0.129297 0.111903 21310 115450 -1 2914 11 996 1385 96956 23983 0 0 96956 23983 1385 1098 0 0 5179 4149 0 0 7938 6275 0 0 1385 1157 0 0 40949 5628 0 0 40120 5676 0 0 1385 0 0 389 235 333 3202 0 0 6.66645 6.66645 -287.344 -6.66645 0 0 612192. 2118.31 0.17 0.03 0.08 -1 -1 0.17 0.0104411 0.00956838 160 98 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_064bits.v common 6.80 vpr 62.16 MiB 0.03 6396 -1 -1 26 0.12 -1 -1 32256 -1 -1 31 129 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63656 129 65 454 519 1 354 225 17 17 289 -1 unnamed_device 23.4 MiB 0.29 1862 62.2 MiB 0.27 0.00 8.61284 -396.451 -8.61284 8.61284 0.88 0.000377423 0.000315982 0.043658 0.0368199 36 3847 24 6.55708e+06 373705 612192. 2118.31 3.00 0.172662 0.151312 22750 144809 -1 3407 12 1205 1694 114505 27974 0 0 114505 27974 1694 1372 0 0 6291 4966 0 0 10187 7634 0 0 1694 1428 0 0 48675 6268 0 0 45964 6306 0 0 1694 0 0 489 311 430 3980 0 0 8.73304 8.73304 -428.188 -8.73304 0 0 782063. 2706.10 0.20 0.04 0.11 -1 -1 0.20 0.0153931 0.0141935 213 132 -1 -1 -1 -1 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 0.48 abc 28.79 MiB 0.01 6104 -1 -1 1 0.01 -1 -1 29484 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21236 7 4 24 25 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 0.43 abc 28.88 MiB 0.01 6120 -1 -1 1 0.00 -1 -1 29576 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21284 9 5 30 31 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 0.41 abc 28.82 MiB 0.02 6108 -1 -1 1 0.01 -1 -1 29516 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21576 11 6 36 37 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 0.40 abc 28.79 MiB 0.01 5820 -1 -1 1 0.01 -1 -1 29480 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21340 13 7 42 43 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 0.42 abc 28.82 MiB 0.01 6188 -1 -1 1 0.01 -1 -1 29516 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21380 15 8 49 50 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 0.36 abc 28.88 MiB 0.01 5900 -1 -1 1 0.01 -1 -1 29576 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21552 17 9 55 56 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 0.42 abc 29.00 MiB 0.01 6128 -1 -1 1 0.01 -1 -1 29696 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21380 19 10 61 62 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 0.34 abc 28.73 MiB 0.01 6204 -1 -1 1 0.00 -1 -1 29424 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21504 21 11 67 68 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 0.33 abc 28.89 MiB 0.01 5916 -1 -1 1 0.01 -1 -1 29588 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21380 23 12 74 75 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 0.32 abc 28.83 MiB 0.01 6160 -1 -1 1 0.01 -1 -1 29520 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21800 25 13 80 81 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 0.34 abc 28.87 MiB 0.01 6172 -1 -1 1 0.01 -1 -1 29560 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21816 27 14 86 87 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 0.38 abc 28.85 MiB 0.03 5884 -1 -1 1 0.01 -1 -1 29540 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21700 29 15 92 93 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 0.36 abc 28.78 MiB 0.03 6036 -1 -1 1 0.01 -1 -1 29468 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21748 31 16 99 100 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 0.43 abc 28.95 MiB 0.01 5904 -1 -1 1 0.01 -1 -1 29648 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21888 33 17 105 106 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 0.41 abc 28.79 MiB 0.01 6032 -1 -1 1 0.01 -1 -1 29480 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21836 37 19 117 118 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 0.43 abc 28.95 MiB 0.01 6008 -1 -1 1 0.01 -1 -1 29648 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21592 41 21 130 131 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 6 6 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 0.37 abc 28.89 MiB 0.02 5972 -1 -1 1 0.02 -1 -1 29584 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21876 45 23 142 143 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 6 6 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 0.46 abc 28.93 MiB 0.01 6176 -1 -1 1 0.01 -1 -1 29624 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21924 49 25 155 156 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 7 7 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 0.45 abc 28.90 MiB 0.01 6328 -1 -1 1 0.01 -1 -1 29596 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 22004 57 29 180 181 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 8 8 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 0.44 abc 29.04 MiB 0.02 6312 -1 -1 1 0.01 -1 -1 29732 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21800 65 33 205 206 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 9 9 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 0.45 abc 29.11 MiB 0.04 6648 -1 -1 1 0.02 -1 -1 29808 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 22060 97 49 305 306 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 13 13 0 0 -fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 0.46 abc 29.40 MiB 0.02 6576 -1 -1 1 0.02 -1 -1 30108 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 22684 129 65 405 406 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 17 17 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 0.45 abc 28.82 MiB 0.02 5952 -1 -1 1 0.00 -1 -1 29508 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21012 7 4 24 25 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 0.45 abc 28.86 MiB 0.01 5828 -1 -1 1 0.01 -1 -1 29552 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21104 9 5 30 31 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 0.51 abc 28.71 MiB 0.03 6112 -1 -1 1 0.01 -1 -1 29400 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21388 11 6 36 37 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 0.50 abc 28.87 MiB 0.03 6188 -1 -1 1 0.00 -1 -1 29560 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21324 13 7 42 43 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 0.46 abc 28.81 MiB 0.05 6008 -1 -1 1 0.01 -1 -1 29500 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21392 15 8 49 50 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 0.42 abc 28.88 MiB 0.01 5908 -1 -1 1 0.01 -1 -1 29576 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21332 17 9 55 56 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 0.39 abc 28.84 MiB 0.02 5964 -1 -1 1 0.01 -1 -1 29536 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21520 19 10 61 62 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 0.44 abc 28.86 MiB 0.01 5972 -1 -1 1 0.01 -1 -1 29548 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21380 21 11 67 68 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 0.33 abc 28.83 MiB 0.01 5968 -1 -1 1 0.00 -1 -1 29524 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21344 23 12 74 75 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 0.36 abc 28.77 MiB 0.01 5860 -1 -1 1 0.01 -1 -1 29456 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21216 25 13 80 81 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 0.32 abc 28.89 MiB 0.01 6064 -1 -1 1 0.01 -1 -1 29588 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21532 27 14 86 87 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 0.28 abc 28.75 MiB 0.02 6000 -1 -1 1 0.01 -1 -1 29444 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21516 29 15 92 93 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 0.38 abc 28.94 MiB 0.02 6076 -1 -1 1 0.01 -1 -1 29636 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21608 31 16 99 100 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 0.37 abc 28.80 MiB 0.01 5972 -1 -1 1 0.01 -1 -1 29496 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21168 33 17 105 106 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 0.46 abc 28.78 MiB 0.01 5996 -1 -1 1 0.01 -1 -1 29472 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21332 37 19 117 118 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 0.38 abc 28.91 MiB 0.02 6060 -1 -1 1 0.00 -1 -1 29608 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21388 41 21 130 131 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 6 6 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 0.54 abc 29.00 MiB 0.01 6192 -1 -1 1 0.01 -1 -1 29692 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21692 45 23 142 143 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 6 6 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 0.51 abc 28.87 MiB 0.01 6112 -1 -1 1 0.01 -1 -1 29564 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21480 49 25 155 156 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 7 7 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 0.57 abc 28.85 MiB 0.02 6152 -1 -1 1 0.01 -1 -1 29540 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 21504 57 29 180 181 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 8 8 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 0.54 abc 28.91 MiB 0.02 6208 -1 -1 1 0.01 -1 -1 29604 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 22012 65 33 205 206 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 9 9 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 0.50 abc 29.13 MiB 0.02 6512 -1 -1 1 0.02 -1 -1 29828 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 22088 97 49 305 306 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 13 13 0 0 -fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 0.53 abc 29.49 MiB 0.04 6744 -1 -1 1 0.02 -1 -1 30196 -1 -1 -1 -1 -1 -1 exited with return code 134 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 22432 129 65 405 406 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 17 17 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 3.93 vpr 59.55 MiB 0.01 5964 -1 -1 1 0.01 -1 -1 29476 -1 -1 2 7 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60976 7 4 27 28 1 14 13 17 17 289 -1 unnamed_device 21.1 MiB 0.04 32 59.5 MiB 0.01 0.00 0.649848 -5.93533 -0.649848 0.649848 1.06 3.0202e-05 2.1935e-05 0.000908431 0.000744471 20 89 11 6.64007e+06 25116 394039. 1363.46 0.67 0.00267478 0.00223605 20530 87850 -1 87 4 22 22 1017 330 0 0 1017 330 22 22 0 0 78 57 0 0 104 79 0 0 22 22 0 0 376 82 0 0 415 68 0 0 22 0 0 0 0 0 22 0 0 0.71851 0.71851 -7.25753 -0.71851 0 0 477104. 1650.88 0.22 0.00 0.10 -1 -1 0.22 0.000857941 0.000756261 10 -1 5 5 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 3.92 vpr 59.56 MiB 0.01 6140 -1 -1 1 0.01 -1 -1 29396 -1 -1 2 9 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60988 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 21.1 MiB 0.02 47 59.6 MiB 0.01 0.00 0.671848 -7.56362 -0.671848 0.671848 1.10 3.7927e-05 2.8594e-05 0.00108813 0.000840934 20 151 10 6.64007e+06 25116 394039. 1363.46 0.67 0.00304427 0.00252072 20530 87850 -1 127 6 45 45 2508 827 0 0 2508 827 45 45 0 0 190 140 0 0 230 190 0 0 45 45 0 0 894 200 0 0 1104 207 0 0 45 0 0 0 0 0 45 0 0 0.770048 0.770048 -9.93162 -0.770048 0 0 477104. 1650.88 0.21 0.01 0.10 -1 -1 0.21 0.001089 0.000966535 13 -1 6 6 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 3.85 vpr 59.45 MiB 0.02 5900 -1 -1 1 0.01 -1 -1 29444 -1 -1 2 11 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60880 11 6 41 42 1 26 19 17 17 289 -1 unnamed_device 20.9 MiB 0.02 68 59.5 MiB 0.02 0.00 0.682848 -9.70225 -0.682848 0.682848 1.06 4.0128e-05 2.9542e-05 0.00123893 0.000968149 26 191 6 6.64007e+06 25116 477104. 1650.88 0.89 0.00784367 0.0064108 21682 110474 -1 185 14 136 136 7095 2227 0 0 7095 2227 136 136 0 0 494 420 0 0 664 509 0 0 136 136 0 0 2385 512 0 0 3280 514 0 0 136 0 0 0 0 0 136 0 0 0.912248 0.912248 -13.0318 -0.912248 0 0 585099. 2024.56 0.22 0.01 0.10 -1 -1 0.22 0.00218281 0.00188153 16 -1 7 7 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 4.96 vpr 59.72 MiB 0.02 5796 -1 -1 1 0.00 -1 -1 29460 -1 -1 3 13 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61152 13 7 48 49 1 32 23 17 17 289 -1 unnamed_device 21.2 MiB 0.02 120 59.7 MiB 0.03 0.00 0.704848 -12.3611 -0.704848 0.704848 0.95 4.9496e-05 3.7228e-05 0.00158076 0.00123894 26 269 11 6.64007e+06 37674 477104. 1650.88 2.02 0.0158519 0.0128929 21682 110474 -1 254 12 135 135 9406 2442 0 0 9406 2442 135 135 0 0 578 493 0 0 710 622 0 0 135 135 0 0 3323 653 0 0 4525 404 0 0 135 0 0 0 0 0 135 0 0 0.912248 0.912248 -15.8431 -0.912248 0 0 585099. 2024.56 0.20 0.01 0.13 -1 -1 0.20 0.00128612 0.00111449 19 -1 8 8 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 4.11 vpr 59.56 MiB 0.02 6152 -1 -1 1 0.01 -1 -1 29512 -1 -1 3 15 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60992 15 8 55 56 1 38 26 17 17 289 -1 unnamed_device 21.0 MiB 0.02 91 59.6 MiB 0.02 0.00 0.944958 -13.1993 -0.944958 0.944958 1.04 6.147e-05 4.7175e-05 0.00190607 0.00151593 26 279 9 6.64007e+06 37674 477104. 1650.88 0.96 0.0108128 0.00894119 21682 110474 -1 253 15 175 175 8709 2963 0 0 8709 2963 175 175 0 0 673 575 0 0 989 813 0 0 175 175 0 0 3463 632 0 0 3234 593 0 0 175 0 0 0 0 0 175 0 0 1.08545 1.08545 -19.6524 -1.08545 0 0 585099. 2024.56 0.20 0.01 0.11 -1 -1 0.20 0.00235599 0.0020408 22 -1 9 9 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 3.98 vpr 59.88 MiB 0.03 5796 -1 -1 1 0.01 -1 -1 29516 -1 -1 4 17 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61312 17 9 62 63 1 41 30 17 17 289 -1 unnamed_device 21.2 MiB 0.04 136 59.9 MiB 0.01 0.00 0.955958 -16.5726 -0.955958 0.955958 0.90 6.0581e-05 4.512e-05 0.0018641 0.00146486 26 328 15 6.64007e+06 50232 477104. 1650.88 0.79 0.0113297 0.00930649 21682 110474 -1 318 12 156 156 9370 3038 0 0 9370 3038 156 156 0 0 650 551 0 0 881 751 0 0 156 156 0 0 4066 788 0 0 3461 636 0 0 156 0 0 0 0 0 156 0 0 1.04145 1.04145 -22.3642 -1.04145 0 0 585099. 2024.56 0.24 0.11 0.11 -1 -1 0.24 0.00342837 0.00302942 25 -1 10 10 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 4.83 vpr 59.73 MiB 0.03 5804 -1 -1 1 0.01 -1 -1 29560 -1 -1 4 19 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61168 19 10 69 70 1 44 33 17 17 289 -1 unnamed_device 21.2 MiB 0.03 164 59.7 MiB 0.05 0.00 0.966958 -18.6348 -0.966958 0.966958 0.90 7.3547e-05 5.6411e-05 0.00251771 0.00200241 22 429 15 6.64007e+06 50232 420624. 1455.45 1.84 0.0184856 0.0153382 20818 92861 -1 354 10 146 146 9733 2665 0 0 9733 2665 146 146 0 0 547 431 0 0 683 594 0 0 146 146 0 0 3756 754 0 0 4455 594 0 0 146 0 0 0 0 0 146 0 0 0.932248 0.932248 -23.441 -0.932248 0 0 500653. 1732.36 0.24 0.01 0.12 -1 -1 0.24 0.00270973 0.00240045 28 -1 11 11 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 5.59 vpr 59.89 MiB 0.01 6052 -1 -1 1 0.01 -1 -1 29652 -1 -1 5 21 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61324 21 11 76 77 1 49 37 17 17 289 -1 unnamed_device 21.4 MiB 0.06 150 59.9 MiB 0.02 0.00 0.977958 -20.1069 -0.977958 0.977958 1.00 7.3738e-05 5.5665e-05 0.00378316 0.00293815 26 441 19 6.64007e+06 62790 477104. 1650.88 2.18 0.0249199 0.0206319 21682 110474 -1 386 15 238 238 15552 4237 0 0 15552 4237 238 238 0 0 898 700 0 0 1354 995 0 0 238 238 0 0 6081 1057 0 0 6743 1009 0 0 238 0 0 0 0 0 238 0 0 1.00925 1.00925 -26.6027 -1.00925 0 0 585099. 2024.56 0.27 0.02 0.13 -1 -1 0.27 0.00365884 0.0031758 31 -1 12 12 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 5.49 vpr 59.66 MiB 0.01 5956 -1 -1 1 0.00 -1 -1 29480 -1 -1 5 23 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61088 23 12 83 84 1 55 40 17 17 289 -1 unnamed_device 21.1 MiB 0.03 285 59.7 MiB 0.02 0.00 0.988958 -25.0758 -0.988958 0.988958 1.02 8.593e-05 6.6714e-05 0.0024017 0.00192521 26 570 12 6.64007e+06 62790 477104. 1650.88 2.23 0.0224829 0.0188277 21682 110474 -1 533 12 208 208 16451 4025 0 0 16451 4025 208 208 0 0 812 630 0 0 1104 903 0 0 208 208 0 0 7428 941 0 0 6691 1135 0 0 208 0 0 0 0 0 208 0 0 0.987248 0.987248 -30.9393 -0.987248 0 0 585099. 2024.56 0.19 0.01 0.10 -1 -1 0.19 0.00196681 0.00173659 34 -1 13 13 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 5.50 vpr 59.80 MiB 0.07 6068 -1 -1 1 0.01 -1 -1 29580 -1 -1 5 25 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61232 25 13 90 91 1 61 43 17 17 289 -1 unnamed_device 21.3 MiB 0.04 230 59.8 MiB 0.03 0.00 0.999958 -25.2478 -0.999958 0.999958 1.04 8.7051e-05 6.7917e-05 0.003298 0.00271258 30 552 13 6.64007e+06 62790 526063. 1820.29 2.10 0.0314687 0.0268633 22546 126617 -1 448 9 189 189 8466 2484 0 0 8466 2484 189 189 0 0 647 469 0 0 766 649 0 0 189 189 0 0 3633 486 0 0 3042 502 0 0 189 0 0 0 0 0 189 0 0 1.02025 1.02025 -31.8023 -1.02025 0 0 666494. 2306.21 0.29 0.02 0.12 -1 -1 0.29 0.00346331 0.00309047 37 -1 14 14 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 5.26 vpr 59.83 MiB 0.03 6076 -1 -1 1 0.02 -1 -1 29468 -1 -1 6 27 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61264 27 14 97 98 1 67 47 17 17 289 -1 unnamed_device 21.2 MiB 0.03 317 59.8 MiB 0.02 0.00 1.01096 -28.0751 -1.01096 1.01096 1.05 6.8572e-05 5.1439e-05 0.00280616 0.00226922 26 688 14 6.64007e+06 75348 477104. 1650.88 2.09 0.0280057 0.0233469 21682 110474 -1 643 19 318 318 24167 6067 0 0 24167 6067 318 318 0 0 1238 1025 0 0 1692 1376 0 0 318 318 0 0 11182 1401 0 0 9419 1629 0 0 318 0 0 0 0 0 318 0 0 1.04225 1.04225 -37.6697 -1.04225 0 0 585099. 2024.56 0.22 0.11 0.10 -1 -1 0.22 0.00574086 0.00497189 40 -1 15 15 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 6.44 vpr 59.98 MiB 0.01 5960 -1 -1 1 0.02 -1 -1 29584 -1 -1 6 29 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61420 29 15 104 105 1 73 50 17 17 289 -1 unnamed_device 21.4 MiB 0.03 223 60.0 MiB 0.04 0.00 1.02196 -27.5478 -1.02196 1.02196 1.03 0.000102462 7.9472e-05 0.00372166 0.00298966 32 619 18 6.64007e+06 75348 554710. 1919.41 3.13 0.0370386 0.0314233 22834 132086 -1 506 10 281 281 14903 4498 0 0 14903 4498 281 281 0 0 1045 836 0 0 1500 1141 0 0 281 281 0 0 7218 824 0 0 4578 1135 0 0 281 0 0 0 0 0 281 0 0 1.05325 1.05325 -36.9334 -1.05325 0 0 701300. 2426.64 0.28 0.01 0.16 -1 -1 0.28 0.00242057 0.00215675 43 -1 16 16 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 5.10 vpr 60.03 MiB 0.01 5944 -1 -1 1 0.00 -1 -1 29668 -1 -1 7 31 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61472 31 16 111 112 1 79 54 17 17 289 -1 unnamed_device 21.6 MiB 0.03 346 60.0 MiB 0.03 0.00 1.26207 -31.2273 -1.26207 1.26207 1.01 0.000116285 9.0602e-05 0.00349598 0.00281003 20 1003 45 6.64007e+06 87906 394039. 1363.46 1.93 0.0254239 0.021351 20530 87850 -1 854 17 430 430 43291 10539 0 0 43291 10539 430 430 0 0 1731 1475 0 0 2485 2045 0 0 430 430 0 0 19996 2957 0 0 18219 3202 0 0 430 0 0 0 0 0 430 0 0 1.43505 1.43505 -46.9042 -1.43505 0 0 477104. 1650.88 0.18 0.04 0.11 -1 -1 0.18 0.00462544 0.00404147 46 -1 17 17 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 4.06 vpr 60.09 MiB 0.02 6172 -1 -1 1 0.01 -1 -1 29552 -1 -1 7 33 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61532 33 17 118 119 1 82 57 17 17 289 -1 unnamed_device 21.7 MiB 0.04 500 60.1 MiB 0.04 0.00 1.27307 -40.0864 -1.27307 1.27307 1.03 5.8852e-05 4.4661e-05 0.00620991 0.00486548 26 927 17 6.64007e+06 87906 477104. 1650.88 0.93 0.0259351 0.0218044 21682 110474 -1 872 15 422 422 41372 9115 0 0 41372 9115 422 422 0 0 1697 1432 0 0 2354 1957 0 0 422 422 0 0 19038 2483 0 0 17439 2399 0 0 422 0 0 0 0 0 422 0 0 1.05125 1.05125 -47.3502 -1.05125 0 0 585099. 2024.56 0.22 0.03 0.12 -1 -1 0.22 0.00516255 0.00453602 49 -1 18 18 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 5.33 vpr 60.18 MiB 0.01 6088 -1 -1 1 0.01 -1 -1 29584 -1 -1 8 37 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61620 37 19 132 133 1 90 64 17 17 289 -1 unnamed_device 21.7 MiB 0.04 385 60.2 MiB 0.03 0.00 1.29507 -39.3266 -1.29507 1.29507 1.05 0.000129817 0.000101741 0.00288893 0.00228773 28 879 17 6.64007e+06 100464 500653. 1732.36 1.92 0.0435515 0.0369927 21970 115934 -1 789 16 331 331 23628 6111 0 0 23628 6111 331 331 0 0 1251 992 0 0 1739 1429 0 0 331 331 0 0 10120 1463 0 0 9856 1565 0 0 331 0 0 0 0 0 331 0 0 1.05125 1.05125 -48.7867 -1.05125 0 0 612192. 2118.31 0.28 0.04 0.11 -1 -1 0.28 0.00638509 0.00560498 55 -1 20 20 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 6.42 vpr 60.29 MiB 0.02 6168 -1 -1 1 0.00 -1 -1 29584 -1 -1 8 41 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61736 41 21 146 147 1 102 70 17 17 289 -1 unnamed_device 21.7 MiB 0.12 576 60.3 MiB 0.15 0.00 1.31707 -49.5491 -1.31707 1.31707 1.01 0.000175243 0.00013993 0.00788782 0.00646459 32 1120 13 6.64007e+06 100464 554710. 1919.41 2.81 0.0615198 0.0521408 22834 132086 -1 1038 19 562 562 44751 10614 0 0 44751 10614 562 562 0 0 2155 1768 0 0 3132 2409 0 0 562 562 0 0 19105 2622 0 0 19235 2691 0 0 562 0 0 0 0 0 562 0 0 1.03125 1.03125 -56.3478 -1.03125 0 0 701300. 2426.64 0.29 0.05 0.12 -1 -1 0.29 0.00761654 0.00665171 61 -1 22 22 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 6.34 vpr 60.30 MiB 0.02 6104 -1 -1 1 0.02 -1 -1 29680 -1 -1 9 45 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61752 45 23 160 161 1 114 77 17 17 289 -1 unnamed_device 21.8 MiB 0.04 586 60.3 MiB 0.20 0.00 1.33907 -53.2046 -1.33907 1.33907 1.05 0.000173949 0.000141258 0.0104415 0.00848722 28 1205 16 6.64007e+06 113022 500653. 1732.36 2.79 0.0581651 0.0493022 21970 115934 -1 1071 16 575 575 42044 10038 0 0 42044 10038 575 575 0 0 2068 1643 0 0 2980 2337 0 0 575 575 0 0 17857 2530 0 0 17989 2378 0 0 575 0 0 0 0 0 575 0 0 1.15145 1.15145 -61.3624 -1.15145 0 0 612192. 2118.31 0.23 0.10 0.14 -1 -1 0.23 0.00871256 0.00775935 67 -1 24 24 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 6.84 vpr 60.23 MiB 0.01 6060 -1 -1 1 0.01 -1 -1 29616 -1 -1 10 49 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61676 49 25 174 175 1 123 84 17 17 289 -1 unnamed_device 21.7 MiB 0.06 769 60.2 MiB 0.29 0.00 1.59018 -62.8916 -1.59018 1.59018 0.92 0.000189286 0.000150098 0.0151092 0.01231 32 1366 14 6.64007e+06 125580 554710. 1919.41 3.24 0.0695459 0.0590315 22834 132086 -1 1286 17 561 561 45552 10573 0 0 45552 10573 561 561 0 0 2226 1852 0 0 3241 2573 0 0 561 561 0 0 20138 2520 0 0 18825 2506 0 0 561 0 0 0 0 0 561 0 0 1.17025 1.17025 -70.9253 -1.17025 0 0 701300. 2426.64 0.28 0.16 0.14 -1 -1 0.28 0.010172 0.00894295 73 -1 26 26 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 6.21 vpr 60.26 MiB 0.04 6144 -1 -1 1 0.01 -1 -1 29568 -1 -1 11 57 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61704 57 29 202 203 1 143 97 17 17 289 -1 unnamed_device 21.6 MiB 0.06 784 60.3 MiB 0.23 0.01 1.63418 -71.5794 -1.63418 1.63418 1.08 0.000208025 0.000167841 0.0112084 0.0092926 28 1596 14 6.64007e+06 138138 500653. 1732.36 2.59 0.0824557 0.0707037 21970 115934 -1 1506 13 670 670 53454 12907 0 0 53454 12907 670 670 0 0 2584 2076 0 0 3590 3005 0 0 670 670 0 0 24733 3039 0 0 21207 3447 0 0 670 0 0 0 0 0 670 0 0 1.35645 1.35645 -87.0176 -1.35645 0 0 612192. 2118.31 0.26 0.02 0.14 -1 -1 0.26 0.00607551 0.00544645 85 -1 30 30 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 6.41 vpr 60.68 MiB 0.02 6192 -1 -1 1 0.01 -1 -1 29692 -1 -1 13 65 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62136 65 33 230 231 1 164 111 17 17 289 -1 unnamed_device 22.2 MiB 0.05 775 60.7 MiB 0.34 0.01 1.90729 -80.6611 -1.90729 1.90729 1.12 0.000246467 0.000197731 0.0194904 0.0160756 26 1815 23 6.64007e+06 163254 477104. 1650.88 2.50 0.0845002 0.0727056 21682 110474 -1 1595 15 735 735 61902 16605 0 0 61902 16605 735 735 0 0 2884 2352 0 0 4054 3384 0 0 735 735 0 0 26764 4712 0 0 26730 4687 0 0 735 0 0 0 0 0 735 0 0 1.28925 1.28925 -94.4805 -1.28925 0 0 585099. 2024.56 0.26 0.06 0.13 -1 -1 0.26 0.0120146 0.0106389 97 -1 34 34 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 5.30 vpr 61.39 MiB 0.02 6400 -1 -1 1 0.01 -1 -1 29888 -1 -1 19 97 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62860 97 49 342 343 1 246 165 17 17 289 -1 unnamed_device 22.5 MiB 0.07 1529 61.4 MiB 0.46 0.01 2.54151 -145.326 -2.54151 2.54151 1.03 0.000392066 0.000324818 0.0377318 0.0317371 30 2785 15 6.64007e+06 238602 526063. 1820.29 1.35 0.0995672 0.0863453 22546 126617 -1 2396 18 1016 1016 75150 17176 0 0 75150 17176 1016 1016 0 0 3564 2632 0 0 4437 3682 0 0 1016 1016 0 0 32424 4668 0 0 32693 4162 0 0 1016 0 0 0 0 0 1016 0 0 1.43025 1.43025 -141.665 -1.43025 0 0 666494. 2306.21 0.29 0.06 0.13 -1 -1 0.29 0.0187267 0.0169059 145 -1 50 50 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 7.45 vpr 62.25 MiB 0.04 6728 -1 -1 1 0.02 -1 -1 29980 -1 -1 25 129 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63740 129 65 454 455 1 328 219 17 17 289 -1 unnamed_device 23.5 MiB 0.09 1858 62.2 MiB 0.73 0.01 3.17573 -209.682 -3.17573 3.17573 0.96 0.000839461 0.000743084 0.0637276 0.0553248 32 3742 19 6.64007e+06 313950 554710. 1919.41 3.27 0.223764 0.198731 22834 132086 -1 3335 15 1304 1304 118164 27254 0 0 118164 27254 1304 1304 0 0 5029 4058 0 0 7651 5818 0 0 1304 1304 0 0 53544 7260 0 0 49332 7510 0 0 1304 0 0 0 0 0 1304 0 0 1.61325 1.61325 -195.414 -1.61325 0 0 701300. 2426.64 0.29 0.07 0.14 -1 -1 0.29 0.0185331 0.0168202 193 -1 66 66 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 3.76 vpr 59.27 MiB 0.01 5896 -1 -1 1 0.01 -1 -1 29396 -1 -1 2 7 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60696 7 4 27 28 1 14 13 17 17 289 -1 unnamed_device 20.8 MiB 0.01 31 59.3 MiB 0.01 0.00 0.649848 -5.81513 -0.649848 0.649848 1.06 2.8387e-05 2.0533e-05 0.000722513 0.00055242 20 89 4 6.65987e+06 25356 394039. 1363.46 0.63 0.00175511 0.00145583 20530 87850 -1 93 4 24 24 1556 541 0 0 1556 541 24 24 0 0 108 90 0 0 134 108 0 0 24 24 0 0 511 154 0 0 755 141 0 0 24 0 0 0 0 0 24 0 0 0.71851 0.71851 -7.49793 -0.71851 0 0 477104. 1650.88 0.22 0.00 0.11 -1 -1 0.22 0.000887808 0.000795756 10 -1 5 5 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 3.98 vpr 59.29 MiB 0.01 5928 -1 -1 1 0.01 -1 -1 29388 -1 -1 2 9 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60716 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 20.8 MiB 0.01 50 59.3 MiB 0.01 0.00 0.671848 -7.92422 -0.671848 0.671848 1.07 4.896e-05 3.9411e-05 0.00107344 0.000821629 20 145 9 6.65987e+06 25356 394039. 1363.46 0.65 0.00285331 0.00233412 20530 87850 -1 135 11 72 72 2478 935 0 0 2478 935 72 72 0 0 274 218 0 0 332 282 0 0 72 72 0 0 732 172 0 0 996 119 0 0 72 0 0 0 0 0 72 0 0 0.912248 0.912248 -10.5686 -0.912248 0 0 477104. 1650.88 0.22 0.01 0.08 -1 -1 0.22 0.00147747 0.00125195 13 -1 6 6 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 5.68 vpr 59.27 MiB 0.01 5896 -1 -1 1 0.01 -1 -1 29500 -1 -1 2 11 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60696 11 6 41 42 1 26 19 17 17 289 -1 unnamed_device 20.7 MiB 0.01 74 59.3 MiB 0.05 0.00 0.682848 -9.46185 -0.682848 0.682848 1.12 6.1419e-05 4.7759e-05 0.00141855 0.00112267 26 218 12 6.65987e+06 25356 477104. 1650.88 2.47 0.0163527 0.0132521 21682 110474 -1 179 10 113 113 6510 2010 0 0 6510 2010 113 113 0 0 417 358 0 0 604 465 0 0 113 113 0 0 2399 448 0 0 2864 513 0 0 113 0 0 0 0 0 113 0 0 0.792048 0.792048 -12.4308 -0.792048 0 0 585099. 2024.56 0.26 0.02 0.13 -1 -1 0.26 0.00163298 0.00141082 16 -1 7 7 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 5.21 vpr 59.37 MiB 0.01 5940 -1 -1 1 0.01 -1 -1 29524 -1 -1 3 13 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60792 13 7 48 49 1 32 23 17 17 289 -1 unnamed_device 20.7 MiB 0.01 136 59.4 MiB 0.01 0.00 0.704848 -12.8419 -0.704848 0.704848 1.13 4.5327e-05 3.3985e-05 0.0013597 0.00108514 20 314 13 6.65987e+06 38034 394039. 1363.46 1.94 0.00937369 0.00774953 20530 87850 -1 289 18 148 148 9154 2271 0 0 9154 2271 148 148 0 0 493 383 0 0 774 555 0 0 148 148 0 0 3816 529 0 0 3775 508 0 0 148 0 0 0 0 0 148 0 0 0.972389 0.972389 -16.3784 -0.972389 0 0 477104. 1650.88 0.19 0.04 0.09 -1 -1 0.19 0.00366313 0.00313507 19 -1 8 8 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 3.76 vpr 59.29 MiB 0.01 5912 -1 -1 1 0.01 -1 -1 29564 -1 -1 3 15 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60712 15 8 55 56 1 38 26 17 17 289 -1 unnamed_device 20.7 MiB 0.01 96 59.3 MiB 0.02 0.00 0.944958 -13.4397 -0.944958 0.944958 1.08 5.8255e-05 4.4174e-05 0.00209959 0.00171634 26 266 12 6.65987e+06 38034 477104. 1650.88 0.74 0.00783974 0.00640869 21682 110474 -1 259 11 187 187 10280 3495 0 0 10280 3495 187 187 0 0 781 681 0 0 1026 855 0 0 187 187 0 0 4362 827 0 0 3737 758 0 0 187 0 0 0 0 0 187 0 0 1.03045 1.03045 -18.7852 -1.03045 0 0 585099. 2024.56 0.24 0.09 0.13 -1 -1 0.24 0.00284821 0.00251483 22 -1 9 9 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 5.18 vpr 59.35 MiB 0.02 6096 -1 -1 1 0.01 -1 -1 29580 -1 -1 4 17 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60776 17 9 62 63 1 41 30 17 17 289 -1 unnamed_device 21.0 MiB 0.01 172 59.4 MiB 0.01 0.00 0.955958 -16.212 -0.955958 0.955958 1.01 4.8807e-05 3.6714e-05 0.00138565 0.00110099 26 363 10 6.65987e+06 50712 477104. 1650.88 2.17 0.020586 0.0171554 21682 110474 -1 339 11 161 161 10139 3001 0 0 10139 3001 161 161 0 0 729 624 0 0 919 836 0 0 161 161 0 0 4416 544 0 0 3753 675 0 0 161 0 0 0 0 0 161 0 0 0.845048 0.845048 -21.0568 -0.845048 0 0 585099. 2024.56 0.27 0.01 0.13 -1 -1 0.27 0.00265545 0.00234463 25 -1 10 10 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 5.24 vpr 59.40 MiB 0.01 6040 -1 -1 1 0.01 -1 -1 29452 -1 -1 4 19 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60824 19 10 69 70 1 44 33 17 17 289 -1 unnamed_device 21.0 MiB 0.01 223 59.4 MiB 0.03 0.00 0.966958 -20.1974 -0.966958 0.966958 1.05 7.0745e-05 5.4132e-05 0.00355296 0.00282877 22 502 14 6.65987e+06 50712 420624. 1455.45 2.40 0.0216999 0.017873 20818 92861 -1 440 14 189 189 13578 3349 0 0 13578 3349 189 189 0 0 704 568 0 0 868 740 0 0 189 189 0 0 5571 912 0 0 6057 751 0 0 189 0 0 0 0 0 189 0 0 0.998248 0.998248 -26.181 -0.998248 0 0 500653. 1732.36 0.23 0.04 0.11 -1 -1 0.23 0.00293827 0.00254832 28 -1 11 11 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 5.98 vpr 59.59 MiB 0.01 5928 -1 -1 1 0.01 -1 -1 29532 -1 -1 5 21 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61020 21 11 76 77 1 49 37 17 17 289 -1 unnamed_device 21.0 MiB 0.02 148 59.6 MiB 0.13 0.00 0.977958 -19.6261 -0.977958 0.977958 1.02 6.4135e-05 5.1523e-05 0.00488959 0.00402954 32 405 17 6.65987e+06 63390 554710. 1919.41 2.85 0.0325319 0.0270954 22834 132086 -1 324 11 211 211 13044 3848 0 0 13044 3848 211 211 0 0 874 720 0 0 1317 1038 0 0 211 211 0 0 4831 895 0 0 5600 773 0 0 211 0 0 0 0 0 211 0 0 0.987248 0.987248 -24.9703 -0.987248 0 0 701300. 2426.64 0.32 0.08 0.16 -1 -1 0.32 0.00377214 0.00335493 31 -1 12 12 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 5.41 vpr 59.54 MiB 0.01 5924 -1 -1 1 0.01 -1 -1 29608 -1 -1 5 23 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60964 23 12 83 84 1 55 40 17 17 289 -1 unnamed_device 21.0 MiB 0.01 226 59.5 MiB 0.10 0.00 0.988958 -23.1526 -0.988958 0.988958 1.06 0.000106766 8.6505e-05 0.00321761 0.00265731 26 537 13 6.65987e+06 63390 477104. 1650.88 2.39 0.0237014 0.0198586 21682 110474 -1 516 16 267 267 17878 4944 0 0 17878 4944 267 267 0 0 1055 873 0 0 1525 1277 0 0 267 267 0 0 7074 1197 0 0 7690 1063 0 0 267 0 0 0 0 0 267 0 0 1.11845 1.11845 -31.5081 -1.11845 0 0 585099. 2024.56 0.27 0.04 0.13 -1 -1 0.27 0.00449473 0.00390847 34 -1 13 13 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 3.54 vpr 59.62 MiB 0.01 5980 -1 -1 1 0.01 -1 -1 29520 -1 -1 5 25 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61048 25 13 90 91 1 61 43 17 17 289 -1 unnamed_device 21.0 MiB 0.02 288 59.6 MiB 0.02 0.00 0.999958 -25.1276 -0.999958 0.999958 0.88 9.5436e-05 7.4789e-05 0.00301212 0.0024271 26 653 16 6.65987e+06 63390 477104. 1650.88 0.95 0.0175835 0.0148265 21682 110474 -1 610 14 288 288 22801 5956 0 0 22801 5956 288 288 0 0 1184 975 0 0 1783 1500 0 0 288 288 0 0 10200 1379 0 0 9058 1526 0 0 288 0 0 0 0 0 288 0 0 1.02145 1.02145 -34.5785 -1.02145 0 0 585099. 2024.56 0.27 0.03 0.13 -1 -1 0.27 0.00421141 0.00369068 37 -1 14 14 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 5.49 vpr 59.74 MiB 0.01 5908 -1 -1 1 0.00 -1 -1 29636 -1 -1 6 27 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61172 27 14 97 98 1 67 47 17 17 289 -1 unnamed_device 21.2 MiB 0.01 316 59.7 MiB 0.03 0.00 1.01096 -27.9549 -1.01096 1.01096 0.99 9.4065e-05 7.3799e-05 0.00302859 0.00242311 26 718 14 6.65987e+06 76068 477104. 1650.88 2.73 0.0414714 0.0350221 21682 110474 -1 656 14 289 289 20679 5372 0 0 20679 5372 289 289 0 0 1159 939 0 0 1642 1344 0 0 289 289 0 0 9426 1155 0 0 7874 1356 0 0 289 0 0 0 0 0 289 0 0 1.02025 1.02025 -36.8087 -1.02025 0 0 585099. 2024.56 0.26 0.03 0.13 -1 -1 0.26 0.00460973 0.00402086 40 -1 15 15 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 5.93 vpr 59.62 MiB 0.01 6036 -1 -1 1 0.00 -1 -1 29652 -1 -1 6 29 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61056 29 15 104 105 1 73 50 17 17 289 -1 unnamed_device 20.9 MiB 0.02 233 59.6 MiB 0.05 0.00 1.02196 -28.1488 -1.02196 1.02196 1.15 0.000123463 9.8823e-05 0.00427994 0.00352256 26 651 19 6.65987e+06 76068 477104. 1650.88 2.72 0.0433709 0.0365415 21682 110474 -1 608 18 403 403 25508 7933 0 0 25508 7933 403 403 0 0 1617 1386 0 0 2358 1925 0 0 403 403 0 0 11661 1979 0 0 9066 1837 0 0 403 0 0 0 0 0 403 0 0 1.15145 1.15145 -39.6604 -1.15145 0 0 585099. 2024.56 0.26 0.03 0.13 -1 -1 0.26 0.00580241 0.00503818 43 -1 16 16 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 5.48 vpr 59.89 MiB 0.01 5968 -1 -1 1 0.01 -1 -1 29652 -1 -1 7 31 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61328 31 16 111 112 1 79 54 17 17 289 -1 unnamed_device 21.5 MiB 0.02 368 59.9 MiB 0.06 0.00 1.26207 -32.5495 -1.26207 1.26207 1.07 0.000109353 8.4419e-05 0.00394038 0.00318603 26 821 11 6.65987e+06 88746 477104. 1650.88 2.30 0.0309892 0.0261152 21682 110474 -1 785 12 334 334 25625 6686 0 0 25625 6686 334 334 0 0 1299 1104 0 0 2090 1669 0 0 334 334 0 0 11390 1528 0 0 10178 1717 0 0 334 0 0 0 0 0 334 0 0 1.08425 1.08425 -43.44 -1.08425 0 0 585099. 2024.56 0.23 0.02 0.14 -1 -1 0.23 0.00487016 0.0043327 46 -1 17 17 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 4.24 vpr 59.92 MiB 0.01 6180 -1 -1 1 0.01 -1 -1 29600 -1 -1 7 33 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61360 33 17 118 119 1 82 57 17 17 289 -1 unnamed_device 21.5 MiB 0.01 502 59.9 MiB 0.06 0.00 1.27307 -39.9662 -1.27307 1.27307 1.08 0.000122715 9.6066e-05 0.00842858 0.00672236 26 880 13 6.65987e+06 88746 477104. 1650.88 1.08 0.0297845 0.0252506 21682 110474 -1 882 12 361 361 29861 7205 0 0 29861 7205 361 361 0 0 1496 1224 0 0 2090 1711 0 0 361 361 0 0 13628 1677 0 0 11925 1871 0 0 361 0 0 0 0 0 361 0 0 0.962989 0.962989 -46.4071 -0.962989 0 0 585099. 2024.56 0.31 0.02 0.13 -1 -1 0.31 0.00514706 0.00455435 49 -1 18 18 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 4.21 vpr 60.05 MiB 0.01 5992 -1 -1 1 0.01 -1 -1 29672 -1 -1 8 37 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61492 37 19 132 133 1 90 64 17 17 289 -1 unnamed_device 21.5 MiB 0.02 289 60.1 MiB 0.05 0.00 1.29507 -37.4034 -1.29507 1.29507 1.07 0.000130686 0.000103248 0.00575527 0.00466043 28 735 17 6.65987e+06 101424 500653. 1732.36 0.97 0.0268496 0.0227226 21970 115934 -1 650 15 411 411 21461 7032 0 0 21461 7032 411 411 0 0 1549 1292 0 0 2218 1841 0 0 411 411 0 0 9967 1487 0 0 6905 1590 0 0 411 0 0 0 0 0 411 0 0 1.10625 1.10625 -47.6907 -1.10625 0 0 612192. 2118.31 0.28 0.02 0.14 -1 -1 0.28 0.00639269 0.00563848 55 -1 20 20 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 3.29 vpr 60.07 MiB 0.01 6120 -1 -1 1 0.01 -1 -1 29608 -1 -1 8 41 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61516 41 21 146 147 1 102 70 17 17 289 -1 unnamed_device 21.5 MiB 0.03 442 60.1 MiB 0.05 0.00 1.31707 -44.9815 -1.31707 1.31707 0.70 0.00015048 0.000123407 0.00639042 0.00516374 30 922 11 6.65987e+06 101424 526063. 1820.29 0.67 0.0240909 0.0203574 22546 126617 -1 834 12 313 313 17146 4852 0 0 17146 4852 313 313 0 0 1189 924 0 0 1433 1274 0 0 313 313 0 0 7333 944 0 0 6565 1084 0 0 313 0 0 0 0 0 313 0 0 1.01905 1.01905 -52.3385 -1.01905 0 0 666494. 2306.21 0.28 0.06 0.15 -1 -1 0.28 0.00672668 0.00603607 61 -1 22 22 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 4.25 vpr 60.14 MiB 0.01 6084 -1 -1 1 0.01 -1 -1 29596 -1 -1 9 45 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61580 45 23 160 161 1 114 77 17 17 289 -1 unnamed_device 21.7 MiB 0.02 581 60.1 MiB 0.06 0.00 1.33907 -52.9642 -1.33907 1.33907 1.06 0.00015512 0.000124343 0.00680859 0.00549022 28 1254 25 6.65987e+06 114102 500653. 1732.36 0.96 0.0330334 0.0279784 21970 115934 -1 1113 18 532 532 41885 10197 0 0 41885 10197 532 532 0 0 2071 1723 0 0 2911 2450 0 0 532 532 0 0 17010 2681 0 0 18829 2279 0 0 532 0 0 0 0 0 532 0 0 1.10625 1.10625 -61.4466 -1.10625 0 0 612192. 2118.31 0.25 0.12 0.14 -1 -1 0.25 0.009609 0.00858701 67 -1 24 24 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 6.36 vpr 60.18 MiB 0.01 6208 -1 -1 1 0.00 -1 -1 29604 -1 -1 10 49 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61624 49 25 174 175 1 123 84 17 17 289 -1 unnamed_device 21.7 MiB 0.03 770 60.2 MiB 0.05 0.00 1.59018 -62.6512 -1.59018 1.59018 0.94 9.5302e-05 7.4865e-05 0.00713191 0.00570617 32 1387 15 6.65987e+06 126780 554710. 1919.41 2.99 0.0543992 0.046064 22834 132086 -1 1260 15 576 576 44955 10853 0 0 44955 10853 576 576 0 0 2322 1968 0 0 3559 2877 0 0 576 576 0 0 19782 2396 0 0 18140 2460 0 0 576 0 0 0 0 0 576 0 0 1.20445 1.20445 -70.2023 -1.20445 0 0 701300. 2426.64 0.31 0.17 0.17 -1 -1 0.31 0.0102986 0.00924928 73 -1 26 26 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 4.41 vpr 60.12 MiB 0.01 6036 -1 -1 1 0.01 -1 -1 29768 -1 -1 11 57 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61568 57 29 202 203 1 143 97 17 17 289 -1 unnamed_device 21.5 MiB 0.03 772 60.1 MiB 0.11 0.00 1.63418 -71.6996 -1.63418 1.63418 1.07 0.000211509 0.000168206 0.014142 0.0114681 32 1614 16 6.65987e+06 139458 554710. 1919.41 1.01 0.0454167 0.0385372 22834 132086 -1 1482 12 561 561 51608 12515 0 0 51608 12515 561 561 0 0 2343 1977 0 0 3430 2814 0 0 561 561 0 0 22476 3195 0 0 22237 3407 0 0 561 0 0 0 0 0 561 0 0 1.24845 1.24845 -82.1131 -1.24845 0 0 701300. 2426.64 0.30 0.04 0.15 -1 -1 0.30 0.00970454 0.00879925 85 -1 30 30 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 5.39 vpr 60.39 MiB 0.01 6200 -1 -1 1 0.02 -1 -1 29624 -1 -1 13 65 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61836 65 33 230 231 1 164 111 17 17 289 -1 unnamed_device 21.8 MiB 0.03 783 60.4 MiB 0.15 0.00 1.90729 -79.8197 -1.90729 1.90729 1.08 0.000239191 0.000189966 0.0171172 0.0138421 28 1706 19 6.65987e+06 164814 500653. 1732.36 2.00 0.0890901 0.0768886 21970 115934 -1 1507 15 629 629 44806 11820 0 0 44806 11820 629 629 0 0 2449 2010 0 0 3288 2785 0 0 629 629 0 0 19554 2882 0 0 18257 2885 0 0 629 0 0 0 0 0 629 0 0 1.28925 1.28925 -91.3553 -1.28925 0 0 612192. 2118.31 0.27 0.04 0.14 -1 -1 0.27 0.0108023 0.00959378 97 -1 34 34 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 6.85 vpr 61.12 MiB 0.02 6480 -1 -1 1 0.01 -1 -1 29932 -1 -1 19 97 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62588 97 49 342 343 1 246 165 17 17 289 -1 unnamed_device 22.4 MiB 0.05 1526 61.1 MiB 0.26 0.01 2.54151 -144.605 -2.54151 2.54151 0.65 0.000402045 0.000331069 0.0261032 0.0215228 30 2862 31 6.65987e+06 240882 526063. 1820.29 3.47 0.190638 0.167301 22546 126617 -1 2486 14 890 890 62246 14850 0 0 62246 14850 890 890 0 0 3156 2379 0 0 3941 3299 0 0 890 890 0 0 27247 3774 0 0 26122 3618 0 0 890 0 0 0 0 0 890 0 0 1.48219 1.48219 -144.637 -1.48219 0 0 666494. 2306.21 0.30 0.19 0.16 -1 -1 0.30 0.0191817 0.0173649 145 -1 50 50 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 8.15 vpr 61.94 MiB 0.02 6568 -1 -1 1 0.02 -1 -1 30088 -1 -1 25 129 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63428 129 65 454 455 1 328 219 17 17 289 -1 unnamed_device 23.2 MiB 0.07 1825 61.9 MiB 0.48 0.01 3.17573 -210.043 -3.17573 3.17573 1.08 0.000332044 0.000281467 0.0478822 0.0409076 30 3719 18 6.65987e+06 316950 526063. 1820.29 3.98 0.239462 0.211517 22546 126617 -1 3191 11 1177 1177 89867 21214 0 0 89867 21214 1177 1177 0 0 4273 3321 0 0 5367 4562 0 0 1177 1177 0 0 41200 5208 0 0 36673 5769 0 0 1177 0 0 0 0 0 1177 0 0 1.59005 1.59005 -192.556 -1.59005 0 0 666494. 2306.21 0.31 0.10 0.15 -1 -1 0.31 0.02139 0.0197082 193 -1 66 66 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_003bits.v common 4.29 vpr 60.39 MiB 0.02 5920 -1 -1 1 0.01 -1 -1 29560 -1 -1 1 7 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61844 7 4 27 28 1 12 12 17 17 289 -1 unnamed_device 21.9 MiB 0.02 24 60.4 MiB 0.01 0.00 0.712895 -6.47614 -0.712895 0.712895 1.08 2.8207e-05 2.0542e-05 0.000903633 0.000686614 12 113 7 6.95648e+06 14475.7 243793. 843.575 1.20 0.00643639 0.00507897 21730 64085 -1 98 8 36 36 1531 552 0 0 1531 552 36 36 0 0 147 106 0 0 173 147 0 0 36 36 0 0 642 107 0 0 497 120 0 0 36 0 0 0 0 0 36 0 0 0.74674 0.74674 -8.73153 -0.74674 0 0 332735. 1151.33 0.16 0.03 0.08 -1 -1 0.16 0.00129239 0.00112067 5 -1 5 5 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_004bits.v common 3.65 vpr 60.09 MiB 0.01 5920 -1 -1 1 0.01 -1 -1 29436 -1 -1 1 9 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61536 9 5 34 35 1 15 15 17 17 289 -1 unnamed_device 21.5 MiB 0.02 37 60.1 MiB 0.00 0.00 0.512442 -7.87537 -0.512442 0.512442 0.67 2.0962e-05 1.528e-05 0.000737548 0.000577657 22 135 8 6.95648e+06 14475.7 443629. 1535.05 1.13 0.0107495 0.00854181 23458 102101 -1 103 7 27 27 1432 440 0 0 1432 440 27 27 0 0 81 72 0 0 104 94 0 0 27 27 0 0 627 93 0 0 566 127 0 0 27 0 0 0 0 0 27 0 0 0.709292 0.709292 -9.75487 -0.709292 0 0 531479. 1839.03 0.15 0.00 0.07 -1 -1 0.15 0.000770461 0.000681667 7 -1 6 6 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_005bits.v common 4.30 vpr 60.45 MiB 0.01 5804 -1 -1 1 0.00 -1 -1 29560 -1 -1 1 11 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61900 11 6 41 42 1 19 18 17 17 289 -1 unnamed_device 21.9 MiB 0.05 104 60.4 MiB 0.00 0.00 0.701895 -11.5351 -0.701895 0.701895 1.03 2.1349e-05 1.4714e-05 0.000433301 0.000362991 22 209 14 6.95648e+06 14475.7 443629. 1535.05 1.35 0.00614939 0.00493083 23458 102101 -1 191 7 48 48 5233 1284 0 0 5233 1284 48 48 0 0 218 170 0 0 243 231 0 0 48 48 0 0 2105 513 0 0 2571 274 0 0 48 0 0 0 0 0 48 0 0 0.74674 0.74674 -13.5399 -0.74674 0 0 531479. 1839.03 0.19 0.01 0.08 -1 -1 0.19 0.00147084 0.00130683 8 -1 7 7 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_006bits.v common 3.75 vpr 60.21 MiB 0.01 5952 -1 -1 1 0.01 -1 -1 29400 -1 -1 2 13 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61656 13 7 48 49 1 25 22 17 17 289 -1 unnamed_device 21.6 MiB 0.04 56 60.2 MiB 0.01 0.00 0.710132 -12.1558 -0.710132 0.710132 0.85 2.5365e-05 1.7947e-05 0.000808295 0.000626752 16 160 10 6.95648e+06 28951.4 332735. 1151.33 1.04 0.00423326 0.00347345 22306 75877 -1 164 8 84 84 2842 1280 0 0 2842 1280 84 84 0 0 298 250 0 0 357 303 0 0 84 84 0 0 1075 291 0 0 944 268 0 0 84 0 0 0 0 0 84 0 0 0.955932 0.955932 -16.5365 -0.955932 0 0 414966. 1435.87 0.19 0.01 0.08 -1 -1 0.19 0.00185155 0.00164361 10 -1 8 8 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_007bits.v common 3.22 vpr 60.39 MiB 0.02 6100 -1 -1 1 0.01 -1 -1 29464 -1 -1 2 15 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61844 15 8 55 56 1 32 25 17 17 289 -1 unnamed_device 21.7 MiB 0.04 80 60.4 MiB 0.01 0.00 0.721132 -14.5202 -0.721132 0.721132 0.81 2.8081e-05 2.0295e-05 0.000821835 0.000647217 22 329 14 6.95648e+06 28951.4 443629. 1535.05 0.43 0.00578336 0.00472253 23458 102101 -1 231 13 141 141 7292 2427 0 0 7292 2427 141 141 0 0 516 448 0 0 669 558 0 0 141 141 0 0 2352 591 0 0 3473 548 0 0 141 0 0 0 0 0 141 0 0 1.06403 1.06403 -19.2829 -1.06403 0 0 531479. 1839.03 0.21 0.01 0.12 -1 -1 0.21 0.00153243 0.00132655 11 -1 9 9 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_008bits.v common 4.77 vpr 60.25 MiB 0.01 6052 -1 -1 1 0.01 -1 -1 29632 -1 -1 2 17 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61692 17 9 62 63 1 37 28 17 17 289 -1 unnamed_device 21.8 MiB 0.04 92 60.2 MiB 0.01 0.00 0.732132 -16.2722 -0.732132 0.732132 0.94 6.0407e-05 4.5856e-05 0.00207145 0.00163403 30 258 26 6.95648e+06 28951.4 556674. 1926.21 1.84 0.0142954 0.0115318 25186 138497 -1 240 20 255 255 9108 3335 0 0 9108 3335 255 255 0 0 818 695 0 0 1276 935 0 0 255 255 0 0 3289 538 0 0 3215 657 0 0 255 0 0 0 0 0 255 0 0 1.05303 1.05303 -20.0528 -1.05303 0 0 706193. 2443.58 0.31 0.03 0.14 -1 -1 0.31 0.00437453 0.00379275 13 -1 10 10 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_009bits.v common 3.31 vpr 60.36 MiB 0.01 5972 -1 -1 1 0.00 -1 -1 29592 -1 -1 2 19 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61804 19 10 69 70 1 44 31 17 17 289 -1 unnamed_device 21.8 MiB 0.03 157 60.4 MiB 0.01 0.00 0.749332 -18.8323 -0.749332 0.749332 1.01 3.4361e-05 2.507e-05 0.000971456 0.000783238 26 478 14 6.95648e+06 28951.4 503264. 1741.40 0.61 0.0101187 0.00834528 24322 120374 -1 399 13 234 234 19663 5108 0 0 19663 5108 234 234 0 0 905 780 0 0 1323 1030 0 0 234 234 0 0 7961 1469 0 0 9006 1361 0 0 234 0 0 0 0 0 234 0 0 1.18933 1.18933 -26.4754 -1.18933 0 0 618332. 2139.56 0.16 0.01 0.08 -1 -1 0.16 0.00188801 0.00165502 14 -1 11 11 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_010bits.v common 4.04 vpr 60.62 MiB 0.01 5936 -1 -1 1 0.01 -1 -1 29624 -1 -1 2 21 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62072 21 11 76 77 1 49 34 17 17 289 -1 unnamed_device 22.1 MiB 0.07 318 60.6 MiB 0.04 0.00 0.771332 -24.8417 -0.771332 0.771332 1.01 6.7878e-05 5.3618e-05 0.0017185 0.00145391 34 626 13 6.95648e+06 28951.4 618332. 2139.56 0.88 0.0164005 0.0134378 25762 151098 -1 588 14 299 299 28231 5867 0 0 28231 5867 299 299 0 0 1006 845 0 0 1501 1128 0 0 299 299 0 0 13997 1440 0 0 11129 1856 0 0 299 0 0 0 0 0 299 0 0 1.09223 1.09223 -32.7038 -1.09223 0 0 787024. 2723.27 0.31 0.02 0.17 -1 -1 0.31 0.00364871 0.00319044 16 -1 12 12 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_011bits.v common 5.02 vpr 60.39 MiB 0.01 5968 -1 -1 1 0.01 -1 -1 29480 -1 -1 3 23 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61844 23 12 83 84 1 55 38 17 17 289 -1 unnamed_device 21.9 MiB 0.06 185 60.4 MiB 0.01 0.00 0.782332 -23.5115 -0.782332 0.782332 1.06 4.8258e-05 3.0855e-05 0.00141194 0.0011346 28 573 20 6.95648e+06 43427 531479. 1839.03 1.92 0.0167885 0.013771 24610 126494 -1 455 13 291 291 23135 6366 0 0 23135 6366 291 291 0 0 1215 1070 0 0 1643 1369 0 0 291 291 0 0 8535 1835 0 0 11160 1510 0 0 291 0 0 0 0 0 291 0 0 1.12523 1.12523 -33.0886 -1.12523 0 0 648988. 2245.63 0.24 0.02 0.12 -1 -1 0.24 0.00489848 0.00443938 17 -1 13 13 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_012bits.v common 4.29 vpr 60.46 MiB 0.01 6036 -1 -1 1 0.01 -1 -1 29516 -1 -1 3 25 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61912 25 13 90 91 1 60 41 17 17 289 -1 unnamed_device 21.9 MiB 0.04 362 60.5 MiB 0.02 0.00 0.793332 -29.4597 -0.793332 0.793332 1.10 9.0465e-05 7.0304e-05 0.002597 0.00215953 34 729 15 6.95648e+06 43427 618332. 2139.56 1.38 0.0239793 0.0198611 25762 151098 -1 668 13 297 297 25643 5818 0 0 25643 5818 297 297 0 0 1096 922 0 0 1705 1247 0 0 297 297 0 0 11542 1364 0 0 10706 1691 0 0 297 0 0 0 0 0 297 0 0 1.05303 1.05303 -37.3058 -1.05303 0 0 787024. 2723.27 0.21 0.02 0.11 -1 -1 0.21 0.00405654 0.00356098 19 -1 14 14 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_013bits.v common 6.45 vpr 60.44 MiB 0.01 5940 -1 -1 1 0.01 -1 -1 29508 -1 -1 3 27 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61888 27 14 97 98 1 66 44 17 17 289 -1 unnamed_device 21.8 MiB 0.04 389 60.4 MiB 0.02 0.00 0.826332 -31.3457 -0.826332 0.826332 1.07 8.9944e-05 6.9961e-05 0.00363107 0.00292765 34 762 20 6.95648e+06 43427 618332. 2139.56 3.10 0.0383252 0.0317351 25762 151098 -1 712 14 343 343 30956 6994 0 0 30956 6994 343 343 0 0 1330 1143 0 0 1924 1500 0 0 343 343 0 0 14132 1775 0 0 12884 1890 0 0 343 0 0 0 0 0 343 0 0 1.20223 1.20223 -42.748 -1.20223 0 0 787024. 2723.27 0.32 0.02 0.18 -1 -1 0.32 0.00490939 0.0043676 20 -1 15 15 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_014bits.v common 8.32 vpr 60.67 MiB 0.03 5976 -1 -1 1 0.01 -1 -1 29604 -1 -1 3 29 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62124 29 15 104 105 1 72 47 17 17 289 -1 unnamed_device 22.0 MiB 0.04 199 60.7 MiB 0.07 0.01 0.837332 -29.9095 -0.837332 0.837332 1.08 7.2133e-05 5.4746e-05 0.00623796 0.00504347 40 591 32 6.95648e+06 43427 706193. 2443.58 4.51 0.0500652 0.0419524 26914 176310 -1 482 23 468 468 37905 10675 0 0 37905 10675 468 468 0 0 1684 1517 0 0 3340 2250 0 0 468 468 0 0 15038 3022 0 0 16907 2950 0 0 468 0 0 0 0 0 468 0 0 1.17833 1.17833 -37.1765 -1.17833 0 0 926341. 3205.33 0.38 0.20 0.21 -1 -1 0.38 0.00851484 0.00748189 22 -1 16 16 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_015bits.v common 6.59 vpr 60.50 MiB 0.01 6012 -1 -1 1 0.02 -1 -1 29512 -1 -1 3 31 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61952 31 16 111 112 1 78 50 17 17 289 -1 unnamed_device 22.1 MiB 0.05 218 60.5 MiB 0.04 0.00 1.08336 -32.4963 -1.08336 1.08336 1.04 0.000109536 8.5667e-05 0.00660384 0.00526412 32 837 19 6.95648e+06 43427 586450. 2029.24 2.77 0.0449596 0.0374964 25474 144626 -1 657 16 471 471 35520 10078 0 0 35520 10078 471 471 0 0 1735 1544 0 0 2897 1998 0 0 471 471 0 0 16246 2939 0 0 13700 2655 0 0 471 0 0 0 0 0 471 0 0 1.29253 1.29253 -45.5951 -1.29253 0 0 744469. 2576.02 0.32 0.17 0.15 -1 -1 0.32 0.00654477 0.00582394 24 -1 17 17 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_016bits.v common 4.25 vpr 60.80 MiB 0.01 6000 -1 -1 1 0.01 -1 -1 29688 -1 -1 4 33 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62264 33 17 118 119 1 81 54 17 17 289 -1 unnamed_device 22.4 MiB 0.08 236 60.8 MiB 0.04 0.00 1.09436 -35.6307 -1.09436 1.09436 0.99 0.000112435 8.6596e-05 0.00641799 0.00512939 28 936 37 6.95648e+06 57902.7 531479. 1839.03 1.06 0.0303438 0.025439 24610 126494 -1 755 14 485 485 41310 12723 0 0 41310 12723 485 485 0 0 1819 1609 0 0 2916 2131 0 0 485 485 0 0 18719 4220 0 0 16886 3793 0 0 485 0 0 0 0 0 485 0 0 1.50583 1.50583 -54.9981 -1.50583 0 0 648988. 2245.63 0.26 0.03 0.14 -1 -1 0.26 0.00531663 0.00470901 25 -1 18 18 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_018bits.v common 5.52 vpr 60.86 MiB 0.01 6140 -1 -1 1 0.01 -1 -1 29664 -1 -1 4 37 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62320 37 19 132 133 1 87 60 17 17 289 -1 unnamed_device 22.4 MiB 0.09 302 60.9 MiB 0.05 0.00 1.11636 -39.1406 -1.11636 1.11636 0.86 0.000130795 0.000103611 0.00690261 0.00556558 28 992 40 6.95648e+06 57902.7 531479. 1839.03 2.51 0.0569417 0.0483781 24610 126494 -1 788 15 494 494 39270 11442 0 0 39270 11442 494 494 0 0 1999 1810 0 0 3098 2505 0 0 494 494 0 0 15563 3016 0 0 17622 3123 0 0 494 0 0 0 0 0 494 0 0 1.32553 1.32553 -58.5257 -1.32553 0 0 648988. 2245.63 0.27 0.03 0.15 -1 -1 0.27 0.00679077 0.00603806 28 -1 20 20 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_020bits.v common 6.61 vpr 60.69 MiB 0.01 6132 -1 -1 1 0.01 -1 -1 29556 -1 -1 4 41 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62148 41 21 146 147 1 96 66 17 17 289 -1 unnamed_device 22.1 MiB 0.10 341 60.7 MiB 0.08 0.00 1.13836 -46.2028 -1.13836 1.13836 1.05 0.000137496 0.000108373 0.00881214 0.00717467 36 940 33 6.95648e+06 57902.7 648988. 2245.63 3.13 0.050303 0.0422254 26050 158493 -1 808 17 481 481 38849 10213 0 0 38849 10213 481 481 0 0 1644 1437 0 0 2558 1839 0 0 481 481 0 0 17472 3217 0 0 16213 2758 0 0 481 0 0 0 0 0 481 0 0 1.24903 1.24903 -60.9714 -1.24903 0 0 828058. 2865.25 0.35 0.06 0.18 -1 -1 0.35 0.00809149 0.00714497 31 -1 22 22 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_022bits.v common 4.97 vpr 60.77 MiB 0.01 6076 -1 -1 1 0.01 -1 -1 29524 -1 -1 5 45 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62232 45 23 160 161 1 107 73 17 17 289 -1 unnamed_device 22.1 MiB 0.17 523 60.8 MiB 0.10 0.00 1.16036 -54.0608 -1.16036 1.16036 0.95 0.000159063 0.000125446 0.0120704 0.00970542 34 1287 32 6.95648e+06 72378.4 618332. 2139.56 1.57 0.0556952 0.046814 25762 151098 -1 1023 14 508 508 37089 9105 0 0 37089 9105 508 508 0 0 1835 1585 0 0 2780 2114 0 0 508 508 0 0 14704 2342 0 0 16754 2048 0 0 508 0 0 0 0 0 508 0 0 1.41833 1.41833 -71.6349 -1.41833 0 0 787024. 2723.27 0.29 0.02 0.18 -1 -1 0.29 0.00443142 0.00397777 34 -1 24 24 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_024bits.v common 6.49 vpr 60.71 MiB 0.01 6224 -1 -1 1 0.02 -1 -1 29564 -1 -1 5 49 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62164 49 25 174 175 1 119 79 17 17 289 -1 unnamed_device 22.3 MiB 0.13 359 60.7 MiB 0.16 0.00 1.18236 -54.0689 -1.18236 1.18236 1.06 0.000170559 0.000133167 0.0124851 0.0101681 36 1154 40 6.95648e+06 72378.4 648988. 2245.63 2.87 0.0683079 0.057521 26050 158493 -1 904 16 592 592 37209 11580 0 0 37209 11580 592 592 0 0 2120 1859 0 0 3214 2410 0 0 592 592 0 0 16261 3090 0 0 14430 3037 0 0 592 0 0 0 0 0 592 0 0 1.57613 1.57613 -75.6861 -1.57613 0 0 828058. 2865.25 0.32 0.03 0.17 -1 -1 0.32 0.00854679 0.00760211 37 -1 26 26 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_028bits.v common 8.01 vpr 61.13 MiB 0.01 6236 -1 -1 1 0.01 -1 -1 29556 -1 -1 6 57 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62600 57 29 202 203 1 142 92 17 17 289 -1 unnamed_device 22.5 MiB 0.11 779 61.1 MiB 0.19 0.00 1.22636 -71.3833 -1.22636 1.22636 1.00 0.000227521 0.000181785 0.016931 0.013851 36 1772 29 6.95648e+06 86854.1 648988. 2245.63 4.36 0.101641 0.086659 26050 158493 -1 1581 15 717 717 79082 16873 0 0 79082 16873 717 717 0 0 2598 2244 0 0 3993 2907 0 0 717 717 0 0 36657 4782 0 0 34400 5506 0 0 717 0 0 0 0 0 717 0 0 1.32603 1.32603 -91.7852 -1.32603 0 0 828058. 2865.25 0.27 0.10 0.11 -1 -1 0.27 0.0102853 0.00921622 43 -1 30 30 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_032bits.v common 5.82 vpr 61.18 MiB 0.01 6216 -1 -1 1 0.01 -1 -1 29672 -1 -1 7 65 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62648 65 33 230 231 1 162 105 17 17 289 -1 unnamed_device 22.6 MiB 0.09 1024 61.2 MiB 0.15 0.00 1.50539 -88.8425 -1.50539 1.50539 1.00 0.000234585 0.000187103 0.0205307 0.0167135 36 2169 45 6.95648e+06 101330 648988. 2245.63 2.23 0.0917227 0.0789913 26050 158493 -1 1871 19 855 855 116219 22574 0 0 116219 22574 855 855 0 0 3013 2620 0 0 5118 3457 0 0 855 855 0 0 53919 7356 0 0 52459 7431 0 0 855 0 0 0 0 0 855 0 0 1.66263 1.66263 -116.617 -1.66263 0 0 828058. 2865.25 0.33 0.06 0.18 -1 -1 0.33 0.0133416 0.0118616 49 -1 34 34 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_048bits.v common 6.95 vpr 62.13 MiB 0.02 6428 -1 -1 1 0.01 -1 -1 29876 -1 -1 10 97 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63624 97 49 342 343 1 243 156 17 17 289 -1 unnamed_device 23.3 MiB 0.12 1457 62.1 MiB 0.34 0.00 1.91642 -139.609 -1.91642 1.91642 1.04 0.000328607 0.000259901 0.0348033 0.0290611 46 2855 28 6.95648e+06 144757 828058. 2865.25 3.28 0.155983 0.136477 28066 200906 -1 2497 16 1162 1162 135795 27260 0 0 135795 27260 1162 1162 0 0 4019 3582 0 0 6803 4628 0 0 1162 1162 0 0 62819 8402 0 0 59830 8324 0 0 1162 0 0 0 0 0 1162 0 0 1.55303 1.55303 -157.214 -1.55303 0 0 1.01997e+06 3529.29 0.26 0.04 0.17 -1 -1 0.26 0.0106788 0.00968231 73 -1 50 50 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml adder_064bits.v common 8.04 vpr 62.81 MiB 0.02 6612 -1 -1 1 0.01 -1 -1 30056 -1 -1 13 129 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64316 129 65 454 455 1 324 207 17 17 289 -1 unnamed_device 24.1 MiB 0.14 1990 62.8 MiB 0.44 0.01 2.32745 -201.338 -2.32745 2.32745 0.99 0.000551859 0.000463742 0.0508987 0.0433038 56 3699 35 6.95648e+06 188184 973134. 3367.25 4.06 0.224484 0.199294 29794 239141 -1 3414 16 1499 1499 209386 40586 0 0 209386 40586 1499 1499 0 0 5580 4835 0 0 10468 6939 0 0 1499 1499 0 0 95669 13017 0 0 94671 12797 0 0 1499 0 0 0 0 0 1499 0 0 1.74433 1.74433 -214.539 -1.74433 0 0 1.19926e+06 4149.71 0.47 0.08 0.17 -1 -1 0.47 0.0186776 0.0171466 97 -1 66 66 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_003bits.v common 4.03 vpr 59.94 MiB 0.01 5932 -1 -1 1 0.01 -1 -1 29572 -1 -1 1 7 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61376 7 4 27 28 1 12 12 17 17 289 -1 unnamed_device 21.4 MiB 0.01 24 59.9 MiB 0.03 0.00 0.589542 -6.10608 -0.589542 0.589542 0.92 2.4616e-05 1.742e-05 0.000990275 0.000765317 12 113 7 6.99608e+06 14715.7 243793. 843.575 1.13 0.00664294 0.00526176 21730 64085 -1 98 8 37 37 1580 565 0 0 1580 565 37 37 0 0 152 106 0 0 178 152 0 0 37 37 0 0 658 110 0 0 518 123 0 0 37 0 0 0 0 0 37 0 0 0.74674 0.74674 -8.36148 -0.74674 0 0 332735. 1151.33 0.15 0.01 0.08 -1 -1 0.15 0.000995449 0.000859467 5 -1 5 5 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_004bits.v common 5.63 vpr 60.18 MiB 0.01 5924 -1 -1 1 0.01 -1 -1 29552 -1 -1 1 9 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61624 9 5 34 35 1 15 15 17 17 289 -1 unnamed_device 21.7 MiB 0.01 32 60.2 MiB 0.06 0.00 0.49614 -7.75457 -0.49614 0.49614 1.05 3.2849e-05 2.3855e-05 0.00108498 0.000876967 24 130 6 6.99608e+06 14715.7 470940. 1629.55 2.45 0.0144693 0.0115459 24034 113901 -1 119 6 34 34 2566 840 0 0 2566 840 34 34 0 0 155 121 0 0 181 163 0 0 34 34 0 0 1183 226 0 0 979 262 0 0 34 0 0 0 0 0 34 0 0 0.74674 0.74674 -10.1353 -0.74674 0 0 586450. 2029.24 0.24 0.00 0.13 -1 -1 0.24 0.000709246 0.000625754 7 -1 6 6 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_005bits.v common 4.66 vpr 60.17 MiB 0.01 6168 -1 -1 1 0.01 -1 -1 29528 -1 -1 1 11 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61612 11 6 41 42 1 19 18 17 17 289 -1 unnamed_device 21.6 MiB 0.01 108 60.2 MiB 0.00 0.00 0.87204 -12.1794 -0.87204 0.87204 0.98 3.8064e-05 2.7968e-05 0.000592334 0.000486571 16 183 11 6.99608e+06 14715.7 332735. 1151.33 1.66 0.00509711 0.0042907 22306 75877 -1 175 11 62 62 4187 1227 0 0 4187 1227 62 62 0 0 268 227 0 0 296 273 0 0 62 62 0 0 1629 320 0 0 1870 283 0 0 62 0 0 0 0 0 62 0 0 0.87204 0.87204 -13.8083 -0.87204 0 0 414966. 1435.87 0.17 0.01 0.09 -1 -1 0.17 0.00195592 0.00173412 8 -1 7 7 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_006bits.v common 5.57 vpr 59.99 MiB 0.01 5904 -1 -1 1 0.01 -1 -1 29468 -1 -1 2 13 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61432 13 7 48 49 1 26 22 17 17 289 -1 unnamed_device 21.4 MiB 0.01 63 60.0 MiB 0.04 0.00 0.710132 -12.4032 -0.710132 0.710132 1.04 4.5027e-05 3.5527e-05 0.00135859 0.00109363 26 195 8 6.99608e+06 29431.4 503264. 1741.40 2.30 0.0132231 0.0107729 24322 120374 -1 175 6 68 68 4981 1586 0 0 4981 1586 68 68 0 0 312 263 0 0 374 333 0 0 68 68 0 0 1806 418 0 0 2353 436 0 0 68 0 0 0 0 0 68 0 0 0.791432 0.791432 -15.7063 -0.791432 0 0 618332. 2139.56 0.25 0.01 0.14 -1 -1 0.25 0.001613 0.00145527 10 -1 8 8 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_007bits.v common 3.94 vpr 59.96 MiB 0.02 6052 -1 -1 1 0.01 -1 -1 29472 -1 -1 2 15 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61396 15 8 55 56 1 31 25 17 17 289 -1 unnamed_device 21.3 MiB 0.01 84 60.0 MiB 0.01 0.00 0.721132 -14.3949 -0.721132 0.721132 1.07 5.1957e-05 3.8979e-05 0.00137866 0.00109691 26 237 13 6.99608e+06 29431.4 503264. 1741.40 0.74 0.0091459 0.00748066 24322 120374 -1 208 8 102 102 5115 1879 0 0 5115 1879 102 102 0 0 425 364 0 0 582 496 0 0 102 102 0 0 1813 402 0 0 2091 413 0 0 102 0 0 0 0 0 102 0 0 0.940679 0.940679 -18.6642 -0.940679 0 0 618332. 2139.56 0.26 0.01 0.14 -1 -1 0.26 0.00191828 0.00170251 11 -1 9 9 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_008bits.v common 5.97 vpr 60.05 MiB 0.01 5924 -1 -1 1 0.01 -1 -1 29520 -1 -1 2 17 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61492 17 9 62 63 1 36 28 17 17 289 -1 unnamed_device 21.7 MiB 0.02 88 60.1 MiB 0.02 0.00 0.710132 -15.7325 -0.710132 0.710132 1.05 6.2809e-05 4.7815e-05 0.0021219 0.00169311 34 264 19 6.99608e+06 29431.4 618332. 2139.56 2.54 0.0284368 0.0231417 25762 151098 -1 250 24 281 281 17800 5815 0 0 17800 5815 281 281 0 0 1098 953 0 0 1593 1235 0 0 281 281 0 0 6444 1558 0 0 8103 1507 0 0 281 0 0 0 0 0 281 0 0 1.08603 1.08603 -21.2457 -1.08603 0 0 787024. 2723.27 0.32 0.02 0.17 -1 -1 0.32 0.003944 0.00334911 13 -1 10 10 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_009bits.v common 6.22 vpr 60.19 MiB 0.01 6008 -1 -1 1 0.01 -1 -1 29524 -1 -1 2 19 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61636 19 10 69 70 1 43 31 17 17 289 -1 unnamed_device 21.7 MiB 0.05 123 60.2 MiB 0.07 0.00 0.732132 -17.8687 -0.732132 0.732132 1.00 6.8718e-05 5.271e-05 0.002005 0.00163504 30 385 27 6.99608e+06 29431.4 556674. 1926.21 2.85 0.0289202 0.0239632 25186 138497 -1 298 9 181 181 10592 3465 0 0 10592 3465 181 181 0 0 671 566 0 0 825 703 0 0 181 181 0 0 3568 996 0 0 5166 838 0 0 181 0 0 0 0 0 181 0 0 1.07503 1.07503 -24.5882 -1.07503 0 0 706193. 2443.58 0.29 0.01 0.16 -1 -1 0.29 0.0025305 0.00224829 14 -1 11 11 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_010bits.v common 4.61 vpr 60.42 MiB 0.01 5936 -1 -1 1 0.01 -1 -1 29684 -1 -1 2 21 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61872 21 11 76 77 1 48 34 17 17 289 -1 unnamed_device 22.0 MiB 0.02 313 60.4 MiB 0.01 0.00 0.743132 -24.3932 -0.743132 0.743132 1.06 7.6215e-05 5.9127e-05 0.00177324 0.00144135 34 614 18 6.99608e+06 29431.4 618332. 2139.56 1.49 0.0215366 0.0177755 25762 151098 -1 604 13 240 240 26655 5602 0 0 26655 5602 240 240 0 0 897 774 0 0 1283 1007 0 0 240 240 0 0 13340 1518 0 0 10655 1823 0 0 240 0 0 0 0 0 240 0 0 1.08603 1.08603 -32.3327 -1.08603 0 0 787024. 2723.27 0.28 0.07 0.17 -1 -1 0.28 0.00378127 0.00332462 16 -1 12 12 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_011bits.v common 4.19 vpr 60.39 MiB 0.01 5988 -1 -1 1 0.02 -1 -1 29540 -1 -1 3 23 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61844 23 12 83 84 1 54 38 17 17 289 -1 unnamed_device 21.9 MiB 0.06 226 60.4 MiB 0.02 0.00 0.754132 -24.2878 -0.754132 0.754132 0.97 8.2266e-05 6.3082e-05 0.002546 0.00203887 30 586 21 6.99608e+06 44147 556674. 1926.21 1.05 0.0151115 0.0125649 25186 138497 -1 498 13 228 228 17332 4467 0 0 17332 4467 228 228 0 0 833 720 0 0 1135 912 0 0 228 228 0 0 6737 1243 0 0 8171 1136 0 0 228 0 0 0 0 0 228 0 0 1.25533 1.25533 -33.4347 -1.25533 0 0 706193. 2443.58 0.28 0.02 0.16 -1 -1 0.28 0.00385304 0.00341063 17 -1 13 13 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_012bits.v common 4.94 vpr 60.47 MiB 0.01 6212 -1 -1 1 0.01 -1 -1 29400 -1 -1 3 25 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61920 25 13 90 91 1 60 41 17 17 289 -1 unnamed_device 21.9 MiB 0.02 374 60.5 MiB 0.01 0.00 0.776132 -29.7809 -0.776132 0.776132 1.07 8.9061e-05 6.906e-05 0.00248066 0.00200503 34 772 14 6.99608e+06 44147 618332. 2139.56 1.66 0.028812 0.0241717 25762 151098 -1 729 13 302 302 34451 7352 0 0 34451 7352 302 302 0 0 1204 1019 0 0 1816 1366 0 0 302 302 0 0 15852 2038 0 0 14975 2325 0 0 302 0 0 0 0 0 302 0 0 1.08603 1.08603 -37.1629 -1.08603 0 0 787024. 2723.27 0.29 0.10 0.16 -1 -1 0.29 0.00456015 0.00402398 19 -1 14 14 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_013bits.v common 6.06 vpr 60.35 MiB 0.01 6168 -1 -1 1 0.01 -1 -1 29492 -1 -1 3 27 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61800 27 14 97 98 1 66 44 17 17 289 -1 unnamed_device 21.8 MiB 0.02 418 60.4 MiB 0.03 0.00 0.787132 -31.588 -0.787132 0.787132 0.84 7.0868e-05 5.3984e-05 0.00258308 0.0020623 34 815 14 6.99608e+06 44147 618332. 2139.56 3.02 0.0277602 0.0231893 25762 151098 -1 714 18 374 374 33429 7394 0 0 33429 7394 374 374 0 0 1334 1140 0 0 2227 1596 0 0 374 374 0 0 15471 1841 0 0 13649 2069 0 0 374 0 0 0 0 0 374 0 0 1.03968 1.03968 -40.1337 -1.03968 0 0 787024. 2723.27 0.31 0.02 0.17 -1 -1 0.31 0.00526588 0.0046015 20 -1 15 15 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_014bits.v common 5.39 vpr 60.54 MiB 0.02 5952 -1 -1 1 0.00 -1 -1 29624 -1 -1 3 29 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61992 29 15 104 105 1 72 47 17 17 289 -1 unnamed_device 21.9 MiB 0.02 209 60.5 MiB 0.03 0.00 0.809132 -28.379 -0.809132 0.809132 1.13 0.000101313 7.8741e-05 0.0049442 0.00402999 34 805 42 6.99608e+06 44147 618332. 2139.56 1.82 0.0328861 0.0276309 25762 151098 -1 600 29 555 555 106733 56305 0 0 106733 56305 555 555 0 0 1961 1742 0 0 4781 2910 0 0 555 555 0 0 49225 25423 0 0 49656 25120 0 0 555 0 0 0 0 0 555 0 0 1.27733 1.27733 -40.1311 -1.27733 0 0 787024. 2723.27 0.43 0.13 0.16 -1 -1 0.43 0.00887497 0.00769548 22 -1 16 16 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_015bits.v common 6.72 vpr 60.38 MiB 0.01 5984 -1 -1 1 0.01 -1 -1 29648 -1 -1 3 31 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61824 31 16 111 112 1 78 50 17 17 289 -1 unnamed_device 21.7 MiB 0.02 218 60.4 MiB 0.04 0.00 1.05516 -32.1906 -1.05516 1.05516 1.11 0.000110801 7.9206e-05 0.00676928 0.00539999 32 962 32 6.99608e+06 44147 586450. 2029.24 3.38 0.0494244 0.0415323 25474 144626 -1 698 19 443 443 39837 10980 0 0 39837 10980 443 443 0 0 1617 1392 0 0 2835 1900 0 0 443 443 0 0 18585 3603 0 0 15914 3199 0 0 443 0 0 0 0 0 443 0 0 1.21603 1.21603 -47.0116 -1.21603 0 0 744469. 2576.02 0.29 0.03 0.16 -1 -1 0.29 0.00617152 0.00538329 24 -1 17 17 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_016bits.v common 4.04 vpr 60.57 MiB 0.01 6084 -1 -1 1 0.02 -1 -1 29544 -1 -1 4 33 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62020 33 17 118 119 1 81 54 17 17 289 -1 unnamed_device 22.1 MiB 0.03 230 60.6 MiB 0.06 0.00 1.06616 -35.0462 -1.06616 1.06616 0.84 8.6532e-05 6.6078e-05 0.0072722 0.00622731 30 915 20 6.99608e+06 58862.7 556674. 1926.21 0.95 0.0254961 0.0216024 25186 138497 -1 752 24 516 516 61363 25343 0 0 61363 25343 516 516 0 0 1854 1679 0 0 3385 2321 0 0 516 516 0 0 27957 10169 0 0 27135 10142 0 0 516 0 0 0 0 0 516 0 0 1.24233 1.24233 -49.7673 -1.24233 0 0 706193. 2443.58 0.25 0.06 0.15 -1 -1 0.25 0.00773107 0.0066829 25 -1 18 18 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_018bits.v common 6.83 vpr 60.53 MiB 0.02 6112 -1 -1 1 0.01 -1 -1 29692 -1 -1 4 37 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61984 37 19 132 133 1 87 60 17 17 289 -1 unnamed_device 22.1 MiB 0.05 259 60.5 MiB 0.05 0.00 1.08816 -38.3743 -1.08816 1.08816 1.08 0.000130619 0.000102598 0.00679037 0.0055063 34 893 45 6.99608e+06 58862.7 618332. 2139.56 3.54 0.0664906 0.0562889 25762 151098 -1 631 19 465 465 31381 9863 0 0 31381 9863 465 465 0 0 1666 1453 0 0 2802 1958 0 0 465 465 0 0 11493 2745 0 0 14490 2777 0 0 465 0 0 0 0 0 465 0 0 1.29733 1.29733 -54.6414 -1.29733 0 0 787024. 2723.27 0.31 0.04 0.18 -1 -1 0.31 0.00658836 0.00581527 28 -1 20 20 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_020bits.v common 6.31 vpr 60.45 MiB 0.03 6096 -1 -1 1 0.01 -1 -1 29644 -1 -1 4 41 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61900 41 21 146 147 1 94 66 17 17 289 -1 unnamed_device 21.9 MiB 0.07 342 60.4 MiB 0.05 0.00 1.11016 -46.2573 -1.11016 1.11016 1.02 0.000138166 0.000107289 0.00829747 0.00664998 30 1042 20 6.99608e+06 58862.7 556674. 1926.21 2.83 0.0579712 0.0488511 25186 138497 -1 875 14 476 476 33597 9341 0 0 33597 9341 476 476 0 0 1671 1433 0 0 2277 1757 0 0 476 476 0 0 14732 2818 0 0 13965 2381 0 0 476 0 0 0 0 0 476 0 0 1.35233 1.35233 -63.8622 -1.35233 0 0 706193. 2443.58 0.29 0.03 0.16 -1 -1 0.29 0.00641119 0.0057003 31 -1 22 22 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_022bits.v common 7.00 vpr 60.78 MiB 0.02 6272 -1 -1 1 0.01 -1 -1 29648 -1 -1 5 45 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62240 45 23 160 161 1 106 73 17 17 289 -1 unnamed_device 22.2 MiB 0.07 558 60.8 MiB 0.07 0.00 1.13216 -52.0541 -1.13216 1.13216 0.96 0.000156524 0.000122822 0.0120275 0.00967113 34 1281 39 6.99608e+06 73578.4 618332. 2139.56 3.64 0.0731324 0.0619902 25762 151098 -1 1093 17 501 501 52405 11986 0 0 52405 11986 501 501 0 0 1789 1563 0 0 3022 2039 0 0 501 501 0 0 22872 3746 0 0 23720 3636 0 0 501 0 0 0 0 0 501 0 0 1.51878 1.51878 -72.2681 -1.51878 0 0 787024. 2723.27 0.31 0.04 0.17 -1 -1 0.31 0.00825541 0.00727572 34 -1 24 24 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_024bits.v common 5.49 vpr 60.95 MiB 0.02 6220 -1 -1 1 0.01 -1 -1 29612 -1 -1 5 49 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62416 49 25 174 175 1 118 79 17 17 289 -1 unnamed_device 22.5 MiB 0.06 569 61.0 MiB 0.05 0.00 1.15416 -57.8949 -1.15416 1.15416 1.04 0.000171585 0.000135716 0.00651034 0.0052869 34 1533 23 6.99608e+06 73578.4 618332. 2139.56 1.98 0.059203 0.0507505 25762 151098 -1 1280 20 717 717 92629 19845 0 0 92629 19845 717 717 0 0 2687 2401 0 0 4346 3084 0 0 717 717 0 0 42105 6412 0 0 42057 6514 0 0 717 0 0 0 0 0 717 0 0 1.35428 1.35428 -78.6542 -1.35428 0 0 787024. 2723.27 0.31 0.05 0.18 -1 -1 0.31 0.0102286 0.00904662 37 -1 26 26 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_028bits.v common 5.82 vpr 61.07 MiB 0.01 6284 -1 -1 1 0.01 -1 -1 29652 -1 -1 6 57 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62536 57 29 202 203 1 141 92 17 17 289 -1 unnamed_device 22.5 MiB 0.07 730 61.1 MiB 0.21 0.01 1.19816 -69.9592 -1.19816 1.19816 1.04 0.000303843 0.000248729 0.0201067 0.017063 34 1773 24 6.99608e+06 88294.1 618332. 2139.56 2.24 0.0899494 0.0782894 25762 151098 -1 1544 21 742 742 85899 19143 0 0 85899 19143 742 742 0 0 2806 2491 0 0 4680 3272 0 0 742 742 0 0 37497 5899 0 0 39432 5997 0 0 742 0 0 0 0 0 742 0 0 1.45948 1.45948 -93.2196 -1.45948 0 0 787024. 2723.27 0.30 0.05 0.15 -1 -1 0.30 0.0124378 0.0110277 43 -1 30 30 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_032bits.v common 9.82 vpr 61.16 MiB 0.01 6164 -1 -1 1 0.01 -1 -1 29636 -1 -1 7 65 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62624 65 33 230 231 1 162 105 17 17 289 -1 unnamed_device 22.7 MiB 0.09 1045 61.2 MiB 0.37 0.00 1.47719 -88.8092 -1.47719 1.47719 0.97 0.000179602 0.000143079 0.0297319 0.024668 34 2195 42 6.99608e+06 103010 618332. 2139.56 6.35 0.159675 0.138601 25762 151098 -1 1932 15 883 883 108582 23032 0 0 108582 23032 883 883 0 0 3286 2855 0 0 5501 3908 0 0 883 883 0 0 50261 7005 0 0 47768 7498 0 0 883 0 0 0 0 0 883 0 0 1.39198 1.39198 -109.383 -1.39198 0 0 787024. 2723.27 0.22 0.03 0.11 -1 -1 0.22 0.00659478 0.00589324 49 -1 34 34 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_048bits.v common 7.49 vpr 62.06 MiB 0.02 6492 -1 -1 1 0.02 -1 -1 29828 -1 -1 10 97 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63548 97 49 342 343 1 243 156 17 17 289 -1 unnamed_device 23.2 MiB 0.07 1490 62.1 MiB 0.34 0.00 1.88822 -140.002 -1.88822 1.88822 1.07 0.000285702 0.000234335 0.0332619 0.027279 44 2952 49 6.99608e+06 147157 787024. 2723.27 3.30 0.162902 0.142284 27778 195446 -1 2546 23 1267 1267 218784 69231 0 0 218784 69231 1267 1267 0 0 4325 3773 0 0 8892 5536 0 0 1267 1267 0 0 102756 28739 0 0 100277 28649 0 0 1267 0 0 0 0 0 1267 0 0 1.44973 1.44973 -154.611 -1.44973 0 0 997811. 3452.63 0.38 0.11 0.25 -1 -1 0.38 0.0224199 0.020058 73 -1 50 50 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml adder_064bits.v common 20.46 vpr 62.52 MiB 0.02 6696 -1 -1 1 0.02 -1 -1 30032 -1 -1 13 129 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64016 129 65 454 455 1 324 207 17 17 289 -1 unnamed_device 23.6 MiB 0.09 1897 62.5 MiB 0.50 0.03 2.29925 -192.633 -2.29925 2.29925 1.04 0.00115323 0.0010367 0.0556842 0.0476684 50 3653 22 6.99608e+06 191304 902133. 3121.57 16.09 0.389154 0.346958 28642 213929 -1 3301 18 1565 1565 171742 35240 0 0 171742 35240 1565 1565 0 0 5586 4806 0 0 9271 6394 0 0 1565 1565 0 0 79573 10166 0 0 74182 10744 0 0 1565 0 0 0 0 0 1565 0 0 1.67873 1.67873 -209.67 -1.67873 0 0 1.08113e+06 3740.92 0.43 0.10 0.26 -1 -1 0.43 0.0269574 0.0243037 97 -1 66 66 0 0 -fixed_k6_frac_N8_22nm.xml adder_003bits.v common 3.55 vpr 59.31 MiB 0.01 5728 -1 -1 1 0.05 -1 -1 31584 -1 -1 1 7 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60732 7 4 21 25 1 11 12 17 17 289 -1 unnamed_device 20.9 MiB 0.01 29 59.3 MiB 0.01 0.00 0.593895 -6.43271 -0.593895 0.593895 0.93 3.4193e-05 2.4733e-05 0.000851904 0.000648603 18 105 6 6.79088e+06 13472 376052. 1301.22 0.57 0.00211966 0.001779 22222 88205 -1 94 4 21 21 1320 445 0 0 1320 445 21 21 0 0 104 80 0 0 119 105 0 0 21 21 0 0 598 107 0 0 457 111 0 0 21 0 0 0 0 0 21 0 0 0.834592 0.834592 -8.31221 -0.834592 0 0 470940. 1629.55 0.19 0.04 0.10 -1 -1 0.19 0.000939876 0.000850381 6 4 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_004bits.v common 3.87 vpr 59.57 MiB 0.01 5708 -1 -1 2 0.04 -1 -1 32304 -1 -1 1 9 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60996 9 5 28 33 1 16 15 17 17 289 -1 unnamed_device 21.1 MiB 0.01 39 59.6 MiB 0.01 0.00 0.883748 -8.9664 -0.883748 0.883748 1.05 3.3562e-05 2.42e-05 0.000920001 0.000710083 18 132 5 6.79088e+06 13472 376052. 1301.22 0.57 0.00216462 0.00179918 22222 88205 -1 109 7 33 33 1416 516 0 0 1416 516 33 33 0 0 138 111 0 0 164 139 0 0 33 33 0 0 603 91 0 0 445 109 0 0 33 0 0 0 0 0 33 0 0 0.883748 0.883748 -10.7206 -0.883748 0 0 470940. 1629.55 0.19 0.13 0.10 -1 -1 0.19 0.00151997 0.0013372 8 6 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_005bits.v common 4.17 vpr 59.41 MiB 0.03 5648 -1 -1 2 0.05 -1 -1 31420 -1 -1 2 11 0 0 exited with return code 2 v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60836 11 6 34 40 1 23 19 17 17 289 -1 unnamed_device 20.9 MiB 0.01 70 59.4 MiB 0.01 0.00 1.02368 -11.8337 -1.02368 1.02368 1.05 4.4119e-05 3.2958e-05 0.000779798 0.000634964 18 172 7 6.79088e+06 26944 376052. 1301.22 0.67 0.00282918 0.00245239 22222 88205 -1 -1 -1 376 379 1167952 349557 0 0 1167952 349557 379 377 0 0 1436 1092 0 0 10355 1505 0 0 379 377 0 0 796826 169519 0 0 358577 176687 0 0 379 0 0 3 3 0 391 0 0 -1 -1 -1 -1 -1 -1 -1 -1 0.18 0.48 0.10 -1 -1 0.18 -1 -1 10 7 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_006bits.v common 4.66 vpr 59.70 MiB 0.01 5744 -1 -1 3 0.04 -1 -1 31396 -1 -1 2 13 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61136 13 7 41 48 1 30 22 17 17 289 -1 unnamed_device 21.1 MiB 0.01 77 59.7 MiB 0.01 0.00 1.05944 -13.2363 -1.05944 1.05944 0.92 5.291e-05 4.0019e-05 0.00128191 0.00103104 22 259 11 6.79088e+06 26944 443629. 1535.05 1.87 0.0162407 0.0134124 22798 101617 -1 232 10 103 113 6107 1997 0 0 6107 1997 113 109 0 0 445 377 0 0 566 494 0 0 113 112 0 0 2125 436 0 0 2745 469 0 0 113 0 0 10 8 2 153 0 0 1.05944 1.05944 -17.6687 -1.05944 0 0 531479. 1839.03 0.23 0.01 0.11 -1 -1 0.23 0.00195625 0.00171738 11 9 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_007bits.v common 3.92 vpr 59.50 MiB 0.01 5652 -1 -1 3 0.05 -1 -1 31336 -1 -1 2 15 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60928 15 8 47 55 1 36 25 17 17 289 -1 unnamed_device 20.9 MiB 0.01 106 59.5 MiB 0.01 0.00 1.35273 -17.0584 -1.35273 1.35273 1.07 5.1656e-05 3.9748e-05 0.00202925 0.00159136 20 265 10 6.79088e+06 26944 414966. 1435.87 0.62 0.00470584 0.0039504 22510 95286 -1 288 10 135 146 8774 3012 0 0 8774 3012 146 141 0 0 581 478 0 0 837 652 0 0 146 145 0 0 3389 798 0 0 3675 798 0 0 146 0 0 11 7 4 190 0 0 1.35273 1.35273 -23.0336 -1.35273 0 0 503264. 1741.40 0.21 0.01 0.11 -1 -1 0.21 0.00243807 0.00217955 13 10 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_008bits.v common 4.17 vpr 59.79 MiB 0.01 5592 -1 -1 3 0.06 -1 -1 31660 -1 -1 2 17 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61220 17 9 56 65 1 43 28 17 17 289 -1 unnamed_device 21.1 MiB 0.05 132 59.8 MiB 0.01 0.00 1.27433 -18.2338 -1.27433 1.27433 1.05 6.7066e-05 5.1351e-05 0.00201147 0.00161101 26 402 10 6.79088e+06 26944 503264. 1741.40 0.93 0.0122128 0.0102389 23662 119890 -1 373 8 180 195 11468 3626 0 0 11468 3626 195 188 0 0 751 646 0 0 1185 967 0 0 195 193 0 0 4009 809 0 0 5133 823 0 0 195 0 0 15 4 11 255 0 0 1.27433 1.27433 -24.3341 -1.27433 0 0 618332. 2139.56 0.22 0.06 0.13 -1 -1 0.22 0.00248966 0.00222334 16 14 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_009bits.v common 6.61 vpr 59.84 MiB 0.01 5672 -1 -1 4 0.06 -1 -1 31488 -1 -1 3 19 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61276 19 10 60 70 1 49 32 17 17 289 -1 unnamed_device 21.4 MiB 0.06 181 59.8 MiB 0.01 0.00 1.1736 -22.0042 -1.1736 1.1736 1.05 6.6563e-05 5.0089e-05 0.00234033 0.00185521 34 473 12 6.79088e+06 40416 618332. 2139.56 3.32 0.0283027 0.0237133 25102 150614 -1 411 11 188 194 12618 3323 0 0 12618 3323 194 191 0 0 706 584 0 0 1070 816 0 0 194 191 0 0 4815 820 0 0 5639 721 0 0 194 0 0 6 4 5 221 0 0 1.1736 1.1736 -26.8517 -1.1736 0 0 787024. 2723.27 0.31 0.01 0.15 -1 -1 0.31 0.00306864 0.00273181 17 13 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_010bits.v common 5.33 vpr 59.91 MiB 0.01 5740 -1 -1 4 0.05 -1 -1 31440 -1 -1 3 21 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61344 21 11 69 80 1 55 35 17 17 289 -1 unnamed_device 21.3 MiB 0.19 174 59.9 MiB 0.02 0.00 1.60338 -26.7594 -1.60338 1.60338 1.07 8.83e-05 6.8597e-05 0.00326342 0.00263007 26 504 15 6.79088e+06 40416 503264. 1741.40 1.90 0.0301833 0.0252723 23662 119890 -1 465 11 239 295 15289 4980 0 0 15289 4980 295 247 0 0 1116 925 0 0 1640 1287 0 0 295 262 0 0 6512 1203 0 0 5431 1056 0 0 295 0 0 56 35 58 556 0 0 1.65023 1.65023 -33.4369 -1.65023 0 0 618332. 2139.56 0.25 0.02 0.13 -1 -1 0.25 0.0035709 0.00317414 21 17 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_011bits.v common 5.96 vpr 59.62 MiB 0.01 5688 -1 -1 5 0.06 -1 -1 31884 -1 -1 3 23 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61056 23 12 73 85 1 60 38 17 17 289 -1 unnamed_device 21.1 MiB 0.09 188 59.6 MiB 0.02 0.00 1.8114 -28.6609 -1.8114 1.8114 1.05 8.5548e-05 6.6906e-05 0.00316061 0.00254693 26 616 11 6.79088e+06 40416 503264. 1741.40 2.60 0.033863 0.0286449 23662 119890 -1 565 13 310 370 23519 7171 0 0 23519 7171 370 327 0 0 1372 1181 0 0 2293 1776 0 0 370 339 0 0 8850 1655 0 0 10264 1893 0 0 370 0 0 60 46 38 634 0 0 1.8114 1.8114 -37.4319 -1.8114 0 0 618332. 2139.56 0.24 0.11 0.14 -1 -1 0.24 0.00486375 0.00435335 20 16 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_012bits.v common 6.44 vpr 59.64 MiB 0.01 5648 -1 -1 5 0.05 -1 -1 31640 -1 -1 3 25 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61068 25 13 82 95 1 66 41 17 17 289 -1 unnamed_device 21.1 MiB 0.21 365 59.6 MiB 0.02 0.00 1.85403 -37.101 -1.85403 1.85403 1.05 0.000101208 7.9393e-05 0.00302233 0.00248225 34 767 12 6.79088e+06 40416 618332. 2139.56 2.93 0.035365 0.029765 25102 150614 -1 708 14 250 287 21152 5175 0 0 21152 5175 287 258 0 0 1129 984 0 0 1657 1313 0 0 287 263 0 0 9434 1106 0 0 8358 1251 0 0 287 0 0 37 22 23 443 0 0 1.96814 1.96814 -44.3594 -1.96814 0 0 787024. 2723.27 0.30 0.02 0.19 -1 -1 0.30 0.00406307 0.00360706 24 20 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_013bits.v common 5.45 vpr 60.09 MiB 0.01 5820 -1 -1 5 0.04 -1 -1 31984 -1 -1 4 27 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61532 27 14 91 105 1 72 45 17 17 289 -1 unnamed_device 21.5 MiB 0.34 231 60.1 MiB 0.02 0.00 1.81483 -35.8844 -1.81483 1.81483 0.85 8.0275e-05 6.1488e-05 0.00309597 0.00255542 30 724 23 6.79088e+06 53888 556674. 1926.21 2.04 0.0381978 0.0324814 24526 138013 -1 640 10 288 356 19110 5876 0 0 19110 5876 356 308 0 0 1302 1090 0 0 1746 1399 0 0 356 312 0 0 7345 1311 0 0 8005 1456 0 0 356 0 0 68 49 35 658 0 0 1.81483 1.81483 -44.3656 -1.81483 0 0 706193. 2443.58 0.32 0.04 0.12 -1 -1 0.32 0.00532844 0.00492269 27 24 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_014bits.v common 5.16 vpr 59.98 MiB 0.01 5892 -1 -1 6 0.06 -1 -1 31484 -1 -1 4 29 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61416 29 15 95 110 1 77 48 17 17 289 -1 unnamed_device 21.4 MiB 0.25 282 60.0 MiB 0.04 0.00 2.06549 -39.791 -2.06549 2.06549 0.95 0.000111227 8.6736e-05 0.00925705 0.00734255 34 780 37 6.79088e+06 53888 618332. 2139.56 1.70 0.0423705 0.0357475 25102 150614 -1 620 13 361 416 23754 7037 0 0 23754 7037 416 380 0 0 1586 1347 0 0 2473 1917 0 0 416 381 0 0 9974 1513 0 0 8889 1499 0 0 416 0 0 55 41 37 659 0 0 2.06549 2.06549 -48.0608 -2.06549 0 0 787024. 2723.27 0.25 0.02 0.17 -1 -1 0.25 0.0055286 0.00497596 28 23 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_015bits.v common 7.17 vpr 60.00 MiB 0.02 5796 -1 -1 6 0.06 -1 -1 31724 -1 -1 5 31 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61444 31 16 104 120 1 83 52 17 17 289 -1 unnamed_device 21.4 MiB 0.68 367 60.0 MiB 0.03 0.00 2.28038 -46.4209 -2.28038 2.28038 1.05 0.000130908 0.000104187 0.00467861 0.00383271 34 887 14 6.79088e+06 67360 618332. 2139.56 3.11 0.0506089 0.043254 25102 150614 -1 779 12 296 402 29174 7088 0 0 29174 7088 402 328 0 0 1460 1211 0 0 2455 1787 0 0 402 336 0 0 12274 1756 0 0 12181 1670 0 0 402 0 0 106 78 116 954 0 0 2.28038 2.28038 -53.4377 -2.28038 0 0 787024. 2723.27 0.31 0.03 0.17 -1 -1 0.31 0.0055276 0.00495741 32 27 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_016bits.v common 6.77 vpr 59.91 MiB 0.02 5808 -1 -1 7 0.07 -1 -1 31524 -1 -1 4 33 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61352 33 17 108 125 1 88 54 17 17 289 -1 unnamed_device 21.5 MiB 0.66 422 59.9 MiB 0.02 0.00 2.39454 -50.8956 -2.39454 2.39454 1.07 0.00013419 0.000107463 0.00399215 0.00328031 30 985 17 6.79088e+06 53888 556674. 1926.21 2.73 0.0575442 0.0493295 24526 138013 -1 839 11 331 405 24817 6041 0 0 24817 6041 405 343 0 0 1429 1180 0 0 2040 1557 0 0 405 364 0 0 9924 1440 0 0 10614 1157 0 0 405 0 0 74 66 48 741 0 0 2.39454 2.39454 -57.5365 -2.39454 0 0 706193. 2443.58 0.28 0.02 0.15 -1 -1 0.28 0.0057688 0.00519997 32 26 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_018bits.v common 8.03 vpr 60.14 MiB 0.01 5708 -1 -1 7 0.05 -1 -1 31416 -1 -1 5 37 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61588 37 19 127 146 1 100 61 17 17 289 -1 unnamed_device 21.6 MiB 1.07 414 60.1 MiB 0.03 0.00 2.57023 -57.6201 -2.57023 2.57023 1.05 0.000161418 0.000127976 0.00499586 0.00411955 36 1061 15 6.79088e+06 67360 648988. 2245.63 3.85 0.0518569 0.0443821 25390 158009 -1 911 12 385 533 36418 8894 0 0 36418 8894 533 434 0 0 1874 1578 0 0 3169 2276 0 0 533 448 0 0 14428 2300 0 0 15881 1858 0 0 533 0 0 148 158 115 1302 0 0 2.65977 2.65977 -67.7694 -2.65977 0 0 828058. 2865.25 0.30 0.03 0.12 -1 -1 0.30 0.00673389 0.00605178 37 35 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_020bits.v common 7.41 vpr 60.30 MiB 0.01 5916 -1 -1 8 0.06 -1 -1 31620 -1 -1 6 41 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61752 41 21 139 160 1 110 68 17 17 289 -1 unnamed_device 21.7 MiB 0.83 522 60.3 MiB 0.04 0.00 2.60599 -66.4078 -2.60599 2.60599 0.80 0.00012442 9.7384e-05 0.00766446 0.00614319 36 1209 13 6.79088e+06 80832 648988. 2245.63 3.51 0.0640076 0.0551096 25390 158009 -1 1040 10 395 518 33558 8621 0 0 33558 8621 518 428 0 0 1892 1602 0 0 3036 2237 0 0 518 437 0 0 14502 1858 0 0 13092 2059 0 0 518 0 0 123 40 114 1097 0 0 2.60599 2.60599 -78.3583 -2.60599 0 0 828058. 2865.25 0.32 0.02 0.18 -1 -1 0.32 0.00570971 0.0051482 42 37 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_022bits.v common 6.65 vpr 60.30 MiB 0.01 5896 -1 -1 9 0.04 -1 -1 31604 -1 -1 6 45 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61752 45 23 152 175 1 121 74 17 17 289 -1 unnamed_device 21.9 MiB 1.20 538 60.3 MiB 0.08 0.00 3.32557 -78.6466 -3.32557 3.32557 1.12 0.000183561 0.000143762 0.0135092 0.0109049 30 1398 19 6.79088e+06 80832 556674. 1926.21 2.21 0.0719044 0.0614888 24526 138013 -1 1157 11 433 597 38600 9950 0 0 38600 9950 597 491 0 0 2069 1712 0 0 2859 2224 0 0 597 520 0 0 16353 2493 0 0 16125 2510 0 0 597 0 0 164 93 231 1465 0 0 3.45087 3.45087 -92.8994 -3.45087 0 0 706193. 2443.58 0.28 0.03 0.16 -1 -1 0.28 0.00868738 0.00792196 45 40 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_024bits.v common 7.36 vpr 60.27 MiB 0.01 5860 -1 -1 10 0.07 -1 -1 31712 -1 -1 6 49 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61712 49 25 165 190 1 131 80 17 17 289 -1 unnamed_device 21.7 MiB 1.48 744 60.3 MiB 0.10 0.01 3.40059 -93.2005 -3.40059 3.40059 1.07 0.000179394 0.000144974 0.0152911 0.0123705 34 1673 47 6.79088e+06 80832 618332. 2139.56 2.27 0.0944976 0.0815986 25102 150614 -1 1456 13 533 731 54141 12890 0 0 54141 12890 731 588 0 0 2673 2271 0 0 4329 3098 0 0 731 605 0 0 22979 3046 0 0 22698 3282 0 0 731 0 0 198 86 213 1640 0 0 3.40059 3.40059 -104.964 -3.40059 0 0 787024. 2723.27 0.32 0.04 0.17 -1 -1 0.32 0.00991149 0.00897129 48 43 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_028bits.v common 10.69 vpr 60.61 MiB 0.01 5872 -1 -1 11 0.08 -1 -1 32024 -1 -1 9 57 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62064 57 29 199 228 1 156 95 17 17 289 -1 unnamed_device 22.2 MiB 2.69 677 60.6 MiB 0.08 0.00 3.86613 -110.405 -3.86613 3.86613 1.00 0.000248931 0.000199816 0.0137009 0.0111469 36 1717 47 6.79088e+06 121248 648988. 2245.63 4.51 0.115723 0.100261 25390 158009 -1 1357 14 549 727 49643 12117 0 0 49643 12117 727 597 0 0 2541 2130 0 0 4092 2997 0 0 727 613 0 0 20659 2964 0 0 20897 2816 0 0 727 0 0 178 176 105 1578 0 0 3.86613 3.86613 -122.935 -3.86613 0 0 828058. 2865.25 0.30 0.04 0.18 -1 -1 0.30 0.0129525 0.0117776 59 57 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_032bits.v common 12.49 vpr 60.68 MiB 0.02 6016 -1 -1 13 0.10 -1 -1 31980 -1 -1 9 65 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62140 65 33 224 257 1 176 107 17 17 289 -1 unnamed_device 22.0 MiB 1.68 729 60.7 MiB 0.24 0.01 4.41008 -132.741 -4.41008 4.41008 1.06 0.000340886 0.000283422 0.0257591 0.0211845 38 1925 33 6.79088e+06 121248 678818. 2348.85 7.30 0.175628 0.151744 25966 169698 -1 1454 17 789 1021 57239 15756 0 0 57239 15756 1021 889 0 0 3532 3064 0 0 5273 3919 0 0 1021 918 0 0 22713 3546 0 0 23679 3420 0 0 1021 0 0 232 148 175 2040 0 0 4.58222 4.58222 -151.258 -4.58222 0 0 902133. 3121.57 0.28 0.04 0.15 -1 -1 0.28 0.01448 0.0129901 65 62 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_048bits.v common 10.31 vpr 61.75 MiB 0.03 6376 -1 -1 19 0.12 -1 -1 31880 -1 -1 14 97 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63228 97 49 340 389 1 266 160 17 17 289 -1 unnamed_device 23.0 MiB 1.91 1632 61.7 MiB 0.31 0.00 6.45794 -271.133 -6.45794 6.45794 0.95 0.000459447 0.000376329 0.0425132 0.0357128 36 3437 33 6.79088e+06 188608 648988. 2245.63 4.70 0.221809 0.195429 25390 158009 -1 3020 35 1060 1467 300632 152471 0 0 300632 152471 1467 1198 0 0 5225 4369 0 0 11536 7778 0 0 1467 1244 0 0 138860 70267 0 0 142077 67615 0 0 1467 0 0 407 261 395 3370 0 0 6.58324 6.58324 -292.559 -6.58324 0 0 828058. 2865.25 0.30 0.15 0.18 -1 -1 0.30 0.0295061 0.0266103 100 98 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml adder_064bits.v common 13.21 vpr 62.17 MiB 0.02 6524 -1 -1 26 0.13 -1 -1 32200 -1 -1 19 129 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63664 129 65 454 519 1 356 213 17 17 289 -1 unnamed_device 23.2 MiB 5.86 1815 62.2 MiB 0.42 0.01 8.37701 -403.679 -8.37701 8.37701 1.04 0.000676148 0.000563159 0.0590823 0.0503762 36 3899 19 6.79088e+06 255968 648988. 2245.63 3.22 0.260412 0.233057 25390 158009 -1 3478 12 1273 1641 124624 29879 0 0 124624 29879 1641 1395 0 0 5904 4932 0 0 9372 6788 0 0 1641 1416 0 0 53639 7587 0 0 52427 7761 0 0 1641 0 0 368 281 349 3411 0 0 8.50231 8.50231 -437.696 -8.50231 0 0 828058. 2865.25 0.32 0.09 0.18 -1 -1 0.32 0.0293252 0.02707 133 132 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml adder_003bits.v common 3.63 vpr 59.66 MiB 0.01 5920 -1 -1 1 0.01 -1 -1 29256 -1 -1 1 7 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61088 7 4 27 28 1 13 12 17 17 289 -1 unnamed_device 21.2 MiB 0.03 26 59.7 MiB 0.01 0.00 0.583992 -6.33992 -0.583992 0.583992 1.07 3.0605e-05 2.058e-05 0.000809067 0.000599405 18 89 8 6.87369e+06 13973.8 376052. 1301.22 0.59 0.00205425 0.00165653 22882 88689 -1 86 10 43 43 1909 755 0 0 1909 755 43 43 0 0 203 174 0 0 233 204 0 0 43 43 0 0 785 135 0 0 602 156 0 0 43 0 0 0 0 0 43 0 0 0.62144 0.62144 -7.71822 -0.62144 0 0 470940. 1629.55 0.19 0.01 0.10 -1 -1 0.19 0.00103671 0.000882982 8 -1 5 5 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_004bits.v common 4.35 vpr 59.77 MiB 0.01 5920 -1 -1 1 0.01 -1 -1 29340 -1 -1 2 9 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61204 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 21.3 MiB 0.04 50 59.8 MiB 0.01 0.00 0.674773 -8.44771 -0.674773 0.674773 1.06 3.4806e-05 2.588e-05 0.00092491 0.000712739 18 150 17 6.87369e+06 27947.7 376052. 1301.22 1.33 0.00516486 0.00414867 22882 88689 -1 138 10 77 77 3456 1319 0 0 3456 1319 77 77 0 0 285 262 0 0 393 294 0 0 77 77 0 0 1445 295 0 0 1179 314 0 0 77 0 0 0 0 0 77 0 0 1.02867 1.02867 -11.5412 -1.02867 0 0 470940. 1629.55 0.20 0.01 0.11 -1 -1 0.20 0.00135372 0.0011662 10 -1 6 6 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_005bits.v common 4.41 vpr 60.13 MiB 0.01 5904 -1 -1 1 0.01 -1 -1 29344 -1 -1 2 11 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61576 11 6 41 42 1 27 19 17 17 289 -1 unnamed_device 21.6 MiB 0.05 68 60.1 MiB 0.02 0.00 0.685773 -10.47 -0.685773 0.685773 1.07 3.9047e-05 2.8536e-05 0.00114553 0.000884735 18 230 10 6.87369e+06 27947.7 376052. 1301.22 1.41 0.00490247 0.00400147 22882 88689 -1 206 9 104 104 5370 1805 0 0 5370 1805 104 104 0 0 443 357 0 0 552 471 0 0 104 104 0 0 1782 402 0 0 2385 367 0 0 104 0 0 0 0 0 104 0 0 1.05067 1.05067 -15.5713 -1.05067 0 0 470940. 1629.55 0.20 0.01 0.10 -1 -1 0.20 0.00147026 0.00128345 12 -1 7 7 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_006bits.v common 5.83 vpr 59.89 MiB 0.02 5920 -1 -1 1 0.01 -1 -1 29304 -1 -1 2 13 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61332 13 7 48 49 1 33 22 17 17 289 -1 unnamed_device 21.3 MiB 0.04 80 59.9 MiB 0.01 0.00 0.707773 -12.5849 -0.707773 0.707773 1.04 4.8574e-05 3.658e-05 0.00167601 0.00129385 34 282 22 6.87369e+06 27947.7 618332. 2139.56 2.61 0.0224146 0.0180717 25762 151098 -1 232 21 275 275 15152 5054 0 0 15152 5054 275 275 0 0 1043 905 0 0 1498 1154 0 0 275 275 0 0 5064 1305 0 0 6997 1140 0 0 275 0 0 0 0 0 275 0 0 1.08367 1.08367 -17.4716 -1.08367 0 0 787024. 2723.27 0.30 0.03 0.16 -1 -1 0.30 0.00314942 0.0026885 14 -1 8 8 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_007bits.v common 5.23 vpr 60.23 MiB 0.02 5912 -1 -1 1 0.01 -1 -1 29244 -1 -1 3 15 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61672 15 8 55 56 1 39 26 17 17 289 -1 unnamed_device 21.6 MiB 0.09 100 60.2 MiB 0.03 0.00 1.13846 -15.3535 -1.13846 1.13846 1.07 5.7558e-05 4.387e-05 0.00208414 0.0016446 26 362 27 6.87369e+06 41921.5 503264. 1741.40 2.01 0.0193073 0.0156063 24322 120374 -1 326 13 207 207 12299 3948 0 0 12299 3948 207 207 0 0 814 688 0 0 1193 967 0 0 207 207 0 0 5616 916 0 0 4262 963 0 0 207 0 0 0 0 0 207 0 0 1.11467 1.11467 -21.778 -1.11467 0 0 618332. 2139.56 0.22 0.05 0.14 -1 -1 0.22 0.0030046 0.00257071 17 -1 9 9 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_008bits.v common 4.00 vpr 59.96 MiB 0.01 5996 -1 -1 1 0.00 -1 -1 29372 -1 -1 3 17 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61396 17 9 62 63 1 42 29 17 17 289 -1 unnamed_device 21.3 MiB 0.05 149 60.0 MiB 0.02 0.00 0.964803 -19.1307 -0.964803 0.964803 1.05 6.2936e-05 4.7827e-05 0.00255903 0.00201544 26 363 13 6.87369e+06 41921.5 503264. 1741.40 0.80 0.0113705 0.00933459 24322 120374 -1 325 16 186 186 11962 3711 0 0 11962 3711 186 186 0 0 806 697 0 0 1080 945 0 0 186 186 0 0 4697 895 0 0 5007 802 0 0 186 0 0 0 0 0 186 0 0 1.18497 1.18497 -24.6504 -1.18497 0 0 618332. 2139.56 0.25 0.01 0.14 -1 -1 0.25 0.00294161 0.00254106 18 -1 10 10 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_009bits.v common 5.45 vpr 59.95 MiB 0.03 6004 -1 -1 1 0.01 -1 -1 29380 -1 -1 3 19 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61392 19 10 69 70 1 45 32 17 17 289 -1 unnamed_device 21.3 MiB 0.04 136 60.0 MiB 0.02 0.00 0.975803 -19.8735 -0.975803 0.975803 1.00 6.9284e-05 5.3059e-05 0.00316412 0.00248653 28 337 12 6.87369e+06 41921.5 531479. 1839.03 2.15 0.0233103 0.0190778 24610 126494 -1 304 10 160 160 10418 3135 0 0 10418 3135 160 160 0 0 654 560 0 0 911 795 0 0 160 160 0 0 3732 827 0 0 4801 633 0 0 160 0 0 0 0 0 160 0 0 1.01137 1.01137 -25.3681 -1.01137 0 0 648988. 2245.63 0.26 0.05 0.14 -1 -1 0.26 0.00256068 0.00228011 20 -1 11 11 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_010bits.v common 4.80 vpr 60.01 MiB 0.01 6132 -1 -1 1 0.01 -1 -1 29464 -1 -1 3 21 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61452 21 11 76 77 1 48 35 17 17 289 -1 unnamed_device 21.6 MiB 0.06 144 60.0 MiB 0.02 0.00 0.986803 -22.4034 -0.986803 0.986803 0.85 5.4653e-05 4.0819e-05 0.00325472 0.00250042 28 452 25 6.87369e+06 41921.5 531479. 1839.03 1.84 0.0259287 0.0211335 24610 126494 -1 382 15 254 254 22036 5721 0 0 22036 5721 254 254 0 0 1012 893 0 0 1394 1149 0 0 254 254 0 0 8802 1744 0 0 10320 1427 0 0 254 0 0 0 0 0 254 0 0 1.12264 1.12264 -28.5407 -1.12264 0 0 648988. 2245.63 0.26 0.02 0.14 -1 -1 0.26 0.00343265 0.00297367 22 -1 12 12 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_011bits.v common 5.70 vpr 59.99 MiB 0.01 5912 -1 -1 1 0.01 -1 -1 29400 -1 -1 4 23 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61428 23 12 83 84 1 53 39 17 17 289 -1 unnamed_device 21.5 MiB 0.09 199 60.0 MiB 0.03 0.00 0.997803 -25.4236 -0.997803 0.997803 0.96 8.0628e-05 6.1951e-05 0.00363935 0.00287773 28 448 13 6.87369e+06 55895.4 531479. 1839.03 2.69 0.0247539 0.0198981 24610 126494 -1 404 8 181 181 10689 3291 0 0 10689 3291 181 181 0 0 769 651 0 0 1036 893 0 0 181 181 0 0 4672 669 0 0 3850 716 0 0 181 0 0 0 0 0 181 0 0 1.13667 1.13667 -31.4038 -1.13667 0 0 648988. 2245.63 0.21 0.02 0.13 -1 -1 0.21 0.0024543 0.00220988 24 -1 13 13 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_012bits.v common 6.30 vpr 60.07 MiB 0.02 6032 -1 -1 1 0.01 -1 -1 29432 -1 -1 4 25 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61516 25 13 90 91 1 60 42 17 17 289 -1 unnamed_device 21.5 MiB 0.18 274 60.1 MiB 0.02 0.00 1.0088 -27.9535 -1.0088 1.0088 1.03 8.084e-05 6.1922e-05 0.00268433 0.00219985 30 623 15 6.87369e+06 55895.4 556674. 1926.21 2.84 0.0336248 0.0278111 25186 138497 -1 554 21 306 306 23217 5639 0 0 23217 5639 306 306 0 0 1106 932 0 0 1486 1226 0 0 306 306 0 0 10302 1351 0 0 9711 1518 0 0 306 0 0 0 0 0 306 0 0 1.10367 1.10367 -36.3587 -1.10367 0 0 706193. 2443.58 0.28 0.03 0.16 -1 -1 0.28 0.00507602 0.00434258 26 -1 14 14 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_013bits.v common 4.01 vpr 60.03 MiB 0.02 6076 -1 -1 1 0.01 -1 -1 29432 -1 -1 4 27 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61468 27 14 97 98 1 67 45 17 17 289 -1 unnamed_device 21.5 MiB 0.07 190 60.0 MiB 0.03 0.00 1.0198 -28.7403 -1.0198 1.0198 0.94 9.4079e-05 7.1932e-05 0.00406131 0.00323217 32 627 14 6.87369e+06 55895.4 586450. 2029.24 0.92 0.0174472 0.0144738 25474 144626 -1 541 17 395 395 27199 8177 0 0 27199 8177 395 395 0 0 1575 1357 0 0 2393 1881 0 0 395 395 0 0 12715 2184 0 0 9726 1965 0 0 395 0 0 0 0 0 395 0 0 1.15867 1.15867 -39.0079 -1.15867 0 0 744469. 2576.02 0.29 0.02 0.16 -1 -1 0.29 0.00470749 0.00408198 28 -1 15 15 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_014bits.v common 6.24 vpr 60.30 MiB 0.02 6172 -1 -1 1 0.02 -1 -1 29436 -1 -1 4 29 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61748 29 15 104 105 1 74 48 17 17 289 -1 unnamed_device 21.7 MiB 0.10 231 60.3 MiB 0.04 0.00 1.0901 -31.669 -1.0901 1.0901 1.03 0.000108419 8.5164e-05 0.00772401 0.0060829 36 726 30 6.87369e+06 55895.4 648988. 2245.63 2.99 0.0439544 0.0363455 26050 158493 -1 581 12 399 399 26089 7177 0 0 26089 7177 399 399 0 0 1486 1251 0 0 2043 1634 0 0 399 399 0 0 9934 1845 0 0 11828 1649 0 0 399 0 0 0 0 0 399 0 0 1.19167 1.19167 -40.3081 -1.19167 0 0 828058. 2865.25 0.34 0.03 0.18 -1 -1 0.34 0.00446404 0.00392229 31 -1 16 16 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_015bits.v common 5.17 vpr 60.33 MiB 0.02 6076 -1 -1 1 0.01 -1 -1 29420 -1 -1 5 31 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61780 31 16 111 112 1 80 52 17 17 289 -1 unnamed_device 21.7 MiB 0.33 441 60.3 MiB 0.34 0.00 1.27683 -39.8363 -1.27683 1.27683 1.20 0.000125791 8.8784e-05 0.01122 0.00918577 28 966 16 6.87369e+06 69869.2 531479. 1839.03 1.01 0.0282797 0.0236858 24610 126494 -1 912 17 440 440 41654 9362 0 0 41654 9362 440 440 0 0 1692 1445 0 0 2399 1921 0 0 440 440 0 0 19126 2443 0 0 17557 2673 0 0 440 0 0 0 0 0 440 0 0 1.31033 1.31033 -48.8913 -1.31033 0 0 648988. 2245.63 0.25 0.14 0.13 -1 -1 0.25 0.00727091 0.00651479 33 -1 17 17 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_016bits.v common 4.85 vpr 60.27 MiB 0.02 6036 -1 -1 1 0.01 -1 -1 29456 -1 -1 5 33 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61720 33 17 118 119 1 83 55 17 17 289 -1 unnamed_device 21.8 MiB 0.20 305 60.3 MiB 0.29 0.00 1.28783 -37.2751 -1.28783 1.28783 1.12 0.000153225 0.000125791 0.010784 0.00883117 32 911 24 6.87369e+06 69869.2 586450. 2029.24 0.93 0.0249196 0.0207119 25474 144626 -1 685 18 478 478 45224 11324 0 0 45224 11324 478 478 0 0 2053 1823 0 0 3118 2579 0 0 478 478 0 0 18655 3275 0 0 20442 2691 0 0 478 0 0 0 0 0 478 0 0 1.21167 1.21167 -47.0281 -1.21167 0 0 744469. 2576.02 0.29 0.03 0.17 -1 -1 0.29 0.00574834 0.00500164 34 -1 18 18 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_018bits.v common 5.12 vpr 60.39 MiB 0.02 6060 -1 -1 1 0.01 -1 -1 29364 -1 -1 5 37 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61840 37 19 132 133 1 89 61 17 17 289 -1 unnamed_device 21.9 MiB 0.22 402 60.4 MiB 0.21 0.00 1.30983 -43.0954 -1.30983 1.30983 1.09 0.000158261 0.0001264 0.00597649 0.00497809 30 996 18 6.87369e+06 69869.2 556674. 1926.21 0.86 0.0228516 0.0192565 25186 138497 -1 842 16 407 407 30076 7586 0 0 30076 7586 407 407 0 0 1498 1282 0 0 1932 1641 0 0 407 407 0 0 12594 1962 0 0 13238 1887 0 0 407 0 0 0 0 0 407 0 0 1.23367 1.23367 -55.3243 -1.23367 0 0 706193. 2443.58 0.29 0.05 0.17 -1 -1 0.29 0.00618182 0.00541375 38 -1 20 20 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_020bits.v common 7.32 vpr 60.39 MiB 0.01 6064 -1 -1 1 0.01 -1 -1 29388 -1 -1 6 41 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61840 41 21 146 147 1 101 68 17 17 289 -1 unnamed_device 21.8 MiB 0.18 567 60.4 MiB 0.33 0.00 1.33183 -54.5101 -1.33183 1.33183 1.13 0.000100141 8.1731e-05 0.0141022 0.0116736 34 1188 17 6.87369e+06 83843 618332. 2139.56 3.36 0.0733993 0.0622772 25762 151098 -1 1086 13 499 499 43260 9962 0 0 43260 9962 499 499 0 0 1950 1665 0 0 2752 2251 0 0 499 499 0 0 20620 2224 0 0 16940 2824 0 0 499 0 0 0 0 0 499 0 0 1.27767 1.27767 -65.6214 -1.27767 0 0 787024. 2723.27 0.27 0.03 0.12 -1 -1 0.27 0.00610783 0.00539486 42 -1 22 22 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_022bits.v common 5.32 vpr 60.71 MiB 0.01 6084 -1 -1 1 0.01 -1 -1 29368 -1 -1 6 45 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62164 45 23 160 161 1 115 74 17 17 289 -1 unnamed_device 22.1 MiB 0.28 708 60.7 MiB 0.27 0.01 1.35383 -61.9043 -1.35383 1.35383 0.92 0.000200613 0.000168824 0.0238382 0.0213697 34 1439 16 6.87369e+06 83843 618332. 2139.56 1.78 0.0721687 0.0631629 25762 151098 -1 1333 13 603 603 66318 13830 0 0 66318 13830 603 603 0 0 2349 2014 0 0 3443 2704 0 0 603 603 0 0 29389 4190 0 0 29931 3716 0 0 603 0 0 0 0 0 603 0 0 1.16967 1.16967 -71.0573 -1.16967 0 0 787024. 2723.27 0.27 0.02 0.14 -1 -1 0.27 0.00398694 0.00352683 47 -1 24 24 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_024bits.v common 6.01 vpr 60.62 MiB 0.02 6176 -1 -1 1 0.01 -1 -1 29392 -1 -1 7 49 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62076 49 25 174 175 1 124 81 17 17 289 -1 unnamed_device 22.1 MiB 0.22 691 60.6 MiB 0.25 0.00 1.61086 -66.1702 -1.61086 1.61086 0.96 0.000179584 0.000142162 0.0152038 0.0124019 34 1437 20 6.87369e+06 97816.9 618332. 2139.56 1.87 0.0692214 0.059128 25762 151098 -1 1303 16 611 611 51104 11849 0 0 51104 11849 611 611 0 0 2347 2009 0 0 3577 2825 0 0 611 611 0 0 23803 2577 0 0 20155 3216 0 0 611 0 0 0 0 0 611 0 0 1.31967 1.31967 -76.8856 -1.31967 0 0 787024. 2723.27 0.30 0.04 0.17 -1 -1 0.30 0.00801856 0.00707247 50 -1 26 26 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_028bits.v common 5.95 vpr 60.71 MiB 0.02 6280 -1 -1 1 0.01 -1 -1 29400 -1 -1 8 57 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62168 57 29 202 203 1 142 94 17 17 289 -1 unnamed_device 22.1 MiB 0.24 762 60.7 MiB 0.43 0.00 1.65486 -77.9312 -1.65486 1.65486 1.08 0.000360805 0.000287372 0.0212343 0.0176076 34 1612 18 6.87369e+06 111791 618332. 2139.56 2.04 0.0812386 0.0696758 25762 151098 -1 1444 15 723 723 70139 15613 0 0 70139 15613 723 723 0 0 2828 2433 0 0 4035 3263 0 0 723 723 0 0 32260 4308 0 0 29570 4163 0 0 723 0 0 0 0 0 723 0 0 1.26037 1.26037 -86.6925 -1.26037 0 0 787024. 2723.27 0.25 0.04 0.15 -1 -1 0.25 0.00724697 0.00637816 58 -1 30 30 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_032bits.v common 6.10 vpr 61.04 MiB 0.02 6204 -1 -1 1 0.01 -1 -1 29420 -1 -1 9 65 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62504 65 33 230 231 1 165 107 17 17 289 -1 unnamed_device 22.5 MiB 0.24 779 61.0 MiB 0.38 0.00 1.93389 -88.8786 -1.93389 1.93389 1.12 0.000194699 0.000160031 0.0188187 0.0155945 34 2029 21 6.87369e+06 125765 618332. 2139.56 2.04 0.0923174 0.0794462 25762 151098 -1 1669 14 767 767 64950 15807 0 0 64950 15807 767 767 0 0 2918 2477 0 0 4410 3625 0 0 767 767 0 0 28343 3895 0 0 27745 4276 0 0 767 0 0 0 0 0 767 0 0 1.55297 1.55297 -105.859 -1.55297 0 0 787024. 2723.27 0.32 0.04 0.15 -1 -1 0.32 0.00832473 0.00741667 66 -1 34 34 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_048bits.v common 6.24 vpr 61.68 MiB 0.02 6460 -1 -1 1 0.02 -1 -1 29724 -1 -1 13 97 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63160 97 49 342 343 1 247 159 17 17 289 -1 unnamed_device 22.9 MiB 0.28 1445 61.7 MiB 0.44 0.01 2.57995 -154.578 -2.57995 2.57995 1.10 0.000498801 0.000411617 0.0329003 0.0278552 34 3093 24 6.87369e+06 181660 618332. 2139.56 2.08 0.14363 0.126069 25762 151098 -1 2748 18 1225 1225 115842 26351 0 0 115842 26351 1225 1225 0 0 4839 4173 0 0 6977 5709 0 0 1225 1225 0 0 51629 6857 0 0 49947 7162 0 0 1225 0 0 0 0 0 1225 0 0 1.69397 1.69397 -166.611 -1.69397 0 0 787024. 2723.27 0.27 0.08 0.13 -1 -1 0.27 0.0198579 0.0178467 98 -1 50 50 0 0 -fixed_k6_frac_ripple_N8_22nm.xml adder_064bits.v common 7.26 vpr 62.26 MiB 0.01 6728 -1 -1 1 0.03 -1 -1 29824 -1 -1 17 129 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63752 129 65 454 455 1 329 211 17 17 289 -1 unnamed_device 23.3 MiB 0.29 1850 62.3 MiB 0.66 0.02 3.22602 -224.976 -3.22602 3.22602 1.12 0.000544901 0.000457419 0.0555454 0.0476381 36 3998 16 6.87369e+06 237555 648988. 2245.63 2.72 0.211689 0.187822 26050 158493 -1 3499 17 1547 1547 155350 33305 0 0 155350 33305 1547 1547 0 0 5787 4910 0 0 8230 6527 0 0 1547 1547 0 0 68944 9517 0 0 69295 9257 0 0 1547 0 0 0 0 0 1547 0 0 1.74537 1.74537 -211.891 -1.74537 0 0 828058. 2865.25 0.35 0.08 0.16 -1 -1 0.35 0.0222914 0.0201755 130 -1 66 66 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_003bits.v common 4.18 vpr 59.85 MiB 0.02 5864 -1 -1 1 0.00 -1 -1 29304 -1 -1 1 7 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61284 7 4 27 28 1 13 12 17 17 289 -1 unnamed_device 21.4 MiB 0.05 26 59.8 MiB 0.01 0.00 0.583992 -6.33992 -0.583992 0.583992 1.10 2.9115e-05 2.013e-05 0.000797986 0.000591082 18 89 8 6.89349e+06 14093.8 376052. 1301.22 0.81 0.00232828 0.00189652 22882 88689 -1 86 10 43 43 1909 755 0 0 1909 755 43 43 0 0 203 174 0 0 233 204 0 0 43 43 0 0 785 135 0 0 602 156 0 0 43 0 0 0 0 0 43 0 0 0.62144 0.62144 -7.71822 -0.62144 0 0 470940. 1629.55 0.18 0.04 0.11 -1 -1 0.18 0.00133332 0.00115105 8 -1 5 5 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_004bits.v common 4.42 vpr 59.61 MiB 0.01 5952 -1 -1 1 0.01 -1 -1 29376 -1 -1 2 9 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61044 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 21.1 MiB 0.08 46 59.6 MiB 0.17 0.00 0.702973 -8.41695 -0.702973 0.702973 1.08 4.7377e-05 3.7753e-05 0.001598 0.0012867 18 146 9 6.89349e+06 28187.7 376052. 1301.22 0.68 0.00343873 0.00287453 22882 88689 -1 124 17 108 108 9944 2853 0 0 9944 2853 108 108 0 0 490 424 0 0 623 517 0 0 108 108 0 0 4901 761 0 0 3714 935 0 0 108 0 0 0 0 0 108 0 0 1.06787 1.06787 -11.0343 -1.06787 0 0 470940. 1629.55 0.20 0.14 0.10 -1 -1 0.20 0.00263565 0.00221154 10 -1 6 6 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_005bits.v common 5.00 vpr 59.70 MiB 0.01 5876 -1 -1 1 0.01 -1 -1 29360 -1 -1 2 11 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61136 11 6 41 42 1 27 19 17 17 289 -1 unnamed_device 21.2 MiB 0.09 76 59.7 MiB 0.01 0.00 0.724973 -11.2925 -0.724973 0.724973 0.79 3.944e-05 2.9077e-05 0.00105638 0.00082187 20 219 8 6.89349e+06 28187.7 414966. 1435.87 1.98 0.0114326 0.00927427 23170 95770 -1 190 9 116 116 6315 2088 0 0 6315 2088 116 116 0 0 478 413 0 0 609 525 0 0 116 116 0 0 2220 450 0 0 2776 468 0 0 116 0 0 0 0 0 116 0 0 0.942573 0.942573 -14.3646 -0.942573 0 0 503264. 1741.40 0.19 0.02 0.09 -1 -1 0.19 0.00182566 0.00159947 12 -1 7 7 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_006bits.v common 6.26 vpr 60.05 MiB 0.02 6172 -1 -1 1 0.01 -1 -1 29300 -1 -1 2 13 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61496 13 7 48 49 1 33 22 17 17 289 -1 unnamed_device 21.5 MiB 0.14 124 60.1 MiB 0.01 0.00 0.746973 -13.2352 -0.746973 0.746973 1.02 4.7542e-05 3.5745e-05 0.00149886 0.00118919 32 331 10 6.89349e+06 28187.7 586450. 2029.24 2.89 0.0235661 0.0193287 25474 144626 -1 296 10 147 147 10040 2640 0 0 10040 2640 147 147 0 0 525 432 0 0 749 566 0 0 147 147 0 0 4292 688 0 0 4180 660 0 0 147 0 0 0 0 0 147 0 0 1.07887 1.07887 -18.1118 -1.07887 0 0 744469. 2576.02 0.30 0.01 0.17 -1 -1 0.30 0.00188468 0.00163672 14 -1 8 8 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_007bits.v common 5.68 vpr 59.84 MiB 0.02 6188 -1 -1 1 0.01 -1 -1 29224 -1 -1 3 15 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61272 15 8 55 56 1 39 26 17 17 289 -1 unnamed_device 21.2 MiB 0.22 109 59.8 MiB 0.11 0.00 1.0151 -15.1836 -1.0151 1.0151 1.15 8.6482e-05 6.9676e-05 0.00278628 0.00231682 28 338 12 6.89349e+06 42281.5 531479. 1839.03 2.02 0.0218627 0.0182332 24610 126494 -1 295 13 176 176 9446 2939 0 0 9446 2939 176 176 0 0 646 522 0 0 966 790 0 0 176 176 0 0 4307 562 0 0 3175 713 0 0 176 0 0 0 0 0 176 0 0 1.10367 1.10367 -21.3382 -1.10367 0 0 648988. 2245.63 0.25 0.01 0.14 -1 -1 0.25 0.00271841 0.00234584 17 -1 9 9 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_008bits.v common 5.87 vpr 60.14 MiB 0.01 5872 -1 -1 1 0.01 -1 -1 29296 -1 -1 3 17 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61584 17 9 62 63 1 42 29 17 17 289 -1 unnamed_device 21.5 MiB 0.12 232 60.1 MiB 0.01 0.00 0.982003 -21.0353 -0.982003 0.982003 1.08 6.2875e-05 4.7837e-05 0.00237837 0.00186292 26 434 8 6.89349e+06 42281.5 503264. 1741.40 2.66 0.0239622 0.0197469 24322 120374 -1 420 15 213 213 17141 4130 0 0 17141 4130 213 213 0 0 863 712 0 0 1140 970 0 0 213 213 0 0 7452 1037 0 0 7260 985 0 0 213 0 0 0 0 0 213 0 0 0.99132 0.99132 -25.1739 -0.99132 0 0 618332. 2139.56 0.22 0.02 0.11 -1 -1 0.22 0.00245351 0.00212837 18 -1 10 10 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_009bits.v common 6.18 vpr 60.07 MiB 0.01 5896 -1 -1 1 0.01 -1 -1 29292 -1 -1 3 19 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61508 19 10 69 70 1 46 32 17 17 289 -1 unnamed_device 21.4 MiB 0.11 138 60.1 MiB 0.12 0.01 0.993003 -19.9971 -0.993003 0.993003 1.11 9.3954e-05 7.9658e-05 0.003764 0.00302127 28 365 19 6.89349e+06 42281.5 531479. 1839.03 2.73 0.0225624 0.018666 24610 126494 -1 256 10 139 139 8387 2467 0 0 8387 2467 139 139 0 0 511 404 0 0 731 593 0 0 139 139 0 0 3000 687 0 0 3867 505 0 0 139 0 0 0 0 0 139 0 0 0.886073 0.886073 -22.9686 -0.886073 0 0 648988. 2245.63 0.27 0.01 0.13 -1 -1 0.27 0.00267664 0.002339 20 -1 11 11 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_010bits.v common 6.66 vpr 60.07 MiB 0.02 5972 -1 -1 1 0.01 -1 -1 29296 -1 -1 3 21 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61512 21 11 76 77 1 48 35 17 17 289 -1 unnamed_device 21.7 MiB 0.14 144 60.1 MiB 0.35 0.01 1.004 -22.3376 -1.004 1.004 1.10 0.000109945 8.9178e-05 0.00645818 0.00528376 32 400 13 6.89349e+06 42281.5 586450. 2029.24 2.87 0.0236742 0.0195661 25474 144626 -1 339 10 168 168 11598 3266 0 0 11598 3266 168 168 0 0 691 572 0 0 942 781 0 0 168 168 0 0 4736 778 0 0 4893 799 0 0 168 0 0 0 0 0 168 0 0 0.995573 0.995573 -27.2063 -0.995573 0 0 744469. 2576.02 0.33 0.01 0.10 -1 -1 0.33 0.0029293 0.00260405 22 -1 12 12 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_011bits.v common 6.77 vpr 60.07 MiB 0.01 5940 -1 -1 1 0.01 -1 -1 29460 -1 -1 4 23 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61512 23 12 83 84 1 53 39 17 17 289 -1 unnamed_device 21.6 MiB 0.16 171 60.1 MiB 0.02 0.00 1.015 -24.7485 -1.015 1.015 0.95 6.3769e-05 4.8435e-05 0.00359872 0.00282274 32 489 12 6.89349e+06 56375.4 586450. 2029.24 3.51 0.0312684 0.0262087 25474 144626 -1 386 10 195 195 12421 3306 0 0 12421 3306 195 195 0 0 703 568 0 0 1035 783 0 0 195 195 0 0 4725 856 0 0 5568 709 0 0 195 0 0 0 0 0 195 0 0 1.14767 1.14767 -30.773 -1.14767 0 0 744469. 2576.02 0.29 0.01 0.17 -1 -1 0.29 0.00286958 0.00251755 24 -1 13 13 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_012bits.v common 6.75 vpr 59.94 MiB 0.01 5996 -1 -1 1 0.01 -1 -1 29348 -1 -1 4 25 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61376 25 13 90 91 1 60 42 17 17 289 -1 unnamed_device 21.5 MiB 0.16 162 59.9 MiB 0.24 0.00 1.026 -26.4185 -1.026 1.026 1.09 9.3375e-05 7.6191e-05 0.00373267 0.00306189 32 550 9 6.89349e+06 56375.4 586450. 2029.24 3.06 0.0326449 0.0273332 25474 144626 -1 445 10 233 233 15957 4961 0 0 15957 4961 233 233 0 0 946 787 0 0 1593 1282 0 0 233 233 0 0 7314 1244 0 0 5638 1182 0 0 233 0 0 0 0 0 233 0 0 1.03532 1.03532 -34.23 -1.03532 0 0 744469. 2576.02 0.29 0.01 0.15 -1 -1 0.29 0.00312247 0.00274727 26 -1 14 14 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_013bits.v common 4.77 vpr 59.99 MiB 0.02 6224 -1 -1 1 0.00 -1 -1 29312 -1 -1 4 27 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61432 27 14 97 98 1 67 45 17 17 289 -1 unnamed_device 21.5 MiB 0.15 279 60.0 MiB 0.24 0.00 1.037 -30.2297 -1.037 1.037 1.11 0.000107634 8.1998e-05 0.00400611 0.00329109 30 613 12 6.89349e+06 56375.4 556674. 1926.21 0.97 0.0176666 0.0149284 25186 138497 -1 582 13 243 243 14505 4075 0 0 14505 4075 243 243 0 0 894 752 0 0 1164 992 0 0 243 243 0 0 6029 893 0 0 5932 952 0 0 243 0 0 0 0 0 243 0 0 0.947373 0.947373 -37.1321 -0.947373 0 0 706193. 2443.58 0.27 0.01 0.15 -1 -1 0.27 0.00361232 0.0032022 28 -1 15 15 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_014bits.v common 5.46 vpr 60.39 MiB 0.02 5996 -1 -1 1 0.01 -1 -1 29440 -1 -1 4 29 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61840 29 15 104 105 1 74 48 17 17 289 -1 unnamed_device 21.8 MiB 0.19 253 60.4 MiB 0.30 0.00 1.048 -32.1107 -1.048 1.048 1.18 0.000136625 0.000109931 0.0111066 0.00907246 36 825 29 6.89349e+06 56375.4 648988. 2245.63 1.52 0.0360422 0.0299248 26050 158493 -1 621 26 473 473 35051 9454 0 0 35051 9454 473 473 0 0 1719 1404 0 0 2703 1984 0 0 473 473 0 0 13667 2775 0 0 16016 2345 0 0 473 0 0 0 0 0 473 0 0 1.20897 1.20897 -39.7437 -1.20897 0 0 828058. 2865.25 0.30 0.03 0.16 -1 -1 0.30 0.00681924 0.00586493 31 -1 16 16 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_015bits.v common 4.68 vpr 60.14 MiB 0.02 6168 -1 -1 1 0.01 -1 -1 29444 -1 -1 5 31 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61588 31 16 111 112 1 80 52 17 17 289 -1 unnamed_device 21.5 MiB 0.29 345 60.1 MiB 0.13 0.02 1.29403 -34.0707 -1.29403 1.29403 1.05 0.000215341 0.000183274 0.00461195 0.00377318 30 876 20 6.89349e+06 70469.2 556674. 1926.21 1.10 0.0243085 0.0205685 25186 138497 -1 757 15 383 383 29857 7219 0 0 29857 7219 383 383 0 0 1383 1121 0 0 1760 1460 0 0 383 383 0 0 12968 1939 0 0 12980 1933 0 0 383 0 0 0 0 0 383 0 0 1.18967 1.18967 -46.1493 -1.18967 0 0 706193. 2443.58 0.26 0.02 0.16 -1 -1 0.26 0.00545743 0.00478832 33 -1 17 17 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_016bits.v common 4.64 vpr 60.10 MiB 0.01 5900 -1 -1 1 0.01 -1 -1 29436 -1 -1 5 33 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61540 33 17 118 119 1 83 55 17 17 289 -1 unnamed_device 21.5 MiB 0.22 312 60.1 MiB 0.05 0.00 1.30503 -37.6664 -1.30503 1.30503 0.93 0.000114795 8.9535e-05 0.00783678 0.00630315 32 795 15 6.89349e+06 70469.2 586450. 2029.24 1.29 0.0280778 0.0236484 25474 144626 -1 620 19 435 435 29599 7959 0 0 29599 7959 435 435 0 0 1674 1459 0 0 2502 1959 0 0 435 435 0 0 11809 1919 0 0 12744 1752 0 0 435 0 0 0 0 0 435 0 0 1.09737 1.09737 -44.4307 -1.09737 0 0 744469. 2576.02 0.27 0.03 0.16 -1 -1 0.27 0.0059557 0.00516587 34 -1 18 18 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_018bits.v common 4.83 vpr 60.36 MiB 0.02 6064 -1 -1 1 0.01 -1 -1 29376 -1 -1 5 37 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61812 37 19 132 133 1 90 61 17 17 289 -1 unnamed_device 21.9 MiB 0.18 398 60.4 MiB 0.19 0.01 1.32703 -42.5847 -1.32703 1.32703 1.11 0.000328656 0.000258144 0.00610427 0.00502364 32 1036 15 6.89349e+06 70469.2 586450. 2029.24 0.93 0.0237464 0.0200682 25474 144626 -1 907 13 410 410 34747 8413 0 0 34747 8413 410 410 0 0 1545 1304 0 0 2549 1982 0 0 410 410 0 0 15034 2118 0 0 14799 2189 0 0 410 0 0 0 0 0 410 0 0 1.25567 1.25567 -57.2629 -1.25567 0 0 744469. 2576.02 0.26 0.02 0.16 -1 -1 0.26 0.00494525 0.00439012 38 -1 20 20 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_020bits.v common 5.90 vpr 60.27 MiB 0.01 6132 -1 -1 1 0.00 -1 -1 29428 -1 -1 6 41 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61712 41 21 146 147 1 102 68 17 17 289 -1 unnamed_device 21.7 MiB 0.20 572 60.3 MiB 0.39 0.00 1.34903 -54.8889 -1.34903 1.34903 1.17 0.000269649 0.000212195 0.0157405 0.0130364 34 1211 12 6.89349e+06 84563 618332. 2139.56 1.69 0.0604726 0.0525625 25762 151098 -1 1123 12 483 483 44121 9866 0 0 44121 9866 483 483 0 0 1816 1528 0 0 2667 2158 0 0 483 483 0 0 21114 2334 0 0 17558 2880 0 0 483 0 0 0 0 0 483 0 0 1.29487 1.29487 -66.3751 -1.29487 0 0 787024. 2723.27 0.32 0.05 0.17 -1 -1 0.32 0.00654482 0.00578419 42 -1 22 22 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_022bits.v common 5.86 vpr 60.44 MiB 0.01 6120 -1 -1 1 0.01 -1 -1 29412 -1 -1 6 45 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61892 45 23 160 161 1 115 74 17 17 289 -1 unnamed_device 21.9 MiB 0.25 707 60.4 MiB 0.39 0.00 1.37103 -61.9569 -1.37103 1.37103 1.14 0.000147534 0.000125024 0.0147513 0.0121846 34 1428 16 6.89349e+06 84563 618332. 2139.56 1.69 0.0575437 0.0489427 25762 151098 -1 1358 13 558 558 53899 11768 0 0 53899 11768 558 558 0 0 2151 1793 0 0 3207 2560 0 0 558 558 0 0 23884 3296 0 0 23541 3003 0 0 558 0 0 0 0 0 558 0 0 1.27297 1.27297 -71.3893 -1.27297 0 0 787024. 2723.27 0.29 0.04 0.12 -1 -1 0.29 0.00645728 0.0056893 47 -1 24 24 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_024bits.v common 5.91 vpr 60.70 MiB 0.02 6180 -1 -1 1 0.01 -1 -1 29420 -1 -1 7 49 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62156 49 25 174 175 1 124 81 17 17 289 -1 unnamed_device 22.3 MiB 0.24 639 60.7 MiB 0.42 0.00 1.62806 -63.5666 -1.62806 1.62806 1.11 0.000198129 0.000160184 0.0178257 0.0147383 34 1407 12 6.89349e+06 98656.9 618332. 2139.56 1.80 0.066548 0.0569718 25762 151098 -1 1242 15 574 574 43656 10464 0 0 43656 10464 574 574 0 0 2134 1765 0 0 3121 2481 0 0 574 574 0 0 19872 2336 0 0 17381 2734 0 0 574 0 0 0 0 0 574 0 0 1.32587 1.32587 -74.7575 -1.32587 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.00848889 0.00755689 50 -1 26 26 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_028bits.v common 5.62 vpr 60.58 MiB 0.03 6412 -1 -1 1 0.01 -1 -1 29380 -1 -1 8 57 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62032 57 29 202 203 1 143 94 17 17 289 -1 unnamed_device 22.0 MiB 0.22 646 60.6 MiB 0.33 0.00 1.67206 -73.0817 -1.67206 1.67206 1.12 0.000237102 0.000190172 0.0188389 0.0155246 34 1553 19 6.89349e+06 112751 618332. 2139.56 1.71 0.0747531 0.0637206 25762 151098 -1 1363 15 653 653 58070 13402 0 0 58070 13402 653 653 0 0 2424 1962 0 0 3439 2707 0 0 653 653 0 0 25284 3802 0 0 25617 3625 0 0 653 0 0 0 0 0 653 0 0 1.40297 1.40297 -86.0358 -1.40297 0 0 787024. 2723.27 0.23 0.04 0.11 -1 -1 0.23 0.0103737 0.00929385 58 -1 30 30 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_032bits.v common 7.02 vpr 60.86 MiB 0.02 6332 -1 -1 1 0.01 -1 -1 29464 -1 -1 9 65 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 62320 65 33 230 231 1 165 107 17 17 289 -1 unnamed_device 22.4 MiB 0.23 790 60.9 MiB 0.45 0.01 1.95109 -89.0439 -1.95109 1.95109 1.09 0.000251074 0.000203915 0.0255399 0.0213226 30 1989 23 6.89349e+06 126845 556674. 1926.21 2.97 0.103178 0.0886187 25186 138497 -1 1627 13 767 767 64329 16046 0 0 64329 16046 767 767 0 0 2787 2285 0 0 3518 2923 0 0 767 767 0 0 27780 4583 0 0 28710 4721 0 0 767 0 0 0 0 0 767 0 0 1.54817 1.54817 -107.446 -1.54817 0 0 706193. 2443.58 0.28 0.04 0.16 -1 -1 0.28 0.00922326 0.00819584 66 -1 34 34 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_048bits.v common 6.09 vpr 61.54 MiB 0.03 6500 -1 -1 1 0.02 -1 -1 29612 -1 -1 13 97 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63016 97 49 342 343 1 247 159 17 17 289 -1 unnamed_device 22.8 MiB 0.30 1432 61.5 MiB 0.46 0.01 2.59715 -153.64 -2.59715 2.59715 1.10 0.000321671 0.000277793 0.0333458 0.0280636 34 2923 15 6.89349e+06 183220 618332. 2139.56 1.99 0.133833 0.117128 25762 151098 -1 2639 14 1093 1093 100665 22681 0 0 100665 22681 1093 1093 0 0 4192 3501 0 0 5938 4827 0 0 1093 1093 0 0 43730 6221 0 0 44619 5946 0 0 1093 0 0 0 0 0 1093 0 0 1.54037 1.54037 -156.892 -1.54037 0 0 787024. 2723.27 0.25 0.06 0.15 -1 -1 0.25 0.0120385 0.0107438 98 -1 50 50 0 0 -fixed_k6_frac_uripple_N8_22nm.xml adder_064bits.v common 6.56 vpr 62.48 MiB 0.01 6576 -1 -1 1 0.02 -1 -1 29832 -1 -1 17 129 0 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 63976 129 65 454 455 1 329 211 17 17 289 -1 unnamed_device 23.6 MiB 0.29 1809 62.5 MiB 0.77 0.02 3.24322 -222.559 -3.24322 3.24322 1.09 0.000591603 0.000500347 0.0588384 0.050352 34 4126 22 6.89349e+06 239595 618332. 2139.56 2.13 0.2131 0.187878 25762 151098 -1 3425 19 1506 1506 129179 29861 0 0 129179 29861 1506 1506 0 0 5672 4619 0 0 7924 6331 0 0 1506 1506 0 0 57685 7863 0 0 54886 8036 0 0 1506 0 0 0 0 0 1506 0 0 1.74687 1.74687 -212.486 -1.74687 0 0 787024. 2723.27 0.22 0.11 0.13 -1 -1 0.22 0.0312611 0.0284136 130 -1 66 66 0 0 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_003bits.v common 3.19 vpr 62.57 MiB 0.01 6048 -1 -1 1 0.06 -1 -1 35684 -1 -1 2 7 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64068 7 4 21 25 1 15 13 17 17 289 -1 unnamed_device 24.2 MiB 0.01 49 298 73 218 7 62.6 MiB 0.00 0.00 0.581048 -5.90653 -0.581048 0.581048 0.94 4.9343e-05 4.3418e-05 0.00123356 0.00109353 20 123 9 6.55708e+06 24110 394039. 1363.46 0.54 0.00366228 0.0032694 19870 87366 -1 107 6 34 34 2027 667 0.71851 0.71851 -7.46913 -0.71851 0 0 477104. 1650.88 0.22 0.01 0.09 -1 -1 0.22 0.00209218 0.00192474 10 4 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_004bits.v common 3.19 vpr 62.57 MiB 0.01 6140 -1 -1 2 0.06 -1 -1 36308 -1 -1 2 9 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64076 9 5 28 33 1 21 16 17 17 289 -1 unnamed_device 24.2 MiB 0.01 50 436 85 329 22 62.6 MiB 0.01 0.00 0.819447 -7.75041 -0.819447 0.819447 0.94 6.0594e-05 5.4328e-05 0.00167851 0.00150917 20 142 7 6.55708e+06 24110 394039. 1363.46 0.55 0.00434546 0.00390017 19870 87366 -1 156 6 68 71 4272 1459 0.819447 0.819447 -10.677 -0.819447 0 0 477104. 1650.88 0.21 0.01 0.09 -1 -1 0.21 0.00221778 0.00202505 13 6 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_005bits.v common 3.20 vpr 62.35 MiB 0.01 6048 -1 -1 2 0.06 -1 -1 35712 -1 -1 2 11 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 63848 11 6 34 40 1 24 19 17 17 289 -1 unnamed_device 23.9 MiB 0.01 66 469 130 332 7 62.4 MiB 0.01 0.00 0.819447 -9.38544 -0.819447 0.819447 0.95 6.5902e-05 5.9614e-05 0.0016792 0.00151312 20 168 12 6.55708e+06 24110 394039. 1363.46 0.55 0.00497057 0.00439859 19870 87366 -1 137 9 80 81 3559 1436 0.819447 0.819447 -12.5524 -0.819447 0 0 477104. 1650.88 0.20 0.01 0.09 -1 -1 0.20 0.0028825 0.00258722 16 7 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_006bits.v common 3.44 vpr 62.72 MiB 0.01 6164 -1 -1 3 0.06 -1 -1 35856 -1 -1 3 13 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64224 13 7 41 48 1 32 23 17 17 289 -1 unnamed_device 24.3 MiB 0.01 112 887 156 711 20 62.7 MiB 0.01 0.00 1.50711 -14.1678 -1.50711 1.50711 0.96 8.9929e-05 8.0617e-05 0.00295026 0.00263875 26 277 12 6.55708e+06 36165 477104. 1650.88 0.70 0.0140874 0.0120005 21022 109990 -1 253 11 105 125 6293 1880 1.50711 1.50711 -17.4132 -1.50711 0 0 585099. 2024.56 0.25 0.01 0.11 -1 -1 0.25 0.00349746 0.00311204 19 9 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_007bits.v common 3.37 vpr 62.77 MiB 0.01 6264 -1 -1 3 0.06 -1 -1 35560 -1 -1 3 15 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64276 15 8 47 55 1 38 26 17 17 289 -1 unnamed_device 24.3 MiB 0.01 94 1014 271 628 115 62.8 MiB 0.01 0.00 1.05785 -14.1112 -1.05785 1.05785 0.95 0.000102375 9.2521e-05 0.00314883 0.0028435 24 400 19 6.55708e+06 36165 448715. 1552.65 0.68 0.0169811 0.014398 20734 103517 -1 321 15 219 240 11622 4129 1.37925 1.37925 -20.406 -1.37925 0 0 554710. 1919.41 0.22 0.01 0.10 -1 -1 0.22 0.00438125 0.00383153 23 10 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_008bits.v common 3.29 vpr 62.92 MiB 0.01 6084 -1 -1 3 0.07 -1 -1 35400 -1 -1 4 17 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64428 17 9 56 65 1 42 30 17 17 289 -1 unnamed_device 24.4 MiB 0.06 139 674 148 508 18 62.9 MiB 0.01 0.00 1.46791 -17.0238 -1.46791 1.46791 0.95 0.000117509 0.000106318 0.00238931 0.00217455 20 370 14 6.55708e+06 48220 394039. 1363.46 0.57 0.00781143 0.00693749 19870 87366 -1 302 11 125 144 6438 2124 1.70831 1.70831 -22.0722 -1.70831 0 0 477104. 1650.88 0.20 0.01 0.09 -1 -1 0.20 0.004331 0.003857 25 14 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_009bits.v common 3.42 vpr 62.89 MiB 0.01 6172 -1 -1 4 0.07 -1 -1 35736 -1 -1 4 19 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64396 19 10 60 70 1 48 33 17 17 289 -1 unnamed_device 24.4 MiB 0.01 167 1437 270 1139 28 62.9 MiB 0.01 0.00 1.50711 -21.6272 -1.50711 1.50711 0.94 0.000137848 0.000124333 0.00413925 0.0037502 24 474 12 6.55708e+06 48220 448715. 1552.65 0.69 0.0198611 0.0169551 20734 103517 -1 449 11 173 225 14211 3936 1.58811 1.58811 -27.3648 -1.58811 0 0 554710. 1919.41 0.24 0.01 0.11 -1 -1 0.24 0.00463271 0.00411951 29 13 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_010bits.v common 3.38 vpr 62.96 MiB 0.01 6276 -1 -1 4 0.06 -1 -1 35328 -1 -1 5 21 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64472 21 11 69 80 1 53 37 17 17 289 -1 unnamed_device 24.3 MiB 0.03 202 2538 682 1367 489 63.0 MiB 0.02 0.00 1.46791 -23.0586 -1.46791 1.46791 0.91 0.000148325 0.000133259 0.00662209 0.00595087 26 516 13 6.55708e+06 60275 477104. 1650.88 0.71 0.0228012 0.0196315 21022 109990 -1 475 9 212 273 19041 5267 1.46791 1.46791 -29.6696 -1.46791 0 0 585099. 2024.56 0.25 0.01 0.10 -1 -1 0.25 0.00448911 0.00402188 33 17 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_011bits.v common 3.65 vpr 63.00 MiB 0.01 6052 -1 -1 5 0.07 -1 -1 35840 -1 -1 5 23 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64508 23 12 73 85 1 58 40 17 17 289 -1 unnamed_device 24.5 MiB 0.02 251 1468 311 1106 51 63.0 MiB 0.01 0.00 1.95636 -29.271 -1.95636 1.95636 0.96 0.000143075 0.000129002 0.00387019 0.00353173 26 657 26 6.55708e+06 60275 477104. 1650.88 0.81 0.0265762 0.0228107 21022 109990 -1 525 10 245 312 19210 5431 2.03736 2.03736 -34.808 -2.03736 0 0 585099. 2024.56 0.26 0.01 0.11 -1 -1 0.26 0.0051641 0.00462976 35 16 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_012bits.v common 3.63 vpr 62.96 MiB 0.01 6144 -1 -1 5 0.07 -1 -1 36140 -1 -1 6 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64476 25 13 82 95 1 66 44 17 17 289 -1 unnamed_device 24.4 MiB 0.02 263 1738 310 1418 10 63.0 MiB 0.01 0.00 1.7847 -30.0889 -1.7847 1.7847 0.94 0.000165777 0.000150172 0.00463528 0.00422007 26 747 14 6.55708e+06 72330 477104. 1650.88 0.81 0.0258972 0.0223679 21022 109990 -1 658 31 294 400 133761 84026 1.9049 1.9049 -39.9061 -1.9049 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0112016 0.00968969 40 20 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_013bits.v common 3.43 vpr 63.05 MiB 0.01 6176 -1 -1 5 0.07 -1 -1 36012 -1 -1 7 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64560 27 14 91 105 1 70 48 17 17 289 -1 unnamed_device 24.5 MiB 0.02 398 1875 354 1465 56 63.0 MiB 0.02 0.00 1.49544 -35.4113 -1.49544 1.49544 0.93 0.000195234 0.000178172 0.00512626 0.00469082 22 1006 19 6.55708e+06 84385 420624. 1455.45 0.70 0.0300052 0.0258144 20158 92377 -1 850 15 326 504 39196 9477 1.73584 1.73584 -44.0285 -1.73584 0 0 500653. 1732.36 0.22 0.02 0.09 -1 -1 0.22 0.00761491 0.00673361 42 24 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_014bits.v common 3.62 vpr 62.14 MiB 0.01 6348 -1 -1 6 0.07 -1 -1 35888 -1 -1 7 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 63632 29 15 95 110 1 74 51 17 17 289 -1 unnamed_device 23.8 MiB 0.04 479 3717 970 2230 517 62.1 MiB 0.02 0.00 2.15556 -42.209 -2.15556 2.15556 0.96 0.000197254 0.000179236 0.00883751 0.00806515 26 869 10 6.55708e+06 84385 477104. 1650.88 0.73 0.0313048 0.0272625 21022 109990 -1 842 14 277 402 28956 6763 2.15556 2.15556 -49.2284 -2.15556 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.0073742 0.0065 45 23 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_015bits.v common 4.68 vpr 62.57 MiB 0.01 6220 -1 -1 6 0.08 -1 -1 35892 -1 -1 9 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64076 31 16 104 120 1 80 56 17 17 289 -1 unnamed_device 24.2 MiB 0.13 452 3052 621 1997 434 62.6 MiB 0.02 0.00 1.95636 -42.3992 -1.95636 1.95636 0.96 0.000211245 0.000191707 0.0068984 0.00627221 26 1019 16 6.55708e+06 108495 477104. 1650.88 1.69 0.0561318 0.0480002 21022 109990 -1 922 11 334 517 35717 9041 1.95837 1.95837 -49.6293 -1.95837 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00719812 0.00644122 50 27 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_016bits.v common 3.51 vpr 63.25 MiB 0.01 6368 -1 -1 7 0.07 -1 -1 35988 -1 -1 7 33 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64764 33 17 108 125 1 86 57 17 17 289 -1 unnamed_device 24.9 MiB 0.02 586 2891 598 2084 209 63.2 MiB 0.02 0.00 2.84322 -55.3231 -2.84322 2.84322 0.90 0.000202279 0.000183807 0.00627748 0.00572372 26 1220 20 6.55708e+06 84385 477104. 1650.88 0.80 0.0335174 0.0290764 21022 109990 -1 1121 21 325 469 95876 48728 3.08362 3.08362 -66.3855 -3.08362 0 0 585099. 2024.56 0.25 0.04 0.10 -1 -1 0.25 0.0103408 0.0091086 51 26 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_018bits.v common 3.90 vpr 63.15 MiB 0.01 6392 -1 -1 7 0.08 -1 -1 35696 -1 -1 8 37 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64664 37 19 127 146 1 101 64 17 17 289 -1 unnamed_device 24.7 MiB 0.20 601 8827 2665 5091 1071 63.1 MiB 0.05 0.00 2.40562 -57.2726 -2.40562 2.40562 0.94 0.000255419 0.00023275 0.0188542 0.0171676 30 1133 11 6.55708e+06 96440 526063. 1820.29 0.82 0.0472494 0.0416659 21886 126133 -1 1081 11 369 524 30993 7762 2.52582 2.52582 -67.4896 -2.52582 0 0 666494. 2306.21 0.28 0.02 0.12 -1 -1 0.28 0.00805612 0.00724679 59 35 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_020bits.v common 3.95 vpr 63.32 MiB 0.01 6252 -1 -1 8 0.08 -1 -1 35504 -1 -1 10 41 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64840 41 21 139 160 1 109 72 17 17 289 -1 unnamed_device 24.8 MiB 0.19 541 9310 2356 5722 1232 63.3 MiB 0.05 0.00 2.68322 -63.0558 -2.68322 2.68322 0.96 0.000277565 0.000253114 0.0185218 0.0169035 30 1117 18 6.55708e+06 120550 526063. 1820.29 0.83 0.0530743 0.0467434 21886 126133 -1 963 13 407 527 28559 7566 2.80342 2.80342 -71.8304 -2.80342 0 0 666494. 2306.21 0.29 0.02 0.12 -1 -1 0.29 0.00986643 0.00883931 67 37 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_022bits.v common 3.76 vpr 63.34 MiB 0.01 6448 -1 -1 9 0.08 -1 -1 35584 -1 -1 11 45 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64864 45 23 152 175 1 124 79 17 17 289 -1 unnamed_device 24.8 MiB 0.05 712 8867 2294 5297 1276 63.3 MiB 0.05 0.00 2.8977 -73.8657 -2.8977 2.8977 0.96 0.000302732 0.000278172 0.0172841 0.0157661 26 1525 18 6.55708e+06 132605 477104. 1650.88 0.82 0.0550114 0.0484055 21022 109990 -1 1355 18 491 682 44977 10781 3.1381 3.1381 -89.4917 -3.1381 0 0 585099. 2024.56 0.25 0.03 0.11 -1 -1 0.25 0.0132191 0.0117699 74 40 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_024bits.v common 4.15 vpr 63.50 MiB 0.01 6416 -1 -1 10 0.08 -1 -1 35852 -1 -1 11 49 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65028 49 25 165 190 1 131 85 17 17 289 -1 unnamed_device 24.9 MiB 0.29 542 11617 4623 6537 457 63.5 MiB 0.06 0.00 3.34756 -81.0776 -3.34756 3.34756 0.96 0.000340797 0.000310141 0.0220373 0.020069 28 1292 14 6.55708e+06 132605 500653. 1732.36 0.92 0.0622282 0.0551074 21310 115450 -1 1194 13 511 669 44638 11859 3.46776 3.46776 -95.1828 -3.46776 0 0 612192. 2118.31 0.25 0.03 0.11 -1 -1 0.25 0.0107855 0.00966608 79 43 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_028bits.v common 4.84 vpr 63.59 MiB 0.01 6456 -1 -1 11 0.09 -1 -1 36400 -1 -1 14 57 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65116 57 29 199 228 1 157 100 17 17 289 -1 unnamed_device 25.1 MiB 0.27 652 11700 2547 8228 925 63.6 MiB 0.06 0.00 4.09974 -107.682 -4.09974 4.09974 0.96 0.000374404 0.000338279 0.0203272 0.0185803 32 1638 46 6.55708e+06 168770 554710. 1919.41 1.57 0.115336 0.100674 22174 131602 -1 1486 13 622 902 57777 16253 4.46034 4.46034 -127.917 -4.46034 0 0 701300. 2426.64 0.29 0.03 0.13 -1 -1 0.29 0.0136606 0.0122963 93 57 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_032bits.v common 4.49 vpr 63.76 MiB 0.01 6344 -1 -1 13 0.10 -1 -1 35820 -1 -1 15 65 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65288 65 33 224 257 1 179 113 17 17 289 -1 unnamed_device 25.2 MiB 0.50 989 16493 5806 8403 2284 63.8 MiB 0.08 0.00 4.06216 -131.318 -4.06216 4.06216 0.95 0.000428651 0.000390889 0.0275852 0.025173 30 1953 18 6.55708e+06 180825 526063. 1820.29 0.98 0.0815113 0.0722695 21886 126133 -1 1676 13 616 818 55986 13505 4.18236 4.18236 -147.065 -4.18236 0 0 666494. 2306.21 0.28 0.03 0.12 -1 -1 0.28 0.0143354 0.0128416 107 62 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_048bits.v common 7.10 vpr 64.81 MiB 0.01 6764 -1 -1 19 0.12 -1 -1 35888 -1 -1 24 97 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 97 49 340 389 1 265 170 17 17 289 -1 unnamed_device 26.2 MiB 0.32 1417 34010 10418 19153 4439 64.8 MiB 0.15 0.00 6.66645 -254.89 -6.66645 6.66645 0.93 0.00063519 0.000578567 0.0489245 0.0444724 30 2909 28 6.55708e+06 289320 526063. 1820.29 3.65 0.265512 0.234068 21886 126133 -1 2564 12 873 1235 72190 18186 6.90685 6.90685 -281.655 -6.90685 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0209516 0.019114 160 98 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml adder_064bits.v common 11.47 vpr 65.57 MiB 0.02 6932 -1 -1 26 0.14 -1 -1 36228 -1 -1 31 129 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67148 129 65 454 519 1 354 225 17 17 289 -1 unnamed_device 26.8 MiB 0.19 1847 58365 21335 31738 5292 65.6 MiB 0.24 0.00 8.37244 -389.72 -8.37244 8.37244 0.94 0.000846132 0.000770629 0.0751222 0.0683906 38 3733 39 6.55708e+06 373705 638502. 2209.35 7.88 0.436428 0.38815 23326 155178 -1 3146 13 1140 1607 104330 25722 8.49264 8.49264 -418.088 -8.49264 0 0 851065. 2944.86 0.32 0.06 0.16 -1 -1 0.32 0.0280716 0.0254831 213 132 -1 -1 -1 -1 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 0.17 abc 32.81 MiB 0.01 6368 -1 -1 1 0.02 -1 -1 33596 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24836 7 4 24 25 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 0.16 abc 32.65 MiB 0.01 6316 -1 -1 1 0.02 -1 -1 33436 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25124 9 5 30 31 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 0.19 abc 32.81 MiB 0.01 6228 -1 -1 1 0.02 -1 -1 33600 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24672 11 6 36 37 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 0.17 abc 32.75 MiB 0.01 6312 -1 -1 1 0.02 -1 -1 33536 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24792 13 7 42 43 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 0.18 abc 32.57 MiB 0.01 6180 -1 -1 1 0.02 -1 -1 33348 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24948 15 8 49 50 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 0.17 abc 32.62 MiB 0.01 6188 -1 -1 1 0.02 -1 -1 33408 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25052 17 9 55 56 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 0.16 abc 32.66 MiB 0.01 6316 -1 -1 1 0.02 -1 -1 33440 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25312 19 10 61 62 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 0.19 abc 32.85 MiB 0.01 6440 -1 -1 1 0.02 -1 -1 33636 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25364 21 11 67 68 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 0.18 abc 32.88 MiB 0.01 6328 -1 -1 1 0.02 -1 -1 33668 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25192 23 12 74 75 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 0.18 abc 32.93 MiB 0.01 6292 -1 -1 1 0.02 -1 -1 33716 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25412 25 13 80 81 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 0.18 abc 32.89 MiB 0.01 6456 -1 -1 1 0.03 -1 -1 33684 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25132 27 14 86 87 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 0.16 abc 32.90 MiB 0.01 6528 -1 -1 1 0.02 -1 -1 33692 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25336 29 15 92 93 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 0.17 abc 32.96 MiB 0.01 6384 -1 -1 1 0.02 -1 -1 33752 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25100 31 16 99 100 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 0.18 abc 32.82 MiB 0.01 6264 -1 -1 1 0.02 -1 -1 33604 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25104 33 17 105 106 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 0.18 abc 32.95 MiB 0.01 6528 -1 -1 1 0.02 -1 -1 33744 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25344 37 19 117 118 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 0.18 abc 33.11 MiB 0.01 6528 -1 -1 1 0.03 -1 -1 33908 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25104 41 21 130 131 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 6 6 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 0.17 abc 33.11 MiB 0.01 6588 -1 -1 1 0.02 -1 -1 33900 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25376 45 23 142 143 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 6 6 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 0.18 abc 33.28 MiB 0.02 6604 -1 -1 1 0.03 -1 -1 34080 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25496 49 25 155 156 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 7 7 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 0.18 abc 33.03 MiB 0.01 6492 -1 -1 1 0.03 -1 -1 33820 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25748 57 29 180 181 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 8 8 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 0.19 abc 32.74 MiB 0.01 6524 -1 -1 1 0.03 -1 -1 33524 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25760 65 33 205 206 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 9 9 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 0.20 abc 33.27 MiB 0.02 6664 -1 -1 1 0.03 -1 -1 34072 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25828 97 49 305 306 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 13 13 0 0 + fixed_k6_N8_lookahead_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 0.22 abc 33.34 MiB 0.02 6952 -1 -1 1 0.04 -1 -1 34140 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 26348 129 65 405 406 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 17 17 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 0.16 abc 32.55 MiB 0.01 6380 -1 -1 1 0.02 -1 -1 33328 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24828 7 4 24 25 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 0.19 abc 32.85 MiB 0.01 6452 -1 -1 1 0.02 -1 -1 33636 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24940 9 5 30 31 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 0.15 abc 32.54 MiB 0.01 6428 -1 -1 1 0.02 -1 -1 33316 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24696 11 6 36 37 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 0.16 abc 32.83 MiB 0.01 6200 -1 -1 1 0.02 -1 -1 33620 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24996 13 7 42 43 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2 2 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 0.16 abc 32.69 MiB 0.01 6312 -1 -1 1 0.02 -1 -1 33476 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24968 15 8 49 50 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 0.18 abc 32.95 MiB 0.01 6148 -1 -1 1 0.02 -1 -1 33736 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24828 17 9 55 56 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 0.17 abc 32.82 MiB 0.01 6212 -1 -1 1 0.02 -1 -1 33612 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24992 19 10 61 62 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 0.17 abc 32.89 MiB 0.01 6312 -1 -1 1 0.02 -1 -1 33680 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24840 21 11 67 68 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 3 3 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 0.19 abc 32.57 MiB 0.01 6352 -1 -1 1 0.02 -1 -1 33356 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24724 23 12 74 75 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 0.19 abc 32.65 MiB 0.01 6472 -1 -1 1 0.02 -1 -1 33436 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25080 25 13 80 81 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 0.17 abc 32.82 MiB 0.01 6492 -1 -1 1 0.02 -1 -1 33604 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25020 27 14 86 87 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 0.19 abc 32.66 MiB 0.01 6480 -1 -1 1 0.02 -1 -1 33440 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24720 29 15 92 93 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 4 4 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 0.17 abc 33.05 MiB 0.02 6504 -1 -1 1 0.02 -1 -1 33844 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25156 31 16 99 100 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 0.21 abc 32.87 MiB 0.01 6560 -1 -1 1 0.02 -1 -1 33656 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 24956 33 17 105 106 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 0.18 abc 32.95 MiB 0.02 6384 -1 -1 1 0.02 -1 -1 33744 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25064 37 19 117 118 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 5 5 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 0.18 abc 33.21 MiB 0.01 6456 -1 -1 1 0.02 -1 -1 34012 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25032 41 21 130 131 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 6 6 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 0.20 abc 32.91 MiB 0.01 6356 -1 -1 1 0.02 -1 -1 33700 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25092 45 23 142 143 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 6 6 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 0.18 abc 33.20 MiB 0.01 6288 -1 -1 1 0.03 -1 -1 33992 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25356 49 25 155 156 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 7 7 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 0.19 abc 33.16 MiB 0.02 6612 -1 -1 1 0.03 -1 -1 33956 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25428 57 29 180 181 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 8 8 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 0.20 abc 33.29 MiB 0.02 6696 -1 -1 1 0.03 -1 -1 34084 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25036 65 33 205 206 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 9 9 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 0.20 abc 32.99 MiB 0.02 6552 -1 -1 1 0.03 -1 -1 33780 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25628 97 49 305 306 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 13 13 0 0 + fixed_k6_N8_lookahead_unbalanced_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 0.22 abc 33.33 MiB 0.02 6792 -1 -1 1 0.03 -1 -1 34128 -1 -1 -1 -1 -1 -1 exited with return code 134 efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 25428 129 65 405 406 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 17 17 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 3.13 vpr 62.99 MiB 0.01 6384 -1 -1 1 0.02 -1 -1 33664 -1 -1 2 7 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64504 7 4 27 28 1 14 13 17 17 289 -1 unnamed_device 24.6 MiB 0.01 62 268 53 201 14 63.0 MiB 0.00 0.00 0.71851 -6.29593 -0.71851 0.71851 0.90 7.6984e-05 7.0815e-05 0.00123058 0.00109969 20 124 5 6.64007e+06 25116 394039. 1363.46 0.54 0.00346268 0.00312943 20530 87850 -1 113 7 29 29 1557 458 0.83871 0.83871 -7.61813 -0.83871 0 0 477104. 1650.88 0.22 0.01 0.09 -1 -1 0.22 0.00225327 0.00206417 10 -1 5 5 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 3.16 vpr 63.06 MiB 0.01 6148 -1 -1 1 0.02 -1 -1 33560 -1 -1 2 9 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64572 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 24.6 MiB 0.01 50 416 74 318 24 63.1 MiB 0.01 0.00 0.671848 -7.68382 -0.671848 0.671848 0.92 7.514e-05 6.7403e-05 0.00167777 0.00150378 20 127 10 6.64007e+06 25116 394039. 1363.46 0.53 0.00423838 0.00379512 20530 87850 -1 124 13 61 61 3282 1060 1.01045 1.01045 -10.172 -1.01045 0 0 477104. 1650.88 0.20 0.01 0.09 -1 -1 0.20 0.0030174 0.00266548 13 -1 6 6 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 3.35 vpr 62.95 MiB 0.01 6284 -1 -1 1 0.02 -1 -1 33424 -1 -1 2 11 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64464 11 6 41 42 1 26 19 17 17 289 -1 unnamed_device 24.5 MiB 0.01 80 494 118 371 5 63.0 MiB 0.01 0.00 0.682848 -9.70225 -0.682848 0.682848 0.98 7.8748e-05 7.0826e-05 0.00188265 0.00169823 22 191 10 6.64007e+06 25116 420624. 1455.45 0.63 0.0116327 0.00981021 20818 92861 -1 182 6 77 77 4922 1449 0.781048 0.781048 -12.7694 -0.781048 0 0 500653. 1732.36 0.21 0.01 0.09 -1 -1 0.21 0.00248662 0.0022661 16 -1 7 7 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 3.24 vpr 63.31 MiB 0.01 6284 -1 -1 1 0.02 -1 -1 33604 -1 -1 3 13 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64828 13 7 48 49 1 32 23 17 17 289 -1 unnamed_device 24.9 MiB 0.01 139 663 131 523 9 63.3 MiB 0.01 0.00 0.704848 -12.8419 -0.704848 0.704848 0.97 8.6685e-05 7.8155e-05 0.00223876 0.00202919 20 313 13 6.64007e+06 37674 394039. 1363.46 0.55 0.00629691 0.00558827 20530 87850 -1 287 8 103 103 5774 1656 0.934248 0.934248 -16.6303 -0.934248 0 0 477104. 1650.88 0.21 0.01 0.09 -1 -1 0.21 0.00305201 0.0027517 19 -1 8 8 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 3.37 vpr 63.23 MiB 0.01 6292 -1 -1 1 0.02 -1 -1 33720 -1 -1 3 15 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64752 15 8 55 56 1 38 26 17 17 289 -1 unnamed_device 24.8 MiB 0.02 93 900 177 710 13 63.2 MiB 0.01 0.00 0.944958 -12.9589 -0.944958 0.944958 0.96 0.000113792 0.000103539 0.00283925 0.00257628 26 278 19 6.64007e+06 37674 477104. 1650.88 0.68 0.0155221 0.0131745 21682 110474 -1 237 14 155 155 7501 2527 1.04145 1.04145 -18.5668 -1.04145 0 0 585099. 2024.56 0.24 0.01 0.10 -1 -1 0.24 0.00411692 0.00363996 22 -1 9 9 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 3.48 vpr 63.14 MiB 0.01 6204 -1 -1 1 0.02 -1 -1 33744 -1 -1 4 17 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64652 17 9 62 63 1 41 30 17 17 289 -1 unnamed_device 24.6 MiB 0.02 122 1088 238 811 39 63.1 MiB 0.01 0.00 0.955958 -16.0918 -0.955958 0.955958 0.96 0.000111991 0.000102452 0.00321081 0.00289938 26 328 9 6.64007e+06 50232 477104. 1650.88 0.72 0.0159306 0.0135723 21682 110474 -1 319 11 160 160 10249 3308 1.05245 1.05245 -22.277 -1.05245 0 0 585099. 2024.56 0.25 0.01 0.11 -1 -1 0.25 0.00418785 0.00372506 25 -1 10 10 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 3.42 vpr 63.38 MiB 0.01 6432 -1 -1 1 0.02 -1 -1 33720 -1 -1 4 19 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64896 19 10 69 70 1 44 33 17 17 289 -1 unnamed_device 24.8 MiB 0.02 186 1697 355 1299 43 63.4 MiB 0.01 0.00 0.966958 -19.8368 -0.966958 0.966958 0.95 0.000118202 0.000106835 0.00466796 0.00422872 26 383 12 6.64007e+06 50232 477104. 1650.88 0.71 0.0194213 0.0166905 21682 110474 -1 365 10 132 132 10077 2635 0.95891 0.95891 -24.4356 -0.95891 0 0 585099. 2024.56 0.24 0.01 0.11 -1 -1 0.24 0.00417951 0.00371978 28 -1 11 11 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 3.39 vpr 63.34 MiB 0.01 6436 -1 -1 1 0.02 -1 -1 33700 -1 -1 5 21 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64864 21 11 76 77 1 49 37 17 17 289 -1 unnamed_device 24.8 MiB 0.03 159 3148 1153 1626 369 63.3 MiB 0.02 0.00 0.977958 -20.3473 -0.977958 0.977958 0.92 0.000130721 0.000117824 0.00725086 0.00655984 26 433 16 6.64007e+06 62790 477104. 1650.88 0.69 0.0236809 0.0203751 21682 110474 -1 343 13 209 209 13276 3767 1.00925 1.00925 -26.3623 -1.00925 0 0 585099. 2024.56 0.24 0.01 0.11 -1 -1 0.24 0.00500919 0.00443591 31 -1 12 12 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 3.55 vpr 63.32 MiB 0.01 6416 -1 -1 1 0.02 -1 -1 33584 -1 -1 5 23 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64836 23 12 83 84 1 55 40 17 17 289 -1 unnamed_device 24.8 MiB 0.03 216 1740 326 1395 19 63.3 MiB 0.01 0.00 0.988958 -22.4314 -0.988958 0.988958 0.94 0.000152157 0.000139511 0.00448028 0.00407412 30 467 16 6.64007e+06 62790 526063. 1820.29 0.79 0.0223107 0.0191598 22546 126617 -1 424 11 171 171 8543 2484 0.965248 0.965248 -27.7041 -0.965248 0 0 666494. 2306.21 0.27 0.01 0.12 -1 -1 0.27 0.00391052 0.0035072 34 -1 13 13 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 3.49 vpr 63.32 MiB 0.01 6352 -1 -1 1 0.02 -1 -1 33604 -1 -1 5 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64840 25 13 90 91 1 61 43 17 17 289 -1 unnamed_device 24.8 MiB 0.03 399 1993 430 1422 141 63.3 MiB 0.02 0.00 0.999958 -28.4932 -0.999958 0.999958 0.94 0.000155335 0.000142748 0.00511216 0.00467993 26 712 17 6.64007e+06 62790 477104. 1650.88 0.72 0.0242748 0.0208724 21682 110474 -1 697 13 251 251 20684 4952 1.02025 1.02025 -36.1295 -1.02025 0 0 585099. 2024.56 0.26 0.01 0.11 -1 -1 0.26 0.00565217 0.0050089 37 -1 14 14 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 3.55 vpr 63.42 MiB 0.01 6376 -1 -1 1 0.02 -1 -1 33640 -1 -1 6 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64940 27 14 97 98 1 67 47 17 17 289 -1 unnamed_device 24.9 MiB 0.02 370 2483 493 1827 163 63.4 MiB 0.02 0.00 1.01096 -30.2387 -1.01096 1.01096 0.93 0.000171335 0.000156403 0.0055736 0.00508466 32 691 14 6.64007e+06 75348 554710. 1919.41 0.79 0.0238932 0.0206061 22834 132086 -1 646 13 284 284 20735 5004 1.09645 1.09645 -36.7891 -1.09645 0 0 701300. 2426.64 0.30 0.02 0.12 -1 -1 0.30 0.0056212 0.00498936 40 -1 15 15 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 3.60 vpr 63.34 MiB 0.01 6476 -1 -1 1 0.02 -1 -1 33892 -1 -1 6 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64856 29 15 104 105 1 73 50 17 17 289 -1 unnamed_device 25.0 MiB 0.02 218 2534 432 2061 41 63.3 MiB 0.02 0.00 1.02196 -27.3074 -1.02196 1.02196 0.94 0.000180314 0.000163813 0.00574917 0.00525101 28 621 20 6.64007e+06 75348 500653. 1732.36 0.81 0.028952 0.0251138 21970 115934 -1 555 11 343 343 17492 5809 1.16245 1.16245 -38.8308 -1.16245 0 0 612192. 2118.31 0.26 0.02 0.12 -1 -1 0.26 0.0056626 0.00507553 43 -1 16 16 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 3.52 vpr 63.40 MiB 0.01 6304 -1 -1 1 0.02 -1 -1 33856 -1 -1 7 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64924 31 16 111 112 1 79 54 17 17 289 -1 unnamed_device 25.0 MiB 0.02 432 4848 1091 3323 434 63.4 MiB 0.03 0.00 1.26207 -35.4343 -1.26207 1.26207 0.94 0.000188623 0.000171197 0.00991971 0.00905003 26 889 15 6.64007e+06 87906 477104. 1650.88 0.73 0.0324959 0.0283171 21682 110474 -1 796 15 370 370 26112 6351 1.07325 1.07325 -44.1244 -1.07325 0 0 585099. 2024.56 0.24 0.02 0.11 -1 -1 0.24 0.00733128 0.00648733 46 -1 17 17 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 3.56 vpr 63.55 MiB 0.01 6504 -1 -1 1 0.02 -1 -1 34020 -1 -1 7 33 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65072 33 17 118 119 1 82 57 17 17 289 -1 unnamed_device 25.1 MiB 0.03 487 5398 1379 3624 395 63.5 MiB 0.03 0.00 1.27307 -39.6056 -1.27307 1.27307 0.94 0.000210636 0.000191695 0.011135 0.0101705 26 916 12 6.64007e+06 87906 477104. 1650.88 0.76 0.0345867 0.0301703 21682 110474 -1 854 16 366 366 30009 7066 1.06225 1.06225 -46.8592 -1.06225 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00801207 0.00705753 49 -1 18 18 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 3.64 vpr 63.48 MiB 0.01 6260 -1 -1 1 0.02 -1 -1 33948 -1 -1 8 37 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65004 37 19 132 133 1 90 64 17 17 289 -1 unnamed_device 25.0 MiB 0.03 385 4890 983 3767 140 63.5 MiB 0.03 0.00 1.29507 -39.6872 -1.29507 1.29507 0.94 0.000250702 0.000215626 0.00987269 0.00902606 26 879 18 6.64007e+06 100464 477104. 1650.88 0.81 0.0381576 0.0331587 21682 110474 -1 813 11 314 314 22847 5842 1.17145 1.17145 -51.1577 -1.17145 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00729148 0.00653041 55 -1 20 20 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 3.70 vpr 63.72 MiB 0.01 6228 -1 -1 1 0.02 -1 -1 33848 -1 -1 8 41 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65252 41 21 146 147 1 102 70 17 17 289 -1 unnamed_device 25.2 MiB 0.03 603 4534 936 3431 167 63.7 MiB 0.03 0.00 1.31707 -50.631 -1.31707 1.31707 0.94 0.000253314 0.000231038 0.00881858 0.00804982 28 1173 20 6.64007e+06 100464 500653. 1732.36 0.85 0.039855 0.0346844 21970 115934 -1 1083 13 474 474 42403 9825 1.12825 1.12825 -59.4588 -1.12825 0 0 612192. 2118.31 0.27 0.03 0.12 -1 -1 0.27 0.00854942 0.00761919 61 -1 22 22 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 3.79 vpr 63.83 MiB 0.01 6376 -1 -1 1 0.03 -1 -1 33780 -1 -1 9 45 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65360 45 23 160 161 1 114 77 17 17 289 -1 unnamed_device 25.3 MiB 0.03 554 4641 850 3695 96 63.8 MiB 0.03 0.00 1.33907 -53.0844 -1.33907 1.33907 0.97 0.000278907 0.000255246 0.00845654 0.00774167 26 1325 19 6.64007e+06 113022 477104. 1650.88 0.90 0.042641 0.0372386 21682 110474 -1 1177 14 529 529 50497 11836 1.33565 1.33565 -66.8 -1.33565 0 0 585099. 2024.56 0.26 0.03 0.11 -1 -1 0.26 0.00998319 0.00894016 67 -1 24 24 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 3.76 vpr 63.92 MiB 0.01 6452 -1 -1 1 0.03 -1 -1 34008 -1 -1 10 49 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65452 49 25 174 175 1 123 84 17 17 289 -1 unnamed_device 25.4 MiB 0.04 644 9051 2018 6722 311 63.9 MiB 0.05 0.00 1.59018 -59.526 -1.59018 1.59018 0.94 0.00031293 0.000287141 0.0157591 0.0144157 30 1236 13 6.64007e+06 125580 526063. 1820.29 0.85 0.0492208 0.0434519 22546 126617 -1 1130 14 457 457 40274 9428 1.25745 1.25745 -69.9897 -1.25745 0 0 666494. 2306.21 0.28 0.03 0.12 -1 -1 0.28 0.01016 0.00905171 73 -1 26 26 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 3.91 vpr 63.95 MiB 0.01 6380 -1 -1 1 0.03 -1 -1 33632 -1 -1 11 57 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65480 57 29 202 203 1 143 97 17 17 289 -1 unnamed_device 25.6 MiB 0.04 740 11641 2593 8605 443 63.9 MiB 0.07 0.00 1.63418 -71.94 -1.63418 1.63418 0.99 0.000335328 0.000306591 0.0190722 0.0174557 32 1569 12 6.64007e+06 138138 554710. 1919.41 0.89 0.05637 0.0499266 22834 132086 -1 1381 14 618 618 57097 13109 1.22645 1.22645 -81.8732 -1.22645 0 0 701300. 2426.64 0.30 0.03 0.13 -1 -1 0.30 0.0117369 0.0105059 85 -1 30 30 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 3.92 vpr 63.83 MiB 0.02 6576 -1 -1 1 0.03 -1 -1 33952 -1 -1 13 65 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65360 65 33 230 231 1 164 111 17 17 289 -1 unnamed_device 25.4 MiB 0.04 928 18731 4989 12454 1288 63.8 MiB 0.09 0.00 1.90729 -86.5509 -1.90729 1.90729 0.97 0.000376834 0.000345462 0.0282547 0.025857 32 1804 14 6.64007e+06 163254 554710. 1919.41 0.87 0.0710564 0.0629804 22834 132086 -1 1665 16 688 688 59524 13382 1.27825 1.27825 -94.6533 -1.27825 0 0 701300. 2426.64 0.30 0.04 0.13 -1 -1 0.30 0.0136907 0.0121172 97 -1 34 34 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 6.54 vpr 64.79 MiB 0.02 6960 -1 -1 1 0.03 -1 -1 34008 -1 -1 19 97 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 97 49 342 343 1 246 165 17 17 289 -1 unnamed_device 26.1 MiB 0.06 1570 34065 14215 19723 127 64.8 MiB 0.18 0.00 2.54151 -147.37 -2.54151 2.54151 0.99 0.000582551 0.000536308 0.0456862 0.041969 32 2877 21 6.64007e+06 238602 554710. 1919.41 3.28 0.248996 0.222136 22834 132086 -1 2581 21 1200 1200 118084 25955 1.50645 1.50645 -147.992 -1.50645 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0254732 0.0228242 145 -1 50 50 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 4.49 vpr 65.53 MiB 0.02 6864 -1 -1 1 0.04 -1 -1 33900 -1 -1 25 129 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67104 129 65 454 455 1 328 219 17 17 289 -1 unnamed_device 27.0 MiB 0.09 1950 54257 19916 29736 4605 65.5 MiB 0.26 0.01 3.17573 -210.403 -3.17573 3.17573 0.95 0.000739326 0.000675876 0.0625803 0.0572863 32 3904 18 6.64007e+06 313950 554710. 1919.41 1.11 0.15845 0.142638 22834 132086 -1 3289 15 1411 1411 127064 29394 1.72125 1.72125 -200.545 -1.72125 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0255566 0.0231097 193 -1 66 66 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_003bits.v common 3.21 vpr 62.81 MiB 0.01 6372 -1 -1 1 0.02 -1 -1 33572 -1 -1 2 7 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64320 7 4 27 28 1 14 13 17 17 289 -1 unnamed_device 24.4 MiB 0.01 62 268 53 201 14 62.8 MiB 0.00 0.00 0.71851 -6.29593 -0.71851 0.71851 0.96 5.4535e-05 4.8716e-05 0.00123026 0.00109605 20 125 3 6.65987e+06 25356 394039. 1363.46 0.56 0.00332356 0.00302095 20530 87850 -1 109 3 18 18 1050 285 0.83871 0.83871 -7.49793 -0.83871 0 0 477104. 1650.88 0.21 0.00 0.09 -1 -1 0.21 0.00183436 0.00170931 10 -1 5 5 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_004bits.v common 3.20 vpr 62.89 MiB 0.01 6208 -1 -1 1 0.02 -1 -1 33592 -1 -1 2 9 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64396 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 24.5 MiB 0.01 66 436 97 327 12 62.9 MiB 0.01 0.00 0.671848 -7.80402 -0.671848 0.671848 0.93 6.3472e-05 5.7154e-05 0.0017604 0.00158077 20 173 8 6.65987e+06 25356 394039. 1363.46 0.57 0.00476595 0.00428766 20530 87850 -1 142 10 69 69 3018 940 0.890248 0.890248 -10.172 -0.890248 0 0 477104. 1650.88 0.22 0.01 0.09 -1 -1 0.22 0.00267637 0.00239429 13 -1 6 6 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_005bits.v common 3.11 vpr 63.03 MiB 0.01 6448 -1 -1 1 0.02 -1 -1 33596 -1 -1 2 11 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64540 11 6 41 42 1 26 19 17 17 289 -1 unnamed_device 24.6 MiB 0.01 66 569 130 426 13 63.0 MiB 0.01 0.00 0.682848 -9.46185 -0.682848 0.682848 0.94 6.5158e-05 5.8242e-05 0.00187435 0.00168091 20 217 13 6.65987e+06 25356 394039. 1363.46 0.54 0.00541123 0.00478764 20530 87850 -1 196 8 96 96 5042 1580 1.01045 1.01045 -13.2502 -1.01045 0 0 477104. 1650.88 0.21 0.01 0.08 -1 -1 0.21 0.00262021 0.00237653 16 -1 7 7 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_006bits.v common 3.25 vpr 63.08 MiB 0.01 6368 -1 -1 1 0.02 -1 -1 33628 -1 -1 3 13 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64596 13 7 48 49 1 32 23 17 17 289 -1 unnamed_device 24.5 MiB 0.01 95 727 155 548 24 63.1 MiB 0.01 0.00 0.704848 -12.0005 -0.704848 0.704848 0.96 8.7281e-05 7.9021e-05 0.00242354 0.00219326 20 274 21 6.65987e+06 38034 394039. 1363.46 0.57 0.00780403 0.00686077 20530 87850 -1 269 12 147 147 9004 2749 1.01045 1.01045 -16.8832 -1.01045 0 0 477104. 1650.88 0.22 0.01 0.09 -1 -1 0.22 0.00377114 0.00334566 19 -1 8 8 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_007bits.v common 3.22 vpr 63.10 MiB 0.01 6372 -1 -1 1 0.02 -1 -1 33588 -1 -1 3 15 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64612 15 8 55 56 1 38 26 17 17 289 -1 unnamed_device 24.6 MiB 0.01 92 1014 205 791 18 63.1 MiB 0.01 0.00 0.944958 -12.9589 -0.944958 0.944958 0.94 9.8519e-05 8.8567e-05 0.00312821 0.00283362 20 333 17 6.65987e+06 38034 394039. 1363.46 0.56 0.00827155 0.00734721 20530 87850 -1 259 15 205 205 10133 3548 0.932248 0.932248 -18.5918 -0.932248 0 0 477104. 1650.88 0.22 0.01 0.09 -1 -1 0.22 0.00458128 0.00402024 22 -1 9 9 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_008bits.v common 3.21 vpr 62.93 MiB 0.01 6412 -1 -1 1 0.02 -1 -1 33588 -1 -1 4 17 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64444 17 9 62 63 1 41 30 17 17 289 -1 unnamed_device 24.4 MiB 0.01 180 950 198 722 30 62.9 MiB 0.01 0.00 0.955958 -16.5726 -0.955958 0.955958 0.94 9.4015e-05 8.5102e-05 0.00263569 0.00238471 20 388 11 6.65987e+06 50712 394039. 1363.46 0.57 0.00738835 0.00660477 20530 87850 -1 387 15 171 171 14616 3868 0.953189 0.953189 -22.8094 -0.953189 0 0 477104. 1650.88 0.20 0.01 0.09 -1 -1 0.20 0.00485811 0.00427551 25 -1 10 10 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_009bits.v common 3.46 vpr 63.17 MiB 0.01 6208 -1 -1 1 0.02 -1 -1 33268 -1 -1 4 19 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64684 19 10 69 70 1 44 33 17 17 289 -1 unnamed_device 24.6 MiB 0.01 162 1749 367 1335 47 63.2 MiB 0.01 0.00 0.966958 -18.9954 -0.966958 0.966958 0.95 0.000125959 0.000114174 0.00478656 0.00435795 26 372 15 6.65987e+06 50712 477104. 1650.88 0.71 0.0197261 0.0168526 21682 110474 -1 327 11 155 155 8068 2517 0.987248 0.987248 -23.8062 -0.987248 0 0 585099. 2024.56 0.27 0.01 0.11 -1 -1 0.27 0.00444057 0.00395113 28 -1 11 11 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_010bits.v common 3.65 vpr 62.80 MiB 0.01 6156 -1 -1 1 0.02 -1 -1 33704 -1 -1 5 21 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64312 21 11 76 77 1 49 37 17 17 289 -1 unnamed_device 24.3 MiB 0.01 149 3148 849 1487 812 62.8 MiB 0.02 0.00 0.977958 -19.7463 -0.977958 0.977958 0.95 0.000128445 0.000117041 0.00756566 0.00686196 32 390 19 6.65987e+06 63390 554710. 1919.41 0.83 0.0249593 0.0215379 22834 132086 -1 333 12 200 200 10191 3079 1.00925 1.00925 -24.6795 -1.00925 0 0 701300. 2426.64 0.30 0.01 0.13 -1 -1 0.30 0.00501204 0.00444704 31 -1 12 12 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_011bits.v common 3.63 vpr 63.30 MiB 0.01 6352 -1 -1 1 0.02 -1 -1 33396 -1 -1 5 23 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64816 23 12 83 84 1 55 40 17 17 289 -1 unnamed_device 24.8 MiB 0.01 207 1468 274 1169 25 63.3 MiB 0.01 0.00 0.988958 -22.0708 -0.988958 0.988958 0.94 0.00014531 0.000131476 0.00384328 0.00350227 30 496 14 6.65987e+06 63390 526063. 1820.29 0.80 0.0208782 0.01791 22546 126617 -1 460 11 176 176 11791 3144 0.900048 0.900048 -28.1171 -0.900048 0 0 666494. 2306.21 0.29 0.01 0.12 -1 -1 0.29 0.0048967 0.00436425 34 -1 13 13 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_012bits.v common 3.50 vpr 63.22 MiB 0.01 6224 -1 -1 1 0.02 -1 -1 33392 -1 -1 5 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64740 25 13 90 91 1 61 43 17 17 289 -1 unnamed_device 24.7 MiB 0.02 234 1993 390 1574 29 63.2 MiB 0.02 0.00 0.999958 -24.0458 -0.999958 0.999958 0.95 0.000160268 0.000145885 0.00490949 0.00447254 26 549 10 6.65987e+06 63390 477104. 1650.88 0.70 0.0222363 0.0192119 21682 110474 -1 542 11 221 221 14448 3975 0.900048 0.900048 -31.9225 -0.900048 0 0 585099. 2024.56 0.24 0.01 0.11 -1 -1 0.24 0.00508035 0.00453451 37 -1 14 14 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_013bits.v common 3.75 vpr 63.26 MiB 0.01 6280 -1 -1 1 0.03 -1 -1 33672 -1 -1 6 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64776 27 14 97 98 1 67 47 17 17 289 -1 unnamed_device 24.9 MiB 0.02 359 2231 450 1648 133 63.3 MiB 0.02 0.00 1.01096 -29.7579 -1.01096 1.01096 0.97 0.000160234 0.000146886 0.00513688 0.0046748 32 693 15 6.65987e+06 76068 554710. 1919.41 0.83 0.0253655 0.0219417 22834 132086 -1 655 15 337 337 26709 6535 0.900048 0.900048 -34.7693 -0.900048 0 0 701300. 2426.64 0.29 0.02 0.13 -1 -1 0.29 0.00679556 0.00597256 40 -1 15 15 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_014bits.v common 3.67 vpr 63.04 MiB 0.01 6224 -1 -1 1 0.02 -1 -1 33720 -1 -1 6 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64548 29 15 104 105 1 73 50 17 17 289 -1 unnamed_device 24.7 MiB 0.02 217 2442 415 2013 14 63.0 MiB 0.02 0.00 1.02196 -27.4276 -1.02196 1.02196 0.98 0.000179433 0.00016336 0.00560263 0.00512355 26 687 17 6.65987e+06 76068 477104. 1650.88 0.83 0.028571 0.0247435 21682 110474 -1 563 12 350 350 21564 6909 1.04225 1.04225 -37.5086 -1.04225 0 0 585099. 2024.56 0.26 0.02 0.10 -1 -1 0.26 0.00631376 0.00564133 43 -1 16 16 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_015bits.v common 3.54 vpr 63.13 MiB 0.01 6472 -1 -1 1 0.02 -1 -1 33904 -1 -1 7 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64644 31 16 111 112 1 79 54 17 17 289 -1 unnamed_device 24.8 MiB 0.02 430 2706 562 1970 174 63.1 MiB 0.02 0.00 1.26207 -36.2757 -1.26207 1.26207 0.95 0.000210337 0.000193383 0.00594793 0.00544781 26 928 14 6.65987e+06 88746 477104. 1650.88 0.76 0.0291235 0.0253008 21682 110474 -1 832 10 333 333 28671 6808 1.02925 1.02925 -42.9052 -1.02925 0 0 585099. 2024.56 0.26 0.02 0.11 -1 -1 0.26 0.00602686 0.00540136 46 -1 17 17 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_016bits.v common 3.54 vpr 63.25 MiB 0.01 6376 -1 -1 1 0.02 -1 -1 33748 -1 -1 7 33 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64772 33 17 118 119 1 82 57 17 17 289 -1 unnamed_device 24.8 MiB 0.02 458 4635 1102 3468 65 63.3 MiB 0.03 0.00 1.27307 -38.5238 -1.27307 1.27307 0.93 0.000187094 0.000170518 0.00851764 0.00769308 28 897 12 6.65987e+06 88746 500653. 1732.36 0.81 0.031078 0.0269051 21970 115934 -1 809 12 387 387 32096 7500 1.07219 1.07219 -45.8905 -1.07219 0 0 612192. 2118.31 0.27 0.02 0.10 -1 -1 0.27 0.00640119 0.00569747 49 -1 18 18 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_018bits.v common 3.74 vpr 63.25 MiB 0.01 6272 -1 -1 1 0.03 -1 -1 33992 -1 -1 8 37 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64764 37 19 132 133 1 90 64 17 17 289 -1 unnamed_device 24.8 MiB 0.02 369 4636 974 3631 31 63.2 MiB 0.03 0.00 1.29507 -39.4468 -1.29507 1.29507 0.97 0.000228608 0.000208881 0.00942593 0.00861589 32 889 12 6.65987e+06 101424 554710. 1919.41 0.85 0.0353348 0.0309933 22834 132086 -1 767 9 284 284 22772 5999 0.987248 0.987248 -46.9765 -0.987248 0 0 701300. 2426.64 0.31 0.02 0.13 -1 -1 0.31 0.00663539 0.0059864 55 -1 20 20 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_020bits.v common 3.71 vpr 63.62 MiB 0.01 6244 -1 -1 1 0.03 -1 -1 33904 -1 -1 8 41 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65152 41 21 146 147 1 102 70 17 17 289 -1 unnamed_device 25.1 MiB 0.02 556 7558 1705 5702 151 63.6 MiB 0.04 0.00 1.31707 -47.5058 -1.31707 1.31707 0.96 0.000235173 0.000216178 0.0132284 0.0120378 28 1171 21 6.65987e+06 101424 500653. 1732.36 0.85 0.0449226 0.0392562 21970 115934 -1 1035 13 439 439 42060 10122 1.10625 1.10625 -57.1615 -1.10625 0 0 612192. 2118.31 0.27 0.03 0.12 -1 -1 0.27 0.00874231 0.00780067 61 -1 22 22 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_022bits.v common 3.87 vpr 63.63 MiB 0.09 6568 -1 -1 1 0.03 -1 -1 33896 -1 -1 9 45 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65160 45 23 160 161 1 114 77 17 17 289 -1 unnamed_device 25.1 MiB 0.02 418 6434 1440 4935 59 63.6 MiB 0.04 0.00 1.33907 -48.5168 -1.33907 1.33907 0.96 0.000246524 0.000223948 0.0110855 0.0101092 30 1087 20 6.65987e+06 114102 526063. 1820.29 0.87 0.0441888 0.0387171 22546 126617 -1 886 9 371 371 25083 7431 1.04225 1.04225 -57.266 -1.04225 0 0 666494. 2306.21 0.27 0.02 0.13 -1 -1 0.27 0.00719396 0.00650158 67 -1 24 24 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_024bits.v common 3.76 vpr 63.56 MiB 0.01 6568 -1 -1 1 0.03 -1 -1 33812 -1 -1 10 49 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65088 49 25 174 175 1 123 84 17 17 289 -1 unnamed_device 25.0 MiB 0.02 604 7038 1598 5332 108 63.6 MiB 0.04 0.00 1.59018 -57.723 -1.59018 1.59018 0.95 0.000292691 0.000266892 0.0124425 0.0113779 30 1243 16 6.65987e+06 126780 526063. 1820.29 0.84 0.0456975 0.0400666 22546 126617 -1 1075 12 456 456 35104 8665 1.10625 1.10625 -64.1287 -1.10625 0 0 666494. 2306.21 0.30 0.02 0.12 -1 -1 0.30 0.00933826 0.00838194 73 -1 26 26 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_028bits.v common 3.91 vpr 63.80 MiB 0.01 6416 -1 -1 1 0.03 -1 -1 33396 -1 -1 11 57 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65328 57 29 202 203 1 143 97 17 17 289 -1 unnamed_device 25.4 MiB 0.03 753 11641 2550 8864 227 63.8 MiB 0.07 0.00 1.63418 -71.4592 -1.63418 1.63418 0.97 0.000337246 0.00030858 0.0191317 0.0175062 32 1617 20 6.65987e+06 139458 554710. 1919.41 0.91 0.0610642 0.053858 22834 132086 -1 1452 15 695 695 63679 14835 1.21545 1.21545 -79.8689 -1.21545 0 0 701300. 2426.64 0.29 0.03 0.13 -1 -1 0.29 0.0120246 0.0107154 85 -1 30 30 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_032bits.v common 3.91 vpr 63.65 MiB 0.02 6612 -1 -1 1 0.03 -1 -1 33644 -1 -1 13 65 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65180 65 33 230 231 1 164 111 17 17 289 -1 unnamed_device 25.2 MiB 0.03 932 18731 5110 12494 1127 63.7 MiB 0.09 0.00 1.90729 -86.1903 -1.90729 1.90729 0.90 0.000382883 0.000349717 0.028356 0.0259251 32 1789 14 6.65987e+06 164814 554710. 1919.41 0.93 0.0730172 0.064861 22834 132086 -1 1639 18 757 757 68204 15781 1.16799 1.16799 -90.6013 -1.16799 0 0 701300. 2426.64 0.31 0.04 0.13 -1 -1 0.31 0.0157286 0.0139907 97 -1 34 34 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_048bits.v common 4.11 vpr 64.93 MiB 0.01 6660 -1 -1 1 0.03 -1 -1 33912 -1 -1 19 97 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 97 49 342 343 1 246 165 17 17 289 -1 unnamed_device 26.2 MiB 0.04 1573 34517 14446 19945 126 64.9 MiB 0.18 0.00 2.54151 -146.408 -2.54151 2.54151 0.95 0.000595619 0.000548258 0.0465272 0.0427778 30 2837 16 6.65987e+06 240882 526063. 1820.29 1.02 0.117428 0.105565 22546 126617 -1 2502 15 974 974 78519 18181 1.46125 1.46125 -144.744 -1.46125 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.019545 0.0176134 145 -1 50 50 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml adder_064bits.v common 4.45 vpr 65.53 MiB 0.02 6952 -1 -1 1 0.04 -1 -1 33948 -1 -1 25 129 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67100 129 65 454 455 1 328 219 17 17 289 -1 unnamed_device 26.9 MiB 0.06 1957 56234 21004 30967 4263 65.5 MiB 0.22 0.00 3.17573 -211.846 -3.17573 3.17573 0.95 0.000499386 0.000462329 0.0573131 0.0523384 32 4030 22 6.65987e+06 316950 554710. 1919.41 1.13 0.15624 0.140437 22834 132086 -1 3366 16 1468 1468 133819 30982 1.71025 1.71025 -200.85 -1.71025 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0272689 0.0245334 193 -1 66 66 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_003bits.v common 3.08 vpr 63.34 MiB 0.01 6248 -1 -1 1 0.02 -1 -1 33292 -1 -1 1 7 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64864 7 4 27 28 1 12 12 17 17 289 -1 unnamed_device 24.9 MiB 0.02 24 324 81 224 19 63.3 MiB 0.01 0.00 0.712895 -6.47614 -0.712895 0.712895 0.99 4.8547e-05 4.3098e-05 0.00155039 0.00137759 12 113 7 6.95648e+06 14475.7 243793. 843.575 0.43 0.00818358 0.00685629 21730 64085 -1 98 8 36 36 1531 552 0.74674 0.74674 -8.73153 -0.74674 0 0 332735. 1151.33 0.15 0.01 0.07 -1 -1 0.15 0.00235018 0.00212535 5 -1 5 5 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_004bits.v common 3.47 vpr 63.77 MiB 0.01 6112 -1 -1 1 0.02 -1 -1 33672 -1 -1 1 9 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65300 9 5 34 35 1 15 15 17 17 289 -1 unnamed_device 25.3 MiB 0.02 36 393 127 255 11 63.8 MiB 0.01 0.00 0.512442 -8.00067 -0.512442 0.512442 0.98 6.2933e-05 5.6072e-05 0.00178963 0.00160187 24 119 7 6.95648e+06 14475.7 470940. 1629.55 0.70 0.00979234 0.00825501 24034 113901 -1 116 4 24 24 1550 531 0.87204 0.87204 -10.1308 -0.87204 0 0 586450. 2029.24 0.25 0.01 0.11 -1 -1 0.25 0.00221991 0.00205603 7 -1 6 6 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_005bits.v common 3.39 vpr 63.72 MiB 0.01 6380 -1 -1 1 0.02 -1 -1 33260 -1 -1 1 11 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65248 11 6 41 42 1 19 18 17 17 289 -1 unnamed_device 25.2 MiB 0.03 104 179 59 118 2 63.7 MiB 0.00 0.00 0.701895 -11.5351 -0.701895 0.701895 0.99 7.6212e-05 6.8269e-05 0.000968894 0.000880374 22 209 12 6.95648e+06 14475.7 443629. 1535.05 0.64 0.0109036 0.00919521 23458 102101 -1 195 7 51 51 5724 1378 0.74674 0.74674 -13.5399 -0.74674 0 0 531479. 1839.03 0.23 0.01 0.09 -1 -1 0.23 0.00291431 0.00265911 8 -1 7 7 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_006bits.v common 3.67 vpr 63.98 MiB 0.01 6336 -1 -1 1 0.02 -1 -1 33648 -1 -1 2 13 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65512 13 7 48 49 1 25 22 17 17 289 -1 unnamed_device 25.5 MiB 0.04 78 622 147 450 25 64.0 MiB 0.01 0.00 0.87204 -13.0329 -0.87204 0.87204 0.98 8.5712e-05 7.6902e-05 0.00227099 0.00204353 26 190 8 6.95648e+06 28951.4 503264. 1741.40 0.74 0.0130843 0.0111472 24322 120374 -1 165 4 37 37 1821 548 0.87204 0.87204 -15.163 -0.87204 0 0 618332. 2139.56 0.25 0.01 0.11 -1 -1 0.25 0.00238682 0.0022007 10 -1 8 8 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_007bits.v common 3.53 vpr 63.87 MiB 0.01 6308 -1 -1 1 0.02 -1 -1 33344 -1 -1 2 15 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65400 15 8 55 56 1 32 25 17 17 289 -1 unnamed_device 25.3 MiB 0.04 79 673 151 497 25 63.9 MiB 0.01 0.00 0.721132 -14.3949 -0.721132 0.721132 0.98 9.8488e-05 8.8887e-05 0.00231332 0.00209577 22 299 14 6.95648e+06 28951.4 443629. 1535.05 0.66 0.0149749 0.0127271 23458 102101 -1 246 11 145 145 9680 3060 0.955932 0.955932 -19.5759 -0.955932 0 0 531479. 1839.03 0.22 0.01 0.10 -1 -1 0.22 0.00374549 0.00334799 11 -1 9 9 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_008bits.v common 3.81 vpr 63.98 MiB 0.02 6184 -1 -1 1 0.02 -1 -1 33464 -1 -1 2 17 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65520 17 9 62 63 1 37 28 17 17 289 -1 unnamed_device 25.4 MiB 0.04 92 1120 349 692 79 64.0 MiB 0.01 0.00 0.732132 -16.2722 -0.732132 0.732132 0.98 0.000104319 9.4353e-05 0.00344157 0.00312515 32 319 32 6.95648e+06 28951.4 586450. 2029.24 0.87 0.0206966 0.0175404 25474 144626 -1 236 17 190 190 10961 3616 1.05303 1.05303 -20.6933 -1.05303 0 0 744469. 2576.02 0.31 0.02 0.14 -1 -1 0.31 0.00538037 0.00471312 13 -1 10 10 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_009bits.v common 3.62 vpr 63.77 MiB 0.01 6328 -1 -1 1 0.02 -1 -1 33652 -1 -1 2 19 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65296 19 10 69 70 1 44 31 17 17 289 -1 unnamed_device 25.2 MiB 0.04 131 895 196 688 11 63.8 MiB 0.01 0.00 0.749332 -18.8323 -0.749332 0.749332 0.98 0.000124526 0.000112586 0.00292916 0.00267181 26 392 22 6.95648e+06 28951.4 503264. 1741.40 0.76 0.0197864 0.0168097 24322 120374 -1 352 12 233 233 16487 5139 1.07503 1.07503 -26.3077 -1.07503 0 0 618332. 2139.56 0.25 0.01 0.11 -1 -1 0.25 0.00476472 0.00425242 14 -1 11 11 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_010bits.v common 4.24 vpr 63.86 MiB 0.01 6352 -1 -1 1 0.02 -1 -1 33676 -1 -1 2 21 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65396 21 11 76 77 1 49 34 17 17 289 -1 unnamed_device 25.3 MiB 0.04 320 914 178 709 27 63.9 MiB 0.01 0.00 0.771332 -24.8417 -0.771332 0.771332 0.97 0.00012498 0.000113569 0.00277532 0.00253581 34 621 19 6.95648e+06 28951.4 618332. 2139.56 1.28 0.0316843 0.0267228 25762 151098 -1 576 13 260 260 24672 5175 1.10803 1.10803 -32.6696 -1.10803 0 0 787024. 2723.27 0.33 0.02 0.15 -1 -1 0.33 0.00540456 0.00479958 16 -1 12 12 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_011bits.v common 4.64 vpr 63.96 MiB 0.01 6108 -1 -1 1 0.02 -1 -1 33508 -1 -1 3 23 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65492 23 12 83 84 1 55 38 17 17 289 -1 unnamed_device 25.4 MiB 0.04 185 1424 327 1082 15 64.0 MiB 0.01 0.00 0.782332 -23.2609 -0.782332 0.782332 0.99 0.000143229 0.000129706 0.00398274 0.00363384 28 520 25 6.95648e+06 43427 531479. 1839.03 1.77 0.0408229 0.0344939 24610 126494 -1 428 14 292 292 20511 5623 1.12523 1.12523 -31.8716 -1.12523 0 0 648988. 2245.63 0.26 0.02 0.12 -1 -1 0.26 0.00547394 0.00484377 17 -1 13 13 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_012bits.v common 4.32 vpr 63.96 MiB 0.01 6420 -1 -1 1 0.02 -1 -1 33752 -1 -1 3 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65500 25 13 90 91 1 60 41 17 17 289 -1 unnamed_device 25.3 MiB 0.03 334 1651 364 1178 109 64.0 MiB 0.01 0.00 0.793332 -27.9561 -0.793332 0.793332 1.02 0.000157565 0.000143251 0.0043195 0.00394538 34 719 18 6.95648e+06 43427 618332. 2139.56 1.31 0.036098 0.0306186 25762 151098 -1 673 17 317 317 32887 7087 1.14103 1.14103 -37.4365 -1.14103 0 0 787024. 2723.27 0.30 0.02 0.14 -1 -1 0.30 0.00684659 0.00602045 19 -1 14 14 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_013bits.v common 4.32 vpr 64.04 MiB 0.01 6504 -1 -1 1 0.02 -1 -1 33708 -1 -1 3 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65572 27 14 97 98 1 66 44 17 17 289 -1 unnamed_device 25.7 MiB 0.03 359 2431 566 1605 260 64.0 MiB 0.02 0.00 0.826332 -31.4711 -0.826332 0.826332 1.00 0.000168061 0.000152858 0.00593882 0.00541109 34 800 15 6.95648e+06 43427 618332. 2139.56 1.32 0.0391193 0.0333277 25762 151098 -1 734 17 380 380 50684 10332 1.09223 1.09223 -40.743 -1.09223 0 0 787024. 2723.27 0.31 0.02 0.15 -1 -1 0.31 0.00726676 0.00641589 20 -1 15 15 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_014bits.v common 6.81 vpr 64.10 MiB 0.01 6204 -1 -1 1 0.02 -1 -1 33940 -1 -1 3 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65640 29 15 104 105 1 72 47 17 17 289 -1 unnamed_device 25.7 MiB 0.04 205 4583 1352 2211 1020 64.1 MiB 0.03 0.00 0.837332 -29.7842 -0.837332 0.837332 1.01 0.000178311 0.000161604 0.0106317 0.0096627 46 594 27 6.95648e+06 43427 828058. 2865.25 3.66 0.0686531 0.0588593 28066 200906 -1 382 20 438 438 22561 6744 1.05973 1.05973 -33.3942 -1.05973 0 0 1.01997e+06 3529.29 0.40 0.02 0.20 -1 -1 0.40 0.00863713 0.00761314 22 -1 16 16 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_015bits.v common 3.94 vpr 64.10 MiB 0.01 6204 -1 -1 1 0.02 -1 -1 34072 -1 -1 3 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65640 31 16 111 112 1 78 50 17 17 289 -1 unnamed_device 25.7 MiB 0.05 218 4926 1510 3362 54 64.1 MiB 0.03 0.00 1.08336 -32.6216 -1.08336 1.08336 1.01 0.000197186 0.000180018 0.0108883 0.00990876 32 870 26 6.95648e+06 43427 586450. 2029.24 0.93 0.0377559 0.0327183 25474 144626 -1 692 17 488 488 38614 10783 1.29733 1.29733 -46.8647 -1.29733 0 0 744469. 2576.02 0.28 0.02 0.14 -1 -1 0.28 0.00750087 0.00661405 24 -1 17 17 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_016bits.v common 4.04 vpr 64.21 MiB 0.01 6304 -1 -1 1 0.02 -1 -1 33864 -1 -1 4 33 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65752 33 17 118 119 1 81 54 17 17 289 -1 unnamed_device 25.8 MiB 0.07 233 4950 1478 3436 36 64.2 MiB 0.03 0.00 1.09436 -35.2548 -1.09436 1.09436 1.01 0.000199576 0.000180789 0.0108434 0.00988905 32 993 27 6.95648e+06 57902.7 586450. 2029.24 0.96 0.0395587 0.0343236 25474 144626 -1 690 28 537 537 87725 36781 1.28633 1.28633 -50.3125 -1.28633 0 0 744469. 2576.02 0.29 0.04 0.14 -1 -1 0.29 0.0118897 0.0102966 25 -1 18 18 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_018bits.v common 4.58 vpr 64.28 MiB 0.01 6272 -1 -1 1 0.03 -1 -1 33820 -1 -1 4 37 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65820 37 19 132 133 1 87 60 17 17 289 -1 unnamed_device 25.8 MiB 0.08 438 3453 684 2720 49 64.3 MiB 0.02 0.00 1.11636 -44.2779 -1.11636 1.11636 0.99 0.000235917 0.000216255 0.00778076 0.00714424 34 1035 19 6.95648e+06 57902.7 618332. 2139.56 1.50 0.0552853 0.0476067 25762 151098 -1 934 17 524 524 59598 12942 1.22703 1.22703 -57.6083 -1.22703 0 0 787024. 2723.27 0.31 0.03 0.15 -1 -1 0.31 0.00958133 0.00850368 28 -1 20 20 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_020bits.v common 4.06 vpr 64.48 MiB 0.01 6464 -1 -1 1 0.02 -1 -1 33636 -1 -1 4 41 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66032 41 21 146 147 1 96 66 17 17 289 -1 unnamed_device 26.0 MiB 0.09 307 6849 2408 4409 32 64.5 MiB 0.04 0.00 1.13836 -45.3257 -1.13836 1.13836 0.97 0.000254515 0.000232411 0.0138589 0.0126769 28 1121 27 6.95648e+06 57902.7 531479. 1839.03 1.08 0.0512508 0.0449774 24610 126494 -1 912 16 559 559 45009 13702 1.45563 1.45563 -68.0427 -1.45563 0 0 648988. 2245.63 0.27 0.03 0.12 -1 -1 0.27 0.00992491 0.00885313 31 -1 22 22 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_022bits.v common 4.75 vpr 64.28 MiB 0.01 6464 -1 -1 1 0.03 -1 -1 33972 -1 -1 5 45 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65824 45 23 160 161 1 107 73 17 17 289 -1 unnamed_device 25.8 MiB 0.10 602 8433 2196 5788 449 64.3 MiB 0.05 0.00 1.16036 -57.8198 -1.16036 1.16036 0.97 0.000264612 0.000242699 0.0162915 0.0148967 34 1331 46 6.95648e+06 72378.4 618332. 2139.56 1.66 0.0874077 0.0761573 25762 151098 -1 1154 17 535 535 59512 12393 1.26003 1.26003 -70.3424 -1.26003 0 0 787024. 2723.27 0.32 0.03 0.15 -1 -1 0.32 0.0106713 0.00948957 34 -1 24 24 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_024bits.v common 4.81 vpr 64.66 MiB 0.02 6568 -1 -1 1 0.03 -1 -1 33928 -1 -1 5 49 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66212 49 25 174 175 1 119 79 17 17 289 -1 unnamed_device 26.2 MiB 0.10 489 7177 1597 5542 38 64.7 MiB 0.05 0.00 1.18236 -54.8207 -1.18236 1.18236 0.98 0.000291275 0.000266092 0.0137898 0.0126585 34 1293 43 6.95648e+06 72378.4 618332. 2139.56 1.67 0.0894157 0.0777203 25762 151098 -1 1085 16 549 549 46729 11527 1.36333 1.36333 -74.5994 -1.36333 0 0 787024. 2723.27 0.32 0.03 0.15 -1 -1 0.32 0.0113882 0.0101571 37 -1 26 26 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_028bits.v common 7.14 vpr 64.65 MiB 0.01 6440 -1 -1 1 0.03 -1 -1 33628 -1 -1 6 57 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66204 57 29 202 203 1 142 92 17 17 289 -1 unnamed_device 26.0 MiB 0.08 834 13133 3556 8692 885 64.7 MiB 0.06 0.00 1.22636 -75.5182 -1.22636 1.22636 0.95 0.000311142 0.000283734 0.0204598 0.0186582 36 1831 20 6.95648e+06 86854.1 648988. 2245.63 4.04 0.116963 0.101749 26050 158493 -1 1649 17 790 790 101413 20499 1.34803 1.34803 -93.7135 -1.34803 0 0 828058. 2865.25 0.33 0.04 0.14 -1 -1 0.33 0.0129791 0.0115297 43 -1 30 30 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_032bits.v common 7.90 vpr 64.75 MiB 0.02 6596 -1 -1 1 0.03 -1 -1 33828 -1 -1 7 65 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 65 33 230 231 1 162 105 17 17 289 -1 unnamed_device 26.3 MiB 0.09 709 18383 7875 10394 114 64.7 MiB 0.09 0.00 1.50539 -78.192 -1.50539 1.50539 0.99 0.000356203 0.000324974 0.0298585 0.0273199 46 1415 17 6.95648e+06 101330 828058. 2865.25 4.58 0.132305 0.116145 28066 200906 -1 1185 19 831 831 64949 15920 1.41163 1.41163 -91.7374 -1.41163 0 0 1.01997e+06 3529.29 0.41 0.04 0.19 -1 -1 0.41 0.0169645 0.0150753 49 -1 34 34 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_048bits.v common 9.19 vpr 65.77 MiB 0.02 6924 -1 -1 1 0.03 -1 -1 33992 -1 -1 10 97 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67344 97 49 342 343 1 243 156 17 17 289 -1 unnamed_device 27.1 MiB 0.10 1635 29486 10729 16807 1950 65.8 MiB 0.13 0.00 1.91642 -142.742 -1.91642 1.91642 0.98 0.000579182 0.000539146 0.0397328 0.0364012 52 2890 39 6.95648e+06 144757 926341. 3205.33 5.68 0.253348 0.224699 29218 227130 -1 2583 18 1190 1190 129910 25960 1.48273 1.48273 -156.438 -1.48273 0 0 1.14541e+06 3963.36 0.45 0.06 0.23 -1 -1 0.45 0.022074 0.0198097 73 -1 50 50 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml adder_064bits.v common 10.93 vpr 66.19 MiB 0.02 7096 -1 -1 1 0.04 -1 -1 33780 -1 -1 13 129 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67776 129 65 454 455 1 324 207 17 17 289 -1 unnamed_device 27.4 MiB 0.13 1891 51003 20526 28806 1671 66.2 MiB 0.24 0.00 2.32745 -193.82 -2.32745 2.32745 1.00 0.000800806 0.000741118 0.0680484 0.062725 58 3409 25 6.95648e+06 188184 997811. 3452.63 7.09 0.419026 0.377988 30370 251734 -1 3084 18 1527 1527 182857 37631 1.90733 1.90733 -217.121 -1.90733 0 0 1.25153e+06 4330.55 0.50 0.09 0.26 -1 -1 0.50 0.0303587 0.0275287 97 -1 66 66 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_003bits.v common 3.07 vpr 63.48 MiB 0.01 6224 -1 -1 1 0.02 -1 -1 33292 -1 -1 1 7 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65008 7 4 27 28 1 12 12 17 17 289 -1 unnamed_device 25.0 MiB 0.01 24 324 81 224 19 63.5 MiB 0.01 0.00 0.589542 -6.10608 -0.589542 0.589542 0.98 5.0498e-05 4.4859e-05 0.00158372 0.00140911 12 113 7 6.99608e+06 14715.7 243793. 843.575 0.43 0.00856695 0.00721785 21730 64085 -1 98 8 37 37 1580 565 0.74674 0.74674 -8.36148 -0.74674 0 0 332735. 1151.33 0.15 0.01 0.07 -1 -1 0.15 0.00228911 0.00208019 5 -1 5 5 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_004bits.v common 3.44 vpr 63.55 MiB 0.01 6140 -1 -1 1 0.02 -1 -1 33300 -1 -1 1 9 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65072 9 5 34 35 1 15 15 17 17 289 -1 unnamed_device 25.0 MiB 0.01 32 339 93 236 10 63.5 MiB 0.01 0.00 0.49614 -7.75457 -0.49614 0.49614 0.96 6.6568e-05 5.9533e-05 0.00157162 0.00140486 24 130 6 6.99608e+06 14715.7 470940. 1629.55 0.70 0.00956062 0.0080645 24034 113901 -1 119 6 34 34 2566 840 0.74674 0.74674 -10.1353 -0.74674 0 0 586450. 2029.24 0.23 0.01 0.11 -1 -1 0.23 0.00223932 0.00205434 7 -1 6 6 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_005bits.v common 3.11 vpr 63.65 MiB 0.01 6168 -1 -1 1 0.03 -1 -1 33572 -1 -1 1 11 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65176 11 6 41 42 1 19 18 17 17 289 -1 unnamed_device 25.2 MiB 0.01 108 179 62 114 3 63.6 MiB 0.00 0.00 0.87204 -12.1794 -0.87204 0.87204 0.97 9.187e-05 8.3634e-05 0.00100328 0.000912221 16 184 10 6.99608e+06 14715.7 332735. 1151.33 0.50 0.00446957 0.00397866 22306 75877 -1 183 12 61 61 3531 1074 0.87204 0.87204 -13.8083 -0.87204 0 0 414966. 1435.87 0.16 0.01 0.08 -1 -1 0.16 0.00336008 0.00301176 8 -1 7 7 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_006bits.v common 3.36 vpr 63.53 MiB 0.01 6156 -1 -1 1 0.02 -1 -1 33548 -1 -1 2 13 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65052 13 7 48 49 1 26 22 17 17 289 -1 unnamed_device 25.1 MiB 0.01 64 592 141 437 14 63.5 MiB 0.01 0.00 0.710132 -12.2779 -0.710132 0.710132 0.96 8.6302e-05 7.795e-05 0.00216089 0.00195418 20 222 14 6.99608e+06 29431.4 414966. 1435.87 0.63 0.0137462 0.0116454 23170 95770 -1 187 8 93 93 5318 1654 0.802432 0.802432 -15.9459 -0.802432 0 0 503264. 1741.40 0.22 0.01 0.10 -1 -1 0.22 0.0030697 0.00277909 10 -1 8 8 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_007bits.v common 3.53 vpr 63.53 MiB 0.01 6240 -1 -1 1 0.02 -1 -1 33720 -1 -1 2 15 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65052 15 8 55 56 1 31 25 17 17 289 -1 unnamed_device 25.0 MiB 0.01 82 817 187 607 23 63.5 MiB 0.01 0.00 0.721132 -14.5202 -0.721132 0.721132 0.98 9.6883e-05 8.707e-05 0.00269355 0.00243418 26 230 10 6.99608e+06 29431.4 503264. 1741.40 0.73 0.0148094 0.012634 24322 120374 -1 237 9 104 104 6781 2199 0.940679 0.940679 -18.9148 -0.940679 0 0 618332. 2139.56 0.26 0.01 0.11 -1 -1 0.26 0.00327215 0.00295257 11 -1 9 9 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_008bits.v common 3.64 vpr 63.64 MiB 0.01 6208 -1 -1 1 0.02 -1 -1 33756 -1 -1 2 17 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65168 17 9 62 63 1 36 28 17 17 289 -1 unnamed_device 25.1 MiB 0.01 93 1078 347 682 49 63.6 MiB 0.01 0.00 0.710132 -15.6072 -0.710132 0.710132 0.97 0.000108298 9.7961e-05 0.00334711 0.00304051 28 301 26 6.99608e+06 29431.4 531479. 1839.03 0.81 0.0197054 0.0167493 24610 126494 -1 295 27 292 292 20223 5947 1.21133 1.21133 -22.4987 -1.21133 0 0 648988. 2245.63 0.27 0.02 0.12 -1 -1 0.27 0.00712894 0.00614212 13 -1 10 10 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_009bits.v common 3.49 vpr 63.70 MiB 0.01 6332 -1 -1 1 0.02 -1 -1 33692 -1 -1 2 19 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65232 19 10 69 70 1 43 31 17 17 289 -1 unnamed_device 25.2 MiB 0.01 131 799 184 596 19 63.7 MiB 0.01 0.00 0.732132 -18.2446 -0.732132 0.732132 0.97 0.000123837 0.000111513 0.00263541 0.00239155 26 400 17 6.99608e+06 29431.4 503264. 1741.40 0.72 0.017473 0.0147638 24322 120374 -1 349 14 223 223 13402 4184 1.22233 1.22233 -27.0719 -1.22233 0 0 618332. 2139.56 0.26 0.01 0.11 -1 -1 0.26 0.00517528 0.00456685 14 -1 11 11 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_010bits.v common 3.59 vpr 63.80 MiB 0.01 6348 -1 -1 1 0.02 -1 -1 33464 -1 -1 2 21 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65332 21 11 76 77 1 48 34 17 17 289 -1 unnamed_device 25.3 MiB 0.02 191 1354 325 980 49 63.8 MiB 0.01 0.00 0.959892 -22.5137 -0.959892 0.959892 0.99 0.000108737 9.6859e-05 0.00352966 0.00320946 26 492 14 6.99608e+06 29431.4 503264. 1741.40 0.75 0.0202657 0.0174151 24322 120374 -1 428 10 185 185 14726 3868 1.08519 1.08519 -29.3252 -1.08519 0 0 618332. 2139.56 0.25 0.01 0.12 -1 -1 0.25 0.00452223 0.00405289 16 -1 12 12 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_011bits.v common 3.68 vpr 63.86 MiB 0.01 6360 -1 -1 1 0.02 -1 -1 33716 -1 -1 3 23 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65392 23 12 83 84 1 54 38 17 17 289 -1 unnamed_device 25.3 MiB 0.02 176 1550 345 1174 31 63.9 MiB 0.01 0.00 0.754132 -22.9095 -0.754132 0.754132 1.00 0.000147655 0.000133956 0.00387391 0.00352409 28 486 16 6.99608e+06 44147 531479. 1839.03 0.80 0.0219344 0.0188049 24610 126494 -1 463 13 245 245 15905 5226 1.16733 1.16733 -31.7776 -1.16733 0 0 648988. 2245.63 0.28 0.02 0.13 -1 -1 0.28 0.00550183 0.0048643 17 -1 13 13 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_012bits.v common 4.24 vpr 63.77 MiB 0.01 6448 -1 -1 1 0.02 -1 -1 33632 -1 -1 3 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65296 25 13 90 91 1 60 41 17 17 289 -1 unnamed_device 25.2 MiB 0.02 322 1651 401 1210 40 63.8 MiB 0.01 0.00 0.776132 -28.4026 -0.776132 0.776132 0.98 0.000152569 0.000138753 0.00440656 0.00402881 34 721 24 6.99608e+06 44147 618332. 2139.56 1.31 0.0381465 0.032337 25762 151098 -1 639 15 303 303 31546 6977 1.08603 1.08603 -37.3748 -1.08603 0 0 787024. 2723.27 0.30 0.02 0.14 -1 -1 0.30 0.00630626 0.00554918 19 -1 14 14 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_013bits.v common 4.32 vpr 63.88 MiB 0.01 6508 -1 -1 1 0.02 -1 -1 33548 -1 -1 3 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65412 27 14 97 98 1 66 44 17 17 289 -1 unnamed_device 25.3 MiB 0.02 345 2277 529 1543 205 63.9 MiB 0.02 0.00 0.787132 -29.3325 -0.787132 0.787132 0.99 0.00016854 0.000153139 0.00542657 0.00494284 34 777 19 6.99608e+06 44147 618332. 2139.56 1.34 0.0398746 0.0339863 25762 151098 -1 691 16 350 350 40665 8574 1.21133 1.21133 -39.5202 -1.21133 0 0 787024. 2723.27 0.32 0.02 0.15 -1 -1 0.32 0.0069904 0.00618201 20 -1 15 15 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_014bits.v common 4.50 vpr 63.93 MiB 0.01 6236 -1 -1 1 0.02 -1 -1 33920 -1 -1 3 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65460 29 15 104 105 1 72 47 17 17 289 -1 unnamed_device 25.3 MiB 0.02 222 4331 1526 2430 375 63.9 MiB 0.02 0.00 0.809132 -29.0055 -0.809132 0.809132 0.94 0.000152653 0.00013717 0.0086746 0.00781014 34 790 47 6.99608e+06 44147 618332. 2139.56 1.64 0.056126 0.0479789 25762 151098 -1 576 19 467 467 36394 9740 1.11903 1.11903 -39.0327 -1.11903 0 0 787024. 2723.27 0.31 0.02 0.14 -1 -1 0.31 0.0080965 0.00705596 22 -1 16 16 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_015bits.v common 3.88 vpr 64.10 MiB 0.01 6320 -1 -1 1 0.02 -1 -1 33964 -1 -1 3 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65640 31 16 111 112 1 78 50 17 17 289 -1 unnamed_device 25.7 MiB 0.02 218 4926 1454 3408 64 64.1 MiB 0.03 0.00 1.05516 -32.1906 -1.05516 1.05516 1.00 0.000169265 0.000153843 0.0101214 0.00922976 30 898 16 6.99608e+06 44147 556674. 1926.21 0.92 0.0337136 0.0294006 25186 138497 -1 680 16 471 471 33593 9754 1.23133 1.23133 -43.9367 -1.23133 0 0 706193. 2443.58 0.29 0.02 0.13 -1 -1 0.29 0.00784297 0.00694844 24 -1 17 17 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_016bits.v common 4.53 vpr 64.12 MiB 0.01 6388 -1 -1 1 0.02 -1 -1 33760 -1 -1 4 33 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65664 33 17 118 119 1 81 54 17 17 289 -1 unnamed_device 25.7 MiB 0.02 354 5052 1238 3400 414 64.1 MiB 0.03 0.00 1.06616 -34.1691 -1.06616 1.06616 1.00 0.000200713 0.000182841 0.0108957 0.0099649 34 974 23 6.99608e+06 58862.7 618332. 2139.56 1.52 0.056516 0.0487945 25762 151098 -1 831 17 467 467 51134 11449 1.27533 1.27533 -49.721 -1.27533 0 0 787024. 2723.27 0.32 0.03 0.15 -1 -1 0.32 0.00865154 0.00762123 25 -1 18 18 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_018bits.v common 4.57 vpr 64.12 MiB 0.01 6200 -1 -1 1 0.03 -1 -1 33676 -1 -1 4 37 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65664 37 19 132 133 1 87 60 17 17 289 -1 unnamed_device 25.7 MiB 0.02 399 4038 929 3085 24 64.1 MiB 0.03 0.00 1.08816 -42.7599 -1.08816 1.08816 1.01 0.000222961 0.000203383 0.00868453 0.00795371 34 1018 20 6.99608e+06 58862.7 618332. 2139.56 1.52 0.0580346 0.0499307 25762 151098 -1 876 17 488 488 49976 11313 1.37863 1.37863 -55.3451 -1.37863 0 0 787024. 2723.27 0.32 0.03 0.15 -1 -1 0.32 0.00923252 0.00817046 28 -1 20 20 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_020bits.v common 5.49 vpr 63.97 MiB 0.01 6564 -1 -1 1 0.03 -1 -1 33808 -1 -1 4 41 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65508 41 21 146 147 1 94 66 17 17 289 -1 unnamed_device 25.5 MiB 0.02 302 6849 1974 4842 33 64.0 MiB 0.04 0.00 1.11016 -44.5031 -1.11016 1.11016 1.00 0.000240305 0.000218652 0.0139623 0.0127755 28 1065 48 6.99608e+06 58862.7 531479. 1839.03 2.53 0.0870155 0.0752103 24610 126494 -1 854 13 484 484 37827 11572 1.49963 1.49963 -66.1076 -1.49963 0 0 648988. 2245.63 0.26 0.02 0.12 -1 -1 0.26 0.00817655 0.00729742 31 -1 22 22 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_022bits.v common 5.09 vpr 64.33 MiB 0.01 6352 -1 -1 1 0.03 -1 -1 34008 -1 -1 5 45 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65876 45 23 160 161 1 106 73 17 17 289 -1 unnamed_device 25.9 MiB 0.03 707 10409 3354 6270 785 64.3 MiB 0.05 0.00 1.13216 -58.1938 -1.13216 1.13216 1.00 0.000271477 0.000248027 0.019997 0.0182952 34 1355 44 6.99608e+06 73578.4 618332. 2139.56 1.99 0.0992253 0.0872829 25762 151098 -1 1213 16 533 533 54881 11426 1.29303 1.29303 -73.6397 -1.29303 0 0 787024. 2723.27 0.32 0.03 0.15 -1 -1 0.32 0.0110455 0.00983915 34 -1 24 24 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_024bits.v common 4.60 vpr 64.19 MiB 0.01 6608 -1 -1 1 0.03 -1 -1 33864 -1 -1 5 49 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65728 49 25 174 175 1 118 79 17 17 289 -1 unnamed_device 25.7 MiB 0.05 463 10050 3014 6979 57 64.2 MiB 0.05 0.00 1.15416 -53.8853 -1.15416 1.15416 0.99 0.00028654 0.00026117 0.0186435 0.01705 32 1307 48 6.99608e+06 73578.4 586450. 2029.24 1.49 0.0819873 0.0714138 25474 144626 -1 1016 31 636 636 116005 54479 1.38533 1.38533 -74.0381 -1.38533 0 0 744469. 2576.02 0.29 0.06 0.14 -1 -1 0.29 0.0174239 0.0152628 37 -1 26 26 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_028bits.v common 4.83 vpr 64.34 MiB 0.02 6648 -1 -1 1 0.03 -1 -1 33656 -1 -1 6 57 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65888 57 29 202 203 1 141 92 17 17 289 -1 unnamed_device 25.8 MiB 0.03 850 12305 3295 8052 958 64.3 MiB 0.06 0.00 1.19816 -75.4724 -1.19816 1.19816 0.99 0.000331746 0.000301353 0.0196691 0.0180009 38 1731 23 6.99608e+06 88294.1 678818. 2348.85 1.72 0.0785318 0.0691356 26626 170182 -1 1603 20 740 740 88871 17859 1.48433 1.48433 -97.0208 -1.48433 0 0 902133. 3121.57 0.33 0.04 0.17 -1 -1 0.33 0.014408 0.0128135 43 -1 30 30 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_032bits.v common 5.48 vpr 64.65 MiB 0.01 6484 -1 -1 1 0.03 -1 -1 33684 -1 -1 7 65 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 65 33 230 231 1 162 105 17 17 289 -1 unnamed_device 26.3 MiB 0.04 934 18630 7266 10377 987 64.6 MiB 0.09 0.00 1.47719 -84.9249 -1.47719 1.47719 0.97 0.000374593 0.00034201 0.0304068 0.027795 34 2146 40 6.99608e+06 103010 618332. 2139.56 2.34 0.111281 0.0983894 25762 151098 -1 1811 23 870 870 179530 63153 1.42303 1.42303 -106.06 -1.42303 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.018868 0.0166751 49 -1 34 34 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_048bits.v common 8.51 vpr 65.56 MiB 0.02 6616 -1 -1 1 0.03 -1 -1 34076 -1 -1 10 97 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67132 97 49 342 343 1 243 156 17 17 289 -1 unnamed_device 27.0 MiB 0.06 1574 29486 9813 17984 1689 65.6 MiB 0.13 0.00 1.88822 -140.754 -1.88822 1.88822 1.00 0.000550659 0.000501386 0.0408191 0.037367 46 2905 27 6.99608e+06 147157 828058. 2865.25 5.14 0.246514 0.218001 28066 200906 -1 2527 17 1101 1101 115439 23629 1.40768 1.40768 -152.437 -1.40768 0 0 1.01997e+06 3529.29 0.38 0.06 0.20 -1 -1 0.38 0.0225919 0.0204074 73 -1 50 50 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml adder_064bits.v common 10.17 vpr 66.23 MiB 0.02 6988 -1 -1 1 0.04 -1 -1 34044 -1 -1 13 129 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67816 129 65 454 455 1 324 207 17 17 289 -1 unnamed_device 27.4 MiB 0.07 1879 51003 20973 28695 1335 66.2 MiB 0.23 0.00 2.29925 -191.38 -2.29925 2.29925 1.00 0.000752344 0.000691763 0.0637013 0.0583728 56 3504 44 6.99608e+06 191304 973134. 3367.25 6.45 0.347021 0.310546 29794 239141 -1 3123 19 1474 1474 182873 38046 1.88063 1.88063 -215.91 -1.88063 0 0 1.19926e+06 4149.71 0.47 0.09 0.24 -1 -1 0.47 0.0329122 0.0299201 97 -1 66 66 0 0 + fixed_k6_frac_N8_22nm.xml adder_003bits.v common 3.27 vpr 62.98 MiB 0.01 6268 -1 -1 1 0.06 -1 -1 35620 -1 -1 1 7 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64488 7 4 21 25 1 11 12 17 17 289 -1 unnamed_device 24.6 MiB 0.01 29 246 58 175 13 63.0 MiB 0.00 0.00 0.593895 -6.43271 -0.593895 0.593895 0.98 5.0797e-05 4.4819e-05 0.00124361 0.00109894 18 105 6 6.79088e+06 13472 376052. 1301.22 0.52 0.00351333 0.00314866 22222 88205 -1 94 4 21 21 1320 445 0.834592 0.834592 -8.31221 -0.834592 0 0 470940. 1629.55 0.20 0.00 0.09 -1 -1 0.20 0.00209436 0.00196707 6 4 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_004bits.v common 3.48 vpr 63.09 MiB 0.01 5976 -1 -1 2 0.06 -1 -1 36260 -1 -1 1 9 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64600 9 5 28 33 1 16 15 17 17 289 -1 unnamed_device 24.7 MiB 0.01 35 375 98 261 16 63.1 MiB 0.01 0.00 0.883748 -8.8411 -0.883748 0.883748 0.98 6.2932e-05 5.5343e-05 0.00168518 0.00151267 24 128 6 6.79088e+06 13472 470940. 1629.55 0.69 0.00965433 0.00815212 23374 113417 -1 118 6 34 34 2552 791 0.883748 0.883748 -10.9712 -0.883748 0 0 586450. 2029.24 0.23 0.01 0.11 -1 -1 0.23 0.00239795 0.00218589 8 6 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_005bits.v common 3.21 vpr 63.20 MiB 0.01 6208 -1 -1 2 0.06 -1 -1 35324 -1 -1 2 11 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64720 11 6 34 40 1 23 19 17 17 289 -1 unnamed_device 24.7 MiB 0.01 70 244 69 165 10 63.2 MiB 0.00 0.00 1.02368 -11.8337 -1.02368 1.02368 0.98 7.6651e-05 6.9673e-05 0.00105812 0.000963984 18 184 8 6.79088e+06 26944 376052. 1301.22 0.55 0.00427435 0.00384203 22222 88205 -1 158 3 41 44 1950 678 1.02368 1.02368 -14.0891 -1.02368 0 0 470940. 1629.55 0.20 0.01 0.09 -1 -1 0.20 0.00221737 0.0020514 10 7 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_006bits.v common 3.42 vpr 62.98 MiB 0.01 6084 -1 -1 3 0.06 -1 -1 35876 -1 -1 2 13 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64492 13 7 41 48 1 30 22 17 17 289 -1 unnamed_device 24.6 MiB 0.01 86 532 124 399 9 63.0 MiB 0.01 0.00 1.05944 -13.8628 -1.05944 1.05944 0.97 8.7306e-05 7.7873e-05 0.00189651 0.00171409 24 257 10 6.79088e+06 26944 470940. 1629.55 0.65 0.0117829 0.00995798 23374 113417 -1 236 9 95 98 5888 1804 1.05944 1.05944 -17.7471 -1.05944 0 0 586450. 2029.24 0.23 0.01 0.10 -1 -1 0.23 0.00318695 0.00287072 11 9 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_007bits.v common 3.54 vpr 62.80 MiB 0.01 6036 -1 -1 3 0.06 -1 -1 35768 -1 -1 2 15 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64304 15 8 47 55 1 36 25 17 17 289 -1 unnamed_device 24.4 MiB 0.01 107 925 211 649 65 62.8 MiB 0.01 0.00 1.35273 -16.9331 -1.35273 1.35273 0.99 8.6478e-05 7.8249e-05 0.00286827 0.00260988 26 262 9 6.79088e+06 26944 503264. 1741.40 0.72 0.0144688 0.01236 23662 119890 -1 234 7 100 112 4683 1678 1.35273 1.35273 -20.9896 -1.35273 0 0 618332. 2139.56 0.25 0.01 0.10 -1 -1 0.25 0.00328636 0.00298872 13 10 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_008bits.v common 3.62 vpr 63.16 MiB 0.01 6188 -1 -1 3 0.06 -1 -1 35628 -1 -1 2 17 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64676 17 9 56 65 1 43 28 17 17 289 -1 unnamed_device 24.7 MiB 0.04 123 952 203 740 9 63.2 MiB 0.01 0.00 1.27433 -19.2362 -1.27433 1.27433 0.98 0.000119115 0.000107749 0.00340138 0.00308637 26 422 20 6.79088e+06 26944 503264. 1741.40 0.76 0.0198972 0.0169615 23662 119890 -1 347 10 164 177 9026 2832 1.27433 1.27433 -23.7939 -1.27433 0 0 618332. 2139.56 0.25 0.01 0.12 -1 -1 0.25 0.00435601 0.00391183 16 14 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_009bits.v common 4.16 vpr 62.84 MiB 0.01 6136 -1 -1 4 0.06 -1 -1 35720 -1 -1 3 19 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64348 19 10 60 70 1 49 32 17 17 289 -1 unnamed_device 24.3 MiB 0.05 132 1382 400 790 192 62.8 MiB 0.01 0.00 1.1736 -20.5006 -1.1736 1.1736 0.94 0.000125969 0.000113694 0.00410537 0.00373148 34 429 40 6.79088e+06 40416 618332. 2139.56 1.28 0.0351124 0.0295046 25102 150614 -1 353 11 224 237 11545 3891 1.1736 1.1736 -24.5963 -1.1736 0 0 787024. 2723.27 0.31 0.01 0.15 -1 -1 0.31 0.00457651 0.00407799 17 13 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_010bits.v common 3.91 vpr 62.88 MiB 0.01 6252 -1 -1 4 0.07 -1 -1 35684 -1 -1 3 21 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64384 21 11 69 80 1 55 35 17 17 289 -1 unnamed_device 24.3 MiB 0.18 261 1232 245 969 18 62.9 MiB 0.01 0.00 1.60338 -29.2654 -1.60338 1.60338 0.99 0.000147571 0.000133621 0.0038984 0.00355732 30 626 11 6.79088e+06 40416 556674. 1926.21 0.85 0.0208559 0.0179148 24526 138013 -1 545 11 209 254 21230 4830 1.60338 1.60338 -33.7762 -1.60338 0 0 706193. 2443.58 0.30 0.01 0.13 -1 -1 0.30 0.00524327 0.00469982 21 17 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_011bits.v common 3.86 vpr 63.02 MiB 0.01 6212 -1 -1 5 0.07 -1 -1 35772 -1 -1 3 23 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64528 23 12 73 85 1 60 38 17 17 289 -1 unnamed_device 24.5 MiB 0.08 226 1613 333 1267 13 63.0 MiB 0.01 0.00 1.8114 -30.2898 -1.8114 1.8114 1.00 0.000159484 0.000144491 0.00468336 0.00427063 30 616 20 6.79088e+06 40416 556674. 1926.21 0.85 0.0254395 0.0219311 24526 138013 -1 501 10 211 254 13087 3561 1.8114 1.8114 -36.1789 -1.8114 0 0 706193. 2443.58 0.29 0.01 0.13 -1 -1 0.29 0.00512795 0.00461364 20 16 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_012bits.v common 3.93 vpr 63.36 MiB 0.01 6136 -1 -1 5 0.06 -1 -1 36224 -1 -1 3 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64876 25 13 82 95 1 66 41 17 17 289 -1 unnamed_device 24.8 MiB 0.19 332 1581 312 1253 16 63.4 MiB 0.01 0.00 1.85403 -36.4745 -1.85403 1.85403 0.99 0.000169399 0.000153445 0.00468397 0.00427199 30 741 11 6.79088e+06 40416 556674. 1926.21 0.83 0.0240981 0.0208222 24526 138013 -1 677 11 238 267 21985 5020 1.85403 1.85403 -42.1991 -1.85403 0 0 706193. 2443.58 0.29 0.02 0.13 -1 -1 0.29 0.00594514 0.00529559 24 20 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_013bits.v common 4.01 vpr 63.49 MiB 0.01 6284 -1 -1 5 0.06 -1 -1 36152 -1 -1 4 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65016 27 14 91 105 1 72 45 17 17 289 -1 unnamed_device 24.9 MiB 0.30 278 2205 441 1721 43 63.5 MiB 0.02 0.00 1.81483 -36.6362 -1.81483 1.81483 0.96 0.000180046 0.00016237 0.00599947 0.00544392 30 735 13 6.79088e+06 53888 556674. 1926.21 0.86 0.028343 0.0245086 24526 138013 -1 613 9 238 293 15062 4031 1.81483 1.81483 -42.6114 -1.81483 0 0 706193. 2443.58 0.29 0.01 0.12 -1 -1 0.29 0.00542735 0.00490898 27 24 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_014bits.v common 4.72 vpr 63.57 MiB 0.01 6116 -1 -1 6 0.07 -1 -1 35844 -1 -1 4 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65092 29 15 95 110 1 77 48 17 17 289 -1 unnamed_device 25.0 MiB 0.23 276 3441 799 2508 134 63.6 MiB 0.02 0.00 2.06549 -40.1669 -2.06549 2.06549 1.01 0.000192579 0.000174345 0.00868391 0.00789553 34 799 17 6.79088e+06 53888 618332. 2139.56 1.48 0.0509983 0.0436936 25102 150614 -1 654 13 370 422 29585 8434 2.11582 2.11582 -48.1391 -2.11582 0 0 787024. 2723.27 0.30 0.02 0.15 -1 -1 0.30 0.00684307 0.00608052 28 23 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_015bits.v common 4.54 vpr 63.25 MiB 0.01 6168 -1 -1 6 0.07 -1 -1 35592 -1 -1 5 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64768 31 16 104 120 1 83 52 17 17 289 -1 unnamed_device 24.9 MiB 0.64 330 4708 1132 3534 42 63.2 MiB 0.03 0.00 2.28038 -44.792 -2.28038 2.28038 1.00 0.000212507 0.000192651 0.0114724 0.0104651 30 775 15 6.79088e+06 67360 556674. 1926.21 0.92 0.0381926 0.0334306 24526 138013 -1 631 12 289 404 21766 5931 2.28038 2.28038 -50.9317 -2.28038 0 0 706193. 2443.58 0.29 0.02 0.13 -1 -1 0.29 0.00751023 0.00673353 32 27 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_016bits.v common 4.49 vpr 63.58 MiB 0.01 6156 -1 -1 7 0.08 -1 -1 36164 -1 -1 4 33 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65104 33 17 108 125 1 88 54 17 17 289 -1 unnamed_device 25.2 MiB 0.63 301 2808 571 2199 38 63.6 MiB 0.02 0.00 2.39454 -48.3896 -2.39454 2.39454 1.02 0.000221137 0.000201253 0.00727152 0.00663338 30 946 20 6.79088e+06 53888 556674. 1926.21 0.87 0.0362912 0.0315172 24526 138013 -1 734 11 340 404 22595 6529 2.51984 2.51984 -58.7895 -2.51984 0 0 706193. 2443.58 0.29 0.02 0.13 -1 -1 0.29 0.00748876 0.00674776 32 26 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_018bits.v common 5.49 vpr 63.73 MiB 0.01 6196 -1 -1 7 0.08 -1 -1 35868 -1 -1 5 37 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65264 37 19 127 146 1 100 61 17 17 289 -1 unnamed_device 25.2 MiB 1.17 432 3181 644 2507 30 63.7 MiB 0.02 0.00 2.57023 -58.6225 -2.57023 2.57023 0.95 0.000257934 0.000234515 0.008093 0.00735578 34 1112 12 6.79088e+06 67360 618332. 2139.56 1.38 0.0598698 0.0517691 25102 150614 -1 939 14 403 572 34704 8909 2.62057 2.62057 -67.6049 -2.62057 0 0 787024. 2723.27 0.30 0.02 0.15 -1 -1 0.30 0.00929888 0.00832491 37 35 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_020bits.v common 5.39 vpr 63.75 MiB 0.01 6364 -1 -1 8 0.08 -1 -1 35532 -1 -1 6 41 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65280 41 21 139 160 1 110 68 17 17 289 -1 unnamed_device 25.3 MiB 0.80 482 7382 1882 4823 677 63.8 MiB 0.04 0.00 2.60599 -67.2849 -2.60599 2.60599 1.01 0.000302469 0.00027703 0.0163137 0.0148525 34 1283 34 6.79088e+06 80832 618332. 2139.56 1.55 0.0820685 0.0712173 25102 150614 -1 1092 10 421 560 36482 9955 2.73129 2.73129 -80.7781 -2.73129 0 0 787024. 2723.27 0.30 0.02 0.14 -1 -1 0.30 0.0083314 0.00756809 42 37 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_022bits.v common 5.71 vpr 63.86 MiB 0.01 6368 -1 -1 9 0.08 -1 -1 36048 -1 -1 6 45 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65396 45 23 152 175 1 121 74 17 17 289 -1 unnamed_device 25.3 MiB 1.29 576 9839 3177 5719 943 63.9 MiB 0.05 0.00 3.20027 -77.2649 -3.20027 3.20027 0.98 0.000295081 0.00026693 0.0190257 0.0173504 34 1379 13 6.79088e+06 80832 618332. 2139.56 1.37 0.0788775 0.0687841 25102 150614 -1 1199 12 432 606 38986 9408 3.20027 3.20027 -90.2177 -3.20027 0 0 787024. 2723.27 0.31 0.03 0.15 -1 -1 0.31 0.010271 0.0092346 45 40 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_024bits.v common 6.15 vpr 63.75 MiB 0.01 6500 -1 -1 10 0.08 -1 -1 36008 -1 -1 6 49 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65280 49 25 165 190 1 131 80 17 17 289 -1 unnamed_device 25.2 MiB 1.31 794 11776 3404 7531 841 63.8 MiB 0.06 0.00 3.40059 -95.3306 -3.40059 3.40059 0.98 0.000339729 0.000309446 0.0237801 0.0216733 34 1736 39 6.79088e+06 80832 618332. 2139.56 1.81 0.10756 0.0942438 25102 150614 -1 1487 11 486 663 51504 11449 3.40059 3.40059 -105.731 -3.40059 0 0 787024. 2723.27 0.30 0.03 0.14 -1 -1 0.30 0.00995681 0.00900816 48 43 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_028bits.v common 9.03 vpr 63.96 MiB 0.01 6532 -1 -1 11 0.09 -1 -1 36328 -1 -1 9 57 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65492 57 29 199 228 1 156 95 17 17 289 -1 unnamed_device 25.6 MiB 2.63 611 10895 2598 7995 302 64.0 MiB 0.06 0.00 3.86613 -110.029 -3.86613 3.86613 0.99 0.000387808 0.000352347 0.021557 0.0196537 30 1652 17 6.79088e+06 121248 556674. 1926.21 3.34 0.138389 0.120526 24526 138013 -1 1324 13 576 761 45349 12654 4.20627 4.20627 -129.576 -4.20627 0 0 706193. 2443.58 0.29 0.03 0.13 -1 -1 0.29 0.0136599 0.0123016 59 57 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_032bits.v common 10.10 vpr 64.04 MiB 0.01 6616 -1 -1 13 0.10 -1 -1 35804 -1 -1 9 65 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65576 65 33 224 257 1 176 107 17 17 289 -1 unnamed_device 25.6 MiB 1.57 649 19335 8111 11177 47 64.0 MiB 0.09 0.00 4.41008 -129.233 -4.41008 4.41008 0.95 0.000409924 0.00036065 0.0344216 0.0312327 52 1304 27 6.79088e+06 121248 926341. 3205.33 5.19 0.16443 0.14408 28558 226646 -1 1000 11 606 789 36639 10619 4.54651 4.54651 -137.121 -4.54651 0 0 1.14541e+06 3963.36 0.48 0.03 0.22 -1 -1 0.48 0.0141299 0.0128239 65 62 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_048bits.v common 9.62 vpr 65.20 MiB 0.02 6648 -1 -1 19 0.12 -1 -1 36328 -1 -1 14 97 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66768 97 49 340 389 1 266 160 17 17 289 -1 unnamed_device 26.4 MiB 1.82 1497 33578 11143 19771 2664 65.2 MiB 0.15 0.00 6.45794 -265.494 -6.45794 6.45794 1.01 0.000636535 0.000580317 0.0539721 0.0492808 34 3352 45 6.79088e+06 188608 618332. 2139.56 4.48 0.341041 0.305642 25102 150614 -1 2895 13 1080 1473 113624 26806 6.58324 6.58324 -293.687 -6.58324 0 0 787024. 2723.27 0.33 0.06 0.15 -1 -1 0.33 0.0245115 0.0223898 100 98 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml adder_064bits.v common 13.10 vpr 65.61 MiB 0.02 6840 -1 -1 26 0.14 -1 -1 35932 -1 -1 19 129 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67184 129 65 454 519 1 356 213 17 17 289 -1 unnamed_device 26.9 MiB 5.62 1700 49108 18531 27982 2595 65.6 MiB 0.20 0.00 8.62761 -411.698 -8.62761 8.62761 0.95 0.000809559 0.000736439 0.068006 0.0619693 36 3722 30 6.79088e+06 255968 648988. 2245.63 4.07 0.29857 0.266368 25390 158009 -1 3223 12 1174 1520 93474 23820 8.75291 8.75291 -442.321 -8.75291 0 0 828058. 2865.25 0.33 0.06 0.15 -1 -1 0.33 0.0282589 0.0258634 133 132 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml adder_003bits.v common 3.25 vpr 63.59 MiB 0.01 6364 -1 -1 1 0.02 -1 -1 33648 -1 -1 1 7 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65112 7 4 27 28 1 13 12 17 17 289 -1 unnamed_device 25.2 MiB 0.02 23 259 59 179 21 63.6 MiB 0.00 0.00 0.49614 -5.96402 -0.49614 0.49614 0.96 5.4108e-05 4.6535e-05 0.00136761 0.00120747 18 93 6 6.87369e+06 13973.8 376052. 1301.22 0.52 0.00361924 0.00323523 22882 88689 -1 84 4 23 23 1416 490 0.74674 0.74674 -7.84352 -0.74674 0 0 470940. 1629.55 0.19 0.00 0.09 -1 -1 0.19 0.00183903 0.0017113 8 -1 5 5 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_004bits.v common 3.30 vpr 63.60 MiB 0.01 6300 -1 -1 1 0.02 -1 -1 33612 -1 -1 2 9 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65124 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 25.2 MiB 0.04 51 396 98 278 20 63.6 MiB 0.01 0.00 0.674773 -8.44771 -0.674773 0.674773 0.99 6.646e-05 5.9272e-05 0.0015847 0.00142425 18 149 13 6.87369e+06 27947.7 376052. 1301.22 0.53 0.00480778 0.00425442 22882 88689 -1 118 9 64 64 2420 945 0.914373 0.914373 -10.5528 -0.914373 0 0 470940. 1629.55 0.19 0.01 0.09 -1 -1 0.19 0.00257845 0.00232104 10 -1 6 6 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_005bits.v common 3.40 vpr 63.64 MiB 0.01 6172 -1 -1 1 0.06 -1 -1 33524 -1 -1 2 11 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65168 11 6 41 42 1 27 19 17 17 289 -1 unnamed_device 25.2 MiB 0.04 72 494 96 388 10 63.6 MiB 0.01 0.00 0.685773 -10.5953 -0.685773 0.685773 0.99 7.4125e-05 6.6631e-05 0.0019065 0.00172321 18 228 9 6.87369e+06 27947.7 376052. 1301.22 0.54 0.00515755 0.0046116 22882 88689 -1 192 11 117 117 5171 1805 0.936373 0.936373 -14.4796 -0.936373 0 0 470940. 1629.55 0.19 0.01 0.09 -1 -1 0.19 0.00329536 0.00293263 12 -1 7 7 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_006bits.v common 3.59 vpr 63.52 MiB 0.01 6128 -1 -1 1 0.02 -1 -1 33552 -1 -1 2 13 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65040 13 7 48 49 1 33 22 17 17 289 -1 unnamed_device 25.0 MiB 0.05 198 892 227 592 73 63.5 MiB 0.01 0.00 0.707773 -15.7174 -0.707773 0.707773 0.95 8.7223e-05 7.8813e-05 0.00307508 0.00277972 26 422 16 6.87369e+06 27947.7 503264. 1741.40 0.74 0.0149421 0.0126438 24322 120374 -1 390 14 167 167 14946 3294 1.05067 1.05067 -20.6054 -1.05067 0 0 618332. 2139.56 0.25 0.01 0.12 -1 -1 0.25 0.0037845 0.00332694 14 -1 8 8 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_007bits.v common 3.70 vpr 63.45 MiB 0.01 6168 -1 -1 1 0.02 -1 -1 33456 -1 -1 3 15 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64976 15 8 55 56 1 39 26 17 17 289 -1 unnamed_device 25.0 MiB 0.13 117 1090 233 788 69 63.5 MiB 0.01 0.00 1.13846 -15.8547 -1.13846 1.13846 0.95 0.000101826 9.1891e-05 0.00323209 0.00293042 28 321 12 6.87369e+06 41921.5 531479. 1839.03 0.77 0.0158358 0.0134948 24610 126494 -1 296 16 197 197 12237 3495 1.07067 1.07067 -20.1957 -1.07067 0 0 648988. 2245.63 0.26 0.01 0.12 -1 -1 0.26 0.00456213 0.00399186 17 -1 9 9 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_008bits.v common 3.74 vpr 63.52 MiB 0.01 6248 -1 -1 1 0.02 -1 -1 33600 -1 -1 3 17 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65048 17 9 62 63 1 42 29 17 17 289 -1 unnamed_device 24.9 MiB 0.06 129 821 194 584 43 63.5 MiB 0.01 0.00 0.964803 -17.6271 -0.964803 0.964803 0.97 0.000111517 0.000100664 0.00258224 0.00234094 30 366 11 6.87369e+06 41921.5 556674. 1926.21 0.81 0.0162541 0.0137857 25186 138497 -1 294 13 187 187 9491 2979 1.07067 1.07067 -23.3754 -1.07067 0 0 706193. 2443.58 0.29 0.01 0.13 -1 -1 0.29 0.0044142 0.00388065 18 -1 10 10 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_009bits.v common 3.67 vpr 63.55 MiB 0.01 6340 -1 -1 1 0.02 -1 -1 33408 -1 -1 3 19 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65072 19 10 69 70 1 45 32 17 17 289 -1 unnamed_device 25.1 MiB 0.06 136 1982 639 930 413 63.5 MiB 0.01 0.00 0.975803 -19.8735 -0.975803 0.975803 0.98 0.000117777 0.000106012 0.00538801 0.0048735 28 320 14 6.87369e+06 41921.5 531479. 1839.03 0.80 0.020773 0.0178187 24610 126494 -1 289 17 228 228 12992 4130 1.10367 1.10367 -25.521 -1.10367 0 0 648988. 2245.63 0.26 0.02 0.12 -1 -1 0.26 0.00560711 0.00491672 20 -1 11 11 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_010bits.v common 3.61 vpr 63.71 MiB 0.01 6216 -1 -1 1 0.02 -1 -1 33640 -1 -1 3 21 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65240 21 11 76 77 1 48 35 17 17 289 -1 unnamed_device 25.2 MiB 0.06 144 2885 893 1344 648 63.7 MiB 0.02 0.00 0.986803 -22.1528 -0.986803 0.986803 0.94 0.000132905 0.000120952 0.00742257 0.00675639 28 440 27 6.87369e+06 41921.5 531479. 1839.03 0.80 0.0264861 0.022749 24610 126494 -1 401 14 247 247 22945 5855 1.23997 1.23997 -30.0443 -1.23997 0 0 648988. 2245.63 0.26 0.02 0.12 -1 -1 0.26 0.00496363 0.00436458 22 -1 12 12 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_011bits.v common 3.86 vpr 63.79 MiB 0.01 6260 -1 -1 1 0.02 -1 -1 33532 -1 -1 4 23 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65316 23 12 83 84 1 53 39 17 17 289 -1 unnamed_device 25.2 MiB 0.06 327 2877 717 1867 293 63.8 MiB 0.02 0.00 0.997803 -27.9296 -0.997803 0.997803 1.00 0.000142338 0.000128924 0.00690971 0.00628738 30 638 20 6.87369e+06 55895.4 556674. 1926.21 0.85 0.026391 0.0227452 25186 138497 -1 582 14 241 241 20181 4536 1.15867 1.15867 -36.5025 -1.15867 0 0 706193. 2443.58 0.30 0.02 0.13 -1 -1 0.30 0.00573173 0.00506051 24 -1 13 13 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_012bits.v common 3.83 vpr 63.54 MiB 0.01 6316 -1 -1 1 0.02 -1 -1 33720 -1 -1 4 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65064 25 13 90 91 1 60 42 17 17 289 -1 unnamed_device 25.0 MiB 0.06 251 1770 340 1408 22 63.5 MiB 0.01 0.00 1.0088 -27.2017 -1.0088 1.0088 0.97 0.000180916 0.000165624 0.00428172 0.0039177 30 629 11 6.87369e+06 55895.4 556674. 1926.21 0.84 0.0218568 0.0188674 25186 138497 -1 529 14 285 285 20374 5252 1.14767 1.14767 -36.4534 -1.14767 0 0 706193. 2443.58 0.29 0.02 0.13 -1 -1 0.29 0.00589321 0.00519064 26 -1 14 14 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_013bits.v common 3.87 vpr 63.74 MiB 0.01 6272 -1 -1 1 0.02 -1 -1 33468 -1 -1 4 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65272 27 14 97 98 1 67 45 17 17 289 -1 unnamed_device 25.1 MiB 0.07 205 3965 1145 1897 923 63.7 MiB 0.02 0.00 1.0198 -28.9909 -1.0198 1.0198 0.99 0.000158836 0.000143265 0.00902303 0.00819384 32 657 23 6.87369e+06 55895.4 586450. 2029.24 0.88 0.0314772 0.0272648 25474 144626 -1 555 18 430 430 37521 9589 1.15867 1.15867 -37.7549 -1.15867 0 0 744469. 2576.02 0.29 0.02 0.14 -1 -1 0.29 0.00699466 0.00613536 28 -1 15 15 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_014bits.v common 4.48 vpr 63.67 MiB 0.01 6472 -1 -1 1 0.02 -1 -1 33912 -1 -1 4 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65200 29 15 104 105 1 74 48 17 17 289 -1 unnamed_device 25.1 MiB 0.10 253 5877 2481 3335 61 63.7 MiB 0.03 0.00 1.0308 -31.8791 -1.0308 1.0308 0.98 0.000182168 0.000165651 0.0128719 0.0116994 36 872 25 6.87369e+06 55895.4 648988. 2245.63 1.37 0.051012 0.043948 26050 158493 -1 624 14 452 452 32252 8762 1.40463 1.40463 -40.2441 -1.40463 0 0 828058. 2865.25 0.34 0.02 0.15 -1 -1 0.34 0.00680959 0.00603568 31 -1 16 16 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_015bits.v common 3.93 vpr 63.98 MiB 0.01 6552 -1 -1 1 0.02 -1 -1 33724 -1 -1 5 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65520 31 16 111 112 1 80 52 17 17 289 -1 unnamed_device 25.6 MiB 0.19 322 5678 1616 3328 734 64.0 MiB 0.03 0.00 1.27683 -33.8219 -1.27683 1.27683 0.97 0.000191829 0.000174779 0.0120985 0.0110483 30 808 18 6.87369e+06 69869.2 556674. 1926.21 0.87 0.0357332 0.0311964 25186 138497 -1 724 16 387 387 30332 7567 1.17867 1.17867 -44.6451 -1.17867 0 0 706193. 2443.58 0.28 0.02 0.13 -1 -1 0.28 0.00741217 0.00651959 33 -1 17 17 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_016bits.v common 3.92 vpr 64.01 MiB 0.01 6484 -1 -1 1 0.02 -1 -1 33700 -1 -1 5 33 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65548 33 17 118 119 1 83 55 17 17 289 -1 unnamed_device 25.6 MiB 0.09 305 5983 2463 3415 105 64.0 MiB 0.03 0.00 1.28783 -36.8992 -1.28783 1.28783 0.99 0.000180127 0.00016375 0.0115098 0.0104783 30 784 20 6.87369e+06 69869.2 556674. 1926.21 0.91 0.0379451 0.0329959 25186 138497 -1 623 12 409 409 28008 7546 1.18967 1.18967 -45.533 -1.18967 0 0 706193. 2443.58 0.29 0.02 0.13 -1 -1 0.29 0.00685861 0.00609736 34 -1 18 18 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_018bits.v common 4.29 vpr 64.11 MiB 0.01 6528 -1 -1 1 0.02 -1 -1 33808 -1 -1 5 37 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65652 37 19 132 133 1 89 61 17 17 289 -1 unnamed_device 25.7 MiB 0.09 307 4021 826 3050 145 64.1 MiB 0.02 0.00 1.30983 -41.5918 -1.30983 1.30983 0.95 0.000202772 0.000185088 0.00787956 0.00719087 34 948 18 6.87369e+06 69869.2 618332. 2139.56 1.29 0.0494916 0.0422851 25762 151098 -1 767 16 483 483 35414 10275 1.25567 1.25567 -55.0668 -1.25567 0 0 787024. 2723.27 0.31 0.03 0.14 -1 -1 0.31 0.00881933 0.007763 38 -1 20 20 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_020bits.v common 4.47 vpr 64.08 MiB 0.01 6336 -1 -1 1 0.02 -1 -1 33684 -1 -1 6 41 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65616 41 21 146 147 1 101 68 17 17 289 -1 unnamed_device 25.6 MiB 0.12 344 5174 1066 4083 25 64.1 MiB 0.03 0.00 1.33183 -47.4933 -1.33183 1.33183 0.98 0.000250208 0.000228343 0.0104447 0.0095511 34 968 17 6.87369e+06 83843 618332. 2139.56 1.37 0.0605489 0.0523517 25762 151098 -1 836 13 468 468 32844 9502 1.18067 1.18067 -58.9068 -1.18067 0 0 787024. 2723.27 0.31 0.02 0.15 -1 -1 0.31 0.00841747 0.00748328 42 -1 22 22 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_022bits.v common 4.12 vpr 64.08 MiB 0.02 6572 -1 -1 1 0.03 -1 -1 33856 -1 -1 6 45 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65616 45 23 160 161 1 115 74 17 17 289 -1 unnamed_device 25.6 MiB 0.16 679 10614 4487 6066 61 64.1 MiB 0.06 0.00 1.35383 -59.273 -1.35383 1.35383 1.01 0.000285588 0.000260896 0.0201473 0.0184331 30 1369 23 6.87369e+06 83843 556674. 1926.21 0.92 0.0562588 0.0495074 25186 138497 -1 1233 18 643 643 54808 12371 1.26197 1.26197 -70.2101 -1.26197 0 0 706193. 2443.58 0.30 0.03 0.13 -1 -1 0.30 0.0113308 0.0100394 47 -1 24 24 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_024bits.v common 4.57 vpr 64.20 MiB 0.01 6460 -1 -1 1 0.03 -1 -1 33900 -1 -1 7 49 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65740 49 25 174 175 1 124 81 17 17 289 -1 unnamed_device 25.8 MiB 0.10 589 8131 1868 5827 436 64.2 MiB 0.05 0.00 1.61086 -60.7823 -1.61086 1.61086 0.99 0.000323111 0.000298248 0.014823 0.0135615 34 1467 16 6.87369e+06 97816.9 618332. 2139.56 1.44 0.0720455 0.0627306 25762 151098 -1 1253 12 586 586 53486 12878 1.34167 1.34167 -77.136 -1.34167 0 0 787024. 2723.27 0.31 0.03 0.15 -1 -1 0.31 0.00904415 0.00808245 50 -1 26 26 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_028bits.v common 4.53 vpr 64.07 MiB 0.01 6668 -1 -1 1 0.03 -1 -1 33604 -1 -1 8 57 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65608 57 29 202 203 1 142 94 17 17 289 -1 unnamed_device 25.5 MiB 0.10 917 14578 5091 7957 1530 64.1 MiB 0.07 0.00 1.65486 -82.5673 -1.65486 1.65486 0.98 0.0003455 0.000315507 0.0241622 0.0221101 34 1788 20 6.87369e+06 111791 618332. 2139.56 1.44 0.0923942 0.0810993 25762 151098 -1 1679 14 699 699 78363 16495 1.31967 1.31967 -93.7812 -1.31967 0 0 787024. 2723.27 0.30 0.04 0.15 -1 -1 0.30 0.011032 0.00983862 58 -1 30 30 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_032bits.v common 7.03 vpr 64.52 MiB 0.02 6476 -1 -1 1 0.03 -1 -1 33932 -1 -1 9 65 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 65 33 230 231 1 165 107 17 17 289 -1 unnamed_device 26.1 MiB 0.10 661 16299 4295 11326 678 64.5 MiB 0.08 0.00 1.93389 -85.746 -1.93389 1.93389 0.99 0.000381482 0.000347412 0.0250061 0.0228925 36 1773 15 6.87369e+06 125765 648988. 2245.63 3.80 0.126314 0.110252 26050 158493 -1 1496 19 927 927 79248 20855 1.47797 1.47797 -100.874 -1.47797 0 0 828058. 2865.25 0.34 0.05 0.15 -1 -1 0.34 0.0160184 0.0141996 66 -1 34 34 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_048bits.v common 4.89 vpr 65.44 MiB 0.02 6688 -1 -1 1 0.03 -1 -1 33740 -1 -1 13 97 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67012 97 49 342 343 1 247 159 17 17 289 -1 unnamed_device 26.6 MiB 0.12 1401 29829 11115 17011 1703 65.4 MiB 0.15 0.00 2.57995 -151.821 -2.57995 2.57995 0.98 0.000563198 0.000517022 0.04125 0.0378476 34 2981 18 6.87369e+06 181660 618332. 2139.56 1.60 0.158009 0.14059 25762 151098 -1 2634 16 1245 1245 124571 28063 1.63897 1.63897 -159.061 -1.63897 0 0 787024. 2723.27 0.31 0.06 0.13 -1 -1 0.31 0.0195827 0.0175665 98 -1 50 50 0 0 + fixed_k6_frac_ripple_N8_22nm.xml adder_064bits.v common 5.61 vpr 65.80 MiB 0.02 6868 -1 -1 1 0.03 -1 -1 34108 -1 -1 17 129 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67384 129 65 454 455 1 329 211 17 17 289 -1 unnamed_device 27.1 MiB 0.13 1808 47236 18125 26113 2998 65.8 MiB 0.23 0.01 3.22602 -221.342 -3.22602 3.22602 1.00 0.000797692 0.000734501 0.0570278 0.0522918 34 4160 39 6.87369e+06 237555 618332. 2139.56 2.16 0.248915 0.222978 25762 151098 -1 3485 17 1530 1530 158279 36013 1.96297 1.96297 -225.287 -1.96297 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0284659 0.0257174 130 -1 66 66 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_003bits.v common 3.23 vpr 63.11 MiB 0.01 6244 -1 -1 1 0.02 -1 -1 33424 -1 -1 1 7 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64624 7 4 27 28 1 13 12 17 17 289 -1 unnamed_device 24.7 MiB 0.02 23 259 59 179 21 63.1 MiB 0.00 0.00 0.49614 -5.96402 -0.49614 0.49614 0.98 5.9059e-05 5.1943e-05 0.00137247 0.00121094 18 93 6 6.89349e+06 14093.8 376052. 1301.22 0.53 0.0035441 0.00316031 22882 88689 -1 84 4 23 23 1416 490 0.74674 0.74674 -7.84352 -0.74674 0 0 470940. 1629.55 0.20 0.00 0.09 -1 -1 0.20 0.00196642 0.00182677 8 -1 5 5 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_004bits.v common 3.40 vpr 63.22 MiB 0.01 6168 -1 -1 1 0.02 -1 -1 33272 -1 -1 2 9 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64736 9 5 34 35 1 20 16 17 17 289 -1 unnamed_device 24.8 MiB 0.03 44 396 86 288 22 63.2 MiB 0.01 0.00 0.702973 -8.41695 -0.702973 0.702973 0.96 6.6298e-05 5.9418e-05 0.00158872 0.00142624 22 150 8 6.89349e+06 28187.7 443629. 1535.05 0.64 0.00959301 0.00806219 23458 102101 -1 95 9 47 47 1353 564 0.78002 0.78002 -9.20555 -0.78002 0 0 531479. 1839.03 0.24 0.01 0.10 -1 -1 0.24 0.00267483 0.00237252 10 -1 6 6 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_005bits.v common 3.49 vpr 63.51 MiB 0.01 6284 -1 -1 1 0.02 -1 -1 33400 -1 -1 2 11 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65032 11 6 41 42 1 27 19 17 17 289 -1 unnamed_device 25.1 MiB 0.04 73 419 83 327 9 63.5 MiB 0.01 0.00 0.724973 -10.5407 -0.724973 0.724973 0.97 6.9744e-05 6.2428e-05 0.00153459 0.00138138 26 189 10 6.89349e+06 28187.7 503264. 1741.40 0.72 0.0110094 0.00923026 24322 120374 -1 181 11 99 99 5751 1801 0.93832 0.93832 -14.1135 -0.93832 0 0 618332. 2139.56 0.25 0.01 0.12 -1 -1 0.25 0.00320313 0.0028477 12 -1 7 7 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_006bits.v common 4.21 vpr 63.24 MiB 0.01 6308 -1 -1 1 0.02 -1 -1 33468 -1 -1 2 13 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64760 13 7 48 49 1 33 22 17 17 289 -1 unnamed_device 24.8 MiB 0.04 182 802 184 519 99 63.2 MiB 0.01 0.00 0.746973 -15.9918 -0.746973 0.746973 0.96 9.3014e-05 8.4019e-05 0.00272986 0.00246206 24 420 18 6.89349e+06 28187.7 470940. 1629.55 1.49 0.0236668 0.019627 24034 113901 -1 406 10 156 156 14816 3241 1.12287 1.12287 -21.8809 -1.12287 0 0 586450. 2029.24 0.23 0.01 0.10 -1 -1 0.23 0.0032947 0.00293891 14 -1 8 8 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_007bits.v common 3.69 vpr 63.44 MiB 0.01 6284 -1 -1 1 0.02 -1 -1 33632 -1 -1 3 15 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64964 15 8 55 56 1 39 26 17 17 289 -1 unnamed_device 25.0 MiB 0.08 119 938 195 678 65 63.4 MiB 0.01 0.00 1.0151 -15.9354 -1.0151 1.0151 0.99 0.000100254 9.0699e-05 0.00289252 0.00260655 28 344 13 6.89349e+06 42281.5 531479. 1839.03 0.79 0.01566 0.0133368 24610 126494 -1 304 15 221 221 17064 4986 1.08167 1.08167 -20.9863 -1.08167 0 0 648988. 2245.63 0.26 0.01 0.13 -1 -1 0.26 0.00445105 0.00391399 17 -1 9 9 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_008bits.v common 3.58 vpr 63.46 MiB 0.01 6440 -1 -1 1 0.02 -1 -1 33644 -1 -1 3 17 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64988 17 9 62 63 1 42 29 17 17 289 -1 unnamed_device 25.0 MiB 0.05 140 1129 245 830 54 63.5 MiB 0.01 0.00 0.982003 -18.2787 -0.982003 0.982003 0.99 0.000110922 0.00010028 0.00335264 0.00304561 24 429 19 6.89349e+06 42281.5 470940. 1629.55 0.72 0.0185139 0.0157257 24034 113901 -1 363 12 171 171 11642 3301 1.10987 1.10987 -24.5303 -1.10987 0 0 586450. 2029.24 0.25 0.01 0.11 -1 -1 0.25 0.00431525 0.00380017 18 -1 10 10 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_009bits.v common 3.67 vpr 63.46 MiB 0.01 6196 -1 -1 1 0.02 -1 -1 33604 -1 -1 3 19 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64984 19 10 69 70 1 46 32 17 17 289 -1 unnamed_device 25.0 MiB 0.05 138 1982 663 1008 311 63.5 MiB 0.02 0.00 0.993003 -19.9971 -0.993003 0.993003 0.98 0.000119477 0.000107949 0.00540356 0.00490998 28 367 16 6.89349e+06 42281.5 531479. 1839.03 0.80 0.0206583 0.0177044 24610 126494 -1 312 10 165 165 15351 4355 0.886073 0.886073 -24.9734 -0.886073 0 0 648988. 2245.63 0.27 0.01 0.13 -1 -1 0.27 0.00418991 0.00373183 20 -1 11 11 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_010bits.v common 3.67 vpr 63.62 MiB 0.01 6124 -1 -1 1 0.02 -1 -1 33492 -1 -1 3 21 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65148 21 11 76 77 1 48 35 17 17 289 -1 unnamed_device 25.1 MiB 0.05 144 2942 1081 1588 273 63.6 MiB 0.02 0.00 1.004 -22.4629 -1.004 1.004 0.97 0.000128198 0.000115131 0.00734425 0.00664761 30 392 14 6.89349e+06 42281.5 556674. 1926.21 0.81 0.022702 0.019558 25186 138497 -1 309 9 172 172 8752 2480 1.01137 1.01137 -26.4805 -1.01137 0 0 706193. 2443.58 0.30 0.01 0.14 -1 -1 0.30 0.00421661 0.00377719 22 -1 12 12 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_011bits.v common 3.83 vpr 63.59 MiB 0.01 6228 -1 -1 1 0.02 -1 -1 33596 -1 -1 4 23 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65120 23 12 83 84 1 53 39 17 17 289 -1 unnamed_device 25.1 MiB 0.06 349 2085 492 1437 156 63.6 MiB 0.02 0.00 1.015 -29.3846 -1.015 1.015 0.97 0.000143322 0.000130078 0.00520147 0.00472418 32 683 10 6.89349e+06 56375.4 586450. 2029.24 0.86 0.0208625 0.0179297 25474 144626 -1 667 13 228 228 19783 4472 1.14767 1.14767 -38.1657 -1.14767 0 0 744469. 2576.02 0.31 0.02 0.14 -1 -1 0.31 0.00538286 0.00473885 24 -1 13 13 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_012bits.v common 3.77 vpr 63.67 MiB 0.01 6284 -1 -1 1 0.02 -1 -1 33784 -1 -1 4 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65200 25 13 90 91 1 60 42 17 17 289 -1 unnamed_device 25.1 MiB 0.05 257 1842 358 1469 15 63.7 MiB 0.01 0.00 1.026 -27.6715 -1.026 1.026 0.98 0.00013239 0.000120583 0.00438595 0.00400174 30 587 11 6.89349e+06 56375.4 556674. 1926.21 0.83 0.0221721 0.0191021 25186 138497 -1 542 9 232 232 16788 4238 1.13667 1.13667 -37.2645 -1.13667 0 0 706193. 2443.58 0.29 0.01 0.13 -1 -1 0.29 0.00483473 0.00435447 26 -1 14 14 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_013bits.v common 3.80 vpr 63.74 MiB 0.01 6304 -1 -1 1 0.02 -1 -1 33640 -1 -1 4 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65268 27 14 97 98 1 67 45 17 17 289 -1 unnamed_device 25.2 MiB 0.06 169 2685 631 2021 33 63.7 MiB 0.02 0.00 1.037 -28.4755 -1.037 1.037 0.97 0.00017552 0.000160133 0.00641424 0.00583586 32 638 12 6.89349e+06 56375.4 586450. 2029.24 0.85 0.0245204 0.0212481 25474 144626 -1 515 17 345 345 24151 7248 1.13862 1.13862 -37.7881 -1.13862 0 0 744469. 2576.02 0.31 0.02 0.14 -1 -1 0.31 0.00690315 0.00602649 28 -1 15 15 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_014bits.v common 4.46 vpr 63.56 MiB 0.01 6236 -1 -1 1 0.02 -1 -1 33964 -1 -1 4 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65088 29 15 104 105 1 74 48 17 17 289 -1 unnamed_device 25.0 MiB 0.09 253 5877 2469 3339 69 63.6 MiB 0.03 0.00 1.048 -32.236 -1.048 1.048 0.96 0.000181494 0.00016409 0.0127811 0.0115985 36 852 27 6.89349e+06 56375.4 648988. 2245.63 1.43 0.0517519 0.0444133 26050 158493 -1 631 38 567 567 41504 11208 1.19797 1.19797 -38.732 -1.19797 0 0 828058. 2865.25 0.33 0.04 0.16 -1 -1 0.33 0.0131956 0.0113422 31 -1 16 16 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_015bits.v common 3.86 vpr 63.81 MiB 0.01 6212 -1 -1 1 0.02 -1 -1 33912 -1 -1 5 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65340 31 16 111 112 1 80 52 17 17 289 -1 unnamed_device 25.5 MiB 0.20 228 5678 1684 3364 630 63.8 MiB 0.03 0.00 1.29403 -33.8201 -1.29403 1.29403 0.95 0.00018478 0.000167131 0.0118128 0.0107465 28 702 22 6.89349e+06 70469.2 531479. 1839.03 0.83 0.0365555 0.0317913 24610 126494 -1 635 14 389 389 23727 7802 1.32117 1.32117 -45.8845 -1.32117 0 0 648988. 2245.63 0.28 0.02 0.12 -1 -1 0.28 0.00703986 0.00624535 33 -1 17 17 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_016bits.v common 3.85 vpr 63.89 MiB 0.01 6540 -1 -1 1 0.02 -1 -1 33724 -1 -1 5 33 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65428 33 17 118 119 1 83 55 17 17 289 -1 unnamed_device 25.5 MiB 0.10 305 5983 2454 3407 122 63.9 MiB 0.03 0.00 1.30503 -37.2905 -1.30503 1.30503 0.94 0.000181462 0.000163318 0.0112498 0.0101544 32 755 12 6.89349e+06 70469.2 586450. 2029.24 0.92 0.0350075 0.0305103 25474 144626 -1 645 16 375 375 29196 7578 1.12567 1.12567 -45.6906 -1.12567 0 0 744469. 2576.02 0.30 0.02 0.14 -1 -1 0.30 0.00808661 0.0071067 34 -1 18 18 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_018bits.v common 3.89 vpr 63.86 MiB 0.01 6416 -1 -1 1 0.03 -1 -1 33992 -1 -1 5 37 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65396 37 19 132 133 1 90 61 17 17 289 -1 unnamed_device 25.4 MiB 0.08 250 4021 827 3123 71 63.9 MiB 0.03 0.00 1.32703 -41.5823 -1.32703 1.32703 0.96 0.000233254 0.000212635 0.00850527 0.00779958 32 767 12 6.89349e+06 70469.2 586450. 2029.24 0.89 0.0342545 0.0298198 25474 144626 -1 624 16 455 455 29168 9459 1.25567 1.25567 -54.1304 -1.25567 0 0 744469. 2576.02 0.30 0.02 0.14 -1 -1 0.30 0.00872815 0.00768208 38 -1 20 20 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_020bits.v common 4.00 vpr 64.11 MiB 0.01 6352 -1 -1 1 0.02 -1 -1 33904 -1 -1 6 41 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65648 41 21 146 147 1 102 68 17 17 289 -1 unnamed_device 25.7 MiB 0.09 339 5726 1223 4477 26 64.1 MiB 0.04 0.00 1.34903 -47.2456 -1.34903 1.34903 0.99 0.00025173 0.000230145 0.011462 0.0104719 32 1122 18 6.89349e+06 84563 586450. 2029.24 0.92 0.0422472 0.0369134 25474 144626 -1 860 18 490 490 38611 10676 1.27767 1.27767 -61.659 -1.27767 0 0 744469. 2576.02 0.31 0.03 0.14 -1 -1 0.31 0.0106219 0.00933075 42 -1 22 22 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_022bits.v common 4.47 vpr 63.76 MiB 0.01 6480 -1 -1 1 0.03 -1 -1 33824 -1 -1 6 45 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65292 45 23 160 161 1 115 74 17 17 289 -1 unnamed_device 25.3 MiB 0.12 705 10614 4486 6097 31 63.8 MiB 0.05 0.00 1.37103 -60.4533 -1.37103 1.37103 0.97 0.000273693 0.000249408 0.0181511 0.0165788 34 1350 17 6.89349e+06 84563 618332. 2139.56 1.36 0.07203 0.0628859 25762 151098 -1 1254 13 568 568 53690 11599 1.29487 1.29487 -70.6704 -1.29487 0 0 787024. 2723.27 0.32 0.03 0.15 -1 -1 0.32 0.00921909 0.00822959 47 -1 24 24 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_024bits.v common 4.42 vpr 64.18 MiB 0.01 6596 -1 -1 1 0.03 -1 -1 33852 -1 -1 7 49 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65724 49 25 174 175 1 124 81 17 17 289 -1 unnamed_device 25.8 MiB 0.11 586 7256 1665 5293 298 64.2 MiB 0.05 0.00 1.62806 -61.3112 -1.62806 1.62806 0.95 0.00029385 0.000268987 0.0133656 0.0122227 34 1404 16 6.89349e+06 98656.9 618332. 2139.56 1.36 0.0701192 0.0610043 25762 151098 -1 1266 12 558 558 49218 11771 1.31487 1.31487 -76.5095 -1.31487 0 0 787024. 2723.27 0.30 0.03 0.15 -1 -1 0.30 0.00893131 0.00793913 50 -1 26 26 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_028bits.v common 4.60 vpr 64.20 MiB 0.02 6404 -1 -1 1 0.03 -1 -1 33584 -1 -1 8 57 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65744 57 29 202 203 1 143 94 17 17 289 -1 unnamed_device 25.7 MiB 0.09 584 14578 5377 7694 1507 64.2 MiB 0.07 0.00 1.67206 -71.578 -1.67206 1.67206 0.97 0.000344034 0.000314059 0.0238562 0.021777 36 1193 15 6.89349e+06 112751 648988. 2245.63 1.49 0.088795 0.0777502 26050 158493 -1 1028 14 552 552 36601 9770 1.22267 1.22267 -75.3894 -1.22267 0 0 828058. 2865.25 0.32 0.03 0.15 -1 -1 0.32 0.0113626 0.0101031 58 -1 30 30 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_032bits.v common 4.78 vpr 64.37 MiB 0.01 6592 -1 -1 1 0.03 -1 -1 33996 -1 -1 9 65 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65916 65 33 230 231 1 165 107 17 17 289 -1 unnamed_device 26.0 MiB 0.11 660 16299 4282 11268 749 64.4 MiB 0.09 0.00 1.95109 -86.1619 -1.95109 1.95109 0.99 0.000365665 0.000333677 0.0257421 0.0235736 34 2004 36 6.89349e+06 126845 618332. 2139.56 1.59 0.115307 0.100758 25762 151098 -1 1611 12 750 750 64197 17251 1.46697 1.46697 -103.342 -1.46697 0 0 787024. 2723.27 0.32 0.03 0.15 -1 -1 0.32 0.0113481 0.0101068 66 -1 34 34 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_048bits.v common 4.79 vpr 65.38 MiB 0.01 6836 -1 -1 1 0.03 -1 -1 33780 -1 -1 13 97 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66952 97 49 342 343 1 247 159 17 17 289 -1 unnamed_device 26.6 MiB 0.12 1352 30259 11545 17351 1363 65.4 MiB 0.15 0.00 2.59715 -151.761 -2.59715 2.59715 0.94 0.000549462 0.000502619 0.0414434 0.0379288 34 2926 21 6.89349e+06 183220 618332. 2139.56 1.57 0.158721 0.140661 25762 151098 -1 2621 16 1153 1153 107996 24444 1.65467 1.65467 -160.883 -1.65467 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0203906 0.0182818 98 -1 50 50 0 0 + fixed_k6_frac_uripple_N8_22nm.xml adder_064bits.v common 6.02 vpr 65.93 MiB 0.02 6852 -1 -1 1 0.03 -1 -1 34200 -1 -1 17 129 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67508 129 65 454 455 1 329 211 17 17 289 -1 unnamed_device 27.3 MiB 0.14 1598 47236 17796 25821 3619 65.9 MiB 0.24 0.01 3.24322 -215.542 -3.24322 3.24322 0.97 0.000754152 0.000694097 0.0566132 0.0518991 36 3891 16 6.89349e+06 239595 648988. 2245.63 2.52 0.21841 0.195712 26050 158493 -1 3174 16 1403 1403 125808 29759 1.89887 1.89887 -216.309 -1.89887 0 0 828058. 2865.25 0.34 0.07 0.16 -1 -1 0.34 0.0271134 0.0244545 130 -1 66 66 0 0 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/multless_consts/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/multless_consts/config/golden_results.txt index 19ddc9b2774..2c0305c87ea 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/multless_consts/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/arithmetic_tasks/multless_consts/config/golden_results.txt @@ -1,1025 +1,1025 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_001.v common 10.85 vpr 64.83 MiB 0.03 7104 -1 -1 14 0.37 -1 -1 36492 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 280 312 1 205 90 17 17 289 -1 unnamed_device 26.3 MiB 0.34 1364 8130 1912 5160 1058 64.8 MiB 0.09 0.00 6.5171 -132.639 -6.5171 6.5171 1.05 0.000820975 0.000710805 0.0345161 0.0311345 28 3707 48 6.55708e+06 313430 500653. 1732.36 6.81 0.267198 0.233215 21310 115450 -1 3091 22 1479 4603 269119 61238 7.0443 7.0443 -160.189 -7.0443 0 0 612192. 2118.31 0.27 0.10 0.11 -1 -1 0.27 0.0371316 0.0331266 186 185 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_002.v common 16.74 vpr 64.50 MiB 0.02 7044 -1 -1 14 0.40 -1 -1 36708 -1 -1 30 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 30 32 277 309 1 215 92 17 17 289 -1 unnamed_device 26.0 MiB 0.56 1296 12926 3334 7463 2129 64.5 MiB 0.12 0.00 6.98624 -139.787 -6.98624 6.98624 1.08 0.000678634 0.000618743 0.0513579 0.0467903 28 4048 39 6.55708e+06 361650 500653. 1732.36 12.37 0.281918 0.248451 21310 115450 -1 3230 19 1616 4478 283360 65480 7.22664 7.22664 -161.149 -7.22664 0 0 612192. 2118.31 0.26 0.10 0.11 -1 -1 0.26 0.0318915 0.028608 189 186 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_003.v common 10.50 vpr 64.70 MiB 0.02 7048 -1 -1 11 0.29 -1 -1 36408 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66248 32 32 274 306 1 208 89 17 17 289 -1 unnamed_device 26.3 MiB 0.46 1279 11375 2946 6710 1719 64.7 MiB 0.11 0.00 5.48872 -115.921 -5.48872 5.48872 1.08 0.000611369 0.000549558 0.042507 0.0382682 36 3725 43 6.55708e+06 301375 612192. 2118.31 6.26 0.245927 0.216713 22750 144809 -1 3092 21 1441 4729 285602 64439 5.92066 5.92066 -139.809 -5.92066 0 0 782063. 2706.10 0.34 0.10 0.13 -1 -1 0.34 0.035526 0.0319501 180 179 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_004.v common 9.09 vpr 64.68 MiB 0.02 6988 -1 -1 12 0.46 -1 -1 36472 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66236 29 32 269 301 1 203 90 17 17 289 -1 unnamed_device 26.2 MiB 0.42 1285 8331 1992 5747 592 64.7 MiB 0.09 0.00 6.34804 -118.848 -6.34804 6.34804 1.09 0.00102443 0.000956792 0.0382183 0.0346192 36 3199 34 6.55708e+06 349595 612192. 2118.31 4.80 0.313769 0.275444 22750 144809 -1 2723 17 1272 4078 209914 49862 6.82884 6.82884 -137.442 -6.82884 0 0 782063. 2706.10 0.35 0.09 0.15 -1 -1 0.35 0.0331315 0.0298292 185 180 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_005.v common 6.33 vpr 65.36 MiB 0.02 7180 -1 -1 13 0.42 -1 -1 37172 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66932 32 32 317 349 1 246 96 17 17 289 -1 unnamed_device 26.6 MiB 0.54 1585 10170 2430 6837 903 65.4 MiB 0.11 0.00 6.46824 -138.353 -6.46824 6.46824 1.10 0.000780043 0.000710863 0.0461686 0.0418677 30 4184 26 6.55708e+06 385760 526063. 1820.29 1.90 0.19465 0.174133 21886 126133 -1 3490 23 1634 4690 316977 103916 6.7183 6.7183 -155.078 -6.7183 0 0 666494. 2306.21 0.32 0.14 0.12 -1 -1 0.32 0.0461458 0.0417573 223 222 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_006.v common 11.41 vpr 64.78 MiB 0.02 7012 -1 -1 12 0.37 -1 -1 36440 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 32 32 299 331 1 232 98 17 17 289 -1 unnamed_device 26.2 MiB 0.59 1486 10223 2593 6423 1207 64.8 MiB 0.11 0.00 6.19064 -124.909 -6.19064 6.19064 1.07 0.000898861 0.000808883 0.0415832 0.0378933 36 3515 27 6.55708e+06 409870 612192. 2118.31 7.01 0.389435 0.343647 22750 144809 -1 3074 16 1264 3905 195661 46585 6.43104 6.43104 -144.363 -6.43104 0 0 782063. 2706.10 0.35 0.08 0.14 -1 -1 0.35 0.0330956 0.0301337 209 204 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_007.v common 8.20 vpr 64.04 MiB 0.02 6952 -1 -1 12 0.24 -1 -1 36008 -1 -1 27 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65572 27 32 210 242 1 167 86 17 17 289 -1 unnamed_device 25.5 MiB 0.33 1093 9536 2423 5647 1466 64.0 MiB 0.08 0.00 5.77658 -104.791 -5.77658 5.77658 1.00 0.00051138 0.000454279 0.0308619 0.0281442 28 3057 26 6.55708e+06 325485 500653. 1732.36 4.46 0.214398 0.187714 21310 115450 -1 2681 18 1212 3479 246451 53156 6.16872 6.16872 -126.305 -6.16872 0 0 612192. 2118.31 0.29 0.09 0.12 -1 -1 0.29 0.0254658 0.0226848 136 125 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_008.v common 15.28 vpr 64.59 MiB 0.02 6936 -1 -1 11 0.21 -1 -1 36584 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 31 32 264 296 1 199 91 17 17 289 -1 unnamed_device 25.9 MiB 0.29 1254 11311 2910 6958 1443 64.6 MiB 0.09 0.00 5.18418 -108.446 -5.18418 5.18418 0.95 0.000620966 0.000564645 0.0366936 0.03332 32 3690 49 6.55708e+06 337540 554710. 1919.41 11.71 0.355544 0.314313 22174 131602 -1 3053 17 1334 3983 283664 66737 5.45412 5.45412 -130.954 -5.45412 0 0 701300. 2426.64 0.29 0.10 0.12 -1 -1 0.29 0.0300536 0.0272528 175 171 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_009.v common 7.55 vpr 64.41 MiB 0.02 7108 -1 -1 12 0.23 -1 -1 36052 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65952 31 32 234 266 1 190 88 17 17 289 -1 unnamed_device 26.0 MiB 0.41 1197 8668 2295 5233 1140 64.4 MiB 0.07 0.00 5.61718 -124.3 -5.61718 5.61718 1.01 0.000712188 0.00065629 0.0287459 0.0259891 28 3174 18 6.55708e+06 301375 500653. 1732.36 3.69 0.192207 0.168815 21310 115450 -1 2654 14 1047 2630 162799 37677 6.05878 6.05878 -142.536 -6.05878 0 0 612192. 2118.31 0.31 0.07 0.11 -1 -1 0.31 0.0278838 0.0254017 145 141 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_010.v common 11.00 vpr 64.38 MiB 0.02 6956 -1 -1 13 0.22 -1 -1 36148 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 32 32 253 285 1 194 89 17 17 289 -1 unnamed_device 25.9 MiB 0.45 1231 12761 3479 7153 2129 64.4 MiB 0.10 0.00 6.22784 -137.083 -6.22784 6.22784 0.94 0.000648352 0.000593464 0.0421714 0.0384895 28 3284 30 6.55708e+06 301375 500653. 1732.36 7.26 0.31152 0.274943 21310 115450 -1 2907 17 1225 3374 198112 46724 6.27164 6.27164 -156.349 -6.27164 0 0 612192. 2118.31 0.30 0.09 0.11 -1 -1 0.30 0.0302242 0.0272635 162 158 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_011.v common 11.83 vpr 64.03 MiB 0.02 7084 -1 -1 12 0.24 -1 -1 36432 -1 -1 22 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65564 30 32 217 249 1 169 84 17 17 289 -1 unnamed_device 25.5 MiB 0.40 1079 10515 2657 5844 2014 64.0 MiB 0.09 0.00 5.98944 -123.803 -5.98944 5.98944 1.05 0.000515087 0.000468323 0.0346985 0.0316132 26 3384 49 6.55708e+06 265210 477104. 1650.88 7.89 0.238974 0.209644 21022 109990 -1 2435 21 1105 2659 279918 102620 6.47024 6.47024 -147.717 -6.47024 0 0 585099. 2024.56 0.30 0.12 0.11 -1 -1 0.30 0.0314922 0.0283418 132 126 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_012.v common 6.39 vpr 64.19 MiB 0.02 6848 -1 -1 12 0.19 -1 -1 36044 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65732 32 32 227 259 1 176 85 17 17 289 -1 unnamed_device 25.6 MiB 0.23 1093 12547 4184 6119 2244 64.2 MiB 0.09 0.00 5.51886 -121.204 -5.51886 5.51886 0.99 0.000512843 0.000464295 0.0372017 0.0336322 28 3407 47 6.55708e+06 253155 500653. 1732.36 2.86 0.142678 0.125456 21310 115450 -1 2726 21 1241 3504 285189 73429 5.75926 5.75926 -141.41 -5.75926 0 0 612192. 2118.31 0.27 0.11 0.11 -1 -1 0.27 0.031467 0.0283521 138 132 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_013.v common 5.92 vpr 65.06 MiB 0.03 7228 -1 -1 13 0.36 -1 -1 36532 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66620 32 32 306 338 1 235 94 17 17 289 -1 unnamed_device 26.4 MiB 0.41 1415 5845 939 4748 158 65.1 MiB 0.07 0.00 6.5609 -131.521 -6.5609 6.5609 1.04 0.000731746 0.00066309 0.0261193 0.0238266 28 4118 29 6.55708e+06 361650 500653. 1732.36 1.81 0.149372 0.132133 21310 115450 -1 3293 23 1748 5296 314827 71779 7.03204 7.03204 -154.655 -7.03204 0 0 612192. 2118.31 0.30 0.12 0.11 -1 -1 0.30 0.042485 0.0380722 212 211 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_014.v common 9.31 vpr 65.00 MiB 0.02 7092 -1 -1 14 0.42 -1 -1 36684 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 32 32 302 334 1 235 93 17 17 289 -1 unnamed_device 26.4 MiB 0.59 1512 12903 3453 7659 1791 65.0 MiB 0.13 0.00 7.41762 -151.614 -7.41762 7.41762 1.04 0.000788301 0.000715766 0.0526359 0.0476661 36 3714 23 6.55708e+06 349595 612192. 2118.31 4.91 0.312656 0.274248 22750 144809 -1 3212 16 1333 3774 202213 47705 8.09702 8.09702 -178.936 -8.09702 0 0 782063. 2706.10 0.34 0.09 0.15 -1 -1 0.34 0.0334351 0.0301401 208 207 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_015.v common 8.12 vpr 64.25 MiB 0.02 6792 -1 -1 11 0.22 -1 -1 36120 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65788 29 32 238 270 1 186 90 17 17 289 -1 unnamed_device 25.8 MiB 0.26 1092 12150 3323 7251 1576 64.2 MiB 0.10 0.00 5.15566 -106.737 -5.15566 5.15566 1.03 0.000591203 0.000538796 0.0384036 0.0345208 34 2633 23 6.55708e+06 349595 585099. 2024.56 4.35 0.289673 0.25473 22462 138074 -1 2341 19 1263 3546 183124 43480 5.49132 5.49132 -120.048 -5.49132 0 0 742403. 2568.87 0.34 0.08 0.13 -1 -1 0.34 0.0303947 0.0271708 160 149 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_016.v common 7.30 vpr 65.01 MiB 0.02 6996 -1 -1 12 0.35 -1 -1 36768 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 32 32 306 338 1 235 98 17 17 289 -1 unnamed_device 26.4 MiB 0.67 1620 7523 1547 5215 761 65.0 MiB 0.08 0.00 6.6001 -134.71 -6.6001 6.6001 1.06 0.000792987 0.000717068 0.0297805 0.0270427 30 4162 28 6.55708e+06 409870 526063. 1820.29 2.95 0.157751 0.139968 21886 126133 -1 3599 17 1592 4975 263557 59691 6.6419 6.6419 -154.495 -6.6419 0 0 666494. 2306.21 0.31 0.11 0.12 -1 -1 0.31 0.0370093 0.03356 213 211 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_017.v common 7.70 vpr 65.12 MiB 0.02 7216 -1 -1 13 0.34 -1 -1 36668 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 311 343 1 239 96 17 17 289 -1 unnamed_device 26.5 MiB 0.35 1448 13236 3314 7774 2148 65.1 MiB 0.12 0.00 6.5961 -137.919 -6.5961 6.5961 1.03 0.000737609 0.000666798 0.0502653 0.0453926 28 4621 38 6.55708e+06 385760 500653. 1732.36 3.65 0.188735 0.167387 21310 115450 -1 3453 31 1624 4846 398288 116969 6.9567 6.9567 -160.962 -6.9567 0 0 612192. 2118.31 0.28 0.17 0.11 -1 -1 0.28 0.0546194 0.0489231 217 216 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_018.v common 13.97 vpr 64.17 MiB 0.02 7048 -1 -1 12 0.20 -1 -1 36132 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65712 32 32 230 262 1 182 86 17 17 289 -1 unnamed_device 25.8 MiB 0.59 1085 5000 922 3954 124 64.2 MiB 0.05 0.00 6.1219 -131.656 -6.1219 6.1219 1.03 0.000525308 0.000474845 0.0173682 0.0158342 28 3124 37 6.55708e+06 265210 500653. 1732.36 9.95 0.222277 0.194386 21310 115450 -1 2458 14 954 2750 159970 38424 6.6027 6.6027 -155.559 -6.6027 0 0 612192. 2118.31 0.32 0.08 0.12 -1 -1 0.32 0.0255593 0.0229804 139 135 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_019.v common 4.10 vpr 63.79 MiB 0.02 6776 -1 -1 10 0.13 -1 -1 36276 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65320 30 32 176 208 1 139 82 17 17 289 -1 unnamed_device 25.2 MiB 0.13 813 6312 1391 4624 297 63.8 MiB 0.04 0.00 4.44306 -99.6509 -4.44306 4.44306 0.92 0.00037634 0.000341622 0.0154846 0.0140757 30 1993 19 6.55708e+06 241100 526063. 1820.29 0.96 0.0754393 0.0666798 21886 126133 -1 1732 14 679 1648 87712 21025 4.76446 4.76446 -115.823 -4.76446 0 0 666494. 2306.21 0.30 0.04 0.11 -1 -1 0.30 0.0163028 0.0145613 96 85 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_020.v common 5.03 vpr 64.10 MiB 0.02 6932 -1 -1 13 0.19 -1 -1 36232 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65636 31 32 226 258 1 176 87 17 17 289 -1 unnamed_device 25.7 MiB 0.35 1120 6615 1416 4619 580 64.1 MiB 0.05 0.00 6.22784 -130.123 -6.22784 6.22784 0.88 0.000499541 0.000452326 0.020525 0.0186851 28 2987 35 6.55708e+06 289320 500653. 1732.36 1.60 0.12113 0.107585 21310 115450 -1 2519 33 1440 4301 379415 151491 6.45598 6.45598 -150.67 -6.45598 0 0 612192. 2118.31 0.28 0.16 0.10 -1 -1 0.28 0.0436152 0.038919 139 133 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_021.v common 5.73 vpr 64.57 MiB 0.02 7008 -1 -1 13 0.37 -1 -1 36804 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 32 32 302 334 1 228 95 17 17 289 -1 unnamed_device 26.0 MiB 0.43 1465 10247 2563 6807 877 64.6 MiB 0.09 0.00 6.22984 -126.721 -6.22984 6.22984 0.96 0.000709114 0.000644382 0.0371961 0.0336967 30 3689 34 6.55708e+06 373705 526063. 1820.29 1.66 0.15792 0.139456 21886 126133 -1 3138 29 2264 8037 515268 175198 6.71064 6.71064 -152.021 -6.71064 0 0 666494. 2306.21 0.31 0.19 0.12 -1 -1 0.31 0.0514275 0.0456014 208 207 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_022.v common 8.90 vpr 64.77 MiB 0.02 7288 -1 -1 13 0.38 -1 -1 36448 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 32 32 299 331 1 237 98 17 17 289 -1 unnamed_device 26.2 MiB 0.55 1616 10448 2843 6873 732 64.8 MiB 0.09 0.00 6.5191 -137.159 -6.5191 6.5191 0.94 0.000639185 0.000578175 0.0355604 0.0320796 38 3922 24 6.55708e+06 409870 638502. 2209.35 4.74 0.224546 0.19864 23326 155178 -1 3295 16 1379 4612 240732 54056 6.90724 6.90724 -154.036 -6.90724 0 0 851065. 2944.86 0.38 0.10 0.16 -1 -1 0.38 0.0351585 0.0320403 207 204 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_023.v common 4.70 vpr 63.53 MiB 0.02 6900 -1 -1 9 0.11 -1 -1 35976 -1 -1 21 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65056 26 32 149 181 1 119 79 17 17 289 -1 unnamed_device 25.0 MiB 0.35 696 7346 2031 4662 653 63.5 MiB 0.05 0.00 3.89854 -77.4529 -3.89854 3.89854 0.96 0.000372234 0.000339455 0.0171886 0.0156181 26 1836 26 6.55708e+06 253155 477104. 1650.88 1.41 0.0755844 0.066352 21022 109990 -1 1705 18 671 1767 117589 27163 4.20768 4.20768 -93.02 -4.20768 0 0 585099. 2024.56 0.25 0.05 0.10 -1 -1 0.25 0.0155791 0.0138667 83 66 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_024.v common 4.85 vpr 64.95 MiB 0.02 7156 -1 -1 13 0.36 -1 -1 36504 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 32 32 304 336 1 228 94 17 17 289 -1 unnamed_device 26.5 MiB 0.22 1515 4780 716 3796 268 64.9 MiB 0.05 0.00 6.8405 -130.754 -6.8405 6.8405 0.89 0.000650177 0.000591311 0.0188775 0.0172432 30 3404 26 6.55708e+06 361650 526063. 1820.29 1.44 0.140845 0.126161 21886 126133 -1 3040 20 1381 3878 184947 43711 7.0809 7.0809 -150.111 -7.0809 0 0 666494. 2306.21 0.28 0.08 0.11 -1 -1 0.28 0.0342696 0.0308551 211 209 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_025.v common 4.88 vpr 63.63 MiB 0.02 6648 -1 -1 8 0.10 -1 -1 36268 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65160 32 32 155 187 1 113 81 17 17 289 -1 unnamed_device 25.2 MiB 0.22 432 4631 1024 2964 643 63.6 MiB 0.03 0.00 3.72586 -71.6208 -3.72586 3.72586 0.89 0.000328257 0.000298496 0.0105743 0.00958378 34 1334 50 6.55708e+06 204935 585099. 2024.56 1.81 0.120052 0.105351 22462 138074 -1 1067 29 565 1146 143089 77876 3.9958 3.9958 -87.775 -3.9958 0 0 742403. 2568.87 0.30 0.08 0.12 -1 -1 0.30 0.0219164 0.0193422 77 60 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_026.v common 8.08 vpr 64.25 MiB 0.02 7108 -1 -1 15 0.30 -1 -1 36532 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65788 32 32 253 285 1 192 89 17 17 289 -1 unnamed_device 25.8 MiB 0.26 1122 12167 3931 6268 1968 64.2 MiB 0.09 0.00 7.12896 -136.985 -7.12896 7.12896 0.96 0.000594358 0.0005397 0.0395573 0.0359098 38 2709 27 6.55708e+06 301375 638502. 2209.35 4.36 0.261677 0.231315 23326 155178 -1 2201 28 976 2888 231665 88843 7.36935 7.36935 -153.025 -7.36935 0 0 851065. 2944.86 0.35 0.11 0.14 -1 -1 0.35 0.0384189 0.0342664 161 158 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_027.v common 6.61 vpr 65.04 MiB 0.02 6940 -1 -1 12 0.31 -1 -1 36736 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 32 32 309 341 1 232 95 17 17 289 -1 unnamed_device 26.4 MiB 0.26 1431 15215 4212 8295 2708 65.0 MiB 0.12 0.00 5.73938 -123.875 -5.73938 5.73938 0.90 0.000633361 0.000566249 0.0501008 0.0447619 34 4130 30 6.55708e+06 373705 585099. 2024.56 2.99 0.202305 0.178521 22462 138074 -1 3179 16 1504 4711 271633 62518 6.01898 6.01898 -141.53 -6.01898 0 0 742403. 2568.87 0.31 0.09 0.12 -1 -1 0.31 0.0315468 0.0285511 218 214 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_028.v common 9.03 vpr 64.91 MiB 0.02 7228 -1 -1 13 0.35 -1 -1 36708 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 32 32 289 321 1 218 92 17 17 289 -1 unnamed_device 26.5 MiB 0.40 1446 8786 2118 5866 802 64.9 MiB 0.08 0.00 5.98944 -130.404 -5.98944 5.98944 0.96 0.00066407 0.000593268 0.0329391 0.0297564 34 3612 48 6.55708e+06 337540 585099. 2024.56 5.16 0.329086 0.288563 22462 138074 -1 3123 17 1412 4170 225204 52230 6.59044 6.59044 -151.967 -6.59044 0 0 742403. 2568.87 0.31 0.08 0.13 -1 -1 0.31 0.0309097 0.0279475 196 194 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_029.v common 9.20 vpr 64.38 MiB 0.02 7012 -1 -1 12 0.21 -1 -1 36148 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65924 32 32 239 271 1 188 86 17 17 289 -1 unnamed_device 26.0 MiB 0.28 1170 8213 1877 5734 602 64.4 MiB 0.07 0.00 5.35486 -120.577 -5.35486 5.35486 0.95 0.000544535 0.000492368 0.0281382 0.025485 28 3154 20 6.55708e+06 265210 500653. 1732.36 5.75 0.187597 0.16384 21310 115450 -1 2713 17 1130 2960 178270 41586 5.80812 5.80812 -139.881 -5.80812 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.024145 0.0216168 146 144 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_030.v common 11.08 vpr 64.14 MiB 0.02 6976 -1 -1 11 0.20 -1 -1 36564 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65684 30 32 213 245 1 162 85 17 17 289 -1 unnamed_device 25.6 MiB 0.22 1033 12175 3693 6499 1983 64.1 MiB 0.08 0.00 5.08892 -110.458 -5.08892 5.08892 0.96 0.000508696 0.000461677 0.0348155 0.0314919 26 3180 48 6.55708e+06 277265 477104. 1650.88 7.61 0.207062 0.180965 21022 109990 -1 2482 18 1088 2899 187706 42496 5.36346 5.36346 -128.724 -5.36346 0 0 585099. 2024.56 0.28 0.08 0.11 -1 -1 0.28 0.0268743 0.0240563 128 122 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_031.v common 4.81 vpr 64.29 MiB 0.02 7048 -1 -1 11 0.18 -1 -1 36988 -1 -1 27 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65836 28 32 221 253 1 183 87 17 17 289 -1 unnamed_device 25.9 MiB 0.27 1194 6807 1572 4701 534 64.3 MiB 0.05 0.00 5.38078 -108.16 -5.38078 5.38078 0.88 0.000488173 0.000442886 0.0203499 0.0185305 30 2896 24 6.55708e+06 325485 526063. 1820.29 1.59 0.107034 0.0951805 21886 126133 -1 2367 16 959 2812 136965 32097 5.71746 5.71746 -125.995 -5.71746 0 0 666494. 2306.21 0.27 0.06 0.10 -1 -1 0.27 0.0227381 0.0205272 142 134 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_032.v common 5.93 vpr 64.99 MiB 0.02 6996 -1 -1 12 0.24 -1 -1 35956 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 32 32 273 305 1 210 92 17 17 289 -1 unnamed_device 26.2 MiB 0.25 1310 7130 1637 4768 725 65.0 MiB 0.06 0.00 5.77598 -133.314 -5.77598 5.77598 0.98 0.00059782 0.000541751 0.0242006 0.0219228 28 3666 37 6.55708e+06 337540 500653. 1732.36 2.34 0.136349 0.120374 21310 115450 -1 3176 24 1590 4162 325677 94052 6.37698 6.37698 -160.733 -6.37698 0 0 612192. 2118.31 0.27 0.12 0.11 -1 -1 0.27 0.0370314 0.0331718 180 178 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_033.v common 6.90 vpr 64.38 MiB 0.02 7056 -1 -1 11 0.21 -1 -1 35952 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65924 31 32 238 270 1 182 86 17 17 289 -1 unnamed_device 26.0 MiB 0.32 1025 4622 820 3663 139 64.4 MiB 0.04 0.00 5.53052 -114.027 -5.53052 5.53052 0.97 0.000549172 0.000495433 0.016829 0.0153362 30 2523 23 6.55708e+06 277265 526063. 1820.29 3.34 0.191923 0.167707 21886 126133 -1 2094 16 1014 2830 121810 30859 5.67566 5.67566 -127.68 -5.67566 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.023942 0.0214461 147 145 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_034.v common 4.70 vpr 64.20 MiB 0.02 6980 -1 -1 10 0.18 -1 -1 36340 -1 -1 24 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65736 29 32 221 253 1 165 85 17 17 289 -1 unnamed_device 25.6 MiB 0.27 909 11989 3939 5614 2436 64.2 MiB 0.08 0.00 5.05172 -101.001 -5.05172 5.05172 0.97 0.000489618 0.000442616 0.0357111 0.0323568 30 2497 25 6.55708e+06 289320 526063. 1820.29 1.23 0.122337 0.108624 21886 126133 -1 1837 15 830 2464 114600 28220 5.39806 5.39806 -113.948 -5.39806 0 0 666494. 2306.21 0.30 0.05 0.11 -1 -1 0.30 0.0221422 0.0200053 138 132 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_035.v common 9.01 vpr 65.20 MiB 0.02 7172 -1 -1 13 0.39 -1 -1 37288 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66760 32 32 333 365 1 249 97 17 17 289 -1 unnamed_device 26.8 MiB 0.35 1576 6535 1304 4458 773 65.2 MiB 0.07 0.00 6.0409 -126.834 -6.0409 6.0409 0.94 0.000745372 0.000673403 0.0276181 0.0250043 38 3561 28 6.55708e+06 397815 638502. 2209.35 5.16 0.318839 0.279516 23326 155178 -1 3019 16 1324 4483 217817 49468 6.4407 6.4407 -144.605 -6.4407 0 0 851065. 2944.86 0.35 0.09 0.15 -1 -1 0.35 0.0352355 0.0319972 239 238 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_036.v common 6.14 vpr 64.98 MiB 0.02 7116 -1 -1 13 0.37 -1 -1 36904 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 32 32 297 329 1 227 93 17 17 289 -1 unnamed_device 26.4 MiB 0.44 1472 7443 1563 4972 908 65.0 MiB 0.07 0.00 6.46824 -141.83 -6.46824 6.46824 0.90 0.000651053 0.000590234 0.0265674 0.0239899 36 3852 29 6.55708e+06 349595 612192. 2118.31 2.37 0.183843 0.163161 22750 144809 -1 3245 17 1482 4744 278914 62896 6.7601 6.7601 -158.997 -6.7601 0 0 782063. 2706.10 0.31 0.10 0.12 -1 -1 0.31 0.035303 0.0322676 203 202 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_037.v common 5.65 vpr 64.28 MiB 0.02 6884 -1 -1 12 0.19 -1 -1 36748 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65820 31 32 234 266 1 181 88 17 17 289 -1 unnamed_device 25.9 MiB 0.36 1186 7888 1780 4882 1226 64.3 MiB 0.06 0.00 5.38078 -116.722 -5.38078 5.38078 0.92 0.000535447 0.00047053 0.0239666 0.0217189 28 3185 26 6.55708e+06 301375 500653. 1732.36 2.11 0.107037 0.0941192 21310 115450 -1 2729 18 1186 3299 215428 47755 6.14378 6.14378 -145.081 -6.14378 0 0 612192. 2118.31 0.28 0.08 0.11 -1 -1 0.28 0.0266551 0.0240157 150 141 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_038.v common 5.39 vpr 64.82 MiB 0.02 7008 -1 -1 12 0.30 -1 -1 36700 -1 -1 34 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66380 31 32 310 342 1 234 97 17 17 289 -1 unnamed_device 26.2 MiB 0.24 1486 14305 3786 8101 2418 64.8 MiB 0.12 0.00 6.3969 -132.406 -6.3969 6.3969 0.89 0.000668777 0.000606659 0.0466354 0.0422409 30 3753 37 6.55708e+06 409870 526063. 1820.29 1.96 0.17449 0.154943 21886 126133 -1 2985 16 1460 4439 203322 49656 6.5955 6.5955 -148.716 -6.5955 0 0 666494. 2306.21 0.27 0.08 0.10 -1 -1 0.27 0.0320939 0.0292273 219 217 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_039.v common 6.93 vpr 64.71 MiB 0.02 7280 -1 -1 14 0.44 -1 -1 36648 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 31 32 284 316 1 221 91 17 17 289 -1 unnamed_device 26.3 MiB 0.26 1494 12331 3548 7305 1478 64.7 MiB 0.11 0.00 6.5543 -132.531 -6.5543 6.5543 0.97 0.000729481 0.000662663 0.0476328 0.04304 28 4409 27 6.55708e+06 337540 500653. 1732.36 3.09 0.153667 0.135907 21310 115450 -1 3339 24 1713 5207 380523 105320 7.3565 7.3565 -158.988 -7.3565 0 0 612192. 2118.31 0.28 0.14 0.11 -1 -1 0.28 0.0413091 0.0371482 194 191 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_040.v common 6.17 vpr 64.55 MiB 0.02 7184 -1 -1 13 0.33 -1 -1 36916 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 31 32 271 303 1 212 91 17 17 289 -1 unnamed_device 26.2 MiB 0.31 1357 8659 1997 5313 1349 64.5 MiB 0.08 0.00 6.74784 -138.35 -6.74784 6.74784 0.96 0.000636712 0.00056598 0.031022 0.0280754 34 3619 22 6.55708e+06 337540 585099. 2024.56 2.38 0.158575 0.140775 22462 138074 -1 3007 20 1410 3930 231792 53727 7.10844 7.10844 -158.849 -7.10844 0 0 742403. 2568.87 0.32 0.09 0.13 -1 -1 0.32 0.0328823 0.029614 181 178 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_041.v common 8.09 vpr 64.42 MiB 0.02 7060 -1 -1 12 0.30 -1 -1 36612 -1 -1 30 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65964 31 32 280 312 1 211 93 17 17 289 -1 unnamed_device 26.0 MiB 0.57 1398 13113 3430 7650 2033 64.4 MiB 0.11 0.00 5.59164 -120.742 -5.59164 5.59164 0.93 0.000627099 0.00056616 0.0422853 0.0380502 36 3526 42 6.55708e+06 361650 612192. 2118.31 4.16 0.296326 0.260236 22750 144809 -1 2908 17 1211 3996 218534 48809 6.19264 6.19264 -139.316 -6.19264 0 0 782063. 2706.10 0.32 0.08 0.12 -1 -1 0.32 0.0312114 0.0282055 189 187 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_042.v common 5.80 vpr 64.43 MiB 0.02 7260 -1 -1 12 0.24 -1 -1 36404 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65980 32 32 264 296 1 194 88 17 17 289 -1 unnamed_device 25.9 MiB 0.32 1307 9643 2451 5890 1302 64.4 MiB 0.08 0.00 5.8025 -120.324 -5.8025 5.8025 0.96 0.000605337 0.000551758 0.032977 0.029885 28 3392 20 6.55708e+06 289320 500653. 1732.36 2.14 0.123589 0.109625 21310 115450 -1 2909 20 1410 4395 274460 61376 6.4035 6.4035 -147.869 -6.4035 0 0 612192. 2118.31 0.27 0.10 0.11 -1 -1 0.27 0.0314224 0.0283117 172 169 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_043.v common 9.20 vpr 65.07 MiB 0.02 7412 -1 -1 14 0.59 -1 -1 36944 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 32 32 339 371 1 259 98 17 17 289 -1 unnamed_device 26.9 MiB 0.43 1718 8198 1879 5662 657 65.1 MiB 0.08 0.00 6.5197 -139.307 -6.5197 6.5197 0.94 0.000744255 0.000662475 0.0316536 0.02853 38 4098 28 6.55708e+06 409870 638502. 2209.35 4.97 0.306116 0.268366 23326 155178 -1 3490 17 1519 5181 260546 58755 6.9613 6.9613 -158.842 -6.9613 0 0 851065. 2944.86 0.35 0.10 0.15 -1 -1 0.35 0.0357314 0.0322914 245 244 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_044.v common 7.38 vpr 64.45 MiB 0.02 7032 -1 -1 11 0.25 -1 -1 36316 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65992 31 32 246 278 1 188 89 17 17 289 -1 unnamed_device 26.0 MiB 0.28 1203 14345 3942 8112 2291 64.4 MiB 0.11 0.00 5.30238 -114.4 -5.30238 5.30238 0.93 0.000572381 0.000517391 0.044337 0.0401073 38 2862 16 6.55708e+06 313430 638502. 2209.35 3.75 0.242503 0.212742 23326 155178 -1 2379 16 977 2727 136983 31587 5.66298 5.66298 -130.432 -5.66298 0 0 851065. 2944.86 0.35 0.06 0.14 -1 -1 0.35 0.0255826 0.023099 160 153 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_045.v common 10.49 vpr 64.82 MiB 0.02 7288 -1 -1 13 0.36 -1 -1 36736 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 31 32 268 300 1 203 90 17 17 289 -1 unnamed_device 26.4 MiB 0.49 1363 5919 1272 4039 608 64.8 MiB 0.06 0.00 6.33076 -127.785 -6.33076 6.33076 0.99 0.000688462 0.000625256 0.0232093 0.0211395 30 3708 41 6.55708e+06 325485 526063. 1820.29 6.55 0.279659 0.245342 21886 126133 -1 2850 17 1262 4250 212026 48390 6.6007 6.6007 -145.975 -6.6007 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0299399 0.027067 177 175 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_046.v common 5.61 vpr 64.79 MiB 0.02 7112 -1 -1 12 0.32 -1 -1 36612 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 32 32 318 350 1 229 98 17 17 289 -1 unnamed_device 26.1 MiB 0.40 1554 7973 1709 5467 797 64.8 MiB 0.07 0.00 6.01898 -130.646 -6.01898 6.01898 0.89 0.000702971 0.000632966 0.0288828 0.0260057 30 4018 23 6.55708e+06 409870 526063. 1820.29 1.98 0.151654 0.135421 21886 126133 -1 3283 20 1428 5122 241778 56454 6.14118 6.14118 -145.415 -6.14118 0 0 666494. 2306.21 0.27 0.09 0.10 -1 -1 0.27 0.0359492 0.0323598 227 223 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_047.v common 7.78 vpr 64.75 MiB 0.02 7088 -1 -1 13 0.29 -1 -1 36312 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 32 32 273 305 1 205 92 17 17 289 -1 unnamed_device 26.4 MiB 0.20 1234 14168 3976 7538 2654 64.7 MiB 0.11 0.00 6.30884 -130.584 -6.30884 6.30884 0.91 0.000592696 0.000530103 0.045798 0.0412899 36 3255 21 6.55708e+06 337540 612192. 2118.31 4.32 0.271135 0.239144 22750 144809 -1 2678 18 1221 3468 195751 45701 6.63024 6.63024 -149.501 -6.63024 0 0 782063. 2706.10 0.31 0.08 0.12 -1 -1 0.31 0.0309088 0.0278121 184 178 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_048.v common 6.67 vpr 64.75 MiB 0.02 7020 -1 -1 13 0.28 -1 -1 36460 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 32 32 269 301 1 197 89 17 17 289 -1 unnamed_device 26.2 MiB 0.37 1223 14741 4322 8043 2376 64.8 MiB 0.11 0.00 6.1219 -132.483 -6.1219 6.1219 0.98 0.000596708 0.00053805 0.0489449 0.0441109 28 3613 43 6.55708e+06 301375 500653. 1732.36 2.88 0.170852 0.150953 21310 115450 -1 3056 16 1286 3789 255391 58519 6.3643 6.3643 -153.511 -6.3643 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0272013 0.0244739 175 174 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_049.v common 6.76 vpr 64.90 MiB 0.02 7044 -1 -1 12 0.36 -1 -1 36624 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 32 32 298 330 1 223 95 17 17 289 -1 unnamed_device 26.4 MiB 0.83 1434 8303 1877 5532 894 64.9 MiB 0.08 0.00 5.63344 -124.299 -5.63344 5.63344 1.00 0.000721691 0.000642208 0.0311605 0.0280053 30 3602 50 6.55708e+06 373705 526063. 1820.29 2.42 0.179366 0.158477 21886 126133 -1 3007 18 1305 4660 219168 50777 5.87384 5.87384 -142.241 -5.87384 0 0 666494. 2306.21 0.29 0.09 0.12 -1 -1 0.29 0.0339718 0.0307679 205 203 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_050.v common 6.19 vpr 64.90 MiB 0.02 7020 -1 -1 13 0.37 -1 -1 37208 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 299 331 1 235 93 17 17 289 -1 unnamed_device 26.4 MiB 0.39 1543 7233 1537 4958 738 64.9 MiB 0.07 0.00 6.2813 -128.6 -6.2813 6.2813 0.96 0.000675938 0.000611815 0.0276868 0.0249918 30 4007 46 6.55708e+06 349595 526063. 1820.29 2.35 0.17118 0.151445 21886 126133 -1 3158 18 1479 4524 215908 50563 6.6393 6.6393 -148.92 -6.6393 0 0 666494. 2306.21 0.29 0.09 0.11 -1 -1 0.29 0.0333434 0.0299737 205 204 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_051.v common 8.20 vpr 64.54 MiB 0.02 7084 -1 -1 14 0.36 -1 -1 36492 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 259 291 1 193 89 17 17 289 -1 unnamed_device 26.0 MiB 0.50 1261 10583 2868 6692 1023 64.5 MiB 0.09 0.00 6.5151 -134.739 -6.5151 6.5151 1.02 0.000614861 0.000555366 0.0366413 0.0331625 28 3556 47 6.55708e+06 301375 500653. 1732.36 4.08 0.260663 0.228308 21310 115450 -1 3000 17 1349 4292 274216 61717 7.1227 7.1227 -156.513 -7.1227 0 0 612192. 2118.31 0.28 0.10 0.11 -1 -1 0.28 0.0308775 0.0280364 167 164 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_052.v common 5.73 vpr 64.71 MiB 0.02 7064 -1 -1 13 0.35 -1 -1 36720 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 32 32 293 325 1 226 94 17 17 289 -1 unnamed_device 26.3 MiB 0.64 1449 7762 1637 5531 594 64.7 MiB 0.07 0.00 6.52936 -137.992 -6.52936 6.52936 0.98 0.000670583 0.000610583 0.0293202 0.0264279 30 3459 19 6.55708e+06 361650 526063. 1820.29 1.61 0.126246 0.111016 21886 126133 -1 2830 15 1347 3796 180147 43042 7.09116 7.09116 -155.022 -7.09116 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0279541 0.0252865 199 198 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_053.v common 6.08 vpr 65.19 MiB 0.02 7128 -1 -1 13 0.37 -1 -1 36764 -1 -1 32 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 31 32 311 343 1 231 95 17 17 289 -1 unnamed_device 26.5 MiB 0.40 1538 12191 3186 7658 1347 65.2 MiB 0.11 0.00 6.88536 -140.416 -6.88536 6.88536 1.04 0.000728438 0.000657873 0.0477055 0.0428907 30 3793 41 6.55708e+06 385760 526063. 1820.29 1.96 0.192715 0.171297 21886 126133 -1 3119 17 1280 4117 200869 46061 7.56736 7.56736 -161.114 -7.56736 0 0 666494. 2306.21 0.30 0.08 0.12 -1 -1 0.30 0.0332452 0.0300419 221 218 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_054.v common 9.25 vpr 65.15 MiB 0.02 7124 -1 -1 12 0.41 -1 -1 36312 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66716 32 32 324 356 1 240 96 17 17 289 -1 unnamed_device 26.5 MiB 0.49 1611 10170 2431 6417 1322 65.2 MiB 0.10 0.00 6.31084 -138.51 -6.31084 6.31084 0.93 0.000735455 0.000663289 0.0402363 0.0363731 36 4062 34 6.55708e+06 385760 612192. 2118.31 4.86 0.24658 0.217691 22750 144809 -1 3333 56 1579 5427 1005994 592375 6.79164 6.79164 -157.329 -6.79164 0 0 782063. 2706.10 0.32 0.42 0.14 -1 -1 0.32 0.0853103 0.0753109 231 229 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_055.v common 7.06 vpr 64.22 MiB 0.02 7016 -1 -1 11 0.17 -1 -1 36684 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65764 32 32 216 248 1 165 83 17 17 289 -1 unnamed_device 25.7 MiB 0.26 1077 11423 3236 6140 2047 64.2 MiB 0.09 0.00 4.97132 -113.985 -4.97132 4.97132 1.03 0.000499746 0.000442267 0.0355051 0.0322644 30 2495 18 6.55708e+06 229045 526063. 1820.29 3.42 0.207589 0.182053 21886 126133 -1 2115 15 893 2439 114038 27197 5.09152 5.09152 -129.064 -5.09152 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0223956 0.020341 127 121 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_056.v common 6.62 vpr 64.62 MiB 0.02 6920 -1 -1 13 0.23 -1 -1 36600 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 32 32 245 277 1 195 91 17 17 289 -1 unnamed_device 26.2 MiB 0.54 1303 4783 804 3630 349 64.6 MiB 0.05 0.00 6.82684 -145.66 -6.82684 6.82684 1.02 0.000606254 0.000547786 0.0175553 0.015952 28 3660 31 6.55708e+06 325485 500653. 1732.36 2.74 0.122161 0.107525 21310 115450 -1 2964 29 1190 3442 351883 131863 7.06724 7.06724 -162.105 -7.06724 0 0 612192. 2118.31 0.27 0.15 0.10 -1 -1 0.27 0.0441797 0.0395984 156 150 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_057.v common 9.82 vpr 65.24 MiB 0.03 7320 -1 -1 14 0.56 -1 -1 36564 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 32 32 361 393 1 263 100 17 17 289 -1 unnamed_device 26.9 MiB 0.51 1725 7988 1528 5764 696 65.2 MiB 0.09 0.00 7.24596 -154.761 -7.24596 7.24596 1.04 0.00106892 0.000967086 0.0387639 0.0351402 38 3956 19 6.55708e+06 433980 638502. 2209.35 5.30 0.364098 0.320531 23326 155178 -1 3352 17 1511 4769 224617 51838 7.60916 7.60916 -172.361 -7.60916 0 0 851065. 2944.86 0.37 0.10 0.15 -1 -1 0.37 0.0400434 0.0364923 267 266 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_058.v common 6.68 vpr 64.94 MiB 0.02 7072 -1 -1 13 0.45 -1 -1 37052 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 318 350 1 241 95 17 17 289 -1 unnamed_device 26.4 MiB 0.63 1465 11759 2984 7444 1331 64.9 MiB 0.12 0.00 6.59044 -139.011 -6.59044 6.59044 1.11 0.000836774 0.0007587 0.0523207 0.0474369 28 3886 21 6.55708e+06 373705 500653. 1732.36 2.01 0.17475 0.155433 21310 115450 -1 3462 20 1732 5204 297597 68173 7.0417 7.0417 -162.024 -7.0417 0 0 612192. 2118.31 0.30 0.12 0.12 -1 -1 0.30 0.0428485 0.0387518 224 223 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_059.v common 10.66 vpr 64.21 MiB 0.02 6968 -1 -1 11 0.21 -1 -1 36600 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65748 30 32 223 255 1 165 85 17 17 289 -1 unnamed_device 25.6 MiB 0.24 975 9199 2680 4891 1628 64.2 MiB 0.08 0.00 5.42198 -108.929 -5.42198 5.42198 0.97 0.000522845 0.000471738 0.0298407 0.0269654 28 2730 32 6.55708e+06 277265 500653. 1732.36 7.21 0.22462 0.197621 21310 115450 -1 2254 18 973 2923 171623 39968 5.66238 5.66238 -128.82 -5.66238 0 0 612192. 2118.31 0.27 0.07 0.10 -1 -1 0.27 0.0262714 0.0236218 137 132 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_060.v common 10.00 vpr 65.24 MiB 0.03 7384 -1 -1 15 0.62 -1 -1 37304 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 32 32 335 367 1 253 97 17 17 289 -1 unnamed_device 26.8 MiB 0.45 1747 6979 1368 4970 641 65.2 MiB 0.10 0.00 7.16555 -148.955 -7.16555 7.16555 1.10 0.000943104 0.000856976 0.0398906 0.0363581 36 4348 21 6.55708e+06 397815 612192. 2118.31 5.31 0.355256 0.313668 22750 144809 -1 3696 20 1797 6129 338145 76058 7.68555 7.68555 -172.086 -7.68555 0 0 782063. 2706.10 0.37 0.13 0.15 -1 -1 0.37 0.0453148 0.040459 241 240 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_061.v common 8.08 vpr 64.84 MiB 0.02 7100 -1 -1 13 0.43 -1 -1 36656 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 32 32 301 333 1 226 93 17 17 289 -1 unnamed_device 26.3 MiB 0.47 1460 16473 4845 9025 2603 64.8 MiB 0.15 0.00 6.4015 -131.383 -6.4015 6.4015 1.06 0.000757499 0.000687565 0.0652631 0.0590086 36 4038 27 6.55708e+06 349595 612192. 2118.31 3.62 0.261461 0.230554 22750 144809 -1 3126 18 1451 4071 225697 52784 6.7621 6.7621 -153.301 -6.7621 0 0 782063. 2706.10 0.34 0.10 0.14 -1 -1 0.34 0.0389627 0.0352222 207 206 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_062.v common 5.54 vpr 64.20 MiB 0.02 6844 -1 -1 11 0.18 -1 -1 36656 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65740 32 32 238 270 1 183 88 17 17 289 -1 unnamed_device 25.8 MiB 0.28 1185 6133 1245 4433 455 64.2 MiB 0.06 0.00 5.37818 -115.152 -5.37818 5.37818 1.09 0.00056026 0.000512069 0.021849 0.0198351 28 2967 37 6.55708e+06 289320 500653. 1732.36 1.75 0.126624 0.111831 21310 115450 -1 2542 13 1044 2809 159571 37701 5.73878 5.73878 -135.398 -5.73878 0 0 612192. 2118.31 0.29 0.07 0.12 -1 -1 0.29 0.0234896 0.0213206 149 143 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_063.v common 9.25 vpr 65.05 MiB 0.03 7220 -1 -1 12 0.40 -1 -1 36504 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 32 32 308 340 1 230 95 17 17 289 -1 unnamed_device 26.6 MiB 0.44 1475 7223 1427 5252 544 65.1 MiB 0.08 0.00 6.01898 -125.784 -6.01898 6.01898 1.06 0.000694995 0.000615858 0.0300244 0.027057 44 3257 20 6.55708e+06 373705 742403. 2568.87 4.84 0.347898 0.304926 24478 177802 -1 2838 18 1255 4322 214737 48906 6.13918 6.13918 -138.875 -6.13918 0 0 937218. 3242.97 0.44 0.10 0.18 -1 -1 0.44 0.0378171 0.0341869 217 213 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_064.v common 11.78 vpr 64.50 MiB 0.02 6824 -1 -1 12 0.26 -1 -1 36308 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 32 32 253 285 1 192 90 17 17 289 -1 unnamed_device 26.0 MiB 0.30 1249 9336 2327 6152 857 64.5 MiB 0.08 0.00 6.2421 -127.001 -6.2421 6.2421 1.03 0.000609999 0.00055393 0.0327313 0.0296729 28 3537 37 6.55708e+06 313430 500653. 1732.36 7.97 0.247636 0.217777 21310 115450 -1 2891 25 1592 4643 391881 128750 6.62964 6.62964 -152.214 -6.62964 0 0 612192. 2118.31 0.28 0.16 0.10 -1 -1 0.28 0.0402917 0.0361809 164 158 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_065.v common 5.38 vpr 64.46 MiB 0.02 6900 -1 -1 12 0.25 -1 -1 36548 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 30 32 227 259 1 163 83 17 17 289 -1 unnamed_device 26.1 MiB 0.27 996 7283 1637 4962 684 64.5 MiB 0.06 0.00 6.02864 -123.283 -6.02864 6.02864 1.09 0.000510354 0.000457005 0.0258803 0.0235609 24 2938 39 6.55708e+06 253155 448715. 1552.65 1.62 0.142924 0.127491 20734 103517 -1 2277 18 1000 2814 166754 39174 6.50944 6.50944 -143.516 -6.50944 0 0 554710. 1919.41 0.24 0.08 0.09 -1 -1 0.24 0.0304421 0.0275269 139 136 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_066.v common 7.48 vpr 64.86 MiB 0.02 7132 -1 -1 12 0.39 -1 -1 36512 -1 -1 32 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 29 32 292 324 1 222 93 17 17 289 -1 unnamed_device 26.4 MiB 0.36 1365 8283 1979 5372 932 64.9 MiB 0.09 0.00 5.93798 -112.647 -5.93798 5.93798 1.12 0.000797091 0.000726435 0.0369889 0.0335731 28 4231 44 6.55708e+06 385760 500653. 1732.36 3.11 0.192713 0.170868 21310 115450 -1 3392 23 1702 5572 474496 153065 6.46258 6.46258 -134.064 -6.46258 0 0 612192. 2118.31 0.30 0.19 0.12 -1 -1 0.30 0.0452691 0.040589 208 203 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_067.v common 6.39 vpr 65.01 MiB 0.02 7128 -1 -1 14 0.45 -1 -1 36768 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 32 32 316 348 1 253 96 17 17 289 -1 unnamed_device 26.6 MiB 0.65 1500 8418 1799 6158 461 65.0 MiB 0.10 0.00 6.85076 -144.99 -6.85076 6.85076 1.11 0.0011526 0.00106622 0.0387667 0.0354061 30 3832 22 6.55708e+06 385760 526063. 1820.29 1.68 0.170088 0.151371 21886 126133 -1 3272 18 1607 4551 212076 50858 7.1579 7.1579 -163.825 -7.1579 0 0 666494. 2306.21 0.34 0.12 0.13 -1 -1 0.34 0.0447408 0.040588 227 221 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_068.v common 19.22 vpr 64.71 MiB 0.02 7256 -1 -1 12 0.29 -1 -1 36936 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 32 32 286 318 1 212 91 17 17 289 -1 unnamed_device 26.3 MiB 0.48 1468 9679 2510 6148 1021 64.7 MiB 0.09 0.00 6.07044 -130.174 -6.07044 6.07044 1.05 0.000665638 0.000605476 0.0386711 0.0349029 26 4918 48 6.55708e+06 325485 477104. 1650.88 15.04 0.317491 0.27907 21022 109990 -1 3755 33 2199 7122 985607 351731 6.74984 6.74984 -156.935 -6.74984 0 0 585099. 2024.56 0.25 0.31 0.10 -1 -1 0.25 0.0554646 0.0496759 192 191 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_069.v common 10.87 vpr 64.28 MiB 0.02 6908 -1 -1 12 0.18 -1 -1 36744 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65820 32 32 221 253 1 168 87 17 17 289 -1 unnamed_device 25.7 MiB 0.50 1147 6423 1324 4273 826 64.3 MiB 0.06 0.00 5.37878 -117.138 -5.37878 5.37878 1.08 0.000596713 0.000532968 0.0222257 0.0202101 28 2852 49 6.55708e+06 277265 500653. 1732.36 6.91 0.213756 0.187156 21310 115450 -1 2455 16 893 2692 174987 39470 5.73938 5.73938 -135.211 -5.73938 0 0 612192. 2118.31 0.30 0.07 0.11 -1 -1 0.30 0.0258459 0.0234052 133 126 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_070.v common 13.57 vpr 64.36 MiB 0.02 7120 -1 -1 12 0.26 -1 -1 36112 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65908 31 32 261 293 1 199 88 17 17 289 -1 unnamed_device 25.8 MiB 0.28 1122 14518 3967 7759 2792 64.4 MiB 0.11 0.00 6.1611 -118.405 -6.1611 6.1611 0.93 0.000562355 0.000501966 0.0474074 0.0427428 28 3363 32 6.55708e+06 301375 500653. 1732.36 10.03 0.256881 0.227618 21310 115450 -1 2632 18 1247 3415 187148 46602 6.50178 6.50178 -142.447 -6.50178 0 0 612192. 2118.31 0.28 0.08 0.10 -1 -1 0.28 0.0321137 0.028982 170 168 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_071.v common 5.68 vpr 64.50 MiB 0.02 7120 -1 -1 11 0.26 -1 -1 36392 -1 -1 28 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 30 32 277 309 1 208 90 17 17 289 -1 unnamed_device 26.1 MiB 0.29 1278 10341 2819 6494 1028 64.5 MiB 0.09 0.00 5.13472 -109.701 -5.13472 5.13472 1.01 0.000683937 0.00061383 0.0370717 0.0334533 30 3371 25 6.55708e+06 337540 526063. 1820.29 1.69 0.144844 0.128 21886 126133 -1 2710 28 1660 6357 491744 188825 5.33332 5.33332 -126.882 -5.33332 0 0 666494. 2306.21 0.33 0.21 0.13 -1 -1 0.33 0.0501412 0.0450437 189 186 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_072.v common 5.94 vpr 64.50 MiB 0.03 7084 -1 -1 11 0.26 -1 -1 36496 -1 -1 28 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 28 32 251 283 1 194 88 17 17 289 -1 unnamed_device 25.9 MiB 0.40 1218 9643 2530 5885 1228 64.5 MiB 0.08 0.00 5.38078 -98.2735 -5.38078 5.38078 0.98 0.000643943 0.000580537 0.0301477 0.0271989 30 3249 35 6.55708e+06 337540 526063. 1820.29 2.14 0.146693 0.130039 21886 126133 -1 2668 16 1185 3899 200551 46161 5.38078 5.38078 -113.577 -5.38078 0 0 666494. 2306.21 0.31 0.09 0.12 -1 -1 0.31 0.030266 0.0272337 171 164 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_073.v common 7.89 vpr 64.11 MiB 0.02 7084 -1 -1 13 0.25 -1 -1 36576 -1 -1 25 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65644 30 32 223 255 1 182 87 17 17 289 -1 unnamed_device 25.7 MiB 0.57 1085 5463 1160 3699 604 64.1 MiB 0.05 0.00 6.3185 -124.03 -6.3185 6.3185 1.01 0.000529445 0.000482064 0.0191164 0.017462 34 2687 44 6.55708e+06 301375 585099. 2024.56 3.81 0.235907 0.207829 22462 138074 -1 2345 17 961 2479 141721 33371 6.6399 6.6399 -141.264 -6.6399 0 0 742403. 2568.87 0.34 0.07 0.14 -1 -1 0.34 0.0288175 0.0262 142 132 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_074.v common 5.98 vpr 64.84 MiB 0.02 6876 -1 -1 12 0.26 -1 -1 36332 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 269 301 1 211 91 17 17 289 -1 unnamed_device 26.1 MiB 0.46 1341 7639 1544 5419 676 64.8 MiB 0.07 0.00 6.06784 -131.714 -6.06784 6.06784 1.07 0.000927774 0.000864605 0.0297708 0.0268857 28 3612 31 6.55708e+06 325485 500653. 1732.36 1.89 0.142189 0.125664 21310 115450 -1 3045 18 1350 3649 211139 49041 6.30824 6.30824 -151.624 -6.30824 0 0 612192. 2118.31 0.28 0.10 0.12 -1 -1 0.28 0.0341285 0.0307521 180 174 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_075.v common 7.17 vpr 64.87 MiB 0.02 6952 -1 -1 13 0.39 -1 -1 36768 -1 -1 30 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 31 32 283 315 1 212 93 17 17 289 -1 unnamed_device 26.4 MiB 0.44 1207 16473 5014 8912 2547 64.9 MiB 0.15 0.00 6.5609 -125.433 -6.5609 6.5609 1.06 0.000697061 0.000619529 0.0626733 0.056609 34 3848 42 6.55708e+06 361650 585099. 2024.56 2.77 0.231003 0.204822 22462 138074 -1 2875 21 1722 5188 308192 71193 7.1227 7.1227 -147.717 -7.1227 0 0 742403. 2568.87 0.34 0.11 0.13 -1 -1 0.34 0.0371029 0.0333742 195 190 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_076.v common 7.71 vpr 65.09 MiB 0.02 7040 -1 -1 14 0.40 -1 -1 36708 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 32 32 308 340 1 227 95 17 17 289 -1 unnamed_device 26.5 MiB 0.39 1402 11327 3034 7146 1147 65.1 MiB 0.12 0.00 6.9587 -139.321 -6.9587 6.9587 1.10 0.00077422 0.000686705 0.047783 0.0432944 28 4101 37 6.55708e+06 373705 500653. 1732.36 3.34 0.188887 0.167796 21310 115450 -1 3577 30 1722 5457 534733 178845 7.1991 7.1991 -161.421 -7.1991 0 0 612192. 2118.31 0.29 0.21 0.11 -1 -1 0.29 0.056858 0.0511269 215 213 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_077.v common 8.16 vpr 64.77 MiB 0.02 7096 -1 -1 14 0.35 -1 -1 36780 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 32 32 277 309 1 210 91 17 17 289 -1 unnamed_device 26.4 MiB 0.52 1362 8455 1835 6208 412 64.8 MiB 0.08 0.00 6.49016 -128.354 -6.49016 6.49016 1.04 0.000759227 0.000686238 0.0342114 0.0311216 36 3574 27 6.55708e+06 325485 612192. 2118.31 3.90 0.218519 0.193093 22750 144809 -1 2888 17 1213 3875 223981 50186 6.6817 6.6817 -142.445 -6.6817 0 0 782063. 2706.10 0.35 0.09 0.13 -1 -1 0.35 0.0320333 0.0290593 183 182 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_078.v common 15.07 vpr 64.76 MiB 0.03 7068 -1 -1 13 0.48 -1 -1 36892 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 32 32 288 320 1 218 91 17 17 289 -1 unnamed_device 26.3 MiB 0.51 1392 14575 3709 9145 1721 64.8 MiB 0.13 0.00 6.60776 -134.289 -6.60776 6.60776 1.07 0.000861812 0.00077409 0.0570507 0.051209 28 3797 42 6.55708e+06 325485 500653. 1732.36 10.53 0.293442 0.257757 21310 115450 -1 3313 24 1401 4175 370158 121395 7.20876 7.20876 -156.485 -7.20876 0 0 612192. 2118.31 0.31 0.16 0.12 -1 -1 0.31 0.0491536 0.0442635 195 193 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_079.v common 5.88 vpr 64.48 MiB 0.02 6992 -1 -1 13 0.24 -1 -1 36348 -1 -1 24 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66032 30 32 230 262 1 183 86 17 17 289 -1 unnamed_device 26.1 MiB 0.34 1165 6890 1494 4473 923 64.5 MiB 0.06 0.00 6.5569 -135.001 -6.5569 6.5569 1.10 0.000562159 0.000506584 0.0248256 0.0224614 34 2969 42 6.55708e+06 289320 585099. 2024.56 1.93 0.15836 0.139899 22462 138074 -1 2496 15 976 2501 156265 35611 7.1187 7.1187 -152.222 -7.1187 0 0 742403. 2568.87 0.33 0.07 0.13 -1 -1 0.33 0.0277431 0.025362 146 139 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_080.v common 7.62 vpr 64.82 MiB 0.03 7152 -1 -1 13 0.60 -1 -1 36584 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66380 30 32 294 326 1 230 93 17 17 289 -1 unnamed_device 26.3 MiB 0.39 1381 10173 2574 6337 1262 64.8 MiB 0.11 0.00 6.69136 -133.069 -6.69136 6.69136 1.08 0.000921919 0.000823171 0.0441228 0.0397651 30 4175 29 6.55708e+06 373705 526063. 1820.29 3.10 0.177662 0.157608 21886 126133 -1 3101 19 1604 4690 233323 54792 7.01016 7.01016 -155.411 -7.01016 0 0 666494. 2306.21 0.33 0.11 0.13 -1 -1 0.33 0.040022 0.0362471 208 203 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_081.v common 5.98 vpr 64.76 MiB 0.02 7168 -1 -1 14 0.38 -1 -1 36392 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 32 32 276 308 1 206 94 17 17 289 -1 unnamed_device 26.3 MiB 0.40 1380 8401 2060 5770 571 64.8 MiB 0.09 0.00 6.25538 -134.831 -6.25538 6.25538 1.09 0.000985502 0.000913229 0.0355181 0.0320308 30 3338 34 6.55708e+06 361650 526063. 1820.29 1.76 0.1682 0.149704 21886 126133 -1 2816 18 1298 4243 198240 45980 6.49578 6.49578 -151.673 -6.49578 0 0 666494. 2306.21 0.32 0.09 0.12 -1 -1 0.32 0.0343646 0.0310378 184 181 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_082.v common 8.16 vpr 64.97 MiB 0.02 7020 -1 -1 12 0.33 -1 -1 36976 -1 -1 32 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 31 32 293 325 1 227 95 17 17 289 -1 unnamed_device 26.5 MiB 0.28 1495 6359 1229 4710 420 65.0 MiB 0.07 0.00 6.6373 -134.482 -6.6373 6.6373 0.99 0.000719325 0.000639683 0.0259977 0.023539 44 3298 15 6.55708e+06 385760 742403. 2568.87 4.27 0.284361 0.252861 24478 177802 -1 2843 15 1120 3461 182054 41380 7.2775 7.2775 -150.636 -7.2775 0 0 937218. 3242.97 0.41 0.08 0.16 -1 -1 0.41 0.0318866 0.0291181 203 200 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_083.v common 19.81 vpr 64.78 MiB 0.02 7184 -1 -1 13 0.32 -1 -1 36772 -1 -1 28 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 30 32 273 305 1 212 90 17 17 289 -1 unnamed_device 26.2 MiB 0.31 1278 5517 970 4312 235 64.8 MiB 0.06 0.00 6.23244 -112.435 -6.23244 6.23244 0.96 0.000826508 0.000759083 0.0243956 0.0221707 28 4100 49 6.55708e+06 337540 500653. 1732.36 15.81 0.28537 0.252622 21310 115450 -1 3336 31 1819 5827 659283 203934 6.55324 6.55324 -135.222 -6.55324 0 0 612192. 2118.31 0.30 0.24 0.11 -1 -1 0.30 0.0539558 0.0486452 186 182 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_084.v common 6.59 vpr 64.90 MiB 0.02 7060 -1 -1 14 0.47 -1 -1 37140 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 310 342 1 239 96 17 17 289 -1 unnamed_device 26.4 MiB 0.62 1591 11484 2892 7640 952 64.9 MiB 0.12 0.00 7.25822 -142.86 -7.25822 7.25822 1.02 0.000782023 0.000707972 0.0482444 0.0436401 30 4101 26 6.55708e+06 385760 526063. 1820.29 2.13 0.167328 0.148222 21886 126133 -1 3367 17 1520 4486 222444 52006 7.64835 7.64835 -163.353 -7.64835 0 0 666494. 2306.21 0.31 0.09 0.13 -1 -1 0.31 0.0352714 0.0318986 220 215 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_085.v common 8.61 vpr 64.73 MiB 0.03 7256 -1 -1 11 0.39 -1 -1 36652 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 29 32 259 291 1 190 90 17 17 289 -1 unnamed_device 26.2 MiB 0.43 1169 5919 1198 4273 448 64.7 MiB 0.06 0.00 5.54984 -107.818 -5.54984 5.54984 1.05 0.000654502 0.000590199 0.0223486 0.0203016 34 3057 20 6.55708e+06 349595 585099. 2024.56 4.35 0.268238 0.236828 22462 138074 -1 2656 14 1164 3803 207904 47894 5.94458 5.94458 -124.121 -5.94458 0 0 742403. 2568.87 0.36 0.09 0.14 -1 -1 0.36 0.0323291 0.0293356 174 170 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_086.v common 6.83 vpr 64.23 MiB 0.02 6864 -1 -1 13 0.19 -1 -1 36328 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65776 32 32 225 257 1 185 87 17 17 289 -1 unnamed_device 25.7 MiB 0.32 1128 7767 1722 5232 813 64.2 MiB 0.06 0.00 6.2793 -138.533 -6.2793 6.2793 1.03 0.000572615 0.000522598 0.0254513 0.0231843 28 2909 22 6.55708e+06 277265 500653. 1732.36 3.24 0.201547 0.17811 21310 115450 -1 2549 17 1108 2683 158689 37871 6.58844 6.58844 -156.902 -6.58844 0 0 612192. 2118.31 0.29 0.08 0.11 -1 -1 0.29 0.029584 0.0267948 142 130 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_087.v common 8.76 vpr 64.59 MiB 0.02 7060 -1 -1 14 0.31 -1 -1 36632 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 273 305 1 209 91 17 17 289 -1 unnamed_device 26.0 MiB 0.30 1329 7231 1423 5159 649 64.6 MiB 0.07 0.00 6.57116 -133.256 -6.57116 6.57116 1.07 0.00068259 0.000615686 0.0279677 0.0254497 34 3369 39 6.55708e+06 325485 585099. 2024.56 4.63 0.292411 0.256153 22462 138074 -1 2842 24 1120 3311 312981 121474 7.09116 7.09116 -153.627 -7.09116 0 0 742403. 2568.87 0.38 0.15 0.14 -1 -1 0.38 0.0434701 0.0390735 183 178 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_088.v common 9.21 vpr 65.09 MiB 0.02 6968 -1 -1 15 0.49 -1 -1 36704 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 32 32 322 354 1 251 96 17 17 289 -1 unnamed_device 26.7 MiB 0.68 1605 7980 1886 5333 761 65.1 MiB 0.09 0.00 7.73501 -162.833 -7.73501 7.73501 1.05 0.00106597 0.000976198 0.0374205 0.0341538 34 4154 29 6.55708e+06 385760 585099. 2024.56 4.58 0.349948 0.309585 22462 138074 -1 3599 18 1584 4323 243556 57076 8.09561 8.09561 -184.694 -8.09561 0 0 742403. 2568.87 0.36 0.11 0.13 -1 -1 0.36 0.0417672 0.0379808 228 227 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_089.v common 13.44 vpr 64.37 MiB 0.02 6888 -1 -1 11 0.22 -1 -1 36324 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65916 32 32 218 250 1 164 86 17 17 289 -1 unnamed_device 25.8 MiB 0.76 1049 7457 1698 5403 356 64.4 MiB 0.07 0.00 5.47144 -114.161 -5.47144 5.47144 1.02 0.00054099 0.000491051 0.0243516 0.0220681 28 2896 40 6.55708e+06 265210 500653. 1732.36 8.69 0.221701 0.193479 21310 115450 -1 2452 31 1412 4445 434362 169343 5.59164 5.59164 -132.217 -5.59164 0 0 612192. 2118.31 0.31 0.20 0.12 -1 -1 0.31 0.0451978 0.040471 126 123 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_090.v common 7.49 vpr 64.17 MiB 0.02 6848 -1 -1 12 0.24 -1 -1 36192 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65708 31 32 244 276 1 192 89 17 17 289 -1 unnamed_device 25.7 MiB 0.40 1224 13355 3696 7957 1702 64.2 MiB 0.10 0.00 5.98944 -127.755 -5.98944 5.98944 0.94 0.00054784 0.000500015 0.0408663 0.0372123 34 3037 27 6.55708e+06 313430 585099. 2024.56 3.74 0.241701 0.215124 22462 138074 -1 2675 19 1303 3739 215715 51535 6.07044 6.07044 -142.543 -6.07044 0 0 742403. 2568.87 0.32 0.09 0.12 -1 -1 0.32 0.0341516 0.0310935 157 151 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_091.v common 8.33 vpr 65.16 MiB 0.02 7184 -1 -1 12 0.38 -1 -1 36540 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 32 32 301 333 1 231 95 17 17 289 -1 unnamed_device 26.5 MiB 0.75 1502 10031 2256 6452 1323 65.2 MiB 0.10 0.00 6.2029 -136.791 -6.2029 6.2029 1.02 0.000806114 0.000736746 0.0394671 0.0358051 30 3811 22 6.55708e+06 373705 526063. 1820.29 3.89 0.295065 0.259151 21886 126133 -1 3095 17 1346 4067 194415 45696 6.3231 6.3231 -153.412 -6.3231 0 0 666494. 2306.21 0.32 0.09 0.12 -1 -1 0.32 0.036157 0.0329156 209 206 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_092.v common 6.41 vpr 64.92 MiB 0.02 7064 -1 -1 12 0.30 -1 -1 36424 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 32 32 278 310 1 215 92 17 17 289 -1 unnamed_device 26.4 MiB 0.53 1436 14996 4243 8240 2513 64.9 MiB 0.12 0.00 6.42844 -135.086 -6.42844 6.42844 0.94 0.000621942 0.0005645 0.0516469 0.0467359 34 3842 29 6.55708e+06 337540 585099. 2024.56 2.43 0.189526 0.168326 22462 138074 -1 3289 18 1429 4361 265045 60837 6.74984 6.74984 -155.307 -6.74984 0 0 742403. 2568.87 0.32 0.10 0.12 -1 -1 0.32 0.0346047 0.0315427 186 183 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_093.v common 7.99 vpr 65.03 MiB 0.03 7148 -1 -1 14 0.62 -1 -1 36640 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 32 32 333 365 1 247 99 17 17 289 -1 unnamed_device 26.6 MiB 0.36 1587 8307 2005 5613 689 65.0 MiB 0.09 0.00 7.16496 -146.142 -7.16496 7.16496 1.06 0.000831203 0.000749036 0.0365585 0.0331626 36 4187 32 6.55708e+06 421925 612192. 2118.31 3.47 0.249203 0.219729 22750 144809 -1 3443 20 1790 5454 290474 67982 7.60655 7.60655 -166.619 -7.60655 0 0 782063. 2706.10 0.37 0.11 0.14 -1 -1 0.37 0.0435095 0.0393378 241 238 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_094.v common 8.38 vpr 64.52 MiB 0.02 7200 -1 -1 11 0.30 -1 -1 36656 -1 -1 27 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66072 30 32 261 293 1 202 89 17 17 289 -1 unnamed_device 25.9 MiB 0.58 1224 14543 4374 7793 2376 64.5 MiB 0.12 0.00 5.26258 -106.392 -5.26258 5.26258 1.03 0.000641394 0.000579607 0.050646 0.0457083 34 3427 25 6.55708e+06 325485 585099. 2024.56 4.14 0.280496 0.246288 22462 138074 -1 2769 16 1184 3572 220151 49663 6.07444 6.07444 -127.938 -6.07444 0 0 742403. 2568.87 0.34 0.08 0.14 -1 -1 0.34 0.0299574 0.0271957 176 170 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_095.v common 5.33 vpr 63.91 MiB 0.02 7068 -1 -1 11 0.23 -1 -1 36168 -1 -1 25 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65448 27 32 217 249 1 157 84 17 17 289 -1 unnamed_device 25.3 MiB 0.28 932 5940 1291 4255 394 63.9 MiB 0.05 0.00 5.50038 -100.346 -5.50038 5.50038 1.04 0.000553194 0.000504707 0.0209485 0.0190589 26 2423 24 6.55708e+06 301375 477104. 1650.88 1.68 0.109533 0.0967251 21022 109990 -1 2204 18 919 2563 139398 34416 5.98118 5.98118 -120.294 -5.98118 0 0 585099. 2024.56 0.27 0.07 0.11 -1 -1 0.27 0.0265279 0.0237568 138 132 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_096.v common 10.01 vpr 65.16 MiB 0.04 7264 -1 -1 13 0.52 -1 -1 36720 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 32 32 373 405 1 274 104 17 17 289 -1 unnamed_device 27.1 MiB 0.32 1902 12548 3200 8135 1213 65.2 MiB 0.14 0.00 6.42904 -133.695 -6.42904 6.42904 1.04 0.00101166 0.000923259 0.0570129 0.0518253 36 5195 28 6.55708e+06 482200 612192. 2118.31 5.76 0.401862 0.355659 22750 144809 -1 4103 18 1848 6395 359951 80332 6.9633 6.9633 -156.441 -6.9633 0 0 782063. 2706.10 0.33 0.13 0.12 -1 -1 0.33 0.047135 0.0430761 280 278 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_097.v common 15.89 vpr 64.89 MiB 0.02 7076 -1 -1 14 0.32 -1 -1 36436 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 31 32 269 301 1 201 89 17 17 289 -1 unnamed_device 26.5 MiB 0.35 1320 12761 3202 7623 1936 64.9 MiB 0.11 0.00 6.88536 -138.325 -6.88536 6.88536 1.05 0.000730132 0.000668618 0.0439789 0.0397995 28 4156 41 6.55708e+06 313430 500653. 1732.36 11.82 0.288434 0.253828 21310 115450 -1 3342 29 1900 5738 549742 171446 7.89076 7.89076 -166.88 -7.89076 0 0 612192. 2118.31 0.27 0.20 0.10 -1 -1 0.27 0.0484144 0.0436482 178 176 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_098.v common 8.71 vpr 64.39 MiB 0.02 7064 -1 -1 12 0.21 -1 -1 36372 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 32 32 228 260 1 185 91 17 17 289 -1 unnamed_device 26.0 MiB 0.47 1161 14575 4032 8510 2033 64.4 MiB 0.12 0.00 6.25538 -137.354 -6.25538 6.25538 1.03 0.000977684 0.000877052 0.0441541 0.039784 36 2962 22 6.55708e+06 325485 612192. 2118.31 4.60 0.232951 0.204019 22750 144809 -1 2583 15 1066 3023 177441 39191 6.37558 6.37558 -150.498 -6.37558 0 0 782063. 2706.10 0.37 0.08 0.14 -1 -1 0.37 0.0276194 0.025099 144 133 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_099.v common 8.75 vpr 64.59 MiB 0.02 7040 -1 -1 13 0.36 -1 -1 36368 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 32 32 265 297 1 201 89 17 17 289 -1 unnamed_device 26.0 MiB 0.52 1207 6029 1286 4160 583 64.6 MiB 0.07 0.00 6.7203 -130.556 -6.7203 6.7203 1.06 0.000657879 0.000596473 0.026585 0.024223 36 3116 18 6.55708e+06 301375 612192. 2118.31 4.52 0.295126 0.26165 22750 144809 -1 2623 17 1134 3416 184762 43373 7.0417 7.0417 -146.983 -7.0417 0 0 782063. 2706.10 0.33 0.08 0.12 -1 -1 0.33 0.0325991 0.0296081 172 170 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_100.v common 15.10 vpr 65.33 MiB 0.02 7360 -1 -1 13 0.37 -1 -1 36904 -1 -1 35 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66896 31 32 325 357 1 256 98 17 17 289 -1 unnamed_device 26.9 MiB 0.39 1673 7298 1424 5307 567 65.3 MiB 0.09 0.00 6.5197 -134.644 -6.5197 6.5197 1.05 0.000973422 0.000895103 0.0364458 0.0333753 28 4813 39 6.55708e+06 421925 500653. 1732.36 11.05 0.340222 0.30252 21310 115450 -1 3876 20 1731 5172 343094 83160 6.7601 6.7601 -156.345 -6.7601 0 0 612192. 2118.31 0.27 0.14 0.10 -1 -1 0.27 0.0482283 0.0441055 235 232 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_101.v common 6.21 vpr 64.73 MiB 0.02 7088 -1 -1 11 0.32 -1 -1 36588 -1 -1 32 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66280 30 32 287 319 1 210 94 17 17 289 -1 unnamed_device 26.3 MiB 0.53 1426 12661 3632 7779 1250 64.7 MiB 0.11 0.00 5.91044 -118.756 -5.91044 5.91044 1.01 0.000687226 0.00061318 0.042156 0.0380067 30 3562 30 6.55708e+06 385760 526063. 1820.29 2.11 0.172835 0.154517 21886 126133 -1 3019 18 1331 4655 224810 51702 6.15284 6.15284 -134.823 -6.15284 0 0 666494. 2306.21 0.29 0.09 0.11 -1 -1 0.29 0.0364377 0.0329029 199 196 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_102.v common 7.78 vpr 64.77 MiB 0.02 7144 -1 -1 15 0.41 -1 -1 36588 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 32 32 297 329 1 230 93 17 17 289 -1 unnamed_device 26.2 MiB 0.37 1410 14373 3536 8116 2721 64.8 MiB 0.12 0.00 7.33722 -149.469 -7.33722 7.33722 1.02 0.000872525 0.00078849 0.0525008 0.0474639 36 3927 37 6.55708e+06 349595 612192. 2118.31 3.63 0.270212 0.239795 22750 144809 -1 3105 16 1433 4635 241152 56710 7.85922 7.85922 -167.529 -7.85922 0 0 782063. 2706.10 0.35 0.10 0.13 -1 -1 0.35 0.0332599 0.03008 203 202 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_103.v common 5.55 vpr 65.26 MiB 0.02 7112 -1 -1 13 0.42 -1 -1 36652 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 32 32 311 343 1 238 96 17 17 289 -1 unnamed_device 26.5 MiB 0.29 1562 8418 1908 5621 889 65.3 MiB 0.08 0.00 6.49216 -137.708 -6.49216 6.49216 1.06 0.000796867 0.000721949 0.0344097 0.0312141 30 3797 31 6.55708e+06 385760 526063. 1820.29 1.47 0.175714 0.156723 21886 126133 -1 3141 17 1518 4617 224564 52366 6.85276 6.85276 -158.38 -6.85276 0 0 666494. 2306.21 0.31 0.10 0.12 -1 -1 0.31 0.0373376 0.0339647 217 216 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_104.v common 8.12 vpr 64.05 MiB 0.02 6888 -1 -1 12 0.26 -1 -1 35960 -1 -1 29 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65592 29 32 236 268 1 192 90 17 17 289 -1 unnamed_device 25.6 MiB 0.58 1153 8130 1879 5254 997 64.1 MiB 0.07 0.00 5.81778 -125.088 -5.81778 5.81778 1.07 0.000561217 0.000506823 0.0284073 0.0258108 32 3111 43 6.55708e+06 349595 554710. 1919.41 3.94 0.261925 0.230196 22174 131602 -1 2587 17 1108 2777 170877 40576 6.20792 6.20792 -143.725 -6.20792 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.0289535 0.0261502 159 147 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_105.v common 5.93 vpr 64.25 MiB 0.02 6976 -1 -1 11 0.18 -1 -1 36268 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65796 32 32 231 263 1 179 86 17 17 289 -1 unnamed_device 25.9 MiB 0.45 1194 5756 1131 4178 447 64.3 MiB 0.05 0.00 5.65838 -120.723 -5.65838 5.65838 0.95 0.000569302 0.00051908 0.0193752 0.0176863 28 3301 50 6.55708e+06 265210 500653. 1732.36 2.08 0.144623 0.128738 21310 115450 -1 2916 55 2199 6648 796759 382303 6.09998 6.09998 -149.73 -6.09998 0 0 612192. 2118.31 0.28 0.34 0.10 -1 -1 0.28 0.0715585 0.063942 138 136 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_106.v common 6.00 vpr 65.09 MiB 0.02 7156 -1 -1 13 0.39 -1 -1 36904 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 31 32 294 326 1 224 94 17 17 289 -1 unnamed_device 26.5 MiB 0.45 1539 8188 1770 5607 811 65.1 MiB 0.09 0.00 6.74584 -137.864 -6.74584 6.74584 1.06 0.00078339 0.000712948 0.0349962 0.0317359 30 3805 23 6.55708e+06 373705 526063. 1820.29 1.79 0.169511 0.151852 21886 126133 -1 3180 19 1376 4470 226632 52207 7.02284 7.02284 -153.473 -7.02284 0 0 666494. 2306.21 0.33 0.10 0.12 -1 -1 0.33 0.041459 0.0374987 204 201 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_107.v common 7.19 vpr 64.12 MiB 0.02 7092 -1 -1 10 0.23 -1 -1 36188 -1 -1 24 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65656 29 32 221 253 1 166 85 17 17 289 -1 unnamed_device 25.5 MiB 0.25 1049 11803 3196 6655 1952 64.1 MiB 0.09 0.00 5.00992 -101.498 -5.00992 5.00992 1.03 0.000681818 0.00062098 0.0362228 0.0327968 28 2672 20 6.55708e+06 289320 500653. 1732.36 3.48 0.201732 0.178339 21310 115450 -1 2253 15 937 2651 152522 35565 5.54418 5.54418 -121.23 -5.54418 0 0 612192. 2118.31 0.30 0.07 0.11 -1 -1 0.30 0.0262574 0.0238593 138 132 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_108.v common 16.00 vpr 64.11 MiB 0.02 6840 -1 -1 14 0.25 -1 -1 36556 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65648 32 32 240 272 1 178 88 17 17 289 -1 unnamed_device 25.7 MiB 0.56 1103 12373 3722 6373 2278 64.1 MiB 0.10 0.00 6.3185 -130.338 -6.3185 6.3185 1.03 0.000542262 0.00048853 0.0400863 0.0362553 28 3219 22 6.55708e+06 289320 500653. 1732.36 11.88 0.221265 0.194156 21310 115450 -1 2686 20 1241 3705 278341 73975 6.7993 6.7993 -155.291 -6.7993 0 0 612192. 2118.31 0.30 0.11 0.11 -1 -1 0.30 0.0322029 0.0290224 149 145 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_109.v common 6.97 vpr 64.72 MiB 0.02 7236 -1 -1 12 0.42 -1 -1 36396 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 31 32 292 324 1 211 92 17 17 289 -1 unnamed_device 26.3 MiB 0.41 1349 14789 3999 8146 2644 64.7 MiB 0.14 0.00 6.2787 -129.822 -6.2787 6.2787 1.04 0.000657445 0.000589227 0.0563041 0.0510264 34 3807 34 6.55708e+06 349595 585099. 2024.56 2.71 0.231972 0.204583 22462 138074 -1 3148 15 1300 4244 273503 61275 6.8797 6.8797 -156.46 -6.8797 0 0 742403. 2568.87 0.35 0.10 0.14 -1 -1 0.35 0.0307338 0.0278525 201 199 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_110.v common 5.99 vpr 64.38 MiB 0.02 7020 -1 -1 12 0.19 -1 -1 36048 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 31 32 229 261 1 182 86 17 17 289 -1 unnamed_device 26.0 MiB 0.37 1060 5945 1165 4580 200 64.4 MiB 0.05 0.00 5.49898 -119.703 -5.49898 5.49898 1.00 0.000615425 0.000560735 0.0204603 0.0184515 28 2984 27 6.55708e+06 277265 500653. 1732.36 2.33 0.113044 0.100061 21310 115450 -1 2519 15 985 2611 157981 37681 5.85958 5.85958 -139.819 -5.85958 0 0 612192. 2118.31 0.29 0.07 0.10 -1 -1 0.29 0.0243017 0.0218877 141 136 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_111.v common 7.22 vpr 64.72 MiB 0.02 7068 -1 -1 12 0.24 -1 -1 36272 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 32 32 282 314 1 205 91 17 17 289 -1 unnamed_device 26.1 MiB 0.32 1369 9067 2139 5794 1134 64.7 MiB 0.08 0.00 5.75364 -126.276 -5.75364 5.75364 0.96 0.00060939 0.000548063 0.0319925 0.0290281 26 3846 46 6.55708e+06 325485 477104. 1650.88 3.16 0.179547 0.159408 21022 109990 -1 3220 55 2086 8359 1529906 813223 6.23444 6.23444 -151.526 -6.23444 0 0 585099. 2024.56 0.25 0.57 0.09 -1 -1 0.25 0.0829466 0.0741223 188 187 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_112.v common 8.30 vpr 64.76 MiB 0.02 7244 -1 -1 13 0.34 -1 -1 37016 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 31 32 269 301 1 216 92 17 17 289 -1 unnamed_device 26.3 MiB 0.34 1404 7751 1757 4862 1132 64.8 MiB 0.07 0.00 6.3995 -136.53 -6.3995 6.3995 0.96 0.000653005 0.000597608 0.0290427 0.0264667 38 3322 18 6.55708e+06 349595 638502. 2209.35 4.48 0.272858 0.242485 23326 155178 -1 2855 14 1143 3400 177267 39696 6.8803 6.8803 -155.506 -6.8803 0 0 851065. 2944.86 0.35 0.07 0.14 -1 -1 0.35 0.0288038 0.0262569 179 176 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_113.v common 5.77 vpr 64.35 MiB 0.02 6904 -1 -1 11 0.22 -1 -1 36024 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65892 32 32 237 269 1 184 91 17 17 289 -1 unnamed_device 25.9 MiB 0.31 1228 9067 2214 5839 1014 64.3 MiB 0.08 0.00 5.47144 -121.882 -5.47144 5.47144 1.00 0.000578394 0.000523209 0.0301025 0.0271958 28 3507 29 6.55708e+06 325485 500653. 1732.36 2.07 0.124833 0.109908 21310 115450 -1 2896 21 1175 3596 232505 58048 5.95224 5.95224 -142.036 -5.95224 0 0 612192. 2118.31 0.28 0.09 0.11 -1 -1 0.28 0.029684 0.0264548 148 142 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_114.v common 11.86 vpr 64.69 MiB 0.02 6796 -1 -1 13 0.26 -1 -1 36228 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 32 32 259 291 1 202 91 17 17 289 -1 unnamed_device 26.1 MiB 0.33 1340 12739 3442 7718 1579 64.7 MiB 0.11 0.00 6.26504 -134.276 -6.26504 6.26504 1.05 0.000645841 0.00058887 0.0451993 0.0406834 28 3432 49 6.55708e+06 325485 500653. 1732.36 7.91 0.282512 0.248783 21310 115450 -1 2929 18 1285 3629 222862 51115 6.5589 6.5589 -154.404 -6.5589 0 0 612192. 2118.31 0.30 0.09 0.11 -1 -1 0.30 0.0316918 0.0285489 167 164 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_115.v common 8.44 vpr 64.88 MiB 0.02 7232 -1 -1 13 0.35 -1 -1 36832 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66432 32 32 277 309 1 220 91 17 17 289 -1 unnamed_device 26.4 MiB 0.24 1237 12739 3496 7349 1894 64.9 MiB 0.12 0.00 6.65156 -130.528 -6.65156 6.65156 1.02 0.000713764 0.00065071 0.0466227 0.0421489 36 3421 24 6.55708e+06 325485 612192. 2118.31 4.44 0.255844 0.224342 22750 144809 -1 2958 18 1332 3911 210425 49933 6.97296 6.97296 -149.969 -6.97296 0 0 782063. 2706.10 0.37 0.10 0.13 -1 -1 0.37 0.0367144 0.0333936 184 182 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_116.v common 9.25 vpr 64.51 MiB 0.02 7192 -1 -1 11 0.26 -1 -1 36084 -1 -1 28 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66060 29 32 245 277 1 189 89 17 17 289 -1 unnamed_device 26.0 MiB 0.43 1126 8207 1959 5095 1153 64.5 MiB 0.07 0.00 5.53052 -104.852 -5.53052 5.53052 1.07 0.000597561 0.000541156 0.0297243 0.0268676 36 2945 48 6.55708e+06 337540 612192. 2118.31 5.14 0.309855 0.271176 22750 144809 -1 2414 15 962 3046 175607 39719 5.65072 5.65072 -116.392 -5.65072 0 0 782063. 2706.10 0.37 0.08 0.14 -1 -1 0.37 0.0280471 0.0255179 162 156 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_117.v common 18.42 vpr 65.24 MiB 0.02 7140 -1 -1 14 0.39 -1 -1 37268 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 32 32 316 348 1 250 96 17 17 289 -1 unnamed_device 26.6 MiB 0.45 1614 10170 2578 6728 864 65.2 MiB 0.11 0.00 6.86302 -148.285 -6.86302 6.86302 1.07 0.00109169 0.000998568 0.0463335 0.0421245 32 5017 47 6.55708e+06 385760 554710. 1919.41 13.98 0.428115 0.376507 22174 131602 -1 4036 31 2241 6829 805046 289787 8.01156 8.01156 -182.237 -8.01156 0 0 701300. 2426.64 0.34 0.31 0.13 -1 -1 0.34 0.0638841 0.0573087 225 221 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_118.v common 8.20 vpr 64.35 MiB 0.02 6980 -1 -1 12 0.22 -1 -1 36104 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65892 31 32 230 262 1 186 91 17 17 289 -1 unnamed_device 26.0 MiB 0.53 1161 13351 3360 8030 1961 64.3 MiB 0.10 0.00 5.43224 -115.756 -5.43224 5.43224 1.04 0.000522532 0.000466772 0.039479 0.0357583 36 2596 19 6.55708e+06 337540 612192. 2118.31 4.07 0.248969 0.218517 22750 144809 -1 2275 14 910 2413 126898 29929 5.67264 5.67264 -128.338 -5.67264 0 0 782063. 2706.10 0.37 0.06 0.14 -1 -1 0.37 0.0226774 0.0205699 145 137 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_119.v common 5.28 vpr 64.74 MiB 0.02 7044 -1 -1 13 0.36 -1 -1 37008 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 32 32 282 314 1 213 91 17 17 289 -1 unnamed_device 26.2 MiB 0.47 1403 5803 1175 4057 571 64.7 MiB 0.06 0.00 6.4407 -128.884 -6.4407 6.4407 0.99 0.000767553 0.000697259 0.0247027 0.0224729 30 3411 21 6.55708e+06 325485 526063. 1820.29 1.27 0.130493 0.11545 21886 126133 -1 2834 17 1218 3769 178862 41311 6.5609 6.5609 -143.227 -6.5609 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0328403 0.029749 189 187 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_120.v common 7.86 vpr 64.39 MiB 0.02 6988 -1 -1 13 0.23 -1 -1 36096 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 32 32 235 267 1 180 89 17 17 289 -1 unnamed_device 26.0 MiB 0.45 1093 11375 2882 6245 2248 64.4 MiB 0.09 0.00 6.18864 -134.458 -6.18864 6.18864 1.00 0.000665516 0.000606241 0.0348088 0.0314302 34 2770 22 6.55708e+06 301375 585099. 2024.56 3.96 0.234994 0.206314 22462 138074 -1 2429 18 1102 2854 156233 37644 6.66944 6.66944 -152.689 -6.66944 0 0 742403. 2568.87 0.33 0.07 0.13 -1 -1 0.33 0.0274313 0.0245367 146 140 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_121.v common 5.77 vpr 64.52 MiB 0.02 7244 -1 -1 12 0.26 -1 -1 36684 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 32 32 265 297 1 193 90 17 17 289 -1 unnamed_device 26.0 MiB 0.37 1197 4914 839 3816 259 64.5 MiB 0.05 0.00 5.9619 -125.936 -5.9619 5.9619 0.98 0.000584706 0.000532073 0.0190691 0.017402 28 3179 22 6.55708e+06 313430 500653. 1732.36 2.10 0.127338 0.113293 21310 115450 -1 2787 18 1152 3912 216430 50263 6.46258 6.46258 -145.937 -6.46258 0 0 612192. 2118.31 0.27 0.09 0.10 -1 -1 0.27 0.0338095 0.0306796 172 170 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_122.v common 9.73 vpr 65.14 MiB 0.03 7456 -1 -1 15 0.67 -1 -1 36732 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66704 32 32 344 376 1 259 98 17 17 289 -1 unnamed_device 26.9 MiB 0.42 1757 8648 1956 5929 763 65.1 MiB 0.10 0.00 7.33922 -148.898 -7.33922 7.33922 1.06 0.000975947 0.000886492 0.0406477 0.0367721 36 4393 21 6.55708e+06 409870 612192. 2118.31 5.04 0.250132 0.219886 22750 144809 -1 3900 21 2106 7030 407896 89865 7.80775 7.80775 -166.67 -7.80775 0 0 782063. 2706.10 0.35 0.14 0.15 -1 -1 0.35 0.0449746 0.0404367 250 249 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_123.v common 4.78 vpr 63.79 MiB 0.02 6784 -1 -1 10 0.13 -1 -1 35812 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65324 30 32 173 205 1 127 78 17 17 289 -1 unnamed_device 25.3 MiB 0.37 713 7216 1660 5270 286 63.8 MiB 0.05 0.00 4.40126 -99.1045 -4.40126 4.40126 1.05 0.000391269 0.000353048 0.0204609 0.0185782 28 1825 26 6.55708e+06 192880 500653. 1732.36 1.11 0.0900805 0.0797525 21310 115450 -1 1608 17 678 1639 89586 22826 4.48226 4.48226 -113.2 -4.48226 0 0 612192. 2118.31 0.29 0.05 0.11 -1 -1 0.29 0.0190617 0.0170907 92 82 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_124.v common 7.44 vpr 64.13 MiB 0.02 6804 -1 -1 13 0.24 -1 -1 36312 -1 -1 29 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65668 30 32 229 261 1 172 91 17 17 289 -1 unnamed_device 25.7 MiB 0.27 1066 6619 1342 4448 829 64.1 MiB 0.06 0.00 6.3577 -127.046 -6.3577 6.3577 1.10 0.000555977 0.000503229 0.0217167 0.0198121 30 2585 31 6.55708e+06 349595 526063. 1820.29 3.56 0.20958 0.184297 21886 126133 -1 2182 16 928 2729 125971 30676 6.7183 6.7183 -145.227 -6.7183 0 0 666494. 2306.21 0.32 0.06 0.12 -1 -1 0.32 0.0268878 0.0242881 150 138 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_125.v common 6.75 vpr 64.34 MiB 0.02 7020 -1 -1 12 0.24 -1 -1 36372 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65884 32 32 261 293 1 201 87 17 17 289 -1 unnamed_device 25.8 MiB 0.37 1311 5079 1013 3448 618 64.3 MiB 0.06 0.00 5.74138 -125.798 -5.74138 5.74138 1.04 0.00061373 0.000539256 0.022426 0.0203398 36 3130 30 6.55708e+06 277265 612192. 2118.31 2.84 0.195602 0.173015 22750 144809 -1 2647 16 1030 2996 161326 37265 6.22218 6.22218 -146.832 -6.22218 0 0 782063. 2706.10 0.36 0.07 0.14 -1 -1 0.36 0.0276073 0.0247698 167 166 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_126.v common 5.62 vpr 63.91 MiB 0.02 6892 -1 -1 9 0.17 -1 -1 36088 -1 -1 25 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65440 25 32 184 216 1 141 82 17 17 289 -1 unnamed_device 25.5 MiB 0.22 809 8270 2029 5236 1005 63.9 MiB 0.06 0.00 4.79906 -87.247 -4.79906 4.79906 1.07 0.000465651 0.00042409 0.0239883 0.0218494 26 2306 26 6.55708e+06 301375 477104. 1650.88 1.97 0.103382 0.0912777 21022 109990 -1 1927 16 869 2467 146143 34007 5.15966 5.15966 -105.415 -5.15966 0 0 585099. 2024.56 0.30 0.06 0.11 -1 -1 0.30 0.0224764 0.0201587 112 103 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_127.v common 9.02 vpr 64.23 MiB 0.02 7260 -1 -1 12 0.36 -1 -1 36396 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65768 32 32 302 334 1 239 98 17 17 289 -1 unnamed_device 25.7 MiB 0.75 1661 5048 829 3928 291 64.2 MiB 0.06 0.00 6.47024 -139.776 -6.47024 6.47024 1.04 0.000794264 0.000721763 0.0223536 0.0203891 36 4200 25 6.55708e+06 409870 612192. 2118.31 4.56 0.216047 0.191412 22750 144809 -1 3541 17 1615 4655 266942 59960 6.67144 6.67144 -161.013 -6.67144 0 0 782063. 2706.10 0.33 0.10 0.12 -1 -1 0.33 0.0367232 0.0335037 209 207 -1 -1 -1 -1 -fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_128.v common 7.65 vpr 64.59 MiB 0.02 7200 -1 -1 14 0.38 -1 -1 36764 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 31 32 295 327 1 219 92 17 17 289 -1 unnamed_device 26.0 MiB 0.50 1275 9821 2569 5868 1384 64.6 MiB 0.10 0.00 6.62002 -132.776 -6.62002 6.62002 1.00 0.000700361 0.000632421 0.0404252 0.0366335 34 3787 39 6.55708e+06 349595 585099. 2024.56 3.37 0.263637 0.233479 22462 138074 -1 2979 20 1526 4562 256083 63118 7.28976 7.28976 -160.63 -7.28976 0 0 742403. 2568.87 0.36 0.11 0.14 -1 -1 0.36 0.0419693 0.0381251 204 202 -1 -1 -1 -1 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_001.v common 4.45 vpr 64.84 MiB 0.02 7500 -1 -1 1 0.04 -1 -1 34284 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 438 350 1 194 100 17 17 289 -1 unnamed_device 26.6 MiB 0.12 962 13788 3481 8832 1475 64.8 MiB 0.13 0.00 3.40616 -115.043 -3.40616 3.40616 0.99 0.000760912 0.000700207 0.04202 0.0383053 32 2687 25 6.64007e+06 452088 554710. 1919.41 1.06 0.137983 0.122228 22834 132086 -1 2192 21 1786 3004 200821 46925 3.61223 3.61223 -138.265 -3.61223 0 0 701300. 2426.64 0.31 0.09 0.12 -1 -1 0.31 0.0339277 0.030515 153 80 32 32 96 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_002.v common 4.61 vpr 65.11 MiB 0.02 7520 -1 -1 1 0.04 -1 -1 33912 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 30 32 409 330 1 186 85 17 17 289 -1 unnamed_device 26.4 MiB 0.20 877 14221 4303 7638 2280 65.1 MiB 0.13 0.00 3.60576 -107.965 -3.60576 3.60576 1.05 0.000495756 0.000443148 0.0471393 0.0427347 32 2340 22 6.64007e+06 288834 554710. 1919.41 1.04 0.131447 0.116264 22834 132086 -1 1975 17 1496 2467 158885 37859 4.05543 4.05543 -137.708 -4.05543 0 0 701300. 2426.64 0.33 0.07 0.12 -1 -1 0.33 0.0275919 0.0246136 142 78 30 30 89 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_003.v common 5.49 vpr 64.94 MiB 0.02 7392 -1 -1 1 0.04 -1 -1 34084 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 387 309 1 186 99 17 17 289 -1 unnamed_device 26.2 MiB 0.10 902 8763 1778 6595 390 64.9 MiB 0.09 0.00 3.13925 -105.673 -3.13925 3.13925 1.03 0.000568263 0.000521327 0.0273617 0.0249843 28 2735 34 6.64007e+06 439530 500653. 1732.36 2.11 0.131255 0.116431 21970 115934 -1 2230 22 1512 2499 208904 46122 3.77883 3.77883 -138.853 -3.77883 0 0 612192. 2118.31 0.28 0.09 0.11 -1 -1 0.28 0.0308398 0.0273917 142 50 54 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_004.v common 4.69 vpr 64.95 MiB 0.02 7152 -1 -1 1 0.04 -1 -1 33764 -1 -1 24 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 29 32 343 267 1 184 85 17 17 289 -1 unnamed_device 26.3 MiB 0.08 909 11803 3544 7112 1147 64.9 MiB 0.12 0.00 3.70576 -107.366 -3.70576 3.70576 1.08 0.000498622 0.000452142 0.0363861 0.033092 32 2313 21 6.64007e+06 301392 554710. 1919.41 1.10 0.112717 0.0995135 22834 132086 -1 1968 22 1705 2912 194415 45321 3.73963 3.73963 -131.057 -3.73963 0 0 701300. 2426.64 0.32 0.09 0.14 -1 -1 0.32 0.0291541 0.0258052 138 25 87 29 29 29 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_005.v common 4.72 vpr 65.15 MiB 0.02 7320 -1 -1 1 0.04 -1 -1 33812 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66716 32 32 376 288 1 195 86 17 17 289 -1 unnamed_device 26.4 MiB 0.11 1082 12938 3934 7730 1274 65.2 MiB 0.13 0.00 3.30796 -118.656 -3.30796 3.30796 1.08 0.000588149 0.000538269 0.041294 0.0376091 32 2490 20 6.64007e+06 276276 554710. 1919.41 1.09 0.120481 0.106492 22834 132086 -1 2246 22 1984 3634 241305 52921 3.72443 3.72443 -144.935 -3.72443 0 0 701300. 2426.64 0.35 0.10 0.14 -1 -1 0.35 0.0338882 0.0303471 153 31 96 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_006.v common 4.57 vpr 65.46 MiB 0.03 7148 -1 -1 1 0.04 -1 -1 33912 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67036 32 32 402 316 1 199 103 17 17 289 -1 unnamed_device 26.9 MiB 0.11 1088 18901 5111 11447 2343 65.5 MiB 0.17 0.00 2.7819 -100.102 -2.7819 2.7819 1.02 0.000673465 0.000619133 0.0564738 0.0516838 32 2396 18 6.64007e+06 489762 554710. 1919.41 1.05 0.13694 0.121903 22834 132086 -1 2111 20 1357 2177 167600 35630 2.71677 2.71677 -114.835 -2.71677 0 0 701300. 2426.64 0.32 0.08 0.13 -1 -1 0.32 0.03117 0.027975 156 61 63 32 63 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_007.v common 4.46 vpr 64.08 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 34332 -1 -1 20 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65616 27 32 269 226 1 135 79 17 17 289 -1 unnamed_device 25.7 MiB 0.10 727 13261 4280 6742 2239 64.1 MiB 0.10 0.00 3.0775 -84.7733 -3.0775 3.0775 1.13 0.000618212 0.000569464 0.0365952 0.0333263 30 1478 21 6.64007e+06 251160 526063. 1820.29 1.01 0.0962981 0.0851546 22546 126617 -1 1347 20 703 1255 69168 16178 2.72477 2.72477 -94.5921 -2.72477 0 0 666494. 2306.21 0.30 0.05 0.11 -1 -1 0.30 0.0203709 0.0181828 96 26 54 27 27 27 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_008.v common 4.58 vpr 64.94 MiB 0.02 7204 -1 -1 1 0.04 -1 -1 34272 -1 -1 34 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 31 32 317 242 1 185 97 17 17 289 -1 unnamed_device 26.3 MiB 0.08 1048 16303 5056 8818 2429 64.9 MiB 0.13 0.00 2.9483 -95.6493 -2.9483 2.9483 1.04 0.000538134 0.000487835 0.0402206 0.0365748 28 2496 21 6.64007e+06 426972 500653. 1732.36 1.13 0.119245 0.106131 21970 115934 -1 2058 15 971 1723 132098 27675 2.76417 2.76417 -108.217 -2.76417 0 0 612192. 2118.31 0.31 0.06 0.11 -1 -1 0.31 0.0219314 0.0198242 140 -1 115 31 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_009.v common 4.68 vpr 64.88 MiB 0.02 7128 -1 -1 1 0.04 -1 -1 33816 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 31 32 338 292 1 147 80 17 17 289 -1 unnamed_device 26.1 MiB 0.16 810 6100 1410 3634 1056 64.9 MiB 0.06 0.00 2.69519 -86.3861 -2.69519 2.69519 1.13 0.000485572 0.000443395 0.021637 0.0197996 32 1818 20 6.64007e+06 213486 554710. 1919.41 1.03 0.0914439 0.0803753 22834 132086 -1 1622 17 894 1456 94397 22288 2.77577 2.77577 -101.968 -2.77577 0 0 701300. 2426.64 0.32 0.06 0.13 -1 -1 0.32 0.0242554 0.0214212 106 81 0 0 84 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_010.v common 4.46 vpr 64.86 MiB 0.02 7064 -1 -1 1 0.04 -1 -1 33996 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 314 256 1 162 81 17 17 289 -1 unnamed_device 26.1 MiB 0.18 945 13731 4635 7137 1959 64.9 MiB 0.11 0.00 2.7849 -102.339 -2.7849 2.7849 1.01 0.000557704 0.000511283 0.0391711 0.0358891 32 2200 27 6.64007e+06 213486 554710. 1919.41 1.04 0.1148 0.102317 22834 132086 -1 1950 21 1432 2216 168969 37194 2.89097 2.89097 -121.184 -2.89097 0 0 701300. 2426.64 0.32 0.08 0.12 -1 -1 0.32 0.0274326 0.0245948 121 31 64 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_011.v common 4.46 vpr 64.86 MiB 0.02 7084 -1 -1 1 0.04 -1 -1 33656 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 30 32 325 273 1 151 80 17 17 289 -1 unnamed_device 26.1 MiB 0.15 665 9884 2798 5725 1361 64.9 MiB 0.09 0.00 2.80139 -88.6898 -2.80139 2.80139 1.10 0.000496525 0.000451941 0.0323979 0.0295424 28 1568 22 6.64007e+06 226044 500653. 1732.36 0.95 0.101653 0.0897573 21970 115934 -1 1374 16 957 1385 76594 19878 2.97617 2.97617 -107.745 -2.97617 0 0 612192. 2118.31 0.30 0.05 0.10 -1 -1 0.30 0.0223455 0.0201538 110 58 30 30 60 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_012.v common 4.78 vpr 64.85 MiB 0.03 7224 -1 -1 1 0.04 -1 -1 34036 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 331 280 1 156 93 17 17 289 -1 unnamed_device 26.0 MiB 0.11 899 15003 4027 9024 1952 64.8 MiB 0.13 0.00 2.6877 -93.3875 -2.6877 2.6877 1.13 0.000470627 0.000423359 0.0412338 0.0374982 32 1994 24 6.64007e+06 364182 554710. 1919.41 1.09 0.115353 0.101859 22834 132086 -1 1851 19 1165 1847 133294 29677 2.86077 2.86077 -112.857 -2.86077 0 0 701300. 2426.64 0.33 0.07 0.14 -1 -1 0.33 0.0239123 0.0212391 114 57 25 25 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_013.v common 4.96 vpr 65.21 MiB 0.02 7212 -1 -1 1 0.04 -1 -1 33796 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 32 32 386 305 1 188 98 17 17 289 -1 unnamed_device 26.4 MiB 0.21 841 17423 5563 8405 3455 65.2 MiB 0.16 0.00 2.8299 -97.2128 -2.8299 2.8299 1.08 0.000685348 0.00062552 0.0517816 0.0472452 32 2492 26 6.64007e+06 426972 554710. 1919.41 1.19 0.149276 0.132977 22834 132086 -1 1952 20 1706 2815 175493 42799 3.11637 3.11637 -118.835 -3.11637 0 0 701300. 2426.64 0.34 0.08 0.13 -1 -1 0.34 0.0303246 0.0271738 145 55 64 32 57 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_014.v common 4.96 vpr 65.29 MiB 0.02 7356 -1 -1 1 0.04 -1 -1 33936 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66860 32 32 407 319 1 200 100 17 17 289 -1 unnamed_device 26.8 MiB 0.15 1027 16804 4495 9925 2384 65.3 MiB 0.16 0.00 3.38416 -118.804 -3.38416 3.38416 1.11 0.00070386 0.000640952 0.0500308 0.0454838 32 2550 20 6.64007e+06 452088 554710. 1919.41 1.14 0.138942 0.123096 22834 132086 -1 2206 22 2007 3143 230778 49128 3.65443 3.65443 -142.732 -3.65443 0 0 701300. 2426.64 0.35 0.10 0.14 -1 -1 0.35 0.0360013 0.0324395 158 60 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_015.v common 4.35 vpr 64.27 MiB 0.02 7056 -1 -1 1 0.04 -1 -1 34116 -1 -1 19 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65812 29 32 272 228 1 145 80 17 17 289 -1 unnamed_device 25.8 MiB 0.10 829 13668 4281 7724 1663 64.3 MiB 0.10 0.00 2.7049 -86.3628 -2.7049 2.7049 1.03 0.000445435 0.000404677 0.0348332 0.0316613 32 1805 21 6.64007e+06 238602 554710. 1919.41 0.99 0.0959966 0.0847965 22834 132086 -1 1676 20 1075 1807 129316 29375 2.72157 2.72157 -102.322 -2.72157 0 0 701300. 2426.64 0.34 0.06 0.12 -1 -1 0.34 0.0215342 0.0191313 108 21 58 29 24 24 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_016.v common 4.60 vpr 64.99 MiB 0.02 7152 -1 -1 1 0.04 -1 -1 34052 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 32 32 401 315 1 192 86 17 17 289 -1 unnamed_device 26.2 MiB 0.17 1121 14261 4528 7474 2259 65.0 MiB 0.14 0.00 2.7929 -101.487 -2.7929 2.7929 1.03 0.000578117 0.000518225 0.0494455 0.0454615 32 2729 22 6.64007e+06 276276 554710. 1919.41 1.08 0.141486 0.126588 22834 132086 -1 2307 19 1739 2964 200212 44498 3.11037 3.11037 -125.204 -3.11037 0 0 701300. 2426.64 0.33 0.09 0.12 -1 -1 0.33 0.0319988 0.0289186 147 60 64 32 62 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_017.v common 7.36 vpr 65.28 MiB 0.02 7376 -1 -1 1 0.04 -1 -1 33992 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 32 32 383 303 1 185 100 17 17 289 -1 unnamed_device 26.5 MiB 0.16 975 17500 5427 9602 2471 65.3 MiB 0.15 0.00 2.9051 -104.077 -2.9051 2.9051 1.02 0.000644749 0.000587358 0.0474626 0.0432176 34 2272 48 6.64007e+06 452088 585099. 2024.56 3.83 0.262375 0.231127 23122 138558 -1 1925 16 1230 1792 116166 26964 2.99097 2.99097 -120.322 -2.99097 0 0 742403. 2568.87 0.34 0.06 0.13 -1 -1 0.34 0.0219711 0.0197372 144 54 64 32 56 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_018.v common 4.76 vpr 64.90 MiB 0.02 7228 -1 -1 1 0.04 -1 -1 33800 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 339 284 1 162 95 17 17 289 -1 unnamed_device 26.1 MiB 0.13 768 12407 4011 5872 2524 64.9 MiB 0.11 0.00 2.29764 -80.8776 -2.29764 2.29764 1.12 0.000554095 0.000496844 0.0359247 0.0324577 32 2002 26 6.64007e+06 389298 554710. 1919.41 1.10 0.11901 0.105228 22834 132086 -1 1549 17 1099 1710 106174 26116 2.27071 2.27071 -96.4443 -2.27071 0 0 701300. 2426.64 0.34 0.06 0.14 -1 -1 0.34 0.0251623 0.0225552 119 62 29 29 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_019.v common 4.00 vpr 64.11 MiB 0.02 7060 -1 -1 1 0.03 -1 -1 33868 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65648 30 32 226 208 1 119 77 17 17 289 -1 unnamed_device 25.6 MiB 0.04 554 7738 1823 4997 918 64.1 MiB 0.05 0.00 2.36284 -73.7482 -2.36284 2.36284 0.98 0.000369406 0.000338302 0.0183845 0.0168346 32 1363 20 6.64007e+06 188370 554710. 1919.41 0.90 0.066402 0.0584885 22834 132086 -1 1225 21 745 1090 79317 19441 1.85991 1.85991 -78.5754 -1.85991 0 0 701300. 2426.64 0.32 0.05 0.12 -1 -1 0.32 0.0191519 0.0169675 85 29 24 24 30 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_020.v common 4.69 vpr 64.93 MiB 0.02 7212 -1 -1 1 0.04 -1 -1 34212 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 31 32 335 280 1 154 80 17 17 289 -1 unnamed_device 26.1 MiB 0.14 657 12636 5260 6585 791 64.9 MiB 0.12 0.00 3.41785 -99.3078 -3.41785 3.41785 1.07 0.000483809 0.000440571 0.0440165 0.0402869 32 2069 33 6.64007e+06 213486 554710. 1919.41 1.09 0.123212 0.108744 22834 132086 -1 1553 20 841 1229 86788 21527 3.60083 3.60083 -119.861 -3.60083 0 0 701300. 2426.64 0.34 0.06 0.13 -1 -1 0.34 0.0255367 0.0228001 113 55 31 31 62 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_021.v common 6.23 vpr 64.98 MiB 0.02 7024 -1 -1 1 0.04 -1 -1 34008 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 366 283 1 192 100 17 17 289 -1 unnamed_device 26.2 MiB 0.10 843 17732 4593 8777 4362 65.0 MiB 0.13 0.00 3.36336 -109.359 -3.36336 3.36336 1.06 0.000537514 0.000488863 0.0474984 0.0433654 32 2559 31 6.64007e+06 452088 554710. 1919.41 2.60 0.195368 0.17238 22834 132086 -1 1904 21 1681 2368 200981 51367 4.51903 4.51903 -139.421 -4.51903 0 0 701300. 2426.64 0.35 0.09 0.13 -1 -1 0.35 0.0313041 0.027901 147 31 91 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_022.v common 4.83 vpr 65.17 MiB 0.03 7540 -1 -1 1 0.04 -1 -1 34040 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66736 32 32 460 375 1 196 102 17 17 289 -1 unnamed_device 26.8 MiB 0.22 953 11288 2784 7344 1160 65.2 MiB 0.12 0.00 3.06225 -100.942 -3.06225 3.06225 1.07 0.000870576 0.000794135 0.0370959 0.0338316 32 2723 20 6.64007e+06 477204 554710. 1919.41 1.10 0.127939 0.113383 22834 132086 -1 2087 22 1481 2246 150684 35205 3.61343 3.61343 -123.253 -3.61343 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.0347868 0.0309986 150 108 0 0 125 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_023.v common 4.43 vpr 63.83 MiB 0.02 6788 -1 -1 1 0.03 -1 -1 34332 -1 -1 17 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65364 26 32 198 186 1 109 75 17 17 289 -1 unnamed_device 25.5 MiB 0.10 586 11293 3389 6712 1192 63.8 MiB 0.07 0.00 2.13964 -62.899 -2.13964 2.13964 1.09 0.00033847 0.000305272 0.0259608 0.023602 32 1267 19 6.64007e+06 213486 554710. 1919.41 0.97 0.0717375 0.063135 22834 132086 -1 1157 15 438 710 50491 11297 1.86611 1.86611 -70.7317 -1.86611 0 0 701300. 2426.64 0.34 0.03 0.14 -1 -1 0.34 0.0139172 0.0124416 77 21 26 26 22 22 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_024.v common 4.40 vpr 64.78 MiB 0.02 7288 -1 -1 1 0.04 -1 -1 33960 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 32 32 333 251 1 187 86 17 17 289 -1 unnamed_device 26.3 MiB 0.07 1193 11993 3448 7342 1203 64.8 MiB 0.12 0.00 3.76596 -121.69 -3.76596 3.76596 1.01 0.000628119 0.000576747 0.0369316 0.0338972 32 2579 20 6.64007e+06 276276 554710. 1919.41 1.05 0.117444 0.104995 22834 132086 -1 2318 22 1707 3004 208400 46413 4.00203 4.00203 -145.654 -4.00203 0 0 701300. 2426.64 0.33 0.09 0.12 -1 -1 0.33 0.0305558 0.0274259 138 -1 122 32 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_025.v common 4.44 vpr 64.11 MiB 0.02 6988 -1 -1 1 0.03 -1 -1 33692 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65644 32 32 199 182 1 122 77 17 17 289 -1 unnamed_device 25.7 MiB 0.04 775 11650 3871 6221 1558 64.1 MiB 0.08 0.00 1.86653 -70.0919 -1.86653 1.86653 1.11 0.000342473 0.000311206 0.0279452 0.0254473 32 1481 17 6.64007e+06 163254 554710. 1919.41 0.98 0.0753103 0.0668174 22834 132086 -1 1344 15 608 820 57592 13107 2.01231 2.01231 -86.1872 -2.01231 0 0 701300. 2426.64 0.34 0.04 0.14 -1 -1 0.34 0.0139107 0.0124838 81 -1 53 32 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_026.v common 4.52 vpr 64.96 MiB 0.02 7372 -1 -1 1 0.04 -1 -1 34264 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66520 32 32 376 288 1 194 99 17 17 289 -1 unnamed_device 26.2 MiB 0.08 999 20391 7010 10345 3036 65.0 MiB 0.17 0.00 3.44536 -118.941 -3.44536 3.44536 1.00 0.000553283 0.000494674 0.0529794 0.0483255 32 2438 23 6.64007e+06 439530 554710. 1919.41 1.08 0.142003 0.126943 22834 132086 -1 2115 21 1925 2989 210391 47807 3.63543 3.63543 -140.18 -3.63543 0 0 701300. 2426.64 0.32 0.08 0.12 -1 -1 0.32 0.0295243 0.026459 153 21 96 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_027.v common 4.97 vpr 64.56 MiB 0.02 7036 -1 -1 1 0.04 -1 -1 34028 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66108 32 32 337 253 1 196 101 17 17 289 -1 unnamed_device 25.8 MiB 0.09 1024 10676 2621 7554 501 64.6 MiB 0.10 0.00 2.8691 -100.143 -2.8691 2.8691 1.02 0.000608481 0.000553926 0.0273425 0.0249362 26 2784 45 6.64007e+06 464646 477104. 1650.88 1.63 0.132007 0.116622 21682 110474 -1 2216 18 1424 2245 142909 34725 2.97997 2.97997 -119.821 -2.97997 0 0 585099. 2024.56 0.28 0.07 0.10 -1 -1 0.28 0.0243907 0.0217943 152 -1 124 32 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_028.v common 4.49 vpr 65.23 MiB 0.02 7172 -1 -1 1 0.04 -1 -1 33920 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 32 32 407 319 1 197 101 17 17 289 -1 unnamed_device 26.5 MiB 0.08 985 13261 3795 8080 1386 65.2 MiB 0.13 0.00 3.43916 -114.862 -3.43916 3.43916 0.98 0.000718516 0.000667679 0.0389878 0.0358049 32 2809 26 6.64007e+06 464646 554710. 1919.41 1.13 0.133669 0.118813 22834 132086 -1 2218 21 1862 3229 237233 52314 3.78863 3.78863 -139.476 -3.78863 0 0 701300. 2426.64 0.31 0.09 0.12 -1 -1 0.31 0.0319119 0.0286563 155 54 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_029.v common 4.50 vpr 64.34 MiB 0.02 6924 -1 -1 1 0.03 -1 -1 33932 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65884 32 32 294 246 1 149 80 17 17 289 -1 unnamed_device 25.8 MiB 0.07 825 6616 1872 3777 967 64.3 MiB 0.06 0.00 2.45379 -87.7356 -2.45379 2.45379 1.07 0.00043649 0.000399256 0.0209908 0.0191806 32 1985 21 6.64007e+06 200928 554710. 1919.41 1.05 0.0906656 0.0794295 22834 132086 -1 1722 19 1097 1797 126927 28292 2.76097 2.76097 -107.181 -2.76097 0 0 701300. 2426.64 0.34 0.06 0.14 -1 -1 0.34 0.0231014 0.0205953 107 31 54 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_030.v common 4.55 vpr 64.42 MiB 0.02 7220 -1 -1 1 0.04 -1 -1 33876 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65968 30 32 296 244 1 154 81 17 17 289 -1 unnamed_device 25.9 MiB 0.08 830 12681 3760 7170 1751 64.4 MiB 0.10 0.00 2.7739 -94.2438 -2.7739 2.7739 1.07 0.000474882 0.000434124 0.0368699 0.0336833 32 1834 19 6.64007e+06 238602 554710. 1919.41 1.05 0.101177 0.0893646 22834 132086 -1 1629 20 1203 1757 119551 27465 2.91397 2.91397 -111.862 -2.91397 0 0 701300. 2426.64 0.33 0.06 0.13 -1 -1 0.33 0.0225646 0.0199781 115 29 60 30 30 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_031.v common 4.65 vpr 64.53 MiB 0.09 7108 -1 -1 1 0.04 -1 -1 33672 -1 -1 20 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66076 28 32 278 232 1 150 80 17 17 289 -1 unnamed_device 26.0 MiB 0.10 733 10056 2641 5787 1628 64.5 MiB 0.09 0.00 2.7097 -84.1332 -2.7097 2.7097 1.10 0.000414885 0.000377301 0.0279294 0.0255096 32 1819 21 6.64007e+06 251160 554710. 1919.41 1.05 0.0937805 0.0827491 22834 132086 -1 1616 20 1205 1988 135884 31843 2.89677 2.89677 -103.074 -2.89677 0 0 701300. 2426.64 0.33 0.06 0.14 -1 -1 0.33 0.0227781 0.0201625 107 27 56 28 28 28 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_032.v common 4.65 vpr 64.65 MiB 0.02 7020 -1 -1 1 0.04 -1 -1 33904 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 32 32 283 225 1 166 82 17 17 289 -1 unnamed_device 25.8 MiB 0.09 818 10940 3479 6415 1046 64.6 MiB 0.11 0.00 2.8039 -97.5727 -2.8039 2.8039 1.10 0.000450716 0.000408944 0.0339994 0.030911 32 2083 22 6.64007e+06 226044 554710. 1919.41 1.06 0.102919 0.0910907 22834 132086 -1 1748 21 1433 2213 147252 34120 3.04997 3.04997 -121.29 -3.04997 0 0 701300. 2426.64 0.34 0.07 0.14 -1 -1 0.34 0.0256884 0.0230518 125 -1 96 32 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_033.v common 4.32 vpr 64.61 MiB 0.02 6976 -1 -1 1 0.04 -1 -1 34096 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 31 32 303 249 1 162 94 17 17 289 -1 unnamed_device 26.2 MiB 0.06 869 16495 4995 9142 2358 64.6 MiB 0.12 0.00 2.7427 -95.3065 -2.7427 2.7427 1.00 0.000484542 0.0004428 0.0387393 0.0354574 32 2103 19 6.64007e+06 389298 554710. 1919.41 0.99 0.104519 0.0925844 22834 132086 -1 1841 21 1315 2029 135730 31796 2.79497 2.79497 -111.838 -2.79497 0 0 701300. 2426.64 0.32 0.07 0.12 -1 -1 0.32 0.0247709 0.0219009 119 26 61 31 31 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_034.v common 4.32 vpr 65.00 MiB 0.02 7132 -1 -1 1 0.04 -1 -1 33572 -1 -1 31 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 29 32 312 264 1 154 92 17 17 289 -1 unnamed_device 26.3 MiB 0.13 764 10442 2334 7462 646 65.0 MiB 0.09 0.00 2.24264 -73.5213 -2.24264 2.24264 1.03 0.00054975 0.00049606 0.026517 0.0239878 30 1569 18 6.64007e+06 389298 526063. 1820.29 0.94 0.0876803 0.0768861 22546 126617 -1 1330 14 806 1299 59240 14586 1.99731 1.99731 -80.3616 -1.99731 0 0 666494. 2306.21 0.31 0.04 0.12 -1 -1 0.31 0.0175113 0.0157232 110 55 29 29 57 29 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_035.v common 4.51 vpr 65.31 MiB 0.02 7284 -1 -1 1 0.04 -1 -1 34092 -1 -1 41 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66880 32 32 423 310 1 229 105 17 17 289 -1 unnamed_device 27.1 MiB 0.16 1295 11467 2941 7739 787 65.3 MiB 0.12 0.00 3.41716 -121.564 -3.41716 3.41716 0.99 0.000819322 0.000751604 0.0387284 0.0357342 32 2972 21 6.64007e+06 514878 554710. 1919.41 1.07 0.131644 0.117985 22834 132086 -1 2606 17 1736 2801 182072 40366 3.79883 3.79883 -146.49 -3.79883 0 0 701300. 2426.64 0.32 0.08 0.12 -1 -1 0.32 0.0306627 0.0277692 181 26 128 32 27 27 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_036.v common 4.93 vpr 65.28 MiB 0.03 7384 -1 -1 1 0.04 -1 -1 33956 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 32 32 403 317 1 198 101 17 17 289 -1 unnamed_device 26.6 MiB 0.16 947 16551 4738 8951 2862 65.3 MiB 0.16 0.00 2.8801 -101.513 -2.8801 2.8801 1.11 0.000693093 0.000623884 0.0507638 0.0463397 32 2332 24 6.64007e+06 464646 554710. 1919.41 1.15 0.145941 0.13005 22834 132086 -1 1931 21 1922 2992 186155 43594 2.95797 2.95797 -117.091 -2.95797 0 0 701300. 2426.64 0.33 0.09 0.13 -1 -1 0.33 0.0327249 0.0291556 154 62 62 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_037.v common 4.92 vpr 64.89 MiB 0.02 7208 -1 -1 1 0.04 -1 -1 34272 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 31 32 353 302 1 156 92 17 17 289 -1 unnamed_device 26.1 MiB 0.21 731 8579 1945 6283 351 64.9 MiB 0.08 0.00 2.9621 -91.1584 -2.9621 2.9621 1.07 0.000526867 0.000479154 0.0257975 0.0235496 26 2289 37 6.64007e+06 364182 477104. 1650.88 1.39 0.125344 0.110977 21682 110474 -1 1710 21 1245 1859 123436 29727 3.00597 3.00597 -110.635 -3.00597 0 0 585099. 2024.56 0.27 0.07 0.10 -1 -1 0.27 0.027209 0.0241458 114 77 0 0 89 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_038.v common 4.95 vpr 65.03 MiB 0.03 7204 -1 -1 1 0.04 -1 -1 33868 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 31 32 391 309 1 194 87 17 17 289 -1 unnamed_device 26.4 MiB 0.14 1074 13335 4173 6672 2490 65.0 MiB 0.13 0.00 2.9211 -98.485 -2.9211 2.9211 1.13 0.000647809 0.000586523 0.0446641 0.0407048 32 2531 23 6.64007e+06 301392 554710. 1919.41 1.13 0.133075 0.11737 22834 132086 -1 2143 23 1830 3134 207984 47737 2.96097 2.96097 -116.839 -2.96097 0 0 701300. 2426.64 0.35 0.10 0.13 -1 -1 0.35 0.0329113 0.0292535 149 59 60 30 62 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_039.v common 5.07 vpr 65.45 MiB 0.03 7344 -1 -1 1 0.04 -1 -1 33880 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67024 31 32 455 371 1 193 86 17 17 289 -1 unnamed_device 26.8 MiB 0.37 1075 10859 2964 6681 1214 65.5 MiB 0.12 0.00 4.21121 -122.888 -4.21121 4.21121 1.11 0.000648877 0.00059224 0.0425522 0.038744 28 2596 20 6.64007e+06 288834 500653. 1732.36 1.26 0.13959 0.123769 21970 115934 -1 2310 20 997 1601 125027 27109 4.04469 4.04469 -143.456 -4.04469 0 0 612192. 2118.31 0.28 0.07 0.10 -1 -1 0.28 0.0309457 0.0275819 150 111 0 0 124 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_040.v common 4.77 vpr 65.14 MiB 0.02 7400 -1 -1 1 0.04 -1 -1 34048 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66708 31 32 413 333 1 188 86 17 17 289 -1 unnamed_device 26.4 MiB 0.20 1015 12749 3873 7799 1077 65.1 MiB 0.13 0.00 4.04401 -114.423 -4.04401 4.04401 1.09 0.000836167 0.000765326 0.0468758 0.0427632 32 2374 21 6.64007e+06 288834 554710. 1919.41 1.08 0.131559 0.11641 22834 132086 -1 2098 19 1298 2166 154073 35476 3.88948 3.88948 -136.923 -3.88948 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.0306344 0.0273136 144 86 31 31 89 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_041.v common 4.72 vpr 65.14 MiB 0.03 7448 -1 -1 1 0.04 -1 -1 33720 -1 -1 35 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66704 31 32 391 309 1 193 98 17 17 289 -1 unnamed_device 26.4 MiB 0.14 877 12473 3169 8349 955 65.1 MiB 0.13 0.00 2.7859 -92.6822 -2.7859 2.7859 1.07 0.000642577 0.000580718 0.0396742 0.0362552 32 2402 24 6.64007e+06 439530 554710. 1919.41 1.10 0.130531 0.115952 22834 132086 -1 1924 22 1694 2933 169026 41386 2.86197 2.86197 -112.246 -2.86197 0 0 701300. 2426.64 0.35 0.09 0.14 -1 -1 0.35 0.0346333 0.0308422 148 58 60 31 62 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_042.v common 4.64 vpr 65.27 MiB 0.02 7268 -1 -1 1 0.04 -1 -1 33856 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66840 32 32 407 319 1 198 101 17 17 289 -1 unnamed_device 26.4 MiB 0.11 1110 15846 4422 9952 1472 65.3 MiB 0.14 0.00 3.31896 -119.55 -3.31896 3.31896 1.03 0.000653774 0.000594298 0.041723 0.0380208 28 2618 22 6.64007e+06 464646 500653. 1732.36 1.20 0.137208 0.122406 21970 115934 -1 2347 21 1865 2995 220629 47521 3.73543 3.73543 -146.525 -3.73543 0 0 612192. 2118.31 0.28 0.09 0.10 -1 -1 0.28 0.0317477 0.0283496 156 42 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_043.v common 4.72 vpr 65.44 MiB 0.03 7592 -1 -1 1 0.04 -1 -1 34016 -1 -1 42 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67008 32 32 496 380 1 232 106 17 17 289 -1 unnamed_device 27.2 MiB 0.17 1269 15106 3945 9674 1487 65.4 MiB 0.18 0.00 3.57956 -123.56 -3.57956 3.57956 1.02 0.000783155 0.000718403 0.0512173 0.0467223 30 2942 21 6.64007e+06 527436 526063. 1820.29 1.13 0.157544 0.140431 22546 126617 -1 2527 20 1871 3107 168644 38916 3.55842 3.55842 -141.763 -3.55842 0 0 666494. 2306.21 0.33 0.09 0.12 -1 -1 0.33 0.0365598 0.0327469 186 91 62 32 96 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_044.v common 4.49 vpr 64.81 MiB 0.02 7176 -1 -1 1 0.04 -1 -1 33788 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 31 32 305 250 1 158 81 17 17 289 -1 unnamed_device 26.0 MiB 0.10 740 13906 5010 6411 2485 64.8 MiB 0.12 0.00 3.0453 -97.4397 -3.0453 3.0453 1.03 0.00042667 0.000386992 0.040085 0.036601 32 1899 23 6.64007e+06 226044 554710. 1919.41 1.02 0.113296 0.100904 22834 132086 -1 1608 20 1335 2124 151164 35288 2.99397 2.99397 -114.031 -2.99397 0 0 701300. 2426.64 0.34 0.07 0.13 -1 -1 0.34 0.0245622 0.0216882 116 24 62 31 31 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_045.v common 5.42 vpr 65.24 MiB 0.02 7332 -1 -1 1 0.04 -1 -1 33976 -1 -1 38 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 31 32 395 311 1 196 101 17 17 289 -1 unnamed_device 26.3 MiB 0.14 1032 18666 7089 9583 1994 65.2 MiB 0.17 0.00 3.54836 -117.608 -3.54836 3.54836 1.05 0.000645329 0.000589204 0.0529954 0.0484245 28 2907 36 6.64007e+06 477204 500653. 1732.36 1.86 0.170918 0.152775 21970 115934 -1 2235 20 1813 3093 216752 49701 3.88902 3.88902 -143.497 -3.88902 0 0 612192. 2118.31 0.31 0.09 0.11 -1 -1 0.31 0.0320741 0.0287641 152 59 62 31 62 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_046.v common 6.85 vpr 65.43 MiB 0.02 7428 -1 -1 1 0.04 -1 -1 34040 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67000 32 32 397 313 1 196 98 17 17 289 -1 unnamed_device 26.5 MiB 0.12 1057 8423 1813 5699 911 65.4 MiB 0.10 0.00 3.0713 -99.7452 -3.0713 3.0713 1.09 0.000808823 0.000749118 0.0290606 0.0266019 28 2692 22 6.64007e+06 426972 500653. 1732.36 3.32 0.195188 0.170815 21970 115934 -1 2262 20 1197 2255 144020 36100 3.24637 3.24637 -120.476 -3.24637 0 0 612192. 2118.31 0.28 0.08 0.11 -1 -1 0.28 0.0297227 0.0267125 149 54 62 32 62 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_047.v common 4.79 vpr 64.75 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 33664 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 32 32 345 257 1 194 86 17 17 289 -1 unnamed_device 26.3 MiB 0.08 1130 16340 5772 8458 2110 64.8 MiB 0.16 0.00 3.30796 -118.295 -3.30796 3.30796 1.09 0.000526156 0.000478663 0.0522748 0.0476007 32 2722 24 6.64007e+06 276276 554710. 1919.41 1.17 0.141955 0.126322 22834 132086 -1 2299 21 1916 3325 217365 49153 3.62443 3.62443 -145.014 -3.62443 0 0 701300. 2426.64 0.33 0.09 0.13 -1 -1 0.33 0.0312872 0.0279538 151 -1 128 32 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_048.v common 4.75 vpr 64.85 MiB 0.02 7356 -1 -1 1 0.04 -1 -1 34048 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 424 343 1 190 99 17 17 289 -1 unnamed_device 26.1 MiB 0.19 1064 17199 4613 10367 2219 64.9 MiB 0.16 0.00 2.7537 -100.272 -2.7537 2.7537 1.07 0.000587763 0.000532638 0.0498569 0.0453025 28 2401 21 6.64007e+06 439530 500653. 1732.36 1.11 0.137907 0.122455 21970 115934 -1 2191 20 1351 2149 151465 33671 2.73077 2.73077 -116.108 -2.73077 0 0 612192. 2118.31 0.30 0.08 0.11 -1 -1 0.30 0.0298822 0.0265832 146 81 25 25 96 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_049.v common 4.93 vpr 65.20 MiB 0.03 7136 -1 -1 1 0.04 -1 -1 33888 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 32 32 395 311 1 194 101 17 17 289 -1 unnamed_device 26.4 MiB 0.18 1022 13496 3550 8351 1595 65.2 MiB 0.13 0.00 2.7537 -99.671 -2.7537 2.7537 1.06 0.000711429 0.000648004 0.0383399 0.0348779 26 2745 35 6.64007e+06 464646 477104. 1650.88 1.38 0.139277 0.122969 21682 110474 -1 2177 20 1306 2187 158702 34493 3.01517 3.01517 -119.975 -3.01517 0 0 585099. 2024.56 0.27 0.07 0.11 -1 -1 0.27 0.0278253 0.0247566 148 58 64 32 60 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_050.v common 5.09 vpr 65.39 MiB 0.02 7160 -1 -1 1 0.04 -1 -1 33988 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66956 32 32 405 318 1 200 103 17 17 289 -1 unnamed_device 26.8 MiB 0.15 971 20106 6523 10087 3496 65.4 MiB 0.18 0.00 2.9343 -100.466 -2.9343 2.9343 1.06 0.000633796 0.000577944 0.058762 0.0533848 28 2945 30 6.64007e+06 489762 500653. 1732.36 1.49 0.160872 0.142716 21970 115934 -1 2282 20 1745 2768 192161 44306 3.22637 3.22637 -126.455 -3.22637 0 0 612192. 2118.31 0.28 0.08 0.11 -1 -1 0.28 0.0288179 0.0255773 157 61 63 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_051.v common 4.47 vpr 65.43 MiB 0.02 7328 -1 -1 1 0.04 -1 -1 34220 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67004 32 32 376 288 1 194 101 17 17 289 -1 unnamed_device 26.5 MiB 0.08 1090 20076 6356 11046 2674 65.4 MiB 0.17 0.00 3.37316 -119.769 -3.37316 3.37316 1.00 0.00061046 0.000531396 0.0536808 0.0487536 32 2492 23 6.64007e+06 464646 554710. 1919.41 1.02 0.131787 0.116999 22834 132086 -1 2147 20 1699 2654 176650 39131 3.69143 3.69143 -142.893 -3.69143 0 0 701300. 2426.64 0.32 0.07 0.13 -1 -1 0.32 0.0281395 0.0251434 152 21 96 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_052.v common 5.17 vpr 65.32 MiB 0.02 7376 -1 -1 1 0.04 -1 -1 34336 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66884 32 32 407 319 1 197 103 17 17 289 -1 unnamed_device 26.8 MiB 0.13 1005 11671 2780 7949 942 65.3 MiB 0.11 0.00 3.41536 -117.125 -3.41536 3.41536 1.04 0.000618861 0.000563691 0.0340352 0.0310795 26 2691 25 6.64007e+06 489762 477104. 1650.88 1.74 0.142032 0.126628 21682 110474 -1 2229 21 1848 2974 208810 47614 4.02903 4.02903 -154.18 -4.02903 0 0 585099. 2024.56 0.27 0.09 0.10 -1 -1 0.27 0.030121 0.0268329 155 50 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_053.v common 5.51 vpr 65.23 MiB 0.03 7460 -1 -1 1 0.04 -1 -1 34212 -1 -1 36 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66800 31 32 449 367 1 193 99 17 17 289 -1 unnamed_device 26.6 MiB 0.22 1132 11727 2897 7809 1021 65.2 MiB 0.13 0.00 3.83395 -115.186 -3.83395 3.83395 1.07 0.000703378 0.000643717 0.0379612 0.0345344 26 3016 47 6.64007e+06 452088 477104. 1650.88 1.84 0.165207 0.145446 21682 110474 -1 2417 19 1504 2612 185412 41535 3.73663 3.73663 -137.713 -3.73663 0 0 585099. 2024.56 0.28 0.08 0.11 -1 -1 0.28 0.0290599 0.0255563 147 110 0 0 122 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_054.v common 4.75 vpr 65.30 MiB 0.02 7180 -1 -1 1 0.04 -1 -1 34108 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66864 32 32 432 346 1 195 86 17 17 289 -1 unnamed_device 26.8 MiB 0.16 1052 15773 5242 8402 2129 65.3 MiB 0.16 0.00 3.56755 -112.832 -3.56755 3.56755 1.06 0.000672637 0.000612688 0.0589501 0.0538023 32 2723 23 6.64007e+06 276276 554710. 1919.41 1.12 0.162151 0.145098 22834 132086 -1 2263 21 1683 3054 197701 45133 3.62863 3.62863 -134.121 -3.62863 0 0 701300. 2426.64 0.33 0.09 0.13 -1 -1 0.33 0.0351107 0.0314618 151 86 32 32 94 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_055.v common 4.87 vpr 64.97 MiB 0.02 7132 -1 -1 1 0.04 -1 -1 33840 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 32 32 312 255 1 166 95 17 17 289 -1 unnamed_device 26.1 MiB 0.07 776 8951 1850 6701 400 65.0 MiB 0.09 0.00 2.7537 -96.7128 -2.7537 2.7537 1.04 0.000522615 0.000475145 0.0235669 0.0214993 28 2457 28 6.64007e+06 389298 500653. 1732.36 1.53 0.0994884 0.0876809 21970 115934 -1 1938 22 1318 2005 160114 35798 2.84177 2.84177 -117.465 -2.84177 0 0 612192. 2118.31 0.29 0.07 0.11 -1 -1 0.29 0.024016 0.0211543 125 20 63 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_056.v common 4.68 vpr 64.94 MiB 0.02 7280 -1 -1 1 0.04 -1 -1 33724 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 370 314 1 164 82 17 17 289 -1 unnamed_device 26.1 MiB 0.19 956 11474 3199 7255 1020 64.9 MiB 0.11 0.00 2.7819 -101.672 -2.7819 2.7819 1.05 0.000534413 0.000488653 0.0396157 0.0360023 32 2182 23 6.64007e+06 226044 554710. 1919.41 1.08 0.12634 0.11219 22834 132086 -1 1949 19 1260 2028 149212 32517 2.76557 2.76557 -118.289 -2.76557 0 0 701300. 2426.64 0.34 0.07 0.13 -1 -1 0.34 0.024495 0.0217968 121 91 0 0 94 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_057.v common 5.90 vpr 65.50 MiB 0.03 7260 -1 -1 1 0.04 -1 -1 34084 -1 -1 42 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67072 32 32 469 351 1 233 106 17 17 289 -1 unnamed_device 27.2 MiB 0.12 1369 19606 6011 11185 2410 65.5 MiB 0.22 0.00 4.14482 -142.34 -4.14482 4.14482 1.07 0.000640755 0.000583167 0.0619982 0.0563935 28 3836 27 6.64007e+06 527436 500653. 1732.36 2.15 0.177842 0.157984 21970 115934 -1 2980 24 2557 4228 312977 70254 4.85968 4.85968 -177.631 -4.85968 0 0 612192. 2118.31 0.30 0.12 0.12 -1 -1 0.30 0.0396459 0.0352705 189 53 96 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_058.v common 4.62 vpr 64.92 MiB 0.02 7072 -1 -1 1 0.04 -1 -1 34096 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 32 32 368 284 1 194 97 17 17 289 -1 unnamed_device 26.3 MiB 0.13 862 16747 4896 9029 2822 64.9 MiB 0.15 0.00 2.8911 -98.8384 -2.8911 2.8911 1.04 0.000593286 0.000522446 0.049406 0.0447365 32 2279 26 6.64007e+06 414414 554710. 1919.41 1.07 0.138887 0.123221 22834 132086 -1 1792 19 1373 1971 125271 30907 3.13437 3.13437 -117.649 -3.13437 0 0 701300. 2426.64 0.33 0.06 0.13 -1 -1 0.33 0.0262628 0.0234998 148 31 92 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_059.v common 4.37 vpr 64.52 MiB 0.02 7112 -1 -1 1 0.04 -1 -1 33740 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 30 32 296 244 1 158 93 17 17 289 -1 unnamed_device 26.2 MiB 0.07 709 7023 1303 5326 394 64.5 MiB 0.06 0.00 2.7317 -88.2741 -2.7317 2.7317 1.02 0.000454541 0.000418972 0.0170931 0.0155653 26 2005 22 6.64007e+06 389298 477104. 1650.88 1.18 0.088428 0.078116 21682 110474 -1 1715 19 1164 1755 108124 26146 2.86197 2.86197 -111.376 -2.86197 0 0 585099. 2024.56 0.28 0.05 0.10 -1 -1 0.28 0.0217457 0.0193241 116 29 60 30 30 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_060.v common 5.85 vpr 65.59 MiB 0.03 7532 -1 -1 1 0.04 -1 -1 34544 -1 -1 45 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67168 32 32 531 413 1 232 109 17 17 289 -1 unnamed_device 27.3 MiB 0.29 1374 12849 2997 8676 1176 65.6 MiB 0.14 0.00 3.89342 -135.958 -3.89342 3.89342 1.06 0.000745812 0.000680777 0.0415579 0.0377598 26 3512 26 6.64007e+06 565110 477104. 1650.88 2.10 0.155259 0.137586 21682 110474 -1 2810 22 2346 3773 282011 60455 4.54909 4.54909 -174.114 -4.54909 0 0 585099. 2024.56 0.30 0.12 0.11 -1 -1 0.30 0.0437708 0.0393018 188 109 32 32 128 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_061.v common 4.55 vpr 65.09 MiB 0.02 7136 -1 -1 1 0.04 -1 -1 34088 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 32 32 376 288 1 194 102 17 17 289 -1 unnamed_device 26.4 MiB 0.13 929 11526 2669 8210 647 65.1 MiB 0.11 0.00 3.41536 -118.083 -3.41536 3.41536 1.04 0.00077588 0.00069731 0.0347831 0.031776 30 2385 22 6.64007e+06 477204 526063. 1820.29 1.08 0.126718 0.112799 22546 126617 -1 1913 22 1560 2304 125282 30190 3.69343 3.69343 -139.998 -3.69343 0 0 666494. 2306.21 0.33 0.07 0.12 -1 -1 0.33 0.0303977 0.0270998 153 31 96 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_062.v common 5.08 vpr 64.70 MiB 0.02 7136 -1 -1 1 0.04 -1 -1 34028 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66248 32 32 283 225 1 164 96 17 17 289 -1 unnamed_device 26.4 MiB 0.08 792 12579 3290 8680 609 64.7 MiB 0.12 0.00 2.7647 -98.1605 -2.7647 2.7647 1.06 0.000555666 0.000510472 0.0339516 0.0309266 26 2450 27 6.64007e+06 401856 477104. 1650.88 1.66 0.112848 0.100026 21682 110474 -1 1865 21 1187 1896 138339 31381 2.94077 2.94077 -122.206 -2.94077 0 0 585099. 2024.56 0.29 0.07 0.11 -1 -1 0.29 0.0245255 0.0218851 124 -1 96 32 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_063.v common 5.14 vpr 65.11 MiB 0.03 7332 -1 -1 1 0.06 -1 -1 34328 -1 -1 43 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 438 320 1 235 107 17 17 289 -1 unnamed_device 26.8 MiB 0.13 1332 16299 4383 10515 1401 65.1 MiB 0.17 0.00 3.99342 -139.136 -3.99342 3.99342 1.04 0.000810897 0.000747162 0.0508178 0.0466155 28 3488 20 6.64007e+06 539994 500653. 1732.36 1.50 0.157921 0.141806 21970 115934 -1 3062 23 2515 4379 339661 71021 4.68068 4.68068 -176.811 -4.68068 0 0 612192. 2118.31 0.30 0.13 0.11 -1 -1 0.30 0.0409414 0.0366836 190 26 128 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_064.v common 4.38 vpr 64.56 MiB 0.02 7000 -1 -1 1 0.03 -1 -1 33708 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66112 32 32 283 225 1 162 81 17 17 289 -1 unnamed_device 25.9 MiB 0.09 854 11981 4008 6145 1828 64.6 MiB 0.10 0.00 2.7849 -100.479 -2.7849 2.7849 1.01 0.000441927 0.000402019 0.0311774 0.028288 32 2018 24 6.64007e+06 213486 554710. 1919.41 1.00 0.0971431 0.0854593 22834 132086 -1 1839 19 1421 2308 178991 39836 3.19537 3.19537 -125.609 -3.19537 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.0259208 0.0231784 121 -1 96 32 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_065.v common 6.65 vpr 64.41 MiB 0.02 7052 -1 -1 1 0.03 -1 -1 34012 -1 -1 32 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65956 30 32 296 244 1 157 94 17 17 289 -1 unnamed_device 26.1 MiB 0.12 694 12022 3074 7474 1474 64.4 MiB 0.09 0.00 2.8189 -90.3374 -2.8189 2.8189 1.05 0.000446481 0.000408465 0.0284328 0.0259054 28 2094 30 6.64007e+06 401856 500653. 1732.36 3.24 0.177491 0.155053 21970 115934 -1 1673 19 966 1621 108796 26568 3.13717 3.13717 -115.884 -3.13717 0 0 612192. 2118.31 0.29 0.06 0.11 -1 -1 0.29 0.0217267 0.0193201 114 29 60 30 30 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_066.v common 4.70 vpr 65.08 MiB 0.02 7392 -1 -1 1 0.04 -1 -1 34016 -1 -1 34 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66644 29 32 393 319 1 182 95 17 17 289 -1 unnamed_device 26.4 MiB 0.19 1004 14999 4032 9192 1775 65.1 MiB 0.15 0.00 2.9591 -89.5578 -2.9591 2.9591 1.10 0.000624701 0.000572973 0.0453532 0.0412782 28 2364 19 6.64007e+06 426972 500653. 1732.36 1.04 0.127231 0.112665 21970 115934 -1 2036 19 1165 1985 120552 28447 3.26256 3.26256 -111.226 -3.26256 0 0 612192. 2118.31 0.30 0.06 0.11 -1 -1 0.30 0.0261888 0.0232695 134 81 29 29 85 29 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_067.v common 4.57 vpr 64.98 MiB 0.02 7376 -1 -1 1 0.04 -1 -1 34016 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 407 319 1 194 86 17 17 289 -1 unnamed_device 26.2 MiB 0.14 895 8969 2133 6503 333 65.0 MiB 0.10 0.00 3.37836 -116.939 -3.37836 3.37836 1.05 0.000688929 0.000627785 0.0320851 0.0293676 30 2297 25 6.64007e+06 276276 526063. 1820.29 1.08 0.118037 0.104278 22546 126617 -1 1902 21 1549 2400 146319 32992 3.66543 3.66543 -139.83 -3.66543 0 0 666494. 2306.21 0.31 0.07 0.12 -1 -1 0.31 0.0279907 0.0248417 152 53 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_068.v common 4.96 vpr 64.92 MiB 0.02 7176 -1 -1 1 0.04 -1 -1 34248 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 32 32 407 319 1 195 100 17 17 289 -1 unnamed_device 26.4 MiB 0.23 1056 15876 4832 8212 2832 64.9 MiB 0.16 0.00 3.41716 -119.667 -3.41716 3.41716 1.11 0.000694624 0.00063122 0.0489532 0.0444452 32 2616 22 6.64007e+06 452088 554710. 1919.41 1.16 0.142107 0.126247 22834 132086 -1 2187 16 1480 2439 158728 36185 3.61523 3.61523 -139.348 -3.61523 0 0 701300. 2426.64 0.34 0.07 0.14 -1 -1 0.34 0.0260173 0.0232469 154 55 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_069.v common 4.40 vpr 65.04 MiB 0.02 7008 -1 -1 1 0.04 -1 -1 34184 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66604 32 32 345 287 1 161 96 17 17 289 -1 unnamed_device 26.4 MiB 0.13 897 13893 3276 8957 1660 65.0 MiB 0.11 0.00 2.8629 -104.168 -2.8629 2.8629 1.04 0.000519733 0.000464551 0.0364913 0.033092 28 2116 21 6.64007e+06 401856 500653. 1732.36 1.03 0.122478 0.10914 21970 115934 -1 1887 20 1198 1829 127592 28678 2.94877 2.94877 -123.284 -2.94877 0 0 612192. 2118.31 0.30 0.07 0.10 -1 -1 0.30 0.0261205 0.0232365 122 55 32 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_070.v common 4.46 vpr 65.02 MiB 0.02 7416 -1 -1 1 0.04 -1 -1 34276 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 31 32 353 302 1 152 80 17 17 289 -1 unnamed_device 26.2 MiB 0.17 863 7992 2041 4939 1012 65.0 MiB 0.08 0.00 2.9591 -94.569 -2.9591 2.9591 1.04 0.000660727 0.000606076 0.0275868 0.025236 30 2045 24 6.64007e+06 213486 526063. 1820.29 1.03 0.116341 0.103579 22546 126617 -1 1714 19 893 1615 88458 20900 2.80457 2.80457 -110.634 -2.80457 0 0 666494. 2306.21 0.32 0.05 0.12 -1 -1 0.32 0.0237241 0.021207 109 82 0 0 89 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_071.v common 6.52 vpr 65.12 MiB 0.02 7284 -1 -1 1 0.04 -1 -1 34244 -1 -1 35 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 30 32 374 297 1 186 97 17 17 289 -1 unnamed_device 26.4 MiB 0.15 867 8977 1908 6586 483 65.1 MiB 0.10 0.00 2.7317 -88.7549 -2.7317 2.7317 1.04 0.000636258 0.000584192 0.0278962 0.025559 28 2314 24 6.64007e+06 439530 500653. 1732.36 3.12 0.198798 0.173929 21970 115934 -1 1898 17 1189 1879 117624 28974 3.20057 3.20057 -110.549 -3.20057 0 0 612192. 2118.31 0.28 0.06 0.11 -1 -1 0.28 0.0254741 0.0227571 139 52 60 30 57 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_072.v common 4.38 vpr 64.88 MiB 0.02 7408 -1 -1 1 0.03 -1 -1 33900 -1 -1 32 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66432 28 32 332 260 1 180 92 17 17 289 -1 unnamed_device 26.3 MiB 0.08 954 12719 3532 8069 1118 64.9 MiB 0.11 0.00 3.53535 -102.191 -3.53535 3.53535 1.00 0.000531263 0.000486843 0.033572 0.030491 26 2405 23 6.64007e+06 401856 477104. 1650.88 1.12 0.112102 0.099219 21682 110474 -1 1988 18 1372 2174 140376 32086 3.97002 3.97002 -127.585 -3.97002 0 0 585099. 2024.56 0.28 0.07 0.10 -1 -1 0.28 0.0239357 0.0215053 134 20 84 28 28 28 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_073.v common 4.54 vpr 64.70 MiB 0.02 7344 -1 -1 1 0.04 -1 -1 33736 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 30 32 325 273 1 157 81 17 17 289 -1 unnamed_device 25.9 MiB 0.18 850 13731 4322 7300 2109 64.7 MiB 0.11 0.00 2.8131 -95.1918 -2.8131 2.8131 1.03 0.000510139 0.000465163 0.0407189 0.0371873 32 1985 19 6.64007e+06 238602 554710. 1919.41 1.03 0.11087 0.0985222 22834 132086 -1 1834 19 1259 2101 158714 35220 2.88417 2.88417 -110.683 -2.88417 0 0 701300. 2426.64 0.32 0.07 0.13 -1 -1 0.32 0.0229144 0.0202979 114 58 30 30 60 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_074.v common 4.74 vpr 64.91 MiB 0.02 7036 -1 -1 1 0.04 -1 -1 33552 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 361 308 1 158 81 17 17 289 -1 unnamed_device 26.1 MiB 0.19 916 12156 3444 6619 2093 64.9 MiB 0.11 0.00 2.9653 -95.0324 -2.9653 2.9653 1.07 0.00051701 0.000469203 0.040862 0.0371407 32 2048 21 6.64007e+06 213486 554710. 1919.41 1.05 0.114592 0.100756 22834 132086 -1 1845 21 1192 2014 141661 31890 2.73857 2.73857 -108.912 -2.73857 0 0 701300. 2426.64 0.36 0.07 0.13 -1 -1 0.36 0.0293277 0.0261144 114 88 0 0 91 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_075.v common 4.50 vpr 64.67 MiB 0.02 7096 -1 -1 1 0.04 -1 -1 33844 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 31 32 335 251 1 196 100 17 17 289 -1 unnamed_device 26.1 MiB 0.09 1008 11236 2912 7417 907 64.7 MiB 0.11 0.00 3.38416 -112.662 -3.38416 3.38416 1.02 0.000513432 0.000468292 0.0276577 0.025258 32 2726 21 6.64007e+06 464646 554710. 1919.41 1.09 0.102271 0.0900104 22834 132086 -1 2219 18 1575 2514 151454 36486 3.74563 3.74563 -137.435 -3.74563 0 0 701300. 2426.64 0.32 0.07 0.13 -1 -1 0.32 0.0242364 0.0215553 152 -1 124 31 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_076.v common 4.77 vpr 65.14 MiB 0.02 7268 -1 -1 1 0.04 -1 -1 34164 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66700 32 32 407 319 1 197 100 17 17 289 -1 unnamed_device 26.5 MiB 0.17 974 19588 5941 10475 3172 65.1 MiB 0.18 0.00 3.39516 -117.047 -3.39516 3.39516 1.07 0.000626871 0.000571687 0.0571753 0.0521605 32 2405 21 6.64007e+06 452088 554710. 1919.41 1.12 0.153525 0.13732 22834 132086 -1 2044 18 1656 2788 170865 39928 3.70243 3.70243 -139.061 -3.70243 0 0 701300. 2426.64 0.33 0.08 0.12 -1 -1 0.33 0.0295302 0.0264749 155 57 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_077.v common 4.72 vpr 65.32 MiB 0.02 7168 -1 -1 1 0.04 -1 -1 33996 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66884 32 32 407 319 1 194 100 17 17 289 -1 unnamed_device 26.8 MiB 0.16 1106 16108 4364 9972 1772 65.3 MiB 0.15 0.00 3.38416 -119.924 -3.38416 3.38416 1.05 0.000693914 0.000639474 0.0509018 0.0465797 32 2670 21 6.64007e+06 452088 554710. 1919.41 1.13 0.150441 0.134656 22834 132086 -1 2329 20 1746 2813 203457 43421 3.69443 3.69443 -145.719 -3.69443 0 0 701300. 2426.64 0.33 0.09 0.12 -1 -1 0.33 0.0337906 0.0303445 153 62 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_078.v common 5.56 vpr 65.16 MiB 0.03 7164 -1 -1 1 0.04 -1 -1 34112 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 32 32 399 315 1 196 102 17 17 289 -1 unnamed_device 26.3 MiB 0.14 1160 18666 5104 11527 2035 65.2 MiB 0.19 0.00 3.37316 -115.961 -3.37316 3.37316 1.09 0.000629198 0.000571478 0.0532643 0.0482465 26 3007 26 6.64007e+06 477204 477104. 1650.88 1.92 0.148076 0.131082 21682 110474 -1 2464 21 1651 2839 202196 44668 3.63943 3.63943 -139.369 -3.63943 0 0 585099. 2024.56 0.28 0.09 0.11 -1 -1 0.28 0.0301753 0.0269044 149 62 60 30 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_079.v common 4.45 vpr 64.89 MiB 0.02 6988 -1 -1 1 0.03 -1 -1 33844 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 30 32 296 244 1 156 81 17 17 289 -1 unnamed_device 26.1 MiB 0.11 647 13381 3925 7147 2309 64.9 MiB 0.12 0.00 2.7709 -89.1313 -2.7709 2.7709 1.04 0.000473088 0.000433969 0.0381832 0.0348578 32 1814 21 6.64007e+06 238602 554710. 1919.41 1.01 0.101727 0.0898376 22834 132086 -1 1531 19 1191 1888 127169 29838 2.81877 2.81877 -108.024 -2.81877 0 0 701300. 2426.64 0.35 0.06 0.13 -1 -1 0.35 0.0235151 0.0210082 113 29 60 30 30 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_080.v common 4.44 vpr 65.28 MiB 0.02 7428 -1 -1 1 0.04 -1 -1 34068 -1 -1 24 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 30 32 383 303 1 191 86 17 17 289 -1 unnamed_device 26.6 MiB 0.15 927 14450 3655 8821 1974 65.3 MiB 0.12 0.00 3.35636 -108.653 -3.35636 3.35636 1.00 0.000567015 0.0005168 0.0442541 0.0402787 32 2282 22 6.64007e+06 301392 554710. 1919.41 1.04 0.125472 0.111199 22834 132086 -1 2081 20 1739 2609 197090 44688 3.66483 3.66483 -131.299 -3.66483 0 0 701300. 2426.64 0.32 0.08 0.12 -1 -1 0.32 0.0275191 0.0244632 146 58 60 30 60 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_081.v common 5.81 vpr 64.86 MiB 0.02 7528 -1 -1 1 0.04 -1 -1 34088 -1 -1 41 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 32 32 469 381 1 198 105 17 17 289 -1 unnamed_device 26.5 MiB 0.22 1080 15172 4050 9950 1172 64.9 MiB 0.16 0.00 3.43916 -121.954 -3.43916 3.43916 1.05 0.000801582 0.000737193 0.0484555 0.0442761 26 2976 32 6.64007e+06 514878 477104. 1650.88 2.19 0.171437 0.153132 21682 110474 -1 2460 20 1941 3222 258002 54988 3.75743 3.75743 -147.071 -3.75743 0 0 585099. 2024.56 0.28 0.11 0.10 -1 -1 0.28 0.0354189 0.0318061 156 106 0 0 128 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_082.v common 4.58 vpr 65.26 MiB 0.03 7528 -1 -1 1 0.04 -1 -1 34056 -1 -1 33 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66824 31 32 425 341 1 189 96 17 17 289 -1 unnamed_device 26.8 MiB 0.12 1070 16959 5715 8963 2281 65.3 MiB 0.17 0.00 3.39516 -115.177 -3.39516 3.39516 1.02 0.000605832 0.00053846 0.0544621 0.0497432 30 2225 23 6.64007e+06 414414 526063. 1820.29 1.09 0.147208 0.131228 22546 126617 -1 1928 20 1426 2382 123993 29195 3.53523 3.53523 -134.018 -3.53523 0 0 666494. 2306.21 0.31 0.07 0.12 -1 -1 0.31 0.0296285 0.0264973 148 79 31 31 93 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_083.v common 4.81 vpr 64.78 MiB 0.02 7220 -1 -1 1 0.04 -1 -1 33980 -1 -1 32 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 30 32 404 328 1 182 94 17 17 289 -1 unnamed_device 26.1 MiB 0.15 1025 9679 2534 6520 625 64.8 MiB 0.10 0.00 3.00058 -93.5826 -3.00058 3.00058 1.04 0.000610611 0.000563599 0.0296093 0.0270079 26 2662 27 6.64007e+06 401856 477104. 1650.88 1.26 0.124714 0.110051 21682 110474 -1 2257 19 1485 2387 160648 36826 3.17537 3.17537 -119.861 -3.17537 0 0 585099. 2024.56 0.30 0.08 0.11 -1 -1 0.30 0.0315034 0.0281283 138 83 26 26 90 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_084.v common 4.68 vpr 65.11 MiB 0.02 7368 -1 -1 1 0.04 -1 -1 34056 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 32 32 407 319 1 198 86 17 17 289 -1 unnamed_device 26.2 MiB 0.24 1030 11237 3477 6934 826 65.1 MiB 0.12 0.00 3.35816 -117.64 -3.35816 3.35816 1.03 0.000588384 0.000536109 0.037166 0.0337609 32 2585 21 6.64007e+06 276276 554710. 1919.41 1.10 0.122767 0.108594 22834 132086 -1 2227 20 1878 3128 210220 46338 3.69963 3.69963 -144.957 -3.69963 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0298061 0.0265395 155 58 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_085.v common 4.59 vpr 65.12 MiB 0.03 7388 -1 -1 1 0.04 -1 -1 34120 -1 -1 36 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 29 32 387 316 1 179 97 17 17 289 -1 unnamed_device 26.4 MiB 0.14 793 17191 5498 8460 3233 65.1 MiB 0.15 0.00 2.7749 -84.0934 -2.7749 2.7749 1.05 0.000714846 0.000651126 0.0514802 0.0467077 32 2102 21 6.64007e+06 452088 554710. 1919.41 1.06 0.136288 0.121019 22834 132086 -1 1692 17 1385 2235 138910 33952 3.13457 3.13457 -103.117 -3.13457 0 0 701300. 2426.64 0.34 0.07 0.12 -1 -1 0.34 0.0286066 0.0257396 136 81 26 26 85 29 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_086.v common 4.37 vpr 64.34 MiB 0.02 6856 -1 -1 1 0.03 -1 -1 33960 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65888 32 32 283 225 1 156 81 17 17 289 -1 unnamed_device 25.8 MiB 0.06 800 5331 1118 3727 486 64.3 MiB 0.06 0.00 2.7709 -98.1017 -2.7709 2.7709 1.04 0.000464251 0.00042309 0.0163768 0.0150035 32 1993 23 6.64007e+06 213486 554710. 1919.41 1.04 0.0841428 0.0737879 22834 132086 -1 1799 20 1255 1951 128446 30412 2.96597 2.96597 -120.618 -2.96597 0 0 701300. 2426.64 0.33 0.06 0.12 -1 -1 0.33 0.0228141 0.0203047 115 -1 96 32 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_087.v common 4.71 vpr 65.17 MiB 0.02 7276 -1 -1 1 0.04 -1 -1 33820 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66736 32 32 407 319 1 194 99 17 17 289 -1 unnamed_device 26.7 MiB 0.25 1085 15603 4456 9696 1451 65.2 MiB 0.14 0.00 3.37316 -120.37 -3.37316 3.37316 1.03 0.000739655 0.000683074 0.0473997 0.0432244 32 2553 21 6.64007e+06 439530 554710. 1919.41 1.09 0.141167 0.12608 22834 132086 -1 2259 21 1696 2569 168304 38887 3.68563 3.68563 -144.965 -3.68563 0 0 701300. 2426.64 0.32 0.08 0.12 -1 -1 0.32 0.0318161 0.0284833 152 62 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_088.v common 4.70 vpr 65.48 MiB 0.02 7140 -1 -1 1 0.04 -1 -1 34092 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67048 32 32 407 319 1 201 87 17 17 289 -1 unnamed_device 26.6 MiB 0.18 1005 16599 6352 9045 1202 65.5 MiB 0.15 0.00 3.37836 -119.558 -3.37836 3.37836 1.01 0.000518094 0.000468768 0.0513215 0.0465686 32 2482 22 6.64007e+06 288834 554710. 1919.41 1.06 0.138173 0.122413 22834 132086 -1 2170 21 2082 3164 233952 52278 3.80083 3.80083 -142.909 -3.80083 0 0 701300. 2426.64 0.34 0.09 0.13 -1 -1 0.34 0.0324938 0.029126 158 62 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_089.v common 4.51 vpr 64.84 MiB 0.02 7004 -1 -1 1 0.03 -1 -1 34064 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 315 267 1 158 94 17 17 289 -1 unnamed_device 26.0 MiB 0.15 717 8188 1647 6063 478 64.8 MiB 0.08 0.00 3.0903 -92.4514 -3.0903 3.0903 1.08 0.000552276 0.000504379 0.0231866 0.0210711 32 1919 22 6.64007e+06 376740 554710. 1919.41 1.02 0.0961875 0.0850715 22834 132086 -1 1464 19 917 1466 87499 21919 3.05597 3.05597 -107.304 -3.05597 0 0 701300. 2426.64 0.34 0.06 0.13 -1 -1 0.34 0.0239685 0.0213376 112 47 32 32 54 27 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_090.v common 4.47 vpr 64.59 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 33700 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 31 32 275 220 1 160 81 17 17 289 -1 unnamed_device 26.1 MiB 0.08 891 13556 4350 7094 2112 64.6 MiB 0.11 0.00 2.8321 -100.327 -2.8321 2.8321 1.05 0.000461078 0.000417666 0.0363539 0.0331268 32 2000 25 6.64007e+06 226044 554710. 1919.41 1.05 0.10368 0.0917046 22834 132086 -1 1828 21 1442 2325 174060 38942 2.97197 2.97197 -119.356 -2.97197 0 0 701300. 2426.64 0.33 0.07 0.13 -1 -1 0.33 0.0225689 0.020029 118 -1 93 31 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_091.v common 6.04 vpr 64.78 MiB 0.03 7272 -1 -1 1 0.04 -1 -1 33936 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 32 32 381 303 1 188 97 17 17 289 -1 unnamed_device 26.1 MiB 0.15 990 10753 2618 7263 872 64.8 MiB 0.11 0.00 3.32336 -113.497 -3.32336 3.32336 1.06 0.00061698 0.000560142 0.0340652 0.0309189 24 2862 33 6.64007e+06 414414 448715. 1552.65 2.57 0.163154 0.143125 21394 104001 -1 2253 18 1509 2183 176319 38145 3.99423 3.99423 -142.635 -3.99423 0 0 554710. 1919.41 0.27 0.07 0.10 -1 -1 0.27 0.0264521 0.0236547 139 56 60 32 58 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_092.v common 5.03 vpr 65.38 MiB 0.03 7348 -1 -1 1 0.04 -1 -1 33652 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66948 32 32 406 330 1 190 96 17 17 289 -1 unnamed_device 26.6 MiB 0.11 1110 16740 4475 10065 2200 65.4 MiB 0.16 0.00 3.57456 -111.886 -3.57456 3.57456 1.07 0.000622477 0.000558508 0.0525084 0.0476734 26 2787 22 6.64007e+06 401856 477104. 1650.88 1.42 0.140801 0.124768 21682 110474 -1 2339 21 1656 2613 183311 41138 4.17323 4.17323 -142.424 -4.17323 0 0 585099. 2024.56 0.29 0.08 0.11 -1 -1 0.29 0.029394 0.026129 136 81 28 28 88 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_093.v common 4.66 vpr 64.88 MiB 0.03 7452 -1 -1 1 0.04 -1 -1 33960 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 32 32 399 285 1 228 101 17 17 289 -1 unnamed_device 26.6 MiB 0.09 1320 13261 3826 8337 1098 64.9 MiB 0.14 0.00 3.93662 -136.325 -3.93662 3.93662 1.01 0.000650784 0.000592262 0.0404227 0.0368513 28 3126 21 6.64007e+06 464646 500653. 1732.36 1.19 0.125968 0.111754 21970 115934 -1 2570 21 2043 3264 202085 46594 4.23489 4.23489 -162.288 -4.23489 0 0 612192. 2118.31 0.29 0.09 0.11 -1 -1 0.29 0.0320244 0.0284797 179 -1 156 32 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_094.v common 5.40 vpr 64.93 MiB 0.02 7444 -1 -1 1 0.04 -1 -1 34168 -1 -1 34 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 30 32 371 295 1 184 96 17 17 289 -1 unnamed_device 26.2 MiB 0.16 902 10608 2630 7342 636 64.9 MiB 0.10 0.00 3.1105 -94.5351 -3.1105 3.1105 1.01 0.000635475 0.000580403 0.0297042 0.0271 26 2905 26 6.64007e+06 426972 477104. 1650.88 1.97 0.118396 0.104552 21682 110474 -1 2106 22 1514 2450 178574 42887 3.79737 3.79737 -128.73 -3.79737 0 0 585099. 2024.56 0.27 0.08 0.11 -1 -1 0.27 0.0298948 0.0265857 138 47 60 30 56 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_095.v common 4.57 vpr 64.36 MiB 0.02 6984 -1 -1 1 0.03 -1 -1 34232 -1 -1 21 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65900 27 32 269 226 1 143 80 17 17 289 -1 unnamed_device 25.8 MiB 0.10 632 12636 5273 6095 1268 64.4 MiB 0.09 0.00 2.7691 -80.2981 -2.7691 2.7691 1.00 0.000414396 0.000377838 0.0327121 0.0297996 26 1813 35 6.64007e+06 263718 477104. 1650.88 1.32 0.105422 0.0929014 21682 110474 -1 1443 23 1331 1939 141315 35428 3.10237 3.10237 -103.56 -3.10237 0 0 585099. 2024.56 0.27 0.07 0.11 -1 -1 0.27 0.0236392 0.0207143 107 26 54 27 27 27 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_096.v common 5.24 vpr 65.31 MiB 0.03 7324 -1 -1 1 0.04 -1 -1 34168 -1 -1 42 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 32 32 493 378 1 232 106 17 17 289 -1 unnamed_device 27.0 MiB 0.17 1353 13106 3199 8878 1029 65.3 MiB 0.15 0.00 3.68056 -121.246 -3.68056 3.68056 1.05 0.00092643 0.000856055 0.0464458 0.0425381 28 3784 24 6.64007e+06 527436 500653. 1732.36 1.61 0.169342 0.151503 21970 115934 -1 3069 22 2105 3862 298572 66660 3.86663 3.86663 -146.337 -3.86663 0 0 612192. 2118.31 0.29 0.13 0.11 -1 -1 0.29 0.0428246 0.038348 186 85 62 31 95 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_097.v common 4.94 vpr 65.26 MiB 0.03 7592 -1 -1 1 0.04 -1 -1 34364 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66824 31 32 455 371 1 188 85 17 17 289 -1 unnamed_device 26.7 MiB 0.26 908 9199 2239 5992 968 65.3 MiB 0.10 0.00 3.64105 -113.603 -3.64105 3.64105 1.08 0.000632687 0.000569348 0.0371697 0.033903 32 2359 22 6.64007e+06 276276 554710. 1919.41 1.15 0.133586 0.118292 22834 132086 -1 1902 20 1567 2601 163715 41189 3.79263 3.79263 -139.61 -3.79263 0 0 701300. 2426.64 0.35 0.08 0.13 -1 -1 0.35 0.0334266 0.0300115 145 105 0 0 124 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_098.v common 4.60 vpr 64.87 MiB 0.02 7028 -1 -1 1 0.04 -1 -1 33748 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 32 32 355 304 1 150 80 17 17 289 -1 unnamed_device 26.1 MiB 0.21 866 14184 4481 7866 1837 64.9 MiB 0.12 0.00 2.9543 -94.0722 -2.9543 2.9543 1.08 0.000499258 0.000454672 0.0467907 0.0426997 30 1950 23 6.64007e+06 200928 526063. 1820.29 1.00 0.126825 0.112474 22546 126617 -1 1742 19 813 1315 83517 18803 2.64057 2.64057 -109.245 -2.64057 0 0 666494. 2306.21 0.33 0.05 0.12 -1 -1 0.33 0.0256724 0.02284 108 86 0 0 89 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_099.v common 4.55 vpr 65.11 MiB 0.02 7036 -1 -1 1 0.04 -1 -1 33900 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 32 32 364 282 1 196 97 17 17 289 -1 unnamed_device 26.4 MiB 0.07 1096 13195 3422 8717 1056 65.1 MiB 0.13 0.00 3.65525 -116.79 -3.65525 3.65525 1.06 0.000529729 0.000481055 0.0376717 0.0342793 32 2291 19 6.64007e+06 414414 554710. 1919.41 1.06 0.115289 0.102094 22834 132086 -1 2030 20 1298 2064 135207 33870 3.82202 3.82202 -136.408 -3.82202 0 0 701300. 2426.64 0.32 0.07 0.13 -1 -1 0.32 0.0271418 0.0240185 147 31 90 30 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_100.v common 4.62 vpr 65.29 MiB 0.02 7312 -1 -1 1 0.04 -1 -1 34476 -1 -1 38 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66856 31 32 443 336 1 220 101 17 17 289 -1 unnamed_device 26.8 MiB 0.13 1002 21016 6174 11161 3681 65.3 MiB 0.19 0.00 3.65376 -113.344 -3.65376 3.65376 1.02 0.000637215 0.000576793 0.063494 0.0576478 32 2649 24 6.64007e+06 477204 554710. 1919.41 1.08 0.157468 0.139868 22834 132086 -1 2253 21 1866 2830 186038 44397 3.83363 3.83363 -138.601 -3.83363 0 0 701300. 2426.64 0.33 0.09 0.12 -1 -1 0.33 0.0328424 0.0292205 173 50 87 31 62 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_101.v common 4.79 vpr 65.21 MiB 0.03 7464 -1 -1 1 0.04 -1 -1 34128 -1 -1 34 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 30 32 373 297 1 186 96 17 17 289 -1 unnamed_device 26.5 MiB 0.12 1038 16740 4573 9849 2318 65.2 MiB 0.17 0.00 2.9811 -92.2189 -2.9811 2.9811 1.10 0.000606775 0.000555131 0.0515339 0.0466187 32 2434 21 6.64007e+06 426972 554710. 1919.41 1.12 0.13602 0.120407 22834 132086 -1 2174 17 1372 2308 151529 34727 3.11136 3.11136 -111.237 -3.11136 0 0 701300. 2426.64 0.33 0.07 0.14 -1 -1 0.33 0.0257422 0.0231685 135 50 58 30 58 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_102.v common 4.56 vpr 64.81 MiB 0.02 7404 -1 -1 1 0.04 -1 -1 33968 -1 -1 43 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 407 319 1 201 107 17 17 289 -1 unnamed_device 26.5 MiB 0.13 1334 22624 7539 12337 2748 64.8 MiB 0.18 0.00 3.65756 -127.051 -3.65756 3.65756 0.98 0.000534199 0.000484619 0.0606272 0.0552264 32 2768 22 6.64007e+06 539994 554710. 1919.41 1.07 0.146637 0.130376 22834 132086 -1 2580 23 2068 3423 274489 59211 3.97583 3.97583 -151.334 -3.97583 0 0 701300. 2426.64 0.31 0.10 0.13 -1 -1 0.31 0.0324437 0.0286314 158 61 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_103.v common 7.03 vpr 65.25 MiB 0.02 7268 -1 -1 1 0.04 -1 -1 34076 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 32 32 405 318 1 200 104 17 17 289 -1 unnamed_device 26.7 MiB 0.14 981 17428 4994 9490 2944 65.2 MiB 0.16 0.00 2.7929 -97.8812 -2.7929 2.7929 1.04 0.000611342 0.000552916 0.0461985 0.0419342 32 2536 26 6.64007e+06 502320 554710. 1919.41 3.46 0.23196 0.203174 22834 132086 -1 1964 21 1645 2533 159162 37769 3.11157 3.11157 -118.728 -3.11157 0 0 701300. 2426.64 0.32 0.07 0.13 -1 -1 0.32 0.0292946 0.0259065 157 61 63 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_104.v common 4.45 vpr 64.38 MiB 0.02 7176 -1 -1 1 0.03 -1 -1 33616 -1 -1 18 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65924 29 32 287 238 1 134 79 17 17 289 -1 unnamed_device 25.9 MiB 0.08 542 13430 5790 6758 882 64.4 MiB 0.09 0.00 2.9573 -85.5328 -2.9573 2.9573 1.03 0.000433448 0.000389623 0.0359055 0.0326614 32 1545 29 6.64007e+06 226044 554710. 1919.41 1.10 0.117117 0.103822 22834 132086 -1 1219 24 1103 1547 116733 33137 2.78577 2.78577 -101.885 -2.78577 0 0 701300. 2426.64 0.33 0.07 0.12 -1 -1 0.33 0.0261514 0.0231198 95 28 58 29 29 29 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_105.v common 4.38 vpr 64.60 MiB 0.02 7212 -1 -1 1 0.04 -1 -1 34084 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 32 32 334 290 1 156 83 17 17 289 -1 unnamed_device 25.8 MiB 0.17 904 6743 1537 4830 376 64.6 MiB 0.07 0.00 3.39936 -96.1227 -3.39936 3.39936 1.06 0.000515281 0.00047001 0.0217703 0.0198825 26 2030 22 6.64007e+06 238602 477104. 1650.88 0.94 0.098666 0.0872028 21682 110474 -1 1767 22 1116 1572 124326 28328 2.83617 2.83617 -110.571 -2.83617 0 0 585099. 2024.56 0.29 0.07 0.11 -1 -1 0.29 0.0288542 0.0258122 112 79 0 0 82 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_106.v common 5.38 vpr 65.05 MiB 0.02 7340 -1 -1 1 0.04 -1 -1 33964 -1 -1 38 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 31 32 365 281 1 196 101 17 17 289 -1 unnamed_device 26.4 MiB 0.14 986 13261 3497 8846 918 65.1 MiB 0.13 0.00 3.98015 -118.414 -3.98015 3.98015 1.08 0.00062556 0.000571621 0.0388547 0.0353135 26 2899 22 6.64007e+06 477204 477104. 1650.88 1.74 0.126624 0.112132 21682 110474 -1 2420 22 1823 2926 224715 49412 3.90583 3.90583 -147.998 -3.90583 0 0 585099. 2024.56 0.30 0.10 0.11 -1 -1 0.30 0.0326773 0.0290377 151 29 93 31 31 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_107.v common 4.47 vpr 64.66 MiB 0.02 7276 -1 -1 1 0.04 -1 -1 34020 -1 -1 31 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66212 29 32 297 254 1 150 92 17 17 289 -1 unnamed_device 25.9 MiB 0.19 768 16652 4973 9354 2325 64.7 MiB 0.13 0.00 2.9591 -84.7747 -2.9591 2.9591 1.04 0.000490904 0.000438445 0.0395508 0.0359332 28 1696 21 6.64007e+06 389298 500653. 1732.36 0.98 0.10565 0.0935065 21970 115934 -1 1542 20 993 1593 99143 23239 2.77157 2.77157 -99.6573 -2.77157 0 0 612192. 2118.31 0.28 0.06 0.12 -1 -1 0.28 0.0235663 0.0208554 108 48 29 29 52 26 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_108.v common 4.40 vpr 64.74 MiB 0.02 7176 -1 -1 1 0.03 -1 -1 34016 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66292 32 32 314 256 1 160 81 17 17 289 -1 unnamed_device 25.9 MiB 0.13 896 13906 4719 7628 1559 64.7 MiB 0.11 0.00 2.7929 -101.448 -2.7929 2.7929 1.02 0.000453582 0.000411323 0.0389162 0.0352723 32 2142 21 6.64007e+06 213486 554710. 1919.41 1.00 0.106051 0.0937622 22834 132086 -1 1908 22 1452 2398 189519 40731 2.91297 2.91297 -122.494 -2.91297 0 0 701300. 2426.64 0.32 0.07 0.12 -1 -1 0.32 0.02419 0.0214849 118 31 64 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_109.v common 4.89 vpr 65.18 MiB 0.03 7300 -1 -1 1 0.04 -1 -1 34100 -1 -1 38 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 31 32 387 307 1 189 101 17 17 289 -1 unnamed_device 26.5 MiB 0.15 934 10206 2303 7222 681 65.2 MiB 0.11 0.00 2.8453 -96.2463 -2.8453 2.8453 1.10 0.000607493 0.000544226 0.0319413 0.0287815 26 2263 24 6.64007e+06 477204 477104. 1650.88 1.24 0.125735 0.111035 21682 110474 -1 1958 19 1661 2354 151886 35885 3.02437 3.02437 -120.033 -3.02437 0 0 585099. 2024.56 0.29 0.08 0.11 -1 -1 0.29 0.0291196 0.0259872 144 60 58 31 62 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_110.v common 4.35 vpr 64.82 MiB 0.02 7196 -1 -1 1 0.03 -1 -1 33988 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 31 32 308 262 1 147 80 17 17 289 -1 unnamed_device 26.0 MiB 0.14 898 13324 4150 7278 1896 64.8 MiB 0.10 0.00 2.70619 -87.5425 -2.70619 2.70619 1.01 0.000480485 0.00043737 0.0360103 0.0328925 32 1937 20 6.64007e+06 213486 554710. 1919.41 0.96 0.0994087 0.0879647 22834 132086 -1 1730 20 904 1583 110992 24425 2.94917 2.94917 -107.264 -2.94917 0 0 701300. 2426.64 0.32 0.06 0.12 -1 -1 0.32 0.0219971 0.0196196 106 49 31 31 53 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_111.v common 4.69 vpr 65.11 MiB 0.02 7364 -1 -1 1 0.04 -1 -1 34156 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 383 307 1 184 97 17 17 289 -1 unnamed_device 26.4 MiB 0.14 924 13195 3203 9313 679 65.1 MiB 0.12 0.00 2.7379 -93.8791 -2.7379 2.7379 1.07 0.000573311 0.000523667 0.0391182 0.0354932 30 2265 23 6.64007e+06 414414 526063. 1820.29 1.13 0.127491 0.113156 22546 126617 -1 1934 21 1126 1900 118915 26254 2.67557 2.67557 -108.231 -2.67557 0 0 666494. 2306.21 0.32 0.07 0.12 -1 -1 0.32 0.0294869 0.0263167 137 56 52 26 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_112.v common 4.85 vpr 65.31 MiB 0.02 7356 -1 -1 1 0.04 -1 -1 34160 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 31 32 422 339 1 195 100 17 17 289 -1 unnamed_device 26.8 MiB 0.24 1001 14716 3816 9619 1281 65.3 MiB 0.15 0.00 3.1215 -100.469 -3.1215 3.1215 1.08 0.000666639 0.000606698 0.0495009 0.044954 26 2387 25 6.64007e+06 464646 477104. 1650.88 1.22 0.155597 0.138628 21682 110474 -1 2061 19 1600 2391 161278 36759 3.08717 3.08717 -120.708 -3.08717 0 0 585099. 2024.56 0.28 0.08 0.10 -1 -1 0.28 0.031018 0.0276985 149 88 31 31 92 31 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_113.v common 4.62 vpr 64.86 MiB 0.02 6992 -1 -1 1 0.04 -1 -1 34044 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 333 279 1 160 82 17 17 289 -1 unnamed_device 26.1 MiB 0.13 893 13966 3753 8425 1788 64.9 MiB 0.12 0.00 2.55679 -94.205 -2.55679 2.55679 1.09 0.000504628 0.000459302 0.0431113 0.0393449 32 2172 21 6.64007e+06 226044 554710. 1919.41 1.05 0.124171 0.110518 22834 132086 -1 1865 19 1137 1794 125703 29338 2.84697 2.84697 -114.275 -2.84697 0 0 701300. 2426.64 0.34 0.06 0.13 -1 -1 0.34 0.0249174 0.0223246 115 54 32 32 60 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_114.v common 4.86 vpr 65.00 MiB 0.02 6992 -1 -1 1 0.04 -1 -1 33568 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 32 32 339 283 1 164 82 17 17 289 -1 unnamed_device 26.2 MiB 0.19 827 8092 1997 5793 302 65.0 MiB 0.09 0.00 2.7819 -96.5035 -2.7819 2.7819 1.15 0.000564238 0.000511052 0.0301073 0.0273395 32 2061 20 6.64007e+06 226044 554710. 1919.41 1.09 0.112102 0.0991629 22834 132086 -1 1815 22 1243 2144 155232 35295 2.88797 2.88797 -116.865 -2.88797 0 0 701300. 2426.64 0.34 0.07 0.13 -1 -1 0.34 0.0272706 0.0241064 121 60 32 32 62 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_115.v common 4.82 vpr 64.99 MiB 0.03 7168 -1 -1 1 0.04 -1 -1 34400 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 32 32 407 319 1 198 102 17 17 289 -1 unnamed_device 26.5 MiB 0.14 954 9622 2117 6470 1035 65.0 MiB 0.10 0.00 3.42636 -116.672 -3.42636 3.42636 1.09 0.000642301 0.000585259 0.0287003 0.026132 32 2350 22 6.64007e+06 477204 554710. 1919.41 1.13 0.119721 0.105902 22834 132086 -1 2016 22 1998 2967 203285 46239 3.72443 3.72443 -142.682 -3.72443 0 0 701300. 2426.64 0.33 0.10 0.13 -1 -1 0.33 0.0355093 0.0318447 156 49 64 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_116.v common 4.48 vpr 65.25 MiB 0.03 7440 -1 -1 1 0.04 -1 -1 34228 -1 -1 34 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 29 32 367 293 1 183 95 17 17 289 -1 unnamed_device 26.5 MiB 0.14 864 10031 2293 7091 647 65.3 MiB 0.09 0.00 3.0713 -89.186 -3.0713 3.0713 1.06 0.000569182 0.00052154 0.0294676 0.0268797 28 2308 24 6.64007e+06 426972 500653. 1732.36 1.01 0.109793 0.0969508 21970 115934 -1 1900 16 1172 1858 118235 28442 3.03817 3.03817 -107.953 -3.03817 0 0 612192. 2118.31 0.30 0.06 0.11 -1 -1 0.30 0.0242442 0.0218525 135 54 56 29 58 29 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_117.v common 11.62 vpr 65.21 MiB 0.03 7528 -1 -1 1 0.04 -1 -1 34256 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 32 32 469 381 1 200 103 17 17 289 -1 unnamed_device 26.8 MiB 0.26 936 9020 1782 6656 582 65.2 MiB 0.10 0.00 3.42636 -117.212 -3.42636 3.42636 1.09 0.000726032 0.000658482 0.0286313 0.0259873 26 3407 46 6.64007e+06 489762 477104. 1650.88 7.91 0.245921 0.213121 21682 110474 -1 2534 23 2221 3508 277950 74413 3.95383 3.95383 -154.554 -3.95383 0 0 585099. 2024.56 0.28 0.11 0.11 -1 -1 0.28 0.0345781 0.0306398 158 117 0 0 128 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_118.v common 4.56 vpr 64.28 MiB 0.02 7000 -1 -1 1 0.03 -1 -1 33864 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65820 31 32 259 212 1 146 80 17 17 289 -1 unnamed_device 25.8 MiB 0.08 855 12464 3598 7451 1415 64.3 MiB 0.10 0.00 2.50628 -87.9013 -2.50628 2.50628 1.07 0.00041317 0.000376124 0.0349722 0.031798 32 1929 20 6.64007e+06 213486 554710. 1919.41 1.06 0.100045 0.0888298 22834 132086 -1 1719 20 998 1564 113495 25749 2.76997 2.76997 -109.505 -2.76997 0 0 701300. 2426.64 0.35 0.06 0.13 -1 -1 0.35 0.0226858 0.0201462 106 -1 85 31 0 0 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_119.v common 5.89 vpr 65.39 MiB 0.03 7276 -1 -1 1 0.04 -1 -1 33892 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66956 32 32 418 338 1 190 99 17 17 289 -1 unnamed_device 26.9 MiB 0.14 973 19023 5625 10538 2860 65.4 MiB 0.19 0.00 3.43436 -113.195 -3.43436 3.43436 1.16 0.000615008 0.000555523 0.0629468 0.0574209 26 2715 24 6.64007e+06 439530 477104. 1650.88 1.98 0.164653 0.146628 21682 110474 -1 2069 30 1765 2719 237842 62374 4.08143 4.08143 -142.709 -4.08143 0 0 585099. 2024.56 0.32 0.13 0.11 -1 -1 0.32 0.0460878 0.0408729 144 89 28 28 92 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_120.v common 4.85 vpr 64.88 MiB 0.02 7308 -1 -1 1 0.04 -1 -1 33816 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 32 32 376 318 1 155 81 17 17 289 -1 unnamed_device 26.1 MiB 0.26 782 12506 4296 6611 1599 64.9 MiB 0.12 0.00 2.8021 -100.516 -2.8021 2.8021 1.11 0.00066583 0.000610565 0.0456874 0.0418482 32 1899 20 6.64007e+06 213486 554710. 1919.41 1.10 0.132382 0.118017 22834 132086 -1 1636 21 1358 1949 134356 31228 2.97497 2.97497 -121.101 -2.97497 0 0 701300. 2426.64 0.36 0.08 0.13 -1 -1 0.36 0.0324995 0.0291256 114 93 0 0 96 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_121.v common 5.69 vpr 65.28 MiB 0.02 7436 -1 -1 1 0.04 -1 -1 33900 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 32 32 401 316 1 196 101 17 17 289 -1 unnamed_device 26.4 MiB 0.15 869 9266 2001 6475 790 65.3 MiB 0.10 0.00 2.8409 -95.9032 -2.8409 2.8409 1.07 0.00084025 0.000775324 0.0313061 0.02884 26 2898 39 6.64007e+06 464646 477104. 1650.88 2.17 0.156154 0.138911 21682 110474 -1 2192 19 1445 2158 138729 34697 2.95717 2.95717 -120.914 -2.95717 0 0 585099. 2024.56 0.29 0.07 0.10 -1 -1 0.29 0.0311901 0.0278561 151 59 61 32 64 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_122.v common 6.83 vpr 65.27 MiB 0.03 7420 -1 -1 1 0.04 -1 -1 34220 -1 -1 45 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66840 32 32 500 382 1 232 109 17 17 289 -1 unnamed_device 27.0 MiB 0.21 1199 16749 4175 10682 1892 65.3 MiB 0.18 0.00 4.01362 -138.146 -4.01362 4.01362 1.03 0.000851073 0.000787405 0.0572616 0.0526119 26 3530 25 6.64007e+06 565110 477104. 1650.88 3.18 0.170153 0.152255 21682 110474 -1 2795 23 2465 3782 310669 65663 4.85488 4.85488 -171.095 -4.85488 0 0 585099. 2024.56 0.29 0.12 0.10 -1 -1 0.29 0.0404595 0.0361626 188 81 64 32 96 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_123.v common 4.48 vpr 64.22 MiB 0.02 7004 -1 -1 1 0.04 -1 -1 33728 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65764 30 32 246 229 1 118 77 17 17 289 -1 unnamed_device 25.7 MiB 0.08 524 5619 1308 4029 282 64.2 MiB 0.05 0.00 2.34384 -69.1356 -2.34384 2.34384 1.14 0.000392642 0.000349996 0.0165974 0.0151266 26 1416 27 6.64007e+06 188370 477104. 1650.88 0.96 0.0811396 0.0710164 21682 110474 -1 1228 21 681 918 68857 16715 1.95231 1.95231 -77.8954 -1.95231 0 0 585099. 2024.56 0.30 0.05 0.11 -1 -1 0.30 0.0225595 0.0200147 83 51 0 0 53 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_124.v common 4.52 vpr 64.47 MiB 0.02 7136 -1 -1 1 0.03 -1 -1 33856 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66020 30 32 296 244 1 137 79 17 17 289 -1 unnamed_device 26.0 MiB 0.08 656 11233 4671 5674 888 64.5 MiB 0.09 0.00 2.9603 -88.4474 -2.9603 2.9603 1.08 0.000465802 0.000421074 0.0348875 0.0317529 32 1562 21 6.64007e+06 213486 554710. 1919.41 1.04 0.105851 0.0934089 22834 132086 -1 1365 17 945 1390 106809 25187 2.91397 2.91397 -109.698 -2.91397 0 0 701300. 2426.64 0.34 0.05 0.13 -1 -1 0.34 0.0217048 0.019411 97 29 60 30 30 30 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_125.v common 4.55 vpr 64.83 MiB 0.02 7144 -1 -1 1 0.04 -1 -1 33552 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 314 256 1 167 82 17 17 289 -1 unnamed_device 26.0 MiB 0.11 747 8982 2439 5376 1167 64.8 MiB 0.09 0.00 2.7647 -94.9151 -2.7647 2.7647 1.05 0.000472627 0.000431738 0.0267705 0.0244251 32 2339 28 6.64007e+06 226044 554710. 1919.41 1.07 0.104142 0.091692 22834 132086 -1 1823 20 1398 2456 145657 35439 3.18117 3.18117 -125.114 -3.18117 0 0 701300. 2426.64 0.34 0.07 0.12 -1 -1 0.34 0.0241843 0.0214695 126 31 64 32 32 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_126.v common 4.36 vpr 64.38 MiB 0.02 7236 -1 -1 1 0.03 -1 -1 34096 -1 -1 34 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 25 32 251 214 1 138 91 17 17 289 -1 unnamed_device 25.9 MiB 0.05 734 14371 4254 7957 2160 64.4 MiB 0.10 0.00 2.6877 -74.4937 -2.6877 2.6877 1.06 0.000374498 0.000341329 0.0308927 0.0281423 26 1692 21 6.64007e+06 426972 477104. 1650.88 1.01 0.0970937 0.0861228 21682 110474 -1 1564 18 963 1523 110832 25030 2.77097 2.77097 -92.5841 -2.77097 0 0 585099. 2024.56 0.29 0.05 0.11 -1 -1 0.29 0.0199566 0.0178296 103 19 50 25 25 25 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_127.v common 5.08 vpr 65.08 MiB 0.03 7468 -1 -1 1 0.04 -1 -1 34160 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 432 346 1 193 86 17 17 289 -1 unnamed_device 26.5 MiB 0.16 881 15017 5363 6769 2885 65.1 MiB 0.16 0.00 3.50535 -109.154 -3.50535 3.50535 1.08 0.000606575 0.000555976 0.0570422 0.0518165 32 2612 25 6.64007e+06 276276 554710. 1919.41 1.30 0.162208 0.14352 22834 132086 -1 1963 21 1635 2875 177653 42192 3.77663 3.77663 -135.037 -3.77663 0 0 701300. 2426.64 0.37 0.09 0.14 -1 -1 0.37 0.0350189 0.0311496 149 84 32 32 94 32 -fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_128.v common 4.80 vpr 65.32 MiB 0.03 7372 -1 -1 1 0.04 -1 -1 33940 -1 -1 39 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66888 31 32 421 339 1 193 102 17 17 289 -1 unnamed_device 26.8 MiB 0.16 892 10812 2340 6945 1527 65.3 MiB 0.10 0.00 2.8831 -95.4857 -2.8831 2.8831 1.07 0.000966546 0.000836288 0.035136 0.0320278 30 2440 24 6.64007e+06 489762 526063. 1820.29 1.20 0.140057 0.124455 22546 126617 -1 1787 18 1533 2505 135111 34675 3.15017 3.15017 -119.679 -3.15017 0 0 666494. 2306.21 0.33 0.08 0.12 -1 -1 0.33 0.0322332 0.0287965 148 88 29 29 93 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_001.v common 7.84 vpr 64.89 MiB 0.03 7468 -1 -1 1 0.04 -1 -1 34088 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 438 350 1 194 98 17 17 289 -1 unnamed_device 26.6 MiB 0.24 937 9323 2024 6093 1206 64.9 MiB 0.09 0.00 3.15264 -107.851 -3.15264 3.15264 1.09 0.000723616 0.00066499 0.0323354 0.0295767 34 2824 43 6.65987e+06 431052 585099. 2024.56 4.02 0.253182 0.2218 23122 138558 -1 2186 24 1752 2802 207598 50750 3.60511 3.60511 -138.542 -3.60511 0 0 742403. 2568.87 0.35 0.10 0.14 -1 -1 0.35 0.0364558 0.0322453 151 80 32 32 96 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_002.v common 5.11 vpr 65.10 MiB 0.03 7352 -1 -1 1 0.04 -1 -1 33880 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 30 32 409 330 1 186 83 17 17 289 -1 unnamed_device 26.4 MiB 0.41 818 6563 1468 4244 851 65.1 MiB 0.08 0.00 3.4765 -99.5249 -3.4765 3.4765 1.09 0.00061712 0.000563247 0.0261309 0.0238136 32 2469 23 6.65987e+06 266238 554710. 1919.41 1.16 0.118045 0.104587 22834 132086 -1 1988 23 1865 3089 246175 56515 3.78971 3.78971 -131.062 -3.78971 0 0 701300. 2426.64 0.35 0.10 0.13 -1 -1 0.35 0.0348882 0.0311838 140 78 30 30 89 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_003.v common 4.71 vpr 65.12 MiB 0.02 7392 -1 -1 1 0.04 -1 -1 34208 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 32 32 387 309 1 186 98 17 17 289 -1 unnamed_device 26.3 MiB 0.14 1047 14723 3618 8932 2173 65.1 MiB 0.13 0.00 2.72347 -96.5797 -2.72347 2.72347 1.05 0.000577154 0.000523959 0.040915 0.0373315 32 2572 29 6.65987e+06 431052 554710. 1919.41 1.12 0.130782 0.115732 22834 132086 -1 2149 22 1550 2472 208414 45562 3.24285 3.24285 -120.689 -3.24285 0 0 701300. 2426.64 0.32 0.09 0.14 -1 -1 0.32 0.0320658 0.028569 141 50 54 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_004.v common 4.67 vpr 64.93 MiB 0.03 7104 -1 -1 1 0.04 -1 -1 34116 -1 -1 22 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 29 32 343 267 1 184 83 17 17 289 -1 unnamed_device 26.3 MiB 0.11 858 16283 5083 8672 2528 64.9 MiB 0.16 0.00 3.4563 -100.035 -3.4563 3.4563 1.05 0.00053185 0.000485349 0.0538113 0.0491548 30 2333 23 6.65987e+06 278916 526063. 1820.29 1.17 0.137141 0.122238 22546 126617 -1 1745 21 1424 2513 140986 34067 3.41411 3.41411 -116.47 -3.41411 0 0 666494. 2306.21 0.31 0.07 0.12 -1 -1 0.31 0.0272218 0.0242866 138 25 87 29 29 29 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_005.v common 5.05 vpr 64.95 MiB 0.02 7300 -1 -1 1 0.04 -1 -1 33832 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 32 32 376 288 1 195 84 17 17 289 -1 unnamed_device 26.5 MiB 0.22 922 9966 2392 7082 492 65.0 MiB 0.10 0.00 3.30796 -113.007 -3.30796 3.30796 1.05 0.000593306 0.000543197 0.0356965 0.032581 32 3142 31 6.65987e+06 253560 554710. 1919.41 1.41 0.146155 0.130493 22834 132086 -1 2358 22 2022 3711 262292 63172 3.81163 3.81163 -146.222 -3.81163 0 0 701300. 2426.64 0.33 0.10 0.13 -1 -1 0.33 0.0345164 0.0309992 151 31 96 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_006.v common 7.49 vpr 64.94 MiB 0.03 7272 -1 -1 1 0.04 -1 -1 34112 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 402 316 1 199 101 17 17 289 -1 unnamed_device 26.7 MiB 0.25 1143 17961 5183 10397 2381 64.9 MiB 0.17 0.00 2.90104 -101.953 -2.90104 2.90104 1.09 0.000568007 0.000515272 0.049773 0.0453408 34 2333 17 6.65987e+06 469086 585099. 2024.56 3.63 0.2231 0.196258 23122 138558 -1 2069 19 1363 2195 147175 33720 2.73971 2.73971 -112.47 -2.73971 0 0 742403. 2568.87 0.35 0.08 0.14 -1 -1 0.35 0.0309643 0.02756 154 61 63 32 63 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_007.v common 4.66 vpr 64.27 MiB 0.02 7212 -1 -1 1 0.04 -1 -1 34348 -1 -1 19 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65808 27 32 269 226 1 135 78 17 17 289 -1 unnamed_device 25.8 MiB 0.20 588 12694 3519 7760 1415 64.3 MiB 0.09 0.00 3.0353 -80.2894 -3.0353 3.0353 1.09 0.000452739 0.000414538 0.0351363 0.0320471 32 1538 19 6.65987e+06 240882 554710. 1919.41 1.03 0.0937175 0.0829655 22834 132086 -1 1354 21 1116 1898 125615 32614 2.83291 2.83291 -96.0865 -2.83291 0 0 701300. 2426.64 0.34 0.06 0.13 -1 -1 0.34 0.0219158 0.019396 96 26 54 27 27 27 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_008.v common 4.78 vpr 64.80 MiB 0.02 7220 -1 -1 1 0.04 -1 -1 33452 -1 -1 33 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 31 32 317 242 1 185 96 17 17 289 -1 unnamed_device 26.2 MiB 0.15 988 17397 5060 9798 2539 64.8 MiB 0.16 0.00 2.73284 -89.6492 -2.73284 2.73284 1.09 0.000603038 0.000533232 0.0500891 0.0455561 28 2329 22 6.65987e+06 418374 500653. 1732.36 1.14 0.13063 0.116558 21970 115934 -1 2099 21 1337 2328 168698 37650 2.85265 2.85265 -110.24 -2.85265 0 0 612192. 2118.31 0.31 0.07 0.10 -1 -1 0.31 0.025472 0.0226106 139 -1 115 31 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_009.v common 4.71 vpr 64.62 MiB 0.03 7340 -1 -1 1 0.04 -1 -1 33492 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 31 32 338 292 1 148 79 17 17 289 -1 unnamed_device 25.8 MiB 0.30 860 10219 2849 6140 1230 64.6 MiB 0.09 0.00 2.45267 -82.6069 -2.45267 2.45267 1.08 0.000529243 0.000482225 0.0332428 0.0303291 32 1903 17 6.65987e+06 202848 554710. 1919.41 1.03 0.102294 0.0904466 22834 132086 -1 1643 17 826 1330 95037 21484 2.38705 2.38705 -98.146 -2.38705 0 0 701300. 2426.64 0.34 0.05 0.13 -1 -1 0.34 0.0234899 0.0211451 105 81 0 0 84 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_010.v common 4.70 vpr 64.68 MiB 0.02 7024 -1 -1 1 0.04 -1 -1 33944 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 32 32 314 256 1 162 80 17 17 289 -1 unnamed_device 25.9 MiB 0.28 828 11260 3298 5950 2012 64.7 MiB 0.10 0.00 2.7537 -99.3682 -2.7537 2.7537 1.07 0.000469843 0.000428464 0.0358275 0.0327494 32 2069 15 6.65987e+06 202848 554710. 1919.41 1.04 0.101067 0.0896606 22834 132086 -1 1795 20 1434 2214 169845 37793 2.83157 2.83157 -119.654 -2.83157 0 0 701300. 2426.64 0.33 0.07 0.13 -1 -1 0.33 0.0234043 0.0207795 121 31 64 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_011.v common 4.77 vpr 64.71 MiB 0.02 7048 -1 -1 1 0.04 -1 -1 33576 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 30 32 325 273 1 151 79 17 17 289 -1 unnamed_device 25.9 MiB 0.27 815 13092 4597 6659 1836 64.7 MiB 0.12 0.00 2.8281 -95.0467 -2.8281 2.8281 1.10 0.000468671 0.000422248 0.0425967 0.0388193 32 1809 22 6.65987e+06 215526 554710. 1919.41 1.05 0.112279 0.0993686 22834 132086 -1 1565 19 1107 1600 100848 24317 2.92597 2.92597 -112.914 -2.92597 0 0 701300. 2426.64 0.33 0.06 0.13 -1 -1 0.33 0.0225272 0.0200852 110 58 30 30 60 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_012.v common 4.87 vpr 64.63 MiB 0.02 7220 -1 -1 1 0.04 -1 -1 33764 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66184 32 32 331 280 1 156 93 17 17 289 -1 unnamed_device 26.0 MiB 0.26 864 10383 2536 6754 1093 64.6 MiB 0.10 0.00 2.44518 -86.2004 -2.44518 2.44518 1.11 0.000606297 0.000553855 0.0301292 0.0274808 32 2198 35 6.65987e+06 367662 554710. 1919.41 1.13 0.113798 0.100203 22834 132086 -1 1815 23 1374 2266 179957 39965 2.55139 2.55139 -104.668 -2.55139 0 0 701300. 2426.64 0.35 0.08 0.13 -1 -1 0.35 0.0289106 0.0257632 114 57 25 25 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_013.v common 5.00 vpr 64.94 MiB 0.03 7436 -1 -1 1 0.04 -1 -1 34000 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 386 305 1 188 96 17 17 289 -1 unnamed_device 26.2 MiB 0.45 1030 12798 3361 8649 788 64.9 MiB 0.13 0.00 2.7537 -99.7786 -2.7537 2.7537 1.05 0.000647148 0.000594786 0.0395682 0.0359972 28 2494 22 6.65987e+06 405696 500653. 1732.36 1.15 0.126973 0.112325 21970 115934 -1 2117 22 1686 2843 199586 45428 2.88397 2.88397 -119.021 -2.88397 0 0 612192. 2118.31 0.30 0.09 0.12 -1 -1 0.30 0.0307061 0.0272702 143 55 64 32 57 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_014.v common 4.82 vpr 65.08 MiB 0.02 7288 -1 -1 1 0.04 -1 -1 34184 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66644 32 32 407 319 1 200 98 17 17 289 -1 unnamed_device 26.4 MiB 0.31 1115 10223 2268 7014 941 65.1 MiB 0.10 0.00 3.1647 -112.747 -3.1647 3.1647 1.04 0.000682113 0.000626003 0.0331122 0.030263 32 2615 24 6.65987e+06 431052 554710. 1919.41 1.14 0.136325 0.121123 22834 132086 -1 2313 21 2031 3208 236406 54141 3.64037 3.64037 -139.621 -3.64037 0 0 701300. 2426.64 0.33 0.10 0.13 -1 -1 0.33 0.0344286 0.0308709 156 60 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_015.v common 4.57 vpr 64.21 MiB 0.02 7204 -1 -1 1 0.04 -1 -1 34136 -1 -1 18 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65748 29 32 272 228 1 145 79 17 17 289 -1 unnamed_device 25.6 MiB 0.17 657 9374 2454 6049 871 64.2 MiB 0.08 0.00 2.43238 -73.0963 -2.43238 2.43238 1.09 0.000528386 0.000481699 0.0277725 0.0253566 28 1846 23 6.65987e+06 228204 500653. 1732.36 1.02 0.0960408 0.0850437 21970 115934 -1 1489 23 1152 1946 124892 32150 2.52039 2.52039 -92.6281 -2.52039 0 0 612192. 2118.31 0.32 0.05 0.12 -1 -1 0.32 0.018229 0.0162135 107 21 58 29 24 24 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_016.v common 5.01 vpr 65.10 MiB 0.02 7396 -1 -1 1 0.04 -1 -1 34124 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 32 32 401 315 1 192 84 17 17 289 -1 unnamed_device 26.5 MiB 0.30 1095 13443 3633 7958 1852 65.1 MiB 0.14 0.00 2.9131 -107.137 -2.9131 2.9131 1.09 0.000582092 0.000529043 0.0499666 0.0454956 32 2710 22 6.65987e+06 253560 554710. 1919.41 1.15 0.142382 0.12635 22834 132086 -1 2369 21 1814 3158 248343 56678 3.12031 3.12031 -125.285 -3.12031 0 0 701300. 2426.64 0.33 0.10 0.14 -1 -1 0.33 0.0340875 0.0305972 146 60 64 32 62 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_017.v common 4.85 vpr 64.81 MiB 0.02 7140 -1 -1 1 0.04 -1 -1 33932 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 383 303 1 185 98 17 17 289 -1 unnamed_device 26.1 MiB 0.39 1033 12023 3015 8132 876 64.8 MiB 0.11 0.00 2.9131 -105.574 -2.9131 2.9131 1.09 0.000560497 0.000506758 0.0359599 0.0327561 28 2234 23 6.65987e+06 431052 500653. 1732.36 1.02 0.123757 0.109602 21970 115934 -1 2022 21 1445 2202 145318 34171 2.78657 2.78657 -120.101 -2.78657 0 0 612192. 2118.31 0.31 0.08 0.11 -1 -1 0.31 0.0322902 0.0286796 142 54 64 32 56 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_018.v common 4.66 vpr 64.84 MiB 0.02 7024 -1 -1 1 0.04 -1 -1 33760 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 339 284 1 162 94 17 17 289 -1 unnamed_device 26.2 MiB 0.22 891 16708 5107 9436 2165 64.8 MiB 0.14 0.00 2.23864 -84.0256 -2.23864 2.23864 1.07 0.000488121 0.000441766 0.0462625 0.0419851 28 1991 19 6.65987e+06 380340 500653. 1732.36 1.05 0.120505 0.106358 21970 115934 -1 1886 17 980 1530 105308 24902 2.15851 2.15851 -98.4323 -2.15851 0 0 612192. 2118.31 0.30 0.06 0.12 -1 -1 0.30 0.0232073 0.0207049 118 62 29 29 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_019.v common 4.26 vpr 64.14 MiB 0.02 7120 -1 -1 1 0.03 -1 -1 33608 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65680 30 32 226 208 1 119 77 17 17 289 -1 unnamed_device 25.6 MiB 0.13 705 9531 2665 5536 1330 64.1 MiB 0.07 0.00 1.99938 -68.6713 -1.99938 1.99938 1.06 0.000359093 0.000328567 0.0248013 0.022624 26 1504 22 6.65987e+06 190170 477104. 1650.88 0.92 0.0802887 0.0705758 21682 110474 -1 1383 16 663 937 76489 17279 1.82785 1.82785 -80.3751 -1.82785 0 0 585099. 2024.56 0.28 0.05 0.11 -1 -1 0.28 0.0153541 0.0135432 85 29 24 24 30 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_020.v common 4.73 vpr 64.69 MiB 0.02 7080 -1 -1 1 0.03 -1 -1 34052 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 31 32 335 280 1 154 79 17 17 289 -1 unnamed_device 26.0 MiB 0.25 838 13937 5061 6934 1942 64.7 MiB 0.12 0.00 3.15104 -98.411 -3.15104 3.15104 1.09 0.000541437 0.000488277 0.0461545 0.0420814 32 2017 20 6.65987e+06 202848 554710. 1919.41 1.06 0.119829 0.106182 22834 132086 -1 1747 18 889 1350 107104 24660 3.11665 3.11665 -114.527 -3.11665 0 0 701300. 2426.64 0.34 0.06 0.14 -1 -1 0.34 0.025616 0.0229539 113 55 31 31 62 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_021.v common 4.46 vpr 64.73 MiB 0.02 7128 -1 -1 1 0.03 -1 -1 33596 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 32 32 366 283 1 192 98 17 17 289 -1 unnamed_device 26.0 MiB 0.06 991 18998 5911 10297 2790 64.7 MiB 0.16 0.00 3.1409 -108.235 -3.1409 3.1409 0.99 0.000668975 0.000608939 0.053399 0.0485443 32 2297 21 6.65987e+06 431052 554710. 1919.41 1.05 0.132414 0.117179 22834 132086 -1 2016 20 1548 2187 164114 36879 3.36697 3.36697 -128.504 -3.36697 0 0 701300. 2426.64 0.32 0.08 0.14 -1 -1 0.32 0.028761 0.0256316 145 31 91 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_022.v common 4.81 vpr 64.92 MiB 0.02 7352 -1 -1 1 0.04 -1 -1 34264 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 32 32 460 375 1 196 100 17 17 289 -1 unnamed_device 26.8 MiB 0.37 1120 16340 4492 10058 1790 64.9 MiB 0.15 0.00 2.73064 -99.5078 -2.73064 2.73064 1.00 0.000589517 0.000535367 0.0471511 0.0428079 32 2810 24 6.65987e+06 456408 554710. 1919.41 1.08 0.138215 0.121796 22834 132086 -1 2415 21 1687 2623 206600 46153 3.48825 3.48825 -124.569 -3.48825 0 0 701300. 2426.64 0.33 0.09 0.14 -1 -1 0.33 0.033926 0.0302156 149 108 0 0 125 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_023.v common 4.40 vpr 63.59 MiB 0.02 7084 -1 -1 1 0.03 -1 -1 34256 -1 -1 17 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65112 26 32 198 186 1 109 75 17 17 289 -1 unnamed_device 25.2 MiB 0.19 544 11293 3626 6689 978 63.6 MiB 0.07 0.00 2.01838 -58.8962 -2.01838 2.01838 1.05 0.000323305 0.000290013 0.0261172 0.0238599 32 1259 16 6.65987e+06 215526 554710. 1919.41 0.96 0.071864 0.0636425 22834 132086 -1 1145 21 573 954 71916 16557 1.79005 1.79005 -67.0541 -1.79005 0 0 701300. 2426.64 0.34 0.05 0.12 -1 -1 0.34 0.0190841 0.0169299 77 21 26 26 22 22 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_024.v common 6.68 vpr 64.77 MiB 0.02 7260 -1 -1 1 0.04 -1 -1 34036 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 333 251 1 187 84 17 17 289 -1 unnamed_device 26.1 MiB 0.14 1100 7770 1980 5307 483 64.8 MiB 0.09 0.00 3.26284 -110.335 -3.26284 3.26284 1.03 0.000508557 0.000463019 0.0269176 0.0245681 28 2609 23 6.65987e+06 253560 500653. 1732.36 3.24 0.188145 0.164851 21970 115934 -1 2353 21 1613 2761 193629 44449 3.99491 3.99491 -142.972 -3.99491 0 0 612192. 2118.31 0.29 0.09 0.12 -1 -1 0.29 0.0310887 0.0278336 137 -1 122 32 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_025.v common 4.16 vpr 63.98 MiB 0.02 6976 -1 -1 1 0.03 -1 -1 34028 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65516 32 32 199 182 1 122 77 17 17 289 -1 unnamed_device 25.5 MiB 0.04 737 11650 3536 6416 1698 64.0 MiB 0.07 0.00 1.74527 -67.3368 -1.74527 1.74527 1.05 0.000333631 0.000303712 0.0260986 0.0237864 32 1535 19 6.65987e+06 164814 554710. 1919.41 0.92 0.0700971 0.0619411 22834 132086 -1 1403 19 666 904 72682 16758 1.88005 1.88005 -82.688 -1.88005 0 0 701300. 2426.64 0.32 0.04 0.14 -1 -1 0.32 0.0154757 0.0137608 81 -1 53 32 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_026.v common 4.60 vpr 64.81 MiB 0.02 7148 -1 -1 1 0.04 -1 -1 34260 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 376 288 1 194 97 17 17 289 -1 unnamed_device 26.4 MiB 0.06 1080 19189 6181 10709 2299 64.8 MiB 0.18 0.00 3.3241 -116.455 -3.3241 3.3241 1.04 0.000588622 0.000536862 0.0541532 0.0491774 32 2590 22 6.65987e+06 418374 554710. 1919.41 1.11 0.135826 0.120205 22834 132086 -1 2173 22 1945 2890 196959 46360 3.53017 3.53017 -138.38 -3.53017 0 0 701300. 2426.64 0.33 0.09 0.13 -1 -1 0.33 0.0341526 0.0307141 151 21 96 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_027.v common 4.55 vpr 64.88 MiB 0.02 7156 -1 -1 1 0.03 -1 -1 33760 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66432 32 32 337 253 1 196 99 17 17 289 -1 unnamed_device 26.2 MiB 0.16 1101 11955 3170 7905 880 64.9 MiB 0.12 0.00 2.66064 -97.5546 -2.66064 2.66064 1.03 0.000588651 0.000533683 0.0330011 0.0301003 32 2571 23 6.65987e+06 443730 554710. 1919.41 1.03 0.107919 0.095517 22834 132086 -1 2211 19 1530 2437 173342 40697 2.87371 2.87371 -116.79 -2.87371 0 0 701300. 2426.64 0.33 0.07 0.13 -1 -1 0.33 0.0251631 0.0225011 150 -1 124 32 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_028.v common 6.22 vpr 64.58 MiB 0.02 7356 -1 -1 1 0.04 -1 -1 34224 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66128 32 32 407 319 1 197 99 17 17 289 -1 unnamed_device 26.3 MiB 0.13 1144 10815 2697 7451 667 64.6 MiB 0.12 0.00 3.07644 -110.15 -3.07644 3.07644 1.04 0.000774542 0.000706435 0.0334708 0.0305268 36 2370 37 6.65987e+06 443730 612192. 2118.31 2.62 0.193046 0.169138 23410 145293 -1 2068 21 1734 2870 186737 43207 3.67325 3.67325 -144.751 -3.67325 0 0 782063. 2706.10 0.36 0.08 0.15 -1 -1 0.36 0.0299813 0.0266796 153 54 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_029.v common 4.28 vpr 64.42 MiB 0.02 7040 -1 -1 1 0.03 -1 -1 33696 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65968 32 32 294 246 1 149 79 17 17 289 -1 unnamed_device 25.8 MiB 0.06 766 8022 1881 5885 256 64.4 MiB 0.07 0.00 2.30182 -81.4786 -2.30182 2.30182 1.01 0.000465251 0.000422139 0.0254174 0.0231104 32 1987 19 6.65987e+06 190170 554710. 1919.41 0.99 0.0857254 0.0755147 22834 132086 -1 1761 18 1027 1646 136219 32278 2.81091 2.81091 -103.852 -2.81091 0 0 701300. 2426.64 0.33 0.06 0.13 -1 -1 0.33 0.0232156 0.0207975 106 31 54 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_030.v common 4.31 vpr 64.43 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 33804 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 30 32 296 244 1 154 81 17 17 289 -1 unnamed_device 26.1 MiB 0.12 838 12506 5226 6847 433 64.4 MiB 0.10 0.00 2.8721 -96.5836 -2.8721 2.8721 1.00 0.000446901 0.000406871 0.0342892 0.0311488 32 1860 23 6.65987e+06 240882 554710. 1919.41 0.99 0.0997368 0.0876617 22834 132086 -1 1646 19 1203 1823 132755 30306 2.92897 2.92897 -111.572 -2.92897 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0206096 0.0183755 115 29 60 30 30 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_031.v common 4.26 vpr 64.16 MiB 0.02 7016 -1 -1 1 0.03 -1 -1 33796 -1 -1 20 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65700 28 32 278 232 1 150 80 17 17 289 -1 unnamed_device 25.6 MiB 0.15 798 8508 2294 5421 793 64.2 MiB 0.08 0.00 2.7097 -86.4171 -2.7097 2.7097 0.99 0.000605758 0.000562131 0.0242037 0.0221481 32 1978 22 6.65987e+06 253560 554710. 1919.41 0.97 0.0819115 0.0719879 22834 132086 -1 1745 21 1271 2155 161118 37900 2.90597 2.90597 -106.63 -2.90597 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0215875 0.0191302 107 27 56 28 28 28 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_032.v common 4.54 vpr 64.48 MiB 0.02 7160 -1 -1 1 0.04 -1 -1 33616 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 32 32 283 225 1 166 82 17 17 289 -1 unnamed_device 26.1 MiB 0.12 776 5778 1112 4477 189 64.5 MiB 0.06 0.00 2.7647 -96.8353 -2.7647 2.7647 1.06 0.000491246 0.000446509 0.0176796 0.0160859 32 2143 26 6.65987e+06 228204 554710. 1919.41 1.09 0.0904127 0.0796438 22834 132086 -1 1875 18 1353 2120 153079 35131 3.04997 3.04997 -121.959 -3.04997 0 0 701300. 2426.64 0.33 0.07 0.13 -1 -1 0.33 0.0231776 0.0208826 125 -1 96 32 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_033.v common 4.40 vpr 64.50 MiB 0.02 7212 -1 -1 1 0.04 -1 -1 34192 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 31 32 303 249 1 162 94 17 17 289 -1 unnamed_device 26.1 MiB 0.08 771 11383 3075 7214 1094 64.5 MiB 0.10 0.00 2.57058 -87.584 -2.57058 2.57058 1.03 0.000475396 0.000431659 0.0280807 0.0255075 28 2064 23 6.65987e+06 393018 500653. 1732.36 1.05 0.0964627 0.0845193 21970 115934 -1 1948 23 1277 1932 187088 53037 2.67325 2.67325 -108.625 -2.67325 0 0 612192. 2118.31 0.28 0.08 0.11 -1 -1 0.28 0.0251934 0.022194 119 26 61 31 31 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_034.v common 4.34 vpr 64.64 MiB 0.02 7300 -1 -1 1 0.03 -1 -1 33960 -1 -1 30 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 29 32 312 264 1 154 91 17 17 289 -1 unnamed_device 26.2 MiB 0.23 867 12943 3555 7843 1545 64.6 MiB 0.11 0.00 2.24264 -75.5647 -2.24264 2.24264 0.99 0.000489536 0.000438422 0.0317617 0.0288155 32 1902 21 6.65987e+06 380340 554710. 1919.41 0.95 0.0931771 0.0817639 22834 132086 -1 1668 18 960 1606 110810 26677 2.29671 2.29671 -88.1234 -2.29671 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0223338 0.0197934 109 55 29 29 57 29 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_035.v common 5.05 vpr 64.98 MiB 0.02 7240 -1 -1 1 0.04 -1 -1 34140 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 423 310 1 229 103 17 17 289 -1 unnamed_device 26.8 MiB 0.31 1187 10466 2263 7613 590 65.0 MiB 0.12 0.00 3.41716 -117.409 -3.41716 3.41716 1.06 0.000818539 0.000748142 0.0340864 0.0310802 30 3095 25 6.65987e+06 494442 526063. 1820.29 1.34 0.139743 0.124221 22546 126617 -1 2231 21 1646 2826 159950 36331 3.44122 3.44122 -134.733 -3.44122 0 0 666494. 2306.21 0.32 0.08 0.12 -1 -1 0.32 0.0341388 0.0306359 179 26 128 32 27 27 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_036.v common 4.77 vpr 64.77 MiB 0.02 7212 -1 -1 1 0.04 -1 -1 34064 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 32 32 403 317 1 198 99 17 17 289 -1 unnamed_device 26.5 MiB 0.26 1008 11499 2972 7414 1113 64.8 MiB 0.12 0.00 2.7849 -97.5775 -2.7849 2.7849 1.06 0.00085454 0.000770554 0.0377957 0.0343834 32 2318 22 6.65987e+06 443730 554710. 1919.41 1.08 0.129267 0.114726 22834 132086 -1 2006 21 1851 2800 180924 42689 2.77297 2.77297 -115.946 -2.77297 0 0 701300. 2426.64 0.34 0.09 0.13 -1 -1 0.34 0.0341524 0.0306349 152 62 62 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_037.v common 4.75 vpr 64.80 MiB 0.02 7208 -1 -1 1 0.04 -1 -1 34164 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 31 32 353 302 1 156 91 17 17 289 -1 unnamed_device 26.2 MiB 0.36 865 8251 1890 5788 573 64.8 MiB 0.08 0.00 2.46718 -88.0621 -2.46718 2.46718 1.06 0.000595676 0.000535797 0.0239308 0.021801 32 2050 20 6.65987e+06 354984 554710. 1919.41 1.03 0.093741 0.0823931 22834 132086 -1 1789 17 1037 1665 113782 26772 2.57925 2.57925 -105.256 -2.57925 0 0 701300. 2426.64 0.34 0.06 0.13 -1 -1 0.34 0.0239099 0.0214912 113 77 0 0 89 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_038.v common 4.75 vpr 65.10 MiB 0.02 7292 -1 -1 1 0.04 -1 -1 33620 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 31 32 391 309 1 194 84 17 17 289 -1 unnamed_device 26.3 MiB 0.26 1065 12894 3634 7777 1483 65.1 MiB 0.15 0.00 2.8911 -99.0566 -2.8911 2.8911 1.04 0.000738141 0.000674005 0.0488073 0.0445409 32 2559 24 6.65987e+06 266238 554710. 1919.41 1.08 0.139598 0.124027 22834 132086 -1 2188 22 1692 2845 199191 48494 2.92677 2.92677 -115.49 -2.92677 0 0 701300. 2426.64 0.34 0.09 0.12 -1 -1 0.34 0.0338821 0.0303608 148 59 60 30 62 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_039.v common 4.70 vpr 65.29 MiB 0.02 7476 -1 -1 1 0.04 -1 -1 33884 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66852 31 32 455 371 1 193 84 17 17 289 -1 unnamed_device 26.6 MiB 0.35 1117 9600 2223 6617 760 65.3 MiB 0.10 0.00 3.84744 -114.331 -3.84744 3.84744 1.00 0.000602461 0.000546212 0.0356391 0.032462 32 2803 23 6.65987e+06 266238 554710. 1919.41 1.08 0.124061 0.109027 22834 132086 -1 2380 22 1428 2449 201859 44860 3.89111 3.89111 -141.561 -3.89111 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0319835 0.0283568 149 111 0 0 124 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_040.v common 4.76 vpr 65.19 MiB 0.02 7564 -1 -1 1 0.04 -1 -1 33632 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 31 32 413 333 1 188 84 17 17 289 -1 unnamed_device 26.4 MiB 0.49 1038 15456 4621 9030 1805 65.2 MiB 0.15 0.00 3.8015 -109.342 -3.8015 3.8015 1.00 0.000616072 0.000561184 0.0539395 0.049031 30 2320 18 6.65987e+06 266238 526063. 1820.29 1.01 0.130079 0.115115 22546 126617 -1 1980 16 965 1569 91198 21014 3.44357 3.44357 -125.975 -3.44357 0 0 666494. 2306.21 0.31 0.05 0.12 -1 -1 0.31 0.0244136 0.0218761 143 86 31 31 89 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_041.v common 4.74 vpr 64.75 MiB 0.03 7284 -1 -1 1 0.04 -1 -1 33808 -1 -1 33 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 31 32 391 309 1 193 96 17 17 289 -1 unnamed_device 26.6 MiB 0.26 1021 17616 4838 10803 1975 64.7 MiB 0.16 0.00 2.69764 -93.2733 -2.69764 2.69764 1.02 0.000584821 0.000529676 0.0494323 0.0447223 30 2228 22 6.65987e+06 418374 526063. 1820.29 1.08 0.132835 0.116866 22546 126617 -1 1887 18 1390 2341 124132 29577 2.55411 2.55411 -105.258 -2.55411 0 0 666494. 2306.21 0.31 0.06 0.12 -1 -1 0.31 0.0275 0.0246134 146 58 60 31 62 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_042.v common 6.06 vpr 64.74 MiB 0.02 7156 -1 -1 1 0.04 -1 -1 34056 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 32 32 407 319 1 198 99 17 17 289 -1 unnamed_device 26.5 MiB 0.12 1101 8535 1820 6000 715 64.7 MiB 0.09 0.00 3.07644 -111.551 -3.07644 3.07644 1.07 0.000589978 0.000537702 0.0267386 0.0244963 26 3006 36 6.65987e+06 443730 477104. 1650.88 2.73 0.130561 0.114976 21682 110474 -1 2658 23 2001 2967 246525 54965 3.61311 3.61311 -145.496 -3.61311 0 0 585099. 2024.56 0.29 0.10 0.11 -1 -1 0.29 0.034713 0.0310337 154 42 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_043.v common 5.02 vpr 65.34 MiB 0.02 7456 -1 -1 1 0.04 -1 -1 34168 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66908 32 32 496 380 1 232 104 17 17 289 -1 unnamed_device 27.0 MiB 0.27 1177 19624 5478 11399 2747 65.3 MiB 0.19 0.00 3.2831 -114.767 -3.2831 3.2831 1.00 0.000593583 0.000542559 0.0631064 0.0576727 28 3037 45 6.65987e+06 507120 500653. 1732.36 1.42 0.195541 0.174143 21970 115934 -1 2632 23 2049 3212 239854 54685 3.70437 3.70437 -140.948 -3.70437 0 0 612192. 2118.31 0.28 0.10 0.11 -1 -1 0.28 0.0373244 0.0334624 184 91 62 32 96 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_044.v common 4.45 vpr 64.81 MiB 0.02 7096 -1 -1 1 0.04 -1 -1 34020 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 31 32 305 250 1 158 81 17 17 289 -1 unnamed_device 26.2 MiB 0.13 778 11981 4715 6434 832 64.8 MiB 0.11 0.00 2.83398 -93.9955 -2.83398 2.83398 1.04 0.000466062 0.000425686 0.0367972 0.0336582 32 2107 20 6.65987e+06 228204 554710. 1919.41 1.02 0.103716 0.0921764 22834 132086 -1 1853 22 1431 2240 190105 43672 2.99905 2.99905 -115.343 -2.99905 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.026494 0.0235925 116 24 62 31 31 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_045.v common 4.78 vpr 64.93 MiB 0.02 7348 -1 -1 1 0.04 -1 -1 34216 -1 -1 36 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 31 32 395 311 1 196 99 17 17 289 -1 unnamed_device 26.7 MiB 0.30 983 10131 2479 7109 543 64.9 MiB 0.12 0.00 3.3069 -109.937 -3.3069 3.3069 1.06 0.00072299 0.000667752 0.034729 0.0318578 30 2330 24 6.65987e+06 456408 526063. 1820.29 1.11 0.129372 0.115258 22546 126617 -1 2004 22 1485 2475 140843 33229 3.44817 3.44817 -129.487 -3.44817 0 0 666494. 2306.21 0.32 0.07 0.12 -1 -1 0.32 0.0313688 0.028044 150 59 62 31 62 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_046.v common 5.03 vpr 64.79 MiB 0.02 7292 -1 -1 1 0.04 -1 -1 34112 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 32 32 397 313 1 196 97 17 17 289 -1 unnamed_device 26.6 MiB 0.14 1199 15415 4784 9240 1391 64.8 MiB 0.16 0.00 2.90504 -98.2267 -2.90504 2.90504 1.04 0.000659684 0.000601184 0.0481858 0.0439185 28 2875 24 6.65987e+06 418374 500653. 1732.36 1.55 0.140679 0.125101 21970 115934 -1 2535 23 1686 3051 223304 49533 2.77471 2.77471 -116.832 -2.77471 0 0 612192. 2118.31 0.29 0.09 0.10 -1 -1 0.29 0.0332998 0.0297797 148 54 62 32 62 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_047.v common 5.38 vpr 64.77 MiB 0.02 7112 -1 -1 1 0.04 -1 -1 33712 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 345 257 1 194 84 17 17 289 -1 unnamed_device 26.1 MiB 0.17 992 9234 2503 6027 704 64.8 MiB 0.10 0.00 3.30796 -113.956 -3.30796 3.30796 1.04 0.000580214 0.000535276 0.0312813 0.0284591 28 2767 23 6.65987e+06 253560 500653. 1732.36 1.65 0.11715 0.103691 21970 115934 -1 2315 22 1825 3398 271422 59574 3.93183 3.93183 -147.297 -3.93183 0 0 612192. 2118.31 0.30 0.10 0.11 -1 -1 0.30 0.0307487 0.0275111 150 -1 128 32 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_048.v common 4.95 vpr 65.21 MiB 0.03 7460 -1 -1 1 0.04 -1 -1 34068 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66772 32 32 424 343 1 190 98 17 17 289 -1 unnamed_device 26.6 MiB 0.35 1056 13823 3931 8985 907 65.2 MiB 0.13 0.00 2.54238 -94.3834 -2.54238 2.54238 0.99 0.000692348 0.000631155 0.0398865 0.0362341 32 2506 22 6.65987e+06 431052 554710. 1919.41 1.02 0.121959 0.107255 22834 132086 -1 2099 22 1527 2199 152170 35810 2.60845 2.60845 -113.509 -2.60845 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0297265 0.0262863 145 81 25 25 96 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_049.v common 4.76 vpr 64.76 MiB 0.03 7116 -1 -1 1 0.04 -1 -1 33736 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 32 32 395 311 1 194 99 17 17 289 -1 unnamed_device 26.5 MiB 0.34 1091 11727 3283 7547 897 64.8 MiB 0.12 0.00 2.7537 -99.7404 -2.7537 2.7537 1.01 0.000586055 0.000533077 0.0338086 0.0307872 32 2561 20 6.65987e+06 443730 554710. 1919.41 1.12 0.112767 0.0995681 22834 132086 -1 2224 17 1335 2224 157463 36408 3.00717 3.00717 -119.728 -3.00717 0 0 701300. 2426.64 0.32 0.07 0.13 -1 -1 0.32 0.0248388 0.0221618 146 58 64 32 60 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_050.v common 4.61 vpr 64.84 MiB 0.02 7292 -1 -1 1 0.04 -1 -1 33816 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 405 318 1 200 101 17 17 289 -1 unnamed_device 26.5 MiB 0.26 1116 13966 3741 9079 1146 64.8 MiB 0.13 0.00 2.63244 -96.5003 -2.63244 2.63244 1.03 0.000724547 0.000662581 0.042176 0.0385354 28 2490 23 6.65987e+06 469086 500653. 1732.36 1.05 0.125753 0.111464 21970 115934 -1 2290 20 1618 2540 174786 40069 2.71871 2.71871 -116.274 -2.71871 0 0 612192. 2118.31 0.29 0.08 0.11 -1 -1 0.29 0.0301032 0.0268676 155 61 63 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_051.v common 4.55 vpr 64.26 MiB 0.02 7220 -1 -1 1 0.04 -1 -1 33808 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65804 32 32 376 288 1 194 99 17 17 289 -1 unnamed_device 26.1 MiB 0.06 1090 17199 4883 10353 1963 64.3 MiB 0.15 0.00 3.1757 -113.179 -3.1757 3.1757 0.98 0.000587805 0.000538631 0.0448821 0.0409647 28 2695 27 6.65987e+06 443730 500653. 1732.36 1.32 0.135707 0.120931 21970 115934 -1 2329 21 1665 2768 212848 47450 3.77157 3.77157 -144.022 -3.77157 0 0 612192. 2118.31 0.27 0.09 0.10 -1 -1 0.27 0.0308161 0.0275809 150 21 96 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_052.v common 4.99 vpr 64.50 MiB 0.03 7168 -1 -1 1 0.04 -1 -1 34216 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66044 32 32 407 319 1 197 101 17 17 289 -1 unnamed_device 26.3 MiB 0.15 904 16316 4604 8863 2849 64.5 MiB 0.14 0.00 3.11564 -107.958 -3.11564 3.11564 0.99 0.000579124 0.000525589 0.0436163 0.0396702 28 2852 38 6.65987e+06 469086 500653. 1732.36 1.56 0.15472 0.137132 21970 115934 -1 2320 22 2008 3195 243703 56870 3.98891 3.98891 -144.407 -3.98891 0 0 612192. 2118.31 0.29 0.10 0.11 -1 -1 0.29 0.033675 0.0301221 153 50 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_053.v common 7.38 vpr 64.82 MiB 0.02 7396 -1 -1 1 0.04 -1 -1 34004 -1 -1 34 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 31 32 449 367 1 193 97 17 17 289 -1 unnamed_device 26.4 MiB 0.39 1015 10975 2577 7765 633 64.8 MiB 0.12 0.00 3.40198 -101.199 -3.40198 3.40198 0.98 0.000689011 0.000628781 0.0360518 0.0327795 26 3585 35 6.65987e+06 431052 477104. 1650.88 3.80 0.141229 0.123746 21682 110474 -1 2597 22 1690 2913 255640 58499 3.75265 3.75265 -134.633 -3.75265 0 0 585099. 2024.56 0.21 0.11 0.11 -1 -1 0.21 0.0350741 0.0308823 145 110 0 0 122 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_054.v common 5.30 vpr 64.96 MiB 0.02 7364 -1 -1 1 0.04 -1 -1 33856 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66516 32 32 432 346 1 195 84 17 17 289 -1 unnamed_device 26.6 MiB 0.26 1014 10149 2787 6727 635 65.0 MiB 0.11 0.00 3.16978 -102.067 -3.16978 3.16978 1.03 0.000602765 0.000548602 0.0369992 0.033806 26 3098 40 6.65987e+06 253560 477104. 1650.88 1.74 0.147572 0.130545 21682 110474 -1 2539 25 2097 3747 283987 68404 4.00699 4.00699 -141.917 -4.00699 0 0 585099. 2024.56 0.27 0.11 0.10 -1 -1 0.27 0.0384249 0.0342213 149 86 32 32 94 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_055.v common 4.36 vpr 64.40 MiB 0.02 7216 -1 -1 1 0.03 -1 -1 33924 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65948 32 32 312 255 1 166 94 17 17 289 -1 unnamed_device 26.1 MiB 0.06 792 9679 2255 6267 1157 64.4 MiB 0.07 0.00 2.64858 -92.0476 -2.64858 2.64858 1.02 0.000466941 0.000426238 0.0231447 0.021162 32 2389 21 6.65987e+06 380340 554710. 1919.41 1.06 0.0951763 0.0843577 22834 132086 -1 1912 21 1400 2159 175648 44025 2.95985 2.95985 -116.825 -2.95985 0 0 701300. 2426.64 0.32 0.07 0.12 -1 -1 0.32 0.0239051 0.021209 124 20 63 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_056.v common 4.91 vpr 64.53 MiB 0.02 7216 -1 -1 1 0.04 -1 -1 33496 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 32 32 370 314 1 164 82 17 17 289 -1 unnamed_device 25.9 MiB 0.31 697 13788 3172 9066 1550 64.5 MiB 0.10 0.00 2.66064 -91.9052 -2.66064 2.66064 1.03 0.000510903 0.000464088 0.0434218 0.0394776 32 2353 42 6.65987e+06 228204 554710. 1919.41 1.27 0.138231 0.121771 22834 132086 -1 1855 21 1448 2236 173543 41831 3.10031 3.10031 -119.093 -3.10031 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.0279803 0.0250022 121 91 0 0 94 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_057.v common 4.67 vpr 65.00 MiB 0.03 7264 -1 -1 1 0.04 -1 -1 34180 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 32 32 469 351 1 233 104 17 17 289 -1 unnamed_device 26.7 MiB 0.16 1291 12304 2912 7951 1441 65.0 MiB 0.14 0.00 3.7011 -128.789 -3.7011 3.7011 0.99 0.000764777 0.000699263 0.0418473 0.038317 30 2842 21 6.65987e+06 507120 526063. 1820.29 1.18 0.140101 0.12461 22546 126617 -1 2344 20 2010 3343 158216 39473 3.90197 3.90197 -150.986 -3.90197 0 0 666494. 2306.21 0.31 0.08 0.12 -1 -1 0.31 0.0327751 0.02936 187 53 96 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_058.v common 4.43 vpr 65.07 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 34032 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 32 32 368 284 1 194 95 17 17 289 -1 unnamed_device 26.3 MiB 0.23 1128 12623 3257 8134 1232 65.1 MiB 0.13 0.00 2.9131 -105.213 -2.9131 2.9131 0.98 0.000583587 0.000533631 0.0377344 0.0346325 32 2288 25 6.65987e+06 393018 554710. 1919.41 0.99 0.114431 0.101594 22834 132086 -1 2148 20 1521 2335 150432 36478 2.98517 2.98517 -121.883 -2.98517 0 0 701300. 2426.64 0.32 0.07 0.12 -1 -1 0.32 0.0296578 0.0265697 146 31 92 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_059.v common 8.24 vpr 64.49 MiB 0.02 7272 -1 -1 1 0.04 -1 -1 33476 -1 -1 30 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66036 30 32 296 244 1 158 92 17 17 289 -1 unnamed_device 26.1 MiB 0.12 716 10235 2391 7349 495 64.5 MiB 0.09 0.00 2.8079 -91.9139 -2.8079 2.8079 1.02 0.000489115 0.000441461 0.0256887 0.0234676 26 2451 49 6.65987e+06 380340 477104. 1650.88 4.88 0.186985 0.163448 21682 110474 -1 1843 22 1352 2112 157964 39303 3.50997 3.50997 -123.094 -3.50997 0 0 585099. 2024.56 0.28 0.07 0.11 -1 -1 0.28 0.0250309 0.0222845 115 29 60 30 30 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_060.v common 5.19 vpr 65.27 MiB 0.03 7456 -1 -1 1 0.04 -1 -1 34388 -1 -1 43 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66836 32 32 531 413 1 232 107 17 17 289 -1 unnamed_device 26.9 MiB 0.62 1090 14781 3819 9258 1704 65.3 MiB 0.15 0.00 3.7711 -126.43 -3.7711 3.7711 0.98 0.000743833 0.000676642 0.0466648 0.0423889 32 3204 26 6.65987e+06 545154 554710. 1919.41 1.22 0.157292 0.139602 22834 132086 -1 2427 22 2449 3619 264973 60648 4.25457 4.25457 -155.339 -4.25457 0 0 701300. 2426.64 0.33 0.11 0.12 -1 -1 0.33 0.0423612 0.0380152 186 109 32 32 128 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_061.v common 4.66 vpr 64.76 MiB 0.02 7144 -1 -1 1 0.04 -1 -1 33732 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 32 32 376 288 1 194 100 17 17 289 -1 unnamed_device 26.6 MiB 0.27 1075 13788 3380 9064 1344 64.8 MiB 0.13 0.00 3.30796 -116.474 -3.30796 3.30796 1.00 0.000608297 0.000550904 0.0388869 0.0352217 32 2528 32 6.65987e+06 456408 554710. 1919.41 1.10 0.128416 0.113255 22834 132086 -1 2250 19 1684 2464 176136 40464 3.70243 3.70243 -141.722 -3.70243 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0274417 0.024563 151 31 96 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_062.v common 4.42 vpr 64.25 MiB 0.02 7016 -1 -1 1 0.03 -1 -1 33756 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65788 32 32 283 225 1 164 95 17 17 289 -1 unnamed_device 25.8 MiB 0.06 892 18671 5874 10331 2466 64.2 MiB 0.14 0.00 2.8299 -101.546 -2.8299 2.8299 1.03 0.000460643 0.000419194 0.041637 0.0379003 32 2005 21 6.65987e+06 393018 554710. 1919.41 1.00 0.106639 0.094559 22834 132086 -1 1896 21 1449 2316 178988 40805 2.92977 2.92977 -118.37 -2.92977 0 0 701300. 2426.64 0.32 0.07 0.13 -1 -1 0.32 0.0244349 0.0218872 123 -1 96 32 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_063.v common 4.95 vpr 65.18 MiB 0.02 7452 -1 -1 1 0.04 -1 -1 34120 -1 -1 41 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 438 320 1 235 105 17 17 289 -1 unnamed_device 26.9 MiB 0.19 1465 19618 5656 11904 2058 65.2 MiB 0.20 0.00 3.87216 -135.44 -3.87216 3.87216 1.04 0.000984253 0.000912661 0.0597853 0.0545954 32 3421 20 6.65987e+06 519798 554710. 1919.41 1.22 0.152783 0.136162 22834 132086 -1 2983 23 2542 4140 354744 77099 4.77543 4.77543 -172.994 -4.77543 0 0 701300. 2426.64 0.31 0.13 0.13 -1 -1 0.31 0.0375541 0.0334806 188 26 128 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_064.v common 4.49 vpr 64.73 MiB 0.02 7020 -1 -1 1 0.03 -1 -1 34004 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 32 32 283 225 1 162 80 17 17 289 -1 unnamed_device 25.9 MiB 0.15 872 11948 3634 6430 1884 64.7 MiB 0.10 0.00 2.7537 -99.1188 -2.7537 2.7537 1.03 0.000430048 0.000391686 0.0339814 0.0309818 32 2128 22 6.65987e+06 202848 554710. 1919.41 1.05 0.100858 0.0892675 22834 132086 -1 1971 17 1365 2212 163913 38697 3.21631 3.21631 -127.341 -3.21631 0 0 701300. 2426.64 0.32 0.06 0.13 -1 -1 0.32 0.0210258 0.0188206 121 -1 96 32 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_065.v common 4.48 vpr 64.61 MiB 0.02 7032 -1 -1 1 0.03 -1 -1 33904 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 30 32 296 244 1 157 93 17 17 289 -1 unnamed_device 26.2 MiB 0.25 773 15423 5394 7859 2170 64.6 MiB 0.12 0.00 2.8299 -94.4258 -2.8299 2.8299 1.04 0.000445581 0.000403357 0.0367082 0.033473 30 1838 19 6.65987e+06 393018 526063. 1820.29 0.98 0.0997932 0.0884184 22546 126617 -1 1561 20 957 1459 76497 18317 3.02797 3.02797 -109.683 -3.02797 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0212317 0.0188828 113 29 60 30 30 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_066.v common 5.82 vpr 64.79 MiB 0.03 7408 -1 -1 1 0.04 -1 -1 34084 -1 -1 33 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 29 32 393 319 1 182 94 17 17 289 -1 unnamed_device 26.0 MiB 0.32 1030 10744 2666 7237 841 64.8 MiB 0.11 0.00 2.7969 -89.882 -2.7969 2.7969 1.01 0.000702626 0.000641538 0.0332625 0.0302591 26 2869 24 6.65987e+06 418374 477104. 1650.88 2.29 0.130186 0.115517 21682 110474 -1 2367 16 1324 2235 155821 36808 3.54217 3.54217 -121.094 -3.54217 0 0 585099. 2024.56 0.28 0.07 0.10 -1 -1 0.28 0.0263318 0.0237862 133 81 29 29 85 29 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_067.v common 4.45 vpr 65.33 MiB 0.02 7300 -1 -1 1 0.04 -1 -1 34356 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66896 32 32 407 319 1 194 84 17 17 289 -1 unnamed_device 26.7 MiB 0.12 947 9234 2430 6025 779 65.3 MiB 0.10 0.00 3.2179 -112.354 -3.2179 3.2179 0.98 0.000595452 0.000544144 0.0311707 0.0284145 32 2345 26 6.65987e+06 253560 554710. 1919.41 1.05 0.119408 0.105139 22834 132086 -1 2062 21 1969 2961 224875 52775 3.86077 3.86077 -146.668 -3.86077 0 0 701300. 2426.64 0.33 0.09 0.12 -1 -1 0.33 0.0302787 0.0270412 151 53 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_068.v common 4.91 vpr 64.84 MiB 0.02 7168 -1 -1 1 0.04 -1 -1 34264 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 407 319 1 195 98 17 17 289 -1 unnamed_device 26.6 MiB 0.46 1042 18548 5868 10140 2540 64.8 MiB 0.17 0.00 3.3721 -116.896 -3.3721 3.3721 0.96 0.000568216 0.000511102 0.0498319 0.0454028 32 2915 33 6.65987e+06 431052 554710. 1919.41 1.16 0.148304 0.131974 22834 132086 -1 2441 22 2077 3497 278839 63603 3.65637 3.65637 -142.152 -3.65637 0 0 701300. 2426.64 0.30 0.10 0.12 -1 -1 0.30 0.0325406 0.029129 152 55 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_069.v common 4.44 vpr 64.55 MiB 0.02 7216 -1 -1 1 0.04 -1 -1 34240 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 32 32 345 287 1 161 94 17 17 289 -1 unnamed_device 26.1 MiB 0.23 810 15217 5023 7887 2307 64.6 MiB 0.13 0.00 2.74164 -96.8554 -2.74164 2.74164 0.98 0.000542202 0.000490149 0.0409894 0.0372541 30 1959 21 6.65987e+06 380340 526063. 1820.29 1.02 0.112313 0.0991535 22546 126617 -1 1587 21 1110 1615 94975 21947 2.57911 2.57911 -106.88 -2.57911 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0259904 0.0231019 120 55 32 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_070.v common 4.45 vpr 64.78 MiB 0.02 7200 -1 -1 1 0.03 -1 -1 34104 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 31 32 353 302 1 152 80 17 17 289 -1 unnamed_device 26.0 MiB 0.30 826 12636 3818 6741 2077 64.8 MiB 0.11 0.00 2.74778 -88.6721 -2.74778 2.74778 0.99 0.000507004 0.000462902 0.0392346 0.0354786 32 2035 25 6.65987e+06 215526 554710. 1919.41 0.99 0.110912 0.0974985 22834 132086 -1 1783 21 1082 1959 141307 33543 2.62725 2.62725 -105.261 -2.62725 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.024773 0.0219396 109 82 0 0 89 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_071.v common 4.72 vpr 65.21 MiB 0.02 7184 -1 -1 1 0.04 -1 -1 34156 -1 -1 33 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 30 32 374 297 1 186 95 17 17 289 -1 unnamed_device 26.4 MiB 0.24 995 16511 4643 9288 2580 65.2 MiB 0.16 0.00 2.61044 -87.9362 -2.61044 2.61044 1.07 0.00071339 0.000655478 0.0490842 0.0448364 32 2392 18 6.65987e+06 418374 554710. 1919.41 1.02 0.123754 0.109562 22834 132086 -1 2111 21 1331 2111 164574 37379 2.93591 2.93591 -112.001 -2.93591 0 0 701300. 2426.64 0.32 0.07 0.13 -1 -1 0.32 0.0263906 0.0233026 137 52 60 30 57 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_072.v common 4.67 vpr 64.59 MiB 0.03 7356 -1 -1 1 0.04 -1 -1 33988 -1 -1 31 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 28 32 332 260 1 180 91 17 17 289 -1 unnamed_device 25.9 MiB 0.11 895 15391 5167 7522 2702 64.6 MiB 0.15 0.00 3.41304 -100.596 -3.41304 3.41304 1.06 0.000570346 0.00052184 0.045838 0.0419581 28 2227 23 6.65987e+06 393018 500653. 1732.36 1.18 0.126281 0.112506 21970 115934 -1 1955 20 1347 2105 166030 36378 3.59931 3.59931 -121.281 -3.59931 0 0 612192. 2118.31 0.29 0.08 0.11 -1 -1 0.29 0.0271892 0.0243178 133 20 84 28 28 28 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_073.v common 4.76 vpr 64.71 MiB 0.02 7132 -1 -1 1 0.04 -1 -1 33988 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 30 32 325 273 1 157 80 17 17 289 -1 unnamed_device 25.9 MiB 0.36 788 13668 4419 7145 2104 64.7 MiB 0.12 0.00 2.8131 -94.711 -2.8131 2.8131 1.05 0.000460548 0.000418937 0.0420647 0.0382674 32 1965 21 6.65987e+06 228204 554710. 1919.41 1.05 0.119857 0.106269 22834 132086 -1 1749 19 1305 2141 160312 37224 2.88697 2.88697 -110.601 -2.88697 0 0 701300. 2426.64 0.33 0.06 0.13 -1 -1 0.33 0.0234162 0.0208145 114 58 30 30 60 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_074.v common 4.42 vpr 64.49 MiB 0.02 7308 -1 -1 1 0.04 -1 -1 33596 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66040 32 32 361 308 1 158 80 17 17 289 -1 unnamed_device 25.9 MiB 0.30 979 7992 2132 5090 770 64.5 MiB 0.08 0.00 2.72278 -89.9421 -2.72278 2.72278 0.99 0.000485075 0.000441901 0.0262093 0.0238989 26 2262 19 6.65987e+06 202848 477104. 1650.88 0.95 0.0973065 0.0856235 21682 110474 -1 1989 22 1283 2088 161833 37345 2.79085 2.79085 -110.682 -2.79085 0 0 585099. 2024.56 0.27 0.08 0.10 -1 -1 0.27 0.0302908 0.0270477 113 88 0 0 91 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_075.v common 4.90 vpr 65.00 MiB 0.02 7292 -1 -1 1 0.04 -1 -1 33676 -1 -1 35 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 31 32 335 251 1 196 98 17 17 289 -1 unnamed_device 26.4 MiB 0.11 1005 11348 2842 7630 876 65.0 MiB 0.11 0.00 3.33845 -109.761 -3.33845 3.33845 1.04 0.000607227 0.000559264 0.0326837 0.0299172 28 2924 22 6.65987e+06 443730 500653. 1732.36 1.51 0.120019 0.107043 21970 115934 -1 2494 20 1589 2573 188202 43700 3.86583 3.86583 -142.518 -3.86583 0 0 612192. 2118.31 0.30 0.09 0.11 -1 -1 0.30 0.0308476 0.027635 150 -1 124 31 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_076.v common 4.72 vpr 64.81 MiB 0.02 7220 -1 -1 1 0.04 -1 -1 34224 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 407 319 1 197 98 17 17 289 -1 unnamed_device 26.5 MiB 0.27 1018 13823 3824 9190 809 64.8 MiB 0.14 0.00 3.1977 -111.144 -3.1977 3.1977 0.99 0.000603339 0.000549102 0.0409142 0.0371069 32 2681 21 6.65987e+06 431052 554710. 1919.41 1.07 0.122906 0.10848 22834 132086 -1 2357 21 1944 3244 229631 55061 3.72337 3.72337 -143.234 -3.72337 0 0 701300. 2426.64 0.33 0.10 0.12 -1 -1 0.33 0.0336693 0.0299934 153 57 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_077.v common 4.86 vpr 64.83 MiB 0.02 7232 -1 -1 1 0.04 -1 -1 33900 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 32 32 407 319 1 194 98 17 17 289 -1 unnamed_device 26.5 MiB 0.33 950 8648 1950 5826 872 64.8 MiB 0.09 0.00 3.40616 -114.322 -3.40616 3.40616 1.03 0.000643669 0.000591368 0.0285596 0.0261746 32 2819 24 6.65987e+06 431052 554710. 1919.41 1.19 0.13011 0.116399 22834 132086 -1 2290 17 1649 2746 186646 45250 3.80363 3.80363 -141.416 -3.80363 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.029765 0.0269287 151 62 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_078.v common 5.36 vpr 64.80 MiB 0.02 7136 -1 -1 1 0.04 -1 -1 33796 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 32 32 399 315 1 196 101 17 17 289 -1 unnamed_device 26.5 MiB 0.25 1149 10206 2542 6901 763 64.8 MiB 0.11 0.00 3.02144 -107.034 -3.02144 3.02144 0.98 0.000638405 0.000586308 0.031058 0.0283458 26 3124 29 6.65987e+06 469086 477104. 1650.88 1.89 0.12614 0.111656 21682 110474 -1 2609 20 1734 2992 237265 53725 3.58011 3.58011 -138.645 -3.58011 0 0 585099. 2024.56 0.28 0.09 0.10 -1 -1 0.28 0.0287915 0.0257867 148 62 60 30 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_079.v common 4.47 vpr 64.61 MiB 0.03 7100 -1 -1 1 0.04 -1 -1 33856 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 30 32 296 244 1 156 80 17 17 289 -1 unnamed_device 26.2 MiB 0.20 831 12980 3467 7889 1624 64.6 MiB 0.11 0.00 2.7709 -93.8065 -2.7709 2.7709 1.02 0.000395278 0.000358065 0.0357341 0.0325262 32 1927 20 6.65987e+06 228204 554710. 1919.41 1.00 0.103214 0.0912808 22834 132086 -1 1832 21 1287 2072 159781 35827 3.02797 3.02797 -114.109 -3.02797 0 0 701300. 2426.64 0.32 0.06 0.12 -1 -1 0.32 0.0234713 0.0210136 112 29 60 30 30 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_080.v common 4.80 vpr 65.12 MiB 0.03 7196 -1 -1 1 0.04 -1 -1 33960 -1 -1 22 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 30 32 383 303 1 191 84 17 17 289 -1 unnamed_device 26.2 MiB 0.26 995 11430 3243 7066 1121 65.1 MiB 0.12 0.00 3.35636 -111.946 -3.35636 3.35636 1.09 0.000602014 0.000550862 0.0389013 0.0354793 32 2425 23 6.65987e+06 278916 554710. 1919.41 1.10 0.124212 0.109932 22834 132086 -1 2123 20 1744 2591 177970 41982 3.60843 3.60843 -133.615 -3.60843 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.0283224 0.025266 145 58 60 30 60 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_081.v common 4.94 vpr 65.16 MiB 0.03 7580 -1 -1 1 0.04 -1 -1 33964 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 32 32 469 381 1 198 103 17 17 289 -1 unnamed_device 27.0 MiB 0.33 1112 14081 3632 8964 1485 65.2 MiB 0.14 0.00 3.10658 -111.647 -3.10658 3.10658 1.09 0.00107014 0.000992158 0.0483098 0.0441065 30 2453 24 6.65987e+06 494442 526063. 1820.29 1.14 0.155292 0.138501 22546 126617 -1 2180 21 1648 2665 157018 35494 3.15325 3.15325 -129.382 -3.15325 0 0 666494. 2306.21 0.32 0.09 0.12 -1 -1 0.32 0.0362133 0.0323169 154 106 0 0 128 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_082.v common 4.82 vpr 64.81 MiB 0.03 7524 -1 -1 1 0.04 -1 -1 34028 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 31 32 425 341 1 189 94 17 17 289 -1 unnamed_device 26.6 MiB 0.23 1105 12448 2918 8411 1119 64.8 MiB 0.13 0.00 3.11964 -108.017 -3.11964 3.11964 1.08 0.000672798 0.000621404 0.0435618 0.0399128 32 2471 23 6.65987e+06 393018 554710. 1919.41 1.11 0.13208 0.117356 22834 132086 -1 2235 22 1694 2638 188794 43988 3.88571 3.88571 -141.87 -3.88571 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.031927 0.0282424 146 79 31 31 93 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_083.v common 4.80 vpr 65.05 MiB 0.02 7520 -1 -1 1 0.04 -1 -1 33892 -1 -1 30 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 30 32 404 328 1 182 92 17 17 289 -1 unnamed_device 26.3 MiB 0.34 1059 16445 4549 9532 2364 65.1 MiB 0.15 0.00 3.0353 -92.6195 -3.0353 3.0353 1.04 0.000597624 0.000534361 0.0518417 0.047373 28 2480 21 6.65987e+06 380340 500653. 1732.36 1.10 0.146046 0.130637 21970 115934 -1 2222 18 1367 2313 154541 35718 3.05517 3.05517 -115.028 -3.05517 0 0 612192. 2118.31 0.29 0.07 0.11 -1 -1 0.29 0.0288286 0.0258967 136 83 26 26 90 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_084.v common 4.72 vpr 64.76 MiB 0.02 7236 -1 -1 1 0.04 -1 -1 34292 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 32 32 407 319 1 198 85 17 17 289 -1 unnamed_device 26.5 MiB 0.24 1048 14593 4789 8120 1684 64.8 MiB 0.15 0.00 3.2069 -112.905 -3.2069 3.2069 1.00 0.00057351 0.000524787 0.0493474 0.0450567 32 2644 22 6.65987e+06 266238 554710. 1919.41 1.11 0.1326 0.117657 22834 132086 -1 2330 21 1967 3405 265859 59928 3.72337 3.72337 -145.57 -3.72337 0 0 701300. 2426.64 0.31 0.10 0.13 -1 -1 0.31 0.0295603 0.0263015 154 58 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_085.v common 4.63 vpr 64.93 MiB 0.02 7276 -1 -1 1 0.04 -1 -1 33728 -1 -1 34 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 29 32 387 316 1 179 95 17 17 289 -1 unnamed_device 26.2 MiB 0.21 885 10031 2322 6990 719 64.9 MiB 0.10 0.00 2.58364 -81.6689 -2.58364 2.58364 1.08 0.000700437 0.000642587 0.0315569 0.0286626 30 1709 21 6.65987e+06 431052 526063. 1820.29 1.04 0.11341 0.0997495 22546 126617 -1 1481 19 896 1507 73546 18360 2.50931 2.50931 -93.556 -2.50931 0 0 666494. 2306.21 0.33 0.06 0.11 -1 -1 0.33 0.0279558 0.0248944 134 81 26 26 85 29 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_086.v common 4.50 vpr 64.46 MiB 0.02 7028 -1 -1 1 0.04 -1 -1 33760 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 32 32 283 225 1 157 80 17 17 289 -1 unnamed_device 26.1 MiB 0.10 871 14700 4546 8486 1668 64.5 MiB 0.12 0.00 2.7819 -99.8269 -2.7819 2.7819 1.06 0.000450136 0.000403287 0.0436973 0.0400379 32 2186 21 6.65987e+06 202848 554710. 1919.41 1.03 0.109016 0.0970247 22834 132086 -1 1877 20 1390 2163 168626 39874 2.98797 2.98797 -122.861 -2.98797 0 0 701300. 2426.64 0.32 0.07 0.12 -1 -1 0.32 0.0247038 0.0221947 116 -1 96 32 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_087.v common 5.09 vpr 64.87 MiB 0.02 7204 -1 -1 1 0.04 -1 -1 33616 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 32 32 407 319 1 194 97 17 17 289 -1 unnamed_device 26.7 MiB 0.41 947 20077 6723 10268 3086 64.9 MiB 0.18 0.00 3.34716 -114.17 -3.34716 3.34716 1.04 0.000589452 0.000534527 0.0616023 0.0556502 32 2585 29 6.65987e+06 418374 554710. 1919.41 1.17 0.153658 0.135805 22834 132086 -1 2133 22 1869 2798 237232 52466 3.84463 3.84463 -140.106 -3.84463 0 0 701300. 2426.64 0.33 0.10 0.13 -1 -1 0.33 0.0341301 0.0305815 150 62 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_088.v common 4.77 vpr 64.83 MiB 0.03 7436 -1 -1 1 0.04 -1 -1 33920 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 407 319 1 201 85 17 17 289 -1 unnamed_device 26.5 MiB 0.29 960 17011 5208 9636 2167 64.8 MiB 0.17 0.00 3.37836 -118.46 -3.37836 3.37836 1.01 0.000597933 0.000546722 0.0592436 0.0540801 32 2487 22 6.65987e+06 266238 554710. 1919.41 1.06 0.150467 0.134504 22834 132086 -1 2166 21 2151 3233 241718 55973 3.63243 3.63243 -142.475 -3.63243 0 0 701300. 2426.64 0.32 0.09 0.12 -1 -1 0.32 0.0324793 0.0291371 157 62 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_089.v common 4.58 vpr 64.52 MiB 0.02 7020 -1 -1 1 0.04 -1 -1 34036 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66064 32 32 315 267 1 158 93 17 17 289 -1 unnamed_device 26.0 MiB 0.26 683 8913 2055 6351 507 64.5 MiB 0.08 0.00 2.72758 -83.2963 -2.72758 2.72758 1.02 0.000472384 0.000429411 0.0226865 0.0206479 32 2050 26 6.65987e+06 367662 554710. 1919.41 1.01 0.0919256 0.0805497 22834 132086 -1 1653 22 1169 1757 123987 31075 2.62325 2.62325 -101.231 -2.62325 0 0 701300. 2426.64 0.34 0.07 0.13 -1 -1 0.34 0.0270366 0.0240371 111 47 32 32 54 27 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_090.v common 4.44 vpr 64.34 MiB 0.02 7004 -1 -1 1 0.04 -1 -1 34112 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65888 31 32 275 220 1 160 81 17 17 289 -1 unnamed_device 25.8 MiB 0.12 696 7606 1920 4768 918 64.3 MiB 0.07 0.00 2.8519 -93.2757 -2.8519 2.8519 1.03 0.000385483 0.000353585 0.0195937 0.0178885 32 1969 20 6.65987e+06 228204 554710. 1919.41 1.02 0.0861764 0.0758078 22834 132086 -1 1741 22 1577 2542 190974 44844 3.03897 3.03897 -111.635 -3.03897 0 0 701300. 2426.64 0.34 0.08 0.13 -1 -1 0.34 0.0265535 0.0236834 118 -1 93 31 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_091.v common 4.95 vpr 64.89 MiB 0.03 7268 -1 -1 1 0.04 -1 -1 34028 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 381 303 1 188 96 17 17 289 -1 unnamed_device 26.2 MiB 0.36 990 9732 2351 6698 683 64.9 MiB 0.10 0.00 3.1709 -105.388 -3.1709 3.1709 1.06 0.00060043 0.000543577 0.0298971 0.0272467 26 2552 23 6.65987e+06 405696 477104. 1650.88 1.17 0.118114 0.104696 21682 110474 -1 2270 24 1646 2415 178774 41123 3.63631 3.63631 -134.754 -3.63631 0 0 585099. 2024.56 0.29 0.09 0.11 -1 -1 0.29 0.0338338 0.0300279 138 56 60 32 58 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_092.v common 5.81 vpr 64.77 MiB 0.02 7448 -1 -1 1 0.04 -1 -1 34104 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 32 32 406 330 1 190 94 17 17 289 -1 unnamed_device 26.6 MiB 0.29 1047 12874 3129 8060 1685 64.8 MiB 0.13 0.00 3.36904 -105.145 -3.36904 3.36904 1.09 0.000594437 0.000543808 0.0420761 0.0384353 26 3040 32 6.65987e+06 380340 477104. 1650.88 2.02 0.146063 0.129738 21682 110474 -1 2383 22 1594 2581 208850 47906 4.18931 4.18931 -133.3 -4.18931 0 0 585099. 2024.56 0.28 0.09 0.11 -1 -1 0.28 0.0342333 0.030559 134 81 28 28 88 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_093.v common 7.81 vpr 64.96 MiB 0.03 7428 -1 -1 1 0.04 -1 -1 33896 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66520 32 32 399 285 1 228 99 17 17 289 -1 unnamed_device 26.8 MiB 0.07 1314 19707 6354 10517 2836 65.0 MiB 0.22 0.00 3.73916 -126.758 -3.73916 3.73916 1.10 0.000726001 0.000667158 0.0660224 0.060371 34 3029 30 6.65987e+06 443730 585099. 2024.56 4.07 0.27236 0.239149 23122 138558 -1 2569 21 1838 3176 228058 52038 4.22563 4.22563 -154.967 -4.22563 0 0 742403. 2568.87 0.35 0.09 0.13 -1 -1 0.35 0.0339943 0.030544 177 -1 156 32 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_094.v common 4.87 vpr 65.07 MiB 0.02 7444 -1 -1 1 0.04 -1 -1 33936 -1 -1 32 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 30 32 371 295 1 184 94 17 17 289 -1 unnamed_device 26.3 MiB 0.30 1010 13513 3458 8294 1761 65.1 MiB 0.13 0.00 2.86284 -90.969 -2.86284 2.86284 1.10 0.000589064 0.000530898 0.0404772 0.0366179 32 2386 19 6.65987e+06 405696 554710. 1919.41 1.05 0.119329 0.10499 22834 132086 -1 2058 18 1373 2136 155461 35482 3.09811 3.09811 -115.054 -3.09811 0 0 701300. 2426.64 0.34 0.07 0.14 -1 -1 0.34 0.0277953 0.0250773 136 47 60 30 56 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_095.v common 4.46 vpr 64.28 MiB 0.02 7128 -1 -1 1 0.03 -1 -1 34244 -1 -1 20 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65824 27 32 269 226 1 143 79 17 17 289 -1 unnamed_device 25.8 MiB 0.12 669 11909 4847 5461 1601 64.3 MiB 0.10 0.00 2.6767 -79.5326 -2.6767 2.6767 1.04 0.000435302 0.000394402 0.0347204 0.0315813 28 1691 23 6.65987e+06 253560 500653. 1732.36 1.06 0.100514 0.088436 21970 115934 -1 1447 20 1131 1640 124385 28726 2.69451 2.69451 -94.8037 -2.69451 0 0 612192. 2118.31 0.29 0.06 0.12 -1 -1 0.29 0.0223516 0.0197647 107 26 54 27 27 27 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_096.v common 5.43 vpr 65.00 MiB 0.03 7592 -1 -1 1 0.04 -1 -1 34224 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 32 32 493 378 1 232 104 17 17 289 -1 unnamed_device 26.7 MiB 0.22 1371 16208 4459 9989 1760 65.0 MiB 0.18 0.00 3.43804 -114.932 -3.43804 3.43804 1.02 0.000837364 0.000771595 0.0583491 0.0534843 28 3707 30 6.65987e+06 507120 500653. 1732.36 1.70 0.179977 0.160846 21970 115934 -1 3044 22 2263 3974 315894 71138 3.62411 3.62411 -139.981 -3.62411 0 0 612192. 2118.31 0.30 0.12 0.11 -1 -1 0.30 0.0376134 0.0339198 184 85 62 31 95 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_097.v common 4.74 vpr 65.23 MiB 0.03 7488 -1 -1 1 0.04 -1 -1 34164 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66800 31 32 455 371 1 189 84 17 17 289 -1 unnamed_device 26.5 MiB 0.39 987 7770 1623 5770 377 65.2 MiB 0.09 0.00 3.51179 -109.645 -3.51179 3.51179 1.04 0.000615176 0.000556357 0.0303362 0.0277378 30 2329 22 6.65987e+06 266238 526063. 1820.29 1.04 0.123162 0.108801 22546 126617 -1 1904 18 1086 1763 96792 23607 3.44511 3.44511 -130.189 -3.44511 0 0 666494. 2306.21 0.30 0.06 0.13 -1 -1 0.30 0.0276522 0.0246576 144 105 0 0 124 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_098.v common 4.95 vpr 64.82 MiB 0.02 7176 -1 -1 1 0.04 -1 -1 33816 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 32 32 355 304 1 151 80 17 17 289 -1 unnamed_device 26.0 MiB 0.33 738 9540 2350 6820 370 64.8 MiB 0.09 0.00 2.71178 -87.7572 -2.71178 2.71178 1.13 0.000498572 0.000454037 0.0338101 0.0309447 32 2018 27 6.65987e+06 202848 554710. 1919.41 1.10 0.122781 0.108799 22834 132086 -1 1751 23 1188 1845 144082 33821 2.87371 2.87371 -114.232 -2.87371 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.0315302 0.0280955 109 86 0 0 89 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_099.v common 4.90 vpr 64.64 MiB 0.02 7212 -1 -1 1 0.04 -1 -1 34036 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66188 32 32 364 282 1 196 96 17 17 289 -1 unnamed_device 26.3 MiB 0.11 1103 15426 3969 9166 2291 64.6 MiB 0.15 0.00 3.4743 -112.833 -3.4743 3.4743 1.14 0.000534218 0.000482933 0.0466183 0.042471 28 2842 21 6.65987e+06 405696 500653. 1732.36 1.16 0.133268 0.118691 21970 115934 -1 2479 22 1617 2429 195577 43767 3.80057 3.80057 -141.552 -3.80057 0 0 612192. 2118.31 0.30 0.09 0.11 -1 -1 0.30 0.0320913 0.0287455 146 31 90 30 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_100.v common 5.76 vpr 64.94 MiB 0.02 7416 -1 -1 1 0.04 -1 -1 34172 -1 -1 36 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 31 32 443 336 1 220 99 17 17 289 -1 unnamed_device 26.8 MiB 0.17 1148 19935 6578 10388 2969 64.9 MiB 0.22 0.00 3.56744 -112.237 -3.56744 3.56744 1.14 0.00067786 0.000620335 0.068974 0.0629758 28 3048 28 6.65987e+06 456408 500653. 1732.36 1.88 0.175787 0.156779 21970 115934 -1 2492 21 1850 2811 203094 47272 3.85571 3.85571 -136.411 -3.85571 0 0 612192. 2118.31 0.31 0.09 0.11 -1 -1 0.31 0.0350365 0.0313587 171 50 87 31 62 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_101.v common 7.21 vpr 65.11 MiB 0.02 7348 -1 -1 1 0.04 -1 -1 34108 -1 -1 33 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 30 32 373 297 1 186 95 17 17 289 -1 unnamed_device 26.3 MiB 0.13 1138 18023 5710 9985 2328 65.1 MiB 0.17 0.00 2.89104 -90.2693 -2.89104 2.89104 1.13 0.000574748 0.000521319 0.0556468 0.0505689 28 2670 19 6.65987e+06 418374 500653. 1732.36 3.49 0.251264 0.220717 21970 115934 -1 2374 21 1280 2328 171074 37968 2.92371 2.92371 -111.283 -2.92371 0 0 612192. 2118.31 0.31 0.09 0.11 -1 -1 0.31 0.0355052 0.0319837 134 50 58 30 58 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_102.v common 7.56 vpr 64.77 MiB 0.02 7200 -1 -1 1 0.04 -1 -1 34216 -1 -1 42 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 32 32 407 319 1 201 106 17 17 289 -1 unnamed_device 26.4 MiB 0.29 1051 19106 5470 10719 2917 64.8 MiB 0.17 0.00 3.3571 -116.707 -3.3571 3.3571 1.07 0.000555389 0.000505953 0.0490904 0.0446988 30 2614 22 6.65987e+06 532476 526063. 1820.29 3.82 0.25184 0.21996 22546 126617 -1 2146 21 1585 2481 142473 32532 3.66737 3.66737 -136.926 -3.66737 0 0 666494. 2306.21 0.31 0.07 0.13 -1 -1 0.31 0.0297741 0.0264696 157 61 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_103.v common 4.90 vpr 64.74 MiB 0.02 7168 -1 -1 1 0.04 -1 -1 34064 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 32 32 405 318 1 200 102 17 17 289 -1 unnamed_device 26.4 MiB 0.27 1026 17476 4896 9779 2801 64.7 MiB 0.17 0.00 2.74164 -96.7116 -2.74164 2.74164 1.10 0.000714337 0.000656738 0.0549618 0.050258 32 2451 23 6.65987e+06 481764 554710. 1919.41 1.07 0.144937 0.12913 22834 132086 -1 2005 21 1545 2309 149127 36060 2.74451 2.74451 -111.55 -2.74451 0 0 701300. 2426.64 0.33 0.08 0.13 -1 -1 0.33 0.0328251 0.0291944 155 61 63 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_104.v common 7.05 vpr 64.17 MiB 0.02 6928 -1 -1 1 0.04 -1 -1 33784 -1 -1 16 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65712 29 32 287 238 1 134 77 17 17 289 -1 unnamed_device 25.6 MiB 0.15 644 12628 5273 6513 842 64.2 MiB 0.11 0.00 3.0383 -87.5279 -3.0383 3.0383 1.13 0.000544729 0.000497075 0.0399831 0.036554 34 1472 19 6.65987e+06 202848 585099. 2024.56 3.37 0.164791 0.143754 23122 138558 -1 1327 15 790 1080 78028 18257 2.78677 2.78677 -97.8598 -2.78677 0 0 742403. 2568.87 0.34 0.05 0.15 -1 -1 0.34 0.0186423 0.0167277 93 28 58 29 29 29 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_105.v common 4.77 vpr 64.53 MiB 0.02 7312 -1 -1 1 0.04 -1 -1 34184 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 32 32 334 290 1 154 81 17 17 289 -1 unnamed_device 25.7 MiB 0.34 924 10931 2647 6889 1395 64.5 MiB 0.09 0.00 2.97218 -88.7987 -2.97218 2.97218 1.10 0.000521121 0.000479614 0.0339941 0.031058 26 2036 20 6.65987e+06 215526 477104. 1650.88 1.06 0.11624 0.103762 21682 110474 -1 1868 18 1006 1435 117032 26897 2.94711 2.94711 -108.054 -2.94711 0 0 585099. 2024.56 0.31 0.07 0.11 -1 -1 0.31 0.026898 0.0243 111 79 0 0 82 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_106.v common 4.82 vpr 64.86 MiB 0.03 7240 -1 -1 1 0.04 -1 -1 34016 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 31 32 365 281 1 196 100 17 17 289 -1 unnamed_device 26.5 MiB 0.15 925 12396 3215 7989 1192 64.9 MiB 0.13 0.00 3.64344 -108.049 -3.64344 3.64344 1.12 0.000614873 0.000564048 0.0352741 0.032171 30 2147 24 6.65987e+06 469086 526063. 1820.29 1.13 0.123098 0.109213 22546 126617 -1 1803 19 1487 2534 127030 31665 3.30865 3.30865 -122.681 -3.30865 0 0 666494. 2306.21 0.32 0.07 0.12 -1 -1 0.32 0.0274569 0.0244809 150 29 93 31 31 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_107.v common 4.83 vpr 64.38 MiB 0.02 7176 -1 -1 1 0.04 -1 -1 34164 -1 -1 31 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 29 32 297 254 1 150 92 17 17 289 -1 unnamed_device 25.5 MiB 0.32 665 9821 2680 6329 812 64.4 MiB 0.09 0.00 2.86104 -76.4711 -2.86104 2.86104 1.11 0.000566183 0.000519749 0.0270204 0.0246255 26 1891 21 6.65987e+06 393018 477104. 1650.88 1.10 0.0974933 0.0856383 21682 110474 -1 1659 21 1068 1744 128397 29930 2.73765 2.73765 -95.581 -2.73765 0 0 585099. 2024.56 0.29 0.06 0.11 -1 -1 0.29 0.0226628 0.0198727 108 48 29 29 52 26 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_108.v common 4.89 vpr 64.62 MiB 0.02 7216 -1 -1 1 0.04 -1 -1 33816 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 32 32 314 256 1 160 80 17 17 289 -1 unnamed_device 25.8 MiB 0.21 890 14356 4857 7481 2018 64.6 MiB 0.13 0.00 2.7929 -101.474 -2.7929 2.7929 1.10 0.000577427 0.000519375 0.0458418 0.0417809 32 2146 19 6.65987e+06 202848 554710. 1919.41 1.12 0.123616 0.109902 22834 132086 -1 1933 19 1443 2370 167100 38703 2.95677 2.95677 -123.765 -2.95677 0 0 701300. 2426.64 0.36 0.08 0.13 -1 -1 0.36 0.0263151 0.0236275 119 31 64 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_109.v common 7.35 vpr 64.94 MiB 0.03 7468 -1 -1 1 0.04 -1 -1 33832 -1 -1 36 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 31 32 387 307 1 189 99 17 17 289 -1 unnamed_device 26.2 MiB 0.27 881 11499 2525 8371 603 64.9 MiB 0.11 0.00 2.8501 -95.7848 -2.8501 2.8501 1.03 0.000573639 0.000514045 0.032553 0.0295371 26 2543 30 6.65987e+06 456408 477104. 1650.88 3.77 0.205366 0.179115 21682 110474 -1 2033 20 1653 2356 169602 43908 2.91877 2.91877 -119.669 -2.91877 0 0 585099. 2024.56 0.28 0.08 0.10 -1 -1 0.28 0.0278153 0.024771 142 60 58 31 62 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_110.v common 4.69 vpr 64.71 MiB 0.02 7080 -1 -1 1 0.04 -1 -1 33772 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 31 32 308 262 1 148 79 17 17 289 -1 unnamed_device 25.9 MiB 0.35 864 11740 3617 6446 1677 64.7 MiB 0.10 0.00 2.49487 -81.7494 -2.49487 2.49487 1.05 0.000454314 0.000413202 0.03647 0.0331214 32 1970 24 6.65987e+06 202848 554710. 1919.41 1.02 0.104702 0.0923277 22834 132086 -1 1758 23 1011 1702 118685 27745 2.65065 2.65065 -102.484 -2.65065 0 0 701300. 2426.64 0.32 0.06 0.13 -1 -1 0.32 0.0254771 0.0226265 105 49 31 31 53 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_111.v common 6.18 vpr 64.80 MiB 0.02 7248 -1 -1 1 0.04 -1 -1 34112 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 32 32 383 307 1 184 96 17 17 289 -1 unnamed_device 26.1 MiB 0.27 931 11703 3107 7769 827 64.8 MiB 0.12 0.00 2.6767 -89.5926 -2.6767 2.6767 1.08 0.000572345 0.000522226 0.0368981 0.0337413 26 2746 41 6.65987e+06 405696 477104. 1650.88 2.52 0.15734 0.140239 21682 110474 -1 2184 21 1264 2187 179311 41837 2.89617 2.89617 -111.55 -2.89617 0 0 585099. 2024.56 0.29 0.09 0.11 -1 -1 0.29 0.0322861 0.0288713 136 56 52 26 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_112.v common 6.96 vpr 64.99 MiB 0.02 7224 -1 -1 1 0.04 -1 -1 33700 -1 -1 36 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 31 32 422 339 1 195 99 17 17 289 -1 unnamed_device 26.7 MiB 0.72 1052 13779 3559 9046 1174 65.0 MiB 0.14 0.00 3.0413 -101.606 -3.0413 3.0413 1.09 0.000916249 0.000830106 0.0468602 0.0423682 26 2559 49 6.65987e+06 456408 477104. 1650.88 2.75 0.284607 0.25109 21682 110474 -1 2205 20 1624 2394 227924 68465 2.94896 2.94896 -121.084 -2.94896 0 0 585099. 2024.56 0.29 0.11 0.11 -1 -1 0.29 0.0351653 0.0316376 148 88 31 31 92 31 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_113.v common 4.73 vpr 64.82 MiB 0.02 7204 -1 -1 1 0.04 -1 -1 34044 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 32 32 333 279 1 160 82 17 17 289 -1 unnamed_device 26.0 MiB 0.17 716 9516 2669 5878 969 64.8 MiB 0.09 0.00 2.31427 -80.8954 -2.31427 2.31427 1.08 0.000793626 0.000743948 0.0307116 0.0280838 32 2214 25 6.65987e+06 228204 554710. 1919.41 1.12 0.117525 0.104453 22834 132086 -1 1815 23 1352 2123 157438 38076 2.66645 2.66645 -104.779 -2.66645 0 0 701300. 2426.64 0.35 0.08 0.13 -1 -1 0.35 0.0311577 0.0278053 115 54 32 32 60 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_114.v common 4.81 vpr 64.82 MiB 0.02 7016 -1 -1 1 0.04 -1 -1 33592 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66380 32 32 339 283 1 164 82 17 17 289 -1 unnamed_device 26.2 MiB 0.32 824 9160 2365 6420 375 64.8 MiB 0.09 0.00 2.66064 -94.0688 -2.66064 2.66064 1.04 0.000488841 0.000444971 0.0295098 0.0269604 32 2240 24 6.65987e+06 228204 554710. 1919.41 1.10 0.104717 0.0920409 22834 132086 -1 1951 23 1480 2380 176748 41664 2.84791 2.84791 -116.865 -2.84791 0 0 701300. 2426.64 0.33 0.09 0.13 -1 -1 0.33 0.0289824 0.025647 121 60 32 32 62 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_115.v common 4.79 vpr 64.64 MiB 0.02 7376 -1 -1 1 0.04 -1 -1 34420 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66192 32 32 407 319 1 198 100 17 17 289 -1 unnamed_device 26.4 MiB 0.17 1040 11004 2789 7417 798 64.6 MiB 0.11 0.00 3.13064 -107.966 -3.13064 3.13064 1.09 0.000816629 0.000752334 0.0333726 0.0304332 28 2435 22 6.65987e+06 456408 500653. 1732.36 1.13 0.124267 0.110325 21970 115934 -1 2183 22 1622 2571 178465 40641 3.63031 3.63031 -137.65 -3.63031 0 0 612192. 2118.31 0.31 0.09 0.12 -1 -1 0.31 0.0341421 0.030328 154 49 64 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_116.v common 4.90 vpr 64.83 MiB 0.02 7420 -1 -1 1 0.04 -1 -1 34256 -1 -1 32 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 29 32 367 293 1 183 93 17 17 289 -1 unnamed_device 26.1 MiB 0.25 960 14373 4042 8897 1434 64.8 MiB 0.14 0.00 2.88233 -84.6905 -2.88233 2.88233 1.09 0.000620381 0.000568057 0.0460249 0.0418991 28 2179 21 6.65987e+06 405696 500653. 1732.36 1.19 0.134987 0.11996 21970 115934 -1 1873 19 1057 1649 97961 23927 2.75271 2.75271 -100.104 -2.75271 0 0 612192. 2118.31 0.31 0.06 0.11 -1 -1 0.31 0.0270547 0.0241462 133 54 56 29 58 29 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_117.v common 5.77 vpr 65.03 MiB 0.02 7348 -1 -1 1 0.04 -1 -1 34112 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 32 32 469 381 1 200 101 17 17 289 -1 unnamed_device 26.6 MiB 0.37 1001 11381 2896 7843 642 65.0 MiB 0.13 0.00 3.12784 -108.736 -3.12784 3.12784 1.10 0.00083788 0.000769512 0.0385304 0.0351473 26 3209 28 6.65987e+06 469086 477104. 1650.88 1.89 0.142615 0.12602 21682 110474 -1 2592 24 2187 3415 274274 64085 4.15631 4.15631 -152.682 -4.15631 0 0 585099. 2024.56 0.28 0.11 0.11 -1 -1 0.28 0.0359857 0.031807 156 117 0 0 128 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_118.v common 4.39 vpr 64.15 MiB 0.02 6920 -1 -1 1 0.03 -1 -1 33884 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65688 31 32 259 212 1 146 79 17 17 289 -1 unnamed_device 25.7 MiB 0.12 797 13430 5333 6415 1682 64.1 MiB 0.11 0.00 2.32153 -81.0887 -2.32153 2.32153 1.03 0.000470754 0.00043423 0.0369557 0.0337272 32 1894 20 6.65987e+06 202848 554710. 1919.41 0.98 0.0933181 0.0824037 22834 132086 -1 1641 19 892 1455 125227 28548 2.62371 2.62371 -100.222 -2.62371 0 0 701300. 2426.64 0.32 0.06 0.13 -1 -1 0.32 0.0198436 0.0176884 105 -1 85 31 0 0 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_119.v common 6.22 vpr 65.19 MiB 0.03 7452 -1 -1 1 0.04 -1 -1 34052 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 32 32 418 338 1 190 97 17 17 289 -1 unnamed_device 26.6 MiB 0.19 987 19411 6700 9088 3623 65.2 MiB 0.16 0.00 3.31204 -109.095 -3.31204 3.31204 1.03 0.000554877 0.000502129 0.0568856 0.051569 36 2237 21 6.65987e+06 418374 612192. 2118.31 2.55 0.196325 0.172282 23410 145293 -1 1849 20 1497 2169 158570 38441 3.45917 3.45917 -124.372 -3.45917 0 0 782063. 2706.10 0.36 0.08 0.15 -1 -1 0.36 0.0299363 0.0266022 142 89 28 28 92 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_120.v common 4.83 vpr 64.94 MiB 0.02 7312 -1 -1 1 0.04 -1 -1 33784 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 376 318 1 156 80 17 17 289 -1 unnamed_device 26.3 MiB 0.25 842 11776 3203 7061 1512 64.9 MiB 0.11 0.00 2.8021 -102.199 -2.8021 2.8021 1.08 0.000520695 0.000472959 0.0425351 0.0386926 32 1960 20 6.65987e+06 202848 554710. 1919.41 1.06 0.122971 0.108917 22834 132086 -1 1745 20 1377 2013 148423 34739 3.12837 3.12837 -126.04 -3.12837 0 0 701300. 2426.64 0.36 0.08 0.13 -1 -1 0.36 0.0299944 0.0267491 115 93 0 0 96 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_121.v common 5.80 vpr 64.98 MiB 0.03 7124 -1 -1 1 0.04 -1 -1 33772 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 401 316 1 196 99 17 17 289 -1 unnamed_device 26.7 MiB 0.28 955 17655 5187 9321 3147 65.0 MiB 0.17 0.00 2.71964 -93.5267 -2.71964 2.71964 1.10 0.000855633 0.000793956 0.0556832 0.0511005 28 2907 26 6.65987e+06 443730 500653. 1732.36 1.95 0.166518 0.149003 21970 115934 -1 2161 21 1438 2275 198594 47779 2.71031 2.71031 -112.972 -2.71031 0 0 612192. 2118.31 0.30 0.09 0.11 -1 -1 0.30 0.0333777 0.0298761 149 59 61 32 64 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_122.v common 5.46 vpr 65.28 MiB 0.03 7508 -1 -1 1 0.04 -1 -1 34432 -1 -1 43 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66848 32 32 500 382 1 232 107 17 17 289 -1 unnamed_device 27.0 MiB 0.38 1195 9215 1703 6911 601 65.3 MiB 0.12 0.00 3.8601 -128.639 -3.8601 3.8601 1.12 0.00085577 0.000777992 0.0328512 0.0298702 28 3151 26 6.65987e+06 545154 500653. 1732.36 1.40 0.145809 0.128892 21970 115934 -1 2655 20 2202 3365 223518 52855 4.74137 4.74137 -167.155 -4.74137 0 0 612192. 2118.31 0.32 0.10 0.11 -1 -1 0.32 0.0394584 0.0356238 186 81 64 32 96 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_123.v common 4.38 vpr 64.17 MiB 0.02 7168 -1 -1 1 0.03 -1 -1 33476 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65712 30 32 246 229 1 118 77 17 17 289 -1 unnamed_device 25.6 MiB 0.23 551 10672 2622 7473 577 64.2 MiB 0.08 0.00 2.22258 -69.1123 -2.22258 2.22258 1.04 0.000368309 0.000335156 0.0292508 0.0265909 30 1257 21 6.65987e+06 190170 526063. 1820.29 0.92 0.0799364 0.0703073 22546 126617 -1 1102 15 438 591 38425 9443 1.69545 1.69545 -74.4431 -1.69545 0 0 666494. 2306.21 0.32 0.03 0.11 -1 -1 0.32 0.0154678 0.0138009 83 51 0 0 53 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_124.v common 4.43 vpr 64.14 MiB 0.02 6972 -1 -1 1 0.03 -1 -1 34088 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65676 30 32 296 244 1 137 78 17 17 289 -1 unnamed_device 25.6 MiB 0.11 592 11034 4583 5653 798 64.1 MiB 0.09 0.00 2.80784 -84.049 -2.80784 2.80784 1.08 0.000464855 0.000423707 0.0350097 0.0318665 32 1761 20 6.65987e+06 202848 554710. 1919.41 0.99 0.0972078 0.0857033 22834 132086 -1 1378 20 989 1460 117453 28097 2.72051 2.72051 -104.068 -2.72051 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.022057 0.0195928 96 29 60 30 30 30 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_125.v common 4.75 vpr 64.50 MiB 0.02 7052 -1 -1 1 0.04 -1 -1 33400 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 32 32 314 256 1 167 82 17 17 289 -1 unnamed_device 26.2 MiB 0.11 930 9160 2282 6357 521 64.5 MiB 0.09 0.00 2.7647 -99.2423 -2.7647 2.7647 1.11 0.000493296 0.000448039 0.0289588 0.0264901 30 2382 20 6.65987e+06 228204 526063. 1820.29 1.20 0.111457 0.099555 22546 126617 -1 1915 21 1132 2004 130372 28716 2.61817 2.61817 -113.333 -2.61817 0 0 666494. 2306.21 0.33 0.07 0.12 -1 -1 0.33 0.0256348 0.0229088 126 31 64 32 32 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_126.v common 4.43 vpr 64.25 MiB 0.02 7224 -1 -1 1 0.03 -1 -1 33944 -1 -1 34 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65792 25 32 251 214 1 138 91 17 17 289 -1 unnamed_device 25.7 MiB 0.07 703 12535 3025 7876 1634 64.2 MiB 0.10 0.00 2.68184 -74.5657 -2.68184 2.68184 1.09 0.000463149 0.000423014 0.0286046 0.0261557 26 1659 21 6.65987e+06 431052 477104. 1650.88 1.05 0.0995526 0.0887746 21682 110474 -1 1534 23 1146 1769 127460 29812 2.72851 2.72851 -89.6785 -2.72851 0 0 585099. 2024.56 0.30 0.06 0.11 -1 -1 0.30 0.024139 0.0213652 103 19 50 25 25 25 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_127.v common 5.78 vpr 64.83 MiB 0.02 7464 -1 -1 1 0.04 -1 -1 33992 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 32 32 432 346 1 193 84 17 17 289 -1 unnamed_device 26.6 MiB 0.25 883 9600 2351 6585 664 64.8 MiB 0.11 0.00 3.17278 -99.7227 -3.17278 3.17278 1.02 0.000889586 0.000807852 0.0381813 0.0348563 32 2920 42 6.65987e+06 253560 554710. 1919.41 2.13 0.199223 0.176261 22834 132086 -1 2190 21 1850 3313 255028 61442 3.60539 3.60539 -127.692 -3.60539 0 0 701300. 2426.64 0.36 0.11 0.13 -1 -1 0.36 0.0355957 0.0317979 147 84 32 32 94 32 -fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_128.v common 5.29 vpr 64.82 MiB 0.02 7516 -1 -1 1 0.04 -1 -1 33860 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 31 32 421 339 1 193 100 17 17 289 -1 unnamed_device 26.5 MiB 0.22 865 12628 2822 9015 791 64.8 MiB 0.12 0.00 2.7691 -92.7554 -2.7691 2.7691 1.02 0.000744487 0.000682629 0.0389542 0.035497 26 2941 34 6.65987e+06 469086 477104. 1650.88 1.79 0.15158 0.134795 21682 110474 -1 2120 20 1657 2537 175208 43945 3.13331 3.13331 -121.654 -3.13331 0 0 585099. 2024.56 0.28 0.08 0.10 -1 -1 0.28 0.0324152 0.0289815 146 88 29 29 93 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_001.v common 11.60 vpr 65.70 MiB 0.02 7348 -1 -1 1 0.04 -1 -1 34032 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67280 32 32 438 350 1 187 89 17 17 289 -1 unnamed_device 27.2 MiB 1.03 758 11771 3695 5635 2441 65.7 MiB 0.09 0.00 3.15069 -112.585 -3.15069 3.15069 1.07 0.000657457 0.000554808 0.0404597 0.0369877 56 2238 34 6.95648e+06 361892 973134. 3367.25 6.73 0.287886 0.252502 29794 239141 -1 1763 22 1852 2903 233359 56134 4.05846 4.05846 -146.305 -4.05846 0 0 1.19926e+06 4149.71 0.56 0.10 0.24 -1 -1 0.56 0.036908 0.0331525 84 80 32 32 96 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_002.v common 13.20 vpr 65.68 MiB 0.02 7300 -1 -1 1 0.04 -1 -1 34112 -1 -1 14 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67256 30 32 409 330 1 179 76 17 17 289 -1 unnamed_device 27.0 MiB 2.30 819 12716 4427 6806 1483 65.7 MiB 0.11 0.00 3.3213 -109.081 -3.3213 3.3213 1.04 0.000582229 0.000528971 0.0493841 0.044997 56 2281 49 6.95648e+06 202660 973134. 3367.25 7.16 0.271252 0.236177 29794 239141 -1 1915 22 1740 2568 252529 52764 3.92522 3.92522 -138.577 -3.92522 0 0 1.19926e+06 4149.71 0.53 0.10 0.25 -1 -1 0.53 0.0319015 0.0282906 76 78 30 30 89 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_003.v common 9.87 vpr 65.86 MiB 0.02 7456 -1 -1 1 0.04 -1 -1 33888 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67440 32 32 387 309 1 179 83 17 17 289 -1 unnamed_device 27.2 MiB 0.82 716 15563 6617 8113 833 65.9 MiB 0.13 0.00 3.01749 -104.169 -3.01749 3.01749 1.06 0.000527359 0.000478202 0.0535576 0.0486882 48 2129 26 6.95648e+06 275038 865456. 2994.66 5.28 0.261288 0.228619 28354 207349 -1 1711 25 1553 2326 174759 41700 3.82376 3.82376 -135.042 -3.82376 0 0 1.05005e+06 3633.38 0.50 0.09 0.21 -1 -1 0.50 0.035085 0.0311135 77 50 54 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_004.v common 9.23 vpr 65.82 MiB 0.03 7288 -1 -1 1 0.04 -1 -1 33888 -1 -1 16 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67396 29 32 343 267 1 176 77 17 17 289 -1 unnamed_device 27.2 MiB 0.44 701 12302 4234 6135 1933 65.8 MiB 0.10 0.00 3.3745 -105.09 -3.3745 3.3745 1.02 0.000489818 0.000443502 0.0410925 0.0374646 40 2626 48 6.95648e+06 231611 706193. 2443.58 5.34 0.185415 0.162275 26914 176310 -1 1954 21 1691 2544 285301 68190 4.17936 4.17936 -146.872 -4.17936 0 0 926341. 3205.33 0.39 0.10 0.18 -1 -1 0.39 0.0285158 0.0253872 75 25 87 29 29 29 -fixed_k6_frac_2ripple_N8_22nm.xml mult_005.v common 7.24 vpr 65.59 MiB 0.03 7124 -1 -1 1 0.03 -1 -1 33816 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67160 32 32 376 288 1 187 77 17 17 289 -1 unnamed_device 27.1 MiB 0.66 704 10346 3486 4993 1867 65.6 MiB 0.08 0.00 3.04139 -109.825 -3.04139 3.04139 0.99 0.000545232 0.000494492 0.0376551 0.0343808 62 2011 38 6.95648e+06 188184 1.05005e+06 3633.38 3.01 0.189387 0.166503 30946 263737 -1 1384 22 1871 3174 191638 48136 3.89696 3.89696 -134.925 -3.89696 0 0 1.30136e+06 4502.97 0.53 0.08 0.26 -1 -1 0.53 0.0289565 0.0257893 78 31 96 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_006.v common 7.16 vpr 65.91 MiB 0.02 7308 -1 -1 1 0.04 -1 -1 33748 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67492 32 32 402 316 1 191 93 17 17 289 -1 unnamed_device 27.2 MiB 0.38 807 13743 4152 7400 2191 65.9 MiB 0.09 0.00 2.5973 -95.5077 -2.5973 2.5973 1.06 0.000525089 0.000477727 0.0391839 0.0356375 46 2381 39 6.95648e+06 419795 828058. 2865.25 3.19 0.204253 0.179552 28066 200906 -1 1690 21 1480 2038 142421 34026 3.16717 3.16717 -121.364 -3.16717 0 0 1.01997e+06 3529.29 0.43 0.08 0.18 -1 -1 0.43 0.0326441 0.0292243 89 61 63 32 63 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_007.v common 11.97 vpr 65.12 MiB 0.02 7096 -1 -1 1 0.04 -1 -1 34112 -1 -1 14 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 27 32 269 226 1 129 73 17 17 289 -1 unnamed_device 26.6 MiB 4.66 478 8433 3031 4066 1336 65.1 MiB 0.06 0.00 2.76796 -78.1223 -2.76796 2.76796 1.00 0.000399969 0.000361541 0.0249222 0.022709 38 1297 24 6.95648e+06 202660 678818. 2348.85 4.04 0.151604 0.131024 26626 170182 -1 1054 20 885 1319 77143 20077 2.82563 2.82563 -93.7063 -2.82563 0 0 902133. 3121.57 0.37 0.05 0.16 -1 -1 0.37 0.0203478 0.0180791 54 26 54 27 27 27 -fixed_k6_frac_2ripple_N8_22nm.xml mult_008.v common 6.54 vpr 65.32 MiB 0.02 7308 -1 -1 1 0.04 -1 -1 33832 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66888 31 32 317 242 1 178 80 17 17 289 -1 unnamed_device 26.7 MiB 0.58 690 11604 4098 5234 2272 65.3 MiB 0.09 0.00 2.5203 -84.8536 -2.5203 2.5203 1.07 0.000496998 0.000452097 0.0376088 0.0344126 52 1969 30 6.95648e+06 246087 926341. 3205.33 2.34 0.177542 0.156947 29218 227130 -1 1498 24 1143 1684 125363 33178 3.22923 3.22923 -107.315 -3.22923 0 0 1.14541e+06 3963.36 0.51 0.07 0.21 -1 -1 0.51 0.0294404 0.0262624 77 -1 115 31 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_009.v common 8.00 vpr 65.19 MiB 0.02 7092 -1 -1 1 0.03 -1 -1 33752 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 31 32 338 292 1 143 74 17 17 289 -1 unnamed_device 26.7 MiB 1.84 644 9684 3981 5431 272 65.2 MiB 0.07 0.00 2.60155 -84.316 -2.60155 2.60155 1.05 0.00049743 0.000452629 0.0319417 0.0290991 38 1877 21 6.95648e+06 159232 678818. 2348.85 2.75 0.149534 0.13019 26626 170182 -1 1565 21 1097 1627 141991 30681 3.51622 3.51622 -114.394 -3.51622 0 0 902133. 3121.57 0.37 0.06 0.16 -1 -1 0.37 0.0242119 0.0213253 57 81 0 0 84 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_010.v common 6.34 vpr 65.17 MiB 0.02 6956 -1 -1 1 0.03 -1 -1 33736 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66736 32 32 314 256 1 156 74 17 17 289 -1 unnamed_device 26.7 MiB 0.87 583 9994 4132 5602 260 65.2 MiB 0.07 0.00 2.44885 -93.915 -2.44885 2.44885 0.98 0.000476239 0.000427076 0.0322866 0.029444 42 1999 26 6.95648e+06 144757 744469. 2576.02 2.15 0.156182 0.137661 27202 183097 -1 1491 22 1482 2031 178688 39452 3.32052 3.32052 -122.386 -3.32052 0 0 949917. 3286.91 0.40 0.07 0.16 -1 -1 0.40 0.0261935 0.0233587 62 31 64 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_011.v common 7.42 vpr 65.19 MiB 0.02 7208 -1 -1 1 0.03 -1 -1 33816 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 30 32 325 273 1 148 74 17 17 289 -1 unnamed_device 26.7 MiB 1.94 641 11079 4648 6079 352 65.2 MiB 0.09 0.00 2.6083 -93.0682 -2.6083 2.6083 1.00 0.000461552 0.000420364 0.0375968 0.0343221 36 1966 38 6.95648e+06 173708 648988. 2245.63 2.21 0.160079 0.139459 26050 158493 -1 1459 20 1308 1673 113755 25738 3.09002 3.09002 -116.365 -3.09002 0 0 828058. 2865.25 0.35 0.06 0.15 -1 -1 0.35 0.0237962 0.0211435 60 58 30 30 60 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_012.v common 7.46 vpr 65.55 MiB 0.03 7076 -1 -1 1 0.04 -1 -1 34100 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67128 32 32 331 280 1 150 76 17 17 289 -1 unnamed_device 26.8 MiB 0.90 553 10636 4387 5710 539 65.6 MiB 0.08 0.00 2.4781 -86.3316 -2.4781 2.4781 1.04 0.000500191 0.000453776 0.0365754 0.0332645 46 1701 27 6.95648e+06 173708 828058. 2865.25 2.90 0.154816 0.136034 28066 200906 -1 1352 22 1148 1615 152732 50132 3.08097 3.08097 -115.596 -3.08097 0 0 1.01997e+06 3529.29 0.46 0.08 0.20 -1 -1 0.46 0.0306675 0.0274166 60 57 25 25 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_013.v common 8.81 vpr 65.77 MiB 0.02 7188 -1 -1 1 0.04 -1 -1 33716 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67348 32 32 386 305 1 180 85 17 17 289 -1 unnamed_device 27.1 MiB 1.33 715 12175 3671 6224 2280 65.8 MiB 0.10 0.00 2.5833 -94.1965 -2.5833 2.5833 1.04 0.000532813 0.000483992 0.0388105 0.0353587 44 2401 29 6.95648e+06 303989 787024. 2723.27 3.94 0.17903 0.156336 27778 195446 -1 1797 27 1926 3020 283485 67878 3.66817 3.66817 -129.618 -3.66817 0 0 997811. 3452.63 0.42 0.11 0.19 -1 -1 0.42 0.0373078 0.0332366 79 55 64 32 57 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_014.v common 19.26 vpr 65.67 MiB 0.02 7132 -1 -1 1 0.04 -1 -1 34000 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67244 32 32 407 319 1 192 90 17 17 289 -1 unnamed_device 26.9 MiB 0.95 856 13959 4953 7643 1363 65.7 MiB 0.12 0.00 3.13369 -118.051 -3.13369 3.13369 1.08 0.000584699 0.000530592 0.0467584 0.0425966 38 2798 47 6.95648e+06 376368 678818. 2348.85 14.75 0.385283 0.339015 26626 170182 -1 2226 24 2209 3097 334052 72509 4.16656 4.16656 -156.968 -4.16656 0 0 902133. 3121.57 0.40 0.13 0.16 -1 -1 0.40 0.0398329 0.0355004 87 60 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_015.v common 7.43 vpr 64.85 MiB 0.02 7068 -1 -1 1 0.03 -1 -1 34060 -1 -1 13 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 29 32 272 228 1 141 74 17 17 289 -1 unnamed_device 26.4 MiB 1.23 518 10769 3505 5285 1979 64.9 MiB 0.08 0.00 2.64555 -77.8882 -2.64555 2.64555 1.04 0.000403693 0.000365765 0.0331814 0.0300932 38 2034 37 6.95648e+06 188184 678818. 2348.85 2.89 0.153993 0.134856 26626 170182 -1 1463 21 1099 1678 128832 28907 2.97862 2.97862 -102.848 -2.97862 0 0 902133. 3121.57 0.39 0.06 0.16 -1 -1 0.39 0.0227035 0.0202187 58 21 58 29 24 24 -fixed_k6_frac_2ripple_N8_22nm.xml mult_016.v common 8.15 vpr 65.86 MiB 0.02 7208 -1 -1 1 0.04 -1 -1 33760 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67440 32 32 401 315 1 185 77 17 17 289 -1 unnamed_device 27.0 MiB 1.82 855 12139 5131 6576 432 65.9 MiB 0.10 0.00 2.7746 -102.548 -2.7746 2.7746 1.06 0.00054499 0.000494931 0.0475355 0.0432654 62 2276 29 6.95648e+06 188184 1.05005e+06 3633.38 2.60 0.189069 0.165513 30946 263737 -1 1765 19 1541 2440 170239 37999 3.51477 3.51477 -129.969 -3.51477 0 0 1.30136e+06 4502.97 0.54 0.07 0.27 -1 -1 0.54 0.0278228 0.0246687 77 60 64 32 62 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_017.v common 7.75 vpr 65.84 MiB 0.02 7232 -1 -1 1 0.04 -1 -1 34076 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67420 32 32 383 303 1 179 84 17 17 289 -1 unnamed_device 27.1 MiB 1.47 688 13443 5308 6761 1374 65.8 MiB 0.10 0.00 2.5613 -93.6772 -2.5613 2.5613 1.08 0.000553979 0.000502435 0.0440725 0.0401641 44 2315 45 6.95648e+06 289514 787024. 2723.27 2.64 0.207026 0.181946 27778 195446 -1 1631 22 1498 2029 155265 38046 3.21727 3.21727 -125.6 -3.21727 0 0 997811. 3452.63 0.45 0.07 0.19 -1 -1 0.45 0.0299329 0.0265252 78 54 64 32 56 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_018.v common 16.58 vpr 65.43 MiB 0.02 7252 -1 -1 1 0.04 -1 -1 33884 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67000 32 32 339 284 1 156 84 17 17 289 -1 unnamed_device 26.6 MiB 0.82 570 12894 4349 6169 2376 65.4 MiB 0.08 0.00 2.04276 -76.9212 -2.04276 2.04276 1.03 0.000469387 0.000420731 0.0365202 0.0331128 46 1730 28 6.95648e+06 289514 828058. 2865.25 12.29 0.293254 0.256686 28066 200906 -1 1322 19 1154 1526 109415 27614 2.40703 2.40703 -100.675 -2.40703 0 0 1.01997e+06 3529.29 0.45 0.07 0.20 -1 -1 0.45 0.0274366 0.0245938 67 62 29 29 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_019.v common 5.57 vpr 64.70 MiB 0.02 6892 -1 -1 1 0.03 -1 -1 33716 -1 -1 10 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66248 30 32 226 208 1 118 72 17 17 289 -1 unnamed_device 26.3 MiB 0.38 451 11098 4873 5836 389 64.7 MiB 0.07 0.00 1.84156 -65.2368 -1.84156 1.84156 1.02 0.0003605 0.000327992 0.0293173 0.02674 36 1436 27 6.95648e+06 144757 648988. 2245.63 1.98 0.118592 0.103427 26050 158493 -1 1136 17 705 893 94047 20594 2.22668 2.22668 -88.2217 -2.22668 0 0 828058. 2865.25 0.34 0.04 0.15 -1 -1 0.34 0.0160437 0.0141981 45 29 24 24 30 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_020.v common 10.09 vpr 65.07 MiB 0.02 7308 -1 -1 1 0.04 -1 -1 33760 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 31 32 335 280 1 152 74 17 17 289 -1 unnamed_device 26.6 MiB 1.24 637 9064 3750 4982 332 65.1 MiB 0.07 0.00 3.23215 -106.742 -3.23215 3.23215 1.05 0.000459653 0.000417475 0.0302618 0.027605 48 1694 25 6.95648e+06 159232 865456. 2994.66 5.37 0.205378 0.17951 28354 207349 -1 1470 21 1017 1381 129594 29419 3.89422 3.89422 -129.621 -3.89422 0 0 1.05005e+06 3633.38 0.44 0.07 0.19 -1 -1 0.44 0.0278769 0.0249804 61 55 31 31 62 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_021.v common 9.85 vpr 65.86 MiB 0.02 7336 -1 -1 1 0.04 -1 -1 33560 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67436 32 32 366 283 1 184 85 17 17 289 -1 unnamed_device 27.2 MiB 0.47 668 11803 3040 7280 1483 65.9 MiB 0.10 0.00 3.10369 -106.356 -3.10369 3.10369 1.06 0.000533273 0.000487205 0.0374751 0.0341782 50 1808 24 6.95648e+06 303989 902133. 3121.57 5.71 0.237821 0.207318 28642 213929 -1 1533 23 1774 2303 192125 42503 3.72656 3.72656 -133.567 -3.72656 0 0 1.08113e+06 3740.92 0.48 0.08 0.21 -1 -1 0.48 0.0299984 0.0266339 81 31 91 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_022.v common 10.29 vpr 66.14 MiB 0.02 7412 -1 -1 1 0.04 -1 -1 33896 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67728 32 32 460 375 1 188 91 17 17 289 -1 unnamed_device 27.5 MiB 1.15 809 16411 6706 8555 1150 66.1 MiB 0.13 0.00 3.03469 -105.175 -3.03469 3.03469 0.99 0.000619225 0.000560757 0.053628 0.0485897 46 2763 27 6.95648e+06 390843 828058. 2865.25 5.65 0.290989 0.253398 28066 200906 -1 2072 23 1669 2546 229844 47711 4.30116 4.30116 -134.606 -4.30116 0 0 1.01997e+06 3529.29 0.41 0.09 0.20 -1 -1 0.41 0.0324736 0.0287365 85 108 0 0 125 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_023.v common 6.99 vpr 64.57 MiB 0.02 6948 -1 -1 1 0.03 -1 -1 33824 -1 -1 13 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 26 32 198 186 1 108 71 17 17 289 -1 unnamed_device 26.3 MiB 1.10 396 8101 3321 4190 590 64.6 MiB 0.05 0.00 1.82136 -55.181 -1.82136 1.82136 1.02 0.000312251 0.000284419 0.0196287 0.0179333 36 1408 48 6.95648e+06 188184 648988. 2245.63 2.67 0.114894 0.0996301 26050 158493 -1 931 21 681 878 75337 17157 2.04838 2.04838 -71.6473 -2.04838 0 0 828058. 2865.25 0.34 0.04 0.15 -1 -1 0.34 0.0172827 0.0152204 44 21 26 26 22 22 -fixed_k6_frac_2ripple_N8_22nm.xml mult_024.v common 6.96 vpr 65.64 MiB 0.02 7112 -1 -1 1 0.04 -1 -1 34016 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67220 32 32 333 251 1 180 76 17 17 289 -1 unnamed_device 27.0 MiB 0.94 707 8076 3256 4415 405 65.6 MiB 0.06 0.00 3.3371 -110.857 -3.3371 3.3371 0.97 0.000486132 0.000439476 0.0249704 0.022733 62 1967 23 6.95648e+06 173708 1.05005e+06 3633.38 2.48 0.142864 0.124544 30946 263737 -1 1567 19 1453 2203 164761 38652 4.01606 4.01606 -134.51 -4.01606 0 0 1.30136e+06 4502.97 0.54 0.07 0.26 -1 -1 0.54 0.0261789 0.0233253 74 -1 122 32 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_025.v common 6.23 vpr 64.62 MiB 0.02 6864 -1 -1 1 0.03 -1 -1 33728 -1 -1 8 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66168 32 32 199 182 1 119 72 17 17 289 -1 unnamed_device 26.3 MiB 0.33 634 9608 4055 5400 153 64.6 MiB 0.06 0.00 1.77736 -70.2586 -1.77736 1.77736 1.06 0.000319724 0.000286897 0.0219847 0.0199752 38 1655 24 6.95648e+06 115805 678818. 2348.85 2.62 0.10682 0.0935079 26626 170182 -1 1313 17 681 855 102574 21041 2.15648 2.15648 -92.7332 -2.15648 0 0 902133. 3121.57 0.37 0.04 0.15 -1 -1 0.37 0.0141819 0.0126806 44 -1 53 32 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_026.v common 10.28 vpr 65.98 MiB 0.02 7100 -1 -1 1 0.04 -1 -1 33848 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67564 32 32 376 288 1 186 90 17 17 289 -1 unnamed_device 27.2 MiB 0.59 828 16773 5823 8948 2002 66.0 MiB 0.14 0.00 3.17289 -114.42 -3.17289 3.17289 1.07 0.000613451 0.000559386 0.051272 0.0467491 44 2670 27 6.95648e+06 376368 787024. 2723.27 6.02 0.284517 0.248034 27778 195446 -1 2043 21 1903 2934 235575 48905 4.14486 4.14486 -152.991 -4.14486 0 0 997811. 3452.63 0.43 0.09 0.19 -1 -1 0.43 0.0278093 0.0246694 85 21 96 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_027.v common 5.88 vpr 65.70 MiB 0.02 7296 -1 -1 1 0.04 -1 -1 33996 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67280 32 32 337 253 1 188 92 17 17 289 -1 unnamed_device 27.0 MiB 0.33 1083 14996 5553 7555 1888 65.7 MiB 0.11 0.00 2.5943 -101.787 -2.5943 2.5943 1.04 0.000497072 0.000451525 0.0394191 0.035904 38 2726 35 6.95648e+06 405319 678818. 2348.85 2.11 0.166913 0.14633 26626 170182 -1 2275 22 1687 2459 220065 42712 3.04467 3.04467 -127.093 -3.04467 0 0 902133. 3121.57 0.35 0.08 0.16 -1 -1 0.35 0.0264719 0.0235676 87 -1 124 32 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_028.v common 6.67 vpr 66.02 MiB 0.02 7204 -1 -1 1 0.04 -1 -1 34152 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67600 32 32 407 319 1 189 92 17 17 289 -1 unnamed_device 27.3 MiB 0.43 913 17894 5998 9434 2462 66.0 MiB 0.15 0.00 3.10069 -113.2 -3.10069 3.10069 1.06 0.000581078 0.000529179 0.0555677 0.0503922 46 2492 36 6.95648e+06 405319 828058. 2865.25 2.53 0.183107 0.161499 28066 200906 -1 2013 21 1945 3204 238783 49715 4.11636 4.11636 -147.151 -4.11636 0 0 1.01997e+06 3529.29 0.44 0.09 0.20 -1 -1 0.44 0.0298666 0.0264834 87 54 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_029.v common 6.33 vpr 65.08 MiB 0.02 7148 -1 -1 1 0.03 -1 -1 34176 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 294 246 1 145 74 17 17 289 -1 unnamed_device 26.6 MiB 0.93 812 9374 3915 4945 514 65.1 MiB 0.07 0.00 2.3791 -88.817 -2.3791 2.3791 1.03 0.000480789 0.000435922 0.0294484 0.0269077 42 2167 27 6.95648e+06 144757 744469. 2576.02 2.00 0.146842 0.129447 27202 183097 -1 1740 20 1252 1981 180391 36505 2.82742 2.82742 -112.986 -2.82742 0 0 949917. 3286.91 0.42 0.07 0.16 -1 -1 0.42 0.0241072 0.02155 57 31 54 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_030.v common 8.68 vpr 65.21 MiB 0.02 7120 -1 -1 1 0.03 -1 -1 33532 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 30 32 296 244 1 148 74 17 17 289 -1 unnamed_device 26.7 MiB 0.63 591 9374 3907 5125 342 65.2 MiB 0.07 0.00 2.6163 -92.4601 -2.6163 2.6163 1.04 0.000446489 0.000404709 0.0290304 0.0264921 40 1855 24 6.95648e+06 173708 706193. 2443.58 4.64 0.197509 0.172281 26914 176310 -1 1610 20 1367 1857 192125 42559 3.61507 3.61507 -131.234 -3.61507 0 0 926341. 3205.33 0.39 0.08 0.18 -1 -1 0.39 0.0240977 0.0215045 60 29 60 30 30 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_031.v common 9.37 vpr 65.05 MiB 0.02 7124 -1 -1 1 0.03 -1 -1 33752 -1 -1 13 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 28 32 278 232 1 144 73 17 17 289 -1 unnamed_device 26.6 MiB 0.70 507 11169 4683 5762 724 65.1 MiB 0.08 0.00 2.5894 -83.1346 -2.5894 2.5894 1.03 0.000410818 0.000374038 0.0338988 0.0308293 48 1638 29 6.95648e+06 188184 865456. 2994.66 5.22 0.201289 0.173803 28354 207349 -1 1385 20 1181 1761 136752 34825 3.20427 3.20427 -106.054 -3.20427 0 0 1.05005e+06 3633.38 0.43 0.06 0.21 -1 -1 0.43 0.0212599 0.0189122 61 27 56 28 28 28 -fixed_k6_frac_2ripple_N8_22nm.xml mult_032.v common 6.53 vpr 65.07 MiB 0.02 6864 -1 -1 1 0.04 -1 -1 33980 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 32 32 283 225 1 160 74 17 17 289 -1 unnamed_device 26.6 MiB 0.23 873 9684 4032 5522 130 65.1 MiB 0.07 0.00 2.43165 -99.8836 -2.43165 2.43165 1.08 0.000434783 0.000395572 0.0296663 0.0271098 40 2180 27 6.95648e+06 144757 706193. 2443.58 2.75 0.16468 0.146152 26914 176310 -1 2011 21 1618 2339 281870 54070 3.18092 3.18092 -128.903 -3.18092 0 0 926341. 3205.33 0.41 0.09 0.17 -1 -1 0.41 0.0259156 0.0232587 64 -1 96 32 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_033.v common 8.43 vpr 64.88 MiB 0.02 6948 -1 -1 1 0.04 -1 -1 33756 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 31 32 303 249 1 156 84 17 17 289 -1 unnamed_device 26.3 MiB 0.24 565 11796 3628 5857 2311 64.9 MiB 0.08 0.00 2.5943 -90.9525 -2.5943 2.5943 1.09 0.000519245 0.0004745 0.032208 0.0293132 46 1955 28 6.95648e+06 303989 828058. 2865.25 4.56 0.156625 0.137421 28066 200906 -1 1393 24 1416 1997 152833 37576 3.20917 3.20917 -117.507 -3.20917 0 0 1.01997e+06 3529.29 0.45 0.08 0.19 -1 -1 0.45 0.0282765 0.0251116 68 26 61 31 31 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_034.v common 7.22 vpr 65.02 MiB 0.02 7056 -1 -1 1 0.04 -1 -1 33984 -1 -1 18 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 29 32 312 264 1 148 79 17 17 289 -1 unnamed_device 26.5 MiB 0.90 502 10895 3849 4803 2243 65.0 MiB 0.08 0.00 2.12706 -71.7738 -2.12706 2.12706 1.11 0.000427812 0.000389107 0.0334989 0.030448 44 1611 47 6.95648e+06 260562 787024. 2723.27 2.68 0.158312 0.139271 27778 195446 -1 1065 20 1126 1532 99844 26405 2.43813 2.43813 -88.0913 -2.43813 0 0 997811. 3452.63 0.44 0.06 0.19 -1 -1 0.44 0.0248623 0.0221604 64 55 29 29 57 29 -fixed_k6_frac_2ripple_N8_22nm.xml mult_035.v common 10.24 vpr 66.02 MiB 0.03 7364 -1 -1 1 0.04 -1 -1 34092 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67608 32 32 423 310 1 219 92 17 17 289 -1 unnamed_device 27.4 MiB 0.79 1124 14582 4830 7580 2172 66.0 MiB 0.13 0.00 3.32935 -120.571 -3.32935 3.32935 1.06 0.000815347 0.000744621 0.0481131 0.0438885 46 2932 29 6.95648e+06 405319 828058. 2865.25 5.78 0.281691 0.245954 28066 200906 -1 2366 24 2265 3421 260718 52382 4.02232 4.02232 -148.885 -4.02232 0 0 1.01997e+06 3529.29 0.43 0.11 0.20 -1 -1 0.43 0.0362041 0.0322521 100 26 128 32 27 27 -fixed_k6_frac_2ripple_N8_22nm.xml mult_036.v common 10.13 vpr 65.82 MiB 0.03 7168 -1 -1 1 0.04 -1 -1 33952 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67396 32 32 403 317 1 190 91 17 17 289 -1 unnamed_device 27.1 MiB 0.93 748 11923 3842 6032 2049 65.8 MiB 0.10 0.00 2.6866 -97.658 -2.6866 2.6866 1.09 0.000620305 0.000569383 0.0401931 0.036638 46 2154 25 6.95648e+06 390843 828058. 2865.25 5.56 0.314767 0.276522 28066 200906 -1 1700 23 1933 2737 203932 45230 3.13697 3.13697 -122.357 -3.13697 0 0 1.01997e+06 3529.29 0.43 0.09 0.18 -1 -1 0.43 0.0340052 0.0303105 87 62 62 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_037.v common 7.09 vpr 65.24 MiB 0.02 7296 -1 -1 1 0.04 -1 -1 34092 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 31 32 353 302 1 150 78 17 17 289 -1 unnamed_device 26.5 MiB 1.17 555 12860 5416 6837 607 65.2 MiB 0.10 0.00 2.76796 -90.6303 -2.76796 2.76796 1.08 0.000484782 0.000444985 0.0434822 0.0397238 46 1740 33 6.95648e+06 217135 828058. 2865.25 2.33 0.149223 0.130974 28066 200906 -1 1448 25 1280 1850 172108 51229 3.25747 3.25747 -114.657 -3.25747 0 0 1.01997e+06 3529.29 0.41 0.08 0.20 -1 -1 0.41 0.0285083 0.0251792 62 77 0 0 89 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_038.v common 10.44 vpr 65.77 MiB 0.03 7420 -1 -1 1 0.04 -1 -1 34204 -1 -1 14 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67352 31 32 391 309 1 186 77 17 17 289 -1 unnamed_device 27.1 MiB 0.69 1018 10835 4524 6052 259 65.8 MiB 0.10 0.00 2.5613 -96.8883 -2.5613 2.5613 1.13 0.000535257 0.000487302 0.0439968 0.0402253 40 2604 41 6.95648e+06 202660 706193. 2443.58 6.04 0.335423 0.294266 26914 176310 -1 2501 19 1796 2662 299497 58611 3.51287 3.51287 -131.947 -3.51287 0 0 926341. 3205.33 0.41 0.10 0.16 -1 -1 0.41 0.0288525 0.0259693 79 59 60 30 62 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_039.v common 9.82 vpr 66.02 MiB 0.03 7416 -1 -1 1 0.04 -1 -1 34264 -1 -1 14 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67600 31 32 455 371 1 185 77 17 17 289 -1 unnamed_device 27.3 MiB 2.28 842 8716 3565 4886 265 66.0 MiB 0.08 0.00 3.85289 -126.398 -3.85289 3.85289 1.08 0.00059919 0.000544815 0.0365165 0.0333735 40 2715 37 6.95648e+06 202660 706193. 2443.58 3.88 0.23458 0.20779 26914 176310 -1 2240 20 1569 2353 237318 50049 4.77761 4.77761 -159.432 -4.77761 0 0 926341. 3205.33 0.41 0.10 0.17 -1 -1 0.41 0.036018 0.0324296 78 111 0 0 124 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_040.v common 8.70 vpr 65.94 MiB 0.02 7360 -1 -1 1 0.04 -1 -1 33980 -1 -1 13 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67520 31 32 413 333 1 182 76 17 17 289 -1 unnamed_device 27.2 MiB 1.74 735 13196 5631 6832 733 65.9 MiB 0.12 0.00 3.72384 -110.565 -3.72384 3.72384 1.12 0.000580366 0.000522424 0.0537339 0.0489026 46 2644 31 6.95648e+06 188184 828058. 2865.25 3.18 0.209437 0.183436 28066 200906 -1 1717 23 1457 2265 158245 37932 3.90056 3.90056 -137.586 -3.90056 0 0 1.01997e+06 3529.29 0.44 0.08 0.20 -1 -1 0.44 0.0327467 0.0291003 76 86 31 31 89 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_041.v common 11.96 vpr 65.87 MiB 0.03 7440 -1 -1 1 0.04 -1 -1 34080 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67448 31 32 391 309 1 185 88 17 17 289 -1 unnamed_device 27.2 MiB 0.84 871 15493 4407 9000 2086 65.9 MiB 0.13 0.00 2.6273 -95.9663 -2.6273 2.6273 1.08 0.000528312 0.000481158 0.051397 0.0467376 36 2866 50 6.95648e+06 361892 648988. 2245.63 7.47 0.227732 0.199882 26050 158493 -1 2222 25 1902 2882 287918 64014 3.64617 3.64617 -127.83 -3.64617 0 0 828058. 2865.25 0.37 0.11 0.15 -1 -1 0.37 0.03462 0.03074 85 58 60 31 62 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_042.v common 8.62 vpr 66.00 MiB 0.03 7152 -1 -1 1 0.04 -1 -1 34356 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67580 32 32 407 319 1 190 90 17 17 289 -1 unnamed_device 27.2 MiB 0.50 764 11547 4368 5758 1421 66.0 MiB 0.09 0.00 3.16669 -114.068 -3.16669 3.16669 1.11 0.000563266 0.000508544 0.0359361 0.0327021 48 2634 33 6.95648e+06 376368 865456. 2994.66 4.24 0.203287 0.179155 28354 207349 -1 2035 28 2223 3436 391910 103442 4.36886 4.36886 -157.384 -4.36886 0 0 1.05005e+06 3633.38 0.48 0.15 0.21 -1 -1 0.48 0.0415946 0.0370533 86 42 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_043.v common 28.59 vpr 65.93 MiB 0.03 7496 -1 -1 1 0.04 -1 -1 33952 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67508 32 32 496 380 1 222 95 17 17 289 -1 unnamed_device 27.6 MiB 1.07 1064 13055 3624 7275 2156 65.9 MiB 0.12 0.00 3.32935 -122.578 -3.32935 3.32935 1.09 0.00067496 0.00061301 0.0473366 0.043198 42 3334 34 6.95648e+06 448746 744469. 2576.02 23.78 0.388639 0.338677 27202 183097 -1 2601 23 2225 3354 311735 62698 4.15561 4.15561 -155.747 -4.15561 0 0 949917. 3286.91 0.42 0.12 0.18 -1 -1 0.42 0.0406139 0.0363956 104 91 62 32 96 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_044.v common 7.06 vpr 65.46 MiB 0.02 7240 -1 -1 1 0.04 -1 -1 33992 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67028 31 32 305 250 1 152 74 17 17 289 -1 unnamed_device 26.7 MiB 0.67 824 9064 3727 5107 230 65.5 MiB 0.07 0.00 2.84796 -103.992 -2.84796 2.84796 1.06 0.000444585 0.000404106 0.0299478 0.0273782 36 2228 31 6.95648e+06 159232 648988. 2245.63 2.89 0.132696 0.116644 26050 158493 -1 1865 21 1387 1937 183808 37291 3.43957 3.43957 -133.223 -3.43957 0 0 828058. 2865.25 0.40 0.09 0.16 -1 -1 0.40 0.0296629 0.0267562 62 24 62 31 31 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_045.v common 11.68 vpr 65.92 MiB 0.03 7344 -1 -1 1 0.04 -1 -1 34168 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67504 31 32 395 311 1 188 90 17 17 289 -1 unnamed_device 27.2 MiB 0.65 760 12954 5330 6993 631 65.9 MiB 0.11 0.00 3.5328 -117.17 -3.5328 3.5328 1.11 0.000615359 0.000564978 0.0443054 0.0404815 60 2024 24 6.95648e+06 390843 1.01997e+06 3529.29 7.08 0.297678 0.260366 30658 258169 -1 1641 22 1669 2562 199209 42831 3.86582 3.86582 -138.141 -3.86582 0 0 1.27783e+06 4421.56 0.56 0.09 0.27 -1 -1 0.56 0.0315816 0.0281297 86 59 62 31 62 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_046.v common 10.94 vpr 65.50 MiB 0.02 7288 -1 -1 1 0.04 -1 -1 33916 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67068 32 32 397 313 1 188 90 17 17 289 -1 unnamed_device 26.7 MiB 0.83 817 14361 4548 7141 2672 65.5 MiB 0.12 0.00 2.79476 -96.8542 -2.79476 2.79476 1.08 0.000610697 0.000555486 0.0472815 0.0431255 40 2977 47 6.95648e+06 376368 706193. 2443.58 6.44 0.245777 0.217471 26914 176310 -1 2389 23 1812 2964 320058 68438 3.38457 3.38457 -128.639 -3.38457 0 0 926341. 3205.33 0.43 0.12 0.17 -1 -1 0.43 0.0400859 0.0358733 85 54 62 32 62 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_047.v common 30.05 vpr 65.50 MiB 0.03 7188 -1 -1 1 0.04 -1 -1 33604 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67076 32 32 345 257 1 187 77 17 17 289 -1 unnamed_device 27.1 MiB 0.96 780 7901 3204 4446 251 65.5 MiB 0.08 0.00 3.03039 -111.418 -3.03039 3.03039 1.12 0.000543055 0.000493017 0.0315126 0.0287716 40 3444 43 6.95648e+06 188184 706193. 2443.58 25.41 0.365334 0.31972 26914 176310 -1 2698 24 2122 3590 474608 100445 4.70696 4.70696 -171.252 -4.70696 0 0 926341. 3205.33 0.39 0.14 0.16 -1 -1 0.39 0.031999 0.0286477 78 -1 128 32 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_048.v common 9.57 vpr 65.88 MiB 0.02 7244 -1 -1 1 0.04 -1 -1 33852 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67456 32 32 424 343 1 182 87 17 17 289 -1 unnamed_device 27.1 MiB 1.65 707 12567 4353 6177 2037 65.9 MiB 0.10 0.00 2.5503 -92.1642 -2.5503 2.5503 1.11 0.00061069 0.000548092 0.0444416 0.0404394 46 2411 31 6.95648e+06 332941 828058. 2865.25 4.20 0.21056 0.1854 28066 200906 -1 1755 20 1545 2299 165772 38834 3.20437 3.20437 -121.735 -3.20437 0 0 1.01997e+06 3529.29 0.48 0.09 0.19 -1 -1 0.48 0.0364279 0.0327947 81 81 25 25 96 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_049.v common 9.33 vpr 65.82 MiB 0.03 7356 -1 -1 1 0.04 -1 -1 33640 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67400 32 32 395 311 1 186 92 17 17 289 -1 unnamed_device 27.1 MiB 0.90 871 13133 3713 6981 2439 65.8 MiB 0.11 0.00 2.6023 -96.9969 -2.6023 2.6023 1.09 0.000629337 0.000567127 0.0404167 0.0368195 44 2420 24 6.95648e+06 405319 787024. 2723.27 4.67 0.262645 0.228952 27778 195446 -1 1866 21 1452 2261 151568 32846 3.09187 3.09187 -118.51 -3.09187 0 0 997811. 3452.63 0.47 0.08 0.20 -1 -1 0.47 0.0344349 0.0310405 85 58 64 32 60 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_050.v common 7.90 vpr 66.08 MiB 0.03 7116 -1 -1 1 0.04 -1 -1 34052 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67668 32 32 405 318 1 192 92 17 17 289 -1 unnamed_device 27.3 MiB 0.54 828 15410 5283 8174 1953 66.1 MiB 0.12 0.00 2.6646 -97.6585 -2.6646 2.6646 1.12 0.000632768 0.000574774 0.0469469 0.0426805 44 2775 50 6.95648e+06 405319 787024. 2723.27 3.60 0.21015 0.185055 27778 195446 -1 2040 24 2017 2965 224263 50374 3.15417 3.15417 -128.238 -3.15417 0 0 997811. 3452.63 0.44 0.10 0.20 -1 -1 0.44 0.0371865 0.0331172 88 61 63 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_051.v common 7.90 vpr 65.54 MiB 0.02 7300 -1 -1 1 0.04 -1 -1 34140 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67108 32 32 376 288 1 186 92 17 17 289 -1 unnamed_device 27.0 MiB 0.68 813 16238 5039 9230 1969 65.5 MiB 0.14 0.00 3.16669 -113.478 -3.16669 3.16669 1.09 0.000555906 0.000505627 0.0490781 0.04467 46 2389 48 6.95648e+06 405319 828058. 2865.25 3.42 0.214007 0.18748 28066 200906 -1 1869 23 2204 3570 237591 53898 4.01016 4.01016 -149.275 -4.01016 0 0 1.01997e+06 3529.29 0.45 0.10 0.20 -1 -1 0.45 0.03178 0.0281378 85 21 96 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_052.v common 7.61 vpr 65.96 MiB 0.02 7236 -1 -1 1 0.04 -1 -1 34276 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67548 32 32 407 319 1 189 94 17 17 289 -1 unnamed_device 27.2 MiB 1.00 857 12235 3021 7796 1418 66.0 MiB 0.11 0.00 3.08969 -114.316 -3.08969 3.08969 1.14 0.000617585 0.00055791 0.0387501 0.0351573 38 2746 27 6.95648e+06 434271 678818. 2348.85 2.82 0.168251 0.147899 26626 170182 -1 2095 24 2173 3094 264576 54871 4.04606 4.04606 -150.57 -4.04606 0 0 902133. 3121.57 0.39 0.11 0.17 -1 -1 0.39 0.0350443 0.0311908 88 50 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_053.v common 10.47 vpr 65.78 MiB 0.03 7368 -1 -1 1 0.04 -1 -1 34208 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67360 31 32 449 367 1 185 88 17 17 289 -1 unnamed_device 27.5 MiB 1.32 967 10813 4019 5155 1639 65.8 MiB 0.10 0.00 3.56395 -115.065 -3.56395 3.56395 1.09 0.000676613 0.000615289 0.0400307 0.0363667 44 3051 26 6.95648e+06 361892 787024. 2723.27 5.50 0.262619 0.228301 27778 195446 -1 2346 21 1529 2523 211630 42966 4.22302 4.22302 -144.922 -4.22302 0 0 997811. 3452.63 0.43 0.09 0.20 -1 -1 0.43 0.0313411 0.0278152 84 110 0 0 122 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_054.v common 8.35 vpr 66.04 MiB 0.02 7520 -1 -1 1 0.04 -1 -1 34136 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67620 32 32 432 346 1 187 77 17 17 289 -1 unnamed_device 27.2 MiB 1.07 873 11487 4789 6360 338 66.0 MiB 0.10 0.00 3.08604 -106.745 -3.08604 3.08604 1.06 0.000621532 0.000535758 0.0458704 0.0415419 44 3166 45 6.95648e+06 188184 787024. 2723.27 3.60 0.243726 0.21527 27778 195446 -1 2282 33 2654 4586 343904 74964 4.22306 4.22306 -145.525 -4.22306 0 0 997811. 3452.63 0.47 0.15 0.18 -1 -1 0.47 0.050542 0.0450713 78 86 32 32 94 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_055.v common 8.74 vpr 65.31 MiB 0.02 6968 -1 -1 1 0.03 -1 -1 34152 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66880 32 32 312 255 1 160 87 17 17 289 -1 unnamed_device 26.9 MiB 0.17 664 11223 4561 6257 405 65.3 MiB 0.08 0.00 2.6834 -96.1081 -2.6834 2.6834 1.08 0.000474244 0.000432352 0.030879 0.0279482 40 2362 30 6.95648e+06 332941 706193. 2443.58 4.95 0.178363 0.157768 26914 176310 -1 1785 26 1499 2368 344873 98672 3.36747 3.36747 -127.407 -3.36747 0 0 926341. 3205.33 0.42 0.13 0.17 -1 -1 0.42 0.0339263 0.0303009 71 20 63 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_056.v common 10.37 vpr 65.13 MiB 0.02 6988 -1 -1 1 0.04 -1 -1 33740 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 32 32 370 314 1 158 74 17 17 289 -1 unnamed_device 26.6 MiB 1.10 588 8754 3219 4446 1089 65.1 MiB 0.07 0.00 2.5393 -92.4485 -2.5393 2.5393 1.09 0.000511537 0.000466049 0.032262 0.0293398 46 1984 21 6.95648e+06 144757 828058. 2865.25 5.63 0.23358 0.202679 28066 200906 -1 1631 21 1325 1947 165320 36910 3.02262 3.02262 -118.819 -3.02262 0 0 1.01997e+06 3529.29 0.48 0.08 0.19 -1 -1 0.48 0.0313556 0.0281273 63 91 0 0 94 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_057.v common 10.72 vpr 66.03 MiB 0.03 7364 -1 -1 1 0.04 -1 -1 34176 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67616 32 32 469 351 1 223 94 17 17 289 -1 unnamed_device 27.6 MiB 0.58 1063 13087 4539 7275 1273 66.0 MiB 0.11 0.00 3.77644 -134.137 -3.77644 3.77644 0.99 0.000629147 0.000577945 0.0423675 0.0386264 48 3134 27 6.95648e+06 434271 865456. 2994.66 6.49 0.305274 0.26641 28354 207349 -1 2519 26 2872 4540 417824 87994 5.50441 5.50441 -182.508 -5.50441 0 0 1.05005e+06 3633.38 0.45 0.14 0.21 -1 -1 0.45 0.040396 0.0358867 103 53 96 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_058.v common 6.85 vpr 65.81 MiB 0.02 7336 -1 -1 1 0.04 -1 -1 34076 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67392 32 32 368 284 1 186 88 17 17 289 -1 unnamed_device 27.1 MiB 0.91 748 12178 4107 6527 1544 65.8 MiB 0.10 0.00 2.6445 -97.9601 -2.6445 2.6445 1.04 0.000585692 0.000533091 0.0376485 0.0343354 44 2081 27 6.95648e+06 347416 787024. 2723.27 2.39 0.172828 0.151222 27778 195446 -1 1597 21 1464 1866 130220 29190 3.00877 3.00877 -118.964 -3.00877 0 0 997811. 3452.63 0.44 0.07 0.19 -1 -1 0.44 0.0308115 0.0273968 83 31 92 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_059.v common 8.43 vpr 65.22 MiB 0.02 7108 -1 -1 1 0.04 -1 -1 33624 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66784 30 32 296 244 1 152 81 17 17 289 -1 unnamed_device 26.7 MiB 0.36 564 11631 4825 6255 551 65.2 MiB 0.08 0.00 2.6426 -90.0278 -2.6426 2.6426 1.00 0.000436111 0.000393352 0.0318796 0.0290578 40 2105 26 6.95648e+06 275038 706193. 2443.58 4.65 0.196336 0.170468 26914 176310 -1 1738 20 1267 1786 169824 37570 3.34357 3.34357 -119.487 -3.34357 0 0 926341. 3205.33 0.41 0.07 0.18 -1 -1 0.41 0.0250517 0.0223741 65 29 60 30 30 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_060.v common 10.84 vpr 65.86 MiB 0.03 7532 -1 -1 1 0.04 -1 -1 34580 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67444 32 32 531 413 1 225 95 17 17 289 -1 unnamed_device 27.5 MiB 1.81 1039 14351 3487 9050 1814 65.9 MiB 0.13 0.00 3.74344 -131.999 -3.74344 3.74344 1.03 0.000679284 0.000611699 0.0507723 0.0460925 46 3011 43 6.95648e+06 448746 828058. 2865.25 5.32 0.246455 0.216063 28066 200906 -1 2329 23 2691 4022 286590 59355 4.76651 4.76651 -170.846 -4.76651 0 0 1.01997e+06 3529.29 0.44 0.12 0.20 -1 -1 0.44 0.0419406 0.0372244 103 109 32 32 128 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_061.v common 8.12 vpr 65.79 MiB 0.02 7208 -1 -1 1 0.04 -1 -1 34080 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67368 32 32 376 288 1 187 92 17 17 289 -1 unnamed_device 27.1 MiB 1.07 840 15617 4919 8071 2627 65.8 MiB 0.11 0.00 3.18389 -115.688 -3.18389 3.18389 1.03 0.00056164 0.000509606 0.0416607 0.0380443 40 2540 41 6.95648e+06 405319 706193. 2443.58 3.57 0.201299 0.177965 26914 176310 -1 2106 20 1923 2654 260397 55904 4.10426 4.10426 -153.139 -4.10426 0 0 926341. 3205.33 0.39 0.10 0.17 -1 -1 0.39 0.0301407 0.0269725 86 31 96 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_062.v common 10.67 vpr 65.04 MiB 0.02 6992 -1 -1 1 0.03 -1 -1 33936 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 32 32 283 225 1 158 88 17 17 289 -1 unnamed_device 26.4 MiB 0.31 588 14128 4609 6783 2736 65.0 MiB 0.10 0.00 2.45795 -91.5353 -2.45795 2.45795 1.08 0.00048448 0.000441849 0.036058 0.0327715 54 1782 37 6.95648e+06 347416 949917. 3286.91 6.64 0.242796 0.211859 29506 232905 -1 1384 21 1397 2159 203020 59417 3.00252 3.00252 -114.09 -3.00252 0 0 1.17392e+06 4061.99 0.52 0.08 0.23 -1 -1 0.52 0.0238728 0.0211768 70 -1 96 32 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_063.v common 7.70 vpr 65.67 MiB 0.03 7268 -1 -1 1 0.04 -1 -1 34468 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67248 32 32 438 320 1 225 95 17 17 289 -1 unnamed_device 27.3 MiB 0.49 952 14999 3951 8768 2280 65.7 MiB 0.14 0.00 3.77644 -131.905 -3.77644 3.77644 1.09 0.000722819 0.000658285 0.0510565 0.0466377 46 3165 31 6.95648e+06 448746 828058. 2865.25 3.47 0.196289 0.174052 28066 200906 -1 2489 23 2666 4249 374005 75777 5.68161 5.68161 -182.324 -5.68161 0 0 1.01997e+06 3529.29 0.43 0.13 0.19 -1 -1 0.43 0.0367982 0.0329925 105 26 128 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_064.v common 8.69 vpr 65.17 MiB 0.02 7144 -1 -1 1 0.03 -1 -1 33700 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66736 32 32 283 225 1 156 74 17 17 289 -1 unnamed_device 26.7 MiB 0.38 773 9994 4157 5636 201 65.2 MiB 0.08 0.00 2.42065 -97.1473 -2.42065 2.42065 1.10 0.000480644 0.000441418 0.033547 0.0306182 40 2119 21 6.95648e+06 144757 706193. 2443.58 4.78 0.198145 0.173313 26914 176310 -1 1864 19 1429 1972 186612 40695 3.37972 3.37972 -130.49 -3.37972 0 0 926341. 3205.33 0.39 0.07 0.17 -1 -1 0.39 0.0223212 0.0199262 62 -1 96 32 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_065.v common 6.84 vpr 64.97 MiB 0.03 7236 -1 -1 1 0.03 -1 -1 34004 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66532 30 32 296 244 1 151 83 17 17 289 -1 unnamed_device 26.4 MiB 0.81 699 13043 5450 7041 552 65.0 MiB 0.09 0.00 2.5833 -90.0474 -2.5833 2.5833 1.02 0.000447709 0.000407287 0.0353067 0.0321338 44 1984 50 6.95648e+06 303989 787024. 2723.27 2.59 0.144599 0.126637 27778 195446 -1 1470 18 999 1513 114973 25730 3.14982 3.14982 -115.49 -3.14982 0 0 997811. 3452.63 0.41 0.06 0.19 -1 -1 0.41 0.0208959 0.0186547 65 29 60 30 30 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_066.v common 9.97 vpr 65.73 MiB 0.03 7312 -1 -1 1 0.04 -1 -1 33832 -1 -1 20 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67304 29 32 393 319 1 174 81 17 17 289 -1 unnamed_device 27.0 MiB 1.39 782 13206 5571 7050 585 65.7 MiB 0.11 0.00 2.81496 -90.9115 -2.81496 2.81496 1.04 0.000534216 0.000485486 0.0453048 0.0413214 40 2625 27 6.95648e+06 289514 706193. 2443.58 5.05 0.25451 0.221511 26914 176310 -1 2198 20 1647 2611 263584 60144 3.92492 3.92492 -121.64 -3.92492 0 0 926341. 3205.33 0.40 0.10 0.17 -1 -1 0.40 0.030163 0.0270584 77 81 29 29 85 29 -fixed_k6_frac_2ripple_N8_22nm.xml mult_067.v common 7.76 vpr 65.92 MiB 0.02 7364 -1 -1 1 0.04 -1 -1 34216 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67500 32 32 407 319 1 186 77 17 17 289 -1 unnamed_device 27.2 MiB 0.94 711 12139 5145 6560 434 65.9 MiB 0.10 0.00 3.15569 -115.348 -3.15569 3.15569 1.06 0.000619607 0.000559457 0.0459775 0.0418639 44 2597 44 6.95648e+06 188184 787024. 2723.27 3.12 0.210991 0.184229 27778 195446 -1 2006 65 3642 5280 620131 134047 4.65056 4.65056 -167.607 -4.65056 0 0 997811. 3452.63 0.42 0.24 0.19 -1 -1 0.42 0.0779485 0.0680837 78 53 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_068.v common 12.34 vpr 65.77 MiB 0.02 7136 -1 -1 1 0.04 -1 -1 34308 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67348 32 32 407 319 1 190 89 17 17 289 -1 unnamed_device 27.1 MiB 1.50 793 15335 6381 8326 628 65.8 MiB 0.13 0.00 3.12869 -112.99 -3.12869 3.12869 1.05 0.000535477 0.000480847 0.0512728 0.0462774 56 2323 27 6.95648e+06 361892 973134. 3367.25 7.04 0.333939 0.292228 29794 239141 -1 2016 20 1792 2781 321147 67854 4.07906 4.07906 -151.477 -4.07906 0 0 1.19926e+06 4149.71 0.53 0.11 0.24 -1 -1 0.53 0.0304747 0.0273337 85 55 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_069.v common 7.86 vpr 65.48 MiB 0.02 7080 -1 -1 1 0.03 -1 -1 34208 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67056 32 32 345 287 1 155 88 17 17 289 -1 unnamed_device 26.9 MiB 1.05 569 10423 3224 5113 2086 65.5 MiB 0.07 0.00 2.50195 -92.4518 -2.50195 2.50195 1.01 0.000474118 0.000433761 0.0288922 0.0262592 56 1624 26 6.95648e+06 347416 973134. 3367.25 3.24 0.155266 0.13641 29794 239141 -1 1436 26 1447 2234 285733 84961 3.22192 3.22192 -117.216 -3.22192 0 0 1.19926e+06 4149.71 0.49 0.12 0.22 -1 -1 0.49 0.0340491 0.0301926 69 55 32 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_070.v common 7.64 vpr 65.28 MiB 0.02 7384 -1 -1 1 0.04 -1 -1 33808 -1 -1 10 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66848 31 32 353 302 1 147 73 17 17 289 -1 unnamed_device 26.8 MiB 1.54 555 10865 4566 5787 512 65.3 MiB 0.08 0.00 2.80096 -90.6898 -2.80096 2.80096 1.09 0.000475155 0.000432842 0.0391936 0.0356643 42 2098 48 6.95648e+06 144757 744469. 2576.02 2.54 0.180042 0.157889 27202 183097 -1 1406 30 1593 2455 193405 46001 3.09327 3.09327 -113.851 -3.09327 0 0 949917. 3286.91 0.40 0.09 0.18 -1 -1 0.40 0.0336457 0.029522 59 82 0 0 89 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_071.v common 10.10 vpr 65.40 MiB 0.02 7308 -1 -1 1 0.04 -1 -1 34124 -1 -1 22 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66972 30 32 374 297 1 178 84 17 17 289 -1 unnamed_device 27.0 MiB 1.01 748 12711 5302 6912 497 65.4 MiB 0.11 0.00 2.6866 -93.5828 -2.6866 2.6866 1.05 0.0005527 0.000501421 0.0411185 0.0374468 44 2108 22 6.95648e+06 318465 787024. 2723.27 5.47 0.275975 0.240443 27778 195446 -1 1752 22 1532 2288 178645 39058 2.97277 2.97277 -112.971 -2.97277 0 0 997811. 3452.63 0.44 0.08 0.19 -1 -1 0.44 0.0286665 0.0254087 79 52 60 30 57 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_072.v common 9.80 vpr 65.30 MiB 0.03 7296 -1 -1 1 0.04 -1 -1 33912 -1 -1 16 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66864 28 32 332 260 1 172 76 17 17 289 -1 unnamed_device 26.7 MiB 0.97 688 10156 4307 5315 534 65.3 MiB 0.08 0.00 3.68925 -107.014 -3.68925 3.68925 1.05 0.000504682 0.000458725 0.0348082 0.0318145 38 2705 33 6.95648e+06 231611 678818. 2348.85 5.40 0.166742 0.145614 26626 170182 -1 1955 22 1809 2648 219345 47320 4.13356 4.13356 -136.539 -4.13356 0 0 902133. 3121.57 0.39 0.09 0.17 -1 -1 0.39 0.029943 0.0268264 74 20 84 28 28 28 -fixed_k6_frac_2ripple_N8_22nm.xml mult_073.v common 7.07 vpr 65.36 MiB 0.02 7188 -1 -1 1 0.04 -1 -1 34188 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66932 30 32 325 273 1 151 74 17 17 289 -1 unnamed_device 26.8 MiB 0.85 595 9994 4251 5320 423 65.4 MiB 0.08 0.00 2.5905 -90.2125 -2.5905 2.5905 1.04 0.000479757 0.000435138 0.0338888 0.0309095 44 1958 46 6.95648e+06 173708 787024. 2723.27 2.74 0.145669 0.127509 27778 195446 -1 1325 21 1325 1775 143647 32202 3.22147 3.22147 -111.661 -3.22147 0 0 997811. 3452.63 0.42 0.07 0.19 -1 -1 0.42 0.0252643 0.0223687 61 58 30 30 60 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_074.v common 10.25 vpr 65.57 MiB 0.02 7184 -1 -1 1 0.04 -1 -1 33600 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67144 32 32 361 308 1 152 74 17 17 289 -1 unnamed_device 26.6 MiB 1.26 647 10149 4231 5612 306 65.6 MiB 0.08 0.00 2.5753 -88.177 -2.5753 2.5753 1.03 0.000484351 0.000435447 0.0367797 0.0334374 46 2123 39 6.95648e+06 144757 828058. 2865.25 5.52 0.239797 0.208147 28066 200906 -1 1678 21 1194 1864 158075 36900 3.37852 3.37852 -120.79 -3.37852 0 0 1.01997e+06 3529.29 0.43 0.07 0.19 -1 -1 0.43 0.0253892 0.0224404 60 88 0 0 91 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_075.v common 7.17 vpr 65.14 MiB 0.02 7200 -1 -1 1 0.04 -1 -1 34160 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66708 31 32 335 251 1 188 88 17 17 289 -1 unnamed_device 26.8 MiB 0.17 774 10228 3094 4923 2211 65.1 MiB 0.08 0.00 3.37335 -115.517 -3.37335 3.37335 1.07 0.000510933 0.000467666 0.0302481 0.0276413 56 2213 26 6.95648e+06 361892 973134. 3367.25 3.32 0.161848 0.142027 29794 239141 -1 1922 23 1821 2754 260744 61348 4.16842 4.16842 -148.657 -4.16842 0 0 1.19926e+06 4149.71 0.51 0.10 0.24 -1 -1 0.51 0.0301187 0.0268625 86 -1 124 31 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_076.v common 12.94 vpr 65.97 MiB 0.03 7192 -1 -1 1 0.04 -1 -1 34276 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67556 32 32 407 319 1 189 91 17 17 289 -1 unnamed_device 27.2 MiB 1.23 961 16819 4927 9815 2077 66.0 MiB 0.14 0.00 3.15569 -119.151 -3.15569 3.15569 1.04 0.000541475 0.000490249 0.0519406 0.0471458 38 3441 45 6.95648e+06 390843 678818. 2348.85 8.16 0.218779 0.191441 26626 170182 -1 2469 21 1899 3168 295090 59311 4.35786 4.35786 -157.826 -4.35786 0 0 902133. 3121.57 0.40 0.11 0.17 -1 -1 0.40 0.033316 0.0298987 86 57 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_077.v common 10.59 vpr 65.84 MiB 0.02 7408 -1 -1 1 0.04 -1 -1 34040 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67424 32 32 407 319 1 187 90 17 17 289 -1 unnamed_device 27.1 MiB 1.47 851 10542 3742 5215 1585 65.8 MiB 0.08 0.00 3.18689 -113.996 -3.18689 3.18689 0.99 0.000569406 0.000513714 0.031537 0.0288129 54 2502 23 6.95648e+06 376368 949917. 3286.91 5.51 0.249631 0.219797 29506 232905 -1 1924 22 1796 2845 237279 50005 4.06506 4.06506 -148.979 -4.06506 0 0 1.17392e+06 4061.99 0.50 0.10 0.23 -1 -1 0.50 0.0339817 0.0304862 85 62 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_078.v common 9.30 vpr 65.91 MiB 0.02 7416 -1 -1 1 0.04 -1 -1 34124 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67492 32 32 399 315 1 188 91 17 17 289 -1 unnamed_device 27.2 MiB 1.00 810 15187 5773 7385 2029 65.9 MiB 0.11 0.00 3.23634 -109.476 -3.23634 3.23634 1.04 0.000549359 0.000498299 0.0449251 0.0408531 48 2565 42 6.95648e+06 390843 865456. 2994.66 4.68 0.201953 0.176777 28354 207349 -1 2137 24 1796 2972 316507 71861 4.07146 4.07146 -145.248 -4.07146 0 0 1.05005e+06 3633.38 0.45 0.11 0.20 -1 -1 0.45 0.0333783 0.0296499 86 62 60 30 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_079.v common 7.52 vpr 64.90 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 33760 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 30 32 296 244 1 150 74 17 17 289 -1 unnamed_device 26.4 MiB 0.77 601 8134 2712 3908 1514 64.9 MiB 0.06 0.00 2.79296 -91.0963 -2.79296 2.79296 1.02 0.000464823 0.000422942 0.0264621 0.0241812 52 1829 41 6.95648e+06 173708 926341. 3205.33 3.17 0.152393 0.132827 29218 227130 -1 1253 21 1151 1808 138074 33918 3.01162 3.01162 -104.236 -3.01162 0 0 1.14541e+06 3963.36 0.50 0.07 0.22 -1 -1 0.50 0.0251753 0.0225632 62 29 60 30 30 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_080.v common 9.44 vpr 65.89 MiB 0.02 7428 -1 -1 1 0.04 -1 -1 33776 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67476 30 32 383 303 1 183 77 17 17 289 -1 unnamed_device 27.2 MiB 0.78 700 11650 4869 6257 524 65.9 MiB 0.10 0.00 3.3885 -110.958 -3.3885 3.3885 1.07 0.000524996 0.000477235 0.0432039 0.0393803 40 2471 26 6.95648e+06 217135 706193. 2443.58 5.13 0.267433 0.233809 26914 176310 -1 2034 21 1963 2694 228996 52216 4.29372 4.29372 -155.149 -4.29372 0 0 926341. 3205.33 0.38 0.09 0.17 -1 -1 0.38 0.0307772 0.027569 78 58 60 30 60 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_081.v common 8.56 vpr 66.10 MiB 0.02 7372 -1 -1 1 0.04 -1 -1 34244 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67688 32 32 469 381 1 190 95 17 17 289 -1 unnamed_device 27.5 MiB 1.45 903 14783 5997 8201 585 66.1 MiB 0.12 0.00 3.17289 -116.806 -3.17289 3.17289 1.07 0.000603258 0.000546286 0.0455695 0.0413509 42 3015 45 6.95648e+06 448746 744469. 2576.02 3.41 0.207083 0.181156 27202 183097 -1 2240 28 2399 3820 466313 117974 3.95196 3.95196 -153.607 -3.95196 0 0 949917. 3286.91 0.42 0.16 0.17 -1 -1 0.42 0.0421781 0.0375588 88 106 0 0 128 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_082.v common 8.01 vpr 65.88 MiB 0.02 7320 -1 -1 1 0.04 -1 -1 34032 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67456 31 32 425 341 1 182 85 17 17 289 -1 unnamed_device 27.1 MiB 1.03 792 13291 5546 7076 669 65.9 MiB 0.11 0.00 3.3683 -112.062 -3.3683 3.3683 1.06 0.000669853 0.000595314 0.0466343 0.0425786 46 2514 38 6.95648e+06 318465 828058. 2865.25 3.35 0.229945 0.203928 28066 200906 -1 1835 30 2098 3158 309149 89348 3.98312 3.98312 -143.446 -3.98312 0 0 1.01997e+06 3529.29 0.44 0.13 0.18 -1 -1 0.44 0.043776 0.0390023 81 79 31 31 93 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_083.v common 9.40 vpr 65.91 MiB 0.02 7324 -1 -1 1 0.04 -1 -1 34148 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67488 30 32 404 328 1 173 80 17 17 289 -1 unnamed_device 27.2 MiB 1.74 832 14184 6082 7610 492 65.9 MiB 0.12 0.00 2.82586 -96.8802 -2.82586 2.82586 1.08 0.00059012 0.000538677 0.0532913 0.0487149 38 2627 48 6.95648e+06 260562 678818. 2348.85 4.13 0.220954 0.193831 26626 170182 -1 2100 19 1552 2321 214080 43859 3.47687 3.47687 -126.49 -3.47687 0 0 902133. 3121.57 0.35 0.08 0.16 -1 -1 0.35 0.0281766 0.0251864 75 83 26 26 90 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_084.v common 12.36 vpr 65.56 MiB 0.03 7092 -1 -1 1 0.04 -1 -1 34132 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67132 32 32 407 319 1 193 77 17 17 289 -1 unnamed_device 26.8 MiB 1.47 790 12954 4592 6250 2112 65.6 MiB 0.11 0.00 3.03339 -110.592 -3.03339 3.03339 1.04 0.000561163 0.000510825 0.0483537 0.0441273 64 2096 22 6.95648e+06 188184 1.08113e+06 3740.92 7.09 0.273284 0.240171 31522 276338 -1 1632 22 1701 2816 221501 51732 3.49906 3.49906 -131.146 -3.49906 0 0 1.36325e+06 4717.13 0.56 0.09 0.27 -1 -1 0.56 0.0333156 0.0299392 81 58 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_085.v common 8.70 vpr 65.73 MiB 0.03 7440 -1 -1 1 0.04 -1 -1 34036 -1 -1 22 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67312 29 32 387 316 1 171 83 17 17 289 -1 unnamed_device 27.1 MiB 1.16 679 10703 3715 4883 2105 65.7 MiB 0.09 0.00 2.6676 -86.1022 -2.6676 2.6676 1.06 0.000570408 0.000518397 0.0350515 0.0319458 38 2352 50 6.95648e+06 318465 678818. 2348.85 4.07 0.190896 0.166401 26626 170182 -1 1603 21 1594 2370 153080 35099 3.06662 3.06662 -110.611 -3.06662 0 0 902133. 3121.57 0.37 0.07 0.16 -1 -1 0.37 0.0277749 0.0246676 77 81 26 26 85 29 -fixed_k6_frac_2ripple_N8_22nm.xml mult_086.v common 7.15 vpr 65.10 MiB 0.02 7040 -1 -1 1 0.03 -1 -1 34072 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 32 32 283 225 1 154 74 17 17 289 -1 unnamed_device 26.6 MiB 1.05 566 10614 4394 5789 431 65.1 MiB 0.08 0.00 2.43165 -92.5942 -2.43165 2.43165 1.02 0.000430722 0.000392202 0.0335164 0.0305701 44 2320 30 6.95648e+06 144757 787024. 2723.27 2.60 0.151327 0.132667 27778 195446 -1 1598 21 1332 2036 173341 40080 3.88442 3.88442 -138.149 -3.88442 0 0 997811. 3452.63 0.45 0.08 0.19 -1 -1 0.45 0.0256662 0.0230459 61 -1 96 32 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_087.v common 11.27 vpr 65.73 MiB 0.02 7156 -1 -1 1 0.04 -1 -1 33784 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67312 32 32 407 319 1 187 88 17 17 289 -1 unnamed_device 27.2 MiB 3.41 1019 14518 6066 8240 212 65.7 MiB 0.13 0.00 3.14769 -120.356 -3.14769 3.14769 1.03 0.000636364 0.000577831 0.0505244 0.0462114 44 2785 31 6.95648e+06 347416 787024. 2723.27 4.19 0.20898 0.184182 27778 195446 -1 2266 23 1968 2979 270429 52244 3.98196 3.98196 -151.285 -3.98196 0 0 997811. 3452.63 0.46 0.10 0.19 -1 -1 0.46 0.034982 0.0314182 84 62 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_088.v common 7.08 vpr 65.88 MiB 0.03 7396 -1 -1 1 0.04 -1 -1 33804 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67464 32 32 407 319 1 193 77 17 17 289 -1 unnamed_device 27.2 MiB 0.61 811 14095 6003 7526 566 65.9 MiB 0.12 0.00 3.05859 -113.458 -3.05859 3.05859 1.08 0.000614212 0.000560906 0.0555727 0.0506553 62 2080 34 6.95648e+06 188184 1.05005e+06 3633.38 2.58 0.202006 0.177243 30946 263737 -1 1652 22 1695 2349 178268 40122 4.02116 4.02116 -144.183 -4.02116 0 0 1.30136e+06 4502.97 0.55 0.08 0.27 -1 -1 0.55 0.0300044 0.0266324 81 62 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_089.v common 7.96 vpr 65.04 MiB 0.02 7032 -1 -1 1 0.04 -1 -1 33868 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 32 32 315 267 1 152 75 17 17 289 -1 unnamed_device 26.6 MiB 1.18 621 8765 3043 4406 1316 65.0 MiB 0.07 0.00 2.75376 -89.6353 -2.75376 2.75376 1.07 0.0004788 0.000435623 0.0292779 0.0267705 40 1950 26 6.95648e+06 159232 706193. 2443.58 3.18 0.151141 0.131923 26914 176310 -1 1762 21 1224 1718 184154 45426 3.16523 3.16523 -117.349 -3.16523 0 0 926341. 3205.33 0.40 0.08 0.17 -1 -1 0.40 0.02621 0.0234524 60 47 32 32 54 27 -fixed_k6_frac_2ripple_N8_22nm.xml mult_090.v common 7.54 vpr 65.00 MiB 0.02 7104 -1 -1 1 0.04 -1 -1 33904 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 31 32 275 220 1 154 74 17 17 289 -1 unnamed_device 26.5 MiB 0.30 784 8289 3011 3915 1363 65.0 MiB 0.07 0.00 2.6756 -103.137 -2.6756 2.6756 1.11 0.000417732 0.000380103 0.0269709 0.0246474 36 2288 26 6.95648e+06 159232 648988. 2245.63 3.68 0.144575 0.127406 26050 158493 -1 1937 22 1475 2071 215243 42076 3.13102 3.13102 -129.485 -3.13102 0 0 828058. 2865.25 0.37 0.08 0.15 -1 -1 0.37 0.025897 0.0231239 63 -1 93 31 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_091.v common 7.72 vpr 65.61 MiB 0.02 7400 -1 -1 1 0.04 -1 -1 33640 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67188 32 32 381 303 1 180 83 17 17 289 -1 unnamed_device 27.2 MiB 1.31 731 14303 6027 7760 516 65.6 MiB 0.12 0.00 3.07684 -104.371 -3.07684 3.07684 1.09 0.00057661 0.000528493 0.04946 0.0450842 62 1808 29 6.95648e+06 275038 1.05005e+06 3633.38 2.55 0.184622 0.161955 30946 263737 -1 1406 20 1375 1825 107510 25583 3.53522 3.53522 -122.775 -3.53522 0 0 1.30136e+06 4502.97 0.53 0.06 0.27 -1 -1 0.53 0.0281284 0.0250633 78 56 60 32 58 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_092.v common 24.27 vpr 65.75 MiB 0.03 7468 -1 -1 1 0.04 -1 -1 33832 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67332 32 32 406 330 1 182 82 17 17 289 -1 unnamed_device 27.1 MiB 0.89 805 13254 5121 6485 1648 65.8 MiB 0.11 0.00 3.18505 -105.843 -3.18505 3.18505 1.08 0.000565358 0.000518408 0.0478446 0.0436242 50 2745 40 6.95648e+06 260562 902133. 3121.57 19.63 0.357995 0.312099 28642 213929 -1 2043 29 2028 2933 294097 79430 3.81266 3.81266 -137.322 -3.81266 0 0 1.08113e+06 3740.92 0.47 0.12 0.21 -1 -1 0.47 0.0402937 0.0359617 78 81 28 28 88 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_093.v common 8.60 vpr 65.85 MiB 0.03 7268 -1 -1 1 0.04 -1 -1 33664 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67428 32 32 399 285 1 218 91 17 17 289 -1 unnamed_device 27.3 MiB 0.48 1080 6415 1297 4942 176 65.8 MiB 0.07 0.00 3.73059 -130.235 -3.73059 3.73059 1.08 0.000621191 0.00056572 0.0228523 0.02094 46 3180 23 6.95648e+06 390843 828058. 2865.25 4.37 0.179885 0.158051 28066 200906 -1 2425 24 2060 3395 287049 62118 4.63496 4.63496 -164.809 -4.63496 0 0 1.01997e+06 3529.29 0.46 0.11 0.20 -1 -1 0.46 0.0361948 0.0324808 100 -1 156 32 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_094.v common 11.38 vpr 65.76 MiB 0.03 7268 -1 -1 1 0.04 -1 -1 34172 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67336 30 32 371 295 1 176 80 17 17 289 -1 unnamed_device 27.1 MiB 1.07 723 14872 6482 7565 825 65.8 MiB 0.12 0.00 2.88706 -94.8461 -2.88706 2.88706 1.09 0.000527416 0.000482671 0.0513193 0.0468151 54 1864 27 6.95648e+06 260562 949917. 3286.91 6.53 0.312944 0.275912 29506 232905 -1 1521 23 1483 2095 175431 43661 3.33933 3.33933 -119.369 -3.33933 0 0 1.17392e+06 4061.99 0.51 0.09 0.22 -1 -1 0.51 0.0340594 0.0302721 77 47 60 30 56 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_095.v common 6.28 vpr 65.03 MiB 0.02 7020 -1 -1 1 0.04 -1 -1 34260 -1 -1 15 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 27 32 269 226 1 137 74 17 17 289 -1 unnamed_device 26.6 MiB 0.71 623 9219 3786 4950 483 65.0 MiB 0.07 0.00 2.6742 -84.6424 -2.6742 2.6742 1.11 0.000406002 0.000369628 0.0283107 0.0258618 34 1779 32 6.95648e+06 217135 618332. 2139.56 2.06 0.140618 0.12267 25762 151098 -1 1422 24 1232 1512 147459 30702 3.08562 3.08562 -110.421 -3.08562 0 0 787024. 2723.27 0.36 0.07 0.15 -1 -1 0.36 0.0253458 0.0224499 57 26 54 27 27 27 -fixed_k6_frac_2ripple_N8_22nm.xml mult_096.v common 8.33 vpr 65.66 MiB 0.03 7496 -1 -1 1 0.04 -1 -1 34212 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67240 32 32 493 378 1 222 94 17 17 289 -1 unnamed_device 27.3 MiB 0.75 1081 14791 4931 7536 2324 65.7 MiB 0.14 0.00 3.4105 -116.886 -3.4105 3.4105 1.10 0.000686961 0.000628225 0.0526629 0.0479343 48 3234 32 6.95648e+06 434271 865456. 2994.66 3.63 0.238379 0.21035 28354 207349 -1 2736 29 2719 4707 555096 129534 4.60046 4.60046 -154.534 -4.60046 0 0 1.05005e+06 3633.38 0.48 0.18 0.21 -1 -1 0.48 0.0469503 0.0416876 103 85 62 31 95 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_097.v common 12.11 vpr 65.85 MiB 0.03 7372 -1 -1 1 0.04 -1 -1 34304 -1 -1 14 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67428 31 32 455 371 1 187 77 17 17 289 -1 unnamed_device 27.6 MiB 4.51 686 8716 3535 4672 509 65.8 MiB 0.08 0.00 3.95134 -124.725 -3.95134 3.95134 1.09 0.000641645 0.000587079 0.0374988 0.0341137 50 2150 43 6.95648e+06 202660 902133. 3121.57 3.88 0.210895 0.184193 28642 213929 -1 1704 25 1691 2460 184555 45113 5.19271 5.19271 -160.78 -5.19271 0 0 1.08113e+06 3740.92 0.46 0.09 0.21 -1 -1 0.46 0.0346228 0.0306512 79 105 0 0 124 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_098.v common 10.49 vpr 65.27 MiB 0.02 7072 -1 -1 1 0.04 -1 -1 33604 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 32 32 355 304 1 147 74 17 17 289 -1 unnamed_device 26.5 MiB 3.05 576 11389 4673 6198 518 65.3 MiB 0.09 0.00 2.5155 -87.9453 -2.5155 2.5155 1.09 0.000530187 0.000484283 0.0421556 0.0384071 38 2066 38 6.95648e+06 144757 678818. 2348.85 3.82 0.190593 0.167559 26626 170182 -1 1547 29 1358 2099 203813 58555 3.22022 3.22022 -121.692 -3.22022 0 0 902133. 3121.57 0.38 0.10 0.17 -1 -1 0.38 0.0375374 0.0332318 58 86 0 0 89 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_099.v common 7.94 vpr 65.53 MiB 0.03 7132 -1 -1 1 0.04 -1 -1 33716 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67104 32 32 364 282 1 188 86 17 17 289 -1 unnamed_device 27.1 MiB 0.46 755 11804 3744 5542 2518 65.5 MiB 0.09 0.00 3.4405 -113.598 -3.4405 3.4405 1.06 0.000617399 0.00055572 0.0380027 0.034646 56 2354 42 6.95648e+06 318465 973134. 3367.25 3.70 0.20072 0.176436 29794 239141 -1 1672 22 1713 2531 202771 48499 3.93802 3.93802 -139.284 -3.93802 0 0 1.19926e+06 4149.71 0.54 0.09 0.24 -1 -1 0.54 0.0328611 0.0294505 83 31 90 30 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_100.v common 7.29 vpr 66.04 MiB 0.03 7560 -1 -1 1 0.04 -1 -1 34308 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67620 31 32 443 336 1 210 86 17 17 289 -1 unnamed_device 27.5 MiB 0.94 970 14261 5148 6994 2119 66.0 MiB 0.12 0.00 3.4515 -119.337 -3.4515 3.4515 1.09 0.000596381 0.000535099 0.051648 0.0470964 38 3279 36 6.95648e+06 332941 678818. 2348.85 2.67 0.214988 0.190929 26626 170182 -1 2244 24 2097 2878 237031 57400 4.44222 4.44222 -152.399 -4.44222 0 0 902133. 3121.57 0.40 0.12 0.16 -1 -1 0.40 0.0421019 0.0377838 95 50 87 31 62 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_101.v common 7.96 vpr 65.38 MiB 0.02 7280 -1 -1 1 0.04 -1 -1 33892 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66948 30 32 373 297 1 178 82 17 17 289 -1 unnamed_device 26.9 MiB 1.07 829 11830 4278 5421 2131 65.4 MiB 0.10 0.00 2.77276 -89.8261 -2.77276 2.77276 1.09 0.000561556 0.000512641 0.0412705 0.0377051 44 2693 27 6.95648e+06 289514 787024. 2723.27 3.18 0.186557 0.163748 27778 195446 -1 1902 24 1416 2340 174882 39399 3.11197 3.11197 -115.183 -3.11197 0 0 997811. 3452.63 0.44 0.09 0.20 -1 -1 0.44 0.035695 0.0318755 78 50 58 30 58 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_102.v common 9.00 vpr 65.86 MiB 0.02 7188 -1 -1 1 0.04 -1 -1 34004 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67436 32 32 407 319 1 193 98 17 17 289 -1 unnamed_device 27.2 MiB 0.50 875 18548 7349 9049 2150 65.9 MiB 0.15 0.00 3.16669 -115.498 -3.16669 3.16669 1.12 0.000617186 0.000561078 0.0555669 0.0506661 40 2487 40 6.95648e+06 492173 706193. 2443.58 4.67 0.231739 0.204796 26914 176310 -1 2164 21 2019 2936 271886 56177 4.11646 4.11646 -152.115 -4.11646 0 0 926341. 3205.33 0.42 0.11 0.18 -1 -1 0.42 0.0349894 0.0314502 91 61 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_103.v common 9.27 vpr 65.83 MiB 0.02 7416 -1 -1 1 0.04 -1 -1 34032 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67408 32 32 405 318 1 192 95 17 17 289 -1 unnamed_device 27.0 MiB 0.51 929 17375 5846 8775 2754 65.8 MiB 0.14 0.00 2.5393 -97.1379 -2.5393 2.5393 1.09 0.000558393 0.000505146 0.05226 0.0474813 38 2468 26 6.95648e+06 448746 678818. 2348.85 5.10 0.288863 0.250974 26626 170182 -1 1960 23 1591 2169 168115 35867 3.23592 3.23592 -127.334 -3.23592 0 0 902133. 3121.57 0.39 0.08 0.17 -1 -1 0.39 0.032999 0.0293396 90 61 63 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_104.v common 9.80 vpr 65.12 MiB 0.02 7272 -1 -1 1 0.04 -1 -1 33736 -1 -1 13 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 29 32 287 238 1 136 74 17 17 289 -1 unnamed_device 26.7 MiB 4.47 545 8599 3140 3474 1985 65.1 MiB 0.06 0.00 2.67856 -84.8689 -2.67856 2.67856 1.08 0.000404731 0.000367689 0.0274276 0.0250408 34 1575 49 6.95648e+06 188184 618332. 2139.56 1.86 0.161173 0.140759 25762 151098 -1 1361 19 1053 1300 109177 24008 3.08397 3.08397 -113.035 -3.08397 0 0 787024. 2723.27 0.36 0.06 0.15 -1 -1 0.36 0.0238542 0.0213023 56 28 58 29 29 29 -fixed_k6_frac_2ripple_N8_22nm.xml mult_105.v common 7.06 vpr 65.42 MiB 0.02 7300 -1 -1 1 0.04 -1 -1 33868 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66992 32 32 334 290 1 148 74 17 17 289 -1 unnamed_device 26.7 MiB 0.91 609 10459 4536 5667 256 65.4 MiB 0.08 0.00 2.4623 -84.442 -2.4623 2.4623 1.08 0.000451957 0.000409014 0.0375623 0.0341726 38 1826 28 6.95648e+06 144757 678818. 2348.85 2.62 0.16911 0.147945 26626 170182 -1 1367 24 1149 1450 126186 27944 3.13412 3.13412 -107.905 -3.13412 0 0 902133. 3121.57 0.40 0.07 0.17 -1 -1 0.40 0.0261035 0.0230743 58 79 0 0 82 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_106.v common 9.80 vpr 65.75 MiB 0.02 7280 -1 -1 1 0.04 -1 -1 34112 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67324 31 32 365 281 1 188 91 17 17 289 -1 unnamed_device 27.1 MiB 0.46 815 13963 4937 6975 2051 65.7 MiB 0.11 0.00 3.61895 -118.026 -3.61895 3.61895 1.05 0.000532163 0.000482199 0.043434 0.0396158 48 2251 32 6.95648e+06 405319 865456. 2994.66 5.67 0.252538 0.220945 28354 207349 -1 1870 22 1732 2439 215925 47899 4.10726 4.10726 -151.089 -4.10726 0 0 1.05005e+06 3633.38 0.47 0.09 0.20 -1 -1 0.47 0.0320439 0.0285679 86 29 93 31 31 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_107.v common 7.85 vpr 65.09 MiB 0.02 7200 -1 -1 1 0.04 -1 -1 33920 -1 -1 14 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 29 32 297 254 1 144 75 17 17 289 -1 unnamed_device 26.6 MiB 1.27 508 9081 2822 4954 1305 65.1 MiB 0.07 0.00 2.76175 -82.4444 -2.76175 2.76175 1.09 0.000424678 0.00038652 0.0285874 0.0260326 46 1463 33 6.95648e+06 202660 828058. 2865.25 2.99 0.150086 0.130972 28066 200906 -1 1024 19 888 1243 76970 19018 2.82402 2.82402 -97.1374 -2.82402 0 0 1.01997e+06 3529.29 0.43 0.05 0.20 -1 -1 0.43 0.0210175 0.0185542 59 48 29 29 52 26 -fixed_k6_frac_2ripple_N8_22nm.xml mult_108.v common 20.13 vpr 65.22 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 33780 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66784 32 32 314 256 1 154 74 17 17 289 -1 unnamed_device 26.8 MiB 1.07 664 10149 4250 5705 194 65.2 MiB 0.08 0.00 2.55695 -96.556 -2.55695 2.55695 1.07 0.000469869 0.000426018 0.0361623 0.03282 40 1973 43 6.95648e+06 144757 706193. 2443.58 14.93 0.315114 0.274538 26914 176310 -1 1810 61 2474 3867 1955238 903430 3.83572 3.83572 -135.932 -3.83572 0 0 926341. 3205.33 0.41 0.68 0.18 -1 -1 0.41 0.064582 0.0568137 61 31 64 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_109.v common 10.13 vpr 65.38 MiB 0.02 7360 -1 -1 1 0.04 -1 -1 34104 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 31 32 387 307 1 181 87 17 17 289 -1 unnamed_device 26.7 MiB 0.96 707 10839 4390 6036 413 65.4 MiB 0.09 0.00 2.6976 -94.8878 -2.6976 2.6976 1.10 0.000534967 0.000485762 0.0366341 0.0334256 42 2319 50 6.95648e+06 347416 744469. 2576.02 5.53 0.274478 0.238302 27202 183097 -1 1711 20 1710 2265 169420 37740 3.11497 3.11497 -121.214 -3.11497 0 0 949917. 3286.91 0.41 0.08 0.19 -1 -1 0.41 0.0317254 0.0284781 82 60 58 31 62 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_110.v common 11.11 vpr 65.03 MiB 0.02 7284 -1 -1 1 0.03 -1 -1 33980 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 31 32 308 262 1 143 74 17 17 289 -1 unnamed_device 26.5 MiB 2.57 652 12474 3896 7177 1401 65.0 MiB 0.09 0.00 2.71585 -85.7297 -2.71585 2.71585 1.14 0.000446877 0.000404833 0.0418004 0.0381056 38 1818 24 6.95648e+06 159232 678818. 2348.85 4.91 0.24502 0.213908 26626 170182 -1 1492 20 972 1446 101428 23916 2.89452 2.89452 -112.081 -2.89452 0 0 902133. 3121.57 0.37 0.06 0.17 -1 -1 0.37 0.0238752 0.0210857 57 49 31 31 53 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_111.v common 8.49 vpr 65.66 MiB 0.02 7068 -1 -1 1 0.04 -1 -1 34100 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67240 32 32 383 307 1 176 83 17 17 289 -1 unnamed_device 27.0 MiB 1.56 668 12863 4041 6004 2818 65.7 MiB 0.10 0.00 2.5143 -86.2247 -2.5143 2.5143 1.06 0.000527237 0.00047481 0.0439117 0.0399401 48 2095 25 6.95648e+06 275038 865456. 2994.66 3.19 0.18181 0.159566 28354 207349 -1 1727 30 1733 2647 402759 148368 3.04317 3.04317 -113.417 -3.04317 0 0 1.05005e+06 3633.38 0.47 0.16 0.21 -1 -1 0.47 0.040199 0.0357196 76 56 52 26 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_112.v common 10.47 vpr 65.91 MiB 0.02 7240 -1 -1 1 0.04 -1 -1 34104 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67492 31 32 422 339 1 187 88 17 17 289 -1 unnamed_device 27.2 MiB 1.35 715 15688 5472 7576 2640 65.9 MiB 0.13 0.00 2.98426 -101.115 -2.98426 2.98426 1.05 0.000571558 0.000517969 0.0517206 0.0471272 44 2193 34 6.95648e+06 361892 787024. 2723.27 5.48 0.280013 0.245019 27778 195446 -1 1632 19 1635 2262 158318 35838 3.06667 3.06667 -117.763 -3.06667 0 0 997811. 3452.63 0.43 0.07 0.20 -1 -1 0.43 0.0273051 0.0242934 85 88 31 31 92 31 -fixed_k6_frac_2ripple_N8_22nm.xml mult_113.v common 19.72 vpr 65.10 MiB 0.02 7144 -1 -1 1 0.04 -1 -1 34056 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 32 32 333 279 1 154 74 17 17 289 -1 unnamed_device 26.6 MiB 0.85 588 9374 3855 5206 313 65.1 MiB 0.07 0.00 2.4011 -83.9523 -2.4011 2.4011 1.02 0.000594748 0.0005366 0.0326059 0.0296977 48 1980 47 6.95648e+06 144757 865456. 2994.66 15.31 0.310365 0.26783 28354 207349 -1 1588 29 1618 2467 267898 92164 3.02602 3.02602 -116.572 -3.02602 0 0 1.05005e+06 3633.38 0.47 0.12 0.21 -1 -1 0.47 0.0343433 0.0303531 61 54 32 32 60 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_114.v common 7.85 vpr 65.16 MiB 0.02 7232 -1 -1 1 0.04 -1 -1 33896 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 32 32 339 283 1 158 74 17 17 289 -1 unnamed_device 26.6 MiB 1.02 684 8599 3572 4859 168 65.2 MiB 0.07 0.00 2.5503 -94.2523 -2.5503 2.5503 1.10 0.000505638 0.000465049 0.0316096 0.0289832 46 2129 35 6.95648e+06 144757 828058. 2865.25 3.21 0.165671 0.145209 28066 200906 -1 1708 22 1370 1997 159274 35254 3.29047 3.29047 -123.202 -3.29047 0 0 1.01997e+06 3529.29 0.42 0.07 0.19 -1 -1 0.42 0.0270223 0.0239964 63 60 32 32 62 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_115.v common 9.38 vpr 65.66 MiB 0.02 7452 -1 -1 1 0.04 -1 -1 34348 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67236 32 32 407 319 1 190 93 17 17 289 -1 unnamed_device 27.0 MiB 0.87 829 11223 3241 6212 1770 65.7 MiB 0.09 0.00 3.12269 -114.052 -3.12269 3.12269 1.03 0.000603353 0.000550251 0.0340548 0.0310334 38 2914 29 6.95648e+06 419795 678818. 2348.85 5.01 0.185684 0.162768 26626 170182 -1 2146 25 2158 3134 273632 55985 4.07146 4.07146 -156.16 -4.07146 0 0 902133. 3121.57 0.39 0.11 0.16 -1 -1 0.39 0.0354011 0.0314331 88 49 64 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_116.v common 14.74 vpr 65.55 MiB 0.03 7484 -1 -1 1 0.04 -1 -1 34152 -1 -1 19 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67120 29 32 367 293 1 175 80 17 17 289 -1 unnamed_device 26.9 MiB 0.99 707 6960 2780 3856 324 65.5 MiB 0.06 0.00 2.7306 -90.9635 -2.7306 2.7306 1.04 0.000604666 0.000547194 0.0256117 0.0232111 40 2174 25 6.95648e+06 275038 706193. 2443.58 10.26 0.327463 0.286379 26914 176310 -1 1741 20 1478 2033 172009 40424 3.35157 3.35157 -117.059 -3.35157 0 0 926341. 3205.33 0.41 0.08 0.17 -1 -1 0.41 0.0320846 0.0287221 77 54 56 29 58 29 -fixed_k6_frac_2ripple_N8_22nm.xml mult_117.v common 8.37 vpr 66.05 MiB 0.03 7328 -1 -1 1 0.04 -1 -1 34292 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67636 32 32 469 381 1 192 93 17 17 289 -1 unnamed_device 27.4 MiB 1.52 984 16683 4965 9340 2378 66.1 MiB 0.14 0.00 3.08969 -116.839 -3.08969 3.08969 1.07 0.00062788 0.00056843 0.0566325 0.0512084 38 2899 43 6.95648e+06 419795 678818. 2348.85 3.19 0.21623 0.190521 26626 170182 -1 2481 25 2254 3367 309750 60156 4.26076 4.26076 -158.195 -4.26076 0 0 902133. 3121.57 0.38 0.12 0.17 -1 -1 0.38 0.038851 0.034518 89 117 0 0 128 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_118.v common 10.99 vpr 64.73 MiB 0.02 7092 -1 -1 1 0.03 -1 -1 33968 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 31 32 259 212 1 144 74 17 17 289 -1 unnamed_device 26.3 MiB 1.63 617 9529 3920 5263 346 64.7 MiB 0.07 0.00 2.4703 -81.6138 -2.4703 2.4703 1.09 0.000442324 0.000400976 0.0285937 0.0260724 48 1733 41 6.95648e+06 159232 865456. 2994.66 5.75 0.198771 0.173689 28354 207349 -1 1440 20 1053 1537 138092 32135 3.01062 3.01062 -111.005 -3.01062 0 0 1.05005e+06 3633.38 0.48 0.06 0.20 -1 -1 0.48 0.0222488 0.0199162 58 -1 85 31 0 0 -fixed_k6_frac_2ripple_N8_22nm.xml mult_119.v common 7.69 vpr 65.91 MiB 0.02 7372 -1 -1 1 0.04 -1 -1 34036 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67496 32 32 418 338 1 182 87 17 17 289 -1 unnamed_device 27.2 MiB 1.03 756 14679 5714 6385 2580 65.9 MiB 0.10 0.00 3.10505 -105.698 -3.10505 3.10505 1.00 0.000563751 0.000511926 0.0462449 0.0419937 50 2227 31 6.95648e+06 332941 902133. 3121.57 3.08 0.193904 0.169595 28642 213929 -1 1785 29 2064 2713 344437 126996 3.84521 3.84521 -137.995 -3.84521 0 0 1.08113e+06 3740.92 0.46 0.14 0.19 -1 -1 0.46 0.0387069 0.0345363 81 89 28 28 92 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_120.v common 11.80 vpr 65.48 MiB 0.02 7080 -1 -1 1 0.03 -1 -1 34100 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67052 32 32 376 318 1 154 74 17 17 289 -1 unnamed_device 26.7 MiB 3.19 580 11079 4717 6073 289 65.5 MiB 0.10 0.00 2.45985 -93.1734 -2.45985 2.45985 1.02 0.000519463 0.000472054 0.0432154 0.0392965 40 2005 28 6.95648e+06 144757 706193. 2443.58 5.16 0.261546 0.227929 26914 176310 -1 1744 22 1574 2206 273613 57594 3.41462 3.41462 -134.035 -3.41462 0 0 926341. 3205.33 0.41 0.10 0.17 -1 -1 0.41 0.0291047 0.0257851 61 93 0 0 96 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_121.v common 10.32 vpr 65.96 MiB 0.02 7308 -1 -1 1 0.04 -1 -1 33736 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67540 32 32 401 316 1 188 88 17 17 289 -1 unnamed_device 27.2 MiB 0.99 850 12373 5087 6994 292 66.0 MiB 0.10 0.00 2.5393 -95.813 -2.5393 2.5393 1.05 0.000614083 0.000557013 0.0403015 0.0366293 44 2324 24 6.95648e+06 347416 787024. 2723.27 5.74 0.289556 0.252792 27778 195446 -1 1710 22 1669 2447 166579 36291 2.98967 2.98967 -117.101 -2.98967 0 0 997811. 3452.63 0.43 0.08 0.18 -1 -1 0.43 0.0303224 0.0268919 84 59 61 32 64 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_122.v common 8.81 vpr 65.60 MiB 0.02 7368 -1 -1 1 0.04 -1 -1 34440 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67176 32 32 500 382 1 222 97 17 17 289 -1 unnamed_device 27.2 MiB 1.21 1069 18745 6601 9822 2322 65.6 MiB 0.16 0.00 3.74344 -134.628 -3.74344 3.74344 1.10 0.000765448 0.000687906 0.0634081 0.0576829 44 2968 37 6.95648e+06 477698 787024. 2723.27 3.81 0.24951 0.219599 27778 195446 -1 2411 24 2655 3914 315636 63430 4.95151 4.95151 -176.309 -4.95151 0 0 997811. 3452.63 0.43 0.12 0.18 -1 -1 0.43 0.0409253 0.0366538 104 81 64 32 96 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_123.v common 7.82 vpr 64.75 MiB 0.02 7168 -1 -1 1 0.03 -1 -1 33496 -1 -1 10 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 30 32 246 229 1 117 72 17 17 289 -1 unnamed_device 26.4 MiB 0.51 426 8714 3565 4722 427 64.8 MiB 0.06 0.00 1.83056 -63.1332 -1.83056 1.83056 1.03 0.000373127 0.000338245 0.0242195 0.0220656 38 999 23 6.95648e+06 144757 678818. 2348.85 4.04 0.165697 0.142574 26626 170182 -1 825 22 641 812 47255 13472 2.15168 2.15168 -78.4256 -2.15168 0 0 902133. 3121.57 0.36 0.04 0.16 -1 -1 0.36 0.0196516 0.017352 45 51 0 0 53 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_124.v common 17.62 vpr 65.20 MiB 0.02 7092 -1 -1 1 0.03 -1 -1 33772 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 30 32 296 244 1 141 74 17 17 289 -1 unnamed_device 26.7 MiB 2.02 457 10304 4299 5478 527 65.2 MiB 0.07 0.00 2.68956 -87.7818 -2.68956 2.68956 1.07 0.000521808 0.000477121 0.0328073 0.0298934 42 1898 47 6.95648e+06 173708 744469. 2576.02 12.16 0.273056 0.235765 27202 183097 -1 1313 25 1301 1858 178006 42557 3.05997 3.05997 -111.584 -3.05997 0 0 949917. 3286.91 0.41 0.08 0.18 -1 -1 0.41 0.0271116 0.0240108 58 29 60 30 30 30 -fixed_k6_frac_2ripple_N8_22nm.xml mult_125.v common 7.23 vpr 65.54 MiB 0.02 6912 -1 -1 1 0.03 -1 -1 33552 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67108 32 32 314 256 1 161 74 17 17 289 -1 unnamed_device 26.7 MiB 0.25 592 10459 4383 5742 334 65.5 MiB 0.08 0.00 2.43165 -93.329 -2.43165 2.43165 1.05 0.000531424 0.00048335 0.0342963 0.0312739 56 1971 32 6.95648e+06 144757 973134. 3367.25 3.36 0.157981 0.138281 29794 239141 -1 1511 21 1475 2415 205539 49201 3.14492 3.14492 -120.717 -3.14492 0 0 1.19926e+06 4149.71 0.48 0.08 0.24 -1 -1 0.48 0.0234564 0.0208237 65 31 64 32 32 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_126.v common 8.79 vpr 65.06 MiB 0.02 7068 -1 -1 1 0.03 -1 -1 34020 -1 -1 15 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 25 32 251 214 1 132 72 17 17 289 -1 unnamed_device 26.7 MiB 0.59 456 8714 3676 4307 731 65.1 MiB 0.06 0.00 2.73975 -73.8006 -2.73975 2.73975 1.05 0.000379669 0.000343451 0.0243894 0.022198 40 1679 27 6.95648e+06 217135 706193. 2443.58 4.76 0.172333 0.149872 26914 176310 -1 1279 19 1001 1362 99677 25545 3.03682 3.03682 -97.8877 -3.03682 0 0 926341. 3205.33 0.42 0.05 0.17 -1 -1 0.42 0.0194398 0.017225 56 19 50 25 25 25 -fixed_k6_frac_2ripple_N8_22nm.xml mult_127.v common 11.12 vpr 65.64 MiB 0.02 7364 -1 -1 1 0.04 -1 -1 33748 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67212 32 32 432 346 1 185 77 17 17 289 -1 unnamed_device 26.9 MiB 1.17 777 9368 3861 5200 307 65.6 MiB 0.09 0.00 3.24434 -109.955 -3.24434 3.24434 1.08 0.000576626 0.000522417 0.0385413 0.0349388 46 2554 29 6.95648e+06 188184 828058. 2865.25 6.32 0.295202 0.257507 28066 200906 -1 1942 23 1860 3223 229696 49925 4.05862 4.05862 -143.874 -4.05862 0 0 1.01997e+06 3529.29 0.41 0.09 0.20 -1 -1 0.41 0.0325681 0.0288534 77 84 32 32 94 32 -fixed_k6_frac_2ripple_N8_22nm.xml mult_128.v common 9.85 vpr 65.97 MiB 0.02 7512 -1 -1 1 0.04 -1 -1 33840 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67556 31 32 421 339 1 185 92 17 17 289 -1 unnamed_device 27.1 MiB 0.92 775 14168 4766 7049 2353 66.0 MiB 0.11 0.00 2.7178 -94.9795 -2.7178 2.7178 1.10 0.000743515 0.000606052 0.0436878 0.0396094 40 2135 29 6.95648e+06 419795 706193. 2443.58 5.33 0.30737 0.268552 26914 176310 -1 1840 25 1910 2539 249090 54258 3.58207 3.58207 -125.662 -3.58207 0 0 926341. 3205.33 0.37 0.10 0.17 -1 -1 0.37 0.0356457 0.0316127 87 88 29 29 93 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_001.v common 9.78 vpr 65.56 MiB 0.02 7516 -1 -1 1 0.04 -1 -1 34068 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67132 32 32 438 350 1 287 86 17 17 289 -1 unnamed_device 27.2 MiB 0.82 1162 16718 7118 9209 391 65.6 MiB 0.13 0.00 3.54004 -127.096 -3.54004 3.54004 1.00 0.000625459 0.000572321 0.054686 0.0498233 46 3141 25 6.99608e+06 323745 828058. 2865.25 5.39 0.262758 0.229609 28066 200906 -1 2386 21 2170 2560 180818 39216 4.35531 4.35531 -162.106 -4.35531 0 0 1.01997e+06 3529.29 0.42 0.09 0.20 -1 -1 0.42 0.0330727 0.0296602 130 80 32 32 96 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_002.v common 8.84 vpr 65.72 MiB 0.03 7576 -1 -1 1 0.04 -1 -1 34000 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67296 30 32 409 330 1 259 82 17 17 289 -1 unnamed_device 27.2 MiB 1.64 1064 16814 6965 8056 1793 65.7 MiB 0.14 0.00 3.52832 -116.536 -3.52832 3.52832 1.07 0.000622241 0.0005076 0.0585104 0.0533612 56 2786 32 6.99608e+06 294314 973134. 3367.25 3.34 0.2127 0.187497 29794 239141 -1 2291 24 2445 3425 314860 68852 4.7491 4.7491 -158.649 -4.7491 0 0 1.19926e+06 4149.71 0.54 0.11 0.24 -1 -1 0.54 0.035757 0.0320829 117 78 30 30 89 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_003.v common 10.03 vpr 65.54 MiB 0.02 7392 -1 -1 1 0.04 -1 -1 34172 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67112 32 32 387 309 1 241 82 17 17 289 -1 unnamed_device 26.7 MiB 0.99 1164 16458 6490 7573 2395 65.5 MiB 0.13 0.00 2.96629 -109.899 -2.96629 2.96629 1.02 0.000522964 0.000475305 0.0543706 0.049546 42 3358 47 6.99608e+06 264882 744469. 2576.02 5.54 0.305275 0.267922 27202 183097 -1 2377 21 1729 2080 185197 38003 4.01956 4.01956 -139.878 -4.01956 0 0 949917. 3286.91 0.42 0.08 0.18 -1 -1 0.42 0.0296408 0.0263052 106 50 54 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_004.v common 8.60 vpr 65.23 MiB 0.02 7432 -1 -1 1 0.04 -1 -1 34140 -1 -1 18 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 29 32 343 267 1 201 79 17 17 289 -1 unnamed_device 26.9 MiB 0.79 831 13430 5751 7055 624 65.2 MiB 0.11 0.00 3.16965 -103.759 -3.16965 3.16965 1.08 0.000501486 0.000454691 0.0436274 0.0397735 40 2637 47 6.99608e+06 264882 706193. 2443.58 4.24 0.194916 0.170808 26914 176310 -1 2206 23 2077 3076 275158 58893 4.08536 4.08536 -141.609 -4.08536 0 0 926341. 3205.33 0.40 0.10 0.17 -1 -1 0.40 0.030809 0.027532 89 25 87 29 29 29 -fixed_k6_frac_2uripple_N8_22nm.xml mult_005.v common 10.98 vpr 65.61 MiB 0.02 7180 -1 -1 1 0.04 -1 -1 33996 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67184 32 32 376 288 1 218 79 17 17 289 -1 unnamed_device 26.9 MiB 0.52 1101 13261 4464 7688 1109 65.6 MiB 0.12 0.00 3.52464 -134.12 -3.52464 3.52464 1.01 0.000583455 0.000535362 0.0454402 0.0414239 46 3391 31 6.99608e+06 220735 828058. 2865.25 6.95 0.279795 0.242807 28066 200906 -1 2666 22 2526 4031 346808 67781 4.48375 4.48375 -168.768 -4.48375 0 0 1.01997e+06 3529.29 0.41 0.11 0.19 -1 -1 0.41 0.0299561 0.0266739 93 31 96 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_006.v common 8.94 vpr 65.80 MiB 0.03 7448 -1 -1 1 0.04 -1 -1 33972 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67376 32 32 402 316 1 251 94 17 17 289 -1 unnamed_device 27.3 MiB 0.55 1232 16708 5429 8645 2634 65.8 MiB 0.14 0.00 3.08859 -112.1 -3.08859 3.08859 1.12 0.000613034 0.000558782 0.0488219 0.0442533 40 3542 26 6.99608e+06 441471 706193. 2443.58 4.61 0.198687 0.174929 26914 176310 -1 3083 30 2633 3718 514919 157902 3.70341 3.70341 -146.829 -3.70341 0 0 926341. 3205.33 0.40 0.19 0.18 -1 -1 0.40 0.0435245 0.0389291 117 61 63 32 63 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_007.v common 7.60 vpr 64.92 MiB 0.02 7232 -1 -1 1 0.03 -1 -1 34252 -1 -1 15 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 27 32 269 226 1 158 74 17 17 289 -1 unnamed_device 26.5 MiB 1.59 604 7204 2688 3554 962 64.9 MiB 0.06 0.00 2.64844 -84.8254 -2.64844 2.64844 1.08 0.000413233 0.000374279 0.0214744 0.0195577 36 1903 25 6.99608e+06 220735 648988. 2245.63 2.55 0.133224 0.117166 26050 158493 -1 1572 22 1550 2209 190837 40653 3.35342 3.35342 -112.446 -3.35342 0 0 828058. 2865.25 0.36 0.08 0.15 -1 -1 0.36 0.0237628 0.0211563 68 26 54 27 27 27 -fixed_k6_frac_2uripple_N8_22nm.xml mult_008.v common 7.49 vpr 64.86 MiB 0.02 7264 -1 -1 1 0.03 -1 -1 34228 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 31 32 317 242 1 178 80 17 17 289 -1 unnamed_device 26.4 MiB 0.57 714 11776 4925 6222 629 64.9 MiB 0.08 0.00 2.49105 -83.6689 -2.49105 2.49105 1.01 0.000487968 0.000431497 0.0352799 0.0321035 62 1745 22 6.99608e+06 250167 1.05005e+06 3633.38 3.35 0.183734 0.160051 30946 263737 -1 1374 20 1286 1961 126578 30257 2.73802 2.73802 -98.2467 -2.73802 0 0 1.30136e+06 4502.97 0.52 0.06 0.26 -1 -1 0.52 0.0233326 0.0206468 77 -1 115 31 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_009.v common 9.88 vpr 65.25 MiB 0.02 7144 -1 -1 1 0.04 -1 -1 33800 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 31 32 338 292 1 222 78 17 17 289 -1 unnamed_device 26.8 MiB 3.36 1012 12030 4994 6504 532 65.2 MiB 0.10 0.00 2.62059 -97.5399 -2.62059 2.62059 1.06 0.000454348 0.000412652 0.039204 0.0356973 40 2776 27 6.99608e+06 220735 706193. 2443.58 3.02 0.181877 0.161057 26914 176310 -1 2323 22 1897 2322 214172 45659 3.59812 3.59812 -135.593 -3.59812 0 0 926341. 3205.33 0.40 0.09 0.16 -1 -1 0.40 0.0291358 0.0261115 96 81 0 0 84 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_010.v common 7.57 vpr 65.00 MiB 0.02 6952 -1 -1 1 0.04 -1 -1 33804 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 32 32 314 256 1 187 77 17 17 289 -1 unnamed_device 26.4 MiB 0.88 677 8879 3611 5037 231 65.0 MiB 0.07 0.00 2.95409 -110.115 -2.95409 2.95409 1.04 0.000459698 0.000414212 0.0289851 0.0264803 40 2402 43 6.99608e+06 191304 706193. 2443.58 3.21 0.167735 0.147014 26914 176310 -1 1927 20 1701 2097 188017 42122 3.85076 3.85076 -143.507 -3.85076 0 0 926341. 3205.33 0.40 0.08 0.17 -1 -1 0.40 0.0253593 0.0227211 79 31 64 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_011.v common 9.04 vpr 65.15 MiB 0.02 7204 -1 -1 1 0.04 -1 -1 33640 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66716 30 32 325 273 1 199 77 17 17 289 -1 unnamed_device 26.6 MiB 2.99 761 12791 5202 6282 1307 65.2 MiB 0.10 0.00 3.05483 -105 -3.05483 3.05483 1.06 0.000492157 0.000449201 0.0418917 0.0381966 44 2608 32 6.99608e+06 220735 787024. 2723.27 2.49 0.14195 0.1249 27778 195446 -1 1884 22 1869 2503 217963 45046 3.68841 3.68841 -135.611 -3.68841 0 0 997811. 3452.63 0.43 0.08 0.19 -1 -1 0.43 0.0260328 0.0232139 88 58 30 30 60 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_012.v common 8.72 vpr 65.25 MiB 0.02 7292 -1 -1 1 0.03 -1 -1 34092 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 32 32 331 280 1 210 78 17 17 289 -1 unnamed_device 26.6 MiB 0.95 1019 13192 5109 6222 1861 65.2 MiB 0.10 0.00 2.5521 -98.3165 -2.5521 2.5521 1.04 0.000477148 0.000435013 0.0408627 0.0372421 38 2715 39 6.99608e+06 206020 678818. 2348.85 4.31 0.174323 0.152706 26626 170182 -1 2164 20 1461 1559 148353 29683 3.06197 3.06197 -125.202 -3.06197 0 0 902133. 3121.57 0.40 0.07 0.17 -1 -1 0.40 0.0260206 0.0232764 91 57 25 25 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_013.v common 9.64 vpr 65.77 MiB 0.03 7316 -1 -1 1 0.04 -1 -1 34060 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67352 32 32 386 305 1 231 80 17 17 289 -1 unnamed_device 27.0 MiB 1.11 951 11260 4298 6104 858 65.8 MiB 0.10 0.00 3.00239 -108.813 -3.00239 3.00239 1.09 0.00055183 0.000502245 0.0404622 0.036967 46 2946 46 6.99608e+06 235451 828058. 2865.25 4.85 0.224819 0.198613 28066 200906 -1 2206 21 1888 2579 221164 49953 3.65646 3.65646 -137.025 -3.65646 0 0 1.01997e+06 3529.29 0.44 0.09 0.18 -1 -1 0.44 0.0291862 0.0259542 101 55 64 32 57 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_014.v common 7.44 vpr 65.79 MiB 0.02 7188 -1 -1 1 0.04 -1 -1 34060 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67364 32 32 407 319 1 254 83 17 17 289 -1 unnamed_device 27.3 MiB 1.00 1154 14663 4397 8300 1966 65.8 MiB 0.13 0.00 3.53814 -127.421 -3.53814 3.53814 1.01 0.0005604 0.000507494 0.0507206 0.0459658 46 3136 24 6.99608e+06 279598 828058. 2865.25 2.86 0.18891 0.16519 28066 200906 -1 2632 24 2830 3685 306578 61887 4.80641 4.80641 -175.744 -4.80641 0 0 1.01997e+06 3529.29 0.42 0.11 0.20 -1 -1 0.42 0.034173 0.0303738 112 60 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_015.v common 8.93 vpr 64.72 MiB 0.02 7000 -1 -1 1 0.04 -1 -1 33872 -1 -1 14 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 29 32 272 228 1 161 75 17 17 289 -1 unnamed_device 26.3 MiB 2.87 584 11293 4689 6010 594 64.7 MiB 0.08 0.00 2.42075 -79.1279 -2.42075 2.42075 1.09 0.000431273 0.000394668 0.0337493 0.0307446 48 1560 27 6.99608e+06 206020 865456. 2994.66 2.45 0.147896 0.13043 28354 207349 -1 1242 19 1041 1459 96855 25132 3.03562 3.03562 -101.92 -3.03562 0 0 1.05005e+06 3633.38 0.47 0.05 0.21 -1 -1 0.47 0.0204459 0.0181038 67 21 58 29 24 24 -fixed_k6_frac_2uripple_N8_22nm.xml mult_016.v common 11.28 vpr 65.81 MiB 0.03 7152 -1 -1 1 0.04 -1 -1 33960 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67388 32 32 401 315 1 243 80 17 17 289 -1 unnamed_device 26.9 MiB 2.33 1284 15388 6230 7387 1771 65.8 MiB 0.14 0.00 3.01639 -115.687 -3.01639 3.01639 1.09 0.000555418 0.000505334 0.0561211 0.0512162 44 3419 24 6.99608e+06 235451 787024. 2723.27 5.21 0.273155 0.239729 27778 195446 -1 2616 19 2393 3281 270166 54412 3.67241 3.67241 -147.086 -3.67241 0 0 997811. 3452.63 0.44 0.10 0.19 -1 -1 0.44 0.0307061 0.0275333 106 60 64 32 62 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_017.v common 8.43 vpr 65.60 MiB 0.02 7416 -1 -1 1 0.04 -1 -1 33928 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67176 32 32 383 303 1 230 81 17 17 289 -1 unnamed_device 26.9 MiB 1.44 1172 13381 4472 7405 1504 65.6 MiB 0.11 0.00 2.74074 -110.372 -2.74074 2.74074 1.05 0.000580859 0.000528394 0.0453391 0.0414241 40 2953 44 6.99608e+06 250167 706193. 2443.58 3.41 0.230864 0.205605 26914 176310 -1 2581 23 2182 2768 269526 53121 3.23221 3.23221 -136.69 -3.23221 0 0 926341. 3205.33 0.41 0.11 0.17 -1 -1 0.41 0.0362881 0.0326255 99 54 64 32 56 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_018.v common 7.96 vpr 65.53 MiB 0.02 7148 -1 -1 1 0.04 -1 -1 33820 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67104 32 32 339 284 1 218 78 17 17 289 -1 unnamed_device 26.9 MiB 0.91 923 6884 1566 4436 882 65.5 MiB 0.06 0.00 2.74594 -102.452 -2.74594 2.74594 1.08 0.000493439 0.000447218 0.0240064 0.0219393 46 2424 24 6.99608e+06 206020 828058. 2865.25 3.41 0.148602 0.129622 28066 200906 -1 1742 25 1722 2088 177192 48403 3.28271 3.28271 -125.524 -3.28271 0 0 1.01997e+06 3529.29 0.45 0.09 0.20 -1 -1 0.45 0.0313268 0.027769 91 62 29 29 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_019.v common 9.19 vpr 64.58 MiB 0.02 6876 -1 -1 1 0.03 -1 -1 33788 -1 -1 11 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66128 30 32 226 208 1 139 73 17 17 289 -1 unnamed_device 26.2 MiB 2.92 493 10105 4189 5487 429 64.6 MiB 0.06 0.00 1.97056 -70.6311 -1.97056 1.97056 1.09 0.0003742 0.000331197 0.0268183 0.0244909 40 1592 34 6.99608e+06 161872 706193. 2443.58 2.79 0.132376 0.115751 26914 176310 -1 1217 23 906 993 107638 29566 2.34583 2.34583 -90.0722 -2.34583 0 0 926341. 3205.33 0.40 0.06 0.17 -1 -1 0.40 0.0213674 0.0189731 56 29 24 24 30 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_020.v common 11.99 vpr 65.60 MiB 0.02 7144 -1 -1 1 0.04 -1 -1 34060 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67176 31 32 335 280 1 209 78 17 17 289 -1 unnamed_device 27.0 MiB 2.57 1019 12030 4753 6737 540 65.6 MiB 0.10 0.00 3.17469 -113.444 -3.17469 3.17469 1.08 0.000475431 0.000430461 0.0396387 0.0361549 44 2419 20 6.99608e+06 220735 787024. 2723.27 5.76 0.265277 0.233655 27778 195446 -1 2035 21 1418 1739 143211 29930 3.39781 3.39781 -133.507 -3.39781 0 0 997811. 3452.63 0.45 0.07 0.19 -1 -1 0.45 0.0264775 0.0237107 91 55 31 31 62 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_021.v common 7.79 vpr 65.67 MiB 0.03 7144 -1 -1 1 0.04 -1 -1 33868 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67248 32 32 366 283 1 215 87 17 17 289 -1 unnamed_device 26.9 MiB 0.47 875 12759 4780 6107 1872 65.7 MiB 0.11 0.00 3.29568 -115.809 -3.29568 3.29568 1.10 0.000660496 0.00060256 0.0422135 0.0386462 40 3189 26 6.99608e+06 338461 706193. 2443.58 3.73 0.208772 0.185961 26914 176310 -1 2604 23 2462 3383 370951 78677 4.78765 4.78765 -171.31 -4.78765 0 0 926341. 3205.33 0.38 0.12 0.17 -1 -1 0.38 0.0307565 0.0272747 97 31 91 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_022.v common 9.76 vpr 65.55 MiB 0.02 7352 -1 -1 1 0.04 -1 -1 34216 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67120 32 32 460 375 1 303 86 17 17 289 -1 unnamed_device 27.3 MiB 1.55 1256 16529 6962 9041 526 65.5 MiB 0.14 0.00 3.26728 -115.334 -3.26728 3.26728 1.05 0.00065306 0.00059431 0.0581856 0.0529192 46 3848 42 6.99608e+06 323745 828058. 2865.25 4.58 0.234614 0.205754 28066 200906 -1 2550 22 2378 2715 192306 43634 4.51762 4.51762 -151.355 -4.51762 0 0 1.01997e+06 3529.29 0.41 0.09 0.19 -1 -1 0.41 0.0337484 0.0300237 138 108 0 0 125 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_023.v common 6.80 vpr 64.61 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 34284 -1 -1 15 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66164 26 32 198 186 1 125 73 17 17 289 -1 unnamed_device 26.2 MiB 0.89 399 10713 3973 5519 1221 64.6 MiB 0.06 0.00 2.1814 -62.1378 -2.1814 2.1814 1.08 0.000291662 0.000264382 0.0240818 0.0219434 38 1042 38 6.99608e+06 220735 678818. 2348.85 2.51 0.128663 0.113469 26626 170182 -1 855 17 608 707 47098 12218 2.66797 2.66797 -78.8596 -2.66797 0 0 902133. 3121.57 0.39 0.04 0.16 -1 -1 0.39 0.0156577 0.0139813 52 21 26 26 22 22 -fixed_k6_frac_2uripple_N8_22nm.xml mult_024.v common 9.26 vpr 65.25 MiB 0.02 7152 -1 -1 1 0.04 -1 -1 34108 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 32 32 333 251 1 181 76 17 17 289 -1 unnamed_device 26.7 MiB 0.95 761 7596 3084 4118 394 65.2 MiB 0.07 0.00 3.40945 -111.783 -3.40945 3.40945 1.11 0.000560105 0.00050878 0.028654 0.0262825 48 2468 45 6.99608e+06 176588 865456. 2994.66 4.61 0.196692 0.173389 28354 207349 -1 2073 20 1697 2653 268089 66414 4.14956 4.14956 -147.02 -4.14956 0 0 1.05005e+06 3633.38 0.47 0.10 0.21 -1 -1 0.47 0.0270001 0.0240512 75 -1 122 32 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_025.v common 5.60 vpr 64.51 MiB 0.02 6736 -1 -1 1 0.03 -1 -1 33968 -1 -1 8 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66056 32 32 199 182 1 119 72 17 17 289 -1 unnamed_device 26.0 MiB 0.32 753 9608 3553 5125 930 64.5 MiB 0.06 0.00 1.68521 -70.2395 -1.68521 1.68521 1.05 0.00038193 0.000345291 0.0253083 0.0231196 34 1681 44 6.99608e+06 117725 618332. 2139.56 1.98 0.120177 0.104378 25762 151098 -1 1491 22 810 1089 101047 20364 1.94702 1.94702 -89.2217 -1.94702 0 0 787024. 2723.27 0.36 0.05 0.14 -1 -1 0.36 0.0172965 0.0153161 44 -1 53 32 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_026.v common 11.35 vpr 65.54 MiB 0.02 7108 -1 -1 1 0.04 -1 -1 34300 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67112 32 32 376 288 1 218 81 17 17 289 -1 unnamed_device 26.8 MiB 1.42 802 12156 4811 5800 1545 65.5 MiB 0.11 0.00 3.25275 -116.923 -3.25275 3.25275 1.08 0.000538549 0.000489201 0.0439088 0.0401559 52 2897 24 6.99608e+06 250167 926341. 3205.33 6.20 0.28275 0.246638 29218 227130 -1 2109 22 2024 2855 257453 56569 4.43602 4.43602 -158.588 -4.43602 0 0 1.14541e+06 3963.36 0.49 0.09 0.23 -1 -1 0.49 0.029261 0.0259632 95 21 96 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_027.v common 9.19 vpr 65.01 MiB 0.03 7196 -1 -1 1 0.04 -1 -1 34076 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 32 32 337 253 1 188 92 17 17 289 -1 unnamed_device 26.4 MiB 0.29 1027 13547 4004 7709 1834 65.0 MiB 0.10 0.00 2.43175 -96.8894 -2.43175 2.43175 1.12 0.000503 0.000457611 0.0376499 0.0343486 36 2621 42 6.99608e+06 412039 648988. 2245.63 5.29 0.200259 0.176765 26050 158493 -1 2290 20 1609 2355 191627 38876 2.93732 2.93732 -121.875 -2.93732 0 0 828058. 2865.25 0.39 0.09 0.16 -1 -1 0.39 0.0290877 0.0261839 87 -1 124 32 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_028.v common 10.17 vpr 65.43 MiB 0.02 7164 -1 -1 1 0.04 -1 -1 34188 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66996 32 32 407 319 1 256 85 17 17 289 -1 unnamed_device 26.9 MiB 0.88 1331 13477 5685 7428 364 65.4 MiB 0.11 0.00 3.14945 -119.832 -3.14945 3.14945 1.06 0.000650355 0.00057826 0.0439991 0.040022 40 3454 28 6.99608e+06 309029 706193. 2443.58 5.60 0.323955 0.285609 26914 176310 -1 3118 23 2607 3686 410448 79857 4.66161 4.66161 -170.808 -4.66161 0 0 926341. 3205.33 0.41 0.13 0.17 -1 -1 0.41 0.0346365 0.0307611 115 54 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_029.v common 9.46 vpr 65.06 MiB 0.02 6980 -1 -1 1 0.03 -1 -1 34060 -1 -1 11 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66620 32 32 294 246 1 175 75 17 17 289 -1 unnamed_device 26.6 MiB 1.27 731 9555 3937 5379 239 65.1 MiB 0.07 0.00 2.4829 -87.8794 -2.4829 2.4829 1.09 0.000525945 0.00047772 0.0306364 0.0279953 44 2220 22 6.99608e+06 161872 787024. 2723.27 4.57 0.205575 0.17956 27778 195446 -1 1646 22 1374 1907 158586 34515 2.88082 2.88082 -115.461 -2.88082 0 0 997811. 3452.63 0.44 0.07 0.20 -1 -1 0.44 0.0251197 0.02239 72 31 54 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_030.v common 16.00 vpr 65.00 MiB 0.02 7020 -1 -1 1 0.04 -1 -1 33808 -1 -1 13 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 30 32 296 244 1 173 75 17 17 289 -1 unnamed_device 26.5 MiB 9.85 687 8923 3650 4937 336 65.0 MiB 0.07 0.00 2.93029 -98.4514 -2.93029 2.93029 1.04 0.000416189 0.000377812 0.0283091 0.0258192 44 2236 29 6.99608e+06 191304 787024. 2723.27 2.68 0.145995 0.12724 27778 195446 -1 1623 23 1564 2272 174264 39285 3.46701 3.46701 -130.705 -3.46701 0 0 997811. 3452.63 0.41 0.08 0.19 -1 -1 0.41 0.0263171 0.0233165 73 29 60 30 30 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_031.v common 8.83 vpr 64.93 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 33824 -1 -1 15 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 28 32 278 232 1 163 75 17 17 289 -1 unnamed_device 26.4 MiB 1.35 631 8607 3745 4367 495 64.9 MiB 0.06 0.00 3.06475 -93.3824 -3.06475 3.06475 1.06 0.000550584 0.000499478 0.026043 0.0237697 40 2416 45 6.99608e+06 220735 706193. 2443.58 4.02 0.152788 0.133021 26914 176310 -1 1856 21 1426 2146 234725 57487 3.47616 3.47616 -124.197 -3.47616 0 0 926341. 3205.33 0.38 0.09 0.17 -1 -1 0.38 0.024152 0.0213743 72 27 56 28 28 28 -fixed_k6_frac_2uripple_N8_22nm.xml mult_032.v common 8.78 vpr 64.93 MiB 0.02 7016 -1 -1 1 0.04 -1 -1 33748 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 32 32 283 225 1 160 74 17 17 289 -1 unnamed_device 26.5 MiB 0.20 871 7204 1745 4616 843 64.9 MiB 0.06 0.00 2.36125 -100.739 -2.36125 2.36125 1.14 0.000436861 0.000397215 0.0247285 0.0224443 44 2237 23 6.99608e+06 147157 787024. 2723.27 4.89 0.204668 0.179161 27778 195446 -1 1929 21 1615 2461 216751 42063 2.75802 2.75802 -124.897 -2.75802 0 0 997811. 3452.63 0.46 0.08 0.19 -1 -1 0.46 0.0249572 0.0223837 64 -1 96 32 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_033.v common 17.64 vpr 65.22 MiB 0.02 7128 -1 -1 1 0.04 -1 -1 33848 -1 -1 15 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66788 31 32 303 249 1 185 78 17 17 289 -1 unnamed_device 26.6 MiB 0.82 963 9042 2168 5909 965 65.2 MiB 0.08 0.00 2.44275 -95.2161 -2.44275 2.44275 1.14 0.000487916 0.000442837 0.0297888 0.0271568 40 2491 49 6.99608e+06 220735 706193. 2443.58 13.16 0.301671 0.262608 26914 176310 -1 2180 21 1446 1950 199538 39978 3.29722 3.29722 -127.19 -3.29722 0 0 926341. 3205.33 0.42 0.08 0.17 -1 -1 0.42 0.0287075 0.0257601 77 26 61 31 31 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_034.v common 10.55 vpr 65.04 MiB 0.02 7100 -1 -1 1 0.04 -1 -1 34052 -1 -1 16 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 29 32 312 264 1 197 77 17 17 289 -1 unnamed_device 26.6 MiB 3.38 935 12465 4979 5026 2460 65.0 MiB 0.09 0.00 2.46925 -85.9119 -2.46925 2.46925 1.00 0.000449617 0.000409921 0.0366369 0.0334469 36 2591 48 6.99608e+06 235451 648988. 2245.63 3.85 0.177209 0.154602 26050 158493 -1 2129 18 1441 1747 156903 33178 2.85732 2.85732 -111.361 -2.85732 0 0 828058. 2865.25 0.35 0.07 0.15 -1 -1 0.35 0.0221239 0.019831 86 55 29 29 57 29 -fixed_k6_frac_2uripple_N8_22nm.xml mult_035.v common 11.25 vpr 65.70 MiB 0.02 7400 -1 -1 1 0.04 -1 -1 33952 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67280 32 32 423 310 1 243 84 17 17 289 -1 unnamed_device 27.2 MiB 1.22 1105 15822 6658 8485 679 65.7 MiB 0.15 0.00 3.13845 -116.82 -3.13845 3.13845 1.09 0.000765934 0.000696652 0.0592537 0.0539886 48 3325 28 6.99608e+06 294314 865456. 2994.66 6.16 0.288751 0.253227 28354 207349 -1 2741 26 2574 3805 336230 69202 4.24971 4.24971 -154.033 -4.24971 0 0 1.05005e+06 3633.38 0.48 0.13 0.19 -1 -1 0.48 0.0438045 0.0392084 106 26 128 32 27 27 -fixed_k6_frac_2uripple_N8_22nm.xml mult_036.v common 7.95 vpr 65.72 MiB 0.02 7288 -1 -1 1 0.04 -1 -1 34160 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67300 32 32 403 317 1 252 82 17 17 289 -1 unnamed_device 26.9 MiB 1.21 1152 11474 3353 6473 1648 65.7 MiB 0.10 0.00 3.57808 -120.336 -3.57808 3.57808 0.99 0.000682351 0.00058846 0.040547 0.0368535 40 3234 36 6.99608e+06 264882 706193. 2443.58 3.21 0.199972 0.174654 26914 176310 -1 2910 21 2404 3141 363523 82217 4.31825 4.31825 -166.164 -4.31825 0 0 926341. 3205.33 0.39 0.13 0.18 -1 -1 0.39 0.0319982 0.0285159 110 62 62 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_037.v common 8.27 vpr 65.48 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 33996 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67056 31 32 353 302 1 224 79 17 17 289 -1 unnamed_device 26.8 MiB 0.94 1071 7684 1846 5129 709 65.5 MiB 0.07 0.00 2.82209 -104.377 -2.82209 2.82209 1.07 0.000502384 0.000458767 0.0261681 0.0239059 38 2765 27 6.99608e+06 235451 678818. 2348.85 3.84 0.168867 0.14871 26626 170182 -1 2231 20 1555 1618 147730 30225 3.10026 3.10026 -124.754 -3.10026 0 0 902133. 3121.57 0.37 0.07 0.17 -1 -1 0.37 0.0260461 0.0231754 99 77 0 0 89 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_038.v common 10.24 vpr 65.72 MiB 0.02 7424 -1 -1 1 0.04 -1 -1 34032 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67300 31 32 391 309 1 242 81 17 17 289 -1 unnamed_device 27.0 MiB 0.93 1232 9356 2590 6089 677 65.7 MiB 0.09 0.00 2.97859 -111.89 -2.97859 2.97859 1.01 0.000530125 0.000482919 0.032185 0.0293992 46 3007 28 6.99608e+06 264882 828058. 2865.25 5.79 0.236302 0.205952 28066 200906 -1 2539 22 1932 2621 219265 44441 3.52316 3.52316 -138.052 -3.52316 0 0 1.01997e+06 3529.29 0.44 0.09 0.20 -1 -1 0.44 0.0315322 0.0279362 105 59 60 30 62 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_039.v common 7.10 vpr 65.82 MiB 0.02 7384 -1 -1 1 0.04 -1 -1 34224 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67400 31 32 455 371 1 302 86 17 17 289 -1 unnamed_device 27.6 MiB 1.12 1347 16151 6311 8218 1622 65.8 MiB 0.13 0.00 3.66267 -129.515 -3.66267 3.66267 0.97 0.000560825 0.000509202 0.0539669 0.0491487 46 3354 34 6.99608e+06 338461 828058. 2865.25 2.57 0.189841 0.1692 28066 200906 -1 2620 21 2380 2727 206297 43292 4.62714 4.62714 -167.002 -4.62714 0 0 1.01997e+06 3529.29 0.41 0.09 0.17 -1 -1 0.41 0.0329572 0.029601 138 111 0 0 124 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_040.v common 13.04 vpr 65.66 MiB 0.03 7528 -1 -1 1 0.04 -1 -1 34024 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67236 31 32 413 333 1 258 82 17 17 289 -1 unnamed_device 27.1 MiB 3.84 1256 12542 4495 6190 1857 65.7 MiB 0.12 0.00 3.95733 -132.442 -3.95733 3.95733 1.06 0.000618243 0.000560351 0.0456875 0.041417 44 3553 31 6.99608e+06 279598 787024. 2723.27 5.52 0.304768 0.26724 27778 195446 -1 2680 21 2126 2826 217200 45754 4.94004 4.94004 -169.312 -4.94004 0 0 997811. 3452.63 0.47 0.10 0.19 -1 -1 0.47 0.0366792 0.0330363 117 86 31 31 89 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_041.v common 9.74 vpr 65.76 MiB 0.02 7204 -1 -1 1 0.04 -1 -1 34060 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67336 31 32 391 309 1 241 83 17 17 289 -1 unnamed_device 26.9 MiB 2.78 1035 14483 5447 6863 2173 65.8 MiB 0.12 0.00 2.94309 -104.399 -2.94309 2.94309 1.00 0.000540236 0.000492269 0.0468751 0.0427041 48 2996 48 6.99608e+06 294314 865456. 2994.66 3.45 0.204056 0.178876 28354 207349 -1 2519 21 2017 2653 224389 48499 3.59716 3.59716 -139.049 -3.59716 0 0 1.05005e+06 3633.38 0.43 0.10 0.18 -1 -1 0.43 0.0337387 0.0303545 107 58 60 31 62 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_042.v common 12.16 vpr 66.00 MiB 0.02 7292 -1 -1 1 0.04 -1 -1 34088 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67580 32 32 407 319 1 252 81 17 17 289 -1 unnamed_device 27.2 MiB 1.00 973 7781 2704 3826 1251 66.0 MiB 0.07 0.00 3.16475 -113.697 -3.16475 3.16475 1.07 0.000550018 0.00050116 0.0285848 0.0261292 64 2354 30 6.99608e+06 250167 1.08113e+06 3740.92 7.35 0.306865 0.270499 31522 276338 -1 1952 19 1823 2223 158427 37423 3.93182 3.93182 -141.261 -3.93182 0 0 1.36325e+06 4717.13 0.58 0.08 0.28 -1 -1 0.58 0.0281135 0.0251209 110 42 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_043.v common 13.29 vpr 65.98 MiB 0.03 7616 -1 -1 1 0.04 -1 -1 33944 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67568 32 32 496 380 1 313 86 17 17 289 -1 unnamed_device 27.6 MiB 2.41 1461 16340 5665 8438 2237 66.0 MiB 0.16 0.00 3.89803 -142.659 -3.89803 3.89803 1.10 0.000689412 0.000619193 0.0632999 0.0575107 44 4611 38 6.99608e+06 323745 787024. 2723.27 6.92 0.396944 0.348444 27778 195446 -1 3475 24 3498 4835 404322 82931 5.1314 5.1314 -184.53 -5.1314 0 0 997811. 3452.63 0.48 0.16 0.20 -1 -1 0.48 0.0476566 0.0429827 139 91 62 32 96 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_044.v common 6.83 vpr 64.92 MiB 0.02 7236 -1 -1 1 0.03 -1 -1 33800 -1 -1 13 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 31 32 305 250 1 181 76 17 17 289 -1 unnamed_device 26.4 MiB 0.93 643 9676 3964 5417 295 64.9 MiB 0.07 0.00 2.6383 -95.3164 -2.6383 2.6383 1.08 0.000463007 0.000422852 0.0294049 0.026878 40 2065 39 6.99608e+06 191304 706193. 2443.58 2.39 0.182591 0.161396 26914 176310 -1 1607 24 1534 1902 187716 54404 3.24217 3.24217 -124.658 -3.24217 0 0 926341. 3205.33 0.42 0.09 0.16 -1 -1 0.42 0.0285906 0.0254607 75 24 62 31 31 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_045.v common 11.14 vpr 65.95 MiB 0.02 7420 -1 -1 1 0.04 -1 -1 34072 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67528 31 32 395 311 1 243 81 17 17 289 -1 unnamed_device 27.1 MiB 0.80 1057 14606 6252 7894 460 65.9 MiB 0.12 0.00 3.56194 -124.493 -3.56194 3.56194 1.07 0.000518431 0.000470039 0.0500991 0.0456868 44 3300 47 6.99608e+06 264882 787024. 2723.27 6.74 0.335632 0.294632 27778 195446 -1 2466 20 2093 2574 202591 44850 4.34131 4.34131 -156.898 -4.34131 0 0 997811. 3452.63 0.44 0.09 0.18 -1 -1 0.44 0.03164 0.0284638 106 59 62 31 62 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_046.v common 10.32 vpr 65.84 MiB 0.02 7168 -1 -1 1 0.04 -1 -1 34088 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67416 32 32 397 313 1 246 84 17 17 289 -1 unnamed_device 26.9 MiB 1.28 1286 16554 5588 8812 2154 65.8 MiB 0.13 0.00 2.98659 -112.128 -2.98659 2.98659 1.01 0.00062892 0.000576853 0.0535134 0.0488296 44 3387 28 6.99608e+06 294314 787024. 2723.27 5.50 0.266687 0.232629 27778 195446 -1 2735 21 1994 2857 232652 47426 3.57336 3.57336 -139.796 -3.57336 0 0 997811. 3452.63 0.46 0.10 0.18 -1 -1 0.46 0.03413 0.0306739 108 54 62 32 62 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_047.v common 8.38 vpr 65.25 MiB 0.02 7060 -1 -1 1 0.04 -1 -1 33708 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 32 32 345 257 1 186 77 17 17 289 -1 unnamed_device 26.6 MiB 0.87 838 8716 3616 4807 293 65.3 MiB 0.07 0.00 2.92079 -108.122 -2.92079 2.92079 0.96 0.000465523 0.000424497 0.0286109 0.0261774 48 2993 42 6.99608e+06 191304 865456. 2994.66 4.17 0.185543 0.16418 28354 207349 -1 2416 23 2001 3458 361645 78058 4.42516 4.42516 -167.046 -4.42516 0 0 1.05005e+06 3633.38 0.44 0.12 0.18 -1 -1 0.44 0.0305859 0.0273988 77 -1 128 32 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_048.v common 10.60 vpr 65.74 MiB 0.02 7516 -1 -1 1 0.04 -1 -1 34060 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67320 32 32 424 343 1 266 83 17 17 289 -1 unnamed_device 27.2 MiB 1.51 1140 12863 3244 9166 453 65.7 MiB 0.11 0.00 2.82204 -105.252 -2.82204 2.82204 1.06 0.000666632 0.000613879 0.0459863 0.04203 46 3271 31 6.99608e+06 279598 828058. 2865.25 5.50 0.279163 0.24404 28066 200906 -1 2450 21 2146 2624 209445 44293 3.59341 3.59341 -135.28 -3.59341 0 0 1.01997e+06 3529.29 0.42 0.09 0.20 -1 -1 0.42 0.0316881 0.028182 120 81 25 25 96 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_049.v common 8.05 vpr 65.54 MiB 0.02 7172 -1 -1 1 0.04 -1 -1 33632 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67112 32 32 395 311 1 242 84 17 17 289 -1 unnamed_device 26.8 MiB 1.08 1242 14358 4248 8279 1831 65.5 MiB 0.12 0.00 2.95229 -111.693 -2.95229 2.95229 1.06 0.000552241 0.000502056 0.0473726 0.0432934 40 3382 29 6.99608e+06 294314 706193. 2443.58 3.37 0.215797 0.19186 26914 176310 -1 2891 23 2392 3323 345513 71442 4.07636 4.07636 -155.527 -4.07636 0 0 926341. 3205.33 0.41 0.12 0.16 -1 -1 0.41 0.0362414 0.0325394 106 58 64 32 60 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_050.v common 8.21 vpr 65.75 MiB 0.02 7184 -1 -1 1 0.04 -1 -1 33752 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67328 32 32 405 318 1 253 81 17 17 289 -1 unnamed_device 27.0 MiB 0.82 1139 14431 5158 6729 2544 65.8 MiB 0.12 0.00 2.95409 -111.977 -2.95409 2.95409 1.04 0.000555931 0.000503159 0.0504037 0.0458216 40 3512 35 6.99608e+06 250167 706193. 2443.58 3.82 0.197211 0.172914 26914 176310 -1 3072 31 2965 3949 589035 156112 3.60016 3.60016 -141.863 -3.60016 0 0 926341. 3205.33 0.37 0.18 0.17 -1 -1 0.37 0.0400162 0.0353839 108 61 63 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_051.v common 7.54 vpr 65.68 MiB 0.02 7116 -1 -1 1 0.04 -1 -1 34116 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67260 32 32 376 288 1 218 80 17 17 289 -1 unnamed_device 27.0 MiB 1.11 820 12636 5342 6778 516 65.7 MiB 0.11 0.00 3.25275 -116.146 -3.25275 3.25275 1.02 0.000530782 0.000482835 0.0441011 0.0402255 48 2699 26 6.99608e+06 235451 865456. 2994.66 2.92 0.179608 0.157357 28354 207349 -1 2314 23 2099 3015 286727 65265 4.46426 4.46426 -155.583 -4.46426 0 0 1.05005e+06 3633.38 0.44 0.11 0.20 -1 -1 0.44 0.0318336 0.0283913 94 21 96 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_052.v common 7.16 vpr 65.50 MiB 0.03 7212 -1 -1 1 0.04 -1 -1 34276 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67076 32 32 407 319 1 251 82 17 17 289 -1 unnamed_device 26.7 MiB 0.95 996 15390 5720 7350 2320 65.5 MiB 0.11 0.00 3.20395 -115.16 -3.20395 3.20395 0.97 0.000504775 0.000461059 0.0482828 0.0441156 46 2697 37 6.99608e+06 264882 828058. 2865.25 2.90 0.207654 0.183974 28066 200906 -1 1871 28 2540 3128 200512 48308 4.31872 4.31872 -160.552 -4.31872 0 0 1.01997e+06 3529.29 0.41 0.09 0.17 -1 -1 0.41 0.0364451 0.0325259 110 50 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_053.v common 9.65 vpr 65.77 MiB 0.03 7580 -1 -1 1 0.04 -1 -1 34248 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67344 31 32 449 367 1 290 85 17 17 289 -1 unnamed_device 27.6 MiB 1.79 1480 17197 6380 8322 2495 65.8 MiB 0.15 0.00 3.20798 -117.116 -3.20798 3.20798 1.04 0.000625772 0.000570266 0.0598684 0.0544924 38 4321 47 6.99608e+06 323745 678818. 2348.85 4.32 0.213824 0.18769 26626 170182 -1 3352 23 2422 2896 266672 53170 4.22995 4.22995 -155.578 -4.22995 0 0 902133. 3121.57 0.37 0.10 0.16 -1 -1 0.37 0.0332991 0.0295341 132 110 0 0 122 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_054.v common 8.69 vpr 65.73 MiB 0.02 7188 -1 -1 1 0.04 -1 -1 33888 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67308 32 32 432 346 1 281 84 17 17 289 -1 unnamed_device 27.3 MiB 1.17 1498 13809 4316 7356 2137 65.7 MiB 0.12 0.00 3.10545 -118.488 -3.10545 3.10545 1.05 0.00058686 0.000534693 0.048706 0.0443876 48 3714 50 6.99608e+06 294314 865456. 2994.66 3.83 0.229091 0.202035 28354 207349 -1 3165 24 2858 4076 389772 78409 3.99012 3.99012 -154.538 -3.99012 0 0 1.05005e+06 3633.38 0.47 0.13 0.20 -1 -1 0.47 0.0368768 0.0331361 126 86 32 32 94 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_055.v common 18.17 vpr 65.07 MiB 0.02 6916 -1 -1 1 0.04 -1 -1 34116 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 32 32 312 255 1 191 78 17 17 289 -1 unnamed_device 26.6 MiB 0.61 779 10204 4217 5723 264 65.1 MiB 0.08 0.00 2.59005 -96.7251 -2.59005 2.59005 1.06 0.000498635 0.000449009 0.0318717 0.0289725 40 2341 49 6.99608e+06 206020 706193. 2443.58 14.04 0.293736 0.254408 26914 176310 -1 1973 31 1972 2657 372778 138793 3.27222 3.27222 -126.894 -3.27222 0 0 926341. 3205.33 0.37 0.16 0.18 -1 -1 0.37 0.0355313 0.0314866 80 20 63 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_056.v common 8.07 vpr 65.68 MiB 0.02 7088 -1 -1 1 0.03 -1 -1 33452 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67260 32 32 370 314 1 244 80 17 17 289 -1 unnamed_device 27.0 MiB 1.01 1028 12292 5144 6910 238 65.7 MiB 0.10 0.00 3.05483 -110.957 -3.05483 3.05483 1.00 0.000510953 0.000463005 0.0395947 0.0359803 46 3280 32 6.99608e+06 235451 828058. 2865.25 3.59 0.175861 0.153599 28066 200906 -1 2378 25 2263 2676 285166 57362 4.30411 4.30411 -156.019 -4.30411 0 0 1.01997e+06 3529.29 0.44 0.11 0.18 -1 -1 0.44 0.0368908 0.0329217 108 91 0 0 94 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_057.v common 9.29 vpr 65.75 MiB 0.03 7424 -1 -1 1 0.04 -1 -1 34204 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67328 32 32 469 351 1 285 84 17 17 289 -1 unnamed_device 27.5 MiB 0.99 1266 14358 5546 6703 2109 65.8 MiB 0.13 0.00 3.74629 -132.006 -3.74629 3.74629 0.99 0.000634064 0.000577439 0.0529759 0.0482342 50 4592 45 6.99608e+06 294314 902133. 3121.57 4.71 0.229742 0.201844 28642 213929 -1 3106 24 2844 3871 356406 74220 5.20516 5.20516 -182.909 -5.20516 0 0 1.08113e+06 3740.92 0.44 0.13 0.21 -1 -1 0.44 0.0389058 0.0345008 126 53 96 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_058.v common 8.80 vpr 65.56 MiB 0.02 7072 -1 -1 1 0.03 -1 -1 34144 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67136 32 32 368 284 1 217 80 17 17 289 -1 unnamed_device 26.8 MiB 0.72 1085 11776 3392 7101 1283 65.6 MiB 0.10 0.00 2.95409 -117.598 -2.95409 2.95409 1.02 0.000535321 0.000486152 0.0398658 0.0362766 38 3000 39 6.99608e+06 235451 678818. 2348.85 4.65 0.189082 0.165413 26626 170182 -1 2565 22 1901 2489 224024 45475 3.48286 3.48286 -143.144 -3.48286 0 0 902133. 3121.57 0.37 0.09 0.17 -1 -1 0.37 0.0309808 0.0275563 93 31 92 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_059.v common 7.02 vpr 65.06 MiB 0.02 7000 -1 -1 1 0.03 -1 -1 33552 -1 -1 24 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66624 30 32 296 244 1 177 86 17 17 289 -1 unnamed_device 26.5 MiB 0.80 680 13694 4954 6724 2016 65.1 MiB 0.10 0.00 3.12594 -100.045 -3.12594 3.12594 1.02 0.000512409 0.000465169 0.0357536 0.0325356 46 2388 42 6.99608e+06 353176 828058. 2865.25 2.76 0.142406 0.124537 28066 200906 -1 1624 22 1457 2131 170633 38017 3.58616 3.58616 -128.623 -3.58616 0 0 1.01997e+06 3529.29 0.42 0.07 0.19 -1 -1 0.42 0.0235489 0.0207948 80 29 60 30 30 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_060.v common 9.18 vpr 65.96 MiB 0.02 7524 -1 -1 1 0.04 -1 -1 34176 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67548 32 32 531 413 1 346 88 17 17 289 -1 unnamed_device 27.9 MiB 0.91 1577 16078 6408 7943 1727 66.0 MiB 0.14 0.00 4.47287 -159.339 -4.47287 4.47287 0.94 0.000642246 0.00056662 0.0576946 0.0525729 46 4872 28 6.99608e+06 353176 828058. 2865.25 4.86 0.241174 0.214352 28066 200906 -1 3398 25 3580 4519 404493 80576 5.73009 5.73009 -206.988 -5.73009 0 0 1.01997e+06 3529.29 0.41 0.14 0.17 -1 -1 0.41 0.0440479 0.0396024 159 109 32 32 128 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_061.v common 8.06 vpr 65.81 MiB 0.02 7116 -1 -1 1 0.04 -1 -1 33892 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67388 32 32 376 288 1 217 80 17 17 289 -1 unnamed_device 27.0 MiB 0.88 866 14700 5360 7136 2204 65.8 MiB 0.12 0.00 3.52464 -126.298 -3.52464 3.52464 1.02 0.000533276 0.000485656 0.0504701 0.0459279 38 3132 36 6.99608e+06 235451 678818. 2348.85 3.62 0.189334 0.16698 26626 170182 -1 2356 25 2485 3199 258308 58077 4.54661 4.54661 -170.872 -4.54661 0 0 902133. 3121.57 0.39 0.10 0.16 -1 -1 0.39 0.0345935 0.0308348 92 31 96 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_062.v common 6.26 vpr 64.96 MiB 0.02 6896 -1 -1 1 0.03 -1 -1 33972 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 32 32 283 225 1 158 88 17 17 289 -1 unnamed_device 26.5 MiB 0.28 655 12763 5266 7184 313 65.0 MiB 0.09 0.00 2.48655 -92.9547 -2.48655 2.48655 1.00 0.000428762 0.000388712 0.0319228 0.0291432 48 1874 22 6.99608e+06 353176 865456. 2994.66 2.56 0.138315 0.120939 28354 207349 -1 1599 22 1539 2403 201370 44420 3.00732 3.00732 -120.09 -3.00732 0 0 1.05005e+06 3633.38 0.42 0.08 0.20 -1 -1 0.42 0.0241224 0.0213585 70 -1 96 32 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_063.v common 8.35 vpr 65.78 MiB 0.03 7236 -1 -1 1 0.04 -1 -1 34496 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67360 32 32 438 320 1 256 82 17 17 289 -1 unnamed_device 27.1 MiB 0.88 1146 10940 4472 6065 403 65.8 MiB 0.10 0.00 3.69799 -132.667 -3.69799 3.69799 1.05 0.000602215 0.000541318 0.0433055 0.0394394 50 3497 32 6.99608e+06 264882 902133. 3121.57 3.73 0.212321 0.187301 28642 213929 -1 2762 23 2687 3794 353138 83664 5.02986 5.02986 -183.346 -5.02986 0 0 1.08113e+06 3740.92 0.47 0.13 0.21 -1 -1 0.47 0.0370293 0.0332701 112 26 128 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_064.v common 8.76 vpr 64.91 MiB 0.02 6836 -1 -1 1 0.04 -1 -1 33760 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 32 32 283 225 1 156 74 17 17 289 -1 unnamed_device 26.5 MiB 0.34 585 10149 4277 5628 244 64.9 MiB 0.08 0.00 2.35025 -91.33 -2.35025 2.35025 1.06 0.000440176 0.000399391 0.0331446 0.0302079 44 1903 25 6.99608e+06 147157 787024. 2723.27 4.93 0.197123 0.172016 27778 195446 -1 1401 23 1493 2229 148049 34635 3.05562 3.05562 -116.589 -3.05562 0 0 997811. 3452.63 0.42 0.07 0.18 -1 -1 0.42 0.0253029 0.0223739 62 -1 96 32 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_065.v common 6.73 vpr 64.84 MiB 0.02 7264 -1 -1 1 0.03 -1 -1 33844 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 30 32 296 244 1 179 77 17 17 289 -1 unnamed_device 26.3 MiB 0.83 651 11161 4650 5974 537 64.8 MiB 0.08 0.00 2.68144 -93.3928 -2.68144 2.68144 0.97 0.000391944 0.000355596 0.0306212 0.0279405 52 2145 50 6.99608e+06 220735 926341. 3205.33 2.58 0.167149 0.147355 29218 227130 -1 1615 21 1510 1958 176924 51419 3.58517 3.58517 -124.552 -3.58517 0 0 1.14541e+06 3963.36 0.47 0.08 0.19 -1 -1 0.47 0.0250939 0.0225066 74 29 60 30 30 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_066.v common 10.93 vpr 65.59 MiB 0.02 7360 -1 -1 1 0.04 -1 -1 34136 -1 -1 20 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67164 29 32 393 319 1 245 81 17 17 289 -1 unnamed_device 27.1 MiB 1.97 1114 16706 6522 7409 2775 65.6 MiB 0.13 0.00 3.08733 -101.959 -3.08733 3.08733 0.99 0.000535781 0.00048458 0.055645 0.0505597 46 3110 27 6.99608e+06 294314 828058. 2865.25 5.43 0.244304 0.21284 28066 200906 -1 2320 19 1881 2460 179885 38399 3.69 3.69 -128.952 -3.69 0 0 1.01997e+06 3529.29 0.44 0.08 0.19 -1 -1 0.44 0.0296355 0.0263609 113 81 29 29 85 29 -fixed_k6_frac_2uripple_N8_22nm.xml mult_067.v common 7.66 vpr 65.91 MiB 0.03 7172 -1 -1 1 0.04 -1 -1 34196 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67496 32 32 407 319 1 249 82 17 17 289 -1 unnamed_device 27.1 MiB 1.16 1185 10050 3468 4807 1775 65.9 MiB 0.10 0.00 3.54484 -133.077 -3.54484 3.54484 1.10 0.000573988 0.00052083 0.0372124 0.0338498 42 3575 49 6.99608e+06 264882 744469. 2576.02 2.78 0.212363 0.186857 27202 183097 -1 2883 23 2725 3578 370055 73025 4.65291 4.65291 -178.011 -4.65291 0 0 949917. 3286.91 0.43 0.13 0.18 -1 -1 0.43 0.0354299 0.0318243 109 53 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_068.v common 10.93 vpr 65.91 MiB 0.02 7412 -1 -1 1 0.04 -1 -1 34216 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67492 32 32 407 319 1 249 82 17 17 289 -1 unnamed_device 27.1 MiB 1.22 1114 14500 4614 8523 1363 65.9 MiB 0.13 0.00 3.53384 -127.384 -3.53384 3.53384 1.10 0.000585863 0.00053444 0.0511871 0.0466489 48 2987 23 6.99608e+06 264882 865456. 2994.66 5.92 0.281341 0.244837 28354 207349 -1 2605 22 2703 3614 345310 70178 4.51061 4.51061 -168.398 -4.51061 0 0 1.05005e+06 3633.38 0.46 0.11 0.21 -1 -1 0.46 0.0319123 0.0283886 110 55 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_069.v common 6.95 vpr 65.35 MiB 0.02 7268 -1 -1 1 0.03 -1 -1 34192 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66920 32 32 345 287 1 212 79 17 17 289 -1 unnamed_device 26.9 MiB 0.74 872 11909 4956 6693 260 65.4 MiB 0.09 0.00 2.70344 -102.131 -2.70344 2.70344 1.01 0.000487108 0.000445727 0.0354613 0.0323794 38 2802 47 6.99608e+06 220735 678818. 2348.85 2.92 0.172468 0.153071 26626 170182 -1 2021 22 1897 2164 184172 40011 3.34951 3.34951 -130.674 -3.34951 0 0 902133. 3121.57 0.36 0.08 0.14 -1 -1 0.36 0.0297368 0.0268117 92 55 32 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_070.v common 11.36 vpr 65.33 MiB 0.02 7116 -1 -1 1 0.04 -1 -1 34080 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66900 31 32 353 302 1 230 80 17 17 289 -1 unnamed_device 26.9 MiB 3.07 1062 11948 4657 6135 1156 65.3 MiB 0.10 0.00 2.64844 -100.934 -2.64844 2.64844 1.03 0.000497459 0.000452224 0.038198 0.034798 44 2935 26 6.99608e+06 250167 787024. 2723.27 4.81 0.220912 0.192067 27778 195446 -1 2352 19 1776 2180 190180 39106 3.27451 3.27451 -128.754 -3.27451 0 0 997811. 3452.63 0.39 0.08 0.19 -1 -1 0.39 0.024206 0.021625 102 82 0 0 89 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_071.v common 25.32 vpr 65.14 MiB 0.02 7156 -1 -1 1 0.04 -1 -1 34164 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66700 30 32 374 297 1 226 81 17 17 289 -1 unnamed_device 26.6 MiB 1.29 934 10231 4137 5520 574 65.1 MiB 0.09 0.00 2.77704 -93.9132 -2.77704 2.77704 1.06 0.000561301 0.00051163 0.0382142 0.0347238 44 3390 38 6.99608e+06 279598 787024. 2723.27 20.52 0.316228 0.274704 27778 195446 -1 2218 19 2015 2787 214209 49007 3.47252 3.47252 -122.864 -3.47252 0 0 997811. 3452.63 0.41 0.08 0.19 -1 -1 0.41 0.0258608 0.0231021 101 52 60 30 57 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_072.v common 8.26 vpr 65.19 MiB 0.03 7120 -1 -1 1 0.04 -1 -1 34036 -1 -1 18 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 28 32 332 260 1 197 78 17 17 289 -1 unnamed_device 26.6 MiB 0.79 828 7548 3007 4138 403 65.2 MiB 0.07 0.00 3.17575 -100.321 -3.17575 3.17575 1.14 0.000490904 0.000436184 0.0262015 0.0240386 40 2612 26 6.99608e+06 264882 706193. 2443.58 3.79 0.166074 0.146309 26914 176310 -1 2129 20 1845 2634 225804 49242 4.23372 4.23372 -142.014 -4.23372 0 0 926341. 3205.33 0.42 0.09 0.17 -1 -1 0.42 0.0293557 0.0264528 87 20 84 28 28 28 -fixed_k6_frac_2uripple_N8_22nm.xml mult_073.v common 11.98 vpr 65.59 MiB 0.02 7316 -1 -1 1 0.04 -1 -1 33912 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67168 30 32 325 273 1 204 77 17 17 289 -1 unnamed_device 26.7 MiB 2.05 863 11161 4622 6074 465 65.6 MiB 0.09 0.00 3.64224 -118.696 -3.64224 3.64224 1.05 0.0004186 0.000381209 0.0358011 0.0325793 50 2461 41 6.99608e+06 220735 902133. 3121.57 6.34 0.268506 0.236442 28642 213929 -1 1933 26 1689 2272 201362 43150 4.04571 4.04571 -139.684 -4.04571 0 0 1.08113e+06 3740.92 0.48 0.09 0.20 -1 -1 0.48 0.03051 0.0271878 88 58 30 30 60 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_074.v common 13.03 vpr 65.66 MiB 0.02 7140 -1 -1 1 0.04 -1 -1 33472 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67236 32 32 361 308 1 241 79 17 17 289 -1 unnamed_device 26.9 MiB 3.62 1136 13430 4903 6791 1736 65.7 MiB 0.12 0.00 3.21599 -114.074 -3.21599 3.21599 1.10 0.000563843 0.000512035 0.0460095 0.0418497 46 2819 35 6.99608e+06 220735 828058. 2865.25 5.69 0.244651 0.213237 28066 200906 -1 2272 21 1807 2209 198351 40349 3.25856 3.25856 -132.742 -3.25856 0 0 1.01997e+06 3529.29 0.45 0.08 0.20 -1 -1 0.45 0.0274714 0.0243012 104 88 0 0 91 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_075.v common 9.77 vpr 65.12 MiB 0.02 7084 -1 -1 1 0.04 -1 -1 33652 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 31 32 335 251 1 188 88 17 17 289 -1 unnamed_device 26.7 MiB 0.16 859 15493 5878 7168 2447 65.1 MiB 0.11 0.00 3.13845 -110.277 -3.13845 3.13845 1.08 0.000496212 0.000453619 0.0445616 0.0405313 54 2167 28 6.99608e+06 367892 949917. 3286.91 5.83 0.243337 0.212582 29506 232905 -1 1724 25 1888 2873 205106 44544 3.90982 3.90982 -140.626 -3.90982 0 0 1.17392e+06 4061.99 0.53 0.09 0.24 -1 -1 0.53 0.0312166 0.0277502 86 -1 124 31 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_076.v common 8.66 vpr 65.45 MiB 0.02 7260 -1 -1 1 0.04 -1 -1 34040 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67024 32 32 407 319 1 249 81 17 17 289 -1 unnamed_device 26.7 MiB 0.81 1269 14081 4102 8553 1426 65.5 MiB 0.13 0.00 3.55094 -133.482 -3.55094 3.55094 1.11 0.000624341 0.000560322 0.0522866 0.0475969 44 3652 33 6.99608e+06 250167 787024. 2723.27 4.17 0.189579 0.167486 27778 195446 -1 2899 20 2043 2579 218040 42669 4.3303 4.3303 -160.781 -4.3303 0 0 997811. 3452.63 0.41 0.09 0.19 -1 -1 0.41 0.0296552 0.0264622 110 57 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_077.v common 10.17 vpr 65.70 MiB 0.02 7420 -1 -1 1 0.03 -1 -1 34084 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67276 32 32 407 319 1 248 82 17 17 289 -1 unnamed_device 27.1 MiB 0.68 1082 13788 5263 6408 2117 65.7 MiB 0.12 0.00 4.23178 -141.686 -4.23178 4.23178 1.00 0.000544739 0.000499822 0.0478986 0.0438734 48 3490 35 6.99608e+06 264882 865456. 2994.66 5.95 0.212512 0.188901 28354 207349 -1 2638 23 2577 3550 394973 88798 4.88579 4.88579 -179.792 -4.88579 0 0 1.05005e+06 3633.38 0.45 0.14 0.18 -1 -1 0.45 0.0366495 0.0331202 108 62 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_078.v common 8.55 vpr 65.98 MiB 0.03 7360 -1 -1 1 0.04 -1 -1 33996 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67564 32 32 399 315 1 250 82 17 17 289 -1 unnamed_device 27.1 MiB 0.78 1204 15212 6244 6660 2308 66.0 MiB 0.13 0.00 3.36648 -124.354 -3.36648 3.36648 1.04 0.000533963 0.000485512 0.052082 0.0474037 44 3892 41 6.99608e+06 264882 787024. 2723.27 4.20 0.211843 0.185665 27778 195446 -1 2910 21 2263 3233 280941 57401 4.60785 4.60785 -161.062 -4.60785 0 0 997811. 3452.63 0.40 0.10 0.19 -1 -1 0.40 0.0301105 0.0267821 107 62 60 30 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_079.v common 8.17 vpr 64.93 MiB 0.02 7280 -1 -1 1 0.04 -1 -1 33584 -1 -1 13 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 30 32 296 244 1 179 75 17 17 289 -1 unnamed_device 26.4 MiB 0.98 663 12557 5340 6750 467 64.9 MiB 0.10 0.00 2.92109 -101.256 -2.92109 2.92109 1.08 0.000430534 0.000392002 0.0409651 0.0373035 40 2483 26 6.99608e+06 191304 706193. 2443.58 3.62 0.158489 0.138681 26914 176310 -1 2025 17 1436 1969 181220 41147 3.70046 3.70046 -136.772 -3.70046 0 0 926341. 3205.33 0.40 0.07 0.16 -1 -1 0.40 0.022758 0.0203865 76 29 60 30 30 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_080.v common 11.32 vpr 65.73 MiB 0.03 7460 -1 -1 1 0.04 -1 -1 33984 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67304 30 32 383 303 1 237 80 17 17 289 -1 unnamed_device 27.0 MiB 2.88 929 14700 4062 8555 2083 65.7 MiB 0.13 0.00 3.81003 -124.877 -3.81003 3.81003 1.05 0.000557149 0.000510664 0.0520533 0.047623 40 3177 50 6.99608e+06 264882 706193. 2443.58 4.84 0.231837 0.204764 26914 176310 -1 2657 22 2517 3524 337781 74358 4.99204 4.99204 -175.627 -4.99204 0 0 926341. 3205.33 0.37 0.11 0.17 -1 -1 0.37 0.0305906 0.0271227 105 58 60 30 60 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_081.v common 10.85 vpr 65.67 MiB 0.03 7452 -1 -1 1 0.04 -1 -1 34236 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67248 32 32 469 381 1 309 86 17 17 289 -1 unnamed_device 27.4 MiB 0.91 1345 15017 6354 8239 424 65.7 MiB 0.14 0.00 3.42564 -127.072 -3.42564 3.42564 1.09 0.000592544 0.000536907 0.0556463 0.0507029 46 3840 47 6.99608e+06 323745 828058. 2865.25 6.17 0.33462 0.291944 28066 200906 -1 2840 24 2657 2726 254819 50257 4.38025 4.38025 -166.865 -4.38025 0 0 1.01997e+06 3529.29 0.43 0.11 0.20 -1 -1 0.43 0.0370364 0.0327555 139 106 0 0 128 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_082.v common 11.23 vpr 65.59 MiB 0.03 7424 -1 -1 1 0.04 -1 -1 34032 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67168 31 32 425 341 1 275 85 17 17 289 -1 unnamed_device 27.3 MiB 1.74 1230 13105 5472 7246 387 65.6 MiB 0.12 0.00 3.52904 -124.805 -3.52904 3.52904 1.13 0.000770094 0.000709302 0.0478291 0.0436718 38 3458 41 6.99608e+06 323745 678818. 2348.85 5.86 0.228978 0.201859 26626 170182 -1 2603 21 2384 2843 215615 46282 4.64511 4.64511 -162.859 -4.64511 0 0 902133. 3121.57 0.37 0.10 0.15 -1 -1 0.37 0.0358148 0.0323338 125 79 31 31 93 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_083.v common 27.11 vpr 65.73 MiB 0.03 7528 -1 -1 1 0.04 -1 -1 34244 -1 -1 22 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67312 30 32 404 328 1 249 84 17 17 289 -1 unnamed_device 27.2 MiB 3.36 1063 15090 5034 7228 2828 65.7 MiB 0.14 0.00 3.51688 -108.447 -3.51688 3.51688 1.11 0.000611141 0.000562379 0.0554908 0.0507939 38 4125 45 6.99608e+06 323745 678818. 2348.85 19.98 0.366229 0.32119 26626 170182 -1 2813 25 2735 3854 377245 78167 4.8054 4.8054 -169.877 -4.8054 0 0 902133. 3121.57 0.40 0.13 0.17 -1 -1 0.40 0.0383949 0.0344336 114 83 26 26 90 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_084.v common 9.88 vpr 65.84 MiB 0.02 7188 -1 -1 1 0.04 -1 -1 33948 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67424 32 32 407 319 1 252 82 17 17 289 -1 unnamed_device 27.3 MiB 1.08 1112 15212 5603 7637 1972 65.8 MiB 0.12 0.00 3.54484 -127.964 -3.54484 3.54484 0.96 0.000536751 0.000489439 0.0494838 0.0453031 48 3164 24 6.99608e+06 264882 865456. 2994.66 5.34 0.287493 0.253502 28354 207349 -1 2658 22 2691 3663 377033 79654 5.28741 5.28741 -179.862 -5.28741 0 0 1.05005e+06 3633.38 0.44 0.12 0.18 -1 -1 0.44 0.0337281 0.0302245 110 58 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_085.v common 11.59 vpr 65.71 MiB 0.03 7484 -1 -1 1 0.03 -1 -1 34196 -1 -1 20 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67284 29 32 387 316 1 240 81 17 17 289 -1 unnamed_device 27.0 MiB 2.07 1035 11631 4213 5913 1505 65.7 MiB 0.09 0.00 2.90529 -95.1703 -2.90529 2.90529 1.00 0.000524644 0.000470505 0.0386341 0.0351279 54 2385 20 6.99608e+06 294314 949917. 3286.91 5.99 0.27392 0.238668 29506 232905 -1 1981 22 1830 2456 174454 38288 3.42781 3.42781 -119.347 -3.42781 0 0 1.17392e+06 4061.99 0.50 0.09 0.22 -1 -1 0.50 0.0339654 0.0302956 112 81 26 26 85 29 -fixed_k6_frac_2uripple_N8_22nm.xml mult_086.v common 9.45 vpr 64.55 MiB 0.02 7144 -1 -1 1 0.03 -1 -1 33964 -1 -1 10 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 32 32 283 225 1 155 74 17 17 289 -1 unnamed_device 26.1 MiB 0.79 616 9684 4011 5353 320 64.5 MiB 0.07 0.00 2.36125 -91.4141 -2.36125 2.36125 0.98 0.000424823 0.000387889 0.0294173 0.0267367 46 2077 31 6.99608e+06 147157 828058. 2865.25 5.26 0.223487 0.195668 28066 200906 -1 1588 23 1515 2362 162461 37752 3.26222 3.26222 -126.442 -3.26222 0 0 1.01997e+06 3529.29 0.46 0.08 0.19 -1 -1 0.46 0.025414 0.022758 62 -1 96 32 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_087.v common 11.39 vpr 65.83 MiB 0.02 7404 -1 -1 1 0.04 -1 -1 34128 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67408 32 32 407 319 1 251 82 17 17 289 -1 unnamed_device 27.3 MiB 0.82 1043 14678 6180 8072 426 65.8 MiB 0.13 0.00 4.01233 -140.857 -4.01233 4.01233 1.05 0.000617028 0.000544198 0.052063 0.0474123 46 3763 41 6.99608e+06 264882 828058. 2865.25 6.88 0.215473 0.189134 28066 200906 -1 2585 21 2404 3183 291217 61716 5.2457 5.2457 -182.3 -5.2457 0 0 1.01997e+06 3529.29 0.46 0.11 0.21 -1 -1 0.46 0.0322443 0.028861 110 62 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_088.v common 7.94 vpr 65.74 MiB 0.02 7244 -1 -1 1 0.04 -1 -1 34068 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67320 32 32 407 319 1 255 81 17 17 289 -1 unnamed_device 27.2 MiB 0.96 1186 15306 4921 8633 1752 65.7 MiB 0.12 0.00 3.88697 -135.819 -3.88697 3.88697 0.99 0.000556345 0.000508561 0.0515678 0.0469319 50 3091 36 6.99608e+06 250167 902133. 3121.57 3.37 0.217522 0.192292 28642 213929 -1 2640 24 3022 4186 453611 90236 4.90894 4.90894 -178.316 -4.90894 0 0 1.08113e+06 3740.92 0.45 0.14 0.21 -1 -1 0.45 0.0341774 0.0302789 111 62 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_089.v common 11.90 vpr 65.09 MiB 0.02 7248 -1 -1 1 0.04 -1 -1 33816 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66656 32 32 315 267 1 202 77 17 17 289 -1 unnamed_device 26.5 MiB 2.55 862 12954 5493 7158 303 65.1 MiB 0.10 0.00 2.55629 -91.6388 -2.55629 2.55629 1.03 0.000459523 0.000411822 0.0405286 0.0369219 38 2827 40 6.99608e+06 191304 678818. 2348.85 5.84 0.171125 0.149701 26626 170182 -1 1908 27 1668 1965 202051 51428 3.38276 3.38276 -117.08 -3.38276 0 0 902133. 3121.57 0.40 0.10 0.17 -1 -1 0.40 0.0335575 0.0299516 85 47 32 32 54 27 -fixed_k6_frac_2uripple_N8_22nm.xml mult_090.v common 7.10 vpr 64.96 MiB 0.02 7084 -1 -1 1 0.03 -1 -1 34020 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66520 31 32 275 220 1 154 74 17 17 289 -1 unnamed_device 26.6 MiB 0.24 830 9529 3700 4702 1127 65.0 MiB 0.08 0.00 2.6052 -100.797 -2.6052 2.6052 1.05 0.000433961 0.00039685 0.0293847 0.0269126 36 2307 34 6.99608e+06 161872 648988. 2245.63 3.57 0.151982 0.133959 26050 158493 -1 1916 20 1411 2093 191831 38259 3.25927 3.25927 -129.794 -3.25927 0 0 828058. 2865.25 0.34 0.07 0.14 -1 -1 0.34 0.0232423 0.0208554 63 -1 93 31 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_091.v common 8.44 vpr 65.82 MiB 0.02 7392 -1 -1 1 0.04 -1 -1 33628 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67404 32 32 381 303 1 235 81 17 17 289 -1 unnamed_device 27.0 MiB 1.01 900 15306 5732 7360 2214 65.8 MiB 0.12 0.00 3.28468 -109.777 -3.28468 3.28468 1.06 0.00057072 0.000509225 0.0488008 0.0442292 44 3366 48 6.99608e+06 250167 787024. 2723.27 3.84 0.205105 0.180702 27778 195446 -1 1965 20 1791 2125 156808 35106 3.92165 3.92165 -134.768 -3.92165 0 0 997811. 3452.63 0.45 0.07 0.18 -1 -1 0.45 0.0282748 0.0251127 102 56 60 32 58 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_092.v common 10.21 vpr 65.88 MiB 0.02 7200 -1 -1 1 0.04 -1 -1 33888 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67464 32 32 406 330 1 255 83 17 17 289 -1 unnamed_device 27.4 MiB 1.63 1176 13943 5620 6610 1713 65.9 MiB 0.12 0.00 3.50704 -122.982 -3.50704 3.50704 1.02 0.000624075 0.000555072 0.0495402 0.0451042 38 3524 32 6.99608e+06 279598 678818. 2348.85 5.13 0.201172 0.176939 26626 170182 -1 2539 20 2034 2363 190278 40245 4.50581 4.50581 -155.841 -4.50581 0 0 902133. 3121.57 0.36 0.08 0.16 -1 -1 0.36 0.0290052 0.0259471 115 81 28 28 88 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_093.v common 9.39 vpr 65.67 MiB 0.03 7260 -1 -1 1 0.04 -1 -1 34076 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67248 32 32 399 285 1 218 91 17 17 289 -1 unnamed_device 27.0 MiB 0.42 1217 11719 2666 8203 850 65.7 MiB 0.10 0.00 3.52884 -132.013 -3.52884 3.52884 1.05 0.000629466 0.000571474 0.0383444 0.0350166 40 3229 36 6.99608e+06 397324 706193. 2443.58 5.00 0.201891 0.178594 26914 176310 -1 2936 64 5473 8758 1576828 660751 4.85635 4.85635 -178.808 -4.85635 0 0 926341. 3205.33 0.38 0.58 0.17 -1 -1 0.38 0.0836968 0.0740101 100 -1 156 32 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_094.v common 8.44 vpr 65.55 MiB 0.02 7164 -1 -1 1 0.04 -1 -1 33964 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67128 30 32 371 295 1 227 81 17 17 289 -1 unnamed_device 26.9 MiB 1.06 948 15131 5887 6822 2422 65.6 MiB 0.12 0.00 2.98539 -97.6966 -2.98539 2.98539 0.98 0.000533243 0.000489388 0.0500936 0.0458717 40 2946 44 6.99608e+06 279598 706193. 2443.58 4.01 0.208829 0.184965 26914 176310 -1 2582 22 1883 2620 290991 65752 4.14061 4.14061 -142.167 -4.14061 0 0 926341. 3205.33 0.38 0.11 0.15 -1 -1 0.38 0.0317136 0.0282888 101 47 60 30 56 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_095.v common 7.54 vpr 65.10 MiB 0.02 7152 -1 -1 1 0.03 -1 -1 34260 -1 -1 16 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 27 32 269 226 1 152 75 17 17 289 -1 unnamed_device 26.6 MiB 1.60 534 11925 5017 6125 783 65.1 MiB 0.08 0.00 3.14605 -88.3558 -3.14605 3.14605 1.04 0.000407796 0.000371008 0.0338986 0.0309197 40 1723 26 6.99608e+06 235451 706193. 2443.58 2.55 0.142917 0.125704 26914 176310 -1 1448 22 1307 1821 161591 38228 3.47916 3.47916 -114.036 -3.47916 0 0 926341. 3205.33 0.39 0.07 0.17 -1 -1 0.39 0.0234774 0.0209535 67 26 54 27 27 27 -fixed_k6_frac_2uripple_N8_22nm.xml mult_096.v common 7.83 vpr 65.81 MiB 0.03 7400 -1 -1 1 0.04 -1 -1 34188 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67388 32 32 493 378 1 313 85 17 17 289 -1 unnamed_device 27.5 MiB 1.00 1569 16081 6200 7797 2084 65.8 MiB 0.15 0.00 3.70124 -132.966 -3.70124 3.70124 0.95 0.000611597 0.00055588 0.0597488 0.0545218 48 4577 24 6.99608e+06 309029 865456. 2994.66 3.20 0.227891 0.203093 28354 207349 -1 3903 24 3372 4634 516565 100668 5.2434 5.2434 -173.818 -5.2434 0 0 1.05005e+06 3633.38 0.48 0.16 0.20 -1 -1 0.48 0.0413587 0.0370487 141 85 62 31 95 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_097.v common 10.73 vpr 65.86 MiB 0.03 7336 -1 -1 1 0.04 -1 -1 34400 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67444 31 32 455 371 1 302 85 17 17 289 -1 unnamed_device 27.7 MiB 3.11 1359 10501 2566 6527 1408 65.9 MiB 0.11 0.00 4.12662 -140.084 -4.12662 4.12662 1.06 0.000640649 0.000581951 0.0411508 0.0374077 40 3643 29 6.99608e+06 323745 706193. 2443.58 3.93 0.199872 0.175763 26914 176310 -1 3187 28 3365 3818 590505 196791 4.64705 4.64705 -173.44 -4.64705 0 0 926341. 3205.33 0.40 0.22 0.18 -1 -1 0.40 0.0438518 0.0392574 138 105 0 0 124 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_098.v common 11.41 vpr 65.55 MiB 0.02 7320 -1 -1 1 0.03 -1 -1 33840 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67120 32 32 355 304 1 233 79 17 17 289 -1 unnamed_device 26.8 MiB 3.70 992 11571 4040 5367 2164 65.5 MiB 0.09 0.00 2.99983 -108.221 -2.99983 2.99983 1.07 0.000485429 0.000441003 0.0372653 0.0338472 40 2939 29 6.99608e+06 220735 706193. 2443.58 4.23 0.167903 0.14703 26914 176310 -1 2584 21 1996 2415 291227 69738 4.3708 4.3708 -157.871 -4.3708 0 0 926341. 3205.33 0.37 0.10 0.17 -1 -1 0.37 0.0278327 0.0247655 102 86 0 0 89 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_099.v common 10.56 vpr 65.51 MiB 0.02 7312 -1 -1 1 0.04 -1 -1 33756 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67080 32 32 364 282 1 217 80 17 17 289 -1 unnamed_device 26.8 MiB 1.12 933 13496 4702 6629 2165 65.5 MiB 0.12 0.00 3.12745 -112.519 -3.12745 3.12745 1.04 0.000467618 0.000425868 0.0463949 0.0423763 54 2477 25 6.99608e+06 235451 949917. 3286.91 5.79 0.289906 0.253977 29506 232905 -1 2016 25 1939 2615 243886 52507 3.90682 3.90682 -139.567 -3.90682 0 0 1.17392e+06 4061.99 0.50 0.10 0.21 -1 -1 0.50 0.0344907 0.030763 92 31 90 30 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_100.v common 7.40 vpr 65.96 MiB 0.02 7360 -1 -1 1 0.04 -1 -1 34076 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67540 31 32 443 336 1 261 83 17 17 289 -1 unnamed_device 27.4 MiB 1.71 1122 14123 4737 6599 2787 66.0 MiB 0.12 0.00 3.54405 -115.603 -3.54405 3.54405 0.98 0.000551364 0.000503314 0.0492886 0.0450176 46 3122 30 6.99608e+06 294314 828058. 2865.25 2.27 0.18155 0.161198 28066 200906 -1 2355 23 2318 3159 205061 46366 4.20262 4.20262 -149.811 -4.20262 0 0 1.01997e+06 3529.29 0.41 0.09 0.17 -1 -1 0.41 0.0365325 0.0328713 117 50 87 31 62 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_101.v common 10.32 vpr 65.61 MiB 0.02 7236 -1 -1 1 0.04 -1 -1 34120 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67180 30 32 373 297 1 228 82 17 17 289 -1 unnamed_device 26.9 MiB 1.27 1155 12720 3812 7416 1492 65.6 MiB 0.11 0.00 2.91629 -97.4384 -2.91629 2.91629 1.05 0.000517474 0.000474591 0.040914 0.0373858 44 3213 24 6.99608e+06 294314 787024. 2723.27 5.49 0.260086 0.226983 27778 195446 -1 2329 19 1770 2504 173824 39999 3.57036 3.57036 -131.439 -3.57036 0 0 997811. 3452.63 0.42 0.08 0.19 -1 -1 0.42 0.02668 0.0238639 101 50 58 30 58 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_102.v common 9.49 vpr 65.91 MiB 0.02 7108 -1 -1 1 0.04 -1 -1 33980 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67496 32 32 407 319 1 252 81 17 17 289 -1 unnamed_device 27.0 MiB 0.78 1054 14081 5040 6629 2412 65.9 MiB 0.12 0.00 3.42564 -122.142 -3.42564 3.42564 1.07 0.000700976 0.000634955 0.050946 0.0463793 46 3729 45 6.99608e+06 250167 828058. 2865.25 5.16 0.223922 0.197788 28066 200906 -1 2787 24 2616 3229 299865 63487 4.45561 4.45561 -164.097 -4.45561 0 0 1.01997e+06 3529.29 0.41 0.11 0.17 -1 -1 0.41 0.034068 0.0305529 107 61 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_103.v common 7.54 vpr 65.62 MiB 0.03 7268 -1 -1 1 0.04 -1 -1 34036 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67196 32 32 405 318 1 253 82 17 17 289 -1 unnamed_device 26.9 MiB 0.78 1165 8626 1928 6090 608 65.6 MiB 0.08 0.00 2.98529 -112.735 -2.98529 2.98529 0.96 0.000539098 0.00049222 0.0299331 0.0272612 40 3464 38 6.99608e+06 264882 706193. 2443.58 3.42 0.19262 0.169493 26914 176310 -1 2913 21 2314 2996 314485 74011 3.48286 3.48286 -145.7 -3.48286 0 0 926341. 3205.33 0.39 0.11 0.17 -1 -1 0.39 0.0314667 0.0281519 108 61 63 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_104.v common 8.06 vpr 65.15 MiB 0.02 6984 -1 -1 1 0.03 -1 -1 33616 -1 -1 14 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66712 29 32 287 238 1 172 75 17 17 289 -1 unnamed_device 26.6 MiB 1.37 638 8923 3666 4824 433 65.1 MiB 0.07 0.00 2.67044 -90.526 -2.67044 2.67044 1.07 0.000411933 0.000374039 0.0276029 0.025184 38 2063 30 6.99608e+06 206020 678818. 2348.85 3.30 0.145642 0.127789 26626 170182 -1 1488 22 1668 2178 165665 35537 3.35701 3.35701 -119.714 -3.35701 0 0 902133. 3121.57 0.39 0.07 0.17 -1 -1 0.39 0.0238972 0.0213128 73 28 58 29 29 29 -fixed_k6_frac_2uripple_N8_22nm.xml mult_105.v common 9.70 vpr 65.44 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 34048 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67008 32 32 334 290 1 207 78 17 17 289 -1 unnamed_device 26.8 MiB 3.03 797 13524 4800 6639 2085 65.4 MiB 0.10 0.00 2.99983 -99.3764 -2.99983 2.99983 1.06 0.000467141 0.000422391 0.0423229 0.0385082 48 2390 29 6.99608e+06 206020 865456. 2994.66 3.10 0.175743 0.155261 28354 207349 -1 1854 21 1639 1940 196134 46580 3.60541 3.60541 -130.573 -3.60541 0 0 1.05005e+06 3633.38 0.42 0.08 0.20 -1 -1 0.42 0.0252732 0.022357 91 79 0 0 82 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_106.v common 6.78 vpr 65.68 MiB 0.02 7384 -1 -1 1 0.04 -1 -1 34220 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67256 31 32 365 281 1 217 80 17 17 289 -1 unnamed_device 27.0 MiB 0.67 1137 12292 4035 6815 1442 65.7 MiB 0.10 0.00 3.16964 -118.943 -3.16964 3.16964 1.02 0.000482221 0.000438877 0.0387382 0.0353775 40 2892 46 6.99608e+06 250167 706193. 2443.58 2.79 0.201619 0.178607 26914 176310 -1 2544 21 2177 2858 286406 56617 4.18536 4.18536 -161.335 -4.18536 0 0 926341. 3205.33 0.37 0.10 0.16 -1 -1 0.37 0.0296764 0.0265597 92 29 93 31 31 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_107.v common 9.76 vpr 65.16 MiB 0.02 7164 -1 -1 1 0.04 -1 -1 33740 -1 -1 16 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 29 32 297 254 1 191 77 17 17 289 -1 unnamed_device 26.5 MiB 1.90 845 12628 4927 5370 2331 65.2 MiB 0.09 0.00 2.67859 -89.3377 -2.67859 2.67859 1.06 0.000365423 0.00032998 0.0370983 0.033465 44 2212 23 6.99608e+06 235451 787024. 2723.27 4.38 0.209215 0.182539 27778 195446 -1 1801 20 1220 1380 115522 23883 2.94876 2.94876 -106.607 -2.94876 0 0 997811. 3452.63 0.44 0.06 0.18 -1 -1 0.44 0.0216702 0.0192146 81 48 29 29 52 26 -fixed_k6_frac_2uripple_N8_22nm.xml mult_108.v common 8.62 vpr 65.25 MiB 0.02 7160 -1 -1 1 0.04 -1 -1 33980 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 32 32 314 256 1 188 77 17 17 289 -1 unnamed_device 26.7 MiB 0.84 974 11487 4464 5917 1106 65.2 MiB 0.09 0.00 2.94309 -115.02 -2.94309 2.94309 1.07 0.000461283 0.000418401 0.0359288 0.0327926 38 2637 39 6.99608e+06 191304 678818. 2348.85 4.29 0.174014 0.153013 26626 170182 -1 2151 23 1910 2424 223753 44129 3.46386 3.46386 -141.946 -3.46386 0 0 902133. 3121.57 0.35 0.09 0.16 -1 -1 0.35 0.0281343 0.0249727 79 31 64 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_109.v common 7.84 vpr 65.80 MiB 0.03 7448 -1 -1 1 0.04 -1 -1 34124 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67380 31 32 387 307 1 239 82 17 17 289 -1 unnamed_device 26.9 MiB 1.41 992 12542 4894 6307 1341 65.8 MiB 0.11 0.00 3.32078 -116.501 -3.32078 3.32078 1.06 0.000550909 0.000496643 0.0456918 0.0416662 44 3070 50 6.99608e+06 279598 787024. 2723.27 2.83 0.206659 0.18221 27778 195446 -1 2235 21 2211 3032 254925 54970 4.05665 4.05665 -150.542 -4.05665 0 0 997811. 3452.63 0.41 0.09 0.19 -1 -1 0.41 0.0290066 0.0258229 105 60 58 31 62 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_110.v common 10.07 vpr 65.18 MiB 0.02 7256 -1 -1 1 0.04 -1 -1 33856 -1 -1 13 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 31 32 308 262 1 192 76 17 17 289 -1 unnamed_device 26.5 MiB 2.95 716 11916 4411 5743 1762 65.2 MiB 0.08 0.00 2.73604 -87.9997 -2.73604 2.73604 1.04 0.000393418 0.000358761 0.0365101 0.0332039 46 2525 33 6.99608e+06 191304 828058. 2865.25 3.65 0.169279 0.148855 28066 200906 -1 1601 23 1425 1776 132559 33050 3.66791 3.66791 -118.36 -3.66791 0 0 1.01997e+06 3529.29 0.43 0.07 0.19 -1 -1 0.43 0.0269774 0.0239733 81 49 31 31 53 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_111.v common 11.93 vpr 65.37 MiB 0.02 7172 -1 -1 1 0.04 -1 -1 33836 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 32 32 383 307 1 232 82 17 17 289 -1 unnamed_device 26.6 MiB 1.94 1008 15034 6370 8312 352 65.4 MiB 0.12 0.00 2.90049 -103.693 -2.90049 2.90049 1.08 0.000520164 0.000468429 0.0502763 0.0458071 46 3000 29 6.99608e+06 264882 828058. 2865.25 6.34 0.298705 0.261612 28066 200906 -1 2161 21 1631 2194 160745 35137 3.31196 3.31196 -128.61 -3.31196 0 0 1.01997e+06 3529.29 0.45 0.08 0.20 -1 -1 0.45 0.0303765 0.0272556 103 56 52 26 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_112.v common 8.70 vpr 65.64 MiB 0.03 7432 -1 -1 1 0.04 -1 -1 33676 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67220 31 32 422 339 1 272 85 17 17 289 -1 unnamed_device 27.3 MiB 0.93 1260 14407 3894 8646 1867 65.6 MiB 0.12 0.00 3.87927 -135.357 -3.87927 3.87927 1.12 0.000516671 0.000467094 0.048176 0.04372 40 3491 37 6.99608e+06 323745 706193. 2443.58 4.01 0.222885 0.196157 26914 176310 -1 3180 20 2532 3455 382457 76638 4.71974 4.71974 -174.295 -4.71974 0 0 926341. 3205.33 0.41 0.13 0.16 -1 -1 0.41 0.0339214 0.0304495 123 88 31 31 92 31 -fixed_k6_frac_2uripple_N8_22nm.xml mult_113.v common 11.63 vpr 65.43 MiB 0.02 7032 -1 -1 1 0.04 -1 -1 34104 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66996 32 32 333 279 1 208 79 17 17 289 -1 unnamed_device 26.8 MiB 2.86 1202 9036 2501 5408 1127 65.4 MiB 0.07 0.00 2.96354 -111.7 -2.96354 2.96354 0.99 0.000436896 0.000398229 0.0277833 0.0253956 44 2824 35 6.99608e+06 220735 787024. 2723.27 5.36 0.229274 0.202098 27778 195446 -1 2360 21 1599 2222 198318 39746 3.35781 3.35781 -133.841 -3.35781 0 0 997811. 3452.63 0.42 0.08 0.17 -1 -1 0.42 0.0271467 0.0243902 88 54 32 32 60 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_114.v common 18.22 vpr 65.43 MiB 0.02 7244 -1 -1 1 0.04 -1 -1 33656 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66996 32 32 339 283 1 212 78 17 17 289 -1 unnamed_device 27.0 MiB 0.83 782 11034 3077 6506 1451 65.4 MiB 0.09 0.00 2.68144 -96.9417 -2.68144 2.68144 1.02 0.00059626 0.000535939 0.0361048 0.0328568 46 2531 42 6.99608e+06 206020 828058. 2865.25 13.99 0.319064 0.279893 28066 200906 -1 1592 21 1693 2070 144700 33562 3.40042 3.40042 -121.847 -3.40042 0 0 1.01997e+06 3529.29 0.41 0.07 0.17 -1 -1 0.41 0.0260861 0.0232533 91 60 32 32 62 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_115.v common 10.52 vpr 65.88 MiB 0.02 7244 -1 -1 1 0.04 -1 -1 34068 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67456 32 32 407 319 1 252 82 17 17 289 -1 unnamed_device 27.1 MiB 1.07 882 9516 3546 4737 1233 65.9 MiB 0.10 0.00 3.18865 -115.614 -3.18865 3.18865 1.12 0.000677967 0.000620842 0.0380251 0.0346307 48 2580 23 6.99608e+06 264882 865456. 2994.66 5.65 0.273584 0.238772 28354 207349 -1 2288 22 2241 2759 237741 54920 4.88722 4.88722 -164.737 -4.88722 0 0 1.05005e+06 3633.38 0.43 0.10 0.20 -1 -1 0.43 0.0332446 0.0294816 110 49 64 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_116.v common 10.98 vpr 65.64 MiB 0.03 7212 -1 -1 1 0.04 -1 -1 34228 -1 -1 21 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67212 29 32 367 293 1 222 82 17 17 289 -1 unnamed_device 26.9 MiB 1.88 997 12720 5109 5317 2294 65.6 MiB 0.11 0.00 2.77374 -97.0688 -2.77374 2.77374 1.09 0.000565037 0.000514109 0.0436882 0.039666 38 2919 28 6.99608e+06 309029 678818. 2348.85 5.46 0.188826 0.166196 26626 170182 -1 2402 22 2036 2785 243197 49881 3.33981 3.33981 -123.152 -3.33981 0 0 902133. 3121.57 0.40 0.09 0.16 -1 -1 0.40 0.0307405 0.0275315 101 54 56 29 58 29 -fixed_k6_frac_2uripple_N8_22nm.xml mult_117.v common 8.13 vpr 65.68 MiB 0.03 7448 -1 -1 1 0.04 -1 -1 34272 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67252 32 32 469 381 1 309 86 17 17 289 -1 unnamed_device 27.4 MiB 0.90 1271 15773 4421 8851 2501 65.7 MiB 0.15 0.00 3.68467 -132.727 -3.68467 3.68467 1.04 0.000872125 0.000792733 0.061612 0.0560195 44 3920 34 6.99608e+06 323745 787024. 2723.27 3.48 0.214056 0.188916 27778 195446 -1 2987 25 3240 3790 354870 72238 4.75185 4.75185 -174.986 -4.75185 0 0 997811. 3452.63 0.45 0.14 0.19 -1 -1 0.45 0.0428794 0.0385416 140 117 0 0 128 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_118.v common 7.60 vpr 64.75 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 33672 -1 -1 11 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 31 32 259 212 1 143 74 17 17 289 -1 unnamed_device 26.2 MiB 1.13 558 10459 4349 5630 480 64.8 MiB 0.08 0.00 2.29975 -77.3164 -2.29975 2.29975 1.14 0.00042157 0.000383715 0.0345947 0.0315412 46 1699 23 6.99608e+06 161872 828058. 2865.25 2.77 0.158003 0.139366 28066 200906 -1 1349 18 1073 1608 113142 28557 3.12987 3.12987 -109.221 -3.12987 0 0 1.01997e+06 3529.29 0.49 0.06 0.19 -1 -1 0.49 0.0225042 0.0200866 57 -1 85 31 0 0 -fixed_k6_frac_2uripple_N8_22nm.xml mult_119.v common 10.56 vpr 65.65 MiB 0.02 7272 -1 -1 1 0.04 -1 -1 33852 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67224 32 32 418 338 1 263 83 17 17 289 -1 unnamed_device 27.0 MiB 3.33 1237 13043 4202 6747 2094 65.6 MiB 0.12 0.00 3.96833 -134.688 -3.96833 3.96833 1.16 0.000612781 0.000554609 0.0498955 0.045388 44 3531 44 6.99608e+06 279598 787024. 2723.27 3.41 0.233052 0.205394 27778 195446 -1 2737 23 2559 3229 289051 59483 4.9511 4.9511 -175.196 -4.9511 0 0 997811. 3452.63 0.45 0.12 0.20 -1 -1 0.45 0.0381546 0.0343639 118 89 28 28 92 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_120.v common 27.73 vpr 65.71 MiB 0.02 7300 -1 -1 1 0.04 -1 -1 34028 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67288 32 32 376 318 1 253 80 17 17 289 -1 unnamed_device 27.0 MiB 1.03 1323 10744 2996 6405 1343 65.7 MiB 0.10 0.00 3.76377 -142.716 -3.76377 3.76377 1.09 0.000521389 0.00047228 0.0382651 0.0349122 44 3443 34 6.99608e+06 235451 787024. 2723.27 23.07 0.325059 0.281818 27778 195446 -1 2796 20 2310 2917 286120 55102 4.54314 4.54314 -172.866 -4.54314 0 0 997811. 3452.63 0.43 0.09 0.19 -1 -1 0.43 0.0263299 0.023522 110 93 0 0 96 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_121.v common 7.96 vpr 65.62 MiB 0.02 7296 -1 -1 1 0.04 -1 -1 34052 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67196 32 32 401 316 1 247 83 17 17 289 -1 unnamed_device 26.8 MiB 0.84 1233 5843 1328 4093 422 65.6 MiB 0.07 0.00 2.94304 -113.73 -2.94304 2.94304 1.02 0.000556605 0.000509245 0.0231169 0.0210359 40 3088 24 6.99608e+06 279598 706193. 2443.58 3.67 0.183085 0.162125 26914 176310 -1 2828 23 2138 2761 328215 63535 3.71441 3.71441 -145.846 -3.71441 0 0 926341. 3205.33 0.39 0.13 0.16 -1 -1 0.39 0.0377658 0.0338762 106 59 61 32 64 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_122.v common 8.00 vpr 65.82 MiB 0.03 7356 -1 -1 1 0.04 -1 -1 34292 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67400 32 32 500 382 1 312 86 17 17 289 -1 unnamed_device 27.5 MiB 0.89 1499 16529 6227 8360 1942 65.8 MiB 0.16 0.00 4.13248 -150.491 -4.13248 4.13248 1.07 0.000633308 0.000574859 0.0665945 0.0604382 40 3929 23 6.99608e+06 323745 706193. 2443.58 3.32 0.232955 0.204982 26914 176310 -1 3378 28 3562 4152 482822 119698 5.64765 5.64765 -202.124 -5.64765 0 0 926341. 3205.33 0.39 0.17 0.18 -1 -1 0.39 0.0455283 0.040402 140 81 64 32 96 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_123.v common 8.42 vpr 64.90 MiB 0.02 7012 -1 -1 1 0.03 -1 -1 33880 -1 -1 13 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 30 32 246 229 1 154 75 17 17 289 -1 unnamed_device 26.6 MiB 2.66 555 9081 3769 4952 360 64.9 MiB 0.06 0.00 2.25155 -75.007 -2.25155 2.25155 1.07 0.00037255 0.000338038 0.0243901 0.0221982 42 1938 46 6.99608e+06 191304 744469. 2576.02 2.28 0.142689 0.12502 27202 183097 -1 1307 22 905 929 94996 22289 2.41242 2.41242 -91.6687 -2.41242 0 0 949917. 3286.91 0.42 0.06 0.18 -1 -1 0.42 0.0211941 0.0188434 65 51 0 0 53 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_124.v common 10.92 vpr 65.05 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 34152 -1 -1 14 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 30 32 296 244 1 167 76 17 17 289 -1 unnamed_device 26.6 MiB 3.52 873 9036 3566 4539 931 65.1 MiB 0.07 0.00 2.78909 -100.953 -2.78909 2.78909 0.98 0.000462593 0.000421721 0.0271404 0.024843 36 2193 21 6.99608e+06 206020 648988. 2245.63 4.21 0.197298 0.173165 26050 158493 -1 1958 20 1504 2153 193118 39336 3.38681 3.38681 -133.817 -3.38681 0 0 828058. 2865.25 0.34 0.08 0.14 -1 -1 0.34 0.0253453 0.0226504 72 29 60 30 30 30 -fixed_k6_frac_2uripple_N8_22nm.xml mult_125.v common 10.25 vpr 65.11 MiB 0.02 6940 -1 -1 1 0.04 -1 -1 33740 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 314 256 1 192 76 17 17 289 -1 unnamed_device 26.6 MiB 0.22 819 9836 4075 5610 151 65.1 MiB 0.08 0.00 2.73464 -106.1 -2.73464 2.73464 1.05 0.000510411 0.000466981 0.0330515 0.0301692 42 3413 50 6.99608e+06 176588 744469. 2576.02 6.49 0.248697 0.217149 27202 183097 -1 2379 22 1861 2946 306514 63755 3.88801 3.88801 -145.921 -3.88801 0 0 949917. 3286.91 0.41 0.10 0.18 -1 -1 0.41 0.0271741 0.0239529 80 31 64 32 32 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_126.v common 7.07 vpr 64.60 MiB 0.02 6988 -1 -1 1 0.03 -1 -1 34040 -1 -1 18 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66148 25 32 251 214 1 151 75 17 17 289 -1 unnamed_device 26.2 MiB 0.78 557 11767 5032 5858 877 64.6 MiB 0.08 0.00 2.79475 -75.6465 -2.79475 2.79475 1.05 0.000367476 0.000334425 0.0314683 0.0286635 36 1852 30 6.99608e+06 264882 648988. 2245.63 2.99 0.144629 0.12724 26050 158493 -1 1423 20 1041 1357 103508 24736 3.57407 3.57407 -104.553 -3.57407 0 0 828058. 2865.25 0.35 0.05 0.14 -1 -1 0.35 0.0203741 0.0180568 68 19 50 25 25 25 -fixed_k6_frac_2uripple_N8_22nm.xml mult_127.v common 12.09 vpr 65.41 MiB 0.02 7480 -1 -1 1 0.04 -1 -1 34220 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66976 32 32 432 346 1 281 84 17 17 289 -1 unnamed_device 27.0 MiB 1.02 1474 15273 5152 8434 1687 65.4 MiB 0.13 0.00 3.11645 -119.592 -3.11645 3.11645 1.12 0.000738237 0.000667623 0.0550189 0.0500456 44 3919 32 6.99608e+06 294314 787024. 2723.27 7.24 0.346624 0.302073 27778 195446 -1 3039 21 2593 3730 296378 59435 4.01312 4.01312 -154.313 -4.01312 0 0 997811. 3452.63 0.46 0.11 0.18 -1 -1 0.46 0.0348733 0.031376 125 84 32 32 94 32 -fixed_k6_frac_2uripple_N8_22nm.xml mult_128.v common 11.50 vpr 65.72 MiB 0.02 7572 -1 -1 1 0.04 -1 -1 33980 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67300 31 32 421 339 1 270 85 17 17 289 -1 unnamed_device 27.1 MiB 1.08 1175 11245 3996 5507 1742 65.7 MiB 0.11 0.00 3.44908 -119.437 -3.44908 3.44908 1.11 0.000564714 0.000511686 0.0419478 0.0382853 44 3539 45 6.99608e+06 323745 787024. 2723.27 6.65 0.326107 0.28368 27778 195446 -1 2577 21 2426 3212 264282 56245 4.29145 4.29145 -155.45 -4.29145 0 0 997811. 3452.63 0.44 0.10 0.20 -1 -1 0.44 0.0313957 0.0280684 121 88 29 29 93 31 -fixed_k6_frac_N8_22nm.xml mult_001.v common 12.71 vpr 64.76 MiB 0.02 7140 -1 -1 14 0.35 -1 -1 36420 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 32 32 280 312 1 207 83 17 17 289 -1 unnamed_device 26.3 MiB 2.70 1171 12323 3404 6298 2621 64.8 MiB 0.12 0.00 7.1786 -141.837 -7.1786 7.1786 1.08 0.000753815 0.000685481 0.0539557 0.048927 48 2882 18 6.79088e+06 255968 865456. 2994.66 5.91 0.31203 0.275137 27694 206865 -1 2498 18 1255 3373 206019 46248 7.3431 7.3431 -157.943 -7.3431 0 0 1.05005e+06 3633.38 0.46 0.09 0.20 -1 -1 0.46 0.0352191 0.0319092 134 185 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_002.v common 10.24 vpr 64.82 MiB 0.02 7252 -1 -1 14 0.38 -1 -1 36668 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 30 32 277 309 1 214 82 17 17 289 -1 unnamed_device 26.3 MiB 2.06 1287 9160 2397 5537 1226 64.8 MiB 0.09 0.00 6.84273 -137.13 -6.84273 6.84273 1.08 0.000654814 0.000590532 0.041153 0.0372752 38 3299 17 6.79088e+06 269440 678818. 2348.85 4.30 0.218023 0.192893 25966 169698 -1 2615 15 1228 3245 165561 37550 7.34393 7.34393 -155.305 -7.34393 0 0 902133. 3121.57 0.41 0.08 0.17 -1 -1 0.41 0.0311077 0.0281976 132 186 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_003.v common 9.71 vpr 64.88 MiB 0.02 7012 -1 -1 11 0.26 -1 -1 36368 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 274 306 1 200 84 17 17 289 -1 unnamed_device 26.4 MiB 2.00 1057 12162 3360 7052 1750 64.9 MiB 0.11 0.00 5.91503 -114.436 -5.91503 5.91503 0.98 0.000809072 0.000747244 0.0461514 0.0419516 38 3486 45 6.79088e+06 269440 678818. 2348.85 4.05 0.247594 0.219332 25966 169698 -1 2520 25 1281 4021 344390 130781 6.00113 6.00113 -133.489 -6.00113 0 0 902133. 3121.57 0.38 0.16 0.15 -1 -1 0.38 0.0490174 0.0444486 138 179 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_004.v common 10.90 vpr 65.03 MiB 0.02 7068 -1 -1 12 0.45 -1 -1 36712 -1 -1 22 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 29 32 269 301 1 191 83 17 17 289 -1 unnamed_device 26.5 MiB 1.84 1073 9443 2539 5189 1715 65.0 MiB 0.09 0.00 6.07188 -117.783 -6.07188 6.07188 1.05 0.000760716 0.000688115 0.0390533 0.0354186 44 2817 32 6.79088e+06 296384 787024. 2723.27 5.06 0.322126 0.284691 27118 194962 -1 2245 17 1119 3497 170212 39432 6.32248 6.32248 -131.319 -6.32248 0 0 997811. 3452.63 0.46 0.08 0.19 -1 -1 0.46 0.0339115 0.0306012 136 180 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_005.v common 10.84 vpr 65.38 MiB 0.02 7016 -1 -1 13 0.41 -1 -1 36804 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 32 32 317 349 1 251 88 17 17 289 -1 unnamed_device 26.8 MiB 2.76 1433 11788 2599 7883 1306 65.4 MiB 0.12 0.00 6.54861 -138.074 -6.54861 6.54861 1.05 0.00075059 0.000679005 0.0529692 0.0481425 38 3800 45 6.79088e+06 323328 678818. 2348.85 4.11 0.29106 0.258347 25966 169698 -1 3148 16 1663 4462 222256 51465 6.99942 6.99942 -161.931 -6.99942 0 0 902133. 3121.57 0.39 0.10 0.17 -1 -1 0.39 0.0405964 0.0369831 160 222 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_006.v common 11.36 vpr 64.92 MiB 0.02 7008 -1 -1 12 0.33 -1 -1 36344 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 32 32 299 331 1 221 88 17 17 289 -1 unnamed_device 26.4 MiB 2.68 1311 5158 978 3976 204 64.9 MiB 0.06 0.00 6.25532 -135.367 -6.25532 6.25532 0.95 0.000660502 0.000600906 0.0232204 0.0212837 38 3780 23 6.79088e+06 323328 678818. 2348.85 5.14 0.221166 0.196408 25966 169698 -1 3004 17 1482 4315 229945 51713 6.83487 6.83487 -156.714 -6.83487 0 0 902133. 3121.57 0.36 0.10 0.15 -1 -1 0.36 0.0367923 0.0336348 150 204 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_007.v common 8.86 vpr 64.44 MiB 0.02 6996 -1 -1 12 0.24 -1 -1 36080 -1 -1 20 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65984 27 32 210 242 1 166 79 17 17 289 -1 unnamed_device 25.9 MiB 1.84 972 6332 1567 4234 531 64.4 MiB 0.06 0.00 5.95433 -114.661 -5.95433 5.95433 1.05 0.000542261 0.000492035 0.0233074 0.0213588 36 2813 22 6.79088e+06 269440 648988. 2245.63 3.47 0.157343 0.138081 25390 158009 -1 2344 16 1131 2898 183908 40583 6.4016 6.4016 -131.785 -6.4016 0 0 828058. 2865.25 0.33 0.07 0.15 -1 -1 0.33 0.0239289 0.021592 101 125 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_008.v common 10.59 vpr 64.73 MiB 0.02 7108 -1 -1 11 0.23 -1 -1 36520 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66280 31 32 264 296 1 191 81 17 17 289 -1 unnamed_device 26.4 MiB 1.57 1181 12331 3573 7109 1649 64.7 MiB 0.10 0.00 5.36687 -116.355 -5.36687 5.36687 1.07 0.000667427 0.000607443 0.046314 0.0418491 38 3186 24 6.79088e+06 242496 678818. 2348.85 5.34 0.211195 0.18649 25966 169698 -1 2543 18 1209 3681 191974 42449 5.52788 5.52788 -131.717 -5.52788 0 0 902133. 3121.57 0.39 0.08 0.15 -1 -1 0.39 0.0328533 0.0297946 118 171 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_009.v common 11.43 vpr 64.55 MiB 0.02 7084 -1 -1 12 0.22 -1 -1 36240 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66100 31 32 234 266 1 191 81 17 17 289 -1 unnamed_device 26.0 MiB 3.29 1126 12681 3896 6610 2175 64.6 MiB 0.11 0.00 5.49223 -117.258 -5.49223 5.49223 1.05 0.000601211 0.00054549 0.0464435 0.0420235 38 2615 21 6.79088e+06 242496 678818. 2348.85 4.51 0.21746 0.190399 25966 169698 -1 2220 15 1028 2381 129338 29291 5.86813 5.86813 -131.941 -5.86813 0 0 902133. 3121.57 0.37 0.06 0.16 -1 -1 0.37 0.025867 0.0233924 111 141 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_010.v common 9.22 vpr 64.67 MiB 0.02 7020 -1 -1 13 0.25 -1 -1 36208 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 32 32 253 285 1 183 80 17 17 289 -1 unnamed_device 26.1 MiB 1.93 1052 5240 987 4120 133 64.7 MiB 0.06 0.00 5.99697 -135.029 -5.99697 5.99697 1.01 0.000623131 0.000542983 0.0225388 0.0205285 36 3183 50 6.79088e+06 215552 648988. 2245.63 3.76 0.182467 0.160779 25390 158009 -1 2533 14 1109 2700 167205 37799 6.49817 6.49817 -163.727 -6.49817 0 0 828058. 2865.25 0.36 0.07 0.15 -1 -1 0.36 0.027392 0.0250102 107 158 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_011.v common 7.56 vpr 64.56 MiB 0.02 7104 -1 -1 12 0.23 -1 -1 36668 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66112 30 32 217 249 1 159 78 17 17 289 -1 unnamed_device 26.1 MiB 1.77 828 4892 1016 3711 165 64.6 MiB 0.05 0.00 5.99697 -122.038 -5.99697 5.99697 1.05 0.000506474 0.000455052 0.0189688 0.0173214 38 2340 26 6.79088e+06 215552 678818. 2348.85 2.17 0.139874 0.123195 25966 169698 -1 1901 18 938 2456 141158 33095 6.24757 6.24757 -137.45 -6.24757 0 0 902133. 3121.57 0.40 0.07 0.16 -1 -1 0.40 0.0266616 0.0241618 93 126 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_012.v common 9.46 vpr 64.72 MiB 0.02 7092 -1 -1 12 0.17 -1 -1 36096 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 32 32 227 259 1 170 78 17 17 289 -1 unnamed_device 26.3 MiB 2.22 1053 6552 1504 4379 669 64.7 MiB 0.06 0.00 5.6029 -133.233 -5.6029 5.6029 0.98 0.000538068 0.000487789 0.0238168 0.0216383 38 2791 29 6.79088e+06 188608 678818. 2348.85 3.88 0.172908 0.152705 25966 169698 -1 2413 16 996 2561 149682 32693 5.8535 5.8535 -151.162 -5.8535 0 0 902133. 3121.57 0.37 0.07 0.15 -1 -1 0.37 0.0264287 0.0241184 94 132 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_013.v common 9.75 vpr 65.12 MiB 0.02 7024 -1 -1 13 0.32 -1 -1 36688 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 306 338 1 226 85 17 17 289 -1 unnamed_device 26.6 MiB 1.68 1240 14965 4802 7701 2462 65.1 MiB 0.13 0.00 6.71306 -141.158 -6.71306 6.71306 0.97 0.000664091 0.00059687 0.060147 0.0543672 44 3042 21 6.79088e+06 282912 787024. 2723.27 4.44 0.314964 0.279498 27118 194962 -1 2575 17 1240 3597 179990 41377 6.83836 6.83836 -154.705 -6.83836 0 0 997811. 3452.63 0.40 0.08 0.17 -1 -1 0.40 0.0371674 0.0340192 148 211 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_014.v common 11.23 vpr 65.12 MiB 0.02 7176 -1 -1 14 0.42 -1 -1 36768 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 32 32 302 334 1 227 85 17 17 289 -1 unnamed_device 26.5 MiB 2.21 1378 14407 4698 7749 1960 65.1 MiB 0.13 0.00 7.55456 -155.259 -7.55456 7.55456 1.02 0.000705975 0.000635708 0.0594012 0.0537108 44 3389 32 6.79088e+06 282912 787024. 2723.27 5.02 0.352517 0.311117 27118 194962 -1 2815 18 1397 3707 204852 46291 7.67985 7.67985 -168.616 -7.67985 0 0 997811. 3452.63 0.46 0.09 0.19 -1 -1 0.46 0.0364964 0.0330203 149 207 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_015.v common 10.60 vpr 64.55 MiB 0.02 6880 -1 -1 11 0.22 -1 -1 36232 -1 -1 20 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 29 32 238 270 1 181 81 17 17 289 -1 unnamed_device 26.0 MiB 1.86 994 11981 3577 6276 2128 64.6 MiB 0.10 0.00 5.70368 -111.95 -5.70368 5.70368 1.05 0.000549 0.000499436 0.0416847 0.0379145 36 2967 24 6.79088e+06 269440 648988. 2245.63 5.17 0.18755 0.164641 25390 158009 -1 2344 18 1133 2714 160584 36469 6.16568 6.16568 -128.404 -6.16568 0 0 828058. 2865.25 0.34 0.08 0.15 -1 -1 0.34 0.0292471 0.026272 111 149 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_016.v common 10.12 vpr 65.17 MiB 0.02 7208 -1 -1 12 0.35 -1 -1 36644 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 32 32 306 338 1 232 84 17 17 289 -1 unnamed_device 26.8 MiB 3.00 1315 15639 5438 7836 2365 65.2 MiB 0.15 0.00 6.17261 -133.634 -6.17261 6.17261 1.08 0.000635494 0.000570609 0.0696892 0.0631131 46 4069 24 6.79088e+06 269440 828058. 2865.25 3.08 0.233283 0.207127 27406 200422 -1 3091 19 1776 5610 293916 65162 6.29791 6.29791 -150.722 -6.29791 0 0 1.01997e+06 3529.29 0.45 0.12 0.19 -1 -1 0.45 0.0433241 0.0394554 146 211 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_017.v common 11.44 vpr 65.52 MiB 0.02 7124 -1 -1 13 0.34 -1 -1 36848 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67096 32 32 311 343 1 226 85 17 17 289 -1 unnamed_device 26.7 MiB 2.00 1342 12733 4211 6185 2337 65.5 MiB 0.13 0.00 6.92025 -144.778 -6.92025 6.92025 1.06 0.000780892 0.000700963 0.0588783 0.0536581 38 3496 33 6.79088e+06 282912 678818. 2348.85 5.60 0.353014 0.310207 25966 169698 -1 2898 17 1348 3871 205831 46111 7.42145 7.42145 -164.991 -7.42145 0 0 902133. 3121.57 0.36 0.09 0.16 -1 -1 0.36 0.0381584 0.0347267 144 216 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_018.v common 10.06 vpr 64.72 MiB 0.02 7056 -1 -1 12 0.19 -1 -1 36292 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 32 32 230 262 1 172 80 17 17 289 -1 unnamed_device 26.2 MiB 2.36 897 7992 1874 4598 1520 64.7 MiB 0.07 0.00 5.57833 -123.346 -5.57833 5.57833 1.01 0.000545527 0.000496572 0.0274805 0.0250615 34 2982 30 6.79088e+06 215552 618332. 2139.56 4.37 0.237169 0.208727 25102 150614 -1 2269 18 1127 2966 185033 45728 5.95423 5.95423 -146.111 -5.95423 0 0 787024. 2723.27 0.33 0.08 0.13 -1 -1 0.33 0.0293743 0.0265521 104 135 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_019.v common 9.28 vpr 63.88 MiB 0.02 6796 -1 -1 10 0.12 -1 -1 36264 -1 -1 12 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65408 30 32 176 208 1 138 74 17 17 289 -1 unnamed_device 25.4 MiB 2.94 726 10459 2751 7298 410 63.9 MiB 0.07 0.00 4.41351 -104.197 -4.41351 4.41351 0.96 0.000407659 0.000366686 0.0279867 0.0252799 36 2288 45 6.79088e+06 161664 648988. 2245.63 3.22 0.154925 0.136415 25390 158009 -1 1798 17 813 1838 133043 29160 4.58571 4.58571 -122.678 -4.58571 0 0 828058. 2865.25 0.33 0.06 0.13 -1 -1 0.33 0.0204697 0.0183874 67 85 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_020.v common 16.29 vpr 64.68 MiB 0.02 6932 -1 -1 13 0.22 -1 -1 36084 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66228 31 32 226 258 1 173 79 17 17 289 -1 unnamed_device 26.2 MiB 2.54 981 7346 1830 5059 457 64.7 MiB 0.07 0.00 6.53742 -143.365 -6.53742 6.53742 1.05 0.000521988 0.000473588 0.0271946 0.0247832 30 2737 24 6.79088e+06 215552 556674. 1926.21 10.23 0.214527 0.186958 24526 138013 -1 2282 27 1020 2438 248208 101216 6.53742 6.53742 -157.534 -6.53742 0 0 706193. 2443.58 0.31 0.11 0.13 -1 -1 0.31 0.0353368 0.0315264 99 133 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_021.v common 12.06 vpr 65.17 MiB 0.02 7200 -1 -1 13 0.39 -1 -1 36976 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 32 32 302 334 1 222 86 17 17 289 -1 unnamed_device 26.6 MiB 1.56 1291 8213 2024 5481 708 65.2 MiB 0.08 0.00 6.19723 -135.08 -6.19723 6.19723 1.03 0.000686255 0.000618823 0.0349352 0.031623 36 3756 46 6.79088e+06 296384 648988. 2245.63 6.66 0.247239 0.217218 25390 158009 -1 2975 22 1713 4887 289551 64430 6.65923 6.65923 -155.781 -6.65923 0 0 828058. 2865.25 0.35 0.12 0.15 -1 -1 0.35 0.0438281 0.0395262 143 207 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_022.v common 11.11 vpr 65.07 MiB 0.02 7140 -1 -1 13 0.39 -1 -1 36560 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 32 32 299 331 1 221 83 17 17 289 -1 unnamed_device 26.5 MiB 2.53 1427 11243 3192 5864 2187 65.1 MiB 0.11 0.00 6.55321 -141.386 -6.55321 6.55321 1.06 0.000730885 0.000659171 0.0500352 0.0454434 36 4097 35 6.79088e+06 255968 648988. 2245.63 4.73 0.225539 0.200596 25390 158009 -1 3215 17 1487 3976 272480 58399 7.18741 7.18741 -165.315 -7.18741 0 0 828058. 2865.25 0.36 0.10 0.15 -1 -1 0.36 0.0372882 0.0339299 141 204 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_023.v common 6.05 vpr 63.45 MiB 0.02 6716 -1 -1 9 0.11 -1 -1 36000 -1 -1 16 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64976 26 32 149 181 1 119 74 17 17 289 -1 unnamed_device 25.1 MiB 1.89 609 10614 3184 5729 1701 63.5 MiB 0.06 0.00 3.9703 -76.7287 -3.9703 3.9703 0.96 0.000336968 0.000307356 0.025146 0.0228618 30 1777 32 6.79088e+06 215552 556674. 1926.21 1.07 0.0918933 0.0814708 24526 138013 -1 1379 16 618 1338 75193 18278 4.7221 4.7221 -96.9409 -4.7221 0 0 706193. 2443.58 0.30 0.04 0.11 -1 -1 0.30 0.0144066 0.0128708 64 66 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_024.v common 21.07 vpr 64.88 MiB 0.02 6984 -1 -1 13 0.41 -1 -1 36692 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 304 336 1 222 86 17 17 289 -1 unnamed_device 26.3 MiB 2.88 1392 8591 2186 5720 685 64.9 MiB 0.09 0.00 7.1002 -146.855 -7.1002 7.1002 1.02 0.000752817 0.000683458 0.0371614 0.0337838 36 3969 41 6.79088e+06 296384 648988. 2245.63 14.32 0.364283 0.319799 25390 158009 -1 3161 21 1654 4602 340203 97790 7.55101 7.55101 -168.187 -7.55101 0 0 828058. 2865.25 0.36 0.14 0.15 -1 -1 0.36 0.0440268 0.0399465 137 209 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_025.v common 8.85 vpr 63.59 MiB 0.02 6628 -1 -1 8 0.11 -1 -1 36000 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65116 32 32 155 187 1 128 81 17 17 289 -1 unnamed_device 25.2 MiB 3.23 577 11456 4026 5365 2065 63.6 MiB 0.07 0.00 3.9703 -81.1298 -3.9703 3.9703 1.03 0.000349472 0.00031645 0.0262324 0.0238286 34 2057 38 6.79088e+06 229024 618332. 2139.56 2.26 0.117834 0.103429 25102 150614 -1 1554 18 736 1655 123744 35968 4.43224 4.43224 -103.73 -4.43224 0 0 787024. 2723.27 0.35 0.06 0.14 -1 -1 0.35 0.0192391 0.0173061 64 60 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_026.v common 9.48 vpr 64.80 MiB 0.02 7220 -1 -1 15 0.28 -1 -1 36548 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 32 32 253 285 1 192 81 17 17 289 -1 unnamed_device 26.4 MiB 2.18 1179 11631 3583 5915 2133 64.8 MiB 0.10 0.00 7.29713 -149.008 -7.29713 7.29713 0.98 0.000625873 0.000567252 0.0441708 0.0402031 38 3338 45 6.79088e+06 229024 678818. 2348.85 3.76 0.239596 0.213069 25966 169698 -1 2839 30 1347 3597 382768 148143 7.67303 7.67303 -167.573 -7.67303 0 0 902133. 3121.57 0.35 0.16 0.14 -1 -1 0.35 0.0453338 0.0407347 118 158 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_027.v common 9.02 vpr 65.39 MiB 0.02 7000 -1 -1 12 0.34 -1 -1 36648 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 32 32 309 341 1 218 86 17 17 289 -1 unnamed_device 26.6 MiB 2.11 1276 11993 2910 7652 1431 65.4 MiB 0.11 0.00 6.08302 -130.979 -6.08302 6.08302 1.04 0.000766547 0.000695004 0.050505 0.0456826 38 3216 21 6.79088e+06 296384 678818. 2348.85 3.10 0.227493 0.200364 25966 169698 -1 2663 16 1204 3717 176397 40799 6.08302 6.08302 -142.256 -6.08302 0 0 902133. 3121.57 0.36 0.08 0.16 -1 -1 0.36 0.0333929 0.0303137 145 214 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_028.v common 9.32 vpr 65.01 MiB 0.02 7056 -1 -1 13 0.37 -1 -1 36732 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 32 32 289 321 1 212 84 17 17 289 -1 unnamed_device 26.5 MiB 1.81 1201 5025 880 3885 260 65.0 MiB 0.05 0.00 6.84955 -138.036 -6.84955 6.84955 1.05 0.00074362 0.000689188 0.0223577 0.0204101 36 3429 48 6.79088e+06 269440 648988. 2245.63 3.69 0.220335 0.193053 25390 158009 -1 2821 20 1481 4257 276751 68119 7.31155 7.31155 -162.07 -7.31155 0 0 828058. 2865.25 0.38 0.12 0.15 -1 -1 0.38 0.0409548 0.037128 136 194 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_029.v common 9.05 vpr 64.30 MiB 0.02 7024 -1 -1 12 0.21 -1 -1 36456 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65848 32 32 239 271 1 179 83 17 17 289 -1 unnamed_device 25.8 MiB 2.56 1099 8363 1933 5634 796 64.3 MiB 0.08 0.00 5.40269 -124.362 -5.40269 5.40269 1.00 0.000565896 0.000516483 0.0324435 0.029539 36 2844 20 6.79088e+06 255968 648988. 2245.63 3.06 0.182197 0.161113 25390 158009 -1 2419 18 1042 2737 160232 35695 5.48874 5.48874 -139.192 -5.48874 0 0 828058. 2865.25 0.34 0.07 0.13 -1 -1 0.34 0.028255 0.0256018 106 144 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_030.v common 11.46 vpr 64.50 MiB 0.02 6912 -1 -1 11 0.21 -1 -1 36356 -1 -1 20 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66044 30 32 213 245 1 166 82 17 17 289 -1 unnamed_device 26.1 MiB 2.68 976 9694 2441 6317 936 64.5 MiB 0.09 0.00 5.19894 -112.905 -5.19894 5.19894 1.09 0.000515664 0.000468738 0.0350658 0.0320143 38 2447 44 6.79088e+06 269440 678818. 2348.85 5.09 0.256823 0.224799 25966 169698 -1 2110 18 1073 2633 171724 51239 5.32424 5.32424 -127.417 -5.32424 0 0 902133. 3121.57 0.35 0.08 0.16 -1 -1 0.35 0.0258255 0.0232357 97 122 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_031.v common 9.72 vpr 64.46 MiB 0.02 7000 -1 -1 11 0.22 -1 -1 36652 -1 -1 19 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66008 28 32 221 253 1 179 79 17 17 289 -1 unnamed_device 25.9 MiB 1.62 998 9374 2550 6233 591 64.5 MiB 0.08 0.00 5.52794 -112.188 -5.52794 5.52794 1.12 0.000900265 0.000848211 0.0353967 0.0322494 36 2943 46 6.79088e+06 255968 648988. 2245.63 4.43 0.210815 0.186285 25390 158009 -1 2263 15 1015 2545 157371 35459 5.74283 5.74283 -126.364 -5.74283 0 0 828058. 2865.25 0.37 0.07 0.15 -1 -1 0.37 0.0275922 0.0251897 107 134 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_032.v common 9.53 vpr 64.80 MiB 0.02 6840 -1 -1 12 0.24 -1 -1 35960 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 32 32 273 305 1 207 83 17 17 289 -1 unnamed_device 26.4 MiB 2.41 1284 8903 2302 5113 1488 64.8 MiB 0.09 0.00 5.78978 -138.424 -5.78978 5.78978 0.99 0.000672474 0.000618222 0.0352337 0.0321931 38 3314 23 6.79088e+06 255968 678818. 2348.85 3.62 0.210148 0.187211 25966 169698 -1 2689 17 1355 3290 175065 39228 6.29098 6.29098 -160.622 -6.29098 0 0 902133. 3121.57 0.36 0.08 0.14 -1 -1 0.36 0.031545 0.0287806 119 178 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_033.v common 8.63 vpr 64.65 MiB 0.02 6868 -1 -1 11 0.23 -1 -1 36276 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 31 32 238 270 1 181 80 17 17 289 -1 unnamed_device 26.1 MiB 2.16 933 10228 3104 5099 2025 64.6 MiB 0.09 0.00 5.15968 -117.446 -5.15968 5.15968 1.08 0.000657388 0.000594061 0.0397307 0.0361067 38 2626 19 6.79088e+06 229024 678818. 2348.85 2.75 0.18236 0.160068 25966 169698 -1 2163 16 1081 2908 148229 35178 5.56365 5.56365 -136.265 -5.56365 0 0 902133. 3121.57 0.38 0.07 0.17 -1 -1 0.38 0.0267266 0.0241305 107 145 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_034.v common 7.05 vpr 64.61 MiB 0.02 6940 -1 -1 10 0.20 -1 -1 36692 -1 -1 18 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 29 32 221 253 1 160 79 17 17 289 -1 unnamed_device 26.1 MiB 1.91 957 10219 2846 5746 1627 64.6 MiB 0.08 0.00 4.95172 -107.836 -4.95172 4.95172 1.07 0.000622179 0.000562067 0.035881 0.032544 30 2382 22 6.79088e+06 242496 556674. 1926.21 1.55 0.125735 0.111976 24526 138013 -1 1957 18 796 2065 106464 24923 5.28493 5.28493 -123.539 -5.28493 0 0 706193. 2443.58 0.33 0.06 0.13 -1 -1 0.33 0.0281427 0.0254158 103 132 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_035.v common 26.07 vpr 65.34 MiB 0.02 7240 -1 -1 13 0.44 -1 -1 37068 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66904 32 32 333 365 1 236 86 17 17 289 -1 unnamed_device 26.9 MiB 2.03 1470 6323 1367 4581 375 65.3 MiB 0.08 0.00 6.50941 -142.111 -6.50941 6.50941 1.10 0.00111806 0.000909627 0.0342933 0.0311242 36 4505 46 6.79088e+06 296384 648988. 2245.63 19.96 0.426996 0.375962 25390 158009 -1 3495 16 1750 5437 336089 73437 6.79921 6.79921 -161.47 -6.79921 0 0 828058. 2865.25 0.37 0.12 0.15 -1 -1 0.37 0.0401146 0.0365428 162 238 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_036.v common 13.85 vpr 65.07 MiB 0.02 6976 -1 -1 13 0.42 -1 -1 36772 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 32 32 297 329 1 231 85 17 17 289 -1 unnamed_device 26.7 MiB 2.35 1307 14593 5126 7256 2211 65.1 MiB 0.16 0.00 6.38406 -137.253 -6.38406 6.38406 1.11 0.000721925 0.000651845 0.069464 0.0629225 38 4083 47 6.79088e+06 282912 678818. 2348.85 7.45 0.298592 0.263243 25966 169698 -1 3078 19 1636 4646 254148 57852 6.92097 6.92097 -162.411 -6.92097 0 0 902133. 3121.57 0.39 0.10 0.16 -1 -1 0.39 0.04048 0.0368639 152 202 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_037.v common 9.55 vpr 64.55 MiB 0.02 6880 -1 -1 12 0.18 -1 -1 36584 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 31 32 234 266 1 169 81 17 17 289 -1 unnamed_device 26.1 MiB 1.58 946 9356 3043 4641 1672 64.6 MiB 0.08 0.00 5.78978 -125.721 -5.78978 5.78978 1.03 0.000724326 0.000614699 0.0321703 0.0292663 44 2454 19 6.79088e+06 242496 787024. 2723.27 4.42 0.239823 0.211612 27118 194962 -1 2065 15 938 2610 146602 32739 6.16563 6.16563 -142.122 -6.16563 0 0 997811. 3452.63 0.44 0.07 0.17 -1 -1 0.44 0.0281089 0.0255988 102 141 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_038.v common 9.07 vpr 64.84 MiB 0.02 7188 -1 -1 12 0.32 -1 -1 36852 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 31 32 310 342 1 217 86 17 17 289 -1 unnamed_device 26.2 MiB 1.49 1373 13694 4387 6924 2383 64.8 MiB 0.13 0.00 6.29452 -134.455 -6.29452 6.29452 1.00 0.000795499 0.000726348 0.0595205 0.0540572 36 4456 43 6.79088e+06 309856 648988. 2245.63 3.77 0.249684 0.222845 25390 158009 -1 3369 35 2037 6933 703998 248727 6.96022 6.96022 -157.527 -6.96022 0 0 828058. 2865.25 0.34 0.28 0.14 -1 -1 0.34 0.0656126 0.0591996 148 217 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_039.v common 11.15 vpr 64.75 MiB 0.02 7084 -1 -1 14 0.47 -1 -1 36752 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 31 32 284 316 1 219 84 17 17 289 -1 unnamed_device 26.2 MiB 1.58 1374 6855 1635 4548 672 64.8 MiB 0.08 0.00 6.92457 -144.114 -6.92457 6.92457 1.11 0.000830236 0.000751445 0.035329 0.032046 44 3360 23 6.79088e+06 282912 787024. 2723.27 5.38 0.306798 0.271654 27118 194962 -1 2872 15 1303 3699 196251 44533 7.34737 7.34737 -163.516 -7.34737 0 0 997811. 3452.63 0.47 0.09 0.20 -1 -1 0.47 0.0369507 0.033881 146 191 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_040.v common 9.88 vpr 65.09 MiB 0.02 7172 -1 -1 13 0.36 -1 -1 37244 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 31 32 271 303 1 211 84 17 17 289 -1 unnamed_device 26.6 MiB 3.08 1281 12345 3910 6076 2359 65.1 MiB 0.11 0.00 6.45902 -136.076 -6.45902 6.45902 1.08 0.000620502 0.000561732 0.0481607 0.0436965 38 3663 33 6.79088e+06 282912 678818. 2348.85 2.87 0.200496 0.176502 25966 169698 -1 2794 18 1436 3798 225092 50471 6.95679 6.95679 -156.19 -6.95679 0 0 902133. 3121.57 0.39 0.10 0.17 -1 -1 0.39 0.0346955 0.0312171 126 178 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_041.v common 7.58 vpr 65.04 MiB 0.02 7148 -1 -1 12 0.33 -1 -1 36628 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 31 32 280 312 1 206 86 17 17 289 -1 unnamed_device 26.6 MiB 1.27 1334 10103 2806 6088 1209 65.0 MiB 0.10 0.00 6.29447 -134.048 -6.29447 6.29447 1.08 0.000771157 0.000705796 0.0429565 0.0391 38 3380 23 6.79088e+06 309856 678818. 2348.85 2.42 0.18016 0.160386 25966 169698 -1 2799 19 1200 3583 197278 43359 6.67037 6.67037 -151.273 -6.67037 0 0 902133. 3121.57 0.39 0.09 0.16 -1 -1 0.39 0.0375715 0.0340959 135 187 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_042.v common 10.12 vpr 64.87 MiB 0.02 7208 -1 -1 12 0.25 -1 -1 36508 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 32 32 264 296 1 188 81 17 17 289 -1 unnamed_device 26.5 MiB 1.49 1085 11106 4075 5060 1971 64.9 MiB 0.10 0.00 6.03612 -122.551 -6.03612 6.03612 1.08 0.000592845 0.000537094 0.0441057 0.0400613 36 3009 41 6.79088e+06 229024 648988. 2245.63 4.90 0.228452 0.201175 25390 158009 -1 2455 17 1147 3013 186024 42116 6.31473 6.31473 -140.05 -6.31473 0 0 828058. 2865.25 0.34 0.08 0.16 -1 -1 0.34 0.0304149 0.0273322 113 169 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_043.v common 15.00 vpr 65.57 MiB 0.03 7316 -1 -1 14 0.63 -1 -1 36828 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67148 32 32 339 371 1 247 89 17 17 289 -1 unnamed_device 26.8 MiB 1.80 1630 10187 2514 6182 1491 65.6 MiB 0.11 0.00 6.99643 -149.016 -6.99643 6.99643 1.07 0.00081889 0.000737769 0.0474948 0.0428936 44 4356 41 6.79088e+06 336800 787024. 2723.27 8.78 0.391131 0.344563 27118 194962 -1 3341 19 1594 4681 255181 56256 7.28623 7.28623 -167.312 -7.28623 0 0 997811. 3452.63 0.48 0.12 0.20 -1 -1 0.48 0.0451037 0.0408351 169 244 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_044.v common 12.21 vpr 64.65 MiB 0.02 6860 -1 -1 11 0.27 -1 -1 36096 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66204 31 32 246 278 1 185 81 17 17 289 -1 unnamed_device 26.1 MiB 2.27 1108 9531 2615 5195 1721 64.7 MiB 0.09 0.00 5.57057 -117.295 -5.57057 5.57057 1.16 0.000751254 0.000688786 0.0409103 0.0371845 36 3053 28 6.79088e+06 242496 648988. 2245.63 6.01 0.326082 0.287285 25390 158009 -1 2539 29 1255 3390 314969 113766 5.69587 5.69587 -135.619 -5.69587 0 0 828058. 2865.25 0.38 0.15 0.15 -1 -1 0.38 0.0474752 0.0426197 113 153 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_045.v common 9.55 vpr 64.99 MiB 0.02 7312 -1 -1 13 0.35 -1 -1 36984 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 31 32 268 300 1 191 82 17 17 289 -1 unnamed_device 26.5 MiB 1.95 1202 5422 1141 3981 300 65.0 MiB 0.06 0.00 6.34486 -127.069 -6.34486 6.34486 1.02 0.000604004 0.000548498 0.024624 0.0224264 36 3312 48 6.79088e+06 255968 648988. 2245.63 3.94 0.223923 0.199299 25390 158009 -1 2642 17 1208 3875 236564 51704 6.54507 6.54507 -143.228 -6.54507 0 0 828058. 2865.25 0.35 0.10 0.13 -1 -1 0.35 0.0376353 0.0343633 132 175 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_046.v common 11.10 vpr 65.19 MiB 0.02 7000 -1 -1 12 0.31 -1 -1 36404 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 32 32 318 350 1 227 85 17 17 289 -1 unnamed_device 26.8 MiB 1.64 1296 14965 4146 8867 1952 65.2 MiB 0.13 0.00 6.04038 -128.677 -6.04038 6.04038 0.97 0.000649556 0.000586338 0.0606491 0.0548657 38 3781 38 6.79088e+06 282912 678818. 2348.85 5.87 0.288094 0.255728 25966 169698 -1 2812 18 1529 4541 228826 53870 6.29098 6.29098 -145.421 -6.29098 0 0 902133. 3121.57 0.36 0.10 0.14 -1 -1 0.36 0.0389683 0.0354839 153 223 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_047.v common 10.26 vpr 64.93 MiB 0.02 7204 -1 -1 13 0.32 -1 -1 36608 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66488 32 32 273 305 1 198 83 17 17 289 -1 unnamed_device 26.5 MiB 1.67 1205 13763 4977 6597 2189 64.9 MiB 0.12 0.00 5.99697 -128.982 -5.99697 5.99697 1.03 0.00064217 0.000581387 0.0555413 0.0502857 38 3440 31 6.79088e+06 255968 678818. 2348.85 4.79 0.242715 0.214386 25966 169698 -1 2606 19 1302 3707 192722 44432 6.45897 6.45897 -146.747 -6.45897 0 0 902133. 3121.57 0.38 0.09 0.17 -1 -1 0.38 0.0349366 0.0315853 131 178 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_048.v common 11.06 vpr 65.03 MiB 0.02 7192 -1 -1 13 0.30 -1 -1 36372 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 32 32 269 301 1 198 81 17 17 289 -1 unnamed_device 26.6 MiB 2.56 1142 9706 2833 4964 1909 65.0 MiB 0.09 0.00 6.79572 -137.321 -6.79572 6.79572 1.04 0.000620777 0.000568008 0.0406576 0.0367213 38 2958 19 6.79088e+06 229024 678818. 2348.85 4.80 0.259991 0.229273 25966 169698 -1 2335 15 1082 2890 149421 34304 7.00712 7.00712 -154.104 -7.00712 0 0 902133. 3121.57 0.36 0.07 0.16 -1 -1 0.36 0.0281748 0.025566 118 174 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_049.v common 12.86 vpr 65.35 MiB 0.02 7188 -1 -1 12 0.37 -1 -1 37020 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66916 32 32 298 330 1 217 87 17 17 289 -1 unnamed_device 26.6 MiB 2.56 1451 6039 1220 4218 601 65.3 MiB 0.07 0.00 6.49047 -143.269 -6.49047 6.49047 1.06 0.00074075 0.000672929 0.0282874 0.0257838 38 3768 49 6.79088e+06 309856 678818. 2348.85 6.37 0.353367 0.309854 25966 169698 -1 3119 18 1371 4362 252936 53546 6.62347 6.62347 -157.81 -6.62347 0 0 902133. 3121.57 0.40 0.11 0.17 -1 -1 0.40 0.0415318 0.0377511 150 203 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_050.v common 11.84 vpr 65.16 MiB 0.02 7088 -1 -1 13 0.37 -1 -1 36940 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 32 32 299 331 1 229 84 17 17 289 -1 unnamed_device 26.7 MiB 2.76 1376 11613 2958 6676 1979 65.2 MiB 0.12 0.00 6.71306 -143.577 -6.71306 6.71306 1.04 0.000670516 0.00060062 0.0510536 0.0463275 44 3361 18 6.79088e+06 269440 787024. 2723.27 5.13 0.30595 0.268756 27118 194962 -1 2762 17 1255 3418 176067 40541 6.96366 6.96366 -160.542 -6.96366 0 0 997811. 3452.63 0.43 0.08 0.19 -1 -1 0.43 0.0355764 0.0322824 143 204 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_051.v common 10.19 vpr 64.98 MiB 0.02 7052 -1 -1 14 0.33 -1 -1 36600 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66536 32 32 259 291 1 195 82 17 17 289 -1 unnamed_device 26.6 MiB 2.53 1167 8092 1853 5907 332 65.0 MiB 0.08 0.00 6.96377 -144.578 -6.96377 6.96377 0.99 0.000625918 0.000572692 0.0312953 0.0284667 38 3331 22 6.79088e+06 242496 678818. 2348.85 4.07 0.202103 0.179489 25966 169698 -1 2739 17 1294 3690 203166 45436 7.29349 7.29349 -164.451 -7.29349 0 0 902133. 3121.57 0.36 0.09 0.15 -1 -1 0.36 0.0345597 0.0315805 123 164 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_052.v common 12.19 vpr 65.29 MiB 0.02 7048 -1 -1 13 0.34 -1 -1 36672 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66852 32 32 293 325 1 216 84 17 17 289 -1 unnamed_device 26.6 MiB 3.98 1273 8502 2009 5793 700 65.3 MiB 0.08 0.00 6.91681 -139.809 -6.91681 6.91681 1.02 0.000696157 0.000631733 0.0359437 0.0323866 34 3530 26 6.79088e+06 269440 618332. 2139.56 4.41 0.295635 0.259594 25102 150614 -1 3085 19 1543 4243 264572 60017 7.04976 7.04976 -163.526 -7.04976 0 0 787024. 2723.27 0.37 0.12 0.15 -1 -1 0.37 0.0431359 0.0391581 134 198 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_053.v common 10.49 vpr 65.46 MiB 0.02 7172 -1 -1 13 0.36 -1 -1 36408 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67028 31 32 311 343 1 236 86 17 17 289 -1 unnamed_device 26.9 MiB 1.48 1315 9347 2397 6636 314 65.5 MiB 0.10 0.00 6.76001 -146.752 -6.76001 6.76001 1.00 0.000731062 0.000664403 0.0418816 0.0379613 44 3453 38 6.79088e+06 309856 787024. 2723.27 5.24 0.349789 0.30978 27118 194962 -1 2816 20 1630 4713 241902 55499 7.04638 7.04638 -161.745 -7.04638 0 0 997811. 3452.63 0.41 0.10 0.17 -1 -1 0.41 0.041509 0.0377213 154 218 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_054.v common 10.40 vpr 65.47 MiB 0.02 7256 -1 -1 12 0.39 -1 -1 36708 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67044 32 32 324 356 1 230 88 17 17 289 -1 unnamed_device 26.9 MiB 1.70 1348 11203 2729 6471 2003 65.5 MiB 0.12 0.00 6.37282 -138.756 -6.37282 6.37282 1.04 0.000768653 0.000700785 0.0509765 0.0460848 38 4044 30 6.79088e+06 323328 678818. 2348.85 4.76 0.255269 0.224711 25966 169698 -1 3025 20 1790 5021 261696 61077 6.99937 6.99937 -169.641 -6.99937 0 0 902133. 3121.57 0.37 0.11 0.16 -1 -1 0.37 0.041365 0.0373346 157 229 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_055.v common 11.09 vpr 64.18 MiB 0.02 6868 -1 -1 11 0.17 -1 -1 36568 -1 -1 13 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65720 32 32 216 248 1 162 77 17 17 289 -1 unnamed_device 25.8 MiB 1.84 905 10183 2784 6110 1289 64.2 MiB 0.08 0.00 5.1486 -113.282 -5.1486 5.1486 1.10 0.000513922 0.00046708 0.0360558 0.0327706 44 2210 21 6.79088e+06 175136 787024. 2723.27 5.59 0.246402 0.216621 27118 194962 -1 1785 14 908 2242 124200 30189 5.59941 5.59941 -133.018 -5.59941 0 0 997811. 3452.63 0.43 0.06 0.19 -1 -1 0.43 0.0240241 0.0219395 90 121 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_056.v common 12.04 vpr 64.60 MiB 0.02 6880 -1 -1 13 0.25 -1 -1 36188 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 32 32 245 277 1 192 81 17 17 289 -1 unnamed_device 26.3 MiB 3.21 1100 10581 3170 5156 2255 64.6 MiB 0.10 0.00 6.38411 -139.812 -6.38411 6.38411 1.11 0.000599397 0.000546551 0.0419062 0.0381124 40 2477 15 6.79088e+06 229024 706193. 2443.58 4.97 0.250029 0.221408 26254 175826 -1 2518 16 1116 2774 201576 45090 7.13591 7.13591 -162.483 -7.13591 0 0 926341. 3205.33 0.40 0.08 0.17 -1 -1 0.40 0.0304133 0.0277839 113 150 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_057.v common 12.76 vpr 65.71 MiB 0.02 7308 -1 -1 14 0.61 -1 -1 36592 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67284 32 32 361 393 1 262 88 17 17 289 -1 unnamed_device 27.0 MiB 1.44 1451 15103 4235 8170 2698 65.7 MiB 0.17 0.00 7.1786 -148.537 -7.1786 7.1786 1.08 0.000921536 0.000833555 0.0759948 0.0688436 46 4592 39 6.79088e+06 323328 828058. 2865.25 6.91 0.410727 0.359777 27406 200422 -1 3408 22 2257 6882 361495 81743 7.6798 7.6798 -176.216 -7.6798 0 0 1.01997e+06 3529.29 0.43 0.14 0.20 -1 -1 0.43 0.0488906 0.044063 180 266 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_058.v common 12.95 vpr 65.42 MiB 0.02 6960 -1 -1 13 0.42 -1 -1 36960 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66988 32 32 318 350 1 242 85 17 17 289 -1 unnamed_device 26.8 MiB 2.95 1494 10129 2614 6422 1093 65.4 MiB 0.11 0.00 6.72087 -147.435 -6.72087 6.72087 1.07 0.00122655 0.00114373 0.0505377 0.0455899 38 3571 22 6.79088e+06 282912 678818. 2348.85 6.04 0.380627 0.3349 25966 169698 -1 2964 15 1369 3751 192500 43651 7.1863 7.1863 -167.298 -7.1863 0 0 902133. 3121.57 0.37 0.09 0.16 -1 -1 0.37 0.0384899 0.0348553 154 223 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_059.v common 9.89 vpr 64.46 MiB 0.02 7072 -1 -1 11 0.20 -1 -1 36364 -1 -1 17 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 30 32 223 255 1 164 79 17 17 289 -1 unnamed_device 26.0 MiB 0.82 862 13768 5629 6168 1971 64.5 MiB 0.11 0.00 5.53143 -117.9 -5.53143 5.53143 1.02 0.000476823 0.000432964 0.0458648 0.0415977 34 2921 46 6.79088e+06 229024 618332. 2139.56 5.60 0.277218 0.244279 25102 150614 -1 2288 16 1083 3033 189211 43265 5.65673 5.65673 -134.585 -5.65673 0 0 787024. 2723.27 0.35 0.08 0.13 -1 -1 0.35 0.0281284 0.0255024 99 132 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_060.v common 27.44 vpr 65.48 MiB 0.03 7492 -1 -1 15 0.59 -1 -1 37548 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67052 32 32 335 367 1 254 88 17 17 289 -1 unnamed_device 27.0 MiB 1.67 1646 7693 1869 5001 823 65.5 MiB 0.09 0.00 7.5189 -157.368 -7.5189 7.5189 1.07 0.000809334 0.000731519 0.0393029 0.0357235 36 4613 46 6.79088e+06 323328 648988. 2245.63 21.55 0.41654 0.366832 25390 158009 -1 3851 20 1971 5801 398443 87439 8.30292 8.30292 -194.228 -8.30292 0 0 828058. 2865.25 0.40 0.15 0.16 -1 -1 0.40 0.0503289 0.0457341 172 240 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_061.v common 16.15 vpr 65.27 MiB 0.02 7228 -1 -1 13 0.42 -1 -1 36496 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66840 32 32 301 333 1 229 86 17 17 289 -1 unnamed_device 26.6 MiB 1.38 1396 10103 2895 6092 1116 65.3 MiB 0.10 0.00 6.61551 -143.991 -6.61551 6.61551 0.97 0.000743313 0.000677276 0.0422389 0.0384738 34 4155 30 6.79088e+06 296384 618332. 2139.56 11.12 0.380806 0.338268 25102 150614 -1 3267 20 1490 4102 250685 55939 6.96017 6.96017 -169.513 -6.96017 0 0 787024. 2723.27 0.34 0.11 0.13 -1 -1 0.34 0.0429383 0.0390536 149 206 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_062.v common 10.91 vpr 64.44 MiB 0.02 7048 -1 -1 11 0.17 -1 -1 36460 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65988 32 32 238 270 1 173 80 17 17 289 -1 unnamed_device 25.9 MiB 2.10 1004 11432 3918 5353 2161 64.4 MiB 0.09 0.00 5.82549 -130.589 -5.82549 5.82549 1.02 0.000514838 0.000465447 0.0386936 0.0350768 34 2943 29 6.79088e+06 215552 618332. 2139.56 5.23 0.240646 0.210574 25102 150614 -1 2405 30 1076 2725 295684 111421 5.95079 5.95079 -145.374 -5.95079 0 0 787024. 2723.27 0.36 0.14 0.15 -1 -1 0.36 0.0417797 0.0373274 97 143 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_063.v common 12.21 vpr 65.39 MiB 0.03 7440 -1 -1 12 0.38 -1 -1 36380 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 32 32 308 340 1 226 85 17 17 289 -1 unnamed_device 26.6 MiB 2.03 1356 13663 3509 8297 1857 65.4 MiB 0.13 0.00 6.32253 -138.894 -6.32253 6.32253 1.07 0.000735055 0.000659227 0.059245 0.0533364 44 3287 29 6.79088e+06 282912 787024. 2723.27 6.18 0.328949 0.289533 27118 194962 -1 2834 15 1285 3883 210856 46826 6.67037 6.67037 -155.086 -6.67037 0 0 997811. 3452.63 0.40 0.08 0.19 -1 -1 0.40 0.0330823 0.0300538 152 213 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_064.v common 12.00 vpr 64.73 MiB 0.02 7012 -1 -1 12 0.28 -1 -1 36012 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 32 32 253 285 1 190 80 17 17 289 -1 unnamed_device 26.4 MiB 2.36 1037 7820 2590 3887 1343 64.7 MiB 0.08 0.00 6.04387 -130.269 -6.04387 6.04387 1.08 0.000604512 0.000543205 0.0339362 0.0308274 44 3041 47 6.79088e+06 215552 787024. 2723.27 5.77 0.283542 0.247884 27118 194962 -1 2442 16 1190 3201 208965 47109 6.29447 6.29447 -153.193 -6.29447 0 0 997811. 3452.63 0.44 0.09 0.19 -1 -1 0.44 0.0306798 0.0279428 115 158 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_065.v common 6.63 vpr 64.56 MiB 0.02 6888 -1 -1 12 0.25 -1 -1 36244 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66108 30 32 227 259 1 163 81 17 17 289 -1 unnamed_device 26.1 MiB 1.73 881 12856 3743 7194 1919 64.6 MiB 0.09 0.00 6.34486 -126.195 -6.34486 6.34486 0.96 0.000478791 0.00043365 0.0408075 0.0370593 30 2208 25 6.79088e+06 255968 556674. 1926.21 1.42 0.136742 0.121978 24526 138013 -1 1868 17 868 2338 113709 28546 6.59546 6.59546 -141.505 -6.59546 0 0 706193. 2443.58 0.31 0.06 0.13 -1 -1 0.31 0.0284039 0.025638 105 136 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_066.v common 9.66 vpr 65.10 MiB 0.03 7112 -1 -1 12 0.38 -1 -1 36836 -1 -1 24 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 29 32 292 324 1 202 85 17 17 289 -1 unnamed_device 26.6 MiB 1.73 1153 8269 2129 5014 1126 65.1 MiB 0.09 0.00 6.55742 -124.037 -6.55742 6.55742 1.08 0.000846732 0.000764016 0.0373553 0.0338391 34 3508 41 6.79088e+06 323328 618332. 2139.56 4.00 0.219175 0.193812 25102 150614 -1 2892 18 1343 4193 271108 59741 6.83487 6.83487 -144.049 -6.83487 0 0 787024. 2723.27 0.36 0.10 0.14 -1 -1 0.36 0.0375365 0.0341156 144 203 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_067.v common 13.84 vpr 65.30 MiB 0.02 7232 -1 -1 14 0.44 -1 -1 36768 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 32 32 316 348 1 248 86 17 17 289 -1 unnamed_device 26.6 MiB 3.19 1427 8780 2238 5534 1008 65.3 MiB 0.09 0.00 6.92451 -144.913 -6.92451 6.92451 1.03 0.000721747 0.000652002 0.0401866 0.0364574 44 3901 41 6.79088e+06 296384 787024. 2723.27 6.59 0.389988 0.341694 27118 194962 -1 3021 18 1619 4099 228995 50978 7.30041 7.30041 -165.868 -7.30041 0 0 997811. 3452.63 0.46 0.11 0.19 -1 -1 0.46 0.0421151 0.0384025 155 221 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_068.v common 10.40 vpr 65.14 MiB 0.02 7032 -1 -1 12 0.31 -1 -1 36876 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66704 32 32 286 318 1 212 83 17 17 289 -1 unnamed_device 26.6 MiB 1.79 1248 11243 3116 6113 2014 65.1 MiB 0.12 0.00 6.20837 -138.563 -6.20837 6.20837 1.06 0.000764302 0.000701544 0.0532668 0.0488244 38 3532 22 6.79088e+06 255968 678818. 2348.85 4.78 0.248782 0.222184 25966 169698 -1 2850 17 1400 3971 222581 48958 6.45897 6.45897 -155.894 -6.45897 0 0 902133. 3121.57 0.37 0.10 0.14 -1 -1 0.37 0.0374552 0.0340187 137 191 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_069.v common 7.26 vpr 64.36 MiB 0.02 7040 -1 -1 12 0.20 -1 -1 36524 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65904 32 32 221 253 1 164 79 17 17 289 -1 unnamed_device 25.9 MiB 1.74 985 9036 2218 6308 510 64.4 MiB 0.08 0.00 5.91857 -125.482 -5.91857 5.91857 1.08 0.000506301 0.000459355 0.0320123 0.0290485 34 2664 23 6.79088e+06 202080 618332. 2139.56 1.88 0.166099 0.145517 25102 150614 -1 2220 15 857 2300 142338 31335 6.04387 6.04387 -139.173 -6.04387 0 0 787024. 2723.27 0.34 0.06 0.15 -1 -1 0.34 0.0230346 0.020771 95 126 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_070.v common 8.76 vpr 64.81 MiB 0.02 7128 -1 -1 12 0.29 -1 -1 36076 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 31 32 261 293 1 187 81 17 17 289 -1 unnamed_device 26.4 MiB 2.58 1080 7606 1876 4477 1253 64.8 MiB 0.07 0.00 6.07958 -129.05 -6.07958 6.07958 1.07 0.000675103 0.000608626 0.0306552 0.0278124 36 3111 35 6.79088e+06 242496 648988. 2245.63 2.43 0.173902 0.152867 25390 158009 -1 2495 16 1162 3118 191500 42883 6.36938 6.36938 -148.809 -6.36938 0 0 828058. 2865.25 0.35 0.08 0.15 -1 -1 0.35 0.0320187 0.0291587 114 168 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_071.v common 11.36 vpr 64.82 MiB 0.02 7052 -1 -1 11 0.25 -1 -1 36628 -1 -1 22 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 30 32 277 309 1 200 84 17 17 289 -1 unnamed_device 26.2 MiB 3.37 1171 10149 2747 5514 1888 64.8 MiB 0.09 0.00 5.61753 -118.579 -5.61753 5.61753 1.01 0.000727388 0.000661608 0.0409086 0.0370549 36 3708 36 6.79088e+06 296384 648988. 2245.63 4.34 0.201739 0.18001 25390 158009 -1 2900 24 1556 5189 417848 125249 6.07947 6.07947 -141.27 -6.07947 0 0 828058. 2865.25 0.34 0.15 0.13 -1 -1 0.34 0.0419033 0.0377116 129 186 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_072.v common 9.57 vpr 64.60 MiB 0.02 7132 -1 -1 11 0.28 -1 -1 36468 -1 -1 21 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 28 32 251 283 1 191 81 17 17 289 -1 unnamed_device 26.2 MiB 1.80 968 12331 5121 6767 443 64.6 MiB 0.11 0.00 5.70363 -105.841 -5.70363 5.70363 1.15 0.000709429 0.000645705 0.0497125 0.0450911 44 2924 27 6.79088e+06 282912 787024. 2723.27 3.71 0.221772 0.195201 27118 194962 -1 2219 20 1182 3266 176346 41413 5.95074 5.95074 -120.892 -5.95074 0 0 997811. 3452.63 0.45 0.08 0.20 -1 -1 0.45 0.0334512 0.0299447 125 164 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_073.v common 10.97 vpr 64.61 MiB 0.02 7084 -1 -1 13 0.25 -1 -1 36348 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 30 32 223 255 1 173 78 17 17 289 -1 unnamed_device 26.0 MiB 3.81 1091 11532 3532 6500 1500 64.6 MiB 0.10 0.00 6.25532 -124.609 -6.25532 6.25532 1.12 0.000722578 0.000663705 0.0438179 0.039551 36 2771 44 6.79088e+06 215552 648988. 2245.63 3.34 0.209234 0.183752 25390 158009 -1 2325 16 1051 2617 149329 34154 6.50592 6.50592 -141.87 -6.50592 0 0 828058. 2865.25 0.36 0.07 0.16 -1 -1 0.36 0.0277817 0.0252788 104 132 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_074.v common 10.21 vpr 64.95 MiB 0.02 6892 -1 -1 12 0.24 -1 -1 36200 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 32 32 269 301 1 197 84 17 17 289 -1 unnamed_device 26.5 MiB 2.32 1227 4659 829 3322 508 65.0 MiB 0.05 0.00 6.07958 -132.59 -6.07958 6.07958 1.08 0.000640903 0.000585379 0.0217817 0.0199631 36 3027 38 6.79088e+06 269440 648988. 2245.63 4.23 0.225427 0.200079 25390 158009 -1 2569 17 1111 2857 175508 38939 6.33018 6.33018 -151.646 -6.33018 0 0 828058. 2865.25 0.37 0.09 0.14 -1 -1 0.37 0.0355728 0.0324239 125 174 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_075.v common 11.97 vpr 65.02 MiB 0.03 7224 -1 -1 13 0.39 -1 -1 36428 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 31 32 283 315 1 193 83 17 17 289 -1 unnamed_device 26.5 MiB 2.57 1211 9983 2563 5846 1574 65.0 MiB 0.10 0.00 6.54518 -134.181 -6.54518 6.54518 1.12 0.000815746 0.000743962 0.0454751 0.041238 36 3127 34 6.79088e+06 269440 648988. 2245.63 5.24 0.23935 0.210111 25390 158009 -1 2817 30 1298 3870 393068 160512 7.00718 7.00718 -153.673 -7.00718 0 0 828058. 2865.25 0.38 0.19 0.16 -1 -1 0.38 0.0535743 0.047733 137 190 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_076.v common 9.95 vpr 65.43 MiB 0.02 7184 -1 -1 14 0.35 -1 -1 36612 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67000 32 32 308 340 1 224 85 17 17 289 -1 unnamed_device 26.6 MiB 1.79 1335 13849 3841 7381 2627 65.4 MiB 0.14 0.00 7.22905 -148.195 -7.22905 7.22905 1.13 0.000772026 0.000700328 0.0627158 0.0567611 36 3519 23 6.79088e+06 282912 648988. 2245.63 4.12 0.259545 0.229145 25390 158009 -1 2969 19 1466 3928 222434 49949 7.73024 7.73024 -174.874 -7.73024 0 0 828058. 2865.25 0.38 0.11 0.16 -1 -1 0.38 0.0430126 0.0390934 149 213 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_077.v common 10.34 vpr 64.90 MiB 0.02 7052 -1 -1 14 0.33 -1 -1 36472 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 277 309 1 209 84 17 17 289 -1 unnamed_device 26.4 MiB 2.92 1267 13260 4128 6827 2305 64.9 MiB 0.12 0.00 6.79583 -138.47 -6.79583 6.79583 1.04 0.000644809 0.000586902 0.055469 0.0504537 36 3821 36 6.79088e+06 269440 648988. 2245.63 3.49 0.224877 0.20118 25390 158009 -1 3131 22 1386 4022 332419 89996 7.17173 7.17173 -157.966 -7.17173 0 0 828058. 2865.25 0.41 0.14 0.15 -1 -1 0.41 0.0439564 0.0397965 136 182 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_078.v common 10.23 vpr 65.10 MiB 0.02 7220 -1 -1 13 0.46 -1 -1 36964 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 32 32 288 320 1 210 83 17 17 289 -1 unnamed_device 26.6 MiB 2.40 1211 9803 2713 5326 1764 65.1 MiB 0.11 0.00 6.67391 -137.428 -6.67391 6.67391 1.09 0.00064743 0.000581079 0.0454543 0.0412424 40 2953 19 6.79088e+06 255968 706193. 2443.58 3.72 0.235522 0.208569 26254 175826 -1 2865 19 1463 4308 281698 61460 7.14705 7.14705 -156.84 -7.14705 0 0 926341. 3205.33 0.42 0.12 0.17 -1 -1 0.42 0.0428972 0.039093 139 193 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_079.v common 8.29 vpr 64.64 MiB 0.02 6940 -1 -1 13 0.25 -1 -1 36480 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66192 30 32 230 262 1 176 78 17 17 289 -1 unnamed_device 26.1 MiB 2.14 1056 10204 2997 6469 738 64.6 MiB 0.09 0.00 5.84133 -125.224 -5.84133 5.84133 1.13 0.000820604 0.000751288 0.0414194 0.0376702 36 2747 49 6.79088e+06 215552 648988. 2245.63 2.31 0.197596 0.173626 25390 158009 -1 2310 14 989 2388 141454 31706 6.47553 6.47553 -144.68 -6.47553 0 0 828058. 2865.25 0.38 0.07 0.16 -1 -1 0.38 0.0256142 0.0232594 106 139 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_080.v common 10.78 vpr 65.20 MiB 0.02 7084 -1 -1 13 0.56 -1 -1 36564 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 30 32 294 326 1 222 85 17 17 289 -1 unnamed_device 26.6 MiB 1.70 1353 11989 3177 6595 2217 65.2 MiB 0.11 0.00 6.80265 -142.99 -6.80265 6.80265 1.02 0.000701943 0.000636994 0.0521128 0.0475257 34 3865 49 6.79088e+06 309856 618332. 2139.56 5.16 0.284324 0.25412 25102 150614 -1 3240 21 1670 4279 337255 86329 7.71551 7.71551 -171.108 -7.71551 0 0 787024. 2723.27 0.33 0.14 0.13 -1 -1 0.33 0.0457464 0.0417537 144 203 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_081.v common 10.39 vpr 65.10 MiB 0.02 7268 -1 -1 14 0.40 -1 -1 36580 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 32 32 276 308 1 206 84 17 17 289 -1 unnamed_device 26.6 MiB 2.23 1338 11979 3434 6428 2117 65.1 MiB 0.12 0.00 6.68167 -146.217 -6.68167 6.68167 1.10 0.000631491 0.000572223 0.051574 0.0467794 38 3324 18 6.79088e+06 269440 678818. 2348.85 4.12 0.221877 0.195459 25966 169698 -1 2701 18 1293 3740 197175 43907 7.21858 7.21858 -169.126 -7.21858 0 0 902133. 3121.57 0.40 0.09 0.17 -1 -1 0.40 0.0358857 0.0322767 133 181 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_082.v common 10.64 vpr 65.11 MiB 0.03 7076 -1 -1 12 0.35 -1 -1 36760 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 31 32 293 325 1 212 84 17 17 289 -1 unnamed_device 26.6 MiB 2.30 1193 11979 3443 6000 2536 65.1 MiB 0.12 0.00 6.54856 -132.625 -6.54856 6.54856 1.10 0.000730604 0.000664396 0.0562795 0.0511177 30 3990 35 6.79088e+06 282912 556674. 1926.21 4.33 0.192786 0.171107 24526 138013 -1 2829 31 1472 4206 420790 164301 6.67386 6.67386 -151.863 -6.67386 0 0 706193. 2443.58 0.33 0.20 0.14 -1 -1 0.33 0.058757 0.052991 143 200 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_083.v common 11.41 vpr 64.97 MiB 0.03 7320 -1 -1 13 0.32 -1 -1 36388 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66532 30 32 273 305 1 208 83 17 17 289 -1 unnamed_device 26.5 MiB 2.60 1262 12323 3382 7149 1792 65.0 MiB 0.12 0.00 6.93338 -129.368 -6.93338 6.93338 1.09 0.000738629 0.000667957 0.0530132 0.0482631 38 3285 18 6.79088e+06 282912 678818. 2348.85 4.93 0.270382 0.239631 25966 169698 -1 2785 15 1200 3386 176822 39439 7.12477 7.12477 -146.079 -7.12477 0 0 902133. 3121.57 0.41 0.08 0.16 -1 -1 0.41 0.032961 0.0300106 126 182 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_084.v common 9.41 vpr 65.50 MiB 0.02 7032 -1 -1 14 0.44 -1 -1 37148 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67072 32 32 310 342 1 235 85 17 17 289 -1 unnamed_device 26.7 MiB 1.80 1496 5851 1160 4193 498 65.5 MiB 0.07 0.00 6.83847 -145.508 -6.83847 6.83847 1.01 0.000870168 0.000804044 0.0317976 0.0290648 40 3511 30 6.79088e+06 282912 706193. 2443.58 3.51 0.260327 0.232279 26254 175826 -1 3454 38 2357 7011 787946 317034 7.29703 7.29703 -171.5 -7.29703 0 0 926341. 3205.33 0.39 0.35 0.15 -1 -1 0.39 0.0810511 0.0734559 154 215 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_085.v common 11.89 vpr 65.07 MiB 0.02 7156 -1 -1 11 0.36 -1 -1 36492 -1 -1 22 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 29 32 259 291 1 194 83 17 17 289 -1 unnamed_device 26.6 MiB 1.55 1099 13763 4218 7150 2395 65.1 MiB 0.12 0.00 5.74283 -113.79 -5.74283 5.74283 1.04 0.000809394 0.000726129 0.0549642 0.0498166 36 3311 35 6.79088e+06 296384 648988. 2245.63 6.56 0.256164 0.227573 25390 158009 -1 2589 20 1206 3669 216009 47704 6.11175 6.11175 -131.949 -6.11175 0 0 828058. 2865.25 0.38 0.10 0.14 -1 -1 0.38 0.038527 0.0350472 130 170 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_086.v common 12.37 vpr 64.62 MiB 0.02 6864 -1 -1 13 0.21 -1 -1 36576 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 32 32 225 257 1 182 78 17 17 289 -1 unnamed_device 26.1 MiB 3.85 956 3896 751 3064 81 64.6 MiB 0.05 0.00 5.77864 -135.969 -5.77864 5.77864 1.12 0.00055984 0.000500514 0.0191674 0.0173332 36 3043 31 6.79088e+06 188608 648988. 2245.63 4.73 0.188681 0.16616 25390 158009 -1 2317 19 1150 2615 160726 37934 6.11534 6.11534 -155.122 -6.11534 0 0 828058. 2865.25 0.39 0.08 0.15 -1 -1 0.39 0.0324961 0.029403 99 130 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_087.v common 12.14 vpr 64.88 MiB 0.02 7164 -1 -1 14 0.31 -1 -1 36492 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 273 305 1 212 83 17 17 289 -1 unnamed_device 26.4 MiB 2.47 1305 5123 1053 3790 280 64.9 MiB 0.06 0.00 7.04217 -146.535 -7.04217 7.04217 1.10 0.000633698 0.000573326 0.025294 0.0231141 36 3524 22 6.79088e+06 255968 648988. 2245.63 5.82 0.195644 0.171408 25390 158009 -1 2913 15 1343 3450 213179 47025 7.84435 7.84435 -172.205 -7.84435 0 0 828058. 2865.25 0.37 0.09 0.16 -1 -1 0.37 0.0307107 0.0278387 129 178 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_088.v common 9.76 vpr 65.60 MiB 0.02 7036 -1 -1 15 0.45 -1 -1 36932 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67172 32 32 322 354 1 240 86 17 17 289 -1 unnamed_device 26.9 MiB 2.19 1452 14828 4097 8696 2035 65.6 MiB 0.15 0.00 7.3152 -155.529 -7.3152 7.3152 1.02 0.000762541 0.00068769 0.0691615 0.0629925 36 4203 41 6.79088e+06 296384 648988. 2245.63 3.75 0.284373 0.254204 25390 158009 -1 3324 18 1795 4742 281237 62610 7.84862 7.84862 -179.446 -7.84862 0 0 828058. 2865.25 0.35 0.12 0.14 -1 -1 0.35 0.0413579 0.0376834 153 227 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_089.v common 9.85 vpr 64.61 MiB 0.02 6896 -1 -1 11 0.22 -1 -1 36372 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 32 32 218 250 1 160 78 17 17 289 -1 unnamed_device 26.2 MiB 2.65 1007 7714 2045 5188 481 64.6 MiB 0.07 0.00 5.37463 -117.408 -5.37463 5.37463 1.11 0.000507906 0.000461617 0.0283961 0.0258323 34 2626 46 6.79088e+06 188608 618332. 2139.56 3.59 0.19574 0.172003 25102 150614 -1 2279 16 946 2442 161948 35384 5.82544 5.82544 -137.184 -5.82544 0 0 787024. 2723.27 0.33 0.07 0.15 -1 -1 0.33 0.0266636 0.0241263 91 123 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_090.v common 10.53 vpr 64.62 MiB 0.02 6884 -1 -1 12 0.25 -1 -1 36400 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66168 31 32 244 276 1 185 79 17 17 289 -1 unnamed_device 26.0 MiB 1.99 1069 11402 3699 5509 2194 64.6 MiB 0.10 0.00 5.82898 -130.331 -5.82898 5.82898 1.02 0.000565339 0.000511705 0.0431243 0.0391175 36 3108 50 6.79088e+06 215552 648988. 2245.63 4.93 0.300945 0.264521 25390 158009 -1 2531 19 1170 2978 175560 40360 6.20488 6.20488 -150.218 -6.20488 0 0 828058. 2865.25 0.37 0.08 0.15 -1 -1 0.37 0.0326038 0.0295221 111 151 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_091.v common 8.55 vpr 65.16 MiB 0.02 7028 -1 -1 12 0.38 -1 -1 36568 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 32 32 301 333 1 214 84 17 17 289 -1 unnamed_device 26.6 MiB 1.65 1333 7770 1879 4830 1061 65.2 MiB 0.08 0.00 6.42321 -133.875 -6.42321 6.42321 0.99 0.000713497 0.000650692 0.037328 0.0340617 36 3576 34 6.79088e+06 269440 648988. 2245.63 3.26 0.230144 0.205304 25390 158009 -1 2881 15 1292 3519 202549 46714 6.54851 6.54851 -153.254 -6.54851 0 0 828058. 2865.25 0.34 0.09 0.14 -1 -1 0.34 0.0359955 0.0330917 145 206 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_092.v common 10.75 vpr 64.94 MiB 0.02 7260 -1 -1 12 0.29 -1 -1 36460 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 278 310 1 207 83 17 17 289 -1 unnamed_device 26.5 MiB 1.94 1323 13043 3771 7206 2066 64.9 MiB 0.11 0.00 6.47021 -137.3 -6.47021 6.47021 0.97 0.000588593 0.000536225 0.0495388 0.0450738 44 3202 22 6.79088e+06 255968 787024. 2723.27 5.13 0.310625 0.277131 27118 194962 -1 2706 17 1184 3456 200664 43933 6.93221 6.93221 -155.193 -6.93221 0 0 997811. 3452.63 0.43 0.09 0.17 -1 -1 0.43 0.0357134 0.0325672 133 183 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_093.v common 10.76 vpr 65.35 MiB 0.02 7204 -1 -1 14 0.60 -1 -1 36844 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66916 32 32 333 365 1 242 87 17 17 289 -1 unnamed_device 26.9 MiB 1.69 1389 5271 1002 4135 134 65.3 MiB 0.07 0.00 7.34316 -151.316 -7.34316 7.34316 1.08 0.000814078 0.000725888 0.0302201 0.0275261 38 3992 33 6.79088e+06 309856 678818. 2348.85 4.84 0.269707 0.238938 25966 169698 -1 3178 19 1619 4903 246728 56660 7.46846 7.46846 -167.758 -7.46846 0 0 902133. 3121.57 0.42 0.13 0.16 -1 -1 0.42 0.0514052 0.0466011 170 238 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_094.v common 8.84 vpr 64.95 MiB 0.02 7268 -1 -1 11 0.29 -1 -1 36436 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 30 32 261 293 1 195 83 17 17 289 -1 unnamed_device 26.5 MiB 2.26 1141 13583 4534 6898 2151 65.0 MiB 0.11 0.00 5.74632 -117.652 -5.74632 5.74632 0.98 0.000554994 0.000500023 0.0485254 0.0439737 36 3367 35 6.79088e+06 282912 648988. 2245.63 3.08 0.206977 0.18412 25390 158009 -1 2753 19 1376 4024 242405 52504 6.08296 6.08296 -138.485 -6.08296 0 0 828058. 2865.25 0.33 0.10 0.13 -1 -1 0.33 0.0347786 0.0315074 128 170 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_095.v common 6.08 vpr 64.52 MiB 0.02 7092 -1 -1 11 0.22 -1 -1 36616 -1 -1 19 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66064 27 32 217 249 1 154 78 17 17 289 -1 unnamed_device 26.1 MiB 1.37 905 9706 2487 6569 650 64.5 MiB 0.07 0.00 5.56719 -104.624 -5.56719 5.56719 0.97 0.000463498 0.00042049 0.0314541 0.0286756 30 2647 32 6.79088e+06 255968 556674. 1926.21 1.44 0.136007 0.121071 24526 138013 -1 2013 16 933 2520 135822 31296 5.94309 5.94309 -123.755 -5.94309 0 0 706193. 2443.58 0.30 0.06 0.12 -1 -1 0.30 0.026786 0.0242392 101 132 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_096.v common 12.15 vpr 65.84 MiB 0.02 7208 -1 -1 13 0.58 -1 -1 36616 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67424 32 32 373 405 1 276 93 17 17 289 -1 unnamed_device 27.2 MiB 2.34 1666 15003 4055 7926 3022 65.8 MiB 0.17 0.00 6.72081 -139.329 -6.72081 6.72081 1.05 0.000886035 0.000790588 0.0719426 0.0645874 40 4247 23 6.79088e+06 390688 706193. 2443.58 5.49 0.292978 0.258161 26254 175826 -1 4044 29 2125 6347 592785 186198 7.22196 7.22196 -161.184 -7.22196 0 0 926341. 3205.33 0.39 0.23 0.17 -1 -1 0.39 0.0641365 0.0576752 191 278 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_097.v common 20.76 vpr 64.80 MiB 0.02 7324 -1 -1 14 0.37 -1 -1 36824 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 31 32 269 301 1 201 83 17 17 289 -1 unnamed_device 26.4 MiB 1.81 1146 8903 2281 5745 877 64.8 MiB 0.09 0.00 7.18979 -146.393 -7.18979 7.18979 1.03 0.000655339 0.000594382 0.03767 0.0341398 30 3316 24 6.79088e+06 269440 556674. 1926.21 15.18 0.263995 0.231146 24526 138013 -1 2807 21 1428 3869 256174 67221 7.51186 7.51186 -167.43 -7.51186 0 0 706193. 2443.58 0.32 0.11 0.14 -1 -1 0.32 0.0385606 0.0346406 128 176 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_098.v common 9.22 vpr 64.60 MiB 0.02 6860 -1 -1 12 0.19 -1 -1 36472 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66148 32 32 228 260 1 188 83 17 17 289 -1 unnamed_device 26.1 MiB 2.68 1175 8183 2029 5543 611 64.6 MiB 0.07 0.00 5.79327 -138.237 -5.79327 5.79327 0.98 0.000533376 0.000488291 0.0272337 0.0248206 46 2675 20 6.79088e+06 255968 828058. 2865.25 3.03 0.176017 0.156587 27406 200422 -1 2468 16 1065 2638 153037 32561 6.38057 6.38057 -157.994 -6.38057 0 0 1.01997e+06 3529.29 0.43 0.07 0.17 -1 -1 0.43 0.0271938 0.0246579 109 133 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_099.v common 13.73 vpr 64.94 MiB 0.02 6996 -1 -1 13 0.38 -1 -1 36500 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 265 297 1 195 82 17 17 289 -1 unnamed_device 26.5 MiB 3.56 1222 6312 1404 4514 394 64.9 MiB 0.07 0.00 6.79927 -139.987 -6.79927 6.79927 1.08 0.000657746 0.000594586 0.027525 0.0250488 44 3204 32 6.79088e+06 242496 787024. 2723.27 6.30 0.287987 0.252964 27118 194962 -1 2541 16 1078 3098 176661 38736 6.79927 6.79927 -154.777 -6.79927 0 0 997811. 3452.63 0.40 0.08 0.19 -1 -1 0.40 0.0305642 0.027736 125 170 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_100.v common 12.26 vpr 64.99 MiB 0.02 7292 -1 -1 13 0.41 -1 -1 37068 -1 -1 25 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 31 32 325 357 1 249 88 17 17 289 -1 unnamed_device 26.6 MiB 2.53 1512 12568 3220 7578 1770 65.0 MiB 0.13 0.00 6.12997 -135.199 -6.12997 6.12997 1.04 0.000757751 0.000666814 0.054114 0.0486388 38 4352 25 6.79088e+06 336800 678818. 2348.85 5.70 0.267341 0.236162 25966 169698 -1 3412 28 1989 5890 509840 178791 6.50233 6.50233 -155.387 -6.50233 0 0 902133. 3121.57 0.39 0.22 0.16 -1 -1 0.39 0.0591776 0.0532803 159 232 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_101.v common 9.80 vpr 65.04 MiB 0.03 7124 -1 -1 11 0.29 -1 -1 36792 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 30 32 287 319 1 197 85 17 17 289 -1 unnamed_device 26.5 MiB 1.97 1073 12175 3171 6460 2544 65.0 MiB 0.12 0.00 5.83242 -116.072 -5.83242 5.83242 1.06 0.000757204 0.000677517 0.0528282 0.0475565 38 3286 40 6.79088e+06 309856 678818. 2348.85 4.03 0.258145 0.227357 25966 169698 -1 2550 17 1256 3970 205924 48451 6.33362 6.33362 -136.242 -6.33362 0 0 902133. 3121.57 0.40 0.09 0.15 -1 -1 0.40 0.034646 0.0313804 140 196 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_102.v common 8.26 vpr 65.20 MiB 0.02 7052 -1 -1 15 0.39 -1 -1 36660 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66760 32 32 297 329 1 220 83 17 17 289 -1 unnamed_device 26.6 MiB 1.75 1286 11243 3039 6558 1646 65.2 MiB 0.10 0.00 7.46856 -150.693 -7.46856 7.46856 0.97 0.000626623 0.000566593 0.0472258 0.0426227 40 2940 29 6.79088e+06 255968 706193. 2443.58 2.83 0.264144 0.236067 26254 175826 -1 2796 20 1376 3779 228983 52879 7.84441 7.84441 -168.32 -7.84441 0 0 926341. 3205.33 0.38 0.10 0.15 -1 -1 0.38 0.040819 0.0371241 142 202 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_103.v common 9.53 vpr 65.38 MiB 0.02 6968 -1 -1 13 0.38 -1 -1 36668 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 32 32 311 343 1 230 87 17 17 289 -1 unnamed_device 26.8 MiB 2.32 1370 8151 1826 5570 755 65.4 MiB 0.08 0.00 6.80265 -145.399 -6.80265 6.80265 0.95 0.000863911 0.000789583 0.0361818 0.0328996 38 3611 32 6.79088e+06 309856 678818. 2348.85 3.62 0.255246 0.227564 25966 169698 -1 2942 16 1363 4076 210389 47111 7.42915 7.42915 -167.096 -7.42915 0 0 902133. 3121.57 0.35 0.09 0.14 -1 -1 0.35 0.037101 0.0339079 154 216 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_104.v common 7.64 vpr 64.64 MiB 0.02 6980 -1 -1 12 0.27 -1 -1 36276 -1 -1 18 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 29 32 236 268 1 182 79 17 17 289 -1 unnamed_device 26.1 MiB 2.59 964 11909 4050 5724 2135 64.6 MiB 0.10 0.00 6.04736 -125.367 -6.04736 6.04736 1.05 0.000554159 0.00050456 0.0430904 0.0389873 30 2783 23 6.79088e+06 242496 556674. 1926.21 1.47 0.134916 0.119022 24526 138013 -1 2079 14 1031 2381 113792 27913 6.54856 6.54856 -148.372 -6.54856 0 0 706193. 2443.58 0.31 0.06 0.13 -1 -1 0.31 0.0245156 0.0221835 109 147 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_105.v common 8.65 vpr 64.59 MiB 0.02 7068 -1 -1 11 0.18 -1 -1 36412 -1 -1 14 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 32 32 231 263 1 184 78 17 17 289 -1 unnamed_device 26.1 MiB 1.68 1145 7216 1861 4799 556 64.6 MiB 0.06 0.00 5.71482 -126.252 -5.71482 5.71482 0.98 0.000527797 0.000481567 0.0255312 0.0232053 36 3704 50 6.79088e+06 188608 648988. 2245.63 3.61 0.180624 0.159985 25390 158009 -1 2719 18 1225 3147 209786 45796 6.09066 6.09066 -152.673 -6.09066 0 0 828058. 2865.25 0.36 0.08 0.14 -1 -1 0.36 0.0301351 0.0274166 98 136 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_106.v common 8.59 vpr 65.27 MiB 0.02 6984 -1 -1 13 0.41 -1 -1 36712 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66836 31 32 294 326 1 214 85 17 17 289 -1 unnamed_device 26.6 MiB 1.47 1146 13105 4549 6597 1959 65.3 MiB 0.12 0.00 6.58427 -131.594 -6.58427 6.58427 1.09 0.00065373 0.000592265 0.0545773 0.0492693 38 3533 30 6.79088e+06 296384 678818. 2348.85 3.11 0.219324 0.194762 25966 169698 -1 2790 22 1828 5120 283085 64346 7.53628 7.53628 -159.043 -7.53628 0 0 902133. 3121.57 0.37 0.11 0.17 -1 -1 0.37 0.0418123 0.0375281 144 201 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_107.v common 8.29 vpr 64.64 MiB 0.02 7092 -1 -1 10 0.23 -1 -1 36208 -1 -1 17 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 29 32 221 253 1 164 78 17 17 289 -1 unnamed_device 26.2 MiB 2.24 866 7216 1729 5173 314 64.6 MiB 0.07 0.00 4.98748 -104.487 -4.98748 4.98748 1.09 0.000601199 0.00053649 0.0270835 0.0245861 30 2848 39 6.79088e+06 229024 556674. 1926.21 2.42 0.130511 0.115332 24526 138013 -1 2140 25 1021 2862 249179 91155 5.23808 5.23808 -123.204 -5.23808 0 0 706193. 2443.58 0.32 0.11 0.13 -1 -1 0.32 0.0335754 0.0298261 98 132 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_108.v common 15.12 vpr 64.43 MiB 0.02 6856 -1 -1 14 0.25 -1 -1 36692 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 32 32 240 272 1 188 82 17 17 289 -1 unnamed_device 25.9 MiB 3.65 1120 5778 1200 4327 251 64.4 MiB 0.06 0.00 6.37298 -133.274 -6.37298 6.37298 1.05 0.000544935 0.000492697 0.0221739 0.0202061 36 3081 26 6.79088e+06 242496 648988. 2245.63 7.87 0.243098 0.211757 25390 158009 -1 2591 19 1153 3032 196294 42821 7.12467 7.12467 -159.681 -7.12467 0 0 828058. 2865.25 0.35 0.08 0.15 -1 -1 0.35 0.0315528 0.028393 110 145 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_109.v common 10.36 vpr 64.92 MiB 0.02 7008 -1 -1 12 0.40 -1 -1 36552 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 31 32 292 324 1 210 85 17 17 289 -1 unnamed_device 26.4 MiB 1.44 1228 12175 3322 6427 2426 64.9 MiB 0.12 0.00 6.13341 -132.612 -6.13341 6.13341 1.06 0.000730775 0.00065989 0.0515272 0.0463398 36 3486 49 6.79088e+06 296384 648988. 2245.63 5.01 0.275812 0.24354 25390 158009 -1 2807 19 1413 4228 241784 53579 6.54851 6.54851 -153.579 -6.54851 0 0 828058. 2865.25 0.36 0.10 0.14 -1 -1 0.36 0.040056 0.0362883 143 199 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_110.v common 8.59 vpr 64.59 MiB 0.02 6916 -1 -1 12 0.18 -1 -1 36076 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 31 32 229 261 1 179 79 17 17 289 -1 unnamed_device 26.1 MiB 2.42 1035 7684 2025 5265 394 64.6 MiB 0.06 0.00 5.4976 -121.005 -5.4976 5.4976 0.95 0.000483557 0.000439705 0.0262575 0.0238798 34 2731 34 6.79088e+06 215552 618332. 2139.56 2.96 0.15773 0.139887 25102 150614 -1 2460 15 1030 2439 158519 35835 6.11529 6.11529 -143.123 -6.11529 0 0 787024. 2723.27 0.32 0.07 0.13 -1 -1 0.32 0.0243023 0.0220607 101 136 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_111.v common 10.17 vpr 64.86 MiB 0.02 7160 -1 -1 12 0.24 -1 -1 36688 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 282 314 1 202 82 17 17 289 -1 unnamed_device 26.4 MiB 1.75 1236 7914 1783 5757 374 64.9 MiB 0.08 0.00 6.25876 -129.091 -6.25876 6.25876 1.05 0.000696304 0.00063353 0.0351782 0.0319914 36 3628 48 6.79088e+06 242496 648988. 2245.63 4.81 0.215256 0.191606 25390 158009 -1 2974 20 1380 4153 266676 56862 6.54507 6.54507 -152.855 -6.54507 0 0 828058. 2865.25 0.34 0.10 0.13 -1 -1 0.34 0.038696 0.0350869 123 187 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_112.v common 10.07 vpr 64.92 MiB 0.02 7248 -1 -1 13 0.38 -1 -1 36508 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 31 32 269 301 1 204 82 17 17 289 -1 unnamed_device 26.4 MiB 1.99 1279 10050 2777 5979 1294 64.9 MiB 0.10 0.00 6.33367 -133.326 -6.33367 6.33367 1.05 0.000680687 0.000618022 0.0415119 0.0375934 38 3331 38 6.79088e+06 255968 678818. 2348.85 4.23 0.22513 0.19681 25966 169698 -1 2731 17 1298 3748 206916 45902 6.54507 6.54507 -152.641 -6.54507 0 0 902133. 3121.57 0.37 0.08 0.16 -1 -1 0.37 0.0320413 0.0289055 134 176 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_113.v common 8.26 vpr 64.73 MiB 0.02 6948 -1 -1 11 0.22 -1 -1 36352 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66280 32 32 237 269 1 188 79 17 17 289 -1 unnamed_device 26.1 MiB 1.74 1170 5825 1263 4080 482 64.7 MiB 0.06 0.00 5.66792 -123.968 -5.66792 5.66792 1.07 0.000553518 0.0005028 0.0239207 0.021767 38 2980 30 6.79088e+06 202080 678818. 2348.85 2.91 0.172651 0.151255 25966 169698 -1 2509 17 1120 2990 165940 37112 6.16912 6.16912 -144.524 -6.16912 0 0 902133. 3121.57 0.37 0.07 0.16 -1 -1 0.37 0.0274094 0.0246314 105 142 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_114.v common 11.22 vpr 64.91 MiB 0.02 6868 -1 -1 13 0.27 -1 -1 36372 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 259 291 1 191 81 17 17 289 -1 unnamed_device 26.3 MiB 2.45 1063 13556 4573 7043 1940 64.9 MiB 0.12 0.00 6.03617 -131.152 -6.03617 6.03617 1.09 0.000686787 0.00062947 0.0545016 0.0493072 38 2744 28 6.79088e+06 229024 678818. 2348.85 5.00 0.301244 0.265358 25966 169698 -1 2282 18 1121 3098 154638 36298 6.24757 6.24757 -145.565 -6.24757 0 0 902133. 3121.57 0.37 0.07 0.16 -1 -1 0.37 0.0296248 0.0266575 116 164 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_115.v common 12.55 vpr 64.93 MiB 0.02 7060 -1 -1 13 0.34 -1 -1 36224 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 32 32 277 309 1 213 82 17 17 289 -1 unnamed_device 26.4 MiB 2.07 1354 12720 3433 7838 1449 64.9 MiB 0.12 0.00 6.11878 -133.886 -6.11878 6.11878 1.05 0.000693693 0.000625182 0.0537241 0.0487872 54 2946 20 6.79088e+06 242496 949917. 3286.91 6.48 0.334429 0.294774 28846 232421 -1 2556 17 1370 3762 201310 43900 6.28328 6.28328 -147.289 -6.28328 0 0 1.17392e+06 4061.99 0.49 0.09 0.23 -1 -1 0.49 0.0354543 0.0321915 130 182 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_116.v common 9.35 vpr 64.40 MiB 0.02 7292 -1 -1 11 0.23 -1 -1 35920 -1 -1 22 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65948 29 32 245 277 1 176 83 17 17 289 -1 unnamed_device 25.8 MiB 1.83 964 11243 3400 5698 2145 64.4 MiB 0.09 0.00 5.53486 -106.345 -5.53486 5.53486 1.01 0.000510505 0.000461776 0.0386224 0.0350997 36 2780 44 6.79088e+06 296384 648988. 2245.63 4.08 0.220798 0.195681 25390 158009 -1 2224 19 1034 3013 185421 40571 5.66016 5.66016 -121.842 -5.66016 0 0 828058. 2865.25 0.34 0.08 0.13 -1 -1 0.34 0.0311137 0.0281661 115 156 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_117.v common 9.77 vpr 65.28 MiB 0.02 7060 -1 -1 14 0.44 -1 -1 37424 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 32 32 316 348 1 232 86 17 17 289 -1 unnamed_device 26.7 MiB 1.99 1491 8213 2026 5627 560 65.3 MiB 0.09 0.00 7.40125 -159.232 -7.40125 7.40125 1.07 0.000737778 0.000664956 0.040604 0.0367278 36 3844 48 6.79088e+06 296384 648988. 2245.63 3.72 0.222206 0.195366 25390 158009 -1 3332 22 1597 4429 395529 137199 8.02774 8.02774 -183.413 -8.02774 0 0 828058. 2865.25 0.36 0.16 0.16 -1 -1 0.36 0.0454787 0.0410929 160 221 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_118.v common 12.42 vpr 64.60 MiB 0.02 7036 -1 -1 12 0.22 -1 -1 36176 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66152 31 32 230 262 1 188 81 17 17 289 -1 unnamed_device 26.1 MiB 3.60 1073 12856 3930 7113 1813 64.6 MiB 0.11 0.00 5.82893 -123.636 -5.82893 5.82893 1.11 0.000546279 0.000469888 0.0461443 0.0416163 38 2740 24 6.79088e+06 242496 678818. 2348.85 5.04 0.243481 0.214955 25966 169698 -1 2279 15 1035 2499 132791 30162 5.82893 5.82893 -135.892 -5.82893 0 0 902133. 3121.57 0.39 0.07 0.16 -1 -1 0.39 0.0266322 0.0242481 108 137 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_119.v common 11.65 vpr 65.07 MiB 0.02 7036 -1 -1 13 0.36 -1 -1 36864 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 32 32 282 314 1 208 83 17 17 289 -1 unnamed_device 26.6 MiB 2.45 1246 13223 4375 6451 2397 65.1 MiB 0.13 0.00 6.37287 -130.265 -6.37287 6.37287 1.09 0.000661254 0.000599964 0.0572928 0.0518713 38 3717 38 6.79088e+06 255968 678818. 2348.85 5.22 0.292051 0.260334 25966 169698 -1 2805 19 1455 4093 231455 52130 6.70957 6.70957 -152.409 -6.70957 0 0 902133. 3121.57 0.40 0.10 0.16 -1 -1 0.40 0.0407262 0.0371728 132 187 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_120.v common 11.05 vpr 64.62 MiB 0.02 7024 -1 -1 13 0.25 -1 -1 36128 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66168 32 32 235 267 1 182 80 17 17 289 -1 unnamed_device 26.1 MiB 2.82 1106 12292 3626 6609 2057 64.6 MiB 0.11 0.00 6.20842 -140.032 -6.20842 6.20842 1.09 0.000553562 0.000499428 0.0455427 0.0412151 36 2910 20 6.79088e+06 215552 648988. 2245.63 4.45 0.187746 0.164887 25390 158009 -1 2393 21 1101 2767 161053 36624 6.70613 6.70613 -164.31 -6.70613 0 0 828058. 2865.25 0.36 0.08 0.16 -1 -1 0.36 0.0318762 0.0284506 104 140 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_121.v common 8.44 vpr 65.17 MiB 0.02 7088 -1 -1 12 0.26 -1 -1 36340 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 32 32 265 297 1 189 83 17 17 289 -1 unnamed_device 26.5 MiB 2.33 1222 10343 2693 5983 1667 65.2 MiB 0.09 0.00 5.83242 -130.968 -5.83242 5.83242 1.03 0.000572872 0.000519395 0.0405515 0.0368366 36 3244 45 6.79088e+06 255968 648988. 2245.63 2.51 0.223415 0.199365 25390 158009 -1 2640 15 1047 3239 191366 41946 6.08302 6.08302 -145.739 -6.08302 0 0 828058. 2865.25 0.36 0.08 0.14 -1 -1 0.36 0.0311656 0.0284335 121 170 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_122.v common 10.85 vpr 65.54 MiB 0.03 7300 -1 -1 15 0.65 -1 -1 36504 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67112 32 32 344 376 1 260 88 17 17 289 -1 unnamed_device 27.1 MiB 2.67 1464 11788 3306 6614 1868 65.5 MiB 0.14 0.00 8.1062 -160.068 -8.1062 8.1062 1.12 0.00088977 0.000801386 0.060566 0.0547921 46 4175 40 6.79088e+06 323328 828058. 2865.25 3.71 0.27433 0.243105 27406 200422 -1 3311 18 1815 5507 289346 66058 8.3568 8.3568 -180.662 -8.3568 0 0 1.01997e+06 3529.29 0.42 0.11 0.20 -1 -1 0.42 0.0423513 0.0384364 176 249 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_123.v common 7.72 vpr 64.04 MiB 0.02 6764 -1 -1 10 0.13 -1 -1 35704 -1 -1 11 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65572 30 32 173 205 1 129 73 17 17 289 -1 unnamed_device 25.6 MiB 2.14 720 9801 3395 4774 1632 64.0 MiB 0.07 0.00 4.44354 -100.588 -4.44354 4.44354 1.09 0.000377119 0.000342562 0.0300548 0.0273659 34 1737 25 6.79088e+06 148192 618332. 2139.56 2.08 0.140463 0.122923 25102 150614 -1 1592 14 645 1545 91058 21380 4.44354 4.44354 -112.141 -4.44354 0 0 787024. 2723.27 0.35 0.05 0.15 -1 -1 0.35 0.0173062 0.0156251 63 82 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_124.v common 11.24 vpr 64.34 MiB 0.02 6896 -1 -1 13 0.24 -1 -1 36544 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65884 30 32 229 261 1 179 81 17 17 289 -1 unnamed_device 25.8 MiB 2.31 1009 10581 3564 5329 1688 64.3 MiB 0.09 0.00 6.07969 -127.299 -6.07969 6.07969 1.04 0.000650138 0.000589953 0.0373168 0.0338936 38 2567 23 6.79088e+06 255968 678818. 2348.85 5.26 0.302405 0.265797 25966 169698 -1 2110 17 1057 2568 125843 30360 6.07969 6.07969 -140.018 -6.07969 0 0 902133. 3121.57 0.39 0.07 0.17 -1 -1 0.39 0.0299972 0.0271951 105 138 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_125.v common 27.92 vpr 64.69 MiB 0.02 6888 -1 -1 12 0.23 -1 -1 36568 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 32 32 261 293 1 204 81 17 17 289 -1 unnamed_device 26.1 MiB 2.30 1055 12506 5150 7144 212 64.7 MiB 0.11 0.00 6.40514 -135.594 -6.40514 6.40514 1.00 0.000580417 0.000526867 0.0479008 0.0436402 40 2952 26 6.79088e+06 229024 706193. 2443.58 21.98 0.395774 0.349281 26254 175826 -1 2862 28 1548 3896 382677 135840 6.65574 6.65574 -155.293 -6.65574 0 0 926341. 3205.33 0.39 0.16 0.15 -1 -1 0.39 0.046057 0.0416096 115 166 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_126.v common 6.55 vpr 64.25 MiB 0.02 7080 -1 -1 9 0.18 -1 -1 36256 -1 -1 20 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65796 25 32 184 216 1 138 77 17 17 289 -1 unnamed_device 25.7 MiB 1.51 775 9368 2461 5476 1431 64.3 MiB 0.07 0.00 4.29134 -83.4176 -4.29134 4.29134 1.08 0.000420056 0.000382299 0.0282769 0.025764 28 2274 48 6.79088e+06 269440 531479. 1839.03 1.56 0.12405 0.108776 23950 126010 -1 1887 17 803 2086 134547 30286 4.75781 4.75781 -102.218 -4.75781 0 0 648988. 2245.63 0.29 0.06 0.12 -1 -1 0.29 0.021491 0.0192046 86 103 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_127.v common 12.02 vpr 65.28 MiB 0.02 7024 -1 -1 12 0.35 -1 -1 36240 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 32 32 302 334 1 236 87 17 17 289 -1 unnamed_device 26.5 MiB 3.06 1469 12375 3106 7573 1696 65.3 MiB 0.13 0.00 6.34142 -146.405 -6.34142 6.34142 1.11 0.000957427 0.000860379 0.0562646 0.0505874 40 3510 41 6.79088e+06 309856 706193. 2443.58 4.74 0.291565 0.258052 26254 175826 -1 3463 31 1672 4447 447127 145803 6.71732 6.71732 -167.061 -6.71732 0 0 926341. 3205.33 0.45 0.21 0.17 -1 -1 0.45 0.0612438 0.0551646 146 207 -1 -1 -1 -1 -fixed_k6_frac_N8_22nm.xml mult_128.v common 11.60 vpr 65.14 MiB 0.02 7144 -1 -1 14 0.42 -1 -1 36988 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66708 31 32 295 327 1 217 85 17 17 289 -1 unnamed_device 26.3 MiB 1.58 1254 11989 3109 6424 2456 65.1 MiB 0.12 0.00 7.22905 -149.343 -7.22905 7.22905 1.09 0.000756266 0.00068726 0.0546765 0.0496846 38 3428 50 6.79088e+06 296384 678818. 2348.85 5.93 0.45338 0.404249 25966 169698 -1 2840 17 1361 4017 219577 49336 7.47965 7.47965 -167.982 -7.47965 0 0 902133. 3121.57 0.41 0.11 0.16 -1 -1 0.41 0.0438708 0.0401859 151 202 -1 -1 -1 -1 -fixed_k6_frac_ripple_N8_22nm.xml mult_001.v common 6.80 vpr 65.68 MiB 0.03 7228 -1 -1 1 0.04 -1 -1 34188 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67260 32 32 438 350 1 202 101 17 17 289 -1 unnamed_device 26.9 MiB 1.69 944 12556 3244 8430 882 65.7 MiB 0.14 0.00 3.32249 -114.905 -3.32249 3.32249 1.07 0.000710376 0.00064743 0.041501 0.0378139 30 2943 36 6.87369e+06 517032 556674. 1926.21 1.60 0.14774 0.130057 25186 138497 -1 2003 20 1605 2585 128443 34218 3.6718 3.6718 -144.311 -3.6718 0 0 706193. 2443.58 0.31 0.07 0.14 -1 -1 0.31 0.0272035 0.023998 155 80 32 32 96 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_002.v common 8.74 vpr 65.28 MiB 0.02 7528 -1 -1 1 0.04 -1 -1 34088 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66848 30 32 409 330 1 192 85 17 17 289 -1 unnamed_device 26.6 MiB 4.19 820 11803 2959 7058 1786 65.3 MiB 0.11 0.00 3.28949 -104.618 -3.28949 3.28949 0.99 0.000621126 0.000571098 0.0375713 0.0343854 32 2881 39 6.87369e+06 321398 586450. 2029.24 1.29 0.146806 0.13053 25474 144626 -1 2099 18 1709 2824 237521 56440 4.2133 4.2133 -142.017 -4.2133 0 0 744469. 2576.02 0.32 0.09 0.12 -1 -1 0.32 0.0289369 0.0260461 141 78 30 30 89 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_003.v common 7.32 vpr 65.62 MiB 0.02 7132 -1 -1 1 0.04 -1 -1 34164 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67196 32 32 387 309 1 191 100 17 17 289 -1 unnamed_device 27.0 MiB 2.50 1048 14716 4083 9435 1198 65.6 MiB 0.14 0.00 3.09176 -110.61 -3.09176 3.09176 1.07 0.000566362 0.000515249 0.0420017 0.0381239 28 2693 22 6.87369e+06 503058 531479. 1839.03 1.35 0.125596 0.111052 24610 126494 -1 2469 23 1644 2556 220862 49672 3.7734 3.7734 -143.739 -3.7734 0 0 648988. 2245.63 0.30 0.09 0.12 -1 -1 0.30 0.0297209 0.0260773 145 50 54 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_004.v common 7.97 vpr 65.37 MiB 0.03 7420 -1 -1 1 0.04 -1 -1 34064 -1 -1 23 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 29 32 343 267 1 184 84 17 17 289 -1 unnamed_device 26.5 MiB 1.79 811 14724 5436 6558 2730 65.4 MiB 0.13 0.00 3.28949 -101.39 -3.28949 3.28949 1.06 0.000528311 0.000481124 0.0463778 0.0422987 36 2239 33 6.87369e+06 321398 648988. 2245.63 2.76 0.187689 0.164774 26050 158493 -1 1808 19 1591 2673 181877 44404 3.8484 3.8484 -134.443 -3.8484 0 0 828058. 2865.25 0.38 0.07 0.16 -1 -1 0.38 0.0244636 0.0216574 136 25 87 29 29 29 -fixed_k6_frac_ripple_N8_22nm.xml mult_005.v common 8.66 vpr 65.55 MiB 0.02 7348 -1 -1 1 0.04 -1 -1 33868 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67120 32 32 376 288 1 202 85 17 17 289 -1 unnamed_device 26.9 MiB 2.10 988 14779 5494 6432 2853 65.5 MiB 0.14 0.00 3.44779 -122.107 -3.44779 3.44779 1.03 0.00060487 0.000554371 0.0478805 0.043857 34 3681 32 6.87369e+06 293451 618332. 2139.56 3.14 0.211008 0.187046 25762 151098 -1 2611 22 2288 4162 339766 77152 4.121 4.121 -157.425 -4.121 0 0 787024. 2723.27 0.33 0.12 0.13 -1 -1 0.33 0.0329488 0.0295071 147 31 96 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_006.v common 6.38 vpr 65.74 MiB 0.02 7240 -1 -1 1 0.04 -1 -1 34124 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67316 32 32 402 316 1 200 103 17 17 289 -1 unnamed_device 27.0 MiB 1.57 1085 13840 4071 8630 1139 65.7 MiB 0.13 0.00 2.83325 -102.585 -2.83325 2.83325 1.07 0.000594754 0.000539452 0.0382735 0.0347025 28 2449 23 6.87369e+06 544980 531479. 1839.03 1.31 0.124634 0.109737 24610 126494 -1 2238 20 1642 2549 186181 43390 2.88996 2.88996 -121.499 -2.88996 0 0 648988. 2245.63 0.29 0.08 0.12 -1 -1 0.29 0.0279734 0.0247365 154 61 63 32 63 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_007.v common 8.15 vpr 64.46 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 34408 -1 -1 20 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 27 32 269 226 1 146 79 17 17 289 -1 unnamed_device 26.1 MiB 2.94 819 13261 4441 7277 1543 64.5 MiB 0.11 0.00 2.9476 -92.9982 -2.9476 2.9476 1.09 0.000429719 0.000392934 0.0361304 0.0328172 34 1909 37 6.87369e+06 279477 618332. 2139.56 1.73 0.147183 0.128142 25762 151098 -1 1621 21 1144 1877 131979 30947 2.88796 2.88796 -107.356 -2.88796 0 0 787024. 2723.27 0.35 0.06 0.15 -1 -1 0.35 0.0213352 0.0188043 102 26 54 27 27 27 -fixed_k6_frac_ripple_N8_22nm.xml mult_008.v common 5.33 vpr 65.25 MiB 0.02 7340 -1 -1 1 0.03 -1 -1 33856 -1 -1 35 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 31 32 317 242 1 187 98 17 17 289 -1 unnamed_device 26.4 MiB 1.07 1029 12023 3097 7616 1310 65.2 MiB 0.10 0.00 2.67795 -92.7667 -2.67795 2.67795 0.99 0.000459045 0.00041899 0.0296243 0.0269476 28 2576 21 6.87369e+06 489084 531479. 1839.03 1.14 0.10977 0.0975373 24610 126494 -1 2274 23 1402 2204 170544 39683 2.97426 2.97426 -117.37 -2.97426 0 0 648988. 2245.63 0.28 0.08 0.11 -1 -1 0.28 0.0283975 0.025094 141 -1 115 31 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_009.v common 8.26 vpr 65.12 MiB 0.02 7300 -1 -1 1 0.04 -1 -1 33680 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 31 32 338 292 1 153 79 17 17 289 -1 unnamed_device 26.5 MiB 3.63 728 10219 2495 6935 789 65.1 MiB 0.09 0.00 2.60257 -87.8304 -2.60257 2.60257 1.13 0.000500788 0.000451302 0.0329911 0.029948 30 1803 21 6.87369e+06 223581 556674. 1926.21 1.04 0.105825 0.0933479 25186 138497 -1 1552 21 875 1413 89257 22726 2.90831 2.90831 -107.88 -2.90831 0 0 706193. 2443.58 0.33 0.06 0.14 -1 -1 0.33 0.0260101 0.0230565 103 81 0 0 84 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_010.v common 10.18 vpr 64.80 MiB 0.02 7008 -1 -1 1 0.03 -1 -1 33732 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 32 32 314 256 1 168 80 17 17 289 -1 unnamed_device 26.4 MiB 4.80 754 14528 4419 8161 1948 64.8 MiB 0.12 0.00 3.0558 -108.546 -3.0558 3.0558 1.11 0.000466995 0.000424656 0.0439318 0.0400627 34 2333 21 6.87369e+06 223581 618332. 2139.56 1.82 0.178734 0.158747 25762 151098 -1 1800 20 1482 2301 164555 38978 3.15451 3.15451 -129.443 -3.15451 0 0 787024. 2723.27 0.36 0.08 0.14 -1 -1 0.36 0.0273818 0.0243765 114 31 64 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_011.v common 8.69 vpr 64.94 MiB 0.02 7296 -1 -1 1 0.04 -1 -1 33836 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 30 32 325 273 1 160 80 17 17 289 -1 unnamed_device 26.4 MiB 4.19 858 14528 4543 7906 2079 64.9 MiB 0.12 0.00 2.9678 -101.964 -2.9678 2.9678 1.11 0.000496323 0.000453659 0.0447694 0.0408097 30 1955 49 6.87369e+06 251529 556674. 1926.21 1.13 0.136771 0.120219 25186 138497 -1 1569 23 1135 1750 103964 24549 2.81591 2.81591 -116.213 -2.81591 0 0 706193. 2443.58 0.30 0.06 0.12 -1 -1 0.30 0.024695 0.0218322 109 58 30 30 60 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_012.v common 6.94 vpr 65.32 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 34108 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66892 32 32 331 280 1 161 96 17 17 289 -1 unnamed_device 26.6 MiB 1.84 954 15426 4475 9001 1950 65.3 MiB 0.12 0.00 2.77825 -99.3641 -2.77825 2.77825 1.05 0.000489862 0.000444006 0.037338 0.0338652 34 2244 29 6.87369e+06 447163 618332. 2139.56 1.72 0.159334 0.139102 25762 151098 -1 1920 20 1141 1902 135812 31458 2.73166 2.73166 -114.811 -2.73166 0 0 787024. 2723.27 0.33 0.07 0.15 -1 -1 0.33 0.0232954 0.0204746 116 57 25 25 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_013.v common 10.62 vpr 65.54 MiB 0.03 7240 -1 -1 1 0.04 -1 -1 33588 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67108 32 32 386 305 1 195 99 17 17 289 -1 unnamed_device 26.8 MiB 5.98 857 14691 3897 9448 1346 65.5 MiB 0.14 0.00 2.84425 -98.8761 -2.84425 2.84425 1.03 0.000601385 0.000548199 0.0397153 0.0359295 30 2530 24 6.87369e+06 489084 556674. 1926.21 1.17 0.123914 0.108961 25186 138497 -1 1865 17 1330 2347 115375 30435 2.96496 2.96496 -121.831 -2.96496 0 0 706193. 2443.58 0.35 0.07 0.14 -1 -1 0.35 0.0272879 0.0244121 147 55 64 32 57 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_014.v common 8.24 vpr 65.75 MiB 0.02 7396 -1 -1 1 0.04 -1 -1 33948 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67324 32 32 407 319 1 202 101 17 17 289 -1 unnamed_device 27.0 MiB 2.66 954 21016 6899 11253 2864 65.7 MiB 0.18 0.00 3.42579 -119.662 -3.42579 3.42579 1.02 0.000529691 0.000482765 0.0557751 0.0508058 34 2813 27 6.87369e+06 517032 618332. 2139.56 2.20 0.21206 0.187824 25762 151098 -1 2255 24 2278 3438 257164 61115 4.0193 4.0193 -147.746 -4.0193 0 0 787024. 2723.27 0.33 0.10 0.13 -1 -1 0.33 0.0332399 0.0295451 155 60 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_015.v common 6.99 vpr 64.72 MiB 0.02 7280 -1 -1 1 0.04 -1 -1 33788 -1 -1 19 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 29 32 272 228 1 148 80 17 17 289 -1 unnamed_device 26.4 MiB 2.47 728 7992 2202 5388 402 64.7 MiB 0.07 0.00 3.0099 -92.6559 -3.0099 3.0099 1.08 0.000413421 0.000375582 0.0217783 0.0197838 30 2050 37 6.87369e+06 265503 556674. 1926.21 1.17 0.0954904 0.0831723 25186 138497 -1 1674 20 1011 1768 123818 28351 2.85801 2.85801 -105.893 -2.85801 0 0 706193. 2443.58 0.32 0.06 0.13 -1 -1 0.32 0.0205301 0.0181821 102 21 58 29 24 24 -fixed_k6_frac_ripple_N8_22nm.xml mult_016.v common 8.55 vpr 65.48 MiB 0.02 7236 -1 -1 1 0.03 -1 -1 33992 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67052 32 32 401 315 1 200 85 17 17 289 -1 unnamed_device 26.8 MiB 3.00 1087 16639 6456 7976 2207 65.5 MiB 0.15 0.00 2.77395 -102.972 -2.77395 2.77395 0.98 0.000591275 0.000489552 0.0532644 0.0486179 34 3105 29 6.87369e+06 293451 618332. 2139.56 2.29 0.206977 0.18336 25762 151098 -1 2452 22 2114 3615 272837 63173 3.53646 3.53646 -136.299 -3.53646 0 0 787024. 2723.27 0.33 0.10 0.13 -1 -1 0.33 0.0308925 0.0275808 145 60 64 32 62 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_017.v common 10.42 vpr 65.54 MiB 0.02 7232 -1 -1 1 0.04 -1 -1 33948 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67116 32 32 383 303 1 193 102 17 17 289 -1 unnamed_device 26.9 MiB 5.79 1059 15096 3849 9673 1574 65.5 MiB 0.13 0.00 2.91945 -107.862 -2.91945 2.91945 1.08 0.000596045 0.00054552 0.0441782 0.0402096 28 2522 22 6.87369e+06 531006 531479. 1839.03 1.18 0.132204 0.117073 24610 126494 -1 2232 20 1603 2351 167132 38343 3.10426 3.10426 -130.094 -3.10426 0 0 648988. 2245.63 0.31 0.08 0.11 -1 -1 0.31 0.0284375 0.0252814 148 54 64 32 56 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_018.v common 8.32 vpr 65.25 MiB 0.02 7020 -1 -1 1 0.04 -1 -1 33936 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 32 32 339 284 1 165 93 17 17 289 -1 unnamed_device 26.5 MiB 3.20 877 16893 4766 9816 2311 65.2 MiB 0.14 0.00 2.46506 -92.5133 -2.46506 2.46506 1.05 0.000479286 0.00043295 0.042051 0.0381921 34 2148 23 6.87369e+06 405241 618332. 2139.56 1.65 0.158633 0.138376 25762 151098 -1 1760 21 1222 1737 127970 30763 2.31317 2.31317 -105.704 -2.31317 0 0 787024. 2723.27 0.34 0.06 0.15 -1 -1 0.34 0.0235495 0.02065 117 62 29 29 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_019.v common 5.00 vpr 64.46 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 33820 -1 -1 14 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66012 30 32 226 208 1 119 76 17 17 289 -1 unnamed_device 26.0 MiB 0.73 712 11276 3881 6002 1393 64.5 MiB 0.08 0.00 2.31406 -79.4466 -2.31406 2.31406 1.04 0.000532839 0.000476046 0.0279173 0.0253756 32 1609 17 6.87369e+06 195634 586450. 2029.24 0.97 0.0734471 0.0643931 25474 144626 -1 1384 22 696 1012 91647 19365 2.03287 2.03287 -88.5401 -2.03287 0 0 744469. 2576.02 0.32 0.05 0.14 -1 -1 0.32 0.0173832 0.0152733 73 29 24 24 30 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_020.v common 6.01 vpr 64.94 MiB 0.02 7196 -1 -1 1 0.04 -1 -1 34140 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 31 32 335 280 1 165 80 17 17 289 -1 unnamed_device 26.5 MiB 1.53 903 11260 2984 6988 1288 64.9 MiB 0.10 0.00 3.53045 -113.667 -3.53045 3.53045 1.04 0.000476347 0.000435434 0.0358239 0.0326851 32 2318 25 6.87369e+06 237555 586450. 2029.24 1.08 0.110278 0.0974792 25474 144626 -1 1912 19 1072 1615 130798 30116 3.4005 3.4005 -129.403 -3.4005 0 0 744469. 2576.02 0.31 0.06 0.14 -1 -1 0.31 0.0220781 0.0194514 113 55 31 31 62 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_021.v common 5.90 vpr 65.50 MiB 0.03 7316 -1 -1 1 0.04 -1 -1 33828 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67072 32 32 366 283 1 197 100 17 17 289 -1 unnamed_device 26.8 MiB 1.24 1128 19124 5915 10897 2312 65.5 MiB 0.15 0.00 3.42399 -119.998 -3.42399 3.42399 1.10 0.000505482 0.000453704 0.0469601 0.0425472 30 2404 30 6.87369e+06 503058 556674. 1926.21 1.17 0.139584 0.123597 25186 138497 -1 2005 20 1477 2118 116901 28917 3.5027 3.5027 -136.5 -3.5027 0 0 706193. 2443.58 0.32 0.07 0.14 -1 -1 0.32 0.0257276 0.022825 150 31 91 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_022.v common 11.12 vpr 65.86 MiB 0.02 7424 -1 -1 1 0.04 -1 -1 34120 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67444 32 32 460 375 1 199 104 17 17 289 -1 unnamed_device 27.0 MiB 3.81 939 19380 5611 10123 3646 65.9 MiB 0.17 0.00 3.04776 -103.548 -3.04776 3.04776 1.08 0.00057946 0.000526442 0.0577671 0.0527041 36 2664 27 6.87369e+06 558954 648988. 2245.63 3.76 0.244439 0.216712 26050 158493 -1 1947 21 1516 2294 156510 37560 3.523 3.523 -126.016 -3.523 0 0 828058. 2865.25 0.38 0.09 0.14 -1 -1 0.38 0.035751 0.0318824 154 108 0 0 125 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_023.v common 6.84 vpr 64.22 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 34224 -1 -1 16 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65760 26 32 198 186 1 109 74 17 17 289 -1 unnamed_device 25.7 MiB 2.30 459 11544 5029 5637 878 64.2 MiB 0.06 0.00 2.29206 -62.1231 -2.29206 2.29206 1.01 0.000290736 0.000264043 0.0237998 0.0215483 32 1373 47 6.87369e+06 223581 586450. 2029.24 1.45 0.0985552 0.0861165 25474 144626 -1 994 14 587 904 63433 16866 2.27347 2.27347 -74.2691 -2.27347 0 0 744469. 2576.02 0.32 0.03 0.13 -1 -1 0.32 0.0122228 0.0108963 69 21 26 26 22 22 -fixed_k6_frac_ripple_N8_22nm.xml mult_024.v common 6.27 vpr 65.30 MiB 0.02 7184 -1 -1 1 0.04 -1 -1 33832 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66864 32 32 333 251 1 196 85 17 17 289 -1 unnamed_device 26.5 MiB 1.57 1069 15895 5601 7736 2558 65.3 MiB 0.14 0.00 3.28949 -115.813 -3.28949 3.28949 0.98 0.000464726 0.000425076 0.0444294 0.0405513 28 3078 26 6.87369e+06 293451 531479. 1839.03 1.54 0.129899 0.115595 24610 126494 -1 2561 20 1983 3225 257467 59868 4.1383 4.1383 -157.609 -4.1383 0 0 648988. 2245.63 0.27 0.09 0.11 -1 -1 0.27 0.0264371 0.0236535 141 -1 122 32 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_025.v common 5.36 vpr 64.39 MiB 0.02 6896 -1 -1 1 0.03 -1 -1 33716 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 32 32 199 182 1 122 76 17 17 289 -1 unnamed_device 25.7 MiB 0.54 773 12076 4224 6363 1489 64.4 MiB 0.07 0.00 2.05403 -78.601 -2.05403 2.05403 1.07 0.000285959 0.000259325 0.0272458 0.024736 34 1556 17 6.87369e+06 167686 618332. 2139.56 1.49 0.101824 0.0886852 25762 151098 -1 1375 20 624 860 64891 15350 2.06102 2.06102 -90.6169 -2.06102 0 0 787024. 2723.27 0.35 0.04 0.14 -1 -1 0.35 0.0159981 0.0141446 71 -1 53 32 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_026.v common 5.68 vpr 65.65 MiB 0.02 7316 -1 -1 1 0.04 -1 -1 33960 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67224 32 32 376 288 1 202 100 17 17 289 -1 unnamed_device 27.0 MiB 1.05 1107 18428 5086 11458 1884 65.6 MiB 0.16 0.00 3.42579 -123.797 -3.42579 3.42579 1.05 0.000564464 0.000514736 0.0479333 0.0435103 30 2779 26 6.87369e+06 503058 556674. 1926.21 1.16 0.130081 0.114832 25186 138497 -1 2215 22 1691 2556 152573 36676 3.7751 3.7751 -148.694 -3.7751 0 0 706193. 2443.58 0.32 0.08 0.13 -1 -1 0.32 0.0290369 0.0256134 155 21 96 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_027.v common 6.15 vpr 65.12 MiB 0.02 7076 -1 -1 1 0.04 -1 -1 33980 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 32 32 337 253 1 198 100 17 17 289 -1 unnamed_device 26.7 MiB 1.17 1070 14716 3923 9340 1453 65.1 MiB 0.13 0.00 2.87545 -103.34 -2.87545 2.87545 1.03 0.000513268 0.000469377 0.0355536 0.0323477 26 2877 42 6.87369e+06 503058 503264. 1741.40 1.61 0.130975 0.11525 24322 120374 -1 2464 25 1876 2979 260245 63575 3.45246 3.45246 -135.688 -3.45246 0 0 618332. 2139.56 0.27 0.10 0.12 -1 -1 0.27 0.028867 0.0253394 151 -1 124 32 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_028.v common 6.20 vpr 65.32 MiB 0.02 7268 -1 -1 1 0.04 -1 -1 34200 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66888 32 32 407 319 1 202 103 17 17 289 -1 unnamed_device 26.6 MiB 1.28 1138 17455 4899 10679 1877 65.3 MiB 0.16 0.00 3.42579 -122.881 -3.42579 3.42579 1.05 0.000644338 0.000589916 0.0477949 0.0435864 28 3088 27 6.87369e+06 544980 531479. 1839.03 1.42 0.141155 0.125193 24610 126494 -1 2682 24 2087 3605 309064 69660 4.2603 4.2603 -158.268 -4.2603 0 0 648988. 2245.63 0.28 0.11 0.12 -1 -1 0.28 0.0316546 0.0278473 156 54 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_029.v common 6.32 vpr 64.90 MiB 0.02 7176 -1 -1 1 0.04 -1 -1 33784 -1 -1 15 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 32 32 294 246 1 157 79 17 17 289 -1 unnamed_device 26.5 MiB 1.25 804 12585 4341 6355 1889 64.9 MiB 0.09 0.00 2.42892 -87.9121 -2.42892 2.42892 1.11 0.000444869 0.000405878 0.0348163 0.0316976 34 2092 22 6.87369e+06 209608 618332. 2139.56 1.65 0.140982 0.12334 25762 151098 -1 1807 24 1279 2137 156356 36625 2.85696 2.85696 -113.166 -2.85696 0 0 787024. 2723.27 0.34 0.07 0.15 -1 -1 0.34 0.0251858 0.0222557 104 31 54 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_030.v common 5.52 vpr 64.76 MiB 0.02 7028 -1 -1 1 0.03 -1 -1 33844 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 30 32 296 244 1 160 80 17 17 289 -1 unnamed_device 26.3 MiB 1.25 712 9368 2717 5200 1451 64.8 MiB 0.07 0.00 3.0418 -101.17 -3.0418 3.0418 1.01 0.00041677 0.000381342 0.0256231 0.0234955 32 2132 34 6.87369e+06 251529 586450. 2029.24 1.09 0.103492 0.0915983 25474 144626 -1 1578 21 1328 1942 152701 36993 3.04926 3.04926 -118.575 -3.04926 0 0 744469. 2576.02 0.32 0.07 0.12 -1 -1 0.32 0.0237772 0.0211244 109 29 60 30 30 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_031.v common 5.92 vpr 64.43 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 33852 -1 -1 19 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65980 28 32 278 232 1 150 79 17 17 289 -1 unnamed_device 26.1 MiB 1.23 828 13430 4279 7534 1617 64.4 MiB 0.10 0.00 2.72995 -88.9979 -2.72995 2.72995 0.97 0.000382601 0.000348576 0.0345234 0.0315338 34 2011 23 6.87369e+06 265503 618332. 2139.56 1.58 0.142194 0.125392 25762 151098 -1 1777 23 1337 2259 176340 41257 3.07126 3.07126 -113.931 -3.07126 0 0 787024. 2723.27 0.32 0.07 0.13 -1 -1 0.32 0.0222292 0.0197159 104 27 56 28 28 28 -fixed_k6_frac_ripple_N8_22nm.xml mult_032.v common 6.90 vpr 64.61 MiB 0.02 7164 -1 -1 1 0.03 -1 -1 33900 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.1 MiB 1.56 885 15216 6085 7141 1990 64.6 MiB 0.12 0.00 2.77395 -103.31 -2.77395 2.77395 1.07 0.000428276 0.00038836 0.0424103 0.0385743 34 2243 21 6.87369e+06 223581 618332. 2139.56 1.92 0.156924 0.137354 25762 151098 -1 1944 21 1553 2545 195266 45012 3.22956 3.22956 -131.785 -3.22956 0 0 787024. 2723.27 0.36 0.08 0.14 -1 -1 0.36 0.0242259 0.0216303 114 -1 96 32 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_033.v common 5.43 vpr 64.95 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 33868 -1 -1 32 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 31 32 303 249 1 163 95 17 17 289 -1 unnamed_device 26.4 MiB 1.05 869 16295 4659 9171 2465 65.0 MiB 0.13 0.00 2.81125 -98.524 -2.81125 2.81125 1.05 0.000471334 0.000427898 0.0387796 0.0351916 30 2036 23 6.87369e+06 447163 556674. 1926.21 1.05 0.102815 0.0905714 25186 138497 -1 1700 17 964 1677 90551 22799 2.96796 2.96796 -116.789 -2.96796 0 0 706193. 2443.58 0.31 0.05 0.13 -1 -1 0.31 0.019091 0.0168899 119 26 61 31 31 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_034.v common 8.02 vpr 64.80 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 33780 -1 -1 32 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 29 32 312 264 1 155 93 17 17 289 -1 unnamed_device 26.3 MiB 3.68 809 13743 3545 7817 2381 64.8 MiB 0.11 0.00 2.30671 -78.6912 -2.30671 2.30671 1.05 0.000467359 0.000424121 0.0331928 0.0299774 28 1855 18 6.87369e+06 447163 531479. 1839.03 1.03 0.0959928 0.0842108 24610 126494 -1 1611 22 1243 2158 145956 34909 2.12182 2.12182 -90.2292 -2.12182 0 0 648988. 2245.63 0.29 0.07 0.12 -1 -1 0.29 0.0232751 0.0204456 113 55 29 29 57 29 -fixed_k6_frac_ripple_N8_22nm.xml mult_035.v common 13.58 vpr 65.84 MiB 0.03 7476 -1 -1 1 0.04 -1 -1 33984 -1 -1 44 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67416 32 32 423 310 1 231 108 17 17 289 -1 unnamed_device 27.2 MiB 4.91 1315 21696 6540 12127 3029 65.8 MiB 0.22 0.00 3.55109 -125.266 -3.55109 3.55109 1.06 0.000867883 0.000800851 0.0649243 0.0592826 34 3529 27 6.87369e+06 614849 618332. 2139.56 5.08 0.33213 0.2942 25762 151098 -1 2721 23 2389 4111 304769 71144 3.9097 3.9097 -149.014 -3.9097 0 0 787024. 2723.27 0.35 0.12 0.14 -1 -1 0.35 0.0366633 0.0327315 184 26 128 32 27 27 -fixed_k6_frac_ripple_N8_22nm.xml mult_036.v common 8.26 vpr 65.79 MiB 0.02 7124 -1 -1 1 0.04 -1 -1 34184 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67364 32 32 403 317 1 200 103 17 17 289 -1 unnamed_device 27.0 MiB 3.46 918 18901 5881 10046 2974 65.8 MiB 0.15 0.00 2.91945 -102.635 -2.91945 2.91945 0.96 0.000551065 0.000503667 0.0485596 0.0443787 28 2836 33 6.87369e+06 544980 531479. 1839.03 1.66 0.150508 0.133778 24610 126494 -1 2164 24 2014 3075 246402 56498 3.15156 3.15156 -128.277 -3.15156 0 0 648988. 2245.63 0.27 0.09 0.10 -1 -1 0.27 0.0310254 0.0275758 154 62 62 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_037.v common 11.27 vpr 65.24 MiB 0.02 7072 -1 -1 1 0.04 -1 -1 34228 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 31 32 353 302 1 160 94 17 17 289 -1 unnamed_device 26.5 MiB 4.54 677 13939 4058 6341 3540 65.2 MiB 0.10 0.00 2.71895 -90.254 -2.71895 2.71895 1.07 0.000520263 0.000471164 0.0355174 0.0322588 36 2015 29 6.87369e+06 433189 648988. 2245.63 3.26 0.168619 0.147923 26050 158493 -1 1549 35 1572 2532 176772 44017 2.91296 2.91296 -110.326 -2.91296 0 0 828058. 2865.25 0.35 0.09 0.15 -1 -1 0.35 0.0360721 0.0312503 116 77 0 0 89 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_038.v common 7.91 vpr 65.36 MiB 0.02 7348 -1 -1 1 0.03 -1 -1 34112 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66928 31 32 391 309 1 195 85 17 17 289 -1 unnamed_device 26.7 MiB 2.56 1087 14035 4790 7047 2198 65.4 MiB 0.13 0.00 2.78315 -101.221 -2.78315 2.78315 1.05 0.00059705 0.000544021 0.0459517 0.0417637 34 2665 20 6.87369e+06 307425 618332. 2139.56 1.88 0.192272 0.169444 25762 151098 -1 2210 20 1849 2995 212584 49219 3.23086 3.23086 -123.935 -3.23086 0 0 787024. 2723.27 0.36 0.08 0.14 -1 -1 0.36 0.0280023 0.0248993 141 59 60 30 62 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_039.v common 12.33 vpr 65.60 MiB 0.03 7516 -1 -1 1 0.04 -1 -1 34320 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67172 31 32 455 371 1 198 85 17 17 289 -1 unnamed_device 26.8 MiB 6.54 1028 16081 5039 8732 2310 65.6 MiB 0.15 0.00 3.93354 -120.546 -3.93354 3.93354 1.07 0.00059623 0.000542951 0.0569337 0.0517012 34 2740 21 6.87369e+06 307425 618332. 2139.56 2.26 0.202322 0.17809 25762 151098 -1 2163 20 1692 2879 217887 50565 3.97435 3.97435 -143.798 -3.97435 0 0 787024. 2723.27 0.34 0.09 0.15 -1 -1 0.34 0.0298266 0.0264883 145 111 0 0 124 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_040.v common 7.94 vpr 65.58 MiB 0.03 7552 -1 -1 1 0.04 -1 -1 33888 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67152 31 32 413 333 1 195 85 17 17 289 -1 unnamed_device 26.9 MiB 2.48 924 16639 6047 8343 2249 65.6 MiB 0.15 0.00 3.73124 -110.708 -3.73124 3.73124 1.06 0.000559864 0.000507298 0.0553507 0.0502061 34 2780 23 6.87369e+06 307425 618332. 2139.56 1.94 0.191499 0.168034 25762 151098 -1 2147 23 1785 2863 230314 54518 4.13536 4.13536 -140.771 -4.13536 0 0 787024. 2723.27 0.34 0.09 0.15 -1 -1 0.34 0.0304595 0.0269009 141 86 31 31 89 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_041.v common 8.52 vpr 65.46 MiB 0.02 7296 -1 -1 1 0.04 -1 -1 33764 -1 -1 36 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67028 31 32 391 309 1 195 99 17 17 289 -1 unnamed_device 26.8 MiB 3.15 1072 16971 5085 10146 1740 65.5 MiB 0.15 0.00 2.86625 -102.62 -2.86625 2.86625 1.05 0.000719819 0.000647874 0.0490789 0.0443491 34 2590 25 6.87369e+06 503058 618332. 2139.56 1.89 0.207813 0.18368 25762 151098 -1 2192 25 1999 3444 231874 55867 2.89296 2.89296 -118.7 -2.89296 0 0 787024. 2723.27 0.35 0.10 0.14 -1 -1 0.35 0.036664 0.0324321 148 58 60 31 62 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_042.v common 6.44 vpr 65.68 MiB 0.02 7188 -1 -1 1 0.04 -1 -1 34512 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67256 32 32 407 319 1 202 102 17 17 289 -1 unnamed_device 27.0 MiB 2.10 1119 16286 4870 10211 1205 65.7 MiB 0.14 0.00 3.43679 -123.815 -3.43679 3.43679 0.95 0.000637247 0.000583948 0.044434 0.0404875 28 2869 21 6.87369e+06 531006 531479. 1839.03 1.22 0.130673 0.116594 24610 126494 -1 2650 21 2041 3414 305093 67719 4.1683 4.1683 -160.236 -4.1683 0 0 648988. 2245.63 0.27 0.10 0.10 -1 -1 0.27 0.0297419 0.0265165 156 42 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_043.v common 12.70 vpr 65.53 MiB 0.03 7632 -1 -1 1 0.04 -1 -1 33996 -1 -1 42 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67104 32 32 496 380 1 234 106 17 17 289 -1 unnamed_device 27.1 MiB 4.47 1059 16106 4216 8768 3122 65.5 MiB 0.16 0.00 3.42399 -117.379 -3.42399 3.42399 1.04 0.000695462 0.000629099 0.0489989 0.0444332 34 3381 43 6.87369e+06 586901 618332. 2139.56 4.68 0.284082 0.247463 25762 151098 -1 2325 21 2140 3576 230251 56910 3.9847 3.9847 -150.371 -3.9847 0 0 787024. 2723.27 0.33 0.10 0.15 -1 -1 0.33 0.034439 0.0305463 186 91 62 32 96 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_044.v common 7.13 vpr 64.81 MiB 0.02 7064 -1 -1 1 0.04 -1 -1 33720 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 31 32 305 250 1 164 80 17 17 289 -1 unnamed_device 26.4 MiB 2.60 821 12292 4621 5787 1884 64.8 MiB 0.10 0.00 3.0136 -106.719 -3.0136 3.0136 1.08 0.000468816 0.000426027 0.0353882 0.0321955 32 2394 27 6.87369e+06 237555 586450. 2029.24 1.10 0.108915 0.0962153 25474 144626 -1 1813 22 1487 2330 171639 39884 3.11231 3.11231 -126.53 -3.11231 0 0 744469. 2576.02 0.33 0.08 0.14 -1 -1 0.33 0.0260127 0.0230953 112 24 62 31 31 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_045.v common 8.75 vpr 65.64 MiB 0.03 7280 -1 -1 1 0.04 -1 -1 33768 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67220 31 32 395 311 1 198 100 17 17 289 -1 unnamed_device 26.9 MiB 3.53 1111 16804 4758 10546 1500 65.6 MiB 0.16 0.00 3.52909 -121.169 -3.52909 3.52909 1.04 0.000668625 0.000617873 0.0457568 0.0413739 28 2952 38 6.87369e+06 517032 531479. 1839.03 1.77 0.14583 0.128343 24610 126494 -1 2559 24 2143 3464 294626 67085 3.991 3.991 -149.361 -3.991 0 0 648988. 2245.63 0.27 0.11 0.12 -1 -1 0.27 0.0306632 0.0269433 152 59 62 31 62 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_046.v common 7.72 vpr 65.43 MiB 0.03 7452 -1 -1 1 0.04 -1 -1 34092 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66996 32 32 397 313 1 198 99 17 17 289 -1 unnamed_device 26.7 MiB 2.56 1115 14007 3900 9140 967 65.4 MiB 0.14 0.00 2.75195 -102.728 -2.75195 2.75195 1.10 0.000760882 0.000697678 0.0428157 0.0388817 28 2999 29 6.87369e+06 489084 531479. 1839.03 1.56 0.143172 0.127194 24610 126494 -1 2692 21 1816 3233 274101 61259 3.33286 3.33286 -133.608 -3.33286 0 0 648988. 2245.63 0.29 0.09 0.12 -1 -1 0.29 0.0280665 0.0247783 150 54 62 32 62 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_047.v common 7.96 vpr 65.52 MiB 0.02 7172 -1 -1 1 0.04 -1 -1 33440 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67092 32 32 345 257 1 202 85 17 17 289 -1 unnamed_device 26.9 MiB 2.07 1010 12175 3600 7903 672 65.5 MiB 0.13 0.00 3.32249 -118.267 -3.32249 3.32249 1.09 0.000523779 0.000474325 0.0391688 0.0357003 34 2979 24 6.87369e+06 293451 618332. 2139.56 2.35 0.169991 0.149198 25762 151098 -1 2516 21 2125 3708 276128 67013 4.057 4.057 -156.106 -4.057 0 0 787024. 2723.27 0.34 0.09 0.15 -1 -1 0.34 0.026064 0.0230464 147 -1 128 32 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_048.v common 9.75 vpr 65.57 MiB 0.02 7476 -1 -1 1 0.04 -1 -1 34140 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67148 32 32 424 343 1 195 100 17 17 289 -1 unnamed_device 26.9 MiB 4.59 986 18892 5672 10706 2514 65.6 MiB 0.16 0.00 2.84425 -101.991 -2.84425 2.84425 1.00 0.000617131 0.000566588 0.0536377 0.0488169 34 2645 22 6.87369e+06 503058 618332. 2139.56 1.80 0.203588 0.180216 25762 151098 -1 2233 20 1733 2778 207770 49313 3.13586 3.13586 -125.794 -3.13586 0 0 787024. 2723.27 0.33 0.08 0.13 -1 -1 0.33 0.0295158 0.0262378 148 81 25 25 96 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_049.v common 10.87 vpr 65.50 MiB 0.02 7172 -1 -1 1 0.04 -1 -1 33764 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67068 32 32 395 311 1 198 103 17 17 289 -1 unnamed_device 26.9 MiB 4.80 959 9984 2079 6911 994 65.5 MiB 0.11 0.00 2.85525 -99.3334 -2.85525 2.85525 1.10 0.000776356 0.000710538 0.0328714 0.0300324 26 3128 41 6.87369e+06 544980 503264. 1741.40 2.53 0.159953 0.142168 24322 120374 -1 2580 26 1841 3329 395591 111362 3.31886 3.31886 -133.756 -3.31886 0 0 618332. 2139.56 0.29 0.16 0.11 -1 -1 0.29 0.0428766 0.0382251 152 58 64 32 60 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_050.v common 8.94 vpr 65.60 MiB 0.02 7144 -1 -1 1 0.04 -1 -1 33748 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67176 32 32 405 318 1 201 104 17 17 289 -1 unnamed_device 26.9 MiB 4.03 1140 20112 6106 11491 2515 65.6 MiB 0.19 0.00 2.83325 -103.321 -2.83325 2.83325 1.12 0.000557256 0.000505888 0.0563857 0.0510087 32 3028 25 6.87369e+06 558954 586450. 2029.24 1.22 0.143976 0.126564 25474 144626 -1 2506 22 1967 3327 299573 65139 2.95396 2.95396 -125.237 -2.95396 0 0 744469. 2576.02 0.34 0.11 0.14 -1 -1 0.34 0.0310341 0.027267 156 61 63 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_051.v common 7.11 vpr 65.66 MiB 0.02 7228 -1 -1 1 0.04 -1 -1 34064 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67232 32 32 376 288 1 202 103 17 17 289 -1 unnamed_device 26.9 MiB 1.15 1142 20588 6044 12140 2404 65.7 MiB 0.19 0.00 3.32249 -120.378 -3.32249 3.32249 1.09 0.000586606 0.000534483 0.0565255 0.0514133 34 2675 23 6.87369e+06 544980 618332. 2139.56 2.29 0.195706 0.172134 25762 151098 -1 2323 24 2220 3501 245698 58765 4.0287 4.0287 -154.958 -4.0287 0 0 787024. 2723.27 0.36 0.10 0.15 -1 -1 0.36 0.0315478 0.0276523 156 21 96 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_052.v common 9.05 vpr 65.52 MiB 0.02 7192 -1 -1 1 0.04 -1 -1 34292 -1 -1 41 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67092 32 32 407 319 1 202 105 17 17 289 -1 unnamed_device 26.8 MiB 3.83 1053 19124 5219 11243 2662 65.5 MiB 0.18 0.00 3.41479 -122.555 -3.41479 3.41479 1.11 0.00063773 0.000584313 0.0577483 0.0524243 28 2801 27 6.87369e+06 572927 531479. 1839.03 1.62 0.153197 0.135777 24610 126494 -1 2500 23 2210 3618 291994 65670 4.0317 4.0317 -157.783 -4.0317 0 0 648988. 2245.63 0.30 0.11 0.12 -1 -1 0.30 0.0322615 0.0284926 157 50 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_053.v common 11.18 vpr 65.62 MiB 0.03 7480 -1 -1 1 0.04 -1 -1 34208 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67200 31 32 449 367 1 195 100 17 17 289 -1 unnamed_device 26.8 MiB 5.43 1020 19124 5956 9970 3198 65.6 MiB 0.19 0.00 3.32679 -109.604 -3.32679 3.32679 1.11 0.000694677 0.000624756 0.0600476 0.0541833 28 3090 29 6.87369e+06 517032 531479. 1839.03 2.16 0.161594 0.142512 24610 126494 -1 2514 22 1882 3323 292840 70820 4.049 4.049 -144.786 -4.049 0 0 648988. 2245.63 0.28 0.11 0.12 -1 -1 0.28 0.0310346 0.0272012 150 110 0 0 122 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_054.v common 12.77 vpr 65.72 MiB 0.02 7480 -1 -1 1 0.04 -1 -1 34136 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67300 32 32 432 346 1 200 85 17 17 289 -1 unnamed_device 26.9 MiB 3.75 1062 15523 6293 6771 2459 65.7 MiB 0.17 0.00 3.38179 -118.928 -3.38179 3.38179 1.11 0.000658664 0.000593701 0.0603979 0.0548442 38 2652 21 6.87369e+06 293451 678818. 2348.85 5.27 0.340505 0.298724 26626 170182 -1 2131 22 1638 2962 196374 44061 3.5821 3.5821 -138.838 -3.5821 0 0 902133. 3121.57 0.41 0.10 0.16 -1 -1 0.41 0.0339006 0.0300543 145 86 32 32 94 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_055.v common 5.91 vpr 65.25 MiB 0.02 7076 -1 -1 1 0.03 -1 -1 34124 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 32 32 312 255 1 167 96 17 17 289 -1 unnamed_device 26.5 MiB 1.24 910 15207 4131 9370 1706 65.3 MiB 0.12 0.00 2.82225 -103.613 -2.82225 2.82225 1.07 0.000452099 0.000412322 0.0372266 0.0339483 32 2470 24 6.87369e+06 447163 586450. 2029.24 1.18 0.107536 0.0949512 25474 144626 -1 2058 22 1544 2451 213954 48511 2.95396 2.95396 -124.273 -2.95396 0 0 744469. 2576.02 0.33 0.08 0.14 -1 -1 0.33 0.0246203 0.021793 121 20 63 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_056.v common 8.89 vpr 65.34 MiB 0.02 7104 -1 -1 1 0.04 -1 -1 33732 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66912 32 32 370 314 1 166 80 17 17 289 -1 unnamed_device 26.6 MiB 4.30 913 14700 5558 7061 2081 65.3 MiB 0.13 0.00 2.9366 -106.699 -2.9366 2.9366 1.07 0.000507185 0.000461504 0.0487568 0.0442692 30 2402 23 6.87369e+06 223581 556674. 1926.21 1.12 0.125624 0.110963 25186 138497 -1 1873 20 1213 1900 126519 28825 2.82396 2.82396 -121.994 -2.82396 0 0 706193. 2443.58 0.32 0.06 0.13 -1 -1 0.32 0.0257541 0.0228443 112 91 0 0 94 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_057.v common 10.11 vpr 65.77 MiB 0.03 7460 -1 -1 1 0.04 -1 -1 34176 -1 -1 44 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67348 32 32 469 351 1 236 108 17 17 289 -1 unnamed_device 27.4 MiB 2.67 1287 19383 5417 10764 3202 65.8 MiB 0.19 0.00 3.99454 -135.36 -3.99454 3.99454 1.07 0.000637123 0.000576912 0.0567083 0.0511123 34 3892 25 6.87369e+06 614849 618332. 2139.56 3.76 0.244585 0.216463 25762 151098 -1 2842 24 2539 4430 391447 85714 4.79785 4.79785 -170.04 -4.79785 0 0 787024. 2723.27 0.35 0.14 0.14 -1 -1 0.35 0.0428431 0.0383542 189 53 96 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_058.v common 9.17 vpr 65.44 MiB 0.03 7064 -1 -1 1 0.04 -1 -1 34088 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67012 32 32 368 284 1 198 99 17 17 289 -1 unnamed_device 26.8 MiB 3.77 988 18795 5684 10177 2934 65.4 MiB 0.17 0.00 2.87545 -103.568 -2.87545 2.87545 1.12 0.000612168 0.000558423 0.0515807 0.046763 34 2373 22 6.87369e+06 489084 618332. 2139.56 1.77 0.184395 0.161652 25762 151098 -1 1923 20 1552 2286 147733 35707 2.88986 2.88986 -121.495 -2.88986 0 0 787024. 2723.27 0.34 0.07 0.15 -1 -1 0.34 0.0274636 0.0244144 150 31 92 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_059.v common 5.54 vpr 65.16 MiB 0.02 6976 -1 -1 1 0.03 -1 -1 33476 -1 -1 31 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66724 30 32 296 244 1 160 93 17 17 289 -1 unnamed_device 26.4 MiB 0.95 856 16473 5224 8613 2636 65.2 MiB 0.14 0.00 2.84425 -97.6974 -2.84425 2.84425 1.08 0.000542045 0.000487424 0.0413674 0.0373893 28 1970 21 6.87369e+06 433189 531479. 1839.03 1.15 0.113338 0.100173 24610 126494 -1 1838 22 1313 1995 164486 37229 2.94596 2.94596 -119.042 -2.94596 0 0 648988. 2245.63 0.30 0.07 0.13 -1 -1 0.30 0.0224267 0.0196344 116 29 60 30 30 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_060.v common 12.51 vpr 65.83 MiB 0.02 7444 -1 -1 1 0.04 -1 -1 34388 -1 -1 47 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67412 32 32 531 413 1 236 111 17 17 289 -1 unnamed_device 27.4 MiB 6.97 1066 12879 3218 8459 1202 65.8 MiB 0.14 0.00 3.99154 -133.476 -3.99154 3.99154 0.99 0.000998171 0.000926683 0.0450276 0.0412162 30 3262 28 6.87369e+06 656770 556674. 1926.21 2.25 0.163233 0.145317 25186 138497 -1 2231 23 2177 3599 204693 51051 4.60555 4.60555 -161.794 -4.60555 0 0 706193. 2443.58 0.29 0.10 0.12 -1 -1 0.29 0.0396492 0.0352637 190 109 32 32 128 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_061.v common 9.06 vpr 65.61 MiB 0.02 7344 -1 -1 1 0.04 -1 -1 34088 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67184 32 32 376 288 1 202 104 17 17 289 -1 unnamed_device 26.9 MiB 4.18 1006 19136 5460 10723 2953 65.6 MiB 0.17 0.00 3.43499 -121.273 -3.43499 3.43499 1.12 0.000625582 0.00057788 0.0536141 0.0489885 32 2720 27 6.87369e+06 558954 586450. 2029.24 1.27 0.14842 0.131948 25474 144626 -1 2085 20 1829 2795 211164 47973 3.7341 3.7341 -146.877 -3.7341 0 0 744469. 2576.02 0.34 0.09 0.15 -1 -1 0.34 0.0284195 0.0253088 156 31 96 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_062.v common 5.47 vpr 64.65 MiB 0.02 6880 -1 -1 1 0.03 -1 -1 33676 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 32 32 283 225 1 168 97 17 17 289 -1 unnamed_device 26.1 MiB 0.87 798 9865 2406 6573 886 64.6 MiB 0.09 0.00 2.85525 -100.353 -2.85525 2.85525 1.05 0.00054053 0.000491884 0.0250041 0.0228503 28 2256 23 6.87369e+06 461137 531479. 1839.03 1.24 0.0966819 0.0848947 24610 126494 -1 2068 21 1515 2550 209536 48352 2.98696 2.98696 -125.705 -2.98696 0 0 648988. 2245.63 0.31 0.08 0.13 -1 -1 0.31 0.0224468 0.0196693 123 -1 96 32 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_063.v common 10.71 vpr 65.72 MiB 0.02 7484 -1 -1 1 0.04 -1 -1 34272 -1 -1 45 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67296 32 32 438 320 1 236 109 17 17 289 -1 unnamed_device 27.1 MiB 3.32 1173 21429 5899 12551 2979 65.7 MiB 0.22 0.00 3.97434 -135.836 -3.97434 3.97434 1.14 0.00078455 0.000717015 0.0678018 0.061828 28 3784 42 6.87369e+06 628823 531479. 1839.03 3.53 0.203565 0.180769 24610 126494 -1 3038 25 2772 4594 536328 131415 4.57255 4.57255 -170.535 -4.57255 0 0 648988. 2245.63 0.32 0.19 0.12 -1 -1 0.32 0.0421752 0.0373947 189 26 128 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_064.v common 6.39 vpr 64.65 MiB 0.02 7032 -1 -1 1 0.04 -1 -1 34112 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.2 MiB 1.27 777 10400 3077 6518 805 64.6 MiB 0.10 0.00 3.0246 -107.986 -3.0246 3.0246 1.06 0.000444304 0.000405015 0.0300447 0.0273921 34 2273 21 6.87369e+06 223581 618332. 2139.56 1.71 0.136983 0.119541 25762 151098 -1 1850 22 1612 2636 192363 44799 3.09326 3.09326 -126.231 -3.09326 0 0 787024. 2723.27 0.33 0.08 0.15 -1 -1 0.33 0.0237087 0.0207866 114 -1 96 32 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_065.v common 7.42 vpr 64.94 MiB 0.02 7120 -1 -1 1 0.03 -1 -1 33904 -1 -1 33 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 30 32 296 244 1 162 95 17 17 289 -1 unnamed_device 26.4 MiB 2.72 847 14999 4547 8104 2348 64.9 MiB 0.12 0.00 2.75195 -95.6698 -2.75195 2.75195 0.97 0.00044236 0.000403491 0.0343495 0.0312587 26 2352 36 6.87369e+06 461137 503264. 1741.40 1.61 0.123283 0.10934 24322 120374 -1 2113 21 1513 2558 243200 53611 3.10291 3.10291 -123.155 -3.10291 0 0 618332. 2139.56 0.26 0.08 0.11 -1 -1 0.26 0.0236569 0.0211595 118 29 60 30 30 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_066.v common 9.03 vpr 65.54 MiB 0.03 7252 -1 -1 1 0.04 -1 -1 33864 -1 -1 35 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67112 29 32 393 319 1 186 96 17 17 289 -1 unnamed_device 26.9 MiB 4.41 959 10170 2412 6830 928 65.5 MiB 0.11 0.00 2.81125 -89.2201 -2.81125 2.81125 1.10 0.00067392 0.00061361 0.0318078 0.0288114 30 2444 20 6.87369e+06 489084 556674. 1926.21 1.14 0.113602 0.0998705 25186 138497 -1 1933 21 1113 2112 122274 29357 2.88526 2.88526 -109.522 -2.88526 0 0 706193. 2443.58 0.31 0.07 0.13 -1 -1 0.31 0.0286884 0.0252856 141 81 29 29 85 29 -fixed_k6_frac_ripple_N8_22nm.xml mult_067.v common 8.52 vpr 65.61 MiB 0.03 7140 -1 -1 1 0.04 -1 -1 34012 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67184 32 32 407 319 1 202 85 17 17 289 -1 unnamed_device 27.0 MiB 2.87 899 11617 2607 8397 613 65.6 MiB 0.12 0.00 3.36169 -116.932 -3.36169 3.36169 1.06 0.0006491 0.00059011 0.0431821 0.039119 32 3358 40 6.87369e+06 293451 586450. 2029.24 2.13 0.188279 0.165599 25474 144626 -1 2119 25 2328 3558 266454 64533 4.046 4.046 -154.808 -4.046 0 0 744469. 2576.02 0.35 0.11 0.14 -1 -1 0.35 0.0349924 0.0308822 147 53 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_068.v common 10.92 vpr 65.68 MiB 0.02 7404 -1 -1 1 0.04 -1 -1 34360 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67260 32 32 407 319 1 202 101 17 17 289 -1 unnamed_device 26.9 MiB 4.99 906 18666 6095 9245 3326 65.7 MiB 0.16 0.00 3.40379 -116.982 -3.40379 3.40379 1.05 0.000589225 0.000533522 0.0507364 0.0460428 34 2994 36 6.87369e+06 517032 618332. 2139.56 2.41 0.173859 0.152854 25762 151098 -1 2255 23 2157 3644 275369 70218 4.2383 4.2383 -154.318 -4.2383 0 0 787024. 2723.27 0.33 0.11 0.15 -1 -1 0.33 0.0310609 0.0273149 155 55 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_069.v common 8.48 vpr 65.30 MiB 0.02 6996 -1 -1 1 0.03 -1 -1 33652 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66872 32 32 345 287 1 168 97 17 17 289 -1 unnamed_device 26.5 MiB 3.83 820 18079 6173 9267 2639 65.3 MiB 0.15 0.00 2.88825 -103.968 -2.88825 2.88825 1.07 0.000544961 0.000499706 0.046623 0.0420934 30 2319 30 6.87369e+06 461137 556674. 1926.21 1.20 0.130841 0.115457 25186 138497 -1 1750 22 1261 2024 118722 29120 2.94596 2.94596 -122.689 -2.94596 0 0 706193. 2443.58 0.32 0.07 0.13 -1 -1 0.32 0.0269567 0.0237293 123 55 32 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_070.v common 10.22 vpr 65.24 MiB 0.02 7268 -1 -1 1 0.04 -1 -1 34116 -1 -1 18 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 31 32 353 302 1 160 81 17 17 289 -1 unnamed_device 26.5 MiB 5.05 919 15131 5160 8055 1916 65.2 MiB 0.13 0.00 2.9476 -103.694 -2.9476 2.9476 1.06 0.000483973 0.000437075 0.0468542 0.0426096 34 2179 23 6.87369e+06 251529 618332. 2139.56 1.74 0.165983 0.144991 25762 151098 -1 1851 19 1212 2182 156383 37130 3.03831 3.03831 -119.603 -3.03831 0 0 787024. 2723.27 0.34 0.06 0.15 -1 -1 0.34 0.0218183 0.0192474 108 82 0 0 89 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_071.v common 8.45 vpr 65.18 MiB 0.02 7416 -1 -1 1 0.04 -1 -1 34216 -1 -1 34 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 30 32 374 297 1 189 96 17 17 289 -1 unnamed_device 26.5 MiB 3.95 930 11484 3144 7338 1002 65.2 MiB 0.11 0.00 2.83325 -94.1383 -2.83325 2.83325 1.04 0.000661943 0.000599547 0.0319371 0.0290004 28 2375 24 6.87369e+06 475111 531479. 1839.03 1.15 0.112415 0.0986479 24610 126494 -1 2059 20 1425 2262 160645 39236 2.94596 2.94596 -117.141 -2.94596 0 0 648988. 2245.63 0.29 0.07 0.12 -1 -1 0.29 0.0261214 0.0231176 143 52 60 30 57 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_072.v common 6.72 vpr 65.07 MiB 0.02 7072 -1 -1 1 0.04 -1 -1 34080 -1 -1 35 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 28 32 332 260 1 180 95 17 17 289 -1 unnamed_device 26.5 MiB 2.07 922 15431 4411 8454 2566 65.1 MiB 0.13 0.00 3.34879 -104.314 -3.34879 3.34879 1.02 0.00050112 0.000457357 0.0387368 0.0352089 32 2454 35 6.87369e+06 489084 586450. 2029.24 1.27 0.120702 0.106079 25474 144626 -1 1931 24 1626 2636 222369 49563 3.9327 3.9327 -130.56 -3.9327 0 0 744469. 2576.02 0.32 0.08 0.14 -1 -1 0.32 0.0264079 0.0231945 139 20 84 28 28 28 -fixed_k6_frac_ripple_N8_22nm.xml mult_073.v common 9.94 vpr 65.10 MiB 0.02 7180 -1 -1 1 0.04 -1 -1 34188 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 30 32 325 273 1 161 80 17 17 289 -1 unnamed_device 26.7 MiB 3.26 831 11260 4335 5899 1026 65.1 MiB 0.10 0.00 2.9806 -103.125 -2.9806 2.9806 1.05 0.000454182 0.000412504 0.0334557 0.030461 30 2130 21 6.87369e+06 251529 556674. 1926.21 3.36 0.1847 0.160307 25186 138497 -1 1732 19 1098 1813 110828 26010 2.97426 2.97426 -118.336 -2.97426 0 0 706193. 2443.58 0.31 0.06 0.13 -1 -1 0.31 0.0218678 0.0193296 110 58 30 30 60 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_074.v common 9.32 vpr 65.29 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 33800 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66856 32 32 361 308 1 163 81 17 17 289 -1 unnamed_device 26.5 MiB 4.22 993 14256 4532 8202 1522 65.3 MiB 0.12 0.00 2.8626 -100.833 -2.8626 2.8626 1.05 0.000492846 0.000446591 0.0448055 0.040712 34 2314 22 6.87369e+06 237555 618332. 2139.56 1.70 0.163587 0.143216 25762 151098 -1 2008 20 1225 2014 153840 35478 2.96326 2.96326 -120.6 -2.96326 0 0 787024. 2723.27 0.33 0.07 0.15 -1 -1 0.33 0.0248269 0.0217833 110 88 0 0 91 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_075.v common 5.82 vpr 65.16 MiB 0.02 7084 -1 -1 1 0.04 -1 -1 33856 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 31 32 335 251 1 197 100 17 17 289 -1 unnamed_device 26.7 MiB 1.12 1122 12860 3357 8527 976 65.2 MiB 0.13 0.00 3.31149 -115.679 -3.31149 3.31149 1.06 0.00060902 0.000554512 0.0335035 0.0304181 28 2729 22 6.87369e+06 517032 531479. 1839.03 1.30 0.111831 0.0986203 24610 126494 -1 2516 19 1748 2774 204996 48441 3.9034 3.9034 -151.718 -3.9034 0 0 648988. 2245.63 0.29 0.09 0.12 -1 -1 0.29 0.0259965 0.0229638 151 -1 124 31 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_076.v common 13.22 vpr 65.59 MiB 0.02 7140 -1 -1 1 0.04 -1 -1 33944 -1 -1 38 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67160 32 32 407 319 1 202 102 17 17 289 -1 unnamed_device 26.9 MiB 5.22 906 17476 5430 9168 2878 65.6 MiB 0.16 0.00 3.41479 -117.207 -3.41479 3.41479 1.03 0.00057918 0.000525114 0.0473216 0.0429364 36 2753 21 6.87369e+06 531006 648988. 2245.63 4.50 0.258978 0.226449 26050 158493 -1 2083 23 2074 3494 213342 54187 3.9287 3.9287 -144.611 -3.9287 0 0 828058. 2865.25 0.35 0.09 0.15 -1 -1 0.35 0.0316734 0.0279152 156 57 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_077.v common 10.44 vpr 65.54 MiB 0.03 7188 -1 -1 1 0.04 -1 -1 33928 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67112 32 32 407 319 1 202 101 17 17 289 -1 unnamed_device 26.9 MiB 4.84 1142 14671 4032 9052 1587 65.5 MiB 0.15 0.00 3.40379 -123.122 -3.40379 3.40379 1.09 0.000595999 0.000545044 0.0436351 0.0397286 28 3012 25 6.87369e+06 517032 531479. 1839.03 2.08 0.135226 0.119669 24610 126494 -1 2554 23 2207 3685 316337 71453 3.8734 3.8734 -153.779 -3.8734 0 0 648988. 2245.63 0.29 0.11 0.12 -1 -1 0.29 0.0319934 0.0283346 155 62 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_078.v common 9.57 vpr 65.46 MiB 0.02 7304 -1 -1 1 0.04 -1 -1 34092 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67032 32 32 399 315 1 198 103 17 17 289 -1 unnamed_device 26.8 MiB 3.97 1153 19865 5993 11336 2536 65.5 MiB 0.18 0.00 3.33779 -116.467 -3.33779 3.33779 1.10 0.000568971 0.000513948 0.0533123 0.0482024 28 2940 25 6.87369e+06 544980 531479. 1839.03 2.05 0.145023 0.12829 24610 126494 -1 2531 22 1896 3361 278319 63932 4.1733 4.1733 -154.185 -4.1733 0 0 648988. 2245.63 0.28 0.10 0.12 -1 -1 0.28 0.0296826 0.0261407 152 62 60 30 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_079.v common 7.80 vpr 64.57 MiB 0.02 7120 -1 -1 1 0.04 -1 -1 33628 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66120 30 32 296 244 1 160 81 17 17 289 -1 unnamed_device 26.2 MiB 3.31 732 15131 5119 7935 2077 64.6 MiB 0.12 0.00 2.9806 -100.661 -2.9806 2.9806 1.07 0.000415141 0.00037698 0.0432724 0.0393251 32 2230 32 6.87369e+06 265503 586450. 2029.24 1.07 0.115437 0.101886 25474 144626 -1 1756 22 1349 2160 177577 42126 3.19661 3.19661 -120.849 -3.19661 0 0 744469. 2576.02 0.32 0.07 0.15 -1 -1 0.32 0.0230749 0.020239 110 29 60 30 30 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_080.v common 9.56 vpr 65.38 MiB 0.03 7460 -1 -1 1 0.04 -1 -1 33672 -1 -1 23 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66952 30 32 383 303 1 192 85 17 17 289 -1 unnamed_device 26.7 MiB 4.26 1002 14407 4631 7512 2264 65.4 MiB 0.13 0.00 3.36289 -115.283 -3.36289 3.36289 1.05 0.000587638 0.000541863 0.0469213 0.0426866 34 2422 22 6.87369e+06 321398 618332. 2139.56 1.86 0.183371 0.160925 25762 151098 -1 2011 23 1997 3095 240309 52911 3.8114 3.8114 -144.994 -3.8114 0 0 787024. 2723.27 0.32 0.09 0.14 -1 -1 0.32 0.0294908 0.0259217 140 58 60 30 60 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_081.v common 12.30 vpr 65.44 MiB 0.03 7336 -1 -1 1 0.04 -1 -1 33860 -1 -1 43 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67012 32 32 469 381 1 202 107 17 17 289 -1 unnamed_device 26.8 MiB 6.80 1147 19335 4886 12439 2010 65.4 MiB 0.19 0.00 3.55109 -125.705 -3.55109 3.55109 1.07 0.000762303 0.000704964 0.0565585 0.0514784 32 3189 50 6.87369e+06 600875 586450. 2029.24 1.92 0.177954 0.156976 25474 144626 -1 2584 22 2042 3392 315241 68603 4.2823 4.2823 -155.241 -4.2823 0 0 744469. 2576.02 0.32 0.11 0.14 -1 -1 0.32 0.0323437 0.0283309 158 106 0 0 128 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_082.v common 6.66 vpr 65.33 MiB 0.02 7568 -1 -1 1 0.04 -1 -1 33720 -1 -1 33 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66900 31 32 425 341 1 197 96 17 17 289 -1 unnamed_device 26.7 MiB 1.55 973 11046 2535 7785 726 65.3 MiB 0.11 0.00 3.40379 -115.856 -3.40379 3.40379 1.07 0.000660834 0.000610697 0.0364321 0.0331075 28 2769 47 6.87369e+06 461137 531479. 1839.03 1.68 0.170324 0.15137 24610 126494 -1 2371 22 2218 3713 278539 69368 4.113 4.113 -156.631 -4.113 0 0 648988. 2245.63 0.29 0.10 0.12 -1 -1 0.29 0.0310094 0.0273228 149 79 31 31 93 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_083.v common 7.91 vpr 65.34 MiB 0.03 7444 -1 -1 1 0.04 -1 -1 34192 -1 -1 32 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66912 30 32 404 328 1 188 94 17 17 289 -1 unnamed_device 26.7 MiB 2.94 860 17560 5576 8756 3228 65.3 MiB 0.16 0.00 2.82225 -92.1598 -2.82225 2.82225 1.07 0.000581245 0.000522156 0.0521881 0.0474027 30 2345 44 6.87369e+06 447163 556674. 1926.21 1.55 0.15845 0.139705 25186 138497 -1 1644 22 1360 2148 116582 29871 2.85796 2.85796 -109.455 -2.85796 0 0 706193. 2443.58 0.31 0.07 0.13 -1 -1 0.31 0.0281507 0.0247455 141 83 26 26 90 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_084.v common 10.93 vpr 65.32 MiB 0.03 7140 -1 -1 1 0.04 -1 -1 34232 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66884 32 32 407 319 1 202 85 17 17 289 -1 unnamed_device 26.6 MiB 5.49 1083 14965 4487 8867 1611 65.3 MiB 0.15 0.00 3.32249 -123.566 -3.32249 3.32249 1.09 0.000573007 0.000521303 0.0527767 0.0480349 34 3105 22 6.87369e+06 293451 618332. 2139.56 1.89 0.189398 0.165865 25762 151098 -1 2492 22 2239 3900 313092 71029 3.8957 3.8957 -154.506 -3.8957 0 0 787024. 2723.27 0.33 0.11 0.15 -1 -1 0.33 0.0318514 0.0281348 147 58 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_085.v common 7.62 vpr 65.46 MiB 0.02 7452 -1 -1 1 0.04 -1 -1 33924 -1 -1 36 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67032 29 32 387 316 1 181 97 17 17 289 -1 unnamed_device 26.8 MiB 2.96 933 18745 5615 10170 2960 65.5 MiB 0.17 0.00 2.83325 -92.5557 -2.83325 2.83325 1.05 0.000620057 0.000566358 0.0532254 0.0482756 32 2494 19 6.87369e+06 503058 586450. 2029.24 1.13 0.127805 0.112856 25474 144626 -1 2047 23 1811 3002 257725 59223 2.98856 2.98856 -112.021 -2.98856 0 0 744469. 2576.02 0.32 0.10 0.14 -1 -1 0.32 0.029344 0.025714 138 81 26 26 85 29 -fixed_k6_frac_ripple_N8_22nm.xml mult_086.v common 6.01 vpr 64.86 MiB 0.02 6816 -1 -1 1 0.04 -1 -1 33888 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.5 MiB 0.85 884 12980 3741 7931 1308 64.9 MiB 0.11 0.00 2.9586 -110.092 -2.9586 2.9586 1.06 0.000476404 0.000434098 0.0391629 0.0357387 34 2348 20 6.87369e+06 223581 618332. 2139.56 1.75 0.153299 0.135066 25762 151098 -1 1924 22 1412 2139 176170 38670 3.05731 3.05731 -129.315 -3.05731 0 0 787024. 2723.27 0.33 0.08 0.15 -1 -1 0.33 0.0248053 0.0220519 114 -1 96 32 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_087.v common 13.29 vpr 65.48 MiB 0.02 7212 -1 -1 1 0.04 -1 -1 33980 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67052 32 32 407 319 1 202 101 17 17 289 -1 unnamed_device 26.7 MiB 5.92 1193 12086 2795 8192 1099 65.5 MiB 0.11 0.00 3.41479 -123.887 -3.41479 3.41479 1.04 0.000657139 0.000598419 0.0335357 0.0304811 34 2878 22 6.87369e+06 517032 618332. 2139.56 3.95 0.215051 0.187961 25762 151098 -1 2367 22 2110 3284 253922 59342 3.78611 3.78611 -151.918 -3.78611 0 0 787024. 2723.27 0.35 0.10 0.14 -1 -1 0.35 0.0316988 0.0281139 155 62 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_088.v common 11.01 vpr 65.70 MiB 0.02 7240 -1 -1 1 0.04 -1 -1 34044 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67272 32 32 407 319 1 202 85 17 17 289 -1 unnamed_device 27.0 MiB 5.11 1115 15337 4738 8799 1800 65.7 MiB 0.15 0.00 3.36169 -124.074 -3.36169 3.36169 1.06 0.000592039 0.000538737 0.0529619 0.0482023 34 2869 32 6.87369e+06 293451 618332. 2139.56 2.36 0.233713 0.207534 25762 151098 -1 2390 21 1940 3121 247193 53582 3.9397 3.9397 -153.955 -3.9397 0 0 787024. 2723.27 0.37 0.10 0.15 -1 -1 0.37 0.0318572 0.0284095 147 62 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_089.v common 9.51 vpr 65.05 MiB 0.02 7160 -1 -1 1 0.03 -1 -1 34104 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 315 267 1 158 94 17 17 289 -1 unnamed_device 26.4 MiB 4.61 882 16921 5326 9162 2433 65.0 MiB 0.13 0.00 2.71895 -96.9431 -2.71895 2.71895 1.03 0.000515106 0.000471197 0.038805 0.0352393 34 1998 23 6.87369e+06 419215 618332. 2139.56 1.58 0.144494 0.126179 25762 151098 -1 1774 17 1131 1839 128217 31080 2.94296 2.94296 -114.339 -2.94296 0 0 787024. 2723.27 0.32 0.06 0.15 -1 -1 0.32 0.0205658 0.0182202 112 47 32 32 54 27 -fixed_k6_frac_ripple_N8_22nm.xml mult_090.v common 5.61 vpr 64.71 MiB 0.02 7036 -1 -1 1 0.03 -1 -1 33900 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 31 32 275 220 1 164 80 17 17 289 -1 unnamed_device 26.4 MiB 1.07 869 12636 4520 6006 2110 64.7 MiB 0.11 0.00 2.9916 -107.452 -2.9916 2.9916 1.11 0.0004658 0.000423541 0.0360767 0.0329309 32 2300 25 6.87369e+06 237555 586450. 2029.24 1.11 0.105484 0.0934793 25474 144626 -1 1918 21 1468 2332 166759 38817 3.13261 3.13261 -127.081 -3.13261 0 0 744469. 2576.02 0.32 0.07 0.13 -1 -1 0.32 0.0231275 0.0206038 112 -1 93 31 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_091.v common 8.65 vpr 65.50 MiB 0.02 7168 -1 -1 1 0.04 -1 -1 33884 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67076 32 32 381 303 1 194 99 17 17 289 -1 unnamed_device 26.7 MiB 3.82 987 19251 5929 10746 2576 65.5 MiB 0.17 0.00 3.41299 -116.064 -3.41299 3.41299 1.04 0.000543686 0.000490921 0.0508456 0.04608 32 2853 35 6.87369e+06 489084 586450. 2029.24 1.33 0.142112 0.124915 25474 144626 -1 2188 23 1819 2686 217956 49811 3.8484 3.8484 -140.812 -3.8484 0 0 744469. 2576.02 0.32 0.09 0.14 -1 -1 0.32 0.0285721 0.0251409 144 56 60 32 58 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_092.v common 6.53 vpr 65.55 MiB 0.03 7228 -1 -1 1 0.04 -1 -1 33988 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67128 32 32 406 330 1 191 97 17 17 289 -1 unnamed_device 26.9 MiB 1.61 922 10975 2473 6923 1579 65.6 MiB 0.09 0.00 3.40379 -111.965 -3.40379 3.40379 1.09 0.000649333 0.000594419 0.0334176 0.0305124 30 2739 37 6.87369e+06 461137 556674. 1926.21 1.52 0.139489 0.122915 25186 138497 -1 1913 19 1389 2294 120936 32119 3.62936 3.62936 -134.335 -3.62936 0 0 706193. 2443.58 0.30 0.06 0.13 -1 -1 0.30 0.0250486 0.0221559 142 81 28 28 88 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_093.v common 7.71 vpr 65.50 MiB 0.02 7464 -1 -1 1 0.04 -1 -1 34124 -1 -1 41 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67076 32 32 399 285 1 232 105 17 17 289 -1 unnamed_device 26.7 MiB 1.19 1232 12455 3138 8098 1219 65.5 MiB 0.14 0.00 3.96154 -133.42 -3.96154 3.96154 1.11 0.000785918 0.000728565 0.0408451 0.0374417 34 3277 24 6.87369e+06 572927 618332. 2139.56 2.89 0.218315 0.194566 25762 151098 -1 2533 22 2151 3371 253008 57224 4.52425 4.52425 -163.632 -4.52425 0 0 787024. 2723.27 0.36 0.10 0.14 -1 -1 0.36 0.0350335 0.0312224 183 -1 156 32 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_094.v common 8.60 vpr 65.21 MiB 0.02 7260 -1 -1 1 0.04 -1 -1 34084 -1 -1 32 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 30 32 371 295 1 188 94 17 17 289 -1 unnamed_device 26.7 MiB 3.27 974 17560 5334 9519 2707 65.2 MiB 0.16 0.00 2.83325 -97.4951 -2.83325 2.83325 1.10 0.000514183 0.000465725 0.0485543 0.0439962 34 2420 23 6.87369e+06 447163 618332. 2139.56 1.75 0.178881 0.156884 25762 151098 -1 1963 23 1987 3244 210096 52042 2.97596 2.97596 -115.317 -2.97596 0 0 787024. 2723.27 0.34 0.09 0.15 -1 -1 0.34 0.0292533 0.0257736 141 47 60 30 56 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_095.v common 5.73 vpr 64.66 MiB 0.02 7024 -1 -1 1 0.04 -1 -1 33884 -1 -1 20 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66208 27 32 269 226 1 145 79 17 17 289 -1 unnamed_device 26.1 MiB 1.04 655 12585 5280 6438 867 64.7 MiB 0.10 0.00 3.0601 -89.8127 -3.0601 3.0601 1.10 0.000461448 0.000421189 0.0349047 0.0317822 32 1788 35 6.87369e+06 279477 586450. 2029.24 1.15 0.111399 0.0984163 25474 144626 -1 1456 16 1052 1487 118054 27131 3.11961 3.11961 -103.84 -3.11961 0 0 744469. 2576.02 0.37 0.06 0.15 -1 -1 0.37 0.020941 0.0187637 102 26 54 27 27 27 -fixed_k6_frac_ripple_N8_22nm.xml mult_096.v common 10.06 vpr 65.94 MiB 0.02 7420 -1 -1 1 0.04 -1 -1 34232 -1 -1 42 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67520 32 32 493 378 1 233 106 17 17 289 -1 unnamed_device 27.2 MiB 3.47 1373 12356 2983 8475 898 65.9 MiB 0.15 0.00 3.39279 -120.472 -3.39279 3.39279 1.14 0.000813005 0.000744988 0.0454839 0.0416144 28 4134 28 6.87369e+06 586901 531479. 1839.03 2.89 0.159014 0.140924 24610 126494 -1 3316 21 2326 4107 407119 86911 4.2603 4.2603 -155.284 -4.2603 0 0 648988. 2245.63 0.29 0.14 0.12 -1 -1 0.29 0.0366473 0.0326501 184 85 62 31 95 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_097.v common 9.73 vpr 65.62 MiB 0.02 7440 -1 -1 1 0.04 -1 -1 33848 -1 -1 23 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67192 31 32 455 371 1 199 86 17 17 289 -1 unnamed_device 26.8 MiB 4.20 1041 15962 6227 8261 1474 65.6 MiB 0.17 0.00 3.97274 -128.634 -3.97274 3.97274 1.15 0.00061608 0.000559424 0.0612624 0.0555442 34 2691 24 6.87369e+06 321398 618332. 2139.56 1.92 0.21595 0.190457 25762 151098 -1 2188 20 1609 2479 180389 43117 4.43935 4.43935 -158.015 -4.43935 0 0 787024. 2723.27 0.34 0.09 0.13 -1 -1 0.34 0.0313408 0.0279611 144 105 0 0 124 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_098.v common 9.84 vpr 65.25 MiB 0.02 7376 -1 -1 1 0.04 -1 -1 33536 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 32 32 355 304 1 162 80 17 17 289 -1 unnamed_device 26.5 MiB 4.44 877 14356 5084 7335 1937 65.2 MiB 0.13 0.00 3.8283 -108.62 -3.8283 3.8283 1.15 0.000604968 0.000547745 0.0470932 0.042512 34 2326 24 6.87369e+06 223581 618332. 2139.56 1.83 0.17606 0.154371 25762 151098 -1 1890 16 799 1196 103453 23717 3.18321 3.18321 -122.882 -3.18321 0 0 787024. 2723.27 0.33 0.05 0.15 -1 -1 0.33 0.0201286 0.0178913 107 86 0 0 89 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_099.v common 6.62 vpr 65.31 MiB 0.02 7168 -1 -1 1 0.04 -1 -1 34144 -1 -1 34 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 32 32 364 282 1 196 98 17 17 289 -1 unnamed_device 26.7 MiB 1.33 1109 14273 4195 8974 1104 65.3 MiB 0.14 0.00 3.30669 -118.161 -3.30669 3.30669 1.12 0.000528198 0.000477258 0.0414781 0.037684 28 2951 33 6.87369e+06 475111 531479. 1839.03 1.62 0.138528 0.122342 24610 126494 -1 2630 29 2212 3173 451469 160384 3.8924 3.8924 -151.975 -3.8924 0 0 648988. 2245.63 0.31 0.19 0.13 -1 -1 0.31 0.038926 0.0343405 147 31 90 30 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_100.v common 7.51 vpr 65.57 MiB 0.03 7368 -1 -1 1 0.04 -1 -1 34368 -1 -1 40 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67144 31 32 443 336 1 224 103 17 17 289 -1 unnamed_device 27.0 MiB 2.68 1157 19142 5402 10918 2822 65.6 MiB 0.19 0.00 3.42399 -118.311 -3.42399 3.42399 1.10 0.000850102 0.00077213 0.0572932 0.0522055 32 3252 22 6.87369e+06 558954 586450. 2029.24 1.20 0.150734 0.133773 25474 144626 -1 2553 22 1972 2927 228086 52401 3.7781 3.7781 -144.882 -3.7781 0 0 744469. 2576.02 0.34 0.10 0.15 -1 -1 0.34 0.0338349 0.0300379 176 50 87 31 62 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_101.v common 7.43 vpr 65.34 MiB 0.02 7352 -1 -1 1 0.04 -1 -1 34160 -1 -1 36 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66904 30 32 373 297 1 188 98 17 17 289 -1 unnamed_device 26.7 MiB 2.40 1022 17423 5214 9375 2834 65.3 MiB 0.16 0.00 2.78925 -94.8725 -2.78925 2.78925 1.10 0.000659279 0.000598957 0.0496429 0.045338 28 2652 32 6.87369e+06 503058 531479. 1839.03 1.49 0.158691 0.141786 24610 126494 -1 2348 20 1579 2739 220755 50154 3.04026 3.04026 -120.35 -3.04026 0 0 648988. 2245.63 0.31 0.10 0.12 -1 -1 0.31 0.0346511 0.0311085 144 50 58 30 58 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_102.v common 9.56 vpr 65.57 MiB 0.03 7296 -1 -1 1 0.04 -1 -1 34060 -1 -1 46 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67144 32 32 407 319 1 202 110 17 17 289 -1 unnamed_device 26.8 MiB 3.58 986 11682 2804 7883 995 65.6 MiB 0.12 0.00 3.32249 -113.143 -3.32249 3.32249 1.08 0.000707403 0.000644846 0.0324898 0.029629 28 3011 47 6.87369e+06 642796 531479. 1839.03 2.47 0.152408 0.134076 24610 126494 -1 2455 24 2107 3448 330632 70236 4.3526 4.3526 -157.236 -4.3526 0 0 648988. 2245.63 0.32 0.13 0.12 -1 -1 0.32 0.038218 0.034057 160 61 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_103.v common 11.53 vpr 65.57 MiB 0.02 7276 -1 -1 1 0.04 -1 -1 34028 -1 -1 42 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67140 32 32 405 318 1 201 106 17 17 289 -1 unnamed_device 26.8 MiB 3.98 1072 19606 5850 10926 2830 65.6 MiB 0.18 0.00 2.89925 -105.07 -2.89925 2.89925 1.07 0.000590492 0.0005348 0.0539603 0.0487628 34 2636 24 6.87369e+06 586901 618332. 2139.56 3.91 0.242657 0.212768 25762 151098 -1 2196 19 1553 2421 171201 39866 3.11526 3.11526 -125.378 -3.11526 0 0 787024. 2723.27 0.37 0.08 0.15 -1 -1 0.37 0.0276244 0.0245035 157 61 63 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_104.v common 7.42 vpr 64.75 MiB 0.02 7200 -1 -1 1 0.03 -1 -1 33656 -1 -1 19 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 29 32 287 238 1 155 80 17 17 289 -1 unnamed_device 26.4 MiB 2.33 752 13668 5257 6397 2014 64.8 MiB 0.12 0.00 2.9256 -97.8367 -2.9256 2.9256 1.08 0.000454396 0.000414973 0.040542 0.0369309 34 1754 21 6.87369e+06 265503 618332. 2139.56 1.63 0.148646 0.130267 25762 151098 -1 1521 20 1178 1706 117481 26986 2.98526 2.98526 -113.844 -2.98526 0 0 787024. 2723.27 0.33 0.06 0.15 -1 -1 0.33 0.0205827 0.0181127 107 28 58 29 29 29 -fixed_k6_frac_ripple_N8_22nm.xml mult_105.v common 7.74 vpr 64.79 MiB 0.02 7324 -1 -1 1 0.04 -1 -1 34140 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66340 32 32 334 290 1 156 81 17 17 289 -1 unnamed_device 26.3 MiB 2.87 909 11631 2934 7259 1438 64.8 MiB 0.09 0.00 3.34714 -99.6011 -3.34714 3.34714 1.03 0.00044464 0.000404867 0.0336773 0.0307337 34 1980 23 6.87369e+06 237555 618332. 2139.56 1.59 0.155413 0.136645 25762 151098 -1 1719 20 768 1093 83553 19317 2.82735 2.82735 -113.658 -2.82735 0 0 787024. 2723.27 0.34 0.05 0.13 -1 -1 0.34 0.0219507 0.0193839 102 79 0 0 82 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_106.v common 8.05 vpr 65.54 MiB 0.03 7436 -1 -1 1 0.04 -1 -1 34156 -1 -1 39 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67112 31 32 365 281 1 197 102 17 17 289 -1 unnamed_device 26.9 MiB 2.42 1154 20094 6021 11708 2365 65.5 MiB 0.18 0.00 3.31149 -115.219 -3.31149 3.31149 1.11 0.000603668 0.000552325 0.0525156 0.0478003 28 2884 30 6.87369e+06 544980 531479. 1839.03 2.07 0.147342 0.130768 24610 126494 -1 2576 21 1944 3235 284720 60827 3.6608 3.6608 -145.018 -3.6608 0 0 648988. 2245.63 0.29 0.10 0.12 -1 -1 0.29 0.0288542 0.0254371 152 29 93 31 31 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_107.v common 9.20 vpr 65.02 MiB 0.02 7292 -1 -1 1 0.03 -1 -1 33788 -1 -1 32 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 29 32 297 254 1 148 93 17 17 289 -1 unnamed_device 26.5 MiB 4.16 774 17523 6697 8650 2176 65.0 MiB 0.14 0.00 2.76725 -88.0741 -2.76725 2.76725 1.08 0.000468625 0.000427705 0.0430115 0.0392672 26 2084 22 6.87369e+06 447163 503264. 1741.40 1.61 0.125417 0.112135 24322 120374 -1 1823 24 1336 2175 195430 44018 3.18886 3.18886 -114.49 -3.18886 0 0 618332. 2139.56 0.29 0.08 0.12 -1 -1 0.29 0.0284757 0.0250641 108 48 29 29 52 26 -fixed_k6_frac_ripple_N8_22nm.xml mult_108.v common 9.73 vpr 64.90 MiB 0.02 6964 -1 -1 1 0.03 -1 -1 33688 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 314 256 1 168 80 17 17 289 -1 unnamed_device 26.5 MiB 4.35 917 13152 5075 7153 924 64.9 MiB 0.12 0.00 2.9586 -109.476 -2.9586 2.9586 1.07 0.000569401 0.000518822 0.0397035 0.0362284 34 2518 21 6.87369e+06 223581 618332. 2139.56 1.89 0.160389 0.141122 25762 151098 -1 2088 23 1603 2616 244454 53515 3.43616 3.43616 -132.557 -3.43616 0 0 787024. 2723.27 0.33 0.09 0.15 -1 -1 0.33 0.0254266 0.0223717 114 31 64 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_109.v common 8.96 vpr 65.11 MiB 0.03 7448 -1 -1 1 0.04 -1 -1 34116 -1 -1 35 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 31 32 387 307 1 193 98 17 17 289 -1 unnamed_device 26.5 MiB 3.48 969 16523 4993 8632 2898 65.1 MiB 0.15 0.00 2.88345 -102.538 -2.88345 2.88345 1.12 0.000795188 0.000727797 0.0484836 0.0439588 34 2261 19 6.87369e+06 489084 618332. 2139.56 1.79 0.183261 0.160488 25762 151098 -1 1928 21 1771 2682 175096 42278 2.94116 2.94116 -117.971 -2.94116 0 0 787024. 2723.27 0.38 0.09 0.15 -1 -1 0.38 0.0321253 0.0287714 146 60 58 31 62 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_110.v common 8.32 vpr 64.89 MiB 0.02 7236 -1 -1 1 0.03 -1 -1 33848 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 31 32 308 262 1 154 79 17 17 289 -1 unnamed_device 26.5 MiB 3.88 875 9036 2508 5797 731 64.9 MiB 0.08 0.00 2.63557 -93.8447 -2.63557 2.63557 1.07 0.000675302 0.000602674 0.0280482 0.0255266 32 2307 31 6.87369e+06 223581 586450. 2029.24 1.11 0.102097 0.0896688 25474 144626 -1 1864 21 1267 2085 183464 40163 2.93826 2.93826 -115.503 -2.93826 0 0 744469. 2576.02 0.32 0.08 0.14 -1 -1 0.32 0.0256416 0.0229304 103 49 31 31 53 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_111.v common 8.21 vpr 65.23 MiB 0.02 7280 -1 -1 1 0.03 -1 -1 34016 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 32 32 383 307 1 190 101 17 17 289 -1 unnamed_device 26.6 MiB 3.44 1006 13496 3495 8660 1341 65.2 MiB 0.13 0.00 2.77825 -97.8509 -2.77825 2.77825 1.02 0.000896845 0.000828697 0.0411096 0.0374469 26 2716 49 6.87369e+06 517032 503264. 1741.40 1.50 0.167766 0.149168 24322 120374 -1 2276 23 1380 2396 195126 43904 3.02626 3.02626 -122.604 -3.02626 0 0 618332. 2139.56 0.28 0.09 0.10 -1 -1 0.28 0.03134 0.0279048 143 56 52 26 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_112.v common 10.06 vpr 65.77 MiB 0.03 7316 -1 -1 1 0.04 -1 -1 33916 -1 -1 39 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67352 31 32 422 339 1 196 102 17 17 289 -1 unnamed_device 27.0 MiB 4.48 887 10812 2512 7033 1267 65.8 MiB 0.11 0.00 2.86625 -96.6486 -2.86625 2.86625 1.12 0.000698134 0.000637124 0.0343123 0.0310057 26 2853 26 6.87369e+06 544980 503264. 1741.40 1.95 0.140723 0.124213 24322 120374 -1 2360 53 3201 5005 510107 113662 3.46776 3.46776 -128.765 -3.46776 0 0 618332. 2139.56 0.30 0.22 0.12 -1 -1 0.30 0.068317 0.0597034 151 88 31 31 92 31 -fixed_k6_frac_ripple_N8_22nm.xml mult_113.v common 8.56 vpr 65.12 MiB 0.02 7236 -1 -1 1 0.04 -1 -1 33988 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 32 32 333 279 1 164 81 17 17 289 -1 unnamed_device 26.4 MiB 3.44 954 13731 4500 7469 1762 65.1 MiB 0.12 0.00 2.62457 -96.4915 -2.62457 2.62457 1.02 0.000481953 0.000439253 0.041474 0.0377763 34 2328 23 6.87369e+06 237555 618332. 2139.56 1.71 0.159341 0.139731 25762 151098 -1 1912 25 1388 2215 164762 37810 2.99946 2.99946 -119.912 -2.99946 0 0 787024. 2723.27 0.34 0.08 0.15 -1 -1 0.34 0.0294634 0.0257596 110 54 32 32 60 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_114.v common 8.79 vpr 65.25 MiB 0.02 7020 -1 -1 1 0.04 -1 -1 33800 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 32 32 339 283 1 166 80 17 17 289 -1 unnamed_device 26.5 MiB 4.21 941 14012 4418 8237 1357 65.3 MiB 0.08 0.00 2.9366 -107.678 -2.9366 2.9366 1.09 0.000489217 0.000443056 0.0310222 0.0282645 32 2582 24 6.87369e+06 223581 586450. 2029.24 1.13 0.107109 0.0941199 25474 144626 -1 2183 21 1468 2409 224691 49171 3.31086 3.31086 -133.803 -3.31086 0 0 744469. 2576.02 0.33 0.08 0.14 -1 -1 0.33 0.0254147 0.0225524 112 60 32 32 62 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_115.v common 9.25 vpr 65.74 MiB 0.02 7304 -1 -1 1 0.04 -1 -1 34384 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67320 32 32 407 319 1 202 104 17 17 289 -1 unnamed_device 27.0 MiB 3.57 917 17428 4888 9797 2743 65.7 MiB 0.15 0.00 3.41299 -117.867 -3.41299 3.41299 1.05 0.000627284 0.00056973 0.0435694 0.0395542 34 2581 31 6.87369e+06 558954 618332. 2139.56 2.18 0.18986 0.166336 25762 151098 -1 2018 23 2095 3361 219250 53056 3.9017 3.9017 -142.83 -3.9017 0 0 787024. 2723.27 0.32 0.09 0.15 -1 -1 0.32 0.0291846 0.0257174 157 49 64 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_116.v common 7.44 vpr 65.20 MiB 0.02 7244 -1 -1 1 0.04 -1 -1 34116 -1 -1 34 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 29 32 367 293 1 185 95 17 17 289 -1 unnamed_device 26.6 MiB 3.06 1018 12191 3396 7605 1190 65.2 MiB 0.11 0.00 2.84425 -93.4612 -2.84425 2.84425 1.05 0.000534745 0.000485508 0.0325711 0.0296366 30 2282 22 6.87369e+06 475111 556674. 1926.21 1.03 0.106747 0.0938724 25186 138497 -1 1887 22 992 1686 106314 24088 2.91926 2.91926 -112.202 -2.91926 0 0 706193. 2443.58 0.30 0.07 0.13 -1 -1 0.30 0.030212 0.0271693 140 54 56 29 58 29 -fixed_k6_frac_ripple_N8_22nm.xml mult_117.v common 11.75 vpr 65.86 MiB 0.03 7560 -1 -1 1 0.04 -1 -1 34268 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67436 32 32 469 381 1 202 104 17 17 289 -1 unnamed_device 27.0 MiB 6.82 985 13036 3570 8061 1405 65.9 MiB 0.14 0.00 3.48699 -122.681 -3.48699 3.48699 1.08 0.000806322 0.000730885 0.0409839 0.0371146 30 2459 23 6.87369e+06 558954 556674. 1926.21 1.37 0.138948 0.122467 25186 138497 -1 2003 19 1592 2572 152101 35976 3.5697 3.5697 -142.948 -3.5697 0 0 706193. 2443.58 0.34 0.07 0.13 -1 -1 0.34 0.0281993 0.0249441 157 117 0 0 128 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_118.v common 5.16 vpr 64.77 MiB 0.02 6984 -1 -1 1 0.04 -1 -1 33992 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 31 32 259 212 1 155 79 17 17 289 -1 unnamed_device 26.2 MiB 0.91 795 11909 3535 6603 1771 64.8 MiB 0.09 0.00 2.44612 -88.9453 -2.44612 2.44612 1.02 0.000400975 0.000365881 0.0313555 0.0285729 30 2030 36 6.87369e+06 223581 556674. 1926.21 1.06 0.100995 0.0885185 25186 138497 -1 1607 16 1078 1719 98078 23292 2.77096 2.77096 -110.843 -2.77096 0 0 706193. 2443.58 0.30 0.05 0.13 -1 -1 0.30 0.0189354 0.0170236 104 -1 85 31 0 0 -fixed_k6_frac_ripple_N8_22nm.xml mult_119.v common 6.45 vpr 65.70 MiB 0.02 7352 -1 -1 1 0.04 -1 -1 33756 -1 -1 37 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67276 32 32 418 338 1 194 101 17 17 289 -1 unnamed_device 27.0 MiB 2.00 1136 17961 4753 11487 1721 65.7 MiB 0.15 0.00 3.49609 -119.341 -3.49609 3.49609 0.97 0.000721589 0.000669879 0.0466707 0.042417 28 2583 39 6.87369e+06 517032 531479. 1839.03 1.21 0.156011 0.13823 24610 126494 -1 2211 21 1689 2353 206718 46321 3.7011 3.7011 -140.572 -3.7011 0 0 648988. 2245.63 0.29 0.09 0.12 -1 -1 0.29 0.0315038 0.0282286 147 89 28 28 92 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_120.v common 10.39 vpr 65.31 MiB 0.02 7060 -1 -1 1 0.03 -1 -1 34020 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 32 32 376 318 1 168 80 17 17 289 -1 unnamed_device 26.5 MiB 5.48 908 11260 3414 6310 1536 65.3 MiB 0.10 0.00 2.9898 -110.534 -2.9898 2.9898 1.02 0.000518362 0.000471716 0.0371502 0.033809 34 2267 23 6.87369e+06 223581 618332. 2139.56 1.62 0.157509 0.137289 25762 151098 -1 1893 21 1486 2159 163289 37546 3.16246 3.16246 -131.465 -3.16246 0 0 787024. 2723.27 0.33 0.07 0.14 -1 -1 0.33 0.0257232 0.022773 114 93 0 0 96 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_121.v common 8.53 vpr 65.66 MiB 0.02 7116 -1 -1 1 0.04 -1 -1 34008 -1 -1 39 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67240 32 32 401 316 1 199 103 17 17 289 -1 unnamed_device 27.0 MiB 3.85 1083 18419 4857 11116 2446 65.7 MiB 0.16 0.00 2.83325 -103.36 -2.83325 2.83325 1.04 0.000577785 0.000527112 0.0478536 0.0433834 28 2576 21 6.87369e+06 544980 531479. 1839.03 1.31 0.131109 0.11577 24610 126494 -1 2234 18 1491 2223 165716 38663 3.14356 3.14356 -129.908 -3.14356 0 0 648988. 2245.63 0.29 0.08 0.13 -1 -1 0.29 0.0268519 0.0238514 153 59 61 32 64 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_122.v common 11.76 vpr 65.56 MiB 0.03 7432 -1 -1 1 0.04 -1 -1 34472 -1 -1 47 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67136 32 32 500 382 1 236 111 17 17 289 -1 unnamed_device 27.1 MiB 5.57 1063 20327 5487 12070 2770 65.6 MiB 0.20 0.00 4.00554 -134.214 -4.00554 4.00554 1.02 0.000808906 0.000736004 0.0591573 0.0535454 34 3410 25 6.87369e+06 656770 618332. 2139.56 2.74 0.22536 0.197716 25762 151098 -1 2538 22 2625 4128 310455 73379 4.83085 4.83085 -170.88 -4.83085 0 0 787024. 2723.27 0.34 0.12 0.13 -1 -1 0.34 0.0378655 0.0338169 190 81 64 32 96 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_123.v common 6.60 vpr 64.61 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 33880 -1 -1 14 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 30 32 246 229 1 118 76 17 17 289 -1 unnamed_device 26.2 MiB 2.49 665 10476 2768 6457 1251 64.6 MiB 0.07 0.00 2.42836 -80.5119 -2.42836 2.42836 1.02 0.000374753 0.000339709 0.0264944 0.024151 32 1542 19 6.87369e+06 195634 586450. 2029.24 0.94 0.074781 0.065556 25474 144626 -1 1326 19 658 925 78925 18369 2.08882 2.08882 -91.2305 -2.08882 0 0 744469. 2576.02 0.31 0.04 0.14 -1 -1 0.31 0.0171007 0.0149989 72 51 0 0 53 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_124.v common 5.44 vpr 64.55 MiB 0.02 6996 -1 -1 1 0.03 -1 -1 34096 -1 -1 18 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66100 30 32 296 244 1 158 80 17 17 289 -1 unnamed_device 26.2 MiB 1.18 715 12808 4470 6119 2219 64.6 MiB 0.10 0.00 2.9678 -98.692 -2.9678 2.9678 1.04 0.000454483 0.000411106 0.0364095 0.0331132 32 1866 19 6.87369e+06 251529 586450. 2029.24 1.01 0.0953956 0.08395 25474 144626 -1 1587 20 1282 1776 146909 33853 3.15261 3.15261 -120.311 -3.15261 0 0 744469. 2576.02 0.32 0.06 0.12 -1 -1 0.32 0.0229619 0.0204272 109 29 60 30 30 30 -fixed_k6_frac_ripple_N8_22nm.xml mult_125.v common 6.86 vpr 64.84 MiB 0.02 7164 -1 -1 1 0.04 -1 -1 33696 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 314 256 1 168 80 17 17 289 -1 unnamed_device 26.4 MiB 1.66 958 12808 4038 7184 1586 64.8 MiB 0.12 0.00 2.77395 -105.816 -2.77395 2.77395 1.05 0.000458617 0.000419387 0.0395359 0.0360107 34 2519 18 6.87369e+06 223581 618332. 2139.56 1.80 0.149332 0.131032 25762 151098 -1 2101 21 1588 2818 224755 51473 3.07926 3.07926 -130.671 -3.07926 0 0 787024. 2723.27 0.32 0.08 0.14 -1 -1 0.32 0.0232039 0.0204436 114 31 64 32 32 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_126.v common 5.65 vpr 64.82 MiB 0.02 7024 -1 -1 1 0.03 -1 -1 34060 -1 -1 37 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 25 32 251 214 1 139 94 17 17 289 -1 unnamed_device 26.4 MiB 0.96 619 17560 6617 8075 2868 64.8 MiB 0.12 0.00 2.80025 -75.8402 -2.80025 2.80025 1.02 0.000387258 0.000351238 0.0350053 0.031882 26 1788 26 6.87369e+06 517032 503264. 1741.40 1.52 0.0965413 0.0851014 24322 120374 -1 1576 21 1194 2012 171080 39701 3.02726 3.02726 -97.6454 -3.02726 0 0 618332. 2139.56 0.25 0.07 0.12 -1 -1 0.25 0.0195845 0.0172775 105 19 50 25 25 25 -fixed_k6_frac_ripple_N8_22nm.xml mult_127.v common 8.21 vpr 65.74 MiB 0.02 7236 -1 -1 1 0.04 -1 -1 34076 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67316 32 32 432 346 1 200 85 17 17 289 -1 unnamed_device 27.0 MiB 3.51 1014 16267 5584 8739 1944 65.7 MiB 0.16 0.00 3.26749 -115.812 -3.26749 3.26749 1.03 0.000643875 0.000586697 0.056264 0.0512417 32 3127 28 6.87369e+06 293451 586450. 2029.24 1.25 0.152179 0.134913 25474 144626 -1 2485 24 2083 3802 310578 73239 3.8404 3.8404 -148.431 -3.8404 0 0 744469. 2576.02 0.32 0.10 0.14 -1 -1 0.32 0.0318128 0.0280838 145 84 32 32 94 32 -fixed_k6_frac_ripple_N8_22nm.xml mult_128.v common 7.56 vpr 65.64 MiB 0.02 7352 -1 -1 1 0.04 -1 -1 33980 -1 -1 40 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67212 31 32 421 339 1 195 103 17 17 289 -1 unnamed_device 26.9 MiB 3.18 1080 13358 3306 8771 1281 65.6 MiB 0.12 0.00 2.86625 -101.587 -2.86625 2.86625 0.98 0.000584279 0.000523756 0.0349752 0.0316075 28 2631 21 6.87369e+06 558954 531479. 1839.03 1.17 0.117282 0.102951 24610 126494 -1 2292 24 1968 3146 245528 54909 3.09026 3.09026 -126.273 -3.09026 0 0 648988. 2245.63 0.28 0.09 0.12 -1 -1 0.28 0.0308465 0.0271698 151 88 29 29 93 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_001.v common 9.95 vpr 65.70 MiB 0.02 7296 -1 -1 1 0.04 -1 -1 33884 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67280 32 32 438 350 1 295 93 17 17 289 -1 unnamed_device 27.0 MiB 2.04 1397 19203 6712 10074 2417 65.7 MiB 0.18 0.00 4.08424 -140.969 -4.08424 4.08424 1.04 0.00100966 0.000935204 0.058699 0.0534027 36 3131 24 6.89349e+06 408721 648988. 2245.63 4.38 0.261978 0.228917 26050 158493 -1 2688 21 2203 2684 190705 42461 4.87215 4.87215 -174.998 -4.87215 0 0 828058. 2865.25 0.35 0.08 0.15 -1 -1 0.35 0.03049 0.0270871 192 80 32 32 96 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_002.v common 7.66 vpr 65.64 MiB 0.02 7240 -1 -1 1 0.04 -1 -1 34092 -1 -1 29 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67220 30 32 409 330 1 262 91 17 17 289 -1 unnamed_device 26.9 MiB 1.88 1213 16615 5668 8299 2648 65.6 MiB 0.16 0.00 4.21067 -131.231 -4.21067 4.21067 1.01 0.000567306 0.000509856 0.0498719 0.0453228 36 3094 32 6.89349e+06 408721 648988. 2245.63 2.34 0.193257 0.169085 26050 158493 -1 2542 20 2055 2851 201270 45989 4.51278 4.51278 -155.651 -4.51278 0 0 828058. 2865.25 0.35 0.09 0.15 -1 -1 0.35 0.0296778 0.0265558 177 78 30 30 89 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_003.v common 7.98 vpr 65.38 MiB 0.02 7316 -1 -1 1 0.04 -1 -1 34200 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 32 32 387 309 1 253 89 17 17 289 -1 unnamed_device 26.7 MiB 2.46 1315 14543 3877 8711 1955 65.4 MiB 0.13 0.00 3.31466 -117.958 -3.31466 3.31466 1.03 0.000523965 0.000475591 0.0431322 0.039354 36 2904 23 6.89349e+06 352346 648988. 2245.63 2.12 0.173159 0.151694 26050 158493 -1 2500 21 1654 2076 147236 32418 3.6704 3.6704 -136.171 -3.6704 0 0 828058. 2865.25 0.34 0.07 0.16 -1 -1 0.34 0.0267041 0.0236278 167 50 54 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_004.v common 7.87 vpr 65.34 MiB 0.02 7168 -1 -1 1 0.04 -1 -1 33840 -1 -1 25 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66908 29 32 343 267 1 209 86 17 17 289 -1 unnamed_device 26.6 MiB 2.59 981 14072 4129 8074 1869 65.3 MiB 0.13 0.00 3.65595 -113.669 -3.65595 3.65595 0.99 0.000497774 0.000453034 0.0400881 0.0364921 36 2236 18 6.89349e+06 352346 648988. 2245.63 2.00 0.154955 0.135709 26050 158493 -1 1989 19 1585 2397 164797 37087 3.78736 3.78736 -135.349 -3.78736 0 0 828058. 2865.25 0.33 0.07 0.15 -1 -1 0.33 0.0225685 0.0199924 148 25 87 29 29 29 -fixed_k6_frac_uripple_N8_22nm.xml mult_005.v common 9.01 vpr 65.27 MiB 0.02 7248 -1 -1 1 0.04 -1 -1 33948 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 32 32 376 288 1 233 88 17 17 289 -1 unnamed_device 26.7 MiB 2.41 1248 15103 4997 7211 2895 65.3 MiB 0.15 0.00 4.13624 -140.197 -4.13624 4.13624 1.03 0.00057239 0.000517822 0.0456166 0.0415814 34 3858 38 6.89349e+06 338252 618332. 2139.56 3.13 0.169234 0.148597 25762 151098 -1 2939 21 2296 3976 312580 68493 4.89875 4.89875 -171.008 -4.89875 0 0 787024. 2723.27 0.35 0.11 0.14 -1 -1 0.35 0.0274709 0.0242765 163 31 96 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_006.v common 8.03 vpr 65.26 MiB 0.02 7144 -1 -1 1 0.04 -1 -1 34120 -1 -1 41 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 32 32 402 316 1 257 105 17 17 289 -1 unnamed_device 26.5 MiB 2.27 1445 21347 5976 12885 2486 65.3 MiB 0.20 0.00 3.63759 -120.124 -3.63759 3.63759 1.05 0.00057267 0.000521128 0.0541914 0.0492813 34 3630 25 6.89349e+06 577847 618332. 2139.56 2.20 0.190241 0.166267 25762 151098 -1 2830 20 1889 2991 212523 45449 3.4465 3.4465 -136.895 -3.4465 0 0 787024. 2723.27 0.35 0.09 0.14 -1 -1 0.35 0.0285306 0.0253979 179 61 63 32 63 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_007.v common 6.85 vpr 64.36 MiB 0.02 7080 -1 -1 1 0.03 -1 -1 34280 -1 -1 21 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65908 27 32 269 226 1 164 80 17 17 289 -1 unnamed_device 26.0 MiB 1.92 764 11088 3271 6950 867 64.4 MiB 0.09 0.00 3.0242 -88.9126 -3.0242 3.0242 1.02 0.000434188 0.000393652 0.0290634 0.0264881 34 1852 21 6.89349e+06 295971 618332. 2139.56 1.66 0.128733 0.11261 25762 151098 -1 1637 17 1209 1738 119084 27948 3.09481 3.09481 -108.016 -3.09481 0 0 787024. 2723.27 0.33 0.06 0.15 -1 -1 0.33 0.0194144 0.0173063 112 26 54 27 27 27 -fixed_k6_frac_uripple_N8_22nm.xml mult_008.v common 8.33 vpr 64.46 MiB 0.02 7252 -1 -1 1 0.04 -1 -1 33832 -1 -1 35 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66008 31 32 317 242 1 187 98 17 17 289 -1 unnamed_device 26.0 MiB 0.91 1065 17648 4880 10424 2344 64.5 MiB 0.14 0.00 2.8004 -95.1457 -2.8004 2.8004 1.04 0.000621783 0.000578099 0.0445314 0.0403764 36 2384 20 6.89349e+06 493284 648988. 2245.63 4.10 0.21302 0.187235 26050 158493 -1 2000 21 1218 1998 133693 30213 2.55621 2.55621 -105.909 -2.55621 0 0 828058. 2865.25 0.34 0.06 0.14 -1 -1 0.34 0.0239755 0.0213207 141 -1 115 31 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_009.v common 7.10 vpr 64.94 MiB 0.02 7260 -1 -1 1 0.04 -1 -1 33668 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 31 32 338 292 1 225 84 17 17 289 -1 unnamed_device 26.4 MiB 1.98 1166 9417 2368 5743 1306 64.9 MiB 0.09 0.00 2.93075 -99.672 -2.93075 2.93075 1.05 0.000495074 0.000449038 0.0284277 0.025887 34 2860 23 6.89349e+06 295971 618332. 2139.56 1.75 0.149613 0.130709 25762 151098 -1 2203 21 1554 1808 139695 31363 2.88531 2.88531 -115.468 -2.88531 0 0 787024. 2723.27 0.35 0.07 0.15 -1 -1 0.35 0.0238965 0.0211331 140 81 0 0 84 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_010.v common 7.38 vpr 64.91 MiB 0.02 6944 -1 -1 1 0.03 -1 -1 33760 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 314 256 1 193 83 17 17 289 -1 unnamed_device 26.5 MiB 2.19 796 9623 2396 6316 911 64.9 MiB 0.09 0.00 2.96065 -102.82 -2.96065 2.96065 1.05 0.00049038 0.00044628 0.0292959 0.0267288 34 2408 27 6.89349e+06 267783 618332. 2139.56 1.81 0.145864 0.127379 25762 151098 -1 1857 21 1624 2113 130019 33448 3.26786 3.26786 -130.191 -3.26786 0 0 787024. 2723.27 0.34 0.06 0.15 -1 -1 0.34 0.0224096 0.0196891 127 31 64 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_011.v common 7.53 vpr 64.89 MiB 0.02 7224 -1 -1 1 0.03 -1 -1 33584 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 30 32 325 273 1 203 83 17 17 289 -1 unnamed_device 26.4 MiB 2.55 1075 15563 5702 8120 1741 64.9 MiB 0.13 0.00 3.35114 -111.344 -3.35114 3.35114 1.02 0.000455412 0.000414783 0.043147 0.0392981 34 2423 24 6.89349e+06 295971 618332. 2139.56 1.64 0.155953 0.13624 25762 151098 -1 2085 21 1713 2276 153778 34990 3.57995 3.57995 -133.773 -3.57995 0 0 787024. 2723.27 0.33 0.07 0.15 -1 -1 0.33 0.0240181 0.0212202 135 58 30 30 60 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_012.v common 7.25 vpr 64.75 MiB 0.02 7036 -1 -1 1 0.04 -1 -1 34152 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 32 32 331 280 1 215 84 17 17 289 -1 unnamed_device 26.2 MiB 2.05 1041 16188 5960 7866 2362 64.7 MiB 0.13 0.00 3.0432 -103.308 -3.0432 3.0432 1.04 0.000499693 0.000455853 0.0463187 0.0420726 34 2556 45 6.89349e+06 281877 618332. 2139.56 1.80 0.181929 0.158931 25762 151098 -1 2091 19 1221 1416 107646 24666 3.03551 3.03551 -119.032 -3.03551 0 0 787024. 2723.27 0.32 0.05 0.15 -1 -1 0.32 0.020915 0.018434 135 57 25 25 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_013.v common 9.37 vpr 65.40 MiB 0.03 7396 -1 -1 1 0.04 -1 -1 34112 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66968 32 32 386 305 1 239 89 17 17 289 -1 unnamed_device 26.7 MiB 1.66 998 17711 7423 8257 2031 65.4 MiB 0.14 0.00 3.35709 -113.566 -3.35709 3.35709 1.06 0.000551982 0.00050019 0.0528668 0.048191 38 2942 43 6.89349e+06 352346 678818. 2348.85 4.12 0.21533 0.189161 26626 170182 -1 2240 31 2036 2706 194462 47160 4.1212 4.1212 -141.01 -4.1212 0 0 902133. 3121.57 0.37 0.10 0.17 -1 -1 0.37 0.0374539 0.0326574 161 55 64 32 57 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_014.v common 7.36 vpr 65.56 MiB 0.02 7168 -1 -1 1 0.04 -1 -1 33888 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67136 32 32 407 319 1 264 92 17 17 289 -1 unnamed_device 26.8 MiB 1.74 1384 17273 5494 9643 2136 65.6 MiB 0.17 0.00 3.99994 -138.165 -3.99994 3.99994 1.02 0.000664659 0.000615582 0.0560219 0.051351 34 3523 45 6.89349e+06 394628 618332. 2139.56 2.17 0.216457 0.191376 25762 151098 -1 2724 22 2278 2983 204651 47764 4.58055 4.58055 -167.862 -4.58055 0 0 787024. 2723.27 0.35 0.09 0.13 -1 -1 0.35 0.0316693 0.0280513 175 60 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_015.v common 6.78 vpr 64.59 MiB 0.02 7104 -1 -1 1 0.04 -1 -1 33820 -1 -1 21 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 29 32 272 228 1 171 82 17 17 289 -1 unnamed_device 26.2 MiB 1.78 880 13610 4182 7535 1893 64.6 MiB 0.10 0.00 2.86465 -93.7117 -2.86465 2.86465 1.04 0.000481741 0.000440078 0.0346319 0.0313774 34 2048 36 6.89349e+06 295971 618332. 2139.56 1.64 0.146194 0.12791 25762 151098 -1 1808 19 1092 1532 107089 24800 2.97326 2.97326 -108.543 -2.97326 0 0 787024. 2723.27 0.34 0.05 0.15 -1 -1 0.34 0.0196097 0.0173534 112 21 58 29 24 24 -fixed_k6_frac_uripple_N8_22nm.xml mult_016.v common 9.41 vpr 65.48 MiB 0.03 7168 -1 -1 1 0.04 -1 -1 34060 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67048 32 32 401 315 1 256 89 17 17 289 -1 unnamed_device 26.8 MiB 2.92 1374 17909 6202 9054 2653 65.5 MiB 0.18 0.00 3.54049 -121.753 -3.54049 3.54049 1.06 0.000647425 0.000594467 0.0578881 0.0528865 36 3357 37 6.89349e+06 352346 648988. 2245.63 2.89 0.219482 0.194013 26050 158493 -1 2698 21 2442 3948 305682 70151 4.12945 4.12945 -149.454 -4.12945 0 0 828058. 2865.25 0.37 0.12 0.15 -1 -1 0.37 0.032017 0.0285618 174 60 64 32 62 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_017.v common 7.38 vpr 65.23 MiB 0.03 7240 -1 -1 1 0.04 -1 -1 33704 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 32 32 383 303 1 236 89 17 17 289 -1 unnamed_device 26.6 MiB 1.58 1265 16325 5012 9411 1902 65.2 MiB 0.17 0.00 2.93865 -106.398 -2.93865 2.93865 1.09 0.000739236 0.000643541 0.0527961 0.0479246 34 2973 30 6.89349e+06 352346 618332. 2139.56 2.20 0.193585 0.169518 25762 151098 -1 2519 19 1788 2213 177873 39421 3.28621 3.28621 -132.382 -3.28621 0 0 787024. 2723.27 0.34 0.07 0.15 -1 -1 0.34 0.0254546 0.0224829 160 54 64 32 56 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_018.v common 7.83 vpr 65.24 MiB 0.02 7164 -1 -1 1 0.04 -1 -1 33556 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 32 32 339 284 1 224 86 17 17 289 -1 unnamed_device 26.4 MiB 2.28 1165 15206 5123 7555 2528 65.2 MiB 0.14 0.00 2.80245 -101.976 -2.80245 2.80245 1.06 0.000492895 0.000448896 0.0435791 0.0395704 34 2851 27 6.89349e+06 310065 618332. 2139.56 2.06 0.169819 0.148458 25762 151098 -1 2357 22 1693 2214 167374 36422 2.80126 2.80126 -118.371 -2.80126 0 0 787024. 2723.27 0.33 0.08 0.15 -1 -1 0.33 0.0259191 0.0228857 139 62 29 29 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_019.v common 5.33 vpr 64.35 MiB 0.02 6888 -1 -1 1 0.03 -1 -1 33884 -1 -1 15 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65892 30 32 226 208 1 142 77 17 17 289 -1 unnamed_device 25.9 MiB 1.19 704 6760 1764 4399 597 64.3 MiB 0.05 0.00 2.41926 -78.0532 -2.41926 2.41926 1.05 0.000594084 0.00054766 0.017179 0.0157016 30 1500 20 6.89349e+06 211408 556674. 1926.21 0.93 0.0675169 0.0593569 25186 138497 -1 1348 19 668 795 47595 11907 2.09982 2.09982 -88.3596 -2.09982 0 0 706193. 2443.58 0.32 0.04 0.12 -1 -1 0.32 0.0157554 0.0138902 85 29 24 24 30 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_020.v common 7.32 vpr 64.95 MiB 0.03 7284 -1 -1 1 0.04 -1 -1 34144 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 31 32 335 280 1 217 85 17 17 289 -1 unnamed_device 26.2 MiB 1.76 1106 13663 3627 8067 1969 65.0 MiB 0.12 0.00 3.39499 -118.19 -3.39499 3.39499 1.11 0.000507255 0.000464241 0.0399932 0.036452 34 2805 47 6.89349e+06 310065 618332. 2139.56 2.00 0.183987 0.16086 25762 151098 -1 2325 20 1609 2068 165510 36631 3.42445 3.42445 -137.985 -3.42445 0 0 787024. 2723.27 0.33 0.07 0.15 -1 -1 0.33 0.0238635 0.0210369 141 55 31 31 62 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_021.v common 6.02 vpr 65.32 MiB 0.03 7244 -1 -1 1 0.04 -1 -1 33792 -1 -1 40 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66884 32 32 366 283 1 228 104 17 17 289 -1 unnamed_device 26.7 MiB 1.23 1228 17916 6304 9623 1989 65.3 MiB 0.16 0.00 3.85123 -132.257 -3.85123 3.85123 1.13 0.000543249 0.000493626 0.0443908 0.0401967 30 2885 29 6.89349e+06 563754 556674. 1926.21 1.21 0.13755 0.121812 25186 138497 -1 2363 20 1730 2414 164650 36157 4.07844 4.07844 -154.811 -4.07844 0 0 706193. 2443.58 0.33 0.08 0.13 -1 -1 0.33 0.028781 0.02583 166 31 91 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_022.v common 7.80 vpr 65.67 MiB 0.02 7460 -1 -1 1 0.04 -1 -1 33812 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67244 32 32 460 375 1 309 95 17 17 289 -1 unnamed_device 27.0 MiB 1.62 1665 20399 7395 10620 2384 65.7 MiB 0.21 0.00 3.45522 -120.822 -3.45522 3.45522 1.12 0.000618845 0.00056192 0.0705882 0.0644058 36 3609 23 6.89349e+06 436909 648988. 2245.63 2.44 0.229408 0.202732 26050 158493 -1 2903 23 2373 2697 185880 42188 3.76066 3.76066 -143.651 -3.76066 0 0 828058. 2865.25 0.35 0.09 0.16 -1 -1 0.35 0.0351117 0.0311254 201 108 0 0 125 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_023.v common 6.62 vpr 64.15 MiB 0.02 6836 -1 -1 1 0.03 -1 -1 34216 -1 -1 18 26 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65688 26 32 198 186 1 129 76 17 17 289 -1 unnamed_device 25.8 MiB 1.68 619 10316 4300 5417 599 64.1 MiB 0.07 0.00 2.21891 -63.9921 -2.21891 2.21891 1.10 0.000324781 0.000297187 0.0231079 0.0210326 34 1429 24 6.89349e+06 253689 618332. 2139.56 1.57 0.103787 0.0900629 25762 151098 -1 1204 20 707 913 71781 16258 2.07712 2.07712 -73.5157 -2.07712 0 0 787024. 2723.27 0.35 0.05 0.15 -1 -1 0.35 0.0171156 0.015178 77 21 26 26 22 22 -fixed_k6_frac_uripple_N8_22nm.xml mult_024.v common 7.07 vpr 64.86 MiB 0.03 7312 -1 -1 1 0.04 -1 -1 34156 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 32 32 333 251 1 196 85 17 17 289 -1 unnamed_device 26.4 MiB 1.52 1058 15895 5598 7593 2704 64.9 MiB 0.15 0.00 3.37604 -118.553 -3.37604 3.37604 1.10 0.000518604 0.00047322 0.0481986 0.0439065 34 2601 23 6.89349e+06 295971 618332. 2139.56 1.96 0.177419 0.155603 25762 151098 -1 2247 21 1729 2984 225749 50032 3.73905 3.73905 -142.245 -3.73905 0 0 787024. 2723.27 0.35 0.09 0.15 -1 -1 0.35 0.0278608 0.0246518 141 -1 122 32 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_025.v common 4.67 vpr 64.05 MiB 0.02 6752 -1 -1 1 0.03 -1 -1 33828 -1 -1 12 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65592 32 32 199 182 1 122 76 17 17 289 -1 unnamed_device 25.6 MiB 0.45 694 11596 4819 6583 194 64.1 MiB 0.08 0.00 1.93068 -74.4222 -1.93068 1.93068 1.07 0.000344842 0.000314835 0.0272083 0.0248004 28 1475 24 6.89349e+06 169126 531479. 1839.03 0.94 0.0763703 0.067286 24610 126494 -1 1366 19 657 988 76148 17619 1.99382 1.99382 -88.3493 -1.99382 0 0 648988. 2245.63 0.29 0.04 0.12 -1 -1 0.29 0.0160042 0.0141252 71 -1 53 32 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_026.v common 7.14 vpr 65.38 MiB 0.02 7372 -1 -1 1 0.04 -1 -1 34024 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 32 32 376 288 1 233 89 17 17 289 -1 unnamed_device 26.5 MiB 1.75 1003 10781 3091 7273 417 65.4 MiB 0.12 0.00 3.69075 -124.253 -3.69075 3.69075 1.04 0.000524542 0.000477183 0.0330403 0.0300098 34 3011 25 6.89349e+06 352346 618332. 2139.56 1.97 0.167245 0.146116 25762 151098 -1 2242 21 1862 2585 165379 41029 3.95366 3.95366 -154.028 -3.95366 0 0 787024. 2723.27 0.33 0.08 0.15 -1 -1 0.33 0.0285117 0.0250806 161 21 96 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_027.v common 5.54 vpr 65.11 MiB 0.02 7324 -1 -1 1 0.04 -1 -1 33832 -1 -1 36 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 337 253 1 198 100 17 17 289 -1 unnamed_device 26.4 MiB 0.93 1061 13092 3507 8346 1239 65.1 MiB 0.13 0.00 2.7803 -99.7348 -2.7803 2.7803 1.09 0.000576013 0.000528534 0.0330667 0.0300116 32 2605 26 6.89349e+06 507378 586450. 2029.24 1.13 0.114986 0.101579 25474 144626 -1 2078 20 1533 2423 154957 36761 2.82461 2.82461 -120.134 -2.82461 0 0 744469. 2576.02 0.32 0.07 0.14 -1 -1 0.32 0.0249683 0.022067 151 -1 124 32 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_028.v common 7.59 vpr 65.48 MiB 0.02 7308 -1 -1 1 0.04 -1 -1 34220 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67048 32 32 407 319 1 264 90 17 17 289 -1 unnamed_device 26.7 MiB 2.01 1298 13758 4399 6940 2419 65.5 MiB 0.14 0.00 3.69695 -129.07 -3.69695 3.69695 1.03 0.000601382 0.000541485 0.0438108 0.0401219 34 3820 27 6.89349e+06 366440 618332. 2139.56 2.15 0.207617 0.184684 25762 151098 -1 2813 21 2304 3387 225516 53158 4.08516 4.08516 -156.476 -4.08516 0 0 787024. 2723.27 0.35 0.10 0.14 -1 -1 0.35 0.031599 0.0282974 174 54 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_029.v common 7.65 vpr 64.73 MiB 0.02 6988 -1 -1 1 0.03 -1 -1 34068 -1 -1 17 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66280 32 32 294 246 1 188 81 17 17 289 -1 unnamed_device 26.3 MiB 2.39 1112 8306 2267 5442 597 64.7 MiB 0.08 0.00 2.94175 -107.545 -2.94175 2.94175 1.09 0.000470906 0.000429321 0.0255793 0.023325 34 2632 19 6.89349e+06 239595 618332. 2139.56 1.82 0.138174 0.120893 25762 151098 -1 2322 18 1496 2104 172983 37085 2.96946 2.96946 -127.29 -2.96946 0 0 787024. 2723.27 0.34 0.07 0.15 -1 -1 0.34 0.020266 0.0179349 118 31 54 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_030.v common 7.32 vpr 64.69 MiB 0.03 7068 -1 -1 1 0.04 -1 -1 33852 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 30 32 296 244 1 182 81 17 17 289 -1 unnamed_device 26.3 MiB 2.09 1031 13381 4201 7573 1607 64.7 MiB 0.12 0.00 3.51049 -117.195 -3.51049 3.51049 1.07 0.000463242 0.000421593 0.0387156 0.035273 34 2534 26 6.89349e+06 267783 618332. 2139.56 1.79 0.16094 0.141294 25762 151098 -1 2191 21 1557 2389 185316 39931 3.567 3.567 -135.328 -3.567 0 0 787024. 2723.27 0.36 0.08 0.15 -1 -1 0.36 0.0251408 0.0223581 121 29 60 30 30 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_031.v common 7.31 vpr 64.45 MiB 0.02 7072 -1 -1 1 0.04 -1 -1 33860 -1 -1 21 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66000 28 32 278 232 1 173 81 17 17 289 -1 unnamed_device 26.1 MiB 2.74 978 13731 4039 8075 1617 64.5 MiB 0.12 0.00 3.45729 -108.263 -3.45729 3.45729 1.05 0.000409344 0.000372606 0.0368403 0.0334997 30 2271 44 6.89349e+06 295971 556674. 1926.21 1.16 0.117984 0.103402 25186 138497 -1 1882 21 1207 2031 137888 29980 3.6641 3.6641 -131.075 -3.6641 0 0 706193. 2443.58 0.31 0.07 0.14 -1 -1 0.31 0.0225058 0.0198622 115 27 56 28 28 28 -fixed_k6_frac_uripple_N8_22nm.xml mult_032.v common 6.62 vpr 64.58 MiB 0.02 7024 -1 -1 1 0.04 -1 -1 33992 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.0 MiB 1.39 933 15216 5574 7707 1935 64.6 MiB 0.12 0.00 2.85355 -104.926 -2.85355 2.85355 1.07 0.000489231 0.00044355 0.044451 0.0404812 34 2201 22 6.89349e+06 225501 618332. 2139.56 1.79 0.15228 0.133493 25762 151098 -1 1861 17 1313 2116 138188 32065 3.02916 3.02916 -124.55 -3.02916 0 0 787024. 2723.27 0.33 0.06 0.15 -1 -1 0.33 0.021035 0.0188046 114 -1 96 32 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_033.v common 6.43 vpr 64.72 MiB 0.02 7020 -1 -1 1 0.04 -1 -1 33940 -1 -1 19 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 31 32 303 249 1 191 82 17 17 289 -1 unnamed_device 26.3 MiB 1.81 870 10762 3001 6433 1328 64.7 MiB 0.11 0.00 2.93565 -101.776 -2.93565 2.93565 1.09 0.000522066 0.000478894 0.0320071 0.0292025 32 2746 39 6.89349e+06 267783 586450. 2029.24 1.19 0.116642 0.102925 25474 144626 -1 1969 21 1267 1742 132300 31066 2.98416 2.98416 -120.652 -2.98416 0 0 744469. 2576.02 0.32 0.07 0.14 -1 -1 0.32 0.0236772 0.0209642 121 26 61 31 31 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_034.v common 6.92 vpr 64.84 MiB 0.02 7100 -1 -1 1 0.04 -1 -1 33988 -1 -1 23 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 29 32 312 264 1 201 84 17 17 289 -1 unnamed_device 26.3 MiB 1.95 935 8868 2279 5871 718 64.8 MiB 0.09 0.00 2.91975 -90.5498 -2.91975 2.91975 1.07 0.000506963 0.000462082 0.0262348 0.0239482 34 2226 26 6.89349e+06 324158 618332. 2139.56 1.60 0.133695 0.11632 25762 151098 -1 1780 18 1199 1580 93908 23090 2.98451 2.98451 -106.557 -2.98451 0 0 787024. 2723.27 0.32 0.05 0.15 -1 -1 0.32 0.0205524 0.0181595 130 55 29 29 57 29 -fixed_k6_frac_uripple_N8_22nm.xml mult_035.v common 8.21 vpr 65.31 MiB 0.02 7372 -1 -1 1 0.04 -1 -1 34036 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 32 32 423 310 1 254 91 17 17 289 -1 unnamed_device 26.6 MiB 2.36 1265 16207 4192 9519 2496 65.3 MiB 0.18 0.00 3.73615 -128.74 -3.73615 3.73615 1.03 0.000710299 0.000651697 0.0612631 0.0562728 34 3431 37 6.89349e+06 380534 618332. 2139.56 2.36 0.243626 0.216074 25762 151098 -1 2632 23 2177 3585 253829 57838 3.97376 3.97376 -152.363 -3.97376 0 0 787024. 2723.27 0.34 0.10 0.13 -1 -1 0.34 0.035506 0.0316109 184 26 128 32 27 27 -fixed_k6_frac_uripple_N8_22nm.xml mult_036.v common 8.57 vpr 65.57 MiB 0.03 7240 -1 -1 1 0.04 -1 -1 33896 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67148 32 32 403 317 1 260 89 17 17 289 -1 unnamed_device 26.9 MiB 2.14 1179 14543 5233 7322 1988 65.6 MiB 0.15 0.00 3.39214 -118.219 -3.39214 3.39214 1.13 0.00056988 0.000515434 0.0495424 0.0450314 34 3969 32 6.89349e+06 352346 618332. 2139.56 2.79 0.209111 0.183713 25762 151098 -1 2811 22 2651 3609 303516 67006 3.90255 3.90255 -155.999 -3.90255 0 0 787024. 2723.27 0.34 0.11 0.15 -1 -1 0.34 0.0318762 0.0282632 173 62 62 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_037.v common 6.54 vpr 65.11 MiB 0.02 7300 -1 -1 1 0.04 -1 -1 33932 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 31 32 353 302 1 229 85 17 17 289 -1 unnamed_device 26.3 MiB 1.14 1033 15151 6378 8217 556 65.1 MiB 0.13 0.00 2.90265 -97.7447 -2.90265 2.90265 1.08 0.000536164 0.000487201 0.0443941 0.0403161 34 2688 25 6.89349e+06 310065 618332. 2139.56 1.91 0.171532 0.150696 25762 151098 -1 2109 21 1450 1514 122931 28043 3.04026 3.04026 -115.912 -3.04026 0 0 787024. 2723.27 0.37 0.07 0.15 -1 -1 0.37 0.0267887 0.0238317 143 77 0 0 89 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_038.v common 8.41 vpr 65.48 MiB 0.03 7188 -1 -1 1 0.04 -1 -1 34160 -1 -1 26 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67052 31 32 391 309 1 246 89 17 17 289 -1 unnamed_device 26.8 MiB 2.88 1311 14939 4891 7553 2495 65.5 MiB 0.15 0.00 3.38219 -115.825 -3.38219 3.38219 1.06 0.00058174 0.000532005 0.0475317 0.0434099 34 3319 25 6.89349e+06 366440 618332. 2139.56 1.95 0.191622 0.168284 25762 151098 -1 2595 19 1856 2609 195096 43572 3.4497 3.4497 -136.548 -3.4497 0 0 787024. 2723.27 0.33 0.08 0.16 -1 -1 0.33 0.0277204 0.0245209 170 59 60 30 62 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_039.v common 10.57 vpr 65.41 MiB 0.03 7420 -1 -1 1 0.04 -1 -1 34160 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66980 31 32 455 371 1 307 94 17 17 289 -1 unnamed_device 26.8 MiB 2.39 1565 18412 6105 9754 2553 65.4 MiB 0.18 0.00 4.10624 -137.224 -4.10624 4.10624 1.02 0.000602673 0.000548138 0.0563473 0.0512429 36 3655 28 6.89349e+06 436909 648988. 2245.63 4.67 0.287541 0.251783 26050 158493 -1 2982 21 2376 2664 210410 44916 4.52534 4.52534 -157.282 -4.52534 0 0 828058. 2865.25 0.36 0.10 0.15 -1 -1 0.36 0.0334262 0.0297378 201 111 0 0 124 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_040.v common 11.54 vpr 65.45 MiB 0.03 7424 -1 -1 1 0.04 -1 -1 33964 -1 -1 28 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67024 31 32 413 333 1 269 91 17 17 289 -1 unnamed_device 26.7 MiB 3.05 1417 18043 6920 8436 2687 65.5 MiB 0.16 0.00 4.48427 -140.263 -4.48427 4.48427 1.06 0.000558408 0.000504993 0.0533831 0.0485351 38 3143 31 6.89349e+06 394628 678818. 2348.85 4.88 0.265179 0.23094 26626 170182 -1 2730 20 2058 2842 221857 47211 4.77864 4.77864 -166.892 -4.77864 0 0 902133. 3121.57 0.39 0.09 0.17 -1 -1 0.39 0.0300314 0.0266872 181 86 31 31 89 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_041.v common 7.10 vpr 65.38 MiB 0.02 7444 -1 -1 1 0.04 -1 -1 33888 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 31 32 391 309 1 249 90 17 17 289 -1 unnamed_device 26.7 MiB 1.91 1343 11346 3211 6791 1344 65.4 MiB 0.12 0.00 2.99685 -105.974 -2.99685 2.99685 1.02 0.000638642 0.000588946 0.034921 0.0319904 34 2991 22 6.89349e+06 380534 618332. 2139.56 1.87 0.180041 0.159662 25762 151098 -1 2509 19 2087 2854 190870 44244 3.33921 3.33921 -126.948 -3.33921 0 0 787024. 2723.27 0.34 0.08 0.13 -1 -1 0.34 0.0273603 0.0245115 168 58 60 31 62 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_042.v common 10.32 vpr 65.58 MiB 0.02 7388 -1 -1 1 0.04 -1 -1 34316 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67156 32 32 407 319 1 264 91 17 17 289 -1 unnamed_device 26.9 MiB 2.40 1242 16615 5521 8570 2524 65.6 MiB 0.16 0.00 3.75005 -128.828 -3.75005 3.75005 1.02 0.000548463 0.000498102 0.0490552 0.0445686 40 2657 22 6.89349e+06 380534 706193. 2443.58 4.39 0.234465 0.20371 26914 176310 -1 2455 21 1899 2458 195769 44852 4.17936 4.17936 -156.017 -4.17936 0 0 926341. 3205.33 0.38 0.09 0.18 -1 -1 0.38 0.0301561 0.0267298 178 42 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_043.v common 8.95 vpr 65.48 MiB 0.03 7596 -1 -1 1 0.04 -1 -1 33812 -1 -1 31 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67052 32 32 496 380 1 321 95 17 17 289 -1 unnamed_device 27.1 MiB 2.72 1546 16295 4181 9580 2534 65.5 MiB 0.20 0.00 4.06108 -136.878 -4.06108 4.06108 1.06 0.000725991 0.000660087 0.0604536 0.054984 36 4290 24 6.89349e+06 436909 648988. 2245.63 2.53 0.197722 0.174402 26050 158493 -1 3345 22 2926 4262 321880 70612 4.63405 4.63405 -169.086 -4.63405 0 0 828058. 2865.25 0.36 0.12 0.15 -1 -1 0.36 0.0355239 0.0315628 220 91 62 32 96 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_044.v common 7.19 vpr 64.78 MiB 0.02 7228 -1 -1 1 0.04 -1 -1 33724 -1 -1 20 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 31 32 305 250 1 192 83 17 17 289 -1 unnamed_device 26.3 MiB 2.10 877 11423 4028 5276 2119 64.8 MiB 0.10 0.00 3.1513 -109.15 -3.1513 3.1513 1.08 0.000483234 0.000436707 0.0334984 0.0305164 34 2184 22 6.89349e+06 281877 618332. 2139.56 1.68 0.149747 0.131472 25762 151098 -1 1850 19 1474 1899 137901 32634 2.91301 2.91301 -120.665 -2.91301 0 0 787024. 2723.27 0.34 0.06 0.15 -1 -1 0.34 0.0220467 0.0195736 127 24 62 31 31 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_045.v common 8.33 vpr 65.38 MiB 0.02 7260 -1 -1 1 0.04 -1 -1 34168 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66948 31 32 395 311 1 251 90 17 17 289 -1 unnamed_device 26.7 MiB 2.05 1099 10341 2791 6854 696 65.4 MiB 0.12 0.00 3.99994 -128.709 -3.99994 3.99994 1.06 0.000675111 0.000616945 0.0370014 0.0337416 36 2899 26 6.89349e+06 380534 648988. 2245.63 2.79 0.183874 0.161301 26050 158493 -1 2382 16 1626 2018 129372 31862 4.37725 4.37725 -154.707 -4.37725 0 0 828058. 2865.25 0.34 0.06 0.15 -1 -1 0.34 0.0226715 0.0201334 168 59 62 31 62 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_046.v common 8.27 vpr 65.25 MiB 0.03 7316 -1 -1 1 0.04 -1 -1 34092 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 32 32 397 313 1 254 91 17 17 289 -1 unnamed_device 26.6 MiB 2.30 1327 16003 4972 8499 2532 65.2 MiB 0.16 0.00 3.76109 -127.031 -3.76109 3.76109 1.04 0.000647393 0.00058856 0.0477469 0.0434722 34 3599 25 6.89349e+06 380534 618332. 2139.56 2.46 0.197627 0.173951 25762 151098 -1 2796 19 1678 2593 180850 41756 3.7033 3.7033 -145.865 -3.7033 0 0 787024. 2723.27 0.36 0.08 0.15 -1 -1 0.36 0.0287489 0.0256421 172 54 62 32 62 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_047.v common 6.99 vpr 65.05 MiB 0.02 7064 -1 -1 1 0.04 -1 -1 33796 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66612 32 32 345 257 1 202 85 17 17 289 -1 unnamed_device 26.5 MiB 1.48 1196 17383 5737 10301 1345 65.1 MiB 0.16 0.00 3.58259 -130.98 -3.58259 3.58259 0.99 0.000489113 0.000448967 0.0526126 0.0478799 34 3200 22 6.89349e+06 295971 618332. 2139.56 2.17 0.191538 0.169864 25762 151098 -1 2579 24 2193 3973 283873 63005 3.9236 3.9236 -155.361 -3.9236 0 0 787024. 2723.27 0.34 0.11 0.13 -1 -1 0.34 0.0317166 0.0282848 147 -1 128 32 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_048.v common 7.59 vpr 65.17 MiB 0.02 7212 -1 -1 1 0.04 -1 -1 33864 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66736 32 32 424 343 1 281 92 17 17 289 -1 unnamed_device 26.4 MiB 1.94 1351 18308 6165 9572 2571 65.2 MiB 0.17 0.00 3.53749 -120.41 -3.53749 3.53749 1.01 0.000591168 0.000534879 0.0534042 0.0484835 36 3040 19 6.89349e+06 394628 648988. 2245.63 2.23 0.186763 0.163591 26050 158493 -1 2558 18 1764 2027 157713 35972 3.5498 3.5498 -133.304 -3.5498 0 0 828058. 2865.25 0.35 0.07 0.15 -1 -1 0.35 0.0256906 0.0227261 184 81 25 25 96 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_049.v common 10.27 vpr 65.48 MiB 0.02 7168 -1 -1 1 0.04 -1 -1 33568 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67048 32 32 395 311 1 255 91 17 17 289 -1 unnamed_device 26.8 MiB 2.68 1255 17227 6620 7863 2744 65.5 MiB 0.16 0.00 3.52949 -119.594 -3.52949 3.52949 1.04 0.000548406 0.000499546 0.0518075 0.0470261 36 3423 29 6.89349e+06 380534 648988. 2245.63 4.05 0.194092 0.169756 26050 158493 -1 2501 23 2074 3155 257093 57743 3.7674 3.7674 -143.3 -3.7674 0 0 828058. 2865.25 0.36 0.10 0.16 -1 -1 0.36 0.0320294 0.0283096 169 58 64 32 60 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_050.v common 7.73 vpr 65.59 MiB 0.02 7420 -1 -1 1 0.04 -1 -1 33764 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67168 32 32 405 318 1 260 91 17 17 289 -1 unnamed_device 26.9 MiB 2.12 1354 17431 5133 10513 1785 65.6 MiB 0.19 0.00 2.98875 -108.36 -2.98875 2.98875 1.05 0.000585276 0.000531314 0.0577492 0.0524953 34 3385 30 6.89349e+06 380534 618332. 2139.56 2.10 0.204318 0.179427 25762 151098 -1 2721 22 2384 3315 244953 55370 3.24886 3.24886 -133.679 -3.24886 0 0 787024. 2723.27 0.32 0.09 0.15 -1 -1 0.32 0.0291799 0.0257616 175 61 63 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_051.v common 7.27 vpr 65.24 MiB 0.02 7224 -1 -1 1 0.04 -1 -1 33820 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 32 32 376 288 1 233 88 17 17 289 -1 unnamed_device 26.3 MiB 2.02 1183 9838 2755 6415 668 65.2 MiB 0.11 0.00 3.69075 -132.346 -3.69075 3.69075 1.04 0.000589981 0.000535739 0.0329503 0.0302744 34 2957 23 6.89349e+06 338252 618332. 2139.56 1.85 0.17449 0.154193 25762 151098 -1 2384 24 2020 2944 226473 49629 4.05996 4.05996 -156.446 -4.05996 0 0 787024. 2723.27 0.33 0.09 0.15 -1 -1 0.33 0.0303053 0.0265459 161 21 96 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_052.v common 6.94 vpr 65.62 MiB 0.02 7280 -1 -1 1 0.04 -1 -1 34200 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67192 32 32 407 319 1 264 91 17 17 289 -1 unnamed_device 26.9 MiB 1.60 1279 9475 2150 6759 566 65.6 MiB 0.10 0.00 3.72815 -130.456 -3.72815 3.72815 1.03 0.000605232 0.000553172 0.0297719 0.0270263 38 2837 20 6.89349e+06 380534 678818. 2348.85 1.87 0.168616 0.148098 26626 170182 -1 2603 19 2016 2557 178902 38839 3.89586 3.89586 -152.177 -3.89586 0 0 902133. 3121.57 0.38 0.08 0.16 -1 -1 0.38 0.0275239 0.024532 177 50 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_053.v common 7.21 vpr 65.61 MiB 0.02 7412 -1 -1 1 0.04 -1 -1 34268 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67184 31 32 449 367 1 300 94 17 17 289 -1 unnamed_device 27.0 MiB 1.46 1553 9466 2213 6438 815 65.6 MiB 0.11 0.00 3.94494 -124.97 -3.94494 3.94494 1.01 0.000791358 0.000729344 0.0344846 0.0317574 36 3537 33 6.89349e+06 436909 648988. 2245.63 2.42 0.208063 0.183691 26050 158493 -1 2868 19 1847 2180 151713 34700 4.0021 4.0021 -143.144 -4.0021 0 0 828058. 2865.25 0.35 0.08 0.14 -1 -1 0.35 0.0307056 0.0274748 195 110 0 0 122 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_054.v common 9.36 vpr 65.59 MiB 0.02 7232 -1 -1 1 0.04 -1 -1 33948 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67164 32 32 432 346 1 287 91 17 17 289 -1 unnamed_device 26.8 MiB 3.25 1497 12943 3721 8398 824 65.6 MiB 0.14 0.00 3.77645 -131.13 -3.77645 3.77645 1.06 0.000710216 0.000650839 0.0440181 0.0401589 34 3886 28 6.89349e+06 380534 618332. 2139.56 2.63 0.200336 0.176724 25762 151098 -1 3096 23 2833 4141 302579 66753 4.079 4.079 -154.706 -4.079 0 0 787024. 2723.27 0.34 0.11 0.14 -1 -1 0.34 0.032596 0.0287749 190 86 32 32 94 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_055.v common 6.98 vpr 64.59 MiB 0.02 6968 -1 -1 1 0.03 -1 -1 34220 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 32 32 312 255 1 198 85 17 17 289 -1 unnamed_device 26.2 MiB 1.98 1056 12733 3970 7769 994 64.6 MiB 0.11 0.00 2.93565 -109.645 -2.93565 2.93565 1.01 0.000515327 0.000469648 0.0341733 0.0311483 34 2464 31 6.89349e+06 295971 618332. 2139.56 1.74 0.149062 0.130371 25762 151098 -1 1966 21 1293 1872 118068 27494 2.86186 2.86186 -122.455 -2.86186 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0215929 0.0189793 127 20 63 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_056.v common 7.21 vpr 65.22 MiB 0.02 7048 -1 -1 1 0.03 -1 -1 33576 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66788 32 32 370 314 1 250 85 17 17 289 -1 unnamed_device 26.6 MiB 1.86 1255 9943 2487 6713 743 65.2 MiB 0.11 0.00 3.40739 -119.801 -3.40739 3.40739 1.07 0.000544376 0.000495465 0.0316452 0.0288724 34 3229 29 6.89349e+06 295971 618332. 2139.56 1.95 0.1671 0.146454 25762 151098 -1 2531 21 1962 2374 184173 40269 3.66399 3.66399 -142.771 -3.66399 0 0 787024. 2723.27 0.33 0.08 0.15 -1 -1 0.33 0.0256438 0.0225946 154 91 0 0 94 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_057.v common 8.71 vpr 65.63 MiB 0.03 7328 -1 -1 1 0.04 -1 -1 34340 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67208 32 32 469 351 1 298 94 17 17 289 -1 unnamed_device 27.1 MiB 2.29 1646 16495 6866 8714 915 65.6 MiB 0.18 0.00 4.44419 -152.513 -4.44419 4.44419 1.03 0.000716414 0.000650912 0.0538774 0.0490629 34 5030 49 6.89349e+06 422815 618332. 2139.56 2.88 0.216398 0.189725 25762 151098 -1 3445 26 3213 4451 333871 77768 5.0126 5.0126 -187.928 -5.0126 0 0 787024. 2723.27 0.33 0.13 0.15 -1 -1 0.33 0.0391615 0.0347296 209 53 96 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_058.v common 7.70 vpr 65.29 MiB 0.02 7224 -1 -1 1 0.04 -1 -1 33792 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66856 32 32 368 284 1 225 87 17 17 289 -1 unnamed_device 26.4 MiB 2.24 1131 14487 4595 7729 2163 65.3 MiB 0.14 0.00 3.029 -109.871 -3.029 3.029 1.04 0.000576491 0.00052531 0.0461216 0.0420411 34 2852 20 6.89349e+06 324158 618332. 2139.56 2.03 0.180843 0.159653 25762 151098 -1 2311 20 1835 2677 211801 46715 3.11861 3.11861 -125.849 -3.11861 0 0 787024. 2723.27 0.34 0.08 0.15 -1 -1 0.34 0.0267899 0.0237108 156 31 92 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_059.v common 6.51 vpr 64.89 MiB 0.02 7236 -1 -1 1 0.04 -1 -1 33856 -1 -1 32 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 30 32 296 244 1 183 94 17 17 289 -1 unnamed_device 26.4 MiB 1.41 945 18199 5085 11326 1788 64.9 MiB 0.15 0.00 3.49649 -110.717 -3.49649 3.49649 1.09 0.00047206 0.000418492 0.04202 0.0379413 34 2174 23 6.89349e+06 451003 618332. 2139.56 1.65 0.151928 0.133158 25762 151098 -1 1813 19 1208 1852 117722 28019 3.3164 3.3164 -122.91 -3.3164 0 0 787024. 2723.27 0.34 0.06 0.15 -1 -1 0.34 0.0218483 0.0193884 129 29 60 30 30 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_060.v common 9.03 vpr 65.83 MiB 0.03 7512 -1 -1 1 0.04 -1 -1 34612 -1 -1 35 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67412 32 32 531 413 1 356 99 17 17 289 -1 unnamed_device 27.4 MiB 2.26 1818 21987 7425 11800 2762 65.8 MiB 0.26 0.00 4.71793 -158.706 -4.71793 4.71793 1.04 0.000931619 0.000838186 0.0788667 0.0715008 36 4369 27 6.89349e+06 493284 648988. 2245.63 3.08 0.251747 0.221558 26050 158493 -1 3498 23 2995 3667 264216 59386 5.64954 5.64954 -189.915 -5.64954 0 0 828058. 2865.25 0.33 0.11 0.15 -1 -1 0.33 0.0379804 0.0336892 239 109 32 32 128 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_061.v common 6.82 vpr 65.35 MiB 0.02 7200 -1 -1 1 0.04 -1 -1 33884 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66916 32 32 376 288 1 225 87 17 17 289 -1 unnamed_device 26.5 MiB 1.55 1149 12375 3766 7581 1028 65.3 MiB 0.12 0.00 3.54039 -127.102 -3.54039 3.54039 1.02 0.000658908 0.000609873 0.0400045 0.0365045 34 3011 40 6.89349e+06 324158 618332. 2139.56 1.93 0.202314 0.179417 25762 151098 -1 2444 24 2403 3273 242467 54862 4.13836 4.13836 -157.648 -4.13836 0 0 787024. 2723.27 0.34 0.10 0.13 -1 -1 0.34 0.0319193 0.0284553 159 31 96 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_062.v common 5.24 vpr 64.83 MiB 0.02 7152 -1 -1 1 0.04 -1 -1 33936 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 283 225 1 168 97 17 17 289 -1 unnamed_device 26.4 MiB 0.68 789 10309 2500 6824 985 64.8 MiB 0.09 0.00 2.98385 -103.889 -2.98385 2.98385 1.07 0.000491056 0.000445825 0.0230817 0.0210657 28 2317 20 6.89349e+06 465097 531479. 1839.03 1.22 0.0890479 0.0781538 24610 126494 -1 2041 21 1464 2354 203784 45164 3.00416 3.00416 -126.018 -3.00416 0 0 648988. 2245.63 0.28 0.08 0.13 -1 -1 0.28 0.0227899 0.0200492 123 -1 96 32 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_063.v common 8.57 vpr 65.55 MiB 0.03 7220 -1 -1 1 0.04 -1 -1 34572 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67124 32 32 438 320 1 267 93 17 17 289 -1 unnamed_device 26.8 MiB 2.39 1530 14163 4447 7626 2090 65.6 MiB 0.16 0.00 4.29569 -150.238 -4.29569 4.29569 1.04 0.000594744 0.000539167 0.0485275 0.04414 34 3958 37 6.89349e+06 408721 618332. 2139.56 2.72 0.20993 0.18372 25762 151098 -1 3210 20 2509 3893 347853 70680 5.1379 5.1379 -187.928 -5.1379 0 0 787024. 2723.27 0.32 0.11 0.15 -1 -1 0.32 0.0295804 0.0262972 194 26 128 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_064.v common 6.35 vpr 64.69 MiB 0.02 6980 -1 -1 1 0.04 -1 -1 33992 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.1 MiB 1.07 694 14528 4241 8915 1372 64.7 MiB 0.11 0.00 3.095 -107.662 -3.095 3.095 1.04 0.000429956 0.000391656 0.0385448 0.035083 34 2149 44 6.89349e+06 225501 618332. 2139.56 1.86 0.160924 0.140614 25762 151098 -1 1733 20 1473 2418 161661 39128 3.16251 3.16251 -128.422 -3.16251 0 0 787024. 2723.27 0.35 0.07 0.15 -1 -1 0.35 0.0220206 0.019469 114 -1 96 32 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_065.v common 6.97 vpr 64.91 MiB 0.02 7260 -1 -1 1 0.03 -1 -1 34028 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 30 32 296 244 1 185 81 17 17 289 -1 unnamed_device 26.5 MiB 1.50 804 9706 2280 6953 473 64.9 MiB 0.09 0.00 2.94665 -97.2537 -2.94665 2.94665 1.09 0.000467175 0.000426178 0.0277809 0.0253051 34 2311 43 6.89349e+06 267783 618332. 2139.56 2.01 0.134706 0.118468 25762 151098 -1 1756 22 1442 1940 151945 34319 2.96661 2.96661 -114.95 -2.96661 0 0 787024. 2723.27 0.36 0.07 0.15 -1 -1 0.36 0.0228993 0.0201806 121 29 60 30 30 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_066.v common 7.15 vpr 65.05 MiB 0.02 7508 -1 -1 1 0.04 -1 -1 34136 -1 -1 31 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 29 32 393 319 1 253 92 17 17 289 -1 unnamed_device 26.4 MiB 1.84 1264 14996 3942 9257 1797 65.0 MiB 0.14 0.00 3.34494 -104.206 -3.34494 3.34494 1.06 0.000935132 0.000800925 0.0449787 0.0407322 34 2819 23 6.89349e+06 436909 618332. 2139.56 1.76 0.180781 0.158753 25762 151098 -1 2347 20 1692 2301 166504 38081 3.3197 3.3197 -120.824 -3.3197 0 0 787024. 2723.27 0.36 0.07 0.15 -1 -1 0.36 0.0273101 0.0242668 171 81 29 29 85 29 -fixed_k6_frac_uripple_N8_22nm.xml mult_067.v common 7.57 vpr 65.40 MiB 0.02 7128 -1 -1 1 0.04 -1 -1 34156 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66972 32 32 407 319 1 264 90 17 17 289 -1 unnamed_device 26.7 MiB 2.18 1407 14361 3814 9147 1400 65.4 MiB 0.14 0.00 4.41804 -153.474 -4.41804 4.41804 1.03 0.000791737 0.000733174 0.0499284 0.0455935 34 3640 38 6.89349e+06 366440 618332. 2139.56 1.96 0.213724 0.189537 25762 151098 -1 3024 23 2587 3647 299472 66442 4.78315 4.78315 -181.114 -4.78315 0 0 787024. 2723.27 0.34 0.11 0.13 -1 -1 0.34 0.0334852 0.0299717 178 53 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_068.v common 8.20 vpr 65.54 MiB 0.03 7220 -1 -1 1 0.04 -1 -1 34408 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67112 32 32 407 319 1 264 90 17 17 289 -1 unnamed_device 26.8 MiB 2.08 1278 16974 4849 9416 2709 65.5 MiB 0.17 0.00 4.06404 -140.706 -4.06404 4.06404 1.08 0.000659395 0.000600318 0.056027 0.0511367 36 3208 25 6.89349e+06 366440 648988. 2245.63 2.50 0.202801 0.179194 26050 158493 -1 2630 20 2148 3052 235390 50333 4.33495 4.33495 -162.727 -4.33495 0 0 828058. 2865.25 0.37 0.09 0.15 -1 -1 0.37 0.0290382 0.0259206 175 55 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_069.v common 6.85 vpr 64.97 MiB 0.02 7108 -1 -1 1 0.04 -1 -1 34200 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66532 32 32 345 287 1 218 85 17 17 289 -1 unnamed_device 26.4 MiB 1.58 1094 13291 3976 7145 2170 65.0 MiB 0.12 0.00 3.42319 -121.693 -3.42319 3.42319 1.03 0.000502175 0.00045739 0.040463 0.036678 34 2596 22 6.89349e+06 295971 618332. 2139.56 1.81 0.167605 0.147395 25762 151098 -1 2166 20 1448 1603 106038 25581 3.4827 3.4827 -138.261 -3.4827 0 0 787024. 2723.27 0.37 0.06 0.15 -1 -1 0.37 0.0253154 0.0225665 141 55 32 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_070.v common 7.29 vpr 65.38 MiB 0.02 7368 -1 -1 1 0.04 -1 -1 34016 -1 -1 22 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 31 32 353 302 1 231 85 17 17 289 -1 unnamed_device 26.5 MiB 2.19 1021 7339 1752 5245 342 65.4 MiB 0.07 0.00 3.36019 -110.352 -3.36019 3.36019 1.00 0.000515768 0.000468784 0.0225004 0.0204804 34 2614 31 6.89349e+06 310065 618332. 2139.56 1.82 0.151879 0.131705 25762 151098 -1 1930 21 1374 1716 114000 27704 3.2725 3.2725 -124.625 -3.2725 0 0 787024. 2723.27 0.32 0.06 0.15 -1 -1 0.32 0.0248294 0.0218399 146 82 0 0 89 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_071.v common 8.14 vpr 65.11 MiB 0.03 7308 -1 -1 1 0.04 -1 -1 34176 -1 -1 29 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 30 32 374 297 1 236 91 17 17 289 -1 unnamed_device 26.5 MiB 2.48 1201 18043 5595 9658 2790 65.1 MiB 0.19 0.00 3.073 -103.876 -3.073 3.073 1.08 0.000644381 0.000590709 0.0520454 0.0474889 34 3015 41 6.89349e+06 408721 618332. 2139.56 2.02 0.202112 0.176646 25762 151098 -1 2296 20 1691 2467 166809 38954 3.09331 3.09331 -119.881 -3.09331 0 0 787024. 2723.27 0.35 0.08 0.15 -1 -1 0.35 0.025716 0.0227618 164 52 60 30 57 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_072.v common 6.96 vpr 64.91 MiB 0.03 7400 -1 -1 1 0.04 -1 -1 34024 -1 -1 27 28 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66472 28 32 332 260 1 203 87 17 17 289 -1 unnamed_device 26.4 MiB 1.56 1016 15063 5032 7248 2783 64.9 MiB 0.15 0.00 3.63875 -113.277 -3.63875 3.63875 1.09 0.000487292 0.000441311 0.0446009 0.0405931 34 2379 23 6.89349e+06 380534 618332. 2139.56 1.85 0.165443 0.144873 25762 151098 -1 2017 20 1487 2087 146302 33230 3.99576 3.99576 -131.659 -3.99576 0 0 787024. 2723.27 0.36 0.07 0.15 -1 -1 0.36 0.0244827 0.0215333 145 20 84 28 28 28 -fixed_k6_frac_uripple_N8_22nm.xml mult_073.v common 8.37 vpr 64.76 MiB 0.02 7224 -1 -1 1 0.04 -1 -1 33740 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 30 32 325 273 1 208 83 17 17 289 -1 unnamed_device 26.2 MiB 2.47 1073 10883 2968 7182 733 64.8 MiB 0.11 0.00 3.43529 -112.681 -3.43529 3.43529 1.08 0.000499946 0.000454937 0.03206 0.0291488 34 2824 45 6.89349e+06 295971 618332. 2139.56 2.43 0.175518 0.15341 25762 151098 -1 2228 23 1748 2379 184818 41336 3.83965 3.83965 -142.615 -3.83965 0 0 787024. 2723.27 0.33 0.07 0.15 -1 -1 0.33 0.0248551 0.0218294 136 58 30 30 60 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_074.v common 7.86 vpr 65.24 MiB 0.02 7064 -1 -1 1 0.04 -1 -1 33796 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66808 32 32 361 308 1 245 85 17 17 289 -1 unnamed_device 26.4 MiB 2.21 1411 14593 4097 8476 2020 65.2 MiB 0.15 0.00 3.0132 -107.87 -3.0132 3.0132 1.12 0.000621261 0.000570544 0.0464549 0.0422958 34 3393 25 6.89349e+06 295971 618332. 2139.56 1.99 0.15278 0.134902 25762 151098 -1 2646 22 2024 2396 193378 41799 3.13881 3.13881 -126.515 -3.13881 0 0 787024. 2723.27 0.35 0.09 0.15 -1 -1 0.35 0.0290795 0.0259205 150 88 0 0 91 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_075.v common 5.85 vpr 65.15 MiB 0.02 7260 -1 -1 1 0.04 -1 -1 33728 -1 -1 37 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66712 31 32 335 251 1 197 100 17 17 289 -1 unnamed_device 26.4 MiB 0.96 1065 10540 2526 7277 737 65.1 MiB 0.11 0.00 3.42729 -118.406 -3.42729 3.42729 1.10 0.000666455 0.000604197 0.0276244 0.0251138 32 3133 39 6.89349e+06 521472 586450. 2029.24 1.33 0.121492 0.106654 25474 144626 -1 2478 22 1860 2983 234678 52965 4.0207 4.0207 -151.288 -4.0207 0 0 744469. 2576.02 0.33 0.10 0.15 -1 -1 0.33 0.0281445 0.0246739 151 -1 124 31 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_076.v common 8.17 vpr 65.49 MiB 0.03 7108 -1 -1 1 0.04 -1 -1 34044 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67064 32 32 407 319 1 257 90 17 17 289 -1 unnamed_device 26.8 MiB 1.70 1317 17175 5692 9343 2140 65.5 MiB 0.18 0.00 4.01088 -138.915 -4.01088 4.01088 1.06 0.000620937 0.000557922 0.0541031 0.0490003 34 3482 41 6.89349e+06 366440 618332. 2139.56 2.91 0.220123 0.192051 25762 151098 -1 2911 22 2051 2651 192484 44243 4.15649 4.15649 -160.193 -4.15649 0 0 787024. 2723.27 0.33 0.09 0.15 -1 -1 0.33 0.0307326 0.0271356 173 57 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_077.v common 8.85 vpr 65.18 MiB 0.02 7436 -1 -1 1 0.04 -1 -1 34068 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 407 319 1 256 90 17 17 289 -1 unnamed_device 26.5 MiB 2.09 1430 16572 5142 9440 1990 65.2 MiB 0.19 0.00 3.97668 -139.51 -3.97668 3.97668 1.11 0.000601201 0.000547024 0.0568293 0.0517326 34 3648 27 6.89349e+06 366440 618332. 2139.56 3.04 0.211933 0.187043 25762 151098 -1 2925 21 2619 3693 335866 69299 4.46955 4.46955 -173.325 -4.46955 0 0 787024. 2723.27 0.36 0.12 0.15 -1 -1 0.36 0.0331179 0.0296705 171 62 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_078.v common 8.41 vpr 65.34 MiB 0.04 7376 -1 -1 1 0.04 -1 -1 33752 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66904 32 32 399 315 1 257 91 17 17 289 -1 unnamed_device 26.6 MiB 2.24 1379 11107 3001 7111 995 65.3 MiB 0.13 0.00 3.38904 -118.803 -3.38904 3.38904 1.09 0.000581897 0.000529626 0.0362346 0.0329174 34 3700 23 6.89349e+06 380534 618332. 2139.56 2.51 0.151405 0.132934 25762 151098 -1 2910 22 2049 3001 262718 54281 3.6673 3.6673 -138.594 -3.6673 0 0 787024. 2723.27 0.36 0.11 0.15 -1 -1 0.36 0.03343 0.0296856 172 62 60 30 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_079.v common 7.63 vpr 64.75 MiB 0.02 7028 -1 -1 1 0.04 -1 -1 33780 -1 -1 19 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 30 32 296 244 1 185 81 17 17 289 -1 unnamed_device 26.3 MiB 2.14 960 13381 4925 6634 1822 64.8 MiB 0.11 0.00 3.0572 -103.07 -3.0572 3.0572 1.08 0.000442695 0.000403607 0.0380819 0.0347106 34 2504 23 6.89349e+06 267783 618332. 2139.56 2.00 0.133433 0.117656 25762 151098 -1 2120 20 1635 2317 174071 38445 3.36365 3.36365 -125.555 -3.36365 0 0 787024. 2723.27 0.34 0.07 0.15 -1 -1 0.34 0.0232669 0.0204788 122 29 60 30 30 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_080.v common 8.66 vpr 65.05 MiB 0.02 7424 -1 -1 1 0.04 -1 -1 34036 -1 -1 26 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 30 32 383 303 1 241 88 17 17 289 -1 unnamed_device 26.4 MiB 2.86 1227 11593 3110 7061 1422 65.1 MiB 0.13 0.00 4.05614 -130.89 -4.05614 4.05614 1.09 0.000645255 0.00059266 0.0400935 0.0365721 34 3359 29 6.89349e+06 366440 618332. 2139.56 2.22 0.194151 0.171228 25762 151098 -1 2712 21 2253 3098 256326 55609 4.67538 4.67538 -163.938 -4.67538 0 0 787024. 2723.27 0.34 0.10 0.15 -1 -1 0.34 0.0303839 0.0269146 165 58 60 30 60 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_081.v common 7.25 vpr 65.94 MiB 0.03 7452 -1 -1 1 0.04 -1 -1 34212 -1 -1 30 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67524 32 32 469 381 1 316 94 17 17 289 -1 unnamed_device 27.2 MiB 1.52 1525 18412 6475 9165 2772 65.9 MiB 0.18 0.00 3.78021 -128.627 -3.78021 3.78021 1.08 0.000610136 0.000554199 0.0596781 0.0542839 34 3886 35 6.89349e+06 422815 618332. 2139.56 2.10 0.22727 0.198874 25762 151098 -1 2878 19 1953 2029 145347 33641 4.08565 4.08565 -147.867 -4.08565 0 0 787024. 2723.27 0.35 0.08 0.16 -1 -1 0.35 0.031009 0.0275794 204 106 0 0 128 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_082.v common 7.71 vpr 65.20 MiB 0.03 7340 -1 -1 1 0.04 -1 -1 33736 -1 -1 29 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 31 32 425 341 1 280 92 17 17 289 -1 unnamed_device 26.4 MiB 2.04 1393 19136 6668 9726 2742 65.2 MiB 0.19 0.00 4.06524 -136.981 -4.06524 4.06524 1.04 0.000569677 0.000516664 0.0588819 0.0535435 34 3526 23 6.89349e+06 408721 618332. 2139.56 2.13 0.20299 0.178348 25762 151098 -1 2753 22 2387 3029 240363 52776 4.26595 4.26595 -158.98 -4.26595 0 0 787024. 2723.27 0.33 0.09 0.15 -1 -1 0.33 0.0312864 0.0277314 186 79 31 31 93 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_083.v common 8.85 vpr 65.40 MiB 0.03 7520 -1 -1 1 0.04 -1 -1 34176 -1 -1 28 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66972 30 32 404 328 1 261 90 17 17 289 -1 unnamed_device 26.7 MiB 2.63 1290 17979 6200 8661 3118 65.4 MiB 0.19 0.00 3.43529 -109.863 -3.43529 3.43529 1.08 0.000631396 0.000574088 0.0589798 0.053643 34 3702 30 6.89349e+06 394628 618332. 2139.56 2.55 0.209158 0.183451 25762 151098 -1 2630 21 2280 3202 212738 50066 4.0013 4.0013 -144.095 -4.0013 0 0 787024. 2723.27 0.37 0.10 0.15 -1 -1 0.37 0.0327444 0.0292819 175 83 26 26 90 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_084.v common 8.30 vpr 65.20 MiB 0.03 7408 -1 -1 1 0.04 -1 -1 34032 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66768 32 32 407 319 1 264 90 17 17 289 -1 unnamed_device 26.5 MiB 2.26 1360 12351 3553 7505 1293 65.2 MiB 0.14 0.00 4.26754 -148.225 -4.26754 4.26754 1.06 0.000660337 0.000599137 0.0404573 0.0368014 36 3139 30 6.89349e+06 366440 648988. 2245.63 2.45 0.195283 0.171447 26050 158493 -1 2654 19 2257 3173 212921 47204 4.53845 4.53845 -172.242 -4.53845 0 0 828058. 2865.25 0.37 0.09 0.15 -1 -1 0.37 0.0288357 0.0257524 177 58 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_085.v common 7.92 vpr 65.19 MiB 0.03 7516 -1 -1 1 0.04 -1 -1 33916 -1 -1 30 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 29 32 387 316 1 251 91 17 17 289 -1 unnamed_device 26.5 MiB 2.49 1238 17635 6241 8637 2757 65.2 MiB 0.17 0.00 3.58265 -110.144 -3.58265 3.58265 1.08 0.000551672 0.000501761 0.0522969 0.0476481 34 3047 28 6.89349e+06 422815 618332. 2139.56 1.82 0.191735 0.168269 25762 151098 -1 2481 22 1966 2696 202873 46022 3.4188 3.4188 -120.996 -3.4188 0 0 787024. 2723.27 0.33 0.09 0.15 -1 -1 0.33 0.0302218 0.0265444 170 81 26 26 85 29 -fixed_k6_frac_uripple_N8_22nm.xml mult_086.v common 5.81 vpr 64.70 MiB 0.02 7036 -1 -1 1 0.03 -1 -1 33768 -1 -1 16 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66252 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.1 MiB 0.65 904 14528 6129 7546 853 64.7 MiB 0.12 0.00 3.037 -110.339 -3.037 3.037 1.05 0.000434054 0.000395215 0.0402583 0.0367107 34 2394 21 6.89349e+06 225501 618332. 2139.56 1.80 0.149636 0.131197 25762 151098 -1 1994 22 1487 2381 184836 41981 3.30791 3.30791 -135.019 -3.30791 0 0 787024. 2723.27 0.33 0.07 0.15 -1 -1 0.33 0.0230694 0.0203276 114 -1 96 32 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_087.v common 7.94 vpr 65.41 MiB 0.02 7188 -1 -1 1 0.04 -1 -1 34020 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66976 32 32 407 319 1 259 91 17 17 289 -1 unnamed_device 26.7 MiB 1.96 1357 15187 5146 7392 2649 65.4 MiB 0.16 0.00 4.17757 -143.737 -4.17757 4.17757 1.09 0.00058879 0.000536416 0.0490387 0.0445906 34 3550 36 6.89349e+06 380534 618332. 2139.56 2.42 0.210707 0.184401 25762 151098 -1 2699 21 2400 3333 223146 52376 4.60575 4.60575 -172.232 -4.60575 0 0 787024. 2723.27 0.35 0.10 0.15 -1 -1 0.35 0.0314079 0.0278 174 62 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_088.v common 9.75 vpr 65.57 MiB 0.02 7148 -1 -1 1 0.04 -1 -1 33900 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67148 32 32 407 319 1 263 89 17 17 289 -1 unnamed_device 26.8 MiB 3.18 1456 15731 4179 10070 1482 65.6 MiB 0.17 0.00 4.08298 -143.347 -4.08298 4.08298 1.05 0.000544272 0.000494601 0.050351 0.0458051 36 3450 23 6.89349e+06 352346 648988. 2245.63 3.00 0.207217 0.182366 26050 158493 -1 2869 22 2454 3508 282328 59862 4.44208 4.44208 -168.935 -4.44208 0 0 828058. 2865.25 0.37 0.11 0.16 -1 -1 0.37 0.0319464 0.0283576 176 62 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_089.v common 7.20 vpr 64.71 MiB 0.02 7032 -1 -1 1 0.03 -1 -1 33804 -1 -1 19 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 32 32 315 267 1 204 83 17 17 289 -1 unnamed_device 26.3 MiB 1.97 1019 13943 4662 6551 2730 64.7 MiB 0.12 0.00 2.7431 -96.9372 -2.7431 2.7431 1.05 0.000523131 0.000476537 0.0405841 0.0369049 34 2482 37 6.89349e+06 267783 618332. 2139.56 1.81 0.140424 0.122996 25762 151098 -1 2022 20 1413 1680 120991 27993 2.87926 2.87926 -112.839 -2.87926 0 0 787024. 2723.27 0.35 0.06 0.16 -1 -1 0.35 0.0236308 0.0209007 128 47 32 32 54 27 -fixed_k6_frac_uripple_N8_22nm.xml mult_090.v common 5.27 vpr 64.55 MiB 0.02 6984 -1 -1 1 0.03 -1 -1 33892 -1 -1 17 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 31 32 275 220 1 164 80 17 17 289 -1 unnamed_device 26.1 MiB 0.88 854 12636 5045 6554 1037 64.6 MiB 0.10 0.00 3.07 -108.66 -3.07 3.07 0.98 0.000427737 0.000388557 0.033328 0.0304123 32 2382 41 6.89349e+06 239595 586450. 2029.24 1.17 0.110986 0.0965191 25474 144626 -1 1891 23 1495 2358 204326 44583 3.24376 3.24376 -130.299 -3.24376 0 0 744469. 2576.02 0.34 0.08 0.14 -1 -1 0.34 0.0253604 0.0225358 112 -1 93 31 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_091.v common 6.94 vpr 65.44 MiB 0.02 7412 -1 -1 1 0.04 -1 -1 34000 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67008 32 32 381 303 1 240 89 17 17 289 -1 unnamed_device 26.8 MiB 1.72 1154 17117 5508 8882 2727 65.4 MiB 0.16 0.00 3.44139 -117.05 -3.44139 3.44139 0.97 0.000552702 0.00050477 0.0514164 0.0468409 34 3013 32 6.89349e+06 352346 618332. 2139.56 1.88 0.191447 0.167735 25762 151098 -1 2283 21 1695 2164 158832 37178 3.7287 3.7287 -136.336 -3.7287 0 0 787024. 2723.27 0.35 0.08 0.15 -1 -1 0.35 0.029148 0.0259366 158 56 60 32 58 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_092.v common 6.74 vpr 65.43 MiB 0.02 7172 -1 -1 1 0.04 -1 -1 33996 -1 -1 26 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67004 32 32 406 330 1 261 90 17 17 289 -1 unnamed_device 26.7 MiB 1.87 1337 11949 3229 8099 621 65.4 MiB 0.11 0.00 4.07324 -126.534 -4.07324 4.07324 0.94 0.000549902 0.000499679 0.035159 0.0320142 34 3110 31 6.89349e+06 366440 618332. 2139.56 1.71 0.167807 0.146198 25762 151098 -1 2402 21 1790 2142 135093 33001 4.37535 4.37535 -154.355 -4.37535 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.0274547 0.0242393 170 81 28 28 88 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_093.v common 5.32 vpr 65.23 MiB 0.02 7412 -1 -1 1 0.04 -1 -1 34064 -1 -1 41 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66792 32 32 399 285 1 232 105 17 17 289 -1 unnamed_device 26.5 MiB 0.96 1223 7762 1466 5664 632 65.2 MiB 0.09 0.00 3.93858 -131.612 -3.93858 3.93858 0.97 0.000598006 0.000543521 0.0209038 0.0190667 30 3089 24 6.89349e+06 577847 556674. 1926.21 1.18 0.103294 0.0907864 25186 138497 -1 2395 20 1826 3098 181398 41871 4.20149 4.20149 -155.966 -4.20149 0 0 706193. 2443.58 0.30 0.08 0.13 -1 -1 0.30 0.0279153 0.024791 183 -1 156 32 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_094.v common 6.98 vpr 65.33 MiB 0.02 7240 -1 -1 1 0.03 -1 -1 34164 -1 -1 27 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66896 30 32 371 295 1 235 89 17 17 289 -1 unnamed_device 26.7 MiB 1.92 1196 16325 4951 8946 2428 65.3 MiB 0.14 0.00 3.1264 -105.487 -3.1264 3.1264 1.00 0.000535862 0.000482054 0.0458191 0.0418273 34 2878 34 6.89349e+06 380534 618332. 2139.56 1.80 0.17416 0.152701 25762 151098 -1 2317 19 1759 2441 175729 39368 3.14671 3.14671 -124.321 -3.14671 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0245582 0.0219082 160 47 60 30 56 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_095.v common 5.57 vpr 64.71 MiB 0.02 7224 -1 -1 1 0.03 -1 -1 34204 -1 -1 22 27 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66264 27 32 269 226 1 168 81 17 17 289 -1 unnamed_device 26.4 MiB 1.38 723 13206 3673 8356 1177 64.7 MiB 0.09 0.00 3.46649 -97.3833 -3.46649 3.46649 0.99 0.000419156 0.000379689 0.0314912 0.0286493 28 2133 26 6.89349e+06 310065 531479. 1839.03 1.12 0.0954133 0.0843582 24610 126494 -1 1595 21 1420 1981 136158 37018 3.534 3.534 -121.5 -3.534 0 0 648988. 2245.63 0.27 0.06 0.12 -1 -1 0.27 0.0187837 0.0164704 112 26 54 27 27 27 -fixed_k6_frac_uripple_N8_22nm.xml mult_096.v common 9.49 vpr 65.96 MiB 0.02 7512 -1 -1 1 0.04 -1 -1 33996 -1 -1 32 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67548 32 32 493 378 1 322 96 17 17 289 -1 unnamed_device 27.2 MiB 2.09 1725 10389 2610 7051 728 66.0 MiB 0.13 0.00 4.08424 -139.831 -4.08424 4.08424 0.96 0.00064463 0.000584771 0.0335132 0.0304503 36 4600 29 6.89349e+06 451003 648988. 2245.63 4.13 0.19063 0.166583 26050 158493 -1 3561 19 2516 3589 304945 62786 4.33515 4.33515 -161.408 -4.33515 0 0 828058. 2865.25 0.32 0.10 0.15 -1 -1 0.32 0.0290747 0.025832 219 85 62 31 95 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_097.v common 8.02 vpr 65.77 MiB 0.02 7492 -1 -1 1 0.04 -1 -1 34188 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67348 31 32 455 371 1 306 94 17 17 289 -1 unnamed_device 27.1 MiB 2.61 1511 17560 5754 9229 2577 65.8 MiB 0.17 0.00 4.14544 -139.976 -4.14544 4.14544 0.95 0.00059832 0.000541044 0.052967 0.0480776 34 3807 29 6.89349e+06 436909 618332. 2139.56 2.18 0.196856 0.172248 25762 151098 -1 2962 21 2586 3020 225797 51082 4.60875 4.60875 -168.066 -4.60875 0 0 787024. 2723.27 0.30 0.08 0.14 -1 -1 0.30 0.0285148 0.0252419 201 105 0 0 124 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_098.v common 7.22 vpr 65.04 MiB 0.02 7372 -1 -1 1 0.03 -1 -1 33896 -1 -1 22 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 32 32 355 304 1 245 86 17 17 289 -1 unnamed_device 26.2 MiB 2.24 1238 12371 3446 8070 855 65.0 MiB 0.11 0.00 3.56679 -119.039 -3.56679 3.56679 0.95 0.000525575 0.000470698 0.0352778 0.0319323 34 3157 37 6.89349e+06 310065 618332. 2139.56 1.85 0.161928 0.140375 25762 151098 -1 2377 19 1618 1885 159323 35327 3.531 3.531 -134.463 -3.531 0 0 787024. 2723.27 0.32 0.06 0.13 -1 -1 0.32 0.0212974 0.0187961 150 86 0 0 89 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_099.v common 7.48 vpr 65.41 MiB 0.02 7324 -1 -1 1 0.04 -1 -1 33832 -1 -1 23 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66984 32 32 364 282 1 225 87 17 17 289 -1 unnamed_device 26.6 MiB 2.05 1156 16407 5546 8389 2472 65.4 MiB 0.14 0.00 3.66075 -124.746 -3.66075 3.66075 0.96 0.000477533 0.000436925 0.0457957 0.0417145 34 3240 39 6.89349e+06 324158 618332. 2139.56 2.24 0.188951 0.165638 25762 151098 -1 2366 22 1851 2630 203174 46204 3.76246 3.76246 -143.811 -3.76246 0 0 787024. 2723.27 0.31 0.08 0.13 -1 -1 0.31 0.0253758 0.0222783 151 31 90 30 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_100.v common 9.12 vpr 65.74 MiB 0.02 7544 -1 -1 1 0.04 -1 -1 33992 -1 -1 30 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67320 31 32 443 336 1 280 93 17 17 289 -1 unnamed_device 26.9 MiB 1.80 1364 18993 6289 10084 2620 65.7 MiB 0.18 0.00 3.68095 -125.048 -3.68095 3.68095 0.93 0.000553268 0.000503891 0.0558663 0.0508003 36 3271 32 6.89349e+06 422815 648988. 2245.63 4.08 0.261166 0.228397 26050 158493 -1 2738 20 2261 3211 227059 51063 3.79236 3.79236 -144.158 -3.79236 0 0 828058. 2865.25 0.33 0.09 0.15 -1 -1 0.33 0.0301376 0.0269185 193 50 87 31 62 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_101.v common 7.88 vpr 65.20 MiB 0.02 7300 -1 -1 1 0.03 -1 -1 34160 -1 -1 28 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66768 30 32 373 297 1 235 90 17 17 289 -1 unnamed_device 26.6 MiB 2.19 1101 11748 2802 8121 825 65.2 MiB 0.11 0.00 3.49306 -109.701 -3.49306 3.49306 0.97 0.00055572 0.000504303 0.0336086 0.0306043 36 2826 27 6.89349e+06 394628 648988. 2245.63 2.50 0.16079 0.140104 26050 158493 -1 2123 20 1379 2001 125907 31800 3.6975 3.6975 -129.198 -3.6975 0 0 828058. 2865.25 0.32 0.06 0.15 -1 -1 0.32 0.0232388 0.0205533 162 50 58 30 58 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_102.v common 9.21 vpr 65.63 MiB 0.02 7344 -1 -1 1 0.04 -1 -1 34100 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67208 32 32 407 319 1 260 92 17 17 289 -1 unnamed_device 26.9 MiB 1.82 1334 8372 1925 5910 537 65.6 MiB 0.10 0.00 4.01094 -138.881 -4.01094 4.01094 0.98 0.000603056 0.000548999 0.0267264 0.0243133 36 3263 24 6.89349e+06 394628 648988. 2245.63 4.16 0.209799 0.181433 26050 158493 -1 2704 21 2094 2853 199698 44286 4.14055 4.14055 -160.266 -4.14055 0 0 828058. 2865.25 0.33 0.08 0.15 -1 -1 0.33 0.0261038 0.0230033 173 61 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_103.v common 7.14 vpr 65.36 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 34024 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66932 32 32 405 318 1 260 91 17 17 289 -1 unnamed_device 26.7 MiB 2.16 1417 15595 4218 9221 2156 65.4 MiB 0.14 0.00 2.96065 -108.311 -2.96065 2.96065 0.97 0.000550934 0.000503446 0.0453567 0.0414248 34 3259 25 6.89349e+06 380534 618332. 2139.56 1.78 0.191351 0.16871 25762 151098 -1 2722 21 2301 3094 218535 50476 3.04651 3.04651 -127.496 -3.04651 0 0 787024. 2723.27 0.32 0.09 0.13 -1 -1 0.32 0.0304534 0.0270912 175 61 63 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_104.v common 6.40 vpr 64.77 MiB 0.03 7024 -1 -1 1 0.03 -1 -1 34092 -1 -1 21 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 29 32 287 238 1 178 82 17 17 289 -1 unnamed_device 26.4 MiB 1.58 877 14144 4555 7341 2248 64.8 MiB 0.10 0.00 3.0572 -100.366 -3.0572 3.0572 0.97 0.000434992 0.000394313 0.0369671 0.033592 34 2127 32 6.89349e+06 295971 618332. 2139.56 1.66 0.140816 0.122305 25762 151098 -1 1866 23 1593 2156 178526 39637 3.27406 3.27406 -122.33 -3.27406 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.021502 0.0187183 118 28 58 29 29 29 -fixed_k6_frac_uripple_N8_22nm.xml mult_105.v common 6.29 vpr 64.81 MiB 0.02 7128 -1 -1 1 0.04 -1 -1 34040 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 334 290 1 223 84 17 17 289 -1 unnamed_device 26.0 MiB 1.47 1158 6672 1580 4782 310 64.8 MiB 0.06 0.00 3.60599 -112.846 -3.60599 3.60599 0.97 0.000469051 0.000426615 0.0190743 0.0173768 34 2751 23 6.89349e+06 281877 618332. 2139.56 1.68 0.127427 0.110389 25762 151098 -1 2255 19 1558 1850 130180 30820 3.5372 3.5372 -127.132 -3.5372 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0203799 0.0179314 136 79 0 0 82 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_106.v common 7.02 vpr 65.17 MiB 0.02 7288 -1 -1 1 0.04 -1 -1 33748 -1 -1 24 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66736 31 32 365 281 1 225 87 17 17 289 -1 unnamed_device 26.4 MiB 1.55 1174 16407 5770 8540 2097 65.2 MiB 0.15 0.00 3.68095 -125.338 -3.68095 3.68095 0.97 0.000675105 0.000626142 0.0480461 0.0439545 36 2609 21 6.89349e+06 338252 648988. 2245.63 2.22 0.190435 0.169052 26050 158493 -1 2139 24 1852 2626 163662 38252 3.95476 3.95476 -144.188 -3.95476 0 0 828058. 2865.25 0.33 0.08 0.14 -1 -1 0.33 0.0311897 0.0276866 154 29 93 31 31 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_107.v common 6.59 vpr 64.76 MiB 0.02 7064 -1 -1 1 0.03 -1 -1 33936 -1 -1 21 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 29 32 297 254 1 193 82 17 17 289 -1 unnamed_device 26.3 MiB 1.49 1005 8448 2121 5706 621 64.8 MiB 0.07 0.00 2.7321 -87.7323 -2.7321 2.7321 1.02 0.000451969 0.000412551 0.0224513 0.0205383 34 2212 25 6.89349e+06 295971 618332. 2139.56 1.83 0.128531 0.112015 25762 151098 -1 1954 20 1397 1630 122206 27955 2.81981 2.81981 -107.199 -2.81981 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.021708 0.0190401 123 48 29 29 52 26 -fixed_k6_frac_uripple_N8_22nm.xml mult_108.v common 7.59 vpr 64.79 MiB 0.02 7076 -1 -1 1 0.04 -1 -1 33900 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 32 32 314 256 1 194 82 17 17 289 -1 unnamed_device 26.4 MiB 2.38 1023 12542 3470 7307 1765 64.8 MiB 0.11 0.00 3.0872 -111.679 -3.0872 3.0872 0.99 0.000484919 0.000441114 0.0350308 0.031868 34 2684 41 6.89349e+06 253689 618332. 2139.56 1.91 0.156652 0.136658 25762 151098 -1 2130 24 1877 2633 205464 44357 3.17656 3.17656 -132.518 -3.17656 0 0 787024. 2723.27 0.32 0.08 0.14 -1 -1 0.32 0.0278108 0.0245614 127 31 64 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_109.v common 7.35 vpr 65.25 MiB 0.02 7464 -1 -1 1 0.04 -1 -1 33776 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 31 32 387 307 1 242 90 17 17 289 -1 unnamed_device 26.6 MiB 2.01 1273 11748 3187 7353 1208 65.3 MiB 0.12 0.00 3.36994 -116.693 -3.36994 3.36994 1.05 0.000705267 0.000651569 0.0392723 0.0360361 34 2989 30 6.89349e+06 380534 618332. 2139.56 1.88 0.195032 0.172462 25762 151098 -1 2538 24 2427 3334 256457 55537 3.67705 3.67705 -143.044 -3.67705 0 0 787024. 2723.27 0.34 0.10 0.14 -1 -1 0.34 0.0345076 0.0307796 164 60 58 31 62 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_110.v common 7.26 vpr 64.73 MiB 0.02 7208 -1 -1 1 0.03 -1 -1 33916 -1 -1 21 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66280 31 32 308 262 1 196 84 17 17 289 -1 unnamed_device 26.3 MiB 1.77 945 9234 2426 6322 486 64.7 MiB 0.09 0.00 2.66772 -91.3445 -2.66772 2.66772 1.10 0.000689289 0.000634467 0.0286049 0.026192 34 2532 50 6.89349e+06 295971 618332. 2139.56 2.04 0.187696 0.165632 25762 151098 -1 2054 19 1258 1548 129345 28315 3.18486 3.18486 -116.739 -3.18486 0 0 787024. 2723.27 0.35 0.07 0.14 -1 -1 0.35 0.0243919 0.0217596 125 49 31 31 53 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_111.v common 7.78 vpr 65.34 MiB 0.02 7244 -1 -1 1 0.04 -1 -1 34096 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66912 32 32 383 307 1 242 89 17 17 289 -1 unnamed_device 26.8 MiB 2.08 1271 17117 6014 8698 2405 65.3 MiB 0.18 0.00 3.42609 -117.933 -3.42609 3.42609 1.07 0.000539753 0.000491958 0.0553443 0.0502935 34 3059 30 6.89349e+06 352346 618332. 2139.56 2.17 0.197116 0.172837 25762 151098 -1 2463 19 1618 2325 167460 38431 3.3255 3.3255 -130.685 -3.3255 0 0 787024. 2723.27 0.35 0.07 0.15 -1 -1 0.35 0.0258011 0.0229273 162 56 52 26 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_112.v common 8.03 vpr 65.56 MiB 0.02 7432 -1 -1 1 0.04 -1 -1 34200 -1 -1 31 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67132 31 32 422 339 1 277 94 17 17 289 -1 unnamed_device 26.8 MiB 2.17 1293 17347 5861 8627 2859 65.6 MiB 0.18 0.00 3.98812 -131.083 -3.98812 3.98812 0.98 0.000657518 0.000603054 0.0575305 0.0524141 34 3961 41 6.89349e+06 436909 618332. 2139.56 2.46 0.236599 0.209102 25762 151098 -1 2909 20 2082 3024 247077 56004 4.22274 4.22274 -158.375 -4.22274 0 0 787024. 2723.27 0.35 0.10 0.14 -1 -1 0.35 0.0327394 0.0292255 185 88 31 31 92 31 -fixed_k6_frac_uripple_N8_22nm.xml mult_113.v common 9.40 vpr 65.05 MiB 0.02 7096 -1 -1 1 0.03 -1 -1 34052 -1 -1 21 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 333 279 1 216 85 17 17 289 -1 unnamed_device 26.5 MiB 3.05 1061 15709 6321 7554 1834 65.0 MiB 0.14 0.00 2.87755 -100.445 -2.87755 2.87755 1.04 0.000521722 0.000476717 0.0479748 0.0437228 36 2762 27 6.89349e+06 295971 648988. 2245.63 2.92 0.191202 0.169132 26050 158493 -1 2214 23 1602 2249 188046 41343 2.91226 2.91226 -118.456 -2.91226 0 0 828058. 2865.25 0.37 0.08 0.14 -1 -1 0.37 0.0269032 0.0238253 137 54 32 32 60 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_114.v common 6.74 vpr 65.29 MiB 0.02 7264 -1 -1 1 0.03 -1 -1 33500 -1 -1 20 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66852 32 32 339 283 1 218 84 17 17 289 -1 unnamed_device 26.5 MiB 1.56 1121 12894 3573 7830 1491 65.3 MiB 0.11 0.00 3.0652 -107.402 -3.0652 3.0652 1.03 0.000531742 0.000486933 0.0379461 0.0347035 34 2814 36 6.89349e+06 281877 618332. 2139.56 1.85 0.169515 0.149051 25762 151098 -1 2327 20 1685 2065 157046 35094 3.20686 3.20686 -124.544 -3.20686 0 0 787024. 2723.27 0.34 0.07 0.14 -1 -1 0.34 0.0255375 0.0227492 139 60 32 32 62 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_115.v common 6.99 vpr 65.58 MiB 0.02 7416 -1 -1 1 0.03 -1 -1 34380 -1 -1 27 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67152 32 32 407 319 1 264 91 17 17 289 -1 unnamed_device 26.9 MiB 1.66 1243 9883 2602 6270 1011 65.6 MiB 0.11 0.00 3.72015 -131.957 -3.72015 3.72015 0.98 0.000755707 0.000696482 0.0321283 0.0293963 34 3234 30 6.89349e+06 380534 618332. 2139.56 2.06 0.196514 0.172992 25762 151098 -1 2607 22 2254 2837 200464 47445 4.0764 4.0764 -156.326 -4.0764 0 0 787024. 2723.27 0.35 0.09 0.14 -1 -1 0.35 0.0338686 0.0301859 178 49 64 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_116.v common 6.82 vpr 65.23 MiB 0.02 7444 -1 -1 1 0.03 -1 -1 34064 -1 -1 26 29 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 29 32 367 293 1 231 87 17 17 289 -1 unnamed_device 26.6 MiB 1.94 1098 15255 4731 7587 2937 65.2 MiB 0.13 0.00 3.05925 -97.8551 -3.05925 3.05925 1.00 0.000529667 0.000484356 0.0440374 0.0401613 34 2520 20 6.89349e+06 366440 618332. 2139.56 1.64 0.161923 0.142363 25762 151098 -1 2059 21 1762 2292 154619 35869 3.12666 3.12666 -114.183 -3.12666 0 0 787024. 2723.27 0.32 0.06 0.14 -1 -1 0.32 0.0222697 0.0195711 157 54 56 29 58 29 -fixed_k6_frac_uripple_N8_22nm.xml mult_117.v common 7.29 vpr 65.67 MiB 0.02 7412 -1 -1 1 0.04 -1 -1 34312 -1 -1 29 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67244 32 32 469 381 1 315 93 17 17 289 -1 unnamed_device 27.1 MiB 1.60 1538 14583 4182 8855 1546 65.7 MiB 0.15 0.00 3.96268 -136.842 -3.96268 3.96268 0.99 0.000671967 0.00061305 0.0486122 0.0442675 34 4098 34 6.89349e+06 408721 618332. 2139.56 2.35 0.231702 0.204938 25762 151098 -1 3343 23 3004 3374 284639 62881 4.71215 4.71215 -166.04 -4.71215 0 0 787024. 2723.27 0.33 0.11 0.13 -1 -1 0.33 0.0346632 0.0307542 203 117 0 0 128 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_118.v common 4.72 vpr 64.33 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 33908 -1 -1 16 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65876 31 32 259 212 1 155 79 17 17 289 -1 unnamed_device 25.9 MiB 0.68 829 11909 4089 5629 2191 64.3 MiB 0.09 0.00 2.34777 -84.544 -2.34777 2.34777 0.95 0.00040167 0.000364822 0.0304537 0.027728 32 2258 28 6.89349e+06 225501 586450. 2029.24 1.00 0.0888318 0.078198 25474 144626 -1 1812 22 1200 1945 150956 34233 2.86191 2.86191 -111.746 -2.86191 0 0 744469. 2576.02 0.32 0.06 0.13 -1 -1 0.32 0.0198272 0.0175025 104 -1 85 31 0 0 -fixed_k6_frac_uripple_N8_22nm.xml mult_119.v common 7.29 vpr 65.41 MiB 0.02 7284 -1 -1 1 0.03 -1 -1 34084 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66976 32 32 418 338 1 273 92 17 17 289 -1 unnamed_device 26.6 MiB 1.85 1482 18515 6153 9882 2480 65.4 MiB 0.18 0.00 4.46413 -148.864 -4.46413 4.46413 0.96 0.000561841 0.000506289 0.0540985 0.0493481 36 3059 24 6.89349e+06 394628 648988. 2245.63 2.16 0.213088 0.189037 26050 158493 -1 2691 21 2289 3012 234670 50323 5.05634 5.05634 -176.479 -5.05634 0 0 828058. 2865.25 0.34 0.09 0.14 -1 -1 0.34 0.0299979 0.0267062 179 89 28 28 92 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_120.v common 9.99 vpr 65.36 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 34004 -1 -1 24 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66932 32 32 376 318 1 259 88 17 17 289 -1 unnamed_device 26.7 MiB 2.50 1421 17248 5458 9494 2296 65.4 MiB 0.16 0.00 3.82948 -135.438 -3.82948 3.82948 0.97 0.000539092 0.000489588 0.0488966 0.0444256 36 3305 28 6.89349e+06 338252 648988. 2245.63 4.26 0.229161 0.199508 26050 158493 -1 2806 22 2602 3234 276459 58756 4.26204 4.26204 -163.368 -4.26204 0 0 828058. 2865.25 0.31 0.09 0.15 -1 -1 0.31 0.0258519 0.0226655 161 93 0 0 96 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_121.v common 7.08 vpr 65.28 MiB 0.02 7296 -1 -1 1 0.03 -1 -1 33584 -1 -1 25 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 32 32 401 316 1 253 89 17 17 289 -1 unnamed_device 26.6 MiB 1.90 1287 15335 4524 8517 2294 65.3 MiB 0.15 0.00 3.00785 -109.329 -3.00785 3.00785 0.97 0.00056139 0.00051214 0.0464174 0.0423808 34 3219 26 6.89349e+06 352346 618332. 2139.56 1.98 0.194011 0.171416 25762 151098 -1 2538 23 1979 2640 187640 43307 3.28806 3.28806 -134.513 -3.28806 0 0 787024. 2723.27 0.32 0.08 0.13 -1 -1 0.32 0.0302252 0.02683 170 59 61 32 64 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_122.v common 7.78 vpr 65.80 MiB 0.03 7520 -1 -1 1 0.04 -1 -1 34420 -1 -1 33 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67384 32 32 500 382 1 323 97 17 17 289 -1 unnamed_device 27.1 MiB 1.88 1662 20743 6957 11443 2343 65.8 MiB 0.22 0.00 4.36294 -148.909 -4.36294 4.36294 0.94 0.000700293 0.000633835 0.0678531 0.0613729 36 4078 29 6.89349e+06 465097 648988. 2245.63 2.61 0.226836 0.199342 26050 158493 -1 3334 23 2803 3307 264377 56788 5.05845 5.05845 -182.923 -5.05845 0 0 828058. 2865.25 0.32 0.09 0.13 -1 -1 0.32 0.0319333 0.0281993 224 81 64 32 96 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_123.v common 5.65 vpr 64.48 MiB 0.02 6892 -1 -1 1 0.03 -1 -1 33700 -1 -1 16 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 30 32 246 229 1 160 78 17 17 289 -1 unnamed_device 26.0 MiB 1.21 829 13690 4460 7116 2114 64.5 MiB 0.09 0.00 2.44266 -78.3619 -2.44266 2.44266 0.96 0.000346068 0.000315141 0.0314084 0.0286732 34 1851 24 6.89349e+06 225501 618332. 2139.56 1.42 0.114497 0.0999421 25762 151098 -1 1610 15 658 671 55785 12705 2.19676 2.19676 -89.8788 -2.19676 0 0 787024. 2723.27 0.32 0.03 0.13 -1 -1 0.32 0.0142561 0.0127156 93 51 0 0 53 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_124.v common 5.40 vpr 64.83 MiB 0.02 7228 -1 -1 1 0.03 -1 -1 33888 -1 -1 21 30 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 30 32 296 244 1 181 83 17 17 289 -1 unnamed_device 26.4 MiB 1.39 900 11423 2814 6889 1720 64.8 MiB 0.10 0.00 3.34479 -112.271 -3.34479 3.34479 0.96 0.000469123 0.000427221 0.0324356 0.0295949 28 2176 22 6.89349e+06 295971 531479. 1839.03 0.99 0.0938865 0.0824934 24610 126494 -1 1891 19 1426 2051 135885 32298 3.5578 3.5578 -137.064 -3.5578 0 0 648988. 2245.63 0.27 0.06 0.12 -1 -1 0.27 0.0193935 0.017052 124 29 60 30 30 30 -fixed_k6_frac_uripple_N8_22nm.xml mult_125.v common 7.60 vpr 64.70 MiB 0.02 7004 -1 -1 1 0.03 -1 -1 33656 -1 -1 18 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 32 32 314 256 1 199 82 17 17 289 -1 unnamed_device 26.3 MiB 2.39 1004 10940 2908 7435 597 64.7 MiB 0.10 0.00 3.53249 -123.335 -3.53249 3.53249 0.95 0.000461896 0.00042167 0.0303546 0.0277045 34 2992 50 6.89349e+06 253689 618332. 2139.56 2.11 0.155423 0.137023 25762 151098 -1 2451 22 1800 3129 222377 51714 3.8506 3.8506 -150.501 -3.8506 0 0 787024. 2723.27 0.31 0.08 0.13 -1 -1 0.31 0.0221589 0.0195196 129 31 64 32 32 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_126.v common 6.05 vpr 64.43 MiB 0.02 7256 -1 -1 1 0.03 -1 -1 34144 -1 -1 24 25 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65980 25 32 251 214 1 162 81 17 17 289 -1 unnamed_device 25.9 MiB 1.48 727 14256 4168 8868 1220 64.4 MiB 0.10 0.00 3.0352 -80.976 -3.0352 3.0352 0.96 0.000388838 0.000355117 0.0326535 0.0297137 34 1807 25 6.89349e+06 338252 618332. 2139.56 1.47 0.115805 0.100441 25762 151098 -1 1554 23 1148 1615 114928 26739 2.95221 2.95221 -98.6946 -2.95221 0 0 787024. 2723.27 0.31 0.05 0.14 -1 -1 0.31 0.0187816 0.0164038 107 19 50 25 25 25 -fixed_k6_frac_uripple_N8_22nm.xml mult_127.v common 9.53 vpr 65.62 MiB 0.02 7480 -1 -1 1 0.04 -1 -1 34180 -1 -1 28 32 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67200 32 32 432 346 1 288 92 17 17 289 -1 unnamed_device 27.0 MiB 2.90 1453 15203 4566 9083 1554 65.6 MiB 0.15 0.00 3.78745 -130.236 -3.78745 3.78745 0.98 0.000643417 0.000590967 0.0467624 0.0426307 34 3740 23 6.89349e+06 394628 618332. 2139.56 3.37 0.266946 0.235219 25762 151098 -1 3028 22 2634 3807 270345 62029 4.12446 4.12446 -156.271 -4.12446 0 0 787024. 2723.27 0.32 0.10 0.13 -1 -1 0.32 0.032662 0.0290266 190 84 32 32 94 32 -fixed_k6_frac_uripple_N8_22nm.xml mult_128.v common 10.01 vpr 65.52 MiB 0.02 7280 -1 -1 1 0.04 -1 -1 33992 -1 -1 27 31 0 0 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:14 gh-actions-runner-vtr-auto-spawned2 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67088 31 32 421 339 1 274 90 17 17 289 -1 unnamed_device 26.8 MiB 2.24 1265 11949 3075 7729 1145 65.5 MiB 0.12 0.00 3.80129 -124.578 -3.80129 3.80129 0.97 0.00062595 0.000576947 0.0383256 0.0350864 36 3276 33 6.89349e+06 380534 648988. 2245.63 4.51 0.274368 0.241474 26050 158493 -1 2741 19 2027 2828 194532 46203 4.59979 4.59979 -159.753 -4.59979 0 0 828058. 2865.25 0.33 0.08 0.14 -1 -1 0.33 0.0277365 0.0246997 183 88 29 29 93 31 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_le num_luts num_add_blocks max_add_chain_length num_sub_blocks max_sub_chain_length + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_001.v common 5.37 vpr 64.99 MiB 0.02 7264 -1 -1 14 0.31 -1 -1 36404 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 32 32 280 312 1 205 90 17 17 289 -1 unnamed_device 26.3 MiB 0.29 1380 9939 2582 6063 1294 65.0 MiB 0.08 0.00 6.7601 -135.498 -6.7601 6.7601 0.88 0.000623967 0.0005679 0.0343195 0.0310522 28 3556 42 6.55708e+06 313430 500653. 1732.36 1.92 0.16476 0.146654 21310 115450 -1 3136 19 1530 4669 269667 62377 7.4003 7.4003 -165.114 -7.4003 0 0 612192. 2118.31 0.26 0.09 0.11 -1 -1 0.26 0.0303917 0.0272247 186 185 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_002.v common 7.88 vpr 64.97 MiB 0.02 6992 -1 -1 14 0.36 -1 -1 36656 -1 -1 30 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66532 30 32 277 309 1 215 92 17 17 289 -1 unnamed_device 26.5 MiB 0.51 1267 11684 3159 7206 1319 65.0 MiB 0.10 0.00 7.18744 -144.203 -7.18744 7.18744 0.96 0.000641805 0.000584295 0.0400875 0.0364405 30 3175 37 6.55708e+06 361650 526063. 1820.29 3.91 0.270143 0.236729 21886 126133 -1 2730 31 1526 4359 355584 147639 7.46703 7.46703 -159.014 -7.46703 0 0 666494. 2306.21 0.27 0.14 0.12 -1 -1 0.27 0.0417345 0.0368432 189 186 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_003.v common 6.42 vpr 64.75 MiB 0.02 7160 -1 -1 11 0.27 -1 -1 36372 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66300 32 32 274 306 1 208 89 17 17 289 -1 unnamed_device 26.4 MiB 0.42 1326 14543 4293 7829 2421 64.7 MiB 0.12 0.00 5.36852 -114.919 -5.36852 5.36852 0.94 0.000576202 0.000513962 0.047706 0.0429365 34 4009 47 6.55708e+06 301375 585099. 2024.56 2.69 0.202653 0.178219 22462 138074 -1 3134 17 1380 4391 277940 66246 5.77092 5.77092 -138.074 -5.77092 0 0 742403. 2568.87 0.31 0.09 0.13 -1 -1 0.31 0.0281747 0.0253355 180 179 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_004.v common 8.21 vpr 64.73 MiB 0.02 7192 -1 -1 12 0.44 -1 -1 36400 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 29 32 269 301 1 203 90 17 17 289 -1 unnamed_device 26.4 MiB 0.40 1337 8532 2110 5618 804 64.7 MiB 0.08 0.00 6.34804 -120.709 -6.34804 6.34804 0.93 0.000662016 0.000592345 0.0316346 0.0287153 36 3330 21 6.55708e+06 349595 612192. 2118.31 4.33 0.232265 0.202823 22750 144809 -1 3033 22 1502 4721 263466 60335 7.24852 7.24852 -143.619 -7.24852 0 0 782063. 2706.10 0.31 0.09 0.14 -1 -1 0.31 0.0330039 0.029398 185 180 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_005.v common 10.45 vpr 65.05 MiB 0.02 6944 -1 -1 13 0.40 -1 -1 36884 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66612 32 32 317 349 1 246 96 17 17 289 -1 unnamed_device 26.4 MiB 0.53 1615 9732 2439 6417 876 65.1 MiB 0.10 0.00 6.38724 -139.576 -6.38724 6.38724 0.94 0.000742306 0.000674166 0.0374026 0.033793 30 4317 28 6.55708e+06 385760 526063. 1820.29 6.46 0.294662 0.258235 21886 126133 -1 3456 21 1818 5373 270238 62237 6.86804 6.86804 -160.542 -6.86804 0 0 666494. 2306.21 0.28 0.10 0.13 -1 -1 0.28 0.0377157 0.0337846 223 222 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_006.v common 6.70 vpr 64.74 MiB 0.02 7060 -1 -1 12 0.35 -1 -1 36544 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66292 32 32 299 331 1 232 98 17 17 289 -1 unnamed_device 26.3 MiB 0.56 1549 10898 2830 6790 1278 64.7 MiB 0.10 0.00 6.03124 -125.938 -6.03124 6.03124 0.92 0.000704685 0.000628961 0.0376943 0.0341227 34 4051 29 6.55708e+06 409870 585099. 2024.56 2.71 0.180249 0.159375 22462 138074 -1 3467 19 1691 5246 326356 72435 6.39184 6.39184 -151.393 -6.39184 0 0 742403. 2568.87 0.30 0.10 0.14 -1 -1 0.30 0.0327466 0.029422 209 204 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_007.v common 7.51 vpr 63.90 MiB 0.02 6960 -1 -1 12 0.22 -1 -1 36228 -1 -1 27 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65432 27 32 210 242 1 167 86 17 17 289 -1 unnamed_device 25.6 MiB 0.31 1026 4811 1068 3438 305 63.9 MiB 0.04 0.00 5.81578 -105.725 -5.81578 5.81578 0.94 0.000510267 0.000464333 0.0156521 0.0143047 26 3023 25 6.55708e+06 325485 477104. 1650.88 4.09 0.163816 0.142285 21022 109990 -1 2451 18 1224 3483 215097 49024 6.09798 6.09798 -124.034 -6.09798 0 0 585099. 2024.56 0.25 0.07 0.12 -1 -1 0.25 0.0224601 0.020074 136 125 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_008.v common 6.59 vpr 64.61 MiB 0.02 6996 -1 -1 11 0.21 -1 -1 36708 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66164 31 32 264 296 1 199 91 17 17 289 -1 unnamed_device 26.1 MiB 0.29 1212 11719 2859 7078 1782 64.6 MiB 0.09 0.00 5.46178 -109.851 -5.46178 5.46178 0.88 0.000580309 0.000527524 0.0363368 0.0330002 36 3152 19 6.55708e+06 337540 612192. 2118.31 3.19 0.185814 0.164644 22750 144809 -1 2527 15 1178 3693 191043 45020 5.58198 5.58198 -123.343 -5.58198 0 0 782063. 2706.10 0.32 0.07 0.13 -1 -1 0.32 0.0251513 0.0227875 175 171 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_009.v common 5.13 vpr 64.43 MiB 0.02 6892 -1 -1 12 0.21 -1 -1 35984 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65976 31 32 234 266 1 190 88 17 17 289 -1 unnamed_device 26.0 MiB 0.38 1241 8668 2210 5476 982 64.4 MiB 0.07 0.00 5.61718 -124.779 -5.61718 5.61718 0.95 0.000535723 0.000485666 0.0274885 0.0249999 28 3130 20 6.55708e+06 301375 500653. 1732.36 1.57 0.104685 0.0924868 21310 115450 -1 2819 16 1130 2870 187006 42651 5.97778 5.97778 -141.936 -5.97778 0 0 612192. 2118.31 0.28 0.07 0.11 -1 -1 0.28 0.0237083 0.0213991 145 141 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_010.v common 9.63 vpr 64.59 MiB 0.02 6940 -1 -1 13 0.24 -1 -1 36092 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 32 32 253 285 1 194 89 17 17 289 -1 unnamed_device 26.1 MiB 0.49 1223 15929 4797 8703 2429 64.6 MiB 0.13 0.00 6.22784 -140.147 -6.22784 6.22784 0.95 0.000595001 0.000532318 0.0499737 0.0451725 30 3189 19 6.55708e+06 301375 526063. 1820.29 5.87 0.207172 0.182069 21886 126133 -1 2590 15 1076 3024 160661 36805 6.66944 6.66944 -157.179 -6.66944 0 0 666494. 2306.21 0.29 0.07 0.12 -1 -1 0.29 0.0246801 0.022292 162 158 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_011.v common 5.39 vpr 64.14 MiB 0.02 6916 -1 -1 12 0.22 -1 -1 36444 -1 -1 22 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65684 30 32 217 249 1 169 84 17 17 289 -1 unnamed_device 25.6 MiB 0.39 1088 9234 2413 5439 1382 64.1 MiB 0.07 0.00 5.86924 -122.016 -5.86924 5.86924 0.94 0.000506532 0.000461393 0.0285397 0.0259593 28 3075 44 6.55708e+06 265210 500653. 1732.36 1.86 0.12385 0.10923 21310 115450 -1 2575 23 1085 2767 257663 90628 5.98944 5.98944 -139.708 -5.98944 0 0 612192. 2118.31 0.27 0.10 0.12 -1 -1 0.27 0.0270098 0.0240776 132 126 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_012.v common 7.75 vpr 64.27 MiB 0.02 7032 -1 -1 12 0.18 -1 -1 36360 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65808 32 32 227 259 1 176 85 17 17 289 -1 unnamed_device 25.7 MiB 0.21 1009 12919 4052 6455 2412 64.3 MiB 0.09 0.00 5.45978 -119.39 -5.45978 5.45978 0.91 0.000481799 0.000429031 0.0365152 0.0328719 34 3034 37 6.55708e+06 253155 585099. 2024.56 4.42 0.225054 0.196019 22462 138074 -1 2318 14 955 2730 160319 38053 5.78118 5.78118 -138.193 -5.78118 0 0 742403. 2568.87 0.31 0.06 0.13 -1 -1 0.31 0.0196868 0.0177427 138 132 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_013.v common 6.59 vpr 64.96 MiB 0.02 7128 -1 -1 13 0.34 -1 -1 36740 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 32 32 306 338 1 235 94 17 17 289 -1 unnamed_device 26.5 MiB 0.39 1482 4993 817 3942 234 65.0 MiB 0.05 0.00 6.4407 -133.91 -6.4407 6.4407 0.94 0.000680215 0.000620102 0.020959 0.019044 28 4011 40 6.55708e+06 361650 500653. 1732.36 2.86 0.151418 0.133753 21310 115450 -1 3390 17 1615 4492 255601 59750 6.6811 6.6811 -151.058 -6.6811 0 0 612192. 2118.31 0.26 0.09 0.11 -1 -1 0.26 0.0315716 0.0284857 212 211 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_014.v common 12.60 vpr 64.96 MiB 0.02 7044 -1 -1 14 0.41 -1 -1 36532 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66516 32 32 302 334 1 235 93 17 17 289 -1 unnamed_device 26.4 MiB 0.54 1516 9333 2256 5804 1273 65.0 MiB 0.09 0.00 7.33662 -150.961 -7.33662 7.33662 0.90 0.000730582 0.000653654 0.0359968 0.0326244 30 4143 31 6.55708e+06 349595 526063. 1820.29 8.72 0.267562 0.235564 21886 126133 -1 3114 21 1486 4290 204559 49211 7.68555 7.68555 -171.606 -7.68555 0 0 666494. 2306.21 0.27 0.08 0.12 -1 -1 0.27 0.0323093 0.0289795 208 207 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_015.v common 5.17 vpr 64.50 MiB 0.02 6792 -1 -1 11 0.21 -1 -1 36076 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 29 32 238 270 1 186 90 17 17 289 -1 unnamed_device 26.1 MiB 0.25 1080 10944 3016 6546 1382 64.5 MiB 0.08 0.00 5.24892 -104.397 -5.24892 5.24892 0.89 0.000523896 0.000475995 0.0319221 0.0289994 34 2754 47 6.55708e+06 349595 585099. 2024.56 1.85 0.169463 0.149299 22462 138074 -1 2353 17 1031 2964 157468 37912 5.51626 5.51626 -122.162 -5.51626 0 0 742403. 2568.87 0.29 0.06 0.12 -1 -1 0.29 0.0234069 0.0209736 160 149 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_016.v common 7.55 vpr 65.04 MiB 0.02 7016 -1 -1 12 0.35 -1 -1 36528 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 32 32 306 338 1 235 98 17 17 289 -1 unnamed_device 26.6 MiB 0.64 1606 6398 1139 4832 427 65.0 MiB 0.07 0.00 6.4407 -134.488 -6.4407 6.4407 0.95 0.00072284 0.000661707 0.0246501 0.0224417 30 4336 33 6.55708e+06 409870 526063. 1820.29 3.42 0.147576 0.130929 21886 126133 -1 3616 32 1681 5505 519084 206895 6.6027 6.6027 -152.989 -6.6027 0 0 666494. 2306.21 0.28 0.19 0.12 -1 -1 0.28 0.0505778 0.0450491 213 211 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_017.v common 15.96 vpr 65.19 MiB 0.02 7020 -1 -1 13 0.33 -1 -1 36832 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 32 32 311 343 1 239 96 17 17 289 -1 unnamed_device 26.6 MiB 0.35 1462 14988 3978 8216 2794 65.2 MiB 0.13 0.00 6.5961 -139.227 -6.5961 6.5961 0.93 0.000698663 0.00062539 0.0527432 0.0475063 28 4473 41 6.55708e+06 385760 500653. 1732.36 12.24 0.323237 0.28453 21310 115450 -1 3296 16 1401 3942 224479 53254 7.0769 7.0769 -165.493 -7.0769 0 0 612192. 2118.31 0.27 0.09 0.11 -1 -1 0.27 0.0337322 0.0305583 217 216 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_018.v common 4.80 vpr 64.07 MiB 0.02 6992 -1 -1 12 0.19 -1 -1 36060 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65608 32 32 230 262 1 182 86 17 17 289 -1 unnamed_device 25.7 MiB 0.60 978 4811 917 3822 72 64.1 MiB 0.05 0.00 5.8815 -128.892 -5.8815 5.8815 0.94 0.000552052 0.000494697 0.0167364 0.0152662 30 2606 19 6.55708e+06 265210 526063. 1820.29 1.09 0.0886652 0.0779731 21886 126133 -1 2095 17 930 2720 123332 31349 6.0827 6.0827 -143.678 -6.0827 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0232135 0.0207807 139 135 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_019.v common 6.45 vpr 64.02 MiB 0.02 6872 -1 -1 10 0.12 -1 -1 35832 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65560 30 32 176 208 1 139 82 17 17 289 -1 unnamed_device 25.4 MiB 0.13 840 7202 1727 4951 524 64.0 MiB 0.05 0.00 4.32286 -100.168 -4.32286 4.32286 0.93 0.000414187 0.000378126 0.0183106 0.0166616 34 1991 29 6.55708e+06 241100 585099. 2024.56 3.30 0.143717 0.124495 22462 138074 -1 1778 16 657 1635 102388 23778 4.63 4.63 -114.8 -4.63 0 0 742403. 2568.87 0.31 0.04 0.14 -1 -1 0.31 0.0163513 0.01459 96 85 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_020.v common 7.62 vpr 64.42 MiB 0.02 6880 -1 -1 13 0.21 -1 -1 36704 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65968 31 32 226 258 1 176 87 17 17 289 -1 unnamed_device 26.0 MiB 0.38 1072 5271 984 4138 149 64.4 MiB 0.05 0.00 6.10764 -127.105 -6.10764 6.10764 0.91 0.000509493 0.000462069 0.017163 0.0156171 36 2480 36 6.55708e+06 289320 612192. 2118.31 4.06 0.189627 0.164844 22750 144809 -1 2140 20 899 2448 130981 30705 6.94904 6.94904 -151.983 -6.94904 0 0 782063. 2706.10 0.33 0.06 0.14 -1 -1 0.33 0.0267951 0.0240451 139 133 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_021.v common 5.60 vpr 64.77 MiB 0.02 6916 -1 -1 13 0.37 -1 -1 36832 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 302 334 1 228 95 17 17 289 -1 unnamed_device 26.2 MiB 0.42 1431 10031 2391 6840 800 64.8 MiB 0.09 0.00 6.2813 -129.016 -6.2813 6.2813 0.91 0.000706412 0.00063816 0.0346463 0.0314086 30 3800 31 6.55708e+06 373705 526063. 1820.29 1.81 0.153853 0.136559 21886 126133 -1 3108 18 1737 5658 294463 70037 6.63224 6.63224 -148.556 -6.63224 0 0 666494. 2306.21 0.28 0.10 0.12 -1 -1 0.28 0.0334632 0.0302238 208 207 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_022.v common 21.88 vpr 65.07 MiB 0.02 7048 -1 -1 13 0.37 -1 -1 36416 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 32 32 299 331 1 237 98 17 17 289 -1 unnamed_device 26.5 MiB 0.54 1583 7523 1609 5516 398 65.1 MiB 0.08 0.00 6.4779 -134.545 -6.4779 6.4779 0.91 0.0006831 0.000608191 0.0269805 0.0244209 30 4335 33 6.55708e+06 409870 526063. 1820.29 17.97 0.31885 0.278764 21886 126133 -1 3353 17 1486 4870 251001 56993 6.7595 6.7595 -152.626 -6.7595 0 0 666494. 2306.21 0.27 0.09 0.12 -1 -1 0.27 0.032286 0.0292347 207 204 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_023.v common 7.37 vpr 63.77 MiB 0.02 6888 -1 -1 9 0.11 -1 -1 36040 -1 -1 21 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65296 26 32 149 181 1 119 79 17 17 289 -1 unnamed_device 25.2 MiB 0.33 680 10726 2923 7065 738 63.8 MiB 0.06 0.00 3.89854 -76.9721 -3.89854 3.89854 0.91 0.000344494 0.000314624 0.023102 0.0209939 26 2072 41 6.55708e+06 253155 477104. 1650.88 4.13 0.132686 0.115446 21022 109990 -1 1763 24 704 1856 231405 90820 4.18074 4.18074 -92.9238 -4.18074 0 0 585099. 2024.56 0.25 0.08 0.10 -1 -1 0.25 0.0179427 0.0157968 83 66 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_024.v common 5.91 vpr 64.88 MiB 0.02 6876 -1 -1 13 0.39 -1 -1 36396 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66436 32 32 304 336 1 228 94 17 17 289 -1 unnamed_device 26.5 MiB 0.24 1524 4780 758 3645 377 64.9 MiB 0.05 0.00 6.4407 -127.972 -6.4407 6.4407 0.90 0.000679793 0.000609603 0.019082 0.0173064 28 4450 37 6.55708e+06 361650 500653. 1732.36 2.40 0.147813 0.13113 21310 115450 -1 3581 18 1573 4298 275280 61387 7.2429 7.2429 -152.324 -7.2429 0 0 612192. 2118.31 0.26 0.10 0.11 -1 -1 0.26 0.0320111 0.0287353 211 209 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_025.v common 4.73 vpr 63.62 MiB 0.02 6820 -1 -1 8 0.11 -1 -1 36076 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65148 32 32 155 187 1 113 81 17 17 289 -1 unnamed_device 25.2 MiB 0.23 441 6206 1431 3752 1023 63.6 MiB 0.04 0.00 3.84606 -73.0632 -3.84606 3.84606 0.93 0.000202573 0.000185022 0.0135401 0.0123356 34 1322 39 6.55708e+06 204935 585099. 2024.56 1.54 0.0788137 0.0683827 22462 138074 -1 1097 15 584 1208 62846 18221 3.9958 3.9958 -86.6926 -3.9958 0 0 742403. 2568.87 0.31 0.04 0.14 -1 -1 0.31 0.0139398 0.0124546 77 60 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_026.v common 6.04 vpr 64.48 MiB 0.02 6956 -1 -1 15 0.30 -1 -1 36448 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66024 32 32 253 285 1 192 89 17 17 289 -1 unnamed_device 26.0 MiB 0.27 1150 9989 2700 5290 1999 64.5 MiB 0.08 0.00 7.16816 -137.524 -7.16816 7.16816 0.94 0.000596536 0.000542198 0.0340305 0.0310385 36 2905 25 6.55708e+06 301375 612192. 2118.31 2.40 0.192317 0.170133 22750 144809 -1 2260 19 1086 3414 163630 39251 7.68815 7.68815 -156.125 -7.68815 0 0 782063. 2706.10 0.32 0.07 0.14 -1 -1 0.32 0.0283819 0.0253976 161 158 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_027.v common 7.65 vpr 64.84 MiB 0.02 6916 -1 -1 12 0.30 -1 -1 36568 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 309 341 1 232 95 17 17 289 -1 unnamed_device 26.4 MiB 0.26 1614 12839 3319 7842 1678 64.8 MiB 0.11 0.00 6.01898 -135.231 -6.01898 6.01898 0.89 0.000695538 0.000632926 0.0453569 0.0412015 36 3912 22 6.55708e+06 373705 612192. 2118.31 4.14 0.231664 0.206382 22750 144809 -1 3359 15 1355 4266 253119 55863 6.61998 6.61998 -155.905 -6.61998 0 0 782063. 2706.10 0.31 0.09 0.13 -1 -1 0.31 0.0295321 0.026673 218 214 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_028.v common 6.26 vpr 64.95 MiB 0.02 7104 -1 -1 13 0.35 -1 -1 36732 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 32 32 289 321 1 218 92 17 17 289 -1 unnamed_device 26.6 MiB 0.40 1369 7337 1601 5319 417 64.9 MiB 0.07 0.00 6.0017 -129.994 -6.0017 6.0017 0.91 0.000651149 0.000595517 0.0262974 0.0238982 34 3705 47 6.55708e+06 337540 585099. 2024.56 2.50 0.203999 0.178985 22462 138074 -1 3138 17 1386 4216 240411 55729 6.3623 6.3623 -150.592 -6.3623 0 0 742403. 2568.87 0.32 0.08 0.14 -1 -1 0.32 0.0296191 0.0265843 196 194 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_029.v common 5.22 vpr 64.29 MiB 0.02 6768 -1 -1 12 0.20 -1 -1 36136 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65832 32 32 239 271 1 188 86 17 17 289 -1 unnamed_device 25.9 MiB 0.28 1153 6512 1507 4771 234 64.3 MiB 0.06 0.00 5.68792 -124.55 -5.68792 5.68792 0.92 0.00054624 0.00049695 0.0220236 0.0200319 28 3199 41 6.55708e+06 265210 500653. 1732.36 1.80 0.121784 0.107019 21310 115450 -1 2657 15 1024 2830 173962 39967 5.68792 5.68792 -142.06 -5.68792 0 0 612192. 2118.31 0.26 0.06 0.12 -1 -1 0.26 0.0225505 0.0203718 146 144 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_030.v common 7.81 vpr 64.18 MiB 0.02 6828 -1 -1 11 0.19 -1 -1 36380 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65724 30 32 213 245 1 162 85 17 17 289 -1 unnamed_device 25.6 MiB 0.22 1036 12733 3325 7717 1691 64.2 MiB 0.09 0.00 5.08892 -111.207 -5.08892 5.08892 0.94 0.000508996 0.000460984 0.0358776 0.032519 26 2842 28 6.55708e+06 277265 477104. 1650.88 4.50 0.183829 0.161091 21022 109990 -1 2358 17 968 2547 162099 37004 5.68992 5.68992 -134.123 -5.68992 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0209241 0.0187405 128 122 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_031.v common 6.23 vpr 64.38 MiB 0.02 6824 -1 -1 11 0.20 -1 -1 36672 -1 -1 27 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 28 32 221 253 1 183 87 17 17 289 -1 unnamed_device 26.0 MiB 0.30 1054 6615 1537 4510 568 64.4 MiB 0.05 0.00 5.43786 -108.333 -5.43786 5.43786 0.91 0.000528026 0.000476575 0.0194805 0.0177539 28 3176 35 6.55708e+06 325485 500653. 1732.36 2.88 0.109676 0.0968438 21310 115450 -1 2689 16 1139 3195 201426 45525 5.62118 5.62118 -127.027 -5.62118 0 0 612192. 2118.31 0.26 0.07 0.11 -1 -1 0.26 0.0222712 0.0201146 142 134 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_032.v common 9.90 vpr 64.98 MiB 0.02 6788 -1 -1 12 0.23 -1 -1 35904 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 273 305 1 210 92 17 17 289 -1 unnamed_device 26.2 MiB 0.25 1295 5888 1128 4476 284 65.0 MiB 0.06 0.00 5.86924 -134.818 -5.86924 5.86924 0.93 0.000604153 0.000548518 0.0210568 0.0191374 28 3554 23 6.55708e+06 337540 500653. 1732.36 6.49 0.190014 0.16607 21310 115450 -1 3017 19 1484 4003 247169 57541 6.14178 6.14178 -155.322 -6.14178 0 0 612192. 2118.31 0.26 0.09 0.12 -1 -1 0.26 0.0303047 0.027247 180 178 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_033.v common 4.90 vpr 64.50 MiB 0.02 6840 -1 -1 11 0.21 -1 -1 36276 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 31 32 238 270 1 182 86 17 17 289 -1 unnamed_device 26.1 MiB 0.32 1038 5756 1149 4354 253 64.5 MiB 0.05 0.00 5.55546 -115.085 -5.55546 5.55546 0.96 0.000540011 0.000489013 0.0205643 0.0187742 28 2684 21 6.55708e+06 277265 500653. 1732.36 1.36 0.106173 0.0942427 21310 115450 -1 2412 27 1494 4183 303735 100743 5.71746 5.71746 -136.924 -5.71746 0 0 612192. 2118.31 0.27 0.12 0.11 -1 -1 0.27 0.0379711 0.0339661 147 145 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_034.v common 4.52 vpr 64.18 MiB 0.02 6868 -1 -1 10 0.17 -1 -1 36472 -1 -1 24 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65720 29 32 221 253 1 165 85 17 17 289 -1 unnamed_device 25.6 MiB 0.26 922 12919 4233 6349 2337 64.2 MiB 0.09 0.00 4.93152 -102.351 -4.93152 4.93152 0.94 0.000504425 0.00045833 0.0388765 0.0352237 28 2419 20 6.55708e+06 289320 500653. 1732.36 1.17 0.109901 0.097134 21310 115450 -1 2062 17 820 2352 129992 31316 5.51826 5.51826 -122.471 -5.51826 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0224309 0.0201036 138 132 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_035.v common 8.95 vpr 65.15 MiB 0.02 7168 -1 -1 13 0.41 -1 -1 37112 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66716 32 32 333 365 1 249 97 17 17 289 -1 unnamed_device 26.7 MiB 0.39 1600 7867 1616 5265 986 65.2 MiB 0.08 0.00 6.2003 -127.213 -6.2003 6.2003 0.90 0.00074666 0.000675697 0.0305352 0.0276564 36 4038 30 6.55708e+06 397815 612192. 2118.31 5.09 0.308857 0.271179 22750 144809 -1 3296 16 1418 4842 286197 63074 6.69838 6.69838 -147.615 -6.69838 0 0 782063. 2706.10 0.33 0.10 0.14 -1 -1 0.33 0.0336475 0.030542 239 238 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_036.v common 8.79 vpr 64.94 MiB 0.02 7184 -1 -1 13 0.40 -1 -1 36676 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 297 329 1 227 93 17 17 289 -1 unnamed_device 26.4 MiB 0.46 1457 11643 3194 6725 1724 64.9 MiB 0.10 0.00 6.4387 -138.634 -6.4387 6.4387 0.91 0.000625106 0.000552651 0.039929 0.0358854 38 3845 35 6.55708e+06 349595 638502. 2209.35 4.89 0.323383 0.281516 23326 155178 -1 3097 23 1423 4704 231842 52852 6.74784 6.74784 -154.577 -6.74784 0 0 851065. 2944.86 0.34 0.09 0.14 -1 -1 0.34 0.0361854 0.0322925 203 202 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_037.v common 7.62 vpr 64.26 MiB 0.02 6796 -1 -1 12 0.19 -1 -1 36380 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65800 31 32 234 266 1 181 88 17 17 289 -1 unnamed_device 25.7 MiB 0.35 1172 12763 3429 7032 2302 64.3 MiB 0.10 0.00 5.38078 -117.485 -5.38078 5.38078 0.93 0.000559223 0.000510074 0.037776 0.0342989 36 2800 19 6.55708e+06 301375 612192. 2118.31 4.05 0.189212 0.165524 22750 144809 -1 2379 14 965 2717 149166 34781 5.70218 5.70218 -135.131 -5.70218 0 0 782063. 2706.10 0.32 0.06 0.14 -1 -1 0.32 0.0209534 0.0189041 150 141 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_038.v common 6.03 vpr 65.13 MiB 0.02 7000 -1 -1 12 0.32 -1 -1 36884 -1 -1 34 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 31 32 310 342 1 234 97 17 17 289 -1 unnamed_device 26.5 MiB 0.25 1498 13639 3602 7690 2347 65.1 MiB 0.12 0.00 6.7157 -136.315 -6.7157 6.7157 0.93 0.000745838 0.00067933 0.0484267 0.0437694 30 3986 44 6.55708e+06 409870 526063. 1820.29 2.42 0.18123 0.160531 21886 126133 -1 3088 17 1439 4416 219814 51952 6.9561 6.9561 -153.642 -6.9561 0 0 666494. 2306.21 0.28 0.08 0.12 -1 -1 0.28 0.0311043 0.0280846 219 217 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_039.v common 5.95 vpr 64.78 MiB 0.02 7292 -1 -1 14 0.45 -1 -1 36564 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 31 32 284 316 1 221 91 17 17 289 -1 unnamed_device 26.4 MiB 0.25 1377 5191 959 3975 257 64.8 MiB 0.06 0.00 6.5543 -130.969 -6.5543 6.5543 0.94 0.000681644 0.000623624 0.0212414 0.0193379 36 3474 18 6.55708e+06 337540 612192. 2118.31 2.20 0.17249 0.15135 22750 144809 -1 2910 21 1343 3995 214457 50558 7.0371 7.0371 -149.953 -7.0371 0 0 782063. 2706.10 0.31 0.09 0.14 -1 -1 0.31 0.0344598 0.0308162 194 191 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_040.v common 5.71 vpr 64.78 MiB 0.02 7036 -1 -1 13 0.33 -1 -1 37172 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 31 32 271 303 1 212 91 17 17 289 -1 unnamed_device 26.1 MiB 0.29 1398 6007 1206 4131 670 64.8 MiB 0.06 0.00 6.38724 -133.891 -6.38724 6.38724 0.91 0.00062708 0.000563765 0.0217817 0.0198094 36 3395 19 6.55708e+06 337540 612192. 2118.31 2.12 0.162923 0.142325 22750 144809 -1 2838 18 1197 3326 176849 41128 6.69638 6.69638 -149.107 -6.69638 0 0 782063. 2706.10 0.31 0.07 0.14 -1 -1 0.31 0.0283951 0.0254358 181 178 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_041.v common 7.12 vpr 64.94 MiB 0.02 7072 -1 -1 12 0.31 -1 -1 36732 -1 -1 30 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 31 32 280 312 1 211 93 17 17 289 -1 unnamed_device 26.5 MiB 0.62 1442 6603 1399 4594 610 64.9 MiB 0.07 0.00 5.74138 -121.999 -5.74138 5.74138 0.95 0.000660459 0.000595107 0.0249177 0.0225965 34 3717 28 6.55708e+06 361650 585099. 2024.56 3.11 0.166247 0.147058 22462 138074 -1 3282 22 1336 4316 259789 58459 6.10198 6.10198 -143.253 -6.10198 0 0 742403. 2568.87 0.31 0.09 0.14 -1 -1 0.31 0.0332314 0.0297314 189 187 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_042.v common 5.71 vpr 64.57 MiB 0.02 7252 -1 -1 12 0.23 -1 -1 36504 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 32 32 264 296 1 194 88 17 17 289 -1 unnamed_device 26.1 MiB 0.31 1295 9448 2427 5651 1370 64.6 MiB 0.08 0.00 5.95224 -122.374 -5.95224 5.95224 0.96 0.000618066 0.00056163 0.0321573 0.0291514 28 3531 43 6.55708e+06 289320 500653. 1732.36 2.14 0.15428 0.136709 21310 115450 -1 2992 20 1445 4359 328975 81140 6.23184 6.23184 -144.382 -6.23184 0 0 612192. 2118.31 0.27 0.11 0.11 -1 -1 0.27 0.0305835 0.027429 172 169 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_043.v common 10.88 vpr 64.88 MiB 0.02 7196 -1 -1 14 0.58 -1 -1 36268 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 32 32 339 371 1 259 98 17 17 289 -1 unnamed_device 26.7 MiB 0.43 1760 11348 2999 7324 1025 64.9 MiB 0.11 0.00 6.7209 -144.486 -6.7209 6.7209 0.96 0.000726182 0.000657921 0.0423887 0.0382171 36 4433 33 6.55708e+06 409870 612192. 2118.31 6.73 0.252313 0.222473 22750 144809 -1 3892 18 1676 5702 338292 74124 7.03204 7.03204 -161.195 -7.03204 0 0 782063. 2706.10 0.31 0.11 0.14 -1 -1 0.31 0.0368213 0.0333502 245 244 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_044.v common 6.97 vpr 64.45 MiB 0.02 6932 -1 -1 11 0.25 -1 -1 36396 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65992 31 32 246 278 1 188 89 17 17 289 -1 unnamed_device 26.0 MiB 0.28 1226 12167 3233 7670 1264 64.4 MiB 0.10 0.00 5.58198 -116.131 -5.58198 5.58198 0.89 0.000574235 0.000515912 0.0387619 0.0350647 38 2760 20 6.55708e+06 313430 638502. 2209.35 3.48 0.224687 0.196839 23326 155178 -1 2414 19 1078 3083 155384 35589 5.62318 5.62318 -126.898 -5.62318 0 0 851065. 2944.86 0.32 0.07 0.14 -1 -1 0.32 0.0269605 0.0241791 160 153 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_045.v common 5.88 vpr 64.59 MiB 0.02 7088 -1 -1 13 0.35 -1 -1 36940 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 31 32 268 300 1 203 90 17 17 289 -1 unnamed_device 26.2 MiB 0.47 1313 8934 2207 5709 1018 64.6 MiB 0.08 0.00 6.33076 -127.182 -6.33076 6.33076 0.94 0.000640405 0.000580586 0.0316186 0.0287421 30 3423 23 6.55708e+06 325485 526063. 1820.29 2.03 0.129716 0.115067 21886 126133 -1 2804 17 1239 4027 190404 45209 6.45096 6.45096 -143.57 -6.45096 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0289131 0.0261396 177 175 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_046.v common 8.26 vpr 65.05 MiB 0.02 7120 -1 -1 12 0.31 -1 -1 36240 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 32 32 318 350 1 229 98 17 17 289 -1 unnamed_device 26.4 MiB 0.42 1583 9323 2187 6162 974 65.1 MiB 0.08 0.00 6.05818 -133.31 -6.05818 6.05818 0.92 0.000768754 0.000694638 0.0325649 0.0293556 34 4150 47 6.55708e+06 409870 585099. 2024.56 4.54 0.306755 0.269169 22462 138074 -1 3504 16 1356 4671 258614 59249 6.41878 6.41878 -152.04 -6.41878 0 0 742403. 2568.87 0.30 0.08 0.13 -1 -1 0.30 0.0297282 0.0268807 227 223 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_047.v common 10.75 vpr 64.67 MiB 0.02 7020 -1 -1 13 0.31 -1 -1 36616 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 32 32 273 305 1 205 92 17 17 289 -1 unnamed_device 26.3 MiB 0.22 1331 10442 2617 6656 1169 64.7 MiB 0.09 0.00 6.26964 -131.303 -6.26964 6.26964 0.95 0.000670933 0.000603735 0.0368791 0.0335486 28 3805 28 6.55708e+06 337540 500653. 1732.36 7.14 0.255417 0.225911 21310 115450 -1 3210 24 1607 4674 385018 117254 6.93938 6.93938 -159.905 -6.93938 0 0 612192. 2118.31 0.27 0.14 0.11 -1 -1 0.27 0.0382036 0.0341942 184 178 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_048.v common 10.89 vpr 64.52 MiB 0.02 7052 -1 -1 13 0.28 -1 -1 36228 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 32 32 269 301 1 197 89 17 17 289 -1 unnamed_device 26.0 MiB 0.36 1292 9593 2136 5944 1513 64.5 MiB 0.08 0.00 6.22984 -132.494 -6.22984 6.22984 0.92 0.000599441 0.000539345 0.0328133 0.0297478 30 3003 22 6.55708e+06 301375 526063. 1820.29 7.28 0.231202 0.202097 21886 126133 -1 2713 17 1129 3284 167387 39059 6.6027 6.6027 -152.044 -6.6027 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0286482 0.0258701 175 174 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_049.v common 5.95 vpr 64.80 MiB 0.02 7208 -1 -1 12 0.34 -1 -1 36940 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 32 32 298 330 1 223 95 17 17 289 -1 unnamed_device 26.3 MiB 0.80 1500 8951 2009 6311 631 64.8 MiB 0.08 0.00 5.77858 -125.487 -5.77858 5.77858 0.94 0.00066343 0.000600265 0.0319751 0.0289117 30 3716 39 6.55708e+06 373705 526063. 1820.29 1.80 0.155507 0.137415 21886 126133 -1 2983 18 1273 4619 217735 50074 6.06278 6.06278 -143.72 -6.06278 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0326252 0.0293529 205 203 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_050.v common 6.32 vpr 64.93 MiB 0.02 7020 -1 -1 13 0.34 -1 -1 37100 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 32 32 299 331 1 235 93 17 17 289 -1 unnamed_device 26.4 MiB 0.42 1477 11853 3106 7365 1382 64.9 MiB 0.11 0.00 6.0801 -127.286 -6.0801 6.0801 0.95 0.000781348 0.000695913 0.0430425 0.0388855 30 3982 35 6.55708e+06 349595 526063. 1820.29 2.50 0.176218 0.156875 21886 126133 -1 3095 21 1515 4715 226913 52988 6.71064 6.71064 -149.7 -6.71064 0 0 666494. 2306.21 0.27 0.09 0.12 -1 -1 0.27 0.0343151 0.0306832 205 204 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_051.v common 5.22 vpr 64.59 MiB 0.02 7056 -1 -1 14 0.34 -1 -1 36452 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 259 291 1 193 89 17 17 289 -1 unnamed_device 26.1 MiB 0.48 1172 9989 2644 5964 1381 64.6 MiB 0.09 0.00 6.5961 -134.271 -6.5961 6.5961 0.91 0.00062305 0.000557648 0.0332586 0.0301379 30 2975 38 6.55708e+06 301375 526063. 1820.29 1.44 0.135913 0.119699 21886 126133 -1 2458 16 1119 3482 157693 38657 6.8803 6.8803 -154.727 -6.8803 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0246966 0.0221878 167 164 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_052.v common 6.05 vpr 64.71 MiB 0.02 7236 -1 -1 13 0.35 -1 -1 36552 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 32 32 293 325 1 226 94 17 17 289 -1 unnamed_device 26.4 MiB 0.63 1485 8614 1939 6164 511 64.7 MiB 0.08 0.00 7.09116 -142.125 -7.09116 7.09116 0.91 0.000615392 0.000565635 0.0297151 0.026932 30 3769 30 6.55708e+06 361650 526063. 1820.29 2.06 0.13685 0.120914 21886 126133 -1 3167 21 1634 5081 283406 70433 7.57196 7.57196 -163.668 -7.57196 0 0 666494. 2306.21 0.27 0.10 0.13 -1 -1 0.27 0.0340987 0.0305839 199 198 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_053.v common 7.81 vpr 64.92 MiB 0.02 7068 -1 -1 13 0.37 -1 -1 36328 -1 -1 32 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 31 32 311 343 1 231 95 17 17 289 -1 unnamed_device 26.4 MiB 0.37 1516 10895 2711 6792 1392 64.9 MiB 0.10 0.00 6.84616 -142.487 -6.84616 6.84616 0.94 0.000708575 0.000629871 0.0406472 0.0367093 36 3729 18 6.55708e+06 385760 612192. 2118.31 4.03 0.280341 0.246273 22750 144809 -1 3149 17 1371 4312 222858 51956 7.56736 7.56736 -161.561 -7.56736 0 0 782063. 2706.10 0.31 0.08 0.13 -1 -1 0.31 0.0324771 0.0293145 221 218 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_054.v common 18.61 vpr 65.38 MiB 0.02 7052 -1 -1 12 0.40 -1 -1 36684 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66948 32 32 324 356 1 240 96 17 17 289 -1 unnamed_device 26.7 MiB 0.51 1580 9951 2182 6412 1357 65.4 MiB 0.09 0.00 6.18804 -132.867 -6.18804 6.18804 0.92 0.000703602 0.000637348 0.0364156 0.0330551 30 4338 44 6.55708e+06 385760 526063. 1820.29 14.68 0.282547 0.246833 21886 126133 -1 3418 20 1711 5360 272112 63103 6.55324 6.55324 -155.943 -6.55324 0 0 666494. 2306.21 0.28 0.10 0.12 -1 -1 0.28 0.0345999 0.0310884 231 229 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_055.v common 6.95 vpr 63.95 MiB 0.02 6940 -1 -1 11 0.16 -1 -1 36244 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65480 32 32 216 248 1 165 83 17 17 289 -1 unnamed_device 25.5 MiB 0.24 956 8183 1868 5372 943 63.9 MiB 0.07 0.00 5.04006 -110.276 -5.04006 5.04006 0.95 0.000497446 0.00045468 0.0259608 0.0236951 30 2497 49 6.55708e+06 229045 526063. 1820.29 3.57 0.219396 0.192008 21886 126133 -1 2017 17 915 2489 117959 28883 5.16026 5.16026 -126.773 -5.16026 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0236824 0.0213027 127 121 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_056.v common 12.40 vpr 64.68 MiB 0.02 6900 -1 -1 13 0.24 -1 -1 36088 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 32 32 245 277 1 195 91 17 17 289 -1 unnamed_device 26.1 MiB 0.57 1291 4579 795 3577 207 64.7 MiB 0.05 0.00 6.22584 -136.991 -6.22584 6.22584 0.93 0.000591101 0.000527588 0.0168415 0.0153297 28 3707 31 6.55708e+06 325485 500653. 1732.36 8.65 0.192069 0.167035 21310 115450 -1 2967 25 1487 4426 328468 92298 7.03004 7.03004 -164.383 -7.03004 0 0 612192. 2118.31 0.26 0.11 0.12 -1 -1 0.26 0.032359 0.0286853 156 150 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_057.v common 6.89 vpr 65.07 MiB 0.02 7216 -1 -1 14 0.57 -1 -1 36572 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 32 32 361 393 1 263 100 17 17 289 -1 unnamed_device 26.8 MiB 0.47 1820 8916 1912 6150 854 65.1 MiB 0.09 0.00 7.24596 -154.69 -7.24596 7.24596 0.93 0.000824183 0.000744973 0.0355674 0.0321669 30 4723 38 6.55708e+06 433980 526063. 1820.29 2.75 0.181232 0.160415 21886 126133 -1 3915 18 1837 5694 296672 66851 7.60916 7.60916 -172.264 -7.60916 0 0 666494. 2306.21 0.29 0.11 0.12 -1 -1 0.29 0.0390848 0.0354294 267 266 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_058.v common 11.15 vpr 65.02 MiB 0.02 6944 -1 -1 13 0.42 -1 -1 36660 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 32 32 318 350 1 241 95 17 17 289 -1 unnamed_device 26.3 MiB 0.55 1481 8519 1873 6026 620 65.0 MiB 0.08 0.00 6.26904 -138.988 -6.26904 6.26904 0.92 0.000738138 0.000652353 0.0325731 0.0292489 26 4742 48 6.55708e+06 373705 477104. 1650.88 7.06 0.291501 0.25601 21022 109990 -1 3709 41 2654 8504 739890 265236 6.8013 6.8013 -164.866 -6.8013 0 0 585099. 2024.56 0.26 0.25 0.11 -1 -1 0.26 0.0643378 0.0570351 224 223 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_059.v common 7.22 vpr 64.38 MiB 0.02 6868 -1 -1 11 0.21 -1 -1 36408 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65920 30 32 223 255 1 165 85 17 17 289 -1 unnamed_device 25.7 MiB 0.24 1060 10315 2490 5888 1937 64.4 MiB 0.07 0.00 5.54218 -112.466 -5.54218 5.54218 0.93 0.000476011 0.000430919 0.0300842 0.0272881 34 2635 29 6.55708e+06 277265 585099. 2024.56 3.81 0.205754 0.179071 22462 138074 -1 2267 15 926 2797 162441 36960 5.98378 5.98378 -128.141 -5.98378 0 0 742403. 2568.87 0.30 0.06 0.14 -1 -1 0.30 0.021442 0.0193841 137 132 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_060.v common 8.16 vpr 65.16 MiB 0.02 7192 -1 -1 15 0.56 -1 -1 37344 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66724 32 32 335 367 1 253 97 17 17 289 -1 unnamed_device 26.7 MiB 0.42 1721 4981 814 3655 512 65.2 MiB 0.06 0.00 7.32495 -150.565 -7.32495 7.32495 0.91 0.000801502 0.000724289 0.0220804 0.0200395 34 4766 26 6.55708e+06 397815 585099. 2024.56 4.09 0.18388 0.161769 22462 138074 -1 3862 21 2293 7386 431745 95756 7.68555 7.68555 -173.02 -7.68555 0 0 742403. 2568.87 0.30 0.13 0.13 -1 -1 0.30 0.0406927 0.0363244 241 240 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_061.v common 6.81 vpr 64.93 MiB 0.02 7016 -1 -1 13 0.39 -1 -1 36636 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 32 32 301 333 1 226 93 17 17 289 -1 unnamed_device 26.4 MiB 0.43 1544 13533 3609 7429 2495 64.9 MiB 0.12 0.00 6.6811 -133.732 -6.6811 6.6811 0.95 0.000676521 0.000612937 0.048382 0.0437434 36 4052 43 6.55708e+06 349595 612192. 2118.31 2.86 0.219455 0.194939 22750 144809 -1 3238 16 1396 4030 239099 52835 7.2821 7.2821 -156.754 -7.2821 0 0 782063. 2706.10 0.33 0.09 0.14 -1 -1 0.33 0.0331177 0.0300736 207 206 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_062.v common 5.84 vpr 64.09 MiB 0.02 7000 -1 -1 11 0.16 -1 -1 36176 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65632 32 32 238 270 1 183 88 17 17 289 -1 unnamed_device 25.8 MiB 0.26 1224 7888 1831 5054 1003 64.1 MiB 0.07 0.00 5.37818 -114.048 -5.37818 5.37818 0.95 0.000549305 0.000490757 0.0254198 0.0230891 28 3126 43 6.55708e+06 289320 500653. 1732.36 2.47 0.132149 0.116751 21310 115450 -1 2669 16 1171 3418 205917 47118 5.69958 5.69958 -133.106 -5.69958 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0240532 0.021628 149 143 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_063.v common 8.48 vpr 64.83 MiB 0.02 7308 -1 -1 12 0.37 -1 -1 36748 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 308 340 1 230 95 17 17 289 -1 unnamed_device 26.4 MiB 0.40 1445 8303 1760 5821 722 64.8 MiB 0.08 0.00 5.91244 -124.224 -5.91244 5.91244 0.95 0.000686643 0.000619749 0.0306982 0.0278761 36 3667 37 6.55708e+06 373705 612192. 2118.31 4.57 0.274007 0.239324 22750 144809 -1 3061 19 1751 5669 333523 73249 6.39124 6.39124 -143.812 -6.39124 0 0 782063. 2706.10 0.32 0.11 0.14 -1 -1 0.32 0.0340915 0.0306568 217 213 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_064.v common 12.46 vpr 64.64 MiB 0.02 6908 -1 -1 12 0.24 -1 -1 36428 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 32 32 253 285 1 192 90 17 17 289 -1 unnamed_device 26.2 MiB 0.29 1134 5919 1133 4668 118 64.6 MiB 0.06 0.00 6.0409 -121.631 -6.0409 6.0409 0.92 0.000603991 0.000547368 0.0207739 0.0189066 34 3405 39 6.55708e+06 313430 585099. 2024.56 8.96 0.323257 0.282042 22462 138074 -1 2632 19 1243 3419 190007 45840 6.59044 6.59044 -145.896 -6.59044 0 0 742403. 2568.87 0.31 0.07 0.14 -1 -1 0.31 0.0276806 0.0248736 164 158 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_065.v common 5.91 vpr 63.97 MiB 0.02 7040 -1 -1 12 0.23 -1 -1 36520 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65504 30 32 227 259 1 163 83 17 17 289 -1 unnamed_device 25.4 MiB 0.25 1029 7463 1773 5054 636 64.0 MiB 0.06 0.00 5.78824 -121.367 -5.78824 5.78824 0.94 0.000536617 0.000482499 0.0256823 0.0232399 26 3015 29 6.55708e+06 253155 477104. 1650.88 2.53 0.113976 0.100389 21022 109990 -1 2422 16 978 2757 169712 38531 6.26904 6.26904 -139.534 -6.26904 0 0 585099. 2024.56 0.26 0.06 0.11 -1 -1 0.26 0.0230084 0.0206851 139 136 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_066.v common 7.62 vpr 64.86 MiB 0.02 7268 -1 -1 12 0.34 -1 -1 36676 -1 -1 32 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 29 32 292 324 1 222 93 17 17 289 -1 unnamed_device 26.4 MiB 0.32 1336 16893 4738 9260 2895 64.9 MiB 0.14 0.00 5.81778 -111.525 -5.81778 5.81778 0.95 0.000681976 0.000613558 0.0589226 0.0531613 32 4064 38 6.55708e+06 385760 554710. 1919.41 3.78 0.272321 0.23916 22174 131602 -1 3320 19 1635 5127 359846 80153 6.31284 6.31284 -128.708 -6.31284 0 0 701300. 2426.64 0.30 0.11 0.13 -1 -1 0.30 0.0341457 0.0307309 208 203 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_067.v common 8.09 vpr 65.25 MiB 0.02 7160 -1 -1 14 0.40 -1 -1 36328 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 32 32 316 348 1 253 96 17 17 289 -1 unnamed_device 26.6 MiB 0.64 1551 9732 2255 6890 587 65.3 MiB 0.09 0.00 6.7581 -140.801 -6.7581 6.7581 0.91 0.000716847 0.000650364 0.0361224 0.0327131 30 3812 21 6.55708e+06 385760 526063. 1820.29 4.02 0.293389 0.256506 21886 126133 -1 3217 18 1669 4702 217266 52065 7.26844 7.26844 -162.303 -7.26844 0 0 666494. 2306.21 0.28 0.09 0.12 -1 -1 0.28 0.0336677 0.0303444 227 221 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_068.v common 5.06 vpr 64.83 MiB 0.02 7024 -1 -1 12 0.29 -1 -1 36640 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 286 318 1 212 91 17 17 289 -1 unnamed_device 26.4 MiB 0.44 1425 15187 4302 8195 2690 64.8 MiB 0.12 0.00 6.02864 -130.772 -6.02864 6.02864 0.87 0.000617067 0.000562152 0.0509208 0.0460722 30 3622 26 6.55708e+06 325485 526063. 1820.29 1.42 0.152204 0.135115 21886 126133 -1 2941 21 1320 3743 184738 42646 6.50944 6.50944 -153.806 -6.50944 0 0 666494. 2306.21 0.27 0.08 0.13 -1 -1 0.27 0.0324234 0.0289001 192 191 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_069.v common 7.52 vpr 64.21 MiB 0.02 6896 -1 -1 12 0.18 -1 -1 36488 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65748 32 32 221 253 1 168 87 17 17 289 -1 unnamed_device 25.7 MiB 0.49 1126 8727 1952 5643 1132 64.2 MiB 0.07 0.00 5.73938 -123.055 -5.73938 5.73938 0.93 0.000511621 0.000465424 0.0259392 0.023696 36 2594 20 6.55708e+06 277265 612192. 2118.31 3.90 0.165287 0.144447 22750 144809 -1 2215 13 774 2315 129196 29489 6.09998 6.09998 -136.573 -6.09998 0 0 782063. 2706.10 0.32 0.05 0.14 -1 -1 0.32 0.0191196 0.0172976 133 126 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_070.v common 5.66 vpr 64.62 MiB 0.02 6920 -1 -1 12 0.27 -1 -1 35944 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 31 32 261 293 1 199 88 17 17 289 -1 unnamed_device 26.1 MiB 0.30 1210 11593 2972 6433 2188 64.6 MiB 0.10 0.00 6.1611 -122.975 -6.1611 6.1611 0.94 0.00058137 0.000529832 0.0390159 0.0354885 28 3556 25 6.55708e+06 301375 500653. 1732.36 2.10 0.13873 0.123542 21310 115450 -1 2961 19 1280 3401 206644 48784 6.63224 6.63224 -145.128 -6.63224 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0302881 0.0272307 170 168 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_071.v common 6.60 vpr 64.49 MiB 0.02 6924 -1 -1 11 0.24 -1 -1 36300 -1 -1 28 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66040 30 32 277 309 1 208 90 17 17 289 -1 unnamed_device 25.9 MiB 0.28 1197 13758 3727 8097 1934 64.5 MiB 0.12 0.00 5.41232 -108.488 -5.41232 5.41232 0.94 0.000624978 0.000563645 0.0462833 0.0417003 36 3362 30 6.55708e+06 337540 612192. 2118.31 2.95 0.2025 0.177829 22750 144809 -1 2874 16 1217 4103 239751 53931 5.77292 5.77292 -128.276 -5.77292 0 0 782063. 2706.10 0.33 0.09 0.14 -1 -1 0.33 0.0308966 0.028034 189 186 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_072.v common 11.60 vpr 64.72 MiB 0.02 7056 -1 -1 11 0.25 -1 -1 36492 -1 -1 28 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66276 28 32 251 283 1 194 88 17 17 289 -1 unnamed_device 26.1 MiB 0.38 1173 11398 2791 7434 1173 64.7 MiB 0.09 0.00 5.38078 -98.8334 -5.38078 5.38078 0.93 0.000615982 0.000560231 0.0363597 0.0328778 34 3321 37 6.55708e+06 337540 585099. 2024.56 7.99 0.282703 0.247379 22462 138074 -1 2708 15 1242 3997 250085 56769 5.62118 5.62118 -116.901 -5.62118 0 0 742403. 2568.87 0.30 0.08 0.13 -1 -1 0.30 0.0235597 0.021176 171 164 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_073.v common 6.96 vpr 64.46 MiB 0.02 7060 -1 -1 13 0.23 -1 -1 36124 -1 -1 25 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 30 32 223 255 1 182 87 17 17 289 -1 unnamed_device 26.1 MiB 0.53 1075 13143 3746 7099 2298 64.5 MiB 0.09 0.00 6.5589 -124.27 -6.5589 6.5589 0.94 0.000510222 0.000462032 0.0382355 0.0347096 30 2602 16 6.55708e+06 301375 526063. 1820.29 3.24 0.20884 0.18323 21886 126133 -1 2170 15 972 2505 119042 29218 6.7601 6.7601 -139.268 -6.7601 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0218082 0.0197256 142 132 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_074.v common 8.27 vpr 64.59 MiB 0.02 6788 -1 -1 12 0.24 -1 -1 36288 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 32 32 269 301 1 211 91 17 17 289 -1 unnamed_device 26.0 MiB 0.42 1277 6007 1257 4285 465 64.6 MiB 0.06 0.00 5.94764 -130.114 -5.94764 5.94764 0.94 0.000620159 0.000562906 0.0216342 0.0196865 30 3064 23 6.55708e+06 325485 526063. 1820.29 4.60 0.20072 0.176195 21886 126133 -1 2553 17 1174 3239 146543 35806 6.05818 6.05818 -143.601 -6.05818 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0282868 0.0255807 180 174 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_075.v common 6.94 vpr 64.68 MiB 0.02 7184 -1 -1 13 0.35 -1 -1 36420 -1 -1 30 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 31 32 283 315 1 212 93 17 17 289 -1 unnamed_device 26.2 MiB 0.44 1202 11643 3098 6957 1588 64.7 MiB 0.10 0.00 6.6811 -126.413 -6.6811 6.6811 0.99 0.000672523 0.000606915 0.039394 0.0355663 36 3125 21 6.55708e+06 361650 612192. 2118.31 3.04 0.196627 0.173182 22750 144809 -1 2620 20 1409 4161 209451 51190 6.9215 6.9215 -142.327 -6.9215 0 0 782063. 2706.10 0.32 0.08 0.14 -1 -1 0.32 0.0320353 0.0286514 195 190 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_076.v common 10.93 vpr 64.76 MiB 0.02 7040 -1 -1 14 0.36 -1 -1 37040 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66316 32 32 308 340 1 227 95 17 17 289 -1 unnamed_device 26.3 MiB 0.35 1421 10247 2480 6789 978 64.8 MiB 0.09 0.00 6.62564 -136.156 -6.62564 6.62564 0.92 0.00068497 0.000619723 0.0372455 0.0336992 28 3923 28 6.55708e+06 373705 500653. 1732.36 7.19 0.252774 0.221337 21310 115450 -1 3219 24 1711 5692 443344 139312 7.13598 7.13598 -162.615 -7.13598 0 0 612192. 2118.31 0.26 0.14 0.11 -1 -1 0.26 0.0397422 0.0354558 215 213 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_077.v common 7.35 vpr 64.95 MiB 0.02 7100 -1 -1 14 0.33 -1 -1 36588 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 32 32 277 309 1 210 91 17 17 289 -1 unnamed_device 26.4 MiB 0.51 1373 8047 1828 5829 390 64.9 MiB 0.08 0.00 6.4367 -125.847 -6.4367 6.4367 0.93 0.000649512 0.00058955 0.0292977 0.0265871 36 3375 23 6.55708e+06 325485 612192. 2118.31 3.43 0.193785 0.171378 22750 144809 -1 2906 19 1449 4912 268314 62237 6.74784 6.74784 -142.447 -6.74784 0 0 782063. 2706.10 0.32 0.09 0.14 -1 -1 0.32 0.0312926 0.0282204 183 182 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_078.v common 11.63 vpr 65.06 MiB 0.02 7028 -1 -1 13 0.44 -1 -1 37300 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66620 32 32 288 320 1 218 91 17 17 289 -1 unnamed_device 26.5 MiB 0.47 1415 13351 3374 8127 1850 65.1 MiB 0.12 0.00 6.48756 -131.843 -6.48756 6.48756 0.95 0.000693654 0.000627163 0.048243 0.0436148 36 3403 19 6.55708e+06 325485 612192. 2118.31 7.59 0.304278 0.266284 22750 144809 -1 2962 14 1263 3869 215899 49120 7.08856 7.08856 -154.863 -7.08856 0 0 782063. 2706.10 0.32 0.07 0.14 -1 -1 0.32 0.0260223 0.0235125 195 193 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_079.v common 6.60 vpr 64.33 MiB 0.02 7032 -1 -1 13 0.22 -1 -1 36496 -1 -1 24 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65872 30 32 230 262 1 183 86 17 17 289 -1 unnamed_device 26.0 MiB 0.31 1085 9914 2521 5942 1451 64.3 MiB 0.08 0.00 6.5177 -133.323 -6.5177 6.5177 0.92 0.000546932 0.000494447 0.03107 0.0282072 30 2547 20 6.55708e+06 289320 526063. 1820.29 3.11 0.179604 0.156559 21886 126133 -1 2167 16 993 2571 113882 28491 6.70664 6.70664 -147.535 -6.70664 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0225858 0.0202591 146 139 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_080.v common 13.19 vpr 64.92 MiB 0.02 7012 -1 -1 13 0.56 -1 -1 36720 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 30 32 294 326 1 230 93 17 17 289 -1 unnamed_device 26.4 MiB 0.37 1441 7863 1766 5061 1036 64.9 MiB 0.08 0.00 6.61036 -130.67 -6.61036 6.61036 0.93 0.000695727 0.000639835 0.0298981 0.0271567 28 4343 42 6.55708e+06 373705 500653. 1732.36 9.26 0.26271 0.230415 21310 115450 -1 3395 18 1668 4824 274752 64604 7.49556 7.49556 -166.586 -7.49556 0 0 612192. 2118.31 0.25 0.09 0.11 -1 -1 0.25 0.031537 0.0283695 208 203 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_081.v common 8.66 vpr 65.03 MiB 0.02 7224 -1 -1 14 0.37 -1 -1 36428 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 32 32 276 308 1 206 94 17 17 289 -1 unnamed_device 26.5 MiB 0.40 1329 10744 2540 7052 1152 65.0 MiB 0.10 0.00 6.25798 -133.908 -6.25798 6.25798 0.93 0.000648622 0.000578363 0.0361005 0.0326472 34 3399 50 6.55708e+06 361650 585099. 2024.56 4.78 0.310034 0.272138 22462 138074 -1 2975 19 1653 5523 315805 70971 6.64812 6.64812 -153.36 -6.64812 0 0 742403. 2568.87 0.32 0.11 0.14 -1 -1 0.32 0.0367729 0.0332085 184 181 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_082.v common 7.57 vpr 65.09 MiB 0.02 7124 -1 -1 12 0.31 -1 -1 36540 -1 -1 32 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66656 31 32 293 325 1 227 95 17 17 289 -1 unnamed_device 26.5 MiB 0.29 1414 5279 910 4135 234 65.1 MiB 0.05 0.00 6.8777 -136.484 -6.8777 6.8777 0.92 0.00062293 0.000559892 0.0194295 0.017589 36 3523 39 6.55708e+06 385760 612192. 2118.31 4.01 0.252842 0.221435 22750 144809 -1 2857 14 1228 3634 198887 46676 7.1971 7.1971 -152.134 -7.1971 0 0 782063. 2706.10 0.32 0.07 0.13 -1 -1 0.32 0.0257868 0.0233054 203 200 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_083.v common 8.56 vpr 64.69 MiB 0.02 6968 -1 -1 13 0.31 -1 -1 36364 -1 -1 28 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 30 32 273 305 1 212 90 17 17 289 -1 unnamed_device 26.1 MiB 0.30 1289 6723 1311 4981 431 64.7 MiB 0.06 0.00 6.2421 -114.622 -6.2421 6.2421 0.94 0.000624009 0.000567019 0.0246618 0.0225093 34 3348 45 6.55708e+06 337540 585099. 2024.56 4.93 0.274036 0.239348 22462 138074 -1 2879 20 1292 3756 210980 49070 6.63224 6.63224 -131.959 -6.63224 0 0 742403. 2568.87 0.31 0.08 0.14 -1 -1 0.31 0.0317149 0.0285119 186 182 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_084.v common 8.27 vpr 65.11 MiB 0.02 7016 -1 -1 14 0.46 -1 -1 36984 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 32 32 310 342 1 239 96 17 17 289 -1 unnamed_device 26.5 MiB 0.58 1501 7761 1798 5436 527 65.1 MiB 0.08 0.00 7.17982 -144.412 -7.17982 7.17982 0.95 0.000704032 0.000637462 0.029622 0.0268214 32 4294 36 6.55708e+06 385760 554710. 1919.41 4.13 0.310871 0.273688 22174 131602 -1 3653 16 1557 4521 286845 66626 7.52815 7.52815 -165.887 -7.52815 0 0 701300. 2426.64 0.30 0.10 0.13 -1 -1 0.30 0.0331421 0.0300542 220 215 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_085.v common 5.90 vpr 64.61 MiB 0.02 7148 -1 -1 11 0.36 -1 -1 36520 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66160 29 32 259 291 1 190 90 17 17 289 -1 unnamed_device 26.0 MiB 0.40 1220 6522 1299 4436 787 64.6 MiB 0.06 0.00 5.51064 -108.632 -5.51064 5.51064 0.92 0.000613701 0.000557107 0.023086 0.020974 28 3318 27 6.55708e+06 349595 500653. 1732.36 2.20 0.122541 0.108231 21310 115450 -1 2923 14 1177 3705 216501 49337 5.87124 5.87124 -129.169 -5.87124 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0247164 0.0224441 174 170 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_086.v common 7.67 vpr 64.41 MiB 0.02 6980 -1 -1 13 0.20 -1 -1 36268 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65952 32 32 225 257 1 185 87 17 17 289 -1 unnamed_device 26.1 MiB 0.40 1104 8919 1998 5788 1133 64.4 MiB 0.07 0.00 6.1983 -135.763 -6.1983 6.1983 0.95 0.000554285 0.000503675 0.02794 0.0254471 26 3196 44 6.55708e+06 277265 477104. 1650.88 4.17 0.20213 0.177542 21022 109990 -1 2563 16 1158 2876 181672 41958 6.6791 6.6791 -159.22 -6.6791 0 0 585099. 2024.56 0.25 0.07 0.11 -1 -1 0.25 0.0222948 0.0200609 142 130 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_087.v common 9.86 vpr 64.52 MiB 0.02 7204 -1 -1 14 0.29 -1 -1 36368 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66068 32 32 273 305 1 209 91 17 17 289 -1 unnamed_device 26.2 MiB 0.29 1343 8455 1791 5776 888 64.5 MiB 0.08 0.00 6.57116 -134.157 -6.57116 6.57116 0.92 0.000638288 0.00058069 0.0300607 0.0272356 28 3627 33 6.55708e+06 325485 500653. 1732.36 6.35 0.261387 0.228004 21310 115450 -1 3030 18 1293 3494 198075 46643 6.81156 6.81156 -152.482 -6.81156 0 0 612192. 2118.31 0.26 0.08 0.11 -1 -1 0.26 0.0282868 0.0254464 183 178 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_088.v common 5.31 vpr 64.95 MiB 0.02 6944 -1 -1 15 0.47 -1 -1 36768 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 32 32 322 354 1 251 96 17 17 289 -1 unnamed_device 26.6 MiB 0.66 1596 8199 1748 5624 827 64.9 MiB 0.10 0.00 7.85521 -161.425 -7.85521 7.85521 0.91 0.000743255 0.000679043 0.0381479 0.0348609 30 3852 17 6.55708e+06 385760 526063. 1820.29 1.17 0.135971 0.121045 21886 126133 -1 3281 18 1514 4261 192201 46760 8.05641 8.05641 -180.75 -8.05641 0 0 666494. 2306.21 0.27 0.08 0.12 -1 -1 0.27 0.0331674 0.0298637 228 227 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_089.v common 7.56 vpr 63.99 MiB 0.02 6828 -1 -1 11 0.20 -1 -1 36420 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65524 32 32 218 250 1 164 86 17 17 289 -1 unnamed_device 25.5 MiB 0.73 924 8402 1871 6371 160 64.0 MiB 0.07 0.00 5.35124 -108.779 -5.35124 5.35124 0.89 0.00046546 0.000424071 0.0238743 0.0215696 32 2723 44 6.55708e+06 265210 554710. 1919.41 3.75 0.206505 0.179767 22174 131602 -1 2222 19 966 2778 244537 73022 5.91304 5.91304 -132.471 -5.91304 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0235876 0.0211256 126 123 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_090.v common 6.11 vpr 64.55 MiB 0.02 6816 -1 -1 12 0.23 -1 -1 36292 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 31 32 244 276 1 192 89 17 17 289 -1 unnamed_device 26.1 MiB 0.46 1250 8207 1908 5219 1080 64.5 MiB 0.07 0.00 6.07044 -129.079 -6.07044 6.07044 0.94 0.000581991 0.000527474 0.0266368 0.0241333 36 2950 27 6.55708e+06 313430 612192. 2118.31 2.41 0.180925 0.159603 22750 144809 -1 2578 17 1074 3143 169709 38930 6.22984 6.22984 -144.594 -6.22984 0 0 782063. 2706.10 0.33 0.07 0.13 -1 -1 0.33 0.0261721 0.0236243 157 151 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_091.v common 6.22 vpr 64.86 MiB 0.02 7144 -1 -1 12 0.39 -1 -1 36496 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 32 32 301 333 1 231 95 17 17 289 -1 unnamed_device 26.4 MiB 0.43 1495 8951 2218 5801 932 64.9 MiB 0.09 0.00 6.1611 -137.527 -6.1611 6.1611 0.94 0.000699854 0.000634982 0.0331902 0.0300915 28 4194 37 6.55708e+06 373705 500653. 1732.36 2.40 0.158669 0.140654 21310 115450 -1 3458 15 1508 4398 252427 58120 6.2813 6.2813 -159.614 -6.2813 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0285159 0.0257426 209 206 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_092.v common 21.41 vpr 65.02 MiB 0.02 7024 -1 -1 12 0.31 -1 -1 36452 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 32 32 278 310 1 215 92 17 17 289 -1 unnamed_device 26.2 MiB 0.57 1496 10649 2728 6324 1597 65.0 MiB 0.09 0.00 6.38924 -134.971 -6.38924 6.38924 0.95 0.000631699 0.000569101 0.0363421 0.0329588 28 4682 46 6.55708e+06 337540 500653. 1732.36 17.49 0.267733 0.236163 21310 115450 -1 3710 22 1864 5749 407349 92655 6.66884 6.66884 -164.014 -6.66884 0 0 612192. 2118.31 0.25 0.12 0.11 -1 -1 0.25 0.0334689 0.0299332 186 183 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_093.v common 8.18 vpr 65.23 MiB 0.02 7304 -1 -1 14 0.58 -1 -1 36860 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 32 32 333 365 1 247 99 17 17 289 -1 unnamed_device 26.8 MiB 0.34 1647 12411 3008 7932 1471 65.2 MiB 0.12 0.00 7.32696 -151.807 -7.32696 7.32696 0.95 0.000771978 0.000700995 0.0469042 0.0425208 36 4388 37 6.55708e+06 421925 612192. 2118.31 4.06 0.259393 0.229306 22750 144809 -1 3691 18 1714 5336 301957 68995 7.52815 7.52815 -165.857 -7.52815 0 0 782063. 2706.10 0.33 0.11 0.14 -1 -1 0.33 0.0387544 0.0350658 241 238 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_094.v common 6.51 vpr 64.75 MiB 0.02 7112 -1 -1 11 0.29 -1 -1 36568 -1 -1 27 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 30 32 261 293 1 202 89 17 17 289 -1 unnamed_device 26.2 MiB 0.54 1294 13553 3631 7670 2252 64.8 MiB 0.11 0.00 5.55184 -108.109 -5.55184 5.55184 0.95 0.000610175 0.000553168 0.0456428 0.0414365 28 4047 44 6.55708e+06 325485 500653. 1732.36 2.58 0.159948 0.141311 21310 115450 -1 3090 21 1634 5141 339920 74010 5.83404 5.83404 -130.254 -5.83404 0 0 612192. 2118.31 0.28 0.11 0.12 -1 -1 0.28 0.0317831 0.0282937 176 170 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_095.v common 4.50 vpr 64.04 MiB 0.02 6980 -1 -1 11 0.21 -1 -1 36472 -1 -1 25 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65580 27 32 217 249 1 157 84 17 17 289 -1 unnamed_device 25.5 MiB 0.27 904 7221 1742 4800 679 64.0 MiB 0.06 0.00 5.29918 -99.4913 -5.29918 5.29918 0.94 0.000534208 0.000486486 0.0232954 0.0211868 26 2491 22 6.55708e+06 301375 477104. 1650.88 1.16 0.10021 0.0884562 21022 109990 -1 2107 15 944 2599 145439 34323 5.50038 5.50038 -114.074 -5.50038 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0217969 0.0196032 138 132 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_096.v common 8.94 vpr 65.21 MiB 0.02 7364 -1 -1 13 0.55 -1 -1 36756 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 32 32 373 405 1 274 104 17 17 289 -1 unnamed_device 27.1 MiB 0.33 1869 9620 2275 6325 1020 65.2 MiB 0.10 0.00 6.54924 -135.588 -6.54924 6.54924 0.92 0.000850068 0.000763731 0.0386222 0.03486 34 5680 37 6.55708e+06 482200 585099. 2024.56 4.85 0.270498 0.238755 22462 138074 -1 4464 21 2506 8596 557624 123721 6.90018 6.90018 -159.284 -6.90018 0 0 742403. 2568.87 0.31 0.17 0.14 -1 -1 0.31 0.0477416 0.0432083 280 278 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_097.v common 7.78 vpr 64.72 MiB 0.02 7188 -1 -1 14 0.35 -1 -1 36780 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66276 31 32 269 301 1 201 89 17 17 289 -1 unnamed_device 26.1 MiB 0.31 1284 9593 2195 6437 961 64.7 MiB 0.09 0.00 6.92456 -139.428 -6.92456 6.92456 0.94 0.000635975 0.000581923 0.0344926 0.0313935 36 3045 26 6.55708e+06 313430 612192. 2118.31 4.03 0.233632 0.204956 22750 144809 -1 2590 19 1167 3412 174525 41426 7.24856 7.24856 -155.97 -7.24856 0 0 782063. 2706.10 0.33 0.07 0.14 -1 -1 0.33 0.0300755 0.0270288 178 176 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_098.v common 7.90 vpr 64.48 MiB 0.02 6968 -1 -1 12 0.19 -1 -1 36412 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66028 32 32 228 260 1 185 91 17 17 289 -1 unnamed_device 26.1 MiB 0.45 1202 13147 3375 7497 2275 64.5 MiB 0.10 0.00 6.01498 -136.633 -6.01498 6.01498 0.91 0.000527172 0.000479095 0.0373189 0.0339011 36 2986 29 6.55708e+06 325485 612192. 2118.31 4.27 0.193571 0.16913 22750 144809 -1 2556 16 995 2792 163694 36835 6.61598 6.61598 -157.989 -6.61598 0 0 782063. 2706.10 0.32 0.06 0.14 -1 -1 0.32 0.0225065 0.0201802 144 133 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_099.v common 6.95 vpr 64.68 MiB 0.02 7164 -1 -1 13 0.38 -1 -1 36668 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 32 32 265 297 1 201 89 17 17 289 -1 unnamed_device 26.1 MiB 0.52 1271 6227 1298 4334 595 64.7 MiB 0.06 0.00 6.3205 -125.028 -6.3205 6.3205 0.92 0.00064228 0.000578984 0.0236313 0.0214449 36 3215 48 6.55708e+06 301375 612192. 2118.31 3.04 0.203868 0.17908 22750 144809 -1 2706 18 1261 3932 209667 49344 6.8033 6.8033 -145.074 -6.8033 0 0 782063. 2706.10 0.32 0.08 0.14 -1 -1 0.32 0.0290799 0.0261626 172 170 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_100.v common 13.53 vpr 65.20 MiB 0.02 7144 -1 -1 13 0.37 -1 -1 37120 -1 -1 35 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66760 31 32 325 357 1 256 98 17 17 289 -1 unnamed_device 26.8 MiB 0.38 1672 9998 2281 7007 710 65.2 MiB 0.09 0.00 6.0781 -130.807 -6.0781 6.0781 0.91 0.000737162 0.0006668 0.0345433 0.0312202 36 4027 16 6.55708e+06 421925 612192. 2118.31 9.75 0.326632 0.286342 22750 144809 -1 3553 16 1652 5133 282342 64582 6.7993 6.7993 -152.989 -6.7993 0 0 782063. 2706.10 0.32 0.10 0.13 -1 -1 0.32 0.033096 0.0299802 235 232 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_101.v common 7.94 vpr 64.58 MiB 0.02 7212 -1 -1 11 0.29 -1 -1 36580 -1 -1 32 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 30 32 287 319 1 210 94 17 17 289 -1 unnamed_device 26.2 MiB 0.48 1393 6484 1238 4828 418 64.6 MiB 0.06 0.00 5.79284 -117.238 -5.79284 5.79284 0.94 0.000656872 0.000586924 0.0238637 0.0215334 36 3433 23 6.55708e+06 385760 612192. 2118.31 4.10 0.264253 0.232585 22750 144809 -1 2926 16 1185 4071 219147 49411 6.15084 6.15084 -135.007 -6.15084 0 0 782063. 2706.10 0.33 0.08 0.14 -1 -1 0.33 0.0309313 0.0280259 199 196 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_102.v common 6.53 vpr 64.92 MiB 0.02 7148 -1 -1 15 0.41 -1 -1 36772 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 32 32 297 329 1 230 93 17 17 289 -1 unnamed_device 26.4 MiB 0.38 1440 9543 2254 5965 1324 64.9 MiB 0.09 0.00 7.33722 -153.632 -7.33722 7.33722 0.94 0.000688079 0.000624923 0.0350281 0.0317195 34 4220 36 6.55708e+06 349595 585099. 2024.56 2.65 0.207163 0.182388 22462 138074 -1 3258 16 1399 4256 254571 58264 7.93821 7.93821 -173.369 -7.93821 0 0 742403. 2568.87 0.30 0.08 0.14 -1 -1 0.30 0.0293523 0.0264774 203 202 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_103.v common 8.38 vpr 65.08 MiB 0.02 6984 -1 -1 13 0.41 -1 -1 36632 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 311 343 1 238 96 17 17 289 -1 unnamed_device 26.6 MiB 0.24 1549 11703 2904 7439 1360 65.1 MiB 0.11 0.00 6.3577 -137.811 -6.3577 6.3577 0.95 0.000701722 0.000634246 0.0427262 0.0387103 34 4081 42 6.55708e+06 385760 585099. 2024.56 4.59 0.315946 0.277023 22462 138074 -1 3322 21 1638 5031 271510 62839 6.7621 6.7621 -158.491 -6.7621 0 0 742403. 2568.87 0.31 0.10 0.14 -1 -1 0.31 0.0391704 0.0352911 217 216 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_104.v common 7.97 vpr 64.59 MiB 0.02 6804 -1 -1 12 0.25 -1 -1 36148 -1 -1 29 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66136 29 32 236 268 1 192 90 17 17 289 -1 unnamed_device 26.1 MiB 0.53 1143 7728 1821 5116 791 64.6 MiB 0.07 0.00 5.65838 -122.207 -5.65838 5.65838 0.94 0.000582303 0.000521363 0.0246778 0.0224897 26 3489 43 6.55708e+06 349595 477104. 1650.88 4.28 0.190454 0.166493 21022 109990 -1 2766 25 1502 3883 317668 98664 6.26138 6.26138 -147.884 -6.26138 0 0 585099. 2024.56 0.24 0.11 0.11 -1 -1 0.24 0.031182 0.0277046 159 147 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_105.v common 7.78 vpr 64.23 MiB 0.02 6940 -1 -1 11 0.19 -1 -1 36456 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65772 32 32 231 263 1 179 86 17 17 289 -1 unnamed_device 25.9 MiB 0.47 1049 8213 1798 6131 284 64.2 MiB 0.07 0.00 5.63084 -118.475 -5.63084 5.63084 0.94 0.000545121 0.00049004 0.0256838 0.0231883 36 2762 19 6.55708e+06 265210 612192. 2118.31 4.11 0.224646 0.196081 22750 144809 -1 2327 16 1002 2719 138572 33894 5.99144 5.99144 -138.907 -5.99144 0 0 782063. 2706.10 0.32 0.06 0.14 -1 -1 0.32 0.0223363 0.0199881 138 136 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_106.v common 5.54 vpr 64.97 MiB 0.02 7004 -1 -1 13 0.39 -1 -1 36976 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 31 32 294 326 1 224 94 17 17 289 -1 unnamed_device 26.4 MiB 0.44 1362 7549 1607 5468 474 65.0 MiB 0.07 0.00 6.78504 -137.898 -6.78504 6.78504 0.92 0.000677238 0.000611003 0.0277091 0.0250563 30 3554 25 6.55708e+06 373705 526063. 1820.29 1.74 0.129095 0.113737 21886 126133 -1 2907 18 1407 4468 214530 51194 6.9959 6.9959 -155.051 -6.9959 0 0 666494. 2306.21 0.28 0.08 0.12 -1 -1 0.28 0.0305241 0.0274378 204 201 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_107.v common 7.17 vpr 64.44 MiB 0.02 6872 -1 -1 10 0.22 -1 -1 36220 -1 -1 24 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65984 29 32 221 253 1 166 85 17 17 289 -1 unnamed_device 25.9 MiB 0.26 1038 9199 2235 5441 1523 64.4 MiB 0.07 0.00 4.88972 -100.056 -4.88972 4.88972 0.93 0.000493611 0.00044469 0.0273793 0.0248005 30 2482 38 6.55708e+06 289320 526063. 1820.29 3.78 0.21646 0.188094 21886 126133 -1 2024 16 880 2475 112758 27755 5.26458 5.26458 -114.663 -5.26458 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0220265 0.0198177 138 132 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_108.v common 7.39 vpr 64.30 MiB 0.02 6976 -1 -1 14 0.23 -1 -1 36112 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65848 32 32 240 272 1 178 88 17 17 289 -1 unnamed_device 25.9 MiB 0.54 1104 9643 2259 5449 1935 64.3 MiB 0.08 0.00 6.6399 -136.092 -6.6399 6.6399 0.94 0.000552818 0.000504237 0.0308261 0.0280754 34 2852 20 6.55708e+06 289320 585099. 2024.56 3.62 0.207209 0.180975 22462 138074 -1 2349 15 933 2780 150434 35481 6.6399 6.6399 -148.559 -6.6399 0 0 742403. 2568.87 0.31 0.06 0.14 -1 -1 0.31 0.0224053 0.0202087 149 145 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_109.v common 6.11 vpr 64.70 MiB 0.02 7144 -1 -1 12 0.40 -1 -1 36592 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 31 32 292 324 1 211 92 17 17 289 -1 unnamed_device 26.3 MiB 0.38 1340 9821 2515 6151 1155 64.7 MiB 0.09 0.00 6.2787 -130.261 -6.2787 6.2787 0.94 0.000674472 0.000613255 0.036296 0.0328609 36 3111 15 6.55708e+06 349595 612192. 2118.31 2.20 0.187843 0.165909 22750 144809 -1 2829 16 1291 4192 228248 52713 6.62964 6.62964 -148.757 -6.62964 0 0 782063. 2706.10 0.32 0.08 0.15 -1 -1 0.32 0.0293179 0.0265472 201 199 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_110.v common 5.22 vpr 64.19 MiB 0.02 6976 -1 -1 12 0.19 -1 -1 36064 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65732 31 32 229 261 1 182 86 17 17 289 -1 unnamed_device 25.8 MiB 0.38 1126 6134 1174 4650 310 64.2 MiB 0.05 0.00 5.61918 -122.046 -5.61918 5.61918 0.92 0.000493931 0.00044776 0.0189657 0.0172575 28 3255 43 6.55708e+06 277265 500653. 1732.36 1.74 0.116391 0.102552 21310 115450 -1 2716 25 1053 2778 260394 85422 5.98178 5.98178 -140.716 -5.98178 0 0 612192. 2118.31 0.27 0.10 0.11 -1 -1 0.27 0.0292492 0.0259883 141 136 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_111.v common 5.25 vpr 64.88 MiB 0.02 7228 -1 -1 12 0.24 -1 -1 36684 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 32 32 282 314 1 205 91 17 17 289 -1 unnamed_device 26.2 MiB 0.34 1363 7843 1797 5442 604 64.9 MiB 0.07 0.00 5.82038 -126.658 -5.82038 5.82038 0.94 0.00062081 0.000559924 0.0286713 0.0258782 30 3561 49 6.55708e+06 325485 526063. 1820.29 1.63 0.152768 0.134318 21886 126133 -1 2844 18 1219 3836 196733 44856 6.34038 6.34038 -146.497 -6.34038 0 0 666494. 2306.21 0.30 0.08 0.12 -1 -1 0.30 0.0296437 0.026662 188 187 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_112.v common 5.70 vpr 64.81 MiB 0.02 7164 -1 -1 13 0.35 -1 -1 36552 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 31 32 269 301 1 216 92 17 17 289 -1 unnamed_device 26.3 MiB 0.35 1324 6923 1551 4414 958 64.8 MiB 0.07 0.00 6.1591 -129.623 -6.1591 6.1591 0.94 0.000645147 0.000585085 0.0247802 0.0225247 30 3538 38 6.55708e+06 349595 526063. 1820.29 1.96 0.13476 0.118853 21886 126133 -1 2925 17 1332 3936 201229 46729 6.3995 6.3995 -149.915 -6.3995 0 0 666494. 2306.21 0.28 0.07 0.13 -1 -1 0.28 0.0269528 0.0241818 179 176 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_113.v common 11.80 vpr 64.49 MiB 0.02 6916 -1 -1 11 0.21 -1 -1 36456 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66040 32 32 237 269 1 184 91 17 17 289 -1 unnamed_device 26.0 MiB 0.29 1252 6823 1345 4982 496 64.5 MiB 0.06 0.00 5.59164 -121.723 -5.59164 5.59164 0.92 0.000552977 0.000505025 0.0206843 0.0188431 30 3124 19 6.55708e+06 325485 526063. 1820.29 8.38 0.230605 0.200735 21886 126133 -1 2610 16 1082 3309 163238 38423 5.63544 5.63544 -135.442 -5.63544 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0236809 0.0213538 148 142 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_114.v common 7.08 vpr 64.46 MiB 0.02 6924 -1 -1 13 0.25 -1 -1 36408 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 32 32 259 291 1 202 91 17 17 289 -1 unnamed_device 26.0 MiB 0.30 1255 11515 2790 7390 1335 64.5 MiB 0.09 0.00 6.38524 -135.012 -6.38524 6.38524 0.91 0.000549383 0.000502542 0.0368162 0.0334289 30 2955 17 6.55708e+06 325485 526063. 1820.29 3.59 0.216925 0.190054 21886 126133 -1 2514 14 980 2739 140083 32885 6.62564 6.62564 -149.011 -6.62564 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0236679 0.0214364 167 164 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_115.v common 4.98 vpr 64.99 MiB 0.02 7164 -1 -1 13 0.31 -1 -1 36512 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 32 32 277 309 1 220 91 17 17 289 -1 unnamed_device 26.5 MiB 0.22 1447 9883 2771 5881 1231 65.0 MiB 0.09 0.00 6.37196 -131.547 -6.37196 6.37196 0.92 0.000637896 0.000578865 0.03379 0.0307017 30 3781 24 6.55708e+06 325485 526063. 1820.29 1.41 0.131143 0.116273 21886 126133 -1 3115 17 1373 3977 200864 46766 6.97296 6.97296 -153.132 -6.97296 0 0 666494. 2306.21 0.28 0.08 0.11 -1 -1 0.28 0.0280417 0.0253079 184 182 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_116.v common 5.86 vpr 64.55 MiB 0.02 7068 -1 -1 11 0.27 -1 -1 36352 -1 -1 28 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66100 29 32 245 277 1 189 89 17 17 289 -1 unnamed_device 26.1 MiB 0.40 1158 12167 3308 6389 2470 64.6 MiB 0.09 0.00 5.44952 -104.688 -5.44952 5.44952 0.92 0.000587216 0.000532252 0.0382152 0.0346259 34 2969 20 6.55708e+06 337540 585099. 2024.56 2.04 0.172084 0.151259 22462 138074 -1 2635 30 1303 4246 467896 196541 5.84932 5.84932 -122.806 -5.84932 0 0 742403. 2568.87 0.32 0.17 0.14 -1 -1 0.32 0.0380436 0.033777 162 156 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_117.v common 6.74 vpr 65.34 MiB 0.02 7280 -1 -1 14 0.38 -1 -1 37284 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66912 32 32 316 348 1 250 96 17 17 289 -1 unnamed_device 26.6 MiB 0.44 1601 8199 1723 5717 759 65.3 MiB 0.08 0.00 6.98322 -149.58 -6.98322 6.98322 0.92 0.000661114 0.00057995 0.0306656 0.0277194 36 4146 23 6.55708e+06 385760 612192. 2118.31 2.91 0.200178 0.176091 22750 144809 -1 3464 17 1570 4652 252207 58281 7.22362 7.22362 -166.317 -7.22362 0 0 782063. 2706.10 0.31 0.09 0.15 -1 -1 0.31 0.0335574 0.0301627 225 221 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_118.v common 5.11 vpr 64.43 MiB 0.02 6812 -1 -1 12 0.19 -1 -1 36288 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65972 31 32 230 262 1 186 91 17 17 289 -1 unnamed_device 26.0 MiB 0.49 1042 8863 2205 5322 1336 64.4 MiB 0.07 0.00 5.43224 -114.074 -5.43224 5.43224 0.94 0.000539874 0.000491587 0.0256835 0.0233058 30 2873 35 6.55708e+06 337540 526063. 1820.29 1.47 0.119866 0.106017 21886 126133 -1 2154 17 988 2638 125540 30840 5.55244 5.55244 -128.37 -5.55244 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0232746 0.0209202 145 137 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_119.v common 7.57 vpr 64.85 MiB 0.02 7048 -1 -1 13 0.35 -1 -1 37020 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 282 314 1 213 91 17 17 289 -1 unnamed_device 26.5 MiB 0.44 1431 5599 1064 3987 548 64.9 MiB 0.06 0.00 6.50944 -129.672 -6.50944 6.50944 0.94 0.000655481 0.000596944 0.0216316 0.0197159 30 3317 20 6.55708e+06 325485 526063. 1820.29 3.79 0.234071 0.205359 21886 126133 -1 2846 16 1270 4021 200341 45512 6.50944 6.50944 -143.913 -6.50944 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0278433 0.0251728 189 187 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_120.v common 5.34 vpr 64.25 MiB 0.02 6892 -1 -1 13 0.23 -1 -1 36312 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65796 32 32 235 267 1 180 89 17 17 289 -1 unnamed_device 25.9 MiB 0.46 1113 12365 3461 6577 2327 64.3 MiB 0.09 0.00 6.30884 -134.257 -6.30884 6.30884 0.93 0.000529301 0.000476643 0.0365211 0.033134 28 3251 42 6.55708e+06 301375 500653. 1732.36 1.70 0.136837 0.120719 21310 115450 -1 2533 17 1141 2919 165013 40554 6.78964 6.78964 -155.929 -6.78964 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0226797 0.020283 146 140 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_121.v common 12.32 vpr 64.41 MiB 0.02 7176 -1 -1 12 0.27 -1 -1 36564 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65956 32 32 265 297 1 193 90 17 17 289 -1 unnamed_device 25.9 MiB 0.38 1206 5517 1016 4177 324 64.4 MiB 0.05 0.00 6.0821 -125.095 -6.0821 6.0821 0.96 0.000620666 0.0005654 0.0204863 0.0187047 26 3730 45 6.55708e+06 313430 477104. 1650.88 8.70 0.227742 0.199348 21022 109990 -1 2869 24 1417 4513 309839 70165 6.75184 6.75184 -150.99 -6.75184 0 0 585099. 2024.56 0.26 0.10 0.10 -1 -1 0.26 0.0331235 0.0294658 172 170 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_122.v common 9.09 vpr 65.21 MiB 0.02 7364 -1 -1 15 0.58 -1 -1 36692 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 32 32 344 376 1 259 98 17 17 289 -1 unnamed_device 27.0 MiB 0.36 1706 9773 2264 6646 863 65.2 MiB 0.10 0.00 7.45942 -149.096 -7.45942 7.45942 0.93 0.000785892 0.000711127 0.0390114 0.0352877 36 4457 27 6.55708e+06 409870 612192. 2118.31 5.04 0.237965 0.209469 22750 144809 -1 3739 17 1812 5753 310932 72001 7.82001 7.82001 -169.418 -7.82001 0 0 782063. 2706.10 0.31 0.10 0.14 -1 -1 0.31 0.0361068 0.0326169 250 249 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_123.v common 4.15 vpr 63.79 MiB 0.02 6892 -1 -1 10 0.11 -1 -1 35852 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65324 30 32 173 205 1 127 78 17 17 289 -1 unnamed_device 25.3 MiB 0.34 657 5722 1277 4285 160 63.8 MiB 0.04 0.00 4.40126 -96.7004 -4.40126 4.40126 0.91 0.000390287 0.000353845 0.0153217 0.013937 30 1589 14 6.55708e+06 192880 526063. 1820.29 0.89 0.0634333 0.0557051 21886 126133 -1 1456 13 548 1296 71678 17576 4.64166 4.64166 -113.649 -4.64166 0 0 666494. 2306.21 0.27 0.04 0.12 -1 -1 0.27 0.0145928 0.0131658 92 82 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_124.v common 4.42 vpr 64.16 MiB 0.02 6952 -1 -1 13 0.22 -1 -1 36300 -1 -1 29 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65704 30 32 229 261 1 172 91 17 17 289 -1 unnamed_device 25.8 MiB 0.24 1134 7027 1670 4551 806 64.2 MiB 0.06 0.00 6.2375 -126.903 -6.2375 6.2375 0.94 0.000567397 0.000497133 0.0215565 0.0196182 30 2518 17 6.55708e+06 349595 526063. 1820.29 1.02 0.0915042 0.0807713 21886 126133 -1 2273 16 909 2531 117073 28568 6.4779 6.4779 -142.931 -6.4779 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0226406 0.0203558 150 138 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_125.v common 5.57 vpr 64.50 MiB 0.02 6884 -1 -1 12 0.24 -1 -1 36356 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 32 32 261 293 1 201 87 17 17 289 -1 unnamed_device 26.0 MiB 0.37 1242 6999 1430 4516 1053 64.5 MiB 0.07 0.00 5.66498 -124.229 -5.66498 5.66498 0.92 0.000595864 0.000533236 0.0254474 0.0230422 36 2891 15 6.55708e+06 277265 612192. 2118.31 1.96 0.132193 0.115964 22750 144809 -1 2539 15 1105 3101 158889 37878 5.90538 5.90538 -141.884 -5.90538 0 0 782063. 2706.10 0.32 0.07 0.14 -1 -1 0.32 0.0252774 0.0228467 167 166 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_126.v common 4.43 vpr 63.94 MiB 0.02 6872 -1 -1 9 0.16 -1 -1 36008 -1 -1 25 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65476 25 32 184 216 1 141 82 17 17 289 -1 unnamed_device 25.5 MiB 0.20 819 11652 3252 6639 1761 63.9 MiB 0.08 0.00 4.55866 -86.4056 -4.55866 4.55866 0.94 0.000420173 0.000378431 0.03083 0.0278955 26 2214 25 6.55708e+06 301375 477104. 1650.88 1.20 0.0969873 0.0855425 21022 109990 -1 1858 16 830 2327 125984 29716 4.80106 4.80106 -100.644 -4.80106 0 0 585099. 2024.56 0.25 0.05 0.11 -1 -1 0.25 0.0178168 0.0158707 112 103 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_127.v common 8.87 vpr 64.62 MiB 0.02 7012 -1 -1 12 0.32 -1 -1 36208 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 32 32 302 334 1 239 98 17 17 289 -1 unnamed_device 26.0 MiB 0.69 1676 7973 1663 5689 621 64.6 MiB 0.08 0.00 6.3205 -139.133 -6.3205 6.3205 0.96 0.000698174 0.000633739 0.028747 0.0260712 38 3806 32 6.55708e+06 409870 638502. 2209.35 4.71 0.269355 0.236382 23326 155178 -1 3250 17 1462 4323 208136 48366 6.63224 6.63224 -157.424 -6.63224 0 0 851065. 2944.86 0.34 0.08 0.15 -1 -1 0.34 0.0309474 0.027974 209 207 -1 -1 -1 -1 + fixed_k6_N8_gate_boost_0.2V_22nm.xml mult_128.v common 7.82 vpr 65.03 MiB 0.02 7100 -1 -1 14 0.40 -1 -1 36904 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 31 32 295 327 1 219 92 17 17 289 -1 unnamed_device 26.5 MiB 0.53 1367 13754 3548 7597 2609 65.0 MiB 0.12 0.00 7.02242 -137.908 -7.02242 7.02242 0.92 0.000685557 0.000622722 0.0494778 0.0446841 36 3559 22 6.55708e+06 349595 612192. 2118.31 3.78 0.274646 0.240171 22750 144809 -1 2823 20 1180 3614 185719 44327 7.17216 7.17216 -152.054 -7.17216 0 0 782063. 2706.10 0.31 0.08 0.14 -1 -1 0.31 0.0364256 0.0328299 204 202 -1 -1 -1 -1 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_001.v common 4.21 vpr 65.20 MiB 0.02 7208 -1 -1 1 0.03 -1 -1 34020 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 32 32 438 350 1 194 100 17 17 289 -1 unnamed_device 26.9 MiB 0.11 940 12396 3110 7978 1308 65.2 MiB 0.12 0.00 3.40616 -114.923 -3.40616 3.40616 0.93 0.000589881 0.000527695 0.0337176 0.0307508 32 2548 22 6.64007e+06 452088 554710. 1919.41 1.03 0.108379 0.0954485 22834 132086 -1 2174 22 1870 3090 206097 47904 3.69943 3.69943 -139.504 -3.69943 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.028028 0.0248206 153 80 32 32 96 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_002.v common 4.27 vpr 65.02 MiB 0.02 7292 -1 -1 1 0.03 -1 -1 34028 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 30 32 409 330 1 186 85 17 17 289 -1 unnamed_device 26.2 MiB 0.19 959 13291 4221 6457 2613 65.0 MiB 0.12 0.00 3.72596 -114.095 -3.72596 3.72596 0.91 0.00053882 0.000490195 0.0415116 0.0378515 32 2438 28 6.64007e+06 288834 554710. 1919.41 1.04 0.119143 0.105091 22834 132086 -1 2023 22 1709 2936 178948 42961 3.61442 3.61442 -132.572 -3.61442 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0269549 0.0238774 142 78 30 30 89 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_003.v common 6.87 vpr 65.13 MiB 0.02 7300 -1 -1 1 0.03 -1 -1 33912 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 32 32 387 309 1 186 99 17 17 289 -1 unnamed_device 26.5 MiB 0.10 931 8991 1923 6602 466 65.1 MiB 0.08 0.00 3.13925 -105.417 -3.13925 3.13925 0.94 0.000546348 0.000500611 0.0240354 0.0218913 24 3242 49 6.64007e+06 439530 448715. 1552.65 3.84 0.146648 0.12779 21394 104001 -1 2400 22 1692 2712 268591 56760 3.88703 3.88703 -141.948 -3.88703 0 0 554710. 1919.41 0.22 0.08 0.09 -1 -1 0.22 0.023767 0.0209482 142 50 54 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_004.v common 4.29 vpr 64.89 MiB 0.02 7060 -1 -1 1 0.03 -1 -1 34140 -1 -1 24 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 29 32 343 267 1 184 85 17 17 289 -1 unnamed_device 26.3 MiB 0.07 996 16081 5140 8933 2008 64.9 MiB 0.15 0.00 3.58556 -108.327 -3.58556 3.58556 0.95 0.000508879 0.000463668 0.0497475 0.0454358 26 2457 21 6.64007e+06 301392 477104. 1650.88 1.17 0.119046 0.105745 21682 110474 -1 2135 20 1712 2921 203141 45874 3.80683 3.80683 -134.843 -3.80683 0 0 585099. 2024.56 0.26 0.07 0.11 -1 -1 0.26 0.0229688 0.0204155 138 25 87 29 29 29 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_005.v common 4.16 vpr 65.24 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 34060 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 32 32 376 288 1 195 86 17 17 289 -1 unnamed_device 26.6 MiB 0.09 1039 12938 3395 8690 853 65.2 MiB 0.12 0.00 3.30796 -117.815 -3.30796 3.30796 0.93 0.000560425 0.000510024 0.0375062 0.0340726 32 2591 22 6.64007e+06 276276 554710. 1919.41 1.01 0.105919 0.0931255 22834 132086 -1 2192 21 1998 3633 244050 54779 3.84763 3.84763 -144.227 -3.84763 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0250408 0.0221855 153 31 96 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_006.v common 4.25 vpr 65.26 MiB 0.02 7368 -1 -1 1 0.03 -1 -1 34152 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 32 32 402 316 1 199 103 17 17 289 -1 unnamed_device 26.8 MiB 0.12 992 19624 5740 11235 2649 65.3 MiB 0.17 0.00 2.7819 -96.9768 -2.7819 2.7819 0.94 0.000558553 0.000508979 0.046961 0.0427462 32 2317 19 6.64007e+06 489762 554710. 1919.41 0.99 0.117298 0.103765 22834 132086 -1 1856 20 1398 2312 133949 33288 2.70657 2.70657 -110.122 -2.70657 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0256069 0.0226797 156 61 63 32 63 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_007.v common 3.87 vpr 64.34 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 33984 -1 -1 20 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65884 27 32 269 226 1 135 79 17 17 289 -1 unnamed_device 26.0 MiB 0.09 734 10388 3326 6105 957 64.3 MiB 0.08 0.00 3.0775 -85.9753 -3.0775 3.0775 0.93 0.000400835 0.000366506 0.0273401 0.0250103 28 1618 22 6.64007e+06 251160 500653. 1732.36 0.88 0.0793206 0.069963 21970 115934 -1 1493 20 813 1464 96740 22850 2.79977 2.79977 -98.9991 -2.79977 0 0 612192. 2118.31 0.28 0.05 0.11 -1 -1 0.28 0.0186742 0.0165472 96 26 54 27 27 27 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_008.v common 4.08 vpr 65.09 MiB 0.02 7056 -1 -1 1 0.03 -1 -1 33604 -1 -1 34 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 31 32 317 242 1 185 97 17 17 289 -1 unnamed_device 26.5 MiB 0.08 1037 12973 3452 8106 1415 65.1 MiB 0.11 0.00 2.9483 -95.6493 -2.9483 2.9483 0.95 0.000477146 0.00043471 0.0302599 0.0276775 32 2269 19 6.64007e+06 426972 554710. 1919.41 0.94 0.0893183 0.0789247 22834 132086 -1 2019 20 1253 2108 136453 30839 2.77497 2.77497 -107.827 -2.77497 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0213286 0.0189036 140 -1 115 31 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_009.v common 4.06 vpr 64.77 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 33820 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 31 32 338 292 1 147 80 17 17 289 -1 unnamed_device 26.0 MiB 0.14 813 8336 2254 4620 1462 64.8 MiB 0.07 0.00 2.69519 -86.3861 -2.69519 2.69519 0.94 0.000487764 0.000436445 0.024573 0.0224668 32 1832 17 6.64007e+06 213486 554710. 1919.41 0.95 0.0832391 0.0733223 22834 132086 -1 1660 19 961 1558 117471 26713 2.76197 2.76197 -100.107 -2.76197 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0212958 0.0189066 106 81 0 0 84 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_010.v common 4.16 vpr 64.92 MiB 0.02 7160 -1 -1 1 0.03 -1 -1 33688 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 32 32 314 256 1 162 81 17 17 289 -1 unnamed_device 26.2 MiB 0.14 858 12506 3688 7273 1545 64.9 MiB 0.10 0.00 2.7849 -102.219 -2.7849 2.7849 0.92 0.000438115 0.000399572 0.0349763 0.0319615 32 1974 22 6.64007e+06 213486 554710. 1919.41 0.99 0.097787 0.0865251 22834 132086 -1 1832 19 1374 2063 153070 33666 2.97697 2.97697 -123.12 -2.97697 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0210675 0.0187901 121 31 64 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_011.v common 4.08 vpr 65.00 MiB 0.02 7152 -1 -1 1 0.03 -1 -1 33428 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 30 32 325 273 1 151 80 17 17 289 -1 unnamed_device 26.2 MiB 0.14 738 12120 3363 8072 685 65.0 MiB 0.10 0.00 2.80139 -91.9352 -2.80139 2.80139 0.94 0.000478085 0.000435395 0.034771 0.0317907 32 1746 18 6.64007e+06 226044 554710. 1919.41 0.92 0.0917123 0.0809232 22834 132086 -1 1575 19 1079 1508 104198 24692 2.85597 2.85597 -111.981 -2.85597 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0208629 0.0185178 110 58 30 30 60 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_012.v common 4.05 vpr 64.87 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 33696 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 32 32 331 280 1 156 93 17 17 289 -1 unnamed_device 26.1 MiB 0.10 814 9963 2256 7305 402 64.9 MiB 0.09 0.00 2.6877 -91.3221 -2.6877 2.6877 0.94 0.000465332 0.000422493 0.0248998 0.0226733 30 1974 18 6.64007e+06 364182 526063. 1820.29 0.96 0.0842773 0.0741228 22546 126617 -1 1685 20 1044 1717 101257 23034 2.64137 2.64137 -109.69 -2.64137 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0217275 0.0192118 114 57 25 25 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_013.v common 4.32 vpr 65.10 MiB 0.02 7324 -1 -1 1 0.03 -1 -1 33936 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 32 32 386 305 1 188 98 17 17 289 -1 unnamed_device 26.4 MiB 0.19 953 18998 6107 10302 2589 65.1 MiB 0.16 0.00 2.8189 -100.107 -2.8189 2.8189 0.93 0.000563265 0.000513628 0.0500809 0.0456094 32 2483 21 6.64007e+06 426972 554710. 1919.41 1.01 0.120125 0.106224 22834 132086 -1 2011 20 1643 2870 188513 43053 2.83157 2.83157 -117.242 -2.83157 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0244656 0.0215997 145 55 64 32 57 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_014.v common 4.80 vpr 65.16 MiB 0.02 7232 -1 -1 1 0.03 -1 -1 33960 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 32 32 407 319 1 200 100 17 17 289 -1 unnamed_device 26.7 MiB 0.13 1027 12860 3255 7884 1721 65.2 MiB 0.12 0.00 3.40616 -119.112 -3.40616 3.40616 0.93 0.000594466 0.000540433 0.0333578 0.030442 26 3111 26 6.64007e+06 452088 477104. 1650.88 1.67 0.121053 0.107125 21682 110474 -1 2423 19 1786 2758 214212 46320 3.76663 3.76663 -147.755 -3.76663 0 0 585099. 2024.56 0.25 0.08 0.11 -1 -1 0.25 0.0256484 0.0228115 158 60 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_015.v common 3.91 vpr 64.45 MiB 0.02 7176 -1 -1 1 0.03 -1 -1 33920 -1 -1 19 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66000 29 32 272 228 1 145 80 17 17 289 -1 unnamed_device 26.0 MiB 0.10 882 11948 3221 7009 1718 64.5 MiB 0.09 0.00 2.7049 -87.2042 -2.7049 2.7049 0.93 0.000412933 0.000378719 0.0299059 0.0273401 28 1883 23 6.64007e+06 238602 500653. 1732.36 0.89 0.0847841 0.0747746 21970 115934 -1 1711 19 950 1611 108009 24871 2.70957 2.70957 -102.377 -2.70957 0 0 612192. 2118.31 0.27 0.05 0.11 -1 -1 0.27 0.0184944 0.0163749 108 21 58 29 24 24 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_016.v common 4.94 vpr 65.26 MiB 0.02 7164 -1 -1 1 0.03 -1 -1 34040 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 32 32 401 315 1 192 86 17 17 289 -1 unnamed_device 26.5 MiB 0.15 1105 14450 4624 7653 2173 65.3 MiB 0.13 0.00 2.82639 -103.29 -2.82639 2.82639 0.93 0.000565359 0.000512887 0.0432859 0.0393793 34 2396 28 6.64007e+06 276276 585099. 2024.56 1.72 0.170659 0.149433 23122 138558 -1 2171 19 1553 2744 192871 41708 2.96197 2.96197 -121.816 -2.96197 0 0 742403. 2568.87 0.31 0.07 0.13 -1 -1 0.31 0.0240061 0.0212701 147 60 64 32 62 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_017.v common 6.39 vpr 65.31 MiB 0.02 7296 -1 -1 1 0.03 -1 -1 33980 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 32 32 383 303 1 185 100 17 17 289 -1 unnamed_device 26.6 MiB 0.15 1055 16804 4937 9541 2326 65.3 MiB 0.14 0.00 2.9051 -104.799 -2.9051 2.9051 0.92 0.000540765 0.000485914 0.0415838 0.0379906 34 2160 21 6.64007e+06 452088 585099. 2024.56 3.17 0.174764 0.152828 23122 138558 -1 1941 20 1179 1784 131097 29652 2.87877 2.87877 -117.12 -2.87877 0 0 742403. 2568.87 0.30 0.06 0.14 -1 -1 0.30 0.0237408 0.0210022 144 54 64 32 56 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_018.v common 4.10 vpr 64.97 MiB 0.02 6952 -1 -1 1 0.03 -1 -1 33820 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 32 32 339 284 1 162 95 17 17 289 -1 unnamed_device 26.4 MiB 0.12 916 11111 2887 6946 1278 65.0 MiB 0.09 0.00 2.26464 -84.6836 -2.26464 2.26464 0.95 0.000482699 0.000437943 0.0275377 0.0250736 32 2021 20 6.64007e+06 389298 554710. 1919.41 0.94 0.0873791 0.0767485 22834 132086 -1 1790 20 1180 1890 132657 29535 2.13951 2.13951 -97.9627 -2.13951 0 0 701300. 2426.64 0.28 0.05 0.13 -1 -1 0.28 0.020969 0.0185037 119 62 29 29 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_019.v common 3.90 vpr 64.29 MiB 0.02 6824 -1 -1 1 0.03 -1 -1 33524 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65836 30 32 226 208 1 119 77 17 17 289 -1 unnamed_device 25.8 MiB 0.04 659 9857 3750 4636 1471 64.3 MiB 0.06 0.00 2.12244 -71.4892 -2.12244 2.12244 0.96 0.000361651 0.000329515 0.0236397 0.0215621 32 1416 21 6.64007e+06 188370 554710. 1919.41 0.91 0.0680274 0.0597149 22834 132086 -1 1280 20 759 1096 91199 20571 1.91011 1.91011 -80.0114 -1.91011 0 0 701300. 2426.64 0.30 0.04 0.13 -1 -1 0.30 0.0152258 0.0133692 85 29 24 24 30 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_020.v common 4.08 vpr 64.63 MiB 0.02 7028 -1 -1 1 0.03 -1 -1 34012 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66184 31 32 335 280 1 154 80 17 17 289 -1 unnamed_device 25.9 MiB 0.12 791 11260 3917 5279 2064 64.6 MiB 0.09 0.00 3.39356 -100.857 -3.39356 3.39356 0.95 0.000486563 0.000443641 0.0333135 0.0304025 32 1874 23 6.64007e+06 213486 554710. 1919.41 0.93 0.0955142 0.0842739 22834 132086 -1 1654 17 826 1230 87694 20541 3.35923 3.35923 -120.167 -3.35923 0 0 701300. 2426.64 0.28 0.05 0.13 -1 -1 0.28 0.0198125 0.0176666 113 55 31 31 62 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_021.v common 4.19 vpr 65.16 MiB 0.02 7156 -1 -1 1 0.03 -1 -1 33704 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 32 32 366 283 1 192 100 17 17 289 -1 unnamed_device 26.5 MiB 0.09 957 14716 3898 8652 2166 65.2 MiB 0.12 0.00 3.37436 -112.852 -3.37436 3.37436 0.95 0.000540598 0.000492558 0.0357112 0.0325525 32 2333 21 6.64007e+06 452088 554710. 1919.41 0.98 0.103387 0.0912296 22834 132086 -1 2062 19 1595 2295 160899 37221 3.75403 3.75403 -134.062 -3.75403 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0238834 0.0213147 147 31 91 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_022.v common 5.26 vpr 65.02 MiB 0.02 7396 -1 -1 1 0.04 -1 -1 34216 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 32 32 460 375 1 196 102 17 17 289 -1 unnamed_device 26.7 MiB 0.20 1045 10336 2316 7561 459 65.0 MiB 0.10 0.00 3.01205 -102.424 -3.01205 3.01205 0.97 0.000614373 0.00055068 0.0293144 0.026611 26 3152 26 6.64007e+06 477204 477104. 1650.88 1.95 0.117374 0.103135 21682 110474 -1 2439 19 1499 2412 201240 44279 3.71983 3.71983 -136.461 -3.71983 0 0 585099. 2024.56 0.26 0.08 0.11 -1 -1 0.26 0.0269608 0.0238823 150 108 0 0 125 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_023.v common 3.87 vpr 63.89 MiB 0.01 6872 -1 -1 1 0.03 -1 -1 34000 -1 -1 17 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65428 26 32 198 186 1 109 75 17 17 289 -1 unnamed_device 25.6 MiB 0.08 460 10661 3396 6323 942 63.9 MiB 0.06 0.00 2.13964 -57.6102 -2.13964 2.13964 0.98 0.000323496 0.000295506 0.0228232 0.02083 28 1171 18 6.64007e+06 213486 500653. 1732.36 0.88 0.0610298 0.0537 21970 115934 -1 997 14 482 684 44298 11598 1.86491 1.86491 -68.5461 -1.86491 0 0 612192. 2118.31 0.27 0.03 0.11 -1 -1 0.27 0.0114241 0.0101981 77 21 26 26 22 22 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_024.v common 4.19 vpr 64.77 MiB 0.02 7000 -1 -1 1 0.03 -1 -1 33776 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 32 32 333 251 1 187 86 17 17 289 -1 unnamed_device 26.3 MiB 0.07 966 13694 4000 7434 2260 64.8 MiB 0.12 0.00 3.59776 -112.749 -3.59776 3.59776 0.97 0.000476565 0.000432643 0.0386397 0.0353255 32 2315 22 6.64007e+06 276276 554710. 1919.41 1.00 0.106444 0.0943386 22834 132086 -1 2056 21 1608 2801 179556 42423 3.88183 3.88183 -138.533 -3.88183 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0238204 0.0211284 138 -1 122 32 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_025.v common 3.83 vpr 64.03 MiB 0.02 6704 -1 -1 1 0.03 -1 -1 34020 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65568 32 32 199 182 1 122 77 17 17 289 -1 unnamed_device 25.6 MiB 0.04 738 11650 4187 6337 1126 64.0 MiB 0.07 0.00 1.98053 -74.6663 -1.98053 1.98053 0.92 0.000298539 0.000273162 0.0235366 0.02151 26 1521 19 6.64007e+06 163254 477104. 1650.88 0.94 0.0684781 0.0606999 21682 110474 -1 1376 19 621 849 72449 16746 1.91011 1.91011 -84.589 -1.91011 0 0 585099. 2024.56 0.26 0.04 0.11 -1 -1 0.26 0.0148153 0.0131557 81 -1 53 32 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_026.v common 4.25 vpr 65.01 MiB 0.02 7164 -1 -1 1 0.03 -1 -1 34236 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66568 32 32 376 288 1 194 99 17 17 289 -1 unnamed_device 26.3 MiB 0.07 1045 19935 6966 10554 2415 65.0 MiB 0.16 0.00 3.34716 -118.75 -3.34716 3.34716 0.92 0.000528204 0.000479372 0.0492417 0.044756 32 2472 22 6.64007e+06 439530 554710. 1919.41 1.03 0.122135 0.108301 22834 132086 -1 2148 20 1733 2585 191114 41804 3.81183 3.81183 -143.661 -3.81183 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.024922 0.0221953 153 21 96 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_027.v common 4.09 vpr 65.40 MiB 0.02 6980 -1 -1 1 0.03 -1 -1 34024 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66972 32 32 337 253 1 196 101 17 17 289 -1 unnamed_device 26.6 MiB 0.09 1078 12556 3215 8276 1065 65.4 MiB 0.11 0.00 2.8281 -101.368 -2.8281 2.8281 0.93 0.000471871 0.000426966 0.0284533 0.0259082 32 2401 22 6.64007e+06 464646 554710. 1919.41 0.95 0.091745 0.0806769 22834 132086 -1 2109 22 1591 2551 178686 41388 2.84217 2.84217 -116.664 -2.84217 0 0 701300. 2426.64 0.29 0.07 0.12 -1 -1 0.29 0.0242214 0.0214012 152 -1 124 32 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_028.v common 4.18 vpr 65.31 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 34132 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 32 32 407 319 1 197 101 17 17 289 -1 unnamed_device 26.8 MiB 0.08 1107 16786 4660 10331 1795 65.3 MiB 0.15 0.00 3.43916 -120.992 -3.43916 3.43916 0.92 0.0005529 0.000499371 0.0418062 0.0381345 32 2605 23 6.64007e+06 464646 554710. 1919.41 1.01 0.114809 0.101301 22834 132086 -1 2223 24 1966 3112 212365 47204 3.76663 3.76663 -144.701 -3.76663 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0291532 0.0256658 155 54 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_029.v common 3.94 vpr 64.84 MiB 0.02 6972 -1 -1 1 0.03 -1 -1 34096 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 294 246 1 149 80 17 17 289 -1 unnamed_device 26.1 MiB 0.06 883 6788 1443 4591 754 64.8 MiB 0.06 0.00 2.45379 -88.0962 -2.45379 2.45379 0.93 0.000434443 0.000396073 0.019383 0.0177467 26 2026 20 6.64007e+06 200928 477104. 1650.88 0.98 0.0774014 0.0680423 21682 110474 -1 1850 19 1049 1712 128972 28406 2.78297 2.78297 -110.872 -2.78297 0 0 585099. 2024.56 0.25 0.05 0.11 -1 -1 0.25 0.0191829 0.0169758 107 31 54 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_030.v common 4.06 vpr 64.80 MiB 0.02 7072 -1 -1 1 0.03 -1 -1 33684 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 30 32 296 244 1 154 81 17 17 289 -1 unnamed_device 26.2 MiB 0.08 885 12331 4112 6539 1680 64.8 MiB 0.10 0.00 2.7739 -95.2054 -2.7739 2.7739 0.95 0.000458105 0.000417206 0.0335721 0.0306921 32 1832 21 6.64007e+06 238602 554710. 1919.41 0.95 0.0904058 0.0799497 22834 132086 -1 1569 21 1151 1681 103872 23476 2.65457 2.65457 -107.291 -2.65457 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0202999 0.0179106 115 29 60 30 30 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_031.v common 4.03 vpr 64.61 MiB 0.02 6908 -1 -1 1 0.03 -1 -1 33860 -1 -1 20 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 28 32 278 232 1 150 80 17 17 289 -1 unnamed_device 26.1 MiB 0.08 709 11604 3401 6165 2038 64.6 MiB 0.09 0.00 2.7097 -82.3302 -2.7097 2.7097 0.93 0.000420142 0.000381996 0.0304506 0.0278206 32 1736 21 6.64007e+06 251160 554710. 1919.41 0.94 0.0832674 0.073414 22834 132086 -1 1526 20 1220 2014 115081 27307 2.84797 2.84797 -100.66 -2.84797 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0184121 0.0162388 107 27 56 28 28 28 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_032.v common 4.08 vpr 64.59 MiB 0.02 6868 -1 -1 1 0.03 -1 -1 33792 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 283 225 1 166 82 17 17 289 -1 unnamed_device 26.0 MiB 0.08 802 15746 4832 8534 2380 64.6 MiB 0.12 0.00 2.8039 -97.2121 -2.8039 2.8039 0.93 0.000437039 0.000392063 0.0412125 0.037636 32 2031 21 6.64007e+06 226044 554710. 1919.41 0.97 0.0970835 0.0860612 22834 132086 -1 1802 20 1480 2389 171433 40323 3.20937 3.20937 -123.701 -3.20937 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0202517 0.0179132 125 -1 96 32 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_033.v common 4.07 vpr 64.81 MiB 0.02 7008 -1 -1 1 0.03 -1 -1 34056 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 31 32 303 249 1 162 94 17 17 289 -1 unnamed_device 26.2 MiB 0.05 798 17134 4773 10047 2314 64.8 MiB 0.14 0.00 2.7427 -94.3449 -2.7427 2.7427 0.98 0.000452042 0.000413312 0.0384785 0.0350888 30 1861 21 6.64007e+06 389298 526063. 1820.29 0.93 0.0961914 0.0849439 22546 126617 -1 1640 19 1053 1747 104459 24030 2.80297 2.80297 -109.059 -2.80297 0 0 666494. 2306.21 0.30 0.05 0.12 -1 -1 0.30 0.0196066 0.0174292 119 26 61 31 31 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_034.v common 4.07 vpr 64.59 MiB 0.02 7284 -1 -1 1 0.03 -1 -1 33860 -1 -1 31 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 29 32 312 264 1 154 92 17 17 289 -1 unnamed_device 26.2 MiB 0.12 815 13961 3491 8938 1532 64.6 MiB 0.11 0.00 2.26464 -77.4691 -2.26464 2.26464 0.96 0.000450878 0.000406501 0.0331479 0.0300419 32 1849 19 6.64007e+06 389298 554710. 1919.41 0.93 0.0890352 0.078373 22834 132086 -1 1578 19 1077 1705 108326 25222 2.22951 2.22951 -89.4698 -2.22951 0 0 701300. 2426.64 0.30 0.05 0.12 -1 -1 0.30 0.0189633 0.0167827 110 55 29 29 57 29 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_035.v common 5.38 vpr 65.17 MiB 0.03 7216 -1 -1 1 0.04 -1 -1 34148 -1 -1 41 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 32 32 423 310 1 229 105 17 17 289 -1 unnamed_device 27.0 MiB 0.16 1240 16654 4157 10533 1964 65.2 MiB 0.16 0.00 3.41716 -120.482 -3.41716 3.41716 0.95 0.000667784 0.000609547 0.0444948 0.0406668 26 3676 29 6.64007e+06 514878 477104. 1650.88 2.07 0.138298 0.122779 21682 110474 -1 2824 23 1961 3484 286420 59289 4.03123 4.03123 -148.527 -4.03123 0 0 585099. 2024.56 0.25 0.10 0.11 -1 -1 0.25 0.0313171 0.0278046 181 26 128 32 27 27 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_036.v common 4.21 vpr 65.39 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 34096 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66956 32 32 403 317 1 198 101 17 17 289 -1 unnamed_device 26.7 MiB 0.14 1047 13966 3755 8826 1385 65.4 MiB 0.12 0.00 2.8611 -103.198 -2.8611 2.8611 0.95 0.000624984 0.000567168 0.034653 0.0314176 30 2183 22 6.64007e+06 464646 526063. 1820.29 0.99 0.109269 0.0961054 22546 126617 -1 1936 20 1651 2499 131652 31056 2.87197 2.87197 -118.521 -2.87197 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0254575 0.0225453 154 62 62 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_037.v common 4.70 vpr 64.97 MiB 0.02 6964 -1 -1 1 0.03 -1 -1 34240 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 31 32 353 302 1 156 92 17 17 289 -1 unnamed_device 26.2 MiB 0.18 653 7958 1641 6002 315 65.0 MiB 0.07 0.00 2.9621 -88.3938 -2.9621 2.9621 0.93 0.000479772 0.000436754 0.0207634 0.0189655 26 2295 50 6.64007e+06 364182 477104. 1650.88 1.68 0.110053 0.0961632 21682 110474 -1 1715 19 1168 1892 131866 31907 3.11417 3.11417 -115.304 -3.11417 0 0 585099. 2024.56 0.24 0.06 0.11 -1 -1 0.24 0.0218789 0.0194307 114 77 0 0 89 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_038.v common 4.19 vpr 65.12 MiB 0.02 7464 -1 -1 1 0.03 -1 -1 34064 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 31 32 391 309 1 194 87 17 17 289 -1 unnamed_device 26.5 MiB 0.13 1072 9495 2347 6456 692 65.1 MiB 0.09 0.00 2.9211 -97.283 -2.9211 2.9211 0.94 0.000539096 0.000493151 0.0296646 0.0271208 32 2422 22 6.64007e+06 301392 554710. 1919.41 1.01 0.0997763 0.0878185 22834 132086 -1 2166 22 1621 2759 223639 47089 2.87197 2.87197 -115.141 -2.87197 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0260963 0.0230745 149 59 60 30 62 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_039.v common 5.11 vpr 65.33 MiB 0.02 7244 -1 -1 1 0.03 -1 -1 33864 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66900 31 32 455 371 1 193 86 17 17 289 -1 unnamed_device 26.7 MiB 0.35 950 7646 1733 5487 426 65.3 MiB 0.09 0.00 4.33141 -122.046 -4.33141 4.33141 0.95 0.000615039 0.00056138 0.0273002 0.0249703 26 2947 43 6.64007e+06 288834 477104. 1650.88 1.72 0.132998 0.116867 21682 110474 -1 2290 21 1252 2180 145281 36230 4.26108 4.26108 -150.999 -4.26108 0 0 585099. 2024.56 0.27 0.07 0.11 -1 -1 0.27 0.0297784 0.0264387 150 111 0 0 124 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_040.v common 4.27 vpr 65.01 MiB 0.02 7196 -1 -1 1 0.03 -1 -1 33876 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 31 32 413 333 1 188 86 17 17 289 -1 unnamed_device 26.2 MiB 0.19 1040 14828 4594 8679 1555 65.0 MiB 0.14 0.00 4.04401 -111.298 -4.04401 4.04401 0.95 0.000582025 0.000530742 0.0467982 0.0427389 28 2547 23 6.64007e+06 288834 500653. 1732.36 0.99 0.121384 0.107362 21970 115934 -1 2234 21 1209 2034 142673 32215 4.09488 4.09488 -137.029 -4.09488 0 0 612192. 2118.31 0.26 0.06 0.12 -1 -1 0.26 0.0263294 0.0233186 144 86 31 31 89 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_041.v common 4.27 vpr 65.23 MiB 0.02 7292 -1 -1 1 0.03 -1 -1 33688 -1 -1 35 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66800 31 32 391 309 1 193 98 17 17 289 -1 unnamed_device 26.5 MiB 0.13 1050 18998 5381 11592 2025 65.2 MiB 0.16 0.00 2.8409 -98.7901 -2.8409 2.8409 0.95 0.000531827 0.000485862 0.0490138 0.044427 26 2570 21 6.64007e+06 439530 477104. 1650.88 1.05 0.12384 0.109715 21682 110474 -1 2149 19 1505 2522 167931 38238 3.13357 3.13357 -118.135 -3.13357 0 0 585099. 2024.56 0.26 0.07 0.11 -1 -1 0.26 0.0246844 0.0219091 148 58 60 31 62 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_042.v common 4.39 vpr 65.52 MiB 0.02 7244 -1 -1 1 0.03 -1 -1 34344 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67096 32 32 407 319 1 198 101 17 17 289 -1 unnamed_device 26.7 MiB 0.10 941 17491 5412 9228 2851 65.5 MiB 0.15 0.00 3.40616 -115.148 -3.40616 3.40616 0.96 0.000553445 0.000503431 0.044004 0.0401884 32 2637 24 6.64007e+06 464646 554710. 1919.41 1.12 0.125227 0.111043 22834 132086 -1 2109 20 1812 2882 228233 50367 3.76963 3.76963 -141.754 -3.76963 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0260716 0.0231491 156 42 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_043.v common 4.55 vpr 65.51 MiB 0.02 7492 -1 -1 1 0.04 -1 -1 34152 -1 -1 42 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67084 32 32 496 380 1 232 106 17 17 289 -1 unnamed_device 27.2 MiB 0.16 1108 19606 5465 11405 2736 65.5 MiB 0.18 0.00 3.33916 -115.146 -3.33916 3.33916 0.97 0.000654834 0.000596743 0.0532233 0.0484069 28 2935 22 6.64007e+06 527436 500653. 1732.36 1.23 0.145632 0.12921 21970 115934 -1 2359 18 1758 2723 173149 40345 3.59263 3.59263 -139.108 -3.59263 0 0 612192. 2118.31 0.26 0.07 0.12 -1 -1 0.26 0.0282167 0.0251793 186 91 62 32 96 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_044.v common 4.09 vpr 64.87 MiB 0.02 7088 -1 -1 1 0.03 -1 -1 33800 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 31 32 305 250 1 158 81 17 17 289 -1 unnamed_device 26.1 MiB 0.09 854 13031 4053 6734 2244 64.9 MiB 0.10 0.00 3.0453 -99.8437 -3.0453 3.0453 0.96 0.000475721 0.00043451 0.036274 0.0331848 32 1900 21 6.64007e+06 226044 554710. 1919.41 0.97 0.0952311 0.0842026 22834 132086 -1 1692 20 1330 2114 144883 33443 2.95797 2.95797 -117.951 -2.95797 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0208385 0.0185513 116 24 62 31 31 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_045.v common 4.23 vpr 65.35 MiB 0.02 7164 -1 -1 1 0.03 -1 -1 33800 -1 -1 38 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66920 31 32 395 311 1 196 101 17 17 289 -1 unnamed_device 26.5 MiB 0.13 1083 13026 3155 8902 969 65.4 MiB 0.12 0.00 3.54836 -118.93 -3.54836 3.54836 0.93 0.000548169 0.00049678 0.0329774 0.0300314 32 2704 18 6.64007e+06 477204 554710. 1919.41 0.99 0.103492 0.0909564 22834 132086 -1 2255 22 1761 2660 185940 42788 3.86663 3.86663 -142.486 -3.86663 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.027637 0.0245326 152 59 62 31 62 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_046.v common 4.23 vpr 65.18 MiB 0.02 7096 -1 -1 1 0.03 -1 -1 34036 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 32 32 397 313 1 196 98 17 17 289 -1 unnamed_device 26.7 MiB 0.11 877 6623 1217 4877 529 65.2 MiB 0.08 0.00 2.9951 -93.7453 -2.9951 2.9951 0.94 0.000545545 0.000496793 0.0188736 0.0172321 32 3074 28 6.64007e+06 426972 554710. 1919.41 1.05 0.0956229 0.0835344 22834 132086 -1 2197 21 1761 3018 197706 47253 2.96197 2.96197 -117.79 -2.96197 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0285882 0.0254433 149 54 62 32 62 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_047.v common 4.26 vpr 64.88 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 33496 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66440 32 32 345 257 1 194 86 17 17 289 -1 unnamed_device 26.2 MiB 0.08 1009 15773 6181 7786 1806 64.9 MiB 0.15 0.00 3.30796 -116.733 -3.30796 3.30796 0.96 0.000513739 0.000470383 0.0450864 0.0411656 32 2651 24 6.64007e+06 276276 554710. 1919.41 1.06 0.115932 0.102909 22834 132086 -1 2207 20 1883 3281 228186 50021 3.64643 3.64643 -139.594 -3.64643 0 0 701300. 2426.64 0.28 0.07 0.13 -1 -1 0.28 0.022787 0.0201986 151 -1 128 32 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_048.v common 4.39 vpr 65.09 MiB 0.02 7260 -1 -1 1 0.03 -1 -1 33924 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 32 32 424 343 1 190 99 17 17 289 -1 unnamed_device 26.3 MiB 0.17 988 18567 6270 9721 2576 65.1 MiB 0.16 0.00 2.7537 -98.5892 -2.7537 2.7537 0.93 0.0005243 0.000476523 0.0483542 0.0439065 32 2689 25 6.64007e+06 439530 554710. 1919.41 1.07 0.127584 0.11258 22834 132086 -1 2090 20 1412 2118 145101 33094 2.97117 2.97117 -118.956 -2.97117 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0259649 0.023074 146 81 25 25 96 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_049.v common 4.44 vpr 65.23 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 34052 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 32 32 395 311 1 194 101 17 17 289 -1 unnamed_device 26.5 MiB 0.17 1081 12791 3249 8303 1239 65.2 MiB 0.12 0.00 2.7537 -100.152 -2.7537 2.7537 0.91 0.000551557 0.000504021 0.0325589 0.0296965 26 2835 24 6.64007e+06 464646 477104. 1650.88 1.32 0.11227 0.0992292 21682 110474 -1 2267 18 1328 2276 179653 37195 2.78757 2.78757 -117.667 -2.78757 0 0 585099. 2024.56 0.26 0.07 0.11 -1 -1 0.26 0.0243992 0.0217563 148 58 64 32 60 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_050.v common 4.27 vpr 65.16 MiB 0.02 7412 -1 -1 1 0.03 -1 -1 34152 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 32 32 405 318 1 200 103 17 17 289 -1 unnamed_device 26.6 MiB 0.13 1040 12635 3533 8104 998 65.2 MiB 0.11 0.00 2.9061 -100.233 -2.9061 2.9061 0.95 0.000584593 0.000530805 0.0319905 0.0291113 32 2501 22 6.64007e+06 489762 554710. 1919.41 1.01 0.105153 0.0925253 22834 132086 -1 2223 21 1949 3171 216041 47844 2.93777 2.93777 -119.814 -2.93777 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0274399 0.0243228 157 61 63 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_051.v common 4.09 vpr 65.27 MiB 0.02 7176 -1 -1 1 0.03 -1 -1 34108 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66836 32 32 376 288 1 194 101 17 17 289 -1 unnamed_device 26.5 MiB 0.07 1029 17961 4987 10986 1988 65.3 MiB 0.15 0.00 3.39516 -118.131 -3.39516 3.39516 0.92 0.000576422 0.000526243 0.0424147 0.0387432 30 2349 21 6.64007e+06 464646 526063. 1820.29 0.98 0.110715 0.0980667 22546 126617 -1 1995 19 1402 2183 125056 28680 3.45323 3.45323 -136.49 -3.45323 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0222139 0.0197814 152 21 96 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_052.v common 4.25 vpr 65.37 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 34324 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 32 32 407 319 1 197 103 17 17 289 -1 unnamed_device 26.8 MiB 0.13 1052 10466 2495 6919 1052 65.4 MiB 0.10 0.00 3.35816 -119.082 -3.35816 3.35816 0.98 0.000562359 0.000511907 0.027469 0.0250851 30 2400 24 6.64007e+06 489762 526063. 1820.29 1.00 0.101526 0.0892783 22546 126617 -1 2072 22 1632 2648 163736 35886 3.43723 3.43723 -140.693 -3.43723 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0267433 0.0236311 155 50 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_053.v common 5.18 vpr 65.28 MiB 0.02 7572 -1 -1 1 0.03 -1 -1 33936 -1 -1 36 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 31 32 449 367 1 193 99 17 17 289 -1 unnamed_device 26.6 MiB 0.20 1096 8763 1807 6408 548 65.3 MiB 0.09 0.00 3.76575 -112.348 -3.76575 3.76575 0.98 0.000630145 0.000575056 0.0261131 0.0238527 26 3045 38 6.64007e+06 452088 477104. 1650.88 1.89 0.126112 0.110679 21682 110474 -1 2379 20 1396 2566 180404 40584 4.05323 4.05323 -138.323 -4.05323 0 0 585099. 2024.56 0.26 0.07 0.11 -1 -1 0.26 0.0273261 0.0242025 147 110 0 0 122 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_054.v common 4.31 vpr 65.38 MiB 0.02 7428 -1 -1 1 0.03 -1 -1 34124 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 32 32 432 346 1 195 86 17 17 289 -1 unnamed_device 26.8 MiB 0.15 1073 15584 5296 8546 1742 65.4 MiB 0.15 0.00 3.56755 -111.768 -3.56755 3.56755 0.93 0.000602803 0.000550284 0.0506873 0.0462212 32 2540 19 6.64007e+06 276276 554710. 1919.41 1.02 0.125276 0.110915 22834 132086 -1 2250 22 1524 2845 190917 42032 3.46323 3.46323 -130.442 -3.46323 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0282699 0.0249968 151 86 32 32 94 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_055.v common 4.12 vpr 64.90 MiB 0.02 7160 -1 -1 1 0.03 -1 -1 33924 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 312 255 1 166 95 17 17 289 -1 unnamed_device 26.3 MiB 0.06 800 15215 3397 11373 445 64.9 MiB 0.12 0.00 2.7537 -96.232 -2.7537 2.7537 0.94 0.000455714 0.000415722 0.0351902 0.0321343 32 2081 29 6.64007e+06 389298 554710. 1919.41 1.00 0.101536 0.089356 22834 132086 -1 1729 21 1321 2064 127711 30928 2.84177 2.84177 -115.472 -2.84177 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0219705 0.0195168 125 20 63 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_056.v common 4.16 vpr 65.02 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 33796 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66580 32 32 370 314 1 164 82 17 17 289 -1 unnamed_device 26.4 MiB 0.17 929 15212 4670 8561 1981 65.0 MiB 0.12 0.00 2.7819 -100.47 -2.7819 2.7819 0.93 0.000494319 0.000452024 0.0431528 0.0393634 32 2261 24 6.64007e+06 226044 554710. 1919.41 0.96 0.110498 0.0976626 22834 132086 -1 1907 23 1471 2392 187242 41122 2.87477 2.87477 -115.972 -2.87477 0 0 701300. 2426.64 0.29 0.07 0.12 -1 -1 0.29 0.0253192 0.0223413 121 91 0 0 94 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_057.v common 5.74 vpr 65.42 MiB 0.02 7384 -1 -1 1 0.03 -1 -1 34164 -1 -1 42 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66988 32 32 469 351 1 233 106 17 17 289 -1 unnamed_device 27.2 MiB 0.10 1365 19856 5441 12477 1938 65.4 MiB 0.19 0.00 3.90442 -137.532 -3.90442 3.90442 0.94 0.000527919 0.000482409 0.0539901 0.0490838 26 3532 31 6.64007e+06 527436 477104. 1650.88 2.54 0.164047 0.145969 21682 110474 -1 2874 22 2546 4136 275179 64637 4.89989 4.89989 -180.688 -4.89989 0 0 585099. 2024.56 0.26 0.10 0.11 -1 -1 0.26 0.0334047 0.0298083 189 53 96 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_058.v common 4.13 vpr 64.98 MiB 0.02 6972 -1 -1 1 0.03 -1 -1 34156 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66536 32 32 368 284 1 194 97 17 17 289 -1 unnamed_device 26.3 MiB 0.12 1120 15637 4376 9366 1895 65.0 MiB 0.13 0.00 2.9051 -105.705 -2.9051 2.9051 0.95 0.000548042 0.000499059 0.0402324 0.0367197 28 2597 30 6.64007e+06 414414 500653. 1732.36 0.97 0.115965 0.102281 21970 115934 -1 2303 19 1367 2044 142982 32578 3.23277 3.23277 -128.269 -3.23277 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0225322 0.019983 148 31 92 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_059.v common 4.07 vpr 64.68 MiB 0.02 6936 -1 -1 1 0.03 -1 -1 33776 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 30 32 296 244 1 158 93 17 17 289 -1 unnamed_device 25.8 MiB 0.11 842 13953 3493 8766 1694 64.7 MiB 0.11 0.00 2.7317 -94.0437 -2.7317 2.7317 0.95 0.000434398 0.000396484 0.0319934 0.0292636 32 1817 21 6.64007e+06 389298 554710. 1919.41 0.94 0.0891656 0.0788862 22834 132086 -1 1658 18 1008 1421 99095 21752 2.79857 2.79857 -111.108 -2.79857 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0186752 0.0165744 116 29 60 30 30 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_060.v common 5.82 vpr 65.57 MiB 0.02 7420 -1 -1 1 0.04 -1 -1 34356 -1 -1 45 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67140 32 32 531 413 1 232 109 17 17 289 -1 unnamed_device 27.3 MiB 0.30 1222 15969 4320 10020 1629 65.6 MiB 0.15 0.00 4.01362 -137.521 -4.01362 4.01362 0.96 0.000718693 0.000651059 0.0447284 0.0405414 26 3491 30 6.64007e+06 565110 477104. 1650.88 2.33 0.152784 0.135097 21682 110474 -1 2808 18 2043 3083 247308 52363 4.61129 4.61129 -171.777 -4.61129 0 0 585099. 2024.56 0.28 0.09 0.11 -1 -1 0.28 0.0301205 0.0269539 188 109 32 32 128 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_061.v common 4.36 vpr 65.11 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 33844 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 376 288 1 194 102 17 17 289 -1 unnamed_device 26.4 MiB 0.16 1076 17714 5714 9723 2277 65.1 MiB 0.14 0.00 3.57956 -123.728 -3.57956 3.57956 0.96 0.000337567 0.000310758 0.0421376 0.0384458 32 2490 25 6.64007e+06 477204 554710. 1919.41 1.02 0.115256 0.101988 22834 132086 -1 2183 20 1742 2534 204595 43310 3.79363 3.79363 -144.995 -3.79363 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0252418 0.0224642 153 31 96 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_062.v common 4.02 vpr 64.93 MiB 0.02 6992 -1 -1 1 0.03 -1 -1 33916 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 32 32 283 225 1 164 96 17 17 289 -1 unnamed_device 26.3 MiB 0.07 854 11922 2836 7681 1405 64.9 MiB 0.10 0.00 2.8629 -101.978 -2.8629 2.8629 0.95 0.000441025 0.000401725 0.0260567 0.0238521 30 2010 24 6.64007e+06 401856 526063. 1820.29 0.94 0.0840477 0.0740267 22546 126617 -1 1696 20 1107 1684 99268 22146 2.58817 2.58817 -111.201 -2.58817 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0198069 0.0176073 124 -1 96 32 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_063.v common 4.44 vpr 65.30 MiB 0.02 7340 -1 -1 1 0.04 -1 -1 34288 -1 -1 43 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 32 32 438 320 1 235 107 17 17 289 -1 unnamed_device 27.1 MiB 0.12 1466 20094 5632 12510 1952 65.3 MiB 0.18 0.00 4.23382 -146.107 -4.23382 4.23382 0.95 0.000625601 0.00057124 0.0525543 0.047967 32 3266 20 6.64007e+06 539994 554710. 1919.41 1.10 0.134493 0.119515 22834 132086 -1 2874 22 2350 3759 332928 65246 4.90469 4.90469 -184.023 -4.90469 0 0 701300. 2426.64 0.29 0.10 0.13 -1 -1 0.29 0.0305332 0.0271212 190 26 128 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_064.v common 4.08 vpr 64.54 MiB 0.02 6812 -1 -1 1 0.03 -1 -1 33600 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66092 32 32 283 225 1 162 81 17 17 289 -1 unnamed_device 26.0 MiB 0.08 880 11456 3267 7000 1189 64.5 MiB 0.10 0.00 2.7849 -102.041 -2.7849 2.7849 0.96 0.00044944 0.000409346 0.0311128 0.0284652 32 2083 20 6.64007e+06 213486 554710. 1919.41 0.97 0.087863 0.0777901 22834 132086 -1 1873 21 1479 2398 180404 39848 2.92977 2.92977 -123.133 -2.92977 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0205621 0.0182164 121 -1 96 32 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_065.v common 4.09 vpr 64.92 MiB 0.02 7060 -1 -1 1 0.03 -1 -1 34128 -1 -1 32 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66476 30 32 296 244 1 157 94 17 17 289 -1 unnamed_device 26.3 MiB 0.11 795 12661 3190 8803 668 64.9 MiB 0.10 0.00 2.7427 -90.8284 -2.7427 2.7427 0.98 0.000450387 0.000412426 0.0289768 0.0264111 30 1832 21 6.64007e+06 401856 526063. 1820.29 0.97 0.0887366 0.0783296 22546 126617 -1 1535 21 1038 1752 104512 23921 2.61057 2.61057 -104.849 -2.61057 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0207566 0.0183817 114 29 60 30 30 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_066.v common 4.02 vpr 65.13 MiB 0.02 7376 -1 -1 1 0.03 -1 -1 33708 -1 -1 34 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66692 29 32 393 319 1 182 95 17 17 289 -1 unnamed_device 26.4 MiB 0.16 993 17375 5006 10012 2357 65.1 MiB 0.15 0.00 2.9591 -89.4376 -2.9591 2.9591 0.92 0.00053418 0.000487831 0.0463038 0.0421266 28 2344 19 6.64007e+06 426972 500653. 1732.36 0.89 0.108062 0.095576 21970 115934 -1 1969 21 1349 2292 145772 33119 3.10217 3.10217 -109.829 -3.10217 0 0 612192. 2118.31 0.25 0.06 0.11 -1 -1 0.25 0.0234348 0.0207567 134 81 29 29 85 29 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_067.v common 4.19 vpr 65.25 MiB 0.02 7140 -1 -1 1 0.03 -1 -1 34280 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 32 32 407 319 1 194 86 17 17 289 -1 unnamed_device 26.5 MiB 0.12 973 8780 2241 6161 378 65.2 MiB 0.09 0.00 3.37836 -118.862 -3.37836 3.37836 0.94 0.00056911 0.000519861 0.0290301 0.0265932 32 2327 22 6.64007e+06 276276 554710. 1919.41 1.00 0.101166 0.0892354 22834 132086 -1 2122 24 2204 3430 266486 58123 3.78683 3.78683 -146.317 -3.78683 0 0 701300. 2426.64 0.27 0.09 0.13 -1 -1 0.27 0.029771 0.0263217 152 53 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_068.v common 4.77 vpr 65.26 MiB 0.02 7152 -1 -1 1 0.03 -1 -1 33824 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 32 32 407 319 1 195 100 17 17 289 -1 unnamed_device 26.4 MiB 0.20 897 6364 1022 5084 258 65.3 MiB 0.07 0.00 3.30796 -112.285 -3.30796 3.30796 0.95 0.000565287 0.00051574 0.0181974 0.0166378 28 2855 28 6.64007e+06 452088 500653. 1732.36 1.56 0.109449 0.0965351 21970 115934 -1 2307 21 1845 3143 210087 50449 3.76663 3.76663 -147.987 -3.76663 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0276683 0.0245086 154 55 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_069.v common 4.14 vpr 65.05 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 34076 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66612 32 32 345 287 1 161 96 17 17 289 -1 unnamed_device 26.4 MiB 0.13 823 18054 6069 9478 2507 65.1 MiB 0.14 0.00 2.8739 -100.633 -2.8739 2.8739 0.95 0.00048098 0.000438201 0.0434747 0.0396991 32 2014 22 6.64007e+06 401856 554710. 1919.41 0.93 0.105326 0.0931602 22834 132086 -1 1744 19 1217 1715 117803 27432 2.95177 2.95177 -119.805 -2.95177 0 0 701300. 2426.64 0.28 0.05 0.13 -1 -1 0.28 0.0200191 0.0177338 122 55 32 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_070.v common 4.13 vpr 64.91 MiB 0.02 7060 -1 -1 1 0.03 -1 -1 34056 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 31 32 353 302 1 152 80 17 17 289 -1 unnamed_device 26.1 MiB 0.16 786 8336 2113 5824 399 64.9 MiB 0.08 0.00 2.9591 -92.2852 -2.9591 2.9591 0.95 0.000489947 0.000446962 0.0261474 0.02391 32 1925 22 6.64007e+06 213486 554710. 1919.41 0.96 0.0892187 0.078508 22834 132086 -1 1655 21 1154 2067 140473 32344 3.13217 3.13217 -111.4 -3.13217 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.021916 0.0193381 109 82 0 0 89 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_071.v common 4.51 vpr 65.00 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 33996 -1 -1 35 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 30 32 374 297 1 186 97 17 17 289 -1 unnamed_device 26.3 MiB 0.13 1012 12085 3115 7960 1010 65.0 MiB 0.11 0.00 2.8519 -97.0487 -2.8519 2.8519 0.96 0.000525954 0.00047881 0.0315191 0.0287626 26 2525 33 6.64007e+06 439530 477104. 1650.88 1.34 0.113402 0.0998296 21682 110474 -1 2241 21 1411 2180 155396 36213 2.97117 2.97117 -117.955 -2.97117 0 0 585099. 2024.56 0.24 0.07 0.11 -1 -1 0.24 0.0247661 0.0218876 139 52 60 30 57 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_072.v common 4.64 vpr 64.87 MiB 0.02 7228 -1 -1 1 0.03 -1 -1 33972 -1 -1 32 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66424 28 32 332 260 1 180 92 17 17 289 -1 unnamed_device 26.2 MiB 0.08 1057 14582 3837 9093 1652 64.9 MiB 0.13 0.00 3.77576 -108.081 -3.77576 3.77576 0.96 0.000480958 0.000438573 0.0366167 0.033468 26 2531 26 6.64007e+06 401856 477104. 1650.88 1.56 0.109897 0.0973479 21682 110474 -1 2197 21 1614 2571 186257 41612 3.61362 3.61362 -127.14 -3.61362 0 0 585099. 2024.56 0.24 0.07 0.11 -1 -1 0.24 0.0221551 0.0195997 134 20 84 28 28 28 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_073.v common 4.19 vpr 64.92 MiB 0.02 7052 -1 -1 1 0.03 -1 -1 33856 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 30 32 325 273 1 157 81 17 17 289 -1 unnamed_device 26.1 MiB 0.17 660 14606 4689 7861 2056 64.9 MiB 0.12 0.00 2.8131 -90.6242 -2.8131 2.8131 0.94 0.000462351 0.000421732 0.0409438 0.0374254 32 1830 22 6.64007e+06 238602 554710. 1919.41 0.96 0.101513 0.0897823 22834 132086 -1 1614 21 1304 2174 143162 34019 2.93897 2.93897 -108.956 -2.93897 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0204152 0.0179666 114 58 30 30 60 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_074.v common 4.18 vpr 64.86 MiB 0.02 7272 -1 -1 1 0.03 -1 -1 33776 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 361 308 1 158 81 17 17 289 -1 unnamed_device 26.1 MiB 0.16 961 10056 2531 6387 1138 64.9 MiB 0.09 0.00 2.9653 -96.595 -2.9653 2.9653 0.97 0.000437247 0.000400619 0.0314148 0.02865 32 2135 22 6.64007e+06 213486 554710. 1919.41 0.98 0.0979576 0.0863733 22834 132086 -1 1866 19 1098 1864 136579 30166 2.80097 2.80097 -110.355 -2.80097 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0223176 0.0198529 114 88 0 0 91 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_075.v common 4.12 vpr 64.85 MiB 0.02 7300 -1 -1 1 0.03 -1 -1 33896 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 31 32 335 251 1 196 100 17 17 289 -1 unnamed_device 26.3 MiB 0.08 1027 19356 5642 11067 2647 64.9 MiB 0.16 0.00 3.39516 -114.318 -3.39516 3.39516 0.93 0.000497221 0.000454339 0.0435277 0.0397317 32 2466 21 6.64007e+06 464646 554710. 1919.41 0.96 0.10618 0.0941406 22834 132086 -1 2072 18 1626 2644 174044 39117 3.82563 3.82563 -139.43 -3.82563 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0214783 0.0190648 152 -1 124 31 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_076.v common 4.37 vpr 65.25 MiB 0.02 7368 -1 -1 1 0.03 -1 -1 33964 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 32 32 407 319 1 197 100 17 17 289 -1 unnamed_device 26.8 MiB 0.17 971 17964 4986 11031 1947 65.3 MiB 0.16 0.00 3.39516 -117.047 -3.39516 3.39516 0.96 0.000578896 0.000527049 0.0467717 0.0425944 32 2363 21 6.64007e+06 452088 554710. 1919.41 1.01 0.119816 0.105969 22834 132086 -1 1945 21 1569 2893 171682 40793 3.71343 3.71343 -140.795 -3.71343 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0276459 0.0245578 155 57 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_077.v common 4.48 vpr 65.40 MiB 0.02 7356 -1 -1 1 0.03 -1 -1 34064 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66968 32 32 407 319 1 194 100 17 17 289 -1 unnamed_device 26.7 MiB 0.16 978 9844 2053 7367 424 65.4 MiB 0.10 0.00 3.30796 -115.17 -3.30796 3.30796 0.94 0.000575051 0.000524742 0.0270457 0.0247009 30 2808 24 6.64007e+06 452088 526063. 1820.29 1.26 0.109137 0.0967347 22546 126617 -1 2178 19 1519 2575 136177 33401 3.61523 3.61523 -144.314 -3.61523 0 0 666494. 2306.21 0.29 0.07 0.12 -1 -1 0.29 0.0253795 0.0225898 153 62 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_078.v common 7.38 vpr 65.28 MiB 0.02 7004 -1 -1 1 0.03 -1 -1 33824 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 32 32 399 315 1 196 102 17 17 289 -1 unnamed_device 26.7 MiB 0.14 1131 12954 3693 8509 752 65.3 MiB 0.12 0.00 3.37316 -115.481 -3.37316 3.37316 0.94 0.000604326 0.000548926 0.0333558 0.0304344 24 3581 46 6.64007e+06 477204 448715. 1552.65 4.21 0.17409 0.152228 21394 104001 -1 2523 25 1935 3371 266248 58453 4.04642 4.04642 -144.177 -4.04642 0 0 554710. 1919.41 0.23 0.10 0.10 -1 -1 0.23 0.0302534 0.0267568 149 62 60 30 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_079.v common 4.06 vpr 64.92 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 33820 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 30 32 296 244 1 156 81 17 17 289 -1 unnamed_device 26.1 MiB 0.10 766 12856 3852 6755 2249 64.9 MiB 0.11 0.00 2.7709 -91.1747 -2.7709 2.7709 0.94 0.000448884 0.000404721 0.0345571 0.0315859 30 2018 20 6.64007e+06 238602 526063. 1820.29 0.95 0.0892397 0.0788715 22546 126617 -1 1695 22 1187 1971 126951 28592 2.75977 2.75977 -107.673 -2.75977 0 0 666494. 2306.21 0.27 0.06 0.12 -1 -1 0.27 0.0216978 0.0191625 113 29 60 30 30 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_080.v common 4.20 vpr 64.91 MiB 0.02 7244 -1 -1 1 0.03 -1 -1 33944 -1 -1 24 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 30 32 383 303 1 191 86 17 17 289 -1 unnamed_device 26.2 MiB 0.15 996 14072 3942 7868 2262 64.9 MiB 0.13 0.00 3.35636 -111.778 -3.35636 3.35636 0.93 0.000542401 0.000494095 0.0429718 0.0392676 32 2339 20 6.64007e+06 301392 554710. 1919.41 1.00 0.111199 0.0984051 22834 132086 -1 2098 22 1859 2794 200496 46242 3.89303 3.89303 -140.397 -3.89303 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0270876 0.0240518 146 58 60 30 60 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_081.v common 4.44 vpr 65.24 MiB 0.03 7476 -1 -1 1 0.03 -1 -1 34248 -1 -1 41 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66804 32 32 469 381 1 198 105 17 17 289 -1 unnamed_device 26.8 MiB 0.21 1114 19618 5705 11084 2829 65.2 MiB 0.18 0.00 3.55936 -123.276 -3.55936 3.55936 0.95 0.000609609 0.000552881 0.0509813 0.0463616 30 2625 22 6.64007e+06 514878 526063. 1820.29 1.08 0.128728 0.113677 22546 126617 -1 2088 21 1595 2679 149045 37992 3.75743 3.75743 -144.587 -3.75743 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0271313 0.0239339 156 106 0 0 128 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_082.v common 4.27 vpr 65.31 MiB 0.02 7392 -1 -1 1 0.03 -1 -1 33852 -1 -1 33 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66880 31 32 425 341 1 189 96 17 17 289 -1 unnamed_device 26.9 MiB 0.11 1093 18273 6027 9750 2496 65.3 MiB 0.15 0.00 3.39516 -115.658 -3.39516 3.39516 0.94 0.000595346 0.000541055 0.0495126 0.0450759 32 2583 23 6.64007e+06 414414 554710. 1919.41 1.03 0.124973 0.110486 22834 132086 -1 2296 19 1468 2447 198546 41697 3.76763 3.76763 -137.598 -3.76763 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0265832 0.0236831 148 79 31 31 93 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_083.v common 4.09 vpr 65.27 MiB 0.02 7456 -1 -1 1 0.03 -1 -1 33896 -1 -1 32 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 30 32 404 328 1 182 94 17 17 289 -1 unnamed_device 26.5 MiB 0.14 1017 15643 4345 8942 2356 65.3 MiB 0.13 0.00 3.0133 -94.5657 -3.0133 3.0133 0.92 0.00055862 0.000508322 0.0433762 0.0394269 32 2371 20 6.64007e+06 401856 554710. 1919.41 0.95 0.111317 0.0983686 22834 132086 -1 1985 18 1345 2137 135392 31669 3.07836 3.07836 -114.756 -3.07836 0 0 701300. 2426.64 0.28 0.06 0.13 -1 -1 0.28 0.0226573 0.020111 138 83 26 26 90 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_084.v common 4.38 vpr 65.12 MiB 0.02 7356 -1 -1 1 0.03 -1 -1 34100 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 32 32 407 319 1 198 86 17 17 289 -1 unnamed_device 26.3 MiB 0.23 962 13316 3602 8252 1462 65.1 MiB 0.13 0.00 3.35816 -115.716 -3.35816 3.35816 0.95 0.000573933 0.000523029 0.0429731 0.039264 32 2713 26 6.64007e+06 276276 554710. 1919.41 1.04 0.121841 0.107737 22834 132086 -1 2223 21 1836 3141 217511 51230 3.60843 3.60843 -140.692 -3.60843 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.026671 0.023682 155 58 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_085.v common 4.19 vpr 65.12 MiB 0.02 7468 -1 -1 1 0.03 -1 -1 34160 -1 -1 36 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 29 32 387 316 1 179 97 17 17 289 -1 unnamed_device 26.4 MiB 0.14 941 12751 3356 8285 1110 65.1 MiB 0.11 0.00 2.7969 -89.7256 -2.7969 2.7969 0.95 0.000568468 0.000491271 0.0329257 0.0298334 32 2057 20 6.64007e+06 452088 554710. 1919.41 0.97 0.0987545 0.0867401 22834 132086 -1 1724 20 1335 2241 142239 32650 2.84017 2.84017 -102.909 -2.84017 0 0 701300. 2426.64 0.31 0.06 0.13 -1 -1 0.31 0.0241979 0.0214031 136 81 26 26 85 29 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_086.v common 4.01 vpr 64.65 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 33956 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 32 32 283 225 1 156 81 17 17 289 -1 unnamed_device 26.1 MiB 0.05 718 9531 2404 5950 1177 64.6 MiB 0.09 0.00 2.8911 -99.8907 -2.8911 2.8911 0.94 0.000436428 0.00039826 0.0262662 0.0240735 32 1822 23 6.64007e+06 213486 554710. 1919.41 0.96 0.0835029 0.0736761 22834 132086 -1 1632 22 1399 2184 148752 36197 2.98597 2.98597 -118.1 -2.98597 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0209037 0.0185157 115 -1 96 32 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_087.v common 4.37 vpr 65.09 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 33780 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 32 32 407 319 1 194 99 17 17 289 -1 unnamed_device 26.5 MiB 0.24 1081 19251 5709 11317 2225 65.1 MiB 0.16 0.00 3.34716 -118.991 -3.34716 3.34716 0.94 0.000567028 0.000515827 0.0493833 0.044901 32 2592 21 6.64007e+06 439530 554710. 1919.41 1.01 0.12219 0.107971 22834 132086 -1 2235 19 1665 2566 157856 37118 3.66543 3.66543 -144.709 -3.66543 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0255156 0.0226711 152 62 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_088.v common 4.37 vpr 65.54 MiB 0.02 7136 -1 -1 1 0.03 -1 -1 33876 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67116 32 32 407 319 1 201 87 17 17 289 -1 unnamed_device 26.9 MiB 0.16 1046 16599 5779 8561 2259 65.5 MiB 0.15 0.00 3.49856 -121.361 -3.49856 3.49856 0.96 0.000575016 0.000526266 0.0510054 0.0465774 32 2544 25 6.64007e+06 288834 554710. 1919.41 1.05 0.126568 0.112008 22834 132086 -1 2109 23 2090 3232 229614 52459 3.78983 3.78983 -142.28 -3.78983 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.028242 0.0249429 158 62 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_089.v common 4.40 vpr 64.80 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 33960 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 32 32 315 267 1 158 94 17 17 289 -1 unnamed_device 26.0 MiB 0.14 713 10531 2217 6977 1337 64.8 MiB 0.07 0.00 3.0463 -90.8984 -3.0463 3.0463 0.96 0.000465941 0.000424209 0.0251834 0.0229166 28 2081 49 6.64007e+06 376740 500653. 1732.36 1.28 0.106834 0.0934845 21970 115934 -1 1621 20 1112 1883 134078 34181 3.18037 3.18037 -111.254 -3.18037 0 0 612192. 2118.31 0.25 0.05 0.12 -1 -1 0.25 0.0190076 0.016765 112 47 32 32 54 27 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_090.v common 4.07 vpr 64.24 MiB 0.02 6984 -1 -1 1 0.03 -1 -1 33632 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65780 31 32 275 220 1 160 81 17 17 289 -1 unnamed_device 25.8 MiB 0.08 872 12681 4214 6652 1815 64.2 MiB 0.10 0.00 2.8321 -99.9661 -2.8321 2.8321 0.95 0.000417427 0.000380627 0.0327084 0.0299237 32 2009 20 6.64007e+06 226044 554710. 1919.41 0.95 0.0867973 0.0767941 22834 132086 -1 1888 21 1434 2289 176293 39816 2.97017 2.97017 -119.155 -2.97017 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0201237 0.0178432 118 -1 93 31 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_091.v common 4.20 vpr 64.89 MiB 0.02 7340 -1 -1 1 0.03 -1 -1 33744 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 32 32 381 303 1 188 97 17 17 289 -1 unnamed_device 26.2 MiB 0.14 955 13639 3310 8000 2329 64.9 MiB 0.12 0.00 3.36036 -111.093 -3.36036 3.36036 0.94 0.000544268 0.000496174 0.0360098 0.0328884 32 2253 19 6.64007e+06 414414 554710. 1919.41 0.98 0.103585 0.0915877 22834 132086 -1 2023 20 1590 2382 167805 38545 3.55743 3.55743 -130.84 -3.55743 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0238945 0.021238 139 56 60 32 58 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_092.v common 4.29 vpr 65.17 MiB 0.02 7428 -1 -1 1 0.03 -1 -1 33980 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 32 32 406 330 1 190 96 17 17 289 -1 unnamed_device 26.4 MiB 0.10 1048 17397 5297 9397 2703 65.2 MiB 0.16 0.00 3.61156 -111.72 -3.61156 3.61156 0.94 0.000544503 0.000499072 0.0475939 0.0434597 28 2632 23 6.64007e+06 401856 500653. 1732.36 1.13 0.124606 0.110447 21970 115934 -1 2127 22 1491 2454 169071 37849 3.82802 3.82802 -131.076 -3.82802 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0272207 0.0240363 136 81 28 28 88 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_093.v common 5.96 vpr 64.86 MiB 0.02 7400 -1 -1 1 0.03 -1 -1 33912 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 399 285 1 228 101 17 17 289 -1 unnamed_device 26.6 MiB 0.09 1319 14201 4126 9212 863 64.9 MiB 0.14 0.00 3.98862 -138.158 -3.98862 3.98862 0.94 0.000585669 0.000526837 0.0363965 0.0331778 26 3865 42 6.64007e+06 464646 477104. 1650.88 2.80 0.141163 0.124569 21682 110474 -1 2874 20 2037 3258 233632 52331 4.76369 4.76369 -170.196 -4.76369 0 0 585099. 2024.56 0.26 0.08 0.11 -1 -1 0.26 0.0273873 0.024414 179 -1 156 32 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_094.v common 6.82 vpr 65.18 MiB 0.02 7140 -1 -1 1 0.03 -1 -1 33900 -1 -1 34 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 30 32 371 295 1 184 96 17 17 289 -1 unnamed_device 26.5 MiB 0.14 933 11922 3200 7973 749 65.2 MiB 0.11 0.00 3.0493 -94.9385 -3.0493 3.0493 0.92 0.000514938 0.000466886 0.0311489 0.0283145 26 2651 31 6.64007e+06 426972 477104. 1650.88 3.75 0.178066 0.155136 21682 110474 -1 2030 22 1390 2312 168853 38118 3.09237 3.09237 -116.883 -3.09237 0 0 585099. 2024.56 0.24 0.07 0.10 -1 -1 0.24 0.0251833 0.0223122 138 47 60 30 56 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_095.v common 4.00 vpr 64.34 MiB 0.02 6916 -1 -1 1 0.03 -1 -1 34236 -1 -1 21 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65884 27 32 269 226 1 143 80 17 17 289 -1 unnamed_device 25.9 MiB 0.09 618 12636 5283 6147 1206 64.3 MiB 0.09 0.00 2.7691 -80.1779 -2.7691 2.7691 0.95 0.000395932 0.000360974 0.0323393 0.0296206 30 1375 18 6.64007e+06 263718 526063. 1820.29 0.95 0.0834817 0.0739959 22546 126617 -1 1206 20 939 1388 84539 19952 2.73477 2.73477 -93.1667 -2.73477 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0183983 0.0163303 107 26 54 27 27 27 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_096.v common 5.07 vpr 65.51 MiB 0.03 7632 -1 -1 1 0.04 -1 -1 33988 -1 -1 42 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67084 32 32 493 378 1 232 106 17 17 289 -1 unnamed_device 27.2 MiB 0.15 1408 20856 5903 12498 2455 65.5 MiB 0.20 0.00 3.68056 -120.284 -3.68056 3.68056 0.94 0.000660674 0.000601637 0.0575726 0.0524257 28 3946 28 6.64007e+06 527436 500653. 1732.36 1.72 0.163255 0.145394 21970 115934 -1 3006 21 2130 3749 271684 59812 3.98803 3.98803 -149.212 -3.98803 0 0 612192. 2118.31 0.27 0.10 0.11 -1 -1 0.27 0.0347886 0.0310246 186 85 62 31 95 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_097.v common 4.31 vpr 65.39 MiB 0.02 7336 -1 -1 1 0.03 -1 -1 34288 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 31 32 455 371 1 188 85 17 17 289 -1 unnamed_device 26.8 MiB 0.22 998 13663 3314 9461 888 65.4 MiB 0.13 0.00 3.64105 -116.247 -3.64105 3.64105 0.95 0.000592076 0.00053866 0.0465174 0.042497 32 2331 21 6.64007e+06 276276 554710. 1919.41 0.98 0.121199 0.107285 22834 132086 -1 2069 19 1523 2519 169710 38930 3.69562 3.69562 -138.912 -3.69562 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0260079 0.0231594 145 105 0 0 124 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_098.v common 4.36 vpr 64.72 MiB 0.02 7324 -1 -1 1 0.03 -1 -1 33792 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66276 32 32 355 304 1 150 80 17 17 289 -1 unnamed_device 25.9 MiB 0.20 889 14012 4590 7312 2110 64.7 MiB 0.12 0.00 2.9543 -94.0722 -2.9543 2.9543 0.97 0.000496614 0.000453829 0.0436952 0.0399931 32 1911 47 6.64007e+06 200928 554710. 1919.41 1.09 0.130591 0.11528 22834 132086 -1 1742 18 923 1539 116093 25491 2.87317 2.87317 -110.366 -2.87317 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0202673 0.0179394 108 86 0 0 89 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_099.v common 4.75 vpr 65.23 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 33828 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66800 32 32 364 282 1 196 97 17 17 289 -1 unnamed_device 26.5 MiB 0.07 864 10975 2845 7130 1000 65.2 MiB 0.11 0.00 3.67756 -111.982 -3.67756 3.67756 0.99 0.000515936 0.000471663 0.0285105 0.0260452 30 2711 43 6.64007e+06 414414 526063. 1820.29 1.60 0.126936 0.112072 22546 126617 -1 1915 21 1213 1855 107006 26074 3.70982 3.70982 -134.556 -3.70982 0 0 666494. 2306.21 0.28 0.05 0.13 -1 -1 0.28 0.023049 0.0203973 147 31 90 30 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_100.v common 4.30 vpr 65.16 MiB 0.02 7492 -1 -1 1 0.04 -1 -1 34336 -1 -1 38 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66724 31 32 443 336 1 220 101 17 17 289 -1 unnamed_device 27.0 MiB 0.11 1111 19841 6069 11064 2708 65.2 MiB 0.19 0.00 3.59955 -116.274 -3.59955 3.59955 0.94 0.000609845 0.00055598 0.0547794 0.0499521 32 2687 22 6.64007e+06 477204 554710. 1919.41 1.02 0.130896 0.115739 22834 132086 -1 2292 21 1957 2934 187606 43131 3.64343 3.64343 -139.081 -3.64343 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0280943 0.0248972 173 50 87 31 62 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_101.v common 4.47 vpr 65.01 MiB 0.02 7136 -1 -1 1 0.03 -1 -1 33968 -1 -1 34 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 30 32 373 297 1 186 96 17 17 289 -1 unnamed_device 26.3 MiB 0.10 969 9513 2227 6493 793 65.0 MiB 0.09 0.00 2.9811 -89.5745 -2.9811 2.9811 0.95 0.000527333 0.000482936 0.0254611 0.0232496 26 2880 29 6.64007e+06 426972 477104. 1650.88 1.38 0.1067 0.0938413 21682 110474 -1 2312 18 1405 2359 169899 38918 3.22356 3.22356 -115.994 -3.22356 0 0 585099. 2024.56 0.25 0.07 0.11 -1 -1 0.25 0.0228798 0.0204434 135 50 58 30 58 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_102.v common 4.81 vpr 65.12 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 33808 -1 -1 43 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 32 32 407 319 1 201 107 17 17 289 -1 unnamed_device 26.8 MiB 0.12 965 13263 3254 9396 613 65.1 MiB 0.13 0.00 3.47836 -117.279 -3.47836 3.47836 0.96 0.000643122 0.000589206 0.0330395 0.0301382 28 2906 30 6.64007e+06 539994 500653. 1732.36 1.57 0.13009 0.115665 21970 115934 -1 2341 24 1900 3180 283149 60976 4.15723 4.15723 -155.322 -4.15723 0 0 612192. 2118.31 0.27 0.10 0.11 -1 -1 0.27 0.0299106 0.0263948 158 61 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_103.v common 4.30 vpr 65.27 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 33952 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 32 32 405 318 1 200 104 17 17 289 -1 unnamed_device 26.8 MiB 0.14 1032 16452 4878 8879 2695 65.3 MiB 0.15 0.00 2.7929 -99.564 -2.7929 2.7929 0.95 0.000576528 0.000523173 0.0420417 0.0383177 32 2478 22 6.64007e+06 502320 554710. 1919.41 1.05 0.118795 0.105023 22834 132086 -1 1961 22 1619 2500 155113 36536 2.71977 2.71977 -115.518 -2.71977 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0278149 0.0245832 157 61 63 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_104.v common 4.07 vpr 64.27 MiB 0.02 6968 -1 -1 1 0.03 -1 -1 33540 -1 -1 18 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65808 29 32 287 238 1 134 79 17 17 289 -1 unnamed_device 25.8 MiB 0.08 517 13937 6032 7011 894 64.3 MiB 0.09 0.00 2.9573 -85.052 -2.9573 2.9573 0.93 0.000425912 0.000388017 0.0366579 0.0334627 32 1761 28 6.64007e+06 226044 554710. 1919.41 1.00 0.0947155 0.083439 22834 132086 -1 1497 28 1290 1775 162971 39536 3.21037 3.21037 -109.405 -3.21037 0 0 701300. 2426.64 0.31 0.07 0.13 -1 -1 0.31 0.0254077 0.0223076 95 28 58 29 29 29 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_105.v common 4.01 vpr 64.98 MiB 0.02 7264 -1 -1 1 0.03 -1 -1 33668 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66536 32 32 334 290 1 156 83 17 17 289 -1 unnamed_device 26.2 MiB 0.15 875 12683 4694 6141 1848 65.0 MiB 0.10 0.00 3.16516 -91.0125 -3.16516 3.16516 0.93 0.000479962 0.000437163 0.0345009 0.0314392 30 1772 17 6.64007e+06 238602 526063. 1820.29 0.90 0.0900484 0.0794412 22546 126617 -1 1511 14 704 952 61196 13853 2.79097 2.79097 -103.725 -2.79097 0 0 666494. 2306.21 0.27 0.04 0.12 -1 -1 0.27 0.0159466 0.0142025 112 79 0 0 82 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_106.v common 5.43 vpr 65.05 MiB 0.02 7216 -1 -1 1 0.03 -1 -1 33812 -1 -1 38 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66612 31 32 365 281 1 196 101 17 17 289 -1 unnamed_device 26.4 MiB 0.10 958 13966 3381 9663 922 65.1 MiB 0.12 0.00 3.98015 -119.136 -3.98015 3.98015 0.91 0.000520929 0.000470427 0.0331677 0.03027 26 3147 31 6.64007e+06 477204 477104. 1650.88 2.36 0.113081 0.0995504 21682 110474 -1 2536 20 1825 2896 240815 60565 4.26643 4.26643 -160.507 -4.26643 0 0 585099. 2024.56 0.25 0.08 0.11 -1 -1 0.25 0.0238065 0.0210771 151 29 93 31 31 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_107.v common 3.90 vpr 64.69 MiB 0.02 7048 -1 -1 1 0.03 -1 -1 33788 -1 -1 31 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66244 29 32 297 254 1 150 92 17 17 289 -1 unnamed_device 25.9 MiB 0.17 701 10442 2795 6859 788 64.7 MiB 0.08 0.00 2.9591 -82.01 -2.9591 2.9591 0.91 0.000407332 0.000369663 0.0228696 0.0207868 26 1730 18 6.64007e+06 389298 477104. 1650.88 0.85 0.0725828 0.063378 21682 110474 -1 1619 23 1131 1782 123067 28462 2.89177 2.89177 -100.555 -2.89177 0 0 585099. 2024.56 0.24 0.06 0.11 -1 -1 0.24 0.0214282 0.01888 108 48 29 29 52 26 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_108.v common 4.13 vpr 64.94 MiB 0.02 7044 -1 -1 1 0.03 -1 -1 33656 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 314 256 1 160 81 17 17 289 -1 unnamed_device 26.2 MiB 0.13 979 10581 3043 6568 970 64.9 MiB 0.09 0.00 2.8409 -104.795 -2.8409 2.8409 0.94 0.000462283 0.000423848 0.0297815 0.0271976 32 2118 20 6.64007e+06 213486 554710. 1919.41 0.97 0.0880849 0.0777592 22834 132086 -1 1940 21 1444 2432 160512 35979 2.92677 2.92677 -122.689 -2.92677 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0219428 0.0194382 118 31 64 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_109.v common 4.06 vpr 65.28 MiB 0.02 7172 -1 -1 1 0.03 -1 -1 33652 -1 -1 38 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66848 31 32 387 307 1 189 101 17 17 289 -1 unnamed_device 26.5 MiB 0.13 951 13026 3274 8671 1081 65.3 MiB 0.12 0.00 2.8673 -99.0299 -2.8673 2.8673 0.94 0.000558843 0.000507446 0.033275 0.0302957 26 2244 25 6.64007e+06 477204 477104. 1650.88 0.94 0.106912 0.0940788 21682 110474 -1 1904 23 1797 2587 172527 39981 2.99217 2.99217 -117.812 -2.99217 0 0 585099. 2024.56 0.25 0.07 0.11 -1 -1 0.25 0.0262671 0.0231518 144 60 58 31 62 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_110.v common 3.85 vpr 64.58 MiB 0.02 7040 -1 -1 1 0.03 -1 -1 33764 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 31 32 308 262 1 147 80 17 17 289 -1 unnamed_device 26.1 MiB 0.12 895 11260 3325 6929 1006 64.6 MiB 0.09 0.00 2.70619 -87.3021 -2.70619 2.70619 0.89 0.000450117 0.000410264 0.0319105 0.0291339 30 1913 21 6.64007e+06 213486 526063. 1820.29 0.90 0.0896096 0.0789172 22546 126617 -1 1608 18 720 1232 69133 15870 2.87597 2.87597 -105.289 -2.87597 0 0 666494. 2306.21 0.29 0.04 0.11 -1 -1 0.29 0.0188555 0.0167543 106 49 31 31 53 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_111.v common 4.45 vpr 65.20 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 33880 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 32 32 383 307 1 184 97 17 17 289 -1 unnamed_device 26.5 MiB 0.13 884 11419 2752 8105 562 65.2 MiB 0.11 0.00 2.7379 -92.1963 -2.7379 2.7379 0.92 0.000519815 0.000474313 0.0295083 0.0269271 28 2480 22 6.64007e+06 414414 500653. 1732.36 1.35 0.102 0.0898171 21970 115934 -1 2039 21 1281 2246 186075 40809 2.82377 2.82377 -114.141 -2.82377 0 0 612192. 2118.31 0.25 0.07 0.11 -1 -1 0.25 0.0249769 0.0220992 137 56 52 26 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_112.v common 4.29 vpr 65.31 MiB 0.02 7376 -1 -1 1 0.03 -1 -1 33824 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66880 31 32 422 339 1 195 100 17 17 289 -1 unnamed_device 26.8 MiB 0.23 968 9844 2332 6781 731 65.3 MiB 0.10 0.00 3.0995 -98.8191 -3.0995 3.0995 0.93 0.000586079 0.00053241 0.0282676 0.0257087 32 2266 20 6.64007e+06 464646 554710. 1919.41 0.99 0.0988684 0.0868864 22834 132086 -1 1924 18 1525 2239 142799 34093 3.22856 3.22856 -118.161 -3.22856 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0238419 0.0212546 149 88 31 31 92 31 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_113.v common 4.03 vpr 64.84 MiB 0.02 7236 -1 -1 1 0.03 -1 -1 34080 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 32 32 333 279 1 160 82 17 17 289 -1 unnamed_device 26.0 MiB 0.11 888 11118 3018 7466 634 64.8 MiB 0.09 0.00 2.44279 -88.8016 -2.44279 2.44279 0.91 0.000443955 0.000403919 0.030458 0.0277566 32 2009 23 6.64007e+06 226044 554710. 1919.41 0.96 0.0952468 0.0839304 22834 132086 -1 1762 17 1025 1591 107873 25091 2.65757 2.65757 -108.136 -2.65757 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0202168 0.0180091 115 54 32 32 60 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_114.v common 4.19 vpr 64.70 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 33780 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 32 32 339 283 1 164 82 17 17 289 -1 unnamed_device 25.9 MiB 0.16 915 15746 5631 7943 2172 64.7 MiB 0.13 0.00 2.7819 -100.951 -2.7819 2.7819 0.94 0.000485307 0.000442343 0.0444417 0.0405492 32 2224 22 6.64007e+06 226044 554710. 1919.41 0.98 0.107008 0.0946282 22834 132086 -1 2025 19 1334 2171 165434 36634 2.89697 2.89697 -118.409 -2.89697 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0208388 0.0184325 121 60 32 32 62 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_115.v common 4.32 vpr 65.18 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 34168 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 32 32 407 319 1 198 102 17 17 289 -1 unnamed_device 26.6 MiB 0.12 1027 15334 3953 9399 1982 65.2 MiB 0.13 0.00 3.40436 -120.119 -3.40436 3.40436 0.94 0.000580096 0.00052952 0.0392675 0.0358793 32 2401 30 6.64007e+06 477204 554710. 1919.41 1.05 0.119 0.104807 22834 132086 -1 2200 24 2092 3146 241008 52478 3.72443 3.72443 -143.36 -3.72443 0 0 701300. 2426.64 0.30 0.09 0.13 -1 -1 0.30 0.0294963 0.0260744 156 49 64 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_116.v common 4.04 vpr 65.18 MiB 0.02 7124 -1 -1 1 0.03 -1 -1 33820 -1 -1 34 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 29 32 367 293 1 183 95 17 17 289 -1 unnamed_device 26.4 MiB 0.12 894 9599 2158 6891 550 65.2 MiB 0.09 0.00 3.00358 -88.3006 -3.00358 3.00358 0.96 0.000525281 0.00048044 0.0260329 0.0238373 30 1988 19 6.64007e+06 426972 526063. 1820.29 0.93 0.0904917 0.0797169 22546 126617 -1 1734 18 939 1533 81151 19811 3.04717 3.04717 -108.483 -3.04717 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0210476 0.0186934 135 54 56 29 58 29 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_117.v common 4.39 vpr 65.25 MiB 0.02 7272 -1 -1 1 0.03 -1 -1 34124 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 32 32 469 381 1 200 103 17 17 289 -1 unnamed_device 26.9 MiB 0.23 1020 10707 2395 7696 616 65.2 MiB 0.11 0.00 3.41536 -117.479 -3.41536 3.41536 0.97 0.000622194 0.000566754 0.0298129 0.027121 32 2505 20 6.64007e+06 489762 554710. 1919.41 1.02 0.106349 0.0932958 22834 132086 -1 2245 23 1996 3077 218231 50464 3.71343 3.71343 -143.899 -3.71343 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0304198 0.0267934 158 117 0 0 128 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_118.v common 3.97 vpr 64.33 MiB 0.02 7096 -1 -1 1 0.03 -1 -1 33968 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65876 31 32 259 212 1 146 80 17 17 289 -1 unnamed_device 25.9 MiB 0.07 760 12292 4714 5795 1783 64.3 MiB 0.09 0.00 2.46479 -83.7107 -2.46479 2.46479 0.93 0.000398694 0.000364852 0.030996 0.0283927 32 1717 23 6.64007e+06 213486 554710. 1919.41 0.93 0.0838415 0.0741724 22834 132086 -1 1507 22 1060 1706 113073 25778 2.63957 2.63957 -102.332 -2.63957 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0195877 0.0173111 106 -1 85 31 0 0 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_119.v common 4.86 vpr 65.35 MiB 0.02 7300 -1 -1 1 0.03 -1 -1 33724 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66916 32 32 418 338 1 190 99 17 17 289 -1 unnamed_device 26.6 MiB 0.12 957 19251 5608 11130 2513 65.3 MiB 0.16 0.00 3.43436 -113.195 -3.43436 3.43436 0.96 0.0005788 0.000527591 0.0501183 0.0456114 26 2710 23 6.64007e+06 439530 477104. 1650.88 1.67 0.132898 0.117915 21682 110474 -1 2100 22 1546 2353 203730 49708 4.01943 4.01943 -140.648 -4.01943 0 0 585099. 2024.56 0.26 0.08 0.10 -1 -1 0.26 0.0270253 0.0238892 144 89 28 28 92 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_120.v common 4.14 vpr 65.01 MiB 0.02 7096 -1 -1 1 0.03 -1 -1 33652 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 32 32 376 318 1 155 81 17 17 289 -1 unnamed_device 26.2 MiB 0.23 675 13206 3667 7716 1823 65.0 MiB 0.10 0.00 2.8021 -94.9866 -2.8021 2.8021 0.92 0.000515611 0.000469056 0.041431 0.0377609 32 1603 25 6.64007e+06 213486 554710. 1919.41 0.98 0.110114 0.0969023 22834 132086 -1 1318 22 1344 1975 121995 29399 2.90497 2.90497 -109.736 -2.90497 0 0 701300. 2426.64 0.28 0.05 0.13 -1 -1 0.28 0.0223385 0.0196957 114 93 0 0 96 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_121.v common 4.21 vpr 65.34 MiB 0.02 7096 -1 -1 1 0.03 -1 -1 33828 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66908 32 32 401 316 1 196 101 17 17 289 -1 unnamed_device 26.8 MiB 0.14 1132 10676 2588 7124 964 65.3 MiB 0.10 0.00 2.7537 -100.873 -2.7537 2.7537 0.95 0.000596562 0.000546312 0.0294729 0.0269344 30 2311 21 6.64007e+06 464646 526063. 1820.29 0.97 0.104464 0.0921827 22546 126617 -1 1977 21 1082 1600 100078 22380 2.71937 2.71937 -116.351 -2.71937 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0268939 0.0239408 151 59 61 32 64 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_122.v common 6.74 vpr 65.23 MiB 0.02 7384 -1 -1 1 0.04 -1 -1 34472 -1 -1 45 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 32 32 500 382 1 232 109 17 17 289 -1 unnamed_device 26.9 MiB 0.20 1247 16489 4467 10039 1983 65.2 MiB 0.15 0.00 4.01362 -138.867 -4.01362 4.01362 0.92 0.000637283 0.000583273 0.0442148 0.0402762 28 3259 26 6.64007e+06 565110 500653. 1732.36 3.43 0.229716 0.200453 21970 115934 -1 2648 23 2241 3589 278927 57980 4.57229 4.57229 -168.929 -4.57229 0 0 612192. 2118.31 0.26 0.10 0.11 -1 -1 0.26 0.0325547 0.0287854 188 81 64 32 96 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_123.v common 3.79 vpr 64.27 MiB 0.02 6956 -1 -1 1 0.03 -1 -1 33480 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65808 30 32 246 229 1 118 77 17 17 289 -1 unnamed_device 25.8 MiB 0.06 450 11161 2819 7941 401 64.3 MiB 0.07 0.00 2.34384 -68.5346 -2.34384 2.34384 0.93 0.00033898 0.000306231 0.0256722 0.0233652 32 1244 19 6.64007e+06 188370 554710. 1919.41 0.86 0.0685642 0.0601722 22834 132086 -1 1071 20 692 957 65639 16994 1.93691 1.93691 -77.215 -1.93691 0 0 701300. 2426.64 0.29 0.04 0.12 -1 -1 0.29 0.0159798 0.01406 83 51 0 0 53 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_124.v common 4.15 vpr 64.28 MiB 0.02 7160 -1 -1 1 0.03 -1 -1 33908 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65824 30 32 296 244 1 137 79 17 17 289 -1 unnamed_device 25.8 MiB 0.08 554 11909 4981 5787 1141 64.3 MiB 0.08 0.00 2.9603 -88.207 -2.9603 2.9603 0.94 0.000443262 0.000404467 0.0326462 0.0298713 32 1763 35 6.64007e+06 213486 554710. 1919.41 1.05 0.100747 0.0887985 22834 132086 -1 1328 20 1101 1552 132316 31914 3.07317 3.07317 -107.45 -3.07317 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0216316 0.0192352 97 29 60 30 30 30 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_125.v common 4.18 vpr 65.07 MiB 0.02 6844 -1 -1 1 0.03 -1 -1 33400 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 32 32 314 256 1 167 82 17 17 289 -1 unnamed_device 26.3 MiB 0.09 809 14500 4701 7312 2487 65.1 MiB 0.12 0.00 2.7647 -96.8383 -2.7647 2.7647 0.95 0.000460393 0.000419509 0.0399445 0.0365021 32 2306 23 6.64007e+06 226044 554710. 1919.41 1.02 0.101492 0.0897342 22834 132086 -1 1931 21 1515 2667 169319 40743 3.05797 3.05797 -120.933 -3.05797 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0222675 0.0197068 126 31 64 32 32 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_126.v common 3.61 vpr 64.52 MiB 0.02 7108 -1 -1 1 0.03 -1 -1 33912 -1 -1 34 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66064 25 32 251 214 1 138 91 17 17 289 -1 unnamed_device 26.1 MiB 0.05 734 14371 3886 8696 1789 64.5 MiB 0.09 0.00 2.6877 -74.8543 -2.6877 2.6877 0.89 0.000398021 0.000363076 0.0281432 0.0256497 26 1647 20 6.64007e+06 426972 477104. 1650.88 0.80 0.0738999 0.0651065 21682 110474 -1 1456 21 999 1485 102873 22826 2.72157 2.72157 -89.0263 -2.72157 0 0 585099. 2024.56 0.24 0.04 0.10 -1 -1 0.24 0.0162736 0.0143902 103 19 50 25 25 25 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_127.v common 4.35 vpr 65.45 MiB 0.02 7328 -1 -1 1 0.03 -1 -1 34168 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67020 32 32 432 346 1 193 86 17 17 289 -1 unnamed_device 26.9 MiB 0.14 1040 15017 5305 7078 2634 65.4 MiB 0.15 0.00 3.50535 -114.203 -3.50535 3.50535 0.97 0.000598691 0.000546791 0.0496452 0.0454146 32 2704 19 6.64007e+06 276276 554710. 1919.41 1.03 0.127407 0.113356 22834 132086 -1 2212 20 1704 3068 191466 44574 3.53723 3.53723 -134.546 -3.53723 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0267177 0.0237409 149 84 32 32 94 32 + fixed_k6_N8_ripple_chain_gate_boost_0.2V_22nm.xml mult_128.v common 4.22 vpr 65.38 MiB 0.02 7304 -1 -1 1 0.03 -1 -1 33908 -1 -1 39 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66952 31 32 421 339 1 193 102 17 17 289 -1 unnamed_device 26.9 MiB 0.15 1002 13430 3324 8974 1132 65.4 MiB 0.12 0.00 2.8721 -100.605 -2.8721 2.8721 0.93 0.000575482 0.000524927 0.0344688 0.0313014 26 2553 20 6.64007e+06 489762 477104. 1650.88 1.07 0.109688 0.0967504 21682 110474 -1 2200 20 1687 2668 182842 41173 3.16477 3.16477 -119.952 -3.16477 0 0 585099. 2024.56 0.25 0.07 0.11 -1 -1 0.25 0.0253142 0.0223638 148 88 29 29 93 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_001.v common 5.56 vpr 65.04 MiB 0.02 7484 -1 -1 1 0.03 -1 -1 34244 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66604 32 32 438 350 1 194 98 17 17 289 -1 unnamed_device 26.7 MiB 0.23 986 10448 2384 7525 539 65.0 MiB 0.11 0.00 3.15264 -109.774 -3.15264 3.15264 0.95 0.000606276 0.000553452 0.0307582 0.0280778 28 3049 39 6.65987e+06 431052 500653. 1732.36 2.27 0.131433 0.115852 21970 115934 -1 2366 24 1871 3187 290615 64577 3.87251 3.87251 -142.939 -3.87251 0 0 612192. 2118.31 0.26 0.09 0.12 -1 -1 0.26 0.0305871 0.0270934 151 80 32 32 96 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_002.v common 4.51 vpr 65.16 MiB 0.02 7224 -1 -1 1 0.03 -1 -1 33876 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 30 32 409 330 1 186 83 17 17 289 -1 unnamed_device 26.4 MiB 0.38 820 8723 2048 5614 1061 65.2 MiB 0.09 0.00 3.4945 -99.7351 -3.4945 3.4945 0.97 0.000568764 0.000519013 0.0301968 0.0276163 32 2388 23 6.65987e+06 266238 554710. 1919.41 1.01 0.105277 0.0927355 22834 132086 -1 1927 23 1944 3283 215404 53102 3.63251 3.63251 -126.601 -3.63251 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0284647 0.0251935 140 78 30 30 89 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_003.v common 4.17 vpr 65.09 MiB 0.02 7368 -1 -1 1 0.03 -1 -1 34100 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66648 32 32 387 309 1 186 98 17 17 289 -1 unnamed_device 26.4 MiB 0.11 1020 12923 3600 8556 767 65.1 MiB 0.11 0.00 2.72347 -97.3331 -2.72347 2.72347 0.93 0.000554187 0.000499842 0.0340728 0.0310601 28 2593 29 6.65987e+06 431052 500653. 1732.36 1.05 0.11392 0.100352 21970 115934 -1 2326 23 1553 2573 203434 46390 3.57725 3.57725 -126.257 -3.57725 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0287782 0.0255378 141 50 54 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_004.v common 4.20 vpr 64.99 MiB 0.02 7088 -1 -1 1 0.03 -1 -1 33900 -1 -1 22 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66548 29 32 343 267 1 184 83 17 17 289 -1 unnamed_device 26.3 MiB 0.09 1030 14303 4432 7818 2053 65.0 MiB 0.13 0.00 3.4563 -105.804 -3.4563 3.4563 0.95 0.00048071 0.000439375 0.0417106 0.0381677 28 2460 23 6.65987e+06 278916 500653. 1732.36 1.05 0.108761 0.096305 21970 115934 -1 2253 24 1724 3036 252148 55938 3.77471 3.77471 -134.188 -3.77471 0 0 612192. 2118.31 0.26 0.09 0.11 -1 -1 0.26 0.026022 0.0230161 138 25 87 29 29 29 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_005.v common 4.34 vpr 64.98 MiB 0.02 7208 -1 -1 1 0.03 -1 -1 33968 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66536 32 32 376 288 1 195 84 17 17 289 -1 unnamed_device 26.5 MiB 0.22 1002 9600 2619 6430 551 65.0 MiB 0.10 0.00 3.30796 -116.492 -3.30796 3.30796 0.93 0.000552739 0.000504892 0.0315651 0.0288964 32 3027 21 6.65987e+06 253560 554710. 1919.41 1.07 0.102625 0.0907346 22834 132086 -1 2464 20 2001 3619 269205 63797 3.86363 3.86363 -151.124 -3.86363 0 0 701300. 2426.64 0.30 0.08 0.12 -1 -1 0.30 0.0254362 0.0226032 151 31 96 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_006.v common 4.42 vpr 64.89 MiB 0.02 7272 -1 -1 1 0.03 -1 -1 34144 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 32 32 402 316 1 199 101 17 17 289 -1 unnamed_device 26.6 MiB 0.21 1018 9501 1932 7142 427 64.9 MiB 0.09 0.00 2.66064 -94.5007 -2.66064 2.66064 0.93 0.000529701 0.000480397 0.0245459 0.0223644 26 3020 31 6.65987e+06 469086 477104. 1650.88 1.20 0.109063 0.0957418 21682 110474 -1 2223 21 1707 2797 228202 52856 2.88991 2.88991 -118.021 -2.88991 0 0 585099. 2024.56 0.26 0.09 0.10 -1 -1 0.26 0.028817 0.0257474 154 61 63 32 63 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_007.v common 3.98 vpr 64.20 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 34388 -1 -1 19 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65736 27 32 269 226 1 135 78 17 17 289 -1 unnamed_device 25.7 MiB 0.18 581 13026 5446 6285 1295 64.2 MiB 0.09 0.00 3.0353 -79.6884 -3.0353 3.0353 0.91 0.000338119 0.000310458 0.0307817 0.0281594 32 1512 23 6.65987e+06 240882 554710. 1919.41 0.91 0.0802385 0.0708694 22834 132086 -1 1346 22 1124 1952 136687 33454 2.98997 2.98997 -98.0645 -2.98997 0 0 701300. 2426.64 0.28 0.05 0.13 -1 -1 0.28 0.0185814 0.0164231 96 26 54 27 27 27 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_008.v common 4.01 vpr 64.72 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 33808 -1 -1 33 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66276 31 32 317 242 1 185 96 17 17 289 -1 unnamed_device 26.1 MiB 0.14 1025 11046 2936 7024 1086 64.7 MiB 0.09 0.00 2.73284 -90.0098 -2.73284 2.73284 0.91 0.000467058 0.000425429 0.0251246 0.0228891 32 2398 23 6.65987e+06 418374 554710. 1919.41 0.93 0.0846979 0.0742995 22834 132086 -1 2074 21 1287 2226 164909 37739 2.74691 2.74691 -104.448 -2.74691 0 0 701300. 2426.64 0.29 0.07 0.12 -1 -1 0.29 0.0224114 0.0198316 139 -1 115 31 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_009.v common 4.05 vpr 64.83 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 33860 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 31 32 338 292 1 148 79 17 17 289 -1 unnamed_device 26.0 MiB 0.28 806 7853 2025 5355 473 64.8 MiB 0.07 0.00 2.45267 -82.8473 -2.45267 2.45267 0.92 0.000464225 0.000422785 0.0240409 0.0220103 28 1930 19 6.65987e+06 202848 500653. 1732.36 0.89 0.0821856 0.0723295 21970 115934 -1 1727 16 868 1371 106279 24266 2.49925 2.49925 -99.1116 -2.49925 0 0 612192. 2118.31 0.26 0.05 0.11 -1 -1 0.26 0.0184798 0.0164532 105 81 0 0 84 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_010.v common 4.16 vpr 64.79 MiB 0.02 7024 -1 -1 1 0.03 -1 -1 33688 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 32 32 314 256 1 162 80 17 17 289 -1 unnamed_device 26.0 MiB 0.26 884 7992 2012 5204 776 64.8 MiB 0.07 0.00 2.7537 -99.6086 -2.7537 2.7537 0.92 0.000456819 0.000417073 0.0234796 0.0215139 32 1954 22 6.65987e+06 202848 554710. 1919.41 0.95 0.0826095 0.0727729 22834 132086 -1 1812 18 1320 2013 144270 32719 2.93777 2.93777 -121.166 -2.93777 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0199583 0.0177689 121 31 64 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_011.v common 4.03 vpr 64.77 MiB 0.02 7044 -1 -1 1 0.03 -1 -1 33800 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 30 32 325 273 1 151 79 17 17 289 -1 unnamed_device 25.9 MiB 0.24 653 12078 2741 8673 664 64.8 MiB 0.09 0.00 2.80139 -89.1444 -2.80139 2.80139 0.88 0.000469292 0.000426559 0.0359596 0.0327096 32 1867 20 6.65987e+06 215526 554710. 1919.41 0.99 0.0891724 0.0787875 22834 132086 -1 1510 20 1083 1540 105689 26343 2.93697 2.93697 -110.785 -2.93697 0 0 701300. 2426.64 0.27 0.05 0.12 -1 -1 0.27 0.0199034 0.0176021 110 58 30 30 60 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_012.v common 4.27 vpr 64.85 MiB 0.02 7240 -1 -1 1 0.03 -1 -1 33604 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 331 280 1 156 93 17 17 289 -1 unnamed_device 26.2 MiB 0.24 834 10383 2397 7480 506 64.9 MiB 0.09 0.00 2.44518 -85.204 -2.44518 2.44518 0.93 0.000485552 0.000443435 0.0262195 0.023916 30 2002 23 6.65987e+06 367662 526063. 1820.29 1.05 0.0915151 0.080616 22546 126617 -1 1675 23 1113 1889 126325 28658 2.52325 2.52325 -100.98 -2.52325 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0236105 0.0208392 114 57 25 25 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_013.v common 5.74 vpr 64.90 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 33888 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 386 305 1 188 96 17 17 289 -1 unnamed_device 26.5 MiB 0.41 763 12360 3452 7421 1487 64.9 MiB 0.12 0.00 2.8739 -95.0908 -2.8739 2.8739 0.95 0.000577381 0.000528708 0.0345921 0.0316264 36 2138 26 6.65987e+06 405696 612192. 2118.31 2.27 0.176658 0.155948 23410 145293 -1 1545 20 1364 2275 124900 32766 2.90617 2.90617 -106.851 -2.90617 0 0 782063. 2706.10 0.33 0.06 0.14 -1 -1 0.33 0.0259374 0.0231149 143 55 64 32 57 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_014.v common 4.35 vpr 64.79 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 33932 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 32 32 407 319 1 200 98 17 17 289 -1 unnamed_device 26.6 MiB 0.26 1041 9098 2060 6457 581 64.8 MiB 0.09 0.00 3.1647 -112.627 -3.1647 3.1647 0.93 0.000491955 0.000448424 0.0253221 0.0231295 32 2545 24 6.65987e+06 431052 554710. 1919.41 1.02 0.0992 0.0871656 22834 132086 -1 2298 22 2111 3292 261887 58773 3.60317 3.60317 -141.375 -3.60317 0 0 701300. 2426.64 0.30 0.09 0.13 -1 -1 0.30 0.028771 0.025562 156 60 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_015.v common 4.03 vpr 64.41 MiB 0.02 7036 -1 -1 1 0.03 -1 -1 34092 -1 -1 18 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65960 29 32 272 228 1 145 79 17 17 289 -1 unnamed_device 25.8 MiB 0.16 671 8191 2023 5330 838 64.4 MiB 0.07 0.00 2.43238 -74.1781 -2.43238 2.43238 0.93 0.000410309 0.000374642 0.0217606 0.0199352 32 1782 19 6.65987e+06 228204 554710. 1919.41 0.92 0.0731551 0.0644053 22834 132086 -1 1585 19 1120 1889 130649 31584 2.65545 2.65545 -93.8497 -2.65545 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.019183 0.0170711 107 21 58 29 24 24 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_016.v common 4.19 vpr 65.21 MiB 0.02 7340 -1 -1 1 0.03 -1 -1 34016 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66772 32 32 401 315 1 192 84 17 17 289 -1 unnamed_device 26.6 MiB 0.25 1053 10149 2578 6717 854 65.2 MiB 0.10 0.00 2.7929 -102.809 -2.7929 2.7929 0.91 0.00051395 0.000471437 0.0313435 0.0287266 32 2702 22 6.65987e+06 253560 554710. 1919.41 0.99 0.102182 0.0902875 22834 132086 -1 2335 20 1706 2946 234827 53733 3.09017 3.09017 -125.908 -3.09017 0 0 701300. 2426.64 0.29 0.07 0.12 -1 -1 0.29 0.0249461 0.0222373 146 60 64 32 62 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_017.v common 4.46 vpr 65.00 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 33908 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 32 32 383 303 1 185 98 17 17 289 -1 unnamed_device 26.4 MiB 0.37 1040 14048 4104 8684 1260 65.0 MiB 0.12 0.00 2.8109 -102.334 -2.8109 2.8109 0.92 0.000547468 0.000498481 0.0370155 0.0337742 28 2299 20 6.65987e+06 431052 500653. 1732.36 1.08 0.111166 0.0985299 21970 115934 -1 2026 22 1492 2254 150832 34900 2.69057 2.69057 -116.697 -2.69057 0 0 612192. 2118.31 0.27 0.07 0.12 -1 -1 0.27 0.0267433 0.0237179 142 54 64 32 56 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_018.v common 4.15 vpr 64.80 MiB 0.02 6960 -1 -1 1 0.03 -1 -1 33700 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 32 32 339 284 1 162 94 17 17 289 -1 unnamed_device 26.1 MiB 0.21 768 16495 5830 8068 2597 64.8 MiB 0.13 0.00 2.23864 -80.9004 -2.23864 2.23864 0.92 0.000484418 0.000441522 0.0393323 0.0358134 32 2034 22 6.65987e+06 380340 554710. 1919.41 0.94 0.100467 0.0886279 22834 132086 -1 1699 20 1154 1758 138154 33434 2.36891 2.36891 -94.5597 -2.36891 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0218429 0.0193289 118 62 29 29 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_019.v common 3.95 vpr 64.14 MiB 0.02 6976 -1 -1 1 0.03 -1 -1 33820 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65684 30 32 226 208 1 119 77 17 17 289 -1 unnamed_device 25.6 MiB 0.12 718 10672 3411 5794 1467 64.1 MiB 0.07 0.00 1.99938 -69.5127 -1.99938 1.99938 0.92 0.000365759 0.000335078 0.0254517 0.0233226 32 1518 17 6.65987e+06 190170 554710. 1919.41 0.88 0.0686488 0.0605909 22834 132086 -1 1404 18 703 1018 89197 20043 1.83285 1.83285 -80.9655 -1.83285 0 0 701300. 2426.64 0.29 0.04 0.13 -1 -1 0.29 0.0147245 0.0130184 85 29 24 24 30 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_020.v common 4.27 vpr 64.73 MiB 0.02 7208 -1 -1 1 0.03 -1 -1 33940 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 31 32 335 280 1 154 79 17 17 289 -1 unnamed_device 25.9 MiB 0.24 750 13937 4328 7755 1854 64.7 MiB 0.12 0.00 3.15104 -96.608 -3.15104 3.15104 0.96 0.000487397 0.000445953 0.0427009 0.039168 32 1839 21 6.65987e+06 202848 554710. 1919.41 0.95 0.105573 0.0938242 22834 132086 -1 1610 20 891 1341 100686 23506 3.10865 3.10865 -109.492 -3.10865 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0230058 0.0204145 113 55 31 31 62 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_021.v common 4.09 vpr 64.83 MiB 0.02 7196 -1 -1 1 0.03 -1 -1 33692 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 366 283 1 192 98 17 17 289 -1 unnamed_device 26.1 MiB 0.06 984 9773 2309 7055 409 64.8 MiB 0.09 0.00 3.1409 -107.335 -3.1409 3.1409 0.92 0.000553876 0.000505209 0.0262245 0.0239275 30 2274 23 6.65987e+06 431052 526063. 1820.29 1.03 0.0982204 0.0863512 22546 126617 -1 1887 21 1393 2031 119120 27812 3.31397 3.31397 -122.736 -3.31397 0 0 666494. 2306.21 0.28 0.06 0.13 -1 -1 0.28 0.0248862 0.0220796 145 31 91 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_022.v common 4.48 vpr 65.11 MiB 0.02 7320 -1 -1 1 0.04 -1 -1 34312 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 460 375 1 196 100 17 17 289 -1 unnamed_device 26.7 MiB 0.35 1164 11004 2782 7289 933 65.1 MiB 0.12 0.00 2.67564 -97.2858 -2.67564 2.67564 0.92 0.000681608 0.000624681 0.0333596 0.0304406 32 2648 25 6.65987e+06 456408 554710. 1919.41 1.03 0.116662 0.102724 22834 132086 -1 2230 22 1652 2569 174522 40894 3.22165 3.22165 -122.816 -3.22165 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0294367 0.0261231 149 108 0 0 125 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_023.v common 3.95 vpr 63.98 MiB 0.02 7060 -1 -1 1 0.03 -1 -1 34196 -1 -1 17 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65520 26 32 198 186 1 109 75 17 17 289 -1 unnamed_device 25.5 MiB 0.18 559 10661 3192 6660 809 64.0 MiB 0.07 0.00 2.01838 -57.8284 -2.01838 2.01838 0.92 0.000308635 0.00028163 0.0231411 0.0211898 32 1254 18 6.65987e+06 215526 554710. 1919.41 0.89 0.0619415 0.0547363 22834 132086 -1 1125 16 515 764 53290 12542 1.87605 1.87605 -68.8375 -1.87605 0 0 701300. 2426.64 0.29 0.03 0.13 -1 -1 0.29 0.0126127 0.011225 77 21 26 26 22 22 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_024.v common 4.22 vpr 64.88 MiB 0.02 7024 -1 -1 1 0.03 -1 -1 33728 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66432 32 32 333 251 1 187 84 17 17 289 -1 unnamed_device 26.2 MiB 0.13 1077 13626 4613 7246 1767 64.9 MiB 0.12 0.00 3.30433 -110.393 -3.30433 3.30433 0.92 0.000503245 0.000459686 0.0397214 0.0363104 32 2574 28 6.65987e+06 253560 554710. 1919.41 1.04 0.109156 0.096448 22834 132086 -1 2194 23 1709 2924 217942 49980 3.71657 3.71657 -135.35 -3.71657 0 0 701300. 2426.64 0.31 0.08 0.13 -1 -1 0.31 0.0263744 0.0233796 137 -1 122 32 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_025.v common 3.73 vpr 64.02 MiB 0.02 6700 -1 -1 1 0.03 -1 -1 33608 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65556 32 32 199 182 1 122 77 17 17 289 -1 unnamed_device 25.5 MiB 0.04 741 11650 4026 6299 1325 64.0 MiB 0.07 0.00 1.76538 -70.1149 -1.76538 1.76538 0.89 0.000316004 0.00028812 0.0245754 0.0225266 26 1563 18 6.65987e+06 164814 477104. 1650.88 0.95 0.0672361 0.0596806 21682 110474 -1 1430 21 732 967 80136 18272 2.01205 2.01205 -85.1213 -2.01205 0 0 585099. 2024.56 0.25 0.04 0.10 -1 -1 0.25 0.0152061 0.0134522 81 -1 53 32 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_026.v common 4.25 vpr 64.67 MiB 0.02 7272 -1 -1 1 0.03 -1 -1 34156 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66220 32 32 376 288 1 194 97 17 17 289 -1 unnamed_device 26.2 MiB 0.06 1100 19633 6390 10972 2271 64.7 MiB 0.16 0.00 3.2039 -113.493 -3.2039 3.2039 0.94 0.000506073 0.000461512 0.04922 0.0448932 32 2587 27 6.65987e+06 418374 554710. 1919.41 1.04 0.124595 0.110434 22834 132086 -1 2277 24 1978 2941 244980 54270 3.64237 3.64237 -140.765 -3.64237 0 0 701300. 2426.64 0.30 0.09 0.13 -1 -1 0.30 0.0287118 0.0254554 151 21 96 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_027.v common 4.14 vpr 65.00 MiB 0.02 6992 -1 -1 1 0.03 -1 -1 34000 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 32 32 337 253 1 196 99 17 17 289 -1 unnamed_device 26.2 MiB 0.14 1098 12411 3107 8122 1182 65.0 MiB 0.11 0.00 2.67564 -97.1126 -2.67564 2.67564 0.92 0.000494532 0.000450963 0.0295706 0.0270591 32 2414 17 6.65987e+06 443730 554710. 1919.41 0.95 0.0905336 0.080073 22834 132086 -1 2158 19 1508 2439 173898 40283 2.66331 2.66331 -113.596 -2.66331 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0231571 0.0205679 150 -1 124 32 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_028.v common 4.30 vpr 64.72 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 34024 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 32 32 407 319 1 197 99 17 17 289 -1 unnamed_device 26.5 MiB 0.13 996 11955 2998 8493 464 64.7 MiB 0.12 0.00 3.19664 -109.91 -3.19664 3.19664 0.96 0.000545971 0.000497105 0.0322149 0.0294185 30 2430 22 6.65987e+06 443730 526063. 1820.29 1.06 0.106779 0.0943213 22546 126617 -1 2085 21 1612 2773 147236 36173 3.31371 3.31371 -131.88 -3.31371 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0272429 0.0242025 153 54 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_029.v common 3.85 vpr 64.36 MiB 0.02 7040 -1 -1 1 0.03 -1 -1 34116 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65908 32 32 294 246 1 149 79 17 17 289 -1 unnamed_device 25.8 MiB 0.05 876 9374 2633 6149 592 64.4 MiB 0.08 0.00 2.30182 -84.3634 -2.30182 2.30182 0.89 0.000440116 0.00040259 0.0260915 0.0239065 32 2055 21 6.65987e+06 190170 554710. 1919.41 0.91 0.0815196 0.0720711 22834 132086 -1 1872 22 1111 1835 171931 38585 2.57851 2.57851 -102.663 -2.57851 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0219023 0.0192801 106 31 54 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_030.v common 4.09 vpr 64.37 MiB 0.02 7088 -1 -1 1 0.03 -1 -1 33788 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65912 30 32 296 244 1 154 81 17 17 289 -1 unnamed_device 26.0 MiB 0.12 755 12681 3724 7149 1808 64.4 MiB 0.09 0.00 2.8721 -94.5402 -2.8721 2.8721 0.94 0.00040967 0.000375892 0.033757 0.0308787 32 1747 20 6.65987e+06 240882 554710. 1919.41 0.92 0.0897973 0.0793019 22834 132086 -1 1663 19 1185 1675 117098 27780 3.08837 3.08837 -114.677 -3.08837 0 0 701300. 2426.64 0.30 0.05 0.13 -1 -1 0.30 0.0200318 0.0177778 115 29 60 30 30 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_031.v common 4.13 vpr 64.36 MiB 0.02 6900 -1 -1 1 0.03 -1 -1 33640 -1 -1 20 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65908 28 32 278 232 1 150 80 17 17 289 -1 unnamed_device 25.8 MiB 0.14 776 13668 4128 7791 1749 64.4 MiB 0.11 0.00 2.7097 -85.6959 -2.7097 2.7097 0.95 0.000420605 0.000384929 0.0357848 0.0327492 32 1929 22 6.65987e+06 253560 554710. 1919.41 0.96 0.0904554 0.0799535 22834 132086 -1 1743 21 1285 2181 174336 40572 3.06731 3.06731 -110.042 -3.06731 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.02004 0.0177233 107 27 56 28 28 28 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_032.v common 4.05 vpr 64.81 MiB 0.02 6868 -1 -1 1 0.03 -1 -1 33932 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 283 225 1 166 82 17 17 289 -1 unnamed_device 26.1 MiB 0.11 702 4888 903 3308 677 64.8 MiB 0.04 0.00 2.7647 -95.1525 -2.7647 2.7647 0.97 0.000439055 0.000400349 0.0143295 0.0131451 30 2090 27 6.65987e+06 228204 526063. 1820.29 1.00 0.0757486 0.0663333 22546 126617 -1 1607 18 1136 1831 109609 26872 2.83491 2.83491 -113.342 -2.83491 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.0187533 0.0167362 125 -1 96 32 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_033.v common 4.06 vpr 64.55 MiB 0.02 7008 -1 -1 1 0.03 -1 -1 33964 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 31 32 303 249 1 162 94 17 17 289 -1 unnamed_device 26.1 MiB 0.08 805 17134 4862 9825 2447 64.6 MiB 0.13 0.00 2.66578 -92.343 -2.66578 2.66578 0.92 0.000438425 0.000399906 0.0388349 0.0354761 32 2053 21 6.65987e+06 393018 554710. 1919.41 0.96 0.0967255 0.0857276 22834 132086 -1 1823 19 1259 2078 158398 37305 2.90565 2.90565 -109.413 -2.90565 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0195733 0.0173214 119 26 61 31 31 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_034.v common 5.98 vpr 64.64 MiB 0.02 7124 -1 -1 1 0.03 -1 -1 33668 -1 -1 30 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 29 32 312 264 1 154 91 17 17 289 -1 unnamed_device 26.2 MiB 0.24 754 9475 2385 6417 673 64.6 MiB 0.09 0.00 2.17493 -72.8492 -2.17493 2.17493 0.94 0.00045927 0.000413146 0.02329 0.0212174 28 1715 23 6.65987e+06 380340 500653. 1732.36 2.78 0.141074 0.122424 21970 115934 -1 1604 18 1016 1689 106182 25720 2.10931 2.10931 -84.2442 -2.10931 0 0 612192. 2118.31 0.26 0.05 0.11 -1 -1 0.26 0.0177134 0.0157132 109 55 29 29 57 29 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_035.v common 4.52 vpr 65.04 MiB 0.02 7244 -1 -1 1 0.03 -1 -1 34208 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66604 32 32 423 310 1 229 103 17 17 289 -1 unnamed_device 26.9 MiB 0.32 1243 12153 3283 7976 894 65.0 MiB 0.13 0.00 3.41716 -119.933 -3.41716 3.41716 0.95 0.000617546 0.000565313 0.0335657 0.0306439 28 3140 23 6.65987e+06 494442 500653. 1732.36 1.06 0.114905 0.101476 21970 115934 -1 2730 21 1892 3203 228209 51294 3.86363 3.86363 -147.962 -3.86363 0 0 612192. 2118.31 0.27 0.08 0.12 -1 -1 0.27 0.0292678 0.0260487 179 26 128 32 27 27 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_036.v common 4.26 vpr 65.28 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 34236 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66848 32 32 403 317 1 198 99 17 17 289 -1 unnamed_device 26.6 MiB 0.26 1019 10359 2493 7168 698 65.3 MiB 0.10 0.00 2.8501 -99.3889 -2.8501 2.8501 0.93 0.000560945 0.000508006 0.0293881 0.0267017 32 2305 17 6.65987e+06 443730 554710. 1919.41 0.98 0.097589 0.0861288 22834 132086 -1 1999 18 1734 2587 171137 40845 2.85397 2.85397 -116.782 -2.85397 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0238954 0.0213146 152 62 62 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_037.v common 4.38 vpr 64.77 MiB 0.02 7168 -1 -1 1 0.03 -1 -1 34172 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 31 32 353 302 1 156 91 17 17 289 -1 unnamed_device 26.2 MiB 0.36 747 9067 1968 6729 370 64.8 MiB 0.08 0.00 2.46718 -83.3743 -2.46718 2.46718 0.96 0.000495877 0.00045379 0.0246469 0.0225504 28 2145 23 6.65987e+06 354984 500653. 1732.36 1.03 0.0927202 0.0816707 21970 115934 -1 1761 21 1136 1727 132241 31254 2.73245 2.73245 -107.467 -2.73245 0 0 612192. 2118.31 0.27 0.06 0.11 -1 -1 0.27 0.0233966 0.0207121 113 77 0 0 89 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_038.v common 4.39 vpr 64.99 MiB 0.02 7160 -1 -1 1 0.04 -1 -1 34008 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66552 31 32 391 309 1 194 84 17 17 289 -1 unnamed_device 26.3 MiB 0.24 1141 14724 4281 8560 1883 65.0 MiB 0.14 0.00 2.7709 -97.8546 -2.7709 2.7709 0.95 0.000540041 0.000484605 0.0465243 0.0424734 28 2744 33 6.65987e+06 266238 500653. 1732.36 1.06 0.12696 0.11212 21970 115934 -1 2449 22 1693 2768 200848 45205 2.87785 2.87785 -117.435 -2.87785 0 0 612192. 2118.31 0.28 0.08 0.11 -1 -1 0.28 0.0272927 0.0242744 148 59 60 30 62 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_039.v common 4.42 vpr 64.96 MiB 0.02 7564 -1 -1 1 0.03 -1 -1 33808 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66516 31 32 455 371 1 193 84 17 17 289 -1 unnamed_device 26.3 MiB 0.34 1077 8868 1863 6519 486 65.0 MiB 0.09 0.00 3.96764 -116.375 -3.96764 3.96764 0.95 0.000605106 0.000544066 0.032179 0.0293362 30 2447 20 6.65987e+06 266238 526063. 1820.29 1.06 0.109787 0.0968817 22546 126617 -1 2085 17 1088 1721 105849 24147 3.60071 3.60071 -128.401 -3.60071 0 0 666494. 2306.21 0.28 0.06 0.13 -1 -1 0.28 0.0248793 0.0222438 149 111 0 0 124 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_040.v common 4.56 vpr 65.08 MiB 0.02 7488 -1 -1 1 0.04 -1 -1 33896 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 31 32 413 333 1 188 84 17 17 289 -1 unnamed_device 26.3 MiB 0.46 939 9600 2615 6358 627 65.1 MiB 0.09 0.00 3.8015 -105.375 -3.8015 3.8015 0.97 0.000584266 0.000531592 0.0313403 0.0286584 32 2613 23 6.65987e+06 266238 554710. 1919.41 1.02 0.106682 0.0940752 22834 132086 -1 2097 19 1467 2428 187680 43713 3.86037 3.86037 -130.777 -3.86037 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0250598 0.0223592 143 86 31 31 89 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_041.v common 4.24 vpr 64.81 MiB 0.02 7428 -1 -1 1 0.03 -1 -1 33880 -1 -1 33 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66368 31 32 391 309 1 193 96 17 17 289 -1 unnamed_device 26.7 MiB 0.25 1014 15645 4615 8488 2542 64.8 MiB 0.14 0.00 2.62144 -91.6007 -2.62144 2.62144 0.89 0.000526672 0.000479557 0.0410054 0.0373044 32 2482 24 6.65987e+06 418374 554710. 1919.41 1.00 0.111771 0.0986698 22834 132086 -1 2203 20 1609 2625 198778 45896 2.99211 2.99211 -115.058 -2.99211 0 0 701300. 2426.64 0.28 0.07 0.13 -1 -1 0.28 0.0246226 0.0217839 146 58 60 31 62 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_042.v common 4.24 vpr 64.94 MiB 0.02 7348 -1 -1 1 0.03 -1 -1 34428 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 407 319 1 198 99 17 17 289 -1 unnamed_device 26.7 MiB 0.11 1114 9675 2104 6817 754 64.9 MiB 0.10 0.00 3.07644 -110.228 -3.07644 3.07644 0.93 0.000544397 0.000494365 0.0269166 0.0245785 32 2887 22 6.65987e+06 443730 554710. 1919.41 1.01 0.0991941 0.08718 22834 132086 -1 2453 24 2056 3085 245715 55020 3.74731 3.74731 -140.186 -3.74731 0 0 701300. 2426.64 0.29 0.09 0.14 -1 -1 0.29 0.0313989 0.0279456 154 42 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_043.v common 6.51 vpr 65.25 MiB 0.02 7356 -1 -1 1 0.03 -1 -1 34024 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 32 32 496 380 1 232 104 17 17 289 -1 unnamed_device 27.0 MiB 0.28 1087 10840 2392 7745 703 65.2 MiB 0.12 0.00 3.3161 -111.319 -3.3161 3.3161 0.94 0.000659155 0.000599187 0.0327919 0.0299255 30 2664 22 6.65987e+06 507120 526063. 1820.29 3.16 0.213413 0.185612 22546 126617 -1 2176 18 1624 2615 127690 31819 3.56837 3.56837 -134.654 -3.56837 0 0 666494. 2306.21 0.29 0.06 0.12 -1 -1 0.29 0.0287009 0.0257197 184 91 62 32 96 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_044.v common 4.11 vpr 64.40 MiB 0.02 6944 -1 -1 1 0.03 -1 -1 34072 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65944 31 32 305 250 1 158 81 17 17 289 -1 unnamed_device 26.0 MiB 0.13 883 9881 2666 5798 1417 64.4 MiB 0.09 0.00 2.83398 -94.3561 -2.83398 2.83398 0.93 0.000454637 0.000416167 0.0280113 0.0256768 28 1997 20 6.65987e+06 228204 500653. 1732.36 1.03 0.0877441 0.0777113 21970 115934 -1 1892 20 1313 2018 149206 34145 2.68245 2.68245 -114.097 -2.68245 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0211535 0.0187601 116 24 62 31 31 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_045.v common 4.49 vpr 64.88 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 34072 -1 -1 36 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66432 31 32 395 311 1 196 99 17 17 289 -1 unnamed_device 26.6 MiB 0.29 1236 18111 5153 10456 2502 64.9 MiB 0.14 0.00 3.4271 -115.947 -3.4271 3.4271 0.92 0.000532674 0.00048566 0.0456013 0.0415973 32 2754 28 6.65987e+06 456408 554710. 1919.41 1.11 0.122421 0.108129 22834 132086 -1 2574 22 1774 2780 275281 57161 4.01617 4.01617 -142.903 -4.01617 0 0 701300. 2426.64 0.29 0.09 0.13 -1 -1 0.29 0.0264703 0.0233846 150 59 62 31 62 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_046.v common 4.48 vpr 64.70 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 34072 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66248 32 32 397 313 1 196 97 17 17 289 -1 unnamed_device 26.5 MiB 0.13 1114 19411 5694 11116 2601 64.7 MiB 0.17 0.00 2.90504 -97.9863 -2.90504 2.90504 0.93 0.000531959 0.000485068 0.0507759 0.0462656 28 2674 24 6.65987e+06 418374 500653. 1732.36 1.31 0.129299 0.114557 21970 115934 -1 2308 19 1285 2335 165019 37209 3.00411 3.00411 -117.288 -3.00411 0 0 612192. 2118.31 0.26 0.06 0.11 -1 -1 0.26 0.0237696 0.0211063 148 54 62 32 62 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_047.v common 4.28 vpr 64.73 MiB 0.02 7140 -1 -1 1 0.03 -1 -1 33380 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 32 32 345 257 1 194 84 17 17 289 -1 unnamed_device 26.2 MiB 0.15 1089 14907 4588 8751 1568 64.7 MiB 0.14 0.00 3.30796 -119.004 -3.30796 3.30796 0.92 0.000496442 0.00045372 0.043681 0.0400282 32 2876 24 6.65987e+06 253560 554710. 1919.41 1.05 0.111839 0.0992713 22834 132086 -1 2483 23 2134 3743 310020 70636 3.86663 3.86663 -150.713 -3.86663 0 0 701300. 2426.64 0.30 0.09 0.13 -1 -1 0.30 0.0262621 0.0232903 150 -1 128 32 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_048.v common 4.34 vpr 64.94 MiB 0.02 7432 -1 -1 1 0.03 -1 -1 33736 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 32 32 424 343 1 190 98 17 17 289 -1 unnamed_device 26.7 MiB 0.33 1043 17423 4926 9715 2782 64.9 MiB 0.16 0.00 2.54238 -93.6622 -2.54238 2.54238 0.90 0.000550978 0.000497877 0.0461434 0.0420149 28 2426 17 6.65987e+06 431052 500653. 1732.36 1.05 0.118397 0.105096 21970 115934 -1 2102 21 1456 2214 150653 35143 3.04485 3.04485 -117.439 -3.04485 0 0 612192. 2118.31 0.26 0.07 0.11 -1 -1 0.26 0.0266083 0.0235201 145 81 25 25 96 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_049.v common 4.82 vpr 64.86 MiB 0.02 7408 -1 -1 1 0.03 -1 -1 33720 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 395 311 1 194 99 17 17 289 -1 unnamed_device 26.6 MiB 0.32 987 9903 2078 7336 489 64.9 MiB 0.09 0.00 2.8739 -100.942 -2.8739 2.8739 0.93 0.000529775 0.000487626 0.0266001 0.0242756 28 2781 34 6.65987e+06 443730 500653. 1732.36 1.47 0.115282 0.101351 21970 115934 -1 2258 24 1496 2500 177238 42020 3.07197 3.07197 -124.473 -3.07197 0 0 612192. 2118.31 0.28 0.08 0.12 -1 -1 0.28 0.0294878 0.0261161 146 58 64 32 60 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_050.v common 4.25 vpr 64.98 MiB 0.02 7176 -1 -1 1 0.03 -1 -1 34020 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 32 32 405 318 1 200 101 17 17 289 -1 unnamed_device 26.5 MiB 0.25 1114 15846 4290 10313 1243 65.0 MiB 0.14 0.00 2.63244 -96.3801 -2.63244 2.63244 0.93 0.000556685 0.000503179 0.041534 0.0376436 30 2334 22 6.65987e+06 469086 526063. 1820.29 0.96 0.11443 0.100877 22546 126617 -1 2053 20 1475 2326 130041 29853 2.64219 2.64219 -110.905 -2.64219 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0261792 0.0233266 155 61 63 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_051.v common 4.56 vpr 64.82 MiB 0.02 6988 -1 -1 1 0.03 -1 -1 33844 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 32 32 376 288 1 194 99 17 17 289 -1 unnamed_device 26.6 MiB 0.06 1044 18111 5689 9985 2437 64.8 MiB 0.16 0.00 3.1757 -112.337 -3.1757 3.1757 0.94 0.000548203 0.00050101 0.0455336 0.0415844 28 2692 22 6.65987e+06 443730 500653. 1732.36 1.42 0.1209 0.107366 21970 115934 -1 2274 20 1710 2840 211785 47286 3.96497 3.96497 -136.828 -3.96497 0 0 612192. 2118.31 0.27 0.07 0.11 -1 -1 0.27 0.0240892 0.0213512 150 21 96 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_052.v common 4.27 vpr 64.89 MiB 0.02 7192 -1 -1 1 0.04 -1 -1 34256 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 32 32 407 319 1 197 101 17 17 289 -1 unnamed_device 26.6 MiB 0.15 870 13731 3659 8227 1845 64.9 MiB 0.12 0.00 3.18084 -106.536 -3.18084 3.18084 0.92 0.000545067 0.000497632 0.0347769 0.0317326 30 2510 24 6.65987e+06 469086 526063. 1820.29 1.07 0.108284 0.0955091 22546 126617 -1 1868 24 1736 2692 153450 38076 3.61311 3.61311 -134.35 -3.61311 0 0 666494. 2306.21 0.28 0.07 0.12 -1 -1 0.28 0.0287307 0.0253606 153 50 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_053.v common 5.85 vpr 65.05 MiB 0.02 7300 -1 -1 1 0.03 -1 -1 34172 -1 -1 34 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 31 32 449 367 1 193 97 17 17 289 -1 unnamed_device 26.6 MiB 0.40 1064 10531 2702 7276 553 65.0 MiB 0.11 0.00 3.40198 -100.358 -3.40198 3.40198 0.94 0.000586827 0.000532388 0.0312295 0.0284219 26 3304 42 6.65987e+06 431052 477104. 1650.88 2.43 0.133269 0.116825 21682 110474 -1 2524 23 1478 2830 258159 57167 3.60525 3.60525 -131.216 -3.60525 0 0 585099. 2024.56 0.25 0.09 0.11 -1 -1 0.25 0.028868 0.0254918 145 110 0 0 122 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_054.v common 4.50 vpr 64.85 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 33792 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 432 346 1 195 84 17 17 289 -1 unnamed_device 26.6 MiB 0.25 1098 15639 5253 8536 1850 64.9 MiB 0.15 0.00 3.20378 -103.942 -3.20378 3.20378 0.96 0.000576805 0.000525756 0.0520755 0.0474164 32 2775 27 6.65987e+06 253560 554710. 1919.41 1.09 0.131549 0.116255 22834 132086 -1 2484 22 1739 3148 260661 56552 3.50705 3.50705 -131.097 -3.50705 0 0 701300. 2426.64 0.28 0.09 0.13 -1 -1 0.28 0.0284551 0.0251063 149 86 32 32 94 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_055.v common 3.81 vpr 64.22 MiB 0.02 6900 -1 -1 1 0.03 -1 -1 34048 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65760 32 32 312 255 1 166 94 17 17 289 -1 unnamed_device 25.9 MiB 0.05 869 16495 5012 9026 2457 64.2 MiB 0.11 0.00 2.55038 -93.1364 -2.55038 2.55038 0.89 0.000421052 0.000385612 0.0349042 0.0319194 30 2077 20 6.65987e+06 380340 526063. 1820.29 0.90 0.0897908 0.0792059 22546 126617 -1 1813 17 1002 1593 92048 22051 2.60725 2.60725 -108.161 -2.60725 0 0 666494. 2306.21 0.27 0.05 0.13 -1 -1 0.27 0.0189186 0.0168632 124 20 63 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_056.v common 4.31 vpr 64.86 MiB 0.02 7156 -1 -1 1 0.03 -1 -1 33728 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66412 32 32 370 314 1 164 82 17 17 289 -1 unnamed_device 26.2 MiB 0.28 909 9872 2816 6407 649 64.9 MiB 0.09 0.00 2.66064 -96.9536 -2.66064 2.66064 0.97 0.000521279 0.000475968 0.0312867 0.0286099 32 2063 24 6.65987e+06 228204 554710. 1919.41 0.96 0.0991314 0.0872921 22834 132086 -1 1863 22 1445 2249 168128 38666 2.87891 2.87891 -118.972 -2.87891 0 0 701300. 2426.64 0.28 0.07 0.13 -1 -1 0.28 0.0243928 0.0215498 121 91 0 0 94 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_057.v common 4.55 vpr 64.95 MiB 0.02 7248 -1 -1 1 0.03 -1 -1 34008 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 32 32 469 351 1 233 104 17 17 289 -1 unnamed_device 26.7 MiB 0.15 1300 12060 3036 8187 837 64.9 MiB 0.12 0.00 3.7069 -130.393 -3.7069 3.7069 0.93 0.000593858 0.000539434 0.0330844 0.0301308 28 3288 21 6.65987e+06 507120 500653. 1732.36 1.33 0.121321 0.107432 21970 115934 -1 2701 22 2355 3866 254308 60548 4.49691 4.49691 -164.002 -4.49691 0 0 612192. 2118.31 0.26 0.09 0.11 -1 -1 0.26 0.0309269 0.0274957 187 53 96 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_058.v common 4.33 vpr 65.07 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 34068 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 32 32 368 284 1 194 95 17 17 289 -1 unnamed_device 26.6 MiB 0.24 1092 12407 3099 7758 1550 65.1 MiB 0.11 0.00 2.7929 -102.208 -2.7929 2.7929 0.96 0.00050679 0.000460168 0.0329495 0.0300799 32 2372 21 6.65987e+06 393018 554710. 1919.41 0.98 0.102665 0.0905871 22834 132086 -1 2130 21 1559 2289 180554 40886 2.96317 2.96317 -121.025 -2.96317 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0264927 0.0235237 146 31 92 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_059.v common 6.31 vpr 64.64 MiB 0.02 6972 -1 -1 1 0.03 -1 -1 33728 -1 -1 30 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66192 30 32 296 244 1 158 92 17 17 289 -1 unnamed_device 26.3 MiB 0.11 859 16031 4317 10378 1336 64.6 MiB 0.12 0.00 2.8189 -96.1115 -2.8189 2.8189 0.92 0.000446328 0.000405478 0.0371541 0.0339321 34 1749 31 6.65987e+06 380340 585099. 2024.56 3.16 0.158848 0.138293 23122 138558 -1 1615 21 1071 1736 112929 26083 2.67837 2.67837 -105.444 -2.67837 0 0 742403. 2568.87 0.30 0.05 0.14 -1 -1 0.30 0.0207455 0.0184148 115 29 60 30 30 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_060.v common 11.71 vpr 65.41 MiB 0.02 7564 -1 -1 1 0.04 -1 -1 34384 -1 -1 43 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66984 32 32 531 413 1 232 107 17 17 289 -1 unnamed_device 27.1 MiB 0.61 1274 20347 5387 12678 2282 65.4 MiB 0.21 0.00 3.8913 -134.724 -3.8913 3.8913 0.95 0.000700594 0.000638785 0.0606297 0.0553013 26 3758 42 6.65987e+06 545154 477104. 1650.88 7.86 0.319248 0.28328 21682 110474 -1 3074 23 2670 4165 332612 74204 5.01177 5.01177 -183.315 -5.01177 0 0 585099. 2024.56 0.26 0.12 0.11 -1 -1 0.26 0.0370052 0.0329627 186 109 32 32 128 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_061.v common 4.27 vpr 64.54 MiB 0.02 6960 -1 -1 1 0.03 -1 -1 34012 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 32 32 376 288 1 194 100 17 17 289 -1 unnamed_device 26.3 MiB 0.26 875 6596 1108 5120 368 64.5 MiB 0.07 0.00 3.42816 -115.392 -3.42816 3.42816 0.92 0.000534295 0.000488801 0.0178798 0.0164367 32 2465 20 6.65987e+06 456408 554710. 1919.41 1.01 0.0859689 0.0754578 22834 132086 -1 2041 23 1951 2790 181831 44603 3.85863 3.85863 -143.967 -3.85863 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0275985 0.0245305 151 31 96 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_062.v common 4.20 vpr 64.88 MiB 0.02 6932 -1 -1 1 0.03 -1 -1 33736 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66432 32 32 283 225 1 164 95 17 17 289 -1 unnamed_device 26.2 MiB 0.05 751 18023 5925 9230 2868 64.9 MiB 0.14 0.00 2.8629 -98.7325 -2.8629 2.8629 0.96 0.000446374 0.000407551 0.0394047 0.0360336 32 2375 27 6.65987e+06 393018 554710. 1919.41 1.07 0.100768 0.0893119 22834 132086 -1 1878 21 1461 2257 157809 39023 2.98297 2.98297 -119.441 -2.98297 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0203336 0.0180322 123 -1 96 32 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_063.v common 4.98 vpr 65.16 MiB 0.02 7192 -1 -1 1 0.04 -1 -1 34088 -1 -1 41 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66724 32 32 438 320 1 235 105 17 17 289 -1 unnamed_device 26.9 MiB 0.18 1281 18877 5636 10574 2667 65.2 MiB 0.18 0.00 3.75196 -130.392 -3.75196 3.75196 0.96 0.000602424 0.000547486 0.0498535 0.0454866 28 3179 27 6.65987e+06 519798 500653. 1732.36 1.64 0.141191 0.125464 21970 115934 -1 2708 19 2131 3583 245090 56101 4.51123 4.51123 -162.665 -4.51123 0 0 612192. 2118.31 0.26 0.08 0.11 -1 -1 0.26 0.0275041 0.024572 188 26 128 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_064.v common 4.03 vpr 64.32 MiB 0.02 6864 -1 -1 1 0.03 -1 -1 33680 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65864 32 32 283 225 1 162 80 17 17 289 -1 unnamed_device 26.0 MiB 0.13 898 11776 3483 6378 1915 64.3 MiB 0.10 0.00 2.7537 -99.1188 -2.7537 2.7537 0.91 0.000441398 0.000402746 0.0320208 0.0293149 32 2083 22 6.65987e+06 202848 554710. 1919.41 0.99 0.0891261 0.0787567 22834 132086 -1 1935 21 1542 2468 189932 43449 2.98991 2.98991 -120.447 -2.98991 0 0 701300. 2426.64 0.28 0.06 0.13 -1 -1 0.28 0.0193651 0.0171779 121 -1 96 32 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_065.v common 4.25 vpr 64.45 MiB 0.02 7024 -1 -1 1 0.03 -1 -1 33980 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65996 30 32 296 244 1 157 93 17 17 289 -1 unnamed_device 26.0 MiB 0.23 850 12903 3416 8586 901 64.4 MiB 0.10 0.00 2.7427 -92.992 -2.7427 2.7427 0.92 0.000475722 0.000432694 0.0288388 0.0262516 26 2078 22 6.65987e+06 393018 477104. 1650.88 1.13 0.0904941 0.079938 21682 110474 -1 1885 20 1221 1935 154768 34728 2.82897 2.82897 -112.932 -2.82897 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0200298 0.0177365 113 29 60 30 30 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_066.v common 4.32 vpr 64.95 MiB 0.02 7372 -1 -1 1 0.03 -1 -1 34004 -1 -1 33 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 29 32 393 319 1 182 94 17 17 289 -1 unnamed_device 26.5 MiB 0.32 974 16921 5061 8933 2927 64.9 MiB 0.15 0.00 2.85398 -92.0118 -2.85398 2.85398 0.93 0.000539297 0.00049051 0.0433924 0.0394743 30 2031 19 6.65987e+06 418374 526063. 1820.29 0.97 0.110902 0.098026 22546 126617 -1 1705 17 995 1669 85878 20717 2.66437 2.66437 -102.751 -2.66437 0 0 666494. 2306.21 0.29 0.05 0.12 -1 -1 0.29 0.0217218 0.0194069 133 81 29 29 85 29 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_067.v common 4.22 vpr 64.89 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 34108 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66448 32 32 407 319 1 194 84 17 17 289 -1 unnamed_device 26.3 MiB 0.12 1014 15090 4607 8313 2170 64.9 MiB 0.13 0.00 3.2179 -113.316 -3.2179 3.2179 0.91 0.000561073 0.000513619 0.0483666 0.0442326 28 2660 25 6.65987e+06 253560 500653. 1732.36 1.08 0.124486 0.110276 21970 115934 -1 2282 20 1734 2607 243294 50515 3.74057 3.74057 -145.649 -3.74057 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0267796 0.0238644 151 53 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_068.v common 4.57 vpr 64.91 MiB 0.02 7304 -1 -1 1 0.03 -1 -1 34008 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 407 319 1 195 98 17 17 289 -1 unnamed_device 26.6 MiB 0.45 1086 14948 4139 9456 1353 64.9 MiB 0.13 0.00 3.1867 -115.378 -3.1867 3.1867 0.92 0.000527898 0.00048295 0.0377008 0.0344325 28 2627 22 6.65987e+06 431052 500653. 1732.36 1.13 0.115879 0.102482 21970 115934 -1 2353 21 1803 2948 215806 47268 3.37377 3.37377 -138.459 -3.37377 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0286179 0.0254672 152 55 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_069.v common 4.24 vpr 64.71 MiB 0.02 6936 -1 -1 1 0.03 -1 -1 34288 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 32 32 345 287 1 161 94 17 17 289 -1 unnamed_device 26.0 MiB 0.24 854 13513 3736 7436 2341 64.7 MiB 0.10 0.00 2.74164 -99.019 -2.74164 2.74164 0.95 0.00049922 0.000454116 0.0331569 0.0303056 32 2038 23 6.65987e+06 380340 554710. 1919.41 0.97 0.0964748 0.0850873 22834 132086 -1 1796 23 1484 2272 175390 39919 2.81651 2.81651 -115.849 -2.81651 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0241346 0.0212366 120 55 32 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_070.v common 4.22 vpr 64.61 MiB 0.02 7312 -1 -1 1 0.03 -1 -1 34144 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66156 31 32 353 302 1 152 80 17 17 289 -1 unnamed_device 25.8 MiB 0.32 846 12292 3483 6896 1913 64.6 MiB 0.10 0.00 2.74778 -87.7105 -2.74778 2.74778 0.91 0.000431204 0.000395126 0.036151 0.0330844 32 2084 20 6.65987e+06 215526 554710. 1919.41 0.95 0.0975451 0.0861598 22834 132086 -1 1828 20 1147 2050 150827 35502 2.90065 2.90065 -108.249 -2.90065 0 0 701300. 2426.64 0.28 0.06 0.13 -1 -1 0.28 0.0224628 0.0199006 109 82 0 0 89 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_071.v common 4.21 vpr 64.80 MiB 0.02 7140 -1 -1 1 0.03 -1 -1 33852 -1 -1 33 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 30 32 374 297 1 186 95 17 17 289 -1 unnamed_device 26.1 MiB 0.21 982 9815 2378 6551 886 64.8 MiB 0.10 0.00 2.61044 -85.5322 -2.61044 2.61044 0.94 0.000531298 0.00048561 0.0269499 0.0246397 32 2336 23 6.65987e+06 418374 554710. 1919.41 0.96 0.0965245 0.0850617 22834 132086 -1 2114 22 1391 2306 179010 39709 3.04811 3.04811 -111.403 -3.04811 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0254953 0.0225468 137 52 60 30 57 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_072.v common 4.34 vpr 64.82 MiB 0.02 7276 -1 -1 1 0.03 -1 -1 33752 -1 -1 31 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 28 32 332 260 1 180 91 17 17 289 -1 unnamed_device 26.1 MiB 0.09 960 15799 4505 9290 2004 64.8 MiB 0.13 0.00 3.41304 -101.557 -3.41304 3.41304 0.94 0.000473622 0.000432541 0.0382637 0.0349077 26 2476 22 6.65987e+06 393018 477104. 1650.88 1.23 0.106872 0.0947998 21682 110474 -1 2202 22 1617 2467 194178 44199 3.93297 3.93297 -130.845 -3.93297 0 0 585099. 2024.56 0.25 0.07 0.10 -1 -1 0.25 0.0226765 0.0199974 133 20 84 28 28 28 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_073.v common 4.29 vpr 64.98 MiB 0.02 7096 -1 -1 1 0.03 -1 -1 34128 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 30 32 325 273 1 157 80 17 17 289 -1 unnamed_device 26.1 MiB 0.33 788 13324 4213 7397 1714 65.0 MiB 0.11 0.00 2.8131 -94.3504 -2.8131 2.8131 0.92 0.000468678 0.00042753 0.039002 0.0356185 32 1933 17 6.65987e+06 228204 554710. 1919.41 0.94 0.0963498 0.0851379 22834 132086 -1 1723 21 1341 2155 165107 38194 2.87997 2.87997 -110.596 -2.87997 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0215651 0.0190844 114 58 30 30 60 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_074.v common 4.23 vpr 64.84 MiB 0.02 6988 -1 -1 1 0.03 -1 -1 33732 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66392 32 32 361 308 1 158 80 17 17 289 -1 unnamed_device 26.2 MiB 0.30 929 13668 3858 8031 1779 64.8 MiB 0.12 0.00 2.72278 -88.6199 -2.72278 2.72278 0.94 0.000503971 0.000458913 0.0428573 0.0391013 30 1855 17 6.65987e+06 202848 526063. 1820.29 0.94 0.10453 0.0927029 22546 126617 -1 1619 20 929 1552 91308 21126 2.43825 2.43825 -98.7471 -2.43825 0 0 666494. 2306.21 0.27 0.05 0.12 -1 -1 0.27 0.0216064 0.0190755 113 88 0 0 91 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_075.v common 6.52 vpr 64.80 MiB 0.02 7072 -1 -1 1 0.03 -1 -1 33972 -1 -1 35 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 31 32 335 251 1 196 98 17 17 289 -1 unnamed_device 26.3 MiB 0.11 1017 10223 2483 7014 726 64.8 MiB 0.10 0.00 3.33845 -110.482 -3.33845 3.33845 0.93 0.00051346 0.000468062 0.0250238 0.022885 34 2635 19 6.65987e+06 443730 585099. 2024.56 3.36 0.16169 0.140925 23122 138558 -1 2193 23 1649 2680 184498 44084 3.74563 3.74563 -135.234 -3.74563 0 0 742403. 2568.87 0.30 0.07 0.14 -1 -1 0.30 0.0256572 0.0227 150 -1 124 31 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_076.v common 5.22 vpr 64.98 MiB 0.02 7368 -1 -1 1 0.03 -1 -1 34112 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 32 32 407 319 1 197 98 17 17 289 -1 unnamed_device 26.7 MiB 0.23 1089 14273 4310 8986 977 65.0 MiB 0.14 0.00 3.1977 -114.63 -3.1977 3.1977 0.88 0.000516743 0.000469832 0.0394317 0.0360383 26 3162 30 6.65987e+06 431052 477104. 1650.88 2.06 0.128433 0.114018 21682 110474 -1 2515 21 1827 3139 272111 61224 3.80257 3.80257 -147.189 -3.80257 0 0 585099. 2024.56 0.24 0.09 0.10 -1 -1 0.24 0.0258505 0.0228954 153 57 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_077.v common 4.81 vpr 64.96 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 33888 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 32 32 407 319 1 194 98 17 17 289 -1 unnamed_device 26.7 MiB 0.32 1012 18098 5939 9761 2398 65.0 MiB 0.16 0.00 3.39516 -117.412 -3.39516 3.39516 0.92 0.000573053 0.00052479 0.0490681 0.0447384 28 2955 24 6.65987e+06 431052 500653. 1732.36 1.48 0.124949 0.110932 21970 115934 -1 2290 20 1746 2941 206478 47678 3.86663 3.86663 -149.576 -3.86663 0 0 612192. 2118.31 0.25 0.07 0.11 -1 -1 0.25 0.0244039 0.0216324 151 62 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_078.v common 4.77 vpr 64.94 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 33868 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 399 315 1 196 101 17 17 289 -1 unnamed_device 26.3 MiB 0.26 1069 17021 4782 9262 2977 64.9 MiB 0.15 0.00 3.02144 -104.149 -3.02144 3.02144 0.92 0.000576552 0.000526387 0.0443939 0.0405575 28 3014 27 6.65987e+06 469086 500653. 1732.36 1.45 0.132729 0.11792 21970 115934 -1 2420 20 1729 2946 213661 49264 3.65931 3.65931 -135.851 -3.65931 0 0 612192. 2118.31 0.27 0.08 0.12 -1 -1 0.27 0.025636 0.0228117 148 62 60 30 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_079.v common 4.02 vpr 64.39 MiB 0.02 7092 -1 -1 1 0.03 -1 -1 33756 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65936 30 32 296 244 1 156 80 17 17 289 -1 unnamed_device 26.0 MiB 0.20 869 10916 3008 6667 1241 64.4 MiB 0.09 0.00 2.7709 -94.7681 -2.7709 2.7709 0.91 0.000427858 0.00039154 0.02958 0.027066 28 2080 18 6.65987e+06 228204 500653. 1732.36 0.93 0.0840576 0.0742619 21970 115934 -1 1864 19 1111 1825 124856 28750 2.89377 2.89377 -114.112 -2.89377 0 0 612192. 2118.31 0.26 0.05 0.11 -1 -1 0.26 0.0194005 0.0172538 112 29 60 30 30 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_080.v common 4.32 vpr 64.66 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 34164 -1 -1 22 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66212 30 32 383 303 1 191 84 17 17 289 -1 unnamed_device 25.9 MiB 0.25 899 9051 2518 5752 781 64.7 MiB 0.09 0.00 3.35636 -107.378 -3.35636 3.35636 0.93 0.000557822 0.000507278 0.0288875 0.0264001 32 2379 25 6.65987e+06 278916 554710. 1919.41 0.99 0.100985 0.0888861 22834 132086 -1 2088 18 1680 2523 181073 42810 3.62143 3.62143 -132.321 -3.62143 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0232699 0.02071 145 58 60 30 60 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_081.v common 4.74 vpr 65.11 MiB 0.02 7472 -1 -1 1 0.04 -1 -1 34080 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66676 32 32 469 381 1 198 103 17 17 289 -1 unnamed_device 26.9 MiB 0.30 1092 13117 3120 8277 1720 65.1 MiB 0.12 0.00 3.10658 -110.926 -3.10658 3.10658 0.96 0.000603818 0.000549134 0.03522 0.0320474 28 2702 24 6.65987e+06 494442 500653. 1732.36 1.34 0.120625 0.106305 21970 115934 -1 2340 23 1808 2893 208134 47307 3.39365 3.39365 -136.708 -3.39365 0 0 612192. 2118.31 0.25 0.08 0.12 -1 -1 0.25 0.0298091 0.0262902 154 106 0 0 128 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_082.v common 4.33 vpr 64.82 MiB 0.02 7296 -1 -1 1 0.03 -1 -1 33868 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66380 31 32 425 341 1 189 94 17 17 289 -1 unnamed_device 26.6 MiB 0.23 1073 12874 3585 7940 1349 64.8 MiB 0.12 0.00 3.14164 -108.479 -3.14164 3.14164 0.94 0.000596081 0.000541281 0.0378971 0.0344952 28 2806 22 6.65987e+06 393018 500653. 1732.36 1.04 0.112814 0.0995242 21970 115934 -1 2474 21 1639 2632 209460 47956 3.89371 3.89371 -144.796 -3.89371 0 0 612192. 2118.31 0.27 0.08 0.12 -1 -1 0.27 0.0267346 0.0235745 146 79 31 31 93 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_083.v common 4.50 vpr 65.10 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 34212 -1 -1 30 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 30 32 404 328 1 182 92 17 17 289 -1 unnamed_device 26.4 MiB 0.32 967 10235 2384 7200 651 65.1 MiB 0.10 0.00 3.0133 -92.0766 -3.0133 3.0133 0.97 0.000571608 0.000515262 0.0307826 0.0281373 26 2622 35 6.65987e+06 380340 477104. 1650.88 1.14 0.119186 0.104526 21682 110474 -1 2152 22 1502 2522 183943 43716 3.05517 3.05517 -113.169 -3.05517 0 0 585099. 2024.56 0.24 0.07 0.11 -1 -1 0.24 0.0261201 0.0230312 136 83 26 26 90 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_084.v common 4.28 vpr 64.68 MiB 0.02 7244 -1 -1 1 0.03 -1 -1 34172 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66228 32 32 407 319 1 198 85 17 17 289 -1 unnamed_device 26.5 MiB 0.22 1128 14593 4018 8697 1878 64.7 MiB 0.13 0.00 3.2069 -115.79 -3.2069 3.2069 0.93 0.000579386 0.00052644 0.0434652 0.0397378 32 2903 20 6.65987e+06 266238 554710. 1919.41 1.03 0.117273 0.103844 22834 132086 -1 2517 21 1994 3447 255995 57875 3.69751 3.69751 -145.551 -3.69751 0 0 701300. 2426.64 0.29 0.08 0.12 -1 -1 0.29 0.0270051 0.0239967 154 58 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_085.v common 4.14 vpr 65.11 MiB 0.02 7348 -1 -1 1 0.03 -1 -1 33872 -1 -1 34 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 29 32 387 316 1 179 95 17 17 289 -1 unnamed_device 26.6 MiB 0.20 927 18023 5543 9908 2572 65.1 MiB 0.14 0.00 2.58364 -84.2114 -2.58364 2.58364 0.92 0.000501333 0.00045802 0.0451102 0.041036 32 2118 21 6.65987e+06 431052 554710. 1919.41 0.91 0.110828 0.0980721 22834 132086 -1 1810 20 1420 2222 152877 36437 2.65771 2.65771 -99.0609 -2.65771 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.023999 0.0211407 134 81 26 26 85 29 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_086.v common 4.09 vpr 64.55 MiB 0.02 6804 -1 -1 1 0.03 -1 -1 33924 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 32 32 283 225 1 157 80 17 17 289 -1 unnamed_device 26.2 MiB 0.09 914 14700 4993 8210 1497 64.6 MiB 0.12 0.00 2.7819 -101.63 -2.7819 2.7819 0.94 0.000446408 0.000407256 0.0398977 0.0365085 32 2040 23 6.65987e+06 202848 554710. 1919.41 0.97 0.0990373 0.087952 22834 132086 -1 1857 23 1447 2247 177620 40701 2.87497 2.87497 -119.475 -2.87497 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0218039 0.0192666 116 -1 96 32 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_087.v common 5.42 vpr 64.91 MiB 0.02 7140 -1 -1 1 0.03 -1 -1 33708 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 32 32 407 319 1 194 97 17 17 289 -1 unnamed_device 26.7 MiB 0.38 873 19633 6384 9822 3427 64.9 MiB 0.16 0.00 3.37316 -113.592 -3.37316 3.37316 0.94 0.000582235 0.000530746 0.053633 0.0488968 32 3026 46 6.65987e+06 418374 554710. 1919.41 1.92 0.182684 0.160624 22834 132086 -1 2193 22 1952 2990 265433 61346 4.05203 4.05203 -146.846 -4.05203 0 0 701300. 2426.64 0.29 0.09 0.13 -1 -1 0.29 0.0273328 0.0241806 150 62 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_088.v common 4.21 vpr 65.05 MiB 0.02 7244 -1 -1 1 0.03 -1 -1 34040 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 407 319 1 201 85 17 17 289 -1 unnamed_device 26.4 MiB 0.27 836 11803 3439 7281 1083 65.0 MiB 0.12 0.00 3.37836 -114.253 -3.37836 3.37836 0.89 0.000550694 0.00050322 0.0368711 0.0337534 32 2505 26 6.65987e+06 266238 554710. 1919.41 1.00 0.113139 0.100153 22834 132086 -1 1986 23 2273 3493 223820 57061 3.83283 3.83283 -146.358 -3.83283 0 0 701300. 2426.64 0.28 0.08 0.12 -1 -1 0.28 0.029836 0.026572 157 62 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_089.v common 4.25 vpr 64.50 MiB 0.02 6980 -1 -1 1 0.03 -1 -1 33976 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66044 32 32 315 267 1 158 93 17 17 289 -1 unnamed_device 25.7 MiB 0.23 882 17313 5947 9030 2336 64.5 MiB 0.13 0.00 2.72758 -89.4265 -2.72758 2.72758 0.97 0.000451181 0.000410714 0.0394515 0.0359128 28 1990 20 6.65987e+06 367662 500653. 1732.36 0.97 0.0976717 0.0863481 21970 115934 -1 1766 22 1100 1700 136516 32000 2.66025 2.66025 -105.307 -2.66025 0 0 612192. 2118.31 0.26 0.06 0.12 -1 -1 0.26 0.0224321 0.0198218 111 47 32 32 54 27 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_090.v common 4.14 vpr 64.57 MiB 0.02 7040 -1 -1 1 0.03 -1 -1 33764 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66120 31 32 275 220 1 160 81 17 17 289 -1 unnamed_device 25.9 MiB 0.11 866 13381 4040 7461 1880 64.6 MiB 0.10 0.00 2.7317 -96.1605 -2.7317 2.7317 0.96 0.000426161 0.000389238 0.0349493 0.032017 32 2071 24 6.65987e+06 228204 554710. 1919.41 0.97 0.0920896 0.0815733 22834 132086 -1 1857 20 1367 2133 169724 38707 2.94197 2.94197 -116.157 -2.94197 0 0 701300. 2426.64 0.28 0.06 0.13 -1 -1 0.28 0.0195607 0.0174126 118 -1 93 31 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_091.v common 4.32 vpr 64.85 MiB 0.03 7348 -1 -1 1 0.03 -1 -1 33604 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 381 303 1 188 96 17 17 289 -1 unnamed_device 26.2 MiB 0.31 1021 6666 1326 4871 469 64.9 MiB 0.07 0.00 3.1709 -105.975 -3.1709 3.1709 0.97 0.000535427 0.000487187 0.0194365 0.0177885 26 2496 23 6.65987e+06 405696 477104. 1650.88 0.99 0.090933 0.0797472 21682 110474 -1 2185 23 1675 2497 183141 41998 3.48611 3.48611 -129.612 -3.48611 0 0 585099. 2024.56 0.25 0.07 0.11 -1 -1 0.25 0.0276264 0.0245312 138 56 60 32 58 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_092.v common 4.99 vpr 64.82 MiB 0.02 7392 -1 -1 1 0.03 -1 -1 33608 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 32 32 406 330 1 190 94 17 17 289 -1 unnamed_device 26.6 MiB 0.26 1096 9892 2319 6657 916 64.8 MiB 0.10 0.00 3.39104 -106.86 -3.39104 3.39104 0.97 0.000564591 0.000519958 0.0292741 0.0267925 26 2809 50 6.65987e+06 380340 477104. 1650.88 1.67 0.134208 0.118184 21682 110474 -1 2348 21 1527 2547 238284 57259 3.87985 3.87985 -135.797 -3.87985 0 0 585099. 2024.56 0.25 0.08 0.11 -1 -1 0.25 0.0258177 0.0228544 134 81 28 28 88 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_093.v common 4.48 vpr 64.64 MiB 0.02 7240 -1 -1 1 0.03 -1 -1 33980 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66196 32 32 399 285 1 228 99 17 17 289 -1 unnamed_device 26.5 MiB 0.07 1311 12639 3746 7797 1096 64.6 MiB 0.13 0.00 3.85936 -131.205 -3.85936 3.85936 0.91 0.000588232 0.000538551 0.0354601 0.0324906 28 3436 23 6.65987e+06 443730 500653. 1732.36 1.41 0.118998 0.105966 21970 115934 -1 2946 23 2274 3666 288079 63728 4.53837 4.53837 -163.093 -4.53837 0 0 612192. 2118.31 0.26 0.10 0.11 -1 -1 0.26 0.0298836 0.0265717 177 -1 156 32 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_094.v common 4.31 vpr 65.14 MiB 0.02 7424 -1 -1 1 0.03 -1 -1 34208 -1 -1 32 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66700 30 32 371 295 1 184 94 17 17 289 -1 unnamed_device 26.4 MiB 0.29 852 10531 2468 6673 1390 65.1 MiB 0.11 0.00 2.92804 -87.4282 -2.92804 2.92804 0.92 0.000513148 0.000467898 0.0290033 0.026446 32 2323 23 6.65987e+06 405696 554710. 1919.41 1.00 0.0963042 0.0846947 22834 132086 -1 1889 19 1544 2365 158330 39083 3.09011 3.09011 -111.13 -3.09011 0 0 701300. 2426.64 0.29 0.06 0.13 -1 -1 0.29 0.0228886 0.02035 136 47 60 30 56 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_095.v common 3.99 vpr 64.09 MiB 0.02 6952 -1 -1 1 0.03 -1 -1 34348 -1 -1 20 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65632 27 32 269 226 1 143 79 17 17 289 -1 unnamed_device 25.6 MiB 0.12 815 13261 4493 6919 1849 64.1 MiB 0.09 0.00 2.6767 -81.2154 -2.6767 2.6767 0.93 0.000411946 0.000376661 0.0341408 0.0312725 32 1591 23 6.65987e+06 253560 554710. 1919.41 0.92 0.0867936 0.0767994 22834 132086 -1 1429 18 959 1370 92178 22095 2.67357 2.67357 -94.797 -2.67357 0 0 701300. 2426.64 0.29 0.04 0.14 -1 -1 0.29 0.0176278 0.015649 107 26 54 27 27 27 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_096.v common 12.22 vpr 65.18 MiB 0.02 7548 -1 -1 1 0.04 -1 -1 33976 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 32 32 493 378 1 232 104 17 17 289 -1 unnamed_device 26.9 MiB 0.20 1354 11328 2738 7936 654 65.2 MiB 0.12 0.00 3.43804 -112.167 -3.43804 3.43804 0.93 0.000724319 0.000659879 0.0328116 0.0299022 36 3326 24 6.65987e+06 507120 612192. 2118.31 8.88 0.296555 0.258947 23410 145293 -1 2722 24 2109 3851 268375 59549 3.71631 3.71631 -139.357 -3.71631 0 0 782063. 2706.10 0.33 0.10 0.14 -1 -1 0.33 0.0345417 0.0306752 184 85 62 31 95 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_097.v common 4.26 vpr 65.23 MiB 0.02 7272 -1 -1 1 0.04 -1 -1 33888 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66796 31 32 455 371 1 189 84 17 17 289 -1 unnamed_device 26.5 MiB 0.38 929 6123 1394 4376 353 65.2 MiB 0.07 0.00 3.51179 -107.602 -3.51179 3.51179 0.88 0.000581608 0.000532014 0.0222837 0.0204898 28 2557 23 6.65987e+06 266238 500653. 1732.36 1.01 0.10504 0.0929267 21970 115934 -1 2059 21 1451 2267 164003 37748 3.65231 3.65231 -136.756 -3.65231 0 0 612192. 2118.31 0.25 0.07 0.10 -1 -1 0.25 0.0286503 0.0255808 144 105 0 0 124 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_098.v common 4.24 vpr 64.63 MiB 0.02 7168 -1 -1 1 0.03 -1 -1 33716 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 32 32 355 304 1 151 80 17 17 289 -1 unnamed_device 25.8 MiB 0.31 838 9368 2497 6439 432 64.6 MiB 0.09 0.00 2.71178 -89.3198 -2.71178 2.71178 0.92 0.000498218 0.000453359 0.0293082 0.0268109 32 2067 22 6.65987e+06 202848 554710. 1919.41 0.97 0.0936865 0.0825076 22834 132086 -1 1784 20 1068 1648 148491 33260 2.85991 2.85991 -111.673 -2.85991 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0224895 0.0198893 109 86 0 0 89 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_099.v common 4.05 vpr 64.83 MiB 0.02 7012 -1 -1 1 0.03 -1 -1 33760 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66384 32 32 364 282 1 196 96 17 17 289 -1 unnamed_device 26.2 MiB 0.10 1147 11703 3012 7514 1177 64.8 MiB 0.11 0.00 3.45859 -111.897 -3.45859 3.45859 0.92 0.000544195 0.000496583 0.0301885 0.0276125 30 2293 18 6.65987e+06 405696 526063. 1820.29 0.94 0.0942033 0.0831913 22546 126617 -1 2118 22 1301 2032 124385 28262 3.50517 3.50517 -130.557 -3.50517 0 0 666494. 2306.21 0.28 0.06 0.12 -1 -1 0.28 0.0254673 0.0226131 146 31 90 30 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_100.v common 4.31 vpr 64.95 MiB 0.02 7496 -1 -1 1 0.04 -1 -1 34336 -1 -1 36 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66508 31 32 443 336 1 220 99 17 17 289 -1 unnamed_device 26.8 MiB 0.15 1164 14007 3953 8601 1453 64.9 MiB 0.14 0.00 3.34904 -108.149 -3.34904 3.34904 0.96 0.000622443 0.000567923 0.0406641 0.0371636 32 2619 23 6.65987e+06 456408 554710. 1919.41 1.00 0.119442 0.105554 22834 132086 -1 2374 21 1929 2858 212743 49462 3.60131 3.60131 -134.237 -3.60131 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0295142 0.0262575 171 50 87 31 62 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_101.v common 4.72 vpr 65.31 MiB 0.02 7312 -1 -1 1 0.03 -1 -1 34212 -1 -1 33 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66876 30 32 373 297 1 186 95 17 17 289 -1 unnamed_device 26.5 MiB 0.13 1047 10463 2875 6751 837 65.3 MiB 0.10 0.00 2.89104 -91.5915 -2.89104 2.89104 0.95 0.000524306 0.00047823 0.0281921 0.0257891 26 2759 18 6.65987e+06 418374 477104. 1650.88 1.58 0.100368 0.0890004 21682 110474 -1 2296 20 1359 2451 198172 43238 2.99011 2.99011 -110.507 -2.99011 0 0 585099. 2024.56 0.24 0.07 0.11 -1 -1 0.24 0.0237219 0.0209712 134 50 58 30 58 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_102.v common 4.78 vpr 64.77 MiB 0.02 7144 -1 -1 1 0.03 -1 -1 34028 -1 -1 42 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 32 32 407 319 1 201 106 17 17 289 -1 unnamed_device 26.4 MiB 0.27 1201 18106 5117 10567 2422 64.8 MiB 0.16 0.00 3.4773 -121.155 -3.4773 3.4773 0.95 0.000592612 0.000529619 0.0434547 0.0395765 28 2936 23 6.65987e+06 532476 500653. 1732.36 1.37 0.121649 0.107491 21970 115934 -1 2432 22 2004 3418 265933 57809 3.59057 3.59057 -140.993 -3.59057 0 0 612192. 2118.31 0.26 0.09 0.12 -1 -1 0.26 0.0281848 0.0249497 157 61 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_103.v common 4.44 vpr 64.70 MiB 0.02 7396 -1 -1 1 0.03 -1 -1 34140 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 32 32 405 318 1 200 102 17 17 289 -1 unnamed_device 26.4 MiB 0.26 1059 16286 4227 9665 2394 64.7 MiB 0.14 0.00 2.67164 -96.406 -2.67164 2.67164 0.94 0.000567181 0.000517182 0.0421355 0.0384485 32 2427 25 6.65987e+06 481764 554710. 1919.41 1.04 0.118594 0.10475 22834 132086 -1 2102 25 1693 2540 187278 44411 2.78671 2.78671 -116.651 -2.78671 0 0 701300. 2426.64 0.28 0.08 0.13 -1 -1 0.28 0.0295151 0.0260164 155 61 63 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_104.v common 3.86 vpr 64.23 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 33744 -1 -1 16 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65768 29 32 287 238 1 134 77 17 17 289 -1 unnamed_device 25.7 MiB 0.12 501 12791 3242 7910 1639 64.2 MiB 0.08 0.00 3.0383 -84.7632 -3.0383 3.0383 0.88 0.000406994 0.00037113 0.0342852 0.0314221 30 1555 27 6.65987e+06 202848 526063. 1820.29 0.94 0.0927229 0.0820218 22546 126617 -1 1149 19 739 1082 69513 17123 2.64337 2.64337 -95.7239 -2.64337 0 0 666494. 2306.21 0.27 0.04 0.11 -1 -1 0.27 0.0174501 0.0154899 93 28 58 29 29 29 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_105.v common 4.25 vpr 64.79 MiB 0.02 7308 -1 -1 1 0.03 -1 -1 34064 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 32 32 334 290 1 154 81 17 17 289 -1 unnamed_device 26.0 MiB 0.32 804 12331 3861 6416 2054 64.8 MiB 0.09 0.00 2.97218 -85.5063 -2.97218 2.97218 0.89 0.000385189 0.00035337 0.0325473 0.0297923 28 1960 24 6.65987e+06 215526 500653. 1732.36 1.11 0.100251 0.0888013 21970 115934 -1 1636 17 899 1220 96454 22618 2.81791 2.81791 -104.576 -2.81791 0 0 612192. 2118.31 0.26 0.04 0.11 -1 -1 0.26 0.0182951 0.0163378 111 79 0 0 82 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_106.v common 7.19 vpr 64.93 MiB 0.02 7232 -1 -1 1 0.03 -1 -1 34104 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 31 32 365 281 1 196 100 17 17 289 -1 unnamed_device 26.6 MiB 0.13 1045 13092 3525 8663 904 64.9 MiB 0.12 0.00 3.57824 -112.58 -3.57824 3.57824 0.93 0.000537548 0.000490101 0.0320304 0.0292622 28 2491 31 6.65987e+06 469086 500653. 1732.36 4.03 0.180381 0.158016 21970 115934 -1 2279 22 1722 2775 212026 48126 3.82457 3.82457 -136.527 -3.82457 0 0 612192. 2118.31 0.25 0.08 0.11 -1 -1 0.25 0.0258212 0.0228988 150 29 93 31 31 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_107.v common 4.03 vpr 64.72 MiB 0.02 7144 -1 -1 1 0.03 -1 -1 33888 -1 -1 31 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 29 32 297 254 1 150 92 17 17 289 -1 unnamed_device 26.1 MiB 0.30 790 16859 4749 10321 1789 64.7 MiB 0.12 0.00 2.86104 -80.1683 -2.86104 2.86104 0.88 0.00041874 0.000382151 0.0361703 0.0330739 26 1866 22 6.65987e+06 393018 477104. 1650.88 0.85 0.0905269 0.0800359 21682 110474 -1 1655 25 1105 1722 123102 29320 2.72945 2.72945 -101.003 -2.72945 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0226936 0.019975 108 48 29 29 52 26 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_108.v common 4.18 vpr 64.83 MiB 0.02 7084 -1 -1 1 0.03 -1 -1 33752 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 32 32 314 256 1 160 80 17 17 289 -1 unnamed_device 26.0 MiB 0.21 899 14356 4505 7887 1964 64.8 MiB 0.12 0.00 2.7929 -100.752 -2.7929 2.7929 0.95 0.000461325 0.000420676 0.0417059 0.0381875 30 1976 21 6.65987e+06 202848 526063. 1820.29 0.95 0.102264 0.0906714 22546 126617 -1 1680 16 1032 1656 85849 21044 2.87877 2.87877 -119.131 -2.87877 0 0 666494. 2306.21 0.28 0.05 0.12 -1 -1 0.28 0.018139 0.0162029 119 31 64 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_109.v common 4.18 vpr 64.96 MiB 0.02 7172 -1 -1 1 0.03 -1 -1 33812 -1 -1 36 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66516 31 32 387 307 1 189 99 17 17 289 -1 unnamed_device 26.4 MiB 0.22 978 12639 3240 8418 981 65.0 MiB 0.11 0.00 2.7739 -97.576 -2.7739 2.7739 0.93 0.000537496 0.000490639 0.0335903 0.0306051 26 2333 19 6.65987e+06 456408 477104. 1650.88 0.98 0.104712 0.092465 21682 110474 -1 2022 19 1540 2146 145965 34401 2.93897 2.93897 -118.169 -2.93897 0 0 585099. 2024.56 0.25 0.06 0.11 -1 -1 0.25 0.0241868 0.021526 142 60 58 31 62 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_110.v common 4.19 vpr 64.66 MiB 0.02 7016 -1 -1 1 0.03 -1 -1 33824 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66216 31 32 308 262 1 148 79 17 17 289 -1 unnamed_device 25.9 MiB 0.32 844 11740 3321 6720 1699 64.7 MiB 0.09 0.00 2.49487 -81.8696 -2.49487 2.49487 0.92 0.000439383 0.000401657 0.0326961 0.0299135 32 1776 19 6.65987e+06 202848 554710. 1919.41 0.91 0.0878393 0.0776068 22834 132086 -1 1672 19 947 1580 123020 27938 2.46805 2.46805 -98.9533 -2.46805 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0195018 0.0173225 105 49 31 31 53 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_111.v common 7.44 vpr 64.98 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 34208 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 32 32 383 307 1 184 96 17 17 289 -1 unnamed_device 26.3 MiB 0.24 946 12141 3259 8024 858 65.0 MiB 0.11 0.00 2.6767 -90.0875 -2.6767 2.6767 0.93 0.000546611 0.000494405 0.0315578 0.0287024 26 2634 36 6.65987e+06 405696 477104. 1650.88 4.24 0.192519 0.16815 21682 110474 -1 2083 18 1130 2027 169453 35941 2.90797 2.90797 -111.767 -2.90797 0 0 585099. 2024.56 0.25 0.06 0.10 -1 -1 0.25 0.0223168 0.0198258 136 56 52 26 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_112.v common 4.90 vpr 65.46 MiB 0.02 7328 -1 -1 1 0.03 -1 -1 33860 -1 -1 36 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67036 31 32 422 339 1 195 99 17 17 289 -1 unnamed_device 26.7 MiB 0.72 1011 17883 5036 10585 2262 65.5 MiB 0.16 0.00 3.0233 -98.7764 -3.0233 3.0233 0.95 0.000572983 0.000521768 0.0483065 0.0437696 32 2256 24 6.65987e+06 456408 554710. 1919.41 1.02 0.124433 0.109857 22834 132086 -1 2014 22 1731 2471 198347 45002 3.04917 3.04917 -115.488 -3.04917 0 0 701300. 2426.64 0.29 0.08 0.13 -1 -1 0.29 0.0282363 0.0249908 148 88 31 31 92 31 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_113.v common 4.05 vpr 64.54 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 33796 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66084 32 32 333 279 1 160 82 17 17 289 -1 unnamed_device 25.7 MiB 0.19 917 12186 3429 7615 1142 64.5 MiB 0.10 0.00 2.31427 -87.1458 -2.31427 2.31427 0.92 0.000436068 0.000397042 0.0335197 0.0306383 32 2090 21 6.65987e+06 228204 554710. 1919.41 0.90 0.0924857 0.0819012 22834 132086 -1 1875 19 1233 1927 150119 34040 2.84785 2.84785 -109.842 -2.84785 0 0 701300. 2426.64 0.28 0.06 0.12 -1 -1 0.28 0.0205505 0.0183011 115 54 32 32 60 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_114.v common 4.54 vpr 64.85 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 33548 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 339 283 1 164 82 17 17 289 -1 unnamed_device 26.2 MiB 0.29 662 8982 2019 5948 1015 64.8 MiB 0.07 0.00 2.66064 -90.3426 -2.66064 2.66064 0.96 0.000469056 0.000427095 0.0266057 0.0243111 32 2362 41 6.65987e+06 228204 554710. 1919.41 1.21 0.110653 0.097356 22834 132086 -1 1682 19 1292 2029 157251 40151 3.23651 3.23651 -122.354 -3.23651 0 0 701300. 2426.64 0.30 0.06 0.13 -1 -1 0.30 0.0219126 0.0195308 121 60 32 32 62 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_115.v common 4.30 vpr 64.85 MiB 0.02 7120 -1 -1 1 0.03 -1 -1 34464 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 32 32 407 319 1 198 100 17 17 289 -1 unnamed_device 26.6 MiB 0.15 955 10540 2529 7056 955 64.9 MiB 0.10 0.00 3.09964 -106.254 -3.09964 3.09964 0.95 0.000566758 0.000517372 0.0286368 0.0261898 32 2572 26 6.65987e+06 456408 554710. 1919.41 1.05 0.107658 0.0948651 22834 132086 -1 2037 23 2057 3084 217061 51409 3.44891 3.44891 -129.858 -3.44891 0 0 701300. 2426.64 0.30 0.08 0.13 -1 -1 0.30 0.0286692 0.0254209 154 49 64 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_116.v common 4.41 vpr 64.90 MiB 0.02 7364 -1 -1 1 0.03 -1 -1 34172 -1 -1 32 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 29 32 367 293 1 183 93 17 17 289 -1 unnamed_device 26.1 MiB 0.24 958 17733 5345 9524 2864 64.9 MiB 0.15 0.00 2.97204 -89.3553 -2.97204 2.97204 0.90 0.000512903 0.000466843 0.0465199 0.0424266 28 2220 22 6.65987e+06 405696 500653. 1732.36 1.18 0.119446 0.105892 21970 115934 -1 2009 20 1162 1813 130472 29612 2.85091 2.85091 -105.513 -2.85091 0 0 612192. 2118.31 0.25 0.06 0.12 -1 -1 0.25 0.0234928 0.0207855 133 54 56 29 58 29 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_117.v common 4.38 vpr 64.94 MiB 0.02 7300 -1 -1 1 0.03 -1 -1 34324 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 469 381 1 200 101 17 17 289 -1 unnamed_device 26.6 MiB 0.34 1045 16551 4912 9937 1702 64.9 MiB 0.14 0.00 3.12784 -111.5 -3.12784 3.12784 0.94 0.000663424 0.000601875 0.044513 0.0404543 28 2717 24 6.65987e+06 469086 500653. 1732.36 0.99 0.124115 0.109322 21970 115934 -1 2456 23 1961 3007 219700 50244 3.62231 3.62231 -142.325 -3.62231 0 0 612192. 2118.31 0.27 0.08 0.11 -1 -1 0.27 0.0299363 0.0263474 156 117 0 0 128 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_118.v common 4.04 vpr 64.34 MiB 0.02 6936 -1 -1 1 0.03 -1 -1 33720 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65884 31 32 259 212 1 146 79 17 17 289 -1 unnamed_device 25.9 MiB 0.11 850 12754 4829 6716 1209 64.3 MiB 0.10 0.00 2.32153 -82.6513 -2.32153 2.32153 0.92 0.000396317 0.000362495 0.0324568 0.0297165 32 1925 29 6.65987e+06 202848 554710. 1919.41 0.97 0.0890277 0.0785787 22834 132086 -1 1712 19 1047 1656 133985 30068 2.74571 2.74571 -100.889 -2.74571 0 0 701300. 2426.64 0.29 0.05 0.13 -1 -1 0.29 0.0182967 0.0162758 105 -1 85 31 0 0 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_119.v common 4.09 vpr 65.10 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 33676 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 32 32 418 338 1 190 97 17 17 289 -1 unnamed_device 26.5 MiB 0.17 907 20299 6652 10637 3010 65.1 MiB 0.16 0.00 3.3113 -108.057 -3.3113 3.3113 0.88 0.000543587 0.000496105 0.0520541 0.047493 32 2274 26 6.65987e+06 418374 554710. 1919.41 0.99 0.129957 0.115448 22834 132086 -1 1840 23 1592 2226 148079 37447 3.69077 3.69077 -123.452 -3.69077 0 0 701300. 2426.64 0.28 0.07 0.12 -1 -1 0.28 0.0276649 0.024546 142 89 28 28 92 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_120.v common 4.21 vpr 64.89 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 34036 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 32 32 376 318 1 156 80 17 17 289 -1 unnamed_device 26.3 MiB 0.21 883 8164 2176 4729 1259 64.9 MiB 0.07 0.00 2.8021 -103.28 -2.8021 2.8021 0.93 0.000514231 0.000468958 0.0271851 0.0249006 32 2024 23 6.65987e+06 202848 554710. 1919.41 0.98 0.0967435 0.0852902 22834 132086 -1 1753 22 1427 2046 152106 35796 2.94697 2.94697 -123.077 -2.94697 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0258642 0.0229684 115 93 0 0 96 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_121.v common 4.45 vpr 64.82 MiB 0.02 7144 -1 -1 1 0.03 -1 -1 33692 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66372 32 32 401 316 1 196 99 17 17 289 -1 unnamed_device 26.5 MiB 0.26 903 15831 4529 8525 2777 64.8 MiB 0.13 0.00 2.63244 -90.4903 -2.63244 2.63244 0.96 0.000522298 0.000478376 0.0417741 0.0380269 32 2793 26 6.65987e+06 443730 554710. 1919.41 1.03 0.120625 0.106591 22834 132086 -1 2013 22 1535 2140 162910 40104 2.93671 2.93671 -115.456 -2.93671 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.027925 0.0247897 149 59 61 32 64 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_122.v common 6.69 vpr 65.32 MiB 0.02 7388 -1 -1 1 0.03 -1 -1 34532 -1 -1 43 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66884 32 32 500 382 1 232 107 17 17 289 -1 unnamed_device 27.0 MiB 0.34 1400 14781 3685 9299 1797 65.3 MiB 0.16 0.00 3.8601 -131.403 -3.8601 3.8601 0.90 0.000676153 0.000615425 0.0420009 0.0383517 30 3101 25 6.65987e+06 545154 526063. 1820.29 3.30 0.245699 0.215694 22546 126617 -1 2559 20 1904 3100 190587 43230 4.46497 4.46497 -159.614 -4.46497 0 0 666494. 2306.21 0.29 0.08 0.12 -1 -1 0.29 0.0320633 0.0286792 186 81 64 32 96 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_123.v common 4.04 vpr 64.29 MiB 0.02 7012 -1 -1 1 0.03 -1 -1 33752 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65832 30 32 246 229 1 118 77 17 17 289 -1 unnamed_device 25.7 MiB 0.22 462 11161 2795 7993 373 64.3 MiB 0.07 0.00 2.22258 -65.9871 -2.22258 2.22258 0.95 0.000378353 0.000345206 0.0275116 0.0251829 28 1300 22 6.65987e+06 190170 500653. 1732.36 0.92 0.0770205 0.0678443 21970 115934 -1 1122 21 679 918 62817 16775 1.90085 1.90085 -76.8879 -1.90085 0 0 612192. 2118.31 0.26 0.04 0.12 -1 -1 0.26 0.0174829 0.0154386 83 51 0 0 53 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_124.v common 3.93 vpr 64.24 MiB 0.02 6944 -1 -1 1 0.03 -1 -1 34028 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65784 30 32 296 244 1 137 78 17 17 289 -1 unnamed_device 25.7 MiB 0.10 566 12362 4517 5865 1980 64.2 MiB 0.09 0.00 2.80784 -84.049 -2.80784 2.80784 0.92 0.000411943 0.000373497 0.0331624 0.0301628 32 1690 26 6.65987e+06 202848 554710. 1919.41 0.91 0.090694 0.0797041 22834 132086 -1 1317 23 1017 1502 119685 29391 2.73591 2.73591 -100.815 -2.73591 0 0 701300. 2426.64 0.29 0.05 0.12 -1 -1 0.29 0.0217617 0.0191749 96 29 60 30 30 30 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_125.v common 4.06 vpr 64.65 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 33664 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66204 32 32 314 256 1 167 82 17 17 289 -1 unnamed_device 25.8 MiB 0.11 856 7914 1721 5841 352 64.7 MiB 0.08 0.00 2.7647 -98.1605 -2.7647 2.7647 0.91 0.000451027 0.000411981 0.0224585 0.0205634 32 2509 23 6.65987e+06 228204 554710. 1919.41 1.00 0.0830015 0.072926 22834 132086 -1 2079 21 1544 2654 211430 48096 3.06911 3.06911 -124.393 -3.06911 0 0 701300. 2426.64 0.29 0.07 0.13 -1 -1 0.29 0.0216652 0.0192021 126 31 64 32 32 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_126.v common 4.10 vpr 64.27 MiB 0.02 6964 -1 -1 1 0.03 -1 -1 33904 -1 -1 34 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65812 25 32 251 214 1 138 91 17 17 289 -1 unnamed_device 25.8 MiB 0.06 732 14371 4013 8517 1841 64.3 MiB 0.09 0.00 2.60564 -72.5529 -2.60564 2.60564 0.93 0.000339093 0.000310755 0.0284937 0.0260421 24 1884 36 6.65987e+06 431052 448715. 1552.65 1.15 0.0883466 0.0776131 21394 104001 -1 1649 22 1123 1782 158286 34955 2.79571 2.79571 -92.7809 -2.79571 0 0 554710. 1919.41 0.24 0.06 0.10 -1 -1 0.24 0.0191279 0.0169384 103 19 50 25 25 25 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_127.v common 4.73 vpr 65.33 MiB 0.02 7364 -1 -1 1 0.04 -1 -1 34112 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66896 32 32 432 346 1 193 84 17 17 289 -1 unnamed_device 26.7 MiB 0.24 885 15456 5239 7426 2791 65.3 MiB 0.14 0.00 3.17278 -99.6026 -3.17278 3.17278 0.93 0.000597698 0.000537375 0.0503972 0.0458387 30 2470 40 6.65987e+06 253560 526063. 1820.29 1.40 0.149559 0.132005 22546 126617 -1 1793 24 1554 2756 153562 37812 3.21865 3.21865 -120.591 -3.21865 0 0 666494. 2306.21 0.29 0.07 0.12 -1 -1 0.29 0.0301433 0.026659 147 84 32 32 94 32 + fixed_k6_N8_unbalanced_ripple_chain_gate_boost_0.2V_22nm.xml mult_128.v common 4.35 vpr 65.02 MiB 0.02 7296 -1 -1 1 0.03 -1 -1 34080 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 31 32 421 339 1 193 100 17 17 289 -1 unnamed_device 26.7 MiB 0.22 1034 19356 5977 10738 2641 65.0 MiB 0.16 0.00 2.8611 -98.7746 -2.8611 2.8611 0.93 0.00059518 0.000526586 0.0517759 0.0469334 32 2227 24 6.65987e+06 469086 554710. 1919.41 1.00 0.128261 0.113177 22834 132086 -1 1993 22 1806 2761 189267 44602 2.95297 2.95297 -114.863 -2.95297 0 0 701300. 2426.64 0.30 0.07 0.13 -1 -1 0.30 0.0281714 0.0250222 146 88 29 29 93 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_001.v common 7.84 vpr 65.88 MiB 0.02 7464 -1 -1 1 0.04 -1 -1 34232 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67460 32 32 438 350 1 187 89 17 17 289 -1 unnamed_device 27.1 MiB 0.95 821 14543 6082 7972 489 65.9 MiB 0.12 0.00 3.15069 -114.339 -3.15069 3.15069 0.97 0.000591747 0.000540248 0.0460285 0.0419332 44 2878 42 6.95648e+06 361892 787024. 2723.27 3.53 0.202396 0.178001 27778 195446 -1 2022 24 1952 2928 251802 53598 4.24356 4.24356 -153.223 -4.24356 0 0 997811. 3452.63 0.39 0.09 0.19 -1 -1 0.39 0.0319193 0.0283106 84 80 32 32 96 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_002.v common 20.90 vpr 65.86 MiB 0.02 7504 -1 -1 1 0.03 -1 -1 33704 -1 -1 14 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67436 30 32 409 330 1 179 76 17 17 289 -1 unnamed_device 27.1 MiB 2.13 801 13036 4668 7201 1167 65.9 MiB 0.11 0.00 3.3213 -109.833 -3.3213 3.3213 0.97 0.000537471 0.000490672 0.0482802 0.0441088 40 2308 31 6.95648e+06 202660 706193. 2443.58 15.46 0.311168 0.27169 26914 176310 -1 2103 29 2259 3436 392819 105294 4.00966 4.00966 -144.182 -4.00966 0 0 926341. 3205.33 0.37 0.13 0.17 -1 -1 0.37 0.0371701 0.0329768 76 78 30 30 89 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_003.v common 7.25 vpr 65.71 MiB 0.02 7372 -1 -1 1 0.03 -1 -1 34176 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67288 32 32 387 309 1 179 83 17 17 289 -1 unnamed_device 27.1 MiB 0.78 714 15563 6433 8141 989 65.7 MiB 0.12 0.00 3.01749 -103.912 -3.01749 3.01749 0.98 0.000533435 0.000483827 0.0495884 0.0452553 46 2225 42 6.95648e+06 275038 828058. 2865.25 3.15 0.193358 0.170029 28066 200906 -1 1644 23 1453 2245 153846 36672 4.19166 4.19166 -135.622 -4.19166 0 0 1.01997e+06 3529.29 0.39 0.07 0.20 -1 -1 0.39 0.0266099 0.0235826 77 50 54 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_004.v common 8.75 vpr 65.34 MiB 0.02 7244 -1 -1 1 0.03 -1 -1 34080 -1 -1 16 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66908 29 32 343 267 1 176 77 17 17 289 -1 unnamed_device 27.0 MiB 0.41 701 12302 4730 6067 1505 65.3 MiB 0.10 0.00 3.3745 -105.716 -3.3745 3.3745 0.96 0.000501314 0.000456409 0.0404694 0.0370271 40 2573 42 6.95648e+06 231611 706193. 2443.58 5.15 0.184659 0.163416 26914 176310 -1 1857 24 1798 2643 233221 51623 4.24791 4.24791 -146.917 -4.24791 0 0 926341. 3205.33 0.33 0.08 0.15 -1 -1 0.33 0.0257783 0.0228843 75 25 87 29 29 29 + fixed_k6_frac_2ripple_N8_22nm.xml mult_005.v common 20.11 vpr 65.59 MiB 0.02 7084 -1 -1 1 0.03 -1 -1 33640 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67164 32 32 376 288 1 187 77 17 17 289 -1 unnamed_device 27.1 MiB 0.66 740 10346 3800 5137 1409 65.6 MiB 0.08 0.00 3.04139 -109.575 -3.04139 3.04139 0.98 0.000515405 0.000469412 0.0366057 0.0334967 50 2483 42 6.95648e+06 188184 902133. 3121.57 16.10 0.34094 0.297816 28642 213929 -1 1819 21 1857 3043 221363 55953 4.96416 4.96416 -157.526 -4.96416 0 0 1.08113e+06 3740.92 0.41 0.08 0.21 -1 -1 0.41 0.0256935 0.0228656 78 31 96 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_006.v common 8.46 vpr 65.93 MiB 0.02 7176 -1 -1 1 0.03 -1 -1 33928 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67508 32 32 402 316 1 191 93 17 17 289 -1 unnamed_device 27.2 MiB 0.38 936 15843 6030 7697 2116 65.9 MiB 0.11 0.00 2.5973 -99.0194 -2.5973 2.5973 0.94 0.000494655 0.000441928 0.042148 0.0383933 46 2375 23 6.95648e+06 419795 828058. 2865.25 4.87 0.212593 0.184811 28066 200906 -1 1965 21 1391 1978 160481 33626 3.18897 3.18897 -125.161 -3.18897 0 0 1.01997e+06 3529.29 0.38 0.07 0.18 -1 -1 0.38 0.0262375 0.0232125 89 61 63 32 63 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_007.v common 12.87 vpr 65.07 MiB 0.02 7044 -1 -1 1 0.03 -1 -1 34280 -1 -1 14 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66632 27 32 269 226 1 129 73 17 17 289 -1 unnamed_device 26.7 MiB 4.55 434 10257 4313 5271 673 65.1 MiB 0.07 0.00 2.76796 -78.9994 -2.76796 2.76796 0.95 0.000396822 0.000362823 0.0287863 0.0263651 60 1063 46 6.95648e+06 202660 706193. 2443.58 5.01 0.182764 0.158031 30658 258169 -1 886 22 770 1198 74157 18560 2.88163 2.88163 -92.118 -2.88163 0 0 1.27783e+06 4421.56 0.47 0.05 0.26 -1 -1 0.47 0.0203713 0.0180341 54 26 54 27 27 27 + fixed_k6_frac_2ripple_N8_22nm.xml mult_008.v common 8.02 vpr 65.27 MiB 0.02 7304 -1 -1 1 0.03 -1 -1 33848 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 31 32 317 242 1 178 80 17 17 289 -1 unnamed_device 27.0 MiB 0.55 728 11776 3967 5858 1951 65.3 MiB 0.09 0.00 2.5203 -85.1903 -2.5203 2.5203 0.91 0.000469171 0.000429437 0.0342273 0.0314039 44 2363 25 6.95648e+06 246087 787024. 2723.27 4.42 0.211277 0.184561 27778 195446 -1 1716 24 1302 1924 136537 31963 3.39377 3.39377 -110.122 -3.39377 0 0 997811. 3452.63 0.37 0.06 0.17 -1 -1 0.37 0.0253492 0.0224903 77 -1 115 31 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_009.v common 9.33 vpr 65.36 MiB 0.02 7076 -1 -1 1 0.03 -1 -1 33736 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66928 31 32 338 292 1 143 74 17 17 289 -1 unnamed_device 26.9 MiB 1.77 644 9684 3986 5373 325 65.4 MiB 0.07 0.00 2.60155 -83.9401 -2.60155 2.60155 0.97 0.000467331 0.00042467 0.0322859 0.029527 40 1896 37 6.95648e+06 159232 706193. 2443.58 4.37 0.206971 0.179392 26914 176310 -1 1552 21 1018 1512 147923 31625 3.26842 3.26842 -112.927 -3.26842 0 0 926341. 3205.33 0.37 0.06 0.17 -1 -1 0.37 0.0234274 0.020676 57 81 0 0 84 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_010.v common 6.51 vpr 65.30 MiB 0.02 6872 -1 -1 1 0.03 -1 -1 33724 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66864 32 32 314 256 1 156 74 17 17 289 -1 unnamed_device 26.8 MiB 0.87 850 10304 3583 5316 1405 65.3 MiB 0.08 0.00 2.44885 -101.934 -2.44885 2.44885 0.95 0.000460247 0.000420393 0.0333607 0.0305433 36 2451 49 6.95648e+06 144757 648988. 2245.63 2.49 0.138956 0.122114 26050 158493 -1 2093 23 1623 2294 254746 48179 3.11192 3.11192 -134.418 -3.11192 0 0 828058. 2865.25 0.31 0.08 0.16 -1 -1 0.31 0.0242921 0.0215528 62 31 64 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_011.v common 10.67 vpr 65.41 MiB 0.02 7012 -1 -1 1 0.03 -1 -1 33380 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66980 30 32 325 273 1 148 74 17 17 289 -1 unnamed_device 26.7 MiB 1.84 570 11854 4983 6385 486 65.4 MiB 0.09 0.00 2.7336 -94.0706 -2.7336 2.7336 0.97 0.000467208 0.000425673 0.038271 0.0350165 38 1968 43 6.95648e+06 173708 678818. 2348.85 5.67 0.255007 0.220747 26626 170182 -1 1435 22 1363 1820 145885 33092 3.32527 3.32527 -121.958 -3.32527 0 0 902133. 3121.57 0.34 0.06 0.17 -1 -1 0.34 0.0227596 0.020117 60 58 30 30 60 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_012.v common 9.45 vpr 65.46 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 33796 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67028 32 32 331 280 1 150 76 17 17 289 -1 unnamed_device 26.7 MiB 0.83 605 9516 3899 5309 308 65.5 MiB 0.07 0.00 2.47995 -88.4697 -2.47995 2.47995 0.96 0.000469 0.000425762 0.0312316 0.0285705 52 1802 34 6.95648e+06 173708 926341. 3205.33 5.26 0.192374 0.166952 29218 227130 -1 1270 31 1405 1965 243106 110840 2.92267 2.92267 -108.287 -2.92267 0 0 1.14541e+06 3963.36 0.45 0.11 0.22 -1 -1 0.45 0.0310991 0.0274271 60 57 25 25 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_013.v common 7.78 vpr 65.96 MiB 0.02 7144 -1 -1 1 0.03 -1 -1 34016 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67544 32 32 386 305 1 180 85 17 17 289 -1 unnamed_device 27.2 MiB 1.29 804 11989 3516 6698 1775 66.0 MiB 0.10 0.00 2.58515 -96.0727 -2.58515 2.58515 0.96 0.000544352 0.00048973 0.0382246 0.0349949 44 2384 44 6.95648e+06 303989 787024. 2723.27 3.20 0.188509 0.165873 27778 195446 -1 1623 20 1585 2355 160965 39555 3.48802 3.48802 -126.013 -3.48802 0 0 997811. 3452.63 0.37 0.07 0.20 -1 -1 0.37 0.0246202 0.0219078 79 55 64 32 57 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_014.v common 9.36 vpr 65.96 MiB 0.02 7148 -1 -1 1 0.03 -1 -1 33832 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67540 32 32 407 319 1 192 90 17 17 289 -1 unnamed_device 27.1 MiB 0.86 1028 16572 5695 8702 2175 66.0 MiB 0.13 0.00 3.13369 -120.181 -3.13369 3.13369 0.93 0.000503432 0.000456168 0.0462826 0.0418747 46 2483 41 6.95648e+06 376368 828058. 2865.25 5.28 0.254683 0.221429 28066 200906 -1 2037 19 1901 2672 202311 41283 3.82666 3.82666 -147.39 -3.82666 0 0 1.01997e+06 3529.29 0.39 0.07 0.18 -1 -1 0.39 0.0238868 0.0212188 87 60 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_015.v common 6.52 vpr 64.87 MiB 0.02 6932 -1 -1 1 0.03 -1 -1 33880 -1 -1 13 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 29 32 272 228 1 141 74 17 17 289 -1 unnamed_device 26.5 MiB 1.22 530 10769 4146 5206 1417 64.9 MiB 0.07 0.00 2.64555 -79.3918 -2.64555 2.64555 0.94 0.000396623 0.000362494 0.03052 0.0279036 38 1612 28 6.95648e+06 188184 678818. 2348.85 2.20 0.127983 0.111792 26626 170182 -1 1130 24 922 1366 79802 21483 2.96972 2.96972 -101.085 -2.96972 0 0 902133. 3121.57 0.35 0.05 0.16 -1 -1 0.35 0.0218518 0.0193025 58 21 58 29 24 24 + fixed_k6_frac_2ripple_N8_22nm.xml mult_016.v common 7.14 vpr 65.65 MiB 0.02 7264 -1 -1 1 0.03 -1 -1 33804 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67224 32 32 401 315 1 185 77 17 17 289 -1 unnamed_device 27.2 MiB 1.59 705 12465 5325 6553 587 65.6 MiB 0.10 0.00 2.6493 -97.6614 -2.6493 2.6493 0.91 0.000530967 0.000477125 0.0440366 0.0403706 62 1766 22 6.95648e+06 188184 1.05005e+06 3633.38 2.29 0.16971 0.149993 30946 263737 -1 1439 21 1634 2597 160611 39573 3.39747 3.39747 -119.763 -3.39747 0 0 1.30136e+06 4502.97 0.47 0.07 0.24 -1 -1 0.47 0.0258241 0.022969 77 60 64 32 62 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_017.v common 15.20 vpr 65.84 MiB 0.02 7088 -1 -1 1 0.03 -1 -1 33952 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67416 32 32 383 303 1 179 84 17 17 289 -1 unnamed_device 27.1 MiB 1.40 686 12528 5195 6879 454 65.8 MiB 0.09 0.00 2.5613 -93.2731 -2.5613 2.5613 0.95 0.000544052 0.000495389 0.0404103 0.0368737 46 1979 41 6.95648e+06 289514 828058. 2865.25 10.52 0.339805 0.294974 28066 200906 -1 1547 23 1569 2129 158736 37943 3.22927 3.22927 -123.46 -3.22927 0 0 1.01997e+06 3529.29 0.39 0.07 0.20 -1 -1 0.39 0.0279625 0.0247741 78 54 64 32 56 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_018.v common 7.05 vpr 65.45 MiB 0.02 7228 -1 -1 1 0.03 -1 -1 33732 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 32 32 339 284 1 156 84 17 17 289 -1 unnamed_device 26.7 MiB 0.80 648 11247 2743 6766 1738 65.4 MiB 0.08 0.00 2.16806 -80.6802 -2.16806 2.16806 0.95 0.00048151 0.000439874 0.0328208 0.030012 36 2219 41 6.95648e+06 289514 648988. 2245.63 3.17 0.161768 0.141703 26050 158493 -1 1727 19 1149 1575 142372 30335 2.53233 2.53233 -107.042 -2.53233 0 0 828058. 2865.25 0.31 0.06 0.15 -1 -1 0.31 0.0206637 0.0182931 67 62 29 29 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_019.v common 5.50 vpr 64.80 MiB 0.02 6852 -1 -1 1 0.03 -1 -1 33608 -1 -1 10 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 30 32 226 208 1 118 72 17 17 289 -1 unnamed_device 26.4 MiB 0.39 461 11098 4857 5881 360 64.8 MiB 0.06 0.00 1.84156 -64.8609 -1.84156 1.84156 0.97 0.000332081 0.000299165 0.0271876 0.0247943 36 1485 27 6.95648e+06 144757 648988. 2245.63 2.04 0.110886 0.0966547 26050 158493 -1 1191 22 820 1070 119557 25745 2.39118 2.39118 -89.1625 -2.39118 0 0 828058. 2865.25 0.31 0.05 0.15 -1 -1 0.31 0.0168944 0.0148577 45 29 24 24 30 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_020.v common 6.80 vpr 65.29 MiB 0.02 7336 -1 -1 1 0.03 -1 -1 33904 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66860 31 32 335 280 1 152 74 17 17 289 -1 unnamed_device 26.8 MiB 1.24 610 9064 3725 5028 311 65.3 MiB 0.07 0.00 3.35745 -111.504 -3.35745 3.35745 0.95 0.000475523 0.00043268 0.0303713 0.0277619 40 2132 43 6.95648e+06 159232 706193. 2443.58 2.41 0.152164 0.13255 26914 176310 -1 1659 23 1190 1623 149503 35509 3.60442 3.60442 -137.239 -3.60442 0 0 926341. 3205.33 0.35 0.07 0.17 -1 -1 0.35 0.0243258 0.0214459 61 55 31 31 62 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_021.v common 16.10 vpr 65.90 MiB 0.02 7120 -1 -1 1 0.03 -1 -1 33928 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67484 32 32 366 283 1 184 85 17 17 289 -1 unnamed_device 27.2 MiB 0.45 713 13849 4387 7350 2112 65.9 MiB 0.10 0.00 3.10369 -107.562 -3.10369 3.10369 0.94 0.000515435 0.000470067 0.0409509 0.0374298 40 2677 40 6.95648e+06 303989 706193. 2443.58 12.47 0.29021 0.252323 26914 176310 -1 1996 23 1876 2469 228053 51396 4.04136 4.04136 -149.812 -4.04136 0 0 926341. 3205.33 0.35 0.08 0.17 -1 -1 0.35 0.0266725 0.0236584 81 31 91 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_022.v common 7.11 vpr 66.20 MiB 0.02 7344 -1 -1 1 0.04 -1 -1 34192 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67788 32 32 460 375 1 188 91 17 17 289 -1 unnamed_device 27.6 MiB 1.12 902 14167 5346 7312 1509 66.2 MiB 0.11 0.00 3.03469 -106.428 -3.03469 3.03469 0.97 0.000595861 0.000542072 0.0446721 0.0407869 44 2839 46 6.95648e+06 390843 787024. 2723.27 2.69 0.204737 0.179836 27778 195446 -1 2122 21 1557 2351 183761 38728 3.82516 3.82516 -135.253 -3.82516 0 0 997811. 3452.63 0.38 0.07 0.18 -1 -1 0.38 0.027459 0.0242972 85 108 0 0 125 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_023.v common 6.39 vpr 64.74 MiB 0.02 6972 -1 -1 1 0.03 -1 -1 34296 -1 -1 13 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 26 32 198 186 1 108 71 17 17 289 -1 unnamed_device 26.4 MiB 1.07 345 8101 3454 4103 544 64.7 MiB 0.05 0.00 1.82136 -55.5569 -1.82136 1.82136 0.98 0.000319941 0.000292043 0.0193059 0.0176761 36 1333 36 6.95648e+06 188184 648988. 2245.63 2.28 0.101393 0.0883848 26050 158493 -1 929 17 552 661 58414 14496 2.06218 2.06218 -73.4393 -2.06218 0 0 828058. 2865.25 0.31 0.03 0.16 -1 -1 0.31 0.0133638 0.0118904 44 21 26 26 22 22 + fixed_k6_frac_2ripple_N8_22nm.xml mult_024.v common 17.53 vpr 65.75 MiB 0.02 7156 -1 -1 1 0.03 -1 -1 33588 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67332 32 32 333 251 1 180 76 17 17 289 -1 unnamed_device 27.1 MiB 0.91 787 10316 4293 5593 430 65.8 MiB 0.08 0.00 3.3371 -111.484 -3.3371 3.3371 0.92 0.000508114 0.000465236 0.0333822 0.0305898 52 2588 40 6.95648e+06 173708 926341. 3205.33 13.36 0.276251 0.240039 29218 227130 -1 1961 21 1724 2634 237828 54689 4.24177 4.24177 -146.942 -4.24177 0 0 1.14541e+06 3963.36 0.46 0.08 0.22 -1 -1 0.46 0.0256067 0.0228445 74 -1 122 32 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_025.v common 10.27 vpr 64.74 MiB 0.02 6732 -1 -1 1 0.03 -1 -1 33656 -1 -1 8 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66296 32 32 199 182 1 119 72 17 17 289 -1 unnamed_device 26.4 MiB 0.33 453 9608 4010 5372 226 64.7 MiB 0.06 0.00 1.77736 -64.4605 -1.77736 1.77736 0.97 0.000315745 0.000271737 0.0226239 0.0206239 44 1432 48 6.95648e+06 115805 787024. 2723.27 6.78 0.189273 0.164182 27778 195446 -1 1065 18 696 863 73170 17696 2.00918 2.00918 -81.777 -2.00918 0 0 997811. 3452.63 0.39 0.04 0.19 -1 -1 0.39 0.0144865 0.0129279 44 -1 53 32 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_026.v common 7.22 vpr 65.57 MiB 0.02 7004 -1 -1 1 0.03 -1 -1 34028 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67148 32 32 376 288 1 186 90 17 17 289 -1 unnamed_device 26.9 MiB 0.54 819 16572 6261 8518 1793 65.6 MiB 0.13 0.00 3.17289 -115.548 -3.17289 3.17289 0.98 0.00056139 0.000507222 0.0476457 0.0435451 44 2732 50 6.95648e+06 376368 787024. 2723.27 3.34 0.198026 0.174025 27778 195446 -1 2040 22 1922 2864 247181 50800 3.94416 3.94416 -147.72 -3.94416 0 0 997811. 3452.63 0.39 0.08 0.19 -1 -1 0.39 0.025441 0.0226147 85 21 96 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_027.v common 8.11 vpr 65.50 MiB 0.02 7128 -1 -1 1 0.03 -1 -1 33868 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67072 32 32 337 253 1 188 92 17 17 289 -1 unnamed_device 27.1 MiB 0.31 906 17066 6051 8260 2755 65.5 MiB 0.12 0.00 2.5943 -95.2184 -2.5943 2.5943 0.96 0.000505914 0.000461226 0.0434695 0.0397482 36 2839 32 6.95648e+06 405319 648988. 2245.63 4.59 0.166288 0.14597 26050 158493 -1 1994 28 1911 2737 300426 80298 3.29527 3.29527 -123.23 -3.29527 0 0 828058. 2865.25 0.32 0.11 0.16 -1 -1 0.32 0.0307862 0.0272145 87 -1 124 32 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_028.v common 7.02 vpr 65.93 MiB 0.02 7292 -1 -1 1 0.03 -1 -1 34064 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67512 32 32 407 319 1 189 92 17 17 289 -1 unnamed_device 27.2 MiB 0.40 990 18722 6187 10280 2255 65.9 MiB 0.15 0.00 3.16669 -114.834 -3.16669 3.16669 0.95 0.000470229 0.000429658 0.0528379 0.0482298 44 2975 41 6.95648e+06 405319 787024. 2723.27 3.32 0.194366 0.172171 27778 195446 -1 2297 22 1926 2944 239611 49015 3.96176 3.96176 -154.422 -3.96176 0 0 997811. 3452.63 0.40 0.09 0.19 -1 -1 0.40 0.0292282 0.0260989 87 54 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_029.v common 11.25 vpr 65.09 MiB 0.02 7128 -1 -1 1 0.03 -1 -1 33976 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 32 32 294 246 1 145 74 17 17 289 -1 unnamed_device 26.6 MiB 0.87 597 9839 4059 5540 240 65.1 MiB 0.07 0.00 2.5044 -84.6821 -2.5044 2.5044 0.91 0.000425792 0.000389997 0.0284761 0.0261227 36 2385 37 6.95648e+06 144757 648988. 2245.63 7.45 0.237825 0.208463 26050 158493 -1 1607 18 1127 1688 146098 32818 3.13392 3.13392 -118.298 -3.13392 0 0 828058. 2865.25 0.31 0.06 0.14 -1 -1 0.31 0.0192924 0.0172278 57 31 54 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_030.v common 5.89 vpr 65.26 MiB 0.02 6956 -1 -1 1 0.03 -1 -1 33692 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66824 30 32 296 244 1 148 74 17 17 289 -1 unnamed_device 26.8 MiB 0.60 544 8599 3556 4710 333 65.3 MiB 0.06 0.00 2.6163 -91.8336 -2.6163 2.6163 0.97 0.000436558 0.000397874 0.026769 0.0244767 40 1897 28 6.95648e+06 173708 706193. 2443.58 2.13 0.130996 0.114587 26914 176310 -1 1519 19 1293 1753 163054 38911 3.52097 3.52097 -126.994 -3.52097 0 0 926341. 3205.33 0.36 0.06 0.17 -1 -1 0.36 0.0192847 0.0171189 60 29 60 30 30 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_031.v common 6.26 vpr 65.29 MiB 0.02 7108 -1 -1 1 0.03 -1 -1 33940 -1 -1 13 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66860 28 32 278 232 1 144 73 17 17 289 -1 unnamed_device 26.8 MiB 0.67 503 9801 3651 4757 1393 65.3 MiB 0.07 0.00 2.5894 -81.8143 -2.5894 2.5894 0.95 0.000406812 0.000370728 0.0284521 0.0260577 44 1847 44 6.95648e+06 188184 787024. 2723.27 2.46 0.136749 0.119329 27778 195446 -1 1193 17 1044 1544 105980 25856 3.09482 3.09482 -102.096 -3.09482 0 0 997811. 3452.63 0.38 0.05 0.19 -1 -1 0.38 0.0171657 0.0152915 61 27 56 28 28 28 + fixed_k6_frac_2ripple_N8_22nm.xml mult_032.v common 5.74 vpr 65.16 MiB 0.02 7028 -1 -1 1 0.03 -1 -1 33820 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66724 32 32 283 225 1 160 74 17 17 289 -1 unnamed_device 26.7 MiB 0.22 796 9529 3432 4135 1962 65.2 MiB 0.07 0.00 2.43165 -99.7583 -2.43165 2.43165 1.00 0.00128054 0.00124204 0.0309031 0.028391 40 2115 23 6.95648e+06 144757 706193. 2443.58 2.26 0.141838 0.125472 26914 176310 -1 1909 24 1682 2443 259936 50301 3.23112 3.23112 -130.728 -3.23112 0 0 926341. 3205.33 0.36 0.09 0.17 -1 -1 0.36 0.0245351 0.0218661 64 -1 96 32 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_033.v common 6.32 vpr 65.21 MiB 0.02 7204 -1 -1 1 0.03 -1 -1 33920 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 31 32 303 249 1 156 84 17 17 289 -1 unnamed_device 26.7 MiB 0.22 631 11247 4617 6276 354 65.2 MiB 0.08 0.00 2.5943 -92.1818 -2.5943 2.5943 0.97 0.000446237 0.000405031 0.0300201 0.0273944 46 2001 28 6.95648e+06 303989 828058. 2865.25 2.85 0.136347 0.119051 28066 200906 -1 1548 20 1355 2024 156681 34870 2.95857 2.95857 -113.987 -2.95857 0 0 1.01997e+06 3529.29 0.39 0.06 0.20 -1 -1 0.39 0.0210648 0.0187233 68 26 61 31 31 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_034.v common 7.38 vpr 65.38 MiB 0.02 7256 -1 -1 1 0.03 -1 -1 34008 -1 -1 18 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66952 29 32 312 264 1 148 79 17 17 289 -1 unnamed_device 26.9 MiB 0.79 634 9881 3405 4614 1862 65.4 MiB 0.07 0.00 2.00176 -71.2726 -2.00176 2.00176 0.95 0.000446692 0.000406211 0.0287412 0.0263104 36 2020 47 6.95648e+06 260562 648988. 2245.63 3.53 0.151989 0.132781 26050 158493 -1 1494 19 1053 1429 113217 25390 2.57443 2.57443 -97.0268 -2.57443 0 0 828058. 2865.25 0.33 0.05 0.15 -1 -1 0.33 0.0198795 0.017664 64 55 29 29 57 29 + fixed_k6_frac_2ripple_N8_22nm.xml mult_035.v common 9.56 vpr 66.02 MiB 0.02 7228 -1 -1 1 0.03 -1 -1 34120 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67604 32 32 423 310 1 219 92 17 17 289 -1 unnamed_device 27.4 MiB 0.75 923 14582 3951 9019 1612 66.0 MiB 0.13 0.00 3.20405 -114.714 -3.20405 3.20405 0.97 0.000606245 0.000554453 0.0455688 0.0417691 48 2785 22 6.95648e+06 405319 865456. 2994.66 5.37 0.247187 0.216363 28354 207349 -1 2312 20 2142 3330 305326 71238 4.62561 4.62561 -150.956 -4.62561 0 0 1.05005e+06 3633.38 0.41 0.10 0.20 -1 -1 0.41 0.0302605 0.0271959 100 26 128 32 27 27 + fixed_k6_frac_2ripple_N8_22nm.xml mult_036.v common 6.97 vpr 65.96 MiB 0.02 7280 -1 -1 1 0.03 -1 -1 34084 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67548 32 32 403 317 1 190 91 17 17 289 -1 unnamed_device 27.2 MiB 0.88 805 12943 4135 6872 1936 66.0 MiB 0.10 0.00 2.6866 -98.5167 -2.6866 2.6866 0.94 0.000560801 0.000510976 0.0369943 0.0338326 44 2555 34 6.95648e+06 390843 787024. 2723.27 2.78 0.17838 0.157066 27778 195446 -1 1781 24 1977 2915 222189 52359 3.39557 3.39557 -127.412 -3.39557 0 0 997811. 3452.63 0.39 0.09 0.18 -1 -1 0.39 0.0289533 0.025557 87 62 62 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_037.v common 6.45 vpr 65.64 MiB 0.02 7292 -1 -1 1 0.03 -1 -1 34052 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67220 31 32 353 302 1 150 78 17 17 289 -1 unnamed_device 26.9 MiB 1.01 561 12860 5402 6962 496 65.6 MiB 0.09 0.00 2.76796 -90.4096 -2.76796 2.76796 0.92 0.000469504 0.00042849 0.0382303 0.0347404 48 1974 35 6.95648e+06 217135 865456. 2994.66 2.32 0.160571 0.141004 28354 207349 -1 1454 20 1132 1597 129009 32224 3.05407 3.05407 -112.534 -3.05407 0 0 1.05005e+06 3633.38 0.39 0.06 0.19 -1 -1 0.39 0.0226726 0.0201617 62 77 0 0 89 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_038.v common 7.19 vpr 65.84 MiB 0.02 7236 -1 -1 1 0.03 -1 -1 34104 -1 -1 14 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67420 31 32 391 309 1 186 77 17 17 289 -1 unnamed_device 27.2 MiB 0.64 1007 13117 5109 6291 1717 65.8 MiB 0.11 0.00 2.5613 -97.7654 -2.5613 2.5613 0.95 0.000522314 0.000474318 0.0455351 0.0416491 38 2793 26 6.95648e+06 202660 678818. 2348.85 3.34 0.169658 0.148965 26626 170182 -1 2406 23 1959 2951 289976 55639 3.47707 3.47707 -130.513 -3.47707 0 0 902133. 3121.57 0.33 0.09 0.16 -1 -1 0.33 0.0272894 0.0241491 79 59 60 30 62 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_039.v common 8.17 vpr 66.02 MiB 0.02 7356 -1 -1 1 0.04 -1 -1 34204 -1 -1 14 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67608 31 32 455 371 1 185 77 17 17 289 -1 unnamed_device 27.2 MiB 2.03 811 11324 4767 6189 368 66.0 MiB 0.10 0.00 4.10349 -129.656 -4.10349 4.10349 0.96 0.000597641 0.000544562 0.0439337 0.040104 44 2743 44 6.95648e+06 202660 787024. 2723.27 2.88 0.198949 0.174034 27778 195446 -1 1875 22 1405 2060 158872 35332 4.26431 4.26431 -148.582 -4.26431 0 0 997811. 3452.63 0.38 0.07 0.19 -1 -1 0.38 0.0288817 0.025528 78 111 0 0 124 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_040.v common 9.67 vpr 65.83 MiB 0.02 7512 -1 -1 1 0.03 -1 -1 33788 -1 -1 13 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67408 31 32 413 333 1 182 76 17 17 289 -1 unnamed_device 27.1 MiB 1.67 743 12716 4626 6236 1854 65.8 MiB 0.10 0.00 3.72384 -110.189 -3.72384 3.72384 0.97 0.000555337 0.000505429 0.0477346 0.0436008 40 2273 31 6.95648e+06 188184 706193. 2443.58 4.70 0.26689 0.232315 26914 176310 -1 1945 46 2496 4109 432086 120034 3.97596 3.97596 -141.479 -3.97596 0 0 926341. 3205.33 0.34 0.16 0.17 -1 -1 0.34 0.0482875 0.0420473 76 86 31 31 89 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_041.v common 9.46 vpr 65.72 MiB 0.02 7432 -1 -1 1 0.03 -1 -1 33996 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67300 31 32 391 309 1 185 88 17 17 289 -1 unnamed_device 27.1 MiB 0.81 768 16078 5910 7600 2568 65.7 MiB 0.13 0.00 2.7086 -96.3394 -2.7086 2.7086 0.98 0.000561933 0.000512639 0.0488729 0.0446835 44 2511 22 6.95648e+06 361892 787024. 2723.27 5.29 0.262049 0.229514 27778 195446 -1 1872 21 1645 2481 188495 41081 3.32347 3.32347 -119.963 -3.32347 0 0 997811. 3452.63 0.40 0.07 0.19 -1 -1 0.40 0.0274804 0.0244565 85 58 60 31 62 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_042.v common 8.96 vpr 65.70 MiB 0.02 7372 -1 -1 1 0.03 -1 -1 34276 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67276 32 32 407 319 1 190 90 17 17 289 -1 unnamed_device 27.0 MiB 0.46 858 10542 3200 5418 1924 65.7 MiB 0.09 0.00 3.16669 -114.319 -3.16669 3.16669 0.95 0.00052062 0.000477418 0.0314138 0.0287341 44 2647 27 6.95648e+06 376368 787024. 2723.27 5.21 0.23374 0.202819 27778 195446 -1 2074 23 2047 3110 281642 58920 4.34686 4.34686 -153.985 -4.34686 0 0 997811. 3452.63 0.39 0.09 0.19 -1 -1 0.39 0.0286037 0.0254116 86 42 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_043.v common 21.33 vpr 66.05 MiB 0.02 7368 -1 -1 1 0.03 -1 -1 34088 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67632 32 32 496 380 1 222 95 17 17 289 -1 unnamed_device 27.6 MiB 0.93 1105 14351 4218 7769 2364 66.0 MiB 0.11 0.00 3.32935 -122.578 -3.32935 3.32935 0.93 0.000583254 0.000531869 0.0445048 0.0404486 40 3072 23 6.95648e+06 448746 706193. 2443.58 17.19 0.360183 0.315927 26914 176310 -1 2765 24 2339 3564 367622 72231 4.48432 4.48432 -162.157 -4.48432 0 0 926341. 3205.33 0.35 0.12 0.16 -1 -1 0.35 0.0355468 0.0316068 104 91 62 32 96 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_044.v common 6.41 vpr 65.30 MiB 0.02 6928 -1 -1 1 0.03 -1 -1 33724 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66872 31 32 305 250 1 152 74 17 17 289 -1 unnamed_device 26.8 MiB 0.62 714 10924 4616 6074 234 65.3 MiB 0.08 0.00 2.84796 -101.361 -2.84796 2.84796 0.95 0.000440408 0.000401809 0.0334602 0.0306608 38 1964 25 6.95648e+06 159232 678818. 2348.85 2.66 0.134962 0.118133 26626 170182 -1 1650 23 1441 2064 186273 38541 3.26417 3.26417 -127.44 -3.26417 0 0 902133. 3121.57 0.34 0.07 0.16 -1 -1 0.34 0.022939 0.0203163 62 24 62 31 31 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_045.v common 7.01 vpr 65.92 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 34196 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67500 31 32 395 311 1 188 90 17 17 289 -1 unnamed_device 27.2 MiB 0.61 792 15768 5471 7642 2655 65.9 MiB 0.12 0.00 3.5328 -117.245 -3.5328 3.5328 0.97 0.00054438 0.000488673 0.0459302 0.0419226 44 2861 34 6.95648e+06 390843 787024. 2723.27 3.00 0.162963 0.144012 27778 195446 -1 2036 32 2348 3614 355974 99185 4.23372 4.23372 -147.482 -4.23372 0 0 997811. 3452.63 0.39 0.13 0.19 -1 -1 0.39 0.0371548 0.0327605 86 59 62 31 62 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_046.v common 7.08 vpr 65.91 MiB 0.02 7236 -1 -1 1 0.03 -1 -1 33920 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67496 32 32 397 313 1 188 90 17 17 289 -1 unnamed_device 27.2 MiB 0.79 874 14562 5807 7956 799 65.9 MiB 0.12 0.00 2.79476 -99.3289 -2.79476 2.79476 0.98 0.000557484 0.00050123 0.0419074 0.0382053 46 2581 29 6.95648e+06 376368 828058. 2865.25 2.91 0.182886 0.160714 28066 200906 -1 2133 20 1707 2798 219517 46252 3.20297 3.20297 -122.976 -3.20297 0 0 1.01997e+06 3529.29 0.40 0.08 0.19 -1 -1 0.40 0.0258745 0.0230252 85 54 62 32 62 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_047.v common 9.26 vpr 65.45 MiB 0.02 7012 -1 -1 1 0.03 -1 -1 33700 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 32 32 345 257 1 187 77 17 17 289 -1 unnamed_device 27.1 MiB 0.87 780 7901 3179 4516 206 65.4 MiB 0.07 0.00 3.03039 -111.418 -3.03039 3.03039 0.91 0.000508366 0.000465014 0.02691 0.0247103 46 2797 35 6.95648e+06 188184 828058. 2865.25 5.30 0.233488 0.205362 28066 200906 -1 2182 22 1884 3178 283116 60777 4.42646 4.42646 -152.685 -4.42646 0 0 1.01997e+06 3529.29 0.38 0.09 0.18 -1 -1 0.38 0.0265998 0.0237794 78 -1 128 32 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_048.v common 7.02 vpr 65.98 MiB 0.02 7212 -1 -1 1 0.03 -1 -1 33784 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67564 32 32 424 343 1 182 87 17 17 289 -1 unnamed_device 27.2 MiB 1.53 810 12567 4232 6468 1867 66.0 MiB 0.10 0.00 2.5503 -93.7614 -2.5503 2.5503 0.95 0.000565436 0.000515992 0.0398756 0.0363683 46 2535 42 6.95648e+06 332941 828058. 2865.25 2.23 0.159914 0.139919 28066 200906 -1 1980 20 1627 2459 199553 45296 3.29047 3.29047 -120.509 -3.29047 0 0 1.01997e+06 3529.29 0.38 0.07 0.19 -1 -1 0.38 0.0254794 0.0226473 81 81 25 25 96 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_049.v common 7.29 vpr 65.78 MiB 0.02 7348 -1 -1 1 0.03 -1 -1 33660 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67356 32 32 395 311 1 186 92 17 17 289 -1 unnamed_device 27.1 MiB 0.81 765 13133 5265 6982 886 65.8 MiB 0.10 0.00 2.6023 -94.8681 -2.6023 2.6023 0.98 0.000550454 0.000500972 0.0382846 0.034963 46 2532 45 6.95648e+06 405319 828058. 2865.25 3.17 0.168494 0.14827 28066 200906 -1 1967 17 1467 2147 156659 36147 3.16997 3.16997 -123.582 -3.16997 0 0 1.01997e+06 3529.29 0.39 0.06 0.19 -1 -1 0.39 0.0225834 0.0200929 85 58 64 32 60 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_050.v common 8.42 vpr 65.85 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 34224 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67428 32 32 405 318 1 192 92 17 17 289 -1 unnamed_device 27.1 MiB 0.49 813 14996 4910 7841 2245 65.8 MiB 0.12 0.00 2.6646 -97.0268 -2.6646 2.6646 0.97 0.00058162 0.000527185 0.0445151 0.040523 40 2724 27 6.95648e+06 405319 706193. 2443.58 4.64 0.181176 0.159043 26914 176310 -1 2273 23 1922 2923 335973 86275 3.49087 3.49087 -133.938 -3.49087 0 0 926341. 3205.33 0.35 0.11 0.18 -1 -1 0.35 0.028167 0.0249095 88 61 63 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_051.v common 9.66 vpr 65.82 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 33752 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67404 32 32 376 288 1 186 92 17 17 289 -1 unnamed_device 27.2 MiB 0.60 872 17687 6602 8809 2276 65.8 MiB 0.14 0.00 3.13369 -112.938 -3.13369 3.13369 0.98 0.000549734 0.000502238 0.0504069 0.0461158 46 2706 29 6.95648e+06 405319 828058. 2865.25 5.62 0.251411 0.221038 28066 200906 -1 2078 22 2022 3202 257203 53739 4.21356 4.21356 -148.471 -4.21356 0 0 1.01997e+06 3529.29 0.40 0.09 0.19 -1 -1 0.40 0.0282882 0.0251783 85 21 96 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_052.v common 8.99 vpr 65.78 MiB 0.02 7308 -1 -1 1 0.03 -1 -1 34320 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67356 32 32 407 319 1 189 94 17 17 289 -1 unnamed_device 27.1 MiB 0.89 991 12235 3165 7722 1348 65.8 MiB 0.09 0.00 3.15569 -118.857 -3.15569 3.15569 0.96 0.000585001 0.000536847 0.0344827 0.031546 38 2756 25 6.95648e+06 434271 678818. 2348.85 4.88 0.162714 0.142488 26626 170182 -1 2194 22 2007 2794 239037 47372 3.98196 3.98196 -152.981 -3.98196 0 0 902133. 3121.57 0.33 0.08 0.16 -1 -1 0.33 0.0274961 0.0243778 88 50 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_053.v common 9.62 vpr 65.86 MiB 0.02 7488 -1 -1 1 0.03 -1 -1 34136 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67444 31 32 449 367 1 185 88 17 17 289 -1 unnamed_device 27.1 MiB 1.20 802 11203 4314 6028 861 65.9 MiB 0.09 0.00 3.56395 -113.183 -3.56395 3.56395 0.94 0.000535829 0.000484236 0.0347308 0.0315791 44 2811 33 6.95648e+06 361892 787024. 2723.27 5.20 0.265838 0.230394 27778 195446 -1 2038 27 1880 3034 276492 57094 4.17286 4.17286 -140.206 -4.17286 0 0 997811. 3452.63 0.38 0.09 0.18 -1 -1 0.38 0.0318324 0.0278562 84 110 0 0 122 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_054.v common 6.84 vpr 65.43 MiB 0.02 7440 -1 -1 1 0.03 -1 -1 34052 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67004 32 32 432 346 1 187 77 17 17 289 -1 unnamed_device 26.9 MiB 0.99 760 10998 4595 6060 343 65.4 MiB 0.09 0.00 3.21135 -108.802 -3.21135 3.21135 0.92 0.000566054 0.000516617 0.0408802 0.0373769 44 2942 39 6.95648e+06 188184 787024. 2723.27 2.71 0.203203 0.179525 27778 195446 -1 1953 26 1903 3214 248923 53754 4.05361 4.05361 -139.553 -4.05361 0 0 997811. 3452.63 0.38 0.09 0.17 -1 -1 0.38 0.0339055 0.0300239 78 86 32 32 94 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_055.v common 6.71 vpr 65.18 MiB 0.02 7068 -1 -1 1 0.03 -1 -1 33924 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 312 255 1 160 87 17 17 289 -1 unnamed_device 26.7 MiB 0.16 678 11031 4506 6217 308 65.2 MiB 0.08 0.00 2.7494 -97.9347 -2.7494 2.7494 0.95 0.000450455 0.000406254 0.0282797 0.0258212 46 2024 39 6.95648e+06 332941 828058. 2865.25 3.31 0.144724 0.126551 28066 200906 -1 1589 23 1270 1930 194644 48466 3.16087 3.16087 -116.873 -3.16087 0 0 1.01997e+06 3529.29 0.38 0.08 0.19 -1 -1 0.38 0.0229167 0.0202719 71 20 63 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_056.v common 10.13 vpr 65.44 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 33700 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67012 32 32 370 314 1 158 74 17 17 289 -1 unnamed_device 26.7 MiB 1.02 618 8599 3523 4772 304 65.4 MiB 0.07 0.00 2.5393 -92.5738 -2.5393 2.5393 0.98 0.000503066 0.00045762 0.0306294 0.0279911 54 1807 28 6.95648e+06 144757 949917. 3286.91 5.75 0.239711 0.208883 29506 232905 -1 1390 15 1176 1779 121299 28954 2.91452 2.91452 -114.374 -2.91452 0 0 1.17392e+06 4061.99 0.46 0.05 0.23 -1 -1 0.46 0.0196048 0.0175227 63 91 0 0 94 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_057.v common 12.05 vpr 65.95 MiB 0.02 7408 -1 -1 1 0.04 -1 -1 33956 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67532 32 32 469 351 1 223 94 17 17 289 -1 unnamed_device 27.6 MiB 0.57 1019 14365 4436 7392 2537 65.9 MiB 0.13 0.00 3.78264 -133.277 -3.78264 3.78264 0.98 0.000631074 0.000574805 0.0457909 0.0418233 46 3485 34 6.95648e+06 434271 828058. 2865.25 8.03 0.210986 0.186196 28066 200906 -1 2689 26 2863 4483 455045 95081 5.68321 5.68321 -184.043 -5.68321 0 0 1.01997e+06 3529.29 0.39 0.14 0.20 -1 -1 0.39 0.0373044 0.0331885 103 53 96 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_058.v common 6.87 vpr 65.80 MiB 0.02 7276 -1 -1 1 0.03 -1 -1 34044 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67380 32 32 368 284 1 186 88 17 17 289 -1 unnamed_device 27.1 MiB 0.88 774 11008 4223 5968 817 65.8 MiB 0.09 0.00 2.6445 -96.8324 -2.6445 2.6445 0.98 0.000526518 0.000481009 0.0330702 0.0301767 46 2261 27 6.95648e+06 347416 828058. 2865.25 2.71 0.162844 0.143169 28066 200906 -1 1641 21 1489 1952 157855 36431 3.38467 3.38467 -122.089 -3.38467 0 0 1.01997e+06 3529.29 0.38 0.07 0.20 -1 -1 0.38 0.0260684 0.0232226 83 31 92 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_059.v common 6.65 vpr 65.20 MiB 0.02 7256 -1 -1 1 0.03 -1 -1 33448 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 30 32 296 244 1 152 81 17 17 289 -1 unnamed_device 26.7 MiB 0.33 543 11631 3883 5678 2070 65.2 MiB 0.08 0.00 2.6426 -89.0254 -2.6426 2.6426 0.92 0.000428217 0.000391914 0.0308081 0.0282264 40 2125 41 6.95648e+06 275038 706193. 2443.58 3.25 0.156829 0.138208 26914 176310 -1 1534 23 1473 2117 200769 44529 3.10582 3.10582 -119.365 -3.10582 0 0 926341. 3205.33 0.34 0.07 0.16 -1 -1 0.34 0.0222302 0.0195565 65 29 60 30 30 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_060.v common 7.47 vpr 66.05 MiB 0.02 7360 -1 -1 1 0.04 -1 -1 34264 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67640 32 32 531 413 1 225 95 17 17 289 -1 unnamed_device 27.6 MiB 1.66 1217 13919 3928 9064 927 66.1 MiB 0.12 0.00 3.77644 -140.318 -3.77644 3.77644 0.95 0.000627906 0.000572444 0.0456477 0.0414446 46 3176 24 6.95648e+06 448746 828058. 2865.25 2.47 0.184966 0.162831 28066 200906 -1 2561 23 2655 4001 299603 59270 4.83731 4.83731 -181.593 -4.83731 0 0 1.01997e+06 3529.29 0.40 0.10 0.18 -1 -1 0.40 0.0358108 0.0318619 103 109 32 32 128 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_061.v common 6.81 vpr 65.91 MiB 0.02 7136 -1 -1 1 0.03 -1 -1 34096 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67492 32 32 376 288 1 187 92 17 17 289 -1 unnamed_device 27.2 MiB 1.02 809 12719 4510 6146 2063 65.9 MiB 0.10 0.00 3.18389 -114.936 -3.18389 3.18389 0.95 0.00052104 0.000473687 0.0352095 0.0321765 44 2314 27 6.95648e+06 405319 787024. 2723.27 2.54 0.15969 0.139841 27778 195446 -1 1811 24 2152 3037 236606 49575 3.75156 3.75156 -144.338 -3.75156 0 0 997811. 3452.63 0.38 0.08 0.19 -1 -1 0.38 0.028197 0.0249358 86 31 96 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_062.v common 9.05 vpr 65.29 MiB 0.02 6848 -1 -1 1 0.03 -1 -1 33724 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66852 32 32 283 225 1 158 88 17 17 289 -1 unnamed_device 26.7 MiB 0.30 662 14128 5255 7134 1739 65.3 MiB 0.09 0.00 2.55695 -94.825 -2.55695 2.55695 0.94 0.000429337 0.000392087 0.0334344 0.0305911 54 1692 28 6.95648e+06 347416 949917. 3286.91 5.43 0.193052 0.168089 29506 232905 -1 1493 21 1387 2157 183767 38578 3.29712 3.29712 -118.126 -3.29712 0 0 1.17392e+06 4061.99 0.45 0.07 0.24 -1 -1 0.45 0.0214357 0.0190629 70 -1 96 32 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_063.v common 29.59 vpr 65.62 MiB 0.02 7444 -1 -1 1 0.04 -1 -1 34440 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67200 32 32 438 320 1 225 95 17 17 289 -1 unnamed_device 27.3 MiB 0.45 970 14999 5467 7393 2139 65.6 MiB 0.12 0.00 3.77644 -132.03 -3.77644 3.77644 0.96 0.000615577 0.000560827 0.0454997 0.041556 50 2983 49 6.95648e+06 448746 902133. 3121.57 25.68 0.380562 0.332404 28642 213929 -1 2411 22 2603 4231 376375 79776 4.93141 4.93141 -174.895 -4.93141 0 0 1.08113e+06 3740.92 0.42 0.12 0.21 -1 -1 0.42 0.0324618 0.0289828 105 26 128 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_064.v common 8.22 vpr 65.19 MiB 0.02 7128 -1 -1 1 0.03 -1 -1 33604 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 32 32 283 225 1 156 74 17 17 289 -1 unnamed_device 26.7 MiB 0.32 649 10149 4217 5741 191 65.2 MiB 0.07 0.00 2.42065 -93.7642 -2.42065 2.42065 0.91 0.000377661 0.000344448 0.0287675 0.026323 46 1981 21 6.95648e+06 144757 828058. 2865.25 4.82 0.171663 0.149078 28066 200906 -1 1577 22 1485 2048 172345 37598 2.95732 2.95732 -120.633 -2.95732 0 0 1.01997e+06 3529.29 0.40 0.07 0.19 -1 -1 0.40 0.0221038 0.0196473 62 -1 96 32 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_065.v common 14.46 vpr 65.27 MiB 0.02 6984 -1 -1 1 0.03 -1 -1 34028 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 30 32 296 244 1 151 83 17 17 289 -1 unnamed_device 26.7 MiB 0.78 576 13223 5537 7134 552 65.3 MiB 0.09 0.00 2.6756 -91.1593 -2.6756 2.6756 0.96 0.000449854 0.000410243 0.0353747 0.0323313 38 2033 42 6.95648e+06 303989 678818. 2348.85 10.55 0.255197 0.222341 26626 170182 -1 1584 21 1187 1772 152983 38583 3.03987 3.03987 -114.356 -3.03987 0 0 902133. 3121.57 0.33 0.06 0.17 -1 -1 0.33 0.0211331 0.0187809 65 29 60 30 30 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_066.v common 7.51 vpr 65.71 MiB 0.02 7492 -1 -1 1 0.03 -1 -1 34040 -1 -1 20 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67288 29 32 393 319 1 174 81 17 17 289 -1 unnamed_device 27.2 MiB 1.32 683 9531 2976 4366 2189 65.7 MiB 0.07 0.00 2.81496 -87.6537 -2.81496 2.81496 0.97 0.000554119 0.000496495 0.0319158 0.0291588 52 2214 42 6.95648e+06 289514 926341. 3205.33 2.85 0.173168 0.151444 29218 227130 -1 1431 22 1504 2356 143329 35538 3.15597 3.15597 -106.737 -3.15597 0 0 1.14541e+06 3963.36 0.44 0.07 0.22 -1 -1 0.44 0.0262604 0.0232848 77 81 29 29 85 29 + fixed_k6_frac_2ripple_N8_22nm.xml mult_067.v common 6.41 vpr 65.90 MiB 0.02 7152 -1 -1 1 0.03 -1 -1 34060 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67484 32 32 407 319 1 186 77 17 17 289 -1 unnamed_device 27.1 MiB 0.90 739 12302 4718 5894 1690 65.9 MiB 0.10 0.00 3.03039 -110.712 -3.03039 3.03039 0.93 0.000543556 0.000495919 0.0445714 0.0407926 46 1973 32 6.95648e+06 188184 828058. 2865.25 2.22 0.157755 0.138589 28066 200906 -1 1467 54 3443 4666 280735 65102 3.99436 3.99436 -145.915 -3.99436 0 0 1.01997e+06 3529.29 0.38 0.13 0.20 -1 -1 0.38 0.0544429 0.0474855 78 53 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_068.v common 10.92 vpr 65.73 MiB 0.02 7372 -1 -1 1 0.03 -1 -1 34372 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67304 32 32 407 319 1 190 89 17 17 289 -1 unnamed_device 27.0 MiB 1.40 981 14741 5848 7143 1750 65.7 MiB 0.12 0.00 3.10669 -116.582 -3.10669 3.10669 0.96 0.00055163 0.000501548 0.0462701 0.0422893 46 2710 50 6.95648e+06 361892 828058. 2865.25 6.14 0.290502 0.253462 28066 200906 -1 2252 23 2085 3266 405620 132287 3.58106 3.58106 -145.264 -3.58106 0 0 1.01997e+06 3529.29 0.39 0.13 0.20 -1 -1 0.39 0.0304704 0.0271571 85 55 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_069.v common 16.37 vpr 65.67 MiB 0.02 7028 -1 -1 1 0.03 -1 -1 34072 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67244 32 32 345 287 1 155 88 17 17 289 -1 unnamed_device 26.9 MiB 1.03 614 12373 4754 6422 1197 65.7 MiB 0.09 0.00 2.49095 -91.8559 -2.49095 2.49095 0.97 0.000506572 0.000455681 0.034639 0.0315888 54 1733 28 6.95648e+06 347416 949917. 3286.91 11.92 0.28888 0.253585 29506 232905 -1 1274 23 1322 1994 136749 32944 3.26412 3.26412 -118.679 -3.26412 0 0 1.17392e+06 4061.99 0.46 0.07 0.23 -1 -1 0.46 0.0252257 0.022385 69 55 32 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_070.v common 7.28 vpr 65.36 MiB 0.02 7360 -1 -1 1 0.03 -1 -1 33800 -1 -1 10 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66924 31 32 353 302 1 147 73 17 17 289 -1 unnamed_device 26.8 MiB 1.40 555 12841 5652 6775 414 65.4 MiB 0.09 0.00 2.80096 -90.8151 -2.80096 2.80096 0.93 0.000448264 0.000407359 0.0411011 0.0372734 44 1822 38 6.95648e+06 144757 787024. 2723.27 2.74 0.163388 0.142962 27778 195446 -1 1297 23 1238 1863 119860 31672 2.98713 2.98713 -109.593 -2.98713 0 0 997811. 3452.63 0.38 0.06 0.18 -1 -1 0.38 0.023771 0.020951 59 82 0 0 89 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_071.v common 8.87 vpr 65.89 MiB 0.02 7144 -1 -1 1 0.03 -1 -1 34164 -1 -1 22 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67476 30 32 374 297 1 178 84 17 17 289 -1 unnamed_device 27.2 MiB 0.94 972 12162 3550 7123 1489 65.9 MiB 0.10 0.00 2.6866 -101.351 -2.6866 2.6866 0.99 0.000506275 0.000460345 0.0373656 0.0341016 38 2483 48 6.95648e+06 318465 678818. 2348.85 4.72 0.257956 0.225313 26626 170182 -1 2125 22 1557 2283 175981 36529 3.42677 3.42677 -126.276 -3.42677 0 0 902133. 3121.57 0.33 0.07 0.15 -1 -1 0.33 0.0258856 0.0230544 79 52 60 30 57 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_072.v common 7.12 vpr 65.30 MiB 0.02 7004 -1 -1 1 0.03 -1 -1 34004 -1 -1 16 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 28 32 332 260 1 172 76 17 17 289 -1 unnamed_device 26.7 MiB 0.95 710 10156 4488 5095 573 65.3 MiB 0.08 0.00 3.68925 -106.137 -3.68925 3.68925 0.96 0.000466074 0.000423694 0.0325423 0.0298036 44 2629 40 6.95648e+06 231611 787024. 2723.27 2.96 0.156021 0.136531 27778 195446 -1 1651 20 1428 2275 160288 36531 3.99117 3.99117 -130.417 -3.99117 0 0 997811. 3452.63 0.38 0.06 0.19 -1 -1 0.38 0.0220187 0.0195593 74 20 84 28 28 28 + fixed_k6_frac_2ripple_N8_22nm.xml mult_073.v common 7.47 vpr 65.04 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 34168 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 30 32 325 273 1 151 74 17 17 289 -1 unnamed_device 26.6 MiB 0.81 543 9994 3063 5068 1863 65.0 MiB 0.07 0.00 2.5533 -87.468 -2.5533 2.5533 0.95 0.00046335 0.000421076 0.0320696 0.0292908 56 1341 45 6.95648e+06 173708 973134. 3367.25 3.34 0.171229 0.149243 29794 239141 -1 1056 20 1280 1780 127708 32039 3.01682 3.01682 -106.606 -3.01682 0 0 1.19926e+06 4149.71 0.44 0.06 0.24 -1 -1 0.44 0.0218031 0.0193554 61 58 30 30 60 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_074.v common 8.01 vpr 65.25 MiB 0.02 7168 -1 -1 1 0.03 -1 -1 33828 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 32 32 361 308 1 152 74 17 17 289 -1 unnamed_device 26.5 MiB 1.15 641 7979 3262 4540 177 65.2 MiB 0.06 0.00 2.5753 -88.9288 -2.5753 2.5753 0.91 0.000520961 0.000475702 0.0276919 0.0253417 38 2364 28 6.95648e+06 144757 678818. 2348.85 3.83 0.14843 0.129726 26626 170182 -1 1692 22 1226 1982 168903 36550 3.05412 3.05412 -115.249 -3.05412 0 0 902133. 3121.57 0.32 0.06 0.17 -1 -1 0.32 0.0223194 0.0197234 60 88 0 0 91 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_075.v common 10.00 vpr 65.35 MiB 0.02 7200 -1 -1 1 0.03 -1 -1 33940 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66920 31 32 335 251 1 188 88 17 17 289 -1 unnamed_device 27.0 MiB 0.17 798 11398 4669 6178 551 65.4 MiB 0.09 0.00 3.25235 -112.691 -3.25235 3.25235 0.96 0.000512681 0.00046141 0.0322351 0.0294949 54 2229 29 6.95648e+06 361892 949917. 3286.91 6.45 0.24373 0.212738 29506 232905 -1 1790 23 1826 2778 199004 44647 3.98022 3.98022 -143.3 -3.98022 0 0 1.17392e+06 4061.99 0.44 0.07 0.23 -1 -1 0.44 0.0257364 0.0228299 86 -1 124 31 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_076.v common 10.55 vpr 66.00 MiB 0.02 7264 -1 -1 1 0.03 -1 -1 34172 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67580 32 32 407 319 1 189 91 17 17 289 -1 unnamed_device 27.2 MiB 1.16 832 15391 5152 8197 2042 66.0 MiB 0.12 0.00 3.15569 -112.385 -3.15569 3.15569 0.97 0.000557783 0.000508797 0.0457892 0.0418441 50 2704 50 6.95648e+06 390843 902133. 3121.57 6.00 0.277601 0.243041 28642 213929 -1 2224 19 1828 3077 282315 58643 3.97396 3.97396 -146.094 -3.97396 0 0 1.08113e+06 3740.92 0.41 0.09 0.21 -1 -1 0.41 0.0258178 0.0230572 86 57 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_077.v common 7.93 vpr 65.89 MiB 0.02 7160 -1 -1 1 0.03 -1 -1 33776 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67476 32 32 407 319 1 187 90 17 17 289 -1 unnamed_device 27.1 MiB 1.44 894 9738 3885 5604 249 65.9 MiB 0.08 0.00 3.16489 -114.407 -3.16489 3.16489 0.94 0.000554747 0.000508919 0.0297794 0.0272223 48 2704 30 6.95648e+06 376368 865456. 2994.66 3.19 0.166467 0.145249 28354 207349 -1 2318 21 1979 3093 341704 73217 4.21056 4.21056 -157.13 -4.21056 0 0 1.05005e+06 3633.38 0.40 0.10 0.20 -1 -1 0.40 0.0268825 0.023924 85 62 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_078.v common 6.79 vpr 65.75 MiB 0.02 7248 -1 -1 1 0.03 -1 -1 33824 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67332 32 32 399 315 1 188 91 17 17 289 -1 unnamed_device 27.0 MiB 0.95 980 15799 6601 8813 385 65.8 MiB 0.13 0.00 3.13989 -111.639 -3.13989 3.13989 0.97 0.000562789 0.000513599 0.0458442 0.0418597 44 2769 41 6.95648e+06 390843 787024. 2723.27 2.51 0.190642 0.167581 27778 195446 -1 2054 20 1689 2777 201587 43032 3.76082 3.76082 -138.857 -3.76082 0 0 997811. 3452.63 0.39 0.08 0.19 -1 -1 0.39 0.0266381 0.0238119 86 62 60 30 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_079.v common 9.60 vpr 65.27 MiB 0.02 7008 -1 -1 1 0.03 -1 -1 33740 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66836 30 32 296 244 1 150 74 17 17 289 -1 unnamed_device 26.8 MiB 0.74 512 11544 4828 6067 649 65.3 MiB 0.08 0.00 2.79296 -91.2216 -2.79296 2.79296 0.98 0.000438446 0.000401556 0.036851 0.0337883 50 1626 42 6.95648e+06 173708 902133. 3121.57 5.54 0.23109 0.202639 28642 213929 -1 1251 24 1233 1863 135195 34250 3.22012 3.22012 -112.888 -3.22012 0 0 1.08113e+06 3740.92 0.42 0.06 0.21 -1 -1 0.42 0.0236532 0.0209145 62 29 60 30 30 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_080.v common 6.96 vpr 65.79 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 34020 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67372 30 32 383 303 1 183 77 17 17 289 -1 unnamed_device 27.1 MiB 0.72 958 12139 3975 6529 1635 65.8 MiB 0.10 0.00 3.3885 -117.724 -3.3885 3.3885 0.92 0.000538645 0.000493996 0.0424533 0.0388894 38 2556 26 6.95648e+06 217135 678818. 2348.85 3.15 0.173475 0.153063 26626 170182 -1 2162 21 1782 2396 207555 41594 4.22886 4.22886 -152.072 -4.22886 0 0 902133. 3121.57 0.33 0.07 0.15 -1 -1 0.33 0.0253821 0.0224969 78 58 60 30 60 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_081.v common 7.70 vpr 65.89 MiB 0.02 7488 -1 -1 1 0.04 -1 -1 33784 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67472 32 32 469 381 1 190 95 17 17 289 -1 unnamed_device 27.3 MiB 1.35 851 15215 5964 8099 1152 65.9 MiB 0.12 0.00 3.17289 -114.676 -3.17289 3.17289 0.99 0.000603483 0.000546888 0.0455978 0.0414936 44 2813 35 6.95648e+06 448746 787024. 2723.27 2.97 0.177507 0.156215 27778 195446 -1 2129 23 2163 3503 280708 58081 4.24976 4.24976 -150.929 -4.24976 0 0 997811. 3452.63 0.38 0.10 0.19 -1 -1 0.38 0.0304581 0.0268676 88 106 0 0 128 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_082.v common 9.71 vpr 65.99 MiB 0.02 7296 -1 -1 1 0.03 -1 -1 33744 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67572 31 32 425 341 1 182 85 17 17 289 -1 unnamed_device 27.2 MiB 1.01 729 13663 5716 7401 546 66.0 MiB 0.11 0.00 3.3683 -111.686 -3.3683 3.3683 0.96 0.000576835 0.00052434 0.0462339 0.0421692 48 2220 44 6.95648e+06 318465 865456. 2994.66 5.38 0.265852 0.2317 28354 207349 -1 1824 25 1888 2855 237718 52794 3.87086 3.87086 -144.149 -3.87086 0 0 1.05005e+06 3633.38 0.39 0.09 0.20 -1 -1 0.39 0.030146 0.0266445 81 79 31 31 93 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_083.v common 17.28 vpr 65.57 MiB 0.02 7356 -1 -1 1 0.03 -1 -1 33900 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67140 30 32 404 328 1 173 80 17 17 289 -1 unnamed_device 27.1 MiB 1.65 767 9368 3067 4679 1622 65.6 MiB 0.08 0.00 2.73356 -89.5733 -2.73356 2.73356 0.98 0.000556049 0.000507341 0.0331696 0.0303769 40 2122 37 6.95648e+06 260562 706193. 2443.58 12.31 0.320359 0.279398 26914 176310 -1 1924 31 1873 2871 371762 119538 4.13943 4.13943 -142.341 -4.13943 0 0 926341. 3205.33 0.37 0.13 0.17 -1 -1 0.37 0.0349282 0.0305375 75 83 26 26 90 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_084.v common 10.09 vpr 65.77 MiB 0.02 7120 -1 -1 1 0.03 -1 -1 34200 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67348 32 32 407 319 1 193 77 17 17 289 -1 unnamed_device 27.0 MiB 1.40 821 12954 4673 6518 1763 65.8 MiB 0.11 0.00 3.04869 -111.4 -3.04869 3.04869 0.95 0.000553918 0.000505184 0.0471072 0.0430203 58 1934 23 6.95648e+06 188184 997811. 3452.63 5.25 0.260229 0.22664 30370 251734 -1 1719 21 1924 3143 220331 49236 3.90796 3.90796 -142.17 -3.90796 0 0 1.25153e+06 4330.55 0.46 0.08 0.26 -1 -1 0.46 0.0270734 0.0241195 81 58 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_085.v common 16.56 vpr 65.79 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 34060 -1 -1 22 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67368 29 32 387 316 1 171 83 17 17 289 -1 unnamed_device 27.2 MiB 1.10 713 10343 4222 5547 574 65.8 MiB 0.08 0.00 2.5613 -84.1668 -2.5613 2.5613 0.95 0.000521169 0.000476605 0.0327582 0.0299397 40 2401 29 6.95648e+06 318465 706193. 2443.58 12.25 0.277414 0.240611 26914 176310 -1 1897 26 1840 2698 315089 83989 3.50187 3.50187 -118.302 -3.50187 0 0 926341. 3205.33 0.35 0.10 0.17 -1 -1 0.35 0.0289461 0.0254779 77 81 26 26 85 29 + fixed_k6_frac_2ripple_N8_22nm.xml mult_086.v common 17.43 vpr 65.21 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 33912 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 32 32 283 225 1 154 74 17 17 289 -1 unnamed_device 26.7 MiB 0.99 569 10924 4578 5959 387 65.2 MiB 0.08 0.00 2.43165 -91.8424 -2.43165 2.43165 0.98 0.000442318 0.000403569 0.0333062 0.0304668 50 1970 41 6.95648e+06 144757 902133. 3121.57 13.14 0.289932 0.254014 28642 213929 -1 1494 21 1316 1962 183494 43136 3.31562 3.31562 -120.892 -3.31562 0 0 1.08113e+06 3740.92 0.42 0.07 0.20 -1 -1 0.42 0.0214581 0.0190531 61 -1 96 32 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_087.v common 10.17 vpr 65.77 MiB 0.02 7356 -1 -1 1 0.03 -1 -1 34180 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67352 32 32 407 319 1 187 88 17 17 289 -1 unnamed_device 27.0 MiB 3.19 854 15883 6769 8712 402 65.8 MiB 0.13 0.00 3.14769 -113.339 -3.14769 3.14769 0.98 0.000586461 0.0005354 0.049517 0.0452004 46 2482 26 6.95648e+06 347416 828058. 2865.25 3.62 0.186348 0.164222 28066 200906 -1 1846 23 2033 2985 225188 47767 3.93496 3.93496 -141.214 -3.93496 0 0 1.01997e+06 3529.29 0.39 0.08 0.20 -1 -1 0.39 0.0287853 0.0255617 84 62 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_088.v common 10.52 vpr 65.73 MiB 0.02 7056 -1 -1 1 0.03 -1 -1 33864 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67308 32 32 407 319 1 193 77 17 17 289 -1 unnamed_device 27.0 MiB 0.56 739 11650 4849 6261 540 65.7 MiB 0.10 0.00 3.05859 -112.455 -3.05859 3.05859 1.00 0.000584705 0.000534897 0.0446471 0.0408779 58 2041 33 6.95648e+06 188184 997811. 3452.63 6.41 0.261344 0.229499 30370 251734 -1 1599 20 1854 2528 245284 55779 3.79246 3.79246 -139.719 -3.79246 0 0 1.25153e+06 4330.55 0.50 0.09 0.26 -1 -1 0.50 0.0283234 0.0253434 81 62 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_089.v common 7.23 vpr 65.50 MiB 0.02 7124 -1 -1 1 0.03 -1 -1 34020 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67068 32 32 315 267 1 152 75 17 17 289 -1 unnamed_device 26.8 MiB 1.08 643 9397 3894 5268 235 65.5 MiB 0.07 0.00 2.82405 -89.6255 -2.82405 2.82405 0.97 0.000456285 0.000414559 0.0295274 0.0270128 44 2051 32 6.95648e+06 159232 787024. 2723.27 2.88 0.143216 0.125305 27778 195446 -1 1526 33 1241 1772 273747 105036 3.30757 3.30757 -114.34 -3.30757 0 0 997811. 3452.63 0.38 0.11 0.19 -1 -1 0.38 0.03106 0.0271947 60 47 32 32 54 27 + fixed_k6_frac_2ripple_N8_22nm.xml mult_090.v common 5.49 vpr 65.34 MiB 0.02 7052 -1 -1 1 0.03 -1 -1 34004 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66904 31 32 275 220 1 154 74 17 17 289 -1 unnamed_device 26.8 MiB 0.28 601 9839 4061 5483 295 65.3 MiB 0.07 0.00 2.6756 -95.1183 -2.6756 2.6756 0.96 0.000416309 0.000378858 0.0293225 0.026822 42 2050 45 6.95648e+06 159232 744469. 2576.02 2.03 0.138898 0.121009 27202 183097 -1 1600 21 1437 2026 169930 38153 3.29047 3.29047 -122.964 -3.29047 0 0 949917. 3286.91 0.36 0.06 0.18 -1 -1 0.36 0.0204893 0.0181579 63 -1 93 31 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_091.v common 7.07 vpr 65.96 MiB 0.02 7260 -1 -1 1 0.03 -1 -1 33976 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67540 32 32 381 303 1 180 83 17 17 289 -1 unnamed_device 27.2 MiB 1.23 651 15383 5748 6981 2654 66.0 MiB 0.11 0.00 3.07684 -102.249 -3.07684 3.07684 0.94 0.000521562 0.000475152 0.0480578 0.0438494 48 2124 32 6.95648e+06 275038 865456. 2994.66 2.56 0.175975 0.154127 28354 207349 -1 1799 20 1658 2245 211200 51777 3.73102 3.73102 -132.54 -3.73102 0 0 1.05005e+06 3633.38 0.40 0.08 0.20 -1 -1 0.40 0.0246151 0.0218704 78 56 60 32 58 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_092.v common 9.13 vpr 65.82 MiB 0.02 7364 -1 -1 1 0.03 -1 -1 33780 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67396 32 32 406 330 1 182 82 17 17 289 -1 unnamed_device 27.1 MiB 0.84 809 13254 4261 7068 1925 65.8 MiB 0.11 0.00 3.18505 -106.72 -3.18505 3.18505 0.97 0.000556109 0.000507413 0.044203 0.0404509 44 2441 44 6.95648e+06 260562 787024. 2723.27 4.97 0.27281 0.237269 27778 195446 -1 1812 23 1815 2645 187175 42711 4.29012 4.29012 -142.079 -4.29012 0 0 997811. 3452.63 0.39 0.08 0.19 -1 -1 0.39 0.0286689 0.0254319 78 81 28 28 88 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_093.v common 8.72 vpr 66.10 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 34108 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67688 32 32 399 285 1 218 91 17 17 289 -1 unnamed_device 27.5 MiB 0.45 1088 4987 936 3750 301 66.1 MiB 0.06 0.00 3.73059 -133.914 -3.73059 3.73059 0.96 0.000571733 0.000522637 0.0171404 0.015774 46 3320 41 6.95648e+06 390843 828058. 2865.25 4.97 0.167901 0.146514 28066 200906 -1 2663 27 2358 3559 446716 101805 5.85681 5.85681 -187.744 -5.85681 0 0 1.01997e+06 3529.29 0.38 0.13 0.20 -1 -1 0.38 0.033927 0.0301163 100 -1 156 32 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_094.v common 17.69 vpr 65.39 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 33916 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66960 30 32 371 295 1 176 80 17 17 289 -1 unnamed_device 26.7 MiB 1.01 707 14872 5728 6810 2334 65.4 MiB 0.11 0.00 2.89186 -95.2438 -2.89186 2.89186 0.99 0.000520087 0.0004739 0.0477889 0.043643 40 2464 25 6.95648e+06 260562 706193. 2443.58 13.41 0.32918 0.288135 26914 176310 -1 2065 21 1805 2656 241516 54127 3.52707 3.52707 -130.278 -3.52707 0 0 926341. 3205.33 0.33 0.08 0.17 -1 -1 0.33 0.0251085 0.0223233 77 47 60 30 56 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_095.v common 6.17 vpr 65.17 MiB 0.02 7052 -1 -1 1 0.03 -1 -1 34244 -1 -1 15 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 27 32 269 226 1 137 74 17 17 289 -1 unnamed_device 26.8 MiB 0.65 522 9064 3748 4777 539 65.2 MiB 0.06 0.00 2.65656 -80.3489 -2.65656 2.65656 0.95 0.000393585 0.0003594 0.025452 0.0233142 34 2127 41 6.95648e+06 217135 618332. 2139.56 2.48 0.129398 0.112567 25762 151098 -1 1427 24 1330 1672 160683 40976 3.20292 3.20292 -112.242 -3.20292 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.0211213 0.0185895 57 26 54 27 27 27 + fixed_k6_frac_2ripple_N8_22nm.xml mult_096.v common 31.52 vpr 65.92 MiB 0.02 7512 -1 -1 1 0.04 -1 -1 34180 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67504 32 32 493 378 1 222 94 17 17 289 -1 unnamed_device 27.5 MiB 0.66 1188 12661 3103 7787 1771 65.9 MiB 0.11 0.00 3.4105 -118.235 -3.4105 3.4105 0.95 0.000643117 0.00057865 0.0407317 0.0370274 44 3717 26 6.95648e+06 434271 787024. 2723.27 27.54 0.358102 0.313826 27778 195446 -1 2748 21 2305 3852 353101 66184 3.90807 3.90807 -147.107 -3.90807 0 0 997811. 3452.63 0.38 0.11 0.17 -1 -1 0.38 0.0318069 0.028318 103 85 62 31 95 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_097.v common 9.93 vpr 65.86 MiB 0.02 7344 -1 -1 1 0.03 -1 -1 34080 -1 -1 14 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67444 31 32 455 371 1 187 77 17 17 289 -1 unnamed_device 27.1 MiB 4.06 770 8716 3230 4626 860 65.9 MiB 0.08 0.00 3.82604 -125.602 -3.82604 3.82604 0.98 0.000589492 0.000527946 0.0344487 0.0314457 46 2564 29 6.95648e+06 202660 828058. 2865.25 2.52 0.143871 0.126547 28066 200906 -1 1941 32 1834 2735 331203 90247 4.66031 4.66031 -156.851 -4.66031 0 0 1.01997e+06 3529.29 0.40 0.12 0.20 -1 -1 0.40 0.0390531 0.0342256 79 105 0 0 124 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_098.v common 13.79 vpr 65.48 MiB 0.02 6948 -1 -1 1 0.03 -1 -1 33720 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67048 32 32 355 304 1 147 74 17 17 289 -1 unnamed_device 26.8 MiB 2.91 613 11389 4318 6053 1018 65.5 MiB 0.09 0.00 2.5155 -88.5718 -2.5155 2.5155 0.95 0.000491566 0.000451287 0.0392213 0.0358468 38 2157 46 6.95648e+06 144757 678818. 2348.85 7.72 0.256369 0.223091 26626 170182 -1 1637 22 1174 1812 158126 34020 3.09492 3.09492 -119.441 -3.09492 0 0 902133. 3121.57 0.34 0.07 0.17 -1 -1 0.34 0.0246819 0.0218738 58 86 0 0 89 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_099.v common 9.72 vpr 65.84 MiB 0.02 7292 -1 -1 1 0.03 -1 -1 33916 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67424 32 32 364 282 1 188 86 17 17 289 -1 unnamed_device 27.1 MiB 0.44 839 13694 5746 7505 443 65.8 MiB 0.10 0.00 3.4405 -113.723 -3.4405 3.4405 0.96 0.000512415 0.000467582 0.0403204 0.0368401 52 2865 38 6.95648e+06 318465 926341. 3205.33 5.93 0.229759 0.199844 29218 227130 -1 1945 22 1806 2672 239873 49335 4.08346 4.08346 -147.934 -4.08346 0 0 1.14541e+06 3963.36 0.43 0.08 0.22 -1 -1 0.43 0.0254352 0.0225597 83 31 90 30 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_100.v common 9.27 vpr 66.08 MiB 0.03 7264 -1 -1 1 0.03 -1 -1 34112 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67668 31 32 443 336 1 210 86 17 17 289 -1 unnamed_device 27.4 MiB 0.88 910 13505 4417 6042 3046 66.1 MiB 0.10 0.00 3.4515 -115.453 -3.4515 3.4515 0.98 0.000593756 0.000541343 0.0451496 0.0412122 40 2828 38 6.95648e+06 332941 706193. 2443.58 5.08 0.310799 0.271658 26914 176310 -1 2255 24 2270 3207 274810 62325 4.36542 4.36542 -152.907 -4.36542 0 0 926341. 3205.33 0.36 0.10 0.17 -1 -1 0.36 0.0339811 0.030161 95 50 87 31 62 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_101.v common 6.52 vpr 65.67 MiB 0.02 7440 -1 -1 1 0.03 -1 -1 33852 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67248 30 32 373 297 1 178 82 17 17 289 -1 unnamed_device 27.2 MiB 0.99 828 11830 4288 5530 2012 65.7 MiB 0.09 0.00 2.77276 -89.4501 -2.77276 2.77276 0.96 0.000511504 0.000467017 0.0373937 0.0342128 44 2775 24 6.95648e+06 289514 787024. 2723.27 2.25 0.135022 0.118971 27778 195446 -1 2034 22 1604 2501 198033 43967 3.36257 3.36257 -119.564 -3.36257 0 0 997811. 3452.63 0.38 0.08 0.19 -1 -1 0.38 0.0266391 0.0236681 78 50 58 30 58 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_102.v common 9.31 vpr 65.87 MiB 0.02 7404 -1 -1 1 0.03 -1 -1 33984 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67448 32 32 407 319 1 193 98 17 17 289 -1 unnamed_device 27.1 MiB 0.43 859 17648 6508 9174 1966 65.9 MiB 0.13 0.00 3.14469 -114.249 -3.14469 3.14469 0.94 0.000569339 0.000518234 0.0445856 0.0404496 44 2709 28 6.95648e+06 492173 787024. 2723.27 5.65 0.268572 0.232992 27778 195446 -1 1930 22 1974 2803 212915 44441 3.84566 3.84566 -143.708 -3.84566 0 0 997811. 3452.63 0.39 0.08 0.17 -1 -1 0.39 0.0271258 0.0240286 91 61 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_103.v common 15.26 vpr 65.81 MiB 0.02 7364 -1 -1 1 0.03 -1 -1 34088 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67388 32 32 405 318 1 192 95 17 17 289 -1 unnamed_device 27.0 MiB 0.48 865 18023 6841 8476 2706 65.8 MiB 0.13 0.00 2.5393 -97.0905 -2.5393 2.5393 0.98 0.000558741 0.000507104 0.0494139 0.0449508 38 2637 37 6.95648e+06 448746 678818. 2348.85 11.48 0.323498 0.282226 26626 170182 -1 1989 22 1620 2185 191205 39495 3.42872 3.42872 -130.761 -3.42872 0 0 902133. 3121.57 0.35 0.07 0.16 -1 -1 0.35 0.0270458 0.0239497 90 61 63 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_104.v common 11.35 vpr 65.09 MiB 0.02 7092 -1 -1 1 0.03 -1 -1 33704 -1 -1 13 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66652 29 32 287 238 1 136 74 17 17 289 -1 unnamed_device 26.7 MiB 4.31 476 8289 3403 4434 452 65.1 MiB 0.06 0.00 2.67856 -82.7388 -2.67856 2.67856 0.95 0.000426076 0.000388538 0.024629 0.0225569 38 1404 41 6.95648e+06 188184 678818. 2348.85 3.99 0.17391 0.150243 26626 170182 -1 1035 24 1121 1391 74716 20083 2.83937 2.83937 -99.7833 -2.83937 0 0 902133. 3121.57 0.33 0.05 0.17 -1 -1 0.33 0.0221992 0.0195761 56 28 58 29 29 29 + fixed_k6_frac_2ripple_N8_22nm.xml mult_105.v common 10.51 vpr 65.64 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 33700 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67212 32 32 334 290 1 148 74 17 17 289 -1 unnamed_device 26.9 MiB 0.87 608 10459 4566 5636 257 65.6 MiB 0.07 0.00 2.4623 -84.442 -2.4623 2.4623 0.97 0.000485793 0.000433009 0.0343475 0.0313336 40 1678 27 6.95648e+06 144757 706193. 2443.58 6.48 0.244628 0.212119 26914 176310 -1 1444 18 1110 1371 128891 28700 3.41282 3.41282 -112.558 -3.41282 0 0 926341. 3205.33 0.34 0.05 0.17 -1 -1 0.34 0.0201718 0.0179198 58 79 0 0 82 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_106.v common 21.58 vpr 65.63 MiB 0.02 7408 -1 -1 1 0.03 -1 -1 34188 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67208 31 32 365 281 1 188 91 17 17 289 -1 unnamed_device 26.9 MiB 0.41 712 11923 2992 6851 2080 65.6 MiB 0.08 0.00 3.61895 -115.646 -3.61895 3.61895 0.97 0.000486941 0.000438801 0.0316533 0.0289404 54 2126 44 6.95648e+06 405319 949917. 3286.91 17.77 0.302575 0.263354 29506 232905 -1 1438 23 1679 2306 184877 43555 3.76262 3.76262 -133.325 -3.76262 0 0 1.17392e+06 4061.99 0.45 0.08 0.24 -1 -1 0.45 0.0276348 0.0245414 86 29 93 31 31 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_107.v common 6.74 vpr 64.80 MiB 0.02 7040 -1 -1 1 0.03 -1 -1 34024 -1 -1 14 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66360 29 32 297 254 1 144 75 17 17 289 -1 unnamed_device 26.3 MiB 1.19 513 12241 3750 6739 1752 64.8 MiB 0.08 0.00 2.76175 -81.5673 -2.76175 2.76175 0.98 0.000421389 0.00038513 0.0351195 0.0321183 44 1572 46 6.95648e+06 202660 787024. 2723.27 2.34 0.12644 0.110684 27778 195446 -1 1150 19 885 1259 89059 21924 2.92072 2.92072 -97.2269 -2.92072 0 0 997811. 3452.63 0.38 0.05 0.19 -1 -1 0.38 0.0197363 0.0175293 59 48 29 29 52 26 + fixed_k6_frac_2ripple_N8_22nm.xml mult_108.v common 7.12 vpr 65.19 MiB 0.02 6960 -1 -1 1 0.03 -1 -1 34052 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 32 32 314 256 1 154 74 17 17 289 -1 unnamed_device 26.7 MiB 1.04 719 10304 4284 5838 182 65.2 MiB 0.07 0.00 2.55695 -99.062 -2.55695 2.55695 0.95 0.000418543 0.000379652 0.0311135 0.0283093 38 2014 39 6.95648e+06 144757 678818. 2348.85 3.00 0.153837 0.134791 26626 170182 -1 1730 23 1562 2215 219159 44129 3.40042 3.40042 -129.285 -3.40042 0 0 902133. 3121.57 0.34 0.08 0.15 -1 -1 0.34 0.0234514 0.0207354 61 31 64 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_109.v common 8.94 vpr 65.61 MiB 0.02 7484 -1 -1 1 0.03 -1 -1 34064 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67184 31 32 387 307 1 181 87 17 17 289 -1 unnamed_device 27.2 MiB 0.98 740 14295 5198 6590 2507 65.6 MiB 0.11 0.00 2.6976 -96.2661 -2.6976 2.6976 0.94 0.00053656 0.000490107 0.0425111 0.0387964 42 2533 38 6.95648e+06 347416 744469. 2576.02 4.74 0.234456 0.203944 27202 183097 -1 1824 18 1474 1876 163242 37055 3.57107 3.57107 -126.089 -3.57107 0 0 949917. 3286.91 0.36 0.06 0.18 -1 -1 0.36 0.0230063 0.0205118 82 60 58 31 62 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_110.v common 8.09 vpr 65.30 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 34036 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 31 32 308 262 1 143 74 17 17 289 -1 unnamed_device 26.8 MiB 2.47 821 12474 3954 7613 907 65.3 MiB 0.09 0.00 2.63455 -86.7455 -2.63455 2.63455 0.95 0.000436835 0.000399672 0.0378575 0.0346003 36 2106 49 6.95648e+06 159232 648988. 2245.63 2.53 0.158073 0.138247 26050 158493 -1 1794 20 1137 1755 156501 33858 3.24647 3.24647 -116.94 -3.24647 0 0 828058. 2865.25 0.32 0.06 0.15 -1 -1 0.32 0.0207945 0.0183876 57 49 31 31 53 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_111.v common 10.71 vpr 65.85 MiB 0.02 7384 -1 -1 1 0.03 -1 -1 33948 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67432 32 32 383 307 1 176 83 17 17 289 -1 unnamed_device 27.2 MiB 1.47 687 12863 4647 5643 2573 65.9 MiB 0.09 0.00 2.5143 -86.9864 -2.5143 2.5143 0.98 0.000543042 0.00049586 0.0411769 0.0376241 58 1648 22 6.95648e+06 275038 997811. 3452.63 5.79 0.234355 0.203966 30370 251734 -1 1375 20 1156 1796 104703 27860 2.83022 2.83022 -105.067 -2.83022 0 0 1.25153e+06 4330.55 0.50 0.06 0.26 -1 -1 0.50 0.0258306 0.0230522 76 56 52 26 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_112.v common 9.24 vpr 65.86 MiB 0.02 7288 -1 -1 1 0.03 -1 -1 33592 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67440 31 32 422 339 1 187 88 17 17 289 -1 unnamed_device 27.1 MiB 1.32 920 15103 5522 7391 2190 65.9 MiB 0.12 0.00 2.87606 -102.432 -2.87606 2.87606 0.99 0.000605103 0.000552715 0.0478478 0.0436745 38 2533 35 6.95648e+06 361892 678818. 2348.85 4.66 0.252332 0.219764 26626 170182 -1 2159 20 1877 2570 216562 43986 3.41147 3.41147 -132.637 -3.41147 0 0 902133. 3121.57 0.33 0.08 0.17 -1 -1 0.33 0.027166 0.0241863 85 88 31 31 92 31 + fixed_k6_frac_2ripple_N8_22nm.xml mult_113.v common 9.46 vpr 65.44 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 33960 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67008 32 32 333 279 1 154 74 17 17 289 -1 unnamed_device 26.7 MiB 0.80 578 9529 3974 5251 304 65.4 MiB 0.07 0.00 2.4011 -84.8413 -2.4011 2.4011 0.97 0.000483119 0.000440887 0.0316434 0.0289721 50 1803 29 6.95648e+06 144757 902133. 3121.57 5.36 0.211542 0.183796 28642 213929 -1 1404 22 1214 1827 148643 36239 3.32952 3.32952 -112.882 -3.32952 0 0 1.08113e+06 3740.92 0.42 0.06 0.21 -1 -1 0.42 0.0237534 0.0210882 61 54 32 32 60 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_114.v common 6.32 vpr 65.36 MiB 0.02 7040 -1 -1 1 0.03 -1 -1 33816 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66928 32 32 339 283 1 158 74 17 17 289 -1 unnamed_device 26.8 MiB 0.92 636 8444 3437 4770 237 65.4 MiB 0.06 0.00 2.5503 -94.7535 -2.5503 2.5503 0.95 0.000489495 0.000450841 0.026623 0.0242331 46 1960 35 6.95648e+06 144757 828058. 2865.25 2.23 0.14577 0.12696 28066 200906 -1 1504 21 1354 2032 146202 33178 3.42377 3.42377 -117.684 -3.42377 0 0 1.01997e+06 3529.29 0.39 0.06 0.18 -1 -1 0.39 0.0226122 0.0199785 63 60 32 32 62 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_115.v common 17.07 vpr 65.89 MiB 0.02 7364 -1 -1 1 0.03 -1 -1 34288 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67476 32 32 407 319 1 190 93 17 17 289 -1 unnamed_device 27.1 MiB 0.84 841 16053 4604 9696 1753 65.9 MiB 0.12 0.00 3.15569 -114.144 -3.15569 3.15569 0.96 0.000541007 0.000493915 0.044924 0.0409381 40 2466 34 6.95648e+06 419795 706193. 2443.58 12.92 0.321484 0.279601 26914 176310 -1 2088 23 2223 3337 306919 64068 3.96106 3.96106 -147.395 -3.96106 0 0 926341. 3205.33 0.35 0.10 0.18 -1 -1 0.35 0.0301502 0.0268569 88 49 64 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_116.v common 6.78 vpr 65.64 MiB 0.02 7320 -1 -1 1 0.03 -1 -1 34148 -1 -1 19 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67212 29 32 367 293 1 175 80 17 17 289 -1 unnamed_device 27.2 MiB 0.98 819 8852 3579 4926 347 65.6 MiB 0.07 0.00 2.6053 -89.9611 -2.6053 2.6053 0.95 0.000508363 0.000464449 0.0296219 0.0271367 36 2453 49 6.95648e+06 275038 648988. 2245.63 2.69 0.157296 0.137592 26050 158493 -1 1838 23 1570 2071 174419 37647 3.34547 3.34547 -119.552 -3.34547 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.026881 0.0237541 77 54 56 29 58 29 + fixed_k6_frac_2ripple_N8_22nm.xml mult_117.v common 21.26 vpr 65.94 MiB 0.02 7524 -1 -1 1 0.03 -1 -1 34256 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67524 32 32 469 381 1 192 93 17 17 289 -1 unnamed_device 27.4 MiB 1.37 872 17523 6731 8900 1892 65.9 MiB 0.14 0.00 3.10069 -113.963 -3.10069 3.10069 0.93 0.000613384 0.000559687 0.0546555 0.0497899 40 2707 28 6.95648e+06 419795 706193. 2443.58 16.70 0.344627 0.301505 26914 176310 -1 2203 26 2314 3388 322371 64725 4.47036 4.47036 -160.255 -4.47036 0 0 926341. 3205.33 0.35 0.10 0.16 -1 -1 0.35 0.0335845 0.0295117 89 117 0 0 128 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_118.v common 6.57 vpr 64.96 MiB 0.02 6912 -1 -1 1 0.03 -1 -1 33980 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 31 32 259 212 1 144 74 17 17 289 -1 unnamed_device 26.6 MiB 1.56 615 9529 3473 3838 2218 65.0 MiB 0.06 0.00 2.4703 -82.3656 -2.4703 2.4703 0.95 0.000410958 0.000373919 0.026387 0.0241195 38 2035 23 6.95648e+06 159232 678818. 2348.85 1.90 0.102422 0.0900431 26626 170182 -1 1555 22 1174 1749 146505 32199 3.10912 3.10912 -112.306 -3.10912 0 0 902133. 3121.57 0.34 0.06 0.16 -1 -1 0.34 0.0207048 0.0183917 58 -1 85 31 0 0 + fixed_k6_frac_2ripple_N8_22nm.xml mult_119.v common 9.37 vpr 65.96 MiB 0.02 7344 -1 -1 1 0.03 -1 -1 34016 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67544 32 32 418 338 1 182 87 17 17 289 -1 unnamed_device 27.2 MiB 0.98 785 13719 5670 7310 739 66.0 MiB 0.11 0.00 3.10505 -105.949 -3.10505 3.10505 0.98 0.000571932 0.000525521 0.0435735 0.0397511 46 2189 25 6.95648e+06 332941 828058. 2865.25 5.07 0.242138 0.211202 28066 200906 -1 1789 19 1415 1951 137453 31616 3.82796 3.82796 -136.345 -3.82796 0 0 1.01997e+06 3529.29 0.40 0.06 0.20 -1 -1 0.40 0.0251247 0.0222884 81 89 28 28 92 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_120.v common 11.09 vpr 65.25 MiB 0.02 7052 -1 -1 1 0.03 -1 -1 33872 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 32 32 376 318 1 154 74 17 17 289 -1 unnamed_device 26.7 MiB 3.26 654 11699 5172 6241 286 65.2 MiB 0.09 0.00 2.45985 -93.5493 -2.45985 2.45985 0.94 0.000497163 0.000452748 0.0406851 0.0372054 44 1809 23 6.95648e+06 144757 787024. 2723.27 4.64 0.202488 0.175904 27778 195446 -1 1403 22 1383 1957 152015 33708 3.23112 3.23112 -122.105 -3.23112 0 0 997811. 3452.63 0.38 0.07 0.19 -1 -1 0.38 0.0248349 0.0219738 61 93 0 0 96 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_121.v common 9.33 vpr 65.95 MiB 0.02 7388 -1 -1 1 0.03 -1 -1 34028 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67528 32 32 401 316 1 188 88 17 17 289 -1 unnamed_device 27.2 MiB 0.97 789 12178 4192 5770 2216 65.9 MiB 0.10 0.00 2.5393 -93.8042 -2.5393 2.5393 0.98 0.000575962 0.000525424 0.0377909 0.0345317 48 1997 24 6.95648e+06 347416 865456. 2994.66 5.01 0.24232 0.210731 28354 207349 -1 1736 21 1346 2021 146325 36132 3.41277 3.41277 -120.163 -3.41277 0 0 1.05005e+06 3633.38 0.41 0.07 0.20 -1 -1 0.41 0.0271634 0.0241368 84 59 61 32 64 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_122.v common 8.78 vpr 66.02 MiB 0.02 7600 -1 -1 1 0.04 -1 -1 34204 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67608 32 32 500 382 1 222 97 17 17 289 -1 unnamed_device 27.6 MiB 1.15 1063 18967 7179 10260 1528 66.0 MiB 0.16 0.00 3.74344 -132.999 -3.74344 3.74344 0.95 0.000636635 0.000578699 0.0582895 0.0530609 44 3222 41 6.95648e+06 477698 787024. 2723.27 4.25 0.198543 0.174853 27778 195446 -1 2392 22 2540 3692 303817 61424 4.72611 4.72611 -171.193 -4.72611 0 0 997811. 3452.63 0.38 0.10 0.19 -1 -1 0.38 0.0321816 0.0285854 104 81 64 32 96 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_123.v common 5.38 vpr 64.89 MiB 0.02 6948 -1 -1 1 0.03 -1 -1 33620 -1 -1 10 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 30 32 246 229 1 117 72 17 17 289 -1 unnamed_device 26.5 MiB 0.49 450 8714 3437 4485 792 64.9 MiB 0.06 0.00 1.83056 -62.632 -1.83056 1.83056 0.97 0.000371144 0.00033916 0.023658 0.0216718 34 1406 40 6.95648e+06 144757 618332. 2139.56 1.86 0.121025 0.105557 25762 151098 -1 1037 19 705 882 59779 15981 2.44628 2.44628 -86.2371 -2.44628 0 0 787024. 2723.27 0.31 0.04 0.15 -1 -1 0.31 0.0162863 0.0143935 45 51 0 0 53 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_124.v common 10.11 vpr 65.16 MiB 0.02 7120 -1 -1 1 0.03 -1 -1 34028 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 30 32 296 244 1 141 74 17 17 289 -1 unnamed_device 26.7 MiB 2.10 585 9529 3924 5179 426 65.2 MiB 0.07 0.00 2.68956 -87.7818 -2.68956 2.68956 0.95 0.000444298 0.000406247 0.0291546 0.0266842 42 1935 48 6.95648e+06 173708 744469. 2576.02 4.86 0.191391 0.165703 27202 183097 -1 1382 18 931 1322 111140 25510 2.97567 2.97567 -110.417 -2.97567 0 0 949917. 3286.91 0.37 0.05 0.18 -1 -1 0.37 0.0198926 0.0177672 58 29 60 30 30 30 + fixed_k6_frac_2ripple_N8_22nm.xml mult_125.v common 9.44 vpr 65.28 MiB 0.02 6944 -1 -1 1 0.03 -1 -1 33524 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66848 32 32 314 256 1 161 74 17 17 289 -1 unnamed_device 26.8 MiB 0.23 583 9994 4156 5510 328 65.3 MiB 0.08 0.00 2.43165 -92.7025 -2.43165 2.43165 0.94 0.000460235 0.000418949 0.031645 0.0289199 56 1769 22 6.95648e+06 144757 973134. 3367.25 5.92 0.200249 0.173819 29794 239141 -1 1435 21 1441 2336 227882 53781 3.11062 3.11062 -116.465 -3.11062 0 0 1.19926e+06 4149.71 0.44 0.08 0.24 -1 -1 0.44 0.0221814 0.0196842 65 31 64 32 32 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_126.v common 5.89 vpr 65.03 MiB 0.02 7136 -1 -1 1 0.03 -1 -1 33884 -1 -1 15 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 25 32 251 214 1 132 72 17 17 289 -1 unnamed_device 26.7 MiB 0.60 456 8714 3671 4354 689 65.0 MiB 0.06 0.00 2.73975 -74.1765 -2.73975 2.73975 0.94 0.000365821 0.000333654 0.0236665 0.021677 38 1756 26 6.95648e+06 217135 678818. 2348.85 2.24 0.101792 0.088841 26626 170182 -1 1231 21 1088 1481 107338 26784 3.07097 3.07097 -97.0621 -3.07097 0 0 902133. 3121.57 0.34 0.05 0.16 -1 -1 0.34 0.0180334 0.0159142 56 19 50 25 25 25 + fixed_k6_frac_2ripple_N8_22nm.xml mult_127.v common 18.62 vpr 66.08 MiB 0.02 7468 -1 -1 1 0.03 -1 -1 34156 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67664 32 32 432 346 1 185 77 17 17 289 -1 unnamed_device 27.2 MiB 1.11 821 9368 3851 5297 220 66.1 MiB 0.08 0.00 3.24434 -110.581 -3.24434 3.24434 0.92 0.00055 0.000498032 0.0357686 0.0326111 38 3064 37 6.95648e+06 188184 678818. 2348.85 14.39 0.30013 0.261737 26626 170182 -1 2289 21 1925 3284 271074 57021 4.44981 4.44981 -148.335 -4.44981 0 0 902133. 3121.57 0.34 0.09 0.15 -1 -1 0.34 0.0273492 0.0242732 77 84 32 32 94 32 + fixed_k6_frac_2ripple_N8_22nm.xml mult_128.v common 8.01 vpr 65.78 MiB 0.02 7312 -1 -1 1 0.03 -1 -1 33772 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67360 31 32 421 339 1 185 92 17 17 289 -1 unnamed_device 27.0 MiB 0.88 743 12926 4367 6330 2229 65.8 MiB 0.10 0.00 2.5925 -92.6947 -2.5925 2.5925 0.97 0.000582379 0.000530467 0.0384886 0.0351061 38 2568 35 6.95648e+06 419795 678818. 2348.85 3.88 0.179063 0.156572 26626 170182 -1 1905 22 1729 2298 191636 43219 3.66167 3.66167 -125.729 -3.66167 0 0 902133. 3121.57 0.35 0.08 0.17 -1 -1 0.35 0.02871 0.0254379 87 88 29 29 93 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_001.v common 7.35 vpr 65.69 MiB 0.02 7348 -1 -1 1 0.03 -1 -1 34212 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67268 32 32 438 350 1 287 86 17 17 289 -1 unnamed_device 27.3 MiB 0.78 1339 15395 5888 7731 1776 65.7 MiB 0.13 0.00 3.54004 -131.105 -3.54004 3.54004 0.97 0.000598971 0.000546592 0.0516339 0.0472324 46 3467 30 6.99608e+06 323745 828058. 2865.25 3.20 0.197374 0.174552 28066 200906 -1 2710 24 2431 2895 254566 52558 4.60591 4.60591 -167.423 -4.60591 0 0 1.01997e+06 3529.29 0.39 0.09 0.20 -1 -1 0.39 0.0317166 0.0281727 130 80 32 32 96 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_002.v common 24.44 vpr 65.71 MiB 0.02 7248 -1 -1 1 0.03 -1 -1 33916 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67284 30 32 409 330 1 259 82 17 17 289 -1 unnamed_device 27.2 MiB 1.54 1212 14500 6175 7840 485 65.7 MiB 0.12 0.00 3.52832 -121.548 -3.52832 3.52832 0.96 0.000535224 0.000488116 0.0486299 0.0443954 40 3418 34 6.99608e+06 294314 706193. 2443.58 19.53 0.3321 0.28974 26914 176310 -1 3025 31 3488 4899 661490 195576 4.78569 4.78569 -164.017 -4.78569 0 0 926341. 3205.33 0.36 0.19 0.17 -1 -1 0.36 0.0366521 0.0322789 117 78 30 30 89 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_003.v common 19.11 vpr 65.72 MiB 0.02 7400 -1 -1 1 0.03 -1 -1 34156 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67300 32 32 387 309 1 241 82 17 17 289 -1 unnamed_device 27.0 MiB 1.02 1043 15390 6153 6789 2448 65.7 MiB 0.12 0.00 2.96629 -107.794 -2.96629 2.96629 0.98 0.000522437 0.000474828 0.0488648 0.0446187 40 3278 41 6.99608e+06 264882 706193. 2443.58 14.80 0.351169 0.307951 26914 176310 -1 2721 24 2052 2461 273303 56724 4.05236 4.05236 -147.737 -4.05236 0 0 926341. 3205.33 0.36 0.10 0.17 -1 -1 0.36 0.0304088 0.0269371 106 50 54 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_004.v common 9.16 vpr 65.16 MiB 0.02 7364 -1 -1 1 0.03 -1 -1 34148 -1 -1 18 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 29 32 343 267 1 201 79 17 17 289 -1 unnamed_device 26.8 MiB 0.75 893 14106 5931 7515 660 65.2 MiB 0.11 0.00 3.16965 -104.761 -3.16965 3.16965 0.96 0.000503668 0.000459581 0.0434468 0.039626 42 3138 27 6.99608e+06 264882 744469. 2576.02 5.16 0.222947 0.194277 27202 183097 -1 2287 21 1805 2656 261487 55177 4.03512 4.03512 -141.29 -4.03512 0 0 949917. 3286.91 0.37 0.09 0.18 -1 -1 0.37 0.02489 0.0222078 89 25 87 29 29 29 + fixed_k6_frac_2uripple_N8_22nm.xml mult_005.v common 7.69 vpr 65.82 MiB 0.02 7304 -1 -1 1 0.03 -1 -1 33972 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67396 32 32 376 288 1 218 79 17 17 289 -1 unnamed_device 27.1 MiB 0.49 1150 12585 5319 7044 222 65.8 MiB 0.11 0.00 3.52464 -133.869 -3.52464 3.52464 0.95 0.000536256 0.000490104 0.0420669 0.0384772 44 3757 43 6.99608e+06 220735 787024. 2723.27 3.91 0.163045 0.143152 27778 195446 -1 2889 24 2603 4190 403365 76507 4.46155 4.46155 -171.841 -4.46155 0 0 997811. 3452.63 0.38 0.11 0.19 -1 -1 0.38 0.02813 0.0249346 93 31 96 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_006.v common 6.39 vpr 65.87 MiB 0.02 7112 -1 -1 1 0.03 -1 -1 33616 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67448 32 32 402 316 1 251 94 17 17 289 -1 unnamed_device 27.3 MiB 0.51 1287 17134 6098 8739 2297 65.9 MiB 0.14 0.00 3.05559 -111.202 -3.05559 3.05559 0.95 0.000556356 0.000506766 0.0470043 0.0428307 46 3473 45 6.99608e+06 441471 828058. 2865.25 2.52 0.176301 0.154902 28066 200906 -1 2769 30 2371 3388 422881 130215 3.63456 3.63456 -142.044 -3.63456 0 0 1.01997e+06 3529.29 0.39 0.14 0.19 -1 -1 0.39 0.0352999 0.0311691 117 61 63 32 63 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_007.v common 6.82 vpr 64.97 MiB 0.02 6916 -1 -1 1 0.03 -1 -1 34200 -1 -1 15 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66528 27 32 269 226 1 158 74 17 17 289 -1 unnamed_device 26.5 MiB 1.51 563 10304 4323 5395 586 65.0 MiB 0.07 0.00 2.64844 -83.5724 -2.64844 2.64844 0.95 0.000406794 0.000370765 0.0296122 0.027031 38 1981 27 6.99608e+06 220735 678818. 2348.85 2.22 0.128832 0.112902 26626 170182 -1 1454 21 1423 2057 164818 36272 3.46287 3.46287 -115.237 -3.46287 0 0 902133. 3121.57 0.34 0.06 0.17 -1 -1 0.34 0.0203113 0.0180675 68 26 54 27 27 27 + fixed_k6_frac_2uripple_N8_22nm.xml mult_008.v common 6.91 vpr 65.25 MiB 0.02 7064 -1 -1 1 0.03 -1 -1 33820 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 31 32 317 242 1 178 80 17 17 289 -1 unnamed_device 26.8 MiB 0.55 762 11776 3811 5679 2286 65.3 MiB 0.09 0.00 2.36575 -80.4975 -2.36575 2.36575 0.96 0.000474956 0.000434018 0.0353279 0.0322802 46 2159 28 6.99608e+06 250167 828058. 2865.25 3.13 0.149796 0.131413 28066 200906 -1 1592 22 1370 2014 133567 36552 3.09392 3.09392 -111.358 -3.09392 0 0 1.01997e+06 3529.29 0.38 0.06 0.20 -1 -1 0.38 0.0223897 0.0198614 77 -1 115 31 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_009.v common 10.92 vpr 65.48 MiB 0.02 7048 -1 -1 1 0.03 -1 -1 33820 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67056 31 32 338 292 1 222 78 17 17 289 -1 unnamed_device 26.9 MiB 3.22 1001 11864 4950 6574 340 65.5 MiB 0.09 0.00 2.58244 -94.0613 -2.58244 2.58244 0.99 0.000472239 0.000429886 0.0366823 0.0334713 46 2439 49 6.99608e+06 220735 828058. 2865.25 4.48 0.215615 0.187913 28066 200906 -1 1918 18 1606 1976 143319 31972 3.34552 3.34552 -119.264 -3.34552 0 0 1.01997e+06 3529.29 0.40 0.06 0.18 -1 -1 0.40 0.0206354 0.0184256 96 81 0 0 84 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_010.v common 6.72 vpr 65.16 MiB 0.02 7140 -1 -1 1 0.03 -1 -1 33576 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66724 32 32 314 256 1 187 77 17 17 289 -1 unnamed_device 26.6 MiB 0.74 717 8879 3091 4039 1749 65.2 MiB 0.07 0.00 2.95409 -109.113 -2.95409 2.95409 0.95 0.000425095 0.000387067 0.0258135 0.0236288 40 2481 30 6.99608e+06 191304 706193. 2443.58 2.84 0.148776 0.13053 26914 176310 -1 2104 23 1942 2408 232735 51932 3.73346 3.73346 -147.84 -3.73346 0 0 926341. 3205.33 0.36 0.08 0.17 -1 -1 0.36 0.0244532 0.0216628 79 31 64 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_011.v common 8.08 vpr 65.21 MiB 0.02 7160 -1 -1 1 0.03 -1 -1 33564 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66776 30 32 325 273 1 199 77 17 17 289 -1 unnamed_device 26.7 MiB 2.74 795 11161 3787 5546 1828 65.2 MiB 0.08 0.00 3.05483 -104.248 -3.05483 3.05483 0.95 0.000466394 0.000423507 0.0333495 0.0304103 44 2505 23 6.99608e+06 220735 787024. 2723.27 2.14 0.1144 0.100479 27778 195446 -1 1892 19 1669 2249 185647 39274 3.6257 3.6257 -134.981 -3.6257 0 0 997811. 3452.63 0.37 0.07 0.19 -1 -1 0.37 0.0212626 0.0189102 88 58 30 30 60 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_012.v common 8.95 vpr 65.19 MiB 0.02 6968 -1 -1 1 0.03 -1 -1 34068 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 32 32 331 280 1 210 78 17 17 289 -1 unnamed_device 26.6 MiB 0.91 1055 11698 4034 5823 1841 65.2 MiB 0.09 0.00 2.5521 -101.073 -2.5521 2.5521 0.94 0.000471481 0.000430319 0.0357486 0.0327322 44 2373 22 6.99608e+06 206020 787024. 2723.27 4.86 0.190011 0.165398 27778 195446 -1 2025 17 1317 1402 125526 25627 3.06997 3.06997 -122.419 -3.06997 0 0 997811. 3452.63 0.38 0.05 0.19 -1 -1 0.38 0.0198383 0.0177163 91 57 25 25 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_013.v common 9.36 vpr 65.70 MiB 0.02 6996 -1 -1 1 0.03 -1 -1 33900 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67280 32 32 386 305 1 231 80 17 17 289 -1 unnamed_device 26.9 MiB 1.06 1009 11088 3493 5989 1606 65.7 MiB 0.10 0.00 2.87709 -104.678 -2.87709 2.87709 0.96 0.000528972 0.000482617 0.0383118 0.0350454 52 2808 23 6.99608e+06 235451 926341. 3205.33 4.91 0.22241 0.194008 29218 227130 -1 1939 25 1955 2681 221541 51029 3.65646 3.65646 -132.475 -3.65646 0 0 1.14541e+06 3963.36 0.45 0.08 0.23 -1 -1 0.45 0.0291132 0.025748 101 55 64 32 57 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_014.v common 9.59 vpr 65.78 MiB 0.02 7124 -1 -1 1 0.03 -1 -1 34048 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67360 32 32 407 319 1 254 83 17 17 289 -1 unnamed_device 27.3 MiB 0.97 1221 14663 4666 7992 2005 65.8 MiB 0.13 0.00 3.53384 -132.883 -3.53384 3.53384 0.98 0.000571105 0.000522391 0.0487336 0.0445657 46 3202 25 6.99608e+06 279598 828058. 2865.25 5.26 0.241675 0.211659 28066 200906 -1 2706 22 2711 3532 287077 57474 4.51361 4.51361 -170.864 -4.51361 0 0 1.01997e+06 3529.29 0.39 0.10 0.19 -1 -1 0.39 0.0296604 0.0264571 112 60 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_015.v common 10.32 vpr 64.98 MiB 0.02 7020 -1 -1 1 0.03 -1 -1 33732 -1 -1 14 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66544 29 32 272 228 1 161 75 17 17 289 -1 unnamed_device 26.6 MiB 2.55 548 11135 4335 5437 1363 65.0 MiB 0.07 0.00 2.42075 -79.3785 -2.42075 2.42075 0.92 0.000399222 0.00036285 0.0306644 0.0279745 46 1739 41 6.99608e+06 206020 828058. 2865.25 4.74 0.167366 0.144631 28066 200906 -1 1256 40 1522 2183 145758 35674 3.15122 3.15122 -95.7284 -3.15122 0 0 1.01997e+06 3529.29 0.36 0.07 0.18 -1 -1 0.36 0.0286441 0.0249744 67 21 58 29 24 24 + fixed_k6_frac_2uripple_N8_22nm.xml mult_016.v common 10.73 vpr 65.80 MiB 0.02 7152 -1 -1 1 0.03 -1 -1 34076 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67384 32 32 401 315 1 243 80 17 17 289 -1 unnamed_device 27.0 MiB 2.05 1324 15388 6313 7985 1090 65.8 MiB 0.12 0.00 2.92839 -113.251 -2.92839 2.92839 0.95 0.000575561 0.000521284 0.0502559 0.0457508 48 3124 24 6.99608e+06 235451 865456. 2994.66 5.35 0.238324 0.208217 28354 207349 -1 2672 22 2906 4088 352132 68977 3.37581 3.37581 -143.148 -3.37581 0 0 1.05005e+06 3633.38 0.40 0.10 0.20 -1 -1 0.40 0.0287289 0.0256097 106 60 64 32 62 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_017.v common 9.54 vpr 65.50 MiB 0.02 7128 -1 -1 1 0.03 -1 -1 33692 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67072 32 32 383 303 1 230 81 17 17 289 -1 unnamed_device 26.9 MiB 1.40 1153 9881 3091 5318 1472 65.5 MiB 0.09 0.00 2.70344 -107.752 -2.70344 2.70344 0.97 0.000523157 0.000476794 0.0333571 0.0305513 44 2747 26 6.99608e+06 250167 787024. 2723.27 4.84 0.235995 0.205262 27778 195446 -1 2326 22 1852 2317 186390 37475 3.22121 3.22121 -133.031 -3.22121 0 0 997811. 3452.63 0.39 0.07 0.19 -1 -1 0.39 0.0262594 0.0232765 99 54 64 32 56 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_018.v common 17.88 vpr 65.68 MiB 0.02 7028 -1 -1 1 0.03 -1 -1 33576 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67256 32 32 339 284 1 218 78 17 17 289 -1 unnamed_device 27.0 MiB 0.84 1128 13856 4791 7428 1637 65.7 MiB 0.10 0.00 2.74594 -108.216 -2.74594 2.74594 0.94 0.000473584 0.000433339 0.042145 0.0385531 40 2786 22 6.99608e+06 206020 706193. 2443.58 13.87 0.250074 0.217138 26914 176310 -1 2453 17 1560 1868 197673 39206 3.36881 3.36881 -135.542 -3.36881 0 0 926341. 3205.33 0.35 0.07 0.17 -1 -1 0.35 0.020296 0.0181428 91 62 29 29 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_019.v common 7.98 vpr 64.40 MiB 0.02 6900 -1 -1 1 0.03 -1 -1 33672 -1 -1 11 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65944 30 32 226 208 1 139 73 17 17 289 -1 unnamed_device 26.0 MiB 2.69 751 8585 3232 4109 1244 64.4 MiB 0.05 0.00 1.97056 -79.4021 -1.97056 1.97056 0.97 0.000341456 0.000315288 0.0205422 0.0187897 36 1707 23 6.99608e+06 161872 648988. 2245.63 2.25 0.105458 0.0921744 26050 158493 -1 1437 16 717 779 72021 14705 2.10343 2.10343 -91.9527 -2.10343 0 0 828058. 2865.25 0.33 0.04 0.16 -1 -1 0.33 0.0144735 0.0129098 56 29 24 24 30 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_020.v common 10.90 vpr 65.37 MiB 0.02 7108 -1 -1 1 0.03 -1 -1 34164 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 31 32 335 280 1 209 78 17 17 289 -1 unnamed_device 26.8 MiB 2.49 1098 12030 4684 6566 780 65.4 MiB 0.09 0.00 2.92409 -110.186 -2.92409 2.92409 0.96 0.000470189 0.000429564 0.0364725 0.033354 44 2572 41 6.99608e+06 220735 787024. 2723.27 5.17 0.219521 0.19055 27778 195446 -1 2064 20 1608 1961 161847 32631 3.44981 3.44981 -137.763 -3.44981 0 0 997811. 3452.63 0.38 0.06 0.19 -1 -1 0.38 0.02262 0.0200805 91 55 31 31 62 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_021.v common 8.47 vpr 65.70 MiB 0.02 7088 -1 -1 1 0.03 -1 -1 33852 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67280 32 32 366 283 1 215 87 17 17 289 -1 unnamed_device 27.0 MiB 0.47 1014 14295 4567 7423 2305 65.7 MiB 0.11 0.00 3.41663 -122.488 -3.41663 3.41663 1.00 0.00054417 0.000496354 0.0421637 0.0385334 44 2746 20 6.99608e+06 338461 787024. 2723.27 4.68 0.227702 0.199863 27778 195446 -1 2214 21 2000 2745 213810 44188 4.1176 4.1176 -152.075 -4.1176 0 0 997811. 3452.63 0.39 0.08 0.19 -1 -1 0.39 0.0255143 0.0226859 97 31 91 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_022.v common 22.97 vpr 65.80 MiB 0.02 7248 -1 -1 1 0.03 -1 -1 34164 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67380 32 32 460 375 1 303 86 17 17 289 -1 unnamed_device 27.6 MiB 1.47 1195 15773 6301 7922 1550 65.8 MiB 0.13 0.00 3.26728 -113.078 -3.26728 3.26728 1.00 0.000595147 0.000543777 0.0535545 0.0489442 50 3122 32 6.99608e+06 323745 902133. 3121.57 18.02 0.351619 0.307304 28642 213929 -1 2531 25 2554 2963 242607 55175 3.67066 3.67066 -139.252 -3.67066 0 0 1.08113e+06 3740.92 0.42 0.09 0.21 -1 -1 0.42 0.0334335 0.0297318 138 108 0 0 125 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_023.v common 5.76 vpr 64.58 MiB 0.02 6904 -1 -1 1 0.03 -1 -1 34148 -1 -1 15 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66132 26 32 198 186 1 125 73 17 17 289 -1 unnamed_device 26.2 MiB 0.86 451 10713 4272 4981 1460 64.6 MiB 0.06 0.00 2.1814 -63.0149 -2.1814 2.1814 0.92 0.000305108 0.000278901 0.0227336 0.0207699 36 1420 18 6.99608e+06 220735 648988. 2245.63 1.99 0.0939164 0.082134 26050 158493 -1 1048 17 644 737 61023 13975 2.41737 2.41737 -79.9603 -2.41737 0 0 828058. 2865.25 0.32 0.03 0.15 -1 -1 0.32 0.0126303 0.0112786 52 21 26 26 22 22 + fixed_k6_frac_2uripple_N8_22nm.xml mult_024.v common 8.40 vpr 65.18 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 33836 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 333 251 1 181 76 17 17 289 -1 unnamed_device 26.4 MiB 0.87 827 7596 3090 4285 221 65.2 MiB 0.06 0.00 3.28415 -110.154 -3.28415 3.28415 0.96 0.000447756 0.000407429 0.0248627 0.0226796 46 2961 35 6.99608e+06 176588 828058. 2865.25 4.34 0.158399 0.139303 28066 200906 -1 2129 24 1862 2868 316592 63826 3.89401 3.89401 -140.626 -3.89401 0 0 1.01997e+06 3529.29 0.39 0.10 0.18 -1 -1 0.39 0.0271049 0.0240541 75 -1 122 32 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_025.v common 4.98 vpr 64.50 MiB 0.02 6952 -1 -1 1 0.03 -1 -1 34020 -1 -1 8 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 32 32 199 182 1 119 72 17 17 289 -1 unnamed_device 26.0 MiB 0.30 744 9608 3037 4927 1644 64.5 MiB 0.06 0.00 1.68521 -70.7407 -1.68521 1.68521 0.97 0.000332856 0.000304521 0.0231134 0.0212159 34 1608 30 6.99608e+06 117725 618332. 2139.56 1.63 0.0998183 0.0872367 25762 151098 -1 1435 18 649 835 85654 16707 1.92118 1.92118 -87.9035 -1.92118 0 0 787024. 2723.27 0.31 0.04 0.15 -1 -1 0.31 0.0143588 0.0127713 44 -1 53 32 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_026.v common 7.69 vpr 65.62 MiB 0.02 7200 -1 -1 1 0.03 -1 -1 34204 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67192 32 32 376 288 1 218 81 17 17 289 -1 unnamed_device 26.9 MiB 1.43 804 11981 4982 6472 527 65.6 MiB 0.10 0.00 3.29675 -118.435 -3.29675 3.29675 0.95 0.000523363 0.000478272 0.0394552 0.0360979 46 3128 34 6.99608e+06 250167 828058. 2865.25 3.00 0.157162 0.13799 28066 200906 -1 2116 22 2155 3065 234785 52251 4.20072 4.20072 -152.661 -4.20072 0 0 1.01997e+06 3529.29 0.38 0.08 0.20 -1 -1 0.38 0.0261324 0.0231609 95 21 96 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_027.v common 6.05 vpr 65.11 MiB 0.02 7072 -1 -1 1 0.03 -1 -1 33816 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 337 253 1 188 92 17 17 289 -1 unnamed_device 26.5 MiB 0.26 1009 10028 2588 6723 717 65.1 MiB 0.08 0.00 2.43175 -97.1259 -2.43175 2.43175 0.97 0.000514258 0.000469978 0.0272556 0.0249369 36 2728 44 6.99608e+06 412039 648988. 2245.63 2.61 0.146502 0.128351 26050 158493 -1 2275 23 1765 2546 340304 102413 2.96052 2.96052 -125.673 -2.96052 0 0 828058. 2865.25 0.32 0.12 0.15 -1 -1 0.32 0.027715 0.0246802 87 -1 124 32 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_028.v common 6.90 vpr 65.77 MiB 0.02 7108 -1 -1 1 0.03 -1 -1 34212 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67344 32 32 407 319 1 256 85 17 17 289 -1 unnamed_device 27.3 MiB 0.83 1309 12547 3240 8247 1060 65.8 MiB 0.10 0.00 3.14945 -120.96 -3.14945 3.14945 0.98 0.000562057 0.000511904 0.0402219 0.0367583 44 3636 25 6.99608e+06 309029 787024. 2723.27 2.73 0.183275 0.161858 27778 195446 -1 3006 24 2418 3436 275532 55986 3.97712 3.97712 -153.632 -3.97712 0 0 997811. 3452.63 0.40 0.10 0.18 -1 -1 0.40 0.0318731 0.0283029 115 54 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_029.v common 8.87 vpr 64.71 MiB 0.02 6928 -1 -1 1 0.03 -1 -1 33984 -1 -1 11 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 32 32 294 246 1 175 75 17 17 289 -1 unnamed_device 26.2 MiB 1.27 739 9555 3965 5340 250 64.7 MiB 0.07 0.00 2.4829 -86.6264 -2.4829 2.4829 0.95 0.000425045 0.00038738 0.0285157 0.02605 46 2110 42 6.99608e+06 161872 828058. 2865.25 4.42 0.189727 0.164321 28066 200906 -1 1604 21 1252 1793 137506 31523 2.86632 2.86632 -110.787 -2.86632 0 0 1.01997e+06 3529.29 0.38 0.06 0.20 -1 -1 0.38 0.0210209 0.0186449 72 31 54 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_030.v common 16.68 vpr 64.90 MiB 0.02 7144 -1 -1 1 0.03 -1 -1 33804 -1 -1 13 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 30 32 296 244 1 173 75 17 17 289 -1 unnamed_device 26.4 MiB 9.24 667 8291 3398 4446 447 64.9 MiB 0.06 0.00 2.93029 -96.4466 -2.93029 2.93029 0.98 0.00044257 0.000404108 0.0257637 0.0236259 52 2375 49 6.99608e+06 191304 926341. 3205.33 4.11 0.175974 0.153955 29218 227130 -1 1713 23 1822 2674 285430 71724 3.34171 3.34171 -124.088 -3.34171 0 0 1.14541e+06 3963.36 0.43 0.09 0.22 -1 -1 0.43 0.0229666 0.0203122 73 29 60 30 30 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_031.v common 8.59 vpr 64.95 MiB 0.02 6968 -1 -1 1 0.03 -1 -1 33776 -1 -1 15 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 28 32 278 232 1 163 75 17 17 289 -1 unnamed_device 26.5 MiB 1.29 868 7975 3224 4411 340 64.9 MiB 0.06 0.00 3.06475 -100.65 -3.06475 3.06475 0.95 0.000412042 0.000376572 0.0229416 0.0210198 36 2555 46 6.99608e+06 220735 648988. 2245.63 4.24 0.135846 0.118366 26050 158493 -1 2088 23 1437 2180 207153 40317 3.44616 3.44616 -126.478 -3.44616 0 0 828058. 2865.25 0.32 0.07 0.15 -1 -1 0.32 0.0212493 0.0187155 72 27 56 28 28 28 + fixed_k6_frac_2uripple_N8_22nm.xml mult_032.v common 15.94 vpr 64.89 MiB 0.02 7072 -1 -1 1 0.03 -1 -1 34008 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 283 225 1 160 74 17 17 289 -1 unnamed_device 26.5 MiB 0.18 703 7204 2556 3394 1254 64.9 MiB 0.06 0.00 2.36125 -93.3467 -2.36125 2.36125 0.95 0.000433789 0.000395852 0.0223575 0.0204362 48 1820 43 6.99608e+06 147157 865456. 2994.66 12.52 0.259512 0.224817 28354 207349 -1 1643 25 1489 2311 251951 73776 3.18722 3.18722 -123.917 -3.18722 0 0 1.05005e+06 3633.38 0.40 0.09 0.21 -1 -1 0.40 0.0242039 0.0213998 64 -1 96 32 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_033.v common 7.19 vpr 65.26 MiB 0.02 7108 -1 -1 1 0.03 -1 -1 33968 -1 -1 15 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 31 32 303 249 1 185 78 17 17 289 -1 unnamed_device 26.7 MiB 0.78 1030 10702 2936 6270 1496 65.3 MiB 0.08 0.00 2.44275 -95.3414 -2.44275 2.44275 0.99 0.000440201 0.000402923 0.030975 0.028337 40 2424 44 6.99608e+06 220735 706193. 2443.58 3.12 0.160583 0.141659 26914 176310 -1 2319 29 1735 2460 487597 207284 3.23012 3.23012 -127.032 -3.23012 0 0 926341. 3205.33 0.36 0.17 0.17 -1 -1 0.36 0.0292046 0.0258064 77 26 61 31 31 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_034.v common 11.02 vpr 65.25 MiB 0.02 7044 -1 -1 1 0.03 -1 -1 33784 -1 -1 16 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 29 32 312 264 1 197 77 17 17 289 -1 unnamed_device 26.9 MiB 3.47 906 11487 3878 5481 2128 65.3 MiB 0.08 0.00 2.36775 -85.1233 -2.36775 2.36775 0.98 0.000432911 0.00039403 0.0339437 0.0310652 36 2668 42 6.99608e+06 235451 648988. 2245.63 4.40 0.156493 0.137386 26050 158493 -1 2014 20 1489 1832 145574 31258 2.74732 2.74732 -106.43 -2.74732 0 0 828058. 2865.25 0.32 0.06 0.15 -1 -1 0.32 0.0216123 0.0191831 86 55 29 29 57 29 + fixed_k6_frac_2uripple_N8_22nm.xml mult_035.v common 10.35 vpr 65.82 MiB 0.02 7348 -1 -1 1 0.03 -1 -1 34088 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67400 32 32 423 310 1 243 84 17 17 289 -1 unnamed_device 27.3 MiB 1.13 1128 15822 6743 8694 385 65.8 MiB 0.14 0.00 3.13845 -117.572 -3.13845 3.13845 0.95 0.000573381 0.000522577 0.0542385 0.0494823 48 3472 48 6.99608e+06 294314 865456. 2994.66 5.83 0.284651 0.248814 28354 207349 -1 2751 21 2300 3656 362885 74537 4.41102 4.41102 -163.07 -4.41102 0 0 1.05005e+06 3633.38 0.41 0.11 0.21 -1 -1 0.41 0.0303746 0.0271731 106 26 128 32 27 27 + fixed_k6_frac_2uripple_N8_22nm.xml mult_036.v common 10.69 vpr 65.77 MiB 0.02 7136 -1 -1 1 0.03 -1 -1 34244 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67348 32 32 403 317 1 252 82 17 17 289 -1 unnamed_device 27.3 MiB 1.24 1118 10940 3664 5290 1986 65.8 MiB 0.10 0.00 3.45278 -122.09 -3.45278 3.45278 0.94 0.000545419 0.000492675 0.0369951 0.0338193 54 2919 40 6.99608e+06 264882 949917. 3286.91 6.09 0.274121 0.237951 29506 232905 -1 2474 21 2556 3453 357848 71063 4.23215 4.23215 -157.527 -4.23215 0 0 1.17392e+06 4061.99 0.43 0.10 0.23 -1 -1 0.43 0.0269702 0.0240006 110 62 62 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_037.v common 9.11 vpr 65.28 MiB 0.02 7076 -1 -1 1 0.03 -1 -1 34044 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 31 32 353 302 1 224 79 17 17 289 -1 unnamed_device 26.8 MiB 0.96 1123 9036 2302 5580 1154 65.3 MiB 0.07 0.00 2.93639 -106.191 -2.93639 2.93639 0.99 0.000462992 0.00041995 0.0288302 0.0263142 46 2371 29 6.99608e+06 235451 828058. 2865.25 4.86 0.18944 0.164273 28066 200906 -1 2088 20 1347 1374 160230 31346 3.21456 3.21456 -124.885 -3.21456 0 0 1.01997e+06 3529.29 0.40 0.06 0.20 -1 -1 0.40 0.0233173 0.0207084 99 77 0 0 89 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_038.v common 8.49 vpr 65.80 MiB 0.02 7440 -1 -1 1 0.03 -1 -1 33980 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67384 31 32 391 309 1 242 81 17 17 289 -1 unnamed_device 27.0 MiB 0.94 1109 9181 2496 6375 310 65.8 MiB 0.08 0.00 2.97859 -109.384 -2.97859 2.97859 0.95 0.000567874 0.000515826 0.0312612 0.0286161 46 2774 25 6.99608e+06 264882 828058. 2865.25 4.32 0.217535 0.188992 28066 200906 -1 2248 22 2122 2886 189657 41980 3.44186 3.44186 -136.23 -3.44186 0 0 1.01997e+06 3529.29 0.38 0.07 0.20 -1 -1 0.38 0.0264875 0.0235134 105 59 60 30 62 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_039.v common 7.40 vpr 65.67 MiB 0.02 7384 -1 -1 1 0.03 -1 -1 34028 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67244 31 32 455 371 1 302 86 17 17 289 -1 unnamed_device 27.5 MiB 1.18 1445 15584 6712 8404 468 65.7 MiB 0.13 0.00 3.77697 -130.506 -3.77697 3.77697 0.98 0.000565956 0.000514932 0.0517966 0.0471971 44 3693 29 6.99608e+06 338461 787024. 2723.27 2.85 0.213807 0.189235 27778 195446 -1 2796 24 2722 3118 278492 56313 4.80694 4.80694 -168.038 -4.80694 0 0 997811. 3452.63 0.40 0.10 0.19 -1 -1 0.40 0.0325252 0.028887 138 111 0 0 124 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_040.v common 10.30 vpr 65.90 MiB 0.02 7400 -1 -1 1 0.03 -1 -1 34052 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67484 31 32 413 333 1 258 82 17 17 289 -1 unnamed_device 27.4 MiB 3.50 1107 9338 2632 4729 1977 65.9 MiB 0.08 0.00 4.07463 -130.432 -4.07463 4.07463 0.99 0.000579775 0.000526537 0.031427 0.0287467 40 3751 28 6.99608e+06 279598 706193. 2443.58 3.52 0.172069 0.151008 26914 176310 -1 2855 20 2367 3023 295480 63174 5.04534 5.04534 -174.778 -5.04534 0 0 926341. 3205.33 0.35 0.09 0.17 -1 -1 0.35 0.0274528 0.0244794 117 86 31 31 89 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_041.v common 21.38 vpr 65.91 MiB 0.02 7256 -1 -1 1 0.03 -1 -1 33932 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67496 31 32 391 309 1 241 83 17 17 289 -1 unnamed_device 27.1 MiB 2.56 1043 14483 4328 7844 2311 65.9 MiB 0.11 0.00 2.94309 -105.652 -2.94309 2.94309 0.93 0.000476547 0.00043538 0.0433974 0.0395004 38 3805 41 6.99608e+06 294314 678818. 2348.85 15.64 0.331022 0.288497 26626 170182 -1 2597 28 2509 3390 347679 87376 3.72246 3.72246 -139.817 -3.72246 0 0 902133. 3121.57 0.34 0.12 0.15 -1 -1 0.34 0.0323788 0.0285376 107 58 60 31 62 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_042.v common 6.84 vpr 65.87 MiB 0.02 7380 -1 -1 1 0.03 -1 -1 33796 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67448 32 32 407 319 1 252 81 17 17 289 -1 unnamed_device 27.0 MiB 0.94 1124 7431 2784 3679 968 65.9 MiB 0.07 0.00 3.16045 -115.491 -3.16045 3.16045 0.95 0.000554256 0.000507438 0.0264533 0.0242014 44 3510 29 6.99608e+06 250167 787024. 2723.27 2.67 0.158036 0.138014 27778 195446 -1 2479 22 2190 2762 240268 49525 4.18242 4.18242 -155.52 -4.18242 0 0 997811. 3452.63 0.38 0.09 0.19 -1 -1 0.38 0.0278651 0.0247095 110 42 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_043.v common 10.54 vpr 66.03 MiB 0.02 7468 -1 -1 1 0.04 -1 -1 34280 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67612 32 32 496 380 1 313 86 17 17 289 -1 unnamed_device 27.7 MiB 2.34 1452 15962 6743 8843 376 66.0 MiB 0.15 0.00 3.89803 -142.283 -3.89803 3.89803 0.96 0.00065428 0.000596681 0.0588017 0.0536628 48 4131 26 6.99608e+06 323745 865456. 2994.66 4.75 0.22058 0.195021 28354 207349 -1 3274 22 3221 4462 412260 84149 5.0141 5.0141 -186.373 -5.0141 0 0 1.05005e+06 3633.38 0.39 0.12 0.20 -1 -1 0.39 0.0324095 0.0287837 139 91 62 32 96 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_044.v common 8.72 vpr 65.01 MiB 0.02 7204 -1 -1 1 0.03 -1 -1 33836 -1 -1 13 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 31 32 305 250 1 181 76 17 17 289 -1 unnamed_device 26.5 MiB 0.94 879 9836 3028 5712 1096 65.0 MiB 0.07 0.00 2.6383 -100.454 -2.6383 2.6383 0.99 0.00046807 0.000429812 0.0301448 0.0276058 40 2066 19 6.99608e+06 191304 706193. 2443.58 4.58 0.202214 0.175636 26914 176310 -1 1915 22 1583 1976 178447 36606 3.37847 3.37847 -130.979 -3.37847 0 0 926341. 3205.33 0.35 0.07 0.17 -1 -1 0.35 0.022308 0.0197784 75 24 62 31 31 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_045.v common 9.56 vpr 65.41 MiB 0.02 7296 -1 -1 1 0.03 -1 -1 34116 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66980 31 32 395 311 1 243 81 17 17 289 -1 unnamed_device 26.6 MiB 0.77 1062 14606 6331 7793 482 65.4 MiB 0.12 0.00 3.52894 -121.939 -3.52894 3.52894 0.94 0.000533657 0.000487572 0.0476066 0.043417 48 3000 40 6.99608e+06 264882 865456. 2994.66 5.49 0.256717 0.223398 28354 207349 -1 2277 22 2236 2762 229282 49660 4.16591 4.16591 -153.742 -4.16591 0 0 1.05005e+06 3633.38 0.40 0.08 0.20 -1 -1 0.40 0.026854 0.0237833 106 59 62 31 62 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_046.v common 10.31 vpr 65.82 MiB 0.02 7208 -1 -1 1 0.03 -1 -1 33876 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67404 32 32 397 313 1 246 84 17 17 289 -1 unnamed_device 27.0 MiB 1.12 1350 16188 5852 8372 1964 65.8 MiB 0.13 0.00 3.04459 -115.214 -3.04459 3.04459 0.92 0.000531972 0.000484588 0.0511827 0.0467462 44 3755 41 6.99608e+06 294314 787024. 2723.27 5.98 0.321058 0.280654 27778 195446 -1 2840 23 1987 2837 243240 48839 3.80196 3.80196 -149.592 -3.80196 0 0 997811. 3452.63 0.39 0.09 0.19 -1 -1 0.39 0.0291111 0.0257525 108 54 62 32 62 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_047.v common 9.31 vpr 65.23 MiB 0.02 7172 -1 -1 1 0.03 -1 -1 33608 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66792 32 32 345 257 1 186 77 17 17 289 -1 unnamed_device 26.7 MiB 0.85 772 11813 5005 6472 336 65.2 MiB 0.09 0.00 2.92079 -109.375 -2.92079 2.92079 0.94 0.000472339 0.000425537 0.0371498 0.0338097 46 2840 24 6.99608e+06 191304 828058. 2865.25 5.26 0.210215 0.183163 28066 200906 -1 2294 25 2072 3489 324876 67948 4.17136 4.17136 -154.405 -4.17136 0 0 1.01997e+06 3529.29 0.39 0.10 0.18 -1 -1 0.39 0.0271418 0.0239619 77 -1 128 32 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_048.v common 7.99 vpr 66.00 MiB 0.02 7456 -1 -1 1 0.03 -1 -1 34156 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67580 32 32 424 343 1 266 83 17 17 289 -1 unnamed_device 27.4 MiB 1.54 1065 15023 3712 10419 892 66.0 MiB 0.12 0.00 2.95404 -109.632 -2.95404 2.95404 0.95 0.00055121 0.000502744 0.049664 0.045369 46 3043 30 6.99608e+06 279598 828058. 2865.25 3.16 0.185148 0.162418 28066 200906 -1 2322 21 2063 2388 184478 43183 3.48281 3.48281 -138.686 -3.48281 0 0 1.01997e+06 3529.29 0.39 0.08 0.19 -1 -1 0.39 0.0274327 0.024333 120 81 25 25 96 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_049.v common 19.51 vpr 65.70 MiB 0.02 7208 -1 -1 1 0.03 -1 -1 33860 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67276 32 32 395 311 1 242 84 17 17 289 -1 unnamed_device 26.9 MiB 1.06 992 12345 3441 7104 1800 65.7 MiB 0.11 0.00 2.95229 -106.433 -2.95229 2.95229 0.97 0.000554129 0.00050485 0.0403099 0.0367977 46 3153 41 6.99608e+06 294314 828058. 2865.25 15.13 0.357827 0.311526 28066 200906 -1 2295 23 2114 2826 239045 53601 3.71576 3.71576 -138.338 -3.71576 0 0 1.01997e+06 3529.29 0.38 0.09 0.20 -1 -1 0.38 0.0286921 0.0253995 106 58 64 32 60 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_050.v common 9.41 vpr 65.74 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 34172 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67320 32 32 405 318 1 253 81 17 17 289 -1 unnamed_device 27.2 MiB 0.83 1173 15306 5710 7465 2131 65.7 MiB 0.13 0.00 2.95409 -111.852 -2.95409 2.95409 0.97 0.0005613 0.000509259 0.0529022 0.048352 48 3117 25 6.99608e+06 250167 865456. 2994.66 5.21 0.267126 0.233272 28354 207349 -1 2562 22 1970 2558 229439 48575 3.48286 3.48286 -136.428 -3.48286 0 0 1.05005e+06 3633.38 0.40 0.08 0.20 -1 -1 0.40 0.0280318 0.0249213 108 61 63 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_051.v common 11.30 vpr 65.46 MiB 0.02 7348 -1 -1 1 0.03 -1 -1 33924 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67028 32 32 376 288 1 218 80 17 17 289 -1 unnamed_device 26.8 MiB 1.06 830 13324 4116 6747 2461 65.5 MiB 0.10 0.00 3.16045 -112.736 -3.16045 3.16045 0.98 0.000557314 0.000511915 0.0445364 0.0408258 66 1922 25 6.99608e+06 235451 1.11570e+06 3860.55 6.66 0.251141 0.219155 31810 283733 -1 1549 22 1708 2491 165989 38787 3.68922 3.68922 -134.371 -3.68922 0 0 1.39736e+06 4835.16 0.54 0.07 0.30 -1 -1 0.54 0.0272696 0.0242436 94 21 96 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_052.v common 7.11 vpr 65.59 MiB 0.02 7384 -1 -1 1 0.03 -1 -1 34016 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67164 32 32 407 319 1 251 82 17 17 289 -1 unnamed_device 26.7 MiB 1.01 934 14856 6254 8148 454 65.6 MiB 0.12 0.00 3.17145 -114.606 -3.17145 3.17145 0.95 0.000558083 0.000508499 0.0485512 0.0443461 44 3650 34 6.99608e+06 264882 787024. 2723.27 2.81 0.169073 0.148933 27778 195446 -1 2222 24 2245 2617 242039 50967 4.12442 4.12442 -152.47 -4.12442 0 0 997811. 3452.63 0.38 0.09 0.19 -1 -1 0.38 0.0291299 0.0258467 110 50 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_053.v common 8.88 vpr 65.59 MiB 0.02 7400 -1 -1 1 0.03 -1 -1 34060 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67168 31 32 449 367 1 290 85 17 17 289 -1 unnamed_device 27.4 MiB 1.68 1418 16453 6068 8017 2368 65.6 MiB 0.14 0.00 3.27348 -116.042 -3.27348 3.27348 0.98 0.000571269 0.000520608 0.0542714 0.0494324 46 3544 32 6.99608e+06 323745 828058. 2865.25 3.83 0.204055 0.179618 28066 200906 -1 2809 21 2365 2823 236961 48743 3.85405 3.85405 -145.496 -3.85405 0 0 1.01997e+06 3529.29 0.38 0.08 0.20 -1 -1 0.38 0.0295557 0.0262512 132 110 0 0 122 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_054.v common 8.10 vpr 65.37 MiB 0.02 7424 -1 -1 1 0.03 -1 -1 33868 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 32 32 432 346 1 281 84 17 17 289 -1 unnamed_device 27.0 MiB 1.06 1448 16005 6966 8629 410 65.4 MiB 0.12 0.00 3.10545 -116.608 -3.10545 3.10545 0.90 0.000539891 0.000491631 0.0507427 0.0462319 46 3722 23 6.99608e+06 294314 828058. 2865.25 3.86 0.185984 0.163272 28066 200906 -1 2940 23 2895 4067 297238 60758 4.13242 4.13242 -154.873 -4.13242 0 0 1.01997e+06 3529.29 0.37 0.09 0.18 -1 -1 0.37 0.0283359 0.0251787 126 86 32 32 94 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_055.v common 7.23 vpr 65.08 MiB 0.02 6984 -1 -1 1 0.03 -1 -1 34152 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 312 255 1 191 78 17 17 289 -1 unnamed_device 26.6 MiB 0.59 726 10038 4152 5457 429 65.1 MiB 0.07 0.00 2.59005 -94.7203 -2.59005 2.59005 0.99 0.000455872 0.000415155 0.0301174 0.0275431 50 2408 50 6.99608e+06 206020 902133. 3121.57 3.28 0.161306 0.141506 28642 213929 -1 1789 21 1448 1980 192642 48239 3.88592 3.88592 -123.55 -3.88592 0 0 1.08113e+06 3740.92 0.44 0.07 0.21 -1 -1 0.44 0.0221302 0.0196577 80 20 63 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_056.v common 6.90 vpr 65.62 MiB 0.02 7272 -1 -1 1 0.03 -1 -1 33456 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67200 32 32 370 314 1 244 80 17 17 289 -1 unnamed_device 26.9 MiB 1.01 950 11088 4570 6215 303 65.6 MiB 0.09 0.00 3.05483 -109.328 -3.05483 3.05483 0.97 0.000516421 0.000470324 0.036183 0.0330584 50 2651 29 6.99608e+06 235451 902133. 3121.57 2.53 0.153701 0.134618 28642 213929 -1 2128 22 2181 2575 279922 60198 4.27496 4.27496 -144.11 -4.27496 0 0 1.08113e+06 3740.92 0.43 0.09 0.21 -1 -1 0.43 0.0269449 0.0240374 108 91 0 0 94 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_057.v common 8.32 vpr 65.83 MiB 0.02 7268 -1 -1 1 0.04 -1 -1 33764 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67408 32 32 469 351 1 285 84 17 17 289 -1 unnamed_device 27.6 MiB 0.97 1284 16188 6452 8041 1695 65.8 MiB 0.15 0.00 3.74199 -133.921 -3.74199 3.74199 0.95 0.000625242 0.000568306 0.0589357 0.0537622 48 4089 44 6.99608e+06 294314 865456. 2994.66 3.93 0.22573 0.198411 28354 207349 -1 3078 23 2825 3937 431449 85452 5.26516 5.26516 -191.009 -5.26516 0 0 1.05005e+06 3633.38 0.40 0.12 0.20 -1 -1 0.40 0.0320006 0.0284879 126 53 96 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_058.v common 9.01 vpr 65.34 MiB 0.02 7208 -1 -1 1 0.03 -1 -1 34096 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66912 32 32 368 284 1 217 80 17 17 289 -1 unnamed_device 26.6 MiB 0.68 1108 11776 3889 6161 1726 65.3 MiB 0.10 0.00 2.95409 -117.473 -2.95409 2.95409 0.94 0.000469551 0.000428548 0.0374245 0.0341661 46 2666 34 6.99608e+06 235451 828058. 2865.25 5.13 0.244773 0.214007 28066 200906 -1 2224 25 1911 2478 215756 41871 3.47486 3.47486 -141.153 -3.47486 0 0 1.01997e+06 3529.29 0.39 0.08 0.18 -1 -1 0.39 0.0276528 0.0244299 93 31 92 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_059.v common 6.34 vpr 65.22 MiB 0.02 6988 -1 -1 1 0.03 -1 -1 33792 -1 -1 24 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66788 30 32 296 244 1 177 86 17 17 289 -1 unnamed_device 26.7 MiB 0.75 774 13316 4444 6621 2251 65.2 MiB 0.09 0.00 3.12594 -100.704 -3.12594 3.12594 0.95 0.000429442 0.000392778 0.0330347 0.0302445 46 2023 31 6.99608e+06 353176 828058. 2865.25 2.39 0.13826 0.121093 28066 200906 -1 1661 20 1377 2018 146678 32190 3.40406 3.40406 -121.692 -3.40406 0 0 1.01997e+06 3529.29 0.39 0.06 0.20 -1 -1 0.39 0.0203021 0.0180413 80 29 60 30 30 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_060.v common 10.83 vpr 66.15 MiB 0.02 7524 -1 -1 1 0.04 -1 -1 34572 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67740 32 32 531 413 1 346 88 17 17 289 -1 unnamed_device 27.8 MiB 0.99 1552 15688 6518 8729 441 66.2 MiB 0.15 0.00 4.34757 -151.154 -4.34757 4.34757 0.96 0.000679083 0.000608732 0.0584963 0.0532942 56 3479 27 6.99608e+06 353176 973134. 3367.25 6.23 0.299114 0.262014 29794 239141 -1 3161 23 3557 4373 445926 86737 5.47164 5.47164 -194.321 -5.47164 0 0 1.19926e+06 4149.71 0.48 0.13 0.24 -1 -1 0.48 0.0363698 0.0324827 159 109 32 32 128 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_061.v common 6.76 vpr 65.53 MiB 0.02 7076 -1 -1 1 0.03 -1 -1 33856 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67100 32 32 376 288 1 217 80 17 17 289 -1 unnamed_device 26.8 MiB 0.84 870 15388 6654 8216 518 65.5 MiB 0.12 0.00 3.52464 -127.05 -3.52464 3.52464 0.95 0.000546089 0.000501445 0.0503697 0.0460945 48 2808 50 6.99608e+06 235451 865456. 2994.66 2.58 0.190425 0.167248 28354 207349 -1 2174 21 2209 2892 242069 53660 4.54661 4.54661 -166.974 -4.54661 0 0 1.05005e+06 3633.38 0.42 0.09 0.21 -1 -1 0.42 0.027375 0.0243621 92 31 96 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_062.v common 7.00 vpr 64.97 MiB 0.02 6804 -1 -1 1 0.03 -1 -1 33996 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66532 32 32 283 225 1 158 88 17 17 289 -1 unnamed_device 26.5 MiB 0.26 753 14128 5676 7314 1138 65.0 MiB 0.10 0.00 2.48655 -95.2101 -2.48655 2.48655 0.97 0.000446496 0.000406148 0.0342187 0.0312444 40 2329 45 6.99608e+06 353176 706193. 2443.58 3.55 0.15539 0.136845 26914 176310 -1 1819 23 1637 2564 252308 50029 3.01532 3.01532 -122.321 -3.01532 0 0 926341. 3205.33 0.34 0.08 0.17 -1 -1 0.34 0.0228501 0.0202051 70 -1 96 32 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_063.v common 8.05 vpr 65.97 MiB 0.02 7272 -1 -1 1 0.03 -1 -1 34188 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67552 32 32 438 320 1 256 82 17 17 289 -1 unnamed_device 27.3 MiB 0.84 1095 11118 4566 6150 402 66.0 MiB 0.10 0.00 3.75729 -131.986 -3.75729 3.75729 0.96 0.000588081 0.000536224 0.0400615 0.0365484 56 3208 45 6.99608e+06 264882 973134. 3367.25 3.77 0.200768 0.175813 29794 239141 -1 2684 20 2626 3713 374118 78171 4.77491 4.77491 -176.317 -4.77491 0 0 1.19926e+06 4149.71 0.45 0.11 0.24 -1 -1 0.45 0.0286286 0.0255024 112 26 128 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_064.v common 6.10 vpr 65.03 MiB 0.02 6988 -1 -1 1 0.03 -1 -1 33656 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 32 32 283 225 1 156 74 17 17 289 -1 unnamed_device 26.6 MiB 0.30 856 10149 3696 4751 1702 65.0 MiB 0.08 0.00 2.35025 -99.5999 -2.35025 2.35025 0.98 0.000430068 0.000391839 0.0305909 0.0280261 38 2259 29 6.99608e+06 147157 678818. 2348.85 2.62 0.136632 0.119894 26626 170182 -1 2015 25 1706 2540 250968 47245 3.36122 3.36122 -136.243 -3.36122 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.0243174 0.0215521 62 -1 96 32 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_065.v common 9.51 vpr 65.07 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 34068 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 30 32 296 244 1 179 77 17 17 289 -1 unnamed_device 26.5 MiB 0.82 730 11161 4679 6120 362 65.1 MiB 0.08 0.00 2.68144 -95.7735 -2.68144 2.68144 0.96 0.000390706 0.000354887 0.0310084 0.0282358 38 2573 48 6.99608e+06 220735 678818. 2348.85 5.59 0.159772 0.140604 26626 170182 -1 2047 21 1704 2237 219905 47174 3.45281 3.45281 -130.385 -3.45281 0 0 902133. 3121.57 0.34 0.07 0.15 -1 -1 0.34 0.0208382 0.0184764 74 29 60 30 30 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_066.v common 8.75 vpr 65.91 MiB 0.02 7496 -1 -1 1 0.03 -1 -1 33860 -1 -1 20 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67496 29 32 393 319 1 245 81 17 17 289 -1 unnamed_device 27.3 MiB 2.00 1071 16706 7460 8415 831 65.9 MiB 0.13 0.00 3.15813 -103.405 -3.15813 3.15813 0.96 0.000524902 0.000477541 0.0533141 0.0487294 48 3124 38 6.99608e+06 294314 865456. 2994.66 3.43 0.191141 0.167814 28354 207349 -1 2439 21 2010 2654 254065 53999 3.6667 3.6667 -132.26 -3.6667 0 0 1.05005e+06 3633.38 0.39 0.08 0.20 -1 -1 0.39 0.0256686 0.0227867 113 81 29 29 85 29 + fixed_k6_frac_2uripple_N8_22nm.xml mult_067.v common 15.09 vpr 65.89 MiB 0.02 7280 -1 -1 1 0.03 -1 -1 34184 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67476 32 32 407 319 1 249 82 17 17 289 -1 unnamed_device 27.1 MiB 1.09 1132 12720 4435 6473 1812 65.9 MiB 0.10 0.00 3.67014 -135.676 -3.67014 3.67014 0.97 0.00056766 0.000518855 0.0432449 0.0395577 40 3180 26 6.99608e+06 264882 706193. 2443.58 10.70 0.32762 0.285682 26914 176310 -1 2696 23 2729 3675 406292 85566 4.95981 4.95981 -180.376 -4.95981 0 0 926341. 3205.33 0.36 0.12 0.18 -1 -1 0.36 0.0302432 0.0268969 109 53 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_068.v common 10.57 vpr 65.76 MiB 0.02 7136 -1 -1 1 0.03 -1 -1 34008 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67336 32 32 407 319 1 249 82 17 17 289 -1 unnamed_device 26.9 MiB 1.12 1263 14678 5351 7233 2094 65.8 MiB 0.12 0.00 3.53384 -132.271 -3.53384 3.53384 0.97 0.000553291 0.000504523 0.0487444 0.0445302 50 3079 23 6.99608e+06 264882 902133. 3121.57 6.04 0.282174 0.247587 28642 213929 -1 2717 23 2571 3502 324780 62261 4.51661 4.51661 -170.637 -4.51661 0 0 1.08113e+06 3740.92 0.43 0.10 0.20 -1 -1 0.43 0.0308622 0.027455 110 55 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_069.v common 8.33 vpr 65.67 MiB 0.02 7284 -1 -1 1 0.03 -1 -1 33672 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67248 32 32 345 287 1 212 79 17 17 289 -1 unnamed_device 27.0 MiB 0.78 889 12247 5089 6899 259 65.7 MiB 0.09 0.00 2.70344 -101.505 -2.70344 2.70344 0.95 0.000482879 0.00044048 0.0373277 0.0340847 44 2363 28 6.99608e+06 220735 787024. 2723.27 4.33 0.205076 0.178252 27778 195446 -1 1769 23 1836 2062 156593 33732 3.22421 3.22421 -130.202 -3.22421 0 0 997811. 3452.63 0.38 0.07 0.19 -1 -1 0.38 0.0244634 0.021606 92 55 32 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_070.v common 18.77 vpr 65.57 MiB 0.02 7356 -1 -1 1 0.03 -1 -1 34092 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67140 31 32 353 302 1 230 80 17 17 289 -1 unnamed_device 27.1 MiB 2.92 925 11432 3428 5862 2142 65.6 MiB 0.09 0.00 2.64844 -93.7923 -2.64844 2.64844 0.98 0.000499896 0.000456905 0.0355114 0.0325042 40 2880 27 6.99608e+06 250167 706193. 2443.58 12.61 0.252335 0.219363 26914 176310 -1 2313 21 1972 2431 256196 55693 3.55882 3.55882 -134.006 -3.55882 0 0 926341. 3205.33 0.36 0.08 0.17 -1 -1 0.36 0.0238974 0.0211975 102 82 0 0 89 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_071.v common 8.69 vpr 65.49 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 34052 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67060 30 32 374 297 1 226 81 17 17 289 -1 unnamed_device 26.8 MiB 1.30 957 12331 5125 6712 494 65.5 MiB 0.09 0.00 2.77544 -95.1224 -2.77544 2.77544 0.94 0.000533647 0.000485297 0.037904 0.0345613 40 3136 40 6.99608e+06 279598 706193. 2443.58 4.25 0.182531 0.160391 26914 176310 -1 2333 22 2091 3009 277734 60197 3.47252 3.47252 -129.356 -3.47252 0 0 926341. 3205.33 0.35 0.09 0.16 -1 -1 0.35 0.0262355 0.0233408 101 52 60 30 57 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_072.v common 7.55 vpr 65.67 MiB 0.02 7064 -1 -1 1 0.03 -1 -1 33816 -1 -1 18 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67244 28 32 332 260 1 197 78 17 17 289 -1 unnamed_device 26.8 MiB 0.75 759 10370 4289 5483 598 65.7 MiB 0.08 0.00 3.10545 -99.3534 -3.10545 3.10545 0.95 0.000486748 0.000443631 0.0329099 0.0300614 40 2584 34 6.99608e+06 264882 706193. 2443.58 3.64 0.156567 0.137286 26914 176310 -1 2136 21 1835 2675 227564 50672 4.13542 4.13542 -138.895 -4.13542 0 0 926341. 3205.33 0.36 0.08 0.17 -1 -1 0.36 0.023481 0.0208277 87 20 84 28 28 28 + fixed_k6_frac_2uripple_N8_22nm.xml mult_073.v common 11.38 vpr 65.36 MiB 0.02 7040 -1 -1 1 0.03 -1 -1 33844 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66932 30 32 325 273 1 204 77 17 17 289 -1 unnamed_device 26.8 MiB 2.12 840 11324 4893 5954 477 65.4 MiB 0.08 0.00 3.76754 -121.829 -3.76754 3.76754 0.93 0.000459103 0.000419408 0.0342357 0.0313335 52 2682 40 6.99608e+06 220735 926341. 3205.33 6.02 0.224723 0.194905 29218 227130 -1 1878 19 1474 1986 162314 37165 3.92041 3.92041 -141.212 -3.92041 0 0 1.14541e+06 3963.36 0.43 0.06 0.22 -1 -1 0.43 0.0206246 0.0183853 88 58 30 30 60 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_074.v common 20.80 vpr 65.74 MiB 0.02 7288 -1 -1 1 0.03 -1 -1 33668 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67320 32 32 361 308 1 241 79 17 17 289 -1 unnamed_device 27.0 MiB 3.28 1278 12078 4354 6074 1650 65.7 MiB 0.10 0.00 2.96539 -111.067 -2.96539 2.96539 0.96 0.00050177 0.000455254 0.0392038 0.0357942 40 3144 27 6.99608e+06 220735 706193. 2443.58 14.30 0.274323 0.238923 26914 176310 -1 2818 21 2064 2511 274871 53563 3.62646 3.62646 -143.108 -3.62646 0 0 926341. 3205.33 0.36 0.09 0.17 -1 -1 0.36 0.0250019 0.0222836 104 88 0 0 91 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_075.v common 6.29 vpr 65.19 MiB 0.02 7308 -1 -1 1 0.03 -1 -1 34060 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 31 32 335 251 1 188 88 17 17 289 -1 unnamed_device 26.7 MiB 0.14 877 14908 5534 7362 2012 65.2 MiB 0.11 0.00 3.14275 -111.982 -3.14275 3.14275 0.93 0.000490261 0.000450216 0.0382794 0.0348819 44 2860 33 6.99608e+06 367892 787024. 2723.27 2.95 0.140358 0.123545 27778 195446 -1 2122 20 1868 2958 280716 59805 3.91782 3.91782 -145.726 -3.91782 0 0 997811. 3452.63 0.38 0.09 0.18 -1 -1 0.38 0.0230335 0.0204701 86 -1 124 31 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_076.v common 6.90 vpr 65.85 MiB 0.02 7360 -1 -1 1 0.03 -1 -1 34076 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67428 32 32 407 319 1 249 81 17 17 289 -1 unnamed_device 27.3 MiB 0.82 1333 8306 2071 5479 756 65.8 MiB 0.08 0.00 3.42564 -130.225 -3.42564 3.42564 0.95 0.000564497 0.000515255 0.0296679 0.0272067 44 3782 28 6.99608e+06 250167 787024. 2723.27 2.77 0.14476 0.127499 27778 195446 -1 2872 25 2431 3221 314069 59402 4.33031 4.33031 -166.32 -4.33031 0 0 997811. 3452.63 0.39 0.10 0.19 -1 -1 0.39 0.030991 0.02752 110 57 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_077.v common 10.05 vpr 65.37 MiB 0.02 7268 -1 -1 1 0.03 -1 -1 34080 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 32 32 407 319 1 248 82 17 17 289 -1 unnamed_device 26.9 MiB 0.70 1088 12898 5367 7230 301 65.4 MiB 0.11 0.00 4.10648 -138.929 -4.10648 4.10648 0.98 0.000569696 0.000518987 0.043639 0.0398267 46 3432 42 6.99608e+06 264882 828058. 2865.25 5.98 0.26969 0.235313 28066 200906 -1 2735 22 2373 3223 301547 61613 4.92499 4.92499 -185.183 -4.92499 0 0 1.01997e+06 3529.29 0.40 0.10 0.19 -1 -1 0.40 0.0290076 0.0257518 108 62 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_078.v common 9.51 vpr 65.93 MiB 0.02 7196 -1 -1 1 0.03 -1 -1 33816 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67512 32 32 399 315 1 250 82 17 17 289 -1 unnamed_device 27.1 MiB 0.73 1128 13966 4911 6415 2640 65.9 MiB 0.12 0.00 3.36648 -118.966 -3.36648 3.36648 0.95 0.000533169 0.000485665 0.045681 0.0417183 48 3377 31 6.99608e+06 264882 865456. 2994.66 5.44 0.234229 0.203627 28354 207349 -1 2800 23 2263 3204 294539 60766 4.02055 4.02055 -149.262 -4.02055 0 0 1.05005e+06 3633.38 0.40 0.09 0.20 -1 -1 0.40 0.0281386 0.0249245 107 62 60 30 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_079.v common 6.86 vpr 64.93 MiB 0.02 7020 -1 -1 1 0.03 -1 -1 33612 -1 -1 13 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 30 32 296 244 1 179 75 17 17 289 -1 unnamed_device 26.4 MiB 0.91 660 12557 5325 6774 458 64.9 MiB 0.09 0.00 3.04639 -105.015 -3.04639 3.04639 0.95 0.000427568 0.000389632 0.0367142 0.0335949 38 2898 42 6.99608e+06 191304 678818. 2348.85 2.83 0.13357 0.117428 26626 170182 -1 2057 22 1700 2314 214621 47360 4.06836 4.06836 -137.308 -4.06836 0 0 902133. 3121.57 0.33 0.07 0.16 -1 -1 0.33 0.0215007 0.0190321 76 29 60 30 30 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_080.v common 8.30 vpr 65.75 MiB 0.02 7204 -1 -1 1 0.03 -1 -1 33728 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67328 30 32 383 303 1 237 80 17 17 289 -1 unnamed_device 26.9 MiB 2.73 1089 15904 5541 8367 1996 65.8 MiB 0.13 0.00 3.93533 -134.024 -3.93533 3.93533 0.98 0.000545416 0.000496274 0.0531301 0.0485993 46 3085 33 6.99608e+06 264882 828058. 2865.25 2.22 0.163384 0.144394 28066 200906 -1 2421 23 2608 3745 274167 57753 4.47984 4.47984 -160.965 -4.47984 0 0 1.01997e+06 3529.29 0.38 0.09 0.20 -1 -1 0.38 0.0273478 0.0243004 105 58 60 30 60 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_081.v common 6.89 vpr 65.82 MiB 0.02 7272 -1 -1 1 0.04 -1 -1 33992 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67404 32 32 469 381 1 309 86 17 17 289 -1 unnamed_device 27.6 MiB 0.87 1370 13316 4446 6199 2671 65.8 MiB 0.11 0.00 3.42564 -123.628 -3.42564 3.42564 0.95 0.000629022 0.000571965 0.0454311 0.041443 44 3805 29 6.99608e+06 323745 787024. 2723.27 2.70 0.169876 0.149389 27778 195446 -1 2807 21 2354 2407 229188 46065 4.5809 4.5809 -164.819 -4.5809 0 0 997811. 3452.63 0.40 0.09 0.19 -1 -1 0.40 0.0307073 0.0274248 139 106 0 0 128 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_082.v common 7.75 vpr 65.37 MiB 0.02 7256 -1 -1 1 0.03 -1 -1 33876 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66936 31 32 425 341 1 275 85 17 17 289 -1 unnamed_device 27.1 MiB 1.66 1139 12919 5335 7168 416 65.4 MiB 0.11 0.00 3.52904 -123.427 -3.52904 3.52904 0.99 0.000573259 0.00052241 0.0434249 0.039532 46 3131 24 6.99608e+06 323745 828058. 2865.25 2.73 0.187392 0.165712 28066 200906 -1 2324 23 2140 2571 200213 42332 4.14391 4.14391 -151.174 -4.14391 0 0 1.01997e+06 3529.29 0.40 0.08 0.19 -1 -1 0.40 0.0312541 0.0278115 125 79 31 31 93 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_083.v common 24.84 vpr 65.90 MiB 0.02 7380 -1 -1 1 0.03 -1 -1 34076 -1 -1 22 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67484 30 32 404 328 1 249 84 17 17 289 -1 unnamed_device 27.4 MiB 3.26 975 15273 6453 8066 754 65.9 MiB 0.13 0.00 3.35858 -106.582 -3.35858 3.35858 0.97 0.000576211 0.000526954 0.0495216 0.0452111 48 3349 38 6.99608e+06 323745 865456. 2994.66 18.16 0.361762 0.315394 28354 207349 -1 2466 30 2797 3975 423714 117031 4.1869 4.1869 -153.004 -4.1869 0 0 1.05005e+06 3633.38 0.41 0.14 0.20 -1 -1 0.41 0.0356857 0.0315426 114 83 26 26 90 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_084.v common 9.29 vpr 65.91 MiB 0.02 7268 -1 -1 1 0.03 -1 -1 34016 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67496 32 32 407 319 1 252 82 17 17 289 -1 unnamed_device 27.1 MiB 1.04 1039 15568 6650 8446 472 65.9 MiB 0.12 0.00 3.54484 -125.458 -3.54484 3.54484 0.97 0.000527744 0.000479529 0.0490687 0.0447023 48 3000 48 6.99608e+06 264882 865456. 2994.66 4.93 0.210959 0.185741 28354 207349 -1 2327 21 2508 3381 318062 70702 4.55901 4.55901 -164.009 -4.55901 0 0 1.05005e+06 3633.38 0.41 0.10 0.19 -1 -1 0.41 0.0278226 0.024822 110 58 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_085.v common 8.09 vpr 65.69 MiB 0.02 7512 -1 -1 1 0.03 -1 -1 34108 -1 -1 20 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67268 29 32 387 316 1 240 81 17 17 289 -1 unnamed_device 27.2 MiB 2.04 1011 12156 5017 6435 704 65.7 MiB 0.10 0.00 2.90529 -95.045 -2.90529 2.90529 0.95 0.000516389 0.000470691 0.0391213 0.0357485 48 2836 26 6.99608e+06 294314 865456. 2994.66 2.77 0.163096 0.143025 28354 207349 -1 2067 22 2094 2739 219638 52039 3.55311 3.55311 -125.494 -3.55311 0 0 1.05005e+06 3633.38 0.40 0.08 0.20 -1 -1 0.40 0.0267829 0.0237467 112 81 26 26 85 29 + fixed_k6_frac_2uripple_N8_22nm.xml mult_086.v common 8.47 vpr 64.70 MiB 0.02 6980 -1 -1 1 0.03 -1 -1 33576 -1 -1 10 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66256 32 32 283 225 1 155 74 17 17 289 -1 unnamed_device 26.3 MiB 0.78 706 9994 4217 5633 144 64.7 MiB 0.08 0.00 2.36125 -95.0479 -2.36125 2.36125 0.96 0.000425086 0.000387576 0.0308207 0.0282645 44 2114 24 6.99608e+06 147157 787024. 2723.27 4.49 0.181178 0.158329 27778 195446 -1 1792 19 1406 2196 202661 39785 3.06662 3.06662 -123.049 -3.06662 0 0 997811. 3452.63 0.38 0.07 0.19 -1 -1 0.38 0.0198042 0.0176578 62 -1 96 32 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_087.v common 9.81 vpr 65.77 MiB 0.02 7140 -1 -1 1 0.03 -1 -1 33608 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67352 32 32 407 319 1 251 82 17 17 289 -1 unnamed_device 27.3 MiB 0.74 1209 9872 3148 4640 2084 65.8 MiB 0.09 0.00 4.01233 -144.491 -4.01233 4.01233 0.95 0.000581917 0.000529745 0.0346484 0.0316577 48 3358 28 6.99608e+06 264882 865456. 2994.66 5.74 0.263993 0.230264 28354 207349 -1 2807 21 2775 3788 382669 76587 5.29584 5.29584 -190.405 -5.29584 0 0 1.05005e+06 3633.38 0.39 0.11 0.21 -1 -1 0.39 0.0276676 0.0246633 110 62 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_088.v common 9.93 vpr 65.84 MiB 0.02 7248 -1 -1 1 0.03 -1 -1 33992 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67416 32 32 407 319 1 255 81 17 17 289 -1 unnamed_device 27.3 MiB 0.89 1101 13731 4149 7828 1754 65.8 MiB 0.11 0.00 3.76167 -136.697 -3.76167 3.76167 0.94 0.000572247 0.000518121 0.044447 0.0404392 44 4167 45 6.99608e+06 250167 787024. 2723.27 5.78 0.300338 0.261762 27778 195446 -1 2790 22 2877 3885 326372 68848 5.04524 5.04524 -186.487 -5.04524 0 0 997811. 3452.63 0.39 0.10 0.18 -1 -1 0.39 0.0283588 0.0252612 111 62 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_089.v common 18.60 vpr 65.29 MiB 0.02 7224 -1 -1 1 0.03 -1 -1 34032 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66852 32 32 315 267 1 202 77 17 17 289 -1 unnamed_device 26.7 MiB 2.47 827 12302 5146 6841 315 65.3 MiB 0.09 0.00 2.55629 -90.2605 -2.55629 2.55629 0.96 0.000446928 0.000406721 0.036206 0.033084 40 2781 37 6.99608e+06 191304 706193. 2443.58 12.95 0.251232 0.217542 26914 176310 -1 2207 26 1890 2161 269286 78163 3.21466 3.21466 -124.419 -3.21466 0 0 926341. 3205.33 0.34 0.09 0.17 -1 -1 0.34 0.0253414 0.0223621 85 47 32 32 54 27 + fixed_k6_frac_2uripple_N8_22nm.xml mult_090.v common 7.74 vpr 64.86 MiB 0.02 7076 -1 -1 1 0.03 -1 -1 33756 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 31 32 275 220 1 154 74 17 17 289 -1 unnamed_device 26.5 MiB 0.23 827 6584 2301 3391 892 64.9 MiB 0.05 0.00 2.6052 -101.674 -2.6052 2.6052 0.94 0.000408305 0.000373041 0.0196844 0.0180512 40 1950 23 6.99608e+06 161872 706193. 2443.58 4.45 0.156325 0.135154 26914 176310 -1 1784 21 1375 2084 168099 34543 3.06662 3.06662 -126.236 -3.06662 0 0 926341. 3205.33 0.35 0.06 0.17 -1 -1 0.35 0.0199957 0.0177707 63 -1 93 31 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_091.v common 7.04 vpr 65.56 MiB 0.02 7092 -1 -1 1 0.03 -1 -1 33916 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67136 32 32 381 303 1 235 81 17 17 289 -1 unnamed_device 26.8 MiB 1.03 883 15306 5805 7397 2104 65.6 MiB 0.12 0.00 3.28468 -111.155 -3.28468 3.28468 0.96 0.000534402 0.000486459 0.0500142 0.0455729 44 3641 46 6.99608e+06 250167 787024. 2723.27 2.68 0.181355 0.159 27778 195446 -1 2096 25 2012 2400 184182 42382 4.30296 4.30296 -142.283 -4.30296 0 0 997811. 3452.63 0.40 0.08 0.19 -1 -1 0.40 0.0305247 0.0271537 102 56 60 32 58 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_092.v common 9.91 vpr 65.82 MiB 0.02 7452 -1 -1 1 0.03 -1 -1 33812 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67396 32 32 406 330 1 255 83 17 17 289 -1 unnamed_device 27.3 MiB 1.62 1310 12863 4974 6723 1166 65.8 MiB 0.11 0.00 3.50704 -125.989 -3.50704 3.50704 0.96 0.000553535 0.000503183 0.0425861 0.0387572 46 2950 23 6.99608e+06 279598 828058. 2865.25 4.98 0.226036 0.196818 28066 200906 -1 2463 23 2066 2451 203561 41077 4.35961 4.35961 -156.537 -4.35961 0 0 1.01997e+06 3529.29 0.39 0.08 0.20 -1 -1 0.39 0.028916 0.0256412 115 81 28 28 88 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_093.v common 25.82 vpr 65.75 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 34036 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67324 32 32 399 285 1 218 91 17 17 289 -1 unnamed_device 27.0 MiB 0.41 1030 9679 2239 7121 319 65.7 MiB 0.10 0.00 3.52884 -122.322 -3.52884 3.52884 0.96 0.000575103 0.000523557 0.0302333 0.0276275 44 3524 38 6.99608e+06 397324 787024. 2723.27 22.09 0.313415 0.273308 27778 195446 -1 2529 23 2336 3714 327925 69001 4.43351 4.43351 -162.655 -4.43351 0 0 997811. 3452.63 0.39 0.10 0.19 -1 -1 0.39 0.0304158 0.0270321 100 -1 156 32 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_094.v common 17.39 vpr 65.69 MiB 0.02 7348 -1 -1 1 0.03 -1 -1 34156 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67268 30 32 371 295 1 227 81 17 17 289 -1 unnamed_device 27.0 MiB 1.00 965 9006 2605 5458 943 65.7 MiB 0.07 0.00 2.98539 -96.6942 -2.98539 2.98539 0.91 0.000495546 0.000455761 0.0275195 0.0252378 48 2658 40 6.99608e+06 279598 865456. 2994.66 13.21 0.289985 0.25043 28354 207349 -1 2014 20 1749 2446 214119 51887 3.43601 3.43601 -125.596 -3.43601 0 0 1.05005e+06 3633.38 0.40 0.08 0.21 -1 -1 0.40 0.0254573 0.0227138 101 47 60 30 56 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_095.v common 6.54 vpr 64.65 MiB 0.02 6932 -1 -1 1 0.03 -1 -1 34244 -1 -1 16 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66204 27 32 269 226 1 152 75 17 17 289 -1 unnamed_device 26.2 MiB 1.52 649 11767 4976 6146 645 64.7 MiB 0.07 0.00 3.14605 -90.9377 -3.14605 3.14605 0.94 0.000391931 0.000356527 0.0304137 0.0277743 36 1916 45 6.99608e+06 235451 648988. 2245.63 1.94 0.136176 0.118905 26050 158493 -1 1600 23 1277 1773 155001 32961 3.43216 3.43216 -117.302 -3.43216 0 0 828058. 2865.25 0.33 0.06 0.16 -1 -1 0.33 0.0210693 0.0186643 67 26 54 27 27 27 + fixed_k6_frac_2uripple_N8_22nm.xml mult_096.v common 8.77 vpr 66.00 MiB 0.02 7416 -1 -1 1 0.04 -1 -1 34160 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67580 32 32 493 378 1 313 85 17 17 289 -1 unnamed_device 27.7 MiB 0.98 1387 16267 5306 8320 2641 66.0 MiB 0.15 0.00 3.71224 -127.436 -3.71224 3.71224 0.96 0.000636724 0.000581075 0.0593045 0.0540438 48 4596 28 6.99608e+06 309029 865456. 2994.66 4.37 0.214722 0.188677 28354 207349 -1 3471 21 2821 3928 463954 92655 4.72092 4.72092 -170.881 -4.72092 0 0 1.05005e+06 3633.38 0.40 0.13 0.20 -1 -1 0.40 0.0324637 0.0289377 141 85 62 31 95 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_097.v common 10.19 vpr 65.76 MiB 0.02 7568 -1 -1 1 0.03 -1 -1 34228 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67340 31 32 455 371 1 302 85 17 17 289 -1 unnamed_device 27.6 MiB 2.87 1360 10873 2955 6516 1402 65.8 MiB 0.09 0.00 4.12662 -139.924 -4.12662 4.12662 0.95 0.00056498 0.000511818 0.0367461 0.033366 40 3665 46 6.99608e+06 323745 706193. 2443.58 4.06 0.207427 0.182349 26914 176310 -1 3108 27 3215 3649 428350 94927 4.86674 4.86674 -175.831 -4.86674 0 0 926341. 3205.33 0.35 0.13 0.16 -1 -1 0.35 0.0341262 0.0301266 138 105 0 0 124 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_098.v common 10.71 vpr 65.66 MiB 0.02 7016 -1 -1 1 0.03 -1 -1 33792 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67232 32 32 355 304 1 233 79 17 17 289 -1 unnamed_device 26.9 MiB 3.54 913 11402 4307 6069 1026 65.7 MiB 0.09 0.00 3.09393 -108.803 -3.09393 3.09393 0.95 0.000489423 0.000445258 0.0357579 0.0326287 48 2936 48 6.99608e+06 220735 865456. 2994.66 3.91 0.169481 0.147906 28354 207349 -1 1919 22 1569 1797 169470 40268 3.9786 3.9786 -143.668 -3.9786 0 0 1.05005e+06 3633.38 0.39 0.07 0.20 -1 -1 0.39 0.0243683 0.021596 102 86 0 0 89 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_099.v common 23.13 vpr 65.68 MiB 0.02 7076 -1 -1 1 0.03 -1 -1 33964 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67260 32 32 364 282 1 217 80 17 17 289 -1 unnamed_device 26.9 MiB 1.14 859 14184 4098 8238 1848 65.7 MiB 0.12 0.00 3.25275 -112.645 -3.25275 3.25275 0.98 0.000536376 0.000490927 0.0467368 0.0427561 48 2900 42 6.99608e+06 235451 865456. 2994.66 18.58 0.325955 0.284426 28354 207349 -1 2158 31 2292 3063 420957 121762 4.14942 4.14942 -147.159 -4.14942 0 0 1.05005e+06 3633.38 0.42 0.14 0.20 -1 -1 0.42 0.0356511 0.0315281 92 31 90 30 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_100.v common 10.33 vpr 65.92 MiB 0.02 7296 -1 -1 1 0.04 -1 -1 34224 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67500 31 32 443 336 1 261 83 17 17 289 -1 unnamed_device 27.3 MiB 1.80 1150 14303 5210 6691 2402 65.9 MiB 0.13 0.00 3.18065 -113.702 -3.18065 3.18065 0.96 0.000594561 0.000541397 0.0514291 0.0469105 46 3267 24 6.99608e+06 294314 828058. 2865.25 5.18 0.251526 0.219588 28066 200906 -1 2484 22 2359 3242 230658 49311 4.28872 4.28872 -156.389 -4.28872 0 0 1.01997e+06 3529.29 0.38 0.09 0.20 -1 -1 0.38 0.0296094 0.0263167 117 50 87 31 62 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_101.v common 9.16 vpr 65.35 MiB 0.02 7424 -1 -1 1 0.03 -1 -1 34136 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66916 30 32 373 297 1 228 82 17 17 289 -1 unnamed_device 26.6 MiB 1.23 1074 15034 5140 7920 1974 65.3 MiB 0.12 0.00 2.91629 -101.949 -2.91629 2.91629 0.97 0.000526912 0.000480799 0.0473643 0.0432999 46 2924 21 6.99608e+06 294314 828058. 2865.25 4.62 0.228312 0.200218 28066 200906 -1 2390 20 1695 2407 191451 40276 3.31176 3.31176 -126.232 -3.31176 0 0 1.01997e+06 3529.29 0.39 0.07 0.20 -1 -1 0.39 0.0248457 0.02215 101 50 58 30 58 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_102.v common 7.00 vpr 65.53 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 33716 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67104 32 32 407 319 1 252 81 17 17 289 -1 unnamed_device 27.0 MiB 0.75 1219 14431 5894 7189 1348 65.5 MiB 0.13 0.00 3.42564 -124.648 -3.42564 3.42564 0.95 0.000558657 0.000507996 0.0495234 0.0452201 44 3162 26 6.99608e+06 250167 787024. 2723.27 2.97 0.178813 0.157462 27778 195446 -1 2457 22 2276 2777 217246 44665 4.18901 4.18901 -157.635 -4.18901 0 0 997811. 3452.63 0.38 0.08 0.19 -1 -1 0.38 0.0277148 0.0245782 107 61 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_103.v common 8.81 vpr 65.88 MiB 0.02 7116 -1 -1 1 0.03 -1 -1 34084 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67460 32 32 405 318 1 253 82 17 17 289 -1 unnamed_device 27.3 MiB 0.82 1121 9516 2286 6786 444 65.9 MiB 0.09 0.00 2.98529 -113.988 -2.98529 2.98529 0.94 0.000576179 0.000523523 0.0324034 0.0296236 42 3714 27 6.99608e+06 264882 744469. 2576.02 4.77 0.222076 0.192564 27202 183097 -1 2754 22 2339 2994 272122 58765 3.60016 3.60016 -142.565 -3.60016 0 0 949917. 3286.91 0.36 0.09 0.18 -1 -1 0.36 0.0278292 0.0246692 108 61 63 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_104.v common 6.72 vpr 65.02 MiB 0.02 7000 -1 -1 1 0.03 -1 -1 33956 -1 -1 14 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 29 32 287 238 1 172 75 17 17 289 -1 unnamed_device 26.5 MiB 1.39 703 7975 3243 4416 316 65.0 MiB 0.06 0.00 2.67044 -92.1549 -2.67044 2.67044 0.97 0.000423383 0.000387211 0.024054 0.0220625 34 2381 40 6.99608e+06 206020 618332. 2139.56 2.24 0.123829 0.108486 25762 151098 -1 1740 20 1614 2069 159559 34702 3.56711 3.56711 -129.973 -3.56711 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0201104 0.017902 73 28 58 29 29 29 + fixed_k6_frac_2uripple_N8_22nm.xml mult_105.v common 11.99 vpr 65.23 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 33976 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66800 32 32 334 290 1 207 78 17 17 289 -1 unnamed_device 26.9 MiB 3.00 782 13524 5494 6370 1660 65.2 MiB 0.09 0.00 3.03413 -98.808 -3.03413 3.03413 0.97 0.000462547 0.000420703 0.0397985 0.0362607 56 1959 22 6.99608e+06 206020 973134. 3367.25 5.63 0.188455 0.163979 29794 239141 -1 1671 24 1669 2033 236663 62576 3.9706 3.9706 -128.691 -3.9706 0 0 1.19926e+06 4149.71 0.43 0.09 0.23 -1 -1 0.43 0.0254566 0.0225601 91 79 0 0 82 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_106.v common 9.71 vpr 65.61 MiB 0.02 7364 -1 -1 1 0.03 -1 -1 33724 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67188 31 32 365 281 1 217 80 17 17 289 -1 unnamed_device 26.9 MiB 0.70 1113 9540 2479 6269 792 65.6 MiB 0.08 0.00 3.16964 -118.693 -3.16964 3.16964 0.97 0.000485733 0.000438137 0.0301837 0.0274767 44 2996 46 6.99608e+06 250167 787024. 2723.27 5.79 0.259343 0.224991 27778 195446 -1 2285 22 2082 2742 232694 49650 3.95076 3.95076 -153.935 -3.95076 0 0 997811. 3452.63 0.39 0.08 0.18 -1 -1 0.39 0.0254133 0.0224992 92 29 93 31 31 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_107.v common 7.71 vpr 65.18 MiB 0.02 7168 -1 -1 1 0.03 -1 -1 34056 -1 -1 16 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 29 32 297 254 1 191 77 17 17 289 -1 unnamed_device 26.6 MiB 1.94 718 11487 4796 6151 540 65.2 MiB 0.08 0.00 2.55329 -83.4486 -2.55329 2.55329 0.94 0.000414251 0.000378388 0.0319298 0.0292358 40 2314 31 6.99608e+06 235451 706193. 2443.58 2.65 0.135093 0.117928 26914 176310 -1 1833 22 1513 1735 174855 38529 3.53606 3.53606 -118.493 -3.53606 0 0 926341. 3205.33 0.34 0.07 0.17 -1 -1 0.34 0.0213869 0.0189149 81 48 29 29 52 26 + fixed_k6_frac_2uripple_N8_22nm.xml mult_108.v common 8.29 vpr 65.19 MiB 0.02 6892 -1 -1 1 0.03 -1 -1 33892 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 32 32 314 256 1 188 77 17 17 289 -1 unnamed_device 26.7 MiB 0.81 874 12628 5294 7161 173 65.2 MiB 0.09 0.00 2.94309 -113.391 -2.94309 2.94309 0.95 0.000464161 0.000423603 0.0385178 0.0351536 44 2516 33 6.99608e+06 191304 787024. 2723.27 4.29 0.198225 0.172618 27778 195446 -1 1929 21 1664 2105 177437 36062 3.71446 3.71446 -140.705 -3.71446 0 0 997811. 3452.63 0.38 0.07 0.19 -1 -1 0.38 0.0218293 0.0193503 79 31 64 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_109.v common 20.06 vpr 65.81 MiB 0.02 7196 -1 -1 1 0.03 -1 -1 33664 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67392 31 32 387 307 1 239 82 17 17 289 -1 unnamed_device 27.0 MiB 1.33 992 11474 4129 5634 1711 65.8 MiB 0.10 0.00 3.32078 -115.499 -3.32078 3.32078 0.95 0.000529193 0.000481655 0.0381783 0.0348748 46 3117 41 6.99608e+06 279598 828058. 2865.25 15.42 0.325837 0.283668 28066 200906 -1 2320 20 2105 2817 249537 54024 4.30725 4.30725 -154.082 -4.30725 0 0 1.01997e+06 3529.29 0.40 0.09 0.19 -1 -1 0.40 0.0273016 0.0244092 105 60 58 31 62 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_110.v common 11.22 vpr 65.12 MiB 0.02 7292 -1 -1 1 0.03 -1 -1 33752 -1 -1 13 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66684 31 32 308 262 1 192 76 17 17 289 -1 unnamed_device 26.6 MiB 2.90 736 10156 4154 5454 548 65.1 MiB 0.07 0.00 2.61074 -86.8893 -2.61074 2.61074 0.98 0.000466673 0.000428259 0.0312681 0.0286779 52 2123 28 6.99608e+06 191304 926341. 3205.33 5.01 0.186098 0.162408 29218 227130 -1 1629 19 1323 1688 134550 32216 3.18627 3.18627 -110.425 -3.18627 0 0 1.14541e+06 3963.36 0.43 0.06 0.22 -1 -1 0.43 0.0201905 0.0179137 81 49 31 31 53 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_111.v common 9.89 vpr 65.41 MiB 0.02 7260 -1 -1 1 0.03 -1 -1 34072 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66984 32 32 383 307 1 232 82 17 17 289 -1 unnamed_device 26.7 MiB 1.78 1087 15034 6077 6939 2018 65.4 MiB 0.12 0.00 2.90049 -105.948 -2.90049 2.90049 0.96 0.000530796 0.000484049 0.0487272 0.0445224 40 3039 24 6.99608e+06 264882 706193. 2443.58 4.85 0.237606 0.207534 26914 176310 -1 2602 23 1928 2682 266389 53849 3.54211 3.54211 -138.489 -3.54211 0 0 926341. 3205.33 0.35 0.09 0.17 -1 -1 0.35 0.0281233 0.0249869 103 56 52 26 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_112.v common 9.70 vpr 65.70 MiB 0.02 7276 -1 -1 1 0.03 -1 -1 33728 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67272 31 32 422 339 1 272 85 17 17 289 -1 unnamed_device 27.4 MiB 0.91 1250 15151 4655 8452 2044 65.7 MiB 0.13 0.00 3.80117 -132.704 -3.80117 3.80117 0.98 0.000553897 0.000503381 0.0494645 0.0450103 48 3161 25 6.99608e+06 323745 865456. 2994.66 5.38 0.261837 0.229556 28354 207349 -1 2903 22 2657 3666 348511 71240 4.54134 4.54134 -164.217 -4.54134 0 0 1.05005e+06 3633.38 0.42 0.11 0.19 -1 -1 0.42 0.0306033 0.0272712 123 88 31 31 92 31 + fixed_k6_frac_2uripple_N8_22nm.xml mult_113.v common 10.92 vpr 65.57 MiB 0.02 7096 -1 -1 1 0.03 -1 -1 33792 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67148 32 32 333 279 1 208 79 17 17 289 -1 unnamed_device 27.0 MiB 2.78 1123 12247 3530 7399 1318 65.6 MiB 0.09 0.00 2.76294 -107.953 -2.76294 2.76294 0.94 0.000464227 0.000420599 0.0352465 0.032049 46 2610 29 6.99608e+06 220735 828058. 2865.25 4.98 0.190583 0.165234 28066 200906 -1 2197 22 1538 2252 174416 35764 3.14641 3.14641 -124.675 -3.14641 0 0 1.01997e+06 3529.29 0.39 0.07 0.18 -1 -1 0.39 0.0228726 0.0201821 88 54 32 32 60 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_114.v common 6.64 vpr 65.34 MiB 0.02 6996 -1 -1 1 0.03 -1 -1 33808 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66912 32 32 339 283 1 212 78 17 17 289 -1 unnamed_device 26.9 MiB 0.89 822 13026 5192 6074 1760 65.3 MiB 0.10 0.00 2.68144 -98.8212 -2.68144 2.68144 0.95 0.00048201 0.000440493 0.0403237 0.0368913 46 2341 27 6.99608e+06 206020 828058. 2865.25 2.52 0.149529 0.13081 28066 200906 -1 2010 27 1836 2283 223075 46566 3.32751 3.32751 -129.345 -3.32751 0 0 1.01997e+06 3529.29 0.38 0.08 0.19 -1 -1 0.38 0.0270446 0.0238339 91 60 32 32 62 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_115.v common 7.57 vpr 65.83 MiB 0.02 7380 -1 -1 1 0.03 -1 -1 34332 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67412 32 32 407 319 1 252 82 17 17 289 -1 unnamed_device 27.0 MiB 1.00 1133 13432 3706 8622 1104 65.8 MiB 0.12 0.00 3.18865 -120.877 -3.18865 3.18865 0.97 0.000560366 0.000512407 0.0451671 0.0413482 40 3130 25 6.99608e+06 264882 706193. 2443.58 3.26 0.175413 0.154349 26914 176310 -1 2771 25 2643 3296 367635 79515 4.45931 4.45931 -164.177 -4.45931 0 0 926341. 3205.33 0.34 0.11 0.18 -1 -1 0.34 0.0300218 0.0265263 110 49 64 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_116.v common 8.01 vpr 65.70 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 33804 -1 -1 21 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67280 29 32 367 293 1 222 82 17 17 289 -1 unnamed_device 26.9 MiB 1.80 1012 9338 2405 5407 1526 65.7 MiB 0.08 0.00 2.77374 -94.5628 -2.77374 2.77374 0.97 0.000508594 0.00046481 0.0300722 0.0275037 44 2964 42 6.99608e+06 309029 787024. 2723.27 2.96 0.158645 0.139523 27778 195446 -1 1827 21 1621 2193 115700 29949 3.19921 3.19921 -116.839 -3.19921 0 0 997811. 3452.63 0.38 0.06 0.19 -1 -1 0.38 0.0247406 0.0220038 101 54 56 29 58 29 + fixed_k6_frac_2uripple_N8_22nm.xml mult_117.v common 7.69 vpr 65.79 MiB 0.02 7424 -1 -1 1 0.04 -1 -1 34320 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67364 32 32 469 381 1 309 86 17 17 289 -1 unnamed_device 27.6 MiB 0.86 1299 16718 5576 8625 2517 65.8 MiB 0.14 0.00 3.68467 -132.476 -3.68467 3.68467 0.95 0.000614969 0.000558453 0.0568298 0.0516137 46 3792 42 6.99608e+06 323745 828058. 2865.25 3.49 0.224083 0.197328 28066 200906 -1 2900 21 2850 3330 268401 56673 4.67734 4.67734 -173.437 -4.67734 0 0 1.01997e+06 3529.29 0.39 0.09 0.19 -1 -1 0.39 0.0298819 0.0266296 140 117 0 0 128 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_118.v common 12.94 vpr 64.86 MiB 0.02 6860 -1 -1 1 0.03 -1 -1 33800 -1 -1 11 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 31 32 259 212 1 143 74 17 17 289 -1 unnamed_device 26.3 MiB 1.14 514 10459 4246 5559 654 64.9 MiB 0.07 0.00 2.29975 -78.1061 -2.29975 2.29975 0.95 0.000405788 0.000371347 0.0293805 0.0269021 46 1748 29 6.99608e+06 161872 828058. 2865.25 8.66 0.213387 0.184549 28066 200906 -1 1358 21 1169 1761 123888 32302 2.76432 2.76432 -104.808 -2.76432 0 0 1.01997e+06 3529.29 0.38 0.06 0.19 -1 -1 0.38 0.0195655 0.0172865 57 -1 85 31 0 0 + fixed_k6_frac_2uripple_N8_22nm.xml mult_119.v common 11.52 vpr 65.79 MiB 0.02 7312 -1 -1 1 0.03 -1 -1 33840 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67364 32 32 418 338 1 263 83 17 17 289 -1 unnamed_device 27.2 MiB 3.01 1130 14483 6123 8043 317 65.8 MiB 0.12 0.00 3.96833 -132.934 -3.96833 3.96833 0.94 0.000518188 0.000463593 0.0472882 0.0431157 46 3272 24 6.99608e+06 279598 828058. 2865.25 5.23 0.233017 0.202958 28066 200906 -1 2427 33 3211 4111 394942 106040 4.73664 4.73664 -168.445 -4.73664 0 0 1.01997e+06 3529.29 0.39 0.13 0.18 -1 -1 0.39 0.0372548 0.0326497 118 89 28 28 92 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_120.v common 9.86 vpr 65.62 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 34048 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67196 32 32 376 318 1 253 80 17 17 289 -1 unnamed_device 26.9 MiB 0.96 1227 11432 4105 5518 1809 65.6 MiB 0.10 0.00 3.78697 -141.648 -3.78697 3.78697 0.94 0.000510316 0.000465304 0.0371176 0.0339531 48 3138 40 6.99608e+06 235451 865456. 2994.66 5.61 0.227589 0.19758 28354 207349 -1 2754 23 2729 3466 407336 78043 4.79374 4.79374 -182.813 -4.79374 0 0 1.05005e+06 3633.38 0.40 0.11 0.20 -1 -1 0.40 0.0272514 0.0241167 110 93 0 0 96 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_121.v common 9.59 vpr 66.03 MiB 0.02 7128 -1 -1 1 0.03 -1 -1 33800 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67612 32 32 401 316 1 247 83 17 17 289 -1 unnamed_device 27.2 MiB 0.85 1085 15203 6053 6785 2365 66.0 MiB 0.13 0.00 2.81774 -106.087 -2.81774 2.81774 0.95 0.000564113 0.000515153 0.0504285 0.0460966 48 2924 30 6.99608e+06 279598 865456. 2994.66 5.35 0.242075 0.211748 28354 207349 -1 2335 28 2187 2752 345061 114049 3.22121 3.22121 -129.928 -3.22121 0 0 1.05005e+06 3633.38 0.39 0.13 0.20 -1 -1 0.39 0.0343138 0.030403 106 59 61 32 64 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_122.v common 9.40 vpr 65.87 MiB 0.03 7596 -1 -1 1 0.04 -1 -1 34296 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67448 32 32 500 382 1 312 86 17 17 289 -1 unnamed_device 27.6 MiB 0.80 1363 18230 5788 10225 2217 65.9 MiB 0.16 0.00 4.08848 -143.899 -4.08848 4.08848 0.95 0.000673622 0.000613882 0.0660954 0.0601585 44 4030 32 6.99608e+06 323745 787024. 2723.27 5.18 0.306116 0.268432 27778 195446 -1 2986 24 3079 3617 313209 62968 5.28775 5.28775 -186.919 -5.28775 0 0 997811. 3452.63 0.40 0.11 0.19 -1 -1 0.40 0.0349139 0.0310393 140 81 64 32 96 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_123.v common 9.81 vpr 64.82 MiB 0.02 7148 -1 -1 1 0.03 -1 -1 33712 -1 -1 13 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 30 32 246 229 1 154 75 17 17 289 -1 unnamed_device 26.5 MiB 2.50 607 9081 3829 4985 267 64.8 MiB 0.06 0.00 2.25155 -75.8841 -2.25155 2.25155 0.97 0.000367828 0.000335211 0.0232336 0.0212726 40 1445 23 6.99608e+06 191304 706193. 2443.58 4.18 0.141093 0.122015 26914 176310 -1 1281 27 836 873 134760 48020 2.63502 2.63502 -94.9304 -2.63502 0 0 926341. 3205.33 0.35 0.07 0.17 -1 -1 0.35 0.0212661 0.0186794 65 51 0 0 53 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_124.v common 8.75 vpr 65.04 MiB 0.02 7120 -1 -1 1 0.03 -1 -1 33996 -1 -1 14 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 30 32 296 244 1 167 76 17 17 289 -1 unnamed_device 26.6 MiB 3.74 904 9196 2794 5382 1020 65.0 MiB 0.07 0.00 2.78909 -102.456 -2.78909 2.78909 0.95 0.000435633 0.000398912 0.0273616 0.0250689 34 2310 24 6.99608e+06 206020 618332. 2139.56 1.95 0.108663 0.0951733 25762 151098 -1 1998 19 1436 2050 190585 38529 3.39481 3.39481 -133.642 -3.39481 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.0197009 0.0174741 72 29 60 30 30 30 + fixed_k6_frac_2uripple_N8_22nm.xml mult_125.v common 19.53 vpr 65.15 MiB 0.02 6872 -1 -1 1 0.03 -1 -1 33684 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66712 32 32 314 256 1 192 76 17 17 289 -1 unnamed_device 26.6 MiB 0.20 743 10156 3938 5001 1217 65.1 MiB 0.08 0.00 2.73464 -102.968 -2.73464 2.73464 0.98 0.0004753 0.000432453 0.0319294 0.0291603 50 2249 32 6.99608e+06 176588 902133. 3121.57 16.01 0.278123 0.242831 28642 213929 -1 1894 21 1916 2925 272758 69459 3.85871 3.85871 -146.296 -3.85871 0 0 1.08113e+06 3740.92 0.42 0.09 0.20 -1 -1 0.42 0.0240629 0.0215084 80 31 64 32 32 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_126.v common 6.57 vpr 64.90 MiB 0.02 7228 -1 -1 1 0.03 -1 -1 34084 -1 -1 18 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 25 32 251 214 1 151 75 17 17 289 -1 unnamed_device 26.5 MiB 0.77 564 11767 5035 5869 863 64.9 MiB 0.07 0.00 2.79475 -75.6465 -2.79475 2.79475 0.95 0.000346125 0.000315281 0.0287327 0.0262013 36 1947 29 6.99608e+06 264882 648988. 2245.63 2.80 0.120615 0.10519 26050 158493 -1 1476 20 1106 1367 120236 26851 3.20617 3.20617 -101.909 -3.20617 0 0 828058. 2865.25 0.32 0.05 0.14 -1 -1 0.32 0.0173978 0.0153788 68 19 50 25 25 25 + fixed_k6_frac_2uripple_N8_22nm.xml mult_127.v common 31.43 vpr 65.46 MiB 0.02 7280 -1 -1 1 0.03 -1 -1 34196 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67032 32 32 432 346 1 281 84 17 17 289 -1 unnamed_device 27.1 MiB 0.99 1355 15822 6352 8244 1226 65.5 MiB 0.14 0.00 3.11645 -118.464 -3.11645 3.11645 0.95 0.00057373 0.000522795 0.0539088 0.0491804 44 4124 47 6.99608e+06 294314 787024. 2723.27 27.09 0.340213 0.296868 27778 195446 -1 3160 22 2877 4145 347997 69612 4.13842 4.13842 -158.3 -4.13842 0 0 997811. 3452.63 0.37 0.10 0.19 -1 -1 0.37 0.0297309 0.026363 125 84 32 32 94 32 + fixed_k6_frac_2uripple_N8_22nm.xml mult_128.v common 7.23 vpr 66.11 MiB 0.02 7308 -1 -1 1 0.03 -1 -1 33932 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67700 31 32 421 339 1 270 85 17 17 289 -1 unnamed_device 27.4 MiB 0.97 1169 11245 4587 6328 330 66.1 MiB 0.10 0.00 3.44908 -119.058 -3.44908 3.44908 0.96 0.000576245 0.000526467 0.0378106 0.0346213 48 3336 27 6.99608e+06 323745 865456. 2994.66 2.90 0.174501 0.153171 28354 207349 -1 2689 21 2457 3320 315292 66571 4.20535 4.20535 -153.278 -4.20535 0 0 1.05005e+06 3633.38 0.39 0.10 0.21 -1 -1 0.39 0.0289238 0.0257512 121 88 29 29 93 31 + fixed_k6_frac_N8_22nm.xml mult_001.v common 8.93 vpr 65.18 MiB 0.02 7068 -1 -1 14 0.33 -1 -1 36500 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 280 312 1 207 83 17 17 289 -1 unnamed_device 26.7 MiB 2.58 1207 10883 3399 5297 2187 65.2 MiB 0.10 0.00 6.88531 -140.929 -6.88531 6.88531 0.96 0.000630754 0.000570915 0.0422538 0.0383346 38 3353 25 6.79088e+06 255968 678818. 2348.85 2.87 0.196804 0.173224 25966 169698 -1 2557 18 1311 3679 194733 44112 7.12821 7.12821 -159.273 -7.12821 0 0 902133. 3121.57 0.33 0.08 0.16 -1 -1 0.33 0.0301592 0.0272426 134 185 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_002.v common 8.74 vpr 64.76 MiB 0.02 7256 -1 -1 14 0.36 -1 -1 36184 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 30 32 277 309 1 214 82 17 17 289 -1 unnamed_device 26.3 MiB 2.02 1185 7736 2049 4631 1056 64.8 MiB 0.07 0.00 6.84273 -137.288 -6.84273 6.84273 0.94 0.000625178 0.000571967 0.030355 0.027522 36 3843 44 6.79088e+06 269440 648988. 2245.63 3.25 0.17875 0.157421 25390 158009 -1 3049 21 1629 4355 262822 58501 7.59448 7.59448 -162.337 -7.59448 0 0 828058. 2865.25 0.32 0.10 0.15 -1 -1 0.32 0.0344766 0.0309528 132 186 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_003.v common 8.68 vpr 64.95 MiB 0.02 7232 -1 -1 11 0.26 -1 -1 36396 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 32 32 274 306 1 200 84 17 17 289 -1 unnamed_device 26.5 MiB 2.12 1223 14907 4838 7037 3032 65.0 MiB 0.13 0.00 5.53913 -119.059 -5.53913 5.53913 0.96 0.000595608 0.000532128 0.0548828 0.0496792 38 3294 23 6.79088e+06 269440 678818. 2348.85 3.07 0.211808 0.186982 25966 169698 -1 2554 15 1249 3700 189334 42833 5.78973 5.78973 -136.181 -5.78973 0 0 902133. 3121.57 0.35 0.07 0.16 -1 -1 0.35 0.0282934 0.0257185 138 179 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_004.v common 8.19 vpr 65.04 MiB 0.02 7024 -1 -1 12 0.43 -1 -1 36760 -1 -1 22 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 29 32 269 301 1 191 83 17 17 289 -1 unnamed_device 26.6 MiB 1.75 1131 13403 3788 8000 1615 65.0 MiB 0.11 0.00 6.20837 -119.597 -6.20837 6.20837 0.93 0.00065272 0.00059336 0.0507324 0.046196 34 3208 34 6.79088e+06 296384 618332. 2139.56 2.90 0.184126 0.162851 25102 150614 -1 2925 22 1468 4615 308192 66092 7.04627 7.04627 -148.494 -7.04627 0 0 787024. 2723.27 0.30 0.10 0.15 -1 -1 0.30 0.0357137 0.0320281 136 180 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_005.v common 9.62 vpr 65.29 MiB 0.02 7076 -1 -1 13 0.37 -1 -1 37064 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66860 32 32 317 349 1 251 88 17 17 289 -1 unnamed_device 26.7 MiB 2.58 1487 9058 2433 5850 775 65.3 MiB 0.09 0.00 6.71311 -140.591 -6.71311 6.71311 0.93 0.000715039 0.000636776 0.0370564 0.0335714 38 3836 35 6.79088e+06 323328 678818. 2348.85 3.55 0.23651 0.209319 25966 169698 -1 3218 17 1649 4407 237676 53040 7.08901 7.08901 -162.407 -7.08901 0 0 902133. 3121.57 0.34 0.09 0.15 -1 -1 0.34 0.0347104 0.0315862 160 222 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_006.v common 11.66 vpr 65.27 MiB 0.02 6992 -1 -1 12 0.35 -1 -1 36316 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66836 32 32 299 331 1 221 88 17 17 289 -1 unnamed_device 26.7 MiB 3.00 1402 4573 806 3508 259 65.3 MiB 0.05 0.00 6.00472 -133.713 -6.00472 6.00472 0.94 0.000692211 0.000622345 0.0197997 0.018001 46 3465 25 6.79088e+06 323328 828058. 2865.25 5.14 0.224328 0.195831 27406 200422 -1 2700 17 1289 3868 188270 42904 6.63122 6.63122 -154.037 -6.63122 0 0 1.01997e+06 3529.29 0.38 0.08 0.19 -1 -1 0.38 0.031143 0.0282178 150 204 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_007.v common 8.54 vpr 64.39 MiB 0.02 7048 -1 -1 12 0.22 -1 -1 36140 -1 -1 20 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65936 27 32 210 242 1 166 79 17 17 289 -1 unnamed_device 25.9 MiB 1.83 936 8867 2145 5603 1119 64.4 MiB 0.07 0.00 6.07963 -115.463 -6.07963 6.07963 0.96 0.000505058 0.000460956 0.0296562 0.0271041 36 2816 26 6.79088e+06 269440 648988. 2245.63 3.45 0.149782 0.131324 25390 158009 -1 2418 15 1107 2844 183272 40940 6.07963 6.07963 -130.251 -6.07963 0 0 828058. 2865.25 0.31 0.06 0.15 -1 -1 0.31 0.0208647 0.0187893 101 125 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_008.v common 8.84 vpr 64.86 MiB 0.02 6988 -1 -1 11 0.22 -1 -1 36524 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 31 32 264 296 1 191 81 17 17 289 -1 unnamed_device 26.5 MiB 1.63 1189 9181 2410 5800 971 64.9 MiB 0.08 0.00 5.53137 -115.544 -5.53137 5.53137 0.94 0.000588007 0.000526856 0.0348791 0.0315122 38 3249 20 6.79088e+06 242496 678818. 2348.85 3.89 0.17214 0.150737 25966 169698 -1 2518 17 1152 3384 189389 40548 5.65667 5.65667 -135.305 -5.65667 0 0 902133. 3121.57 0.33 0.07 0.16 -1 -1 0.33 0.0261131 0.0235502 118 171 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_009.v common 10.03 vpr 64.64 MiB 0.02 6876 -1 -1 12 0.21 -1 -1 36176 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66188 31 32 234 266 1 191 81 17 17 289 -1 unnamed_device 26.1 MiB 3.13 1195 12681 3570 7352 1759 64.6 MiB 0.10 0.00 5.36693 -115.136 -5.36693 5.36693 0.93 0.000536785 0.0004878 0.0416696 0.0378339 36 3191 26 6.79088e+06 242496 648988. 2245.63 3.59 0.17619 0.154867 25390 158009 -1 2591 16 1184 2633 159883 35711 5.61753 5.61753 -131.811 -5.61753 0 0 828058. 2865.25 0.33 0.07 0.15 -1 -1 0.33 0.0250823 0.0227294 111 141 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_010.v common 8.04 vpr 64.76 MiB 0.02 7024 -1 -1 13 0.24 -1 -1 36228 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 32 32 253 285 1 183 80 17 17 289 -1 unnamed_device 26.2 MiB 1.89 1095 6444 1316 4879 249 64.8 MiB 0.06 0.00 6.12227 -138.064 -6.12227 6.12227 0.95 0.000579774 0.00052621 0.0248429 0.0226588 38 2913 39 6.79088e+06 215552 678818. 2348.85 2.84 0.177173 0.155178 25966 169698 -1 2296 16 1070 2634 141323 31865 6.78448 6.78448 -157.584 -6.78448 0 0 902133. 3121.57 0.33 0.06 0.16 -1 -1 0.33 0.0246718 0.022221 107 158 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_011.v common 9.56 vpr 64.48 MiB 0.02 7084 -1 -1 12 0.22 -1 -1 36480 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66028 30 32 217 249 1 159 78 17 17 289 -1 unnamed_device 26.0 MiB 1.74 815 11698 2819 8556 323 64.5 MiB 0.08 0.00 5.87167 -120.486 -5.87167 5.87167 0.95 0.000511871 0.000463744 0.0355117 0.0321109 38 2285 34 6.79088e+06 215552 678818. 2348.85 4.55 0.235937 0.205675 25966 169698 -1 1804 16 816 2145 117331 27016 6.15798 6.15798 -137.405 -6.15798 0 0 902133. 3121.57 0.34 0.05 0.16 -1 -1 0.34 0.0218298 0.0197186 93 126 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_012.v common 8.07 vpr 64.66 MiB 0.02 6872 -1 -1 12 0.18 -1 -1 36376 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66216 32 32 227 259 1 170 78 17 17 289 -1 unnamed_device 26.2 MiB 2.41 1033 5556 1234 3958 364 64.7 MiB 0.05 0.00 5.57489 -132.09 -5.57489 5.57489 0.95 0.000506467 0.000459929 0.0198091 0.0180515 36 2862 48 6.79088e+06 188608 648988. 2245.63 2.33 0.131577 0.114996 25390 158009 -1 2458 33 1219 3219 455623 199004 5.70019 5.70019 -150.19 -5.70019 0 0 828058. 2865.25 0.34 0.18 0.15 -1 -1 0.34 0.0406705 0.0362237 94 132 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_013.v common 10.73 vpr 65.30 MiB 0.02 7216 -1 -1 13 0.34 -1 -1 36784 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 32 32 306 338 1 226 85 17 17 289 -1 unnamed_device 26.5 MiB 1.79 1301 14965 4673 7835 2457 65.3 MiB 0.14 0.00 6.62696 -138.747 -6.62696 6.62696 0.98 0.000698066 0.000628686 0.0599565 0.0543895 44 3282 22 6.79088e+06 282912 787024. 2723.27 5.23 0.300129 0.26447 27118 194962 -1 2712 21 1282 3709 294059 89436 6.97485 6.97485 -153.81 -6.97485 0 0 997811. 3452.63 0.39 0.12 0.19 -1 -1 0.39 0.0382786 0.0345926 148 211 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_014.v common 21.53 vpr 65.48 MiB 0.02 7212 -1 -1 14 0.38 -1 -1 36700 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67048 32 32 302 334 1 227 85 17 17 289 -1 unnamed_device 26.7 MiB 2.07 1439 10129 2578 5912 1639 65.5 MiB 0.10 0.00 7.51535 -153.524 -7.51535 7.51535 0.94 0.000708015 0.000639998 0.042987 0.0389645 36 4263 29 6.79088e+06 282912 648988. 2245.63 15.94 0.350556 0.307112 25390 158009 -1 3317 22 1743 4643 323600 71325 7.67985 7.67985 -172.722 -7.67985 0 0 828058. 2865.25 0.33 0.12 0.15 -1 -1 0.33 0.0401944 0.0360894 149 207 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_015.v common 15.91 vpr 64.55 MiB 0.02 6808 -1 -1 11 0.22 -1 -1 36280 -1 -1 20 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 29 32 238 270 1 181 81 17 17 289 -1 unnamed_device 26.0 MiB 1.81 854 13206 4245 6384 2577 64.5 MiB 0.10 0.00 5.70368 -111.531 -5.70368 5.70368 0.93 0.000524078 0.000475726 0.0428888 0.0389401 38 2808 28 6.79088e+06 269440 678818. 2348.85 10.82 0.267849 0.233072 25966 169698 -1 2064 17 1121 2708 142350 33129 5.91508 5.91508 -124.28 -5.91508 0 0 902133. 3121.57 0.33 0.06 0.16 -1 -1 0.33 0.0245978 0.0220437 111 149 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_016.v common 9.81 vpr 65.30 MiB 0.02 7000 -1 -1 12 0.35 -1 -1 36644 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 32 32 306 338 1 232 84 17 17 289 -1 unnamed_device 26.7 MiB 3.10 1288 14907 4729 7632 2546 65.3 MiB 0.14 0.00 6.24408 -131.418 -6.24408 6.24408 0.94 0.000684935 0.000620006 0.0607122 0.0550477 56 3130 28 6.79088e+06 269440 973134. 3367.25 2.99 0.23269 0.205255 29134 238657 -1 2806 18 1552 4795 262572 61053 6.71301 6.71301 -147.697 -6.71301 0 0 1.19926e+06 4149.71 0.44 0.09 0.24 -1 -1 0.44 0.0329714 0.0297725 146 211 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_017.v common 9.61 vpr 65.51 MiB 0.02 7212 -1 -1 13 0.34 -1 -1 36716 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67080 32 32 311 343 1 226 85 17 17 289 -1 unnamed_device 26.7 MiB 1.96 1294 10501 3225 5467 1809 65.5 MiB 0.10 0.00 7.00635 -141.623 -7.00635 7.00635 0.97 0.000719345 0.000642994 0.0446705 0.0403375 38 3588 22 6.79088e+06 282912 678818. 2348.85 4.09 0.209169 0.18378 25966 169698 -1 2809 15 1299 3822 199455 44689 7.29615 7.29615 -159.764 -7.29615 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.0318846 0.029041 144 216 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_018.v common 7.80 vpr 64.59 MiB 0.02 6956 -1 -1 12 0.19 -1 -1 36152 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66144 32 32 230 262 1 172 80 17 17 289 -1 unnamed_device 26.1 MiB 2.57 925 10916 2952 6074 1890 64.6 MiB 0.08 0.00 5.36693 -123.503 -5.36693 5.36693 0.94 0.000524812 0.000475278 0.0363858 0.0330941 34 2663 42 6.79088e+06 215552 618332. 2139.56 2.03 0.172477 0.150433 25102 150614 -1 2152 15 975 2562 144653 34469 5.86813 5.86813 -147.357 -5.86813 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.0220566 0.0199092 104 135 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_019.v common 10.43 vpr 64.11 MiB 0.02 6696 -1 -1 10 0.13 -1 -1 36100 -1 -1 12 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65644 30 32 176 208 1 138 74 17 17 289 -1 unnamed_device 25.6 MiB 3.19 707 7204 1785 5164 255 64.1 MiB 0.05 0.00 4.41351 -102.294 -4.41351 4.41351 0.96 0.000394484 0.000358798 0.0209114 0.0190921 36 2083 34 6.79088e+06 161664 648988. 2245.63 4.09 0.149573 0.129527 25390 158009 -1 1813 17 850 1908 127365 29642 4.83631 4.83631 -121.526 -4.83631 0 0 828058. 2865.25 0.31 0.05 0.15 -1 -1 0.31 0.0170669 0.0152567 67 85 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_020.v common 8.90 vpr 64.71 MiB 0.02 6968 -1 -1 13 0.19 -1 -1 36524 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 31 32 226 258 1 173 79 17 17 289 -1 unnamed_device 26.3 MiB 2.30 1007 5994 1309 4365 320 64.7 MiB 0.05 0.00 6.16152 -135.51 -6.16152 6.16152 0.92 0.00049347 0.000448879 0.020259 0.0185359 36 2543 18 6.79088e+06 215552 648988. 2245.63 3.47 0.179223 0.156459 25390 158009 -1 2262 16 980 2350 141726 32182 6.66272 6.66272 -153.309 -6.66272 0 0 828058. 2865.25 0.31 0.05 0.14 -1 -1 0.31 0.0211787 0.0190976 99 133 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_021.v common 8.39 vpr 64.98 MiB 0.02 6996 -1 -1 13 0.37 -1 -1 36996 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66540 32 32 302 334 1 222 86 17 17 289 -1 unnamed_device 26.4 MiB 1.51 1345 9914 2546 6157 1211 65.0 MiB 0.10 0.00 6.366 -136.357 -6.366 6.366 0.94 0.00067039 0.000601162 0.0394751 0.0356437 36 3591 45 6.79088e+06 296384 648988. 2245.63 3.35 0.200078 0.176375 25390 158009 -1 3033 18 1498 4017 238265 53542 6.70613 6.70613 -158.804 -6.70613 0 0 828058. 2865.25 0.33 0.09 0.16 -1 -1 0.33 0.0336123 0.0302929 143 207 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_022.v common 9.17 vpr 65.18 MiB 0.02 7092 -1 -1 13 0.37 -1 -1 36408 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 32 32 299 331 1 221 83 17 17 289 -1 unnamed_device 26.6 MiB 2.46 1380 11063 3219 6127 1717 65.2 MiB 0.10 0.00 6.55321 -142.566 -6.55321 6.55321 0.95 0.000660531 0.000593879 0.045042 0.0407172 44 3519 31 6.79088e+06 255968 787024. 2723.27 3.09 0.174951 0.153905 27118 194962 -1 2933 16 1383 3797 217545 47942 6.80802 6.80802 -157.8 -6.80802 0 0 997811. 3452.63 0.38 0.08 0.19 -1 -1 0.38 0.0293919 0.0266353 141 204 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_023.v common 12.21 vpr 63.98 MiB 0.02 6908 -1 -1 9 0.11 -1 -1 35860 -1 -1 16 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65520 26 32 149 181 1 119 74 17 17 289 -1 unnamed_device 25.6 MiB 2.04 571 10614 3246 6037 1331 64.0 MiB 0.06 0.00 3.9703 -73.7999 -3.9703 3.9703 1.00 0.000343894 0.000311525 0.0246442 0.0224991 30 1877 23 6.79088e+06 215552 556674. 1926.21 7.07 0.168276 0.146 24526 138013 -1 1459 18 728 1600 97402 23874 4.42875 4.42875 -94.3802 -4.42875 0 0 706193. 2443.58 0.29 0.05 0.13 -1 -1 0.29 0.0162416 0.0145509 64 66 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_024.v common 14.11 vpr 65.39 MiB 0.02 7000 -1 -1 13 0.37 -1 -1 36596 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 32 32 304 336 1 222 86 17 17 289 -1 unnamed_device 26.6 MiB 2.66 1418 10103 3085 6417 601 65.4 MiB 0.10 0.00 6.88531 -141.114 -6.88531 6.88531 0.96 0.000707871 0.000634469 0.0406704 0.0368038 36 4150 31 6.79088e+06 296384 648988. 2245.63 7.95 0.230777 0.204096 25390 158009 -1 3128 23 1793 5146 289452 63297 7.2178 7.2178 -160.775 -7.2178 0 0 828058. 2865.25 0.32 0.10 0.14 -1 -1 0.32 0.0372154 0.033225 137 209 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_025.v common 8.27 vpr 64.16 MiB 0.02 6652 -1 -1 8 0.10 -1 -1 36096 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65700 32 32 155 187 1 128 81 17 17 289 -1 unnamed_device 25.8 MiB 3.19 673 11631 3304 6221 2106 64.2 MiB 0.07 0.00 3.9703 -84.9145 -3.9703 3.9703 0.98 0.000355232 0.000323442 0.0257806 0.0235522 34 1782 21 6.79088e+06 229024 618332. 2139.56 1.97 0.105679 0.0924436 25102 150614 -1 1594 15 642 1468 104141 23874 4.0956 4.0956 -98.7289 -4.0956 0 0 787024. 2723.27 0.30 0.04 0.15 -1 -1 0.30 0.0143293 0.0128271 64 60 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_026.v common 10.52 vpr 64.46 MiB 0.02 7116 -1 -1 15 0.30 -1 -1 36504 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66004 32 32 253 285 1 192 81 17 17 289 -1 unnamed_device 26.1 MiB 2.40 1164 6206 1316 4251 639 64.5 MiB 0.06 0.00 7.38667 -150.094 -7.38667 7.38667 0.95 0.00060671 0.000552993 0.0245203 0.0223998 44 3151 28 6.79088e+06 229024 787024. 2723.27 4.65 0.242318 0.211342 27118 194962 -1 2489 17 1193 3205 187724 40906 7.38667 7.38667 -163.329 -7.38667 0 0 997811. 3452.63 0.38 0.07 0.19 -1 -1 0.38 0.0273461 0.0246833 118 158 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_027.v common 8.61 vpr 65.45 MiB 0.02 7116 -1 -1 12 0.32 -1 -1 36304 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 32 32 309 341 1 218 86 17 17 289 -1 unnamed_device 26.6 MiB 2.04 1227 5567 1085 4272 210 65.4 MiB 0.06 0.00 5.95772 -127.546 -5.95772 5.95772 0.97 0.000716764 0.000644954 0.0249422 0.022677 36 3814 34 6.79088e+06 296384 648988. 2245.63 3.09 0.186594 0.164902 25390 158009 -1 3030 16 1443 4266 258199 60407 6.45892 6.45892 -149.689 -6.45892 0 0 828058. 2865.25 0.32 0.09 0.15 -1 -1 0.32 0.0322154 0.0292663 145 214 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_028.v common 10.44 vpr 65.08 MiB 0.02 7236 -1 -1 13 0.34 -1 -1 36620 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66644 32 32 289 321 1 212 84 17 17 289 -1 unnamed_device 26.6 MiB 1.65 1176 5208 952 4097 159 65.1 MiB 0.06 0.00 6.38755 -132.959 -6.38755 6.38755 0.93 0.000674031 0.00061326 0.0228546 0.0208708 36 3432 33 6.79088e+06 269440 648988. 2245.63 5.41 0.208676 0.184735 25390 158009 -1 2737 22 1547 4451 248309 56235 6.88875 6.88875 -153.646 -6.88875 0 0 828058. 2865.25 0.31 0.10 0.14 -1 -1 0.31 0.0374769 0.0336761 136 194 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_029.v common 9.93 vpr 64.53 MiB 0.02 6804 -1 -1 12 0.21 -1 -1 36160 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66080 32 32 239 271 1 179 83 17 17 289 -1 unnamed_device 26.0 MiB 2.73 1046 4403 824 3392 187 64.5 MiB 0.04 0.00 5.40269 -122.396 -5.40269 5.40269 0.95 0.000529527 0.000479005 0.0162552 0.0148704 44 2486 19 6.79088e+06 255968 787024. 2723.27 3.88 0.181987 0.157879 27118 194962 -1 2075 16 947 2533 141420 32092 5.52799 5.52799 -133.007 -5.52799 0 0 997811. 3452.63 0.38 0.06 0.19 -1 -1 0.38 0.0235134 0.02118 106 144 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_030.v common 10.06 vpr 64.44 MiB 0.02 6984 -1 -1 11 0.18 -1 -1 36404 -1 -1 20 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65988 30 32 213 245 1 166 82 17 17 289 -1 unnamed_device 26.0 MiB 2.42 979 12008 3479 7251 1278 64.4 MiB 0.08 0.00 5.19894 -110.719 -5.19894 5.19894 0.94 0.000504221 0.000449343 0.0350107 0.0317389 44 2190 19 6.79088e+06 269440 787024. 2723.27 4.34 0.196355 0.171134 27118 194962 -1 1884 17 911 2417 127980 29254 5.32424 5.32424 -125.296 -5.32424 0 0 997811. 3452.63 0.40 0.06 0.18 -1 -1 0.40 0.0226562 0.0204523 97 122 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_031.v common 7.02 vpr 64.48 MiB 0.02 6828 -1 -1 11 0.20 -1 -1 36616 -1 -1 19 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66028 28 32 221 253 1 179 79 17 17 289 -1 unnamed_device 26.0 MiB 1.55 1041 11064 3324 5841 1899 64.5 MiB 0.09 0.00 5.52794 -112.262 -5.52794 5.52794 0.97 0.000527661 0.000481349 0.0379888 0.0345982 34 2923 25 6.79088e+06 255968 618332. 2139.56 2.19 0.137142 0.121045 25102 150614 -1 2375 15 1094 2755 162965 37528 5.90384 5.90384 -127.236 -5.90384 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0222638 0.0201787 107 134 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_032.v common 14.66 vpr 64.49 MiB 0.02 6980 -1 -1 12 0.24 -1 -1 36016 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66036 32 32 273 305 1 207 83 17 17 289 -1 unnamed_device 26.1 MiB 2.52 1120 4943 969 3627 347 64.5 MiB 0.06 0.00 5.82544 -133.42 -5.82544 5.82544 0.97 0.000615927 0.000561394 0.0211918 0.019228 34 3990 49 6.79088e+06 255968 618332. 2139.56 8.77 0.283292 0.247728 25102 150614 -1 3095 23 1609 3903 260258 59406 6.86698 6.86698 -172.273 -6.86698 0 0 787024. 2723.27 0.32 0.10 0.15 -1 -1 0.32 0.0346342 0.0310833 119 178 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_033.v common 7.87 vpr 64.50 MiB 0.02 6852 -1 -1 11 0.21 -1 -1 35980 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66052 31 32 238 270 1 181 80 17 17 289 -1 unnamed_device 26.0 MiB 1.99 920 10228 2707 5353 2168 64.5 MiB 0.09 0.00 5.40264 -123.039 -5.40264 5.40264 0.97 0.000549424 0.000498733 0.0363192 0.0330945 38 2686 33 6.79088e+06 229024 678818. 2348.85 2.50 0.183704 0.161766 25966 169698 -1 2145 23 1264 3531 175501 41429 6.02559 6.02559 -139.711 -6.02559 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.030136 0.0268319 107 145 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_034.v common 7.53 vpr 64.59 MiB 0.02 6940 -1 -1 10 0.17 -1 -1 36604 -1 -1 18 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 29 32 221 253 1 160 79 17 17 289 -1 unnamed_device 26.1 MiB 1.80 899 9205 2421 5901 883 64.6 MiB 0.07 0.00 5.07702 -108.463 -5.07702 5.07702 1.00 0.000499042 0.000444402 0.0310244 0.0281792 32 2672 32 6.79088e+06 242496 586450. 2029.24 1.96 0.152435 0.134286 24814 144142 -1 2263 64 1068 3343 1403981 967083 5.70352 5.70352 -135.786 -5.70352 0 0 744469. 2576.02 0.31 0.56 0.14 -1 -1 0.31 0.0730695 0.0645836 103 132 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_035.v common 25.52 vpr 65.39 MiB 0.02 7108 -1 -1 13 0.43 -1 -1 37004 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 32 32 333 365 1 236 86 17 17 289 -1 unnamed_device 27.0 MiB 1.96 1445 7079 1584 5263 232 65.4 MiB 0.08 0.00 6.58432 -140.322 -6.58432 6.58432 0.94 0.000738448 0.000669388 0.0318316 0.0288401 38 3998 23 6.79088e+06 296384 678818. 2348.85 19.86 0.382716 0.335424 25966 169698 -1 3300 27 1793 6233 582012 217695 6.83492 6.83492 -156.571 -6.83492 0 0 902133. 3121.57 0.34 0.20 0.16 -1 -1 0.34 0.0489307 0.0438692 162 238 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_036.v common 11.01 vpr 65.23 MiB 0.02 7072 -1 -1 13 0.40 -1 -1 36768 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66800 32 32 297 329 1 231 85 17 17 289 -1 unnamed_device 26.9 MiB 2.29 1368 14035 4287 7111 2637 65.2 MiB 0.13 0.00 6.20842 -135.639 -6.20842 6.20842 0.95 0.000680213 0.000611249 0.0559224 0.0503842 46 3364 22 6.79088e+06 282912 828058. 2865.25 5.05 0.262976 0.230305 27406 200422 -1 2702 16 1351 3938 199388 45358 6.83836 6.83836 -158.637 -6.83836 0 0 1.01997e+06 3529.29 0.38 0.08 0.19 -1 -1 0.38 0.031213 0.0282478 152 202 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_037.v common 8.98 vpr 64.55 MiB 0.02 6960 -1 -1 12 0.17 -1 -1 36532 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66104 31 32 234 266 1 169 81 17 17 289 -1 unnamed_device 26.1 MiB 1.58 953 10756 4361 6105 290 64.6 MiB 0.08 0.00 5.91508 -130.196 -5.91508 5.91508 0.94 0.000520889 0.000471262 0.035505 0.0321954 44 2417 27 6.79088e+06 242496 787024. 2723.27 4.13 0.212446 0.185375 27118 194962 -1 1954 17 905 2539 131178 30371 6.16568 6.16568 -143.603 -6.16568 0 0 997811. 3452.63 0.39 0.06 0.18 -1 -1 0.39 0.0233519 0.0210559 102 141 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_038.v common 8.69 vpr 65.34 MiB 0.02 7228 -1 -1 12 0.33 -1 -1 37224 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66908 31 32 310 342 1 217 86 17 17 289 -1 unnamed_device 26.5 MiB 1.61 1455 9536 2650 5645 1241 65.3 MiB 0.10 0.00 6.45902 -138.574 -6.45902 6.45902 0.96 0.000725851 0.000655644 0.0410144 0.0373523 38 3819 30 6.79088e+06 309856 678818. 2348.85 3.57 0.227602 0.201237 25966 169698 -1 3028 16 1494 4719 234741 52859 6.79572 6.79572 -152.678 -6.79572 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.0307957 0.0278891 148 217 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_039.v common 9.77 vpr 65.27 MiB 0.02 7072 -1 -1 14 0.44 -1 -1 36572 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66836 31 32 284 316 1 219 84 17 17 289 -1 unnamed_device 26.7 MiB 1.47 1407 9051 2173 5719 1159 65.3 MiB 0.09 0.00 6.97147 -143.854 -6.97147 6.97147 0.97 0.0006874 0.000626149 0.0383466 0.034869 36 3544 29 6.79088e+06 282912 648988. 2245.63 4.64 0.288209 0.255637 25390 158009 -1 3078 17 1462 4113 251674 56151 7.22207 7.22207 -160.824 -7.22207 0 0 828058. 2865.25 0.33 0.09 0.15 -1 -1 0.33 0.030765 0.0277476 146 191 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_040.v common 23.35 vpr 65.02 MiB 0.02 7264 -1 -1 13 0.33 -1 -1 36948 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 31 32 271 303 1 211 84 17 17 289 -1 unnamed_device 26.5 MiB 2.90 1258 12162 3945 6130 2087 65.0 MiB 0.11 0.00 6.79572 -139.555 -6.79572 6.79572 0.94 0.000654364 0.000596574 0.0458888 0.0417062 40 3448 39 6.79088e+06 282912 706193. 2443.58 16.92 0.367763 0.320415 26254 175826 -1 3013 23 1701 4578 316848 67455 7.19958 7.19958 -162.92 -7.19958 0 0 926341. 3205.33 0.35 0.11 0.17 -1 -1 0.35 0.0344778 0.0308326 126 178 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_041.v common 13.18 vpr 65.04 MiB 0.02 7060 -1 -1 12 0.32 -1 -1 36756 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 31 32 280 312 1 206 86 17 17 289 -1 unnamed_device 26.6 MiB 1.19 1319 12182 3409 7340 1433 65.0 MiB 0.10 0.00 6.13346 -132.947 -6.13346 6.13346 1.01 0.000669576 0.000606394 0.0446134 0.040444 36 3516 49 6.79088e+06 309856 648988. 2245.63 8.50 0.234458 0.206092 25390 158009 -1 3010 19 1315 3862 246168 53541 6.25876 6.25876 -148.145 -6.25876 0 0 828058. 2865.25 0.31 0.09 0.15 -1 -1 0.31 0.030602 0.0274356 135 187 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_042.v common 7.58 vpr 64.80 MiB 0.02 6960 -1 -1 12 0.24 -1 -1 36384 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66356 32 32 264 296 1 188 81 17 17 289 -1 unnamed_device 26.2 MiB 1.46 1008 11106 4041 5130 1935 64.8 MiB 0.09 0.00 5.78552 -118.279 -5.78552 5.78552 0.96 0.000585439 0.000531654 0.0403164 0.0366803 36 3392 37 6.79088e+06 229024 648988. 2245.63 2.77 0.165807 0.145519 25390 158009 -1 2422 23 1348 3624 225608 51747 6.24054 6.24054 -140.117 -6.24054 0 0 828058. 2865.25 0.32 0.09 0.15 -1 -1 0.32 0.032002 0.0284919 113 169 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_043.v common 9.13 vpr 65.38 MiB 0.02 7180 -1 -1 14 0.58 -1 -1 36748 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66948 32 32 339 371 1 247 89 17 17 289 -1 unnamed_device 26.9 MiB 1.73 1467 14147 4008 8155 1984 65.4 MiB 0.14 0.00 6.95723 -148.867 -6.95723 6.95723 0.97 0.000768692 0.000696488 0.0603062 0.054557 40 3567 19 6.79088e+06 336800 706193. 2443.58 3.46 0.249416 0.221342 26254 175826 -1 3568 18 1704 4947 313530 68183 7.17511 7.17511 -169.569 -7.17511 0 0 926341. 3205.33 0.35 0.11 0.17 -1 -1 0.35 0.0380209 0.0343515 169 244 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_044.v common 13.91 vpr 64.72 MiB 0.02 6824 -1 -1 11 0.24 -1 -1 36500 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66276 31 32 246 278 1 185 81 17 17 289 -1 unnamed_device 26.2 MiB 2.23 1052 10756 3360 5843 1553 64.7 MiB 0.09 0.00 5.69587 -118.416 -5.69587 5.69587 1.00 0.000570823 0.000517288 0.0389035 0.0352511 34 3236 40 6.79088e+06 242496 618332. 2139.56 8.28 0.321895 0.283204 25102 150614 -1 2721 18 1428 3799 265354 58365 5.89608 5.89608 -138.067 -5.89608 0 0 787024. 2723.27 0.32 0.09 0.14 -1 -1 0.32 0.028515 0.0256427 113 153 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_045.v common 9.74 vpr 64.95 MiB 0.02 7060 -1 -1 13 0.34 -1 -1 36680 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66512 31 32 268 300 1 191 82 17 17 289 -1 unnamed_device 26.5 MiB 1.96 1144 5956 1217 4545 194 65.0 MiB 0.06 0.00 6.29796 -125.135 -6.29796 6.29796 0.95 0.00057174 0.000518801 0.0245595 0.0223143 36 3232 30 6.79088e+06 255968 648988. 2245.63 4.36 0.191861 0.168593 25390 158009 -1 2636 19 1251 3814 232746 51087 6.69489 6.69489 -141.968 -6.69489 0 0 828058. 2865.25 0.33 0.09 0.14 -1 -1 0.33 0.0325835 0.0293621 132 175 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_046.v common 24.16 vpr 65.41 MiB 0.02 7212 -1 -1 12 0.33 -1 -1 36600 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66980 32 32 318 350 1 227 85 17 17 289 -1 unnamed_device 26.6 MiB 1.77 1408 7525 1730 5097 698 65.4 MiB 0.08 0.00 5.91857 -133.131 -5.91857 5.91857 0.97 0.000724491 0.000658274 0.0335766 0.0305611 38 3995 45 6.79088e+06 282912 678818. 2348.85 18.86 0.393618 0.344386 25966 169698 -1 3154 17 1459 4438 238029 52470 6.29098 6.29098 -153.12 -6.29098 0 0 902133. 3121.57 0.33 0.09 0.17 -1 -1 0.33 0.0326464 0.0294603 153 223 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_047.v common 8.78 vpr 64.63 MiB 0.02 7176 -1 -1 13 0.30 -1 -1 36572 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66180 32 32 273 305 1 198 83 17 17 289 -1 unnamed_device 26.2 MiB 1.65 1284 10883 2759 6457 1667 64.6 MiB 0.10 0.00 6.33023 -134.932 -6.33023 6.33023 0.94 0.000620821 0.000562899 0.0420583 0.0382927 38 3221 26 6.79088e+06 255968 678818. 2348.85 3.70 0.196972 0.173505 25966 169698 -1 2765 16 1268 3587 218567 52311 6.95673 6.95673 -157.948 -6.95673 0 0 902133. 3121.57 0.33 0.08 0.17 -1 -1 0.33 0.0279624 0.025358 131 178 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_048.v common 8.41 vpr 64.91 MiB 0.02 7248 -1 -1 13 0.27 -1 -1 36420 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66464 32 32 269 301 1 198 81 17 17 289 -1 unnamed_device 26.5 MiB 2.50 1077 10931 3598 5001 2332 64.9 MiB 0.10 0.00 6.53393 -136.797 -6.53393 6.53393 0.96 0.000618149 0.00056103 0.0421831 0.0383411 36 3157 41 6.79088e+06 229024 648988. 2245.63 2.49 0.188599 0.166524 25390 158009 -1 2534 20 1281 3370 199525 45177 6.84257 6.84257 -155.883 -6.84257 0 0 828058. 2865.25 0.31 0.08 0.15 -1 -1 0.31 0.0306785 0.0274704 118 174 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_049.v common 10.57 vpr 65.33 MiB 0.02 7204 -1 -1 12 0.34 -1 -1 36756 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66896 32 32 298 330 1 217 87 17 17 289 -1 unnamed_device 26.8 MiB 2.44 1343 8919 2074 5792 1053 65.3 MiB 0.08 0.00 6.24757 -138.882 -6.24757 6.24757 0.94 0.000642113 0.000580187 0.034658 0.0313951 36 3621 45 6.79088e+06 309856 648988. 2245.63 4.69 0.238815 0.210822 25390 158009 -1 2921 17 1306 4060 237590 52423 6.74877 6.74877 -161.24 -6.74877 0 0 828058. 2865.25 0.32 0.08 0.14 -1 -1 0.32 0.0315945 0.0285252 150 203 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_050.v common 10.66 vpr 65.45 MiB 0.02 7228 -1 -1 13 0.35 -1 -1 36576 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67020 32 32 299 331 1 229 84 17 17 289 -1 unnamed_device 26.7 MiB 2.66 1424 6855 1530 4759 566 65.4 MiB 0.07 0.00 6.58776 -143.42 -6.58776 6.58776 0.94 0.000671813 0.000607164 0.029498 0.0267728 38 3481 32 6.79088e+06 269440 678818. 2348.85 4.54 0.209399 0.184445 25966 169698 -1 2839 15 1384 3716 195749 43958 7.08896 7.08896 -166.135 -7.08896 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.0298836 0.0271943 143 204 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_051.v common 11.40 vpr 64.75 MiB 0.02 7020 -1 -1 14 0.34 -1 -1 36796 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 32 32 259 291 1 195 82 17 17 289 -1 unnamed_device 26.4 MiB 2.70 1221 7558 1837 5223 498 64.8 MiB 0.07 0.00 7.08907 -148.787 -7.08907 7.08907 0.95 0.000601899 0.000544776 0.0295709 0.0269116 40 2996 26 6.79088e+06 242496 706193. 2443.58 5.18 0.283275 0.247743 26254 175826 -1 2746 20 1265 3646 219764 48915 7.33967 7.33967 -167.25 -7.33967 0 0 926341. 3205.33 0.35 0.08 0.17 -1 -1 0.35 0.0313643 0.0282534 123 164 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_052.v common 12.04 vpr 64.79 MiB 0.02 6928 -1 -1 13 0.35 -1 -1 36740 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66344 32 32 293 325 1 216 84 17 17 289 -1 unnamed_device 26.3 MiB 4.11 1312 8502 1906 5672 924 64.8 MiB 0.08 0.00 6.66621 -141.12 -6.66621 6.66621 0.94 0.000646041 0.000586557 0.0341186 0.0310424 44 3035 26 6.79088e+06 269440 787024. 2723.27 4.38 0.245702 0.21486 27118 194962 -1 2638 16 1285 3463 180778 41434 6.87761 6.87761 -154.292 -6.87761 0 0 997811. 3452.63 0.38 0.07 0.19 -1 -1 0.38 0.0282741 0.0256181 134 198 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_053.v common 8.03 vpr 65.18 MiB 0.02 7300 -1 -1 13 0.37 -1 -1 36676 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66740 31 32 311 343 1 236 86 17 17 289 -1 unnamed_device 26.4 MiB 1.58 1336 9725 2391 6910 424 65.2 MiB 0.10 0.00 6.96028 -144.325 -6.96028 6.96028 0.95 0.000708575 0.000630607 0.0410853 0.0370219 38 4314 42 6.79088e+06 309856 678818. 2348.85 2.93 0.200477 0.175776 25966 169698 -1 2912 17 1693 4887 245951 56281 7.46147 7.46147 -166.788 -7.46147 0 0 902133. 3121.57 0.33 0.09 0.16 -1 -1 0.33 0.0319434 0.0287763 154 218 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_054.v common 10.27 vpr 65.33 MiB 0.02 6996 -1 -1 12 0.37 -1 -1 36560 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66900 32 32 324 356 1 230 88 17 17 289 -1 unnamed_device 26.5 MiB 1.55 1335 12373 3606 6623 2144 65.3 MiB 0.11 0.00 6.24752 -135.566 -6.24752 6.24752 0.96 0.000680164 0.000620306 0.0481545 0.043638 38 4076 48 6.79088e+06 323328 678818. 2348.85 5.17 0.265704 0.234046 25966 169698 -1 2879 22 1514 4310 256340 74109 6.74877 6.74877 -157.78 -6.74877 0 0 902133. 3121.57 0.34 0.10 0.15 -1 -1 0.34 0.0378483 0.0339703 157 229 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_055.v common 9.37 vpr 64.37 MiB 0.02 6784 -1 -1 11 0.16 -1 -1 36344 -1 -1 13 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65912 32 32 216 248 1 162 77 17 17 289 -1 unnamed_device 25.9 MiB 1.82 922 7412 1713 5080 619 64.4 MiB 0.06 0.00 5.22351 -115.977 -5.22351 5.22351 0.99 0.000503186 0.000458617 0.025422 0.0232133 46 2127 21 6.79088e+06 175136 828058. 2865.25 4.18 0.180876 0.158255 27406 200422 -1 1749 14 864 2149 113379 26515 5.59941 5.59941 -132.277 -5.59941 0 0 1.01997e+06 3529.29 0.39 0.05 0.19 -1 -1 0.39 0.01989 0.017941 90 121 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_056.v common 8.91 vpr 64.82 MiB 0.02 6884 -1 -1 13 0.24 -1 -1 36676 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66380 32 32 245 277 1 192 81 17 17 289 -1 unnamed_device 26.2 MiB 3.12 1117 10056 2741 5089 2226 64.8 MiB 0.09 0.00 6.38411 -138.388 -6.38411 6.38411 0.98 0.000580903 0.000528369 0.0366186 0.0334166 38 2923 25 6.79088e+06 229024 678818. 2348.85 2.39 0.183027 0.161969 25966 169698 -1 2385 15 1114 2800 149305 33890 6.88531 6.88531 -162.544 -6.88531 0 0 902133. 3121.57 0.33 0.06 0.16 -1 -1 0.33 0.0241745 0.0217929 113 150 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_057.v common 9.54 vpr 65.96 MiB 0.02 7164 -1 -1 14 0.57 -1 -1 36692 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67540 32 32 361 393 1 262 88 17 17 289 -1 unnamed_device 27.2 MiB 1.35 1515 15883 4784 8717 2382 66.0 MiB 0.16 0.00 7.16747 -150.878 -7.16747 7.16747 0.95 0.000799563 0.000724908 0.0703177 0.0636523 44 4701 38 6.79088e+06 323328 787024. 2723.27 4.26 0.255473 0.225354 27118 194962 -1 3491 20 1952 6078 349605 78801 7.50416 7.50416 -167.657 -7.50416 0 0 997811. 3452.63 0.38 0.12 0.19 -1 -1 0.38 0.0416946 0.0376878 180 266 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_058.v common 8.72 vpr 65.63 MiB 0.02 6980 -1 -1 13 0.42 -1 -1 36924 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67204 32 32 318 350 1 242 85 17 17 289 -1 unnamed_device 27.0 MiB 3.01 1433 4735 888 3424 423 65.6 MiB 0.06 0.00 6.9672 -152.576 -6.9672 6.9672 0.94 0.000717423 0.000644992 0.0227575 0.0206535 38 3693 20 6.79088e+06 282912 678818. 2348.85 2.19 0.162433 0.142555 25966 169698 -1 2914 16 1291 3608 188091 42213 7.3431 7.3431 -172.867 -7.3431 0 0 902133. 3121.57 0.33 0.08 0.16 -1 -1 0.33 0.0322034 0.0291357 154 223 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_059.v common 13.58 vpr 64.39 MiB 0.02 6920 -1 -1 11 0.21 -1 -1 36628 -1 -1 17 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65932 30 32 223 255 1 164 79 17 17 289 -1 unnamed_device 25.9 MiB 0.87 884 13937 6023 7591 323 64.4 MiB 0.11 0.00 5.65673 -120.617 -5.65673 5.65673 0.98 0.000540556 0.000492673 0.0463892 0.0422108 36 2560 46 6.79088e+06 229024 648988. 2245.63 9.39 0.294456 0.257091 25390 158009 -1 1946 18 972 2746 148293 35275 5.74283 5.74283 -132.344 -5.74283 0 0 828058. 2865.25 0.31 0.06 0.15 -1 -1 0.31 0.023373 0.0210129 99 132 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_060.v common 25.52 vpr 65.41 MiB 0.02 7300 -1 -1 15 0.52 -1 -1 37492 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66984 32 32 335 367 1 254 88 17 17 289 -1 unnamed_device 26.9 MiB 1.51 1539 13543 3429 7947 2167 65.4 MiB 0.13 0.00 7.89136 -160.045 -7.89136 7.89136 0.90 0.000770148 0.000697591 0.0565086 0.0512327 38 4506 50 6.79088e+06 323328 678818. 2348.85 20.35 0.462661 0.407225 25966 169698 -1 3489 18 1784 5296 302535 66094 8.1454 8.1454 -180.583 -8.1454 0 0 902133. 3121.57 0.34 0.11 0.17 -1 -1 0.34 0.0408747 0.0371455 172 240 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_061.v common 8.45 vpr 65.03 MiB 0.02 7128 -1 -1 13 0.41 -1 -1 36436 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 32 32 301 333 1 229 86 17 17 289 -1 unnamed_device 26.5 MiB 1.42 1376 11426 3439 6869 1118 65.0 MiB 0.11 0.00 6.5798 -147.556 -6.5798 6.5798 0.94 0.000696809 0.000627237 0.0460092 0.0415961 36 4030 43 6.79088e+06 296384 648988. 2245.63 3.44 0.236778 0.209149 25390 158009 -1 3248 21 1541 4155 244662 54499 6.99141 6.99141 -170.195 -6.99141 0 0 828058. 2865.25 0.32 0.09 0.15 -1 -1 0.32 0.0365541 0.0329283 149 206 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_062.v common 8.06 vpr 64.61 MiB 0.02 7016 -1 -1 11 0.16 -1 -1 36444 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66164 32 32 238 270 1 173 80 17 17 289 -1 unnamed_device 26.2 MiB 2.08 983 12292 4495 6144 1653 64.6 MiB 0.10 0.00 5.49998 -127.786 -5.49998 5.49998 0.95 0.000521985 0.00047176 0.0397932 0.0360364 36 2582 20 6.79088e+06 215552 648988. 2245.63 2.78 0.160021 0.140511 25390 158009 -1 2045 15 900 2216 121610 28137 5.82549 5.82549 -142.367 -5.82549 0 0 828058. 2865.25 0.32 0.05 0.15 -1 -1 0.32 0.0215848 0.0194452 97 143 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_063.v common 10.58 vpr 65.46 MiB 0.02 7380 -1 -1 12 0.35 -1 -1 36652 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67032 32 32 308 340 1 226 85 17 17 289 -1 unnamed_device 26.6 MiB 1.85 1368 12733 3238 7715 1780 65.5 MiB 0.11 0.00 6.44783 -141.106 -6.44783 6.44783 0.94 0.000642962 0.00057549 0.0507737 0.0456668 44 3391 29 6.79088e+06 282912 787024. 2723.27 5.14 0.332536 0.292178 27118 194962 -1 2841 20 1343 4246 236952 52196 6.74877 6.74877 -155.813 -6.74877 0 0 997811. 3452.63 0.39 0.09 0.18 -1 -1 0.39 0.0355562 0.0320004 152 213 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_064.v common 22.00 vpr 64.85 MiB 0.02 6996 -1 -1 12 0.26 -1 -1 36252 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 253 285 1 190 80 17 17 289 -1 unnamed_device 26.3 MiB 2.20 1123 12464 4867 6424 1173 64.8 MiB 0.11 0.00 5.91857 -129.518 -5.91857 5.91857 0.96 0.000590574 0.000537573 0.0466347 0.0423494 40 2962 34 6.79088e+06 215552 706193. 2443.58 16.29 0.340779 0.297752 26254 175826 -1 2644 25 1529 4204 344174 103466 6.45543 6.45543 -151.176 -6.45543 0 0 926341. 3205.33 0.37 0.13 0.17 -1 -1 0.37 0.0362195 0.0323432 115 158 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_065.v common 5.72 vpr 64.54 MiB 0.02 6876 -1 -1 12 0.21 -1 -1 36504 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66084 30 32 227 259 1 163 81 17 17 289 -1 unnamed_device 26.1 MiB 1.54 903 12506 3860 6811 1835 64.5 MiB 0.09 0.00 6.47016 -128.362 -6.47016 6.47016 0.90 0.000502673 0.000457608 0.0393121 0.0358888 30 2375 28 6.79088e+06 255968 556674. 1926.21 1.12 0.120147 0.106455 24526 138013 -1 1871 16 813 2396 107693 26192 6.47016 6.47016 -142.039 -6.47016 0 0 706193. 2443.58 0.27 0.05 0.12 -1 -1 0.27 0.0224709 0.020318 105 136 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_066.v common 8.75 vpr 65.12 MiB 0.02 7196 -1 -1 12 0.37 -1 -1 36532 -1 -1 24 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66688 29 32 292 324 1 202 85 17 17 289 -1 unnamed_device 26.6 MiB 1.75 1104 15337 5572 7539 2226 65.1 MiB 0.13 0.00 6.68272 -126.167 -6.68272 6.68272 0.94 0.000662638 0.000599666 0.0583079 0.0528041 38 2928 24 6.79088e+06 323328 678818. 2348.85 3.44 0.218414 0.192113 25966 169698 -1 2288 15 1133 3577 175168 40755 6.80802 6.80802 -136.323 -6.80802 0 0 902133. 3121.57 0.36 0.07 0.16 -1 -1 0.36 0.0303203 0.0275913 144 203 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_067.v common 11.26 vpr 65.59 MiB 0.02 7124 -1 -1 14 0.41 -1 -1 36440 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67168 32 32 316 348 1 248 86 17 17 289 -1 unnamed_device 26.9 MiB 3.07 1439 7835 2127 5026 682 65.6 MiB 0.08 0.00 6.81035 -143.688 -6.81035 6.81035 0.94 0.000710797 0.000638068 0.0340477 0.0308765 38 3931 34 6.79088e+06 296384 678818. 2348.85 4.63 0.22123 0.194262 25966 169698 -1 3161 19 1791 4542 235809 53787 7.18625 7.18625 -167.788 -7.18625 0 0 902133. 3121.57 0.33 0.09 0.16 -1 -1 0.33 0.035571 0.0320954 155 221 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_068.v common 9.55 vpr 65.07 MiB 0.02 7056 -1 -1 12 0.30 -1 -1 36720 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 32 32 286 318 1 212 83 17 17 289 -1 unnamed_device 26.6 MiB 1.75 1301 12863 4333 6208 2322 65.1 MiB 0.12 0.00 6.25532 -137.4 -6.25532 6.25532 0.97 0.000688679 0.000623078 0.0515366 0.0467402 38 3709 46 6.79088e+06 255968 678818. 2348.85 4.28 0.242262 0.213661 25966 169698 -1 2974 18 1410 4157 255350 55621 6.63122 6.63122 -157.373 -6.63122 0 0 902133. 3121.57 0.33 0.09 0.16 -1 -1 0.33 0.0309885 0.0278948 137 191 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_069.v common 7.50 vpr 64.31 MiB 0.02 6904 -1 -1 12 0.18 -1 -1 36540 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65852 32 32 221 253 1 164 79 17 17 289 -1 unnamed_device 25.9 MiB 1.68 955 5994 1268 4551 175 64.3 MiB 0.05 0.00 5.91857 -125.686 -5.91857 5.91857 0.93 0.000489958 0.000445408 0.020424 0.0186461 34 2756 25 6.79088e+06 202080 618332. 2139.56 2.65 0.139811 0.122153 25102 150614 -1 2191 15 917 2464 158401 34971 6.41977 6.41977 -149.168 -6.41977 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0210203 0.0189172 95 126 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_070.v common 10.78 vpr 64.45 MiB 0.02 7048 -1 -1 12 0.27 -1 -1 36332 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66000 31 32 261 293 1 187 81 17 17 289 -1 unnamed_device 26.1 MiB 2.42 1085 10756 3299 5343 2114 64.5 MiB 0.09 0.00 5.87937 -127.933 -5.87937 5.87937 0.94 0.000604569 0.000547452 0.0401532 0.0364154 46 2515 18 6.79088e+06 242496 828058. 2865.25 4.90 0.207734 0.181872 27406 200422 -1 2154 17 1028 2901 143757 33110 6.20488 6.20488 -140.602 -6.20488 0 0 1.01997e+06 3529.29 0.39 0.06 0.19 -1 -1 0.39 0.02707 0.0243784 114 168 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_071.v common 21.06 vpr 64.86 MiB 0.02 6940 -1 -1 11 0.24 -1 -1 36568 -1 -1 22 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66420 30 32 277 309 1 200 84 17 17 289 -1 unnamed_device 26.4 MiB 3.40 1231 5940 1419 3879 642 64.9 MiB 0.06 0.00 5.61753 -119.458 -5.61753 5.61753 0.95 0.000638383 0.000562894 0.0249125 0.0225251 40 2942 32 6.79088e+06 296384 706193. 2443.58 14.26 0.325354 0.283193 26254 175826 -1 2811 19 1277 3905 245905 53575 5.85688 5.85688 -138.65 -5.85688 0 0 926341. 3205.33 0.36 0.09 0.17 -1 -1 0.36 0.0323825 0.0292566 129 186 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_072.v common 10.38 vpr 64.82 MiB 0.02 7232 -1 -1 11 0.26 -1 -1 36340 -1 -1 21 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 28 32 251 283 1 191 81 17 17 289 -1 unnamed_device 26.4 MiB 1.70 1038 12331 4331 5522 2478 64.8 MiB 0.10 0.00 5.95423 -109.675 -5.95423 5.95423 0.95 0.000575417 0.000522929 0.0437856 0.0397303 40 2850 26 6.79088e+06 282912 706193. 2443.58 5.26 0.262534 0.228952 26254 175826 -1 2507 17 1158 3230 210014 46691 6.07953 6.07953 -124.911 -6.07953 0 0 926341. 3205.33 0.35 0.08 0.17 -1 -1 0.35 0.0295391 0.0267845 125 164 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_073.v common 9.09 vpr 64.57 MiB 0.02 7088 -1 -1 13 0.23 -1 -1 36440 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66120 30 32 223 255 1 173 78 17 17 289 -1 unnamed_device 26.1 MiB 3.61 1071 10868 2961 6635 1272 64.6 MiB 0.09 0.00 6.00472 -122.546 -6.00472 6.00472 0.96 0.000516365 0.000469872 0.0373997 0.0340076 38 2634 25 6.79088e+06 215552 678818. 2348.85 2.15 0.160316 0.140236 25966 169698 -1 2145 15 981 2579 133153 30641 6.13002 6.13002 -136.569 -6.13002 0 0 902133. 3121.57 0.33 0.06 0.16 -1 -1 0.33 0.0218961 0.0196749 104 132 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_074.v common 18.05 vpr 64.93 MiB 0.02 7044 -1 -1 12 0.25 -1 -1 36532 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66484 32 32 269 301 1 197 84 17 17 289 -1 unnamed_device 26.5 MiB 2.49 1163 6123 1243 4041 839 64.9 MiB 0.05 0.00 6.03612 -137.142 -6.03612 6.03612 0.98 0.00060398 0.000554582 0.0225361 0.0205176 36 3337 43 6.79088e+06 269440 648988. 2245.63 12.18 0.305382 0.268008 25390 158009 -1 2715 18 1215 3178 199011 43879 6.16142 6.16142 -153.216 -6.16142 0 0 828058. 2865.25 0.32 0.08 0.15 -1 -1 0.32 0.029679 0.0267641 125 174 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_075.v common 9.13 vpr 64.94 MiB 0.02 6988 -1 -1 13 0.36 -1 -1 36428 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 31 32 283 315 1 193 83 17 17 289 -1 unnamed_device 26.4 MiB 2.36 1247 8183 2047 4915 1221 64.9 MiB 0.08 0.00 6.54518 -135.608 -6.54518 6.54518 0.95 0.000627008 0.000566132 0.0325958 0.0295951 34 3382 37 6.79088e+06 269440 618332. 2139.56 3.31 0.204228 0.179102 25102 150614 -1 2746 19 1308 3840 211784 49103 7.05751 7.05751 -158.224 -7.05751 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0321566 0.0290571 137 190 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_076.v common 18.76 vpr 65.41 MiB 0.02 7176 -1 -1 14 0.36 -1 -1 36788 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66976 32 32 308 340 1 224 85 17 17 289 -1 unnamed_device 26.6 MiB 1.89 1351 15337 4423 8268 2646 65.4 MiB 0.14 0.00 7.47965 -152.205 -7.47965 7.47965 0.95 0.000680896 0.000616542 0.0612798 0.0554696 30 4091 43 6.79088e+06 282912 556674. 1926.21 13.40 0.308148 0.26992 24526 138013 -1 3121 18 1425 3864 215930 48744 7.98084 7.98084 -178.815 -7.98084 0 0 706193. 2443.58 0.28 0.08 0.13 -1 -1 0.28 0.0334891 0.030281 149 213 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_077.v common 10.76 vpr 65.05 MiB 0.02 6952 -1 -1 14 0.31 -1 -1 36484 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66608 32 32 277 309 1 209 84 17 17 289 -1 unnamed_device 26.5 MiB 2.67 1294 14175 4633 7001 2541 65.0 MiB 0.12 0.00 6.67053 -135.191 -6.67053 6.67053 0.90 0.000564273 0.000512711 0.0515919 0.0469611 46 2898 17 6.79088e+06 269440 828058. 2865.25 4.70 0.24118 0.213341 27406 200422 -1 2574 15 1156 3480 178637 40048 7.09333 7.09333 -152.888 -7.09333 0 0 1.01997e+06 3529.29 0.37 0.07 0.18 -1 -1 0.37 0.0270415 0.0244871 136 182 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_078.v common 24.65 vpr 65.16 MiB 0.02 7208 -1 -1 13 0.41 -1 -1 37388 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66728 32 32 288 320 1 210 83 17 17 289 -1 unnamed_device 26.6 MiB 2.41 1321 11243 2895 6563 1785 65.2 MiB 0.10 0.00 6.74882 -141.446 -6.74882 6.74882 0.96 0.000631555 0.000566765 0.0447819 0.0405471 42 3882 37 6.79088e+06 255968 744469. 2576.02 18.56 0.371353 0.326815 26542 182613 -1 2892 29 1413 4282 436537 174698 6.79921 6.79921 -154.744 -6.79921 0 0 949917. 3286.91 0.36 0.16 0.17 -1 -1 0.36 0.0447375 0.0398996 139 193 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_079.v common 9.68 vpr 64.77 MiB 0.02 7052 -1 -1 13 0.22 -1 -1 36364 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 30 32 230 262 1 176 78 17 17 289 -1 unnamed_device 26.2 MiB 1.99 936 7880 2110 5433 337 64.8 MiB 0.07 0.00 5.84133 -123.22 -5.84133 5.84133 0.94 0.000529098 0.00048172 0.0282051 0.0256963 38 2488 31 6.79088e+06 215552 678818. 2348.85 4.41 0.203225 0.17723 25966 169698 -1 1993 14 939 2317 120736 28384 6.08307 6.08307 -138.843 -6.08307 0 0 902133. 3121.57 0.33 0.05 0.16 -1 -1 0.33 0.0211311 0.0191196 106 139 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_080.v common 7.86 vpr 65.19 MiB 0.02 7216 -1 -1 13 0.57 -1 -1 36472 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66756 30 32 294 326 1 222 85 17 17 289 -1 unnamed_device 26.4 MiB 1.79 1355 13849 4587 6805 2457 65.2 MiB 0.13 0.00 6.88105 -138.606 -6.88105 6.88105 0.98 0.000692244 0.000629329 0.0565346 0.0514681 38 3294 24 6.79088e+06 309856 678818. 2348.85 2.24 0.194599 0.173144 25966 169698 -1 2831 18 1480 3763 195171 44486 7.38225 7.38225 -163.051 -7.38225 0 0 902133. 3121.57 0.34 0.08 0.16 -1 -1 0.34 0.0336594 0.0304287 144 203 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_081.v common 11.08 vpr 65.15 MiB 0.02 7124 -1 -1 14 0.37 -1 -1 36540 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66712 32 32 276 308 1 206 84 17 17 289 -1 unnamed_device 26.7 MiB 2.10 1247 9234 2286 5752 1196 65.1 MiB 0.09 0.00 7.05757 -151.342 -7.05757 7.05757 0.97 0.000639355 0.000579659 0.0363688 0.0330049 44 3147 21 6.79088e+06 269440 787024. 2723.27 5.37 0.288922 0.254457 27118 194962 -1 2536 15 1072 3330 187483 41148 7.55876 7.55876 -168.857 -7.55876 0 0 997811. 3452.63 0.38 0.07 0.19 -1 -1 0.38 0.0260861 0.0236584 133 181 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_082.v common 18.55 vpr 64.85 MiB 0.02 7076 -1 -1 12 0.32 -1 -1 37100 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66408 31 32 293 325 1 212 84 17 17 289 -1 unnamed_device 26.4 MiB 2.16 1324 9417 2512 5098 1807 64.9 MiB 0.08 0.00 6.38406 -131.556 -6.38406 6.38406 0.94 0.000592204 0.000538306 0.0358889 0.0327607 38 3323 26 6.79088e+06 282912 678818. 2348.85 12.95 0.308683 0.269691 25966 169698 -1 2732 19 1331 3772 197743 44323 6.75996 6.75996 -151.756 -6.75996 0 0 902133. 3121.57 0.33 0.08 0.16 -1 -1 0.33 0.031804 0.0285955 143 200 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_083.v common 10.44 vpr 65.40 MiB 0.02 7108 -1 -1 13 0.30 -1 -1 36632 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66968 30 32 273 305 1 208 83 17 17 289 -1 unnamed_device 26.7 MiB 2.53 1252 13943 4131 7787 2025 65.4 MiB 0.12 0.00 6.43218 -124.616 -6.43218 6.43218 0.95 0.000601679 0.000543785 0.0511759 0.0462842 38 3308 21 6.79088e+06 282912 678818. 2348.85 4.45 0.195039 0.171506 25966 169698 -1 2726 18 1262 3542 192081 42208 6.88531 6.88531 -144.874 -6.88531 0 0 902133. 3121.57 0.33 0.07 0.16 -1 -1 0.33 0.0287526 0.0259095 126 182 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_084.v common 11.20 vpr 65.18 MiB 0.02 7020 -1 -1 14 0.43 -1 -1 37020 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 310 342 1 235 85 17 17 289 -1 unnamed_device 26.8 MiB 1.82 1309 5665 1191 4158 316 65.2 MiB 0.06 0.00 7.1394 -148.126 -7.1394 7.1394 0.94 0.000659022 0.000595154 0.0250656 0.022723 36 4233 42 6.79088e+06 282912 648988. 2245.63 5.78 0.238387 0.210641 25390 158009 -1 3325 34 2211 6761 522078 153839 7.2647 7.2647 -166.085 -7.2647 0 0 828058. 2865.25 0.32 0.18 0.14 -1 -1 0.32 0.0529366 0.0470229 154 215 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_085.v common 8.06 vpr 64.84 MiB 0.02 7156 -1 -1 11 0.35 -1 -1 36644 -1 -1 22 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 29 32 259 291 1 194 83 17 17 289 -1 unnamed_device 26.4 MiB 1.56 1117 13583 4273 7173 2137 64.8 MiB 0.12 0.00 5.79316 -113.465 -5.79316 5.79316 0.97 0.000634581 0.000566573 0.050902 0.0459111 38 3061 44 6.79088e+06 296384 678818. 2348.85 2.94 0.2265 0.199442 25966 169698 -1 2465 20 1228 3622 177171 41499 5.91846 5.91846 -126.877 -5.91846 0 0 902133. 3121.57 0.34 0.08 0.17 -1 -1 0.34 0.0320836 0.028936 130 170 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_086.v common 10.08 vpr 64.71 MiB 0.02 6972 -1 -1 13 0.20 -1 -1 36080 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66268 32 32 225 257 1 182 78 17 17 289 -1 unnamed_device 26.2 MiB 3.90 956 3896 669 3171 56 64.7 MiB 0.04 0.00 5.99004 -137.535 -5.99004 5.99004 0.95 0.000510374 0.000463625 0.0153187 0.0140107 34 2940 36 6.79088e+06 188608 618332. 2139.56 2.88 0.15383 0.134184 25102 150614 -1 2353 33 1490 3872 442208 189580 6.61654 6.61654 -158.128 -6.61654 0 0 787024. 2723.27 0.30 0.16 0.15 -1 -1 0.30 0.0375012 0.0330826 99 130 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_087.v common 10.28 vpr 64.90 MiB 0.02 6992 -1 -1 14 0.28 -1 -1 36632 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66460 32 32 273 305 1 212 83 17 17 289 -1 unnamed_device 26.5 MiB 2.25 1330 6203 1275 4418 510 64.9 MiB 0.06 0.00 7.08136 -148.99 -7.08136 7.08136 0.97 0.000641663 0.000582802 0.0258548 0.023593 38 3112 16 6.79088e+06 255968 678818. 2348.85 4.60 0.254843 0.223057 25966 169698 -1 2527 19 1198 3237 168670 37409 7.45726 7.45726 -167.628 -7.45726 0 0 902133. 3121.57 0.33 0.07 0.17 -1 -1 0.33 0.0296054 0.0266683 129 178 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_088.v common 20.75 vpr 65.33 MiB 0.02 7204 -1 -1 15 0.45 -1 -1 36624 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66896 32 32 322 354 1 240 86 17 17 289 -1 unnamed_device 26.9 MiB 2.37 1318 14072 3818 8001 2253 65.3 MiB 0.13 0.00 7.4405 -153.485 -7.4405 7.4405 0.96 0.000753731 0.000684304 0.0600811 0.0544658 40 3524 22 6.79088e+06 296384 706193. 2443.58 14.53 0.400665 0.351536 26254 175826 -1 3275 28 2601 7153 642522 216641 7.6911 7.6911 -173.429 -7.6911 0 0 926341. 3205.33 0.34 0.20 0.17 -1 -1 0.34 0.0479177 0.0428612 153 227 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_089.v common 9.93 vpr 64.47 MiB 0.02 7052 -1 -1 11 0.19 -1 -1 36292 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66016 32 32 218 250 1 160 78 17 17 289 -1 unnamed_device 26.0 MiB 2.56 950 7714 1786 5577 351 64.5 MiB 0.06 0.00 5.37463 -116.656 -5.37463 5.37463 0.99 0.000507655 0.000460216 0.0262489 0.0237202 36 2422 17 6.79088e+06 188608 648988. 2245.63 4.12 0.174527 0.152233 25390 158009 -1 2067 17 886 2280 130352 29774 5.62523 5.62523 -134.066 -5.62523 0 0 828058. 2865.25 0.32 0.06 0.15 -1 -1 0.32 0.0228614 0.020613 91 123 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_090.v common 7.33 vpr 64.78 MiB 0.02 6856 -1 -1 12 0.24 -1 -1 36412 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 31 32 244 276 1 185 79 17 17 289 -1 unnamed_device 26.2 MiB 1.97 1057 9374 3046 4951 1377 64.8 MiB 0.08 0.00 6.07958 -130.8 -6.07958 6.07958 0.96 0.000569739 0.00051768 0.0352949 0.032134 42 2739 26 6.79088e+06 215552 744469. 2576.02 1.99 0.151946 0.133663 26542 182613 -1 2292 17 1103 2914 158631 36727 6.20488 6.20488 -144.601 -6.20488 0 0 949917. 3286.91 0.36 0.06 0.18 -1 -1 0.36 0.0250733 0.0225579 111 151 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_091.v common 9.50 vpr 65.14 MiB 0.02 7024 -1 -1 12 0.39 -1 -1 36360 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66704 32 32 301 333 1 214 84 17 17 289 -1 unnamed_device 26.6 MiB 1.72 1285 5391 1173 3641 577 65.1 MiB 0.06 0.00 6.13341 -133.877 -6.13341 6.13341 0.96 0.000706589 0.000635373 0.0248598 0.0225335 44 3172 18 6.79088e+06 269440 787024. 2723.27 4.16 0.240244 0.209661 27118 194962 -1 2689 16 1242 3475 172504 39967 6.45122 6.45122 -149.93 -6.45122 0 0 997811. 3452.63 0.38 0.07 0.19 -1 -1 0.38 0.0303404 0.0274511 145 206 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_092.v common 8.95 vpr 64.96 MiB 0.02 7220 -1 -1 12 0.31 -1 -1 36588 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66516 32 32 278 310 1 207 83 17 17 289 -1 unnamed_device 26.5 MiB 2.12 1371 11963 3320 6896 1747 65.0 MiB 0.11 0.00 6.38411 -138.005 -6.38411 6.38411 0.95 0.000627607 0.000563159 0.045846 0.041596 36 3762 39 6.79088e+06 255968 648988. 2245.63 3.37 0.179896 0.158446 25390 158009 -1 3296 22 1458 4408 291205 61562 7.09671 7.09671 -167.884 -7.09671 0 0 828058. 2865.25 0.32 0.10 0.15 -1 -1 0.32 0.0347302 0.0311837 133 183 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_093.v common 10.89 vpr 65.33 MiB 0.02 7136 -1 -1 14 0.58 -1 -1 36872 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66900 32 32 333 365 1 242 87 17 17 289 -1 unnamed_device 26.9 MiB 1.73 1402 5847 1146 4426 275 65.3 MiB 0.07 0.00 7.25706 -151.473 -7.25706 7.25706 0.97 0.000782589 0.000719059 0.0286257 0.0260492 44 3658 22 6.79088e+06 309856 787024. 2723.27 5.29 0.309502 0.271455 27118 194962 -1 2949 18 1451 4485 231580 52509 7.50765 7.50765 -165.437 -7.50765 0 0 997811. 3452.63 0.38 0.09 0.19 -1 -1 0.38 0.0389311 0.035331 170 238 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_094.v common 11.97 vpr 64.89 MiB 0.02 7052 -1 -1 11 0.29 -1 -1 36536 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 30 32 261 293 1 195 83 17 17 289 -1 unnamed_device 26.5 MiB 2.51 1193 11603 3025 6544 2034 64.9 MiB 0.10 0.00 5.74632 -118.944 -5.74632 5.74632 0.98 0.000619367 0.000562442 0.0435219 0.039641 36 3150 38 6.79088e+06 282912 648988. 2245.63 5.92 0.218022 0.193236 25390 158009 -1 2777 32 1224 3632 416984 177266 6.33362 6.33362 -139.407 -6.33362 0 0 828058. 2865.25 0.32 0.16 0.15 -1 -1 0.32 0.0429646 0.0382124 128 170 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_095.v common 8.50 vpr 64.26 MiB 0.02 6952 -1 -1 11 0.22 -1 -1 36300 -1 -1 19 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65804 27 32 217 249 1 154 78 17 17 289 -1 unnamed_device 25.8 MiB 1.50 888 6552 1588 4538 426 64.3 MiB 0.06 0.00 5.56719 -105.877 -5.56719 5.56719 0.94 0.000499966 0.000454618 0.0226807 0.0206905 36 2192 17 6.79088e+06 255968 648988. 2245.63 3.76 0.175916 0.152707 25390 158009 -1 1911 16 831 2225 125905 28621 5.94309 5.94309 -121.465 -5.94309 0 0 828058. 2865.25 0.32 0.05 0.15 -1 -1 0.32 0.0219634 0.0197542 101 132 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_096.v common 30.43 vpr 66.13 MiB 0.02 7188 -1 -1 13 0.55 -1 -1 36644 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67720 32 32 373 405 1 276 93 17 17 289 -1 unnamed_device 27.5 MiB 2.17 1664 10803 2748 6552 1503 66.1 MiB 0.11 0.00 6.71306 -140.604 -6.71306 6.71306 0.90 0.000820621 0.000747397 0.0475593 0.04331 40 4538 29 6.79088e+06 390688 706193. 2443.58 24.48 0.515969 0.457929 26254 175826 -1 4181 27 3046 9529 730274 178331 7.28563 7.28563 -167.171 -7.28563 0 0 926341. 3205.33 0.33 0.21 0.16 -1 -1 0.33 0.057224 0.0515315 191 278 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_097.v common 14.57 vpr 64.96 MiB 0.02 7124 -1 -1 14 0.34 -1 -1 36816 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66520 31 32 269 301 1 201 83 17 17 289 -1 unnamed_device 26.5 MiB 1.72 1198 6563 1639 4474 450 65.0 MiB 0.07 0.00 6.92462 -143.403 -6.92462 6.92462 0.97 0.000618156 0.000562351 0.026925 0.0245238 36 3311 35 6.79088e+06 269440 648988. 2245.63 9.36 0.281693 0.246998 25390 158009 -1 2780 18 1377 3696 227320 51172 7.60489 7.60489 -166.801 -7.60489 0 0 828058. 2865.25 0.33 0.09 0.16 -1 -1 0.33 0.032059 0.0291035 128 176 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_098.v common 22.09 vpr 64.44 MiB 0.02 7004 -1 -1 12 0.20 -1 -1 36196 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65988 32 32 228 260 1 188 83 17 17 289 -1 unnamed_device 25.9 MiB 2.86 1221 12683 3575 7368 1740 64.4 MiB 0.10 0.00 6.04387 -140.065 -6.04387 6.04387 0.98 0.000550665 0.000501749 0.0416726 0.0379306 36 3525 44 6.79088e+06 255968 648988. 2245.63 15.89 0.324095 0.284186 25390 158009 -1 2722 14 1138 2802 180248 39714 6.54507 6.54507 -164.498 -6.54507 0 0 828058. 2865.25 0.32 0.06 0.15 -1 -1 0.32 0.022141 0.0200379 109 133 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_099.v common 9.58 vpr 65.01 MiB 0.02 7036 -1 -1 13 0.37 -1 -1 36692 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66572 32 32 265 297 1 195 82 17 17 289 -1 unnamed_device 26.6 MiB 3.52 1257 6846 1533 4910 403 65.0 MiB 0.07 0.00 6.79927 -138.851 -6.79927 6.79927 0.94 0.000608318 0.000552062 0.0268958 0.0244935 46 2898 15 6.79088e+06 242496 828058. 2865.25 2.50 0.161492 0.141852 27406 200422 -1 2536 16 1071 3052 164466 36460 7.67637 7.67637 -161.789 -7.67637 0 0 1.01997e+06 3529.29 0.38 0.07 0.19 -1 -1 0.38 0.0265773 0.0240315 125 170 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_100.v common 11.95 vpr 65.00 MiB 0.02 7136 -1 -1 13 0.39 -1 -1 37208 -1 -1 25 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66560 31 32 325 357 1 249 88 17 17 289 -1 unnamed_device 26.6 MiB 2.45 1535 9253 2272 5893 1088 65.0 MiB 0.10 0.00 6.33023 -139.512 -6.33023 6.33023 0.97 0.000742201 0.000662217 0.0403986 0.0364546 38 4084 36 6.79088e+06 336800 678818. 2348.85 5.87 0.243782 0.214976 25966 169698 -1 3283 20 1778 5192 332997 93869 6.53737 6.53737 -155.213 -6.53737 0 0 902133. 3121.57 0.34 0.12 0.16 -1 -1 0.34 0.0394536 0.0356144 159 232 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_101.v common 21.94 vpr 65.10 MiB 0.02 7200 -1 -1 11 0.30 -1 -1 36656 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 30 32 287 319 1 197 85 17 17 289 -1 unnamed_device 26.6 MiB 1.97 1104 12175 3724 6206 2245 65.1 MiB 0.11 0.00 5.58182 -114.064 -5.58182 5.58182 0.96 0.000663295 0.000602599 0.0463014 0.0419129 38 3509 37 6.79088e+06 309856 678818. 2348.85 16.50 0.354596 0.31048 25966 169698 -1 2593 24 1361 4388 228169 52330 6.33356 6.33356 -137.247 -6.33356 0 0 902133. 3121.57 0.34 0.09 0.15 -1 -1 0.34 0.036826 0.0329309 140 196 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_102.v common 7.47 vpr 65.29 MiB 0.02 7044 -1 -1 15 0.41 -1 -1 36684 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66852 32 32 297 329 1 220 83 17 17 289 -1 unnamed_device 26.7 MiB 1.92 1191 8363 1968 5530 865 65.3 MiB 0.08 0.00 7.59386 -151.645 -7.59386 7.59386 0.97 0.000676551 0.000611466 0.0359741 0.0326279 38 3284 22 6.79088e+06 255968 678818. 2348.85 1.92 0.155506 0.136912 25966 169698 -1 2654 19 1337 3838 199222 45604 7.71916 7.71916 -168.848 -7.71916 0 0 902133. 3121.57 0.33 0.08 0.16 -1 -1 0.33 0.0327411 0.0294685 142 202 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_103.v common 11.67 vpr 65.38 MiB 0.02 6984 -1 -1 13 0.41 -1 -1 36488 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66948 32 32 311 343 1 230 87 17 17 289 -1 unnamed_device 27.0 MiB 2.55 1473 6039 1263 4478 298 65.4 MiB 0.07 0.00 6.80265 -147.99 -6.80265 6.80265 0.98 0.000708423 0.000640974 0.0273497 0.0248802 36 3818 31 6.79088e+06 309856 648988. 2245.63 5.50 0.224108 0.198061 25390 158009 -1 3298 21 1527 4815 286725 62813 7.17511 7.17511 -168.309 -7.17511 0 0 828058. 2865.25 0.33 0.11 0.15 -1 -1 0.33 0.0390641 0.0352846 154 216 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_104.v common 6.95 vpr 64.41 MiB 0.02 7044 -1 -1 12 0.25 -1 -1 35928 -1 -1 18 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65952 29 32 236 268 1 182 79 17 17 289 -1 unnamed_device 25.9 MiB 2.45 1011 13430 3737 7773 1920 64.4 MiB 0.10 0.00 6.04736 -124.651 -6.04736 6.04736 0.90 0.000533864 0.000482252 0.045338 0.0413072 28 3045 34 6.79088e+06 242496 531479. 1839.03 1.40 0.142248 0.126775 23950 126010 -1 2566 20 1257 2846 185967 43659 6.29796 6.29796 -151.372 -6.29796 0 0 648988. 2245.63 0.25 0.07 0.11 -1 -1 0.25 0.0271771 0.0243843 109 147 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_105.v common 22.62 vpr 64.47 MiB 0.02 7064 -1 -1 11 0.19 -1 -1 36360 -1 -1 14 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66020 32 32 231 263 1 184 78 17 17 289 -1 unnamed_device 26.0 MiB 1.79 1195 9540 2725 5911 904 64.5 MiB 0.08 0.00 5.75402 -126.863 -5.75402 5.75402 0.94 0.0005174 0.000469857 0.0329078 0.0299254 36 3673 41 6.79088e+06 188608 648988. 2245.63 17.57 0.272784 0.238851 25390 158009 -1 2767 19 1309 3331 215575 46748 6.09072 6.09072 -148.788 -6.09072 0 0 828058. 2865.25 0.33 0.08 0.15 -1 -1 0.33 0.0269352 0.0242611 98 136 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_106.v common 17.45 vpr 65.20 MiB 0.02 7020 -1 -1 13 0.39 -1 -1 37048 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66768 31 32 294 326 1 214 85 17 17 289 -1 unnamed_device 26.6 MiB 1.38 1170 13291 4109 6846 2336 65.2 MiB 0.12 0.00 6.45897 -130.377 -6.45897 6.45897 0.97 0.000670626 0.000603494 0.0530571 0.0480252 40 2842 30 6.79088e+06 296384 706193. 2443.58 12.41 0.403186 0.355681 26254 175826 -1 2715 25 1645 4945 426546 144396 6.92097 6.92097 -149.707 -6.92097 0 0 926341. 3205.33 0.33 0.15 0.16 -1 -1 0.33 0.0424644 0.038239 144 201 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_107.v common 9.88 vpr 64.62 MiB 0.02 6928 -1 -1 10 0.21 -1 -1 35964 -1 -1 17 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 29 32 221 253 1 164 78 17 17 289 -1 unnamed_device 26.2 MiB 2.14 780 11532 2774 8300 458 64.6 MiB 0.09 0.00 4.98748 -102.107 -4.98748 4.98748 0.96 0.000518826 0.000471158 0.0392261 0.0356726 38 2230 45 6.79088e+06 229024 678818. 2348.85 4.41 0.236919 0.205458 25966 169698 -1 1808 17 956 2562 133199 32101 5.36338 5.36338 -121.974 -5.36338 0 0 902133. 3121.57 0.35 0.06 0.16 -1 -1 0.35 0.023806 0.0214642 98 132 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_108.v common 12.31 vpr 64.51 MiB 0.02 7020 -1 -1 14 0.24 -1 -1 36480 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66060 32 32 240 272 1 188 82 17 17 289 -1 unnamed_device 26.0 MiB 3.50 1126 7914 1880 5363 671 64.5 MiB 0.07 0.00 6.62358 -137.265 -6.62358 6.62358 0.94 0.000549547 0.000499555 0.0277366 0.0252937 38 2938 44 6.79088e+06 242496 678818. 2348.85 5.47 0.269826 0.234164 25966 169698 -1 2373 15 1052 2770 153985 34608 6.74888 6.74888 -153.937 -6.74888 0 0 902133. 3121.57 0.33 0.06 0.16 -1 -1 0.33 0.0224552 0.0202909 110 145 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_109.v common 7.96 vpr 65.12 MiB 0.02 7144 -1 -1 12 0.39 -1 -1 36496 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 31 32 292 324 1 210 85 17 17 289 -1 unnamed_device 26.6 MiB 1.46 1317 13477 4228 7095 2154 65.1 MiB 0.12 0.00 6.13341 -133.654 -6.13341 6.13341 0.94 0.000652061 0.000584525 0.0516199 0.0468772 36 3835 44 6.79088e+06 296384 648988. 2245.63 2.98 0.20504 0.181243 25390 158009 -1 2957 18 1338 3865 216203 48327 6.50931 6.50931 -156.65 -6.50931 0 0 828058. 2865.25 0.31 0.08 0.15 -1 -1 0.31 0.0310972 0.0280366 143 199 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_110.v common 9.52 vpr 64.73 MiB 0.02 6844 -1 -1 12 0.19 -1 -1 35976 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 31 32 229 261 1 179 79 17 17 289 -1 unnamed_device 26.2 MiB 2.59 1106 10895 2978 6886 1031 64.7 MiB 0.09 0.00 5.48879 -122.645 -5.48879 5.48879 0.91 0.000502435 0.000457766 0.0353821 0.032218 36 2714 22 6.79088e+06 215552 648988. 2245.63 3.84 0.171866 0.152405 25390 158009 -1 2369 15 988 2297 139870 31603 5.86469 5.86469 -139.028 -5.86469 0 0 828058. 2865.25 0.30 0.06 0.14 -1 -1 0.30 0.022141 0.0200821 101 136 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_111.v common 20.38 vpr 64.82 MiB 0.02 7216 -1 -1 12 0.22 -1 -1 36440 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66376 32 32 282 314 1 202 82 17 17 289 -1 unnamed_device 26.4 MiB 1.71 1118 5600 1157 4246 197 64.8 MiB 0.06 0.00 6.03617 -130.052 -6.03617 6.03617 0.96 0.000584047 0.000524975 0.0228874 0.0208149 38 3052 27 6.79088e+06 242496 678818. 2348.85 15.35 0.304911 0.266578 25966 169698 -1 2493 21 1321 4056 211256 46816 6.53388 6.53388 -146.93 -6.53388 0 0 902133. 3121.57 0.35 0.08 0.15 -1 -1 0.35 0.0324995 0.0291091 123 187 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_112.v common 11.13 vpr 65.00 MiB 0.02 7044 -1 -1 13 0.35 -1 -1 36648 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66556 31 32 269 301 1 204 82 17 17 289 -1 unnamed_device 26.5 MiB 1.88 1288 12898 3442 7509 1947 65.0 MiB 0.12 0.00 6.08307 -132.825 -6.08307 6.08307 0.97 0.000634265 0.000570131 0.0499576 0.0451239 44 3360 50 6.79088e+06 255968 787024. 2723.27 5.60 0.306474 0.269038 27118 194962 -1 2566 16 1178 3396 177121 39852 6.45897 6.45897 -146.421 -6.45897 0 0 997811. 3452.63 0.40 0.07 0.19 -1 -1 0.40 0.0291941 0.0265711 134 176 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_113.v common 7.01 vpr 64.37 MiB 0.02 6840 -1 -1 11 0.20 -1 -1 36308 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65916 32 32 237 269 1 188 79 17 17 289 -1 unnamed_device 25.8 MiB 1.55 1178 5318 1175 3841 302 64.4 MiB 0.05 0.00 5.79322 -121.931 -5.79322 5.79322 0.91 0.000517301 0.000463038 0.0197515 0.0179962 44 2804 20 6.79088e+06 202080 787024. 2723.27 2.28 0.122294 0.108521 27118 194962 -1 2404 16 1115 2925 168887 37178 6.04382 6.04382 -138.431 -6.04382 0 0 997811. 3452.63 0.37 0.06 0.17 -1 -1 0.37 0.0239502 0.0216929 105 142 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_114.v common 19.08 vpr 64.84 MiB 0.02 7028 -1 -1 13 0.23 -1 -1 36496 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66396 32 32 259 291 1 191 81 17 17 289 -1 unnamed_device 26.5 MiB 2.17 1048 13556 4917 6504 2135 64.8 MiB 0.11 0.00 6.24757 -135.485 -6.24757 6.24757 0.91 0.000577571 0.00052729 0.0476673 0.0434531 38 2836 48 6.79088e+06 229024 678818. 2348.85 13.71 0.328625 0.288992 25966 169698 -1 2304 17 1155 3100 157453 36403 6.24757 6.24757 -146.951 -6.24757 0 0 902133. 3121.57 0.32 0.06 0.15 -1 -1 0.32 0.0262241 0.0237167 116 164 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_115.v common 20.54 vpr 64.91 MiB 0.02 6976 -1 -1 13 0.32 -1 -1 36292 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66468 32 32 277 309 1 213 82 17 17 289 -1 unnamed_device 26.4 MiB 1.99 1312 7736 1841 5181 714 64.9 MiB 0.08 0.00 6.07958 -135.388 -6.07958 6.07958 0.98 0.000652602 0.00057956 0.0319087 0.0289422 38 3380 32 6.79088e+06 242496 678818. 2348.85 15.02 0.331656 0.290705 25966 169698 -1 2909 23 1737 5114 319647 66893 6.49463 6.49463 -156.634 -6.49463 0 0 902133. 3121.57 0.33 0.10 0.17 -1 -1 0.33 0.0345556 0.0310105 130 182 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_116.v common 7.28 vpr 64.48 MiB 0.02 7020 -1 -1 11 0.24 -1 -1 35948 -1 -1 22 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66028 29 32 245 277 1 176 83 17 17 289 -1 unnamed_device 25.9 MiB 2.00 970 13763 4666 6399 2698 64.5 MiB 0.10 0.00 5.69593 -108.04 -5.69593 5.69593 0.95 0.00053916 0.000490029 0.0447727 0.0406933 36 2678 29 6.79088e+06 296384 648988. 2245.63 1.99 0.167951 0.149506 25390 158009 -1 2243 15 1033 3002 173549 38896 5.69593 5.69593 -122.503 -5.69593 0 0 828058. 2865.25 0.31 0.06 0.14 -1 -1 0.31 0.0235282 0.0213273 115 156 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_117.v common 12.07 vpr 65.74 MiB 0.02 7156 -1 -1 14 0.40 -1 -1 37096 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67320 32 32 316 348 1 232 86 17 17 289 -1 unnamed_device 27.1 MiB 1.72 1558 8213 1877 5750 586 65.7 MiB 0.09 0.00 7.15065 -156.51 -7.15065 7.15065 0.90 0.000706933 0.00063386 0.0350584 0.0317094 36 4448 49 6.79088e+06 296384 648988. 2245.63 6.94 0.2713 0.241402 25390 158009 -1 3438 18 1621 4577 262506 58629 7.69105 7.69105 -178.01 -7.69105 0 0 828058. 2865.25 0.31 0.09 0.14 -1 -1 0.31 0.0352286 0.0319393 160 221 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_118.v common 11.03 vpr 64.78 MiB 0.02 6912 -1 -1 12 0.20 -1 -1 36396 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66332 31 32 230 262 1 188 81 17 17 289 -1 unnamed_device 26.2 MiB 3.36 1155 7606 2033 5115 458 64.8 MiB 0.06 0.00 5.46189 -119.381 -5.46189 5.46189 0.90 0.000492049 0.000449282 0.0252915 0.0230954 38 2804 25 6.79088e+06 242496 678818. 2348.85 4.49 0.204186 0.179188 25966 169698 -1 2331 14 968 2397 132288 29131 5.83779 5.83779 -138.223 -5.83779 0 0 902133. 3121.57 0.35 0.06 0.16 -1 -1 0.35 0.0225185 0.0204918 108 137 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_119.v common 24.04 vpr 65.08 MiB 0.02 7248 -1 -1 13 0.35 -1 -1 37116 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 282 314 1 208 83 17 17 289 -1 unnamed_device 26.6 MiB 2.43 1330 13763 4075 7902 1786 65.1 MiB 0.13 0.00 6.28677 -133.699 -6.28677 6.28677 0.98 0.000648477 0.000588793 0.0539996 0.0490703 38 3801 45 6.79088e+06 255968 678818. 2348.85 18.01 0.381513 0.335568 25966 169698 -1 2944 23 1500 4329 245132 53402 6.87407 6.87407 -154.238 -6.87407 0 0 902133. 3121.57 0.34 0.10 0.16 -1 -1 0.34 0.0369977 0.0330884 132 187 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_120.v common 8.96 vpr 64.68 MiB 0.02 6972 -1 -1 13 0.22 -1 -1 35884 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66232 32 32 235 267 1 182 80 17 17 289 -1 unnamed_device 26.2 MiB 2.64 953 13152 4443 6083 2626 64.7 MiB 0.10 0.00 6.20842 -135.02 -6.20842 6.20842 0.94 0.000551869 0.000499635 0.0427649 0.0387971 36 3322 45 6.79088e+06 215552 648988. 2245.63 2.99 0.174827 0.154141 25390 158009 -1 2366 22 1256 3201 190218 43135 6.65918 6.65918 -159.879 -6.65918 0 0 828058. 2865.25 0.33 0.08 0.15 -1 -1 0.33 0.028995 0.0259249 104 140 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_121.v common 24.02 vpr 64.77 MiB 0.02 7000 -1 -1 12 0.27 -1 -1 36316 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66320 32 32 265 297 1 189 83 17 17 289 -1 unnamed_device 26.4 MiB 2.52 1050 11963 4064 5699 2200 64.8 MiB 0.11 0.00 5.94653 -127.305 -5.94653 5.94653 0.95 0.000608294 0.000541904 0.0440327 0.0397853 40 2886 25 6.79088e+06 255968 706193. 2443.58 18.04 0.324168 0.281196 26254 175826 -1 2714 22 1432 4483 300611 69465 6.33362 6.33362 -151.818 -6.33362 0 0 926341. 3205.33 0.35 0.10 0.17 -1 -1 0.35 0.0322111 0.0288048 121 170 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_122.v common 12.53 vpr 65.47 MiB 0.02 7336 -1 -1 15 0.61 -1 -1 36740 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67040 32 32 344 376 1 260 88 17 17 289 -1 unnamed_device 26.9 MiB 2.50 1685 12568 3240 7073 2255 65.5 MiB 0.11 0.00 8.067 -161.456 -8.067 8.067 0.91 0.00067482 0.000613815 0.0511762 0.0465207 44 4592 43 6.79088e+06 323328 787024. 2723.27 6.13 0.271791 0.239998 27118 194962 -1 3582 18 1807 5466 311791 68225 8.4744 8.4744 -183.816 -8.4744 0 0 997811. 3452.63 0.39 0.11 0.19 -1 -1 0.39 0.0417253 0.0380024 176 249 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_123.v common 11.04 vpr 63.91 MiB 0.02 6912 -1 -1 10 0.12 -1 -1 35804 -1 -1 11 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65440 30 32 173 205 1 129 73 17 17 289 -1 unnamed_device 25.4 MiB 2.00 672 9041 3550 3974 1517 63.9 MiB 0.06 0.00 4.44354 -98.5083 -4.44354 4.44354 0.96 0.000388996 0.000352104 0.0245098 0.0222409 30 1952 48 6.79088e+06 148192 556674. 1926.21 6.01 0.163359 0.14332 24526 138013 -1 1634 18 735 1692 94105 22137 4.56884 4.56884 -117.714 -4.56884 0 0 706193. 2443.58 0.27 0.04 0.12 -1 -1 0.27 0.0168775 0.0150811 63 82 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_124.v common 7.17 vpr 64.57 MiB 0.02 7032 -1 -1 13 0.20 -1 -1 36188 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66116 30 32 229 261 1 179 81 17 17 289 -1 unnamed_device 26.1 MiB 2.04 996 10931 3459 5604 1868 64.6 MiB 0.08 0.00 6.07969 -127.643 -6.07969 6.07969 0.90 0.000516123 0.00047146 0.0360793 0.0328528 34 2835 24 6.79088e+06 255968 618332. 2139.56 2.02 0.172516 0.152447 25102 150614 -1 2368 19 1212 2999 173506 41851 6.20499 6.20499 -146.197 -6.20499 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0256288 0.0230656 105 138 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_125.v common 8.40 vpr 64.47 MiB 0.02 6964 -1 -1 12 0.24 -1 -1 36676 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66016 32 32 261 293 1 204 81 17 17 289 -1 unnamed_device 26.1 MiB 2.25 1061 12156 4313 5619 2224 64.5 MiB 0.10 0.00 6.20144 -135.729 -6.20144 6.20144 0.90 0.00056713 0.000517724 0.0428087 0.0389842 44 3435 29 6.79088e+06 229024 787024. 2723.27 2.85 0.167731 0.149726 27118 194962 -1 2422 18 1315 3227 225405 60521 6.66688 6.66688 -158.756 -6.66688 0 0 997811. 3452.63 0.37 0.08 0.17 -1 -1 0.37 0.0290213 0.0262343 115 166 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_126.v common 7.54 vpr 64.46 MiB 0.02 6864 -1 -1 9 0.16 -1 -1 36100 -1 -1 20 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66008 25 32 184 216 1 138 77 17 17 289 -1 unnamed_device 25.9 MiB 1.41 810 9205 3227 4315 1663 64.5 MiB 0.06 0.00 4.29134 -84.3574 -4.29134 4.29134 0.95 0.000437958 0.000399767 0.0265781 0.0241894 30 1936 20 6.79088e+06 269440 556674. 1926.21 3.01 0.137488 0.119316 24526 138013 -1 1692 18 758 1971 99672 23233 4.79254 4.79254 -100.35 -4.79254 0 0 706193. 2443.58 0.29 0.05 0.13 -1 -1 0.29 0.0201096 0.0180562 86 103 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_127.v common 10.73 vpr 64.92 MiB 0.02 7236 -1 -1 12 0.33 -1 -1 36352 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66480 32 32 302 334 1 236 87 17 17 289 -1 unnamed_device 26.4 MiB 3.03 1465 12567 3358 7071 2138 64.9 MiB 0.11 0.00 6.50598 -146.734 -6.50598 6.50598 0.90 0.000656218 0.000598033 0.0471009 0.0428438 46 3575 32 6.79088e+06 309856 828058. 2865.25 4.22 0.238358 0.212732 27406 200422 -1 3006 16 1505 3916 208572 46440 6.97141 6.97141 -163.9 -6.97141 0 0 1.01997e+06 3529.29 0.38 0.08 0.17 -1 -1 0.38 0.0296616 0.0268757 146 207 -1 -1 -1 -1 + fixed_k6_frac_N8_22nm.xml mult_128.v common 8.42 vpr 65.07 MiB 0.02 7260 -1 -1 14 0.37 -1 -1 36812 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66636 31 32 295 327 1 217 85 17 17 289 -1 unnamed_device 26.5 MiB 1.45 1211 11617 3125 6074 2418 65.1 MiB 0.11 0.00 7.26825 -144.231 -7.26825 7.26825 0.90 0.000676411 0.000610756 0.0455627 0.0413116 40 3324 49 6.79088e+06 296384 706193. 2443.58 3.49 0.238466 0.209449 26254 175826 -1 2757 20 1370 4074 236016 55213 8.23144 8.23144 -168.078 -8.23144 0 0 926341. 3205.33 0.35 0.09 0.17 -1 -1 0.35 0.0347683 0.0313118 151 202 -1 -1 -1 -1 + fixed_k6_frac_ripple_N8_22nm.xml mult_001.v common 6.09 vpr 65.74 MiB 0.02 7196 -1 -1 1 0.03 -1 -1 34224 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67320 32 32 438 350 1 202 101 17 17 289 -1 unnamed_device 27.0 MiB 1.60 1154 19136 5133 11894 2109 65.7 MiB 0.17 0.00 3.40379 -121.869 -3.40379 3.40379 0.97 0.000569286 0.00051821 0.0491518 0.0446319 32 3007 32 6.87369e+06 517032 586450. 2029.24 1.23 0.133051 0.117034 25474 144626 -1 2395 24 2128 3603 279984 68372 3.9064 3.9064 -151.216 -3.9064 0 0 744469. 2576.02 0.30 0.09 0.14 -1 -1 0.30 0.0281293 0.0247234 155 80 32 32 96 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_002.v common 8.59 vpr 65.45 MiB 0.02 7400 -1 -1 1 0.03 -1 -1 34000 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67020 30 32 409 330 1 192 85 17 17 289 -1 unnamed_device 26.8 MiB 4.18 898 13477 4489 6093 2895 65.4 MiB 0.11 0.00 3.28949 -105.746 -3.28949 3.28949 0.93 0.00054538 0.000496236 0.0410869 0.037623 28 2872 32 6.87369e+06 321398 531479. 1839.03 1.40 0.134429 0.119525 24610 126494 -1 2334 24 2111 3520 265386 64542 4.4449 4.4449 -153.797 -4.4449 0 0 648988. 2245.63 0.26 0.09 0.11 -1 -1 0.26 0.0281408 0.0246802 141 78 30 30 89 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_003.v common 6.67 vpr 65.48 MiB 0.02 7380 -1 -1 1 0.03 -1 -1 34300 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67056 32 32 387 309 1 191 100 17 17 289 -1 unnamed_device 26.8 MiB 2.31 1120 13788 3768 8666 1354 65.5 MiB 0.12 0.00 3.10276 -112.163 -3.10276 3.10276 0.95 0.000555274 0.000507479 0.0336318 0.0306266 32 3040 32 6.87369e+06 503058 586450. 2029.24 1.23 0.111779 0.0981422 25474 144626 -1 2276 24 1746 2782 231467 52159 3.5228 3.5228 -139.032 -3.5228 0 0 744469. 2576.02 0.29 0.08 0.14 -1 -1 0.29 0.0266656 0.0233965 145 50 54 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_004.v common 6.50 vpr 65.19 MiB 0.02 7144 -1 -1 1 0.03 -1 -1 34216 -1 -1 23 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66752 29 32 343 267 1 184 84 17 17 289 -1 unnamed_device 26.6 MiB 1.63 824 14541 6075 6866 1600 65.2 MiB 0.11 0.00 3.41479 -107.028 -3.41479 3.41479 0.91 0.000422711 0.000387701 0.0393928 0.0360924 34 2688 34 6.87369e+06 321398 618332. 2139.56 1.89 0.165952 0.146412 25762 151098 -1 1805 20 1706 2822 192504 48532 3.6921 3.6921 -127.234 -3.6921 0 0 787024. 2723.27 0.29 0.07 0.13 -1 -1 0.29 0.0217077 0.0191549 136 25 87 29 29 29 + fixed_k6_frac_ripple_N8_22nm.xml mult_005.v common 7.45 vpr 65.56 MiB 0.02 7304 -1 -1 1 0.03 -1 -1 33836 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67136 32 32 376 288 1 202 85 17 17 289 -1 unnamed_device 26.9 MiB 2.18 1097 15709 4359 9936 1414 65.6 MiB 0.15 0.00 3.32249 -121.731 -3.32249 3.32249 0.96 0.000538286 0.000489997 0.0481866 0.0440145 34 3254 23 6.87369e+06 293451 618332. 2139.56 2.03 0.173276 0.152138 25762 151098 -1 2634 22 2217 3995 337903 74716 4.013 4.013 -160.34 -4.013 0 0 787024. 2723.27 0.32 0.10 0.15 -1 -1 0.32 0.027099 0.0240266 147 31 96 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_006.v common 7.66 vpr 65.67 MiB 0.02 7432 -1 -1 1 0.03 -1 -1 34084 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67248 32 32 402 316 1 200 103 17 17 289 -1 unnamed_device 26.9 MiB 1.41 1042 20347 6734 10808 2805 65.7 MiB 0.16 0.00 2.82225 -101.243 -2.82225 2.82225 0.91 0.000526364 0.000479818 0.0471791 0.0427546 30 2422 34 6.87369e+06 544980 556674. 1926.21 3.26 0.211236 0.185341 25186 138497 -1 1802 21 1347 2172 111888 27912 2.85366 2.85366 -115.515 -2.85366 0 0 706193. 2443.58 0.28 0.06 0.12 -1 -1 0.28 0.0243182 0.0214612 154 61 63 32 63 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_007.v common 7.46 vpr 64.45 MiB 0.02 6976 -1 -1 1 0.03 -1 -1 34184 -1 -1 20 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65996 27 32 269 226 1 146 79 17 17 289 -1 unnamed_device 26.1 MiB 2.73 738 12585 3661 8060 864 64.4 MiB 0.10 0.00 2.9476 -89.3645 -2.9476 2.9476 0.97 0.000405914 0.000370535 0.0321879 0.0294201 34 1836 18 6.87369e+06 279477 618332. 2139.56 1.63 0.118705 0.103966 25762 151098 -1 1622 20 1161 1878 139586 33038 3.05726 3.05726 -107.881 -3.05726 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.0183521 0.0161928 102 26 54 27 27 27 + fixed_k6_frac_ripple_N8_22nm.xml mult_008.v common 7.73 vpr 65.48 MiB 0.02 7236 -1 -1 1 0.03 -1 -1 33540 -1 -1 35 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67052 31 32 317 242 1 187 98 17 17 289 -1 unnamed_device 26.6 MiB 1.15 1005 18323 5874 9822 2627 65.5 MiB 0.15 0.00 2.79225 -94.7428 -2.79225 2.79225 0.99 0.000499064 0.000456191 0.0425095 0.0387294 30 2317 22 6.87369e+06 489084 556674. 1926.21 3.45 0.171799 0.151259 25186 138497 -1 1847 22 1197 1967 122015 27849 2.74566 2.74566 -109.241 -2.74566 0 0 706193. 2443.58 0.27 0.06 0.12 -1 -1 0.27 0.0215316 0.0189708 141 -1 115 31 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_009.v common 7.43 vpr 65.04 MiB 0.02 7364 -1 -1 1 0.03 -1 -1 33684 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66600 31 32 338 292 1 153 79 17 17 289 -1 unnamed_device 26.3 MiB 3.40 878 8867 2122 5923 822 65.0 MiB 0.08 0.00 2.60257 -93.0115 -2.60257 2.60257 0.94 0.000474946 0.000433652 0.0264703 0.0241722 32 2242 23 6.87369e+06 223581 586450. 2029.24 1.00 0.0870255 0.0763302 25474 144626 -1 1882 19 1021 1645 136336 31254 2.98061 2.98061 -117.559 -2.98061 0 0 744469. 2576.02 0.29 0.06 0.14 -1 -1 0.29 0.0200976 0.0177521 103 81 0 0 84 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_010.v common 8.92 vpr 65.31 MiB 0.02 6904 -1 -1 1 0.03 -1 -1 33964 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66880 32 32 314 256 1 168 80 17 17 289 -1 unnamed_device 26.6 MiB 4.42 893 12808 4637 6630 1541 65.3 MiB 0.11 0.00 3.0558 -113.308 -3.0558 3.0558 0.92 0.000452165 0.00041472 0.035494 0.0325212 34 2228 21 6.87369e+06 223581 618332. 2139.56 1.51 0.132781 0.116415 25762 151098 -1 1952 19 1430 2215 172292 38630 3.24691 3.24691 -136.079 -3.24691 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.019484 0.0172365 114 31 64 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_011.v common 7.93 vpr 65.28 MiB 0.02 7296 -1 -1 1 0.03 -1 -1 33836 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66844 30 32 325 273 1 160 80 17 17 289 -1 unnamed_device 26.6 MiB 3.85 809 11088 3034 7381 673 65.3 MiB 0.09 0.00 2.9678 -100.962 -2.9678 2.9678 0.97 0.000477605 0.000434475 0.0324124 0.0295874 30 1930 21 6.87369e+06 251529 556674. 1926.21 0.98 0.0926725 0.0815917 25186 138497 -1 1584 24 1347 2089 123484 29036 2.93826 2.93826 -115.462 -2.93826 0 0 706193. 2443.58 0.30 0.06 0.13 -1 -1 0.30 0.0235005 0.020657 109 58 30 30 60 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_012.v common 6.19 vpr 65.07 MiB 0.02 6972 -1 -1 1 0.03 -1 -1 33596 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66628 32 32 331 280 1 161 96 17 17 289 -1 unnamed_device 26.3 MiB 1.62 904 16521 5325 8687 2509 65.1 MiB 0.12 0.00 2.78925 -97.7982 -2.78925 2.78925 0.91 0.000452176 0.000412889 0.0365805 0.0331843 34 2191 23 6.87369e+06 447163 618332. 2139.56 1.60 0.139712 0.122514 25762 151098 -1 1865 21 1314 2140 160839 37790 2.85996 2.85996 -114.56 -2.85996 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.020619 0.0181395 116 57 25 25 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_013.v common 12.53 vpr 65.68 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 33872 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67252 32 32 386 305 1 195 99 17 17 289 -1 unnamed_device 27.0 MiB 5.28 1117 14235 4102 9173 960 65.7 MiB 0.12 0.00 2.94755 -108.52 -2.94755 2.94755 0.91 0.000515802 0.000472313 0.034619 0.0315468 28 2891 37 6.87369e+06 489084 531479. 1839.03 4.30 0.22947 0.201379 24610 126494 -1 2529 20 1745 2990 243654 55108 3.11226 3.11226 -133.797 -3.11226 0 0 648988. 2245.63 0.25 0.08 0.11 -1 -1 0.25 0.0241068 0.0213814 147 55 64 32 57 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_014.v common 9.98 vpr 65.59 MiB 0.02 7384 -1 -1 1 0.03 -1 -1 34028 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67168 32 32 407 319 1 202 101 17 17 289 -1 unnamed_device 26.9 MiB 2.78 1102 21486 7060 11872 2554 65.6 MiB 0.18 0.00 3.32249 -120.167 -3.32249 3.32249 0.95 0.000549507 0.000501014 0.0531424 0.0482912 36 2589 21 6.87369e+06 517032 648988. 2245.63 3.96 0.241351 0.210163 26050 158493 -1 2234 23 2061 3262 244929 54728 3.7701 3.7701 -145.536 -3.7701 0 0 828058. 2865.25 0.32 0.08 0.16 -1 -1 0.32 0.0268587 0.0235826 155 60 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_015.v common 6.17 vpr 64.54 MiB 0.02 6868 -1 -1 1 0.03 -1 -1 33768 -1 -1 19 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66088 29 32 272 228 1 148 80 17 17 289 -1 unnamed_device 26.2 MiB 2.24 750 13152 4502 6708 1942 64.5 MiB 0.10 0.00 2.8846 -91.7788 -2.8846 2.8846 0.91 0.000393793 0.000360741 0.0321764 0.0293683 32 2056 42 6.87369e+06 265503 586450. 2029.24 1.01 0.0971169 0.0854251 25474 144626 -1 1711 20 1084 1812 138451 33819 3.10861 3.10861 -109.404 -3.10861 0 0 744469. 2576.02 0.28 0.05 0.13 -1 -1 0.28 0.0180086 0.0159225 102 21 58 29 24 24 + fixed_k6_frac_ripple_N8_22nm.xml mult_016.v common 8.59 vpr 65.64 MiB 0.02 7328 -1 -1 1 0.03 -1 -1 33892 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67220 32 32 401 315 1 200 85 17 17 289 -1 unnamed_device 26.9 MiB 3.26 1104 14035 5419 6340 2276 65.6 MiB 0.13 0.00 2.89925 -106.104 -2.89925 2.89925 0.95 0.000549169 0.000501143 0.0435533 0.0397677 34 3232 39 6.87369e+06 293451 618332. 2139.56 2.16 0.182329 0.159221 25762 151098 -1 2637 20 1951 3318 302687 66093 3.44716 3.44716 -137.476 -3.44716 0 0 787024. 2723.27 0.30 0.09 0.15 -1 -1 0.30 0.0248522 0.0219113 145 60 64 32 62 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_017.v common 9.90 vpr 65.23 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 33552 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66800 32 32 383 303 1 193 102 17 17 289 -1 unnamed_device 26.6 MiB 5.61 1042 12716 3225 8592 899 65.2 MiB 0.11 0.00 2.93045 -106.857 -2.93045 2.93045 0.99 0.000548392 0.000499036 0.0309656 0.0281397 32 2684 36 6.87369e+06 531006 586450. 2029.24 1.13 0.11616 0.10203 25474 144626 -1 2107 21 1594 2391 176877 40727 2.95856 2.95856 -121.261 -2.95856 0 0 744469. 2576.02 0.30 0.07 0.14 -1 -1 0.30 0.0255725 0.0225205 148 54 64 32 56 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_018.v common 7.84 vpr 65.18 MiB 0.02 7272 -1 -1 1 0.03 -1 -1 33856 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66744 32 32 339 284 1 165 93 17 17 289 -1 unnamed_device 26.4 MiB 2.99 737 16683 5033 9271 2379 65.2 MiB 0.14 0.00 2.46506 -88.629 -2.46506 2.46506 0.97 0.000497872 0.000452553 0.0408379 0.0372482 34 2101 24 6.87369e+06 405241 618332. 2139.56 1.65 0.149381 0.130864 25762 151098 -1 1576 24 1327 1880 149870 36148 2.32117 2.32117 -103.117 -2.32117 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0243954 0.0214206 117 62 29 29 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_019.v common 4.38 vpr 64.51 MiB 0.02 7056 -1 -1 1 0.03 -1 -1 33476 -1 -1 14 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66060 30 32 226 208 1 119 76 17 17 289 -1 unnamed_device 26.1 MiB 0.64 636 11276 4224 5295 1757 64.5 MiB 0.07 0.00 2.31406 -76.3141 -2.31406 2.31406 0.91 0.000335148 0.000305913 0.0257039 0.0235454 32 1512 22 6.87369e+06 195634 586450. 2029.24 0.91 0.0695009 0.0611512 25474 144626 -1 1288 19 714 1042 96914 21461 1.97972 1.97972 -86.0871 -1.97972 0 0 744469. 2576.02 0.28 0.04 0.13 -1 -1 0.28 0.0144195 0.0127323 73 29 24 24 30 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_020.v common 7.62 vpr 64.90 MiB 0.02 7088 -1 -1 1 0.03 -1 -1 33996 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66456 31 32 335 280 1 165 80 17 17 289 -1 unnamed_device 26.5 MiB 1.37 830 11776 4241 5226 2309 64.9 MiB 0.09 0.00 3.40515 -106.776 -3.40515 3.40515 0.91 0.000453737 0.000415341 0.0338229 0.0310161 28 2447 26 6.87369e+06 237555 531479. 1839.03 3.39 0.186925 0.164298 24610 126494 -1 2013 22 1211 1811 167603 39248 3.63716 3.63716 -135.128 -3.63716 0 0 648988. 2245.63 0.25 0.07 0.11 -1 -1 0.25 0.0221969 0.0195803 113 55 31 31 62 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_021.v common 5.12 vpr 65.53 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 33608 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67100 32 32 366 283 1 197 100 17 17 289 -1 unnamed_device 26.9 MiB 1.11 988 19820 5893 11008 2919 65.5 MiB 0.15 0.00 3.38299 -114.786 -3.38299 3.38299 0.91 0.000505474 0.000454274 0.0458222 0.0418003 30 2453 24 6.87369e+06 503058 556674. 1926.21 1.02 0.115671 0.102464 25186 138497 -1 1934 21 1406 2062 116269 28443 3.6931 3.6931 -137.17 -3.6931 0 0 706193. 2443.58 0.27 0.06 0.12 -1 -1 0.27 0.0235317 0.0208002 150 31 91 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_022.v common 13.00 vpr 65.95 MiB 0.02 7408 -1 -1 1 0.03 -1 -1 34120 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67528 32 32 460 375 1 199 104 17 17 289 -1 unnamed_device 27.1 MiB 3.81 908 14012 3432 8685 1895 65.9 MiB 0.13 0.00 3.11996 -103.369 -3.11996 3.11996 0.97 0.000648522 0.000593865 0.0378109 0.0344227 30 2930 30 6.87369e+06 558954 556674. 1926.21 6.05 0.22739 0.198444 25186 138497 -1 1861 19 1168 1799 103357 25171 3.6041 3.6041 -125.408 -3.6041 0 0 706193. 2443.58 0.28 0.06 0.14 -1 -1 0.28 0.0245723 0.0216722 154 108 0 0 125 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_023.v common 6.21 vpr 64.36 MiB 0.02 6868 -1 -1 1 0.03 -1 -1 34160 -1 -1 16 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65900 26 32 198 186 1 109 74 17 17 289 -1 unnamed_device 25.8 MiB 2.41 578 11544 4134 5945 1465 64.4 MiB 0.07 0.00 2.29206 -65.3809 -2.29206 2.29206 0.95 0.000328819 0.000299583 0.0249569 0.022779 28 1363 21 6.87369e+06 223581 531479. 1839.03 0.87 0.0648535 0.0570574 24610 126494 -1 1180 18 569 862 60888 14881 2.04482 2.04482 -77.8339 -2.04482 0 0 648988. 2245.63 0.26 0.03 0.12 -1 -1 0.26 0.0128773 0.0113543 69 21 26 26 22 22 + fixed_k6_frac_ripple_N8_22nm.xml mult_024.v common 6.12 vpr 65.48 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 34052 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67056 32 32 333 251 1 196 85 17 17 289 -1 unnamed_device 26.7 MiB 1.68 1113 14593 4729 7610 2254 65.5 MiB 0.13 0.00 3.28949 -118.069 -3.28949 3.28949 0.99 0.000478153 0.00043444 0.0409348 0.0372901 28 2806 23 6.87369e+06 293451 531479. 1839.03 1.30 0.119976 0.106656 24610 126494 -1 2440 22 2028 3282 256489 58469 3.8614 3.8614 -152.861 -3.8614 0 0 648988. 2245.63 0.27 0.09 0.12 -1 -1 0.27 0.0259957 0.022979 141 -1 122 32 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_025.v common 4.16 vpr 64.50 MiB 0.02 6724 -1 -1 1 0.03 -1 -1 34036 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66044 32 32 199 182 1 122 76 17 17 289 -1 unnamed_device 25.9 MiB 0.50 722 11916 4162 6143 1611 64.5 MiB 0.07 0.00 2.05403 -78.601 -2.05403 2.05403 0.91 0.000312003 0.000285053 0.0248183 0.0227163 28 1559 21 6.87369e+06 167686 531479. 1839.03 0.86 0.0658788 0.0583035 24610 126494 -1 1399 19 698 924 88392 19921 2.13012 2.13012 -94.7904 -2.13012 0 0 648988. 2245.63 0.26 0.04 0.11 -1 -1 0.26 0.0138871 0.0122772 71 -1 53 32 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_026.v common 5.27 vpr 65.51 MiB 0.02 7296 -1 -1 1 0.03 -1 -1 34192 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67084 32 32 376 288 1 202 100 17 17 289 -1 unnamed_device 26.8 MiB 0.91 956 13324 3127 8393 1804 65.5 MiB 0.09 0.00 3.45399 -118.97 -3.45399 3.45399 0.91 0.000498495 0.000456623 0.0312951 0.0286211 32 3486 25 6.87369e+06 503058 586450. 2029.24 1.40 0.111311 0.098898 25474 144626 -1 2255 22 1891 2816 244497 58321 4.0539 4.0539 -154.975 -4.0539 0 0 744469. 2576.02 0.28 0.08 0.13 -1 -1 0.28 0.0251966 0.0222581 155 21 96 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_027.v common 4.99 vpr 65.52 MiB 0.02 7160 -1 -1 1 0.03 -1 -1 33968 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67096 32 32 337 253 1 198 100 17 17 289 -1 unnamed_device 26.9 MiB 1.01 1099 13324 3300 9172 852 65.5 MiB 0.11 0.00 2.78315 -101.341 -2.78315 2.78315 0.90 0.000493216 0.000450376 0.029971 0.0272827 32 2735 25 6.87369e+06 503058 586450. 2029.24 1.03 0.0969085 0.0853412 25474 144626 -1 2204 21 1658 2694 182497 43153 2.90996 2.90996 -119.924 -2.90996 0 0 744469. 2576.02 0.28 0.07 0.13 -1 -1 0.28 0.0229395 0.0202679 151 -1 124 32 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_028.v common 6.49 vpr 65.50 MiB 0.02 7084 -1 -1 1 0.03 -1 -1 33740 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67068 32 32 407 319 1 202 103 17 17 289 -1 unnamed_device 26.8 MiB 1.22 1003 13599 3914 8538 1147 65.5 MiB 0.12 0.00 3.42579 -116.992 -3.42579 3.42579 0.97 0.000546997 0.000502576 0.0342243 0.0310917 32 3241 36 6.87369e+06 544980 586450. 2029.24 2.05 0.150108 0.1313 25474 144626 -1 2381 23 2081 3591 307907 70823 4.0177 4.0177 -147.065 -4.0177 0 0 744469. 2576.02 0.29 0.10 0.14 -1 -1 0.29 0.0281303 0.024775 156 54 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_029.v common 5.82 vpr 64.77 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 34164 -1 -1 15 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66328 32 32 294 246 1 157 79 17 17 289 -1 unnamed_device 26.4 MiB 1.21 821 11233 3895 4919 2419 64.8 MiB 0.08 0.00 2.42892 -90.0422 -2.42892 2.42892 0.96 0.000442648 0.000397602 0.0307614 0.0280526 34 2190 19 6.87369e+06 209608 618332. 2139.56 1.54 0.119531 0.104232 25762 151098 -1 1750 21 1168 1872 142978 33962 2.89626 2.89626 -113.44 -2.89626 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.0197652 0.0173676 104 31 54 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_030.v common 5.53 vpr 64.73 MiB 0.02 7036 -1 -1 1 0.03 -1 -1 33776 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 30 32 296 244 1 160 80 17 17 289 -1 unnamed_device 26.3 MiB 1.30 748 11432 4615 5530 1287 64.7 MiB 0.09 0.00 3.0418 -102.924 -3.0418 3.0418 0.96 0.000430782 0.000390377 0.0299312 0.0272965 32 2329 24 6.87369e+06 251529 586450. 2029.24 1.15 0.0933984 0.0822459 25474 144626 -1 1662 21 1368 1996 161452 38163 3.21861 3.21861 -124.309 -3.21861 0 0 744469. 2576.02 0.31 0.07 0.14 -1 -1 0.31 0.0212572 0.0188096 109 29 60 30 30 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_031.v common 5.67 vpr 64.50 MiB 0.02 6992 -1 -1 1 0.03 -1 -1 33884 -1 -1 19 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66048 28 32 278 232 1 150 79 17 17 289 -1 unnamed_device 26.2 MiB 1.25 701 13937 4070 8648 1219 64.5 MiB 0.10 0.00 2.72995 -87.9955 -2.72995 2.72995 0.91 0.000419908 0.000385405 0.0349031 0.0319613 34 1952 24 6.87369e+06 265503 618332. 2139.56 1.49 0.122862 0.107746 25762 151098 -1 1660 24 1448 2487 169961 43496 3.18556 3.18556 -113.866 -3.18556 0 0 787024. 2723.27 0.30 0.07 0.14 -1 -1 0.30 0.0202081 0.0177606 104 27 56 28 28 28 + fixed_k6_frac_ripple_N8_22nm.xml mult_032.v common 5.94 vpr 64.81 MiB 0.02 7148 -1 -1 1 0.03 -1 -1 33872 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66364 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.4 MiB 1.48 923 15216 6477 8149 590 64.8 MiB 0.11 0.00 2.77395 -103.937 -2.77395 2.77395 0.91 0.000412239 0.000377506 0.0391797 0.0358865 34 2329 21 6.87369e+06 223581 618332. 2139.56 1.53 0.129689 0.114009 25762 151098 -1 1877 21 1595 2635 198477 45568 3.06656 3.06656 -125.331 -3.06656 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0194817 0.0171651 114 -1 96 32 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_033.v common 5.12 vpr 64.96 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 33860 -1 -1 32 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66516 31 32 303 249 1 163 95 17 17 289 -1 unnamed_device 26.4 MiB 1.00 757 10895 2701 7333 861 65.0 MiB 0.09 0.00 2.75195 -93.4764 -2.75195 2.75195 0.95 0.000433353 0.000395445 0.0242964 0.0220979 28 2216 23 6.87369e+06 447163 531479. 1839.03 1.08 0.0871476 0.076541 24610 126494 -1 1998 20 1415 2390 188804 44108 3.17456 3.17456 -120.429 -3.17456 0 0 648988. 2245.63 0.28 0.07 0.12 -1 -1 0.28 0.0205907 0.0182075 119 26 61 31 31 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_034.v common 7.95 vpr 65.10 MiB 0.02 7012 -1 -1 1 0.03 -1 -1 33692 -1 -1 32 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66660 29 32 312 264 1 155 93 17 17 289 -1 unnamed_device 26.4 MiB 3.42 713 7653 1712 5343 598 65.1 MiB 0.07 0.00 2.28471 -74.2789 -2.28471 2.28471 0.97 0.000453125 0.000413688 0.0187874 0.0170596 34 1661 18 6.87369e+06 447163 618332. 2139.56 1.46 0.109336 0.0943468 25762 151098 -1 1438 20 1197 1996 115949 28939 2.02952 2.02952 -86.4161 -2.02952 0 0 787024. 2723.27 0.32 0.05 0.15 -1 -1 0.32 0.019247 0.0169201 113 55 29 29 57 29 + fixed_k6_frac_ripple_N8_22nm.xml mult_035.v common 9.94 vpr 65.72 MiB 0.02 7228 -1 -1 1 0.03 -1 -1 34128 -1 -1 44 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67296 32 32 423 310 1 231 108 17 17 289 -1 unnamed_device 27.1 MiB 5.00 1264 20925 5923 12168 2834 65.7 MiB 0.19 0.00 3.42579 -121.507 -3.42579 3.42579 0.95 0.000572923 0.000522735 0.0502738 0.045795 28 3183 38 6.87369e+06 614849 531479. 1839.03 1.76 0.146444 0.129157 24610 126494 -1 2671 23 2091 3669 264663 63774 3.8924 3.8924 -152.169 -3.8924 0 0 648988. 2245.63 0.26 0.09 0.12 -1 -1 0.26 0.0292751 0.0257845 184 26 128 32 27 27 + fixed_k6_frac_ripple_N8_22nm.xml mult_036.v common 7.94 vpr 65.73 MiB 0.02 7092 -1 -1 1 0.03 -1 -1 34068 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67308 32 32 403 317 1 200 103 17 17 289 -1 unnamed_device 27.0 MiB 3.73 987 16732 4883 9735 2114 65.7 MiB 0.16 0.00 2.91945 -104.64 -2.91945 2.91945 0.97 0.000558453 0.000508537 0.0417471 0.038013 30 2382 19 6.87369e+06 544980 556674. 1926.21 1.02 0.111179 0.0979055 25186 138497 -1 1857 23 1850 2929 167724 39550 2.65656 2.65656 -115.524 -2.65656 0 0 706193. 2443.58 0.28 0.08 0.13 -1 -1 0.28 0.0279352 0.0246747 154 62 62 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_037.v common 10.01 vpr 65.26 MiB 0.02 7328 -1 -1 1 0.03 -1 -1 33884 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66828 31 32 353 302 1 160 94 17 17 289 -1 unnamed_device 26.5 MiB 4.09 914 16921 5281 9385 2255 65.3 MiB 0.12 0.00 2.78925 -98.2919 -2.78925 2.78925 0.91 0.00046472 0.000422658 0.0393803 0.0358399 30 2082 19 6.87369e+06 433189 556674. 1926.21 2.99 0.179463 0.157148 25186 138497 -1 1730 22 1038 1680 100540 24092 2.76766 2.76766 -114.111 -2.76766 0 0 706193. 2443.58 0.28 0.05 0.12 -1 -1 0.28 0.0220073 0.0193742 116 77 0 0 89 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_038.v common 6.28 vpr 65.70 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 33692 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67280 31 32 391 309 1 195 85 17 17 289 -1 unnamed_device 27.1 MiB 2.32 1098 10501 2878 6897 726 65.7 MiB 0.10 0.00 2.78315 -100.719 -2.78315 2.78315 0.92 0.00052675 0.000472351 0.031717 0.0289833 30 2633 24 6.87369e+06 307425 556674. 1926.21 1.01 0.10516 0.0927402 25186 138497 -1 2132 18 1395 2300 127239 30997 3.15456 3.15456 -126.443 -3.15456 0 0 706193. 2443.58 0.28 0.06 0.12 -1 -1 0.28 0.0220356 0.0195492 141 59 60 30 62 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_039.v common 11.53 vpr 65.78 MiB 0.02 7492 -1 -1 1 0.03 -1 -1 34088 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67356 31 32 455 371 1 198 85 17 17 289 -1 unnamed_device 27.0 MiB 6.33 1013 14965 4406 8574 1985 65.8 MiB 0.14 0.00 3.93354 -120.17 -3.93354 3.93354 0.95 0.000595825 0.000540609 0.0495179 0.0451662 34 2727 25 6.87369e+06 307425 618332. 2139.56 2.03 0.181348 0.158752 25762 151098 -1 2257 20 1513 2555 246635 52156 4.06635 4.06635 -146.694 -4.06635 0 0 787024. 2723.27 0.30 0.08 0.15 -1 -1 0.30 0.0262857 0.0232379 145 111 0 0 124 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_040.v common 6.82 vpr 65.53 MiB 0.02 7392 -1 -1 1 0.03 -1 -1 34064 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67100 31 32 413 333 1 195 85 17 17 289 -1 unnamed_device 26.9 MiB 2.18 976 13291 3888 8516 887 65.5 MiB 0.12 0.00 3.73124 -112.462 -3.73124 3.73124 0.91 0.000550987 0.00049973 0.0404301 0.0369365 34 2621 23 6.87369e+06 307425 618332. 2139.56 1.64 0.165622 0.145708 25762 151098 -1 2222 20 1578 2512 206539 47676 3.8264 3.8264 -144.012 -3.8264 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0245251 0.02169 141 86 31 31 89 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_041.v common 7.55 vpr 65.33 MiB 0.02 7152 -1 -1 1 0.03 -1 -1 34076 -1 -1 36 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66900 31 32 391 309 1 195 99 17 17 289 -1 unnamed_device 26.7 MiB 3.17 945 10815 2405 7783 627 65.3 MiB 0.10 0.00 2.83325 -97.8513 -2.83325 2.83325 0.99 0.000561449 0.000505527 0.0290425 0.0263521 28 2777 28 6.87369e+06 503058 531479. 1839.03 1.24 0.109374 0.0958803 24610 126494 -1 2371 25 1999 3454 265606 63985 3.25786 3.25786 -131.255 -3.25786 0 0 648988. 2245.63 0.27 0.09 0.13 -1 -1 0.27 0.0273796 0.0241222 148 58 60 31 62 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_042.v common 7.56 vpr 65.34 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 33840 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66904 32 32 407 319 1 202 102 17 17 289 -1 unnamed_device 26.7 MiB 2.28 1095 14144 4093 9120 931 65.3 MiB 0.13 0.00 3.40379 -121.579 -3.40379 3.40379 0.95 0.000547525 0.000498015 0.0352244 0.0320365 28 2948 48 6.87369e+06 531006 531479. 1839.03 2.18 0.135582 0.118762 24610 126494 -1 2655 22 2029 3447 344149 72715 4.1633 4.1633 -156.132 -4.1633 0 0 648988. 2245.63 0.26 0.10 0.13 -1 -1 0.26 0.02616 0.0230069 156 42 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_043.v common 8.51 vpr 65.75 MiB 0.02 7372 -1 -1 1 0.04 -1 -1 34100 -1 -1 42 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67328 32 32 496 380 1 234 106 17 17 289 -1 unnamed_device 27.3 MiB 4.06 1409 16356 4170 10517 1669 65.8 MiB 0.15 0.00 3.57129 -124.235 -3.57129 3.57129 0.99 0.000680827 0.000619556 0.0466179 0.0423399 32 3552 24 6.87369e+06 586901 586450. 2029.24 1.15 0.136419 0.120547 25474 144626 -1 2885 25 2584 4246 361310 80043 4.0397 4.0397 -153.456 -4.0397 0 0 744469. 2576.02 0.30 0.12 0.14 -1 -1 0.30 0.0355345 0.0313939 186 91 62 32 96 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_044.v common 6.19 vpr 64.65 MiB 0.02 7056 -1 -1 1 0.03 -1 -1 34108 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66200 31 32 305 250 1 164 80 17 17 289 -1 unnamed_device 26.2 MiB 2.27 929 13668 4908 6925 1835 64.6 MiB 0.11 0.00 3.0136 -109.099 -3.0136 3.0136 0.91 0.0004488 0.000412015 0.0361657 0.033081 32 2344 25 6.87369e+06 237555 586450. 2029.24 0.99 0.0947233 0.0838026 25474 144626 -1 1929 21 1416 2226 170608 38855 3.11231 3.11231 -128.221 -3.11231 0 0 744469. 2576.02 0.28 0.06 0.13 -1 -1 0.28 0.0198564 0.0175211 112 24 62 31 31 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_045.v common 9.81 vpr 65.52 MiB 0.02 7424 -1 -1 1 0.03 -1 -1 34200 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67096 31 32 395 311 1 198 100 17 17 289 -1 unnamed_device 26.8 MiB 3.07 983 21212 6553 11753 2906 65.5 MiB 0.18 0.00 3.37079 -114.461 -3.37079 3.37079 0.90 0.000530028 0.000482338 0.0508272 0.0462649 34 2625 21 6.87369e+06 517032 618332. 2139.56 3.63 0.207917 0.182316 25762 151098 -1 2165 23 1884 2916 219960 51252 3.7561 3.7561 -138.745 -3.7561 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0268496 0.0235835 152 59 62 31 62 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_046.v common 7.01 vpr 65.37 MiB 0.02 7356 -1 -1 1 0.03 -1 -1 33876 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66936 32 32 397 313 1 198 99 17 17 289 -1 unnamed_device 26.7 MiB 2.28 1144 14007 4025 9052 930 65.4 MiB 0.13 0.00 2.84425 -105.01 -2.84425 2.84425 0.91 0.000529125 0.000485096 0.0347948 0.0317331 32 3353 38 6.87369e+06 489084 586450. 2029.24 1.70 0.14441 0.126585 25474 144626 -1 2625 23 1968 3432 312239 69878 3.16556 3.16556 -128.692 -3.16556 0 0 744469. 2576.02 0.28 0.09 0.13 -1 -1 0.28 0.0267283 0.0235122 150 54 62 32 62 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_047.v common 7.74 vpr 65.45 MiB 0.02 7008 -1 -1 1 0.03 -1 -1 33788 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 32 32 345 257 1 202 85 17 17 289 -1 unnamed_device 26.8 MiB 1.90 907 14407 3742 8743 1922 65.4 MiB 0.11 0.00 3.32249 -116.136 -3.32249 3.32249 0.95 0.000492836 0.000449283 0.0410905 0.0376007 34 3072 26 6.87369e+06 293451 618332. 2139.56 2.71 0.159878 0.140478 25762 151098 -1 2273 23 2225 3970 306824 75086 4.035 4.035 -148.438 -4.035 0 0 787024. 2723.27 0.30 0.09 0.15 -1 -1 0.30 0.0255456 0.0225763 147 -1 128 32 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_048.v common 9.80 vpr 65.45 MiB 0.02 7328 -1 -1 1 0.03 -1 -1 34040 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67024 32 32 424 343 1 195 100 17 17 289 -1 unnamed_device 26.7 MiB 4.84 1074 20980 6833 11559 2588 65.5 MiB 0.18 0.00 2.77395 -102.786 -2.77395 2.77395 0.97 0.00056778 0.000517598 0.0538893 0.0490161 34 2427 20 6.87369e+06 503058 618332. 2139.56 1.72 0.176305 0.15472 25762 151098 -1 2045 21 1637 2502 162730 38801 2.97896 2.97896 -122.607 -2.97896 0 0 787024. 2723.27 0.30 0.07 0.15 -1 -1 0.30 0.0252703 0.0222099 148 81 25 25 96 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_049.v common 8.82 vpr 65.53 MiB 0.02 7204 -1 -1 1 0.03 -1 -1 34088 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67104 32 32 395 311 1 198 103 17 17 289 -1 unnamed_device 26.9 MiB 4.64 988 9984 2204 6674 1106 65.5 MiB 0.10 0.00 2.84425 -100.846 -2.84425 2.84425 0.99 0.000554885 0.000503726 0.0252454 0.023001 30 2406 21 6.87369e+06 544980 556674. 1926.21 1.06 0.0982777 0.0862194 25186 138497 -1 1872 18 1237 2149 105640 26996 2.94296 2.94296 -121.264 -2.94296 0 0 706193. 2443.58 0.28 0.05 0.13 -1 -1 0.28 0.0221522 0.0195746 152 58 64 32 60 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_050.v common 7.49 vpr 65.46 MiB 0.02 7264 -1 -1 1 0.03 -1 -1 34180 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67032 32 32 405 318 1 201 104 17 17 289 -1 unnamed_device 26.7 MiB 3.39 1087 19624 5642 11815 2167 65.5 MiB 0.16 0.00 2.85525 -104.284 -2.85525 2.85525 0.91 0.000551953 0.000498301 0.0461904 0.0418293 32 2948 24 6.87369e+06 558954 586450. 2029.24 1.04 0.121444 0.107229 25474 144626 -1 2331 22 1998 3288 282383 63466 3.00726 3.00726 -125.16 -3.00726 0 0 744469. 2576.02 0.28 0.09 0.13 -1 -1 0.28 0.0266419 0.0235233 156 61 63 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_051.v common 8.48 vpr 65.41 MiB 0.02 7044 -1 -1 1 0.03 -1 -1 34112 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66984 32 32 376 288 1 202 103 17 17 289 -1 unnamed_device 26.7 MiB 1.04 1123 17214 5291 10264 1659 65.4 MiB 0.15 0.00 3.44779 -122.508 -3.44779 3.44779 0.97 0.000547127 0.00049112 0.0409164 0.0372462 28 2938 25 6.87369e+06 544980 531479. 1839.03 4.26 0.230057 0.200429 24610 126494 -1 2473 20 1966 3146 271029 61108 4.2163 4.2163 -158.74 -4.2163 0 0 648988. 2245.63 0.28 0.09 0.13 -1 -1 0.28 0.0254347 0.0225657 156 21 96 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_052.v common 8.11 vpr 65.66 MiB 0.02 7380 -1 -1 1 0.03 -1 -1 34184 -1 -1 41 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67236 32 32 407 319 1 202 105 17 17 289 -1 unnamed_device 26.9 MiB 3.60 1077 15913 4114 10237 1562 65.7 MiB 0.14 0.00 3.40379 -121.915 -3.40379 3.40379 0.95 0.000555742 0.000506264 0.0384836 0.0350299 32 3019 45 6.87369e+06 572927 586450. 2029.24 1.35 0.132712 0.116331 25474 144626 -1 2369 21 1931 3138 260507 58289 3.8254 3.8254 -150.576 -3.8254 0 0 744469. 2576.02 0.29 0.09 0.14 -1 -1 0.29 0.0255961 0.0225426 157 50 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_053.v common 9.17 vpr 65.66 MiB 0.02 7296 -1 -1 1 0.03 -1 -1 34220 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67236 31 32 449 367 1 195 100 17 17 289 -1 unnamed_device 26.8 MiB 4.88 1055 12860 3360 8578 922 65.7 MiB 0.12 0.00 3.25649 -111.552 -3.25649 3.25649 0.91 0.000573619 0.00052438 0.0340487 0.0310034 28 2892 26 6.87369e+06 517032 531479. 1839.03 1.32 0.123881 0.109756 24610 126494 -1 2533 21 1737 3034 243205 55453 3.8064 3.8064 -142.452 -3.8064 0 0 648988. 2245.63 0.26 0.09 0.11 -1 -1 0.26 0.0268445 0.0236874 150 110 0 0 122 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_054.v common 8.46 vpr 65.84 MiB 0.02 7336 -1 -1 1 0.03 -1 -1 34072 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67424 32 32 432 346 1 200 85 17 17 289 -1 unnamed_device 27.1 MiB 3.36 1090 15709 4767 9147 1795 65.8 MiB 0.14 0.00 3.25649 -117.299 -3.25649 3.25649 0.90 0.000538965 0.000491663 0.0490414 0.0447104 34 3077 23 6.87369e+06 293451 618332. 2139.56 2.01 0.191636 0.169426 25762 151098 -1 2622 22 2071 3785 289491 68299 4.024 4.024 -149.475 -4.024 0 0 787024. 2723.27 0.30 0.09 0.13 -1 -1 0.30 0.0279658 0.0247598 145 86 32 32 94 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_055.v common 6.21 vpr 65.06 MiB 0.02 7076 -1 -1 1 0.03 -1 -1 34188 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66620 32 32 312 255 1 167 96 17 17 289 -1 unnamed_device 26.6 MiB 1.15 922 13455 3976 8502 977 65.1 MiB 0.11 0.00 2.84425 -105.64 -2.84425 2.84425 0.98 0.000460392 0.000416327 0.0302625 0.027396 26 2509 24 6.87369e+06 447163 503264. 1741.40 2.00 0.103586 0.0918465 24322 120374 -1 2199 24 1563 2490 248077 55035 3.09056 3.09056 -130.527 -3.09056 0 0 618332. 2139.56 0.26 0.08 0.11 -1 -1 0.26 0.0240395 0.021166 121 20 63 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_056.v common 8.65 vpr 65.37 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 33532 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 32 32 370 314 1 166 80 17 17 289 -1 unnamed_device 26.6 MiB 3.91 912 14184 3871 9141 1172 65.4 MiB 0.12 0.00 2.9366 -107.369 -2.9366 2.9366 0.98 0.000524682 0.00047833 0.0436936 0.039781 32 2609 46 6.87369e+06 223581 586450. 2029.24 1.56 0.14195 0.123925 25474 144626 -1 2089 22 1543 2413 216657 49278 3.19356 3.19356 -133.29 -3.19356 0 0 744469. 2576.02 0.29 0.08 0.14 -1 -1 0.29 0.0239555 0.0209269 112 91 0 0 94 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_057.v common 7.27 vpr 65.45 MiB 0.02 7208 -1 -1 1 0.04 -1 -1 33980 -1 -1 44 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67024 32 32 469 351 1 236 108 17 17 289 -1 unnamed_device 27.1 MiB 2.36 1358 15271 3964 10217 1090 65.5 MiB 0.15 0.00 4.00554 -140.249 -4.00554 4.00554 0.91 0.000683842 0.000633343 0.0392543 0.0357871 28 3747 28 6.87369e+06 614849 531479. 1839.03 1.87 0.142534 0.126948 24610 126494 -1 2887 21 2528 4299 308044 72257 4.58945 4.58945 -175.314 -4.58945 0 0 648988. 2245.63 0.25 0.10 0.11 -1 -1 0.25 0.0306291 0.027185 189 53 96 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_058.v common 7.69 vpr 65.60 MiB 0.02 7308 -1 -1 1 0.03 -1 -1 34056 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67172 32 32 368 284 1 198 99 17 17 289 -1 unnamed_device 26.9 MiB 3.21 906 11043 2840 6812 1391 65.6 MiB 0.10 0.00 2.88645 -99.0315 -2.88645 2.88645 0.92 0.000545126 0.000495064 0.0280983 0.0255875 28 2962 39 6.87369e+06 489084 531479. 1839.03 1.53 0.123324 0.109338 24610 126494 -1 2030 23 1535 2377 144552 38991 3.11686 3.11686 -118.202 -3.11686 0 0 648988. 2245.63 0.25 0.07 0.11 -1 -1 0.25 0.0254265 0.0224157 150 31 92 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_059.v common 4.77 vpr 65.06 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 33608 -1 -1 31 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66620 30 32 296 244 1 160 93 17 17 289 -1 unnamed_device 26.3 MiB 0.81 753 16263 5676 8027 2560 65.1 MiB 0.12 0.00 2.84425 -94.6902 -2.84425 2.84425 0.91 0.000422189 0.000383039 0.0346558 0.0315252 32 2241 27 6.87369e+06 433189 586450. 2029.24 1.00 0.0951207 0.0837761 25474 144626 -1 1645 24 1393 2170 188776 42908 3.09326 3.09326 -114.915 -3.09326 0 0 744469. 2576.02 0.28 0.07 0.13 -1 -1 0.28 0.0213511 0.0186935 116 29 60 30 30 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_060.v common 13.00 vpr 65.42 MiB 0.02 7560 -1 -1 1 0.04 -1 -1 34580 -1 -1 47 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66988 32 32 531 413 1 236 111 17 17 289 -1 unnamed_device 27.0 MiB 7.29 1288 22189 6624 12465 3100 65.4 MiB 0.21 0.00 3.99454 -136.751 -3.99454 3.99454 0.96 0.000668154 0.000607044 0.0583282 0.0529548 34 3399 28 6.87369e+06 656770 618332. 2139.56 2.39 0.214425 0.188509 25762 151098 -1 2522 23 2602 4239 295608 70176 4.93115 4.93115 -172.061 -4.93115 0 0 787024. 2723.27 0.31 0.10 0.15 -1 -1 0.31 0.0332553 0.0294009 190 109 32 32 128 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_061.v common 10.42 vpr 65.65 MiB 0.02 7312 -1 -1 1 0.03 -1 -1 34020 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67228 32 32 376 288 1 202 104 17 17 289 -1 unnamed_device 26.9 MiB 3.67 1005 20112 5924 11488 2700 65.7 MiB 0.16 0.00 3.47899 -122.797 -3.47899 3.47899 0.96 0.000528439 0.000480805 0.0464429 0.042361 34 2470 23 6.87369e+06 558954 618332. 2139.56 3.53 0.19561 0.170917 25762 151098 -1 1982 19 1758 2588 184505 42616 3.6638 3.6638 -145.76 -3.6638 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0232968 0.0206717 156 31 96 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_062.v common 4.92 vpr 64.85 MiB 0.02 7092 -1 -1 1 0.03 -1 -1 33832 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66404 32 32 283 225 1 168 97 17 17 289 -1 unnamed_device 26.3 MiB 0.77 932 16525 5186 8718 2621 64.8 MiB 0.12 0.00 2.77395 -101.909 -2.77395 2.77395 0.98 0.000440447 0.000402003 0.0350178 0.0319774 30 2239 19 6.87369e+06 461137 556674. 1926.21 1.06 0.0906784 0.0799405 25186 138497 -1 1821 21 1412 2316 151089 35140 2.74566 2.74566 -115.469 -2.74566 0 0 706193. 2443.58 0.28 0.06 0.13 -1 -1 0.28 0.0184417 0.0162282 123 -1 96 32 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_063.v common 9.09 vpr 65.84 MiB 0.02 7444 -1 -1 1 0.03 -1 -1 34208 -1 -1 45 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67424 32 32 438 320 1 236 109 17 17 289 -1 unnamed_device 27.2 MiB 3.23 1200 15189 4121 9721 1347 65.8 MiB 0.15 0.00 3.95234 -135.161 -3.95234 3.95234 0.99 0.000567627 0.000515764 0.0375738 0.0341495 34 3205 28 6.87369e+06 628823 618332. 2139.56 2.58 0.197051 0.173143 25762 151098 -1 2606 22 2496 4139 303124 70717 4.46295 4.46295 -167.254 -4.46295 0 0 787024. 2723.27 0.32 0.10 0.14 -1 -1 0.32 0.0304824 0.0269726 189 26 128 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_064.v common 5.85 vpr 64.87 MiB 0.02 6840 -1 -1 1 0.03 -1 -1 34084 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.5 MiB 1.11 922 13668 4604 7236 1828 64.9 MiB 0.11 0.00 3.0246 -113.373 -3.0246 3.0246 0.96 0.000441015 0.000402445 0.0368906 0.0337372 34 2287 23 6.87369e+06 223581 618332. 2139.56 1.60 0.131794 0.115674 25762 151098 -1 1939 21 1560 2558 197833 43846 3.09026 3.09026 -130.136 -3.09026 0 0 787024. 2723.27 0.33 0.07 0.15 -1 -1 0.33 0.0209811 0.0185823 114 -1 96 32 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_065.v common 7.16 vpr 64.75 MiB 0.02 7244 -1 -1 1 0.03 -1 -1 34048 -1 -1 33 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66304 30 32 296 244 1 162 95 17 17 289 -1 unnamed_device 26.2 MiB 2.96 873 17159 5289 9369 2501 64.8 MiB 0.13 0.00 2.84425 -97.4511 -2.84425 2.84425 0.97 0.000433077 0.000392835 0.0367063 0.0333785 28 1980 22 6.87369e+06 461137 531479. 1839.03 1.13 0.0963533 0.0848931 24610 126494 -1 1813 22 1397 2335 177106 40386 3.18556 3.18556 -120.614 -3.18556 0 0 648988. 2245.63 0.26 0.07 0.12 -1 -1 0.26 0.0208502 0.0182998 118 29 60 30 30 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_066.v common 7.97 vpr 65.60 MiB 0.02 7400 -1 -1 1 0.03 -1 -1 34068 -1 -1 35 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67176 29 32 393 319 1 186 96 17 17 289 -1 unnamed_device 26.9 MiB 3.84 823 10827 2627 7276 924 65.6 MiB 0.10 0.00 2.86625 -89.4747 -2.86625 2.86625 0.92 0.000526266 0.000480528 0.0280275 0.0255013 28 2378 25 6.87369e+06 489084 531479. 1839.03 1.21 0.110816 0.0981027 24610 126494 -1 2102 21 1704 2983 222873 55639 3.13056 3.13056 -117.245 -3.13056 0 0 648988. 2245.63 0.25 0.08 0.11 -1 -1 0.25 0.0243526 0.0214877 141 81 29 29 85 29 + fixed_k6_frac_ripple_N8_22nm.xml mult_067.v common 8.87 vpr 65.65 MiB 0.02 7200 -1 -1 1 0.03 -1 -1 34288 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67224 32 32 407 319 1 202 85 17 17 289 -1 unnamed_device 26.9 MiB 2.53 850 10315 2292 7470 553 65.6 MiB 0.10 0.00 3.36169 -116.932 -3.36169 3.36169 0.91 0.0005273 0.000480944 0.0319562 0.0291877 34 2591 21 6.87369e+06 293451 618332. 2139.56 3.35 0.19046 0.166681 25762 151098 -1 2126 24 2250 3395 243066 59359 4.0177 4.0177 -156.412 -4.0177 0 0 787024. 2723.27 0.30 0.09 0.13 -1 -1 0.30 0.0281575 0.0248938 147 53 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_068.v common 9.37 vpr 65.43 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 34328 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67004 32 32 407 319 1 202 101 17 17 289 -1 unnamed_device 26.7 MiB 4.87 1085 17256 4389 10954 1913 65.4 MiB 0.15 0.00 3.40379 -123.373 -3.40379 3.40379 0.96 0.000554548 0.000504647 0.043492 0.0395795 32 3051 37 6.87369e+06 517032 586450. 2029.24 1.34 0.130699 0.115174 25474 144626 -1 2469 24 2236 3909 346925 76014 3.9064 3.9064 -151.794 -3.9064 0 0 744469. 2576.02 0.28 0.10 0.13 -1 -1 0.28 0.0289466 0.0255827 155 55 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_069.v common 7.97 vpr 65.42 MiB 0.02 7232 -1 -1 1 0.03 -1 -1 34240 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66992 32 32 345 287 1 168 97 17 17 289 -1 unnamed_device 26.6 MiB 3.79 901 18745 6241 10231 2273 65.4 MiB 0.14 0.00 2.83325 -103.4 -2.83325 2.83325 0.98 0.000495673 0.00045182 0.0433307 0.0394289 32 2400 23 6.87369e+06 461137 586450. 2029.24 1.03 0.107598 0.0952868 25474 144626 -1 1933 21 1429 2255 213160 47220 3.10426 3.10426 -125.313 -3.10426 0 0 744469. 2576.02 0.28 0.07 0.13 -1 -1 0.28 0.0225912 0.0199657 123 55 32 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_070.v common 9.54 vpr 64.95 MiB 0.02 7160 -1 -1 1 0.03 -1 -1 34020 -1 -1 18 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 31 32 353 302 1 160 81 17 17 289 -1 unnamed_device 26.5 MiB 4.79 818 11106 3048 7274 784 64.9 MiB 0.10 0.00 2.9476 -102.942 -2.9476 2.9476 0.95 0.000484206 0.000440639 0.0329353 0.030049 34 2174 21 6.87369e+06 251529 618332. 2139.56 1.62 0.134645 0.117233 25762 151098 -1 1872 25 1345 2426 190116 44060 2.94126 2.94126 -118.035 -2.94126 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0248181 0.0217716 108 82 0 0 89 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_071.v common 7.98 vpr 65.30 MiB 0.02 7092 -1 -1 1 0.03 -1 -1 34076 -1 -1 34 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66872 30 32 374 297 1 189 96 17 17 289 -1 unnamed_device 26.7 MiB 3.77 1012 12360 3250 8182 928 65.3 MiB 0.11 0.00 2.75195 -96.1074 -2.75195 2.75195 0.96 0.000525597 0.000479608 0.0325189 0.029608 28 2573 22 6.87369e+06 475111 531479. 1839.03 1.14 0.105571 0.0932078 24610 126494 -1 2227 21 1432 2355 182996 42020 3.20456 3.20456 -122.415 -3.20456 0 0 648988. 2245.63 0.26 0.07 0.12 -1 -1 0.26 0.0242225 0.0213481 143 52 60 30 57 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_072.v common 8.13 vpr 65.15 MiB 0.02 7264 -1 -1 1 0.03 -1 -1 33868 -1 -1 35 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66712 28 32 332 260 1 180 95 17 17 289 -1 unnamed_device 26.6 MiB 2.06 1073 13055 3447 8098 1510 65.1 MiB 0.11 0.00 3.47409 -108.324 -3.47409 3.47409 0.95 0.000482801 0.000441182 0.0309361 0.0282232 28 2369 22 6.87369e+06 489084 531479. 1839.03 3.00 0.162708 0.141125 24610 126494 -1 2189 21 1575 2583 195259 44400 4.113 4.113 -135.858 -4.113 0 0 648988. 2245.63 0.27 0.07 0.13 -1 -1 0.27 0.0217007 0.0190468 139 20 84 28 28 28 + fixed_k6_frac_ripple_N8_22nm.xml mult_073.v common 7.16 vpr 65.04 MiB 0.02 7280 -1 -1 1 0.03 -1 -1 34040 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66596 30 32 325 273 1 161 80 17 17 289 -1 unnamed_device 26.6 MiB 2.89 696 10228 4291 5125 812 65.0 MiB 0.08 0.00 3.1059 -100.619 -3.1059 3.1059 0.91 0.000455305 0.000415506 0.0288061 0.0263525 30 2116 23 6.87369e+06 251529 556674. 1926.21 1.41 0.100317 0.088944 25186 138497 -1 1521 23 1384 2270 146465 37211 3.07131 3.07131 -117.492 -3.07131 0 0 706193. 2443.58 0.28 0.06 0.12 -1 -1 0.28 0.0218579 0.0191873 110 58 30 30 60 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_074.v common 8.84 vpr 65.00 MiB 0.02 7060 -1 -1 1 0.03 -1 -1 33732 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66564 32 32 361 308 1 163 81 17 17 289 -1 unnamed_device 26.5 MiB 4.14 976 14956 4864 8603 1489 65.0 MiB 0.12 0.00 2.8626 -100.959 -2.8626 2.8626 0.94 0.000487764 0.000439271 0.043949 0.0400416 34 2379 21 6.87369e+06 237555 618332. 2139.56 1.62 0.146999 0.12835 25762 151098 -1 2014 19 1149 1901 166371 36683 2.92916 2.92916 -122.839 -2.92916 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.021695 0.0191758 110 88 0 0 91 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_075.v common 7.83 vpr 65.38 MiB 0.02 7096 -1 -1 1 0.03 -1 -1 33856 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 31 32 335 251 1 197 100 17 17 289 -1 unnamed_device 27.0 MiB 1.08 1186 14948 3587 9414 1947 65.4 MiB 0.12 0.00 3.40379 -118.304 -3.40379 3.40379 0.96 0.000480138 0.000437909 0.0337152 0.0307287 34 2793 26 6.87369e+06 517032 618332. 2139.56 3.60 0.181603 0.158674 25762 151098 -1 2429 25 1952 3198 248527 55001 3.6371 3.6371 -139.24 -3.6371 0 0 787024. 2723.27 0.32 0.09 0.14 -1 -1 0.32 0.0272863 0.0239964 151 -1 124 31 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_076.v common 11.41 vpr 65.52 MiB 0.02 7388 -1 -1 1 0.03 -1 -1 34020 -1 -1 38 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67096 32 32 407 319 1 202 102 17 17 289 -1 unnamed_device 26.8 MiB 4.68 974 13192 3365 8245 1582 65.5 MiB 0.12 0.00 3.39279 -117.077 -3.39279 3.39279 0.91 0.00056382 0.000516558 0.0327453 0.0298703 34 2937 23 6.87369e+06 531006 618332. 2139.56 3.70 0.201422 0.176502 25762 151098 -1 2360 23 2141 3700 265296 64739 3.8844 3.8844 -146.71 -3.8844 0 0 787024. 2723.27 0.30 0.09 0.13 -1 -1 0.30 0.0266459 0.0234702 156 57 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_077.v common 9.28 vpr 65.63 MiB 0.02 7064 -1 -1 1 0.03 -1 -1 34100 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67204 32 32 407 319 1 202 101 17 17 289 -1 unnamed_device 26.9 MiB 4.69 1137 15846 4309 9710 1827 65.6 MiB 0.14 0.00 3.32249 -120.919 -3.32249 3.32249 0.97 0.000602783 0.000539695 0.0410275 0.0374524 32 3370 26 6.87369e+06 517032 586450. 2029.24 1.29 0.120545 0.106504 25474 144626 -1 2673 24 2333 3922 384421 84195 3.9347 3.9347 -154.995 -3.9347 0 0 744469. 2576.02 0.29 0.11 0.14 -1 -1 0.29 0.0287055 0.0252107 155 62 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_078.v common 8.75 vpr 65.54 MiB 0.02 7148 -1 -1 1 0.03 -1 -1 34092 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67108 32 32 399 315 1 198 103 17 17 289 -1 unnamed_device 26.8 MiB 3.73 1132 20829 6091 12282 2456 65.5 MiB 0.17 0.00 3.27849 -114.846 -3.27849 3.27849 0.98 0.000552389 0.000501024 0.0515066 0.046783 28 2948 31 6.87369e+06 544980 531479. 1839.03 1.84 0.140025 0.124023 24610 126494 -1 2465 21 1852 3204 254645 58513 3.9847 3.9847 -147.561 -3.9847 0 0 648988. 2245.63 0.24 0.09 0.12 -1 -1 0.24 0.0249995 0.0219949 152 62 60 30 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_079.v common 7.05 vpr 65.02 MiB 0.02 7208 -1 -1 1 0.03 -1 -1 33604 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66580 30 32 296 244 1 160 81 17 17 289 -1 unnamed_device 26.5 MiB 2.96 833 14956 4735 8443 1778 65.0 MiB 0.12 0.00 2.9806 -102.791 -2.9806 2.9806 0.96 0.000457732 0.000418164 0.0398002 0.0362675 32 2381 23 6.87369e+06 265503 586450. 2029.24 1.04 0.0970175 0.0855066 25474 144626 -1 2026 21 1402 2280 209192 46952 3.44721 3.44721 -133.669 -3.44721 0 0 744469. 2576.02 0.30 0.07 0.13 -1 -1 0.30 0.0209736 0.0184682 110 29 60 30 30 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_080.v common 8.38 vpr 65.53 MiB 0.02 7440 -1 -1 1 0.03 -1 -1 34128 -1 -1 23 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67100 30 32 383 303 1 192 85 17 17 289 -1 unnamed_device 26.9 MiB 3.74 1004 16081 5076 9146 1859 65.5 MiB 0.13 0.00 3.36289 -114.657 -3.36289 3.36289 0.91 0.000501113 0.000458013 0.0465418 0.0425419 34 2333 24 6.87369e+06 321398 618332. 2139.56 1.65 0.166773 0.146684 25762 151098 -1 1942 23 1932 2986 224845 49975 3.7121 3.7121 -141.29 -3.7121 0 0 787024. 2723.27 0.30 0.08 0.13 -1 -1 0.30 0.0246355 0.0216986 140 58 60 30 60 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_081.v common 11.21 vpr 65.84 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 34232 -1 -1 43 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67424 32 32 469 381 1 202 107 17 17 289 -1 unnamed_device 27.2 MiB 6.57 1196 13516 3591 8696 1229 65.8 MiB 0.12 0.00 3.38179 -119.932 -3.38179 3.38179 0.96 0.000607831 0.00055333 0.0343369 0.0311917 32 3135 48 6.87369e+06 600875 586450. 2029.24 1.44 0.139501 0.12182 25474 144626 -1 2504 22 1905 3300 307428 66409 3.9737 3.9737 -152.578 -3.9737 0 0 744469. 2576.02 0.29 0.10 0.14 -1 -1 0.29 0.027724 0.0242439 158 106 0 0 128 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_082.v common 5.85 vpr 65.64 MiB 0.02 7276 -1 -1 1 0.03 -1 -1 33772 -1 -1 33 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67216 31 32 425 341 1 197 96 17 17 289 -1 unnamed_device 27.0 MiB 1.48 1081 13236 3366 8464 1406 65.6 MiB 0.13 0.00 3.39279 -116.856 -3.39279 3.39279 0.96 0.000594425 0.00053617 0.0375786 0.0343044 32 2894 35 6.87369e+06 461137 586450. 2029.24 1.18 0.12569 0.110728 25474 144626 -1 2268 18 1775 2903 217121 50697 3.9097 3.9097 -145.073 -3.9097 0 0 744469. 2576.02 0.30 0.08 0.14 -1 -1 0.30 0.0236325 0.020928 149 79 31 31 93 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_083.v common 7.88 vpr 65.29 MiB 0.02 7260 -1 -1 1 0.03 -1 -1 33924 -1 -1 32 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66860 30 32 404 328 1 188 94 17 17 289 -1 unnamed_device 26.7 MiB 2.84 946 17347 4997 9339 3011 65.3 MiB 0.15 0.00 2.84425 -94.1254 -2.84425 2.84425 0.98 0.000539219 0.000490006 0.0468184 0.0424801 34 2611 25 6.87369e+06 447163 618332. 2139.56 1.79 0.171638 0.150077 25762 151098 -1 2002 23 1945 3133 225213 53990 3.04976 3.04976 -117.12 -3.04976 0 0 787024. 2723.27 0.30 0.08 0.15 -1 -1 0.30 0.0266911 0.0233642 141 83 26 26 90 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_084.v common 10.33 vpr 65.47 MiB 0.02 7176 -1 -1 1 0.03 -1 -1 34180 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67044 32 32 407 319 1 202 85 17 17 289 -1 unnamed_device 26.8 MiB 5.30 1042 9757 2795 6300 662 65.5 MiB 0.10 0.00 3.32249 -119.056 -3.32249 3.32249 0.90 0.000536581 0.000490574 0.0308537 0.0282457 34 3181 23 6.87369e+06 293451 618332. 2139.56 2.02 0.166625 0.14699 25762 151098 -1 2606 22 2221 3830 308390 70974 4.027 4.027 -153.708 -4.027 0 0 787024. 2723.27 0.30 0.10 0.13 -1 -1 0.30 0.0271545 0.0240726 147 58 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_085.v common 6.63 vpr 65.37 MiB 0.05 7220 -1 -1 1 0.03 -1 -1 33872 -1 -1 36 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 29 32 387 316 1 181 97 17 17 289 -1 unnamed_device 26.7 MiB 2.67 925 12307 3344 8097 866 65.4 MiB 0.11 0.00 2.83325 -92.0544 -2.83325 2.83325 0.90 0.000513085 0.000469193 0.0306736 0.0279117 26 2588 25 6.87369e+06 503058 503264. 1741.40 1.02 0.10435 0.0919789 24322 120374 -1 2392 22 1660 2704 264016 59019 3.30606 3.30606 -120.361 -3.30606 0 0 618332. 2139.56 0.24 0.09 0.10 -1 -1 0.24 0.0260935 0.023003 138 81 26 26 85 29 + fixed_k6_frac_ripple_N8_22nm.xml mult_086.v common 5.56 vpr 64.71 MiB 0.02 6872 -1 -1 1 0.03 -1 -1 33540 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66260 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.3 MiB 0.81 863 11604 3100 7674 830 64.7 MiB 0.10 0.00 2.9586 -108.713 -2.9586 2.9586 0.94 0.000440426 0.000402532 0.0316562 0.0289539 34 2293 24 6.87369e+06 223581 618332. 2139.56 1.64 0.125599 0.109618 25762 151098 -1 2009 20 1468 2215 179662 42670 3.12326 3.12326 -130.011 -3.12326 0 0 787024. 2723.27 0.30 0.07 0.15 -1 -1 0.30 0.019844 0.0175024 114 -1 96 32 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_087.v common 10.14 vpr 65.54 MiB 0.02 7128 -1 -1 1 0.03 -1 -1 33820 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67112 32 32 407 319 1 202 101 17 17 289 -1 unnamed_device 26.8 MiB 5.76 1037 14436 3761 9923 752 65.5 MiB 0.13 0.00 3.41479 -121.507 -3.41479 3.41479 0.95 0.000556353 0.000506286 0.036898 0.0335154 30 2887 24 6.87369e+06 517032 556674. 1926.21 1.26 0.114468 0.100777 25186 138497 -1 2215 21 1709 2672 176177 40587 3.7874 3.7874 -146.4 -3.7874 0 0 706193. 2443.58 0.28 0.07 0.13 -1 -1 0.28 0.0252906 0.0222832 155 62 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_088.v common 9.54 vpr 65.58 MiB 0.02 7240 -1 -1 1 0.03 -1 -1 34064 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67156 32 32 407 319 1 202 85 17 17 289 -1 unnamed_device 26.9 MiB 4.67 1118 15151 4982 8461 1708 65.6 MiB 0.13 0.00 3.36169 -123.823 -3.36169 3.36169 0.93 0.000499809 0.000456777 0.0458756 0.0417912 34 2878 30 6.87369e+06 293451 618332. 2139.56 1.82 0.167717 0.146538 25762 151098 -1 2493 21 2131 3389 255456 58312 4.0067 4.0067 -160.904 -4.0067 0 0 787024. 2723.27 0.29 0.09 0.14 -1 -1 0.29 0.0256489 0.0225192 147 62 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_089.v common 8.28 vpr 65.30 MiB 0.02 6948 -1 -1 1 0.03 -1 -1 33756 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66864 32 32 315 267 1 158 94 17 17 289 -1 unnamed_device 26.6 MiB 4.36 861 16708 5672 8044 2992 65.3 MiB 0.12 0.00 2.71895 -93.3094 -2.71895 2.71895 0.91 0.000436433 0.00039736 0.0360682 0.0328474 30 2073 20 6.87369e+06 419215 556674. 1926.21 0.98 0.0936744 0.0827325 25186 138497 -1 1644 23 1166 1964 124559 29427 2.75666 2.75666 -109.872 -2.75666 0 0 706193. 2443.58 0.27 0.06 0.12 -1 -1 0.27 0.0208685 0.0183355 112 47 32 32 54 27 + fixed_k6_frac_ripple_N8_22nm.xml mult_090.v common 5.26 vpr 64.84 MiB 0.02 7172 -1 -1 1 0.03 -1 -1 33832 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66400 31 32 275 220 1 164 80 17 17 289 -1 unnamed_device 26.5 MiB 1.10 635 6616 1513 4390 713 64.8 MiB 0.06 0.00 3.1169 -104.319 -3.1169 3.1169 0.95 0.00043477 0.000397968 0.0182077 0.0166767 32 2471 30 6.87369e+06 237555 586450. 2029.24 1.12 0.0802934 0.0702694 25474 144626 -1 1747 20 1440 2292 182061 44359 3.13261 3.13261 -125.367 -3.13261 0 0 744469. 2576.02 0.29 0.06 0.14 -1 -1 0.29 0.0188538 0.0166094 112 -1 93 31 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_091.v common 7.40 vpr 65.43 MiB 0.02 7152 -1 -1 1 0.03 -1 -1 33988 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67000 32 32 381 303 1 194 99 17 17 289 -1 unnamed_device 26.8 MiB 3.38 1099 18111 4857 10932 2322 65.4 MiB 0.14 0.00 3.28769 -114.366 -3.28769 3.28769 0.91 0.000523839 0.000478988 0.0434714 0.0396691 32 2647 28 6.87369e+06 489084 586450. 2029.24 1.00 0.115039 0.101558 25474 144626 -1 2211 26 1806 2651 212752 47788 3.6323 3.6323 -138.211 -3.6323 0 0 744469. 2576.02 0.28 0.08 0.13 -1 -1 0.28 0.0290224 0.0254496 144 56 60 32 58 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_092.v common 5.92 vpr 65.75 MiB 0.02 7260 -1 -1 1 0.03 -1 -1 33708 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67324 32 32 406 330 1 191 97 17 17 289 -1 unnamed_device 27.1 MiB 1.47 1093 12973 3522 8653 798 65.7 MiB 0.11 0.00 3.31562 -113.632 -3.31562 3.31562 0.91 0.000528634 0.000484353 0.0334156 0.0305029 28 2771 17 6.87369e+06 461137 531479. 1839.03 1.52 0.111625 0.0992548 24610 126494 -1 2395 22 1644 2671 211953 47745 4.10256 4.10256 -143.279 -4.10256 0 0 648988. 2245.63 0.26 0.08 0.11 -1 -1 0.26 0.0255158 0.0224645 142 81 28 28 88 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_093.v common 7.16 vpr 65.85 MiB 0.02 7172 -1 -1 1 0.03 -1 -1 33924 -1 -1 41 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67428 32 32 399 285 1 232 105 17 17 289 -1 unnamed_device 27.2 MiB 1.17 1256 14678 3781 9107 1790 65.8 MiB 0.14 0.00 3.98354 -133.533 -3.98354 3.98354 0.95 0.000601004 0.000545451 0.0363857 0.0330908 34 3069 33 6.87369e+06 572927 618332. 2139.56 2.78 0.188726 0.166091 25762 151098 -1 2555 19 1900 3184 270568 59281 4.64955 4.64955 -167.681 -4.64955 0 0 787024. 2723.27 0.30 0.09 0.15 -1 -1 0.30 0.0248548 0.0219752 183 -1 156 32 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_094.v common 8.10 vpr 65.40 MiB 0.02 7420 -1 -1 1 0.03 -1 -1 33796 -1 -1 32 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66968 30 32 371 295 1 188 94 17 17 289 -1 unnamed_device 26.8 MiB 3.34 989 11383 2876 6987 1520 65.4 MiB 0.11 0.00 2.85525 -98.377 -2.85525 2.85525 0.96 0.000522235 0.000473816 0.0307418 0.0279493 34 2435 21 6.87369e+06 447163 618332. 2139.56 1.61 0.140546 0.122408 25762 151098 -1 2023 20 1685 2765 187662 45896 2.98226 2.98226 -116.568 -2.98226 0 0 787024. 2723.27 0.30 0.07 0.15 -1 -1 0.30 0.0227731 0.0201433 141 47 60 30 56 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_095.v common 4.67 vpr 64.38 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 34092 -1 -1 20 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65928 27 32 269 226 1 145 79 17 17 289 -1 unnamed_device 25.8 MiB 0.90 802 12585 5037 6178 1370 64.4 MiB 0.09 0.00 2.9348 -90.1886 -2.9348 2.9348 0.90 0.000383449 0.000344227 0.0304914 0.0278507 32 1833 23 6.87369e+06 279477 586450. 2029.24 0.92 0.0810796 0.071426 25474 144626 -1 1590 22 1125 1636 125342 29812 3.16976 3.16976 -108.445 -3.16976 0 0 744469. 2576.02 0.28 0.05 0.13 -1 -1 0.28 0.0184982 0.0162493 102 26 54 27 27 27 + fixed_k6_frac_ripple_N8_22nm.xml mult_096.v common 14.48 vpr 65.82 MiB 0.02 7420 -1 -1 1 0.04 -1 -1 34148 -1 -1 42 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67400 32 32 493 378 1 233 106 17 17 289 -1 unnamed_device 27.1 MiB 3.15 1460 13606 3334 9470 802 65.8 MiB 0.14 0.00 3.31149 -117.473 -3.31149 3.31149 0.96 0.000668574 0.000608554 0.0387571 0.0352391 28 4104 39 6.87369e+06 586901 531479. 1839.03 8.13 0.267115 0.232173 24610 126494 -1 3471 23 2586 4567 426221 97325 4.6032 4.6032 -170.429 -4.6032 0 0 648988. 2245.63 0.27 0.13 0.13 -1 -1 0.27 0.0327249 0.0289111 184 85 62 31 95 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_097.v common 9.40 vpr 65.76 MiB 0.02 7492 -1 -1 1 0.03 -1 -1 33816 -1 -1 23 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67340 31 32 455 371 1 199 86 17 17 289 -1 unnamed_device 27.0 MiB 4.26 867 13127 3132 8828 1167 65.8 MiB 0.11 0.00 3.97274 -121.868 -3.97274 3.97274 0.95 0.000609084 0.000553541 0.0439436 0.0400446 32 3326 48 6.87369e+06 321398 586450. 2029.24 1.99 0.174931 0.152783 25474 144626 -1 2320 23 1823 2897 280652 67826 4.3636 4.3636 -162.391 -4.3636 0 0 744469. 2576.02 0.29 0.09 0.14 -1 -1 0.29 0.0284759 0.0249914 144 105 0 0 124 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_098.v common 8.36 vpr 65.11 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 33500 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66668 32 32 355 304 1 162 80 17 17 289 -1 unnamed_device 26.4 MiB 3.89 931 14528 5023 7251 2254 65.1 MiB 0.12 0.00 3.8283 -107.868 -3.8283 3.8283 0.91 0.000469152 0.000424501 0.0419532 0.0380329 34 2255 22 6.87369e+06 223581 618332. 2139.56 1.54 0.14669 0.128676 25762 151098 -1 1974 16 834 1230 124726 26357 3.18321 3.18321 -124.165 -3.18321 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.0180806 0.01604 107 86 0 0 89 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_099.v common 5.97 vpr 65.37 MiB 0.02 7084 -1 -1 1 0.03 -1 -1 33968 -1 -1 34 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 32 32 364 282 1 196 98 17 17 289 -1 unnamed_device 26.7 MiB 1.25 1146 17873 5435 10742 1696 65.4 MiB 0.15 0.00 3.30669 -116.779 -3.30669 3.30669 0.96 0.000517216 0.00047061 0.0438944 0.0399591 28 2568 50 6.87369e+06 475111 531479. 1839.03 1.32 0.139831 0.122913 24610 126494 -1 2404 62 3926 5905 1070178 491313 4.035 4.035 -150.901 -4.035 0 0 648988. 2245.63 0.26 0.36 0.13 -1 -1 0.26 0.0608261 0.0529336 147 31 90 30 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_100.v common 6.77 vpr 65.87 MiB 0.02 7268 -1 -1 1 0.03 -1 -1 34144 -1 -1 40 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67452 31 32 443 336 1 224 103 17 17 289 -1 unnamed_device 27.2 MiB 2.51 1126 12153 3063 8050 1040 65.9 MiB 0.12 0.00 3.43499 -116.277 -3.43499 3.43499 0.96 0.000621188 0.000564524 0.0335287 0.0305751 28 2814 23 6.87369e+06 558954 531479. 1839.03 1.13 0.116636 0.102889 24610 126494 -1 2595 21 2003 2968 225834 52146 4.2555 4.2555 -149.319 -4.2555 0 0 648988. 2245.63 0.26 0.08 0.12 -1 -1 0.26 0.0275325 0.0242645 176 50 87 31 62 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_101.v common 7.45 vpr 65.41 MiB 0.02 7476 -1 -1 1 0.03 -1 -1 34164 -1 -1 36 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66980 30 32 373 297 1 188 98 17 17 289 -1 unnamed_device 26.8 MiB 2.36 1028 18548 5822 10051 2675 65.4 MiB 0.16 0.00 2.72995 -93.9691 -2.72995 2.72995 0.96 0.000529924 0.000483365 0.0458298 0.0417501 34 2684 26 6.87369e+06 503058 618332. 2139.56 1.90 0.165108 0.144895 25762 151098 -1 2170 19 1601 2745 204160 47734 3.06356 3.06356 -115.641 -3.06356 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0220193 0.0193708 144 50 58 30 58 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_102.v common 7.40 vpr 65.37 MiB 0.02 7424 -1 -1 1 0.03 -1 -1 33856 -1 -1 46 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 32 32 407 319 1 202 110 17 17 289 -1 unnamed_device 26.6 MiB 3.35 1119 15101 4188 9666 1247 65.4 MiB 0.13 0.00 3.40379 -121.611 -3.40379 3.40379 0.91 0.000545485 0.000499566 0.0342354 0.0311212 30 2856 23 6.87369e+06 642796 556674. 1926.21 1.04 0.108787 0.0959371 25186 138497 -1 2309 21 1717 2980 188501 42704 3.6718 3.6718 -146.578 -3.6718 0 0 706193. 2443.58 0.27 0.07 0.12 -1 -1 0.27 0.0247272 0.0217873 160 61 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_103.v common 8.11 vpr 65.46 MiB 0.02 7272 -1 -1 1 0.03 -1 -1 33932 -1 -1 42 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67036 32 32 405 318 1 201 106 17 17 289 -1 unnamed_device 26.7 MiB 3.62 1036 11856 2744 8552 560 65.5 MiB 0.11 0.00 2.85525 -102.512 -2.85525 2.85525 0.96 0.00056704 0.000515781 0.0294641 0.0267873 26 3084 40 6.87369e+06 586901 503264. 1741.40 1.40 0.124547 0.108947 24322 120374 -1 2590 23 1827 2966 253933 57009 3.10756 3.10756 -129.554 -3.10756 0 0 618332. 2139.56 0.25 0.09 0.12 -1 -1 0.25 0.0270956 0.0237389 157 61 63 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_104.v common 6.29 vpr 64.83 MiB 0.02 7216 -1 -1 1 0.03 -1 -1 33572 -1 -1 19 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66388 29 32 287 238 1 155 80 17 17 289 -1 unnamed_device 26.5 MiB 2.01 777 13496 5102 6217 2177 64.8 MiB 0.09 0.00 2.9256 -96.8343 -2.9256 2.9256 0.90 0.000396273 0.000362178 0.0329145 0.0299985 34 1801 18 6.87369e+06 265503 618332. 2139.56 1.39 0.116637 0.102019 25762 151098 -1 1497 17 1068 1560 108761 24758 3.01631 3.01631 -112.741 -3.01631 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.016539 0.014651 107 28 58 29 29 29 + fixed_k6_frac_ripple_N8_22nm.xml mult_105.v common 7.02 vpr 65.28 MiB 0.02 7176 -1 -1 1 0.03 -1 -1 33992 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66848 32 32 334 290 1 156 81 17 17 289 -1 unnamed_device 26.6 MiB 2.72 815 7256 1765 4960 531 65.3 MiB 0.06 0.00 3.34714 -97.9722 -3.34714 3.34714 0.91 0.000448523 0.000409242 0.0205113 0.0187769 34 1983 21 6.87369e+06 237555 618332. 2139.56 1.43 0.114848 0.0998817 25762 151098 -1 1678 18 914 1366 100643 23682 2.8776 2.8776 -110.55 -2.8776 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.0183579 0.0162153 102 79 0 0 82 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_106.v common 7.61 vpr 65.52 MiB 0.02 7172 -1 -1 1 0.03 -1 -1 33928 -1 -1 39 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67088 31 32 365 281 1 197 102 17 17 289 -1 unnamed_device 26.9 MiB 2.24 1072 18666 5318 11018 2330 65.5 MiB 0.16 0.00 3.39279 -116.84 -3.39279 3.39279 0.99 0.000546352 0.000494078 0.0447641 0.0406796 32 3065 42 6.87369e+06 544980 586450. 2029.24 2.10 0.154306 0.135536 25474 144626 -1 2302 22 1801 2980 275099 58465 3.7844 3.7844 -142.813 -3.7844 0 0 744469. 2576.02 0.29 0.09 0.14 -1 -1 0.29 0.0249757 0.0219588 152 29 93 31 31 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_107.v common 8.05 vpr 64.94 MiB 0.02 7152 -1 -1 1 0.03 -1 -1 33736 -1 -1 32 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66496 29 32 297 254 1 148 93 17 17 289 -1 unnamed_device 26.5 MiB 3.96 840 16683 5423 8908 2352 64.9 MiB 0.12 0.00 2.70795 -88.6836 -2.70795 2.70795 0.96 0.000436776 0.000399371 0.0365448 0.033326 26 1935 22 6.87369e+06 447163 503264. 1741.40 1.03 0.0933443 0.0822543 24322 120374 -1 1837 19 1212 2007 167573 38289 2.93826 2.93826 -111 -2.93826 0 0 618332. 2139.56 0.27 0.06 0.12 -1 -1 0.27 0.0188905 0.0166515 108 48 29 29 52 26 + fixed_k6_frac_ripple_N8_22nm.xml mult_108.v common 8.89 vpr 65.02 MiB 0.02 6892 -1 -1 1 0.03 -1 -1 33616 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 32 32 314 256 1 168 80 17 17 289 -1 unnamed_device 26.6 MiB 4.02 783 7992 1793 5935 264 65.0 MiB 0.08 0.00 2.9586 -104.965 -2.9586 2.9586 1.00 0.000481396 0.000439077 0.0240096 0.0219841 34 2432 25 6.87369e+06 223581 618332. 2139.56 1.73 0.129267 0.112998 25762 151098 -1 1836 23 1598 2568 203940 47800 3.09326 3.09326 -127.036 -3.09326 0 0 787024. 2723.27 0.30 0.07 0.15 -1 -1 0.30 0.0225733 0.0199285 114 31 64 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_109.v common 8.04 vpr 65.54 MiB 0.02 7300 -1 -1 1 0.03 -1 -1 33560 -1 -1 35 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67116 31 32 387 307 1 193 98 17 17 289 -1 unnamed_device 26.9 MiB 3.30 884 7523 1554 5228 741 65.5 MiB 0.08 0.00 2.92745 -99.4139 -2.92745 2.92745 0.95 0.000533858 0.00048624 0.0204297 0.0186474 34 2323 23 6.87369e+06 489084 618332. 2139.56 1.64 0.135968 0.117754 25762 151098 -1 1825 21 1759 2537 170414 41301 2.93196 2.93196 -117.309 -2.93196 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0246123 0.0216781 146 60 58 31 62 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_110.v common 7.51 vpr 64.95 MiB 0.02 7276 -1 -1 1 0.03 -1 -1 33828 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66504 31 32 308 262 1 154 79 17 17 289 -1 unnamed_device 26.5 MiB 3.49 815 11909 3743 6558 1608 64.9 MiB 0.10 0.00 2.63557 -92.717 -2.63557 2.63557 0.96 0.000454981 0.000415071 0.0336445 0.0307398 32 2154 31 6.87369e+06 223581 586450. 2029.24 1.01 0.097489 0.0857202 25474 144626 -1 1921 21 1233 1992 173817 39783 3.07756 3.07756 -117.776 -3.07756 0 0 744469. 2576.02 0.29 0.06 0.15 -1 -1 0.29 0.0202762 0.0178174 103 49 31 31 53 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_111.v common 7.75 vpr 65.38 MiB 0.02 7128 -1 -1 1 0.03 -1 -1 34012 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66948 32 32 383 307 1 190 101 17 17 289 -1 unnamed_device 26.7 MiB 3.57 875 18196 5657 9490 3049 65.4 MiB 0.15 0.00 2.70795 -92.7972 -2.70795 2.70795 0.97 0.000534024 0.000485158 0.0444638 0.040429 30 2522 25 6.87369e+06 517032 556674. 1926.21 1.06 0.12 0.106265 25186 138497 -1 1884 18 1202 1944 124983 31549 2.91296 2.91296 -113.481 -2.91296 0 0 706193. 2443.58 0.27 0.06 0.12 -1 -1 0.27 0.0212855 0.018884 143 56 52 26 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_112.v common 7.97 vpr 65.84 MiB 0.02 7504 -1 -1 1 0.03 -1 -1 33836 -1 -1 39 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67420 31 32 422 339 1 196 102 17 17 289 -1 unnamed_device 27.1 MiB 4.05 918 10574 2512 6926 1136 65.8 MiB 0.09 0.00 2.86625 -97.1498 -2.86625 2.86625 0.91 0.000571791 0.000512302 0.0265705 0.024039 30 2250 22 6.87369e+06 544980 556674. 1926.21 0.95 0.0982348 0.0860795 25186 138497 -1 1763 21 1552 2455 129256 31797 2.84266 2.84266 -114.89 -2.84266 0 0 706193. 2443.58 0.27 0.06 0.12 -1 -1 0.27 0.024923 0.0220251 151 88 31 31 92 31 + fixed_k6_frac_ripple_N8_22nm.xml mult_113.v common 8.01 vpr 65.03 MiB 0.02 7208 -1 -1 1 0.03 -1 -1 33784 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66588 32 32 333 279 1 164 81 17 17 289 -1 unnamed_device 26.6 MiB 3.33 773 13381 4004 7711 1666 65.0 MiB 0.11 0.00 2.62457 -92.3566 -2.62457 2.62457 0.96 0.000473953 0.000432506 0.0383951 0.0350408 34 2177 22 6.87369e+06 237555 618332. 2139.56 1.55 0.136294 0.119029 25762 151098 -1 1798 21 1315 2107 160402 38069 2.91016 2.91016 -115.275 -2.91016 0 0 787024. 2723.27 0.32 0.06 0.15 -1 -1 0.32 0.0221658 0.0195263 110 54 32 32 60 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_114.v common 8.40 vpr 65.18 MiB 0.02 6944 -1 -1 1 0.03 -1 -1 33504 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66748 32 32 339 283 1 166 80 17 17 289 -1 unnamed_device 26.5 MiB 3.99 888 14356 4651 8330 1375 65.2 MiB 0.12 0.00 2.9366 -108.513 -2.9366 2.9366 0.94 0.000491368 0.00044878 0.0419586 0.0382347 32 2643 48 6.87369e+06 223581 586450. 2029.24 1.26 0.125873 0.110468 25474 144626 -1 2151 25 1635 2713 250351 55808 3.10126 3.10126 -132.542 -3.10126 0 0 744469. 2576.02 0.29 0.08 0.14 -1 -1 0.29 0.025327 0.0221457 112 60 32 32 62 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_115.v common 8.32 vpr 65.64 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 34384 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67216 32 32 407 319 1 202 104 17 17 289 -1 unnamed_device 26.9 MiB 3.70 1054 12304 2830 8610 864 65.6 MiB 0.11 0.00 3.41299 -121.626 -3.41299 3.41299 0.96 0.000579711 0.000518503 0.0313216 0.0284317 32 2833 39 6.87369e+06 558954 586450. 2029.24 1.45 0.127727 0.112544 25474 144626 -1 2207 21 1830 2965 229826 52549 3.7781 3.7781 -144.551 -3.7781 0 0 744469. 2576.02 0.29 0.08 0.14 -1 -1 0.29 0.0253591 0.0223518 157 49 64 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_116.v common 9.29 vpr 65.52 MiB 0.02 7240 -1 -1 1 0.03 -1 -1 34140 -1 -1 34 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67088 29 32 367 293 1 185 95 17 17 289 -1 unnamed_device 26.9 MiB 3.02 865 11975 2818 8366 791 65.5 MiB 0.11 0.00 2.81125 -91.014 -2.81125 2.81125 0.98 0.000529496 0.000483652 0.0317568 0.0288114 28 2541 24 6.87369e+06 475111 531479. 1839.03 3.15 0.174723 0.151614 24610 126494 -1 2196 22 1597 2467 178380 43237 3.11856 3.11856 -121.39 -3.11856 0 0 648988. 2245.63 0.26 0.07 0.13 -1 -1 0.26 0.0237265 0.0208661 140 54 56 29 58 29 + fixed_k6_frac_ripple_N8_22nm.xml mult_117.v common 11.60 vpr 65.89 MiB 0.02 7240 -1 -1 1 0.04 -1 -1 34364 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67468 32 32 469 381 1 202 104 17 17 289 -1 unnamed_device 27.3 MiB 6.00 872 19868 6214 10501 3153 65.9 MiB 0.16 0.00 3.46799 -118.73 -3.46799 3.46799 0.90 0.000580939 0.000529002 0.0497382 0.045121 28 3196 32 6.87369e+06 558954 531479. 1839.03 2.57 0.154516 0.137384 24610 126494 -1 2557 23 2226 3528 306017 76778 4.154 4.154 -158.383 -4.154 0 0 648988. 2245.63 0.25 0.11 0.11 -1 -1 0.25 0.0309661 0.0274288 157 117 0 0 128 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_118.v common 4.96 vpr 64.68 MiB 0.02 6940 -1 -1 1 0.03 -1 -1 33904 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66236 31 32 259 212 1 155 79 17 17 289 -1 unnamed_device 26.1 MiB 0.89 777 6163 1332 4488 343 64.7 MiB 0.06 0.00 2.44612 -83.5574 -2.44612 2.44612 0.96 0.000420944 0.000378923 0.016788 0.0152995 30 2011 25 6.87369e+06 223581 556674. 1926.21 1.04 0.0738192 0.0646664 25186 138497 -1 1536 22 1163 1891 111499 27532 2.78516 2.78516 -105.961 -2.78516 0 0 706193. 2443.58 0.30 0.06 0.14 -1 -1 0.30 0.0201255 0.0177627 104 -1 85 31 0 0 + fixed_k6_frac_ripple_N8_22nm.xml mult_119.v common 6.88 vpr 65.46 MiB 0.02 7272 -1 -1 1 0.03 -1 -1 33888 -1 -1 37 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67036 32 32 418 338 1 194 101 17 17 289 -1 unnamed_device 26.7 MiB 2.08 1090 17021 4618 10264 2139 65.5 MiB 0.14 0.00 3.34879 -116.796 -3.34879 3.34879 0.97 0.000582524 0.000530448 0.046324 0.0423778 34 2413 24 6.87369e+06 517032 618332. 2139.56 1.58 0.165131 0.144548 25762 151098 -1 2012 24 1685 2374 171110 40001 3.7451 3.7451 -138.901 -3.7451 0 0 787024. 2723.27 0.30 0.07 0.15 -1 -1 0.30 0.0285316 0.0249728 147 89 28 28 92 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_120.v common 9.61 vpr 65.16 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 34132 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66720 32 32 376 318 1 168 80 17 17 289 -1 unnamed_device 26.4 MiB 4.98 787 6960 1516 4800 644 65.2 MiB 0.06 0.00 2.9898 -104.77 -2.9898 2.9898 0.91 0.000489682 0.000448798 0.021711 0.0199007 34 2143 37 6.87369e+06 223581 618332. 2139.56 1.70 0.148968 0.130421 25762 151098 -1 1687 19 1273 1737 124767 31683 3.09651 3.09651 -126.508 -3.09651 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.0219261 0.0193932 114 93 0 0 96 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_121.v common 8.46 vpr 65.56 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 33968 -1 -1 39 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67136 32 32 401 316 1 199 103 17 17 289 -1 unnamed_device 26.9 MiB 3.63 1065 20829 6194 12011 2624 65.6 MiB 0.17 0.00 2.77395 -101.87 -2.77395 2.77395 0.97 0.000552401 0.000504808 0.0501553 0.0456324 34 2447 23 6.87369e+06 544980 618332. 2139.56 1.60 0.167955 0.147089 25762 151098 -1 1964 21 1549 2271 152372 35917 2.83166 2.83166 -117.576 -2.83166 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0251782 0.0221265 153 59 61 32 64 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_122.v common 10.75 vpr 65.47 MiB 0.02 7604 -1 -1 1 0.04 -1 -1 34316 -1 -1 47 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67044 32 32 500 382 1 236 111 17 17 289 -1 unnamed_device 27.0 MiB 5.64 1175 16603 4582 10105 1916 65.5 MiB 0.15 0.00 3.98354 -133.428 -3.98354 3.98354 0.98 0.000656838 0.000596573 0.044285 0.0401703 28 3419 28 6.87369e+06 656770 531479. 1839.03 1.85 0.146539 0.129569 24610 126494 -1 2845 23 2765 4485 381615 87421 4.91215 4.91215 -175.673 -4.91215 0 0 648988. 2245.63 0.27 0.12 0.12 -1 -1 0.27 0.0339224 0.0301121 190 81 64 32 96 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_123.v common 6.27 vpr 64.48 MiB 0.02 7196 -1 -1 1 0.03 -1 -1 33828 -1 -1 14 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66032 30 32 246 229 1 118 76 17 17 289 -1 unnamed_device 26.1 MiB 2.55 731 9356 3075 4892 1389 64.5 MiB 0.06 0.00 2.30306 -77.7553 -2.30306 2.30306 0.93 0.000346261 0.000316154 0.0219971 0.020143 32 1533 19 6.87369e+06 195634 586450. 2029.24 0.87 0.0662101 0.058257 25474 144626 -1 1341 23 685 986 81822 18778 2.13917 2.13917 -89.4525 -2.13917 0 0 744469. 2576.02 0.28 0.04 0.13 -1 -1 0.28 0.017458 0.0152455 72 51 0 0 53 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_124.v common 4.96 vpr 64.55 MiB 0.02 6896 -1 -1 1 0.03 -1 -1 33728 -1 -1 18 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66096 30 32 296 244 1 158 80 17 17 289 -1 unnamed_device 26.2 MiB 1.11 853 11948 3578 6451 1919 64.5 MiB 0.09 0.00 2.9678 -102.451 -2.9678 2.9678 0.91 0.000410815 0.000374824 0.0308331 0.0281839 32 2062 21 6.87369e+06 251529 586450. 2029.24 0.94 0.0848708 0.0749751 25474 144626 -1 1767 20 1332 1891 167699 38286 3.03531 3.03531 -122.352 -3.03531 0 0 744469. 2576.02 0.29 0.06 0.12 -1 -1 0.29 0.0190856 0.0168468 109 29 60 30 30 30 + fixed_k6_frac_ripple_N8_22nm.xml mult_125.v common 6.96 vpr 65.08 MiB 0.02 7036 -1 -1 1 0.03 -1 -1 33604 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66640 32 32 314 256 1 168 80 17 17 289 -1 unnamed_device 26.6 MiB 1.61 841 7992 1818 5930 244 65.1 MiB 0.08 0.00 2.77395 -101.431 -2.77395 2.77395 0.96 0.000475142 0.000432415 0.0238219 0.0217491 34 2754 35 6.87369e+06 223581 618332. 2139.56 2.23 0.139748 0.12156 25762 151098 -1 2171 22 1691 3013 230460 55614 3.25786 3.25786 -131.867 -3.25786 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0223124 0.0195896 114 31 64 32 32 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_126.v common 4.91 vpr 64.70 MiB 0.02 6984 -1 -1 1 0.03 -1 -1 34080 -1 -1 37 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66252 25 32 251 214 1 139 94 17 17 289 -1 unnamed_device 26.3 MiB 0.87 639 16282 5333 8086 2863 64.7 MiB 0.10 0.00 2.78925 -75.2553 -2.78925 2.78925 0.90 0.000366806 0.000336145 0.0295248 0.0268832 26 1751 21 6.87369e+06 517032 503264. 1741.40 1.22 0.0859246 0.0760667 24322 120374 -1 1548 19 1053 1774 159858 36989 3.02726 3.02726 -95.0641 -3.02726 0 0 618332. 2139.56 0.24 0.06 0.10 -1 -1 0.24 0.0159045 0.0139853 105 19 50 25 25 25 + fixed_k6_frac_ripple_N8_22nm.xml mult_127.v common 8.68 vpr 65.71 MiB 0.02 7460 -1 -1 1 0.03 -1 -1 34040 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67292 32 32 432 346 1 200 85 17 17 289 -1 unnamed_device 27.0 MiB 3.41 1078 11059 3231 6919 909 65.7 MiB 0.12 0.00 3.39279 -118.067 -3.39279 3.39279 0.99 0.000594069 0.000534332 0.036946 0.0336941 34 3224 29 6.87369e+06 293451 618332. 2139.56 2.01 0.174859 0.152625 25762 151098 -1 2621 25 2145 3944 292041 69996 3.9487 3.9487 -150.781 -3.9487 0 0 787024. 2723.27 0.31 0.10 0.15 -1 -1 0.31 0.0304672 0.0267353 145 84 32 32 94 32 + fixed_k6_frac_ripple_N8_22nm.xml mult_128.v common 8.26 vpr 65.71 MiB 0.02 7276 -1 -1 1 0.03 -1 -1 33856 -1 -1 40 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67284 31 32 421 339 1 195 103 17 17 289 -1 unnamed_device 27.0 MiB 3.37 1018 14081 3637 8739 1705 65.7 MiB 0.13 0.00 2.87245 -101.624 -2.87245 2.87245 0.97 0.000618976 0.000561026 0.0367513 0.0332583 34 2356 22 6.87369e+06 558954 618332. 2139.56 1.66 0.157754 0.13719 25762 151098 -1 2028 22 1868 2858 206667 47279 3.07646 3.07646 -124.825 -3.07646 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0271114 0.0239343 151 88 29 29 93 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_001.v common 7.00 vpr 65.30 MiB 0.02 7320 -1 -1 1 0.03 -1 -1 34304 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 32 32 438 350 1 295 93 17 17 289 -1 unnamed_device 26.6 MiB 1.89 1424 20673 7364 10652 2657 65.3 MiB 0.17 0.00 4.17364 -142.53 -4.17364 4.17364 0.92 0.000540885 0.000488831 0.0556131 0.0507651 36 3213 36 6.89349e+06 408721 648988. 2245.63 1.96 0.199415 0.174842 26050 158493 -1 2769 18 2017 2458 166796 37005 4.31595 4.31595 -164.564 -4.31595 0 0 828058. 2865.25 0.32 0.07 0.16 -1 -1 0.32 0.0244203 0.0216519 192 80 32 32 96 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_002.v common 9.07 vpr 65.66 MiB 0.02 7392 -1 -1 1 0.03 -1 -1 33852 -1 -1 29 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67236 30 32 409 330 1 262 91 17 17 289 -1 unnamed_device 26.9 MiB 1.69 1354 15595 4586 8288 2721 65.7 MiB 0.15 0.00 4.21067 -131.732 -4.21067 4.21067 0.91 0.000540553 0.000493249 0.0435428 0.0397019 34 3765 39 6.89349e+06 408721 618332. 2139.56 4.35 0.275988 0.242136 25762 151098 -1 2844 21 2216 3110 245155 53716 4.50478 4.50478 -157.952 -4.50478 0 0 787024. 2723.27 0.29 0.08 0.13 -1 -1 0.29 0.0258253 0.0228219 177 78 30 30 89 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_003.v common 9.63 vpr 65.25 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 34252 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66820 32 32 387 309 1 253 89 17 17 289 -1 unnamed_device 26.6 MiB 2.31 1308 15137 4287 8597 2253 65.3 MiB 0.13 0.00 3.18936 -113.949 -3.18936 3.18936 0.97 0.000533184 0.000488232 0.0428407 0.0390324 38 2797 33 6.89349e+06 352346 678818. 2348.85 4.07 0.255659 0.221995 26626 170182 -1 2466 21 1550 1961 138391 30114 3.6611 3.6611 -138.058 -3.6611 0 0 902133. 3121.57 0.34 0.06 0.17 -1 -1 0.34 0.0246912 0.021718 167 50 54 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_004.v common 7.41 vpr 64.96 MiB 0.02 7100 -1 -1 1 0.03 -1 -1 33752 -1 -1 25 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66516 29 32 343 267 1 209 86 17 17 289 -1 unnamed_device 26.2 MiB 2.54 947 11237 3150 7479 608 65.0 MiB 0.11 0.00 3.65595 -112.917 -3.65595 3.65595 0.96 0.000501959 0.00045844 0.0318057 0.0290599 36 2313 25 6.89349e+06 352346 648988. 2245.63 1.71 0.140914 0.122687 26050 158493 -1 1981 20 1607 2407 147310 36127 4.018 4.018 -135.381 -4.018 0 0 828058. 2865.25 0.32 0.06 0.16 -1 -1 0.32 0.0220521 0.0194665 148 25 87 29 29 29 + fixed_k6_frac_uripple_N8_22nm.xml mult_005.v common 9.59 vpr 65.39 MiB 0.02 7164 -1 -1 1 0.03 -1 -1 33884 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66956 32 32 376 288 1 233 88 17 17 289 -1 unnamed_device 26.8 MiB 2.13 1296 15298 4425 8938 1935 65.4 MiB 0.15 0.00 4.01094 -139.821 -4.01094 4.01094 0.91 0.000516427 0.000464806 0.0429806 0.0392729 36 3346 26 6.89349e+06 338252 648988. 2245.63 4.41 0.232362 0.204232 26050 158493 -1 2902 22 2276 3873 306832 64687 4.41309 4.41309 -165.537 -4.41309 0 0 828058. 2865.25 0.31 0.09 0.14 -1 -1 0.31 0.0255412 0.0226083 163 31 96 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_006.v common 7.86 vpr 65.62 MiB 0.02 7372 -1 -1 1 0.03 -1 -1 33944 -1 -1 41 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67192 32 32 402 316 1 257 105 17 17 289 -1 unnamed_device 26.9 MiB 2.14 1308 20853 6182 11632 3039 65.6 MiB 0.19 0.00 3.51229 -115.801 -3.51229 3.51229 0.96 0.000545591 0.000497264 0.0490959 0.0446947 34 3718 34 6.89349e+06 577847 618332. 2139.56 2.46 0.188923 0.165632 25762 151098 -1 2817 21 1932 3034 258125 54251 3.35745 3.35745 -135.27 -3.35745 0 0 787024. 2723.27 0.31 0.09 0.15 -1 -1 0.31 0.026329 0.0232569 179 61 63 32 63 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_007.v common 6.01 vpr 64.67 MiB 0.02 7032 -1 -1 1 0.03 -1 -1 34032 -1 -1 21 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66224 27 32 269 226 1 164 80 17 17 289 -1 unnamed_device 26.3 MiB 1.82 716 14700 4346 9327 1027 64.7 MiB 0.11 0.00 3.0242 -88.7873 -3.0242 3.0242 0.94 0.000407878 0.000374106 0.0366274 0.0335556 28 2152 39 6.89349e+06 295971 531479. 1839.03 1.20 0.1137 0.101014 24610 126494 -1 1677 20 1371 1904 140030 33562 3.34416 3.34416 -114.07 -3.34416 0 0 648988. 2245.63 0.27 0.06 0.12 -1 -1 0.27 0.0186953 0.0165455 112 26 54 27 27 27 + fixed_k6_frac_uripple_N8_22nm.xml mult_008.v common 5.65 vpr 65.02 MiB 0.02 7196 -1 -1 1 0.03 -1 -1 33804 -1 -1 35 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66584 31 32 317 242 1 187 98 17 17 289 -1 unnamed_device 26.3 MiB 0.98 1006 18548 5600 10104 2844 65.0 MiB 0.14 0.00 2.7253 -92.6455 -2.7253 2.7253 0.96 0.000493244 0.000449572 0.0412815 0.0375873 34 2314 20 6.89349e+06 493284 618332. 2139.56 1.52 0.138643 0.121092 25762 151098 -1 1939 20 1212 1965 131735 29935 2.59831 2.59831 -105.285 -2.59831 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0204893 0.0180217 141 -1 115 31 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_009.v common 8.40 vpr 65.03 MiB 0.02 7028 -1 -1 1 0.03 -1 -1 33784 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66592 31 32 338 292 1 225 84 17 17 289 -1 unnamed_device 26.2 MiB 1.78 1150 11979 3218 6740 2021 65.0 MiB 0.09 0.00 2.93075 -102.191 -2.93075 2.93075 0.91 0.000445936 0.000405877 0.0316569 0.0289416 36 2458 42 6.89349e+06 295971 648988. 2245.63 3.68 0.184106 0.16003 26050 158493 -1 2026 22 1493 1789 122697 28429 3.13291 3.13291 -121.951 -3.13291 0 0 828058. 2865.25 0.31 0.06 0.14 -1 -1 0.31 0.0220646 0.0195022 140 81 0 0 84 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_010.v common 6.39 vpr 64.62 MiB 0.02 7164 -1 -1 1 0.03 -1 -1 33736 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 32 32 314 256 1 193 83 17 17 289 -1 unnamed_device 26.2 MiB 1.87 805 14303 3805 8843 1655 64.6 MiB 0.11 0.00 2.96065 -102.945 -2.96065 2.96065 0.91 0.00042908 0.000391722 0.0368613 0.0336928 34 2365 23 6.89349e+06 267783 618332. 2139.56 1.60 0.141259 0.124479 25762 151098 -1 1848 19 1550 2027 125654 31859 3.29906 3.29906 -131.068 -3.29906 0 0 787024. 2723.27 0.29 0.06 0.13 -1 -1 0.29 0.0191162 0.0169119 127 31 64 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_011.v common 9.59 vpr 65.30 MiB 0.02 7120 -1 -1 1 0.03 -1 -1 33364 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66864 30 32 325 273 1 203 83 17 17 289 -1 unnamed_device 26.5 MiB 2.50 1097 13223 4269 6936 2018 65.3 MiB 0.11 0.00 3.44524 -114.518 -3.44524 3.44524 0.99 0.000478239 0.000439449 0.0366892 0.0335175 36 2360 22 6.89349e+06 295971 648988. 2245.63 3.90 0.174883 0.152121 26050 158493 -1 2162 21 1623 2132 165188 34613 3.54075 3.54075 -135.586 -3.54075 0 0 828058. 2865.25 0.32 0.06 0.16 -1 -1 0.32 0.020955 0.0185135 135 58 30 30 60 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_012.v common 7.09 vpr 65.21 MiB 0.02 6988 -1 -1 1 0.03 -1 -1 33932 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 32 32 331 280 1 215 84 17 17 289 -1 unnamed_device 26.5 MiB 1.98 963 16371 5985 7858 2528 65.2 MiB 0.13 0.00 3.0432 -100.428 -3.0432 3.0432 0.97 0.000477505 0.000434237 0.0427178 0.038885 34 2807 32 6.89349e+06 281877 618332. 2139.56 1.96 0.163108 0.143019 25762 151098 -1 1992 19 1368 1565 135069 30680 3.03551 3.03551 -114.926 -3.03551 0 0 787024. 2723.27 0.32 0.06 0.15 -1 -1 0.32 0.0195855 0.0172584 135 57 25 25 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_013.v common 7.59 vpr 65.20 MiB 0.02 7388 -1 -1 1 0.03 -1 -1 33968 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 32 32 386 305 1 239 89 17 17 289 -1 unnamed_device 26.6 MiB 1.58 989 17711 5347 9041 3323 65.2 MiB 0.15 0.00 3.35709 -112.94 -3.35709 3.35709 0.97 0.000566844 0.000515903 0.0511475 0.0465717 34 3625 35 6.89349e+06 352346 618332. 2139.56 2.79 0.167446 0.146804 25762 151098 -1 2325 21 1906 2575 193417 46789 3.62 3.62 -131.048 -3.62 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0246326 0.0216484 161 55 64 32 57 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_014.v common 6.74 vpr 65.27 MiB 0.02 7412 -1 -1 1 0.03 -1 -1 33784 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66836 32 32 407 319 1 264 92 17 17 289 -1 unnamed_device 26.6 MiB 1.66 1377 15824 4640 9359 1825 65.3 MiB 0.14 0.00 4.12524 -135.26 -4.12524 4.12524 0.91 0.000539296 0.000493859 0.0432597 0.039552 36 3119 27 6.89349e+06 394628 648988. 2245.63 2.01 0.183479 0.162225 26050 158493 -1 2486 22 2206 2948 204703 46139 4.50255 4.50255 -162.444 -4.50255 0 0 828058. 2865.25 0.31 0.08 0.14 -1 -1 0.31 0.0265897 0.0235007 175 60 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_015.v common 5.89 vpr 64.62 MiB 0.02 7088 -1 -1 1 0.03 -1 -1 33804 -1 -1 21 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66176 29 32 272 228 1 171 82 17 17 289 -1 unnamed_device 26.3 MiB 1.56 886 10940 3249 6105 1586 64.6 MiB 0.08 0.00 2.86465 -93.837 -2.86465 2.86465 0.91 0.000389312 0.000355527 0.0256509 0.0234013 34 2106 31 6.89349e+06 295971 618332. 2139.56 1.44 0.115175 0.100352 25762 151098 -1 1780 20 1089 1530 120467 27214 2.90726 2.90726 -107.299 -2.90726 0 0 787024. 2723.27 0.29 0.05 0.14 -1 -1 0.29 0.0176584 0.0155919 112 21 58 29 24 24 + fixed_k6_frac_uripple_N8_22nm.xml mult_016.v common 10.52 vpr 65.47 MiB 0.02 7404 -1 -1 1 0.03 -1 -1 34016 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67044 32 32 401 315 1 256 89 17 17 289 -1 unnamed_device 26.8 MiB 2.81 1404 17711 5866 9888 1957 65.5 MiB 0.17 0.00 3.54049 -122.38 -3.54049 3.54049 0.97 0.00055019 0.000503794 0.0522066 0.0477496 36 3193 25 6.89349e+06 352346 648988. 2245.63 4.45 0.254149 0.223071 26050 158493 -1 2895 23 2209 3654 273130 59535 3.8287 3.8287 -147.126 -3.8287 0 0 828058. 2865.25 0.33 0.10 0.15 -1 -1 0.33 0.0303119 0.0268789 174 60 64 32 62 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_017.v common 6.46 vpr 65.29 MiB 0.02 7212 -1 -1 1 0.03 -1 -1 33904 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66860 32 32 383 303 1 236 89 17 17 289 -1 unnamed_device 26.7 MiB 1.45 1328 15731 5142 8859 1730 65.3 MiB 0.15 0.00 3.06395 -109.655 -3.06395 3.06395 1.00 0.00055548 0.000494992 0.046572 0.0425399 34 2943 22 6.89349e+06 352346 618332. 2139.56 1.74 0.166988 0.146661 25762 151098 -1 2441 21 1772 2274 198003 42355 2.97771 2.97771 -124.265 -2.97771 0 0 787024. 2723.27 0.30 0.08 0.15 -1 -1 0.30 0.0255697 0.0226472 160 54 64 32 56 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_018.v common 7.35 vpr 65.27 MiB 0.02 7068 -1 -1 1 0.03 -1 -1 33412 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66832 32 32 339 284 1 224 86 17 17 289 -1 unnamed_device 26.5 MiB 2.19 1089 15395 5830 7789 1776 65.3 MiB 0.14 0.00 2.80245 -99.8458 -2.80245 2.80245 1.00 0.000493123 0.000448715 0.0422668 0.0385344 34 2788 40 6.89349e+06 310065 618332. 2139.56 1.95 0.168104 0.146993 25762 151098 -1 2003 23 1802 2446 159750 38540 2.97056 2.97056 -118.039 -2.97056 0 0 787024. 2723.27 0.30 0.07 0.15 -1 -1 0.30 0.0230567 0.020263 139 62 29 29 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_019.v common 5.57 vpr 64.40 MiB 0.02 6980 -1 -1 1 0.03 -1 -1 33760 -1 -1 15 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65948 30 32 226 208 1 142 77 17 17 289 -1 unnamed_device 26.0 MiB 1.20 775 11650 3432 6734 1484 64.4 MiB 0.07 0.00 2.54456 -86.0724 -2.54456 2.54456 0.97 0.000367416 0.000335269 0.0263427 0.024057 34 1720 20 6.89349e+06 211408 618332. 2139.56 1.32 0.096449 0.0842612 25762 151098 -1 1495 19 725 873 66109 15427 2.23137 2.23137 -93.9192 -2.23137 0 0 787024. 2723.27 0.30 0.04 0.13 -1 -1 0.30 0.014819 0.0130491 85 29 24 24 30 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_020.v common 6.38 vpr 65.30 MiB 0.02 6980 -1 -1 1 0.03 -1 -1 33808 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 31 32 335 280 1 217 85 17 17 289 -1 unnamed_device 26.6 MiB 1.68 1116 13849 3916 8310 1623 65.3 MiB 0.11 0.00 3.39499 -119.193 -3.39499 3.39499 0.96 0.000490279 0.000449281 0.0377028 0.0344385 34 2525 23 6.89349e+06 310065 618332. 2139.56 1.57 0.1384 0.120667 25762 151098 -1 2119 18 1507 1995 141257 32938 3.44645 3.44645 -137.51 -3.44645 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0197438 0.0174315 141 55 31 31 62 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_021.v common 5.49 vpr 65.45 MiB 0.02 7076 -1 -1 1 0.03 -1 -1 33796 -1 -1 40 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 32 32 366 283 1 228 104 17 17 289 -1 unnamed_device 26.8 MiB 1.06 1178 18648 5399 10601 2648 65.4 MiB 0.15 0.00 3.64283 -127.034 -3.64283 3.64283 0.91 0.000528328 0.000476208 0.0421082 0.0381875 30 2909 21 6.89349e+06 563754 556674. 1926.21 1.38 0.115363 0.102286 25186 138497 -1 2321 22 1713 2415 169066 36320 3.83884 3.83884 -149.006 -3.83884 0 0 706193. 2443.58 0.29 0.07 0.13 -1 -1 0.29 0.024936 0.0220578 166 31 91 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_022.v common 6.87 vpr 65.77 MiB 0.02 7516 -1 -1 1 0.03 -1 -1 33924 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67352 32 32 460 375 1 309 95 17 17 289 -1 unnamed_device 27.1 MiB 1.54 1544 19967 6161 11521 2285 65.8 MiB 0.18 0.00 3.37919 -119.275 -3.37919 3.37919 0.98 0.000593469 0.000540025 0.0580983 0.0528869 34 3832 31 6.89349e+06 436909 618332. 2139.56 2.06 0.21194 0.187362 25762 151098 -1 2929 21 2171 2493 180674 41856 3.941 3.941 -143.499 -3.941 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0277292 0.0245765 201 108 0 0 125 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_023.v common 5.45 vpr 64.41 MiB 0.02 7060 -1 -1 1 0.03 -1 -1 34324 -1 -1 18 26 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65960 26 32 198 186 1 129 76 17 17 289 -1 unnamed_device 26.1 MiB 1.57 719 9996 3588 4915 1493 64.4 MiB 0.06 0.00 2.21891 -67.1246 -2.21891 2.21891 1.00 0.000315519 0.00028825 0.0215528 0.0197213 30 1452 18 6.89349e+06 253689 556674. 1926.21 0.91 0.0603579 0.0530969 25186 138497 -1 1247 19 614 827 59565 13037 2.07412 2.07412 -76.9409 -2.07412 0 0 706193. 2443.58 0.28 0.03 0.11 -1 -1 0.28 0.0134617 0.0118618 77 21 26 26 22 22 + fixed_k6_frac_uripple_N8_22nm.xml mult_024.v common 5.86 vpr 64.65 MiB 0.02 7160 -1 -1 1 0.03 -1 -1 34104 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66204 32 32 333 251 1 196 85 17 17 289 -1 unnamed_device 26.2 MiB 1.29 1022 11617 2808 8147 662 64.7 MiB 0.10 0.00 3.25074 -113.04 -3.25074 3.25074 0.91 0.000472021 0.000433031 0.0318844 0.029217 34 2666 20 6.89349e+06 295971 618332. 2139.56 1.62 0.141287 0.12422 25762 151098 -1 2185 21 1830 3099 214334 49364 3.48375 3.48375 -136.225 -3.48375 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0222578 0.0196728 141 -1 122 32 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_025.v common 4.85 vpr 64.18 MiB 0.02 6984 -1 -1 1 0.03 -1 -1 33960 -1 -1 12 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65720 32 32 199 182 1 122 76 17 17 289 -1 unnamed_device 25.7 MiB 0.43 748 11596 4396 6072 1128 64.2 MiB 0.07 0.00 1.93068 -78.0559 -1.93068 1.93068 0.97 0.000322756 0.000293685 0.0249303 0.0227754 34 1557 18 6.89349e+06 169126 618332. 2139.56 1.39 0.0917764 0.0802572 25762 151098 -1 1439 20 684 998 81318 18316 1.92346 1.92346 -89.6807 -1.92346 0 0 787024. 2723.27 0.30 0.04 0.15 -1 -1 0.30 0.0144856 0.0127795 71 -1 53 32 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_026.v common 6.77 vpr 65.17 MiB 0.02 7084 -1 -1 1 0.03 -1 -1 34160 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66732 32 32 376 288 1 233 89 17 17 289 -1 unnamed_device 26.6 MiB 1.66 992 11969 3400 7456 1113 65.2 MiB 0.12 0.00 3.76105 -125.893 -3.76105 3.76105 0.96 0.000559339 0.000502526 0.0345688 0.0315358 34 3109 37 6.89349e+06 352346 618332. 2139.56 1.95 0.165508 0.14435 25762 151098 -1 2403 22 2023 2919 222238 50648 3.92076 3.92076 -151.618 -3.92076 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.025586 0.0225199 161 21 96 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_027.v common 4.79 vpr 65.26 MiB 0.02 7136 -1 -1 1 0.03 -1 -1 34020 -1 -1 36 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66824 32 32 337 253 1 198 100 17 17 289 -1 unnamed_device 26.5 MiB 0.83 1163 16572 4457 10734 1381 65.3 MiB 0.14 0.00 2.9104 -106.195 -2.9104 2.9104 0.90 0.0004761 0.000431851 0.0365697 0.0332192 32 2818 24 6.89349e+06 507378 586450. 2029.24 1.00 0.102995 0.0911154 25474 144626 -1 2300 23 1485 2372 180688 39745 2.71931 2.71931 -119.417 -2.71931 0 0 744469. 2576.02 0.28 0.07 0.13 -1 -1 0.28 0.0240635 0.021253 151 -1 124 32 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_028.v common 6.77 vpr 65.31 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 33924 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66880 32 32 407 319 1 264 90 17 17 289 -1 unnamed_device 26.6 MiB 1.94 1428 12351 3459 7662 1230 65.3 MiB 0.12 0.00 3.69695 -131.826 -3.69695 3.69695 0.90 0.000542667 0.000496752 0.0349296 0.0319677 34 3538 24 6.89349e+06 366440 618332. 2139.56 1.83 0.171251 0.151004 25762 151098 -1 2801 20 2208 3186 216358 49225 3.95986 3.95986 -154.198 -3.95986 0 0 787024. 2723.27 0.30 0.08 0.14 -1 -1 0.30 0.0244712 0.0216721 174 54 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_029.v common 6.85 vpr 64.58 MiB 0.02 7068 -1 -1 1 0.03 -1 -1 33936 -1 -1 17 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66128 32 32 294 246 1 188 81 17 17 289 -1 unnamed_device 26.2 MiB 2.16 1049 13031 4328 6818 1885 64.6 MiB 0.11 0.00 2.82445 -104.768 -2.82445 2.82445 0.93 0.000439826 0.000400143 0.0351597 0.0320213 34 2535 23 6.89349e+06 239595 618332. 2139.56 1.64 0.131853 0.115291 25762 151098 -1 2182 20 1639 2380 167017 38139 3.08856 3.08856 -129.599 -3.08856 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0198267 0.0175645 118 31 54 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_030.v common 6.80 vpr 64.89 MiB 0.02 6964 -1 -1 1 0.03 -1 -1 33628 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66444 30 32 296 244 1 182 81 17 17 289 -1 unnamed_device 26.5 MiB 1.96 1019 12856 4206 6637 2013 64.9 MiB 0.11 0.00 3.51849 -117.934 -3.51849 3.51849 0.96 0.000445642 0.000406798 0.0344828 0.0314884 34 2446 28 6.89349e+06 267783 618332. 2139.56 1.71 0.134665 0.117406 25762 151098 -1 2062 21 1518 2373 182460 38885 3.4608 3.4608 -132.25 -3.4608 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0208138 0.0184142 121 29 60 30 30 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_031.v common 6.53 vpr 64.62 MiB 0.02 6944 -1 -1 1 0.03 -1 -1 33676 -1 -1 21 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 28 32 278 232 1 173 81 17 17 289 -1 unnamed_device 26.3 MiB 2.47 812 11806 3140 7921 745 64.6 MiB 0.09 0.00 3.33999 -102.134 -3.33999 3.33999 0.96 0.000412747 0.000376471 0.0302115 0.0275723 30 2265 23 6.89349e+06 295971 556674. 1926.21 1.03 0.0848931 0.0746018 25186 138497 -1 1773 20 1117 1818 116431 27859 3.5388 3.5388 -126.674 -3.5388 0 0 706193. 2443.58 0.29 0.05 0.14 -1 -1 0.29 0.0186711 0.0164583 115 27 56 28 28 28 + fixed_k6_frac_uripple_N8_22nm.xml mult_032.v common 5.70 vpr 64.43 MiB 0.02 6936 -1 -1 1 0.03 -1 -1 33628 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65972 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 25.9 MiB 1.19 886 15216 6255 7964 997 64.4 MiB 0.12 0.00 2.85355 -105.803 -2.85355 2.85355 0.91 0.00040764 0.000373001 0.0390716 0.0357974 34 2254 22 6.89349e+06 225501 618332. 2139.56 1.56 0.135955 0.119664 25762 151098 -1 1936 20 1485 2471 187409 40642 3.02916 3.02916 -124.451 -3.02916 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0190934 0.0168914 114 -1 96 32 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_033.v common 6.29 vpr 64.86 MiB 0.02 6976 -1 -1 1 0.03 -1 -1 33860 -1 -1 19 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66416 31 32 303 249 1 191 82 17 17 289 -1 unnamed_device 26.4 MiB 1.57 1041 10762 2759 7122 881 64.9 MiB 0.09 0.00 2.93565 -104.908 -2.93565 2.93565 0.90 0.000433007 0.000396646 0.0278564 0.0255517 34 2489 25 6.89349e+06 267783 618332. 2139.56 1.81 0.133816 0.117788 25762 151098 -1 2112 17 1255 1845 128362 28740 2.97616 2.97616 -121.535 -2.97616 0 0 787024. 2723.27 0.29 0.05 0.13 -1 -1 0.29 0.0175747 0.0155999 121 26 61 31 31 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_034.v common 6.63 vpr 64.74 MiB 0.02 7196 -1 -1 1 0.03 -1 -1 33820 -1 -1 23 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66292 29 32 312 264 1 201 84 17 17 289 -1 unnamed_device 26.2 MiB 1.83 1078 14724 4728 7751 2245 64.7 MiB 0.12 0.00 2.91975 -93.9329 -2.91975 2.91975 0.96 0.000450411 0.000410879 0.0378771 0.0345677 34 2448 28 6.89349e+06 324158 618332. 2139.56 1.68 0.138554 0.120788 25762 151098 -1 2136 19 1293 1694 128238 28183 2.78696 2.78696 -109.338 -2.78696 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0197109 0.0173722 130 55 29 29 57 29 + fixed_k6_frac_uripple_N8_22nm.xml mult_035.v common 6.63 vpr 65.72 MiB 0.02 7240 -1 -1 1 0.04 -1 -1 34128 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67300 32 32 423 310 1 254 91 17 17 289 -1 unnamed_device 26.9 MiB 2.35 1380 16615 4969 9296 2350 65.7 MiB 0.17 0.00 3.73615 -131.998 -3.73615 3.73615 0.93 0.000583601 0.000531762 0.0504409 0.0460609 30 3457 26 6.89349e+06 380534 556674. 1926.21 1.15 0.136532 0.121337 25186 138497 -1 2710 21 1775 2896 181583 41149 3.86576 3.86576 -151.677 -3.86576 0 0 706193. 2443.58 0.28 0.08 0.13 -1 -1 0.28 0.0273769 0.0241708 184 26 128 32 27 27 + fixed_k6_frac_uripple_N8_22nm.xml mult_036.v common 8.24 vpr 65.39 MiB 0.02 7372 -1 -1 1 0.03 -1 -1 34052 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 32 32 403 317 1 260 89 17 17 289 -1 unnamed_device 26.7 MiB 2.14 1249 14939 5254 6510 3175 65.4 MiB 0.13 0.00 3.27164 -115.251 -3.27164 3.27164 0.97 0.000558951 0.000511133 0.0432602 0.0393572 36 3183 30 6.89349e+06 352346 648988. 2245.63 2.83 0.178724 0.156433 26050 158493 -1 2799 22 2729 3732 314898 69111 3.887 3.887 -150.162 -3.887 0 0 828058. 2865.25 0.31 0.10 0.16 -1 -1 0.31 0.0259364 0.0229115 173 62 62 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_037.v common 5.74 vpr 65.05 MiB 0.02 7068 -1 -1 1 0.03 -1 -1 34212 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66616 31 32 353 302 1 229 85 17 17 289 -1 unnamed_device 26.3 MiB 1.07 1144 14965 4253 8678 2034 65.1 MiB 0.12 0.00 2.90265 -100.254 -2.90265 2.90265 0.91 0.000495313 0.000452168 0.0398783 0.0363504 34 2545 27 6.89349e+06 310065 618332. 2139.56 1.58 0.125033 0.109605 25762 151098 -1 2133 21 1303 1337 103168 23513 2.86331 2.86331 -115.84 -2.86331 0 0 787024. 2723.27 0.32 0.06 0.15 -1 -1 0.32 0.0225348 0.0198538 143 77 0 0 89 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_038.v common 7.64 vpr 65.41 MiB 0.02 7480 -1 -1 1 0.03 -1 -1 33712 -1 -1 26 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66976 31 32 391 309 1 246 89 17 17 289 -1 unnamed_device 26.8 MiB 2.59 1206 10385 2623 6478 1284 65.4 MiB 0.10 0.00 3.50749 -114.822 -3.50749 3.50749 0.92 0.000525248 0.000481182 0.0295755 0.027079 34 3159 44 6.89349e+06 366440 618332. 2139.56 2.07 0.180522 0.158542 25762 151098 -1 2506 19 1666 2425 189369 41695 3.7003 3.7003 -139.252 -3.7003 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0239605 0.021279 170 59 60 30 62 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_039.v common 9.26 vpr 65.73 MiB 0.02 7492 -1 -1 1 0.03 -1 -1 33988 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67304 31 32 455 371 1 307 94 17 17 289 -1 unnamed_device 27.1 MiB 2.15 1597 17347 5424 9486 2437 65.7 MiB 0.17 0.00 4.14544 -138.579 -4.14544 4.14544 0.91 0.000574115 0.000523004 0.0499902 0.0456962 36 3602 26 6.89349e+06 436909 648988. 2245.63 4.01 0.251798 0.22159 26050 158493 -1 2925 20 2216 2583 202465 44269 4.46094 4.46094 -160.781 -4.46094 0 0 828058. 2865.25 0.31 0.08 0.14 -1 -1 0.31 0.0264723 0.0234238 201 111 0 0 124 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_040.v common 8.39 vpr 65.44 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 34120 -1 -1 28 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67008 31 32 413 333 1 269 91 17 17 289 -1 unnamed_device 26.7 MiB 2.69 1401 17431 7367 8878 1186 65.4 MiB 0.15 0.00 4.39023 -138.954 -4.39023 4.39023 0.97 0.000524188 0.000476774 0.0480242 0.0437795 36 3644 41 6.89349e+06 394628 648988. 2245.63 2.46 0.182407 0.159468 26050 158493 -1 2688 21 2048 2795 227586 48855 5.02504 5.02504 -173.094 -5.02504 0 0 828058. 2865.25 0.31 0.08 0.16 -1 -1 0.31 0.0260557 0.0229288 181 86 31 31 89 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_041.v common 9.38 vpr 65.11 MiB 0.02 7472 -1 -1 1 0.03 -1 -1 33768 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66672 31 32 391 309 1 249 90 17 17 289 -1 unnamed_device 26.5 MiB 2.05 1380 8130 1734 5596 800 65.1 MiB 0.09 0.00 3.12215 -108.981 -3.12215 3.12215 0.96 0.000537147 0.000487151 0.0244744 0.0223354 36 3291 23 6.89349e+06 380534 648988. 2245.63 4.18 0.195679 0.169392 26050 158493 -1 2670 20 2066 2811 219132 48830 3.46346 3.46346 -133.45 -3.46346 0 0 828058. 2865.25 0.32 0.08 0.15 -1 -1 0.32 0.0245012 0.0216923 168 58 60 31 62 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_042.v common 10.56 vpr 65.46 MiB 0.02 7332 -1 -1 1 0.03 -1 -1 34344 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67032 32 32 407 319 1 264 91 17 17 289 -1 unnamed_device 26.8 MiB 2.27 1328 14779 4122 8396 2261 65.5 MiB 0.14 0.00 3.75005 -132.712 -3.75005 3.75005 0.98 0.000565728 0.000515908 0.0430578 0.0392906 34 3546 33 6.89349e+06 380534 618332. 2139.56 5.05 0.25637 0.222888 25762 151098 -1 2859 22 2107 2818 231772 51890 4.15706 4.15706 -157.504 -4.15706 0 0 787024. 2723.27 0.31 0.09 0.15 -1 -1 0.31 0.0268766 0.0236248 178 42 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_043.v common 11.47 vpr 65.90 MiB 0.02 7292 -1 -1 1 0.04 -1 -1 34240 -1 -1 31 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67484 32 32 496 380 1 321 95 17 17 289 -1 unnamed_device 27.2 MiB 2.58 1599 15431 4493 9114 1824 65.9 MiB 0.17 0.00 4.14118 -143.258 -4.14118 4.14118 0.99 0.000669916 0.000609957 0.0505238 0.0459761 36 4830 50 6.89349e+06 436909 648988. 2245.63 5.56 0.24169 0.212341 26050 158493 -1 3520 22 3252 4770 392338 85100 4.62605 4.62605 -174.719 -4.62605 0 0 828058. 2865.25 0.30 0.12 0.15 -1 -1 0.30 0.0327061 0.0289953 220 91 62 32 96 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_044.v common 6.39 vpr 64.73 MiB 0.02 6984 -1 -1 1 0.03 -1 -1 33928 -1 -1 20 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66280 31 32 305 250 1 192 83 17 17 289 -1 unnamed_device 26.3 MiB 1.86 854 4943 997 3592 354 64.7 MiB 0.05 0.00 3.1513 -105.266 -3.1513 3.1513 0.96 0.000463906 0.000425212 0.0143968 0.0131951 34 2324 18 6.89349e+06 281877 618332. 2139.56 1.57 0.102516 0.088798 25762 151098 -1 1917 18 1387 1850 135989 31470 3.14351 3.14351 -126.715 -3.14351 0 0 787024. 2723.27 0.31 0.06 0.14 -1 -1 0.31 0.0189913 0.0168039 127 24 62 31 31 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_045.v common 9.34 vpr 65.44 MiB 0.02 7428 -1 -1 1 0.03 -1 -1 34216 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67008 31 32 395 311 1 251 90 17 17 289 -1 unnamed_device 26.8 MiB 1.79 1325 17376 6843 8957 1576 65.4 MiB 0.15 0.00 4.12524 -134.849 -4.12524 4.12524 0.91 0.000524907 0.000481701 0.0481562 0.0441105 38 2847 31 6.89349e+06 380534 678818. 2348.85 4.48 0.272626 0.239732 26626 170182 -1 2439 18 1581 1985 162677 34558 4.12955 4.12955 -150.658 -4.12955 0 0 902133. 3121.57 0.32 0.07 0.15 -1 -1 0.32 0.0230969 0.0204903 168 59 62 31 62 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_046.v common 9.71 vpr 65.56 MiB 0.02 7376 -1 -1 1 0.03 -1 -1 34148 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67136 32 32 397 313 1 254 91 17 17 289 -1 unnamed_device 26.9 MiB 2.29 1384 15391 5043 8079 2269 65.6 MiB 0.15 0.00 3.51049 -122.247 -3.51049 3.51049 0.96 0.000546785 0.000499415 0.0439848 0.0400714 36 3215 25 6.89349e+06 380534 648988. 2245.63 4.21 0.236513 0.205058 26050 158493 -1 2646 18 1654 2602 175222 39072 3.6813 3.6813 -141.073 -3.6813 0 0 828058. 2865.25 0.32 0.07 0.16 -1 -1 0.32 0.0229806 0.0203247 172 54 62 32 62 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_047.v common 7.09 vpr 65.08 MiB 0.02 7320 -1 -1 1 0.03 -1 -1 33832 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66644 32 32 345 257 1 202 85 17 17 289 -1 unnamed_device 26.4 MiB 1.55 888 17011 4426 10315 2270 65.1 MiB 0.12 0.00 3.45729 -119.077 -3.45729 3.45729 0.99 0.000451812 0.000413379 0.0484541 0.0442084 34 2924 40 6.89349e+06 295971 618332. 2139.56 2.30 0.186152 0.164035 25762 151098 -1 2215 22 1939 3513 264966 63290 4.19525 4.19525 -152.761 -4.19525 0 0 787024. 2723.27 0.30 0.09 0.15 -1 -1 0.30 0.0244847 0.0215395 147 -1 128 32 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_048.v common 7.44 vpr 65.54 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 34136 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67112 32 32 424 343 1 281 92 17 17 289 -1 unnamed_device 26.8 MiB 1.78 1273 18515 6514 9101 2900 65.5 MiB 0.16 0.00 3.53749 -120.284 -3.53749 3.53749 0.94 0.000526631 0.000476126 0.0523013 0.047652 34 3537 32 6.89349e+06 394628 618332. 2139.56 2.54 0.201611 0.178101 25762 151098 -1 2603 17 1760 2030 157537 36379 3.5498 3.5498 -135.628 -3.5498 0 0 787024. 2723.27 0.29 0.07 0.14 -1 -1 0.29 0.0249641 0.0220204 184 81 25 25 96 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_049.v common 8.44 vpr 65.46 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 34172 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67032 32 32 395 311 1 255 91 17 17 289 -1 unnamed_device 26.8 MiB 2.48 1211 17839 5892 8872 3075 65.5 MiB 0.17 0.00 3.41219 -119.031 -3.41219 3.41219 0.96 0.000562247 0.000512597 0.0514051 0.0467866 36 3160 23 6.89349e+06 380534 648988. 2245.63 2.73 0.185251 0.162933 26050 158493 -1 2521 20 1812 2665 215098 46981 3.525 3.525 -138.177 -3.525 0 0 828058. 2865.25 0.32 0.08 0.15 -1 -1 0.32 0.0245904 0.0216993 169 58 64 32 60 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_050.v common 7.30 vpr 65.46 MiB 0.02 7364 -1 -1 1 0.03 -1 -1 33720 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67028 32 32 405 318 1 260 91 17 17 289 -1 unnamed_device 26.8 MiB 2.08 1343 12535 3316 8501 718 65.5 MiB 0.13 0.00 3.11405 -111.761 -3.11405 3.11405 0.96 0.000609238 0.000557729 0.0386504 0.0352951 34 3472 24 6.89349e+06 380534 618332. 2139.56 2.03 0.16813 0.147045 25762 151098 -1 2856 19 2307 3173 243186 53206 3.52146 3.52146 -139.298 -3.52146 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0245045 0.0216431 175 61 63 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_051.v common 8.86 vpr 65.52 MiB 0.02 7304 -1 -1 1 0.03 -1 -1 33788 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67088 32 32 376 288 1 233 88 17 17 289 -1 unnamed_device 26.6 MiB 1.80 1255 12568 3422 7903 1243 65.5 MiB 0.12 0.00 3.76105 -133.875 -3.76105 3.76105 0.91 0.000514948 0.0004712 0.0350971 0.0321413 40 2500 22 6.89349e+06 338252 706193. 2443.58 3.98 0.227954 0.19883 26914 176310 -1 2604 21 1870 2851 216854 48231 4.03976 4.03976 -157.312 -4.03976 0 0 926341. 3205.33 0.34 0.08 0.15 -1 -1 0.34 0.0258511 0.0230061 161 21 96 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_052.v common 6.35 vpr 65.22 MiB 0.02 7188 -1 -1 1 0.03 -1 -1 34400 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66784 32 32 407 319 1 264 91 17 17 289 -1 unnamed_device 26.5 MiB 1.54 1224 16207 4715 9284 2208 65.2 MiB 0.13 0.00 3.72815 -130.331 -3.72815 3.72815 0.95 0.000566708 0.000507705 0.0451188 0.0412575 34 3030 30 6.89349e+06 380534 618332. 2139.56 1.67 0.180325 0.158053 25762 151098 -1 2616 20 2185 2741 193474 45255 4.10236 4.10236 -156.882 -4.10236 0 0 787024. 2723.27 0.30 0.08 0.14 -1 -1 0.30 0.0266343 0.023655 177 50 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_053.v common 6.90 vpr 65.68 MiB 0.02 7444 -1 -1 1 0.03 -1 -1 34280 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67252 31 32 449 367 1 300 94 17 17 289 -1 unnamed_device 27.0 MiB 1.56 1501 18838 5421 11003 2414 65.7 MiB 0.18 0.00 4.07024 -128.102 -4.07024 4.07024 0.98 0.000605512 0.000552874 0.0549717 0.0500766 36 3541 25 6.89349e+06 436909 648988. 2245.63 2.07 0.195071 0.171604 26050 158493 -1 2911 21 1941 2277 151780 35196 4.19585 4.19585 -149.016 -4.19585 0 0 828058. 2865.25 0.32 0.07 0.16 -1 -1 0.32 0.0271378 0.0239351 195 110 0 0 122 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_054.v common 10.65 vpr 65.42 MiB 0.02 7424 -1 -1 1 0.03 -1 -1 33780 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66988 32 32 432 346 1 287 91 17 17 289 -1 unnamed_device 26.8 MiB 3.14 1494 11107 2813 7230 1064 65.4 MiB 0.12 0.00 3.77645 -132.253 -3.77645 3.77645 0.98 0.000594048 0.000541562 0.0342452 0.0312198 36 3698 39 6.89349e+06 380534 648988. 2245.63 4.25 0.237647 0.206568 26050 158493 -1 2990 21 2428 3487 227635 51623 3.85486 3.85486 -148.692 -3.85486 0 0 828058. 2865.25 0.32 0.08 0.16 -1 -1 0.32 0.0270989 0.0239268 190 86 32 32 94 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_055.v common 6.15 vpr 64.87 MiB 0.02 6932 -1 -1 1 0.03 -1 -1 33856 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66428 32 32 312 255 1 198 85 17 17 289 -1 unnamed_device 26.5 MiB 1.76 1053 13105 4100 7961 1044 64.9 MiB 0.11 0.00 2.93565 -110.397 -2.93565 2.93565 0.91 0.000446008 0.000408985 0.0326928 0.0299547 34 2398 23 6.89349e+06 295971 618332. 2139.56 1.46 0.127058 0.111485 25762 151098 -1 1974 19 1192 1664 103693 24776 2.87806 2.87806 -121.249 -2.87806 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.0192987 0.017139 127 20 63 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_056.v common 6.85 vpr 65.21 MiB 0.02 7056 -1 -1 1 0.03 -1 -1 33848 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66780 32 32 370 314 1 250 85 17 17 289 -1 unnamed_device 26.6 MiB 1.78 1347 7525 1748 5284 493 65.2 MiB 0.08 0.00 3.40739 -119.926 -3.40739 3.40739 0.96 0.00052332 0.000476804 0.0231215 0.0211534 34 3493 46 6.89349e+06 295971 618332. 2139.56 1.99 0.173289 0.152014 25762 151098 -1 2726 20 1837 2168 174097 38650 3.81549 3.81549 -143.999 -3.81549 0 0 787024. 2723.27 0.31 0.07 0.14 -1 -1 0.31 0.0234182 0.0207721 154 91 0 0 94 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_057.v common 9.73 vpr 65.79 MiB 0.02 7252 -1 -1 1 0.04 -1 -1 34076 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67364 32 32 469 351 1 298 94 17 17 289 -1 unnamed_device 27.2 MiB 2.17 1508 18625 6220 9873 2532 65.8 MiB 0.19 0.00 4.31889 -149.004 -4.31889 4.31889 0.95 0.00062937 0.000571999 0.0579162 0.0527146 36 3402 30 6.89349e+06 422815 648988. 2245.63 4.29 0.272271 0.237296 26050 158493 -1 2789 20 2388 3194 204624 47957 4.74 4.74 -174.909 -4.74 0 0 828058. 2865.25 0.32 0.08 0.16 -1 -1 0.32 0.0280365 0.0247679 209 53 96 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_058.v common 7.51 vpr 65.23 MiB 0.02 7140 -1 -1 1 0.03 -1 -1 33860 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66800 32 32 368 284 1 225 87 17 17 289 -1 unnamed_device 26.5 MiB 2.15 1127 14871 4886 7742 2243 65.2 MiB 0.14 0.00 3.1543 -109.62 -3.1543 3.1543 0.97 0.000522407 0.00047583 0.0437311 0.0400127 34 3048 23 6.89349e+06 324158 618332. 2139.56 2.15 0.166638 0.146794 25762 151098 -1 2382 20 1852 2727 216180 47846 3.18261 3.18261 -130.072 -3.18261 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.025478 0.0217696 156 31 92 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_059.v common 5.80 vpr 64.76 MiB 0.02 7220 -1 -1 1 0.03 -1 -1 33864 -1 -1 32 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66312 30 32 296 244 1 183 94 17 17 289 -1 unnamed_device 26.3 MiB 1.23 793 11596 3004 7952 640 64.8 MiB 0.09 0.00 3.49649 -106.457 -3.49649 3.49649 0.90 0.000435017 0.000397925 0.0254156 0.0232073 34 2265 43 6.89349e+06 451003 618332. 2139.56 1.65 0.136158 0.11891 25762 151098 -1 1743 20 1275 1900 116957 29354 3.578 3.578 -126.907 -3.578 0 0 787024. 2723.27 0.30 0.05 0.13 -1 -1 0.30 0.0188898 0.0167154 129 29 60 30 30 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_060.v common 10.39 vpr 65.54 MiB 0.03 7444 -1 -1 1 0.04 -1 -1 34400 -1 -1 35 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67116 32 32 531 413 1 356 99 17 17 289 -1 unnamed_device 27.4 MiB 2.11 1905 20163 6025 11483 2655 65.5 MiB 0.20 0.00 4.60062 -159.311 -4.60062 4.60062 0.95 0.000679727 0.000615495 0.0634812 0.0577124 36 4405 39 6.89349e+06 493284 648988. 2245.63 4.94 0.338492 0.297007 26050 158493 -1 3627 20 2654 3333 273716 58271 5.41464 5.41464 -194.084 -5.41464 0 0 828058. 2865.25 0.32 0.10 0.16 -1 -1 0.32 0.0308085 0.0272752 239 109 32 32 128 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_061.v common 6.73 vpr 65.32 MiB 0.02 7172 -1 -1 1 0.03 -1 -1 34040 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66888 32 32 376 288 1 225 87 17 17 289 -1 unnamed_device 26.5 MiB 1.64 1137 15639 5091 8145 2403 65.3 MiB 0.14 0.00 3.54039 -126.1 -3.54039 3.54039 0.95 0.000532771 0.000487157 0.0458786 0.0418911 34 2775 25 6.89349e+06 324158 618332. 2139.56 1.92 0.165131 0.144531 25762 151098 -1 2292 23 2325 3199 229487 53469 3.8786 3.8786 -153.804 -3.8786 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0260845 0.0229551 159 31 96 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_062.v common 5.04 vpr 64.75 MiB 0.02 6888 -1 -1 1 0.03 -1 -1 33972 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66308 32 32 283 225 1 168 97 17 17 289 -1 unnamed_device 26.3 MiB 0.66 929 16525 5295 8720 2510 64.8 MiB 0.13 0.00 2.98385 -107.859 -2.98385 2.98385 0.98 0.000421843 0.000384089 0.0349147 0.0318848 32 2467 40 6.89349e+06 465097 586450. 2029.24 1.22 0.106172 0.0933619 25474 144626 -1 1942 23 1416 2305 205372 43946 3.12146 3.12146 -123.465 -3.12146 0 0 744469. 2576.02 0.29 0.07 0.15 -1 -1 0.29 0.0213394 0.01868 123 -1 96 32 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_063.v common 7.67 vpr 65.43 MiB 0.02 7340 -1 -1 1 0.04 -1 -1 34564 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67004 32 32 438 320 1 267 93 17 17 289 -1 unnamed_device 26.6 MiB 2.24 1376 12483 3527 7567 1389 65.4 MiB 0.14 0.00 4.29569 -148.985 -4.29569 4.29569 0.95 0.000613762 0.00056068 0.0386996 0.0353907 34 3602 33 6.89349e+06 408721 618332. 2139.56 2.23 0.181782 0.161178 25762 151098 -1 2937 23 2579 3962 326344 68527 4.8512 4.8512 -180.256 -4.8512 0 0 787024. 2723.27 0.31 0.11 0.14 -1 -1 0.31 0.0325137 0.0288806 194 26 128 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_064.v common 5.38 vpr 64.80 MiB 0.02 7004 -1 -1 1 0.03 -1 -1 33824 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.2 MiB 0.90 866 13668 4630 7290 1748 64.8 MiB 0.10 0.00 3.095 -115.431 -3.095 3.095 0.91 0.000413463 0.000379025 0.034809 0.031856 34 2306 21 6.89349e+06 225501 618332. 2139.56 1.54 0.126437 0.1109 25762 151098 -1 1954 22 1507 2447 200164 42711 2.99001 2.99001 -129.655 -2.99001 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0204601 0.0180368 114 -1 96 32 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_065.v common 5.67 vpr 64.52 MiB 0.02 7204 -1 -1 1 0.03 -1 -1 33960 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66072 30 32 296 244 1 185 81 17 17 289 -1 unnamed_device 26.1 MiB 1.45 775 12331 2931 8892 508 64.5 MiB 0.10 0.00 2.94665 -97.1284 -2.94665 2.94665 0.96 0.000448963 0.000408899 0.0327847 0.029977 32 2582 29 6.89349e+06 267783 586450. 2029.24 1.12 0.0973381 0.0855947 25474 144626 -1 1909 23 1589 2085 167939 40741 3.44426 3.44426 -132.866 -3.44426 0 0 744469. 2576.02 0.29 0.07 0.14 -1 -1 0.29 0.0217537 0.0190769 121 29 60 30 30 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_066.v common 6.67 vpr 64.77 MiB 0.04 7472 -1 -1 1 0.03 -1 -1 33444 -1 -1 31 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66324 29 32 393 319 1 253 92 17 17 289 -1 unnamed_device 26.1 MiB 1.77 1259 16652 5432 8581 2639 64.8 MiB 0.15 0.00 3.34494 -104.582 -3.34494 3.34494 0.99 0.000552177 0.000503171 0.0465396 0.0424298 34 2831 22 6.89349e+06 436909 618332. 2139.56 1.62 0.163097 0.142974 25762 151098 -1 2334 20 1590 2152 159662 36456 3.3025 3.3025 -121.265 -3.3025 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.0244773 0.0216858 171 81 29 29 85 29 + fixed_k6_frac_uripple_N8_22nm.xml mult_067.v common 9.75 vpr 64.73 MiB 0.04 7284 -1 -1 1 0.03 -1 -1 33756 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66284 32 32 407 319 1 264 90 17 17 289 -1 unnamed_device 26.0 MiB 2.27 1177 8934 2146 5917 871 64.7 MiB 0.09 0.00 4.15944 -139.101 -4.15944 4.15944 0.98 0.000578207 0.000528128 0.0277951 0.0253772 36 2980 32 6.89349e+06 366440 648988. 2245.63 4.22 0.21948 0.190499 26050 158493 -1 2577 22 2239 3182 217353 50583 4.47339 4.47339 -165.72 -4.47339 0 0 828058. 2865.25 0.34 0.08 0.15 -1 -1 0.34 0.0279656 0.0247801 178 53 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_068.v common 7.68 vpr 65.57 MiB 0.02 7340 -1 -1 1 0.03 -1 -1 34332 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67140 32 32 407 319 1 264 90 17 17 289 -1 unnamed_device 26.9 MiB 1.96 1274 18984 5788 10844 2352 65.6 MiB 0.19 0.00 4.12824 -141.991 -4.12824 4.12824 0.95 0.000564101 0.000516253 0.0552196 0.0505862 34 3506 43 6.89349e+06 366440 618332. 2139.56 2.46 0.228552 0.203057 25762 151098 -1 2599 21 2303 3254 230136 52927 4.39915 4.39915 -166.306 -4.39915 0 0 787024. 2723.27 0.31 0.09 0.14 -1 -1 0.31 0.0288607 0.0257798 175 55 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_069.v common 8.09 vpr 65.02 MiB 0.02 7024 -1 -1 1 0.03 -1 -1 34124 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66576 32 32 345 287 1 218 85 17 17 289 -1 unnamed_device 26.3 MiB 1.37 1082 11059 2947 6528 1584 65.0 MiB 0.09 0.00 3.54849 -125.828 -3.54849 3.54849 0.91 0.000462634 0.000422926 0.0297013 0.0271817 36 2528 22 6.89349e+06 295971 648988. 2245.63 3.76 0.184825 0.161528 26050 158493 -1 2086 20 1268 1445 102758 23765 3.4747 3.4747 -138.84 -3.4747 0 0 828058. 2865.25 0.31 0.05 0.14 -1 -1 0.31 0.0216063 0.0191966 141 55 32 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_070.v common 6.82 vpr 65.35 MiB 0.02 7324 -1 -1 1 0.03 -1 -1 33996 -1 -1 22 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66916 31 32 353 302 1 231 85 17 17 289 -1 unnamed_device 26.5 MiB 2.03 1177 7525 1811 5263 451 65.3 MiB 0.08 0.00 3.36019 -112.607 -3.36019 3.36019 0.96 0.000487985 0.000445845 0.0218454 0.0199516 34 2877 30 6.89349e+06 310065 618332. 2139.56 1.70 0.135684 0.117444 25762 151098 -1 2291 20 1471 1862 123188 29380 3.6311 3.6311 -135.083 -3.6311 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.021422 0.0188522 146 82 0 0 89 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_071.v common 7.27 vpr 65.57 MiB 0.02 7380 -1 -1 1 0.03 -1 -1 33920 -1 -1 29 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67140 30 32 374 297 1 236 91 17 17 289 -1 unnamed_device 26.9 MiB 2.28 1237 18247 6280 9756 2211 65.6 MiB 0.17 0.00 3.073 -104.503 -3.073 3.073 1.00 0.000488021 0.000447797 0.0493909 0.0450745 34 2850 22 6.89349e+06 408721 618332. 2139.56 1.70 0.168684 0.148406 25762 151098 -1 2273 24 1738 2562 167120 39037 3.21561 3.21561 -124.499 -3.21561 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0269669 0.0237664 164 52 60 30 57 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_072.v common 6.51 vpr 64.96 MiB 0.02 7344 -1 -1 1 0.03 -1 -1 33840 -1 -1 27 28 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66524 28 32 332 260 1 203 87 17 17 289 -1 unnamed_device 26.5 MiB 1.50 946 11415 3025 7505 885 65.0 MiB 0.11 0.00 3.63875 -110.52 -3.63875 3.63875 1.00 0.000475198 0.000432775 0.0308032 0.0281532 34 2583 39 6.89349e+06 380534 618332. 2139.56 1.83 0.1534 0.134187 25762 151098 -1 2097 21 1609 2364 172734 40071 3.90966 3.90966 -136.115 -3.90966 0 0 787024. 2723.27 0.30 0.06 0.14 -1 -1 0.30 0.0200396 0.0176977 145 20 84 28 28 28 + fixed_k6_frac_uripple_N8_22nm.xml mult_073.v common 7.81 vpr 65.25 MiB 0.02 7156 -1 -1 1 0.03 -1 -1 33912 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66816 30 32 325 273 1 208 83 17 17 289 -1 unnamed_device 26.5 MiB 2.32 960 10163 2639 6237 1287 65.2 MiB 0.09 0.00 3.30999 -105.547 -3.30999 3.30999 0.98 0.000469406 0.000420543 0.0287886 0.0262881 34 2714 25 6.89349e+06 295971 618332. 2139.56 2.33 0.140458 0.122822 25762 151098 -1 2131 21 1775 2460 214656 47422 3.80594 3.80594 -138.11 -3.80594 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0223506 0.0197736 136 58 30 30 60 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_074.v common 6.48 vpr 65.25 MiB 0.02 7292 -1 -1 1 0.03 -1 -1 33588 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66812 32 32 361 308 1 245 85 17 17 289 -1 unnamed_device 26.6 MiB 1.89 1246 15151 5126 7831 2194 65.2 MiB 0.13 0.00 3.0132 -108.457 -3.0132 3.0132 0.91 0.000473512 0.000433844 0.0410456 0.037486 34 2918 23 6.89349e+06 295971 618332. 2139.56 1.61 0.159821 0.140797 25762 151098 -1 2374 21 1729 2009 147367 33773 3.27221 3.27221 -125.732 -3.27221 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.0220498 0.0194164 150 88 0 0 91 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_075.v common 7.27 vpr 65.20 MiB 0.02 7312 -1 -1 1 0.03 -1 -1 34060 -1 -1 37 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 31 32 335 251 1 197 100 17 17 289 -1 unnamed_device 26.4 MiB 0.89 1096 7756 1697 5533 526 65.2 MiB 0.08 0.00 3.55259 -123.404 -3.55259 3.55259 0.96 0.000519376 0.00047555 0.0187714 0.0171664 28 2823 30 6.89349e+06 521472 531479. 1839.03 3.31 0.171464 0.148102 24610 126494 -1 2471 22 1972 3211 262126 57366 3.6982 3.6982 -144.606 -3.6982 0 0 648988. 2245.63 0.26 0.08 0.13 -1 -1 0.26 0.0233346 0.0204867 151 -1 124 31 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_076.v common 7.05 vpr 65.38 MiB 0.02 7344 -1 -1 1 0.03 -1 -1 34192 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66944 32 32 407 319 1 257 90 17 17 289 -1 unnamed_device 26.7 MiB 1.54 1268 12150 3594 7463 1093 65.4 MiB 0.13 0.00 3.76028 -131.272 -3.76028 3.76028 0.98 0.000555084 0.000506331 0.0372124 0.0340415 34 3466 28 6.89349e+06 366440 618332. 2139.56 2.30 0.172864 0.152094 25762 151098 -1 2620 22 1984 2672 192905 44165 4.00129 4.00129 -155.641 -4.00129 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0285621 0.0253217 173 57 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_077.v common 7.32 vpr 65.49 MiB 0.02 7276 -1 -1 1 0.03 -1 -1 34040 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67060 32 32 407 319 1 256 90 17 17 289 -1 unnamed_device 26.8 MiB 1.96 1498 16974 5061 9810 2103 65.5 MiB 0.16 0.00 3.97668 -140.388 -3.97668 3.97668 0.99 0.000580778 0.000530521 0.0506781 0.0461876 34 3577 35 6.89349e+06 366440 618332. 2139.56 2.10 0.196474 0.172965 25762 151098 -1 2804 22 2350 3254 215035 50173 4.5604 4.5604 -175.237 -4.5604 0 0 787024. 2723.27 0.31 0.08 0.15 -1 -1 0.31 0.0269453 0.0238673 171 62 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_078.v common 8.03 vpr 65.50 MiB 0.02 7316 -1 -1 1 0.03 -1 -1 34056 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67072 32 32 399 315 1 257 91 17 17 289 -1 unnamed_device 26.8 MiB 1.96 1322 13555 3159 9259 1137 65.5 MiB 0.12 0.00 3.38904 -116.548 -3.38904 3.38904 0.95 0.000598324 0.000545773 0.037088 0.0337978 34 3954 42 6.89349e+06 380534 618332. 2139.56 2.90 0.187423 0.164246 25762 151098 -1 2882 20 1948 2877 218066 51344 4.34575 4.34575 -155.242 -4.34575 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0256181 0.022732 172 62 60 30 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_079.v common 7.91 vpr 64.80 MiB 0.02 7076 -1 -1 1 0.03 -1 -1 33568 -1 -1 19 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 30 32 296 244 1 185 81 17 17 289 -1 unnamed_device 26.4 MiB 1.83 924 14606 5297 7499 1810 64.8 MiB 0.11 0.00 3.0572 -103.07 -3.0572 3.0572 0.91 0.000448961 0.000412866 0.0367831 0.0336533 34 2516 24 6.89349e+06 267783 618332. 2139.56 3.12 0.17933 0.156475 25762 151098 -1 2034 21 1409 1972 163615 35447 3.24686 3.24686 -127.088 -3.24686 0 0 787024. 2723.27 0.30 0.06 0.13 -1 -1 0.30 0.0198905 0.0175425 122 29 60 30 30 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_080.v common 7.98 vpr 65.34 MiB 0.02 7260 -1 -1 1 0.03 -1 -1 33872 -1 -1 26 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66908 30 32 383 303 1 241 88 17 17 289 -1 unnamed_device 26.7 MiB 2.77 1231 13738 4025 7643 2070 65.3 MiB 0.13 0.00 3.93084 -128.259 -3.93084 3.93084 0.97 0.000541443 0.000488151 0.0400409 0.0365816 34 3069 49 6.89349e+06 366440 618332. 2139.56 2.01 0.18437 0.161006 25762 151098 -1 2554 22 2053 2770 214279 47460 4.67538 4.67538 -161.55 -4.67538 0 0 787024. 2723.27 0.30 0.08 0.15 -1 -1 0.30 0.025805 0.0227278 165 58 60 30 60 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_081.v common 7.84 vpr 65.46 MiB 0.02 7288 -1 -1 1 0.04 -1 -1 34088 -1 -1 30 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67028 32 32 469 381 1 316 94 17 17 289 -1 unnamed_device 26.8 MiB 1.40 1603 17986 5434 10270 2282 65.5 MiB 0.16 0.00 3.78021 -130.506 -3.78021 3.78021 0.99 0.000612873 0.000555632 0.0515242 0.0468116 36 3630 29 6.89349e+06 422815 648988. 2245.63 3.13 0.203766 0.179311 26050 158493 -1 3030 20 1916 1974 162809 34287 4.17685 4.17685 -156.657 -4.17685 0 0 828058. 2865.25 0.34 0.07 0.15 -1 -1 0.34 0.0270502 0.0239291 204 106 0 0 128 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_082.v common 6.55 vpr 65.69 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 33672 -1 -1 29 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67268 31 32 425 341 1 280 92 17 17 289 -1 unnamed_device 26.9 MiB 1.75 1415 14789 4457 8940 1392 65.7 MiB 0.14 0.00 4.10624 -138.636 -4.10624 4.10624 0.92 0.000568981 0.000523528 0.0420696 0.0383151 34 3371 26 6.89349e+06 408721 618332. 2139.56 1.75 0.179517 0.158153 25762 151098 -1 2701 18 2039 2579 169479 40116 4.59475 4.59475 -167.354 -4.59475 0 0 787024. 2723.27 0.30 0.07 0.13 -1 -1 0.30 0.0236228 0.0210345 186 79 31 31 93 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_083.v common 8.16 vpr 65.55 MiB 0.02 7520 -1 -1 1 0.03 -1 -1 34088 -1 -1 28 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67128 30 32 404 328 1 261 90 17 17 289 -1 unnamed_device 26.8 MiB 2.46 1222 17376 5849 8594 2933 65.6 MiB 0.16 0.00 3.44329 -111.204 -3.44329 3.44329 0.98 0.000547315 0.000500215 0.0508873 0.046362 34 3532 32 6.89349e+06 394628 618332. 2139.56 2.38 0.199222 0.176116 25762 151098 -1 2569 20 2332 3215 247182 54056 3.78835 3.78835 -137.224 -3.78835 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0257128 0.0228166 175 83 26 26 90 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_084.v common 7.70 vpr 65.63 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 33876 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67204 32 32 407 319 1 264 90 17 17 289 -1 unnamed_device 26.9 MiB 2.07 1368 9738 2878 6441 419 65.6 MiB 0.11 0.00 4.15024 -141.645 -4.15024 4.15024 0.96 0.000640076 0.000583618 0.0305397 0.0278983 34 3787 40 6.89349e+06 366440 618332. 2139.56 2.48 0.196752 0.173333 25762 151098 -1 3032 22 2621 3705 324033 68289 4.68595 4.68595 -175.878 -4.68595 0 0 787024. 2723.27 0.30 0.11 0.14 -1 -1 0.30 0.0304107 0.0269995 177 58 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_085.v common 7.58 vpr 65.32 MiB 0.02 7484 -1 -1 1 0.03 -1 -1 34052 -1 -1 30 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66884 29 32 387 316 1 251 91 17 17 289 -1 unnamed_device 26.6 MiB 2.40 1300 15799 5272 7855 2672 65.3 MiB 0.15 0.00 3.58265 -112.274 -3.58265 3.58265 0.96 0.000554016 0.000504137 0.043346 0.039519 34 3430 36 6.89349e+06 422815 618332. 2139.56 1.98 0.173085 0.150812 25762 151098 -1 2651 19 1839 2502 197603 42958 3.8267 3.8267 -131.393 -3.8267 0 0 787024. 2723.27 0.31 0.07 0.15 -1 -1 0.31 0.0228623 0.0201426 170 81 26 26 85 29 + fixed_k6_frac_uripple_N8_22nm.xml mult_086.v common 5.49 vpr 64.72 MiB 0.02 6764 -1 -1 1 0.03 -1 -1 33920 -1 -1 16 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66272 32 32 283 225 1 168 80 17 17 289 -1 unnamed_device 26.2 MiB 0.63 933 14700 5059 8048 1593 64.7 MiB 0.12 0.00 3.037 -111.842 -3.037 3.037 0.99 0.000438088 0.000400467 0.0398003 0.0364366 34 2404 22 6.89349e+06 225501 618332. 2139.56 1.69 0.137548 0.121315 25762 151098 -1 2021 20 1470 2376 185173 41430 3.21381 3.21381 -133.747 -3.21381 0 0 787024. 2723.27 0.30 0.07 0.15 -1 -1 0.30 0.0200812 0.0177984 114 -1 96 32 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_087.v common 8.71 vpr 65.50 MiB 0.02 7204 -1 -1 1 0.03 -1 -1 33444 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67072 32 32 407 319 1 259 91 17 17 289 -1 unnamed_device 26.7 MiB 1.85 1158 10087 2436 6119 1532 65.5 MiB 0.10 0.00 4.05227 -133.337 -4.05227 4.05227 0.96 0.000575206 0.000523164 0.0292035 0.0265771 36 3467 24 6.89349e+06 380534 648988. 2245.63 3.67 0.167646 0.146967 26050 158493 -1 2441 19 2205 3011 207196 50578 4.72315 4.72315 -165.416 -4.72315 0 0 828058. 2865.25 0.32 0.08 0.16 -1 -1 0.32 0.0260562 0.0231807 174 62 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_088.v common 8.75 vpr 65.49 MiB 0.02 7372 -1 -1 1 0.03 -1 -1 33920 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67060 32 32 407 319 1 263 89 17 17 289 -1 unnamed_device 26.8 MiB 3.04 1419 16721 5040 9789 1892 65.5 MiB 0.15 0.00 4.08314 -143.84 -4.08314 4.08314 0.98 0.000473069 0.000431285 0.0465122 0.0423219 34 3633 36 6.89349e+06 352346 618332. 2139.56 2.46 0.209073 0.18474 25762 151098 -1 2893 21 2474 3485 270564 59902 4.56108 4.56108 -168.515 -4.56108 0 0 787024. 2723.27 0.31 0.10 0.14 -1 -1 0.31 0.0294165 0.0262125 176 62 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_089.v common 6.90 vpr 64.94 MiB 0.02 6972 -1 -1 1 0.03 -1 -1 34112 -1 -1 19 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66500 32 32 315 267 1 204 83 17 17 289 -1 unnamed_device 26.3 MiB 1.97 880 14663 4334 8029 2300 64.9 MiB 0.12 0.00 2.7431 -91.4239 -2.7431 2.7431 0.96 0.000456479 0.000417959 0.0389079 0.0355404 34 2692 24 6.89349e+06 267783 618332. 2139.56 1.80 0.141026 0.123443 25762 151098 -1 1884 20 1312 1577 128119 29763 3.06756 3.06756 -113.137 -3.06756 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0206965 0.0182312 128 47 32 32 54 27 + fixed_k6_frac_uripple_N8_22nm.xml mult_090.v common 7.50 vpr 64.57 MiB 0.02 6936 -1 -1 1 0.03 -1 -1 34024 -1 -1 17 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66120 31 32 275 220 1 164 80 17 17 289 -1 unnamed_device 26.1 MiB 0.89 634 7648 1830 4987 831 64.6 MiB 0.07 0.00 3.1953 -106.279 -3.1953 3.1953 0.99 0.000431541 0.000394936 0.0207382 0.0189595 36 1949 20 6.89349e+06 239595 648988. 2245.63 3.45 0.155155 0.134331 26050 158493 -1 1599 16 1095 1728 113410 28059 3.21561 3.21561 -123.108 -3.21561 0 0 828058. 2865.25 0.34 0.05 0.15 -1 -1 0.34 0.0170218 0.0151694 112 -1 93 31 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_091.v common 6.65 vpr 65.13 MiB 0.02 7144 -1 -1 1 0.03 -1 -1 33844 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 32 32 381 303 1 240 89 17 17 289 -1 unnamed_device 26.5 MiB 1.69 1187 9989 2768 6570 651 65.1 MiB 0.10 0.00 3.44139 -113.851 -3.44139 3.44139 0.97 0.000531915 0.00048451 0.0299829 0.0273663 34 2892 23 6.89349e+06 352346 618332. 2139.56 1.80 0.149627 0.130738 25762 151098 -1 2347 23 1821 2277 173226 40043 3.8176 3.8176 -138.343 -3.8176 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.0266612 0.023515 158 56 60 32 58 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_092.v common 8.99 vpr 65.12 MiB 0.02 7176 -1 -1 1 0.03 -1 -1 33824 -1 -1 26 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66680 32 32 406 330 1 261 90 17 17 289 -1 unnamed_device 26.4 MiB 1.80 1360 11748 3227 7768 753 65.1 MiB 0.12 0.00 4.07324 -130.543 -4.07324 4.07324 0.98 0.000540523 0.000492705 0.0355349 0.0324504 36 2920 29 6.89349e+06 366440 648988. 2245.63 3.96 0.219363 0.190559 26050 158493 -1 2432 21 1565 1961 129692 30627 4.38335 4.38335 -154.586 -4.38335 0 0 828058. 2865.25 0.33 0.07 0.15 -1 -1 0.33 0.0266434 0.0235834 170 81 28 28 88 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_093.v common 6.92 vpr 65.33 MiB 0.02 7168 -1 -1 1 0.03 -1 -1 33904 -1 -1 41 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66896 32 32 399 285 1 232 105 17 17 289 -1 unnamed_device 26.7 MiB 0.97 1115 18383 5415 8358 4610 65.3 MiB 0.14 0.00 3.94478 -129.743 -3.94478 3.94478 0.96 0.000581361 0.000523445 0.0455598 0.0413602 36 3109 50 6.89349e+06 577847 648988. 2245.63 2.71 0.177815 0.155905 26050 158493 -1 2204 23 2043 3514 227218 56948 4.54739 4.54739 -158.933 -4.54739 0 0 828058. 2865.25 0.32 0.09 0.16 -1 -1 0.32 0.0286429 0.0252037 183 -1 156 32 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_094.v common 7.05 vpr 65.45 MiB 0.02 7428 -1 -1 1 0.03 -1 -1 34064 -1 -1 27 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67016 30 32 371 295 1 235 89 17 17 289 -1 unnamed_device 26.8 MiB 1.96 1196 17117 5643 8880 2594 65.4 MiB 0.15 0.00 3.1264 -106.114 -3.1264 3.1264 0.98 0.000534632 0.00048658 0.0468219 0.042721 34 3051 32 6.89349e+06 380534 618332. 2139.56 1.83 0.170508 0.149473 25762 151098 -1 2476 23 2030 2916 219191 49243 3.15435 3.15435 -124.251 -3.15435 0 0 787024. 2723.27 0.30 0.08 0.15 -1 -1 0.30 0.0251576 0.0221461 160 47 60 30 56 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_095.v common 5.66 vpr 64.59 MiB 0.02 7072 -1 -1 1 0.03 -1 -1 34112 -1 -1 22 27 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66140 27 32 269 226 1 168 81 17 17 289 -1 unnamed_device 26.2 MiB 1.47 717 13206 3506 8495 1205 64.6 MiB 0.09 0.00 3.34299 -95.8941 -3.34299 3.34299 0.96 0.000411323 0.000376128 0.0324027 0.029575 28 2311 29 6.89349e+06 310065 531479. 1839.03 1.18 0.0926353 0.0814594 24610 126494 -1 1622 21 1471 2084 137280 34650 3.6391 3.6391 -122.616 -3.6391 0 0 648988. 2245.63 0.26 0.06 0.12 -1 -1 0.26 0.0183196 0.0160996 112 26 54 27 27 27 + fixed_k6_frac_uripple_N8_22nm.xml mult_096.v common 9.58 vpr 65.75 MiB 0.02 7368 -1 -1 1 0.03 -1 -1 33932 -1 -1 32 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67324 32 32 493 378 1 322 96 17 17 289 -1 unnamed_device 27.0 MiB 1.90 1764 18930 5418 11040 2472 65.7 MiB 0.19 0.00 3.95894 -136.322 -3.95894 3.95894 0.98 0.000586482 0.000531943 0.0573108 0.0520886 38 3666 19 6.89349e+06 451003 678818. 2348.85 4.34 0.271006 0.236703 26626 170182 -1 3071 24 2216 3186 206399 45807 4.22985 4.22985 -158.581 -4.22985 0 0 902133. 3121.57 0.35 0.09 0.17 -1 -1 0.35 0.0354376 0.0314112 219 85 62 31 95 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_097.v common 7.93 vpr 65.55 MiB 0.02 7492 -1 -1 1 0.03 -1 -1 34240 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67128 31 32 455 371 1 306 94 17 17 289 -1 unnamed_device 26.9 MiB 2.61 1474 11596 3243 7129 1224 65.6 MiB 0.12 0.00 4.10624 -137.211 -4.10624 4.10624 1.00 0.000662629 0.000596481 0.0361931 0.0327827 34 3788 49 6.89349e+06 436909 618332. 2139.56 2.04 0.202514 0.177187 25762 151098 -1 2852 20 2240 2594 182461 42973 4.69485 4.69485 -168.814 -4.69485 0 0 787024. 2723.27 0.32 0.08 0.15 -1 -1 0.32 0.0285353 0.0253193 201 105 0 0 124 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_098.v common 7.53 vpr 65.29 MiB 0.02 7044 -1 -1 1 0.03 -1 -1 33732 -1 -1 22 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66856 32 32 355 304 1 245 86 17 17 289 -1 unnamed_device 26.5 MiB 2.41 1189 9725 2520 6822 383 65.3 MiB 0.09 0.00 3.32419 -112.929 -3.32419 3.32419 0.97 0.000482503 0.000438548 0.0274832 0.0250744 36 2928 27 6.89349e+06 310065 648988. 2245.63 1.99 0.141676 0.122978 26050 158493 -1 2454 22 1828 2089 193400 40602 3.47205 3.47205 -135.895 -3.47205 0 0 828058. 2865.25 0.32 0.07 0.16 -1 -1 0.32 0.0235003 0.0205963 150 86 0 0 89 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_099.v common 8.63 vpr 65.30 MiB 0.02 7308 -1 -1 1 0.03 -1 -1 34172 -1 -1 23 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66868 32 32 364 282 1 225 87 17 17 289 -1 unnamed_device 26.5 MiB 2.05 1132 11799 3237 7477 1085 65.3 MiB 0.12 0.00 3.66075 -124.245 -3.66075 3.66075 0.93 0.000521167 0.000476618 0.0338914 0.0309872 40 2278 23 6.89349e+06 324158 706193. 2443.58 3.45 0.199759 0.174042 26914 176310 -1 2252 22 1694 2471 185964 42982 3.79836 3.79836 -142.9 -3.79836 0 0 926341. 3205.33 0.35 0.07 0.16 -1 -1 0.35 0.0243212 0.021477 151 31 90 30 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_100.v common 8.98 vpr 65.70 MiB 0.02 7408 -1 -1 1 0.03 -1 -1 34052 -1 -1 30 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67272 31 32 443 336 1 280 93 17 17 289 -1 unnamed_device 26.9 MiB 1.80 1415 17523 5456 10422 1645 65.7 MiB 0.17 0.00 3.68095 -127.804 -3.68095 3.68095 0.93 0.000543857 0.000500157 0.0518138 0.047332 36 3163 28 6.89349e+06 422815 648988. 2245.63 3.96 0.242683 0.211467 26050 158493 -1 2601 21 2160 3145 212224 47285 3.83456 3.83456 -147.74 -3.83456 0 0 828058. 2865.25 0.32 0.08 0.16 -1 -1 0.32 0.0280685 0.0248941 193 50 87 31 62 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_101.v common 7.69 vpr 65.22 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 34064 -1 -1 28 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66784 30 32 373 297 1 235 90 17 17 289 -1 unnamed_device 26.6 MiB 2.29 1138 8331 2077 5720 534 65.2 MiB 0.09 0.00 3.48849 -110.607 -3.48849 3.48849 0.96 0.000537668 0.000491623 0.0239732 0.0219034 36 2921 27 6.89349e+06 394628 648988. 2245.63 2.24 0.146339 0.127257 26050 158493 -1 2476 19 1586 2437 180127 40250 3.8227 3.8227 -138.148 -3.8227 0 0 828058. 2865.25 0.32 0.07 0.16 -1 -1 0.32 0.0225456 0.0199109 162 50 58 30 58 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_102.v common 7.25 vpr 65.39 MiB 0.02 7392 -1 -1 1 0.03 -1 -1 34132 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66964 32 32 407 319 1 260 92 17 17 289 -1 unnamed_device 26.6 MiB 1.79 1423 11684 3369 7494 821 65.4 MiB 0.12 0.00 4.01094 -140.385 -4.01094 4.01094 1.00 0.00059619 0.000545097 0.0348684 0.0318333 36 3265 32 6.89349e+06 394628 648988. 2245.63 2.19 0.187685 0.16506 26050 158493 -1 2811 20 1807 2433 196388 41721 4.23465 4.23465 -160.578 -4.23465 0 0 828058. 2865.25 0.33 0.08 0.15 -1 -1 0.33 0.0267325 0.0236791 173 61 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_103.v common 9.80 vpr 65.62 MiB 0.02 7284 -1 -1 1 0.03 -1 -1 33816 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67192 32 32 405 318 1 260 91 17 17 289 -1 unnamed_device 26.9 MiB 2.17 1383 18247 5278 11310 1659 65.6 MiB 0.18 0.00 2.96065 -108.556 -2.96065 2.96065 0.97 0.000552631 0.000500661 0.0527091 0.0478447 42 2958 19 6.89349e+06 380534 744469. 2576.02 4.35 0.225611 0.197543 27202 183097 -1 2491 18 1716 2411 164451 37188 3.03746 3.03746 -123.98 -3.03746 0 0 949917. 3286.91 0.35 0.07 0.17 -1 -1 0.35 0.0247476 0.0220681 175 61 63 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_104.v common 6.29 vpr 64.62 MiB 0.02 7104 -1 -1 1 0.03 -1 -1 33984 -1 -1 21 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66172 29 32 287 238 1 178 82 17 17 289 -1 unnamed_device 26.2 MiB 1.59 858 15212 5499 7330 2383 64.6 MiB 0.11 0.00 3.0572 -99.7396 -3.0572 3.0572 0.96 0.000433236 0.00039455 0.0382367 0.0349354 34 2001 23 6.89349e+06 295971 618332. 2139.56 1.61 0.130641 0.114065 25762 151098 -1 1706 19 1402 1843 128369 29864 3.04026 3.04026 -114.392 -3.04026 0 0 787024. 2723.27 0.31 0.05 0.15 -1 -1 0.31 0.0184394 0.0162774 118 28 58 29 29 29 + fixed_k6_frac_uripple_N8_22nm.xml mult_105.v common 6.22 vpr 65.10 MiB 0.02 7128 -1 -1 1 0.03 -1 -1 34084 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66664 32 32 334 290 1 223 84 17 17 289 -1 unnamed_device 26.3 MiB 1.39 1132 6306 1445 4549 312 65.1 MiB 0.07 0.00 3.61399 -107.656 -3.61399 3.61399 1.01 0.000478046 0.000435346 0.018468 0.0168549 36 2591 40 6.89349e+06 281877 648988. 2245.63 1.66 0.114051 0.0994944 26050 158493 -1 2171 19 1574 1847 131323 29860 3.55495 3.55495 -127.093 -3.55495 0 0 828058. 2865.25 0.34 0.06 0.15 -1 -1 0.34 0.0212798 0.0188874 136 79 0 0 82 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_106.v common 6.63 vpr 65.32 MiB 0.02 7360 -1 -1 1 0.03 -1 -1 34068 -1 -1 24 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66892 31 32 365 281 1 225 87 17 17 289 -1 unnamed_device 26.5 MiB 1.59 1180 16023 5115 8581 2327 65.3 MiB 0.15 0.00 3.72305 -126.858 -3.72305 3.72305 0.99 0.000539863 0.000492502 0.0464774 0.0424493 34 2909 38 6.89349e+06 338252 618332. 2139.56 1.81 0.187823 0.165379 25762 151098 -1 2361 20 1904 2778 190203 44356 4.20536 4.20536 -152.269 -4.20536 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0242914 0.0215206 154 29 93 31 31 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_107.v common 6.19 vpr 64.73 MiB 0.02 7164 -1 -1 1 0.03 -1 -1 34004 -1 -1 21 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66288 29 32 297 254 1 193 82 17 17 289 -1 unnamed_device 26.3 MiB 1.50 942 13254 4882 6404 1968 64.7 MiB 0.11 0.00 2.7321 -88.6094 -2.7321 2.7321 0.96 0.000425546 0.000387551 0.0339051 0.0309653 34 2169 25 6.89349e+06 295971 618332. 2139.56 1.59 0.128496 0.111823 25762 151098 -1 1842 18 1131 1305 92186 21758 2.89026 2.89026 -107.1 -2.89026 0 0 787024. 2723.27 0.31 0.05 0.15 -1 -1 0.31 0.0177253 0.0155982 123 48 29 29 52 26 + fixed_k6_frac_uripple_N8_22nm.xml mult_108.v common 6.89 vpr 64.89 MiB 0.02 6912 -1 -1 1 0.03 -1 -1 33952 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66452 32 32 314 256 1 194 82 17 17 289 -1 unnamed_device 26.5 MiB 1.98 1031 12542 3547 7125 1870 64.9 MiB 0.11 0.00 3.0872 -111.93 -3.0872 3.0872 1.00 0.000481571 0.000441869 0.0348917 0.0318647 34 2551 25 6.89349e+06 253689 618332. 2139.56 1.76 0.148447 0.130497 25762 151098 -1 2147 20 1700 2384 190550 40858 3.27201 3.27201 -135.914 -3.27201 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.0214488 0.0190249 127 31 64 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_109.v common 7.10 vpr 65.44 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 33772 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67012 31 32 387 307 1 242 90 17 17 289 -1 unnamed_device 26.8 MiB 2.05 1287 17175 4781 10450 1944 65.4 MiB 0.16 0.00 3.37794 -116.765 -3.37794 3.37794 0.95 0.000566717 0.00051704 0.0489663 0.0446377 34 3224 26 6.89349e+06 380534 618332. 2139.56 1.84 0.172747 0.150909 25762 151098 -1 2682 23 2409 3325 298339 63716 3.89465 3.89465 -150.905 -3.89465 0 0 787024. 2723.27 0.31 0.10 0.15 -1 -1 0.31 0.0272228 0.0238883 164 60 58 31 62 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_110.v common 8.72 vpr 64.68 MiB 0.02 7308 -1 -1 1 0.03 -1 -1 33968 -1 -1 21 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66228 31 32 308 262 1 196 84 17 17 289 -1 unnamed_device 26.2 MiB 1.71 1008 10515 2970 6860 685 64.7 MiB 0.09 0.00 2.66772 -92.8854 -2.66772 2.66772 0.97 0.000447049 0.000408667 0.0277713 0.0254022 36 2220 22 6.89349e+06 295971 648988. 2245.63 3.88 0.164581 0.14329 26050 158493 -1 1970 21 1261 1545 126098 27794 2.93426 2.93426 -114.051 -2.93426 0 0 828058. 2865.25 0.33 0.06 0.15 -1 -1 0.33 0.0206331 0.0181937 125 49 31 31 53 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_111.v common 8.27 vpr 65.36 MiB 0.02 7140 -1 -1 1 0.03 -1 -1 33684 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66928 32 32 383 307 1 242 89 17 17 289 -1 unnamed_device 26.8 MiB 1.86 1285 11375 3243 7317 815 65.4 MiB 0.11 0.00 3.45549 -118.245 -3.45549 3.45549 0.96 0.000545771 0.000497798 0.0324267 0.029525 34 3054 22 6.89349e+06 352346 618332. 2139.56 3.32 0.199688 0.172537 25762 151098 -1 2548 19 1773 2504 192850 43587 3.523 3.523 -136.633 -3.523 0 0 787024. 2723.27 0.29 0.07 0.14 -1 -1 0.29 0.0208203 0.0183788 162 56 52 26 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_112.v common 7.53 vpr 65.57 MiB 0.02 7192 -1 -1 1 0.03 -1 -1 34124 -1 -1 31 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67140 31 32 422 339 1 277 94 17 17 289 -1 unnamed_device 26.7 MiB 2.23 1503 15004 3761 8780 2463 65.6 MiB 0.14 0.00 4.11342 -131.718 -4.11342 4.11342 0.96 0.000554293 0.000504829 0.0429496 0.0391987 34 3560 40 6.89349e+06 436909 618332. 2139.56 2.07 0.184841 0.160814 25762 151098 -1 2886 21 2323 3365 235854 53550 4.44069 4.44069 -160.161 -4.44069 0 0 787024. 2723.27 0.31 0.09 0.15 -1 -1 0.31 0.027378 0.0240799 185 88 31 31 92 31 + fixed_k6_frac_uripple_N8_22nm.xml mult_113.v common 8.00 vpr 64.93 MiB 0.02 7132 -1 -1 1 0.03 -1 -1 34080 -1 -1 21 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66492 32 32 333 279 1 216 85 17 17 289 -1 unnamed_device 26.2 MiB 3.00 1130 13477 3780 7902 1795 64.9 MiB 0.12 0.00 2.88675 -103.845 -2.88675 2.88675 1.00 0.00046941 0.000428117 0.0360887 0.0329181 34 2817 22 6.89349e+06 295971 618332. 2139.56 1.77 0.147438 0.129435 25762 151098 -1 2329 18 1660 2272 180790 39260 2.87221 2.87221 -116.705 -2.87221 0 0 787024. 2723.27 0.32 0.07 0.15 -1 -1 0.32 0.0211016 0.0186977 137 54 32 32 60 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_114.v common 6.32 vpr 65.20 MiB 0.02 7136 -1 -1 1 0.03 -1 -1 33480 -1 -1 20 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66764 32 32 339 283 1 218 84 17 17 289 -1 unnamed_device 26.4 MiB 1.56 1094 9234 2349 6229 656 65.2 MiB 0.09 0.00 3.0652 -108.154 -3.0652 3.0652 0.97 0.000513523 0.000467097 0.0272093 0.0248573 34 2756 23 6.89349e+06 281877 618332. 2139.56 1.65 0.133157 0.115464 25762 151098 -1 2276 18 1526 1809 152181 33308 3.10956 3.10956 -125.653 -3.10956 0 0 787024. 2723.27 0.31 0.06 0.15 -1 -1 0.31 0.0195557 0.0172463 139 60 32 32 62 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_115.v common 8.76 vpr 65.34 MiB 0.02 7268 -1 -1 1 0.03 -1 -1 34376 -1 -1 27 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66912 32 32 407 319 1 264 91 17 17 289 -1 unnamed_device 26.6 MiB 1.64 1302 16207 5602 8499 2106 65.3 MiB 0.13 0.00 3.75305 -132.428 -3.75305 3.75305 0.94 0.000562413 0.00050993 0.0440899 0.0402654 36 2939 33 6.89349e+06 380534 648988. 2245.63 3.98 0.238194 0.207679 26050 158493 -1 2580 21 2073 2598 188249 41514 4.02396 4.02396 -156.863 -4.02396 0 0 828058. 2865.25 0.31 0.07 0.15 -1 -1 0.31 0.0241664 0.0213247 178 49 64 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_116.v common 6.76 vpr 65.36 MiB 0.02 7336 -1 -1 1 0.03 -1 -1 33744 -1 -1 26 29 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66924 29 32 367 293 1 231 87 17 17 289 -1 unnamed_device 26.8 MiB 1.98 1201 11991 3478 7371 1142 65.4 MiB 0.11 0.00 2.92765 -97.7496 -2.92765 2.92765 0.96 0.000517919 0.00047203 0.0347181 0.0317472 34 2628 21 6.89349e+06 366440 618332. 2139.56 1.64 0.146247 0.127606 25762 151098 -1 2304 17 1730 2217 153193 35244 3.33186 3.33186 -123.569 -3.33186 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.021316 0.018861 157 54 56 29 58 29 + fixed_k6_frac_uripple_N8_22nm.xml mult_117.v common 7.23 vpr 65.73 MiB 0.02 7388 -1 -1 1 0.04 -1 -1 34396 -1 -1 29 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67312 32 32 469 381 1 315 93 17 17 289 -1 unnamed_device 27.1 MiB 1.59 1505 18573 5614 10502 2457 65.7 MiB 0.18 0.00 3.96268 -136.341 -3.96268 3.96268 0.96 0.000613921 0.000558748 0.0565226 0.0515675 36 3719 27 6.89349e+06 408721 648988. 2245.63 2.38 0.216147 0.191076 26050 158493 -1 3076 19 2365 2732 196659 44801 4.71879 4.71879 -166.699 -4.71879 0 0 828058. 2865.25 0.31 0.08 0.15 -1 -1 0.31 0.0278449 0.0248647 203 117 0 0 128 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_118.v common 4.81 vpr 64.54 MiB 0.02 7180 -1 -1 1 0.03 -1 -1 33784 -1 -1 16 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66084 31 32 259 212 1 155 79 17 17 289 -1 unnamed_device 26.1 MiB 0.72 879 11402 3694 5860 1848 64.5 MiB 0.09 0.00 2.34777 -87.9271 -2.34777 2.34777 0.96 0.000409109 0.000374226 0.0289225 0.0264429 30 2094 21 6.89349e+06 225501 556674. 1926.21 1.06 0.0824494 0.0726512 25186 138497 -1 1753 21 1250 2014 127862 28708 2.75561 2.75561 -112.663 -2.75561 0 0 706193. 2443.58 0.28 0.05 0.13 -1 -1 0.28 0.0183974 0.0161788 104 -1 85 31 0 0 + fixed_k6_frac_uripple_N8_22nm.xml mult_119.v common 7.33 vpr 65.60 MiB 0.02 7312 -1 -1 1 0.03 -1 -1 34052 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67176 32 32 418 338 1 273 92 17 17 289 -1 unnamed_device 26.9 MiB 1.88 1316 17066 5532 8557 2977 65.6 MiB 0.16 0.00 4.40923 -144.475 -4.40923 4.40923 1.00 0.000565276 0.00051977 0.0506824 0.04614 34 3870 44 6.89349e+06 394628 618332. 2139.56 2.17 0.216699 0.191053 25762 151098 -1 2768 22 2460 3246 242844 54866 5.05604 5.05604 -178.909 -5.05604 0 0 787024. 2723.27 0.32 0.09 0.14 -1 -1 0.32 0.0305439 0.0270671 179 89 28 28 92 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_120.v common 7.99 vpr 65.37 MiB 0.02 7056 -1 -1 1 0.03 -1 -1 33800 -1 -1 24 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66940 32 32 376 318 1 259 88 17 17 289 -1 unnamed_device 26.7 MiB 2.60 1327 17638 6261 9008 2369 65.4 MiB 0.15 0.00 3.82148 -134.143 -3.82148 3.82148 0.97 0.000540678 0.000494353 0.0489641 0.0446578 38 3081 25 6.89349e+06 338252 678818. 2348.85 2.11 0.166184 0.1452 26626 170182 -1 2649 22 2407 2993 227130 48952 4.15359 4.15359 -155.176 -4.15359 0 0 902133. 3121.57 0.34 0.08 0.17 -1 -1 0.34 0.0255564 0.0224887 161 93 0 0 96 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_121.v common 7.14 vpr 65.43 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 34044 -1 -1 25 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67004 32 32 401 316 1 253 89 17 17 289 -1 unnamed_device 26.8 MiB 2.04 1404 16127 4906 9154 2067 65.4 MiB 0.15 0.00 3.00785 -110.457 -3.00785 3.00785 1.00 0.000535089 0.000484303 0.0471581 0.0429603 34 3191 44 6.89349e+06 352346 618332. 2139.56 1.84 0.197471 0.173155 25762 151098 -1 2564 19 1787 2392 179922 39948 3.1004 3.1004 -129.151 -3.1004 0 0 787024. 2723.27 0.32 0.07 0.14 -1 -1 0.32 0.0250518 0.0222646 170 59 61 32 64 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_122.v common 8.29 vpr 65.83 MiB 0.02 7420 -1 -1 1 0.04 -1 -1 34276 -1 -1 33 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67408 32 32 500 382 1 323 97 17 17 289 -1 unnamed_device 27.0 MiB 2.00 1658 21853 7761 11309 2783 65.8 MiB 0.23 0.00 4.16434 -145.014 -4.16434 4.16434 0.95 0.000651829 0.000593002 0.06693 0.0609157 36 3867 40 6.89349e+06 465097 648988. 2245.63 2.96 0.239972 0.210693 26050 158493 -1 3101 21 2532 3014 212632 48162 4.7822 4.7822 -174.932 -4.7822 0 0 828058. 2865.25 0.32 0.09 0.16 -1 -1 0.32 0.0303275 0.0267967 224 81 64 32 96 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_123.v common 5.69 vpr 64.28 MiB 0.02 6944 -1 -1 1 0.03 -1 -1 33696 -1 -1 16 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65824 30 32 246 229 1 160 78 17 17 289 -1 unnamed_device 25.8 MiB 1.25 811 13358 4243 7085 2030 64.3 MiB 0.09 0.00 2.56796 -80.5183 -2.56796 2.56796 0.94 0.000361263 0.00032868 0.0311047 0.0282659 34 1751 18 6.89349e+06 225501 618332. 2139.56 1.41 0.1061 0.0922389 25762 151098 -1 1533 17 695 705 54011 12835 2.19676 2.19676 -90.0797 -2.19676 0 0 787024. 2723.27 0.32 0.04 0.15 -1 -1 0.32 0.0149557 0.0132239 93 51 0 0 53 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_124.v common 6.12 vpr 64.78 MiB 0.02 7184 -1 -1 1 0.03 -1 -1 33908 -1 -1 21 30 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66336 30 32 296 244 1 181 83 17 17 289 -1 unnamed_device 26.4 MiB 1.41 939 14663 4555 8160 1948 64.8 MiB 0.12 0.00 3.34479 -111.77 -3.34479 3.34479 0.97 0.000430511 0.000392895 0.0378835 0.0346353 34 2058 22 6.89349e+06 295971 618332. 2139.56 1.58 0.133479 0.116805 25762 151098 -1 1784 21 1476 2183 148809 34737 3.3182 3.3182 -130.779 -3.3182 0 0 787024. 2723.27 0.30 0.06 0.15 -1 -1 0.30 0.0207754 0.0182736 124 29 60 30 30 30 + fixed_k6_frac_uripple_N8_22nm.xml mult_125.v common 7.51 vpr 64.80 MiB 0.02 7036 -1 -1 1 0.03 -1 -1 33640 -1 -1 18 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66352 32 32 314 256 1 199 82 17 17 289 -1 unnamed_device 26.4 MiB 2.41 1049 11118 2860 7705 553 64.8 MiB 0.10 0.00 3.42319 -119.68 -3.42319 3.42319 0.94 0.000444839 0.000405668 0.0304168 0.027728 34 2865 43 6.89349e+06 253689 618332. 2139.56 2.01 0.137356 0.120474 25762 151098 -1 2270 20 1916 3323 234656 52946 3.611 3.611 -146.326 -3.611 0 0 787024. 2723.27 0.32 0.08 0.14 -1 -1 0.32 0.0204831 0.0179788 129 31 64 32 32 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_126.v common 5.42 vpr 64.18 MiB 0.02 7272 -1 -1 1 0.03 -1 -1 33936 -1 -1 24 25 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65724 25 32 251 214 1 162 81 17 17 289 -1 unnamed_device 25.7 MiB 1.41 626 13731 3794 8862 1075 64.2 MiB 0.10 0.00 3.0352 -80.8507 -3.0352 3.0352 0.96 0.000380121 0.00034849 0.0318306 0.0291829 30 1943 35 6.89349e+06 338252 556674. 1926.21 0.99 0.0915981 0.0806178 25186 138497 -1 1417 21 943 1257 85861 20512 2.96021 2.96021 -98.0948 -2.96021 0 0 706193. 2443.58 0.28 0.05 0.12 -1 -1 0.28 0.017913 0.0158081 107 19 50 25 25 25 + fixed_k6_frac_uripple_N8_22nm.xml mult_127.v common 11.17 vpr 65.77 MiB 0.02 7228 -1 -1 1 0.03 -1 -1 33844 -1 -1 28 32 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67352 32 32 432 346 1 288 92 17 17 289 -1 unnamed_device 27.2 MiB 3.18 1501 18101 5858 9877 2366 65.8 MiB 0.16 0.00 3.78745 -132.366 -3.78745 3.78745 0.99 0.00056602 0.000515365 0.049022 0.0447187 38 3394 32 6.89349e+06 394628 678818. 2348.85 4.68 0.308007 0.270335 26626 170182 -1 2868 18 2188 3125 185132 42942 3.92506 3.92506 -152.687 -3.92506 0 0 902133. 3121.57 0.33 0.07 0.16 -1 -1 0.33 0.0249107 0.0222086 190 84 32 32 94 32 + fixed_k6_frac_uripple_N8_22nm.xml mult_128.v common 9.64 vpr 65.65 MiB 0.02 7252 -1 -1 1 0.03 -1 -1 33932 -1 -1 27 31 0 0 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:25:09 gh-actions-runner-vtr-auto-spawned196 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67228 31 32 421 339 1 274 90 17 17 289 -1 unnamed_device 26.9 MiB 2.21 1353 6120 1183 4662 275 65.7 MiB 0.07 0.00 3.92478 -128.199 -3.92478 3.92478 0.93 0.000564585 0.000516512 0.0197456 0.0180369 36 3247 25 6.89349e+06 380534 648988. 2245.63 4.28 0.214349 0.185279 26050 158493 -1 2745 23 2241 3139 217858 50447 4.32719 4.32719 -155.198 -4.32719 0 0 828058. 2865.25 0.34 0.09 0.15 -1 -1 0.34 0.0299868 0.0264768 183 88 29 29 93 31 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/power_extended_arch_list/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/power_extended_arch_list/config/golden_results.txt index 8192a606fd2..2753750f392 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/power_extended_arch_list/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/power_extended_arch_list/config/golden_results.txt @@ -1,31 +1,31 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time total_power routing_power_perc clock_power_perc tile_power_perc -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 5.55 vpr 62.54 MiB 0.06 9268 -1 -1 3 0.35 -1 -1 35776 -1 -1 68 99 1 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64044 99 130 363 493 1 258 298 12 12 144 clb auto 24.1 MiB 0.10 730 62.5 MiB 0.43 0.01 1.86328 -196.275 -1.86328 1.86328 0.37 0.000834451 0.000743119 0.0551138 0.0479694 50 1577 12 5.66058e+06 4.21279e+06 406292. 2821.48 2.19 0.282352 0.254425 13526 77840 -1 1496 9 503 612 57866 18952 0 0 57866 18952 612 553 0 0 2619 2490 0 0 2859 2620 0 0 630 575 0 0 23272 6684 0 0 27874 6030 0 0 612 0 0 109 136 166 1313 0 0 2.46581 2.46581 -231.6 -2.46581 0 0 520805. 3616.70 0.14 0.05 0.08 -1 -1 0.14 0.0212174 0.0199449 0.00832 0.2557 0.07901 0.6653 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml diffeq1.v common 15.83 vpr 66.67 MiB 0.05 9236 -1 -1 15 0.43 -1 -1 33840 -1 -1 40 162 0 5 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 68272 162 96 999 932 1 694 303 16 16 256 mult_36 auto 28.4 MiB 0.36 5389 66.7 MiB 0.92 0.01 19.7676 -1782.41 -19.7676 19.7676 0.88 0.0017313 0.00156784 0.254738 0.231708 50 12648 42 1.21132e+07 4.13576e+06 780512. 3048.87 8.93 1.20218 1.10805 25484 153448 -1 9978 17 3114 6384 1919594 506731 0 0 1919594 506731 6384 3918 0 0 77963 76627 0 0 80991 78134 0 0 6838 4323 0 0 847617 167989 0 0 899801 175740 0 0 6384 0 0 3304 9373 8940 55487 0 0 22.5564 22.5564 -2004.38 -22.5564 0 0 1.00276e+06 3917.05 0.23 0.43 0.19 -1 -1 0.23 0.0875035 0.0824968 0.007637 0.3619 0.01676 0.6213 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml LU8PEEng.v common 969.34 vpr 498.31 MiB 17.86 218824 -1 -1 129 257.61 -1 -1 99936 -1 -1 2018 114 44 8 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 510268 114 102 29578 29304 1 16035 2286 54 54 2916 clb auto 261.8 MiB 23.79 231009 484.8 MiB 79.40 0.55 69.6118 -57509.6 -69.6118 69.6118 29.66 0.068697 0.059864 12.6287 9.63498 100 337981 48 1.70873e+08 1.36042e+08 1.90496e+07 6532.79 440.80 39.7555 31.9314 408276 4062182 -1 309689 19 61153 243064 45563750 10348878 0 0 45563750 10348878 235465 77399 0 0 696328 640331 0 0 852314 702439 0 0 244715 93011 0 0 21636056 4363065 0 0 21898872 4472633 0 0 235465 0 0 181010 843167 840258 5564161 8092 12329 80.487 80.487 -72900.8 -80.487 -35.5126 -0.296573 2.40310e+07 8241.08 8.35 18.26 3.93 -1 -1 8.35 4.52454 3.83078 0.1047 0.4234 0.01042 0.5662 -k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 5.10 vpr 62.69 MiB 0.05 9436 -1 -1 3 0.20 -1 -1 35884 -1 -1 68 99 1 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64196 99 130 363 493 1 258 298 12 12 144 clb auto 24.3 MiB 0.09 730 62.7 MiB 0.33 0.01 1.86328 -196.275 -1.86328 1.86328 0.36 0.000626519 0.000540133 0.0466419 0.0407979 50 1497 11 5.66058e+06 4.21279e+06 406292. 2821.48 1.70 0.168991 0.152296 13526 77840 -1 1469 8 479 583 38459 12674 0 0 38459 12674 583 529 0 0 2252 2123 0 0 2482 2252 0 0 598 555 0 0 15519 3765 0 0 17025 3450 0 0 583 0 0 104 151 171 1303 0 0 2.43721 2.43721 -228.78 -2.43721 0 0 520805. 3616.70 0.15 0.04 0.10 -1 -1 0.15 0.0202434 0.0189885 0.009481 0.2292 0.07014 0.7006 -k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml diffeq1.v common 19.31 vpr 66.71 MiB 0.05 9220 -1 -1 15 0.46 -1 -1 33972 -1 -1 40 162 0 5 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 68316 162 96 999 932 1 694 303 16 16 256 mult_36 auto 28.4 MiB 0.35 5389 66.7 MiB 1.10 0.02 19.7676 -1782.41 -19.7676 19.7676 0.94 0.00348724 0.00320341 0.30784 0.280915 50 11914 30 1.21132e+07 4.13576e+06 780512. 3048.87 11.43 1.61 1.48896 25484 153448 -1 9918 17 3059 6137 1826360 482055 0 0 1826360 482055 6137 3777 0 0 74373 73057 0 0 77157 74512 0 0 6545 4189 0 0 805926 159831 0 0 856222 166689 0 0 6137 0 0 3118 8894 8432 53163 0 0 22.5576 22.5576 -2087.67 -22.5576 0 0 1.00276e+06 3917.05 0.33 0.65 0.16 -1 -1 0.33 0.147642 0.138644 0.007916 0.3475 0.01617 0.6363 -k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml LU8PEEng.v common 979.90 vpr 496.06 MiB 21.32 218920 -1 -1 129 291.19 -1 -1 99892 -1 -1 1927 114 44 8 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 507964 114 102 29578 29304 1 15675 2195 53 53 2809 clb auto 262.1 MiB 48.99 223068 473.4 MiB 82.43 0.42 71.983 -55552.3 -71.983 71.983 28.76 0.0645628 0.0559133 11.7076 9.05186 100 334447 48 1.63647e+08 1.31137e+08 1.82848e+07 6509.36 385.07 38.773 31.3807 391934 3893229 -1 300932 19 60610 237999 47520995 10703009 0 0 47520995 10703009 230607 76905 0 0 705182 650136 0 0 857821 711547 0 0 240533 90623 0 0 22603475 4537403 0 0 22883377 4636395 0 0 230607 0 0 176836 815186 822674 5407227 7831 4457 81.379 81.379 -68107.2 -81.379 -38.5828 -0.295467 2.30694e+07 8212.69 7.49 21.91 3.73 -1 -1 7.49 6.01515 5.05843 0.1037 0.4111 0.00996 0.5789 -k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 5.70 vpr 62.78 MiB 0.06 9192 -1 -1 3 0.35 -1 -1 35832 -1 -1 67 99 1 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64284 99 130 363 493 1 257 297 12 12 144 clb auto 24.4 MiB 0.10 643 62.8 MiB 0.40 0.01 1.98361 -198.721 -1.98361 1.98361 0.39 0.000909149 0.000819937 0.0500907 0.0437278 36 1560 18 5.66058e+06 4.1589e+06 320299. 2224.30 2.56 0.324737 0.29686 12728 62292 -1 1388 9 557 739 50798 16925 0 0 50798 16925 739 619 0 0 2889 2653 0 0 3394 2889 0 0 767 643 0 0 19982 5389 0 0 23027 4732 0 0 739 0 0 182 234 140 1741 0 0 2.56234 2.56234 -236.181 -2.56234 0 0 396063. 2750.44 0.09 0.03 0.05 -1 -1 0.09 0.0136783 0.0128614 0.007571 0.2014 0.07451 0.7241 -k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml diffeq1.v common 14.90 vpr 66.88 MiB 0.05 9208 -1 -1 15 0.49 -1 -1 34068 -1 -1 39 162 0 5 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 68480 162 96 999 932 1 695 302 16 16 256 mult_36 auto 28.6 MiB 0.34 5408 66.9 MiB 0.95 0.02 19.8736 -1657.73 -19.8736 19.8736 0.86 0.00284733 0.00261786 0.288065 0.2649 46 12840 49 1.21132e+07 4.08187e+06 761464. 2974.47 7.48 1.13996 1.05892 25952 154797 -1 10191 19 3421 7200 2135800 532613 0 0 2135800 532613 7200 4387 0 0 85759 83202 0 0 90173 85959 0 0 7704 5052 0 0 981134 183341 0 0 963830 170672 0 0 7200 0 0 3812 10433 10438 59921 0 0 22.3795 22.3795 -1918.66 -22.3795 0 0 979054. 3824.43 0.32 0.53 0.19 -1 -1 0.32 0.109091 0.102956 0.007926 0.3478 0.01636 0.6358 -k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1047.00 vpr 513.52 MiB 22.09 218828 -1 -1 129 248.85 -1 -1 99728 -1 -1 1852 114 44 8 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 525848 114 102 29578 29304 1 15977 2120 53 53 2809 clb auto 258.7 MiB 272.36 223301 508.3 MiB 64.64 0.55 69.0458 -58211 -69.0458 69.0458 34.27 0.080048 0.0582582 9.96313 7.406 102 327157 50 1.63647e+08 1.27095e+08 1.94476e+07 6923.33 289.57 42.9957 34.8455 408308 4233793 -1 295571 17 56813 224539 44333458 9858744 0 0 44333458 9858744 216850 71654 0 0 700393 615690 0 0 856750 707045 0 0 225426 85595 0 0 20897271 4117638 0 0 21436768 4261122 0 0 216850 0 0 166594 735015 751354 5010294 7997 3920 79.1082 79.1082 -72996 -79.1082 -17.2768 -0.293253 2.43065e+07 8653.08 7.10 17.21 3.93 -1 -1 7.10 4.80465 4.13194 0.1089 0.4041 0.01016 0.5858 -k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 5.94 vpr 62.92 MiB 0.07 9280 -1 -1 3 0.35 -1 -1 35748 -1 -1 67 99 1 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64432 99 130 363 493 1 257 297 12 12 144 clb auto 24.5 MiB 0.10 643 62.9 MiB 0.40 0.01 1.98361 -198.721 -1.98361 1.98361 0.32 0.00100326 0.000905057 0.0533005 0.0467316 38 1629 18 5.66058e+06 4.1589e+06 334530. 2323.13 2.48 0.34861 0.317287 13012 66834 -1 1325 8 511 681 44384 15256 0 0 44384 15256 681 577 0 0 2787 2521 0 0 3376 2790 0 0 714 600 0 0 17105 4610 0 0 19721 4158 0 0 681 0 0 170 221 128 1612 0 0 2.62753 2.62753 -238.832 -2.62753 0 0 424691. 2949.24 0.14 0.05 0.08 -1 -1 0.14 0.0216536 0.0203708 0.008508 0.1882 0.06629 0.7455 -k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml diffeq1.v common 16.00 vpr 66.66 MiB 0.04 9220 -1 -1 15 0.49 -1 -1 33872 -1 -1 39 162 0 5 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 68260 162 96 999 932 1 695 302 16 16 256 mult_36 auto 28.3 MiB 0.41 5408 66.7 MiB 0.99 0.02 19.8736 -1657.73 -19.8736 19.8736 0.95 0.00306442 0.00282942 0.313296 0.287816 48 12476 41 1.21132e+07 4.08187e+06 791884. 3093.30 8.42 1.34931 1.25446 26208 159478 -1 9982 17 3095 6367 1848594 458072 0 0 1848594 458072 6367 3854 0 0 75209 73137 0 0 78596 75416 0 0 6777 4366 0 0 844250 155306 0 0 837395 145993 0 0 6367 0 0 3306 9336 8578 54153 0 0 22.3761 22.3761 -1884.29 -22.3761 0 0 1.01413e+06 3961.44 0.30 0.51 0.17 -1 -1 0.30 0.105299 0.0995052 0.008251 0.3376 0.01596 0.6464 -k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml LU8PEEng.v common 1184.15 vpr 498.71 MiB 21.10 218884 -1 -1 129 249.42 -1 -1 99928 -1 -1 1780 114 44 8 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 510676 114 102 29578 29304 1 15502 2048 51 51 2601 clb auto 261.7 MiB 290.92 227703 487.5 MiB 67.44 0.52 69.4573 -52576.1 -69.4573 69.4573 26.45 0.0725695 0.0636217 9.56071 7.48007 102 335734 46 1.52527e+08 1.23215e+08 1.80757e+07 6949.52 411.36 37.05 30.0696 380370 3944208 -1 299605 19 56163 223597 44490299 10139310 0 0 44490299 10139310 217234 70847 0 0 722082 637728 0 0 879790 729011 0 0 226528 84153 0 0 21072922 4304160 0 0 21371743 4313411 0 0 217234 0 0 167772 732973 749981 5062565 6875 5883 79.7615 79.7615 -67735.1 -79.7615 -30.4999 -0.198615 2.25881e+07 8684.41 6.90 16.30 3.71 -1 -1 6.90 4.2311 3.66196 0.1072 0.3923 0.009587 0.5981 -k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 5.75 vpr 63.20 MiB 0.06 9296 -1 -1 3 0.36 -1 -1 35732 -1 -1 67 99 1 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64716 99 130 363 493 1 263 297 12 12 144 clb auto 24.7 MiB 0.10 694 63.2 MiB 0.38 0.01 1.98449 -201.695 -1.98449 1.98449 0.42 0.000649741 0.000573037 0.055778 0.0488903 54 1434 10 5.66058e+06 4.1589e+06 470559. 3267.77 2.38 0.302967 0.272291 14864 95944 -1 1350 10 527 698 42700 13461 0 0 42700 13461 698 620 0 0 2467 2151 0 0 3279 2470 0 0 748 666 0 0 16358 3760 0 0 19150 3794 0 0 698 0 0 171 89 187 1541 0 0 2.45041 2.45041 -233.853 -2.45041 0 0 611595. 4247.19 0.12 0.03 0.07 -1 -1 0.12 0.0145611 0.0136908 0.008607 0.2501 0.08417 0.6657 -k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml diffeq1.v common 17.34 vpr 66.81 MiB 0.03 9228 -1 -1 15 0.53 -1 -1 33884 -1 -1 36 162 0 5 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 68416 162 96 999 932 1 700 299 16 16 256 mult_36 auto 28.3 MiB 0.35 5291 66.8 MiB 0.56 0.02 19.625 -1758.31 -19.625 19.625 0.57 0.00306835 0.00278431 0.158418 0.143533 56 12180 45 1.21132e+07 3.92018e+06 945639. 3693.90 10.75 1.18699 1.09748 28324 193488 -1 9603 20 3448 7165 1904288 531194 0 0 1904288 531194 7165 4519 0 0 92551 89452 0 0 97908 92824 0 0 7736 5125 0 0 873200 176702 0 0 825728 162572 0 0 7165 0 0 3748 10606 10678 55735 0 0 21.9438 21.9438 -2034.6 -21.9438 0 0 1.20516e+06 4707.66 0.40 0.75 0.19 -1 -1 0.40 0.179005 0.166532 0.0083 0.362 0.01694 0.6211 -k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1325.73 vpr 522.96 MiB 21.87 218768 -1 -1 129 257.20 -1 -1 99880 -1 -1 1779 114 44 8 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 535516 114 102 29578 29304 1 15923 2047 51 51 2601 clb auto 254.1 MiB 296.44 231937 510.7 MiB 71.04 0.50 72.2508 -55207.8 -72.2508 72.2508 29.82 0.0700313 0.0612206 10.0568 7.58509 106 335283 38 1.52527e+08 1.23161e+08 1.93524e+07 7440.37 525.65 36.4833 29.7267 399048 4353800 -1 303736 20 53569 213796 61922818 16618105 0 0 61922818 16618105 206289 68279 0 0 743902 639916 0 0 911943 750963 0 0 214991 80062 0 0 29585876 7469786 0 0 30259817 7609099 0 0 206289 0 0 159065 710648 723895 4799023 7878 7772 81.9801 81.9801 -70488.3 -81.9801 -17.1048 -0.292146 2.43688e+07 9369.00 7.42 22.89 3.94 -1 -1 7.42 4.30139 3.7249 0.1129 0.3967 0.0097 0.5936 -k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 5.89 vpr 63.18 MiB 0.05 9428 -1 -1 3 0.28 -1 -1 35764 -1 -1 67 99 1 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64700 99 130 363 493 1 263 297 12 12 144 clb auto 24.7 MiB 0.09 694 63.2 MiB 0.42 0.01 1.98449 -201.695 -1.98449 1.98449 0.35 0.00046738 0.000407616 0.0605725 0.0527492 48 1476 9 5.66058e+06 4.1589e+06 426931. 2964.80 2.46 0.2254 0.202477 14292 85212 -1 1381 10 542 730 53376 17926 0 0 53376 17926 730 647 0 0 3324 3021 0 0 3997 3324 0 0 789 711 0 0 21151 5000 0 0 23385 5223 0 0 730 0 0 188 118 226 1704 0 0 2.55458 2.55458 -229.387 -2.55458 0 0 545663. 3789.32 0.17 0.05 0.11 -1 -1 0.17 0.0237788 0.0222849 0.009132 0.2148 0.07157 0.7136 -k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml diffeq1.v common 14.32 vpr 67.09 MiB 0.06 9188 -1 -1 15 0.45 -1 -1 34104 -1 -1 37 162 0 5 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 68700 162 96 999 932 1 698 300 16 16 256 mult_36 auto 28.8 MiB 0.38 5307 67.1 MiB 0.83 0.02 19.8992 -1764.08 -19.8992 19.8992 0.59 0.00332617 0.00304274 0.231606 0.21054 48 12349 48 1.21132e+07 3.97408e+06 822491. 3212.85 7.57 0.911045 0.840359 27048 168158 -1 9620 18 2866 5588 1758077 430907 0 0 1758077 430907 5588 3553 0 0 71838 69577 0 0 75069 72084 0 0 6098 4006 0 0 820239 139185 0 0 779245 142502 0 0 5588 0 0 2753 7173 7360 42770 0 0 22.9898 22.9898 -2048.87 -22.9898 0 0 1.05295e+06 4113.10 0.24 0.64 0.12 -1 -1 0.24 0.154404 0.145551 0.008216 0.3391 0.01577 0.6452 -k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml LU8PEEng.v common 1318.07 vpr 500.67 MiB 19.87 218816 -1 -1 129 288.35 -1 -1 99708 -1 -1 1708 114 44 8 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 512688 114 102 29578 29304 1 15102 1976 50 50 2500 clb memory auto 256.0 MiB 437.81 211092 499.3 MiB 58.54 0.45 70.0651 -57625.8 -70.0651 70.0651 28.85 0.068432 0.0597348 9.35917 7.09541 100 310834 48 1.47946e+08 1.19334e+08 1.76909e+07 7076.35 375.80 34.8526 28.2617 373728 3941812 -1 278086 16 53455 215263 36383346 7583614 0 0 36383346 7583614 208108 69237 0 0 697380 595324 0 0 849635 703292 0 0 217059 82979 0 0 16911111 3028293 0 0 17500053 3104489 0 0 208108 0 0 161228 685668 714731 4816793 7484 9935 82.0167 82.0167 -73568.8 -82.0167 -12.7621 -0.340786 2.21802e+07 8872.08 6.64 13.17 3.57 -1 -1 6.64 3.79896 3.26849 0.109 0.3706 0.009546 0.6198 -k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 5.08 vpr 62.93 MiB 0.06 9252 -1 -1 3 0.36 -1 -1 35812 -1 -1 67 99 1 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64436 99 130 363 493 1 257 297 12 12 144 clb auto 24.5 MiB 0.10 680 62.9 MiB 0.38 0.01 2.11707 -200.924 -2.11707 2.11707 0.30 0.000627965 0.000541912 0.0523564 0.0457158 46 1569 11 5.66058e+06 4.1589e+06 378970. 2631.74 1.98 0.20569 0.185731 13238 73581 -1 1439 10 563 756 52218 16814 0 0 52218 16814 756 642 0 0 2807 2604 0 0 3340 2812 0 0 795 689 0 0 20310 5266 0 0 24210 4801 0 0 756 0 0 193 263 290 2024 0 0 2.56948 2.56948 -237.08 -2.56948 0 0 486261. 3376.82 0.10 0.03 0.06 -1 -1 0.10 0.0142445 0.0134078 0.008019 0.2463 0.07885 0.6748 -k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml diffeq1.v common 13.19 vpr 66.54 MiB 0.03 9180 -1 -1 15 0.49 -1 -1 33920 -1 -1 38 162 0 5 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 68140 162 96 999 932 1 695 301 16 16 256 mult_36 auto 28.3 MiB 0.36 5319 66.5 MiB 0.89 0.02 19.8398 -1699.1 -19.8398 19.8398 0.88 0.00357059 0.0032594 0.292388 0.270434 52 12242 39 1.21132e+07 4.02797e+06 805949. 3148.24 5.80 0.919209 0.854251 25992 162577 -1 9736 16 3045 6165 1662560 434871 0 0 1662560 434871 6165 3871 0 0 77958 75869 0 0 81498 78202 0 0 6717 4388 0 0 764654 139968 0 0 725568 132573 0 0 6165 0 0 3155 8919 8739 51400 0 0 22.5953 22.5953 -1912.94 -22.5953 0 0 1.06067e+06 4143.25 0.30 0.72 0.13 -1 -1 0.30 0.215835 0.203198 0.00783 0.3607 0.01735 0.6219 -k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1027.45 vpr 502.55 MiB 18.80 218940 -1 -1 129 289.93 -1 -1 99984 -1 -1 1956 114 44 8 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 514612 114 102 29578 29304 1 16199 2224 54 54 2916 clb auto 260.2 MiB 172.38 231332 483.7 MiB 73.51 0.48 70.7741 -54440.4 -70.7741 70.7741 27.70 0.0671732 0.0585657 10.9532 8.50695 102 338797 27 1.70873e+08 1.327e+08 1.93878e+07 6648.75 328.05 37.1 30.1447 411192 4120304 -1 312382 19 63157 247679 43224112 9192620 0 0 43224112 9192620 239264 81417 0 0 720797 661571 0 0 884528 726701 0 0 249434 95071 0 0 20401254 3765704 0 0 20728835 3862156 0 0 239264 0 0 182680 845570 842470 5518046 8841 6281 81.1812 81.1812 -68545.6 -81.1812 -14.2796 -0.216786 2.43088e+07 8336.34 8.96 17.25 4.44 -1 -1 8.96 4.5148 3.82602 0.1064 0.4211 0.01044 0.5685 -k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 4.38 vpr 62.99 MiB 0.06 9264 -1 -1 3 0.34 -1 -1 35828 -1 -1 67 99 1 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64500 99 130 363 493 1 257 297 12 12 144 clb auto 24.6 MiB 0.09 680 63.0 MiB 0.31 0.00 2.11707 -200.924 -2.11707 2.11707 0.35 0.000447812 0.000391543 0.0444087 0.0389482 46 1554 9 5.66058e+06 4.1589e+06 378970. 2631.74 0.99 0.192486 0.173882 13238 73581 -1 1399 11 536 702 47667 15199 0 0 47667 15199 702 604 0 0 2590 2406 0 0 3049 2591 0 0 732 645 0 0 18356 4774 0 0 22238 4179 0 0 702 0 0 166 219 249 1754 0 0 2.5726 2.5726 -236.184 -2.5726 0 0 486261. 3376.82 0.14 0.06 0.09 -1 -1 0.14 0.0264707 0.0246842 0.009015 0.2199 0.07006 0.71 -k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml diffeq1.v common 15.25 vpr 66.60 MiB 0.04 9196 -1 -1 15 0.34 -1 -1 33800 -1 -1 38 162 0 5 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 68200 162 96 999 932 1 695 301 16 16 256 mult_36 auto 28.3 MiB 0.38 5319 66.6 MiB 0.87 0.02 19.8398 -1699.1 -19.8398 19.8398 0.81 0.00325251 0.00299341 0.283293 0.261851 52 13089 46 1.21132e+07 4.02797e+06 805949. 3148.24 7.76 1.31 1.21958 25992 162577 -1 9846 18 3212 6746 1832333 479853 0 0 1832333 479853 6746 4130 0 0 83202 81042 0 0 87213 83439 0 0 7287 4717 0 0 845931 157934 0 0 801954 148591 0 0 6746 0 0 3569 10561 10508 60078 0 0 22.6347 22.6347 -1930.29 -22.6347 0 0 1.06067e+06 4143.25 0.33 0.67 0.17 -1 -1 0.33 0.161302 0.150644 0.008112 0.3478 0.01672 0.6355 -k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml LU8PEEng.v common 996.40 vpr 494.88 MiB 22.39 218756 -1 -1 129 267.99 -1 -1 99888 -1 -1 1879 114 44 8 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 506760 114 102 29578 29304 1 15632 2147 53 53 2809 clb auto 260.9 MiB 191.57 220634 472.4 MiB 68.42 0.70 71.8738 -53056.4 -71.8738 71.8738 24.54 0.110159 0.0868923 10.02 7.42022 100 325445 25 1.63647e+08 1.2855e+08 1.82848e+07 6509.36 304.35 39.3532 31.5315 391934 3893229 -1 298752 20 59874 234960 40833107 8568320 0 0 40833107 8568320 227764 77072 0 0 686050 631530 0 0 836688 691957 0 0 236797 89234 0 0 19333666 3517691 0 0 19512142 3560836 0 0 227764 0 0 174383 784984 788441 5218106 7842 4774 80.9766 80.9766 -65930.3 -80.9766 -14.9191 -0.29436 2.30694e+07 8212.69 7.94 16.40 3.74 -1 -1 7.94 4.75095 4.05078 0.105 0.4055 0.01009 0.5844 -k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 5.38 vpr 62.74 MiB 0.05 9264 -1 -1 3 0.36 -1 -1 35792 -1 -1 67 99 1 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64244 99 130 363 493 1 263 297 12 12 144 clb auto 24.4 MiB 0.09 649 62.7 MiB 0.33 0.00 2.16091 -202.944 -2.16091 2.16091 0.33 0.000507638 0.000437562 0.048496 0.0422786 44 1463 11 5.66058e+06 4.1589e+06 360780. 2505.42 2.03 0.232524 0.209944 13094 71552 -1 1294 10 540 712 55023 17913 0 0 55023 17913 712 611 0 0 3174 2980 0 0 3910 3174 0 0 748 665 0 0 21386 5802 0 0 25093 4681 0 0 712 0 0 172 218 166 1678 0 0 2.73944 2.73944 -239.112 -2.73944 0 0 470765. 3269.20 0.15 0.06 0.09 -1 -1 0.15 0.0265057 0.024924 0.007342 0.2175 0.07874 0.7037 -k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml diffeq1.v common 24.74 vpr 66.65 MiB 0.05 9224 -1 -1 15 0.50 -1 -1 33872 -1 -1 37 162 0 5 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 68252 162 96 999 932 1 693 300 16 16 256 mult_36 auto 28.4 MiB 0.36 5443 66.7 MiB 0.58 0.01 19.8168 -1845.14 -19.8168 19.8168 0.89 0.00176262 0.00159591 0.168094 0.153411 58 11556 22 1.21132e+07 3.97408e+06 904549. 3533.39 17.33 1.51308 1.40429 27012 180273 -1 9640 16 2906 5793 1979933 492802 0 0 1979933 492802 5793 3688 0 0 71844 70501 0 0 74798 72037 0 0 6258 3907 0 0 900286 171265 0 0 920954 171404 0 0 5793 0 0 2922 8001 7527 46387 0 0 22.5704 22.5704 -2087.7 -22.5704 0 0 1.15318e+06 4504.63 0.37 0.71 0.23 -1 -1 0.37 0.141994 0.134135 0.008124 0.3706 0.01764 0.6117 -k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1021.59 vpr 548.05 MiB 19.51 218928 -1 -1 129 296.27 -1 -1 99848 -1 -1 1929 114 44 8 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 561200 114 102 29578 29304 1 16195 2197 53 53 2809 clb auto 257.2 MiB 180.75 225731 469.2 MiB 70.57 0.64 71.2051 -56586.2 -71.2051 71.2051 25.48 0.0960329 0.0717734 10.2037 7.65134 106 334601 44 1.63647e+08 1.31245e+08 1.92313e+07 6846.31 314.34 54.1981 43.6121 403166 4123989 -1 305229 20 60619 237108 42635851 9317517 0 0 42635851 9317517 228871 77997 0 0 692955 630216 0 0 858439 699026 0 0 238634 91774 0 0 20118740 3897849 0 0 20498212 3920655 0 0 228871 0 0 174731 804875 783924 5195410 8529 5321 81.4442 81.4442 -70911.6 -81.4442 -29.8706 -0.216786 2.43532e+07 8669.70 10.11 16.33 4.06 -1 -1 10.11 4.47824 3.80781 0.1071 0.4214 0.01039 0.5683 -k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 5.99 vpr 62.96 MiB 0.07 9252 -1 -1 3 0.35 -1 -1 35808 -1 -1 67 99 1 0 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 64468 99 130 363 493 1 263 297 12 12 144 clb auto 24.5 MiB 0.11 649 63.0 MiB 0.37 0.01 2.16091 -202.944 -2.16091 2.16091 0.38 0.000963701 0.000839925 0.0527135 0.0463543 46 1388 11 5.66058e+06 4.1589e+06 378970. 2631.74 2.54 0.3613 0.326179 13238 73581 -1 1334 9 562 734 40619 13255 0 0 40619 13255 734 613 0 0 2301 2099 0 0 2981 2301 0 0 759 672 0 0 15690 4255 0 0 18154 3315 0 0 734 0 0 172 201 186 1733 0 0 2.65978 2.65978 -238.277 -2.65978 0 0 486261. 3376.82 0.15 0.05 0.10 -1 -1 0.15 0.0219337 0.0205116 0.00853 0.194 0.07164 0.7343 -k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml diffeq1.v common 20.96 vpr 66.96 MiB 0.03 9100 -1 -1 15 0.48 -1 -1 33900 -1 -1 36 162 0 5 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 68572 162 96 999 932 1 694 299 16 16 256 mult_36 auto 28.7 MiB 0.31 5501 67.0 MiB 1.05 0.02 19.6423 -1814.6 -19.6423 19.6423 0.91 0.00319343 0.00289598 0.30405 0.277653 50 13469 37 1.21132e+07 3.92018e+06 780512. 3048.87 13.79 1.58619 1.46576 25484 153448 -1 10121 16 3347 6633 2069744 539869 0 0 2069744 539869 6633 4314 0 0 82007 80695 0 0 85259 82141 0 0 7131 4621 0 0 937469 177303 0 0 951245 190795 0 0 6633 0 0 3324 9953 8651 54273 0 0 22.2763 22.2763 -2109.59 -22.2763 0 0 1.00276e+06 3917.05 0.21 0.45 0.12 -1 -1 0.21 0.0841273 0.0794271 0.008259 0.3412 0.01567 0.6432 -k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml LU8PEEng.v common 948.67 vpr 487.48 MiB 18.31 218888 -1 -1 129 296.75 -1 -1 99780 -1 -1 1844 114 44 8 success v8.0.0-7451-g4adf6aecc release IPO VTR_ASSERT_LEVEL=3 GNU 7.5.0 on Linux-4.15.0-197-generic x86_64 2023-04-04T13:43:47 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 499176 114 102 29578 29304 1 15489 2112 52 52 2704 clb auto 258.7 MiB 179.98 216942 459.9 MiB 65.57 0.51 69.6889 -51688.7 -69.6889 69.6889 24.56 0.0827871 0.0603819 9.73272 7.29235 100 317793 47 1.58905e+08 1.26664e+08 1.75747e+07 6499.51 250.38 34.2018 27.4268 377610 3742418 -1 292314 20 59741 234164 42037424 9401953 0 0 42037424 9401953 227168 77940 0 0 656880 602863 0 0 806478 662354 0 0 237048 91006 0 0 19941141 3947182 0 0 20168709 4020608 0 0 227168 0 0 173797 766659 778544 5129032 7569 6429 79.6068 79.6068 -64359.3 -79.6068 -34.6304 -0.295467 2.21759e+07 8201.15 7.51 16.94 3.57 -1 -1 7.51 4.52987 3.85745 0.1044 0.3967 0.0103 0.593 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time total_power routing_power_perc clock_power_perc tile_power_perc + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.74 vpr 66.08 MiB 0.05 9544 -1 -1 3 0.32 -1 -1 40184 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67664 99 130 363 493 1 258 298 12 12 144 clb auto 27.7 MiB 0.09 672 70943 23318 36188 11437 66.1 MiB 0.20 0.00 1.86328 -197.512 -1.86328 1.86328 0.36 0.000762137 0.000701086 0.060737 0.0558391 50 1455 11 5.66058e+06 4.21279e+06 406292. 2821.48 0.92 0.21149 0.191057 13526 77840 -1 1389 8 490 582 50837 17408 2.46581 2.46581 -230.196 -2.46581 0 0 520805. 3616.70 0.16 0.04 0.08 -1 -1 0.16 0.021148 0.0196903 0.008146 0.2397 0.0807 0.6796 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml diffeq1.v common 13.46 vpr 70.11 MiB 0.04 9824 -1 -1 15 0.43 -1 -1 38264 -1 -1 40 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71796 162 96 999 932 1 694 303 16 16 256 mult_36 auto 31.6 MiB 0.30 5320 84714 26090 52054 6570 70.1 MiB 0.59 0.01 19.648 -1708.97 -19.648 19.648 0.80 0.0028767 0.00268848 0.264319 0.246472 48 12138 35 1.21132e+07 4.13576e+06 756778. 2956.16 7.12 1.05988 0.981087 25228 149258 -1 9432 18 3067 6192 1620719 406139 22.3982 22.3982 -1959.56 -22.3982 0 0 968034. 3781.38 0.33 0.49 0.15 -1 -1 0.33 0.13597 0.127506 0.007619 0.3575 0.0172 0.6253 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1059.26 vpr 562.22 MiB 16.13 219140 -1 -1 127 331.30 -1 -1 96012 -1 -1 2029 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 575716 114 102 29627 29353 1 15978 2297 55 55 3025 clb auto 267.3 MiB 28.96 234003 1683836 607119 1051442 25275 546.7 MiB 46.85 0.34 68.3523 -53170 -68.3523 68.3523 36.85 0.0719213 0.0627867 9.5243 7.85442 100 339702 26 1.75831e+08 1.36634e+08 1.97786e+07 6538.36 456.77 34.1522 28.0912 423192 4219482 -1 310907 20 61848 243643 50879072 12045971 78.5012 78.5012 -64967.5 -78.5012 -26.3502 -0.295467 2.49494e+07 8247.73 12.25 20.93 5.30 -1 -1 12.25 4.8113 4.13472 0.1072 0.426 0.01055 0.5635 + k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.74 vpr 66.27 MiB 0.05 9496 -1 -1 3 0.32 -1 -1 40112 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67856 99 130 363 493 1 258 298 12 12 144 clb auto 27.9 MiB 0.08 672 70943 23318 36188 11437 66.3 MiB 0.20 0.00 1.86328 -197.512 -1.86328 1.86328 0.37 0.000783044 0.000716906 0.0614155 0.0566201 50 1386 9 5.66058e+06 4.21279e+06 406292. 2821.48 0.91 0.2114 0.191111 13526 77840 -1 1452 10 517 625 52623 17011 2.43721 2.43721 -236.352 -2.43721 0 0 520805. 3616.70 0.16 0.04 0.09 -1 -1 0.16 0.0243724 0.022613 0.0093 0.2142 0.0715 0.7143 + k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml diffeq1.v common 13.86 vpr 70.13 MiB 0.03 9524 -1 -1 15 0.44 -1 -1 37960 -1 -1 40 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71816 162 96 999 932 1 694 303 16 16 256 mult_36 auto 31.9 MiB 0.32 5320 84714 26090 52054 6570 70.1 MiB 0.61 0.01 19.648 -1708.97 -19.648 19.648 0.83 0.00293262 0.00273315 0.265745 0.247262 48 11873 30 1.21132e+07 4.13576e+06 756778. 2956.16 7.25 1.05853 0.979011 25228 149258 -1 9630 20 3128 6289 1662868 414903 22.4475 22.4475 -2006.26 -22.4475 0 0 968034. 3781.38 0.35 0.53 0.16 -1 -1 0.35 0.15 0.140731 0.007922 0.3456 0.01651 0.6379 + k6_N10_I40_Fi6_L4_frac1_ff2_45nm.xml LU8PEEng.v common 994.33 vpr 552.59 MiB 16.55 219236 -1 -1 127 342.33 -1 -1 95828 -1 -1 1944 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 565852 114 102 29627 29353 1 15597 2212 54 54 2916 clb auto 268.9 MiB 50.60 221518 1586872 578325 985654 22893 540.9 MiB 44.98 0.35 68.3701 -53343.8 -68.3701 68.3701 34.93 0.0755308 0.0662182 9.32199 7.78353 100 324042 42 1.70873e+08 1.32054e+08 1.90496e+07 6532.79 365.01 37.6545 31.3221 408276 4062182 -1 296181 19 59976 238978 44510416 10454508 76.7969 76.7969 -64883.7 -76.7969 -31.9956 -0.296573 2.40310e+07 8241.08 12.15 20.80 4.59 -1 -1 12.15 5.55913 4.76389 0.1069 0.4119 0.01063 0.5774 + k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.92 vpr 66.50 MiB 0.05 9792 -1 -1 3 0.33 -1 -1 40180 -1 -1 67 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68096 99 130 363 493 1 257 297 12 12 144 clb auto 28.1 MiB 0.09 700 77517 27891 36222 13404 66.5 MiB 0.23 0.00 1.8655 -194.068 -1.8655 1.8655 0.39 0.000832815 0.000768825 0.0685075 0.0631234 38 1668 16 5.66058e+06 4.1589e+06 334530. 2323.13 0.97 0.240137 0.217685 13012 66834 -1 1321 8 523 701 46469 15551 2.50544 2.50544 -230.095 -2.50544 0 0 424691. 2949.24 0.14 0.04 0.07 -1 -1 0.14 0.0216457 0.0201862 0.00786 0.2126 0.07521 0.7122 + k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml diffeq1.v common 13.46 vpr 70.46 MiB 0.04 9552 -1 -1 15 0.43 -1 -1 38124 -1 -1 39 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72148 162 96 999 932 1 695 302 16 16 256 mult_36 auto 32.1 MiB 0.31 5526 88346 29456 52131 6759 70.5 MiB 0.66 0.01 19.7975 -1722.12 -19.7975 19.7975 0.85 0.00316218 0.00295321 0.30044 0.280893 48 12314 32 1.21132e+07 4.08187e+06 791884. 3093.30 6.55 1.12691 1.04522 26208 159478 -1 10068 17 3245 6921 2258540 575252 22.4982 22.4982 -1997.85 -22.4982 0 0 1.01413e+06 3961.44 0.37 0.64 0.16 -1 -1 0.37 0.136783 0.128505 0.007958 0.3524 0.01647 0.6312 + k6_N10_I47_Fi7_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1405.95 vpr 589.41 MiB 19.71 219444 -1 -1 127 356.39 -1 -1 96172 -1 -1 1859 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 603552 114 102 29627 29353 1 15973 2127 53 53 2809 clb auto 261.3 MiB 328.71 222278 1533503 559733 956793 16977 589.4 MiB 57.50 0.45 68.4418 -54377.1 -68.4418 68.4418 37.32 0.0936511 0.0838097 11.6223 9.60922 102 326168 30 1.63647e+08 1.27472e+08 1.94476e+07 6923.33 457.74 41.6041 34.2502 408308 4233793 -1 298268 18 56414 225905 41197351 8733558 78.5453 78.5453 -69368.3 -78.5453 -36.3744 -0.29436 2.43065e+07 8653.08 10.57 18.15 5.06 -1 -1 10.57 5.03729 4.34207 0.1093 0.4038 0.01017 0.586 + k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.89 vpr 66.56 MiB 0.05 9612 -1 -1 3 0.32 -1 -1 40160 -1 -1 67 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68156 99 130 363 493 1 257 297 12 12 144 clb auto 28.1 MiB 0.09 700 77517 27891 36222 13404 66.6 MiB 0.23 0.00 1.8655 -194.068 -1.8655 1.8655 0.40 0.000812546 0.000742837 0.0690348 0.0634297 40 1613 13 5.66058e+06 4.1589e+06 349084. 2424.19 0.91 0.233818 0.211083 13156 69019 -1 1410 15 565 790 65280 21720 2.57762 2.57762 -240.894 -2.57762 0 0 438335. 3043.99 0.15 0.06 0.08 -1 -1 0.15 0.0314654 0.0289257 0.008718 0.1922 0.06784 0.74 + k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml diffeq1.v common 12.35 vpr 70.32 MiB 0.04 9832 -1 -1 15 0.41 -1 -1 37804 -1 -1 39 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72012 162 96 999 932 1 695 302 16 16 256 mult_36 auto 32.1 MiB 0.32 5526 88346 29457 52131 6758 70.3 MiB 0.65 0.01 19.7975 -1722.11 -19.7975 19.7975 0.85 0.00307577 0.00287026 0.299082 0.279532 50 11623 29 1.21132e+07 4.08187e+06 817349. 3192.77 5.59 1.1488 1.06754 26464 163948 -1 10098 18 2916 5946 1801318 473961 22.4196 22.4196 -1994.57 -22.4196 0 0 1.05038e+06 4103.04 0.38 0.56 0.17 -1 -1 0.38 0.147416 0.138632 0.008323 0.3449 0.01546 0.6397 + k6_N10_I47_Fi7_L4_frac1_ff2_45nm.xml LU8PEEng.v common 1307.10 vpr 571.01 MiB 15.67 219192 -1 -1 127 334.31 -1 -1 95856 -1 -1 1787 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 584712 114 102 29627 29353 1 15296 2055 51 51 2601 clb auto 265.3 MiB 374.34 214756 1399368 501777 876146 21445 541.4 MiB 46.35 0.36 68.268 -52890.5 -68.268 68.268 34.05 0.0785134 0.0691 9.53829 7.98506 100 308644 26 1.52527e+08 1.23592e+08 1.77677e+07 6831.11 349.05 40.1926 33.455 377770 3888742 -1 284606 19 53738 217140 48131227 11569714 79.1143 79.1143 -67565.7 -79.1143 -28.6009 -0.295467 2.23379e+07 8588.19 10.42 22.83 4.54 -1 -1 10.42 5.6625 4.9037 0.1064 0.3854 0.009706 0.6049 + k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.65 vpr 66.61 MiB 0.05 9628 -1 -1 3 0.34 -1 -1 40180 -1 -1 67 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68212 99 130 363 493 1 263 297 12 12 144 clb auto 28.2 MiB 0.12 725 75537 25253 38718 11566 66.6 MiB 0.22 0.00 2.09427 -201.56 -2.09427 2.09427 0.41 0.000818377 0.000755294 0.0670725 0.0620884 30 1938 18 5.66058e+06 4.1589e+06 293405. 2037.53 0.61 0.175756 0.160407 12720 57274 -1 1603 9 561 700 51839 17115 2.51007 2.51007 -240.271 -2.51007 0 0 362583. 2517.93 0.13 0.04 0.06 -1 -1 0.13 0.0237098 0.0220877 0.00786 0.2202 0.06607 0.7138 + k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml diffeq1.v common 15.83 vpr 70.65 MiB 0.04 9680 -1 -1 15 0.44 -1 -1 38148 -1 -1 36 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72348 162 96 999 932 1 700 299 16 16 256 mult_36 auto 32.3 MiB 0.33 5223 90209 33846 50121 6242 70.7 MiB 0.64 0.01 19.7839 -1852.29 -19.7839 19.7839 0.89 0.00280833 0.0026145 0.291488 0.271351 52 12134 45 1.21132e+07 3.92018e+06 875283. 3419.07 8.70 1.1602 1.07363 27812 183157 -1 9477 20 3041 6124 1795223 489157 22.1237 22.1237 -2104.54 -22.1237 0 0 1.15281e+06 4503.17 0.43 0.59 0.19 -1 -1 0.43 0.155905 0.146156 0.008177 0.3556 0.01728 0.6271 + k6_N10_I53_Fi8_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1547.74 vpr 590.81 MiB 19.82 219176 -1 -1 127 345.46 -1 -1 95932 -1 -1 1812 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 604992 114 102 29627 29353 1 15860 2080 51 51 2601 clb auto 261.9 MiB 467.37 228985 1448728 518183 907928 22617 590.8 MiB 59.53 0.49 68.2607 -54342.2 -68.2607 68.2607 38.84 0.111811 0.0918736 12.3772 10.3055 102 325680 35 1.52527e+08 1.24939e+08 1.87472e+07 7207.70 469.66 38.0879 31.5706 391248 4169020 -1 297981 17 53267 212726 50503781 12094733 77.8268 77.8268 -69009.8 -77.8268 -28.2521 -0.293253 2.33621e+07 8981.95 11.27 22.36 4.91 -1 -1 11.27 5.1496 4.48001 0.1121 0.3854 0.009806 0.6048 + k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.56 vpr 66.88 MiB 0.05 9584 -1 -1 3 0.32 -1 -1 39756 -1 -1 67 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68484 99 130 363 493 1 263 297 12 12 144 clb auto 28.4 MiB 0.09 725 75537 25253 38718 11566 66.9 MiB 0.23 0.00 2.09427 -201.56 -2.09427 2.09427 0.40 0.000808205 0.000746957 0.0676058 0.0623494 30 1920 12 5.66058e+06 4.1589e+06 293405. 2037.53 0.59 0.16564 0.150995 12720 57274 -1 1580 11 512 649 52472 18377 2.62796 2.62796 -240.852 -2.62796 0 0 362583. 2517.93 0.13 0.05 0.06 -1 -1 0.13 0.026009 0.0241481 0.008524 0.1969 0.05822 0.7449 + k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml diffeq1.v common 14.32 vpr 70.34 MiB 0.04 9584 -1 -1 15 0.44 -1 -1 38096 -1 -1 37 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72024 162 96 999 932 1 698 300 16 16 256 mult_36 auto 32.2 MiB 0.33 5488 85555 27247 50866 7442 70.3 MiB 0.62 0.01 19.6421 -1806.15 -19.6421 19.6421 0.88 0.00311244 0.00287974 0.283765 0.263711 50 12404 42 1.21132e+07 3.97408e+06 848054. 3312.71 7.32 1.10889 1.02381 27304 172908 -1 9901 24 3384 7025 2002685 570702 22.0563 22.0563 -2084.87 -22.0563 0 0 1.09096e+06 4261.55 0.36 0.61 0.19 -1 -1 0.36 0.156712 0.146788 0.00842 0.3382 0.01565 0.6461 + k6_N10_I53_Fi8_L4_frac1_ff2_45nm.xml LU8PEEng.v common 1634.57 vpr 576.16 MiB 16.39 219268 -1 -1 127 357.65 -1 -1 95788 -1 -1 1718 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 589988 114 102 29627 29353 1 14984 1986 50 50 2500 clb memory auto 262.9 MiB 529.42 220134 1337132 472182 841198 23752 576.2 MiB 56.30 0.44 67.1098 -51403.3 -67.1098 67.1098 37.83 0.100372 0.0899401 12.1555 10.2819 100 322028 37 1.47946e+08 1.19873e+08 1.76909e+07 7076.35 495.73 36.2072 30.2122 373728 3941812 -1 286370 17 50987 207773 40913090 9389413 77.473 77.473 -67947.9 -77.473 -18.3152 -0.317384 2.21802e+07 8872.08 9.72 18.32 4.23 -1 -1 9.72 4.66131 4.07202 0.1106 0.3708 0.009806 0.6194 + k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.88 vpr 66.25 MiB 0.05 9840 -1 -1 3 0.33 -1 -1 40320 -1 -1 67 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67836 99 130 363 493 1 257 297 12 12 144 clb auto 27.9 MiB 0.09 659 76527 25390 38486 12651 66.2 MiB 0.23 0.00 2.00545 -201.087 -2.00545 2.00545 0.38 0.000805318 0.000743245 0.0671452 0.0620304 50 1488 10 5.66058e+06 4.1589e+06 406292. 2821.48 0.94 0.22131 0.200247 13526 77840 -1 1282 11 582 778 59483 20504 2.5573 2.5573 -236.812 -2.5573 0 0 520805. 3616.70 0.16 0.05 0.09 -1 -1 0.16 0.025443 0.0235807 0.007915 0.2331 0.08011 0.6868 + k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml diffeq1.v common 12.61 vpr 70.29 MiB 0.03 9612 -1 -1 15 0.45 -1 -1 37908 -1 -1 38 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71980 162 96 999 932 1 695 301 16 16 256 mult_36 auto 31.9 MiB 0.31 5339 80941 22721 51194 7026 70.3 MiB 0.55 0.01 19.6792 -1704.54 -19.6792 19.6792 0.75 0.00347658 0.00326925 0.241819 0.224471 48 12036 22 1.21132e+07 4.02797e+06 756778. 2956.16 6.20 0.903239 0.834087 25228 149258 -1 9951 15 3079 6142 1509059 376169 22.6337 22.6337 -1961.51 -22.6337 0 0 968034. 3781.38 0.34 0.47 0.16 -1 -1 0.34 0.125907 0.118459 0.007756 0.3561 0.01674 0.6271 + k6_N10_I40_Fi7_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1292.97 vpr 557.65 MiB 19.29 219228 -1 -1 127 348.10 -1 -1 96016 -1 -1 1957 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 571032 114 102 29627 29353 1 16248 2225 54 54 2916 clb auto 264.3 MiB 199.76 234145 1628353 602165 1005186 21002 538.9 MiB 51.03 0.38 68.8027 -56972.2 -68.8027 68.8027 34.34 0.0775113 0.0679183 10.2672 8.62462 106 345160 50 1.70873e+08 1.32754e+08 2.00350e+07 6870.71 488.43 43.0218 35.5994 419936 4302942 -1 314984 20 62143 240839 47895988 10874258 78.9943 78.9943 -70210 -78.9943 -30.9817 -0.293253 2.53677e+07 8699.49 13.79 20.78 5.42 -1 -1 13.79 5.06107 4.34939 0.1089 0.4298 0.01081 0.5594 + k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.89 vpr 66.43 MiB 0.05 9616 -1 -1 3 0.33 -1 -1 39848 -1 -1 67 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68020 99 130 363 493 1 257 297 12 12 144 clb auto 28.0 MiB 0.09 659 76527 25390 38486 12651 66.4 MiB 0.22 0.00 2.00545 -201.087 -2.00545 2.00545 0.37 0.000786213 0.000720681 0.0645108 0.0593717 50 1423 9 5.66058e+06 4.1589e+06 406292. 2821.48 0.95 0.217363 0.196078 13526 77840 -1 1299 9 520 690 41601 13176 2.54426 2.54426 -236.251 -2.54426 0 0 520805. 3616.70 0.16 0.04 0.09 -1 -1 0.16 0.0231857 0.0215665 0.008963 0.2073 0.0711 0.7216 + k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml diffeq1.v common 13.01 vpr 70.57 MiB 0.04 9596 -1 -1 15 0.44 -1 -1 38076 -1 -1 38 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72268 162 96 999 932 1 695 301 16 16 256 mult_36 auto 32.4 MiB 0.32 5339 80941 22721 51196 7024 70.6 MiB 0.55 0.01 19.6792 -1704.54 -19.6792 19.6792 0.76 0.00295608 0.00275832 0.238125 0.221155 48 12266 23 1.21132e+07 4.02797e+06 756778. 2956.16 6.55 0.946269 0.876043 25228 149258 -1 9984 20 3258 6524 1737989 432083 22.6636 22.6636 -1997.48 -22.6636 0 0 968034. 3781.38 0.34 0.53 0.16 -1 -1 0.34 0.143001 0.134067 0.008035 0.343 0.01614 0.6409 + k6_N10_I40_Fi7_L4_frac1_ff2_45nm.xml LU8PEEng.v common 1192.96 vpr 558.00 MiB 18.03 219212 -1 -1 127 347.32 -1 -1 96084 -1 -1 1877 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 571396 114 102 29627 29353 1 15577 2145 53 53 2809 clb auto 266.8 MiB 246.43 217727 1523225 558875 942057 22293 525.7 MiB 46.30 0.35 67.6647 -51147.5 -67.6647 67.6647 34.47 0.0787818 0.0691511 9.66714 8.06779 100 323583 42 1.63647e+08 1.28443e+08 1.82848e+07 6509.36 353.48 37.3509 30.9273 391934 3893229 -1 296484 20 60524 237665 45322602 10161554 77.5454 77.5454 -64651.4 -77.5454 -45.6474 -0.202746 2.30694e+07 8212.69 12.29 22.30 4.71 -1 -1 12.29 5.91024 5.08927 0.106 0.4037 0.01031 0.586 + k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.93 vpr 66.51 MiB 0.05 9716 -1 -1 3 0.33 -1 -1 40260 -1 -1 67 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68104 99 130 363 493 1 263 297 12 12 144 clb auto 28.1 MiB 0.09 695 77517 26159 38873 12485 66.5 MiB 0.22 0.00 1.86328 -200.12 -1.86328 1.86328 0.37 0.000744711 0.000688021 0.0646679 0.0596885 50 1548 21 5.66058e+06 4.1589e+06 406292. 2821.48 0.97 0.235908 0.213521 13526 77840 -1 1415 8 598 806 61993 19633 2.32035 2.32035 -236.72 -2.32035 0 0 520805. 3616.70 0.16 0.04 0.09 -1 -1 0.16 0.0218502 0.0203308 0.008703 0.2329 0.08021 0.6869 + k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml diffeq1.v common 12.60 vpr 70.43 MiB 0.03 9600 -1 -1 15 0.38 -1 -1 38036 -1 -1 37 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72124 162 96 999 932 1 693 300 16 16 256 mult_36 auto 32.3 MiB 0.32 5455 93579 32432 54464 6683 70.4 MiB 0.60 0.01 19.8829 -1776.63 -19.8829 19.8829 0.74 0.00251957 0.00235298 0.249652 0.232652 50 12280 48 1.21132e+07 3.97408e+06 780512. 3048.87 6.11 0.989724 0.916837 25484 153448 -1 10131 18 3381 6807 1786577 442242 22.2307 22.2307 -2120.83 -22.2307 0 0 1.00276e+06 3917.05 0.31 0.47 0.16 -1 -1 0.31 0.125563 0.117327 0.008004 0.3566 0.0162 0.6272 + k6_N10_I40_Fi8_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1397.00 vpr 551.62 MiB 18.14 219236 -1 -1 127 348.62 -1 -1 95840 -1 -1 1941 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 564856 114 102 29627 29353 1 16180 2209 54 54 2916 clb auto 263.4 MiB 254.74 223880 1569629 570558 973370 25701 536.5 MiB 53.83 0.42 66.4886 -55261.2 -66.4886 66.4886 36.51 0.0915758 0.0732128 11.4414 9.58828 102 336500 43 1.70873e+08 1.31892e+08 1.93878e+07 6648.75 536.41 43.1743 35.9339 411192 4120304 -1 303292 19 62650 242527 45184700 10621597 76.8855 76.8855 -69694.9 -76.8855 -19.8261 -0.293253 2.43088e+07 8336.34 12.14 20.13 5.19 -1 -1 12.14 5.05698 4.35847 0.1085 0.4124 0.01088 0.5767 + k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml ch_intrinsics.v common 3.60 vpr 66.70 MiB 0.05 9560 -1 -1 3 0.28 -1 -1 40320 -1 -1 67 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68296 99 130 363 493 1 263 297 12 12 144 clb auto 28.3 MiB 0.08 695 77517 26159 38873 12485 66.7 MiB 0.22 0.00 1.86328 -200.12 -1.86328 1.86328 0.33 0.000721048 0.00066196 0.0618623 0.0569881 50 1474 16 5.66058e+06 4.1589e+06 406292. 2821.48 0.87 0.208475 0.189154 13526 77840 -1 1391 10 574 783 45693 14206 2.3073 2.3073 -235.979 -2.3073 0 0 520805. 3616.70 0.15 0.04 0.07 -1 -1 0.15 0.0223786 0.0208355 0.009818 0.2046 0.0715 0.7239 + k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml diffeq1.v common 14.43 vpr 70.30 MiB 0.03 9588 -1 -1 15 0.45 -1 -1 37780 -1 -1 36 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71988 162 96 999 932 1 694 299 16 16 256 mult_36 auto 32.2 MiB 0.30 5376 88211 31342 50355 6514 70.3 MiB 0.60 0.01 20.0071 -1785.16 -20.0071 20.0071 0.83 0.00272692 0.00252794 0.26379 0.244888 48 13039 38 1.21132e+07 3.92018e+06 756778. 2956.16 7.62 1.02267 0.946006 25228 149258 -1 10168 19 3369 6880 2121908 535743 22.5371 22.5371 -2147.87 -22.5371 0 0 968034. 3781.38 0.32 0.64 0.16 -1 -1 0.32 0.147583 0.138509 0.00815 0.3369 0.01599 0.6471 + k6_N10_I40_Fi8_L4_frac1_ff2_45nm.xml LU8PEEng.v common 1357.33 vpr 546.61 MiB 17.82 219412 -1 -1 127 350.30 -1 -1 95884 -1 -1 1861 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 559724 114 102 29627 29353 1 15405 2129 53 53 2809 clb auto 264.9 MiB 278.00 219674 1535409 563087 948975 23347 523.6 MiB 52.01 0.40 68.0414 -51657.6 -68.0414 68.0414 34.76 0.0928211 0.0748935 11.8928 9.85428 104 322501 33 1.63647e+08 1.2758e+08 1.89544e+07 6747.73 477.69 45.4698 37.5711 400358 4064598 -1 298392 19 58890 232930 48503285 11199063 77.6573 77.6573 -63177.5 -77.6573 -33.6163 -0.299894 2.40419e+07 8558.89 10.81 21.12 4.95 -1 -1 10.81 5.09411 4.35788 0.1088 0.408 0.01062 0.5814 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/power_extended_circuit_list/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/power_extended_circuit_list/config/golden_results.txt index b2b7ffb508a..135ed2280ca 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/power_extended_circuit_list/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/power_extended_circuit_list/config/golden_results.txt @@ -1,15 +1,15 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time total_power routing_power_perc clock_power_perc tile_power_perc -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml bgm.v common 800.41 vpr 580.59 MiB 24.29 379656 -1 -1 22 432.84 -1 -1 152396 -1 -1 2559 257 0 11 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 594520 257 32 32168 31683 1 18900 2859 61 61 3721 clb auto 285.1 MiB 23.26 253233 580.6 MiB 39.60 0.33 15.7007 -22259.6 -15.7007 15.7007 30.43 0.0669927 0.0537706 7.2301 5.86993 78 401601 49 2.18169e+08 1.42274e+08 1.95891e+07 5264.48 134.80 30.0652 24.9324 467924 4120392 -1 371566 20 97862 434918 25460394 4104197 0 0 25460394 4104197 434918 163770 0 0 631659 535541 0 0 901186 633643 0 0 461892 183568 0 0 11692200 1293690 0 0 11338539 1293985 0 0 434918 0 0 348532 1962960 2054975 14186263 0 0 18.1969 18.1969 -25155.3 -18.1969 0 0 2.48035e+07 6665.81 7.73 9.23 2.76 -1 -1 7.73 3.94573 3.47309 0.1677 0.4523 0.02623 0.5214 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml blob_merge.v common 124.04 vpr 114.57 MiB 0.48 62564 -1 -1 18 75.52 -1 -1 67188 -1 -1 547 36 0 0 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 117324 36 100 6600 6700 1 2892 683 30 30 900 clb auto 71.1 MiB 3.19 46921 106.8 MiB 4.04 0.04 9.03391 -2674.61 -9.03391 9.03391 2.30 0.0193272 0.0162268 1.67834 1.47155 72 75020 48 4.8774e+07 2.948e+07 4.28420e+06 4760.23 17.56 5.37287 4.67068 107632 872270 -1 67129 14 12764 63969 3034575 393559 0 0 3034575 393559 62683 16297 0 0 86932 64609 0 0 126380 86981 0 0 65400 19178 0 0 1378497 106179 0 0 1314683 100315 0 0 62683 0 0 52556 480582 474877 2723846 1446 156 9.7156 9.7156 -2954.17 -9.7156 0 0 5.36707e+06 5963.41 1.52 1.27 0.57 -1 -1 1.52 0.676237 0.617607 0.02478 0.4043 0.04334 0.5523 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml boundtop.v common 5.14 vpr 55.98 MiB 0.73 47092 -1 -1 2 0.54 -1 -1 35804 -1 -1 84 114 0 0 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 57324 114 193 455 648 1 311 391 13 13 169 clb auto 17.5 MiB 0.07 806 56.0 MiB 0.21 0.00 1.77044 -224.083 -1.77044 1.77044 0.28 0.000538998 0.000490672 0.0454844 0.0415085 36 2252 18 6.63067e+06 4.5271e+06 367804. 2176.36 0.68 0.186149 0.173607 14500 70634 -1 1927 12 672 884 68765 18889 0 0 68765 18889 884 728 0 0 2641 2417 0 0 2974 2642 0 0 908 759 0 0 30133 6058 0 0 31225 6285 0 0 884 0 0 212 1117 1239 5716 0 0 2.41199 2.41199 -274.153 -2.41199 0 0 456028. 2698.39 0.10 0.04 0.04 -1 -1 0.10 0.0205206 0.0195082 0.005817 0.451 0.1102 0.4389 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 4.04 vpr 55.12 MiB 0.05 9248 -1 -1 3 0.24 -1 -1 35636 -1 -1 68 99 1 0 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 56444 99 130 363 493 1 258 298 12 12 144 clb auto 16.7 MiB 0.06 730 55.1 MiB 0.16 0.00 1.86328 -196.275 -1.86328 1.86328 0.22 0.0005608 0.000489618 0.0291311 0.0259443 50 1577 12 5.66058e+06 4.21279e+06 406292. 2821.48 1.38 0.144841 0.132256 13526 77840 -1 1496 9 503 612 57866 18952 0 0 57866 18952 612 553 0 0 2619 2490 0 0 2859 2620 0 0 630 575 0 0 23272 6684 0 0 27874 6030 0 0 612 0 0 109 136 166 1313 0 0 2.46581 2.46581 -231.6 -2.46581 0 0 520805. 3616.70 0.11 0.03 0.05 -1 -1 0.11 0.0122591 0.0116194 0.00832 0.2557 0.07901 0.6653 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml diffeq1.v common 11.59 vpr 58.77 MiB 0.04 9240 -1 -1 15 0.40 -1 -1 34392 -1 -1 40 162 0 5 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 60180 162 96 999 932 1 694 303 16 16 256 mult_36 auto 20.5 MiB 0.22 5389 58.8 MiB 0.43 0.01 19.7676 -1782.41 -19.7676 19.7676 0.51 0.00124538 0.00113196 0.144505 0.13178 50 12648 42 1.21132e+07 4.13576e+06 780512. 3048.87 6.53 0.708541 0.655075 25484 153448 -1 9978 17 3114 6384 1919594 506731 0 0 1919594 506731 6384 3918 0 0 77963 76627 0 0 80991 78134 0 0 6838 4323 0 0 847617 167989 0 0 899801 175740 0 0 6384 0 0 3304 9373 8940 55487 0 0 22.5564 22.5564 -2004.38 -22.5564 0 0 1.00276e+06 3917.05 0.22 0.34 0.09 -1 -1 0.22 0.0711376 0.0673561 0.007637 0.3619 0.01676 0.6213 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml diffeq2.v common 10.76 vpr 57.25 MiB 0.03 8532 -1 -1 14 0.37 -1 -1 33272 -1 -1 26 66 0 7 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 58628 66 96 719 590 1 526 195 18 18 324 mult_36 auto 18.9 MiB 0.23 4827 57.3 MiB 0.22 0.00 15.6921 -896.753 -15.6921 15.6921 0.78 0.000893904 0.000818269 0.0828432 0.0761803 40 12416 31 1.57076e+07 4.17324e+06 840073. 2592.82 5.08 0.406528 0.379067 30996 167808 -1 10246 17 3235 7078 3823005 906661 0 0 3823005 906661 7078 5332 0 0 127289 126096 0 0 132571 127870 0 0 8046 5861 0 0 1785378 319843 0 0 1762643 321659 0 0 7078 0 0 3862 11838 10946 50552 0 0 17.951 17.951 -1043.72 -17.951 0 0 1.05274e+06 3249.19 0.25 0.58 0.10 -1 -1 0.25 0.0586019 0.0557731 0.00912 0.319 0.01987 0.6611 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml LU8PEEng.v common 777.91 vpr 478.03 MiB 18.31 218792 -1 -1 129 248.80 -1 -1 98260 -1 -1 2018 114 44 8 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 489500 114 102 29578 29304 1 16035 2286 54 54 2916 clb auto 253.9 MiB 25.46 231009 477.3 MiB 34.69 0.27 69.6118 -57509.6 -69.6118 69.6118 25.15 0.0570113 0.0503337 7.30556 5.96083 100 337981 48 1.70873e+08 1.36042e+08 1.90496e+07 6532.79 316.39 27.392 22.5716 408276 4062182 -1 309689 19 61153 243064 45563750 10348878 0 0 45563750 10348878 235465 77399 0 0 696328 640331 0 0 852314 702439 0 0 244715 93011 0 0 21636056 4363065 0 0 21898872 4472633 0 0 235465 0 0 181010 843167 840258 5564161 8092 12329 80.487 80.487 -72900.8 -80.487 -35.5126 -0.296573 2.40310e+07 8241.08 8.43 13.80 2.96 -1 -1 8.43 3.62057 3.13185 0.1047 0.4234 0.01042 0.5662 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml mkDelayWorker32B.v common 83.37 vpr 293.47 MiB 0.87 71200 -1 -1 5 8.03 -1 -1 52248 -1 -1 456 506 47 0 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 300516 506 553 3285 3838 1 3022 1562 50 50 2500 memory auto 44.4 MiB 2.15 15312 293.5 MiB 3.64 0.03 6.1775 -1795.6 -6.1775 6.1775 21.72 0.0108844 0.0100145 1.50545 1.37901 38 23176 16 1.47946e+08 5.03323e+07 6.86584e+06 2746.33 28.46 5.58087 5.2171 251304 1421084 -1 22294 15 3861 5396 4216039 1050967 0 0 4216039 1050967 4666 4492 0 0 106493 105158 0 0 109198 107014 0 0 4937 4682 0 0 1968003 409784 0 0 2022742 419837 0 0 4666 0 0 819 16012 11798 19152 770 2347 7.11612 7.11612 -2254.2 -7.11612 -2.30143 -0.218188 8.69095e+06 3476.38 2.73 1.07 0.86 -1 -1 2.73 0.456438 0.433292 0.172 0.1416 0.03943 0.819 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml mkPktMerge.v common 21.16 vpr 60.43 MiB 0.14 16412 -1 -1 2 0.09 -1 -1 33332 -1 -1 26 311 15 0 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 61876 311 156 972 1128 1 953 508 28 28 784 memory auto 21.9 MiB 0.55 8782 60.4 MiB 0.64 0.01 4.18654 -4307.38 -4.18654 4.18654 1.93 0.00207108 0.00179299 0.231376 0.199499 40 14897 15 4.25198e+07 9.62124e+06 2.13295e+06 2720.61 11.89 1.05836 0.944336 76686 431115 -1 14227 15 2647 3051 3333719 992039 0 0 3333719 992039 3051 2757 0 0 83894 83233 0 0 85046 84086 0 0 3062 2801 0 0 1584724 408285 0 0 1573942 410877 0 0 3051 0 0 404 3347 3146 12768 0 0 4.6476 4.6476 -5304.43 -4.6476 -11.1197 -0.340786 2.67004e+06 3405.67 0.70 0.66 0.25 -1 -1 0.70 0.100632 0.0928728 0.08042 0.1653 0.01808 0.8166 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml mkSMAdapter4B.v common 15.63 vpr 67.67 MiB 0.39 29912 -1 -1 7 2.83 -1 -1 39204 -1 -1 167 193 5 0 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 69292 193 205 2232 2437 1 1226 570 20 20 400 memory auto 30.0 MiB 0.73 9310 67.7 MiB 0.97 0.01 4.4031 -2593.9 -4.4031 4.4031 0.91 0.00284866 0.0025004 0.307188 0.26894 50 16747 19 2.07112e+07 1.17403e+07 1.26944e+06 3173.59 4.04 1.21031 1.08002 40848 252947 -1 15013 15 4340 10982 889491 204175 0 0 889491 204175 10462 6020 0 0 34079 31378 0 0 38360 34204 0 0 11033 6555 0 0 412486 63896 0 0 383071 62122 0 0 10462 0 0 6288 25320 23988 161436 528 159 5.25552 5.25552 -3114.14 -5.25552 -10.4479 -0.360359 1.63222e+06 4080.54 0.40 0.32 0.15 -1 -1 0.40 0.173959 0.162211 0.02923 0.2147 0.02573 0.7596 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml or1200.v common 54.07 vpr 101.82 MiB 0.57 40720 -1 -1 27 5.40 -1 -1 43380 -1 -1 246 385 2 1 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 104268 385 394 3979 4310 1 2376 1028 27 27 729 io auto 45.0 MiB 1.82 31150 81.8 MiB 3.46 0.03 12.7213 -11849.2 -12.7213 12.7213 1.90 0.00948468 0.0087314 1.13024 1.03344 82 50579 35 3.93038e+07 1.47499e+07 3.81403e+06 5231.86 28.14 4.57068 4.13913 91857 789111 -1 44932 15 10290 36318 3663270 734163 0 0 3663270 734163 34841 14383 0 0 80413 71874 0 0 102130 80595 0 0 36425 16280 0 0 1726287 273421 0 0 1683174 277610 0 0 34841 0 0 25139 119387 115958 683911 1618 176 14.1282 14.1282 -13598.2 -14.1282 0 0 4.78922e+06 6569.57 1.30 1.05 0.52 -1 -1 1.30 0.401523 0.373169 0.02326 0.4658 0.02725 0.507 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml raygentop.v common 27.33 vpr 69.96 MiB 0.38 32664 -1 -1 8 1.87 -1 -1 40020 -1 -1 135 214 0 9 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 71636 214 305 2625 2741 1 1503 663 22 22 484 mult_36 auto 32.0 MiB 0.73 12787 70.0 MiB 1.25 0.01 4.30664 -2476.68 -4.30664 4.30664 1.13 0.00304156 0.00272544 0.358006 0.320596 50 28034 45 2.50602e+07 1.08397e+07 1.56759e+06 3238.82 13.75 1.63559 1.49636 49974 314245 -1 22374 16 6434 14370 3700962 819988 0 0 3700962 819988 14019 8523 0 0 119213 115659 0 0 124460 119295 0 0 14755 9187 0 0 1712801 277737 0 0 1715714 289587 0 0 14019 0 0 7689 26193 27956 154153 366 21 4.90516 4.90516 -3018.11 -4.90516 0 0 2.01671e+06 4166.75 0.52 0.82 0.19 -1 -1 0.52 0.211409 0.199514 0.02256 0.4757 0.04224 0.4821 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml sha.v common 510.52 abc 92.95 MiB 0.87 38464 -1 -1 20 489.93 -1 -1 95176 -1 -1 233 38 0 0 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 77164 38 36 3404 3440 1 1306 307 20 20 400 clb auto 39.2 MiB 1.16 14677 75.4 MiB 0.77 0.01 11.7434 -4242.54 -11.7434 11.7434 0.83 0.00380369 0.00330008 0.280557 0.238246 58 24115 50 2.07112e+07 1.25573e+07 1.47096e+06 3677.41 5.36 1.56117 1.32271 43240 297040 -1 21385 14 5402 21727 740679 122372 0 0 740679 122372 18019 6975 0 0 27769 22068 0 0 37821 27774 0 0 18750 8013 0 0 325587 30467 0 0 312733 27075 0 0 18019 0 0 12976 79344 80077 378720 4407 1386 13.8548 13.8548 -4976.67 -13.8548 0 0 1.87544e+06 4688.60 0.42 0.36 0.18 -1 -1 0.42 0.220456 0.199854 0.01066 0.3896 0.03116 0.5793 -k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml mcml.v common 6842.27 vpr 1.64 GiB 58.61 923592 -1 -1 76 5668.21 -1 -1 448304 -1 -1 7370 36 159 27 success v8.0.0-7665-g5d69764bf Release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T18:37:45 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 1723544 36 356 134771 133552 1 43112 7948 102 102 10404 clb auto 886.7 MiB 58.41 535651 1683.1 MiB 143.35 0.92 62.9913 -301355 -62.9913 62.9913 87.48 0.161341 0.126626 24.2595 19.3512 88 721453 30 6.36957e+08 4.94984e+08 6.24837e+07 6005.73 430.04 80.6341 65.9975 1388044 13170686 -1 681713 20 155665 477226 80025365 19650266 0 0 80025365 19650266 429713 211876 0 0 1554026 1430579 0 0 1828389 1563910 0 0 450293 241761 0 0 37959582 8069612 0 0 37803362 8132528 0 0 429713 0 0 277252 1125617 1106746 5157413 50313 507495 70.1152 70.1152 -371409 -70.1152 0 0 7.83483e+07 7530.59 25.72 26.50 9.44 -1 -1 25.72 10.0902 8.74154 0.3006 0.3894 0.01326 0.5974 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time total_power routing_power_perc clock_power_perc tile_power_perc + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml bgm.v common 1158.34 vpr 654.19 MiB 19.13 380172 -1 -1 22 623.27 -1 -1 153916 -1 -1 2560 257 0 11 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 669888 257 32 32041 31556 1 18759 2860 61 61 3721 clb auto 298.5 MiB 33.84 251753 1991476 696912 1265671 28893 654.2 MiB 76.52 0.64 16.5734 -22933.9 -16.5734 16.5734 46.82 0.105627 0.0935122 11.9299 9.92482 80 384548 22 2.18169e+08 1.42327e+08 2.00267e+07 5382.08 197.59 46.9746 39.1945 471644 4196100 -1 361024 19 92659 411237 25095698 4152723 18.7755 18.7755 -25578.3 -18.7755 0 0 2.52656e+07 6790.00 13.60 14.58 4.74 -1 -1 13.60 6.16129 5.35847 0.1659 0.4519 0.02586 0.5223 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml blob_merge.v common 210.67 vpr 146.54 MiB 0.60 63028 -1 -1 18 108.49 -1 -1 71564 -1 -1 547 36 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 150052 36 100 6600 6700 1 2892 683 30 30 900 clb auto 82.9 MiB 4.50 46820 253187 73719 164339 15129 118.4 MiB 6.06 0.06 8.52559 -2631.69 -8.52559 8.52559 3.99 0.0212439 0.0189993 2.12129 1.8644 74 71372 20 4.8774e+07 2.948e+07 4.36038e+06 4844.86 61.15 7.41705 6.31772 108532 889332 -1 67949 15 13108 65279 3135957 404464 9.50971 9.50971 -2971.05 -9.50971 0 0 5.47246e+06 6080.51 2.37 1.92 0.93 -1 -1 2.37 1.02105 0.902468 0.02514 0.4084 0.04387 0.5478 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml boundtop.v common 6.49 vpr 67.57 MiB 0.73 47508 -1 -1 2 0.52 -1 -1 41768 -1 -1 84 114 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 69188 114 193 455 648 1 311 391 13 13 169 clb auto 29.3 MiB 0.09 834 108995 33700 58062 17233 67.6 MiB 0.29 0.00 1.88448 -225.656 -1.88448 1.88448 0.43 0.00112059 0.00104845 0.089609 0.0835437 34 2300 28 6.63067e+06 4.5271e+06 352978. 2088.63 1.13 0.348089 0.321345 14332 67287 -1 2036 17 818 1175 94455 25733 2.46912 2.46912 -288.033 -2.46912 0 0 434699. 2572.18 0.14 0.08 0.06 -1 -1 0.14 0.0433326 0.0403127 0.005685 0.4496 0.1079 0.4426 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml ch_intrinsics.v common 3.74 vpr 65.92 MiB 0.05 9620 -1 -1 3 0.33 -1 -1 39736 -1 -1 68 99 1 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67504 99 130 363 493 1 258 298 12 12 144 clb auto 27.5 MiB 0.09 672 70943 23318 36188 11437 65.9 MiB 0.20 0.00 1.86328 -197.512 -1.86328 1.86328 0.36 0.000739543 0.000679661 0.0568138 0.0522351 50 1455 11 5.66058e+06 4.21279e+06 406292. 2821.48 0.92 0.208883 0.188229 13526 77840 -1 1389 8 490 582 50837 17408 2.46581 2.46581 -230.196 -2.46581 0 0 520805. 3616.70 0.15 0.04 0.09 -1 -1 0.15 0.0203596 0.0189584 0.008146 0.2397 0.0807 0.6796 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml diffeq1.v common 13.51 vpr 70.20 MiB 0.03 9600 -1 -1 15 0.45 -1 -1 38172 -1 -1 40 162 0 5 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71884 162 96 999 932 1 694 303 16 16 256 mult_36 auto 31.8 MiB 0.30 5320 84714 26090 52054 6570 70.2 MiB 0.58 0.01 19.648 -1708.97 -19.648 19.648 0.83 0.00279075 0.00261198 0.247434 0.229988 48 12138 35 1.21132e+07 4.13576e+06 756778. 2956.16 6.97 1.00129 0.92608 25228 149258 -1 9432 18 3067 6192 1620719 406139 22.3982 22.3982 -1959.56 -22.3982 0 0 968034. 3781.38 0.31 0.48 0.16 -1 -1 0.31 0.131788 0.123742 0.007619 0.3575 0.0172 0.6253 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml diffeq2.v common 12.64 vpr 68.47 MiB 0.03 8952 -1 -1 14 0.32 -1 -1 37416 -1 -1 26 66 0 7 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70116 66 96 719 590 1 526 195 18 18 324 mult_36 auto 30.2 MiB 0.21 4682 40310 10498 25365 4447 68.5 MiB 0.38 0.01 15.8793 -906.107 -15.8793 15.8793 1.13 0.00248632 0.00233267 0.190053 0.178212 42 10912 21 1.57076e+07 4.17324e+06 871282. 2689.14 5.79 0.765043 0.713755 31320 173624 -1 9682 19 2916 6331 3327264 793878 17.6741 17.6741 -1048.13 -17.6741 0 0 1.09181e+06 3369.80 0.42 0.85 0.18 -1 -1 0.42 0.115787 0.109251 0.009271 0.3219 0.02028 0.6578 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml LU8PEEng.v common 1091.30 vpr 562.31 MiB 18.13 219300 -1 -1 127 353.11 -1 -1 95968 -1 -1 2029 114 44 8 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 575804 114 102 29627 29353 1 15978 2297 55 55 3025 clb auto 267.3 MiB 29.49 234003 1683836 607119 1051442 25275 546.8 MiB 48.62 0.37 68.3523 -53170 -68.3523 68.3523 37.08 0.0769347 0.0675732 9.85486 8.1608 100 339702 26 1.75831e+08 1.36634e+08 1.97786e+07 6538.36 456.99 34.7464 28.6617 423192 4219482 -1 310907 20 61848 243643 50879072 12045971 78.5012 78.5012 -64967.5 -78.5012 -26.3502 -0.295467 2.49494e+07 8247.73 12.68 22.05 5.38 -1 -1 12.68 5.08322 4.36898 0.1072 0.426 0.01055 0.5635 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml mkDelayWorker32B.v common 106.26 vpr 335.35 MiB 0.96 71632 -1 -1 5 12.05 -1 -1 56032 -1 -1 456 506 47 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 343396 506 553 3285 3838 1 3022 1562 50 50 2500 memory auto 55.5 MiB 3.54 14659 1179232 578011 414480 186741 335.3 MiB 4.86 0.05 6.55594 -1840.74 -6.55594 6.55594 33.92 0.0155105 0.0138677 2.17227 1.94208 38 22285 13 1.47946e+08 5.03323e+07 6.86584e+06 2746.33 21.13 5.99958 5.48447 251304 1421084 -1 21296 15 3873 4877 3915686 1028816 7.66154 7.66154 -2250.35 -7.66154 -5.14637 -0.200681 8.69095e+06 3476.38 4.85 1.73 1.50 -1 -1 4.85 0.715915 0.670325 0.1607 0.1407 0.0393 0.82 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml mkPktMerge.v common 22.27 vpr 72.46 MiB 0.13 16876 -1 -1 2 0.14 -1 -1 37528 -1 -1 26 311 15 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74204 311 156 972 1128 1 953 508 28 28 784 memory auto 33.6 MiB 0.51 8955 207160 77780 119683 9697 72.5 MiB 1.03 0.01 3.69226 -4200.25 -3.69226 3.69226 3.06 0.00435808 0.0038307 0.437679 0.381329 40 15069 15 4.25198e+07 9.62124e+06 2.13295e+06 2720.61 8.88 1.48424 1.3242 76686 431115 -1 14030 14 2950 3385 3423965 942900 4.17303 4.17303 -5108.83 -4.17303 -15.3521 -0.341744 2.67004e+06 3405.67 1.14 1.01 0.44 -1 -1 1.14 0.168866 0.154959 0.08846 0.1599 0.01826 0.8219 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml mkSMAdapter4B.v common 25.40 vpr 78.77 MiB 0.30 30468 -1 -1 7 3.68 -1 -1 41436 -1 -1 167 193 5 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80660 193 205 2232 2437 1 1226 570 20 20 400 memory auto 41.1 MiB 1.09 9257 243856 84624 132269 26963 78.8 MiB 1.61 0.02 4.68834 -2604.89 -4.68834 4.68834 1.42 0.00549349 0.00490057 0.6172 0.54805 48 18668 42 2.07112e+07 1.17403e+07 1.23055e+06 3076.38 9.54 2.18351 1.94145 40448 245963 -1 15042 14 4488 11178 1008301 239107 5.44858 5.44858 -3144.45 -5.44858 -7.47454 -0.340786 1.57502e+06 3937.55 0.60 0.48 0.26 -1 -1 0.60 0.232065 0.214211 0.02836 0.2152 0.02605 0.7588 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml or1200.v common 91.48 vpr 104.16 MiB 0.58 41288 -1 -1 27 7.16 -1 -1 46616 -1 -1 246 385 2 1 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 106664 385 394 3979 4310 1 2376 1028 27 27 729 io auto 56.3 MiB 2.69 31559 555930 205259 326847 23824 93.4 MiB 4.66 0.05 12.6971 -11648.5 -12.6971 12.6971 2.96 0.0132104 0.0122326 1.4659 1.31319 80 50044 42 3.93038e+07 1.47499e+07 3.74040e+06 5130.86 55.87 6.78959 6.09417 91129 774047 -1 45214 14 10349 36002 3490124 694286 14.2907 14.2907 -13368.7 -14.2907 0 0 4.71674e+06 6470.15 1.93 1.58 0.83 -1 -1 1.93 0.59438 0.548677 0.02316 0.4663 0.02683 0.5069 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml raygentop.v common 30.51 vpr 80.99 MiB 0.36 33012 -1 -1 8 2.23 -1 -1 40948 -1 -1 135 214 0 9 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82932 214 305 2625 2741 1 1503 663 22 22 484 mult_36 auto 43.1 MiB 1.11 12253 283785 97100 170993 15692 81.0 MiB 2.03 0.02 4.58213 -2427.86 -4.58213 4.58213 1.96 0.00541307 0.00486783 0.666164 0.60094 58 23474 23 2.50602e+07 1.08397e+07 1.81652e+06 3753.13 11.55 2.6726 2.4104 52870 368945 -1 20825 16 5391 12049 3054783 707858 4.9099 4.9099 -2928.51 -4.9099 0 0 2.31597e+06 4785.06 1.01 0.92 0.39 -1 -1 1.01 0.257046 0.238113 0.0229 0.4785 0.04658 0.4749 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml sha.v common 711.88 abc 96.87 MiB 1.28 38872 -1 -1 20 681.57 -1 -1 99196 -1 -1 233 38 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89216 38 36 3404 3440 1 1306 307 20 20 400 clb auto 50.6 MiB 1.72 14482 67582 17860 46315 3407 87.1 MiB 1.16 0.02 11.6953 -4259.7 -11.6953 11.6953 1.31 0.00607578 0.00539079 0.485389 0.418292 56 24652 33 2.07112e+07 1.25573e+07 1.41661e+06 3541.53 10.70 2.60228 2.26566 42444 283345 -1 21506 17 5569 21566 763045 127653 13.9544 13.9544 -5007.48 -13.9544 0 0 1.80858e+06 4521.44 0.64 0.66 0.30 -1 -1 0.64 0.42644 0.386599 0.0105 0.3852 0.02967 0.5852 + k6_N10_I40_Fi6_L4_frac1_ff1_45nm.xml mcml.v common 9174.66 vpr 1.83 GiB 70.62 924196 -1 -1 75 7360.39 -1 -1 449884 -1 -1 7392 36 159 27 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-15T16:56:44 gh-actions-runner-vtr-auto-spawned222 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 1915440 36 356 135102 133883 1 43386 7970 102 102 10404 clb auto 907.2 MiB 56.32 532514 10830306 4429071 6317643 83592 1870.5 MiB 143.40 1.02 61.2567 -311810 -61.2567 61.2567 88.47 0.136504 0.116673 21.1957 17.3482 88 719636 49 6.36957e+08 4.9617e+08 6.24837e+07 6005.73 1099.15 66.5978 55.11 1388044 13170686 -1 678648 19 156908 481793 78344450 16675821 68.8704 68.8704 -385254 -68.8704 -0.103902 -0.0259755 7.83483e+07 7530.59 27.93 22.78 8.75 -1 -1 27.93 8.39631 7.32436 0.3021 0.3871 0.01337 0.5995 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/vpr_reg_mcnc_equiv/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/vpr_reg_mcnc_equiv/config/golden_results.txt index 43d29c852de..76cfc3fc986 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/vpr_reg_mcnc_equiv/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1_odin/vpr_reg_mcnc_equiv/config/golden_results.txt @@ -1,20 +1,20 @@ - arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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 router_lookahead_computation_time crit_path_route_time crit_path_total_timing_analysis_time crit_path_total_sta_time - k6_N10_40nm.xml alu4.pre-vpr.blif common 6.73 vpr 62.10 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 96 14 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 63588 14 8 926 934 0 478 118 12 12 144 clb auto 24.5 MiB 0.47 4884 62.1 MiB 0.23 0.01 4.44219 -30.3043 -4.44219 nan 0.42 0.0021903 0.00183391 0.0980152 0.0855769 46 7149 37 5.3894e+06 5.17382e+06 394751. 2741.33 2.91 0.891781 0.775897 6951 23 5053 20987 796351 133240 5.13954 nan -33.4983 -5.13954 0 0 505417. 3509.84 0.18 0.40 0.153733 0.137135 - k6_N10_40nm.xml apex2.pre-vpr.blif common 9.07 vpr 63.96 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 114 38 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65500 39 3 1113 1117 0 655 156 13 13 169 clb auto 26.4 MiB 0.59 7870 64.0 MiB 0.43 0.01 5.12206 -15.0309 -5.12206 nan 0.52 0.00289627 0.00246029 0.157442 0.136647 64 12583 35 6.52117e+06 6.14392e+06 645515. 3819.62 3.68 0.899611 0.773936 12262 22 7328 35867 1657301 241927 5.33547 nan -15.7436 -5.33547 0 0 804841. 4762.37 0.30 0.68 0.225833 0.202698 - k6_N10_40nm.xml apex4.pre-vpr.blif common 7.88 vpr 62.30 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 95 9 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 63800 9 19 897 916 0 536 123 12 12 144 clb auto 24.5 MiB 0.51 6406 62.3 MiB 0.27 0.01 4.42576 -73.6135 -4.42576 nan 0.43 0.00211173 0.00180373 0.101799 0.0895754 64 11175 39 5.3894e+06 5.11993e+06 539713. 3748.01 3.77 0.867445 0.755659 9917 26 6242 32065 1470557 218968 4.79093 nan -80.7921 -4.79093 0 0 673071. 4674.10 0.24 0.62 0.203706 0.183701 - k6_N10_40nm.xml bigkey.pre-vpr.blif common 10.48 vpr 63.88 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 94 229 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65416 263 197 1372 1603 1 490 554 17 17 289 io auto 26.1 MiB 0.38 4483 63.9 MiB 0.84 0.02 2.49496 -621.054 -2.49496 2.49496 1.04 0.0029709 0.00266535 0.260983 0.232834 34 7614 24 1.21262e+07 5.06604e+06 661981. 2290.59 4.73 1.11739 1.00043 7244 21 2385 12332 703755 133974 2.79302 2.79302 -731.649 -2.79302 0 0 811075. 2806.49 0.38 0.41 0.196736 0.179503 - k6_N10_40nm.xml clma.pre-vpr.blif common 35.38 vpr 87.80 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 380 62 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89912 383 82 3674 4077 1 2327 845 22 22 484 clb auto 50.6 MiB 2.00 31688 87.8 MiB 4.28 0.03 7.64354 -320.974 -7.64354 7.64354 1.93 0.00658555 0.00575777 1.08369 0.922836 86 50397 34 2.15576e+07 2.04797e+07 2.58188e+06 5334.46 15.28 3.76643 3.19334 45664 30 23171 103951 5310888 689348 8.00174 8.00174 -356.375 -8.00174 0 0 3.23937e+06 6692.90 1.00 1.61 0.578299 0.50914 - k6_N10_40nm.xml des.pre-vpr.blif common 8.43 vpr 61.79 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 99 256 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 63276 256 245 954 1199 0 610 600 18 18 324 io auto 23.6 MiB 0.30 4929 61.8 MiB 0.65 0.01 3.47311 -656.936 -3.47311 nan 1.12 0.00280662 0.00259873 0.181055 0.166188 32 8273 43 1.37969e+07 5.33551e+06 718733. 2218.31 2.66 0.732007 0.679636 7084 18 2745 6851 371614 80901 4.07972 nan -758.692 -4.07972 0 0 879796. 2715.42 0.41 0.25 0.13524 0.127392 - k6_N10_40nm.xml diffeq.pre-vpr.blif common 6.66 vpr 62.50 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 97 64 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64000 64 39 1371 1410 1 553 200 12 12 144 clb auto 24.7 MiB 0.41 3679 62.5 MiB 0.31 0.01 4.82442 -961.44 -4.82442 4.82442 0.42 0.00239893 0.00203237 0.124701 0.108675 40 5108 26 5.3894e+06 5.22772e+06 346969. 2409.51 1.91 0.793996 0.68999 4725 22 3170 10542 393579 69153 5.25727 5.25727 -1077.47 -5.25727 0 0 435722. 3025.85 0.18 0.29 0.165918 0.148986 - k6_N10_40nm.xml dsip.pre-vpr.blif common 8.98 vpr 63.57 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 95 229 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65092 229 197 1370 1567 1 535 521 16 16 256 io auto 25.8 MiB 0.40 4561 63.6 MiB 0.86 0.02 2.5005 -628.06 -2.5005 2.5005 0.89 0.00334002 0.00304005 0.274314 0.245709 38 7841 24 1.05632e+07 5.11993e+06 632420. 2470.39 3.55 1.17098 1.0567 7234 21 2954 12412 674078 134874 2.86759 2.86759 -738.271 -2.86759 0 0 795593. 3107.78 0.35 0.41 0.198071 0.181997 - k6_N10_40nm.xml elliptic.pre-vpr.blif common 27.44 vpr 75.48 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 230 131 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77292 131 114 3421 3535 1 1217 475 18 18 324 clb auto 38.4 MiB 1.11 11570 75.5 MiB 1.37 0.02 6.53834 -3919.35 -6.53834 6.53834 1.16 0.00619897 0.00541421 0.469367 0.399191 52 19846 29 1.37969e+07 1.23956e+07 1.06130e+06 3275.60 8.32 2.62385 2.24634 17638 27 8530 40930 2146023 314235 7.29077 7.29077 -4559.02 -7.29077 0 0 1.39738e+06 4312.90 0.73 1.18 0.567664 0.500941 - k6_N10_40nm.xml ex1010.pre-vpr.blif common 34.18 vpr 78.71 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 302 10 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80600 10 10 2659 2669 0 1417 322 20 20 400 clb auto 42.2 MiB 1.81 26744 78.7 MiB 1.58 0.02 6.13037 -60.5222 -6.13037 nan 1.59 0.00849131 0.00704769 0.544255 0.466669 94 47980 40 1.74617e+07 1.6276e+07 2.27873e+06 5696.83 21.77 3.67277 3.11612 42286 31 14568 90613 5743576 639376 6.64251 nan -64.9523 -6.64251 0 0 2.85166e+06 7129.14 0.89 1.61 0.453105 0.398577 - k6_N10_40nm.xml ex5p.pre-vpr.blif common 4.87 vpr 60.63 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 78 8 -1 -1 success v8.0.0-7841-g74dc1fc14-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-06-08T03:59:32 redacted.eecg.utoronto.ca /home/redacted/vtr-verilog-to-routing/vtr_flow/tasks 62084 8 63 761 824 0 443 149 11 11 121 clb auto 22.8 MiB 0.24 4463 60.6 MiB 0.11 0.00 3.76649 -161.881 -3.76649 nan 0.19 0.000617534 0.000492662 0.031884 0.0273394 68 6642 32 4.36541e+06 4.20373e+06 471571. 3897.28 2.75 0.449263 0.389806 6273 24 4716 21787 907950 138607 3.98923 nan -180.549 -3.98923 0 0 579861. 4792.24 0.12 0.21 0.0713783 0.0651479 - k6_N10_40nm.xml frisc.pre-vpr.blif common 33.81 vpr 74.96 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 240 20 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76764 20 116 3175 3291 1 1254 376 18 18 324 clb auto 38.0 MiB 1.17 15538 75.0 MiB 1.46 0.02 7.84117 -4191.88 -7.84117 7.84117 1.19 0.0074489 0.00630636 0.559765 0.484374 68 26158 40 1.37969e+07 1.29346e+07 1.39738e+06 4312.90 17.07 4.27847 3.66049 21737 27 9074 38700 2043537 292479 8.98443 8.98443 -4756.73 -8.98443 0 0 1.71505e+06 5293.36 0.82 1.17 0.582609 0.512788 - k6_N10_40nm.xml misex3.pre-vpr.blif common 6.79 vpr 61.49 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 87 14 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 62968 14 14 828 842 0 488 115 12 12 144 clb auto 23.6 MiB 0.43 4813 61.5 MiB 0.17 0.01 4.15972 -54.4381 -4.15972 nan 0.42 0.00201964 0.00169484 0.0677982 0.0597447 50 7415 30 5.3894e+06 4.68878e+06 421775. 2928.99 2.60 0.700258 0.608016 7122 38 6126 27888 1140071 180016 4.78724 nan -61.1197 -4.78724 0 0 539713. 3748.01 0.20 0.60 0.229754 0.204855 - k6_N10_40nm.xml pdc.pre-vpr.blif common 34.32 vpr 79.66 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 307 16 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 81572 16 40 2839 2879 0 1501 363 20 20 400 clb auto 43.2 MiB 1.57 25581 79.7 MiB 1.81 0.03 6.08664 -222.907 -6.08664 nan 1.56 0.00929983 0.00777603 0.622507 0.530418 86 42950 30 1.74617e+07 1.65455e+07 2.10771e+06 5269.28 20.07 4.51046 3.81592 37535 22 13138 75558 3768186 483931 6.62739 nan -240.231 -6.62739 0 0 2.64451e+06 6611.28 0.82 1.18 0.383771 0.344257 - k6_N10_40nm.xml s298.pre-vpr.blif common 5.99 vpr 60.67 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 77 4 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 62128 4 6 726 732 1 378 87 11 11 121 clb auto 23.0 MiB 0.38 3746 60.7 MiB 0.14 0.00 5.69531 -46.7942 -5.69531 5.69531 0.33 0.00150828 0.00126634 0.0599851 0.052828 46 5716 28 4.36541e+06 4.14984e+06 324627. 2682.87 2.25 0.603521 0.526506 5546 25 3653 18859 752757 117703 6.64257 6.64257 -54.8549 -6.64257 0 0 415439. 3433.38 0.15 0.36 0.141144 0.127507 - k6_N10_40nm.xml s38584.1.pre-vpr.blif common 36.85 vpr 84.20 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 368 38 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 86224 39 304 4677 4982 1 2229 711 22 22 484 clb auto 47.2 MiB 1.42 16136 84.2 MiB 2.73 0.04 4.49676 -2912.49 -4.49676 4.49676 1.96 0.00950826 0.00810046 0.843709 0.7225 48 23783 47 2.15576e+07 1.9833e+07 1.52497e+06 3150.75 9.06 4.19377 3.60403 21525 24 12017 33433 1604566 281349 5.25783 5.25783 -3268.18 -5.25783 0 0 1.95947e+06 4048.49 0.99 1.16 0.704932 0.625994 - k6_N10_40nm.xml seq.pre-vpr.blif common 7.85 vpr 62.98 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 103 41 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64492 41 35 1006 1041 0 588 179 13 13 169 clb auto 25.5 MiB 0.53 6864 63.0 MiB 0.31 0.01 4.55829 -122.245 -4.55829 nan 0.45 0.00216787 0.00182917 0.109454 0.0947367 60 11800 30 6.52117e+06 5.55108e+06 604386. 3576.25 3.46 0.824134 0.712479 10420 28 5732 26479 1133536 174578 4.78956 nan -138.554 -4.78956 0 0 756297. 4475.13 0.27 0.54 0.205964 0.18393 - k6_N10_40nm.xml spla.pre-vpr.blif common 25.10 vpr 74.51 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 245 16 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 76300 16 46 2232 2278 0 1154 307 18 18 324 clb auto 37.2 MiB 1.18 16824 74.5 MiB 1.24 0.02 5.96403 -190.27 -5.96403 nan 1.15 0.00731693 0.00618791 0.432052 0.367843 66 28635 48 1.37969e+07 1.3204e+07 1.36437e+06 4211.00 11.57 2.87708 2.44999 26370 26 10237 58399 2817912 380547 6.23707 nan -215.709 -6.23707 0 0 1.68162e+06 5190.19 0.73 1.48 0.578526 0.513502 - k6_N10_40nm.xml tseng.pre-vpr.blif common 6.11 vpr 63.50 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 110 52 -1 -1 success 574ed3d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-5.10.35-v8 x86_64 2023-02-09T03:32:29 gh-actions-runner-vtr-auto-spawned1 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65024 52 122 1461 1583 1 509 284 13 13 169 clb auto 25.7 MiB 0.36 3115 63.5 MiB 0.31 0.01 4.30484 -1155.24 -4.30484 4.30484 0.52 0.00239921 0.00206728 0.112625 0.0977054 30 5558 39 6.52117e+06 5.92834e+06 338182. 2001.08 1.60 0.596931 0.520382 4412 22 2802 8038 312820 65313 5.10917 5.10917 -1299.77 -5.10917 0 0 415024. 2455.76 0.18 0.27 0.172664 0.155536 +arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time +k6_N10_40nm.xml alu4.pre-vpr.blif common 6.07 vpr 64.79 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 96 14 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66348 14 8 926 934 0 478 118 12 12 144 clb auto 27.3 MiB 0.40 4890 8499 1547 6397 555 64.8 MiB 0.19 0.01 4.30411 -31.1204 -4.30411 nan 0.37 0.0025308 0.00215882 0.0899043 0.0793119 46 7481 41 5.3894e+06 5.17382e+06 394751. 2741.33 2.57 0.784621 0.684588 11608 77537 -1 6887 22 4011 15773 516109 90362 4.67591 nan -33.9187 -4.67591 0 0 505417. 3509.84 0.16 0.31 0.08 -1 -1 0.16 0.143016 0.128366 +k6_N10_40nm.xml apex2.pre-vpr.blif common 12.34 vpr 66.76 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 114 38 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68360 39 3 1113 1117 0 655 156 13 13 169 clb auto 29.3 MiB 0.52 7935 15659 2991 11028 1640 66.8 MiB 0.34 0.01 4.92741 -14.6454 -4.92741 nan 0.45 0.00326239 0.00273555 0.141311 0.122251 68 13030 33 6.52117e+06 6.14392e+06 686008. 4059.22 7.88 1.5607 1.32761 16038 133463 -1 11835 21 6567 33176 1277336 184624 5.27803 nan -15.6183 -5.27803 0 0 842935. 4987.78 0.27 0.53 0.13 -1 -1 0.27 0.180088 0.160669 +k6_N10_40nm.xml apex4.pre-vpr.blif common 7.96 vpr 65.13 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 95 9 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66696 9 19 897 916 0 536 123 12 12 144 clb auto 27.4 MiB 0.45 6438 8968 1701 6804 463 65.1 MiB 0.21 0.01 4.47343 -73.0574 -4.47343 nan 0.37 0.0023972 0.00205499 0.0912586 0.0804037 62 11039 50 5.3894e+06 5.11993e+06 523024. 3632.11 4.43 0.987151 0.849778 13040 101000 -1 9472 26 6626 34582 1376638 204970 4.82975 nan -79.6217 -4.82975 0 0 643745. 4470.45 0.21 0.54 0.10 -1 -1 0.21 0.16793 0.149478 +k6_N10_40nm.xml bigkey.pre-vpr.blif common 10.17 vpr 66.36 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 94 229 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67948 263 197 1372 1603 1 490 554 17 17 289 io auto 28.4 MiB 0.33 4418 171104 52785 107808 10511 66.4 MiB 0.77 0.02 2.50072 -621.681 -2.50072 2.50072 0.92 0.00309872 0.00266365 0.233408 0.208695 36 7542 36 1.21262e+07 5.06604e+06 690635. 2389.74 5.40 1.1272 1.01064 21654 134225 -1 7060 19 2486 11874 613324 117315 2.78085 2.78085 -723.103 -2.78085 0 0 848598. 2936.33 0.33 0.26 0.12 -1 -1 0.33 0.109612 0.100563 +k6_N10_40nm.xml clma.pre-vpr.blif common 37.21 vpr 91.00 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 380 62 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 93188 383 82 3674 4077 1 2327 845 22 22 484 clb auto 53.6 MiB 1.80 31267 412124 152635 204610 54879 91.0 MiB 4.73 0.05 7.47585 -312.521 -7.47585 7.47585 1.76 0.0103669 0.0092138 1.28241 1.05783 84 53656 50 2.15576e+07 2.04797e+07 2.51888e+06 5204.31 18.68 4.74525 3.9249 52004 527324 -1 45510 31 23367 107028 5021544 674019 7.8817 7.8817 -343.677 -7.8817 0 0 3.18804e+06 6586.86 0.87 1.48 0.31 -1 -1 0.87 0.480732 0.419667 +k6_N10_40nm.xml des.pre-vpr.blif common 10.55 vpr 64.36 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 99 256 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65900 256 245 954 1199 0 610 600 18 18 324 io auto 26.2 MiB 0.24 5170 154869 45044 102028 7797 64.4 MiB 0.65 0.01 3.62435 -664.313 -3.62435 nan 1.14 0.00303774 0.00283048 0.197719 0.183667 34 8174 25 1.37969e+07 5.33551e+06 748928. 2311.50 5.31 1.02829 0.953324 24000 145208 -1 7456 24 2752 6594 388502 81269 4.34006 nan -764.522 -4.34006 0 0 917842. 2832.85 0.37 0.29 0.14 -1 -1 0.37 0.157159 0.147126 +k6_N10_40nm.xml diffeq.pre-vpr.blif common 7.60 vpr 65.48 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 97 64 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67056 64 39 1371 1410 1 553 200 12 12 144 clb auto 27.6 MiB 0.33 3803 26480 5673 19127 1680 65.5 MiB 0.30 0.01 4.81228 -954.181 -4.81228 4.81228 0.36 0.00260486 0.00233444 0.133003 0.117784 42 5586 22 5.3894e+06 5.22772e+06 360275. 2501.91 3.48 1.0327 0.897645 11180 70362 -1 4978 23 3033 10025 379090 65211 5.41396 5.41396 -1077.53 -5.41396 0 0 451357. 3134.42 0.16 0.25 0.07 -1 -1 0.16 0.136917 0.123283 +k6_N10_40nm.xml dsip.pre-vpr.blif common 7.50 vpr 66.64 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 95 229 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68244 229 197 1370 1567 1 535 521 16 16 256 io auto 28.7 MiB 0.33 4719 161836 50938 103448 7450 66.6 MiB 0.79 0.01 2.55942 -628.566 -2.55942 2.55942 0.78 0.00290561 0.00255691 0.250634 0.222586 36 8208 25 1.05632e+07 5.11993e+06 605313. 2364.50 2.72 0.848706 0.759386 19136 117450 -1 7476 24 2889 11085 601661 118409 3.08179 3.08179 -752.817 -3.08179 0 0 744064. 2906.50 0.29 0.36 0.10 -1 -1 0.29 0.179079 0.162337 +k6_N10_40nm.xml elliptic.pre-vpr.blif common 22.60 vpr 78.04 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 230 131 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79908 131 114 3421 3535 1 1217 475 18 18 324 clb auto 40.9 MiB 0.99 11253 126411 35653 84646 6112 78.0 MiB 1.31 0.02 6.86727 -3961.07 -6.86727 6.86727 1.04 0.00663872 0.00593268 0.512602 0.434451 50 18798 30 1.37969e+07 1.23956e+07 1.02665e+06 3168.68 6.20 2.11618 1.79852 27232 203968 -1 16839 30 8794 41217 1812646 269971 7.43094 7.43094 -4578.41 -7.43094 0 0 1.31637e+06 4062.87 0.50 0.99 0.20 -1 -1 0.50 0.47927 0.419332 +k6_N10_40nm.xml ex1010.pre-vpr.blif common 33.10 vpr 82.14 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 302 10 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84116 10 10 2659 2669 0 1417 322 20 20 400 clb auto 45.7 MiB 1.59 27044 60987 17180 41783 2024 82.1 MiB 1.51 0.02 6.33128 -61.2732 -6.33128 nan 1.43 0.00940461 0.0076833 0.567585 0.47702 92 46231 38 1.74617e+07 1.6276e+07 2.23535e+06 5588.37 19.70 3.85809 3.28618 44892 464844 -1 41031 23 12315 74941 3786397 446925 6.7446 nan -64.6536 -6.7446 0 0 2.81709e+06 7042.72 1.23 1.78 0.51 -1 -1 1.23 0.613196 0.546276 +k6_N10_40nm.xml ex5p.pre-vpr.blif common 7.22 vpr 63.84 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 78 8 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65372 8 63 761 824 0 443 149 11 11 121 clb auto 26.0 MiB 0.35 4386 12363 2288 9164 911 63.8 MiB 0.20 0.01 3.57272 -159.885 -3.57272 nan 0.30 0.00220506 0.00189053 0.0853102 0.0755085 60 6581 25 4.36541e+06 4.20373e+06 415439. 3433.38 4.34 0.988765 0.854799 10782 80709 -1 6074 24 4603 21281 754452 122569 4.15666 nan -180.098 -4.15666 0 0 519794. 4295.81 0.17 0.35 0.08 -1 -1 0.17 0.132875 0.118969 +k6_N10_40nm.xml frisc.pre-vpr.blif common 24.38 vpr 77.86 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 240 20 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79728 20 116 3175 3291 1 1254 376 18 18 324 clb auto 40.8 MiB 1.00 15316 84448 21608 57191 5649 77.9 MiB 1.22 0.02 8.10215 -4225.02 -8.10215 8.10215 1.06 0.00674827 0.00600474 0.483891 0.422166 64 24240 38 1.37969e+07 1.29346e+07 1.31637e+06 4062.87 9.12 2.75941 2.35598 30460 263268 -1 21638 31 9039 38390 1872289 276520 8.94296 8.94296 -4800.31 -8.94296 0 0 1.63962e+06 5060.55 0.64 1.06 0.26 -1 -1 0.64 0.519553 0.454465 +k6_N10_40nm.xml misex3.pre-vpr.blif common 9.33 vpr 64.57 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 87 14 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 66124 14 14 828 842 0 488 115 12 12 144 clb auto 26.8 MiB 0.37 4825 7927 1280 6128 519 64.6 MiB 0.19 0.01 4.14228 -53.1378 -4.14228 nan 0.38 0.00242545 0.00207747 0.0856943 0.0757414 60 7402 27 5.3894e+06 4.68878e+06 505417. 3509.84 5.72 1.23535 1.06899 12896 98790 -1 6820 27 5624 26487 956143 146571 4.40603 nan -57.9879 -4.40603 0 0 632511. 4392.44 0.20 0.44 0.09 -1 -1 0.20 0.1627 0.145831 +k6_N10_40nm.xml pdc.pre-vpr.blif common 31.93 vpr 82.43 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 307 16 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 84404 16 40 2839 2879 0 1501 363 20 20 400 clb auto 45.9 MiB 1.35 24742 75415 21527 50762 3126 82.4 MiB 1.62 0.03 6.09076 -226.074 -6.09076 nan 1.37 0.00932421 0.00762758 0.582784 0.483557 82 41591 49 1.74617e+07 1.65455e+07 2.00877e+06 5021.92 16.86 3.85256 3.20398 42096 413520 -1 36583 23 13448 77785 3454726 451976 6.817 nan -248.809 -6.817 0 0 2.51236e+06 6280.89 1.05 1.71 0.43 -1 -1 1.05 0.598579 0.521671 +k6_N10_40nm.xml s298.pre-vpr.blif common 5.53 vpr 63.62 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 77 4 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65144 4 6 726 732 1 378 87 11 11 121 clb auto 26.0 MiB 0.34 3794 4887 737 3962 188 63.6 MiB 0.13 0.00 5.75107 -47.4803 -5.75107 5.75107 0.30 0.00190472 0.0016554 0.0665635 0.0599984 44 6402 37 4.36541e+06 4.14984e+06 309216. 2555.51 2.15 0.542759 0.476337 9582 61621 -1 5464 31 4013 21407 843648 129067 6.53551 6.53551 -54.1344 -6.53551 0 0 401578. 3318.83 0.13 0.38 0.06 -1 -1 0.13 0.144276 0.129264 +k6_N10_40nm.xml s38584.1.pre-vpr.blif common 43.48 vpr 87.75 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 368 38 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89852 39 304 4677 4982 1 2229 711 22 22 484 clb auto 50.4 MiB 1.21 16540 260815 76679 170596 13540 87.7 MiB 2.54 0.03 4.30486 -2914.55 -4.30486 4.30486 1.74 0.00881974 0.00778731 0.817958 0.693317 50 23250 29 2.15576e+07 1.9833e+07 1.57675e+06 3257.74 16.64 4.93294 4.16686 40896 315528 -1 21935 24 12300 34302 1482300 264679 5.38319 5.38319 -3311.71 -5.38319 0 0 2.02322e+06 4180.21 0.86 1.04 0.30 -1 -1 0.86 0.592523 0.514758 +k6_N10_40nm.xml seq.pre-vpr.blif common 9.00 vpr 65.77 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 103 41 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67344 41 35 1006 1041 0 588 179 13 13 169 clb auto 28.2 MiB 0.48 6805 20339 4089 14118 2132 65.8 MiB 0.32 0.01 4.30872 -124.209 -4.30872 nan 0.45 0.00265853 0.00223755 0.118679 0.104361 58 12595 48 6.52117e+06 5.55108e+06 584019. 3455.73 4.88 0.997222 0.862162 15030 115912 -1 10412 27 6403 30982 1209689 183801 4.5826 nan -137.56 -4.5826 0 0 741857. 4389.69 0.24 0.50 0.11 -1 -1 0.24 0.168804 0.151179 +k6_N10_40nm.xml spla.pre-vpr.blif common 30.87 vpr 77.42 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 245 16 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 79280 16 46 2232 2278 0 1154 307 18 18 324 clb auto 40.4 MiB 1.03 16792 54127 13369 38397 2361 77.4 MiB 1.07 0.02 5.72007 -192.648 -5.72007 nan 1.07 0.00700376 0.00561536 0.403736 0.340883 70 27913 31 1.37969e+07 1.3204e+07 1.42834e+06 4408.47 19.34 3.72484 3.14416 31752 286880 -1 24212 20 9068 51429 2055146 284738 6.33879 nan -215.924 -6.33879 0 0 1.78317e+06 5503.60 0.76 1.10 0.29 -1 -1 0.76 0.43343 0.390124 +k6_N10_40nm.xml tseng.pre-vpr.blif common 15.96 vpr 66.12 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 110 52 -1 -1 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:52 gh-actions-runner-vtr-auto-spawned68 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67708 52 122 1461 1583 1 509 284 13 13 169 clb auto 28.3 MiB 0.31 3040 50666 12428 35214 3024 66.1 MiB 0.39 0.01 4.35011 -1184.05 -4.35011 4.35011 0.46 0.00243756 0.00218747 0.151219 0.134845 182 3991 21 6.52117e+06 5.92834e+06 1.59512e+06 9438.56 10.81 1.57927 1.37403 28470 343752 -1 3959 62 2500 7090 410715 53869 4.65244 4.65244 -1282.16 -4.65244 0 0 2.00730e+06 11877.5 0.70 0.43 0.46 -1 -1 0.70 0.281266 0.247293 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2/vtr_bidir/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2/vtr_bidir/config/golden_results.txt index 0b79ca95a28..cbf603eb7e4 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2/vtr_bidir/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2/vtr_bidir/config/golden_results.txt @@ -1,5 +1,5 @@ arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time -k4_n4_v7_bidir.xml alu4.blif common 17.97 vpr 69.13 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 475 14 -1 -1 success a1966c4-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-08-16T20:55:46 gh-actions-runner-vtr-auto-spawned4 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70788 14 8 1536 1544 0 1091 497 24 24 576 clb auto 31.6 MiB 0.29 14174 69.1 MiB 1.05 0.01 13.4464 -91.906 -13.4464 nan 1.36 0.00347385 0.00290782 0.247999 0.211234 28 20910 32 1.452e+07 1.425e+07 -1 -1 10.82 1.44391 1.22437 21174 279108 -1 19878 20 7201 27995 2276505 212795 0 0 2276505 212795 16951 11554 0 0 31392 28016 0 0 50562 32519 0 0 53034 24138 0 0 1089394 57817 0 0 1035172 58751 0 0 16951 0 0 12554 113703 115472 357504 11933 2267 16.2487 nan -109.749 -16.2487 0 0 -1 -1 0.57 0.72 0.17 -1 -1 0.57 0.18904 0.168713 +k4_n4_v7_bidir.xml alu4.blif common 17.97 vpr 69.13 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 475 14 -1 -1 success a1966c4-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-08-16T20:55:46 gh-actions-runner-vtr-auto-spawned4 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70788 14 8 1536 1544 0 1091 497 24 24 576 clb auto 31.6 MiB 0.29 14174 69.1 MiB 1.05 0.01 13.4464 -91.906 -13.4464 nan 1.36 0.00347385 0.00290782 0.247999 0.211234 28 20910 32 1.452e+07 1.425e+07 -1 -1 10.82 1.44391 1.22437 21174 279108 -1 19878 20 7201 27995 2276505 212795 0 0 2276505 212795 16951 11554 0 0 31392 28016 0 0 50562 32519 0 0 53034 24138 0 0 1089394 57817 0 0 1035172 58751 0 0 16951 0 0 12554 113703 115472 357504 11933 2267 18 nan -109.749 -18 0 0 -1 -1 0.57 0.72 0.17 -1 -1 0.57 0.18904 0.168713 k4_n4_v7_bidir.xml apex2.blif common 22.29 vpr 72.88 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 600 38 -1 -1 success a1966c4-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-08-16T20:55:46 gh-actions-runner-vtr-auto-spawned4 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74632 38 3 1916 1919 0 1509 641 27 27 729 clb auto 35.0 MiB 0.38 19839 72.9 MiB 1.44 0.02 14.9286 -44.0658 -14.9286 nan 1.71 0.00447423 0.0037738 0.318034 0.271255 31 29152 43 1.875e+07 1.8e+07 -1 -1 13.08 1.89132 1.61731 28210 394495 -1 28088 18 10308 35327 3215747 279851 0 0 3215747 279851 29720 16267 0 0 39742 35335 0 0 61341 40948 0 0 80107 33828 0 0 1543669 76168 0 0 1461168 77305 0 0 29720 0 0 24742 194098 209672 870568 6388 201 17.3073 nan -51.5022 -17.3073 0 0 -1 -1 0.80 0.88 0.22 -1 -1 0.80 0.204316 0.178519 k4_n4_v7_bidir.xml apex4.blif common 20.47 vpr 67.20 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 408 9 -1 -1 success a1966c4-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-08-16T20:55:46 gh-actions-runner-vtr-auto-spawned4 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68812 9 19 1271 1290 0 990 436 23 23 529 clb auto 29.6 MiB 0.24 13522 67.2 MiB 0.88 0.01 12.9459 -210.249 -12.9459 nan 1.31 0.00304529 0.00263188 0.202833 0.176455 31 21733 44 1.323e+07 1.224e+07 -1 -1 13.75 1.2743 1.09421 20514 283063 -1 19523 24 8011 29398 3111419 256159 0 0 3111419 256159 27108 14933 0 0 33129 29452 0 0 53736 33902 0 0 81514 31763 0 0 1464504 74767 0 0 1451428 71342 0 0 27108 0 0 31372 225582 235236 1191218 2710 504 24.98505 nan -264.732 -24.98505 0 0 -1 -1 0.57 0.82 0.17 -1 -1 0.57 0.173296 0.153258 k4_n4_v7_bidir.xml bigkey.blif common 26.60 vpr 73.27 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 456 229 -1 -1 success a1966c4-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-08-16T20:55:46 gh-actions-runner-vtr-auto-spawned4 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75028 229 197 2152 2349 1 1587 882 29 29 841 io auto 35.1 MiB 0.30 12959 73.3 MiB 2.51 0.02 7.48553 -1803.94 -7.48553 7.48553 2.28 0.00469204 0.00410364 0.51071 0.442793 18 20371 48 2.187e+07 1.368e+07 -1 -1 15.57 1.94898 1.6994 25794 279159 -1 18368 19 8448 24780 1743257 182995 0 0 1743257 182995 13766 10049 0 0 30505 25889 0 0 47823 31434 0 0 40964 21410 0 0 806666 46627 0 0 803533 47586 0 0 13766 0 0 6197 80865 80423 213680 11837 3693 9.06144 9.06144 -2390.66 -9.06144 0 0 -1 -1 0.61 0.68 0.17 -1 -1 0.61 0.253486 0.225627 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2/vtr_timing_update_diff/config/config.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2/vtr_timing_update_diff/config/config.txt index 2c06770b17d..18cc5a987ae 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2/vtr_timing_update_diff/config/config.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2/vtr_timing_update_diff/config/config.txt @@ -24,4 +24,4 @@ qor_parse_file=qor_standard.txt pass_requirements_file=pass_requirements.txt # Script parameters -script_params = --route_chan_width 100 -check_incremental_sta_consistency +script_params = --route_chan_width 110 -check_incremental_sta_consistency diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2_odin/vtr_bidir/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2_odin/vtr_bidir/config/golden_results.txt index 1de870f58e5..83634a0405b 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2_odin/vtr_bidir/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2_odin/vtr_bidir/config/golden_results.txt @@ -1,41 +1,41 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time -k4_n4_v7_bidir.xml alu4.blif common 17.44 vpr 69.42 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 475 14 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71084 14 8 1536 1544 0 1091 497 24 24 576 clb auto 31.9 MiB 0.32 14174 132286 40868 89655 1763 69.4 MiB 1.04 0.02 13.4464 -91.906 -13.4464 nan 1.49 0.00363085 0.00306325 0.261021 0.22274 29 20637 30 1.452e+07 1.425e+07 -1 -1 9.67 1.28299 1.09808 21748 295116 -1 20162 26 7151 24783 2647322 244785 20.7148 nan -122.12 -20.7148 0 0 -1 -1 0.64 0.84 0.20 -1 -1 0.64 0.222777 0.19565 -k4_n4_v7_bidir.xml apex2.blif common 24.85 vpr 72.72 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 600 38 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74464 38 3 1916 1919 0 1509 641 27 27 729 clb auto 34.9 MiB 0.39 20043 185695 57099 124547 4049 72.7 MiB 1.47 0.02 17.2847 -48.9949 -17.2847 nan 1.88 0.00525746 0.0044875 0.341191 0.289716 31 29455 45 1.875e+07 1.8e+07 -1 -1 14.99 2.02361 1.73036 28210 394495 -1 28318 19 10543 37881 3416794 290276 20.0732 nan -57.1823 -20.0732 0 0 -1 -1 0.84 1.01 0.24 -1 -1 0.84 0.250665 0.221169 -k4_n4_v7_bidir.xml apex4.blif common 20.26 vpr 67.46 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 408 9 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 69080 9 19 1271 1290 0 990 436 23 23 529 clb auto 29.8 MiB 0.23 13678 104512 30234 72991 1287 67.5 MiB 0.78 0.01 13.0701 -215.669 -13.0701 nan 1.21 0.00280494 0.00238752 0.201724 0.172293 35 20666 30 1.323e+07 1.224e+07 -1 -1 13.18 1.37379 1.18093 22098 325261 -1 22379 35 9612 33453 6478145 645684 25.1822 nan -367.139 -25.1822 0 0 -1 -1 0.62 1.41 0.18 -1 -1 0.62 0.224832 0.196507 -k4_n4_v7_bidir.xml bigkey.blif common 36.05 vpr 72.98 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 456 229 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74736 229 197 2152 2349 1 1587 882 29 29 841 io auto 35.2 MiB 0.36 12681 423682 131937 280629 11116 73.0 MiB 2.25 0.03 7.52913 -1787.21 -7.52913 7.52913 2.32 0.00489102 0.00427032 0.501032 0.435338 18 19318 32 2.187e+07 1.368e+07 -1 -1 25.01 2.2558 1.95381 25794 279159 -1 18057 22 8149 23937 1589608 166797 9.03766 9.03766 -2317.94 -9.03766 0 0 -1 -1 0.64 0.65 0.19 -1 -1 0.64 0.236769 0.210354 -k4_n4_v7_bidir.xml clma.blif common 188.81 vpr 192.38 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2523 62 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 196996 62 82 8460 8542 1 6360 2667 53 53 2809 clb auto 92.4 MiB 1.89 105809 1777419 713008 1051759 12652 171.4 MiB 18.44 0.17 26.856 -1426.32 -26.856 26.856 10.00 0.0268114 0.0216048 2.69497 2.17564 39 141378 37 7.803e+07 7.569e+07 -1 -1 126.54 10.991 8.81864 121914 1953961 -1 146171 37 50209 175999 42158191 3721713 43.2117 43.2117 -1915.12 -43.2117 0 0 -1 -1 4.17 7.48 0.81 -1 -1 4.17 1.28312 1.03136 -k4_n4_v7_bidir.xml des.blif common 22.99 vpr 71.62 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 449 256 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73336 256 245 1847 2092 0 1443 950 34 34 1156 io auto 33.9 MiB 0.35 15843 374390 116979 243880 13531 71.6 MiB 1.95 0.02 12.214 -2211.05 -12.214 nan 3.27 0.00507669 0.00440644 0.442277 0.389346 20 22359 42 3.072e+07 1.347e+07 -1 -1 9.31 1.86258 1.64697 36518 419916 -1 22126 18 8638 28641 2394088 234773 15.5292 nan -2754.74 -15.5292 0 0 -1 -1 1.00 0.73 0.28 -1 -1 1.00 0.224301 0.205468 -k4_n4_v7_bidir.xml diffeq.blif common 18.72 vpr 70.32 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 416 64 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72004 64 39 1935 1974 1 1104 519 23 23 529 clb auto 32.8 MiB 0.33 10636 127643 33462 91017 3164 70.3 MiB 0.91 0.01 11.0319 -2451.49 -11.0319 11.0319 1.21 0.00392968 0.00350365 0.277876 0.239483 24 16882 39 1.323e+07 1.248e+07 -1 -1 12.39 1.74848 1.49821 18402 227975 -1 14715 19 6503 22528 1510733 148184 14.2143 14.2143 -3213.8 -14.2143 0 0 -1 -1 0.44 0.54 0.13 -1 -1 0.44 0.201769 0.177203 -k4_n4_v7_bidir.xml dsip.blif common 22.13 vpr 70.24 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 390 229 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71924 229 197 1815 2012 1 1190 816 29 29 841 io auto 32.5 MiB 0.31 11596 366672 114248 242106 10318 70.2 MiB 1.94 0.02 6.92377 -1731.8 -6.92377 6.92377 2.33 0.00490446 0.0042461 0.46093 0.399107 20 16189 18 2.187e+07 1.17e+07 -1 -1 11.55 2.131 1.87016 26634 302857 -1 16475 18 6750 23374 1738361 174602 9.26105 9.26105 -2366.64 -9.26105 0 0 -1 -1 0.69 0.57 0.20 -1 -1 0.69 0.178407 0.159825 -k4_n4_v7_bidir.xml elliptic.blif common 50.97 vpr 89.56 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 996 131 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91712 131 114 4855 4969 1 2150 1241 34 34 1156 clb auto 52.8 MiB 0.72 31785 534521 184504 344581 5436 89.6 MiB 4.10 0.05 18.5215 -11025.6 -18.5215 18.5215 3.28 0.0119059 0.00985896 1.0367 0.869774 31 44332 26 3.072e+07 2.988e+07 -1 -1 32.26 5.29498 4.4589 44604 633776 -1 42013 19 11048 50685 4536764 379730 22.2122 22.2122 -14294.3 -22.2122 0 0 -1 -1 1.50 1.66 0.39 -1 -1 1.50 0.588739 0.515726 -k4_n4_v7_bidir.xml ex1010.blif common 103.93 vpr 109.96 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1500 10 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 112596 10 10 4608 4618 0 3623 1520 41 41 1681 clb auto 59.6 MiB 0.91 45315 752816 281185 469923 1708 101.4 MiB 7.26 0.08 24.3506 -238.09 -24.3506 nan 5.27 0.0126535 0.0100518 1.15415 0.942497 28 68536 48 4.563e+07 4.5e+07 -1 -1 74.66 6.2347 5.11744 61362 838935 -1 65084 17 25335 102015 7815580 723670 28.2781 nan -275.02 -28.2781 0 0 -1 -1 2.08 2.50 0.53 -1 -1 2.08 0.589482 0.506697 -k4_n4_v7_bidir.xml ex5p.blif common 14.92 vpr 66.04 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 346 8 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67628 8 63 1072 1135 0 907 417 21 21 441 clb auto 28.2 MiB 0.21 11649 95394 26684 66851 1859 66.0 MiB 0.74 0.01 12.2107 -549.822 -12.2107 nan 1.04 0.00298017 0.00268159 0.197682 0.173647 31 17501 31 1.083e+07 1.038e+07 -1 -1 9.16 1.21065 1.05362 17122 234247 -1 16400 26 8298 29461 2749441 242838 15.4943 nan -703.763 -15.4943 0 0 -1 -1 0.47 0.78 0.14 -1 -1 0.47 0.183378 0.161694 -k4_n4_v7_bidir.xml frisc.blif common 106.75 vpr 89.25 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1046 20 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 91388 20 116 4445 4561 1 2328 1182 35 35 1225 clb auto 52.5 MiB 0.82 38027 513436 174788 329424 9224 89.2 MiB 4.24 0.05 22.8124 -12212.1 -22.8124 22.8124 3.78 0.00984378 0.00877387 0.966239 0.811422 32 54923 33 3.267e+07 3.138e+07 -1 -1 83.79 4.92325 4.09207 48474 707469 -1 57066 30 18010 79873 15974450 1527181 34.7154 34.7154 -19995 -34.7154 0 0 -1 -1 1.72 4.08 0.47 -1 -1 1.72 0.775051 0.661693 -k4_n4_v7_bidir.xml misex3.blif common 18.73 vpr 68.29 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 432 14 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 69932 14 14 1411 1425 0 1075 460 23 23 529 clb auto 30.6 MiB 0.32 14069 110510 32966 75632 1912 68.3 MiB 0.85 0.01 13.2769 -167.707 -13.2769 nan 1.21 0.00324616 0.0027205 0.219988 0.185977 30 24468 50 1.323e+07 1.296e+07 -1 -1 12.09 1.17457 0.997604 20514 283063 -1 20028 17 7750 29304 2577901 229573 15.901 nan -202.534 -15.901 0 0 -1 -1 0.54 0.61 0.17 -1 -1 0.54 0.122953 0.109389 -k4_n4_v7_bidir.xml pdc.blif common 171.71 vpr 117.26 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1529 16 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 120072 16 40 4591 4631 0 3652 1585 42 42 1764 clb auto 60.9 MiB 1.22 70145 832915 321309 505590 6016 105.5 MiB 7.69 0.08 23.6438 -801.137 -23.6438 nan 5.69 0.0154547 0.0124982 1.3377 1.08519 44 102142 46 4.8e+07 4.587e+07 -1 -1 137.28 6.61883 5.46802 83766 1407084 -1 93305 18 22702 92798 12728960 976353 28.339 nan -994.51 -28.339 0 0 -1 -1 3.72 3.48 0.92 -1 -1 3.72 0.655128 0.563386 -k4_n4_v7_bidir.xml s298.blif common 23.42 vpr 72.67 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 569 4 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74412 4 6 1942 1948 1 1189 579 26 26 676 clb auto 35.2 MiB 0.32 13928 162183 48631 112366 1186 72.7 MiB 1.36 0.02 20.5855 -161.064 -20.5855 20.5855 1.80 0.0055618 0.00472782 0.398105 0.34059 24 20878 26 1.728e+07 1.707e+07 -1 -1 14.13 2.19818 1.86895 23472 293888 -1 19862 23 7216 40140 2990150 253336 25.0042 25.0042 -207.808 -25.0042 0 0 -1 -1 0.63 1.04 0.18 -1 -1 0.63 0.297513 0.261213 -k4_n4_v7_bidir.xml s38417.blif common 92.73 vpr 129.38 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1735 29 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 132480 29 106 7534 7640 1 4766 1870 44 44 1936 clb auto 75.5 MiB 1.31 46320 1026794 365793 646544 14457 121.0 MiB 10.73 0.10 16.9705 -10248.7 -16.9705 16.9705 6.78 0.019835 0.0160748 1.96127 1.58256 24 62144 35 5.292e+07 5.205e+07 -1 -1 54.97 8.5233 6.92732 66744 864380 -1 58564 18 26758 87164 5568643 555894 20.4325 20.4325 -12798.9 -20.4325 0 0 -1 -1 2.29 2.44 0.55 -1 -1 2.29 0.987495 0.842229 -k4_n4_v7_bidir.xml s38584.1.blif common 71.08 vpr 125.95 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1647 38 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 128976 38 304 7475 7779 1 4418 1989 43 43 1849 clb auto 74.6 MiB 1.32 44338 1202277 446289 732973 23015 117.8 MiB 10.57 0.13 13.476 -8715.74 -13.476 13.476 6.27 0.0163793 0.0124343 1.93474 1.55906 24 57922 30 5.043e+07 4.941e+07 -1 -1 35.72 6.04173 4.89691 63762 824815 -1 55172 15 20685 62389 4001137 407195 15.274 15.274 -10667.2 -15.274 0 0 -1 -1 1.95 1.73 0.51 -1 -1 1.95 0.763053 0.664617 -k4_n4_v7_bidir.xml seq.blif common 35.98 vpr 71.45 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 539 41 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73168 41 35 1791 1826 0 1383 615 26 26 676 clb auto 33.9 MiB 0.37 18170 183595 57158 121708 4729 71.5 MiB 1.43 0.02 13.4584 -384.563 -13.4584 nan 1.75 0.00466499 0.00399952 0.352038 0.3005 29 28903 40 1.728e+07 1.617e+07 -1 -1 26.29 1.97949 1.6902 25496 348308 -1 26879 29 10729 35034 4857656 420532 17.7535 nan -517.773 -17.7535 0 0 -1 -1 0.79 1.36 0.22 -1 -1 0.79 0.326225 0.285963 -k4_n4_v7_bidir.xml spla.blif common 84.67 vpr 97.52 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1232 16 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 99860 16 46 3706 3752 0 2880 1294 38 38 1444 clb auto 51.9 MiB 0.91 48320 593326 210099 381047 2180 89.7 MiB 5.08 0.06 19.804 -670.02 -19.804 nan 4.33 0.0109686 0.00872955 0.922311 0.756636 39 72696 43 3.888e+07 3.696e+07 -1 -1 55.39 5.05634 4.22744 62858 992060 -1 76544 39 25012 108571 26158736 2543466 37.3787 nan -1117.24 -37.3787 0 0 -1 -1 2.58 6.77 0.67 -1 -1 2.58 1.03185 0.873787 -k4_n4_v7_bidir.xml tseng.blif common 9.48 vpr 66.60 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 279 52 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68200 52 122 1483 1605 1 736 453 19 19 361 clb auto 28.8 MiB 0.20 6010 104793 27903 73131 3759 66.6 MiB 0.71 0.01 9.61652 -2176.65 -9.61652 9.61652 0.81 0.00337811 0.00293143 0.225685 0.197501 20 9821 48 8.67e+06 8.37e+06 -1 -1 4.93 1.02391 0.897111 11514 125901 -1 9683 24 4919 16156 1251159 137257 18.4476 18.4476 -3634.31 -18.4476 0 0 -1 -1 0.24 0.47 0.08 -1 -1 0.24 0.192534 0.171119 -k4_n4_v7_l1_bidir.xml alu4.blif common 26.57 vpr 69.29 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 475 14 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70952 14 8 1536 1544 0 1091 497 24 24 576 clb auto 31.7 MiB 0.31 14038 132286 40480 89756 2050 69.3 MiB 1.02 0.01 18.8338 -136.416 -18.8338 nan 2.13 0.00352168 0.00299109 0.273932 0.233388 21 16106 46 1.452e+07 1.425e+07 -1 -1 16.70 1.24963 1.06913 39160 271852 -1 14185 16 7135 28705 1954251 340264 20.0348 nan -150.466 -20.0348 0 0 -1 -1 0.72 0.82 0.21 -1 -1 0.72 0.168429 0.15049 -k4_n4_v7_l1_bidir.xml apex2.blif common 107.96 vpr 72.71 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 600 38 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74460 38 3 1916 1919 0 1509 641 27 27 729 clb auto 34.9 MiB 0.40 19885 205029 64844 135695 4490 72.7 MiB 1.62 0.02 18.2297 -54.2142 -18.2297 nan 2.84 0.00493427 0.00408727 0.385936 0.328263 24 23070 41 1.875e+07 1.8e+07 -1 -1 94.46 2.0691 1.75961 55250 396047 -1 20150 17 10295 37717 3295270 456089 19.7281 nan -58.6098 -19.7281 0 0 -1 -1 1.08 1.21 0.29 -1 -1 1.08 0.227 0.200295 -k4_n4_v7_l1_bidir.xml apex4.blif common 35.32 vpr 67.34 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 408 9 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68960 9 19 1271 1290 0 990 436 23 23 529 clb auto 29.7 MiB 0.25 13558 117728 36618 79402 1708 67.3 MiB 0.93 0.01 15.4514 -256.46 -15.4514 nan 1.92 0.00310336 0.00269028 0.234697 0.203953 25 16602 43 1.323e+07 1.224e+07 -1 -1 26.30 1.3031 1.12635 39522 283015 -1 13931 18 7749 28466 2777214 358914 16.5132 nan -276.242 -16.5132 0 0 -1 -1 0.74 0.87 0.22 -1 -1 0.74 0.145756 0.129708 -k4_n4_v7_l1_bidir.xml bigkey.blif common 26.41 vpr 72.77 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 456 229 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74512 229 197 2152 2349 1 1587 882 29 29 841 io auto 35.0 MiB 0.30 12767 444822 145271 288077 11474 72.8 MiB 2.44 0.03 9.91523 -2238.85 -9.91523 9.91523 3.43 0.00545049 0.00469794 0.600117 0.519323 13 12656 28 2.187e+07 1.368e+07 -1 -1 11.77 1.91937 1.66951 39906 235943 -1 12014 17 7519 22941 1304618 249715 11.9802 11.9802 -2661.92 -11.9802 0 0 -1 -1 0.65 0.70 0.19 -1 -1 0.65 0.237757 0.211357 -k4_n4_v7_l1_bidir.xml clma.blif common 364.66 vpr 233.05 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2523 62 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 238648 62 82 8460 8542 1 6360 2667 53 53 2809 clb auto 92.4 MiB 1.93 106250 1906828 766911 1124716 15201 221.5 MiB 19.46 0.17 38.7957 -1752.06 -38.7957 38.7957 14.25 0.0235555 0.0190246 2.72279 2.19106 32 106889 32 7.803e+07 7.569e+07 -1 -1 281.64 12.3104 9.95411 274482 2081397 -1 102260 16 40820 147435 22452188 4160096 42.337 42.337 -2091.56 -42.337 0 0 -1 -1 6.69 7.94 1.55 -1 -1 6.69 1.12296 0.957882 -k4_n4_v7_l1_bidir.xml des.blif common 35.92 vpr 87.26 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 449 256 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 89356 256 245 1847 2092 0 1443 950 34 34 1156 io auto 33.8 MiB 0.35 15948 383726 122306 247332 14088 87.3 MiB 2.05 0.03 15.9777 -2830.67 -15.9777 nan 4.94 0.00587598 0.00521456 0.492448 0.435243 13 16386 34 3.072e+07 1.347e+07 -1 -1 16.55 1.71915 1.53068 55296 328128 -1 15284 17 8535 28623 2331783 407957 16.94 nan -3054.8 -16.94 0 0 -1 -1 0.91 0.90 0.25 -1 -1 0.91 0.244 0.222984 -k4_n4_v7_l1_bidir.xml diffeq.blif common 24.43 vpr 70.25 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 416 64 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71940 64 39 1935 1974 1 1104 519 23 23 529 clb auto 32.8 MiB 0.30 10598 138063 36162 98499 3402 70.3 MiB 1.08 0.02 12.2512 -2895.83 -12.2512 12.2512 1.95 0.0046839 0.00396852 0.331079 0.284912 19 12324 46 1.323e+07 1.248e+07 -1 -1 15.46 1.86954 1.61149 32130 214167 -1 9951 18 6548 22867 1571604 268055 13.0903 13.0903 -3319.71 -13.0903 0 0 -1 -1 0.56 0.67 0.16 -1 -1 0.56 0.202353 0.178714 -k4_n4_v7_l1_bidir.xml dsip.blif common 22.61 vpr 70.55 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 390 229 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72248 229 197 1815 2012 1 1190 816 29 29 841 io auto 32.4 MiB 0.30 11385 385727 121997 253019 10711 70.6 MiB 2.09 0.02 10.2792 -2388.21 -10.2792 10.2792 3.47 0.00527809 0.00458139 0.509663 0.444255 13 11187 20 2.187e+07 1.17e+07 -1 -1 8.41 1.3622 1.19955 39906 235943 -1 10666 15 5973 21004 1125980 209113 10.6813 10.6813 -2649.67 -10.6813 0 0 -1 -1 0.65 0.58 0.18 -1 -1 0.65 0.195074 0.174713 -k4_n4_v7_l1_bidir.xml elliptic.blif common 256.93 vpr 103.23 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 996 131 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 105708 131 114 4855 4969 1 2150 1241 34 34 1156 clb auto 53.2 MiB 0.77 31282 587849 207319 373027 7503 99.8 MiB 4.24 0.05 22.9812 -14010 -22.9812 22.9812 4.90 0.0107819 0.00881581 0.985116 0.808559 24 35240 46 3.072e+07 2.988e+07 -1 -1 231.46 5.20843 4.33517 89088 639360 -1 30504 15 11812 52913 5079020 780401 24.3392 24.3392 -16223.2 -24.3392 0 0 -1 -1 1.99 2.04 0.53 -1 -1 1.99 0.469385 0.403404 -k4_n4_v7_l1_bidir.xml ex1010.blif common 102.78 vpr 136.41 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1500 10 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 139680 10 10 4608 4618 0 3623 1520 41 41 1681 clb auto 59.7 MiB 0.93 45908 779024 293384 483341 2299 134.7 MiB 7.21 0.08 32.4915 -315.42 -32.4915 nan 7.79 0.012388 0.0100229 1.14846 0.935265 22 50810 39 4.563e+07 4.5e+07 -1 -1 63.00 4.79869 3.97 118482 826103 -1 45959 18 26145 103822 6738378 1107233 34.9381 nan -338.005 -34.9381 0 0 -1 -1 2.47 3.09 0.63 -1 -1 2.47 0.608655 0.526574 -k4_n4_v7_l1_bidir.xml ex5p.blif common 28.10 vpr 65.74 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 346 8 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67320 8 63 1072 1135 0 907 417 21 21 441 clb auto 27.9 MiB 0.21 11744 106293 32437 71356 2500 65.7 MiB 0.79 0.01 15.9063 -721.883 -15.9063 nan 1.53 0.00284433 0.00250074 0.193913 0.170976 24 13582 33 1.083e+07 1.038e+07 -1 -1 20.73 0.775578 0.670126 32642 233591 -1 11958 17 7190 24788 2135216 321508 17.2032 nan -799.732 -17.2032 0 0 -1 -1 0.59 0.67 0.18 -1 -1 0.59 0.110667 0.0989465 -k4_n4_v7_l1_bidir.xml frisc.blif common 159.45 vpr 107.85 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1046 20 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 110436 20 116 4445 4561 1 2328 1182 35 35 1225 clb auto 52.5 MiB 0.87 37595 544671 189581 345218 9872 102.8 MiB 4.19 0.05 25.8633 -14640.9 -25.8633 25.8633 5.78 0.0102966 0.00861327 0.928872 0.768097 28 40169 32 3.267e+07 3.138e+07 -1 -1 130.94 4.75729 3.98788 103554 761463 -1 37656 20 14312 64361 6520176 1086680 27.3877 27.3877 -16231.3 -27.3877 0 0 -1 -1 2.30 2.48 0.60 -1 -1 2.30 0.507682 0.436597 -k4_n4_v7_l1_bidir.xml misex3.blif common 40.81 vpr 68.33 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 432 14 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 69968 14 14 1411 1425 0 1075 460 23 23 529 clb auto 30.6 MiB 0.28 13603 122935 37802 83503 1630 68.3 MiB 0.91 0.01 13.8245 -177.164 -13.8245 nan 1.82 0.003268 0.00279845 0.239989 0.205344 23 16940 50 1.323e+07 1.296e+07 -1 -1 32.16 1.33962 1.14839 37674 266685 -1 13977 15 7579 26380 2866376 521181 15.5442 nan -198.671 -15.5442 0 0 -1 -1 0.64 0.83 0.18 -1 -1 0.64 0.117533 0.105231 -k4_n4_v7_l1_bidir.xml pdc.blif common 869.97 vpr 151.98 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1529 16 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 155632 16 40 4591 4631 0 3652 1585 42 42 1764 clb auto 60.9 MiB 1.14 68899 906811 351987 548831 5993 139.0 MiB 7.86 0.08 29.6897 -986.645 -29.6897 nan 7.88 0.0136857 0.0109913 1.36494 1.10476 36 79933 46 4.8e+07 4.587e+07 -1 -1 819.71 6.72289 5.51324 183520 1412616 -1 74383 22 28592 120264 31547803 6920039 33.0809 nan -1129.97 -33.0809 0 0 -1 -1 4.60 10.19 1.08 -1 -1 4.60 0.781141 0.663216 -k4_n4_v7_l1_bidir.xml s298.blif common 27.15 vpr 72.46 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 569 4 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74204 4 6 1942 1948 1 1189 579 26 26 676 clb auto 35.0 MiB 0.29 14145 167007 51573 114453 981 72.5 MiB 1.23 0.02 24.5862 -193.603 -24.5862 24.5862 2.46 0.00480873 0.00409747 0.363203 0.312414 18 15856 30 1.728e+07 1.707e+07 -1 -1 16.01 1.52954 1.31259 41472 276960 -1 14068 16 7678 38272 2944169 350902 26.0138 26.0138 -211.366 -26.0138 0 0 -1 -1 0.70 0.97 0.19 -1 -1 0.70 0.20784 0.183691 -k4_n4_v7_l1_bidir.xml s38417.blif common 119.64 vpr 157.11 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1735 29 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 160884 29 106 7534 7640 1 4766 1870 44 44 1936 clb auto 75.2 MiB 1.18 46153 1084374 392034 674958 17382 156.2 MiB 10.59 0.11 24.4089 -13791 -24.4089 24.4089 9.51 0.0188306 0.014903 2.02721 1.6349 18 43430 31 5.292e+07 5.205e+07 -1 -1 71.64 7.30466 5.94662 122472 822684 -1 40193 15 22858 72604 3997439 712272 25.9612 25.9612 -15612.1 -25.9612 0 0 -1 -1 2.52 2.29 0.63 -1 -1 2.52 0.846999 0.722897 -k4_n4_v7_l1_bidir.xml s38584.1.blif common 86.64 vpr 152.72 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1647 38 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 156388 38 304 7475 7779 1 4418 1989 43 43 1849 clb auto 74.5 MiB 1.27 44316 1227283 454172 750014 23097 151.3 MiB 9.50 0.13 16.4414 -11776.3 -16.4414 16.4414 8.09 0.0175251 0.0139135 1.85343 1.50098 19 43437 39 5.043e+07 4.941e+07 -1 -1 44.60 7.74941 6.42709 116850 784767 -1 38365 12 20072 62335 3603682 632397 17.8523 17.8523 -13299.5 -17.8523 0 0 -1 -1 2.20 1.91 0.56 -1 -1 2.20 0.722847 0.634058 -k4_n4_v7_l1_bidir.xml seq.blif common 31.86 vpr 71.33 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 539 41 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73044 41 35 1791 1826 0 1383 615 26 26 676 clb auto 33.8 MiB 0.34 18254 201893 63880 132728 5285 71.3 MiB 1.44 0.02 17.233 -510.179 -17.233 nan 2.46 0.00439885 0.00374544 0.352693 0.300549 24 21248 36 1.728e+07 1.617e+07 -1 -1 20.29 1.29987 1.10883 51072 366016 -1 18280 15 8556 30692 2636146 395078 18.9849 nan -566.618 -18.9849 0 0 -1 -1 0.93 0.90 0.25 -1 -1 0.93 0.167677 0.149036 -k4_n4_v7_l1_bidir.xml spla.blif common 302.84 vpr 124.02 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1232 16 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 127000 16 46 3706 3752 0 2880 1294 38 38 1444 clb auto 51.8 MiB 0.85 48226 649710 239147 405633 4930 118.9 MiB 5.53 0.05 24.4927 -822.54 -24.4927 nan 6.45 0.00967525 0.00783866 1.00067 0.821688 32 56310 44 3.888e+07 3.696e+07 -1 -1 265.70 4.92212 4.08149 138672 1051752 -1 51527 23 20790 87930 15608992 2956885 27.5216 nan -972.173 -27.5216 0 0 -1 -1 3.31 5.30 0.83 -1 -1 3.31 0.615304 0.528218 -k4_n4_v7_l1_bidir.xml tseng.blif common 17.67 vpr 66.57 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 279 52 -1 -1 success c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68168 52 122 1483 1605 1 736 453 19 19 361 clb auto 28.7 MiB 0.21 5895 113488 30987 78721 3780 66.6 MiB 0.70 0.01 10.0375 -2507.19 -10.0375 10.0375 1.12 0.00306287 0.00276065 0.228288 0.199673 14 6605 43 8.67e+06 8.37e+06 -1 -1 11.20 1.21912 1.0597 17850 109085 -1 5798 20 4993 17181 981399 196655 11.2089 11.2089 -2994.28 -11.2089 0 0 -1 -1 0.25 0.44 0.07 -1 -1 0.25 0.155727 0.13857 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time + k4_n4_v7_bidir.xml alu4.blif common 13.75 vpr 69.33 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 475 14 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70992 14 8 1536 1544 0 1091 497 24 24 576 clb auto 31.8 MiB 0.28 14134 126385 38348 86426 1611 69.3 MiB 0.97 0.01 13.255 -90.9995 -13.255 nan 1.40 0.003557 0.00298094 0.251107 0.212857 28 20090 46 1.452e+07 1.425e+07 -1 -1 6.86 1.13383 0.963548 21174 279108 -1 19775 17 6940 26358 2047634 193487 15.9258 nan -111.424 -15.9258 0 0 -1 -1 0.54 0.60 0.18 -1 -1 0.54 0.156767 0.139455 + k4_n4_v7_bidir.xml apex2.blif common 27.33 vpr 72.92 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 600 38 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74668 38 3 1916 1919 0 1509 641 27 27 729 clb auto 35.1 MiB 0.38 20019 182933 56436 122365 4132 72.9 MiB 1.45 0.02 14.8244 -44.3432 -14.8244 nan 1.81 0.00447479 0.00374517 0.337751 0.287002 33 30312 44 1.875e+07 1.8e+07 -1 -1 17.63 2.2957 1.95305 28938 414941 -1 29102 19 10422 34306 4069237 342109 18.1374 nan -54.2381 -18.1374 0 0 -1 -1 0.90 1.03 0.28 -1 -1 0.90 0.240599 0.21349 + k4_n4_v7_bidir.xml apex4.blif common 25.79 vpr 67.53 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 408 9 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 69152 9 19 1271 1290 0 990 436 23 23 529 clb auto 29.9 MiB 0.23 13512 101208 29460 70503 1245 67.5 MiB 0.78 0.01 13.2732 -211.28 -13.2732 nan 1.24 0.00295966 0.0025462 0.19186 0.166653 31 21137 43 1.323e+07 1.224e+07 -1 -1 19.62 1.45728 1.24547 20514 283063 -1 18985 17 7038 25135 2424508 203976 16.4265 nan -264.324 -16.4265 0 0 -1 -1 0.53 0.57 0.18 -1 -1 0.53 0.11696 0.104582 + k4_n4_v7_bidir.xml bigkey.blif common 22.68 vpr 73.20 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 456 229 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74952 229 197 2152 2349 1 1587 882 29 29 841 io auto 35.1 MiB 0.27 12818 444822 139676 293280 11866 73.2 MiB 2.51 0.03 7.89704 -1842.89 -7.89704 7.89704 2.16 0.00560195 0.00480616 0.601917 0.519861 20 18282 21 2.187e+07 1.368e+07 -1 -1 11.73 2.88261 2.50926 26634 302857 -1 18150 23 7950 23153 1607684 167848 10.3957 10.3957 -2491.82 -10.3957 0 0 -1 -1 0.69 0.73 0.21 -1 -1 0.69 0.322616 0.284099 + k4_n4_v7_bidir.xml clma.blif common 175.00 vpr 206.65 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2523 62 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 211612 62 82 8460 8542 1 6360 2667 53 53 2809 clb auto 92.3 MiB 2.30 106569 1740445 687899 1041683 10863 201.2 MiB 18.57 0.17 27.0884 -1463.9 -27.0884 27.0884 9.54 0.0263249 0.021495 2.57266 2.09297 39 141900 43 7.803e+07 7.569e+07 -1 -1 107.52 11.7791 9.61277 121914 1953961 -1 147212 36 50880 176013 43716060 3876361 40.34 40.34 -2131.61 -40.34 0 0 -1 -1 5.42 10.93 1.36 -1 -1 5.42 2.16318 1.78039 + k4_n4_v7_bidir.xml des.blif common 22.39 vpr 76.34 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 449 256 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 78176 256 245 1847 2092 0 1443 950 34 34 1156 io auto 33.9 MiB 0.34 16079 393062 126936 252226 13900 76.3 MiB 2.20 0.03 13.7858 -2244.06 -13.7858 nan 3.48 0.00589503 0.00512442 0.516196 0.452453 20 22821 39 3.072e+07 1.347e+07 -1 -1 8.14 2.14915 1.91239 36518 419916 -1 22247 25 8626 28912 2382403 229849 17.9305 nan -2855.37 -17.9305 0 0 -1 -1 1.02 0.87 0.30 -1 -1 1.02 0.334003 0.302852 + k4_n4_v7_bidir.xml diffeq.blif common 18.43 vpr 70.04 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 416 64 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71716 64 39 1935 1974 1 1104 519 23 23 529 clb auto 32.5 MiB 0.28 10671 127643 33203 91251 3189 70.0 MiB 0.97 0.02 11.0843 -2583.18 -11.0843 11.0843 1.25 0.00396036 0.00324711 0.289952 0.248596 24 16107 31 1.323e+07 1.248e+07 -1 -1 11.97 1.63669 1.40188 18402 227975 -1 14791 21 6642 23031 1552999 152845 13.9975 13.9975 -3302.1 -13.9975 0 0 -1 -1 0.46 0.58 0.14 -1 -1 0.46 0.227489 0.201476 + k4_n4_v7_bidir.xml dsip.blif common 15.95 vpr 69.90 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 390 229 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71580 229 197 1815 2012 1 1190 816 29 29 841 io auto 32.2 MiB 0.28 11693 366672 119417 237628 9627 69.9 MiB 1.93 0.02 7.20075 -1792.44 -7.20075 7.20075 2.17 0.00440657 0.00383105 0.463711 0.40193 20 16895 34 2.187e+07 1.17e+07 -1 -1 5.90 1.71114 1.51122 26634 302857 -1 16732 21 7156 24786 1876345 187570 8.82999 8.82999 -2321.97 -8.82999 0 0 -1 -1 0.63 0.65 0.20 -1 -1 0.63 0.231689 0.207264 + k4_n4_v7_bidir.xml elliptic.blif common 44.12 vpr 93.41 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 996 131 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 95656 131 114 4855 4969 1 2150 1241 34 34 1156 clb auto 53.2 MiB 0.70 31440 554519 192097 355960 6462 93.4 MiB 4.14 0.05 22.159 -11772.6 -22.159 22.159 3.22 0.0117291 0.00929388 0.999287 0.840711 31 44118 25 3.072e+07 2.988e+07 -1 -1 25.62 4.68853 3.95034 44604 633776 -1 41645 18 10857 51510 4411492 372626 25.5451 25.5451 -15076.7 -25.5451 0 0 -1 -1 1.52 1.61 0.45 -1 -1 1.52 0.581766 0.503582 + k4_n4_v7_bidir.xml ex1010.blif common 132.70 vpr 121.14 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1500 10 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 124048 10 10 4608 4618 0 3623 1520 41 41 1681 clb auto 59.7 MiB 0.88 46521 735344 262533 470688 2123 121.1 MiB 6.89 0.08 23.9635 -232.397 -23.9635 nan 5.15 0.0123894 0.00999337 1.05173 0.849038 28 71051 40 4.563e+07 4.5e+07 -1 -1 104.33 5.61388 4.59791 61362 838935 -1 66151 19 24692 99252 7662175 716031 28.1417 nan -271.07 -28.1417 0 0 -1 -1 1.99 2.48 0.60 -1 -1 1.99 0.594419 0.503648 + k4_n4_v7_bidir.xml ex5p.blif common 14.39 vpr 65.86 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 346 8 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67444 8 63 1072 1135 0 907 417 21 21 441 clb auto 28.0 MiB 0.20 11732 95394 27893 65533 1968 65.9 MiB 0.70 0.01 12.0714 -544.337 -12.0714 nan 0.98 0.00265601 0.00230964 0.181897 0.159 31 17606 29 1.083e+07 1.038e+07 -1 -1 8.67 1.04201 0.905417 17122 234247 -1 16688 33 10144 36184 3569851 310427 14.6464 nan -694.293 -14.6464 0 0 -1 -1 0.44 0.92 0.15 -1 -1 0.44 0.204757 0.181961 + k4_n4_v7_bidir.xml frisc.blif common 61.60 vpr 98.49 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1046 20 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 100856 20 116 4445 4561 1 2328 1182 35 35 1225 clb auto 52.6 MiB 0.79 37688 525930 181145 335523 9262 97.6 MiB 4.34 0.05 22.8805 -12386.3 -22.8805 22.8805 3.44 0.00990918 0.00882927 0.991638 0.839633 35 53135 26 3.267e+07 3.138e+07 -1 -1 40.18 5.86503 4.9616 50922 772933 -1 55579 32 17461 79286 15000358 1397162 30.6828 30.6828 -17423.6 -30.6828 0 0 -1 -1 1.72 3.58 0.51 -1 -1 1.72 0.741321 0.633915 + k4_n4_v7_bidir.xml misex3.blif common 17.18 vpr 68.46 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 432 14 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70104 14 14 1411 1425 0 1075 460 23 23 529 clb auto 30.8 MiB 0.31 13733 114060 32802 79361 1897 68.5 MiB 0.91 0.01 12.0612 -158.449 -12.0612 nan 1.26 0.00336391 0.00286315 0.235038 0.202183 31 19992 26 1.323e+07 1.296e+07 -1 -1 10.65 1.31277 1.12941 20514 283063 -1 19268 19 7240 26551 2234302 201974 14.7411 nan -192.302 -14.7411 0 0 -1 -1 0.56 0.63 0.18 -1 -1 0.56 0.163671 0.147203 + k4_n4_v7_bidir.xml pdc.blif common 124.69 vpr 127.68 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1529 16 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 130740 16 40 4591 4631 0 3652 1585 42 42 1764 clb auto 60.9 MiB 1.15 68978 832915 324530 504467 3918 125.6 MiB 7.66 0.08 22.1199 -753.379 -22.1199 nan 5.26 0.0139597 0.0110722 1.25356 1.01926 44 100098 50 4.8e+07 4.587e+07 -1 -1 91.90 6.71471 5.53917 83766 1407084 -1 93228 19 24307 101241 13823590 1057139 26.8075 nan -916.99 -26.8075 0 0 -1 -1 3.44 3.54 0.97 -1 -1 3.44 0.673993 0.585015 + k4_n4_v7_bidir.xml s298.blif common 21.18 vpr 72.64 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 569 4 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74380 4 6 1942 1948 1 1189 579 26 26 676 clb auto 35.1 MiB 0.30 13947 152535 44623 106887 1025 72.6 MiB 1.19 0.02 21.2374 -159.71 -21.2374 21.2374 1.65 0.00521438 0.00445067 0.337412 0.287514 24 20070 30 1.728e+07 1.707e+07 -1 -1 12.82 2.00404 1.69875 23472 293888 -1 19722 22 6848 37779 2799654 237120 24.7448 24.7448 -195.266 -24.7448 0 0 -1 -1 0.60 0.89 0.18 -1 -1 0.60 0.257468 0.227043 + k4_n4_v7_bidir.xml s38417.blif common 80.85 vpr 147.80 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1735 29 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 151344 29 106 7534 7640 1 4766 1870 44 44 1936 clb auto 75.5 MiB 1.22 44894 1049826 387132 645378 17316 147.8 MiB 10.09 0.11 18.0736 -10160.5 -18.0736 18.0736 6.20 0.0179841 0.014292 1.82379 1.46634 24 60621 33 5.292e+07 5.205e+07 -1 -1 45.80 8.40705 6.77827 66744 864380 -1 57843 21 26183 85515 5318187 535457 20.9792 20.9792 -12910.4 -20.9792 0 0 -1 -1 2.09 2.36 0.60 -1 -1 2.09 1.02615 0.86097 + k4_n4_v7_bidir.xml s38584.1.blif common 71.77 vpr 141.01 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1647 38 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 144392 38 304 7475 7779 1 4418 1989 43 43 1849 clb auto 74.5 MiB 1.30 44860 1202277 446953 732147 23177 140.4 MiB 10.50 0.11 12.026 -8457.32 -12.026 12.026 5.66 0.0211393 0.0175597 1.96939 1.60063 28 57027 22 5.043e+07 4.941e+07 -1 -1 37.82 9.49657 7.90492 67458 924519 -1 55713 19 20830 63662 4242207 425990 14.1428 14.1428 -10518.6 -14.1428 0 0 -1 -1 2.21 1.97 0.65 -1 -1 2.21 0.968895 0.831555 + k4_n4_v7_bidir.xml seq.blif common 22.96 vpr 71.82 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 539 41 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73544 41 35 1791 1826 0 1383 615 26 26 676 clb auto 33.9 MiB 0.35 18054 186209 57020 124085 5104 71.8 MiB 1.41 0.02 13.5873 -395.56 -13.5873 nan 1.67 0.00425614 0.00351883 0.333808 0.281457 31 27105 32 1.728e+07 1.617e+07 -1 -1 14.32 1.78211 1.51982 26172 364912 -1 25208 18 8627 29678 2567103 227783 16.1026 nan -484.148 -16.1026 0 0 -1 -1 0.74 0.73 0.24 -1 -1 0.74 0.204566 0.184124 + k4_n4_v7_bidir.xml spla.blif common 76.80 vpr 105.91 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1232 16 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 108452 16 46 3706 3752 0 2880 1294 38 38 1444 clb auto 52.0 MiB 0.85 48240 600374 216312 380375 3687 102.1 MiB 5.14 0.05 20.0753 -648.715 -20.0753 nan 4.14 0.00908378 0.00800327 0.912519 0.750307 39 70409 37 3.888e+07 3.696e+07 -1 -1 49.20 4.53501 3.73396 62858 992060 -1 76555 39 24345 104217 26186080 2590220 34.3955 nan -1159.36 -34.3955 0 0 -1 -1 2.34 6.00 0.68 -1 -1 2.34 0.898675 0.760137 + k4_n4_v7_bidir.xml tseng.blif common 8.44 vpr 66.49 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 279 52 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68084 52 122 1483 1605 1 736 453 19 19 361 clb auto 28.7 MiB 0.19 6067 106532 27815 74929 3788 66.5 MiB 0.70 0.01 10.0043 -2022.48 -10.0043 10.0043 0.78 0.00330035 0.00285806 0.224087 0.194738 20 9708 32 8.67e+06 8.37e+06 -1 -1 3.97 0.800193 0.696432 11514 125901 -1 10325 35 5341 17375 1470182 171997 26.7854 26.7854 -3518.56 -26.7854 0 0 -1 -1 0.22 0.56 0.08 -1 -1 0.22 0.241367 0.212622 + k4_n4_v7_l1_bidir.xml alu4.blif common 33.89 vpr 69.46 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 475 14 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71124 14 8 1536 1544 0 1091 497 24 24 576 clb auto 31.9 MiB 0.29 14362 138187 43336 92800 2051 69.5 MiB 1.02 0.01 16.2524 -118.165 -16.2524 nan 2.03 0.00320537 0.00276136 0.255758 0.219591 22 16517 35 1.452e+07 1.425e+07 -1 -1 24.48 1.17963 1.01292 39160 271852 -1 14620 18 7278 28892 2151822 386319 17.68 nan -129.086 -17.68 0 0 -1 -1 0.67 0.84 0.20 -1 -1 0.67 0.167119 0.146881 + k4_n4_v7_l1_bidir.xml apex2.blif common 97.54 vpr 73.36 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 600 38 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75116 38 3 1916 1919 0 1509 641 27 27 729 clb auto 35.0 MiB 0.39 19978 196743 63018 129046 4679 73.4 MiB 1.52 0.02 23.2097 -66.4319 -23.2097 nan 2.76 0.00444938 0.00372849 0.352902 0.298724 24 22744 42 1.875e+07 1.8e+07 -1 -1 84.61 1.97975 1.67901 55250 396047 -1 20113 15 9581 33929 2905503 410759 24.7486 nan -70.4392 -24.7486 0 0 -1 -1 1.04 1.03 0.31 -1 -1 1.04 0.196202 0.174522 + k4_n4_v7_l1_bidir.xml apex4.blif common 69.02 vpr 67.44 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 408 9 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 69060 9 19 1271 1290 0 990 436 23 23 529 clb auto 29.8 MiB 0.23 14046 124336 39690 83097 1549 67.4 MiB 0.97 0.01 15.3296 -251.289 -15.3296 nan 1.84 0.00293703 0.00250302 0.238909 0.205822 26 18210 48 1.323e+07 1.224e+07 -1 -1 59.69 1.24231 1.06246 41370 301109 -1 15293 20 8755 31737 4925771 837783 16.9118 nan -288.563 -16.9118 0 0 -1 -1 0.75 1.31 0.22 -1 -1 0.75 0.152551 0.134444 + k4_n4_v7_l1_bidir.xml bigkey.blif common 22.48 vpr 80.89 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 456 229 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 82828 229 197 2152 2349 1 1587 882 29 29 841 io auto 35.3 MiB 0.26 12791 444822 144197 289217 11408 80.9 MiB 2.28 0.02 9.49212 -2257.52 -9.49212 9.49212 3.29 0.00456013 0.00389815 0.531681 0.458031 13 12690 42 2.187e+07 1.368e+07 -1 -1 8.53 1.67611 1.46101 39906 235943 -1 11856 16 7540 21784 1186101 225835 10.6552 10.6552 -2601.88 -10.6552 0 0 -1 -1 0.60 0.63 0.18 -1 -1 0.60 0.216922 0.191936 + k4_n4_v7_l1_bidir.xml clma.blif common 1146.80 vpr 259.58 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 2523 62 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 265812 62 82 8460 8542 1 6360 2667 53 53 2809 clb auto 92.2 MiB 1.76 106120 1925315 767415 1142328 15572 255.2 MiB 20.98 0.19 35.274 -2009.57 -35.274 35.274 13.72 0.0257702 0.0208734 2.90612 2.36163 32 110085 49 7.803e+07 7.569e+07 -1 -1 1061.87 13.5505 10.9423 274482 2081397 -1 104976 19 44244 163772 26116475 4937895 38.1544 38.1544 -2288.28 -38.1544 0 0 -1 -1 6.87 9.35 1.87 -1 -1 6.87 1.36721 1.1558 + k4_n4_v7_l1_bidir.xml des.blif common 39.65 vpr 94.09 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 449 256 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 96352 256 245 1847 2092 0 1443 950 34 34 1156 io auto 33.8 MiB 0.34 15994 407066 134258 257674 15134 94.1 MiB 2.11 0.02 16.0918 -2830.21 -16.0918 nan 4.76 0.0054351 0.00473485 0.501493 0.442178 13 16978 38 3.072e+07 1.347e+07 -1 -1 20.88 1.73486 1.54582 55296 328128 -1 15805 17 8999 30443 2700117 501901 16.8506 nan -3113.12 -16.8506 0 0 -1 -1 0.86 0.95 0.26 -1 -1 0.86 0.234117 0.2125 + k4_n4_v7_l1_bidir.xml diffeq.blif common 39.66 vpr 69.96 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 416 64 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71640 64 39 1935 1974 1 1104 519 23 23 529 clb auto 32.5 MiB 0.29 10440 142231 40504 98416 3311 70.0 MiB 1.09 0.02 12.9882 -2992.62 -12.9882 12.9882 1.90 0.0045983 0.00388127 0.328887 0.28104 17 10808 27 1.323e+07 1.248e+07 -1 -1 30.95 1.95587 1.6699 30282 197837 -1 10351 19 7168 24801 2266778 414373 15.3106 15.3106 -3545.95 -15.3106 0 0 -1 -1 0.49 0.80 0.14 -1 -1 0.49 0.206135 0.181314 + k4_n4_v7_l1_bidir.xml dsip.blif common 21.97 vpr 78.69 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 390 229 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80580 229 197 1815 2012 1 1190 816 29 29 841 io auto 32.3 MiB 0.28 11426 359050 117729 232216 9105 78.7 MiB 1.92 0.02 8.78943 -2134.03 -8.78943 8.78943 3.28 0.0043662 0.0037626 0.458994 0.397621 13 11522 32 2.187e+07 1.17e+07 -1 -1 8.49 1.44484 1.26966 39906 235943 -1 10934 19 6435 22769 1305074 235559 9.06804 9.06804 -2382.01 -9.06804 0 0 -1 -1 0.62 0.65 0.18 -1 -1 0.62 0.215433 0.19249 + k4_n4_v7_l1_bidir.xml elliptic.blif common 259.39 vpr 111.93 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 996 131 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 114612 131 114 4855 4969 1 2150 1241 34 34 1156 clb auto 53.1 MiB 0.70 31775 587849 206959 374211 6679 111.9 MiB 4.32 0.05 24.8429 -14309.6 -24.8429 24.8429 4.81 0.0113589 0.00939896 1.05383 0.872256 24 35027 36 3.072e+07 2.988e+07 -1 -1 234.35 5.48209 4.58132 89088 639360 -1 31261 17 11943 54448 5877227 990403 26.0072 26.0072 -16512.6 -26.0072 0 0 -1 -1 1.76 2.22 0.50 -1 -1 1.76 0.542653 0.472806 + k4_n4_v7_l1_bidir.xml ex1010.blif common 91.68 vpr 154.73 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1500 10 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 158440 10 10 4608 4618 0 3623 1520 41 41 1681 clb auto 59.6 MiB 0.88 45457 761552 272142 487721 1689 154.7 MiB 6.80 0.07 33.6677 -322.857 -33.6677 nan 7.51 0.0125483 0.0100768 1.05112 0.846213 23 53400 40 4.563e+07 4.5e+07 -1 -1 53.18 5.3178 4.38831 124722 886389 -1 46367 18 28388 111323 9133897 1665136 36.7131 nan -355.585 -36.7131 0 0 -1 -1 2.51 3.60 0.70 -1 -1 2.51 0.604564 0.518958 + k4_n4_v7_l1_bidir.xml ex5p.blif common 25.61 vpr 66.18 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 346 8 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67768 8 63 1072 1135 0 907 417 21 21 441 clb auto 28.3 MiB 0.20 11889 109407 33266 74263 1878 66.2 MiB 0.80 0.01 14.8212 -663.939 -14.8212 nan 1.48 0.00287865 0.00246157 0.202708 0.176988 28 12889 25 1.083e+07 1.038e+07 -1 -1 18.35 1.15802 1.00827 35682 261999 -1 12203 17 7544 25651 2190183 320708 15.5241 nan -730.332 -15.5241 0 0 -1 -1 0.63 0.70 0.20 -1 -1 0.63 0.123489 0.111003 + k4_n4_v7_l1_bidir.xml frisc.blif common 171.81 vpr 116.22 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1046 20 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 119012 20 116 4445 4561 1 2328 1182 35 35 1225 clb auto 52.7 MiB 0.81 38115 557165 195425 351820 9920 116.2 MiB 4.65 0.05 25.8853 -15117.7 -25.8853 25.8853 5.18 0.0111954 0.00926267 1.08659 0.906632 28 40565 30 3.267e+07 3.138e+07 -1 -1 144.51 5.11424 4.2688 103554 761463 -1 38187 27 15303 68757 6915038 1116125 28.3067 28.3067 -17153.7 -28.3067 0 0 -1 -1 2.09 2.72 0.58 -1 -1 2.09 0.680998 0.589101 + k4_n4_v7_l1_bidir.xml misex3.blif common 52.42 vpr 68.32 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 432 14 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 69964 14 14 1411 1425 0 1075 460 23 23 529 clb auto 30.6 MiB 0.29 13716 121160 37552 81574 2034 68.3 MiB 0.94 0.01 14.9328 -182.468 -14.9328 nan 1.84 0.00320637 0.00274065 0.245777 0.211023 24 15762 33 1.323e+07 1.296e+07 -1 -1 43.73 1.46481 1.24532 39522 283015 -1 14159 15 7036 26260 2040209 327980 16.2244 nan -204.779 -16.2244 0 0 -1 -1 0.70 0.71 0.21 -1 -1 0.70 0.13988 0.123736 + k4_n4_v7_l1_bidir.xml pdc.blif common 296.60 vpr 169.80 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1529 16 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 173876 16 40 4591 4631 0 3652 1585 42 42 1764 clb auto 60.9 MiB 1.12 69847 906811 352994 547566 6251 151.8 MiB 8.29 0.08 29.749 -973.679 -29.749 nan 7.91 0.0125022 0.0100706 1.37038 1.11546 40 74353 30 4.8e+07 4.587e+07 -1 -1 250.90 8.352 6.91681 203200 1589872 -1 70986 16 23471 95600 10248218 1435560 32.117 nan -1055.65 -32.117 0 0 -1 -1 5.28 4.01 1.40 -1 -1 5.28 0.646181 0.558833 + k4_n4_v7_l1_bidir.xml s298.blif common 29.68 vpr 72.70 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 569 4 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74444 4 6 1942 1948 1 1189 579 26 26 676 clb auto 35.2 MiB 0.29 14138 171831 53667 116783 1381 72.7 MiB 1.35 0.02 26.1051 -194.876 -26.1051 26.1051 2.61 0.00483958 0.00407647 0.38077 0.324522 18 15506 34 1.728e+07 1.707e+07 -1 -1 18.16 1.67436 1.42691 41472 276960 -1 14191 15 7513 37317 2670769 369425 27.3673 27.3673 -212.058 -27.3673 0 0 -1 -1 0.70 0.94 0.21 -1 -1 0.70 0.19949 0.178106 + k4_n4_v7_l1_bidir.xml s38417.blif common 109.20 vpr 179.19 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1735 29 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 183492 29 106 7534 7640 1 4766 1870 44 44 1936 clb auto 75.3 MiB 1.20 46564 1095890 398355 680987 16548 179.2 MiB 11.10 0.12 22.5207 -13239.8 -22.5207 22.5207 8.76 0.0218386 0.0175987 2.02719 1.63032 18 43226 31 5.292e+07 5.205e+07 -1 -1 62.95 7.65496 6.23711 122472 822684 -1 40176 16 24246 77630 4279200 752342 24.1367 24.1367 -15318.3 -24.1367 0 0 -1 -1 2.49 2.39 0.71 -1 -1 2.49 0.891493 0.757308 + k4_n4_v7_l1_bidir.xml s38584.1.blif common 169.53 vpr 173.25 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1647 38 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 177404 38 304 7475 7779 1 4418 1989 43 43 1849 clb auto 74.4 MiB 1.32 43032 1227283 457537 745329 24417 173.2 MiB 10.67 0.13 16.5278 -11078.5 -16.5278 16.5278 8.45 0.0192776 0.0153152 1.99283 1.61811 18 40610 44 5.043e+07 4.941e+07 -1 -1 125.38 9.64324 7.93808 116850 784767 -1 37025 12 19738 60661 3375063 570669 17.2487 17.2487 -12345.1 -17.2487 0 0 -1 -1 2.32 1.82 0.63 -1 -1 2.32 0.727301 0.625777 + k4_n4_v7_l1_bidir.xml seq.blif common 36.16 vpr 71.71 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 539 41 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 73436 41 35 1791 1826 0 1383 615 26 26 676 clb auto 33.9 MiB 0.36 18015 207121 65869 135848 5404 71.7 MiB 1.55 0.02 16.6753 -486.802 -16.6753 nan 2.55 0.00442358 0.00372597 0.367156 0.311154 25 20400 37 1.728e+07 1.617e+07 -1 -1 24.12 1.89536 1.6099 51072 366016 -1 18415 15 8953 32374 2759278 410967 18.0537 nan -535.744 -18.0537 0 0 -1 -1 0.95 0.94 0.28 -1 -1 0.95 0.178787 0.157787 + k4_n4_v7_l1_bidir.xml spla.blif common 320.75 vpr 129.37 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1232 16 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 132476 16 46 3706 3752 0 2880 1294 38 38 1444 clb auto 51.7 MiB 0.84 48643 649710 239203 407582 2925 128.9 MiB 5.58 0.06 24.7125 -858.664 -24.7125 nan 6.34 0.0105702 0.00866673 1.00344 0.819712 32 54414 39 3.888e+07 3.696e+07 -1 -1 285.12 5.0505 4.13478 138672 1051752 -1 51400 25 21005 88968 14946164 2742235 33.9008 nan -1010 -33.9008 0 0 -1 -1 3.13 5.01 0.86 -1 -1 3.13 0.657258 0.55892 + k4_n4_v7_l1_bidir.xml tseng.blif common 15.28 vpr 66.78 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 279 52 -1 -1 success efe606d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:56 gh-actions-runner-vtr-auto-spawned198 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68380 52 122 1483 1605 1 736 453 19 19 361 clb auto 29.0 MiB 0.19 5859 113488 31414 78149 3925 66.8 MiB 0.74 0.01 10.2405 -2435.2 -10.2405 10.2405 1.14 0.0032842 0.00282233 0.235423 0.202792 14 6460 50 8.67e+06 8.37e+06 -1 -1 9.80 1.04576 0.912818 17850 109085 -1 5660 20 4854 16606 910348 182061 11.1931 11.1931 -2968.9 -11.1931 0 0 -1 -1 0.26 0.44 0.08 -1 -1 0.26 0.161569 0.143489 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2_odin/vtr_timing_update_diff/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2_odin/vtr_timing_update_diff/config/golden_results.txt index be6e7de563f..472b47cb7f6 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2_odin/vtr_timing_update_diff/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2_odin/vtr_timing_update_diff/config/golden_results.txt @@ -1,2 +1,2 @@ arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time -k6_frac_N10_frac_chain_mem32K_40nm.xml LU8PEEng.v common 348.88 vpr 480.89 MiB 5.57 207028 -1 -1 101 121.37 -1 -1 108080 -1 -1 2196 114 44 8 exited with return code 2 c4c4d02-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-01-10T19:39:53 gh-actions-runner-vtr-auto-spawned7 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 492432 114 102 38224 33865 1 18116 2464 57 57 3249 clb auto 366.7 MiB 75.25 238374 1932124 720274 1178336 33514 397.8 MiB 80.74 0.64 69.2874 -55421.2 -69.2874 69.2874 1.23 0.112996 0.0916765 13.4398 11.1111 -1 -1 -1 -1 -1 -1 -1 32.95 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +k6_frac_N10_frac_chain_mem32K_40nm.xml LU8PEEng.v common 628.23 vpr 523.07 MiB 4.94 207220 -1 -1 101 125.94 -1 -1 108124 -1 -1 2196 114 44 8 success b37c31d-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-04-04T16:52:55 gh-actions-runner-vtr-auto-spawned70 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 535628 114 102 38224 33865 1 18116 2464 57 57 3249 clb auto 366.7 MiB 79.89 235628 1915489 723145 1160834 31510 434.9 MiB 90.41 0.75 68.8354 -54271.6 -68.8354 68.8354 1.27 0.122715 0.109144 14.833 12.338 -1 337567 24 1.92089e+08 1.45633e+08 2.12617e+07 6544.09 29.31 22.8823 19.2537 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3_odin/vtr_reg_qor_chain_predictor_off/config/config.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3_odin/vtr_reg_qor_chain_predictor_off/config/config.txt index f2614c183ec..6650dc89929 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3_odin/vtr_reg_qor_chain_predictor_off/config/config.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3_odin/vtr_reg_qor_chain_predictor_off/config/config.txt @@ -19,7 +19,6 @@ circuit_list_add=diffeq1.v circuit_list_add=diffeq2.v circuit_list_add=LU8PEEng.v circuit_list_add=LU32PEEng.v -circuit_list_add=mcml.v circuit_list_add=mkDelayWorker32B.v circuit_list_add=mkPktMerge.v circuit_list_add=mkSMAdapter4B.v diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3_odin/vtr_reg_qor_chain_predictor_off/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3_odin/vtr_reg_qor_chain_predictor_off/config/golden_results.txt index 229248c1a17..8f41ead5e7a 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3_odin/vtr_reg_qor_chain_predictor_off/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3_odin/vtr_reg_qor_chain_predictor_off/config/golden_results.txt @@ -1,22 +1,21 @@ arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time -k6_frac_N10_frac_chain_mem32K_40nm.xml arm_core.v common 583.54 vpr 284.30 MiB 2.26 127036 -1 -1 18 143.67 -1 -1 69044 -1 -1 1012 133 24 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 291128 133 179 18379 18161 1 8999 1348 39 39 1521 clb auto 182.8 MiB 38.65 139498 723319 238538 468975 15806 214.7 MiB 25.63 0.23 16.8897 -129110 -16.8897 16.8897 7.69 0.0626154 0.0544242 7.09752 5.71448 102 202542 32 8.65315e+07 6.7694e+07 9.94663e+06 6539.54 278.54 32.6623 26.1014 217584 2108762 -1 184530 15 36437 132687 21876289 4735687 0 0 21876289 4735687 116013 44730 0 0 387139 354311 0 0 461172 389401 0 0 119910 49834 0 0 10292289 1936912 0 0 10499766 1960499 0 0 116013 0 0 82407 744922 777099 4024753 18649 7546 18.3658 18.3658 -144874 -18.3658 0 0 1.24776e+07 8203.53 7.68 11.90 2.76 -1 -1 7.68 3.72028 3.19167 -k6_frac_N10_frac_chain_mem32K_40nm.xml bgm.v common 1047.98 vpr 668.36 MiB 6.44 373064 -1 -1 14 372.53 -1 -1 149696 -1 -1 2738 257 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 684400 257 32 36518 33906 1 19790 3038 63 63 3969 clb auto 379.1 MiB 95.55 254590 2202438 775550 1395801 31087 668.4 MiB 149.56 1.15 17.922 -23247.4 -17.922 17.922 74.01 0.176172 0.136174 19.2625 15.0121 76 397155 41 2.36641e+08 1.5192e+08 2.05973e+07 5189.55 229.02 70.1957 55.6831 506266 4280222 -1 375988 23 94107 422462 29079480 4995732 0 0 29079480 4995732 422462 153170 0 0 646594 537328 0 0 910439 649559 0 0 443385 175289 0 0 13141347 1723999 0 0 13515253 1756387 0 0 422462 0 0 340947 2219541 2157492 15111548 0 0 20.0923 20.0923 -25869.8 -20.0923 0 0 2.57532e+07 6488.59 14.89 24.61 5.56 -1 -1 14.89 11.265 9.47638 -k6_frac_N10_frac_chain_mem32K_40nm.xml blob_merge.v common 304.07 vpr 164.58 MiB 0.68 57488 -1 -1 5 75.57 -1 -1 66788 -1 -1 616 36 0 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 168528 36 100 14036 11283 1 3221 752 31 31 961 clb auto 122.9 MiB 23.95 45792 311790 99765 194358 17667 156.0 MiB 8.56 0.08 13.3702 -2605.71 -13.3702 13.3702 4.96 0.0320431 0.0281398 3.37408 2.78262 62 75192 47 5.14688e+07 3.31987e+07 3.99881e+06 4161.10 167.92 14.3783 11.4346 110674 804802 -1 66248 17 12785 58727 2464123 325270 0 0 2464123 325270 57043 15402 0 0 74924 59239 0 0 104321 74938 0 0 58116 17535 0 0 1077044 78388 0 0 1092675 79768 0 0 57043 0 0 46702 407614 420451 2440416 1861 123 15.1322 15.1322 -2935.85 -15.1322 0 0 4.96813e+06 5169.75 2.65 2.78 0.97 -1 -1 2.65 1.89928 1.61546 -k6_frac_N10_frac_chain_mem32K_40nm.xml boundtop.v common 9.78 vpr 72.69 MiB 0.69 45372 -1 -1 3 0.75 -1 -1 40416 -1 -1 92 142 0 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74432 142 193 1069 1140 1 565 427 14 14 196 clb auto 34.7 MiB 1.06 1752 149878 48868 80243 20767 72.7 MiB 0.76 0.01 2.96377 -460.634 -2.96377 2.96377 0.71 0.0028657 0.0026696 0.307281 0.286074 38 3669 14 9.20055e+06 4.95825e+06 467348. 2384.43 1.80 0.896693 0.825641 18724 93853 -1 3301 11 1157 1822 77690 20816 0 0 77690 20816 1822 1367 0 0 3401 2932 0 0 4076 3408 0 0 1961 1456 0 0 32524 5850 0 0 33906 5803 0 0 1822 0 0 670 1672 1664 11474 0 0 3.62254 3.62254 -560.037 -3.62254 0 0 593372. 3027.41 0.24 0.13 0.11 -1 -1 0.24 0.105696 0.0999064 -k6_frac_N10_frac_chain_mem32K_40nm.xml ch_intrinsics.v common 4.20 vpr 67.44 MiB 0.06 9784 -1 -1 3 0.39 -1 -1 37396 -1 -1 65 99 1 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 69060 99 130 363 493 1 251 295 12 12 144 clb auto 29.2 MiB 0.24 717 71908 25870 34054 11984 67.4 MiB 0.27 0.00 1.83922 -198.941 -1.83922 1.83922 0.45 0.00107536 0.000983006 0.084569 0.0781498 40 1645 10 5.66058e+06 4.05111e+06 333335. 2314.82 1.04 0.284185 0.258873 12946 64812 -1 1532 9 620 808 72040 24269 0 0 72040 24269 808 743 0 0 3914 3738 0 0 4492 3914 0 0 867 808 0 0 29829 7624 0 0 32130 7442 0 0 808 0 0 188 245 173 1848 0 0 2.45075 2.45075 -235.916 -2.45075 0 0 419432. 2912.72 0.16 0.06 0.08 -1 -1 0.16 0.0334775 0.0315937 -k6_frac_N10_frac_chain_mem32K_40nm.xml diffeq1.v common 43.62 vpr 71.27 MiB 0.05 9636 -1 -1 6 0.30 -1 -1 36860 -1 -1 32 162 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72980 162 96 1075 884 1 667 295 16 16 256 mult_36 auto 33.3 MiB 0.67 4798 79756 25666 46693 7397 71.3 MiB 0.76 0.01 15.573 -1229.29 -15.573 15.573 1.08 0.00404968 0.00376809 0.326322 0.303508 66 9962 44 1.21132e+07 3.70461e+06 1.03599e+06 4046.83 36.92 2.32322 2.13815 28848 203676 -1 8389 22 3031 5003 1662328 462996 0 0 1662328 462996 5003 3821 0 0 74447 73340 0 0 78985 74896 0 0 5423 4117 0 0 758826 152086 0 0 739644 154736 0 0 5003 0 0 1990 4631 4970 27606 0 0 17.0901 17.0901 -1355.89 -17.0901 0 0 1.28841e+06 5032.87 0.50 0.64 0.29 -1 -1 0.50 0.177776 0.166942 -k6_frac_N10_frac_chain_mem32K_40nm.xml diffeq2.v common 19.92 vpr 70.00 MiB 0.03 8412 -1 -1 6 0.17 -1 -1 36716 -1 -1 20 66 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71680 66 96 866 607 1 547 189 18 18 324 mult_36 auto 32.0 MiB 0.61 4654 51137 19049 27853 4235 70.0 MiB 0.59 0.01 12.016 -717.144 -12.016 12.016 1.33 0.00288125 0.00270837 0.299383 0.281 46 11715 25 1.57076e+07 3.84988e+06 949518. 2930.61 12.33 1.06453 0.994468 33056 191736 -1 9693 19 4291 9311 4610800 1111878 0 0 4610800 1111878 9311 7047 0 0 162170 160836 0 0 175341 162904 0 0 10385 8089 0 0 2127055 392581 0 0 2126538 380421 0 0 9311 0 0 5030 13904 14865 63106 0 0 13.2812 13.2812 -865.402 -13.2812 0 0 1.22123e+06 3769.23 0.55 1.50 0.28 -1 -1 0.55 0.161177 0.152592 -k6_frac_N10_frac_chain_mem32K_40nm.xml LU8PEEng.v common 5168.34 vpr 613.42 MiB 6.03 207148 -1 -1 101 162.07 -1 -1 107064 -1 -1 2196 114 44 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 628144 114 102 38224 33865 1 18116 2464 57 57 3249 clb auto 367.2 MiB 109.09 234636 1915489 724304 1164028 27157 581.5 MiB 112.18 0.83 66.9135 -51945.6 -66.9135 66.9135 57.34 0.131263 0.114164 18.2276 14.4048 90 365741 48 1.92089e+08 1.45633e+08 1.94366e+07 5982.34 400 106.508 83.4994 441623 4070163 -1 327184 24 72941 275676 44891770 9678649 0 0 44891770 9678649 266831 93636 0 0 740951 671825 0 0 917391 747345 0 0 277270 108185 0 0 21096127 3960057 0 0 21593200 4097601 0 0 266831 0 0 202110 1035110 1041645 6661945 9314 7656 76.3379 76.3379 -66111.6 -76.3379 0 0 2.43249e+07 7486.90 15.86 27.84 5.88 -1 -1 15.86 9.32536 7.81205 -k6_frac_N10_frac_chain_mem32K_40nm.xml LU32PEEng.v common 12253.51 vpr 2.06 GiB 24.80 702124 -1 -1 101 1393.87 -1 -1 324392 -1 -1 7514 114 167 32 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 2159640 114 102 124851 111146 1 59132 7929 103 103 10609 clb auto 1159.2 MiB 360.78 1052983 9965835 4119074 5792066 54695 1877.1 MiB 704.52 3.21 65.2375 -338588 -65.2375 65.2375 220.28 0.329452 0.260932 61.6871 48.1144 126 1412558 40 6.46441e+08 5.09111e+08 8.73307e+07 8231.76 9221.47 183.942 146.5 1710436 19091112 -1 1339294 22 215646 900684 223339649 51896881 0 0 223339649 51896881 844018 267615 0 0 2644985 2402486 0 0 3287959 2664786 0 0 877062 319916 0 0 106407801 22685912 0 0 109277824 23556166 0 0 844018 0 0 658116 4296012 4273075 23348543 59126 221175 75.0218 75.0218 -494523 -75.0218 0 0 1.10400e+08 10406.3 49.82 82.53 17.74 -1 -1 49.82 18.8426 16.0775 -k6_frac_N10_frac_chain_mem32K_40nm.xml mcml.v common 6915.92 vpr 2.15 GiB 58.83 890956 -1 -1 26 5002.13 -1 -1 375740 -1 -1 7038 36 159 27 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 2249424 36 356 190343 166383 1 61580 7616 99 99 9801 clb auto 1355.4 MiB 258.31 722605 11167567 4330804 6423181 413582 1922.7 MiB 627.01 3.78 40.0349 -291855 -40.0349 40.0349 119.00 0.28365 0.226982 45.8958 37.3683 160 955962 23 6.00857e+08 4.77096e+08 9.11403e+07 9299.09 589.85 137.019 112.824 1700639 20154183 -1 934490 19 216687 545183 104908820 25967919 0 0 104908820 25967919 491671 261307 0 0 1548685 1384870 0 0 1958090 1556136 0 0 505616 287421 0 0 50205079 11073550 0 0 50199679 11404635 0 0 491671 0 0 277731 1192268 1235559 4877321 62524 115078 43.0415 43.0415 -352040 -43.0415 0 0 1.15652e+08 11800.0 46.86 51.64 19.74 -1 -1 46.86 16.9449 14.9292 -k6_frac_N10_frac_chain_mem32K_40nm.xml mkDelayWorker32B.v common 126.67 vpr 317.73 MiB 1.18 69740 -1 -1 5 11.78 -1 -1 56008 -1 -1 456 506 45 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 325356 506 553 3519 4017 1 3099 1560 50 50 2500 memory auto 62.0 MiB 7.03 15735 1150148 545151 422976 182021 317.7 MiB 6.50 0.07 6.80432 -1955.3 -6.80432 6.80432 41.74 0.0218543 0.0199401 2.87939 2.5967 40 23990 15 1.47946e+08 4.92362e+07 7.18436e+06 2873.75 28.29 8.28019 7.61139 260716 1475984 -1 22959 13 3800 4917 3473456 838921 0 0 3473456 838921 4527 4369 0 0 98810 97630 0 0 101330 99135 0 0 4798 4570 0 0 1607324 314105 0 0 1656667 319112 0 0 4527 0 0 730 5238 3996 9252 399 961 7.7292 7.7292 -2395.07 -7.7292 0 0 8.97548e+06 3590.19 5.57 1.91 1.79 -1 -1 5.57 0.875143 0.823244 -k6_frac_N10_frac_chain_mem32K_40nm.xml mkPktMerge.v common 24.69 vpr 73.60 MiB 0.16 16940 -1 -1 2 0.16 -1 -1 36836 -1 -1 29 311 15 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75364 311 156 1019 1160 1 965 511 28 28 784 memory auto 35.3 MiB 0.88 8204 204711 70832 123314 10565 73.6 MiB 1.31 0.02 3.71444 -4070.46 -3.71444 3.71444 3.71 0.00555979 0.00485305 0.567935 0.494678 36 15411 35 4.25198e+07 9.78293e+06 1.94918e+06 2486.20 10.48 2.10544 1.87459 76314 389223 -1 13948 14 3166 3562 2712374 748186 0 0 2712374 748186 3562 3377 0 0 87585 86655 0 0 89265 87873 0 0 3598 3433 0 0 1251982 282755 0 0 1276382 284093 0 0 3562 0 0 396 2815 2263 11862 0 0 4.28754 4.28754 -4822.43 -4.28754 -0.00271738 -0.00135869 2.40571e+06 3068.51 1.25 1.07 0.47 -1 -1 1.25 0.24306 0.224609 -k6_frac_N10_frac_chain_mem32K_40nm.xml mkSMAdapter4B.v common 30.36 vpr 86.77 MiB 0.38 29320 -1 -1 4 3.00 -1 -1 40712 -1 -1 188 193 5 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88848 193 205 2863 2789 1 1455 591 20 20 400 memory auto 49.6 MiB 4.06 11642 265844 92770 145763 27311 86.8 MiB 2.70 0.03 4.52152 -2547.1 -4.52152 4.52152 1.70 0.00883134 0.00792978 1.05264 0.927861 52 19913 20 2.07112e+07 1.28721e+07 1.31074e+06 3276.84 11.41 3.39207 2.99277 42580 268535 -1 17905 15 5289 12745 1471240 365825 0 0 1471240 365825 12288 6989 0 0 44474 39572 0 0 50685 44716 0 0 13085 7700 0 0 678707 134588 0 0 672001 132260 0 0 12288 0 0 7269 38367 36966 273159 499 97 4.91806 4.91806 -2995.21 -4.91806 -0.000474482 -0.000474482 1.72518e+06 4312.96 0.78 0.93 0.34 -1 -1 0.78 0.452378 0.414209 -k6_frac_N10_frac_chain_mem32K_40nm.xml or1200.v common 96.18 vpr 121.08 MiB 0.63 39824 -1 -1 8 8.08 -1 -1 44660 -1 -1 258 385 2 1 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 123988 385 394 4673 4537 1 2422 1040 27 27 729 io auto 65.2 MiB 11.38 31057 606745 237084 344221 25440 102.1 MiB 7.51 0.08 8.28895 -9591.03 -8.28895 8.28895 3.54 0.018804 0.0168864 2.31506 1.98075 90 46346 24 3.93038e+07 1.53967e+07 4.16306e+06 5710.65 50.92 10.9219 9.57036 97397 860673 -1 43862 20 10005 34919 3111396 573903 0 0 3111396 573903 33280 14842 0 0 79378 71234 0 0 100615 79428 0 0 34858 16570 0 0 1442455 190475 0 0 1420810 201354 0 0 33280 0 0 23884 120158 117967 736675 1813 56 8.86754 8.86754 -10883.6 -8.86754 0 0 5.20725e+06 7143.01 2.53 2.21 1.08 -1 -1 2.53 1.10656 0.994074 -k6_frac_N10_frac_chain_mem32K_40nm.xml raygentop.v common 35.72 vpr 86.49 MiB 0.41 31640 -1 -1 3 1.69 -1 -1 43372 -1 -1 112 214 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88564 214 305 2963 2869 1 1445 639 19 19 361 io auto 48.9 MiB 3.64 11737 250980 84439 153411 13130 86.5 MiB 2.14 0.03 4.44136 -2511.57 -4.44136 4.44136 1.48 0.00896997 0.00787568 0.881744 0.782364 62 23914 29 1.72706e+07 9.20413e+06 1.42198e+06 3939.00 18.94 3.93332 3.52675 40483 281719 -1 20358 17 5836 12809 2980957 662877 0 0 2980957 662877 12561 7996 0 0 106408 103314 0 0 111762 106470 0 0 13273 8738 0 0 1374421 214283 0 0 1362532 222076 0 0 12561 0 0 6797 24561 24020 131982 250 0 5.01085 5.01085 -3005.46 -5.01085 0 0 1.76637e+06 4892.99 0.83 1.33 0.33 -1 -1 0.83 0.473515 0.440189 -k6_frac_N10_frac_chain_mem32K_40nm.xml sha.v common 472.50 abc 92.02 MiB 1.43 38276 -1 -1 3 438.61 -1 -1 94228 -1 -1 156 38 0 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88096 38 36 2995 2744 1 1210 230 17 17 289 clb auto 49.2 MiB 3.22 11251 51622 14069 33893 3660 86.0 MiB 1.54 0.02 8.56417 -2373.71 -8.56417 8.56417 1.11 0.00846637 0.00771902 0.72726 0.616065 74 16051 22 1.34605e+07 8.40746e+06 1.29327e+06 4475.00 16.01 5.12739 4.42106 34075 257581 -1 15820 21 5034 13288 534059 89055 0 0 534059 89055 12124 6019 0 0 18350 13547 0 0 27972 18424 0 0 12475 6589 0 0 233543 21727 0 0 229595 22749 0 0 12124 0 0 7379 38933 39445 259032 1453 521 10.3569 10.3569 -2969.66 -10.3569 0 0 1.62379e+06 5618.64 0.72 0.82 0.33 -1 -1 0.72 0.607918 0.533068 -k6_frac_N10_frac_chain_mem32K_40nm.xml spree.v common 22.76 vpr 75.44 MiB 0.22 20616 -1 -1 15 1.13 -1 -1 39032 -1 -1 65 45 3 1 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77252 45 32 1275 1232 1 831 146 14 14 196 memory auto 37.8 MiB 3.64 7358 31250 9081 18235 3934 75.4 MiB 0.85 0.01 9.73534 -6189.64 -9.73534 9.73534 0.70 0.00482235 0.00424014 0.453393 0.393707 68 13670 22 9.20055e+06 5.54311e+06 806220. 4113.37 12.12 2.15945 1.89866 22432 157909 -1 11694 15 3410 9076 1699511 422960 0 0 1699511 422960 9076 4803 0 0 57842 55629 0 0 62777 58202 0 0 9436 5463 0 0 781091 149342 0 0 779289 149521 0 0 9076 0 0 5805 15868 17275 121698 0 0 11.4497 11.4497 -7399.84 -11.4497 0 0 1.00082e+06 5106.22 0.36 0.76 0.21 -1 -1 0.36 0.261948 0.241941 -k6_frac_N10_frac_chain_mem32K_40nm.xml stereovision0.v common 128.34 vpr 242.26 MiB 2.04 122964 -1 -1 5 14.75 -1 -1 72556 -1 -1 706 157 0 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 248072 157 197 23846 21799 1 6628 1060 33 33 1089 clb auto 184.4 MiB 13.02 39660 573672 189186 359589 24897 218.4 MiB 13.09 0.12 2.93357 -13269.6 -2.93357 2.93357 5.64 0.0539527 0.0471024 6.51429 5.29877 50 62562 33 6.0475e+07 3.80493e+07 3.66263e+06 3363.29 51.59 26.461 21.6395 117303 744553 -1 55467 14 16825 26626 925300 189613 0 0 925300 189613 24093 18260 0 0 36490 28373 0 0 44269 36512 0 0 24639 18848 0 0 399098 44399 0 0 396711 43221 0 0 24093 0 0 7448 36551 38303 216006 2825 2823 3.56714 3.56714 -15222.1 -3.56714 0 0 4.71657e+06 4331.10 2.34 2.96 0.89 -1 -1 2.34 2.80554 2.43686 -k6_frac_N10_frac_chain_mem32K_40nm.xml stereovision1.v common 297.83 vpr 268.80 MiB 1.85 108200 -1 -1 3 76.90 -1 -1 87708 -1 -1 680 115 0 40 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 275248 115 145 23133 19546 1 9699 980 40 40 1600 mult_36 auto 184.5 MiB 14.01 81105 521535 173000 326356 22179 219.1 MiB 13.27 0.14 5.21748 -22044.5 -5.21748 5.21748 8.42 0.0394073 0.0310078 4.48296 3.63749 86 129410 42 9.16046e+07 5.24886e+07 8.98461e+06 5615.38 139.26 21.0186 17.3992 212028 1885476 -1 117897 15 31467 49921 21563487 4242494 0 0 21563487 4242494 44253 35730 0 0 536149 521931 0 0 565778 536801 0 0 45751 36730 0 0 9907327 1569796 0 0 10464229 1541506 0 0 44253 0 0 13245 171517 157850 650283 6340 4366 5.68185 5.68185 -25366.7 -5.68185 0 0 1.13675e+07 7104.67 5.66 9.30 2.46 -1 -1 5.66 2.74907 2.40761 -k6_frac_N10_frac_chain_mem32K_40nm.xml stereovision2.v common 1071.34 vpr 1.43 GiB 2.73 155960 -1 -1 3 12.63 -1 -1 205240 -1 -1 1652 149 0 324 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 1504576 149 182 65737 42630 1 35969 2307 104 104 10816 mult_36 auto 447.2 MiB 45.89 336953 1998354 713359 1226619 58376 1469.3 MiB 93.66 0.68 14.2356 -61247.3 -14.2356 14.2356 217.14 0.150337 0.134365 21.9577 18.3417 80 459361 44 6.67561e+08 2.17331e+08 5.94869e+07 5499.90 491.07 83.3494 70.3513 1421150 12563967 -1 438469 19 116078 136003 31818336 6380705 0 0 31818336 6380705 133312 120755 0 0 920582 880817 0 0 1055780 924151 0 0 134353 121973 0 0 14806651 2154500 0 0 14767658 2178509 0 0 133312 0 0 17330 113879 106009 442672 3046 3323 15.8508 15.8508 -71468.9 -15.8508 0 0 7.49726e+07 6931.63 63.24 19.17 16.36 -1 -1 63.24 8.28146 7.20915 -k6_frac_N10_frac_chain_mem32K_40nm.xml stereovision3.v common 2.98 vpr 66.86 MiB 0.08 10132 -1 -1 5 0.22 -1 -1 35988 -1 -1 14 11 0 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11T22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68468 11 30 313 321 2 118 55 7 7 49 clb auto 28.8 MiB 0.41 384 2655 498 2061 96 66.9 MiB 0.06 0.00 2.27568 -156.828 -2.27568 2.03361 0.11 0.000855836 0.000749128 0.0300177 0.0268101 30 982 28 1.07788e+06 754516 77114.5 1573.76 0.50 0.184304 0.159996 3660 13876 -1 704 13 435 770 24606 8197 0 0 24606 8197 770 615 0 0 1332 1096 0 0 1458 1332 0 0 860 650 0 0 10575 2148 0 0 9611 2356 0 0 770 0 0 335 365 317 2897 0 0 2.49945 2.25671 -184.718 -2.49945 0 0 95414.1 1947.23 0.03 0.06 0.02 -1 -1 0.03 0.0448362 0.0411822 +k6_frac_N10_frac_chain_mem32K_40nm.xml arm_core.v common 583.54 vpr 284.30 MiB 2.26 127036 -1 -1 18 143.67 -1 -1 69044 -1 -1 1012 133 24 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 291128 133 179 18379 18161 1 8999 1348 39 39 1521 clb auto 182.8 MiB 38.65 139498 723319 238538 468975 15806 214.7 MiB 25.63 0.23 16.8897 -129110 -16.8897 16.8897 7.69 0.0626154 0.0544242 7.09752 5.71448 102 202542 32 8.65E+07 6.77E+07 9.95E+06 6539.54 278.54 32.6623 26.1014 217584 2108762 -1 184530 15 36437 132687 21876289 4735687 0 0 21876289 4735687 116013 44730 0 0 387139 354311 0 0 461172 389401 0 0 119910 49834 0 0 10292289 1936912 0 0 10499766 1960499 0 0 116013 0 0 82407 744922 777099 4024753 18649 7546 18.3658 18.3658 -144874 -18.3658 0 0 1.25E+07 8203.53 7.68 11.9 2.76 -1 -1 7.68 3.72028 3.19167 +k6_frac_N10_frac_chain_mem32K_40nm.xml bgm.v common 1047.98 vpr 668.36 MiB 6.44 373064 -1 -1 14 372.53 -1 -1 149696 -1 -1 2738 257 0 11 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 684400 257 32 36518 33906 1 19790 3038 63 63 3969 clb auto 379.1 MiB 95.55 254590 2202438 775550 1395801 31087 668.4 MiB 149.56 1.15 17.922 -23247.4 -17.922 17.922 74.01 0.176172 0.136174 19.2625 15.0121 76 397155 41 2.37E+08 1.52E+08 2.06E+07 5189.55 229.02 70.1957 55.6831 506266 4280222 -1 375988 23 94107 422462 29079480 4995732 0 0 29079480 4995732 422462 153170 0 0 646594 537328 0 0 910439 649559 0 0 443385 175289 0 0 13141347 1723999 0 0 13515253 1756387 0 0 422462 0 0 340947 2219541 2157492 15111548 0 0 20.0923 20.0923 -25869.8 -20.0923 0 0 2.58E+07 6488.59 14.89 24.61 5.56 -1 -1 14.89 11.265 9.47638 +k6_frac_N10_frac_chain_mem32K_40nm.xml blob_merge.v common 304.07 vpr 164.58 MiB 0.68 57488 -1 -1 5 75.57 -1 -1 66788 -1 -1 616 36 0 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 168528 36 100 14036 11283 1 3221 752 31 31 961 clb auto 122.9 MiB 23.95 45792 311790 99765 194358 17667 156.0 MiB 8.56 0.08 13.3702 -2605.71 -13.3702 13.3702 4.96 0.0320431 0.0281398 3.37408 2.78262 62 75192 47 5.15E+07 3.32E+07 4.00E+06 4161.1 167.92 14.3783 11.4346 110674 804802 -1 66248 17 12785 58727 2464123 325270 0 0 2464123 325270 57043 15402 0 0 74924 59239 0 0 104321 74938 0 0 58116 17535 0 0 1077044 78388 0 0 1092675 79768 0 0 57043 0 0 46702 407614 420451 2440416 1861 123 15.1322 15.1322 -2935.85 -15.1322 0 0 4.97E+06 5169.75 2.65 2.78 0.97 -1 -1 2.65 1.89928 1.61546 +k6_frac_N10_frac_chain_mem32K_40nm.xml boundtop.v common 9.78 vpr 72.69 MiB 0.69 45372 -1 -1 3 0.75 -1 -1 40416 -1 -1 92 142 0 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 74432 142 193 1069 1140 1 565 427 14 14 196 clb auto 34.7 MiB 1.06 1752 149878 48868 80243 20767 72.7 MiB 0.76 0.01 2.96377 -460.634 -2.96377 2.96377 0.71 0.0028657 0.0026696 0.307281 0.286074 38 3669 14 9.20E+06 4.96E+06 467348 2384.43 1.8 0.896693 0.825641 18724 93853 -1 3301 11 1157 1822 77690 20816 0 0 77690 20816 1822 1367 0 0 3401 2932 0 0 4076 3408 0 0 1961 1456 0 0 32524 5850 0 0 33906 5803 0 0 1822 0 0 670 1672 1664 11474 0 0 3.62254 3.62254 -560.037 -3.62254 0 0 593372 3027.41 0.24 0.13 0.11 -1 -1 0.24 0.105696 0.0999064 +k6_frac_N10_frac_chain_mem32K_40nm.xml ch_intrinsics.v common 4.2 vpr 67.44 MiB 0.06 9784 -1 -1 3 0.39 -1 -1 37396 -1 -1 65 99 1 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 69060 99 130 363 493 1 251 295 12 12 144 clb auto 29.2 MiB 0.24 717 71908 25870 34054 11984 67.4 MiB 0.27 0 1.83922 -198.941 -1.83922 1.83922 0.45 0.00107536 0.000983006 0.084569 0.0781498 40 1645 10 5.66E+06 4.05E+06 333335 2314.82 1.04 0.284185 0.258873 12946 64812 -1 1532 9 620 808 72040 24269 0 0 72040 24269 808 743 0 0 3914 3738 0 0 4492 3914 0 0 867 808 0 0 29829 7624 0 0 32130 7442 0 0 808 0 0 188 245 173 1848 0 0 2.45075 2.45075 -235.916 -2.45075 0 0 419432 2912.72 0.16 0.06 0.08 -1 -1 0.16 0.0334775 0.0315937 +k6_frac_N10_frac_chain_mem32K_40nm.xml diffeq1.v common 43.62 vpr 71.27 MiB 0.05 9636 -1 -1 6 0.3 -1 -1 36860 -1 -1 32 162 0 5 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 72980 162 96 1075 884 1 667 295 16 16 256 mult_36 auto 33.3 MiB 0.67 4798 79756 25666 46693 7397 71.3 MiB 0.76 0.01 15.573 -1229.29 -15.573 15.573 1.08 0.00404968 0.00376809 0.326322 0.303508 66 9962 44 1.21E+07 3.70E+06 1.04E+06 4046.83 36.92 2.32322 2.13815 28848 203676 -1 8389 22 3031 5003 1662328 462996 0 0 1662328 462996 5003 3821 0 0 74447 73340 0 0 78985 74896 0 0 5423 4117 0 0 758826 152086 0 0 739644 154736 0 0 5003 0 0 1990 4631 4970 27606 0 0 17.0901 17.0901 -1355.89 -17.0901 0 0 1.29E+06 5032.87 0.5 0.64 0.29 -1 -1 0.5 0.177776 0.166942 +k6_frac_N10_frac_chain_mem32K_40nm.xml diffeq2.v common 19.92 vpr 70.00 MiB 0.03 8412 -1 -1 6 0.17 -1 -1 36716 -1 -1 20 66 0 7 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 71680 66 96 866 607 1 547 189 18 18 324 mult_36 auto 32.0 MiB 0.61 4654 51137 19049 27853 4235 70.0 MiB 0.59 0.01 12.016 -717.144 -12.016 12.016 1.33 0.00288125 0.00270837 0.299383 0.281 46 11715 25 1.57E+07 3.85E+06 949518 2930.61 12.33 1.06453 0.994468 33056 191736 -1 9693 19 4291 9311 4610800 1111878 0 0 4610800 1111878 9311 7047 0 0 162170 160836 0 0 175341 162904 0 0 10385 8089 0 0 2127055 392581 0 0 2126538 380421 0 0 9311 0 0 5030 13904 14865 63106 0 0 13.2812 13.2812 -865.402 -13.2812 0 0 1.22E+06 3769.23 0.55 1.5 0.28 -1 -1 0.55 0.161177 0.152592 +k6_frac_N10_frac_chain_mem32K_40nm.xml LU8PEEng.v common 5168.34 vpr 613.42 MiB 6.03 207148 -1 -1 101 162.07 -1 -1 107064 -1 -1 2196 114 44 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 628144 114 102 38224 33865 1 18116 2464 57 57 3249 clb auto 367.2 MiB 109.09 234636 1915489 724304 1164028 27157 581.5 MiB 112.18 0.83 66.9135 -51945.6 -66.9135 66.9135 57.34 0.131263 0.114164 18.2276 14.4048 90 365741 48 1.92E+08 1.46E+08 1.94E+07 5982.34 400 106.508 83.4994 441623 4070163 -1 327184 24 72941 275676 44891770 9678649 0 0 44891770 9678649 266831 93636 0 0 740951 671825 0 0 917391 747345 0 0 277270 108185 0 0 21096127 3960057 0 0 21593200 4097601 0 0 266831 0 0 202110 1035110 1041645 6661945 9314 7656 76.3379 76.3379 -66111.6 -76.3379 0 0 2.43E+07 7486.9 15.86 27.84 5.88 -1 -1 15.86 9.32536 7.81205 +k6_frac_N10_frac_chain_mem32K_40nm.xml LU32PEEng.v common 12253.51 vpr 2.06 GiB 24.8 702124 -1 -1 101 1393.87 -1 -1 324392 -1 -1 7514 114 167 32 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 2159640 114 102 124851 111146 1 59132 7929 103 103 10609 clb auto 1159.2 MiB 360.78 1052983 9965835 4119074 5792066 54695 1877.1 MiB 704.52 3.21 65.2375 -338588 -65.2375 65.2375 220.28 0.329452 0.260932 61.6871 48.1144 126 1412558 40 6.46E+08 5.09E+08 8.73E+07 8231.76 9221.47 183.942 146.5 1710436 19091112 -1 1339294 22 215646 900684 223339649 51896881 0 0 223339649 51896881 844018 267615 0 0 2644985 2402486 0 0 3287959 2664786 0 0 877062 319916 0 0 106407801 22685912 0 0 109277824 23556166 0 0 844018 0 0 658116 4296012 4273075 23348543 59126 221175 75.0218 75.0218 -494523 -75.0218 0 0 1.10E+08 10406.3 49.82 82.53 17.74 -1 -1 49.82 18.8426 16.0775 +k6_frac_N10_frac_chain_mem32K_40nm.xml mkDelayWorker32B.v common 126.67 vpr 317.73 MiB 1.18 69740 -1 -1 5 11.78 -1 -1 56008 -1 -1 456 506 45 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 325356 506 553 3519 4017 1 3099 1560 50 50 2500 memory auto 62.0 MiB 7.03 15735 1150148 545151 422976 182021 317.7 MiB 6.5 0.07 6.80432 -1955.3 -6.80432 6.80432 41.74 0.0218543 0.0199401 2.87939 2.5967 40 23990 15 1.48E+08 4.92E+07 7.18E+06 2873.75 28.29 8.28019 7.61139 260716 1475984 -1 22959 13 3800 4917 3473456 838921 0 0 3473456 838921 4527 4369 0 0 98810 97630 0 0 101330 99135 0 0 4798 4570 0 0 1607324 314105 0 0 1656667 319112 0 0 4527 0 0 730 5238 3996 9252 399 961 7.7292 7.7292 -2395.07 -7.7292 0 0 8.98E+06 3590.19 5.57 1.91 1.79 -1 -1 5.57 0.875143 0.823244 +k6_frac_N10_frac_chain_mem32K_40nm.xml mkPktMerge.v common 24.69 vpr 73.60 MiB 0.16 16940 -1 -1 2 0.16 -1 -1 36836 -1 -1 29 311 15 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 75364 311 156 1019 1160 1 965 511 28 28 784 memory auto 35.3 MiB 0.88 8204 204711 70832 123314 10565 73.6 MiB 1.31 0.02 3.71444 -4070.46 -3.71444 3.71444 3.71 0.00555979 0.00485305 0.567935 0.494678 36 15411 35 4.25E+07 9.78E+06 1.95E+06 2486.2 10.48 2.10544 1.87459 76314 389223 -1 13948 14 3166 3562 2712374 748186 0 0 2712374 748186 3562 3377 0 0 87585 86655 0 0 89265 87873 0 0 3598 3433 0 0 1251982 282755 0 0 1276382 284093 0 0 3562 0 0 396 2815 2263 11862 0 0 4.28754 4.28754 -4822.43 -4.28754 -0.00271738 -0.00135869 2.41E+06 3068.51 1.25 1.07 0.47 -1 -1 1.25 0.24306 0.224609 +k6_frac_N10_frac_chain_mem32K_40nm.xml mkSMAdapter4B.v common 30.36 vpr 86.77 MiB 0.38 29320 -1 -1 4 3 -1 -1 40712 -1 -1 188 193 5 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88848 193 205 2863 2789 1 1455 591 20 20 400 memory auto 49.6 MiB 4.06 11642 265844 92770 145763 27311 86.8 MiB 2.7 0.03 4.52152 -2547.1 -4.52152 4.52152 1.7 0.00883134 0.00792978 1.05264 0.927861 52 19913 20 2.07E+07 1.29E+07 1.31E+06 3276.84 11.41 3.39207 2.99277 42580 268535 -1 17905 15 5289 12745 1471240 365825 0 0 1471240 365825 12288 6989 0 0 44474 39572 0 0 50685 44716 0 0 13085 7700 0 0 678707 134588 0 0 672001 132260 0 0 12288 0 0 7269 38367 36966 273159 499 97 4.91806 4.91806 -2995.21 -4.91806 -0.000474482 -0.000474482 1.73E+06 4312.96 0.78 0.93 0.34 -1 -1 0.78 0.452378 0.414209 +k6_frac_N10_frac_chain_mem32K_40nm.xml or1200.v common 96.18 vpr 121.08 MiB 0.63 39824 -1 -1 8 8.08 -1 -1 44660 -1 -1 258 385 2 1 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 123988 385 394 4673 4537 1 2422 1040 27 27 729 io auto 65.2 MiB 11.38 31057 606745 237084 344221 25440 102.1 MiB 7.51 0.08 8.28895 -9591.03 -8.28895 8.28895 3.54 0.018804 0.0168864 2.31506 1.98075 90 46346 24 3.93E+07 1.54E+07 4.16E+06 5710.65 50.92 10.9219 9.57036 97397 860673 -1 43862 20 10005 34919 3111396 573903 0 0 3111396 573903 33280 14842 0 0 79378 71234 0 0 100615 79428 0 0 34858 16570 0 0 1442455 190475 0 0 1420810 201354 0 0 33280 0 0 23884 120158 117967 736675 1813 56 8.86754 8.86754 -10883.6 -8.86754 0 0 5.21E+06 7143.01 2.53 2.21 1.08 -1 -1 2.53 1.10656 0.994074 +k6_frac_N10_frac_chain_mem32K_40nm.xml raygentop.v common 35.72 vpr 86.49 MiB 0.41 31640 -1 -1 3 1.69 -1 -1 43372 -1 -1 112 214 0 8 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88564 214 305 2963 2869 1 1445 639 19 19 361 io auto 48.9 MiB 3.64 11737 250980 84439 153411 13130 86.5 MiB 2.14 0.03 4.44136 -2511.57 -4.44136 4.44136 1.48 0.00896997 0.00787568 0.881744 0.782364 62 23914 29 1.73E+07 9.20E+06 1.42E+06 3939 18.94 3.93332 3.52675 40483 281719 -1 20358 17 5836 12809 2980957 662877 0 0 2980957 662877 12561 7996 0 0 106408 103314 0 0 111762 106470 0 0 13273 8738 0 0 1374421 214283 0 0 1362532 222076 0 0 12561 0 0 6797 24561 24020 131982 250 0 5.01085 5.01085 -3005.46 -5.01085 0 0 1.77E+06 4892.99 0.83 1.33 0.33 -1 -1 0.83 0.473515 0.440189 +k6_frac_N10_frac_chain_mem32K_40nm.xml sha.v common 472.5 abc 92.02 MiB 1.43 38276 -1 -1 3 438.61 -1 -1 94228 -1 -1 156 38 0 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 88096 38 36 2995 2744 1 1210 230 17 17 289 clb auto 49.2 MiB 3.22 11251 51622 14069 33893 3660 86.0 MiB 1.54 0.02 8.56417 -2373.71 -8.56417 8.56417 1.11 0.00846637 0.00771902 0.72726 0.616065 74 16051 22 1.35E+07 8.41E+06 1.29E+06 4475 16.01 5.12739 4.42106 34075 257581 -1 15820 21 5034 13288 534059 89055 0 0 534059 89055 12124 6019 0 0 18350 13547 0 0 27972 18424 0 0 12475 6589 0 0 233543 21727 0 0 229595 22749 0 0 12124 0 0 7379 38933 39445 259032 1453 521 10.3569 10.3569 -2969.66 -10.3569 0 0 1.62E+06 5618.64 0.72 0.82 0.33 -1 -1 0.72 0.607918 0.533068 +k6_frac_N10_frac_chain_mem32K_40nm.xml spree.v common 22.76 vpr 75.44 MiB 0.22 20616 -1 -1 15 1.13 -1 -1 39032 -1 -1 65 45 3 1 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77252 45 32 1275 1232 1 831 146 14 14 196 memory auto 37.8 MiB 3.64 7358 31250 9081 18235 3934 75.4 MiB 0.85 0.01 9.73534 -6189.64 -9.73534 9.73534 0.7 0.00482235 0.00424014 0.453393 0.393707 68 13670 22 9.20E+06 5.54E+06 8.06E+05 4113.37 12.12 2.15945 1.89866 22432 157909 -1 11694 15 3410 9076 1699511 422960 0 0 1699511 422960 9076 4803 0 0 57842 55629 0 0 62777 58202 0 0 9436 5463 0 0 781091 149342 0 0 779289 149521 0 0 9076 0 0 5805 15868 17275 121698 0 0 11.4497 11.4497 -7399.84 -11.4497 0 0 1.00E+06 5106.22 0.36 0.76 0.21 -1 -1 0.36 0.261948 0.241941 +k6_frac_N10_frac_chain_mem32K_40nm.xml stereovision0.v common 128.34 vpr 242.26 MiB 2.04 122964 -1 -1 5 14.75 -1 -1 72556 -1 -1 706 157 0 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 248072 157 197 23846 21799 1 6628 1060 33 33 1089 clb auto 184.4 MiB 13.02 39660 573672 189186 359589 24897 218.4 MiB 13.09 0.12 2.93357 -13269.6 -2.93357 2.93357 5.64 0.0539527 0.0471024 6.51429 5.29877 50 62562 33 6.05E+07 3.80E+07 3.66E+06 3363.29 51.59 26.461 21.6395 117303 744553 -1 55467 14 16825 26626 925300 189613 0 0 925300 189613 24093 18260 0 0 36490 28373 0 0 44269 36512 0 0 24639 18848 0 0 399098 44399 0 0 396711 43221 0 0 24093 0 0 7448 36551 38303 216006 2825 2823 3.56714 3.56714 -15222.1 -3.56714 0 0 4.72E+06 4331.1 2.34 2.96 0.89 -1 -1 2.34 2.80554 2.43686 +k6_frac_N10_frac_chain_mem32K_40nm.xml stereovision1.v common 297.83 vpr 268.80 MiB 1.85 108200 -1 -1 3 76.9 -1 -1 87708 -1 -1 680 115 0 40 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 275248 115 145 23133 19546 1 9699 980 40 40 1600 mult_36 auto 184.5 MiB 14.01 81105 521535 173000 326356 22179 219.1 MiB 13.27 0.14 5.21748 -22044.5 -5.21748 5.21748 8.42 0.0394073 0.0310078 4.48296 3.63749 86 129410 42 9.16E+07 5.25E+07 8.98E+06 5615.38 139.26 21.0186 17.3992 212028 1885476 -1 117897 15 31467 49921 21563487 4242494 0 0 21563487 4242494 44253 35730 0 0 536149 521931 0 0 565778 536801 0 0 45751 36730 0 0 9907327 1569796 0 0 10464229 1541506 0 0 44253 0 0 13245 171517 157850 650283 6340 4366 5.68185 5.68185 -25366.7 -5.68185 0 0 1.14E+07 7104.67 5.66 9.3 2.46 -1 -1 5.66 2.74907 2.40761 +k6_frac_N10_frac_chain_mem32K_40nm.xml stereovision2.v common 1071.34 vpr 1.43 GiB 2.73 155960 -1 -1 3 12.63 -1 -1 205240 -1 -1 1652 149 0 324 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 1504576 149 182 65737 42630 1 35969 2307 104 104 10816 mult_36 auto 447.2 MiB 45.89 336953 1998354 713359 1226619 58376 1469.3 MiB 93.66 0.68 14.2356 -61247.3 -14.2356 14.2356 217.14 0.150337 0.134365 21.9577 18.3417 80 459361 44 6.68E+08 2.17E+08 5.95E+07 5499.9 491.07 83.3494 70.3513 1421150 12563967 -1 438469 19 116078 136003 31818336 6380705 0 0 31818336 6380705 133312 120755 0 0 920582 880817 0 0 1055780 924151 0 0 134353 121973 0 0 14806651 2154500 0 0 14767658 2178509 0 0 133312 0 0 17330 113879 106009 442672 3046 3323 15.8508 15.8508 -71468.9 -15.8508 0 0 7.50E+07 6931.63 63.24 19.17 16.36 -1 -1 63.24 8.28146 7.20915 +k6_frac_N10_frac_chain_mem32K_40nm.xml stereovision3.v common 2.98 vpr 66.86 MiB 0.08 10132 -1 -1 5 0.22 -1 -1 35988 -1 -1 14 11 0 0 success 3634420-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-11-11 22:36:49 gh-actions-runner-vtr-auto-spawned42 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68468 11 30 313 321 2 118 55 7 7 49 clb auto 28.8 MiB 0.41 384 2655 498 2061 96 66.9 MiB 0.06 0 2.27568 -156.828 -2.27568 2.03361 0.11 0.000855836 0.000749128 0.0300177 0.0268101 30 982 28 1.08E+06 754516 77114.5 1573.76 0.5 0.184304 0.159996 3660 13876 -1 704 13 435 770 24606 8197 0 0 24606 8197 770 615 0 0 1332 1096 0 0 1458 1332 0 0 860 650 0 0 10575 2148 0 0 9611 2356 0 0 770 0 0 335 365 317 2897 0 0 2.49945 2.25671 -184.718 -2.49945 0 0 95414.1 1947.23 0.03 0.06 0.02 -1 -1 0.03 0.0448362 0.0411822 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong/koios_test_no_hb/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_strong/koios_test_no_hb/config/golden_results.txt index 55b33b54cb3..edd95d55fb0 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_strong/koios_test_no_hb/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong/koios_test_no_hb/config/golden_results.txt @@ -1,2 +1,2 @@ - arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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 router_lookahead_computation_time crit_path_route_time crit_path_total_timing_analysis_time crit_path_total_sta_time - k6FracN10LB_mem20K_complexDSP_customSB_22nm.xml test.v common 9.07 vpr 76.04 MiB -1 -1 0.39 23168 1 0.06 -1 -1 37692 -1 -1 23 130 0 -1 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 77868 130 40 1147 997 1 570 196 14 14 196 dsp_top auto 38.0 MiB 0.41 2498 76.0 MiB 0.23 0.00 5.08449 -590.765 -5.08449 5.08449 0.51 0.000666962 0.000567999 0.0721371 0.0622911 88 5854 47 4.93594e+06 1.40315e+06 1.29237e+06 6593.73 5.43 0.48764 0.426891 5060 22 2195 2290 357625 114229 6.96276 6.96276 -760.438 -6.96276 0 0 1.62459e+06 8288.75 0.30 0.11 0.0504956 0.0466417 +arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time +k6FracN10LB_mem20K_complexDSP_customSB_22nm.xml test.v common 17.68 vpr 78.43 MiB -1 -1 0.61 22116 1 0.12 -1 -1 37648 -1 -1 23 130 0 -1 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 80308 130 40 1147 997 1 570 196 14 14 196 dsp_top auto 40.4 MiB 0.48 2519 45716 13998 25604 6114 78.4 MiB 0.45 0.01 5.08449 -543.448 -5.08449 5.08449 0.87 0.00181542 0.00159296 0.162949 0.145549 120 4946 26 4.93594e+06 1.40315e+06 1.70710e+06 8709.71 11.35 1.1299 0.996 38028 382122 -1 4665 23 2316 2393 367686 101146 6.68827 6.68827 -718.625 -6.68827 0 0 2.19468e+06 11197.4 0.70 0.23 0.61 -1 -1 0.70 0.11741 0.107607 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_blocks_with_no_inputs/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_blocks_with_no_inputs/config/golden_results.txt index 3bcabf4c9be..2d787787cf3 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_blocks_with_no_inputs/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_blocks_with_no_inputs/config/golden_results.txt @@ -1,9 +1,9 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time -k6_N10_mem32K_40nm.xml ch_intrinsics.v common 2.58 vpr 54.46 MiB -1 -1 0.18 18404 3 0.06 -1 -1 32768 -1 -1 69 99 1 0 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 55764 99 130 343 473 1 230 299 12 12 144 clb auto 15.6 MiB 0.05 549 54.5 MiB 0.16 0.00 1.50234 -115.736 -1.50234 1.50234 0.22 0.000352682 0.000313489 0.0299607 0.0266762 38 1144 17 5.66058e+06 4.26669e+06 306247. 2126.71 0.99 0.19216 0.17528 10492 58364 -1 977 11 593 793 49801 15607 0 0 49801 15607 793 685 0 0 2720 2548 0 0 3251 2722 0 0 3451 1957 0 0 18818 4205 0 0 20768 3490 0 0 793 0 0 200 322 186 2231 0 0 1.91556 1.91556 -133.023 -1.91556 -1.00753 -0.29768 388532. 2698.14 0.09 0.03 0.04 -1 -1 0.09 0.013453 0.012666 -k6_N10_mem32K_40nm.xml diffeq1.v common 9.30 vpr 57.83 MiB -1 -1 0.25 22800 15 0.28 -1 -1 34144 -1 -1 49 162 0 5 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 59220 162 96 993 934 1 713 312 16 16 256 mult_36 auto 19.7 MiB 0.15 5746 57.8 MiB 0.45 0.01 20.3951 -1668.77 -20.3951 20.3951 0.46 0.000947149 0.000833483 0.0952888 0.0842086 48 10960 44 1.21132e+07 4.62081e+06 721839. 2819.68 5.65 0.60919 0.550741 21168 139178 -1 9404 24 4280 9297 2583405 664381 0 0 2583405 664381 9297 5531 0 0 101540 99578 0 0 106882 101857 0 0 38571 18904 0 0 1143445 220795 0 0 1183670 217716 0 0 9297 0 0 5449 14910 13326 92646 0 0 22.1699 22.1699 -1801.22 -22.1699 0 0 926152. 3617.78 0.21 0.44 0.09 -1 -1 0.21 0.0716511 0.0668162 -k6_N10_mem32K_40nm.xml single_wire.v common 0.52 vpr 50.72 MiB -1 -1 0.06 15616 1 0.00 -1 -1 29132 -1 -1 0 1 0 0 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 51936 1 1 1 2 0 1 2 3 3 9 -1 auto 11.7 MiB 0.00 2 50.7 MiB 0.00 0.00 0.205011 -0.205011 -0.205011 nan 0.00 4.145e-06 1.863e-06 3.2805e-05 1.9748e-05 2 1 1 53894 0 1165.58 129.509 0.00 9.0645e-05 5.4355e-05 254 297 -1 1 1 1 1 17 8 0 0 17 8 1 1 0 0 4 1 0 0 8 4 0 0 1 1 0 0 2 1 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0.211201 nan -0.211201 -0.211201 0 0 1165.58 129.509 0.00 0.00 0.00 -1 -1 0.00 4.4451e-05 2.9069e-05 -k6_N10_mem32K_40nm.xml single_ff.v common 0.53 vpr 50.72 MiB -1 -1 0.05 16304 1 0.00 -1 -1 29220 -1 -1 1 2 0 0 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 51936 2 1 3 4 1 3 4 3 3 9 -1 auto 12.1 MiB 0.00 4 50.7 MiB 0.00 0.00 0.570641 -0.944653 -0.570641 0.570641 0.00 5.441e-06 2.911e-06 6.5253e-05 5.0063e-05 2 4 2 53894 53894 1165.58 129.509 0.00 0.000246213 0.000179198 254 297 -1 4 2 3 3 75 50 0 0 75 50 3 3 0 0 18 17 0 0 18 18 0 0 21 3 0 0 7 6 0 0 8 3 0 0 3 0 0 0 0 0 3 0 0 0.577715 0.577715 -1.12352 -0.577715 0 0 1165.58 129.509 0.00 0.00 0.00 -1 -1 0.00 7.6239e-05 5.7137e-05 -k6_N10_mem32K_40nm_i_or_o.xml ch_intrinsics.v common 4.65 vpr 54.40 MiB -1 -1 0.18 18588 3 0.06 -1 -1 32852 -1 -1 69 99 1 0 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 55704 99 130 343 473 1 230 299 19 19 361 o auto 15.6 MiB 0.05 656 54.4 MiB 0.17 0.00 1.56502 -127.887 -1.56502 1.56502 1.47 0.000329783 0.000292439 0.0303049 0.0268464 36 1081 33 1.79173e+07 4.26669e+06 833707. 2309.44 1.10 0.125636 0.114063 24998 161561 -1 1010 10 604 865 61403 18613 0 0 61403 18613 865 636 0 0 3439 3111 0 0 5007 3439 0 0 3440 1950 0 0 22020 5256 0 0 26632 4221 0 0 865 0 0 261 448 494 3238 0 0 1.86352 1.86352 -140.953 -1.86352 -0.308417 -0.217955 1.02328e+06 2834.56 0.26 0.03 0.09 -1 -1 0.26 0.0127518 0.0120232 -k6_N10_mem32K_40nm_i_or_o.xml diffeq1.v common 14.10 vpr 64.05 MiB -1 -1 0.27 23088 15 0.28 -1 -1 34052 -1 -1 49 162 0 5 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 65592 162 96 993 934 1 713 312 24 24 576 i auto 19.4 MiB 0.16 6810 64.1 MiB 0.40 0.01 21.0365 -1717.91 -21.0365 21.0365 2.44 0.000922333 0.000807313 0.0846212 0.074377 48 11296 30 3.08128e+07 4.62081e+06 1.73314e+06 3008.92 7.32 0.528591 0.477725 45726 346985 -1 10253 48 3591 7179 2410640 546998 0 0 2410640 546998 7179 4596 0 0 78686 76792 0 0 84765 78939 0 0 32042 17255 0 0 1102364 178740 0 0 1105604 190676 0 0 7179 0 0 3768 9681 9301 63545 0 0 22.573 22.573 -1845.72 -22.573 0 0 2.23250e+06 3875.87 0.54 0.47 0.20 -1 -1 0.54 0.114137 0.105243 -k6_N10_mem32K_40nm_i_or_o.xml single_wire.v common 0.53 vpr 50.77 MiB -1 -1 0.04 15896 1 0.01 -1 -1 29060 -1 -1 0 1 0 0 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 51988 1 1 1 2 0 1 2 4 4 16 i auto 11.8 MiB 0.00 3 50.8 MiB 0.00 0.00 0.205011 -0.205011 -0.205011 nan 0.00 5.183e-06 2.628e-06 3.447e-05 2.077e-05 4 2 1 215576 0 2092.17 130.760 0.01 9.8886e-05 6.272e-05 324 600 -1 2 1 1 1 18 8 0 0 18 8 1 1 0 0 4 1 0 0 8 4 0 0 1 1 0 0 2 1 0 0 2 0 0 0 1 0 0 0 0 0 1 0 0 0.229376 nan -0.229376 -0.229376 0 0 3281.68 205.105 0.00 0.00 0.00 -1 -1 0.00 4.0528e-05 2.5764e-05 -k6_N10_mem32K_40nm_i_or_o.xml single_ff.v common 0.53 vpr 50.80 MiB -1 -1 0.07 16172 1 0.01 -1 -1 29280 -1 -1 1 2 0 0 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 52020 2 1 3 4 1 3 4 4 4 16 i auto 12.4 MiB 0.00 5 50.8 MiB 0.00 0.00 0.669261 -1.04327 -0.669261 0.669261 0.00 6.502e-06 3.474e-06 5.1048e-05 3.5982e-05 6 3 1 215576 53894 3281.68 205.105 0.01 0.000150699 0.000106145 340 760 -1 4 2 4 4 89 48 0 0 89 48 4 4 0 0 14 12 0 0 18 14 0 0 22 8 0 0 16 8 0 0 15 2 0 0 4 0 0 0 0 0 4 0 0 0.652118 0.652118 -1.05145 -0.652118 0 0 4601.64 287.602 0.00 0.00 0.00 -1 -1 0.00 7.6869e-05 5.7853e-05 +arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time +k6_N10_mem32K_40nm.xml ch_intrinsics.v common 3.45 vpr 65.81 MiB -1 -1 0.32 21348 3 0.11 -1 -1 36952 -1 -1 69 99 1 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67388 99 130 343 473 1 230 299 12 12 144 clb auto 27.1 MiB 0.08 556 77222 25256 37752 14214 65.8 MiB 0.30 0.00 1.5462 -112.861 -1.5462 1.5462 0.38 0.00080063 0.000722977 0.0757455 0.0688166 38 1281 25 5.66058e+06 4.26669e+06 306247. 2126.71 0.92 0.28043 0.252467 10492 58364 -1 1027 11 564 816 39513 11063 1.94304 1.94304 -131.753 -1.94304 -1.27501 -0.29768 388532. 2698.14 0.14 0.05 0.07 -1 -1 0.14 0.0288769 0.0267706 +k6_N10_mem32K_40nm.xml diffeq1.v common 10.05 vpr 69.04 MiB -1 -1 0.50 25852 15 0.40 -1 -1 37796 -1 -1 52 162 0 5 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 70700 162 96 994 935 1 709 315 16 16 256 mult_36 auto 30.9 MiB 0.25 5487 92421 26112 58354 7955 69.0 MiB 0.93 0.02 19.9622 -1597.96 -19.9622 19.9622 0.88 0.00319394 0.00295064 0.317285 0.295421 48 10678 33 1.21132e+07 4.78249e+06 721839. 2819.68 4.60 1.03241 0.953971 21168 139178 -1 9055 25 4204 9131 2456861 636581 21.609 21.609 -1782.52 -21.609 0 0 926152. 3617.78 0.23 0.48 0.09 -1 -1 0.23 0.109082 0.101744 +k6_N10_mem32K_40nm.xml single_wire.v common 0.59 vpr 62.98 MiB -1 -1 0.08 18916 1 0.02 -1 -1 33504 -1 -1 0 1 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64488 1 1 1 2 0 1 2 3 3 9 -1 auto 24.5 MiB 0.00 2 3 1 2 0 63.0 MiB 0.00 0.00 0.205011 -0.205011 -0.205011 nan 0.01 9.271e-06 5.597e-06 0.000112969 8.1896e-05 2 1 1 53894 0 1165.58 129.509 0.00 0.00131824 0.00123952 254 297 -1 1 1 1 1 17 8 0.211201 nan -0.211201 -0.211201 0 0 1165.58 129.509 0.00 0.00 0.00 -1 -1 0.00 0.00109269 0.00105791 +k6_N10_mem32K_40nm.xml single_ff.v common 0.60 vpr 62.86 MiB -1 -1 0.09 19324 1 0.03 -1 -1 33520 -1 -1 1 2 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64372 2 1 3 4 1 3 4 3 3 9 -1 auto 24.3 MiB 0.00 4 9 6 0 3 62.9 MiB 0.00 0.00 0.570641 -0.944653 -0.570641 0.570641 0.01 1.3913e-05 9.708e-06 0.000128096 0.000103465 2 4 2 53894 53894 1165.58 129.509 0.00 0.00133575 0.001249 254 297 -1 4 2 3 3 75 50 0.577715 0.577715 -1.12352 -0.577715 0 0 1165.58 129.509 0.00 0.00 0.00 -1 -1 0.00 0.001169 0.00112706 +k6_N10_mem32K_40nm_i_or_o.xml ch_intrinsics.v common 9.87 vpr 65.71 MiB -1 -1 0.33 20948 3 0.12 -1 -1 37288 -1 -1 69 99 1 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67292 99 130 343 473 1 230 299 19 19 361 o auto 27.1 MiB 0.08 940 77222 18805 41143 17274 65.7 MiB 0.29 0.00 1.86877 -128.708 -1.86877 1.86877 3.13 0.000737698 0.00067743 0.0821963 0.0751828 32 1646 13 1.79173e+07 4.26669e+06 762679. 2112.68 3.31 0.381624 0.341802 24278 148653 -1 1457 13 650 873 57544 15371 2.14942 2.14942 -149.493 -2.14942 -0.441214 -0.239291 944445. 2616.19 0.41 0.06 0.17 -1 -1 0.41 0.0313872 0.0287798 +k6_N10_mem32K_40nm_i_or_o.xml diffeq1.v common 16.99 vpr 75.94 MiB -1 -1 0.50 25988 15 0.42 -1 -1 38076 -1 -1 52 162 0 5 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 77764 162 96 994 935 1 709 315 24 24 576 i auto 30.8 MiB 0.26 6882 73143 19957 46793 6393 75.9 MiB 0.68 0.01 19.9564 -1698.51 -19.9564 19.9564 4.98 0.00267534 0.00247734 0.213784 0.197609 48 10967 35 3.08128e+07 4.78249e+06 1.73314e+06 3008.92 5.68 0.828895 0.763605 45726 346985 -1 10157 31 3745 7811 2515002 592675 21.52 21.52 -1843.5 -21.52 0 0 2.23250e+06 3875.87 0.65 0.55 0.22 -1 -1 0.65 0.127803 0.118709 +k6_N10_mem32K_40nm_i_or_o.xml single_wire.v common 0.62 vpr 62.95 MiB -1 -1 0.09 18980 1 0.02 -1 -1 33116 -1 -1 0 1 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64456 1 1 1 2 0 1 2 4 4 16 i auto 24.5 MiB 0.00 3 3 0 0 3 62.9 MiB 0.00 0.00 0.205011 -0.205011 -0.205011 nan 0.01 9.296e-06 6.057e-06 8.15e-05 5.848e-05 4 2 1 215576 0 2092.17 130.760 0.01 0.00128963 0.00121448 324 600 -1 2 1 1 1 18 8 0.229376 nan -0.229376 -0.229376 0 0 3281.68 205.105 0.00 0.00 0.00 -1 -1 0.00 0.00144441 0.00139542 +k6_N10_mem32K_40nm_i_or_o.xml single_ff.v common 0.63 vpr 62.64 MiB -1 -1 0.10 19600 1 0.03 -1 -1 33448 -1 -1 1 2 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 64148 2 1 3 4 1 3 4 4 4 16 i auto 24.0 MiB 0.00 5 9 0 0 9 62.6 MiB 0.00 0.00 0.669261 -1.04327 -0.669261 0.669261 0.01 1.3252e-05 9.69e-06 0.000120822 8.1606e-05 6 3 1 215576 53894 3281.68 205.105 0.01 0.00143879 0.00132966 340 760 -1 4 2 4 4 77 32 0.652118 0.652118 -1.05145 -0.652118 0 0 4601.64 287.602 0.00 0.00 0.00 -1 -1 0.00 0.00115249 0.00110986 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_fc_abs/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_fc_abs/config/golden_results.txt index 87a1523aa95..ee0b1475e7f 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_fc_abs/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_fc_abs/config/golden_results.txt @@ -1,2 +1,2 @@ - arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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 router_lookahead_computation_time crit_path_route_time crit_path_total_timing_analysis_time crit_path_total_sta_time - k6_N10_mem32K_40nm_fc_abs.xml stereovision3.v common 1.44 vpr 62.21 MiB -1 -1 0.41 25656 5 0.11 -1 -1 36124 -1 -1 12 10 0 0 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 63700 10 2 181 183 1 40 24 6 6 36 clb auto 23.7 MiB 0.03 161 62.2 MiB 0.01 0.00 2.01366 -86.3479 -2.01366 2.01366 0.03 0.000102594 7.9786e-05 0.00251043 0.00215531 14 157 24 646728 646728 52871.9 1468.66 0.18 0.0402404 0.0333986 149 18 216 428 17304 4467 2.35792 2.35792 -101.81 -2.35792 0 0 63794.4 1772.07 0.01 0.01 0.00703407 0.00627384 +arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time +k6_N10_mem32K_40nm_fc_abs.xml stereovision3.v common 1.82 vpr 63.97 MiB -1 -1 0.58 25532 5 0.16 -1 -1 36972 -1 -1 12 10 0 0 success b93114b release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-16T13:37:54 gh-actions-runner-vtr-auto-spawned30 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 65508 10 2 181 183 1 40 24 6 6 36 clb auto 25.5 MiB 0.04 174 92 23 64 5 64.0 MiB 0.01 0.00 2.07517 -86.4376 -2.07517 2.07517 0.05 0.000355588 0.000315311 0.00287009 0.00268552 8 234 44 646728 646728 33486.6 930.184 0.21 0.0643387 0.0544077 1588 8314 -1 240 19 270 565 23832 7408 2.63212 2.63212 -118.257 -2.63212 0 0 42482.2 1180.06 0.01 0.03 0.01 -1 -1 0.01 0.0164962 0.0145092 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_place_delay_calc_method/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_place_delay_calc_method/config/golden_results.txt index 8ea2ab87109..a019b89b620 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_place_delay_calc_method/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_place_delay_calc_method/config/golden_results.txt @@ -1,5 +1,5 @@ -arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time -stratixiv_arch.timing.xml styr.blif common_--place_delay_model_delta_--place_delta_delay_matrix_calculation_method_astar 22.09 vpr 967.37 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 10 -1 -1 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 990588 10 10 168 178 1 62 30 11 8 88 io auto 944.4 MiB 0.36 400 967.4 MiB 0.06 0.00 6.23109 -69.4028 -6.23109 6.23109 1.73 0.000125117 9.7649e-05 0.00513799 0.00457023 28 717 20 0 0 134428. 1527.59 0.83 0.054498 0.0467065 11590 29630 -1 680 15 250 1016 112270 40144 0 0 112270 40144 1016 951 0 0 2513 1716 0 0 3088 2514 0 0 24256 22912 0 0 41354 5449 0 0 40043 6602 0 0 1016 0 0 1330 1714 1977 12419 0 0 6.55428 6.55428 -73.5727 -6.55428 0 0 173354. 1969.93 0.03 0.05 0.06 -1 -1 0.03 0.0129234 0.012125 -stratixiv_arch.timing.xml styr.blif common_--place_delay_model_delta_override_--place_delta_delay_matrix_calculation_method_astar 22.02 vpr 967.47 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 10 -1 -1 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 990688 10 10 168 178 1 62 30 11 8 88 io auto 944.4 MiB 0.36 358 967.5 MiB 0.06 0.00 6.36047 -68.6561 -6.36047 6.36047 1.75 0.000140811 0.000105328 0.00528603 0.00468716 30 677 12 0 0 144567. 1642.81 0.94 0.0553727 0.0474823 11730 32605 -1 551 10 214 844 90669 29543 0 0 90669 29543 844 799 0 0 1794 1100 0 0 2220 1794 0 0 18477 17311 0 0 34431 3438 0 0 32903 5101 0 0 844 0 0 907 1024 1731 9788 0 0 6.58673 6.58673 -72.6453 -6.58673 0 0 194014. 2204.70 0.03 0.05 0.06 -1 -1 0.03 0.0119797 0.0114025 -stratixiv_arch.timing.xml styr.blif common_--place_delay_model_delta_--place_delta_delay_matrix_calculation_method_dijkstra 23.13 vpr 967.33 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 10 -1 -1 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 990544 10 10 168 178 1 62 30 11 8 88 io auto 944.4 MiB 0.36 337 967.3 MiB 0.06 0.00 6.33071 -68.9568 -6.33071 6.33071 2.19 0.000132944 9.895e-05 0.00528385 0.00470496 20 756 39 0 0 100248. 1139.18 1.01 0.0568882 0.0487746 11180 23751 -1 678 14 362 1534 140287 57829 0 0 140287 57829 1534 1492 0 0 3453 2435 0 0 4415 3453 0 0 34273 30641 0 0 48084 10312 0 0 48528 9496 0 0 1534 0 0 1844 2572 3419 19097 0 0 6.64819 6.64819 -75.4843 -6.64819 0 0 125464. 1425.72 0.02 0.06 0.05 -1 -1 0.02 0.0127276 0.0119465 -stratixiv_arch.timing.xml styr.blif common_--place_delay_model_delta_override_--place_delta_delay_matrix_calculation_method_dijkstra 23.09 vpr 967.27 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 10 -1 -1 success v8.0.0-7662-gd563ffd8a Release IPO VTR_ASSERT_LEVEL=3 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2023-04-24T16:35:56 betzgrp-wintermute.eecg.utoronto.ca /home/mahmo494/Desktop/RLplace_2/vtr-verilog-to-routing/vtr_flow/tasks 990484 10 10 168 178 1 62 30 11 8 88 io auto 944.2 MiB 0.35 400 967.3 MiB 0.06 0.00 6.43758 -70.503 -6.43758 6.43758 2.19 0.000124847 9.807e-05 0.00513447 0.00458131 20 906 20 0 0 100248. 1139.18 0.95 0.0570742 0.0446688 11180 23751 -1 723 13 290 1078 105150 42069 0 0 105150 42069 1078 1048 0 0 2545 1830 0 0 3207 2545 0 0 24658 22537 0 0 36984 6838 0 0 36678 7271 0 0 1078 0 0 1021 1632 2019 12222 0 0 6.86697 6.86697 -75.2952 -6.86697 0 0 125464. 1425.72 0.02 0.05 0.05 -1 -1 0.02 0.0124653 0.0117323 +arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time +stratixiv_arch.timing.xml styr.blif common_--place_delay_model_delta_--place_delta_delay_matrix_calculation_method_astar 39.81 vpr 978.45 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 10 -1 -1 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 1001932 10 10 168 178 1 62 30 11 8 88 io auto 954.7 MiB 0.59 345 766 84 629 53 978.4 MiB 0.05 0.00 6.42093 -69.165 -6.42093 6.42093 3.07 0.000437885 0.00039127 0.0125651 0.0115806 20 749 20 0 0 100248. 1139.18 1.73 0.19564 0.171991 11180 23751 -1 759 16 363 1367 129159 52560 7.05752 7.05752 -76.511 -7.05752 0 0 125464. 1425.72 0.03 0.08 0.08 -1 -1 0.03 0.0329119 0.0303443 +stratixiv_arch.timing.xml styr.blif common_--place_delay_model_delta_override_--place_delta_delay_matrix_calculation_method_astar 40.02 vpr 978.43 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 10 -1 -1 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 1001908 10 10 168 178 1 62 30 11 8 88 io auto 954.8 MiB 0.62 344 720 82 581 57 978.4 MiB 0.05 0.00 6.39032 -69.1435 -6.39032 6.39032 3.05 0.000477436 0.000414516 0.0134354 0.0123555 18 826 22 0 0 88979.3 1011.13 1.84 0.21881 0.191881 11100 22242 -1 787 17 455 1856 167337 66315 7.03645 7.03645 -77.7495 -7.03645 0 0 114778. 1304.29 0.03 0.08 0.08 -1 -1 0.03 0.0333434 0.0307725 +stratixiv_arch.timing.xml styr.blif common_--place_delay_model_delta_--place_delta_delay_matrix_calculation_method_dijkstra 40.20 vpr 978.42 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 10 -1 -1 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 1001904 10 10 168 178 1 62 30 11 8 88 io auto 954.7 MiB 0.62 334 766 75 633 58 978.4 MiB 0.05 0.00 6.24004 -68.8638 -6.24004 6.24004 4.21 0.00043712 0.00039058 0.0135251 0.0124714 20 746 22 0 0 100248. 1139.18 0.58 0.10259 0.0909598 11180 23751 -1 649 15 376 1644 145960 58750 6.75777 6.75777 -74.5795 -6.75777 0 0 125464. 1425.72 0.04 0.08 0.08 -1 -1 0.04 0.0325761 0.0301424 +stratixiv_arch.timing.xml styr.blif common_--place_delay_model_delta_override_--place_delta_delay_matrix_calculation_method_dijkstra 41.96 vpr 978.61 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 10 -1 -1 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 1002092 10 10 168 178 1 62 30 11 8 88 io auto 954.8 MiB 0.62 339 720 76 599 45 978.6 MiB 0.05 0.00 6.3798 -68.6604 -6.3798 6.3798 4.27 0.000432929 0.000377889 0.0149805 0.0140656 18 805 24 0 0 88979.3 1011.13 2.25 0.280633 0.247426 11100 22242 -1 659 19 387 1549 135401 55869 6.92851 6.92851 -76.1613 -6.92851 0 0 114778. 1304.29 0.03 0.08 0.07 -1 -1 0.03 0.0337395 0.0309553 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/config/config.txt b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/config/config.txt new file mode 100644 index 00000000000..e9b34d127a2 --- /dev/null +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/config/config.txt @@ -0,0 +1,36 @@ +############################################## +# Configuration file for running experiments +############################################## + +# Path to directory of circuits to use +circuits_dir=benchmarks/ + +# Path to directory of architectures to use +archs_dir=arch/ + +# Add circuits to list to sweep +circuit_list_add=verilog/multiclock_output_and_latch.v +circuit_list_add=verilog/and_latch.v + +# Add architectures to list to sweep +arch_list_add=timing/k6_frac_N10_frac_chain_mem32K_htree0_40nm.xml +arch_list_add=timing/k6_frac_N10_frac_chain_mem32K_htree0_routedCLK_40nm.xml +arch_list_add=timing/k6_frac_N10_frac_chain_mem32K_htree0short_40nm.xml + +# Parse info and how to parse +parse_file=vpr_clock_modeling.txt + +# How to parse QoR info +qor_parse_file=qor_standard.txt + +# Pass requirements +# A pass requirement to check that the number of routed nets +# are equal can change if the circuit is synthesized +# differently. At that point a new golden results file must +# be created and checked to see that using the route option +# increases the number of routed nets. +pass_requirements_file=pass_requirements_clock_modeling.txt + +# Script parameters +# Since the used benchmarks in this test are small, a small target_utilization has been set to that the created grid is large enough for the clock network to get built properly +script_params_list_add= --target_utilization 0.01 --two_stage_clock_routing -read_vpr_constraints tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/multi_clock_routing_constraints.xml --clock_modeling dedicated_network diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/config/golden_results.txt new file mode 100644 index 00000000000..d3982a6196f --- /dev/null +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/config/golden_results.txt @@ -0,0 +1,7 @@ +arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time num_global_nets num_routed_nets +timing/k6_frac_N10_frac_chain_mem32K_htree0_40nm.xml verilog/multiclock_output_and_latch.v common_--target_utilization_0.01_--two_stage_clock_routing_-read_vpr_constraints_tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/multi_clock_routing_constraints.xml_--clock_modeling_dedicated_network 4.80 vpr 62.41 MiB -1 -1 0.15 16964 1 0.23 -1 -1 31908 -1 -1 2 6 0 0 success v8.0.0-10229-g9de163162 release VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2024-06-03T20:58:32 betzgrp-wintermute.eecg.utoronto.ca /home/talaeikh/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests 63912 6 1 16 17 2 10 9 17 17 289 -1 auto 23.9 MiB 0.02 67 27 9 18 0 62.4 MiB 0.00 0.00 1.66771 -4.34981 -1.66771 0.805 0.93 6.292e-05 5.3006e-05 0.00038211 0.000333692 20 141 4 1.34605e+07 107788 411619. 1424.29 0.56 0.00244758 0.00222679 24098 82050 -1 132 2 10 10 10345 2735 2.73969 0.805 -5.54288 -2.73969 -0.842296 -0.421627 535376. 1852.51 0.16 0.28 0.12 -1 -1 0.16 0.00169603 0.00160376 1 9 +timing/k6_frac_N10_frac_chain_mem32K_htree0_40nm.xml verilog/and_latch.v common_--target_utilization_0.01_--two_stage_clock_routing_-read_vpr_constraints_tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/multi_clock_routing_constraints.xml_--clock_modeling_dedicated_network 3.27 vpr 62.22 MiB -1 -1 0.17 16808 1 0.23 -1 -1 29760 -1 -1 1 3 0 0 success v8.0.0-10229-g9de163162 release VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2024-06-03T20:58:32 betzgrp-wintermute.eecg.utoronto.ca /home/talaeikh/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests 63712 3 1 5 6 1 4 5 13 13 169 -1 auto 23.5 MiB 0.01 26 12 4 8 0 62.2 MiB 0.00 0.00 0.684768 -1.31529 -0.684768 0.684768 0.50 2.4726e-05 1.8709e-05 0.000144623 0.000117099 20 52 1 6.63067e+06 53894 227243. 1344.63 0.31 0.0012983 0.00120858 13251 44387 -1 54 1 4 4 4093 1283 1.57879 1.57879 -1.64658 -1.57879 -0.385237 -0.385237 294987. 1745.49 0.08 0.16 0.07 -1 -1 0.08 0.00115216 0.00111231 0 4 +timing/k6_frac_N10_frac_chain_mem32K_htree0_routedCLK_40nm.xml verilog/multiclock_output_and_latch.v common_--target_utilization_0.01_--two_stage_clock_routing_-read_vpr_constraints_tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/multi_clock_routing_constraints.xml_--clock_modeling_dedicated_network 4.85 vpr 62.34 MiB -1 -1 0.17 17132 1 0.23 -1 -1 32004 -1 -1 2 6 0 0 success v8.0.0-10229-g9de163162 release VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2024-06-03T20:58:32 betzgrp-wintermute.eecg.utoronto.ca /home/talaeikh/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests 63832 6 1 16 17 2 10 9 17 17 289 -1 auto 23.8 MiB 0.02 86 27 10 16 1 62.3 MiB 0.00 0.00 1.73508 -4.45965 -1.73508 0.805 0.94 6.3063e-05 5.3154e-05 0.000382365 0.000334342 20 156 3 1.34605e+07 107788 424167. 1467.71 0.57 0.00232866 0.0021239 24098 84646 -1 143 1 9 9 10051 2608 2.60696 0.805 -5.45498 -2.60696 -0.46436 -0.232734 547923. 1895.93 0.16 0.29 0.12 -1 -1 0.16 0.00170576 0.00163038 1 9 +timing/k6_frac_N10_frac_chain_mem32K_htree0_routedCLK_40nm.xml verilog/and_latch.v common_--target_utilization_0.01_--two_stage_clock_routing_-read_vpr_constraints_tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/multi_clock_routing_constraints.xml_--clock_modeling_dedicated_network 3.23 vpr 62.38 MiB -1 -1 0.17 17164 1 0.23 -1 -1 29612 -1 -1 1 3 0 0 success v8.0.0-10229-g9de163162 release VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2024-06-03T20:58:32 betzgrp-wintermute.eecg.utoronto.ca /home/talaeikh/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests 63872 3 1 5 6 1 4 5 13 13 169 -1 auto 23.9 MiB 0.01 26 12 4 8 0 62.4 MiB 0.00 0.00 0.698051 -1.3327 -0.698051 0.698051 0.51 2.4972e-05 1.869e-05 0.000139687 0.000111725 20 52 1 6.63067e+06 53894 235789. 1395.20 0.32 0.00137232 0.0012738 13251 46155 -1 54 1 4 4 4037 1263 1.58964 1.58964 -1.65632 -1.58964 -0.386343 -0.386343 303533. 1796.05 0.08 0.12 0.04 -1 -1 0.08 0.00117266 0.00113601 0 4 +timing/k6_frac_N10_frac_chain_mem32K_htree0short_40nm.xml verilog/multiclock_output_and_latch.v common_--target_utilization_0.01_--two_stage_clock_routing_-read_vpr_constraints_tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/multi_clock_routing_constraints.xml_--clock_modeling_dedicated_network 4.90 vpr 62.34 MiB -1 -1 0.16 17264 1 0.23 -1 -1 31964 -1 -1 2 6 0 0 success v8.0.0-10229-g9de163162 release VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2024-06-03T20:58:32 betzgrp-wintermute.eecg.utoronto.ca /home/talaeikh/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests 63832 6 1 16 17 2 10 9 17 17 289 -1 auto 23.8 MiB 0.02 67 27 9 18 0 62.3 MiB 0.01 0.00 1.66771 -4.34981 -1.66771 0.805 0.97 6.398e-05 5.3905e-05 0.000660909 0.000612393 20 619 3 1.34605e+07 107788 408865. 1414.76 0.59 0.00267306 0.00246585 24098 82150 -1 610 2 10 10 12597 4156 3.681 0.805 -7.42729 -3.681 -2.7249 -1.36293 532630. 1843.01 0.16 0.29 0.12 -1 -1 0.16 0.00169111 0.00160117 1 9 +timing/k6_frac_N10_frac_chain_mem32K_htree0short_40nm.xml verilog/and_latch.v common_--target_utilization_0.01_--two_stage_clock_routing_-read_vpr_constraints_tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/multi_clock_routing_constraints.xml_--clock_modeling_dedicated_network 3.27 vpr 62.18 MiB -1 -1 0.16 16892 1 0.23 -1 -1 29700 -1 -1 1 3 0 0 success v8.0.0-10229-g9de163162 release VTR_ASSERT_LEVEL=2 GNU 9.4.0 on Linux-4.15.0-197-generic x86_64 2024-06-03T20:58:32 betzgrp-wintermute.eecg.utoronto.ca /home/talaeikh/vtr-verilog-to-routing/vtr_flow/tasks/regression_tests 63672 3 1 5 6 1 4 5 13 13 169 -1 auto 23.6 MiB 0.01 26 12 4 8 0 62.2 MiB 0.00 0.00 0.684768 -1.31529 -0.684768 0.684768 0.50 2.4929e-05 1.8673e-05 0.000144104 0.000115519 20 183 1 6.63067e+06 53894 225153. 1332.26 0.31 0.00152207 0.00139859 13251 44463 -1 185 1 4 4 1139 237 2.19802 2.19802 -2.19802 -2.19802 -1.00447 -1.00447 292904. 1733.16 0.08 0.15 0.07 -1 -1 0.08 0.00115607 0.00111789 0 4 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/multi_clock_routing_constraints.xml b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/multi_clock_routing_constraints.xml new file mode 100644 index 00000000000..878f0b0120d --- /dev/null +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_routing_constraints/multi_clock_routing_constraints.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_target_pin_util/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_target_pin_util/config/golden_results.txt index ce914dc9d2b..7256961513c 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_target_pin_util/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_target_pin_util/config/golden_results.txt @@ -1,14 +1,14 @@ - arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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 router_lookahead_computation_time crit_path_route_time crit_path_total_timing_analysis_time crit_path_total_sta_time - EArch.xml styr.blif common_--target_ext_pin_util_1 1.17 vpr 64.52 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66064 10 10 168 178 1 75 31 6 6 36 clb auto 26.0 MiB 0.18 377 64.5 MiB 0.02 0.00 2.28629 -25.3037 -2.28629 2.28629 0.03 0.000172873 0.0001409 0.00754975 0.00670125 34 729 19 646728 592834 60331.2 1675.87 0.24 0.0668034 0.0586871 749 24 567 2003 84153 30622 2.71342 2.71342 -33.041 -2.71342 0 0 73923.1 2053.42 0.01 0.04 0.0193362 0.0178565 - EArch.xml styr.blif common_--target_ext_pin_util_0.7 1.00 vpr 64.38 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65920 10 10 168 178 1 75 31 6 6 36 clb auto 25.8 MiB 0.14 377 64.4 MiB 0.04 0.00 2.28629 -25.3037 -2.28629 2.28629 0.03 0.000195581 0.000162482 0.0195756 0.0187368 34 729 19 646728 592834 60331.2 1675.87 0.25 0.0900628 0.0725066 749 24 567 2003 84153 30622 2.71342 2.71342 -33.041 -2.71342 0 0 73923.1 2053.42 0.01 0.06 0.0222381 0.0205762 - EArch.xml styr.blif common_--target_ext_pin_util_0.1,0.5 3.17 vpr 64.41 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 90 10 0 0 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65956 10 10 168 178 1 162 110 14 14 196 clb auto 26.4 MiB 0.64 1427 64.4 MiB 0.04 0.00 2.49469 -31.7529 -2.49469 2.49469 0.50 0.000269848 0.000222195 0.00906066 0.00791627 28 2777 12 9.20055e+06 4.85046e+06 407540. 2079.28 0.77 0.112073 0.106589 2716 14 578 2206 129952 27738 3.30455 3.30455 -42.911 -3.30455 0 0 486621. 2482.76 0.21 0.05 0.0131851 0.0122287 - EArch.xml styr.blif common_--target_ext_pin_util_0.5,0.3 1.02 vpr 64.55 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 13 10 0 0 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66100 10 10 168 178 1 75 33 7 7 49 clb auto 25.9 MiB 0.18 404 64.6 MiB 0.01 0.00 2.19243 -25.5645 -2.19243 2.19243 0.06 0.000176367 0.000141736 0.00578839 0.0051849 26 1151 31 1.07788e+06 700622 75813.7 1547.22 0.25 0.0498106 0.0441385 917 14 423 1423 65638 21443 3.01689 3.01689 -34.2006 -3.01689 0 0 91376.6 1864.83 0.02 0.04 0.0176466 0.0166087 - EArch.xml styr.blif common_--target_ext_pin_util_0.0 2.78 vpr 64.63 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 101 10 0 0 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 66184 10 10 168 178 1 163 121 14 14 196 clb auto 26.6 MiB 0.75 1472 64.6 MiB 0.08 0.01 2.56029 -32.6207 -2.56029 2.56029 0.47 0.000329047 0.00027253 0.0107465 0.00932431 20 2980 20 9.20055e+06 5.44329e+06 295730. 1508.82 0.39 0.0270908 0.0242445 2921 13 635 2456 148117 31310 3.72331 3.72331 -44.4881 -3.72331 0 0 387483. 1976.95 0.12 0.05 0.0141595 0.0131686 - EArch.xml styr.blif common_--target_ext_pin_util_clb_0.7 0.92 vpr 64.27 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65816 10 10 168 178 1 75 31 6 6 36 clb auto 25.8 MiB 0.20 377 64.3 MiB 0.02 0.00 2.28629 -25.3037 -2.28629 2.28629 0.03 0.000171149 0.000138926 0.00670266 0.00589665 34 729 19 646728 592834 60331.2 1675.87 0.23 0.0596765 0.0521013 749 24 567 2003 84153 30622 2.71342 2.71342 -33.041 -2.71342 0 0 73923.1 2053.42 0.01 0.04 0.0202728 0.0187412 - EArch.xml styr.blif common_--target_ext_pin_util_clb_0.7_0.8 0.87 vpr 64.39 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65932 10 10 168 178 1 75 31 6 6 36 clb auto 25.8 MiB 0.14 377 64.4 MiB 0.02 0.00 2.28629 -25.3037 -2.28629 2.28629 0.03 0.000168494 0.000136661 0.00717231 0.00638572 34 729 19 646728 592834 60331.2 1675.87 0.24 0.0644889 0.0560673 749 24 567 2003 84153 30622 2.71342 2.71342 -33.041 -2.71342 0 0 73923.1 2053.42 0.01 0.04 0.0215477 0.0199833 - EArch.xml styr.blif common_--target_ext_pin_util_clb_0.1_0.8 2.89 vpr 64.35 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 90 10 0 0 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65892 10 10 168 178 1 162 110 14 14 196 clb auto 26.3 MiB 0.69 1427 64.3 MiB 0.04 0.00 2.49469 -31.7529 -2.49469 2.49469 0.48 0.000230864 0.000190345 0.00760677 0.00646864 28 2777 12 9.20055e+06 4.85046e+06 407540. 2079.28 0.51 0.0393452 0.0346197 2716 14 578 2206 129952 27738 3.30455 3.30455 -42.911 -3.30455 0 0 486621. 2482.76 0.14 0.06 0.0166255 0.0155119 - EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0 1.03 vpr 64.43 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 65980 10 10 168 178 1 75 31 6 6 36 clb auto 25.9 MiB 0.14 377 64.4 MiB 0.02 0.00 2.28629 -25.3037 -2.28629 2.28629 0.03 0.00016889 0.000137063 0.00725208 0.0064597 34 729 19 646728 592834 60331.2 1675.87 0.31 0.0737108 0.0655677 749 24 567 2003 84153 30622 2.71342 2.71342 -33.041 -2.71342 0 0 73923.1 2053.42 0.01 0.08 0.0217864 0.0202311 - EArch.xml styr.blif common_--target_ext_pin_util_-0.1 0.07 vpr 25.93 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 26548 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 24.3 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - EArch.xml styr.blif common_--target_ext_pin_util_1.1 0.08 vpr 25.71 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 26332 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 24.3 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0_1.0 0.07 vpr 25.67 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 26284 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 24.3 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0_clb_1.0 0.07 vpr 25.75 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 v8.0.0-6989-g4a9293e1e-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 11.3.0 on Linux-5.15.0-58-generic x86_64 2023-02-04T01:37:29 dev /home/dev/Desktop/CAS-Atlantic/vtr-verilog-to-routing 26372 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 24.3 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time +EArch.xml styr.blif common_--target_ext_pin_util_1 1.43 vpr 66.51 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68104 10 10 168 178 1 75 31 6 6 36 clb auto 28.0 MiB 0.24 383 943 166 730 47 66.5 MiB 0.03 0.00 2.26002 -25.4914 -2.26002 2.26002 0.05 0.000488128 0.000429439 0.0156905 0.0143863 32 848 35 646728 592834 58122.9 1614.52 0.38 0.144437 0.125982 2724 10283 -1 739 19 504 1885 74908 27029 2.65054 2.65054 -33.2783 -2.65054 0 0 70489.2 1958.03 0.01 0.06 0.01 -1 -1 0.01 0.0349516 0.0319752 +EArch.xml styr.blif common_--target_ext_pin_util_0.7 1.34 vpr 66.55 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68152 10 10 168 178 1 75 31 6 6 36 clb auto 28.1 MiB 0.20 383 943 166 730 47 66.6 MiB 0.03 0.00 2.26002 -25.4914 -2.26002 2.26002 0.05 0.000530393 0.000465197 0.0149833 0.0137415 32 848 35 646728 592834 58122.9 1614.52 0.37 0.141695 0.122888 2724 10283 -1 739 19 504 1885 74908 27029 2.65054 2.65054 -33.2783 -2.65054 0 0 70489.2 1958.03 0.01 0.06 0.01 -1 -1 0.01 0.0326868 0.0297518 +EArch.xml styr.blif common_--target_ext_pin_util_0.1,0.5 4.21 vpr 66.59 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 90 10 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68188 10 10 168 178 1 162 110 14 14 196 clb auto 28.4 MiB 0.91 1428 7211 1237 5674 300 66.6 MiB 0.09 0.00 2.53082 -31.7186 -2.53082 2.53082 0.78 0.000636235 0.000567176 0.0232967 0.0212612 28 2858 13 9.20055e+06 4.85046e+06 407540. 2079.28 0.81 0.107489 0.0955502 18980 78299 -1 2558 13 461 1613 90045 19517 3.35707 3.35707 -41.8684 -3.35707 0 0 486621. 2482.76 0.19 0.06 0.08 -1 -1 0.19 0.0249023 0.0229695 +EArch.xml styr.blif common_--target_ext_pin_util_0.5,0.3 2.09 vpr 66.37 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 13 10 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67964 10 10 168 178 1 75 33 7 7 49 clb auto 27.8 MiB 0.21 373 1125 195 881 49 66.4 MiB 0.04 0.00 2.15355 -24.5168 -2.15355 2.15355 0.09 0.000497106 0.000441555 0.0158727 0.0145012 34 1026 36 1.07788e+06 700622 91376.6 1864.83 0.96 0.261815 0.228302 4056 17064 -1 865 19 521 1721 77891 26389 2.71764 2.71764 -33.8233 -2.71764 0 0 111771. 2281.05 0.03 0.06 0.02 -1 -1 0.03 0.0331429 0.0301348 +EArch.xml styr.blif common_--target_ext_pin_util_0.0 5.48 vpr 66.46 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 101 10 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68060 10 10 168 178 1 163 121 14 14 196 clb auto 28.4 MiB 1.04 1464 8194 1463 6359 372 66.5 MiB 0.09 0.00 2.61894 -32.565 -2.61894 2.61894 0.74 0.000985486 0.000889239 0.0234726 0.0211652 26 2836 11 9.20055e+06 5.44329e+06 387483. 1976.95 1.92 0.177037 0.153712 18784 74779 -1 2697 11 479 1918 111557 23556 3.53756 3.53756 -43.0459 -3.53756 0 0 467681. 2386.13 0.19 0.06 0.09 -1 -1 0.19 0.0243083 0.0224085 +EArch.xml styr.blif common_--target_ext_pin_util_clb_0.7 1.33 vpr 66.45 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68044 10 10 168 178 1 75 31 6 6 36 clb auto 28.0 MiB 0.18 383 943 166 730 47 66.4 MiB 0.03 0.00 2.26002 -25.4914 -2.26002 2.26002 0.05 0.000467438 0.000413771 0.0146624 0.0134537 32 848 35 646728 592834 58122.9 1614.52 0.39 0.15054 0.131545 2724 10283 -1 739 19 504 1885 74908 27029 2.65054 2.65054 -33.2783 -2.65054 0 0 70489.2 1958.03 0.01 0.06 0.01 -1 -1 0.01 0.0337093 0.0306518 +EArch.xml styr.blif common_--target_ext_pin_util_clb_0.7_0.8 1.31 vpr 66.41 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68008 10 10 168 178 1 75 31 6 6 36 clb auto 27.9 MiB 0.19 383 943 166 730 47 66.4 MiB 0.03 0.00 2.26002 -25.4914 -2.26002 2.26002 0.05 0.00050708 0.000447841 0.0149782 0.0137111 32 848 35 646728 592834 58122.9 1614.52 0.37 0.140009 0.121504 2724 10283 -1 739 19 504 1885 74908 27029 2.65054 2.65054 -33.2783 -2.65054 0 0 70489.2 1958.03 0.01 0.06 0.01 -1 -1 0.01 0.0369675 0.0339361 +EArch.xml styr.blif common_--target_ext_pin_util_clb_0.1_0.8 4.34 vpr 66.69 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 90 10 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68292 10 10 168 178 1 162 110 14 14 196 clb auto 28.6 MiB 0.93 1428 7211 1237 5674 300 66.7 MiB 0.09 0.00 2.53082 -31.7186 -2.53082 2.53082 0.75 0.00059353 0.000527566 0.0212232 0.0192173 28 2858 13 9.20055e+06 4.85046e+06 407540. 2079.28 0.80 0.0976714 0.086197 18980 78299 -1 2558 13 461 1613 90045 19517 3.35707 3.35707 -41.8684 -3.35707 0 0 486621. 2482.76 0.20 0.06 0.09 -1 -1 0.20 0.0283066 0.0261488 +EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0 1.34 vpr 66.65 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68252 10 10 168 178 1 75 31 6 6 36 clb auto 28.2 MiB 0.19 383 943 166 730 47 66.7 MiB 0.04 0.00 2.26002 -25.4914 -2.26002 2.26002 0.05 0.000496241 0.0004374 0.0165847 0.0152355 32 848 35 646728 592834 58122.9 1614.52 0.38 0.144505 0.125584 2724 10283 -1 739 19 504 1885 74908 27029 2.65054 2.65054 -33.2783 -2.65054 0 0 70489.2 1958.03 0.01 0.06 0.01 -1 -1 0.01 0.0341266 0.0311313 +EArch.xml styr.blif common_--target_ext_pin_util_-0.1 0.10 vpr 27.85 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 28516 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 26.1 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +EArch.xml styr.blif common_--target_ext_pin_util_1.1 0.10 vpr 27.66 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 28328 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 26.1 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0_1.0 0.10 vpr 27.92 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 28592 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 26.2 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0_clb_1.0 0.10 vpr 27.98 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 106a52a release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-03-01T18:56:15 gh-actions-runner-vtr-auto-spawned12 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 28648 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 26.3 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_verify_rr_graph_titan/config/config.txt b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_verify_rr_graph_titan/config/config.txt index e0c42869466..6b516a49e80 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_verify_rr_graph_titan/config/config.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong/strong_verify_rr_graph_titan/config/config.txt @@ -25,4 +25,4 @@ qor_parse_file=qor_rr_graph.txt # Pass requirements pass_requirements_file=pass_requirements_verify_rr_graph.txt -script_params=-starting_stage vpr -verify_rr_graph -rr_graph_ext .xml -route_chan_width 22 +script_params=-starting_stage vpr -verify_rr_graph -rr_graph_ext .xml -route_chan_width 24 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong/task_list.txt b/vtr_flow/tasks/regression_tests/vtr_reg_strong/task_list.txt index d69600ece22..93d5c3dda79 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_strong/task_list.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong/task_list.txt @@ -88,3 +88,4 @@ regression_tests/vtr_reg_strong/strong_tileable_rr_graph_verify regression_tests/vtr_reg_strong/strong_tileable_rr_graph_verify_bin regression_tests/vtr_reg_strong/strong_noc regression_tests/vtr_reg_strong/strong_flat_router +regression_tests/vtr_reg_strong/strong_routing_constraints \ No newline at end of file diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_strong_odin/strong_target_pin_util/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_strong_odin/strong_target_pin_util/config/golden_results.txt index b8491407c75..d903cbe2c1d 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_strong_odin/strong_target_pin_util/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_strong_odin/strong_target_pin_util/config/golden_results.txt @@ -1,14 +1,14 @@ - arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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 router_lookahead_computation_time crit_path_route_time crit_path_total_timing_analysis_time crit_path_total_sta_time - EArch.xml styr.blif common_--target_ext_pin_util_1 3.05 vpr 61.31 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 62784 10 10 168 178 1 75 31 6 6 36 clb auto 22.7 MiB 0.29 377 61.3 MiB 0.07 0.00 2.28629 -25.3037 -2.28629 2.28629 0.05 0.000267488 0.000220355 0.0123286 0.010968 34 729 19 646728 592834 60331.2 1675.87 1.44 0.15037 0.134136 749 24 567 2003 84153 30622 2.71342 2.71342 -33.041 -2.71342 0 0 73923.1 2053.42 0.02 0.24 0.0389526 0.0358803 - EArch.xml styr.blif common_--target_ext_pin_util_0.7 3.08 vpr 61.25 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 62716 10 10 168 178 1 75 31 6 6 36 clb auto 22.5 MiB 0.28 377 61.2 MiB 0.07 0.00 2.28629 -25.3037 -2.28629 2.28629 0.05 0.000339511 0.000280763 0.0118057 0.0103761 34 729 19 646728 592834 60331.2 1675.87 1.44 0.149954 0.133169 749 24 567 2003 84153 30622 2.71342 2.71342 -33.041 -2.71342 0 0 73923.1 2053.42 0.02 0.22 0.0378532 0.034893 - EArch.xml styr.blif common_--target_ext_pin_util_0.1,0.5 4.74 vpr 61.39 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 90 10 0 0 success v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 62864 10 10 168 178 1 162 110 14 14 196 clb auto 23.2 MiB 0.83 1427 61.4 MiB 0.13 0.00 2.49469 -31.7529 -2.49469 2.49469 0.53 0.000361967 0.000302763 0.01384 0.0120784 28 2777 12 9.20055e+06 4.85046e+06 407540. 2079.28 1.14 0.0806254 0.0721736 2716 14 578 2206 129952 27738 3.30455 3.30455 -42.911 -3.30455 0 0 486621. 2482.76 0.18 0.28 0.0243402 0.0226137 - EArch.xml styr.blif common_--target_ext_pin_util_0.5,0.3 2.50 vpr 61.37 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 13 10 0 0 success v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 62840 10 10 168 178 1 75 33 7 7 49 clb auto 22.7 MiB 0.33 404 61.4 MiB 0.03 0.00 2.19243 -25.5645 -2.19243 2.19243 0.09 0.000279807 0.000227276 0.0080815 0.00716193 26 1151 31 1.07788e+06 700622 75813.7 1547.22 0.89 0.091146 0.0811081 917 14 423 1423 65638 21443 3.01689 3.01689 -34.2006 -3.01689 0 0 91376.6 1864.83 0.03 0.08 0.0239552 0.022464 - EArch.xml styr.blif common_--target_ext_pin_util_0.0 4.56 vpr 61.55 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 101 10 0 0 success v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 63024 10 10 168 178 1 163 121 14 14 196 clb auto 23.3 MiB 1.00 1472 61.5 MiB 0.16 0.00 2.56029 -32.6207 -2.56029 2.56029 0.61 0.000316473 0.000276587 0.0162852 0.0143204 20 2980 20 9.20055e+06 5.44329e+06 295730. 1508.82 0.64 0.0433344 0.0391122 2921 13 635 2456 148117 31310 3.72331 3.72331 -44.4881 -3.72331 0 0 387483. 1976.95 0.14 0.13 0.0210647 0.0194818 - EArch.xml styr.blif common_--target_ext_pin_util_clb_0.7 2.97 vpr 61.51 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 62988 10 10 168 178 1 75 31 6 6 36 clb auto 22.9 MiB 0.27 377 61.5 MiB 0.06 0.00 2.28629 -25.3037 -2.28629 2.28629 0.05 0.000322976 0.000270456 0.0110579 0.00981465 34 729 19 646728 592834 60331.2 1675.87 1.28 0.140021 0.124731 749 24 567 2003 84153 30622 2.71342 2.71342 -33.041 -2.71342 0 0 73923.1 2053.42 0.02 0.26 0.0350188 0.0320757 - EArch.xml styr.blif common_--target_ext_pin_util_clb_0.7_0.8 3.02 vpr 61.61 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 63084 10 10 168 178 1 75 31 6 6 36 clb auto 23.0 MiB 0.28 377 61.6 MiB 0.06 0.00 2.28629 -25.3037 -2.28629 2.28629 0.05 0.00047079 0.000384744 0.0125164 0.0110832 34 729 19 646728 592834 60331.2 1675.87 1.41 0.140984 0.125655 749 24 567 2003 84153 30622 2.71342 2.71342 -33.041 -2.71342 0 0 73923.1 2053.42 0.01 0.27 0.0366905 0.0338159 - EArch.xml styr.blif common_--target_ext_pin_util_clb_0.1_0.8 4.73 vpr 61.59 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 90 10 0 0 success v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 63068 10 10 168 178 1 162 110 14 14 196 clb auto 23.4 MiB 0.83 1427 61.6 MiB 0.07 0.00 2.49469 -31.7529 -2.49469 2.49469 0.60 0.000448813 0.000382416 0.0133274 0.0114593 28 2777 12 9.20055e+06 4.85046e+06 407540. 2079.28 1.13 0.0804596 0.0718537 2716 14 578 2206 129952 27738 3.30455 3.30455 -42.911 -3.30455 0 0 486621. 2482.76 0.15 0.23 0.0254458 0.0237749 - EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0 3.08 vpr 61.28 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 62752 10 10 168 178 1 75 31 6 6 36 clb auto 22.6 MiB 0.31 377 61.3 MiB 0.08 0.00 2.28629 -25.3037 -2.28629 2.28629 0.05 0.000301016 0.000246641 0.0119025 0.0105766 34 729 19 646728 592834 60331.2 1675.87 1.45 0.147762 0.13094 749 24 567 2003 84153 30622 2.71342 2.71342 -33.041 -2.71342 0 0 73923.1 2053.42 0.03 0.22 0.0382148 0.0354439 - EArch.xml styr.blif common_--target_ext_pin_util_-0.1 0.22 vpr 22.90 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 23452 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 21.1 MiB 0.01 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - EArch.xml styr.blif common_--target_ext_pin_util_1.1 0.23 vpr 22.95 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 23496 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 21.2 MiB 0.01 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0_1.0 0.23 vpr 22.93 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 23484 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 21.1 MiB 0.01 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 - EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0_clb_1.0 0.23 vpr 22.70 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 v8.0.0-6793-gb52911b9f release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-167-generic x86_64 2022-11-27T15:52:14 betzgrp-wintermute.eecg.utoronto.ca /home/elgamma8/research/pack_refactor/vtr-verilog-to-routing 23248 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 20.9 MiB 0.01 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time + EArch.xml styr.blif common_--target_ext_pin_util_1 1.09 vpr 66.42 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68016 10 10 168 178 1 75 31 6 6 36 clb auto 27.9 MiB 0.18 383 943 166 730 47 66.4 MiB 0.03 0.00 2.26002 -25.4914 -2.26002 2.26002 0.05 0.00048387 0.000425093 0.0141963 0.0130199 32 848 35 646728 592834 58122.9 1614.52 0.25 0.0977925 0.0856353 2724 10283 -1 739 19 504 1885 74908 27029 2.65054 2.65054 -33.2783 -2.65054 0 0 70489.2 1958.03 0.01 0.05 0.01 -1 -1 0.01 0.0309266 0.0281156 + EArch.xml styr.blif common_--target_ext_pin_util_0.7 1.11 vpr 66.67 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68272 10 10 168 178 1 75 31 6 6 36 clb auto 28.2 MiB 0.18 383 943 166 730 47 66.7 MiB 0.03 0.00 2.26002 -25.4914 -2.26002 2.26002 0.05 0.000511503 0.000454394 0.014564 0.0133752 32 848 35 646728 592834 58122.9 1614.52 0.25 0.0980695 0.0858494 2724 10283 -1 739 19 504 1885 74908 27029 2.65054 2.65054 -33.2783 -2.65054 0 0 70489.2 1958.03 0.01 0.05 0.01 -1 -1 0.01 0.0306455 0.0279427 + EArch.xml styr.blif common_--target_ext_pin_util_0.1,0.5 3.88 vpr 66.25 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 90 10 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67844 10 10 168 178 1 162 110 14 14 196 clb auto 28.1 MiB 0.85 1428 7211 1237 5674 300 66.3 MiB 0.08 0.00 2.53082 -31.7186 -2.53082 2.53082 0.66 0.000532598 0.000473977 0.0177371 0.0160545 28 2858 13 9.20055e+06 4.85046e+06 407540. 2079.28 0.78 0.0862648 0.0758439 18980 78299 -1 2558 13 461 1613 90045 19517 3.35707 3.35707 -41.8684 -3.35707 0 0 486621. 2482.76 0.20 0.05 0.09 -1 -1 0.20 0.0238719 0.0218982 + EArch.xml styr.blif common_--target_ext_pin_util_0.5,0.3 1.48 vpr 66.49 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 13 10 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68088 10 10 168 178 1 75 33 7 7 49 clb auto 28.0 MiB 0.20 373 1125 195 881 49 66.5 MiB 0.04 0.00 2.15355 -24.5168 -2.15355 2.15355 0.09 0.00048892 0.000435415 0.0155793 0.0142949 34 1026 36 1.07788e+06 700622 91376.6 1864.83 0.49 0.141508 0.122497 4056 17064 -1 865 19 521 1721 77891 26389 2.71764 2.71764 -33.8233 -2.71764 0 0 111771. 2281.05 0.03 0.05 0.02 -1 -1 0.03 0.0304754 0.0278141 + EArch.xml styr.blif common_--target_ext_pin_util_0.0 3.91 vpr 66.79 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 101 10 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68392 10 10 168 178 1 163 121 14 14 196 clb auto 28.7 MiB 0.95 1464 8194 1463 6359 372 66.8 MiB 0.08 0.00 2.61894 -32.565 -2.61894 2.61894 0.65 0.000514434 0.000456801 0.0180042 0.0162441 26 2836 11 9.20055e+06 5.44329e+06 387483. 1976.95 0.76 0.0820662 0.071856 18784 74779 -1 2697 11 479 1918 111557 23556 3.53756 3.53756 -43.0459 -3.53756 0 0 467681. 2386.13 0.19 0.05 0.09 -1 -1 0.19 0.020447 0.0187575 + EArch.xml styr.blif common_--target_ext_pin_util_clb_0.7 1.09 vpr 66.38 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67976 10 10 168 178 1 75 31 6 6 36 clb auto 27.9 MiB 0.18 383 943 166 730 47 66.4 MiB 0.03 0.00 2.26002 -25.4914 -2.26002 2.26002 0.05 0.000507747 0.000451373 0.01459 0.0134081 32 848 35 646728 592834 58122.9 1614.52 0.25 0.100434 0.0879723 2724 10283 -1 739 19 504 1885 74908 27029 2.65054 2.65054 -33.2783 -2.65054 0 0 70489.2 1958.03 0.01 0.05 0.01 -1 -1 0.01 0.028505 0.026023 + EArch.xml styr.blif common_--target_ext_pin_util_clb_0.7_0.8 1.13 vpr 66.42 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68012 10 10 168 178 1 75 31 6 6 36 clb auto 27.9 MiB 0.18 383 943 166 730 47 66.4 MiB 0.03 0.00 2.26002 -25.4914 -2.26002 2.26002 0.05 0.000445087 0.000393695 0.0135953 0.0124877 32 848 35 646728 592834 58122.9 1614.52 0.25 0.099599 0.0870322 2724 10283 -1 739 19 504 1885 74908 27029 2.65054 2.65054 -33.2783 -2.65054 0 0 70489.2 1958.03 0.01 0.05 0.01 -1 -1 0.01 0.0296419 0.026992 + EArch.xml styr.blif common_--target_ext_pin_util_clb_0.1_0.8 3.87 vpr 66.39 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 90 10 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67980 10 10 168 178 1 162 110 14 14 196 clb auto 28.2 MiB 0.86 1428 7211 1237 5674 300 66.4 MiB 0.07 0.00 2.53082 -31.7186 -2.53082 2.53082 0.65 0.000529472 0.000469581 0.017305 0.0156268 28 2858 13 9.20055e+06 4.85046e+06 407540. 2079.28 0.78 0.0830887 0.0728826 18980 78299 -1 2558 13 461 1613 90045 19517 3.35707 3.35707 -41.8684 -3.35707 0 0 486621. 2482.76 0.19 0.05 0.09 -1 -1 0.19 0.022513 0.0204942 + EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0 1.10 vpr 66.38 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 11 10 0 0 success 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67968 10 10 168 178 1 75 31 6 6 36 clb auto 27.9 MiB 0.18 383 943 166 730 47 66.4 MiB 0.03 0.00 2.26002 -25.4914 -2.26002 2.26002 0.05 0.000500957 0.000443145 0.0143892 0.0131802 32 848 35 646728 592834 58122.9 1614.52 0.25 0.100238 0.0878671 2724 10283 -1 739 19 504 1885 74908 27029 2.65054 2.65054 -33.2783 -2.65054 0 0 70489.2 1958.03 0.01 0.05 0.01 -1 -1 0.01 0.029475 0.02688 + EArch.xml styr.blif common_--target_ext_pin_util_-0.1 0.08 vpr 27.82 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 28488 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 26.2 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 + EArch.xml styr.blif common_--target_ext_pin_util_1.1 0.08 vpr 27.35 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 28008 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 25.9 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 + EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0_1.0 0.09 vpr 27.92 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 28588 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 26.1 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 + EArch.xml styr.blif common_--target_ext_pin_util_io_0.1,0.1_clb_0.7_0.8,1.0_clb_1.0 0.08 vpr 27.46 MiB -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 exited with return code 1 5175469-dirty release IPO VTR_ASSERT_LEVEL=3 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-05-07T23:28:08 gh-actions-runner-vtr-auto-spawned13 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 28124 10 10 168 178 1 -1 -1 -1 -1 -1 -1 -1 25.9 MiB 0.00 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 diff --git a/vtr_flow/tasks/regression_tests/vtr_reg_system_verilog/f4pga_button_controller/config/golden_results.txt b/vtr_flow/tasks/regression_tests/vtr_reg_system_verilog/f4pga_button_controller/config/golden_results.txt index 6948f37097e..0f634a65121 100644 --- a/vtr_flow/tasks/regression_tests/vtr_reg_system_verilog/f4pga_button_controller/config/golden_results.txt +++ b/vtr_flow/tasks/regression_tests/vtr_reg_system_verilog/f4pga_button_controller/config/golden_results.txt @@ -1,2 +1,2 @@ - arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 crit_path_total_internal_heap_pushes crit_path_total_internal_heap_pops crit_path_total_external_heap_pushes crit_path_total_external_heap_pops crit_path_total_external_SOURCE_pushes crit_path_total_external_SOURCE_pops crit_path_total_internal_SOURCE_pushes crit_path_total_internal_SOURCE_pops crit_path_total_external_SINK_pushes crit_path_total_external_SINK_pops crit_path_total_internal_SINK_pushes crit_path_total_internal_SINK_pops crit_path_total_external_IPIN_pushes crit_path_total_external_IPIN_pops crit_path_total_internal_IPIN_pushes crit_path_total_internal_IPIN_pops crit_path_total_external_OPIN_pushes crit_path_total_external_OPIN_pops crit_path_total_internal_OPIN_pushes crit_path_total_internal_OPIN_pops crit_path_total_external_CHANX_pushes crit_path_total_external_CHANX_pops crit_path_total_internal_CHANX_pushes crit_path_total_internal_CHANX_pops crit_path_total_external_CHANY_pushes crit_path_total_external_CHANY_pops crit_path_total_internal_CHANY_pushes crit_path_total_internal_CHANY_pops crit_path_rt_node_SOURCE_pushes crit_path_rt_node_SINK_pushes crit_path_rt_node_IPIN_pushes crit_path_rt_node_OPIN_pushes crit_path_rt_node_CHANX_pushes crit_path_rt_node_CHANY_pushes crit_path_adding_all_rt crit_path_adding_high_fanout_rt crit_path_total_number_of_adding_all_rt_from_calling_high_fanout_rt 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time - k6_frac_N10_frac_chain_mem32K_40nm.xml button_controller.sv common 1.91 vpr 65.81 MiB -1 -1 0.90 56460 3 0.05 -1 -1 35436 -1 -1 13 3 0 0 success 222546b-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2023-08-14T20:40:44 gh-actions-runner-vtr-auto-spawned20 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 67392 3 12 252 216 1 125 28 7 7 49 clb auto 27.2 MiB 0.09 409 65.8 MiB 0.02 0.00 1.9464 -118.797 -1.9464 1.9464 0.05 9.4184e-05 7.2011e-05 0.00579816 0.0049021 40 685 17 1.07788e+06 700622 95414.1 1947.23 0.26 0.0439795 0.036483 3948 17640 -1 588 12 358 524 12860 4074 0 0 12860 4074 524 432 0 0 745 603 0 0 847 745 0 0 559 475 0 0 4900 981 0 0 5285 838 0 0 524 0 0 166 188 128 1608 0 0 2.28597 2.28597 -135.833 -2.28597 0 0 120731. 2463.90 0.02 0.01 0.01 -1 -1 0.02 0.00890339 0.00832405 + arch circuit script_params vtr_flow_elapsed_time vtr_max_mem_stage vtr_max_mem error odin_synth_time max_odin_mem parmys_synth_time max_parmys_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_mem pack_time placed_wirelength_est total_swap accepted_swap rejected_swap aborted_swap place_mem 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_delay_matrix_lookup_time 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_num_rr_graph_nodes crit_path_num_rr_graph_edges crit_path_collapsed_nodes 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 router_lookahead_computation_time crit_path_route_time crit_path_create_rr_graph_time crit_path_create_intra_cluster_rr_graph_time crit_path_tile_lookahead_computation_time crit_path_router_lookahead_computation_time crit_path_total_timing_analysis_time crit_path_total_sta_time + k6_frac_N10_frac_chain_mem32K_40nm.xml button_controller.sv common 1.72 vpr 66.80 MiB -1 -1 0.75 56388 3 0.06 -1 -1 36472 -1 -1 13 3 0 0 success 82df625-dirty release IPO VTR_ASSERT_LEVEL=2 GNU 9.5.0 on Linux-5.10.35-v8 x86_64 2024-06-06T17:24:10 gh-actions-runner-vtr-auto-spawned192 /root/vtr-verilog-to-routing/vtr-verilog-to-routing 68408 3 12 252 216 1 125 28 7 7 49 clb auto 28.2 MiB 0.09 443 1414 320 1039 55 66.8 MiB 0.02 0.00 1.98834 -120.696 -1.98834 1.98834 0.05 0.000235021 0.000213123 0.0105204 0.00962842 28 1161 41 1.07788e+06 700622 72669.7 1483.05 0.28 0.0866479 0.0736936 3564 12808 -1 735 22 806 1202 35397 11901 2.47441 2.47441 -144.322 -2.47441 0 0 87745.0 1790.71 0.01 0.02 0.01 -1 -1 0.01 0.0155522 0.0139728